org.specs2.control.eff
Members list
Packages
Type members
Classlikes
Sequence of monadic functions from A to B: A => Eff[B]
Sequence of monadic functions from A to B: A => Eff[B]
Internally it is represented as a Vector of functions:
A => Eff[R, X1]; X1 => Eff[R, X2]; X2 => Eff[R, X3]; ...; X3 => Eff[R, B]
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Collection of effects of a given type from a Unions objects
Collection of effects of a given type from a Unions objects
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ConsoleEffect.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
object DisjunctionCreation.typetrait DisjunctionEffectobject DisjunctionEffect.typeobject all.typeobject create.typeobject disjunction.typeShow all
Attributes
- Companion
- trait
- Supertypes
- Self type
-
DisjunctionCreation.type
Effect for computation which can fail
Effect for computation which can fail
Attributes
- Companion
- object
- Supertypes
- Known subtypes
-
object DisjunctionEffect.typeobject all.type
Attributes
- Companion
- trait
- Supertypes
- Self type
-
DisjunctionEffect.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait DisjunctionEffectobject DisjunctionEffect.typeobject all.typeobject DisjunctionInterpretation.typeobject disjunction.type
Attributes
- Companion
- trait
- Supertypes
- Self type
Effects of type R, returning a value of type A
Effects of type R, returning a value of type A
It is implemented as a "Free-er" monad with extensible effects:
-
the "pure" case is a pure value of type A
-
the "impure" case is:
- a disjoint union of possible effects
- a continuation of type X => Eff[R, A] indicating what to do if the current effect is of type M[X] this type is represented by the
Arrs
type
-
the "impure applicative" case is:
- list of disjoint unions of possible effects
- a function to apply to the values resulting from those effects
The monad implementation for this type is really simple:
point
is Purebind
simply appends the binding function to theArrs
continuation
Important:
The list of continuations is NOT implemented as a type sequence but simply as a Vector[Any => Eff[R, Any]]
This means that various .asInstanceOf
are present in the implementation and could lead to burns and severe harm. Use with caution!
Similarly the list of effects in the applicative case is untyped and interpreters for those effects are supposed to create a list of values to feed the mapping function. If an interpreter doesn't create a list of values of the right size and with the right types, there will be a runtime exception.
The Pure, Impure and ImpureAp cases also incorporate a "last" action returning no value but just used for side-effects (shutting down an execution context for example). This action is meant to be executed at the end of all computations, regardless of the number of flatMaps added on the Eff value.
Since this last action will be executed, its value never collected so if it throws an exception it is possible to print it by defining the eff.debuglast system property (-Deff.debuglast=true)
Attributes
- See also
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Companion
- trait
- Supertypes
-
trait Sumtrait Mirrortrait EffImplicitstrait EffInterpretationtrait EffCreationclass Objecttrait Matchableclass AnyShow all
- Self type
-
Eff.type
Attributes
- Companion
- trait
- Supertypes
- Self type
-
EffCreation.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Companion
- trait
- Supertypes
- Self type
-
EffImplicits.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Companion
- trait
- Supertypes
- Self type
-
EffInterpretation.type
one effect, basically a type constructor
one effect, basically a type constructor
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
- Known subtypes
Effect for computation which can fail and return a Throwable, or just stop with a failure
Effect for computation which can fail and return a Throwable, or just stop with a failure
This effect is a mix of Eval and Either in the sense that every computation passed to this effect (with the ok method) is considered "impure" or "faulty" by default.
The type F is used to represent the failure type.
Attributes
- Companion
- object
- Supertypes
-
trait ErrorInterpretation[F]trait ErrorCreation[F]trait ErrorTypes[F]class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
object ErrorEffect.type
Simple instantiation of the ErrorEffect trait with String as a Failure type
Simple instantiation of the ErrorEffect trait with String as a Failure type
Attributes
- Companion
- trait
- Supertypes
-
trait ErrorEffect[String]trait ErrorInterpretation[String]trait ErrorCreation[String]trait ErrorTypes[String]class Objecttrait Matchableclass AnyShow all
- Self type
-
ErrorEffect.type
Attributes
- Supertypes
- Known subtypes
-
trait ErrorEffect[F]object ErrorEffect.type
- Self type
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Supertypes
- Known subtypes
Effect for delayed computations
Effect for delayed computations
uses scalaz.Need as a supporting data structure
Attributes
- Companion
- object
- Supertypes
-
trait EvalInterpretationtrait EvalCreationtrait EvalTypesclass Objecttrait Matchableclass AnyShow all
- Known subtypes
Attributes
- Companion
- trait
- Supertypes
-
trait EvalEffecttrait EvalInterpretationtrait EvalCreationtrait EvalTypesclass Objecttrait Matchableclass AnyShow all
- Self type
-
EvalEffect.type
Attributes
- Companion
- object
- Supertypes
- Known subtypes
-
trait EvalEffectobject EvalEffect.typeobject all.typeobject eval.typeobject EvalInterpretation.type
Attributes
- Companion
- trait
- Supertypes
- Self type
-
EvalInterpretation.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait EvalCreationtrait EvalEffectobject EvalEffect.typeobject all.typeobject eval.typeobject create.typetrait EvalInterpretationobject EvalInterpretation.typeobject EvalTypes.typeShow all
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait Safe[A]class Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class Memoized[T]
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait Safe[Unit]class Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait Safe[A]class Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- trait
- Supertypes
- Self type
-
FutureCreation.type
Attributes
- Companion
- object
- Supertypes
- Known subtypes
Attributes
- Companion
- object
- Supertypes
-
trait FutureInterpretationtrait FutureCreationtrait FutureTypesclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
object FutureEffect.type
Attributes
- Companion
- trait
- Supertypes
-
trait FutureEffecttrait FutureInterpretationtrait FutureCreationtrait FutureTypesclass Objecttrait Matchableclass AnyShow all
- Self type
-
FutureEffect.type
Attributes
- Companion
- object
- Supertypes
- Known subtypes
Attributes
- Companion
- trait
- Supertypes
- Self type
-
FutureInterpretation.type
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait FutureCreationobject FutureCreation.typetrait FutureEffectobject FutureEffect.typetrait FutureInterpretationobject FutureInterpretation.typeShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait Fxclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait Fxclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait Fxclass Objecttrait Matchableclass AnyShow all
Append a tree of effects to another one
Append a tree of effects to another one
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait Fxclass Objecttrait Matchableclass AnyShow all
Impure is an effect (encoded as one possibility among other effects, a Union) and a continuation providing the next Eff value.
Impure is an effect (encoded as one possibility among other effects, a Union) and a continuation providing the next Eff value.
This essentially models a flatMap operation with the current effect and the monadic function to apply to a value once the effect is interpreted
One effect can always be executed last, just for side-effects
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
ImpureAp is a list of independent effects and a pure function creating a value with all the resulting values once all effects have been interpreted.
ImpureAp is a list of independent effects and a pure function creating a value with all the resulting values once all effects have been interpreted.
This essentially models a sequence + map operation but it is important to understand that the list of Union objects can represent different effects and be like: List[Option[Int], Future[String], Option[Int]].
Interpreting such an Eff value for a given effect (say Option) consists in:
- grouping all the Option values,
- sequencing them
- pass them to a continuation which will apply the 'map' functions when the other effects (Future in the example above) will have been interpreted
VERY IMPORTANT:
- this object is highly unsafe
- the size of the list argument to 'map' must always be equal to the number of unions in the Unions object
- the types of the elements in the list argument to 'map' must be the exact types of each effect in unions.unions
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Support methods to create interpreters (or "effect handlers") for a given effect M and a value Eff[R, A] when M is a member of R.
Support methods to create interpreters (or "effect handlers") for a given effect M and a value Eff[R, A] when M is a member of R.
Those methods guarantee a stack-safe behaviour when running on a large list of effects (in list.traverse(f) for example).
There are different types of supported interpreters:
- "interpret" + Recurse
This interpreter is used to handle effects which either return a value X from M[X] or stops with Eff[R, B] See an example of such an interpreter in Eval where we just evaluate a computation X for each Eval[X].
- "interpretState" + StateRecurse
This interpreter is used to handle effects which either return a value X from M[X] or stops with Eff[R, B]
- "interpretLoop" + Loop
The most generic kind of interpreter where we can even recurse in the case of Pure(a) (See ListEffect for such a use)
-
"intercept / interceptState / interceptLoop" methods are similar but they transform an effect to other effects in the same stack without removing it from the stack
-
"transform" to swap an effect T of a stack to another effect, using a Natural Transformation
-
"translate" to interpret one effect of a stack into other effects of the same stack using a Natural Transformation this is a specialized version of interpret + Recurse
-
"interpretUnsafe + SideEffect" when you have a side effecting function M[X] => X
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Typeclass proving that it is possible to send a tree of effects R into another tree of effects U
Typeclass proving that it is possible to send a tree of effects R into another tree of effects U
for example
sendOption1, Fx.fx3[Option1, Option2, Option3], Int. into[Fx.fx5[Option1, Option2, Option3, Option4, Option5]]
should work because all the effects of the first stack are present in the second
Note: some implicit definitions are probably missing in some cases
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- trait
- Supertypes
-
trait IntoPolyLower1trait IntoPolyLower2trait IntoPolyLower3trait IntoPolyLower4trait IntoPolyLower5class Objecttrait Matchableclass AnyShow all
- Self type
-
IntoPoly.type
Attributes
- Supertypes
-
trait IntoPolyLower2trait IntoPolyLower3trait IntoPolyLower4trait IntoPolyLower5class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
object IntoPoly.type
Attributes
- Supertypes
-
trait IntoPolyLower3trait IntoPolyLower4trait IntoPolyLower5class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait IntoPolyLower1object IntoPoly.type
Attributes
- Supertypes
- Known subtypes
Attributes
- Supertypes
- Known subtypes
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait IntoPolyLower4trait IntoPolyLower3trait IntoPolyLower2trait IntoPolyLower1object IntoPoly.type
Encapsulation of one optional last action to execute at the end of the program
Encapsulation of one optional last action to execute at the end of the program
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Generalisation of Recurse and StateRecurse
Generalisation of Recurse and StateRecurse
The loop defines some state with an initial value which is maintained at each step of the interpretation.
A is the type of Eff values to interpret, and B is the result of the interpretation (generally an other Eff value)
C is the type of result for "last" actions.
-
the interpretation of a Pure value either returns the final result or possibly one more Eff value to interpret
-
onEffect interprets one effect and possibly uses the continuation to produce the next value to interpret. If no X can be used to run the continuation we might just output one final B value
-
onLastEffect interprets the last effect of an Eff value. The only difference with onEffect is the fact that last actions return Unit values (and not A values)
-
onApplicativeEff interprets a list of effects and possibly uses the continuation to get to the next value to interpret. If no interpretation can be done, a B value might be returned
-
onLastApplicativeEffect does the same thing for last actions
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- object
- Supertypes
Attributes
- Companion
- trait
- Supertypes
-
trait MemberLower1trait MemberLower2trait MemberLower3trait MemberLower4trait MemberLower5trait MemberLower6trait MemberLower7trait MemberLower8trait MemberLower9trait MemberLower10trait MemberLower11trait MemberLower12trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Self type
-
Member.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
- Self type
-
Attributes
- Companion
- trait
- Supertypes
-
trait MemberInLower1trait MemberInLower2trait MemberInLower3trait MemberInLower4trait MemberInLower5class Objecttrait Matchableclass AnyShow all
- Self type
-
MemberIn.type
Attributes
- Supertypes
-
trait MemberInLower2trait MemberInLower3trait MemberInLower4trait MemberInLower5class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
object MemberIn.type
Attributes
- Supertypes
-
trait MemberInLower3trait MemberInLower4trait MemberInLower5class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberInLower1object MemberIn.type
Attributes
- Supertypes
- Known subtypes
Attributes
- Supertypes
- Known subtypes
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait MemberInLower4trait MemberInLower3trait MemberInLower2trait MemberInLower1object MemberIn.type
Attributes
- Companion
- object
- Supertypes
- Known subtypes
-
- Self type
-
Attributes
- Companion
- trait
- Supertypes
-
trait MemberInOutLower1trait MemberInOutLower2trait MemberInOutLower3trait MemberInOutLower4trait MemberInOutLower5class Objecttrait Matchableclass AnyShow all
- Self type
-
MemberInOut.type
Attributes
- Supertypes
-
trait MemberInOutLower2trait MemberInOutLower3trait MemberInOutLower4trait MemberInOutLower5class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
object MemberInOut.type
Attributes
- Supertypes
-
trait MemberInOutLower3trait MemberInOutLower4trait MemberInOutLower5class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberInOutLower1object MemberInOut.type
Attributes
- Supertypes
- Known subtypes
Attributes
- Supertypes
- Known subtypes
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait MemberInOutLower4trait MemberInOutLower3trait MemberInOutLower2trait MemberInOutLower1object MemberInOut.type
Attributes
- Supertypes
-
trait MemberLower2trait MemberLower3trait MemberLower4trait MemberLower5trait MemberLower6trait MemberLower7trait MemberLower8trait MemberLower9trait MemberLower10trait MemberLower11trait MemberLower12trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
object Member.type
Attributes
- Supertypes
-
trait MemberLower11trait MemberLower12trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberLower9trait MemberLower8trait MemberLower7trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
-
trait MemberLower12trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberLower10trait MemberLower9trait MemberLower8trait MemberLower7trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
-
trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberLower11trait MemberLower10trait MemberLower9trait MemberLower8trait MemberLower7trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
-
trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberLower12trait MemberLower11trait MemberLower10trait MemberLower9trait MemberLower8trait MemberLower7trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
-
trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberLower13trait MemberLower12trait MemberLower11trait MemberLower10trait MemberLower9trait MemberLower8trait MemberLower7trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
-
trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberLower14trait MemberLower13trait MemberLower12trait MemberLower11trait MemberLower10trait MemberLower9trait MemberLower8trait MemberLower7trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
-
trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberLower15trait MemberLower14trait MemberLower13trait MemberLower12trait MemberLower11trait MemberLower10trait MemberLower9trait MemberLower8trait MemberLower7trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
- Known subtypes
-
trait MemberLower16trait MemberLower15trait MemberLower14trait MemberLower13trait MemberLower12trait MemberLower11trait MemberLower10trait MemberLower9trait MemberLower8trait MemberLower7trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
- Known subtypes
-
trait MemberLower17trait MemberLower16trait MemberLower15trait MemberLower14trait MemberLower13trait MemberLower12trait MemberLower11trait MemberLower10trait MemberLower9trait MemberLower8trait MemberLower7trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait MemberLower18trait MemberLower17trait MemberLower16trait MemberLower15trait MemberLower14trait MemberLower13trait MemberLower12trait MemberLower11trait MemberLower10trait MemberLower9trait MemberLower8trait MemberLower7trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
-
trait MemberLower3trait MemberLower4trait MemberLower5trait MemberLower6trait MemberLower7trait MemberLower8trait MemberLower9trait MemberLower10trait MemberLower11trait MemberLower12trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberLower1object Member.type
Attributes
- Supertypes
-
trait MemberLower4trait MemberLower5trait MemberLower6trait MemberLower7trait MemberLower8trait MemberLower9trait MemberLower10trait MemberLower11trait MemberLower12trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
Attributes
- Supertypes
-
trait MemberLower5trait MemberLower6trait MemberLower7trait MemberLower8trait MemberLower9trait MemberLower10trait MemberLower11trait MemberLower12trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
Attributes
- Supertypes
-
trait MemberLower6trait MemberLower7trait MemberLower8trait MemberLower9trait MemberLower10trait MemberLower11trait MemberLower12trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
Attributes
- Supertypes
-
trait MemberLower7trait MemberLower8trait MemberLower9trait MemberLower10trait MemberLower11trait MemberLower12trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
-
trait MemberLower8trait MemberLower9trait MemberLower10trait MemberLower11trait MemberLower12trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
-
trait MemberLower9trait MemberLower10trait MemberLower11trait MemberLower12trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberLower7trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
-
trait MemberLower10trait MemberLower11trait MemberLower12trait MemberLower13trait MemberLower14trait MemberLower15trait MemberLower16trait MemberLower17trait MemberLower18trait MemberLower19class Objecttrait Matchableclass AnyShow all
- Known subtypes
-
trait MemberLower8trait MemberLower7trait MemberLower6trait MemberLower5trait MemberLower4trait MemberLower3trait MemberLower2trait MemberLower1object Member.typeShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Helper trait for computations which might produce several M[X] in a stack of effects.
Helper trait for computations which might produce several M[X] in a stack of effects.
Either we can produce an X to pass to a continuation or we're done
For the applicative case we expect to be able to traverse a list of effects and return an effect of a list of results OR completely consume the effect and return a pure list of values
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
The Safe type is a mix of a ThrowableEither / Eval effect and a writer effect to collect finalizer failures
The Safe type is a mix of a ThrowableEither / Eval effect and a writer effect to collect finalizer failures
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Supertypes
- Known subtypes
-
trait SafeEffectobject SafeEffect.typeobject all.typetrait SafeInterpretationobject SafeInterpretation.typeobject safe.typeobject create.typeShow all
Attributes
- Companion
- object
- Supertypes
-
trait SafeInterpretationtrait SafeCreationtrait SafeTypesclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
object SafeEffect.typeobject all.type
Attributes
- Companion
- trait
- Supertypes
-
trait SafeEffecttrait SafeInterpretationtrait SafeCreationtrait SafeTypesclass Objecttrait Matchableclass AnyShow all
- Self type
-
SafeEffect.type
Attributes
- Companion
- object
- Supertypes
- Known subtypes
-
trait SafeEffectobject SafeEffect.typeobject all.typeobject SafeInterpretation.typeobject safe.type
- Self type
Attributes
- Companion
- trait
- Supertypes
-
trait SafeInterpretationtrait SafeCreationtrait SafeTypesclass Objecttrait Matchableclass AnyShow all
- Self type
-
SafeInterpretation.type
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait SafeCreationtrait SafeEffectobject SafeEffect.typeobject all.typetrait SafeInterpretationobject SafeInterpretation.typeobject safe.typeobject create.typeShow all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Generalisation of Recurse
Generalisation of Recurse
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
TimedFuture.type
trait for translating one effect into other ones in the same stack
trait for translating one effect into other ones in the same stack
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Union represents one effect T[_] embedded in a tree of possible effects R
Union represents one effect T[_] embedded in a tree of possible effects R
Since the effect tree is represented with the following cases:
- Fx1[T]
- Fx2[T1, T2]
- Fx3[T1, T2, T3]
- FxAppend[L, R]
We have the corresponding Union cases. For example T2 is in the "middle" of Fx3[T1, T2, T3] so creating a Union object for that effect uses Union3M
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
Show all
Attributes
- Supertypes
- Known subtypes
-
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
A non-empty list of Unions.
A non-empty list of Unions.
It is only partially typed, we just keep track of the type of the first object
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
WarningsEffect.type
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
object WriterCreation.typetrait WriterEffectobject WriterEffect.typeobject all.typeobject create.typeobject writer.typeShow all
Attributes
- Companion
- trait
- Supertypes
- Self type
-
WriterCreation.type
Effect for logging values alongside computations
Effect for logging values alongside computations
Compared to traditional Writer monad which accumulates values by default this effect can be interpreted in different ways:
- log values to the console or to a file as soon as they are produced
- accumulate values in a list
Attributes
- Companion
- object
- Supertypes
- Known subtypes
-
object WriterEffect.typeobject all.type
Attributes
- Companion
- trait
- Supertypes
-
trait WriterEffecttrait WriterInterpretationtrait WriterCreationclass Objecttrait Matchableclass AnyShow all
- Self type
-
WriterEffect.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait WriterEffectobject WriterEffect.typeobject all.typeobject WriterInterpretation.typeobject writer.type
Attributes
- Companion
- trait
- Supertypes
- Self type
-
WriterInterpretation.type
Attributes
- Supertypes
-
trait EffImplicitstrait EffCreationtrait EffInterpretationtrait SafeEffecttrait SafeInterpretationtrait SafeCreationtrait SafeTypestrait DisjunctionEffecttrait DisjunctionCreationtrait EvalEffecttrait EvalInterpretationtrait EvalCreationtrait EvalTypestrait WriterEffecttrait WriterInterpretationtrait WriterCreationclass Objecttrait Matchableclass AnyShow all
- Self type
-
all.type
Attributes
- Supertypes
-
trait EffCreationtrait SafeCreationtrait SafeTypestrait DisjunctionCreationtrait EvalCreationtrait EvalTypestrait WriterCreationclass Objecttrait Matchableclass AnyShow all
- Self type
-
create.type
Attributes
- Supertypes
- Self type
-
disjunction.type
Attributes
- Supertypes
- Self type
-
eff.type
Attributes
- Supertypes
-
trait EvalEffecttrait EvalInterpretationtrait EvalCreationtrait EvalTypesclass Objecttrait Matchableclass AnyShow all
- Self type
-
eval.type
Attributes
- Supertypes
-
trait SafeInterpretationtrait SafeCreationtrait SafeTypesclass Objecttrait Matchableclass AnyShow all
- Self type
-
safe.type
Attributes
- Supertypes
- Self type
-
writer.type