ddc-core-0.4.2.1: DDC/Core/Exp/Annot.hs
module DDC.Core.Exp.Annot
(
---------------------------------------
-- * Abstract Syntax
module DDC.Type.Exp
-- ** Expressions
, Exp (..)
, Lets (..)
, Alt (..)
, Pat (..)
, Cast (..)
-- ** Witnesses
, Witness (..)
-- ** Data Constructors
, DaCon (..)
-- ** Witness Constructors
, WiCon (..)
---------------------------------------
-- * Predicates
, module DDC.Type.Predicates
-- ** Atoms
, isXVar, isXCon
, isAtomX, isAtomW
-- ** Lambdas
, isXLAM, isXLam
, isLambdaX
-- ** Applications
, isXApp
-- ** Cast
, isXCast
, isXCastBox
, isXCastRun
-- ** Let bindings
, isXLet
-- ** Patterns
, isPDefault
-- ** Types and Witnesses
, isXType
, isXWitness
---------------------------------------
-- * Compounds
, module DDC.Type.Compounds
-- ** Annotations
, annotOfExp
, mapAnnotOfExp
-- ** Lambdas
, xLAMs
, xLams
, makeXLamFlags
, takeXLAMs
, takeXLams
, takeXLamFlags
, Param(..)
, takeXLamParam
-- ** Applications
, xApps
, makeXAppsWithAnnots
, takeXApps
, takeXApps1
, takeXAppsAsList
, takeXAppsWithAnnots
, takeXConApps
, takeXPrimApps
-- ** Lets
, xLets
, xLetsAnnot
, splitXLets
, splitXLetsAnnot
, bindsOfLets
, specBindsOfLets
, valwitBindsOfLets
-- ** Alternatives
, patOfAlt
, takeCtorNameOfAlt
-- ** Patterns
, bindsOfPat
-- ** Casts
, makeRuns
-- ** Witnesses
, wApp
, wApps
, annotOfWitness
, takeXWitness
, takeWAppsAsList
, takePrimWiConApps
-- ** Types
, takeXType
-- ** Data Constructors
, xUnit, dcUnit
, takeNameOfDaCon
, takeTypeOfDaCon)
where
import DDC.Core.Exp.Annot.Exp
import DDC.Core.Exp.Annot.Compounds
import DDC.Core.Exp.Annot.Predicates
import DDC.Type.Compounds
import DDC.Type.Predicates
import DDC.Type.Exp