FutureValuable<Output, Res> class

A Valuable that depends on a Future

This object provides a function for each state of the future, to have a value that depends on it

  • dataValue that process to return an Output value depends on the Res complete response of the future
  • noDataValue will return an Output value while the future is still incomplete
  • errorValue will return an Output when the future complete on error
Inheritance
Available Extensions

Constructors

FutureValuable(Valuable<Future<Res>> future, {required ValuableGetFutureResult<Output, Res> dataValue, required ValuableGetFutureLoading<Output> noDataValue, required ValuableGetFutureError<Output> errorValue, bool evaluateWithContext = false})
Constructor to provide each functions
FutureValuable.values(Valuable<Future<Res>> future, {required Output noDataValue, required Output errorValue})
Constructor to simply map result value as Valuable value

Properties

dataValue ValuableGetFutureResult<Output, Res>
A function to return a value when the future is complete normally
final
errorValue ValuableGetFutureError<Output>
A function to return a value when the future is complete on error
final
hashCode int
The hash code for this object.
no setterinherited
hasListeners bool
Whether any listeners are currently registered.
no setterinherited
isMounted bool
Returns if this object is still mounted
no setterinherited
noDataValue ValuableGetFutureLoading<Output>
A function to return a value when the future is still incomplete
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
valuableContext ValuableContext?
no setterinherited
valueCache → _ValueCache
finalinherited

Methods

addListener(VoidCallback listener) → void
Register a closure to be called when the object changes.
inherited
cleanWatched() → void
inherited
dispose() → void
Should be called to clean all links to other Valuables, and all the rest
override
equals(dynamic other) Valuable<bool>
Compare with a value that type is Output or another Valuable
inherited
getValue([ValuableContext? context = const ValuableContext()]) → Output
Get the current value of the Valuable
inherited
getValueDefinition(bool reevaluatingNeeded, [ValuableContext? context = const ValuableContext()]) → Output
This method should be redefined in ever sub-classes to determine how works the method getValue
override
historize() HistorizedValuable<Output>
Build an HistorizedValuable based on this Valuable
inherited
listenDispose(VoidCallback onDispose) → void
Allows to be notified when this Valuable is disposed
inherited
map<Other>(Other toElement(Output)) Valuable<Other>
A method to map a Valuable from Output to Other
inherited
markToReevaluate() → void
Mark the valuable to be reevaluated
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notEquals(dynamic other) Valuable<bool>
Compare with a value that type is Output or another Valuable
inherited
notifyListeners() → void
Call all the registered listeners.
inherited
onValuableChange() → void
Called when a Valuable notify a change.
inherited
removeListener(VoidCallback listener) → void
Remove a previously registered closure from the list of closures that are notified when the object changes.
inherited
toString() String
A string representation of this object.
inherited
unwatch(Valuable valuable) → void
Remove listener on the valuable, that may change scope, or that about to be disposed Internal purpose
inherited
watch<T>(Valuable<T> valuable, {ValuableContext? valuableContext, ValuableWatcherSelector<T>? selector}) → T
Watch a valuable, that eventually change
inherited

Operators

operator <(dynamic other) Valuable<bool>
Compare with a value that type is Output or another Valuable
inherited
operator <=(dynamic other) Valuable<bool>
Compare with a value that type is Output or another Valuable
inherited
operator ==(Object other) bool
The equality operator.
inherited
operator >(dynamic other) Valuable<bool>
Compare with a value that type is Output or another Valuable
inherited
operator >=(dynamic other) Valuable<bool>
Compare with a value that type is Output or another Valuable
inherited

Static Methods

asyncVal<Res>(Valuable<Future<Res>> future) FutureValuableAsyncValue<Res>
Pseudo constructor to map directly a Res value to an AsyncValue<Res>