SourceEffect

beam.SourceEffect
See theSourceEffect companion object
trait SourceEffect[O] extends SourceEffectExt[O, Unit]

Attributes

Companion
object
Graph
Supertypes
trait SourceEffectExt[O, Unit]
trait SourceSignature[O, Unit]
trait Effect[SourceSignature[O, Unit]]
trait CanPerform[SourceSignature[O, Unit]]
trait Signature
class Object
trait Matchable
class Any
Show all
Known subtypes
object FxNothing
object FxUnit

Members list

Type members

Inherited and Abstract classlikes

abstract class Stateful[S, U](initial: S) extends StatefulReturn[S, Unit, U]

Attributes

Inherited from:
SourceEffectExt
Supertypes
class StatefulReturn[S, Unit, U]
trait SourceSignature[O, Unit]
trait Sequential
trait Default
class impl.Stateful[Const[Unit], Const[Unit], U]
trait impl.ThisInterpreter
class Stateful[Const[Unit], Const[Unit], U]
trait Interpreter
trait Signature
class Object
trait Matchable
class Any
Show all
abstract class StatefulReturn[S, R, U](initial: S) extends impl.Stateful[Const[Unit], Const[R], U], impl.Sequential, SourceSignature[O, R]

Attributes

Inherited from:
SourceEffectExt
Supertypes
trait SourceSignature[O, R]
trait Sequential
trait Default
class impl.Stateful[Const[Unit], Const[R], U]
trait impl.ThisInterpreter
class Stateful[Const[Unit], Const[R], U]
trait Interpreter
trait Signature
class Object
trait Matchable
class Any
Show all
Known subtypes
class Stateful[S, U]
abstract class Stateless[U] extends StatelessReturn[Unit, U]

Attributes

Inherited from:
SourceEffectExt
Supertypes
class StatelessReturn[Unit, U]
trait SourceSignature[O, Unit]
trait Sequential
trait Default
class impl.Stateless[Const[Unit], Const[Unit], U]
trait impl.ThisInterpreter
class Stateless[Const[Unit], Const[Unit], U]
trait Interpreter
trait Signature
class Object
trait Matchable
class Any
Show all
abstract class StatelessReturn[R, U] extends impl.Stateless[Const[Unit], Const[R], U], impl.Sequential, SourceSignature[O, R]

Attributes

Inherited from:
SourceEffectExt
Supertypes
trait SourceSignature[O, R]
trait Sequential
trait Default
class impl.Stateless[Const[Unit], Const[R], U]
trait impl.ThisInterpreter
class Stateless[Const[Unit], Const[R], U]
trait Interpreter
trait Signature
class Object
trait Matchable
class Any
Show all
Known subtypes
class Stateless[U]

Inherited types

final override type ThisEffect = Effect.this.type

Self-reference to the effect being described by this Signature.

Self-reference to the effect being described by this Signature.

Becomes an alias of this.type, once the signature is inherited from Effect.

Attributes

Inherited from:
Effect

Value members

Concrete methods

final def upCast[O2 >: O]: SourceEffect[O2]

Inherited methods

final def &![Fx2 <: Signature](fx2: Fx2): Combine2[Effect.this.type, fx2.type]

Combines with another Effect instance, for the purpose of sharing an Interpreter.

Combines with another Effect instance, for the purpose of sharing an Interpreter.

Attributes

Inherited from:
Effect
final override def emit(value: O): Computation[Unit, SourceEffectExt.this.type]

Attributes

Definition Classes
Inherited from:
SourceEffectExt
final def exit(using ev: Unit =:= Unit): Computation[Nothing, ThisEffect]

Attributes

Inherited from:
SourceEffectExt
final override def exit(value: Unit): Computation[Nothing, SourceEffectExt.this.type]

Attributes

Definition Classes
Inherited from:
SourceEffectExt
final inline def perform[A, U <: ThisEffect](inline f: (SourceSignature[O, Unit] & Signature { type ThisEffect = U; }) => Computation[A, U]): Computation[A, U]

Lifts an invocation of this Signature's method into the Computation monad.

Lifts an invocation of this Signature's method into the Computation monad.

Attributes

Inherited from:
CanPerform

Inherited fields

val impl: EffectImpl[SourceEffect[O]]

Object containing type definitions, to be used for implementing Interpreters for this effect.

Object containing type definitions, to be used for implementing Interpreters for this effect.

Attributes

Inherited from:
Effect

Exports

Inherited defined exports

final type ThisHandler = [F[_], G[_], N] =>> this.impl.ThisHandler[F, G, N]
Exported from EffectImpl

Attributes

Inherited from:
Effect