fficxx-0.7.0.0: Automatic C++ binding generation
Safe HaskellSafe-Inferred
LanguageHaskell2010

FFICXX.Generate.Util.HaskellSrcExts

Synopsis

Documentation

tyapp :: Type () -> Type () -> Type () infixl 2 Source #

tyfun :: Type () -> Type () -> Type () infixr 2 Source #

tylist :: Type () -> Type () Source #

conDecl :: String -> [Type ()] -> ConDecl () Source #

lit :: Literal () -> Exp () Source #

con :: String -> Exp () Source #

mkPVarSig :: String -> Type () -> Pat () Source #

pbind :: Pat () -> Exp () -> Maybe (Binds ()) -> Decl () Source #

pbind_ :: Pat () -> Exp () -> Decl () Source #

mkBind1 :: String -> [Pat ()] -> Exp () -> Maybe (Binds ()) -> Decl () Source #

mkFun :: String -> Type () -> [Pat ()] -> Exp () -> Maybe (Binds ()) -> [Decl ()] Source #

mkFunSig :: String -> Type () -> Decl () Source #

mkClass :: Context () -> String -> [TyVarBind ()] -> [ClassDecl ()] -> Decl () Source #

mkInstance :: Context () -> String -> [Type ()] -> [InstDecl ()] -> Decl () Source #

mkData :: String -> [TyVarBind ()] -> [QualConDecl ()] -> Maybe (Deriving ()) -> Decl () Source #

mkNewtype :: String -> [TyVarBind ()] -> [QualConDecl ()] -> Maybe (Deriving ()) -> Decl () Source #

mkModule :: String -> [ModulePragma ()] -> [ImportDecl ()] -> [Decl ()] -> Module () Source #

mkModuleE :: String -> [ModulePragma ()] -> [ExportSpec ()] -> [ImportDecl ()] -> [Decl ()] -> Module () Source #

dot :: Exp () -> Exp () -> Exp () Source #

tyForall :: Maybe [TyVarBind ()] -> Maybe (Context ()) -> Type () -> Type () Source #

tyParen :: Type () -> Type () Source #

classA :: QName () -> [Type ()] -> Asst () Source #

cxTuple :: [Asst ()] -> Context () Source #

irule :: Maybe [TyVarBind ()] -> Maybe (Context ()) -> InstHead () -> InstRule () Source #

ethingwith :: EWildcard () -> QName () -> [CName ()] -> ExportSpec () Source #

insType :: Type () -> Type () -> InstDecl () Source #

generator :: Pat () -> Exp () -> Stmt () Source #

qualifier :: Exp () -> Stmt () Source #

op :: String -> QOp () Source #

inapp :: Exp () -> QOp () -> Exp () -> Exp () Source #

if_ :: Exp () -> Exp () -> Exp () -> Exp () Source #

urhs :: Exp () -> Rhs () Source #

match :: Pat () -> Exp () -> Alt () Source #

case pattern match p -> e