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

Agda.TypeChecking.Constraints

Synopsis

Documentation

catchConstraint :: Constraint -> TCM () -> TCM ()

Catches pattern violation errors and adds a constraint.

noConstraints :: TCM a -> TCM a

Don't allow the argument to produce any constraints.

newProblem :: TCM a -> TCM (ProblemId, a)

Create a fresh problem for the given action.

ifNoConstraints :: TCM a -> (a -> TCM b) -> (ProblemId -> a -> TCM b) -> TCM b

ifNoConstraints_ :: TCM () -> TCM a -> (ProblemId -> TCM a) -> TCM a

guardConstraint :: Constraint -> TCM () -> TCM ()

guardConstraint cs c tries to solve constraints cs first. If successful, it moves on to solve c, otherwise it returns a Guarded c cs.

wakeupConstraints :: MetaId -> TCM ()

Wake up the constraints depending on the given meta.

wakeupConstraints_ :: TCM ()

Wake up all constraints.

localState :: MonadState s m => m a -> m a