Adds an output
to the set of Inlet
s that depend on the state of this
Outlet
. The output
will be invalidated when the state of this
Outlet
is invalidated, and updated when this Outlet
is updated.
Disconnects all Inlet
s dominated by this Inoutlet
in the dataflow
dependency graph. Used to recursively clean up chains of combinators
passing through this Inoutlet
.
Disconnects all Inlets
s dominated by this Inoutlet
in the dataflow
graph. Used to recursively clean up chains of combinators passing through
this Inoutlet
.
Returns the current state of this Outlet
.
Returns the value assocaited with the given key
in the current state of
this MapOutlet
, if defined; otherwise returns null
.
Returns true
if the current state of this MapOutlet
contains the given
key
; otherwise returns false
.
Returns the Outlet
from which this Inlet
acquires its state; returns
null
if this Inlet
is disconnected.
Marks this Outlet
—and all outputs that depend on the
state of this Outlet
—as having stale state.
Marks this MapOutlet
as needing an effect
applied to a given key
.
Invalidating an individual key invalidates the entire state of the
Outlet
. But only the invalidated keys need to be updated in order to
reconcile the overall state of the Outlet
.
Marks this Inlet
—and the Streamlet
to which this Inlet
is attached—as
having stale state. Invalidating an Inlet
will recursively invalidate
all streamlets that transitively depend on the state of this Inlet
.
Invalidating an Inlet
does not cause its state to be recomputed. A
subsequent reconcileOutput call will reconcile the state of the Inlet
.
Marks this MapInlet
as needing an effect
applied to a given key
.
Invalidating an individual key invalidates the entire state of the Inlet
.
But only the invalidated keys need to be updated in order to reconcile the
overall state of the Inlet
.
Returns an Iterator
over the keys in the current state of this MapOutlet
.
Returns an Outlet
that updates when the specified key
updates.
Reconciles the state of this Outlet
, if the version of this Outlet
's
state differs from the target version
. To reconcile its state, the
Outlet
first invokes Streamlet.reconcile on the Streamlet
to which
it's attached. It then invokes Inlet.reconcileOutput on each of its
dependent outputs.
Reconciles the state of an individual key
in this MapOutlet
, if the
version of this MapOutlet
's state differs from the target version
.
To reconcile the state of a key, the MapOutlet
first invokes
Streamlet.reconcile on its attached streamlets. Then, for each
dependent output, it invokes MapInlet.reconcileOutputKey, if the
dependent output is a MapInlet, or it invokes [[Inlet.reconcile]],
if the dependent output is not a MapInlet
.
Reconciles the state of this Inlet
, if the version of this Inlet
's
state differs from the target version
. To reconcile its state, the
Inlet
first invokes Outlet.reconcileInput on its input, to
ensure that its input is up-to-date. It then invokes
Streamlet.reconcile on the Streamlet
to which it's attached,
causing the Streamlet
to reconcile its own state.
Reconciles the state of an individual key
in this MapInlet
, if the
version of this MapInlet
's state differs from the target version
.
To reconcile the state of a key, the MapInlet
first invokes
MapOutlet.reconcileInputKey on its input, if its input is a
MapOutlet
, or it invokes Outlet.reconcileInput, if its input is not
a MapOutlet
. Then, if all invalid keys have been reconciled, the
MapInlet
invokes [[Streamletreconcile]] on its attached streamlet.
Disconnects this Inlet
from its input Outlet
, if connected. After
setting its input property to null
, the Inlet
will invoke
Outlet.unbindOutput on its old input, if defined.
Removes an output
from the set of Inlet
s that depend on the state of
this Outlet
.
Disconnects all outputs from this Outlet
by invoking
Inlet.unbindInput on each Inelt
that depends on the state of this
Outlet
.
Connects this
Inlet
to anOutlet
from which it will acquire its state. If thisInlet
is already connected, it will first disconnect from its existing input. Then, after updating its input property, theInlet
will invoke Outlet.bindOutput on its newinput
.