map<TResult extends Object?> method
TResult
map<TResult extends Object?>({
- required TResult left(
- Left<
L, R> value
- Left<
- required TResult right(
- Right<
L, R> value
- Right<
A switch-like method, using callbacks.
Callbacks receives the raw object, upcasted. It is equivalent to doing:
switch (sealedClass) {
case final Subclass value:
return ...;
case final Subclass2 value:
return ...;
}
Implementation
@optionalTypeArgs
TResult map<TResult extends Object?>({
required TResult Function(Left<L, R> value) left,
required TResult Function(Right<L, R> value) right,
}) {
final _that = this;
switch (_that) {
case Left():
return left(_that);
case Right():
return right(_that);
}
}