Safe Haskell | None |
---|
Language.LBNF.Compiletime
Description
Contains things needed by BNFC-meta language definitions and by the code generated from those. Typical users don't need to browse this module.
- data HappyStk a = HappyStk a (HappyStk a)
- utf8Encode :: Char -> [Word8]
- data Posn = Pn !Int !Int !Int
- type AlexInput = (Posn, Char, [Word8], String)
- alexGetByte :: AlexInput -> Maybe (Word8, AlexInput)
- ord :: Char -> Int
- listArray :: Ix i => (i, i) -> [e] -> Array i e
- (!) :: Ix i => Array i e -> i -> e
- data Array i e
- printTree :: Print a => a -> String
- doc :: ShowS -> Doc
- concatD :: [Doc] -> Doc
- class Print a where
- prPrec :: Int -> Int -> Doc -> Doc
- newtype PrintPlain = MkPrintPlain String
- parseToQuoter :: (String -> ParseMonad BNFC_QQType) -> QuasiQuoter
- parseToMonQuoter :: (String -> ParseMonad BNFC_QQType) -> QuasiQuoter
- data ParseMonad a
- errq :: (String -> a) -> ParseMonad a -> Q a
- data Q a
- data BNFC_QQType
- 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
- type LocType = (String, String)
- class Literal a where
- lit :: a -> Lit
- class IsChar a where
- toChar :: a -> Char
- printAq :: Print a => a -> BNFC_QQType
- stringAq :: String -> BNFC_QQType
Happy and Alex
utf8Encode :: Char -> [Word8]
alexGetByte :: AlexInput -> Maybe (Word8, AlexInput)
ord :: Char -> Int
data Array i e
Pretty printing
class Print a where
Quasi quoting
parseToQuoter :: (String -> ParseMonad BNFC_QQType) -> QuasiQuoter
parseToMonQuoter :: (String -> ParseMonad BNFC_QQType) -> QuasiQuoter
data ParseMonad a
Instances
Monad ParseMonad | |
Functor ParseMonad | |
Eq a => Eq (ParseMonad a) | |
Ord a => Ord (ParseMonad a) | |
Read a => Read (ParseMonad a) | |
Show a => Show (ParseMonad a) |
errq :: (String -> a) -> ParseMonad a -> Q a
data BNFC_QQType
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
Instances
Lift Bool | |
Lift Char | |
Lift Int | |
Lift Integer | |
Lift Rational | |
Lift Word8 | |
Lift Exp | |
Lift Match | |
Lift Clause | |
Lift Pat | |
Lift Type | |
Lift Dec | |
Lift Name | |
Lift FunDep | |
Lift Pred | |
Lift TyVarBndr | |
Lift () | |
Lift TyLit | |
Lift Strict | |
Lift Stmt | |
Lift Safety | |
Lift RuleMatch | |
Lift RuleBndr | |
Lift Range | |
Lift Pragma | |
Lift Phases | |
Lift NameSpace | |
Lift Lit | |
Lift Inline | |
Lift Info | |
Lift Guard | |
Lift Foreign | |
Lift FixityDirection | |
Lift Fixity | |
Lift FamFlavour | |
Lift Con | |
Lift Callconv | |
Lift Body | |
Lift NameFlavour | |
Lift OccName | |
Lift PkgName | |
Lift ModName | |
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) |
type LocType = (String, String)
Helper functions for defining Anti-quotation
printAq :: Print a => a -> BNFC_QQType
stringAq :: String -> BNFC_QQType