domain_error library
Domain errors and helpers for handling them.
Start with DomainError, fold outcomes with Result or DomainResult, and
convert thrown errors through captureResult or captureResultSync.
Classes
-
Result<
T, E> - A value that is either an error or a value.
-
ResultError<
T, E> - Result that holds an error value.
-
ResultSuccess<
T, E> - Result that holds a success value.
Extensions
-
DomainResultError
on DomainResult<
T> - Reads the DomainError from a failed DomainResult.
-
FutureResult
on Future<
Result< T, E> > - Composes asynchronous results without awaiting between individual steps.
Functions
-
captureResult<
T> (FutureOr< T> operation(), {required FutureOr<DomainError> mapToDomainError(Object rawError, StackTrace stackTrace), FutureOr<void> onDomainError(DomainError domainError, StackTrace stackTrace)?, FutureOr<void> onRawError(Object rawError, StackTrace stackTrace)?, FutureOr<void> onObserverError(Object rawError, StackTrace stackTrace)?}) → Future<DomainResult< T> > -
Runs
operationand captures its outcome in a DomainResult. -
captureResultSync<
T> (T operation(), {required DomainError mapToDomainError(Object rawError, StackTrace stackTrace), Null onDomainError(DomainError domainError, StackTrace stackTrace)?, Null onRawError(Object rawError, StackTrace stackTrace)?, Null onObserverError(Object rawError, StackTrace stackTrace)?}) → DomainResult< T> -
Runs
operationsynchronously and captures its outcome in a DomainResult.
Typedefs
-
DomainResult<
T> = Result< T, DomainError> - A Result whose error side is DomainError.
-
FutureDomainResult<
T> = Future< DomainResult< T> > - A Future that completes with a DomainResult.
Exceptions / Errors
- DomainError
- Expected domain or application error.