value property

T get value

The current value held by this node.

Reading this getter while a ZenithZone.currentObserver is active automatically subscribes that observer to this node (dependency tracking for ZenithBuilder and ComputedNode).

Throws StateError if the node has been disposed.

Implementation

T get value {
  if (_isDisposed) {
    throw StateError('Cannot read a disposed ZenithNode');
  }

  final observer = ZenithZone.currentObserver;
  if (observer != null) {
    if (observer case ZenithObserverTracker tracker) {
      tracker.onNodeRead(this, subscribe(observer));
    } else {
      subscribe(observer);
    }
  }

  return _value;
}
set value (T newValue)

Sets the value of this node via assignment syntax.

Equivalent to calling set. Provided for ergonomic symmetry with the value getter so callers can write node.value = newValue instead of node.set(newValue).

Implementation

set value(T newValue) => set(newValue);