This library contains a version of FlatCurry's abstract syntax tree modified with type information
For more information about the abstract syntax tree of FlatCurry,
see the documentation of the respective module.
data TProg
Constructors:
Known instances:
data TFuncDecl
Constructors:
TFunc
:: QName -> Int -> Visibility -> TypeExpr -> TRule -> TFuncDecl
Known instances:
data TRule
Constructors:
Known instances:
data TExpr
Constructors:
TVarE
:: TypeExpr -> VarIndex -> TExpr
TLit
:: TypeExpr -> Literal -> TExpr
TComb
:: TypeExpr -> CombType -> QName -> [TExpr] -> TExpr
TLet
:: [((VarIndex, TypeExpr), TExpr)] -> TExpr -> TExpr
TFree
:: [(VarIndex, TypeExpr)] -> TExpr -> TExpr
TOr
:: TExpr -> TExpr -> TExpr
TCase
:: CaseType -> TExpr -> [TBranchExpr] -> TExpr
TTyped
:: TExpr -> TypeExpr -> TExpr
Known instances:
data TBranchExpr
Constructors:
Known instances:
data TPattern
Constructors:
TPattern
:: TypeExpr -> QName -> [(VarIndex, TypeExpr)] -> TPattern
TLPattern
:: TypeExpr -> Literal -> TPattern
Known instances:
class Typeable
a
Methods: