Agda-2.5.2: A dependently typed functional programming language and proof assistant

Safe Haskell | None
Language | Haskell2010

Agda.Syntax.Parser.Parser

Description

The parser is generated by Happy (http://www.haskell.org/happy). - - Ideally, ranges should be as precise as possible, to get messages that - emphasize precisely the faulting term(s) upon error. - - However, interactive highlighting is only applied at the end of each - mutual block, keywords are only highlighted once (see - `Decl`). So if the ranges of two declarations - interleave, one must ensure that keyword ranges are not included in - the intersection. (Otherwise they are uncolored by the interactive - highlighting.) -

Synopsis

- moduleParser :: Parser Module
- moduleNameParser :: Parser QName
- exprParser :: Parser Expr
- exprWhereParser :: Parser ExprWhere
- tokensParser :: Parser [Token]
- splitOnDots :: String -> [String]

# Documentation

moduleParser :: Parser Module #

Parse a module.

moduleNameParser :: Parser QName #

exprParser :: Parser Expr #

Parse an expression. Could be used in interactions.

exprWhereParser :: Parser ExprWhere #

Parse an expression followed by a where clause. Could be used in interactions.

tokensParser :: Parser [Token] #

Parse the token stream. Used by the TeX compiler.

splitOnDots :: String -> [String] #

Breaks up a string into substrings. Returns every maximal subsequence of zero or more characters distinct from ``.``.

    splitOnDots ""         == [""]
    splitOnDots "foo.bar"  == ["foo", "bar"]
    splitOnDots ".foo.bar" == ["", "foo", "bar"]
    splitOnDots "foo.bar." == ["foo", "bar", ""]
    splitOnDots "foo..bar" == ["foo", "", "bar"]