maybeMap<TResult extends Object?> method

  1. @optionalTypeArgs
TResult maybeMap<TResult extends Object?>({
  1. TResult threadViewPost(
    1. UThreadViewPostRepliesThreadViewPost value
    )?,
  2. TResult notFoundPost(
    1. UThreadViewPostRepliesNotFoundPost value
    )?,
  3. TResult blockedPost(
    1. UThreadViewPostRepliesBlockedPost value
    )?,
  4. TResult unknown(
    1. UThreadViewPostRepliesUnknown value
    )?,
  5. required TResult orElse(),
})

A variant of map that fallback to returning orElse.

It is equivalent to doing:

switch (sealedClass) {
  case final Subclass value:
    return ...;
  case _:
    return orElse();
}

Implementation

@optionalTypeArgs TResult maybeMap<TResult extends Object?>({TResult Function( UThreadViewPostRepliesThreadViewPost value)?  threadViewPost,TResult Function( UThreadViewPostRepliesNotFoundPost value)?  notFoundPost,TResult Function( UThreadViewPostRepliesBlockedPost value)?  blockedPost,TResult Function( UThreadViewPostRepliesUnknown value)?  unknown,required TResult orElse(),}){
final _that = this;
switch (_that) {
case UThreadViewPostRepliesThreadViewPost() when threadViewPost != null:
return threadViewPost(_that);case UThreadViewPostRepliesNotFoundPost() when notFoundPost != null:
return notFoundPost(_that);case UThreadViewPostRepliesBlockedPost() when blockedPost != null:
return blockedPost(_that);case UThreadViewPostRepliesUnknown() when unknown != null:
return unknown(_that);case _:
  return orElse();

}
}