Safe Haskell | None |
---|---|
Language | Haskell98 |
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
- newtype ExprInfo = ExprRange Range
- exprNoRange :: ExprInfo
- data ModuleInfo = ModuleInfo {}
- newtype LetInfo = LetRange Range
- data DefInfo = DefInfo {}
- mkDefInfo :: Name -> Fixity' -> Access -> IsAbstract -> Range -> DefInfo
- mkDefInfoInstance :: Name -> Fixity' -> Access -> IsAbstract -> IsInstance -> IsMacro -> Range -> DefInfo
- data DeclInfo = DeclInfo {}
- data MutualInfo = MutualInfo {}
- newtype LHSInfo = LHSRange Range
- newtype PatInfo = PatRange Range
- patNoRange :: PatInfo
- data ConPatInfo = ConPatInfo {}
Documentation
data ModuleInfo Source
ModuleInfo | |
|
DefInfo | |
|
mkDefInfoInstance :: Name -> Fixity' -> Access -> IsAbstract -> IsInstance -> IsMacro -> Range -> DefInfo Source
Same as mkDefInfo
but where we can also give the IsInstance
For a general pattern we remember the source code position.
Empty range for patterns.
data ConPatInfo Source
Constructor pattern info.
ConPatInfo | |
|