ValueResult<T> class
A result type that represents either a success value or a failure error.
Use ValueResult.success to create a successful result containing a value. Use ValueResult.failure to create a failed result containing an error message.
Example
final result = await someAsyncOperation();
return result.fold(
(value) => handleSuccess(value),
(error) => handleError(error),
);
Usage with Dart's pattern matching
final result = await fetchUser();
if (result.isSuccess) {
print('User: ${result.value}');
} else {
print('Error: ${result.error}');
}
Type parameter T is the type of the success value.
Constructors
- ValueResult.failure(String error, {String? title})
-
Creates a failed result containing an error message.
factory
- ValueResult.success(T value)
-
Creates a successful result containing the given
value.factory
Properties
- error → String
-
Returns the error message.
no setter
- hashCode → int
-
The hash code for this object.
no setteroverride
- isError → bool
-
Returns true if this result represents a failure with an error.
no setter
- isSuccess → bool
-
Returns true if this result represents a success with a value.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- title → String?
-
Returns the optional error title.
no setter
- value → T?
-
Returns the success value.
no setter
Methods
-
fold<
R> (R onSuccess(T value), R onFailure(String error)) → R - Transforms the result based on its state using pattern matching.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
override
Static Methods
-
fromError<
S> (dynamic exceptionOrError) → ValueResult< S> -
Creates a failure result from a
DioExceptionor any exception object.