BNFC-meta-0.2.2: Deriving Quasi-Quoters from BNF Grammars

Language.LBNF.Compiletime

Contents

Synopsis

Happy and Alex runtimes

data HappyStk a

Constructors

HappyStk a (HappyStk a) 

ord :: Char -> Int

The Prelude.fromEnum method restricted to the type Data.Char.Char.

listArray :: Ix i => (i, i) -> [e] -> Array i e

Construct an array from a pair of bounds and a list of values in index order.

(!) :: Ix i => Array i e -> i -> e

The value at the given index in an array.

data Array i e

The type of immutable non-strict (boxed) arrays with indices in i and elements in e.

Instances

Ix i => Functor (Array i) 
(Ix i, Eq e) => Eq (Array i e) 
(Ix i, Ord e) => Ord (Array i e) 
(Ix a, Read a, Read b) => Read (Array a b) 
(Ix a, Show a, Show b) => Show (Array a b) 

Pretty printing runtimes

printTree :: Print a => a -> String

doc :: ShowS -> Doc

concatD :: [Doc] -> Doc

prPrec :: Int -> Int -> Doc -> Doc

newtype PrintPlain

Constructors

MkPrintPlain String 

Instances

Quasi quoting runtimes

data ParseMonad a

Constructors

Ok a 
Bad String 

Instances

errq :: (String -> a) -> ParseMonad a -> Q a

data Q a

Instances

data BNFC_QQType

Constructors

QQApp (String, LocType) [BNFC_QQType] 
QQAq (Q Exp, Q Pat) 
QQList [BNFC_QQType] 
QQLit Lit 
QQPosT (Int, Int) (String, LocType) String 

appEPAll :: LocType -> String -> [BNFC_QQType] -> BNFC_QQType

appEPAllL :: LocType -> [BNFC_QQType] -> BNFC_QQType

fromString :: Literal a => LocType -> a -> BNFC_QQType

fromLit :: Literal a => LocType -> a -> BNFC_QQType

fromToken :: Literal a => LocType -> String -> a -> BNFC_QQType

fromPositionToken :: LocType -> String -> ((Int, Int), String) -> BNFC_QQType

class Lift t where

Methods

lift :: t -> Q Exp

Instances

Lift Bool 
Lift Char 
Lift Int 
Lift Integer 
Lift Rational 
Lift Exp 
Lift Match 
Lift Clause 
Lift Pat 
Lift Type 
Lift Dec 
Lift Name 
Lift FunDep 
Lift Pred 
Lift TyVarBndr 
Lift () 
Lift NameFlavour 
Lift NameSpace 
Lift Info 
Lift ClassInstance 
Lift Fixity 
Lift FixityDirection 
Lift Lit 
Lift Body 
Lift Guard 
Lift Stmt 
Lift Range 
Lift FamFlavour 
Lift Foreign 
Lift Callconv 
Lift Safety 
Lift Pragma 
Lift InlineSpec 
Lift Strict 
Lift Con 
Lift Kind 
Lift ModName 
Lift PkgName 
Lift OccName 
Lift a => Lift [a] 
Lift a => Lift (Maybe a) 
(Lift a, Lift b) => Lift (Either a b) 
(Lift a, Lift b) => Lift (a, b) 
(Lift a, Lift b, Lift c) => Lift (a, b, c) 
(Lift a, Lift b, Lift c, Lift d) => Lift (a, b, c, d) 
(Lift a, Lift b, Lift c, Lift d, Lift e) => Lift (a, b, c, d, e) 
(Lift a, Lift b, Lift c, Lift d, Lift e, Lift f) => Lift (a, b, c, d, e, f) 
(Lift a, Lift b, Lift c, Lift d, Lift e, Lift f, Lift g) => Lift (a, b, c, d, e, f, g)