maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult error(
    1. SpeechRecognitionResultError value
    )?,
  2. TResult pending(
    1. SpeechRecognitionResultPending value
    )?,
  3. TResult text(
    1. SpeechRecognitionResultText value
    )?,
  4. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(SpeechRecognitionResultError value)? error,
  TResult Function(SpeechRecognitionResultPending value)? pending,
  TResult Function(SpeechRecognitionResultText value)? text,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case SpeechRecognitionResultError.constructor:
      if (error != null) {
        return error.call(this as SpeechRecognitionResultError);
      }
      break;
    case SpeechRecognitionResultPending.constructor:
      if (pending != null) {
        return pending.call(this as SpeechRecognitionResultPending);
      }
      break;
    case SpeechRecognitionResultText.constructor:
      if (text != null) {
        return text.call(this as SpeechRecognitionResultText);
      }
      break;
  }
  return orElse.call();
}