ConvertComputed<T, U> class

A computed signal that converts between different types.

ConvertComputed provides a way to create a computed signal that converts between different types while maintaining reactivity. It acts as a bridge between signals of different types, automatically handling the conversion in both directions.

Example:

final count = Signal(0);
final textCount = ConvertComputed(
  count,
  decode: (int value) => value.toString(),
  encode: (String value) => int.parse(value),
);

print(textCount.value); // "0"
textCount.value = "42"; // Updates count to 42
Inheritance
Available extensions

Constructors

ConvertComputed(Signal<U> source, {required T decode(U value), required U encode(T value), T? initialValue, JoltDebugFn? onDebug})
Creates a type-converting computed signal.

Properties

currentValue Object?
getter/setter pairinherited
decode → T Function(U value)
Function to convert from source type to target type.
final
deps Link?
First dependency link in the chain.
getter/setter pairinherited
depsTail Link?
Last dependency link in the chain.
getter/setter pairinherited
encode → U Function(T value)
Function to convert from target type to source type.
final
flags int
Reactive flags for this node.
getter/setter pairinherited
getter ↔ T Function()
The function that computes the value of this computed.
getter/setter pairinherited
hashCode int
The hash code for this object.
no setterinherited
isDisposed bool
Whether this reactive value has been disposed.
getter/setter pairinherited
listenable JoltValueListenable<T>

Available on JReadonlyValue<T>, provided by the JoltValueListenableExtension extension

Converts this Jolt value to a Flutter ValueListenable.
no setter
notifier JoltValueNotifier<T>

Available on JReadonlyValue<T>, provided by the JoltValueNotifierExtension extension

Converts this Jolt value to a Flutter ValueNotifier.
no setter
peek → T
Returns the current computed value without establishing a reactive dependency.
no setterinherited
pendingValue Object?
Internal storage for the node's value.
getter/setter pairinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
setter → void Function(T)
The function called when this computed value is set.
finalinherited
source Signal<U>
The source signal to convert from.
final
stream Stream<T>

Available on JReadonlyValue<T>, provided by the JoltStreamValueExtension extension

Converts this reactive value to a broadcast stream.
no setter
subs Link?
First subscriber link in the chain.
getter/setter pairinherited
subsTail Link?
Last subscriber link in the chain.
getter/setter pairinherited
value ↔ T
Returns the current computed value and establishes a reactive dependency.
getter/setter pairinherited

Methods

dispose() → void
Disposes this reactive value and cleans up resources.
inherited
get() → T
Returns the current computed value and establishes a reactive dependency.
inherited
listen(void onData(T event)?, {Function? onError, void onDone()?, bool? cancelOnError, bool immediately = false}) StreamSubscription<T>

Available on JReadonlyValue<T>, provided by the JoltStreamValueExtension extension

Creates a stream subscription that listens to changes in this reactive value.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notify() → void
Manually notifies all subscribers that this computed value has changed.
inherited
onDispose() → void
Disposes the computed value and cleans up resources.
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 newValue) → void
Sets a new value for this writable computed.
inherited
testNoSubscribers() bool
inherited
toString() String
A string representation of this object.
inherited

Operators

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