Safe Haskell | None |
---|---|
Language | Haskell2010 |
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.
Synopsis
- data MetaInfo = MetaInfo {}
- emptyMetaInfo :: MetaInfo
- newtype ExprInfo = ExprRange Range
- exprNoRange :: ExprInfo
- data AppInfo = AppInfo {}
- defaultAppInfo :: Range -> AppInfo
- defaultAppInfo_ :: AppInfo
- data ModuleInfo = ModuleInfo {}
- newtype LetInfo = LetRange Range
- data DefInfo' t = DefInfo {
- defFixity :: Fixity'
- defAccess :: Access
- defAbstract :: IsAbstract
- defInstance :: IsInstance
- defMacro :: IsMacro
- defInfo :: DeclInfo
- defTactic :: Maybe t
- mkDefInfo :: Name -> Fixity' -> Access -> IsAbstract -> Range -> DefInfo' t
- mkDefInfoInstance :: Name -> Fixity' -> Access -> IsAbstract -> IsInstance -> IsMacro -> Range -> DefInfo' t
- data DeclInfo = DeclInfo {}
- data MutualInfo = MutualInfo {}
- data LHSInfo = LHSInfo {}
- newtype PatInfo = PatRange Range
- patNoRange :: PatInfo
- data ConPatInfo = ConPatInfo {}
- data ConPatLazy
Documentation
MetaInfo | |
|
Instances
Eq MetaInfo Source # | |
Data MetaInfo Source # | |
Defined in Agda.Syntax.Info gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> MetaInfo -> c MetaInfo # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c MetaInfo # toConstr :: MetaInfo -> Constr # dataTypeOf :: MetaInfo -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c MetaInfo) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c MetaInfo) # gmapT :: (forall b. Data b => b -> b) -> MetaInfo -> MetaInfo # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> MetaInfo -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> MetaInfo -> r # gmapQ :: (forall d. Data d => d -> u) -> MetaInfo -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> MetaInfo -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> MetaInfo -> m MetaInfo # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> MetaInfo -> m MetaInfo # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> MetaInfo -> m MetaInfo # | |
Show MetaInfo Source # | |
KillRange MetaInfo Source # | |
Defined in Agda.Syntax.Info | |
HasRange MetaInfo Source # | |
Instances
Eq ExprInfo Source # | |
Data ExprInfo Source # | |
Defined in Agda.Syntax.Info gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ExprInfo -> c ExprInfo # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ExprInfo # toConstr :: ExprInfo -> Constr # dataTypeOf :: ExprInfo -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ExprInfo) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ExprInfo) # gmapT :: (forall b. Data b => b -> b) -> ExprInfo -> ExprInfo # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ExprInfo -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ExprInfo -> r # gmapQ :: (forall d. Data d => d -> u) -> ExprInfo -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> ExprInfo -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> ExprInfo -> m ExprInfo # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ExprInfo -> m ExprInfo # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ExprInfo -> m ExprInfo # | |
Show ExprInfo Source # | |
Null ExprInfo Source # | |
KillRange ExprInfo Source # | |
Defined in Agda.Syntax.Info | |
HasRange ExprInfo Source # | |
Information about application
Instances
Eq AppInfo Source # | |
Data AppInfo Source # | |
Defined in Agda.Syntax.Info gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AppInfo -> c AppInfo # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AppInfo # toConstr :: AppInfo -> Constr # dataTypeOf :: AppInfo -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c AppInfo) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AppInfo) # gmapT :: (forall b. Data b => b -> b) -> AppInfo -> AppInfo # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AppInfo -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AppInfo -> r # gmapQ :: (forall d. Data d => d -> u) -> AppInfo -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> AppInfo -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> AppInfo -> m AppInfo # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AppInfo -> m AppInfo # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AppInfo -> m AppInfo # | |
Ord AppInfo Source # | |
Show AppInfo Source # | |
KillRange AppInfo Source # | |
Defined in Agda.Syntax.Info | |
HasRange AppInfo Source # | |
LensOrigin AppInfo Source # | |
defaultAppInfo :: Range -> AppInfo Source #
Default is system inserted and prefer parens.
defaultAppInfo_ :: AppInfo Source #
AppInfo
with no range information.
data ModuleInfo Source #
ModuleInfo | |
|
Instances
Instances
Eq LetInfo Source # | |
Data LetInfo Source # | |
Defined in Agda.Syntax.Info gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LetInfo -> c LetInfo # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LetInfo # toConstr :: LetInfo -> Constr # dataTypeOf :: LetInfo -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LetInfo) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LetInfo) # gmapT :: (forall b. Data b => b -> b) -> LetInfo -> LetInfo # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LetInfo -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LetInfo -> r # gmapQ :: (forall d. Data d => d -> u) -> LetInfo -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> LetInfo -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> LetInfo -> m LetInfo # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LetInfo -> m LetInfo # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LetInfo -> m LetInfo # | |
Show LetInfo Source # | |
Null LetInfo Source # | |
KillRange LetInfo Source # | |
Defined in Agda.Syntax.Info | |
HasRange LetInfo Source # | |
DefInfo | |
|
Instances
Eq t => Eq (DefInfo' t) Source # | |
Data t => Data (DefInfo' t) Source # | |
Defined in Agda.Syntax.Info gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DefInfo' t -> c (DefInfo' t) # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DefInfo' t) # toConstr :: DefInfo' t -> Constr # dataTypeOf :: DefInfo' t -> DataType # dataCast1 :: Typeable t0 => (forall d. Data d => c (t0 d)) -> Maybe (c (DefInfo' t)) # dataCast2 :: Typeable t0 => (forall d e. (Data d, Data e) => c (t0 d e)) -> Maybe (c (DefInfo' t)) # gmapT :: (forall b. Data b => b -> b) -> DefInfo' t -> DefInfo' t # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DefInfo' t -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DefInfo' t -> r # gmapQ :: (forall d. Data d => d -> u) -> DefInfo' t -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> DefInfo' t -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> DefInfo' t -> m (DefInfo' t) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DefInfo' t -> m (DefInfo' t) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DefInfo' t -> m (DefInfo' t) # | |
Show t => Show (DefInfo' t) Source # | |
KillRange t => KillRange (DefInfo' t) Source # | |
Defined in Agda.Syntax.Info killRange :: KillRangeT (DefInfo' t) Source # | |
SetRange (DefInfo' t) Source # | |
HasRange (DefInfo' t) Source # | |
AnyIsAbstract (DefInfo' t) Source # | |
Defined in Agda.Syntax.Info anyIsAbstract :: DefInfo' t -> IsAbstract Source # | |
LensIsAbstract (DefInfo' t) Source # | |
Defined in Agda.Syntax.Info lensIsAbstract :: Lens' IsAbstract (DefInfo' t) Source # |
mkDefInfoInstance :: Name -> Fixity' -> Access -> IsAbstract -> IsInstance -> IsMacro -> Range -> DefInfo' t Source #
Same as mkDefInfo
but where we can also give the IsInstance
Instances
Eq DeclInfo Source # | |
Data DeclInfo Source # | |
Defined in Agda.Syntax.Info gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DeclInfo -> c DeclInfo # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DeclInfo # toConstr :: DeclInfo -> Constr # dataTypeOf :: DeclInfo -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DeclInfo) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DeclInfo) # gmapT :: (forall b. Data b => b -> b) -> DeclInfo -> DeclInfo # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DeclInfo -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DeclInfo -> r # gmapQ :: (forall d. Data d => d -> u) -> DeclInfo -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> DeclInfo -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> DeclInfo -> m DeclInfo # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DeclInfo -> m DeclInfo # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DeclInfo -> m DeclInfo # | |
Show DeclInfo Source # | |
KillRange DeclInfo Source # | |
Defined in Agda.Syntax.Info | |
SetRange DeclInfo Source # | |
HasRange DeclInfo Source # | |
data MutualInfo Source #
Instances
Eq MutualInfo Source # | |
Defined in Agda.Syntax.Info (==) :: MutualInfo -> MutualInfo -> Bool # (/=) :: MutualInfo -> MutualInfo -> Bool # | |
Data MutualInfo Source # | |
Defined in Agda.Syntax.Info gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> MutualInfo -> c MutualInfo # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c MutualInfo # toConstr :: MutualInfo -> Constr # dataTypeOf :: MutualInfo -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c MutualInfo) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c MutualInfo) # gmapT :: (forall b. Data b => b -> b) -> MutualInfo -> MutualInfo # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> MutualInfo -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> MutualInfo -> r # gmapQ :: (forall d. Data d => d -> u) -> MutualInfo -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> MutualInfo -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> MutualInfo -> m MutualInfo # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> MutualInfo -> m MutualInfo # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> MutualInfo -> m MutualInfo # | |
Show MutualInfo Source # | |
Defined in Agda.Syntax.Info showsPrec :: Int -> MutualInfo -> ShowS # show :: MutualInfo -> String # showList :: [MutualInfo] -> ShowS # | |
Null MutualInfo Source # | Default value for |
Defined in Agda.Syntax.Info empty :: MutualInfo Source # null :: MutualInfo -> Bool Source # | |
KillRange MutualInfo Source # | |
Defined in Agda.Syntax.Info | |
HasRange MutualInfo Source # | |
Defined in Agda.Syntax.Info getRange :: MutualInfo -> Range Source # |
Instances
Eq LHSInfo Source # | |
Data LHSInfo Source # | |
Defined in Agda.Syntax.Info gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LHSInfo -> c LHSInfo # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LHSInfo # toConstr :: LHSInfo -> Constr # dataTypeOf :: LHSInfo -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LHSInfo) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LHSInfo) # gmapT :: (forall b. Data b => b -> b) -> LHSInfo -> LHSInfo # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LHSInfo -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LHSInfo -> r # gmapQ :: (forall d. Data d => d -> u) -> LHSInfo -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> LHSInfo -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> LHSInfo -> m LHSInfo # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LHSInfo -> m LHSInfo # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LHSInfo -> m LHSInfo # | |
Show LHSInfo Source # | |
Null LHSInfo Source # | |
KillRange LHSInfo Source # | |
Defined in Agda.Syntax.Info | |
HasRange LHSInfo Source # | |
For a general pattern we remember the source code position.
Instances
Eq PatInfo Source # | |
Data PatInfo Source # | |
Defined in Agda.Syntax.Info gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PatInfo -> c PatInfo # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PatInfo # toConstr :: PatInfo -> Constr # dataTypeOf :: PatInfo -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c PatInfo) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PatInfo) # gmapT :: (forall b. Data b => b -> b) -> PatInfo -> PatInfo # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PatInfo -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PatInfo -> r # gmapQ :: (forall d. Data d => d -> u) -> PatInfo -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> PatInfo -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> PatInfo -> m PatInfo # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PatInfo -> m PatInfo # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PatInfo -> m PatInfo # | |
Show PatInfo Source # | |
Null PatInfo Source # | |
KillRange PatInfo Source # | |
Defined in Agda.Syntax.Info | |
SetRange PatInfo Source # | |
HasRange PatInfo Source # | |
patNoRange :: PatInfo Source #
Empty range for patterns.
data ConPatInfo Source #
Constructor pattern info.
ConPatInfo | |
|
Instances
data ConPatLazy Source #
Has the constructor pattern a dotted (forced) constructor?
ConPatLazy | Dotted constructor. |
ConPatEager | Ordinary constructor. |