failureFromAsyncError function
Maps an AsyncValue error to AppFailure, unwrapping Riverpod wrappers.
Implementation
AppFailure failureFromAsyncError(Object error, StackTrace stackTrace) {
var current = error;
for (var i = 0; i < 3; i++) {
if (current is AppFailure) {
return current;
}
final inner = _readExceptionField(current);
if (inner == null || identical(inner, current)) {
break;
}
current = inner;
}
if (current is AppFailure) {
return current;
}
return UnknownFailure(cause: current, trace: stackTrace);
}