Result<T> class
Null safety
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
- hashCode → int
-
The hash code for this object.
read-onlyinherited
- isError → bool
-
Whether this result is an error result.
read-only
- isValue → bool
-
Whether this result is a value result.
read-only
- runtimeType → Type
-
A representation of the runtime type of the object.
read-onlyinherited
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 -
A string representation of this object.
inherited
Operators
-
operator ==(
Object 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
Result
s.StreamSinkTransformer<Object, Result<Object>>.fromStreamTransformer(CaptureStreamTransformer<Object>())
-
captureStreamTransformer
→ const StreamTransformer<
Object, Result< Object> > -
A stream transformer that captures a stream of events into
Result
s.CaptureStreamTransformer<Object>()
-
releaseSinkTransformer
→ const StreamSinkTransformer<
Result< Object> , Object> -
A sink transformer that releases result events.
StreamSinkTransformer<Result<Object>, Object>.fromStreamTransformer(ReleaseStreamTransformer<Object>())
-
releaseStreamTransformer
→ const StreamTransformer<
Result< Object> , Object> -
A stream transformer that releases a stream of result events.
ReleaseStreamTransformer<Object>()