mapOrNull<TResult extends Object?> method

  1. @optionalTypeArgs
TResult? mapOrNull<TResult extends Object?>({
  1. TResult? accountCreated(
    1. UEventDetailsAccountCreated value
    )?,
  2. TResult? emailUpdated(
    1. UEventDetailsEmailUpdated value
    )?,
  3. TResult? emailConfirmed(
    1. UEventDetailsEmailConfirmed value
    )?,
  4. TResult? passwordUpdated(
    1. UEventDetailsPasswordUpdated value
    )?,
  5. TResult? handleUpdated(
    1. UEventDetailsHandleUpdated value
    )?,
  6. TResult? unknown(
    1. UEventDetailsUnknown 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( UEventDetailsAccountCreated value)?  accountCreated,TResult? Function( UEventDetailsEmailUpdated value)?  emailUpdated,TResult? Function( UEventDetailsEmailConfirmed value)?  emailConfirmed,TResult? Function( UEventDetailsPasswordUpdated value)?  passwordUpdated,TResult? Function( UEventDetailsHandleUpdated value)?  handleUpdated,TResult? Function( UEventDetailsUnknown value)?  unknown,}){
final _that = this;
switch (_that) {
case UEventDetailsAccountCreated() when accountCreated != null:
return accountCreated(_that);case UEventDetailsEmailUpdated() when emailUpdated != null:
return emailUpdated(_that);case UEventDetailsEmailConfirmed() when emailConfirmed != null:
return emailConfirmed(_that);case UEventDetailsPasswordUpdated() when passwordUpdated != null:
return passwordUpdated(_that);case UEventDetailsHandleUpdated() when handleUpdated != null:
return handleUpdated(_that);case UEventDetailsUnknown() when unknown != null:
return unknown(_that);case _:
  return null;

}
}