Agda- A dependently typed functional programming language and proof assistant

Safe HaskellNone




parseExpr :: Range -> String -> TCM Expr Source

Parses an expression.

give Source


:: InteractionId


-> Maybe Range 
-> Expr

The expression to give.

-> TCM Expr

If successful, the very expression is returned unchanged.

Try to fill hole by expression.

Returns the given expression unchanged (for convenient generalization to refine).

refine Source


:: InteractionId


-> Maybe Range 
-> Expr

The expression to refine the hole with.

-> TCM Expr

The successfully given expression.

Try to refine hole by expression e.

This amounts to successively try to give e, e ?, e ? ?, ... Returns the successfully given expression.

evalInCurrent :: Expr -> TCM Expr Source

Evaluate the given expression in the current environment

data OutputConstraint' a b Source

A subset of OutputConstraint.




ofName :: b
ofExpr :: a

getSolvedInteractionPoints :: Bool -> TCM [(InteractionId, MetaId, Expr)] Source

getSolvedInteractionPoints True returns all solutions, even if just solved by another, non-interaction meta.

getSolvedInteractionPoints False only returns metas that are solved by a non-meta.

typeInCurrent :: Rewrite -> Expr -> TCM Expr Source

Returns the type of the expression in the current environment We wake up irrelevant variables just in case the user want to invoke that command in an irrelevant context.

atTopLevel :: TCM a -> TCM a Source

Runs the given computation as if in an anonymous goal at the end of the top-level module.

Sets up current module, scope, and context.

parseName :: Range -> String -> TCM QName Source

Parse a name.

moduleContents Source


:: Rewrite

How should the types be presented

-> Range

The range of the next argument.

-> String

The module name.

-> TCM ([Name], [(Name, Type)])

Module names, names paired up with corresponding types.

Returns the contents of the given module.