Safe Haskell | None |
---|---|
Language | Haskell98 |
Agda.Syntax.Info
Description
An info object contains additional information about a piece of abstract syntax that isn't part of the actual syntax. For instance, it might contain the source code position of an expression or the concrete syntax that an internal expression originates from.
- data MetaInfo = MetaInfo {}
- emptyMetaInfo :: MetaInfo
- data ExprInfo
- = ExprRange Range
- | ExprSource Range (Precedence -> Expr)
- data ModuleInfo = ModuleInfo {}
- newtype LetInfo = LetRange Range
- data DefInfo = DefInfo {}
- mkDefInfo :: Name -> Fixity' -> Access -> IsAbstract -> Range -> DefInfo
- data DeclInfo = DeclInfo {}
- data MutualInfo = MutualInfo {}
- newtype LHSInfo = LHSRange Range
- data PatInfo
- patNoRange :: PatInfo
- data ConPatInfo = ConPatInfo {
- patImplicit :: Bool
- patInfo :: PatInfo
Documentation
data MetaInfo
Constructors
MetaInfo | |
Fields
|
data ExprInfo
For a general expression we can either remember just the source code position or the entire concrete expression it came from.
Constructors
ExprRange Range | |
ExprSource Range (Precedence -> Expr) | Even if we store the original expression we have to know whether to put parenthesis around it. |
data ModuleInfo
Constructors
ModuleInfo | |
Fields |
newtype LetInfo
data DefInfo
Constructors
DefInfo | |
Fields
|
data DeclInfo
data MutualInfo
Constructors
MutualInfo | |
Fields
|
Instances
newtype LHSInfo
data PatInfo
Empty range for patterns.
data ConPatInfo
Constructor pattern info.
Constructors
ConPatInfo | |
Fields
|