Copyright | (c) 2013-2016 Galois Inc. |
---|---|
License | BSD3 |
Maintainer | cryptol@galois.com |
Stability | provisional |
Portability | portable |
Safe Haskell | Safe |
Language | Haskell2010 |
Synopsis
- data GenEvalEnv b w i = EvalEnv {}
- ppEnv :: BitWord b w i => PPOpts -> GenEvalEnv b w i -> Eval Doc
- emptyEnv :: GenEvalEnv b w i
- bindVar :: Name -> Eval (GenValue b w i) -> GenEvalEnv b w i -> Eval (GenEvalEnv b w i)
- bindVarDirect :: Name -> GenValue b w i -> GenEvalEnv b w i -> GenEvalEnv b w i
- lookupVar :: Name -> GenEvalEnv b w i -> Maybe (Eval (GenValue b w i))
- bindType :: TVar -> Either Nat' TValue -> GenEvalEnv b w i -> GenEvalEnv b w i
- lookupType :: TVar -> GenEvalEnv b w i -> Maybe (Either Nat' TValue)
Documentation
data GenEvalEnv b w i Source #
Instances
emptyEnv :: GenEvalEnv b w i Source #
Evaluation environment with no bindings
bindVar :: Name -> Eval (GenValue b w i) -> GenEvalEnv b w i -> Eval (GenEvalEnv b w i) Source #
Bind a variable in the evaluation environment.
bindVarDirect :: Name -> GenValue b w i -> GenEvalEnv b w i -> GenEvalEnv b w i Source #
Bind a variable to a value in the evaluation environment, without creating a thunk.
lookupVar :: Name -> GenEvalEnv b w i -> Maybe (Eval (GenValue b w i)) Source #
Lookup a variable in the environment.
bindType :: TVar -> Either Nat' TValue -> GenEvalEnv b w i -> GenEvalEnv b w i Source #
Bind a type variable of kind *.
lookupType :: TVar -> GenEvalEnv b w i -> Maybe (Either Nat' TValue) Source #
Lookup a type variable.