Portability | portable |
---|---|
Stability | experimental |
Maintainer | github.com/justinethier |
Safe Haskell | Safe-Inferred |
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 aSource
Use a parser to parse the given text, throwing an error if there is a problem parsing the text.
readExpr :: String -> ThrowsError LispValSource
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 LispValSource
Parser for Integer, base 10
parseNumber :: Parser LispValSource
Parse an integer in any base
parseRealNumber :: Parser LispValSource
Parse a floating point number
parseEscapedChar :: forall st. GenParser Char st CharSource
parseHashTable :: Parser LispValSource
Parse a hash table. The table is either empty or is made up of an alist (associative list)