State

turbolift.effects.State
trait State[S] extends StateEffect[S]

Attributes

Graph
Supertypes
trait StateEffect[S]
trait StateSignature[S]
trait Signature
class Object
trait Matchable
class Any
Show all

Members list

Type members

Inherited classlikes

object handlers

Predefined handlers for this effect.

Predefined handlers for this effect.

Attributes

Inherited from:
StateEffect
Supertypes
class Object
trait Matchable
class Any

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

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 getModify(f: S => S): Computation[S, StateEffect.this.type]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def getModifyEff[U <: ThisEffect](f: S => Computation[S, U]): Computation[S, U]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def getModifyGet(f: S => S): Computation[(S, S), StateEffect.this.type]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def getModifyGetEff[U <: ThisEffect](f: S => Computation[S, U]): Computation[(S, S), U]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def getUpdate[A](f: S => (A, S)): Computation[(A, S), StateEffect.this.type]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def getUpdateEff[A, U <: ThisEffect](f: S => Computation[(A, S), U]): Computation[(A, S), U]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def getUpdateGet[A](f: S => (A, S)): Computation[(A, S, S), StateEffect.this.type]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def getUpdateGetEff[A, U <: ThisEffect](f: S => Computation[(A, S), U]): Computation[(A, S, S), U]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def gets[A](f: S => A): Computation[A, StateEffect.this.type]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def getsEff[A, U <: ThisEffect](f: S => Computation[A, U]): Computation[A, U]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def modify(f: S => S): Computation[Unit, StateEffect.this.type]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def modifyEff[U <: ThisEffect](f: S => Computation[S, U]): Computation[Unit, U]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def modifyGet(f: S => S): Computation[S, StateEffect.this.type]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def modifyGetEff[U <: ThisEffect](f: S => Computation[S, U]): Computation[S, U]

Attributes

Definition Classes
Inherited from:
StateEffect
final inline def perform[A, U <: ThisEffect](inline f: (StateSignature[S] & 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
final override def put(s: S): Computation[Unit, StateEffect.this.type]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def putEff[U <: ThisEffect](s: Computation[S, U]): Computation[Unit, U]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def swap(s: S): Computation[S, StateEffect.this.type]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def swapEff[U <: ThisEffect](s: Computation[S, U]): Computation[S, U]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def update[A](f: S => (A, S)): Computation[A, StateEffect.this.type]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def updateEff[A, U <: ThisEffect](f: S => Computation[(A, S), U]): Computation[A, U]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def updateGet[A](f: S => (A, S)): Computation[(A, S), StateEffect.this.type]

Attributes

Definition Classes
Inherited from:
StateEffect
final override def updateGetEff[A, U <: ThisEffect](f: S => Computation[(A, S), U]): Computation[(A, S), U]

Attributes

Definition Classes
Inherited from:
StateEffect

Inherited fields

final override val get: Computation[S, this.type]

Attributes

Inherited from:
StateEffect
val impl: EffectImpl[this.type]

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