Agda-2.5.2: A dependently typed functional programming language and proof assistant

Safe Haskell | None
Language | Haskell2010

Agda.TypeChecking.CheckInternal

Description

A bidirectional type checker for internal syntax.

Performs checking on unreduced terms. With the exception that projection-like function applications have to be reduced since they break bidirectionality.

Synopsis

- checkType :: Type -> TCM ()
- checkInternal :: Term -> Type -> TCM ()
- checkInternal' :: Action -> Term -> Type -> TCM Term
- defaultAction :: Action
- data Action = Action {
  - preAction :: Type -> Term -> TCM Term
  - postAction :: Type -> Term -> TCM Term
  }
- infer :: Term -> TCM Type

# Documentation

checkType :: Type -> TCM () #

Entry point for e.g. checking WithFunctionType.

checkInternal :: Term -> Type -> TCM () #

Entry point for term checking.

checkInternal' :: Action -> Term -> Type -> TCM Term #

defaultAction :: Action #

data Action #

Constructors

Action |
Fields preAction :: Type -> Term -> TCM Term postAction :: Type -> Term -> TCM Term

infer :: Term -> TCM Type #

Infer type of a neutral term.