map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult messagesRequired(
    1. ReportChatResultMessagesRequired value
    ),
  2. required TResult ok(
    1. ReportChatResultOk value
    ),
  3. required TResult optionRequired(
    1. ReportChatResultOptionRequired value
    ),
  4. required TResult textRequired(
    1. ReportChatResultTextRequired value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(ReportChatResultMessagesRequired value)
  messagesRequired,
  required TResult Function(ReportChatResultOk value) ok,
  required TResult Function(ReportChatResultOptionRequired value)
  optionRequired,
  required TResult Function(ReportChatResultTextRequired value) textRequired,
}) {
  switch (getConstructor()) {
    case ReportChatResultMessagesRequired.constructor:
      return messagesRequired.call(this as ReportChatResultMessagesRequired);
    case ReportChatResultOk.constructor:
      return ok.call(this as ReportChatResultOk);
    case ReportChatResultOptionRequired.constructor:
      return optionRequired.call(this as ReportChatResultOptionRequired);
    case ReportChatResultTextRequired.constructor:
      return textRequired.call(this as ReportChatResultTextRequired);
  }
  throw StateError('not handled type Generator');
}