- Request <UOut, UIn, DIn, DOut, M, A> (UOut Value, Func<UIn, Proxy<UOut, UIn, DIn, DOut, M, A>> Next)
- ToProxy ()
- Deconstruct (out UOut value, out Func<UIn, Proxy<UOut, UIn, DIn, DOut, M, A>> fun)
- For <C1, C> ( Func<DOut, Proxy<UOut, UIn, C1, C, M, DIn>> body)
- Action <S> ( Proxy<UOut, UIn, DIn, DOut, M, S> r)
- ReplaceRequest <UOutA, AUInA> ( Func<UOut, Proxy<UOutA, AUInA, DIn, DOut, M, UIn>> lhs)
- ReplaceRespond <DInC, DOutC> ( Func<DOut, Proxy<UOut, UIn, DInC, DOutC, M, DIn>> rhs)
- PairEachRequestWithRespond <UOutA, AUInA> ( Func<UOut, Proxy<UOutA, AUInA, UOut, UIn, M, A>> lhs)
- PairEachRespondWithRequest <DInC, DOutC> ( Func<DOut, Proxy<DIn, DOut, DInC, DOutC, M, A>> rhs)
- Reflect ()
- Observe ()
- Bind <B> (Func<A, Proxy<UOut, UIn, DIn, DOut, M, B>> f)
- Map <B> (Func<A, B> f)
- MapM <B> (Func<K<M, A>, K<M, B>> f)
- ToIO ()
- ToString ()
- Respond <UOut, UIn, DIn, DOut, M, A> (DOut Value, Func<DIn, Proxy<UOut, UIn, DIn, DOut, M, A>> Next)
- ToProxy ()
- Bind <B> (Func<A, Proxy<UOut, UIn, DIn, DOut, M, B>> f)
- Map <B> (Func<A, B> f)
- MapM <B> (Func<K<M, A>, K<M, B>> f)
- ToIO ()
- For <C1, C> (Func<DOut, Proxy<UOut, UIn, C1, C, M, DIn>> body)
- Action <S> (Proxy<UOut, UIn, DIn, DOut, M, S> r)
- ReplaceRequest <UOutA, AUInA> (Func<UOut, Proxy<UOutA, AUInA, DIn, DOut, M, UIn>> lhs)
- ReplaceRespond <DInC, DOutC> ( Func<DOut, Proxy<UOut, UIn, DInC, DOutC, M, DIn>> rhs)
- PairEachRequestWithRespond <UOutA, AUInA> ( Func<UOut, Proxy<UOutA, AUInA, UOut, UIn, M, A>> fb1)
- PairEachRespondWithRequest <DInC, DOutC> ( Func<DOut, Proxy<DIn, DOut, DInC, DOutC, M, A>> rhs)
- Reflect ()
- Observe ()
- Deconstruct (out DOut value, out Func<DIn, Proxy<UOut, UIn, DIn, DOut, M, A>> fun)
- ToString ()
record Request <UOut, UIn, DIn, DOut, M, A> (UOut Value, Func<UIn, Proxy<UOut, UIn, DIn, DOut, M, A>> Next) Source #
One of the algebraic cases of the Proxy
type. This type represents a request.
type | RT | Aff system runtime |
type | UOut | Upstream out type |
type | UIn | Upstream in type |
type | DIn | Downstream in type |
type | DOut | Downstream uut type |
type | A | The monadic bound variable - it doesn't flow up or down stream, it works just like any bound
monadic variable. If the effect represented by the When composing |
method void Deconstruct (out UOut value, out Func<UIn, Proxy<UOut, UIn, DIn, DOut, M, A>> fun) Source #
method Proxy<UOut, UIn, C1, C, M, A> For <C1, C> ( Func<DOut, Proxy<UOut, UIn, C1, C, M, DIn>> body) Source #
method Proxy<UOutA, AUInA, DIn, DOut, M, A> ReplaceRequest <UOutA, AUInA> ( Func<UOut, Proxy<UOutA, AUInA, DIn, DOut, M, UIn>> lhs) Source #
method Proxy<UOut, UIn, DInC, DOutC, M, A> ReplaceRespond <DInC, DOutC> ( Func<DOut, Proxy<UOut, UIn, DInC, DOutC, M, DIn>> rhs) Source #
method Proxy<UOutA, AUInA, DIn, DOut, M, A> PairEachRequestWithRespond <UOutA, AUInA> ( Func<UOut, Proxy<UOutA, AUInA, UOut, UIn, M, A>> lhs) Source #
(f +>> p) pairs each 'request' in this
with a 'respond' in lhs
.
method Proxy<UOut, UIn, DInC, DOutC, M, A> PairEachRespondWithRequest <DInC, DOutC> ( Func<DOut, Proxy<DIn, DOut, DInC, DOutC, M, A>> rhs) Source #
method Proxy<UOut, UIn, DIn, DOut, M, B> Bind <B> (Func<A, Proxy<UOut, UIn, DIn, DOut, M, B>> f) Source #
method Proxy<UOut, UIn, DIn, DOut, M, B> MapM <B> (Func<K<M, A>, K<M, B>> f) Source #
Map the lifted monad
type | B | The mapped bound value type |
param | f | The map function |
returns | A new |
record Respond <UOut, UIn, DIn, DOut, M, A> (DOut Value, Func<DIn, Proxy<UOut, UIn, DIn, DOut, M, A>> Next) Source #
One of the algebraic cases of the Proxy
type. This type represents a response.
type | RT | Aff system runtime |
type | UOut | Upstream out type |
type | UIn | Upstream in type |
type | DIn | Downstream in type |
type | DOut | Downstream uut type |
type | A | The monadic bound variable - it doesn't flow up or down stream, it works just like any bound
monadic variable. If the effect represented by the When composing |
method Proxy<UOut, UIn, DIn, DOut, M, B> Bind <B> (Func<A, Proxy<UOut, UIn, DIn, DOut, M, B>> f) Source #
method Proxy<UOut, UIn, DIn, DOut, M, B> MapM <B> (Func<K<M, A>, K<M, B>> f) Source #
Map the lifted monad
type | B | The mapped bound value type |
param | f | The map function |
returns | A new |
method Proxy<UOut, UIn, DIn, DOut, M, IO<A>> ToIO () Source #
Extract the lifted IO monad (if there is one)
param | f | The map function |
returns | A new |
method Proxy<UOut, UIn, C1, C, M, A> For <C1, C> (Func<DOut, Proxy<UOut, UIn, C1, C, M, DIn>> body) Source #
method Proxy<UOutA, AUInA, DIn, DOut, M, A> ReplaceRequest <UOutA, AUInA> (Func<UOut, Proxy<UOutA, AUInA, DIn, DOut, M, UIn>> lhs) Source #
method Proxy<UOut, UIn, DInC, DOutC, M, A> ReplaceRespond <DInC, DOutC> ( Func<DOut, Proxy<UOut, UIn, DInC, DOutC, M, DIn>> rhs) Source #
method Proxy<UOutA, AUInA, DIn, DOut, M, A> PairEachRequestWithRespond <UOutA, AUInA> ( Func<UOut, Proxy<UOutA, AUInA, UOut, UIn, M, A>> fb1) Source #
(f +>> p) pairs each 'request' in this
with a 'respond' in lhs
.
method Proxy<UOut, UIn, DInC, DOutC, M, A> PairEachRespondWithRequest <DInC, DOutC> ( Func<DOut, Proxy<DIn, DOut, DInC, DOutC, M, A>> rhs) Source #
method void Deconstruct (out DOut value, out Func<DIn, Proxy<UOut, UIn, DIn, DOut, M, A>> fun) Source #