| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
CHR.Data.Lookup.Stacked
Description
Lookups combined into stack of lookups, allowing combined lookup coupled with updates on top of stack only
Documentation
class Stacked stk where Source #
Functionality on top of Lookup for awareness of a scope.
Minimal definition lifts, 'unlifts,', 'top'/'topM', 'pop'/'popM', 'push'/'pushM'
Methods
lifts :: StackedElt stk -> stk Source #
unlifts :: stk -> [StackedElt stk] Source #
top :: stk -> StackedElt stk Source #
pop :: stk -> (StackedElt stk, stk) Source #
push :: StackedElt stk -> stk -> stk Source #
topM :: MonadState stk m => m (StackedElt stk) Source #
popM :: MonadState stk m => m (StackedElt stk) Source #
pushM :: MonadState stk m => StackedElt stk -> m () Source #
pops :: stk -> (stk, stk) Source #
Arguments
| :: stk | |
| -> stk | |
| -> stk | push, but only top of first arg |
topsM :: MonadState stk m => m stk Source #
popsM :: MonadState stk m => m stk Source #
pushsM :: MonadState stk m => stk -> m () Source #
type family StackedElt stk :: * Source #
Instances
| type StackedElt (Stacks e) Source # | |
| type StackedElt (StackedVarLookup s) Source # | |
Stacked Lookup derived from a base one, to allow a use of multiple lookups but update on top only
Instances
| Functor Stacks Source # | |
| Applicative Stacks Source # | |
| LookupApply l1 l2 => LookupApply l1 (Stacks l2) Source # | |
| Show (Stacks s) Source # | |
| PP s => PP (Stacks s) Source # | |
| Stacked (Stacks lkup) Source # | |
| Lookup lkup k v => Lookup (Stacks lkup) k v Source # | |
| type StackedElt (Stacks e) Source # | |
| type StackedElt (StackedVarLookup s) Source # | |
| type VarLookupVal (StackedVarLookup s) Source # | |
| type VarLookupKey (StackedVarLookup s) Source # | |