Safe Haskell | None |
---|---|
Language | Haskell2010 |
- class MemberEffect Coroutine (Coroutine i o) es => EffectCoroutine i o es
- data Coroutine i o a
- runCoroutine :: Effect (Coroutine i o :+ es) a -> Effect es (Iterator i o es a)
- suspend :: EffectCoroutine i o es => i -> Effect es o
- data Iterator i o es a
- evalIterator :: Iterator i o es a -> [o] -> Effect es (Iterator i o es a, [i])
Documentation
class MemberEffect Coroutine (Coroutine i o) es => EffectCoroutine i o es Source
MemberEffect (* -> * -> * -> *) Coroutine (Coroutine i o) es => EffectCoroutine i o es |
An effect describing a suspendable computation.
suspend :: EffectCoroutine i o es => i -> Effect es o Source
Suspends the current computation by providing a value
of type i
and then waiting for a value of type o
.
A suspended computation.
evalIterator :: Iterator i o es a -> [o] -> Effect es (Iterator i o es a, [i]) Source
Evaluates an iterator by providing it with an input stream.