Interface for type-converting computed signals.
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);
ConvertComputed<String, int> 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
- Implemented types
- Available extensions
Constructors
-
ConvertComputed(Signal<
U> source, {required T decode(U value), required U encode(T value), JoltDebugFn? onDebug}) -
Creates a type-converting computed signal.
factory
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- isDisposed → bool
-
Whether this node has been disposed.
no setterinherited
-
listenable
→ JoltValueListenable<
T> -
Available on Readonly<
Converts this Jolt value to a Flutter ValueListenable.T> , provided by the JoltValueListenableExtension extensionno setter -
notifier
→ JoltValueNotifier<
T> -
Available on Readonly<
Converts this Jolt value to a Flutter ValueNotifier.T> , provided by the JoltValueNotifierExtension extensionno setter - 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 ReadonlyNode<
Converts this reactive value to a broadcast stream.T> , provided by the JoltReadonlyExtension extensionno setter - value ↔ T
-
Gets the current value and establishes a reactive dependency.
getter/setter pairinherited
Methods
-
dispose(
) → FutureOr< void> -
Dispose this object and clean up its resources.
inherited
-
get(
) → T -
Gets the current 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 ReadonlyNode<
Creates a stream subscription that listens to changes in this reactive value.T> , provided by the JoltReadonlyExtension extension -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
notify(
) → void -
Manually notifies all subscribers that this value has changed.
inherited
-
onDispose(
) → void -
Called when the node is being disposed.
inherited
-
readonly(
) → ReadonlySignal< T> -
Available on Signal<
Returns a read-only view of this signal.T> , provided by the JoltSignalExtension extension -
readonly(
) → Computed< T> -
Available on WritableComputed<
Returns a read-only view of this writable computed.T> , provided by the JoltWritableComputedExtension extension -
set(
T value) → T -
Sets a new value for this reactive value.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
until(
bool predicate(T value)) → Future< T> -
Available on ReadonlyNode<
Waits until the reactive value satisfies a predicate condition.T> , provided by the JoltReadonlyExtension extension -
update(
T updater(T value)) → T -
Available on WritableNode<
Updates the value using an updater function based on the current value.T> , provided by the JoltWritableExtension extension
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited