megalisp-0.0.1: lisp parser using mega-parsec

Safe HaskellNone
LanguageHaskell2010

Data.Lisp

Synopsis

Documentation

data SourceRange Source #

A position range in the Lisp source file or string.

Constructors

SourceRange 
Instances
Show SourceRange Source # 
Instance details

Defined in Data.Lisp

parseLisp :: String -> Text -> Either (ParseErrorBundle Text Void) [Lisp] Source #

parse source text: parse the text into a list of lisp expressions. Source is used for the error messages, and in the SourceRanges.

parseLispExpr :: String -> Text -> Either (ParseErrorBundle Text Void) Lisp Source #

parse a single expression

showLispPos :: Lisp -> String Source #

show the lisp with position info

type CharParser t a = (Stream t, Token t ~ Char) => Parsec Void t a Source #

A megaparsec parser that has characters as tokens.

lispParser :: CharParser t Lisp Source #

A megaparsec parser for lisp expressions