PolyGraphSig

trait PolyGraphSig[K, V] extends Signature
trait Signature
class Object
trait Matchable
class Any
trait PolyGraph[K, V]

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.

From the perspective of effect's user, !@! is just an alias of !!. The final-override happens in Effect.

From the perspective of handler, !@! definition is enriched in a way depending on the chosen Interpreter.

Inherited from:
Signature

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

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

From the perspective of effect's user, ThisEffect is just an alias of this.type. The final-override happens in Effect.

From the perspective of handler, ThisEffect definition is enriched in a way depending on the chosen Interpreter.

Inherited from:
Signature

Value members

Abstract methods

def binary(to: K, from1: K, from2: K)(f: (V, V) => V): Unit !@! ThisEffect
def const(to: K, value: V): Unit !@! ThisEffect
def empty(to: K): Unit !@! ThisEffect
def identity(to: K, from: K): Unit !@! ThisEffect
def unary(to: K, from: K)(f: V => V): Unit !@! ThisEffect
def variadic(to: K, froms: Vector[K])(f: Vector[V] => V): Unit !@! ThisEffect