transf<R extends Object> method
Transforms the Outcome's generic type from T
to R
.
Uses the transformer function noFutures
if provided, otherwise
attempts a direct cast.
Implementation
@override
Result<R> transf<R extends Object>([@noFutures R Function(T e)? noFutures]) {
try {
final a = unwrap();
final b = noFutures?.call(a) ?? a as R;
return Ok(b);
} catch (error, stackTrace) {
assert(false, error);
return Err('Cannot transform $T to $R.', stackTrace: stackTrace);
}
}