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

Safe Haskell | None
Language | Haskell2010

Agda.TypeChecking.Monad.Open

Synopsis

- makeOpen :: a -> TCM (Open a)
- makeClosed :: a -> Open a
- isClosed :: Open a -> Bool
- getOpen :: (Subst t a, MonadReader TCEnv m) => Open a -> m a
- tryOpen :: (Subst t a, MonadReader TCEnv m) => Open a -> m (Maybe a)

# Documentation

makeOpen :: a -> TCM (Open a) #

Create an open term in the current context.

makeClosed :: a -> Open a #

Create an open term which is closed.

isClosed :: Open a -> Bool #

Check if an `Open` is closed.

getOpen :: (Subst t a, MonadReader TCEnv m) => Open a -> m a #

Extract the value from an open term. Must be done in an extension of the context in which the term was created.

tryOpen :: (Subst t a, MonadReader TCEnv m) => Open a -> m (Maybe a) #

Try to use an `Open` the current context. Returns `Nothing` if current context is not an extension of the context in which the `Open` was created.