Safe Haskell | None |
---|---|
Language | Haskell2010 |
The programming languages Oberon and Oberon-2
Synopsis
- parseModule :: LanguageVersion -> Text -> ParseResults Text [NodeWrap (Module Language Language NodeWrap NodeWrap)]
- parseAndResolveModule :: Options -> FilePath -> Text -> IO (Validation (Either (NonEmpty (Error Language)) (NonEmpty (Error Language))) (Placed (Module Language Language Placed Placed)))
- parseAndResolveModuleFile :: Options -> FilePath -> IO (Validation (Either (NonEmpty (Error Language)) (NonEmpty (Error Language))) (Placed (Module Language Language Placed Placed)))
- data LanguageVersion
- data Options = Options {}
- type NodeWrap = Compose ((,) (Int, Int)) (Compose Ambiguous ((,) ParsedLexemes))
- type Placed = (,) (Int, ParsedLexemes, Int)
Documentation
parseModule :: LanguageVersion -> Text -> ParseResults Text [NodeWrap (Module Language Language NodeWrap NodeWrap)] Source #
Parse the given text of a single module, without resolving the syntactic ambiguities.
parseAndResolveModule :: Options -> FilePath -> Text -> IO (Validation (Either (NonEmpty (Error Language)) (NonEmpty (Error Language))) (Placed (Module Language Language Placed Placed))) Source #
Given a directory path for module imports, parse the given module text and all the module files it imports, then use all the information to resolve the syntactic ambiguities.
parseAndResolveModuleFile :: Options -> FilePath -> IO (Validation (Either (NonEmpty (Error Language)) (NonEmpty (Error Language))) (Placed (Module Language Language Placed Placed))) Source #
Parse the module file at the given path, assuming all its imports are in the same directory.
data LanguageVersion Source #
Instances
Eq LanguageVersion Source # | |
Defined in Language.Oberon (==) :: LanguageVersion -> LanguageVersion -> Bool # (/=) :: LanguageVersion -> LanguageVersion -> Bool # | |
Ord LanguageVersion Source # | |
Defined in Language.Oberon compare :: LanguageVersion -> LanguageVersion -> Ordering # (<) :: LanguageVersion -> LanguageVersion -> Bool # (<=) :: LanguageVersion -> LanguageVersion -> Bool # (>) :: LanguageVersion -> LanguageVersion -> Bool # (>=) :: LanguageVersion -> LanguageVersion -> Bool # max :: LanguageVersion -> LanguageVersion -> LanguageVersion # min :: LanguageVersion -> LanguageVersion -> LanguageVersion # | |
Show LanguageVersion Source # | |
Defined in Language.Oberon showsPrec :: Int -> LanguageVersion -> ShowS # show :: LanguageVersion -> String # showList :: [LanguageVersion] -> ShowS # |
choice of modes of operation
Options | |
|