Agda-2.6.2.2.20230105: A dependently typed functional programming language and proof assistant
Safe HaskellSafe-Inferred
LanguageHaskell2010

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.

Synopsis

Documentation

data MetaInfo Source #

Instances

Instances details
HasRange MetaInfo Source # 
Instance details

Defined in Agda.Syntax.Info

KillRange MetaInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Generic MetaInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Associated Types

type Rep MetaInfo :: Type -> Type #

Methods

from :: MetaInfo -> Rep MetaInfo x #

to :: Rep MetaInfo x -> MetaInfo #

Show MetaInfo Source # 
Instance details

Defined in Agda.Syntax.Info

NFData MetaInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

rnf :: MetaInfo -> () #

Eq MetaInfo Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep MetaInfo Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep MetaInfo = D1 ('MetaData "MetaInfo" "Agda.Syntax.Info" "Agda-2.6.2.2.20230105-inplace" 'False) (C1 ('MetaCons "MetaInfo" 'PrefixI 'True) ((S1 ('MetaSel ('Just "metaRange") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Range) :*: S1 ('MetaSel ('Just "metaScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ScopeInfo)) :*: (S1 ('MetaSel ('Just "metaNumber") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe MetaId)) :*: S1 ('MetaSel ('Just "metaNameSuggestion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))))

newtype ExprInfo Source #

Constructors

ExprRange Range 

Instances

Instances details
HasRange ExprInfo Source # 
Instance details

Defined in Agda.Syntax.Info

KillRange ExprInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Null ExprInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Show ExprInfo Source # 
Instance details

Defined in Agda.Syntax.Info

NFData ExprInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

rnf :: ExprInfo -> () #

Eq ExprInfo Source # 
Instance details

Defined in Agda.Syntax.Info

data AppInfo Source #

Information about application

Constructors

AppInfo 

Fields

Instances

Instances details
LensOrigin AppInfo Source # 
Instance details

Defined in Agda.Syntax.Info

HasRange AppInfo Source # 
Instance details

Defined in Agda.Syntax.Info

KillRange AppInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Generic AppInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Associated Types

type Rep AppInfo :: Type -> Type #

Methods

from :: AppInfo -> Rep AppInfo x #

to :: Rep AppInfo x -> AppInfo #

Show AppInfo Source # 
Instance details

Defined in Agda.Syntax.Info

NFData AppInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

rnf :: AppInfo -> () #

Eq AppInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

(==) :: AppInfo -> AppInfo -> Bool #

(/=) :: AppInfo -> AppInfo -> Bool #

Ord AppInfo Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep AppInfo Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep AppInfo = D1 ('MetaData "AppInfo" "Agda.Syntax.Info" "Agda-2.6.2.2.20230105-inplace" 'False) (C1 ('MetaCons "AppInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "appRange") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Range) :*: (S1 ('MetaSel ('Just "appOrigin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Origin) :*: S1 ('MetaSel ('Just "appParens") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ParenPreference))))

defaultAppInfo :: Range -> AppInfo Source #

Default is system inserted and prefer parens.

defaultAppInfo_ :: AppInfo Source #

AppInfo with no range information.

data ModuleInfo Source #

Constructors

ModuleInfo 

Fields

Instances

Instances details
HasRange ModuleInfo Source # 
Instance details

Defined in Agda.Syntax.Info

KillRange ModuleInfo Source # 
Instance details

Defined in Agda.Syntax.Info

SetRange ModuleInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Generic ModuleInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Associated Types

type Rep ModuleInfo :: Type -> Type #

Show ModuleInfo Source # 
Instance details

Defined in Agda.Syntax.Info

NFData ModuleInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

rnf :: ModuleInfo -> () #

Eq ModuleInfo Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep ModuleInfo Source # 
Instance details

Defined in Agda.Syntax.Info

newtype LetInfo Source #

Constructors

LetRange Range 

Instances

Instances details
HasRange LetInfo Source # 
Instance details

Defined in Agda.Syntax.Info

KillRange LetInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Null LetInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Show LetInfo Source # 
Instance details

Defined in Agda.Syntax.Info

NFData LetInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

rnf :: LetInfo -> () #

Eq LetInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

(==) :: LetInfo -> LetInfo -> Bool #

(/=) :: LetInfo -> LetInfo -> Bool #

data DefInfo' t Source #

Instances

Instances details
AnyIsAbstract (DefInfo' t) Source # 
Instance details

Defined in Agda.Syntax.Info

LensIsAbstract (DefInfo' t) Source # 
Instance details

Defined in Agda.Syntax.Info

HasRange (DefInfo' t) Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

getRange :: DefInfo' t -> Range Source #

KillRange t => KillRange (DefInfo' t) Source # 
Instance details

Defined in Agda.Syntax.Info

SetRange (DefInfo' t) Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

setRange :: Range -> DefInfo' t -> DefInfo' t Source #

Generic (DefInfo' t) Source # 
Instance details

Defined in Agda.Syntax.Info

Associated Types

type Rep (DefInfo' t) :: Type -> Type #

Methods

from :: DefInfo' t -> Rep (DefInfo' t) x #

to :: Rep (DefInfo' t) x -> DefInfo' t #

Show t => Show (DefInfo' t) Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

showsPrec :: Int -> DefInfo' t -> ShowS #

show :: DefInfo' t -> String #

showList :: [DefInfo' t] -> ShowS #

NFData t => NFData (DefInfo' t) Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

rnf :: DefInfo' t -> () #

Eq t => Eq (DefInfo' t) Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

(==) :: DefInfo' t -> DefInfo' t -> Bool #

(/=) :: DefInfo' t -> DefInfo' t -> Bool #

type Rep (DefInfo' t) Source # 
Instance details

Defined in Agda.Syntax.Info

mkDefInfoInstance :: Name -> Fixity' -> Access -> IsAbstract -> IsInstance -> IsMacro -> Range -> DefInfo' t Source #

Same as mkDefInfo but where we can also give the IsInstance

data DeclInfo Source #

Constructors

DeclInfo 

Fields

Instances

Instances details
HasRange DeclInfo Source # 
Instance details

Defined in Agda.Syntax.Info

KillRange DeclInfo Source # 
Instance details

Defined in Agda.Syntax.Info

SetRange DeclInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Generic DeclInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Associated Types

type Rep DeclInfo :: Type -> Type #

Methods

from :: DeclInfo -> Rep DeclInfo x #

to :: Rep DeclInfo x -> DeclInfo #

Show DeclInfo Source # 
Instance details

Defined in Agda.Syntax.Info

NFData DeclInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

rnf :: DeclInfo -> () #

Eq DeclInfo Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep DeclInfo Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep DeclInfo = D1 ('MetaData "DeclInfo" "Agda.Syntax.Info" "Agda-2.6.2.2.20230105-inplace" 'False) (C1 ('MetaCons "DeclInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "declName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Just "declRange") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Range)))

data MutualInfo Source #

Instances

Instances details
HasRange MutualInfo Source # 
Instance details

Defined in Agda.Syntax.Info

KillRange MutualInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Null MutualInfo Source #

Default value for MutualInfo.

Instance details

Defined in Agda.Syntax.Info

Generic MutualInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Associated Types

type Rep MutualInfo :: Type -> Type #

Show MutualInfo Source # 
Instance details

Defined in Agda.Syntax.Info

NFData MutualInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

rnf :: MutualInfo -> () #

Eq MutualInfo Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep MutualInfo Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep MutualInfo = D1 ('MetaData "MutualInfo" "Agda.Syntax.Info" "Agda-2.6.2.2.20230105-inplace" 'False) (C1 ('MetaCons "MutualInfo" 'PrefixI 'True) ((S1 ('MetaSel ('Just "mutualTerminationCheck") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (TerminationCheck Name)) :*: S1 ('MetaSel ('Just "mutualCoverageCheck") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CoverageCheck)) :*: (S1 ('MetaSel ('Just "mutualPositivityCheck") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PositivityCheck) :*: S1 ('MetaSel ('Just "mutualRange") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Range))))

data LHSInfo Source #

Constructors

LHSInfo 

Instances

Instances details
HasRange LHSInfo Source # 
Instance details

Defined in Agda.Syntax.Info

KillRange LHSInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Null LHSInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Generic LHSInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Associated Types

type Rep LHSInfo :: Type -> Type #

Methods

from :: LHSInfo -> Rep LHSInfo x #

to :: Rep LHSInfo x -> LHSInfo #

Show LHSInfo Source # 
Instance details

Defined in Agda.Syntax.Info

NFData LHSInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

rnf :: LHSInfo -> () #

Eq LHSInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

(==) :: LHSInfo -> LHSInfo -> Bool #

(/=) :: LHSInfo -> LHSInfo -> Bool #

type Rep LHSInfo Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep LHSInfo = D1 ('MetaData "LHSInfo" "Agda.Syntax.Info" "Agda-2.6.2.2.20230105-inplace" 'False) (C1 ('MetaCons "LHSInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "lhsRange") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Range) :*: S1 ('MetaSel ('Just "lhsEllipsis") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ExpandedEllipsis)))

newtype PatInfo Source #

For a general pattern we remember the source code position.

Constructors

PatRange Range 

Instances

Instances details
HasRange PatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

KillRange PatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

SetRange PatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Null PatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Monoid PatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Semigroup PatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Show PatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

NFData PatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

rnf :: PatInfo -> () #

Eq PatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

(==) :: PatInfo -> PatInfo -> Bool #

(/=) :: PatInfo -> PatInfo -> Bool #

patNoRange :: PatInfo Source #

Empty range for patterns.

data ConPatInfo Source #

Constructor pattern info.

Constructors

ConPatInfo 

Fields

Instances

Instances details
HasRange ConPatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

KillRange ConPatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

SetRange ConPatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

EmbPrj ConPatInfo Source # 
Instance details

Defined in Agda.TypeChecking.Serialise.Instances.Abstract

Generic ConPatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Associated Types

type Rep ConPatInfo :: Type -> Type #

Show ConPatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

NFData ConPatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

rnf :: ConPatInfo -> () #

Eq ConPatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep ConPatInfo Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep ConPatInfo = D1 ('MetaData "ConPatInfo" "Agda.Syntax.Info" "Agda-2.6.2.2.20230105-inplace" 'False) (C1 ('MetaCons "ConPatInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "conPatOrigin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ConOrigin) :*: (S1 ('MetaSel ('Just "conPatInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PatInfo) :*: S1 ('MetaSel ('Just "conPatLazy") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ConPatLazy))))

data ConPatLazy Source #

Has the constructor pattern a dotted (forced) constructor?

Constructors

ConPatLazy

Dotted constructor.

ConPatEager

Ordinary constructor.

Instances

Instances details
EmbPrj ConPatLazy Source # 
Instance details

Defined in Agda.TypeChecking.Serialise.Instances.Abstract

Bounded ConPatLazy Source # 
Instance details

Defined in Agda.Syntax.Info

Enum ConPatLazy Source # 
Instance details

Defined in Agda.Syntax.Info

Generic ConPatLazy Source # 
Instance details

Defined in Agda.Syntax.Info

Associated Types

type Rep ConPatLazy :: Type -> Type #

Show ConPatLazy Source # 
Instance details

Defined in Agda.Syntax.Info

NFData ConPatLazy Source # 
Instance details

Defined in Agda.Syntax.Info

Methods

rnf :: ConPatLazy -> () #

Eq ConPatLazy Source # 
Instance details

Defined in Agda.Syntax.Info

Ord ConPatLazy Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep ConPatLazy Source # 
Instance details

Defined in Agda.Syntax.Info

type Rep ConPatLazy = D1 ('MetaData "ConPatLazy" "Agda.Syntax.Info" "Agda-2.6.2.2.20230105-inplace" 'False) (C1 ('MetaCons "ConPatLazy" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ConPatEager" 'PrefixI 'False) (U1 :: Type -> Type))