symparsec-1.1.1: Type level string parser combinators
Safe HaskellSafe-Inferred
LanguageGHC2021

Symparsec.Example.Expr

Description

Experiments.

Turns out we can't write recursive parsers. But Apply can help us write handier parsers.

Documentation

data Expr Source #

Constructors

ELit Lit 
EBOp Expr BOp Expr 

data BOp Source #

Constructors

Plus 

data Lit Source #

Constructors

LNat Natural 

data Curry3Sym f abc Source #

Instances

Instances details
type App (Curry3Sym f :: FunKind ((a1, a2), a3) k -> Type) ('('(a4, b), c) :: ((a1, a2), a3)) Source # 
Instance details

Defined in Symparsec.Example.Expr

type App (Curry3Sym f :: FunKind ((a1, a2), a3) k -> Type) ('('(a4, b), c) :: ((a1, a2), a3)) = ((f @@ a4) @@ b) @@ c

type family FromEither eaa where ... Source #

Equations

FromEither (Right a) = a 
FromEither (Left a) = a 

data FromEitherSym eaa Source #

Instances

Instances details
type App (FromEitherSym :: FunKind (Either a a) a -> Type) (eaa :: Either a a) Source # 
Instance details

Defined in Symparsec.Example.Expr

type App (FromEitherSym :: FunKind (Either a a) a -> Type) (eaa :: Either a a) = FromEither eaa