A constant "event" is one which doesn't actually fire.
A trait which combined external input events with self generated events.
A trait which reduces multiple input events into one output event.
A trait which reduces multiple input events into one output event.
the system
the reduced (output) event type
the input event type
the self-type (implementing instance must conform to this)
A rooted event does not have sources.
A rooted event does not have sources. This trait provides a simple
implementation of pull
which merely checks if this event has fired or not.
Combines Generator
, Root
and StandaloneLike
into a convenient trait that instantly
sets up a self contained rooted event, dispatched via fire
.
Combines Generator
, Root
and StandaloneLike
into a convenient trait that instantly
sets up a self contained rooted event, dispatched via fire
. It also adds method
changed
which is useful for distinguishing node and event on the outside facade.
the system used
the update type
the representation type. This type mixin in this trait must conform to this (self-)type.
A Singleton
event is one which doesn't carry any state.
A Singleton
event is one which doesn't carry any state. This is a utility trait
which provides no-op implementations for writeData
and disposeData
.
Standalone events unite a node and one particular event.
Standalone events unite a node and one particular event.
WARNING: the implementations of equals
are really tricky right now. EventImpl
is more specific in that
VirtualNodeSelector
checks if the compared object is another VirtualNodeSelector
whose reactor has the
same id and whose slot is the same. On the other hand Invariant
inherits equals
from Reactor
which checks for another reactor and then compares their ids.
I don't know if Reactor
still needs the equals
implementation?
A constant "event" is one which doesn't actually fire. It thus arguably isn't really an event, but it can be used to implement the constant type of an expression system which can use a unified event approach, where the
Constant
event just acts as a dummy event.addReactor
andremoveReactor
have no-op implementations. Alsopull
in inherited fromRoot
, but will always returnNone
as there is no way to fire this event. Implementation must provide a constant value methodconstValue
and implement its serialization viawriteData
.