Result<T> class
The result of a computation.
Capturing a result (either a returned value or a thrown error) means converting it into a Result - either a ValueResult or an ErrorResult.
This value can release itself by writing itself either to a EventSink or a Completer, or by becoming a Future.
A Future represents a potential result, one that might not have been computed yet, and a Result is always a completed and available result.
- Implementers
Constructors
- Result(T computation())
-
Creates a
Result
with the result of callingcomputation
. [...]factory - Result.error(Object error, [ StackTrace stackTrace ])
-
Creates a
Result
holding an error. [...]factory - Result.value(T value)
-
Creates a
Result
holding a value. [...]factory
Properties
- asError → ErrorResult
-
If this is an error result, returns itself. [...]
read-only
-
asFuture
→ Future<
T> -
A future that has been completed with this result as a value or an error.
read-only
-
asValue
→ ValueResult<
T> -
If this is a value result, returns itself. [...]
read-only
- isError → bool
-
Whether this result is an error result. [...]
read-only
- isValue → bool
-
Whether this result is a value result. [...]
read-only
- hashCode → int
-
The hash code for this object. [...]
read-only, inherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
Methods
-
addTo(
EventSink< T> sink) → void - Adds this result to an EventSink. [...]
-
complete(
Completer< T> completer) → void - Completes a completer with this result.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed. [...]
inherited
-
toString(
) → String -
Returns a string representation of this object.
inherited
Operators
-
operator ==(
dynamic other) → bool -
The equality operator. [...]
inherited
Static Methods
-
capture<
T> (Future< T> future) → Future<Result< T> > -
Captures the result of a future into a
Result
future. [...] -
captureAll<
T> (Iterable< FutureOr< elements) → Future<T> >List< Result< >T> > -
Captures each future in
elements
, [...] -
captureSink<
T> (EventSink< Result< sink) → EventSink<T> >T> -
Captures the events of the returned sink into results on
sink
. [...] -
captureStream<
T> (Stream< T> source) → Stream<Result< T> > - Captures the results of a stream into a stream of Result values. [...]
-
flatten<
T> (Result< Result< result) → Result<T> >T> - Converts a result of a result to a single result. [...]
-
flattenAll<
T> (Iterable< Result< results) → Result<T> >List< T> > - Converts a sequence of results to a result of a list. [...]
-
release<
T> (Future< Result< future) → Future<T> >T> - Releases the result of a captured future. [...]
-
releaseSink<
T> (EventSink< T> sink) → EventSink<Result< T> > -
Releases results added to the returned sink as data and errors on
sink
. [...] -
releaseStream<
T> (Stream< Result< source) → Stream<T> >T> -
Releases a stream of
result
values into a stream of the results. [...]
Constants
-
captureSinkTransformer
→ const StreamSinkTransformer<
Object, Result< Object> > -
A sink transformer that captures events into Results. [...]
const StreamSinkTransformer<Object, Result<Object>>.fromStreamTransformer(const CaptureStreamTransformer<Object>())
-
captureStreamTransformer
→ const StreamTransformer<
Object, Result< Object> > -
A stream transformer that captures a stream of events into Results. [...]
const CaptureStreamTransformer<Object>()
-
releaseSinkTransformer
→ const StreamSinkTransformer<
Result< Object> , Object> -
A sink transformer that releases result events. [...]
const StreamSinkTransformer<Result<Object>, Object>.fromStreamTransformer(const ReleaseStreamTransformer<Object>())
-
releaseStreamTransformer
→ const StreamTransformer<
Result< Object> , Object> -
A stream transformer that releases a stream of result events. [...]
const ReleaseStreamTransformer<Object>()