DependentCell<T> class abstract

A cell of which the value is dependent on the value of one or more argument cells.

The purpose of this class is to implement a cell of which the value is a function of one or more argument cells, thus the value of this cell needs to be recomputed whenever the values of the argument cells change.

This class does not provide storage for the cell's value, it is intended to be computed on demand when accessed, whilst observers are added directly on the argument cells.

Inheritance
Implementers
Available extensions

Constructors

DependentCell(Set<ValueCell> arguments, {dynamic key})
Create a cell, of which the value depends on a list of argument cells.

Properties

arguments Set<ValueCell>
Set of argument cells.
final
equalityCellFactory EqualityCellFactory
Return a factory for creating equality and inequality comparison cells.
no setterinherited
hashCode int
The hash code for this object.
no setteroverride
key ↔ dynamic
Key that uniquely identifies this cell.
latefinal
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
value → T
The cell's value
no setterinherited

Methods

addObserver(CellObserver observer) → void
Register an observer of the cell to be called when the cell's value changes.
override
call() → T
Retrieve the value of the cell.
inherited
eq<U>(ValueCell<U> other) ValueCell<bool>
Returns a new ValueCell which compares the value of this cell to another cell for equality.
inherited
neq<U>(ValueCell<U> other) ValueCell<bool>
Returns a new ValueCell which compares the value of this cell to another cell for inequality.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
observe() → void
Track this cell as an argument of the current compute/watch function.
inherited
removeObserver(CellObserver observer) → void
Remove an observer that was previously registered with addObserver.
override
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
override