WritableComputed<T> class abstract interface

Interface for writable computed reactive values.

WritableComputed allows you to create computed values that can also be set directly. When set, the setter function is called to update the underlying dependencies.

Example:

final firstName = Signal('John');
final lastName = Signal('Doe');

WritableComputed<String> fullName = WritableComputed(
  () => '${firstName.value} ${lastName.value}',
  (value) {
    final parts = value.split(' ');
    firstName.value = parts[0];
    lastName.value = parts[1];
  },
);
Implemented types
Implementers
Available extensions

Constructors

WritableComputed(T getter(), void setter(T), {JoltDebugFn? onDebug})
Creates a new writable computed value.
factory
WritableComputed.withPrevious(T getter(T?), void setter(T), {JoltDebugFn? onDebug})
Creates a writable computed value with a getter that receives the previous value.
factory

Properties

hashCode int
The hash code for this object.
no setterinherited
isDisposed bool
Whether this node has been disposed.
no setterinherited
peek → T
Gets the current value without establishing a reactive dependency.
no setterinherited
peekCached → T
Returns the cached computed value without establishing a reactive dependency.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
stream Stream<T>

Available on Readable<T>, provided by the JoltUtilsStreamExtension extension

Converts this reactive value to a broadcast stream.
no setter
value ↔ T
Gets the current value and establishes a reactive dependency.
getter/setter pairinherited

Methods

call() → T

Available on Readable<T>, provided by the JoltUtilsReadableExtension extension

Gets the current value (callable syntax).
derived<U>(U computed(T value)) Computed<U>

Available on Readable<T>, provided by the JoltUtilsReadableExtension extension

Creates a computed value derived from this readable.
dispose() → void
Disposes this node and cleans up resources.
inherited
get() → T

Available on Readable<T>, provided by the JoltUtilsReadableExtension extension

Gets the current value.
listen(void onData(T event)?, {Function? onError, void onDone()?, bool? cancelOnError, bool immediately = false}) StreamSubscription<T>

Available on Readable<T>, provided by the JoltUtilsStreamExtension extension

Listens to changes in this reactive value.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notify() → void
Triggers a change notification without modifying the value.
inherited
readonly() ReadonlySignal<T>

Available on Signal<T>, provided by the JoltSignalExtension extension

Returns a read-only view of this signal.
readonly() Computed<T>

Available on WritableComputed<T>, provided by the JoltWritableComputedExtension extension

Returns a read-only view of this writable computed.
set(T value) → T

Available on Writable<T>, provided by the JoltUtilsWritableExtension extension

Sets the value.
toString() String
A string representation of this object.
inherited
until(bool predicate(T value)) Future<T>

Available on ReadableNode<T>, provided by the JoltUtilsUntilExtension extension

Waits until the value satisfies a condition.
untilWhen<U>(U predicate) Future<T>

Available on ReadableNode<T>, provided by the JoltUtilsUntilExtension extension

Waits until the reactive value equals a specific value.
update(T updater(T value)) → T

Available on Writable<T>, provided by the JoltUtilsWritableExtension extension

Updates the value using an updater function based on the current value.

Operators

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