Copyright | (c) 2013-2020 Brendan Hay <brendan.g.hay@gmail.com> |
---|---|
License | This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. A copy of the MPL can be found in the LICENSE file or you can obtain it at http://mozilla.org/MPL/2.0/. |
Maintainer | Brendan Hay <brendan.g.hay@gmail.com> |
Stability | experimental |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
Warning: this is an internal module, and does not have a stable API or name. Functions in this module may not check or enforce preconditions expected by public modules. Use at your own risk!
Synopsis
- data Env = Env {}
- type Context = ReaderT Env Result
- render :: HashMap Id (Exp Delta) -> HashMap Id Term -> Exp Delta -> HashMap Id Value -> Result Builder
- eval :: Exp Delta -> Context Term
- bind :: (Object -> Object) -> Context a -> Context a
- variable :: Delta -> Var -> Context Value
- predicate :: Exp Delta -> Context Term
- binding :: Delta -> Term -> Term -> Context Term
- build :: Delta -> Value -> Context Builder
- throwError :: Delta -> AnsiDoc -> Context a