Safe Haskell | None |
---|---|
Language | Haskell2010 |
- newtype Executor effect context = Executor (forall result. effect result -> context result)
- mapEffect :: (forall result. newEffect result -> oldEffect result) -> Executor oldEffect context -> Executor newEffect context
- mapContext :: (forall result. oldContext result -> newContext result) -> Executor effect oldContext -> Executor effect newContext
- execute :: Executor effect context -> effect result -> context result
Documentation
newtype Executor effect context Source #
An abstraction over the execution of effect
in context
, both producing the same result
.
Executor (forall result. effect result -> context result) |
mapEffect :: (forall result. newEffect result -> oldEffect result) -> Executor oldEffect context -> Executor newEffect context Source #
Map the effect part of an executor (contravariantly).
mapContext :: (forall result. oldContext result -> newContext result) -> Executor effect oldContext -> Executor effect newContext Source #
Map the context part of an executor.