Copyright | Justin Ethier |
---|---|
License | MIT (see LICENSE in the distribution) |
Maintainer | github.com/justinethier |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell98 |
This module implements parsing of Scheme code.
- lispDef :: LanguageDef ()
- mainParser :: Parser LispVal
- readOrThrow :: Parser a -> String -> ThrowsError a
- readExpr :: String -> ThrowsError LispVal
- readExprList :: String -> ThrowsError [LispVal]
- symbol :: Parser Char
- parseExpr :: Parser LispVal
- parseAtom :: Parser LispVal
- parseBool :: Parser LispVal
- parseChar :: Parser LispVal
- parseOctalNumber :: Parser LispVal
- parseBinaryNumber :: Parser LispVal
- parseHexNumber :: Parser LispVal
- parseDecimalNumber :: Parser LispVal
- parseNumber :: Parser LispVal
- parseRealNumber :: Parser LispVal
- parseRationalNumber :: Parser LispVal
- parseComplexNumber :: Parser LispVal
- parseEscapedChar :: forall st. GenParser Char st Char
- parseString :: Parser LispVal
- parseVector :: Parser LispVal
- parseHashTable :: Parser LispVal
- parseList :: Parser LispVal
- parseDottedList :: Parser LispVal
- parseQuoted :: Parser LispVal
- parseQuasiQuoted :: Parser LispVal
- parseUnquoted :: Parser LispVal
- parseUnquoteSpliced :: Parser LispVal
Documentation
lispDef :: LanguageDef () Source
Language definition for Scheme
Higher level parsing
readOrThrow :: Parser a -> String -> ThrowsError a Source
Use a parser to parse the given text, throwing an error if there is a problem parsing the text.
readExpr :: String -> ThrowsError LispVal Source
Parse an expression from a string of text
readExprList :: String -> ThrowsError [LispVal] Source
Parse many expressions from a string of text
Low level parsing
parseDecimalNumber :: Parser LispVal Source
Parser for Integer, base 10
parseNumber :: Parser LispVal Source
Parse an integer in any base
parseRealNumber :: Parser LispVal Source
Parse a floating point number
parseEscapedChar :: forall st. GenParser Char st Char Source
parseHashTable :: Parser LispVal Source
Parse a hash table. The table is either empty or is made up of an alist (associative list)