maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult blocks(
    1. RichMessageSourceBlocks value
    )?,
  2. TResult html(
    1. RichMessageSourceHtml value
    )?,
  3. TResult markdown(
    1. RichMessageSourceMarkdown value
    )?,
  4. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(RichMessageSourceBlocks value)? blocks,
  TResult Function(RichMessageSourceHtml value)? html,
  TResult Function(RichMessageSourceMarkdown value)? markdown,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case RichMessageSourceBlocks.constructor:
      if (blocks != null) {
        return blocks.call(this as RichMessageSourceBlocks);
      }
      break;
    case RichMessageSourceHtml.constructor:
      if (html != null) {
        return html.call(this as RichMessageSourceHtml);
      }
      break;
    case RichMessageSourceMarkdown.constructor:
      if (markdown != null) {
        return markdown.call(this as RichMessageSourceMarkdown);
      }
      break;
  }
  return orElse.call();
}