Safe Haskell | None |
---|---|

Language | Haskell2010 |

## Synopsis

- mapEffs :: (Union effs ~> Union effs') -> Eff effs ~> Eff effs'
- class UnderN as where
- under :: (Union effs ~> Union effs') -> Union (a ': effs) ~> Union (a ': effs')
- class CanWeakenEnd as effs where
- weakenUnder :: forall effs a b. Union (a ': effs) ~> Union (a ': (b ': effs))
- weakenNUnder :: forall effs' effs a. Weakens effs' => Union (a ': effs) ~> Union (a ': (effs' :++: effs))
- weakenMUnderN :: forall effs' as effs. (UnderN as, Weakens effs') => Union (as :++: effs) ~> Union (as :++: (effs' :++: effs))
- raiseEnd :: forall effs as. CanWeakenEnd as effs => Eff as ~> Eff effs
- raiseUnder :: forall effs a b. Eff (a ': effs) ~> Eff (a ': (b ': effs))
- raiseUnder2 :: forall effs a b c. Eff (a ': (b ': effs)) ~> Eff (a ': (b ': (c ': effs)))
- raise2Under :: forall effs a b c. Eff (a ': effs) ~> Eff (a ': (b ': (c ': effs)))
- raiseNUnder :: forall effs' effs a. Weakens effs' => Eff (a ': effs) ~> Eff (a ': (effs' :++: effs))
- raiseMUnderN :: forall effs' as effs. (UnderN as, Weakens effs') => Eff (as :++: effs) ~> Eff (as :++: (effs' :++: effs))
- handleZoomedState :: Member (State s2) effs => Lens' s2 s1 -> State s1 ~> Eff effs
- handleZoomedError :: Member (Error s2) effs => AReview s2 s1 -> Error s1 ~> Eff effs
- handleZoomedWriter :: Member (Writer s2) effs => AReview s2 s1 -> Writer s1 ~> Eff effs
- handleZoomedReader :: Member (Reader s2) effs => Getter s2 s1 -> Reader s1 ~> Eff effs
- writeIntoState :: (Monoid s1, Member (State s2) effs) => Setter' s2 s1 -> Writer s1 ~> Eff effs
- stateToMonadState :: MonadState s m => State s ~> m
- monadStateToState :: Member (State s) effs => State s a -> Eff effs a
- errorToMonadError :: MonadError e m => Error e ~> m
- wrapError :: forall e f effs. Member (Error f) effs => (e -> f) -> Eff (Error e ': effs) ~> Eff effs

# change the list of effects

# under functions

# weaken functions

class CanWeakenEnd as effs where Source #

#### Instances

(effs ~ (a ': effs'), CanWeakenEnd (b ': as) effs') => CanWeakenEnd (a ': (b ': as)) effs Source # | |

effs ~ (a ': effs') => CanWeakenEnd '[a] effs Source # | |

weakenNUnder :: forall effs' effs a. Weakens effs' => Union (a ': effs) ~> Union (a ': (effs' :++: effs)) Source #

weakenMUnderN :: forall effs' as effs. (UnderN as, Weakens effs') => Union (as :++: effs) ~> Union (as :++: (effs' :++: effs)) Source #

# raise functions

raiseNUnder :: forall effs' effs a. Weakens effs' => Eff (a ': effs) ~> Eff (a ': (effs' :++: effs)) Source #

raiseMUnderN :: forall effs' as effs. (UnderN as, Weakens effs') => Eff (as :++: effs) ~> Eff (as :++: (effs' :++: effs)) Source #

Raise m effects under the top n effects

# zoom functions

# manipulation

writeIntoState :: (Monoid s1, Member (State s2) effs) => Setter' s2 s1 -> Writer s1 ~> Eff effs Source #

stateToMonadState :: MonadState s m => State s ~> m Source #

Handle a `State`

effect in terms of a monadic effect which has a `MonadState`

instance.

errorToMonadError :: MonadError e m => Error e ~> m Source #

Handle an `Error`

effect in terms of a monadic effect which has a `MonadError`

instance.