Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
UntypedPlutusCore.Contexts
Synopsis
- data AppCtx name uni fun a
- = AppCtxTerm a (Term name uni fun a) (AppCtx name uni fun a)
- | AppCtxType a (AppCtx name uni fun a)
- | AppCtxEnd
- splitAppCtx ∷ Term nam uni fun a → (Term nam uni fun a, AppCtx nam uni fun a)
- fillAppCtx ∷ Term name uni fun ann → AppCtx name uni fun ann → Term name uni fun ann
Documentation
data AppCtx name uni fun a Source #
A context for an iterated term/type application.
Constructors
AppCtxTerm a (Term name uni fun a) (AppCtx name uni fun a) | |
AppCtxType a (AppCtx name uni fun a) | |
AppCtxEnd |
splitAppCtx ∷ Term nam uni fun a → (Term nam uni fun a, AppCtx nam uni fun a) Source #
Takes a term and views it as a head plus an AppCtx
, e.g.
[{ f t } u v]
-->
(f, [{ _ t } u v])
==
f (AppCtxType t (AppCtxTerm u (AppCtxTerm v AppCtxEnd)))
fillAppCtx ∷ Term name uni fun ann → AppCtx name uni fun ann → Term name uni fun ann Source #
Fills in the hole in an AppCtx
, the inverse of splitAppCtx
.