maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult chatEventLog(
    1. MessageSourceChatEventLog value
    )?,
  2. TResult chatHistory(
    1. MessageSourceChatHistory value
    )?,
  3. TResult chatList(
    1. MessageSourceChatList value
    )?,
  4. TResult directMessagesChatTopicHistory(
    1. MessageSourceDirectMessagesChatTopicHistory value
    )?,
  5. TResult forumTopicHistory(
    1. MessageSourceForumTopicHistory value
    )?,
  6. TResult historyPreview(
    1. MessageSourceHistoryPreview value
    )?,
  7. TResult messageThreadHistory(
    1. MessageSourceMessageThreadHistory value
    )?,
  8. TResult notification(
    1. MessageSourceNotification value
    )?,
  9. TResult other(
    1. MessageSourceOther value
    )?,
  10. TResult screenshot(
    1. MessageSourceScreenshot value
    )?,
  11. TResult search(
    1. MessageSourceSearch value
    )?,
  12. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(MessageSourceChatEventLog value)? chatEventLog,
  TResult Function(MessageSourceChatHistory value)? chatHistory,
  TResult Function(MessageSourceChatList value)? chatList,
  TResult Function(MessageSourceDirectMessagesChatTopicHistory value)?
  directMessagesChatTopicHistory,
  TResult Function(MessageSourceForumTopicHistory value)? forumTopicHistory,
  TResult Function(MessageSourceHistoryPreview value)? historyPreview,
  TResult Function(MessageSourceMessageThreadHistory value)?
  messageThreadHistory,
  TResult Function(MessageSourceNotification value)? notification,
  TResult Function(MessageSourceOther value)? other,
  TResult Function(MessageSourceScreenshot value)? screenshot,
  TResult Function(MessageSourceSearch value)? search,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case MessageSourceChatEventLog.constructor:
      if (chatEventLog != null) {
        return chatEventLog.call(this as MessageSourceChatEventLog);
      }
      break;
    case MessageSourceChatHistory.constructor:
      if (chatHistory != null) {
        return chatHistory.call(this as MessageSourceChatHistory);
      }
      break;
    case MessageSourceChatList.constructor:
      if (chatList != null) {
        return chatList.call(this as MessageSourceChatList);
      }
      break;
    case MessageSourceDirectMessagesChatTopicHistory.constructor:
      if (directMessagesChatTopicHistory != null) {
        return directMessagesChatTopicHistory.call(
          this as MessageSourceDirectMessagesChatTopicHistory,
        );
      }
      break;
    case MessageSourceForumTopicHistory.constructor:
      if (forumTopicHistory != null) {
        return forumTopicHistory.call(this as MessageSourceForumTopicHistory);
      }
      break;
    case MessageSourceHistoryPreview.constructor:
      if (historyPreview != null) {
        return historyPreview.call(this as MessageSourceHistoryPreview);
      }
      break;
    case MessageSourceMessageThreadHistory.constructor:
      if (messageThreadHistory != null) {
        return messageThreadHistory.call(
          this as MessageSourceMessageThreadHistory,
        );
      }
      break;
    case MessageSourceNotification.constructor:
      if (notification != null) {
        return notification.call(this as MessageSourceNotification);
      }
      break;
    case MessageSourceOther.constructor:
      if (other != null) {
        return other.call(this as MessageSourceOther);
      }
      break;
    case MessageSourceScreenshot.constructor:
      if (screenshot != null) {
        return screenshot.call(this as MessageSourceScreenshot);
      }
      break;
    case MessageSourceSearch.constructor:
      if (search != null) {
        return search.call(this as MessageSourceSearch);
      }
      break;
  }
  return orElse.call();
}