ConvertComputedImpl<T, U> class
Implementation of ConvertComputed that converts between different types.
This is the concrete implementation of the ConvertComputed interface. 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.
See ConvertComputed for the public interface and usage examples.
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
-
- Object
- ReactiveNode
- ComputedReactiveNode<
T> - ComputedImpl<
T> - WritableComputedImpl<
T> - ConvertComputedImpl
- Implemented types
-
- ConvertComputed<
T, U>
- ConvertComputed<
- Available extensions
Constructors
-
ConvertComputedImpl(WritableNode<
U> source, {required T decode(U value), required U encode(T value), JoltDebugFn? onDebug}) - Creates a type-converting computed signal.
Properties
- 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()
-
finalinherited
- 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
-
Returns the current computed value without establishing a reactive dependency.
no setterinherited
- peekCached → T
-
Returns the cached computed value without establishing a reactive dependency.
no setterinherited
- pendingValue ↔ T?
-
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
→ WritableNode<
U> -
The source signal to convert from.
final
-
stream
→ Stream<
T> -
Available on ReadonlyNode<
Converts this reactive value to a broadcast stream.T> , provided by the JoltReadonlyExtension extensionno 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 node 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 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 computed value has changed.
inherited
-
onDispose(
) → void -
Disposes the computed value and cleans up resources.
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 newValue) → T -
Sets a new value for this writable computed by delegating to the
user-provided setter inside a batch so downstream watchers flush once.
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