idris-0.9.11.2: Functional Programming Language with Dependent Types

Safe HaskellNone

Idris.ElabDecls

Synopsis

Documentation

elabType :: ElabInfo -> SyntaxInfo -> String -> FC -> FnOpts -> Name -> PTerm -> Idris TypeSource

Elaborate a top-level type declaration - for example, foo : Int -> Int.

elabPrims :: Idris ()Source

Elaborate primitives

elabProvider :: ElabInfo -> SyntaxInfo -> FC -> Name -> PTerm -> PTerm -> Idris ()Source

Elaborate a type provider

elabTransform :: ElabInfo -> FC -> Bool -> PTerm -> PTerm -> Idris ()Source

Elaborate a type provider

elabClauses :: ElabInfo -> FC -> FnOpts -> Name -> [PClause] -> Idris ()Source

Elaborate a collection of left-hand and right-hand pairs - that is, a top-level definition.

data MArgTy Source

Constructors

IA 
EA 
CA 

Instances

elabClass :: ElabInfo -> SyntaxInfo -> String -> FC -> [PTerm] -> Name -> [(Name, PTerm)] -> [PDecl] -> Idris ()Source

pbty :: TT n -> TT n -> TT nSource

getPBtys :: TT t -> [(t, TT t)]Source

psolve :: TT t -> StateT (ElabState aux) TC ()Source

data ElabWhat Source

Constructors

ETypes 
EDefns 
EAll 

Instances