MonoGraph

turbolift.effects.MonoGraph
trait MonoGraph[K, V] extends Effect[MonoGraphSignature[K, V]], MonoGraphSignature[K, V]

Attributes

Graph
Supertypes
trait MonoGraphSignature[K, V]
trait Effect[MonoGraphSignature[K, V]]
trait CanPerform[MonoGraphSignature[K, V]]
trait Signature
class Object
trait Matchable
class Any
Show all
Self type
MonoGraph[K, V]

Members list

Type members

Classlikes

final class AtApply(k: K)

Attributes

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

Concrete methods

final def at(k: K): AtApply
def empty(to: K): Computation[Unit, this.type]
def handler(using M: PlusZero[V]): impl.ThisHandler[Identity, Tuple2, Any]

Predefined handler for this effect.

Predefined handler for this effect.

Attributes

def handler(zero: V, plus: (V, V) => V): impl.ThisHandler[Identity, Tuple2, Any]

Predefined handler for this effect.

Predefined handler for this effect.

Attributes

def incoming(to: K, from: K): Computation[Unit, this.type]
def incomingConst(to: K, value: V): Computation[Unit, this.type]
def incomings(to: K, froms: IterableOnce[K]): Computation[Unit, this.type]
def outgoing(from: K, to: K): Computation[Unit, this.type]
def outgoingConst(from: K, value: V): Computation[Unit, this.type]
def outgoings(from: K, tos: IterableOnce[K]): Computation[Unit, this.type]

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 inline def perform[A, U <: ThisEffect](inline f: (MonoGraphSignature[K, V] & 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[MonoGraph[K, V]]

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