mapOrNull<TResult extends Object?> method

  1. @optionalTypeArgs
TResult? mapOrNull<TResult extends Object?>({
  1. TResult? systemMessageDataAddMember(
    1. USystemMessageViewDataSystemMessageDataAddMember value
    )?,
  2. TResult? systemMessageDataRemoveMember(
    1. USystemMessageViewDataSystemMessageDataRemoveMember value
    )?,
  3. TResult? systemMessageDataMemberJoin(
    1. USystemMessageViewDataSystemMessageDataMemberJoin value
    )?,
  4. TResult? systemMessageDataMemberLeave(
    1. USystemMessageViewDataSystemMessageDataMemberLeave value
    )?,
  5. TResult? systemMessageDataLockConvo(
    1. USystemMessageViewDataSystemMessageDataLockConvo value
    )?,
  6. TResult? systemMessageDataUnlockConvo(
    1. USystemMessageViewDataSystemMessageDataUnlockConvo value
    )?,
  7. TResult? systemMessageDataLockConvoPermanently(
    1. USystemMessageViewDataSystemMessageDataLockConvoPermanently value
    )?,
  8. TResult? systemMessageDataEditGroup(
    1. USystemMessageViewDataSystemMessageDataEditGroup value
    )?,
  9. TResult? systemMessageDataCreateJoinLink(
    1. USystemMessageViewDataSystemMessageDataCreateJoinLink value
    )?,
  10. TResult? systemMessageDataEditJoinLink(
    1. USystemMessageViewDataSystemMessageDataEditJoinLink value
    )?,
  11. TResult? systemMessageDataEnableJoinLink(
    1. USystemMessageViewDataSystemMessageDataEnableJoinLink value
    )?,
  12. TResult? systemMessageDataDisableJoinLink(
    1. USystemMessageViewDataSystemMessageDataDisableJoinLink value
    )?,
  13. TResult? unknown(
    1. USystemMessageViewDataUnknown 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( USystemMessageViewDataSystemMessageDataAddMember value)?  systemMessageDataAddMember,TResult? Function( USystemMessageViewDataSystemMessageDataRemoveMember value)?  systemMessageDataRemoveMember,TResult? Function( USystemMessageViewDataSystemMessageDataMemberJoin value)?  systemMessageDataMemberJoin,TResult? Function( USystemMessageViewDataSystemMessageDataMemberLeave value)?  systemMessageDataMemberLeave,TResult? Function( USystemMessageViewDataSystemMessageDataLockConvo value)?  systemMessageDataLockConvo,TResult? Function( USystemMessageViewDataSystemMessageDataUnlockConvo value)?  systemMessageDataUnlockConvo,TResult? Function( USystemMessageViewDataSystemMessageDataLockConvoPermanently value)?  systemMessageDataLockConvoPermanently,TResult? Function( USystemMessageViewDataSystemMessageDataEditGroup value)?  systemMessageDataEditGroup,TResult? Function( USystemMessageViewDataSystemMessageDataCreateJoinLink value)?  systemMessageDataCreateJoinLink,TResult? Function( USystemMessageViewDataSystemMessageDataEditJoinLink value)?  systemMessageDataEditJoinLink,TResult? Function( USystemMessageViewDataSystemMessageDataEnableJoinLink value)?  systemMessageDataEnableJoinLink,TResult? Function( USystemMessageViewDataSystemMessageDataDisableJoinLink value)?  systemMessageDataDisableJoinLink,TResult? Function( USystemMessageViewDataUnknown value)?  unknown,}){
final _that = this;
switch (_that) {
case USystemMessageViewDataSystemMessageDataAddMember() when systemMessageDataAddMember != null:
return systemMessageDataAddMember(_that);case USystemMessageViewDataSystemMessageDataRemoveMember() when systemMessageDataRemoveMember != null:
return systemMessageDataRemoveMember(_that);case USystemMessageViewDataSystemMessageDataMemberJoin() when systemMessageDataMemberJoin != null:
return systemMessageDataMemberJoin(_that);case USystemMessageViewDataSystemMessageDataMemberLeave() when systemMessageDataMemberLeave != null:
return systemMessageDataMemberLeave(_that);case USystemMessageViewDataSystemMessageDataLockConvo() when systemMessageDataLockConvo != null:
return systemMessageDataLockConvo(_that);case USystemMessageViewDataSystemMessageDataUnlockConvo() when systemMessageDataUnlockConvo != null:
return systemMessageDataUnlockConvo(_that);case USystemMessageViewDataSystemMessageDataLockConvoPermanently() when systemMessageDataLockConvoPermanently != null:
return systemMessageDataLockConvoPermanently(_that);case USystemMessageViewDataSystemMessageDataEditGroup() when systemMessageDataEditGroup != null:
return systemMessageDataEditGroup(_that);case USystemMessageViewDataSystemMessageDataCreateJoinLink() when systemMessageDataCreateJoinLink != null:
return systemMessageDataCreateJoinLink(_that);case USystemMessageViewDataSystemMessageDataEditJoinLink() when systemMessageDataEditJoinLink != null:
return systemMessageDataEditJoinLink(_that);case USystemMessageViewDataSystemMessageDataEnableJoinLink() when systemMessageDataEnableJoinLink != null:
return systemMessageDataEnableJoinLink(_that);case USystemMessageViewDataSystemMessageDataDisableJoinLink() when systemMessageDataDisableJoinLink != null:
return systemMessageDataDisableJoinLink(_that);case USystemMessageViewDataUnknown() when unknown != null:
return unknown(_that);case _:
  return null;

}
}