maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult administrator(
    1. CommunityMemberStatusAdministrator value
    )?,
  2. TResult banned(
    1. CommunityMemberStatusBanned value
    )?,
  3. TResult creator(
    1. CommunityMemberStatusCreator value
    )?,
  4. TResult left(
    1. CommunityMemberStatusLeft value
    )?,
  5. TResult member(
    1. CommunityMemberStatusMember value
    )?,
  6. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(CommunityMemberStatusAdministrator value)? administrator,
  TResult Function(CommunityMemberStatusBanned value)? banned,
  TResult Function(CommunityMemberStatusCreator value)? creator,
  TResult Function(CommunityMemberStatusLeft value)? left,
  TResult Function(CommunityMemberStatusMember value)? member,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case CommunityMemberStatusAdministrator.constructor:
      if (administrator != null) {
        return administrator.call(this as CommunityMemberStatusAdministrator);
      }
      break;
    case CommunityMemberStatusBanned.constructor:
      if (banned != null) {
        return banned.call(this as CommunityMemberStatusBanned);
      }
      break;
    case CommunityMemberStatusCreator.constructor:
      if (creator != null) {
        return creator.call(this as CommunityMemberStatusCreator);
      }
      break;
    case CommunityMemberStatusLeft.constructor:
      if (left != null) {
        return left.call(this as CommunityMemberStatusLeft);
      }
      break;
    case CommunityMemberStatusMember.constructor:
      if (member != null) {
        return member.call(this as CommunityMemberStatusMember);
      }
      break;
  }
  return orElse.call();
}