StateSignature

turbolift.effects.StateSignature
trait StateSignature[S] extends Signature

Attributes

Graph
Supertypes
trait Signature
class Object
trait Matchable
class Any
Known subtypes
trait State[S]

Members list

Type members

Inherited types

type !@![A, U]

Abstract type that must be used in definitions of effect's operations.

Abstract type that must be used in definitions of effect's operations.

Becomes an alias of Computation (i.e. same as !!), once the signature is inherited from Effect.

Attributes

Inherited from:
Signature
type ThisEffect

Abstract type that must be used in definitions of effect's operations.

Abstract type that must be used in definitions of effect's operations.

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

Attributes

Inherited from:
Signature

Value members

Abstract methods

def get: S !@! ThisEffect
def getModify(f: S => S): S !@! ThisEffect
def getModifyGet(f: S => S): (S, S) !@! ThisEffect
def getUpdate[A](f: S => (A, S)): (A, S) !@! ThisEffect
def getUpdateGet[A](f: S => (A, S)): (A, S, S) !@! ThisEffect
def gets[A](f: S => A): A !@! ThisEffect
def modify(f: S => S): Unit !@! ThisEffect
def modifyGet(f: S => S): S !@! ThisEffect
def put(s: S): Unit !@! ThisEffect
def swap(s: S): S !@! ThisEffect
def update[A](f: S => (A, S)): A !@! ThisEffect
def updateGet[A](f: S => (A, S)): (A, S) !@! ThisEffect