mapOrNull<TResult extends Object?> method

  1. @optionalTypeArgs
TResult? mapOrNull<TResult extends Object?>({
  1. TResult? commit(
    1. USyncSubscribeReposMessageCommit value
    )?,
  2. TResult? sync(
    1. USyncSubscribeReposMessageSync value
    )?,
  3. TResult? identity(
    1. USyncSubscribeReposMessageIdentity value
    )?,
  4. TResult? account(
    1. USyncSubscribeReposMessageAccount value
    )?,
  5. TResult? info(
    1. USyncSubscribeReposMessageInfo value
    )?,
  6. TResult? unknown(
    1. USyncSubscribeReposMessageUnknown value
    )?,
})

A variant of map that fallback to returning null.

It is equivalent to doing:

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

Implementation

@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>({TResult? Function( USyncSubscribeReposMessageCommit value)?  commit,TResult? Function( USyncSubscribeReposMessageSync value)?  sync,TResult? Function( USyncSubscribeReposMessageIdentity value)?  identity,TResult? Function( USyncSubscribeReposMessageAccount value)?  account,TResult? Function( USyncSubscribeReposMessageInfo value)?  info,TResult? Function( USyncSubscribeReposMessageUnknown value)?  unknown,}){
final _that = this;
switch (_that) {
case USyncSubscribeReposMessageCommit() when commit != null:
return commit(_that);case USyncSubscribeReposMessageSync() when sync != null:
return sync(_that);case USyncSubscribeReposMessageIdentity() when identity != null:
return identity(_that);case USyncSubscribeReposMessageAccount() when account != null:
return account(_that);case USyncSubscribeReposMessageInfo() when info != null:
return info(_that);case USyncSubscribeReposMessageUnknown() when unknown != null:
return unknown(_that);case _:
  return null;

}
}