maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult deleted(
    1. LanguagePackStringValueDeleted value
    )?,
  2. TResult ordinary(
    1. LanguagePackStringValueOrdinary value
    )?,
  3. TResult pluralized(
    1. LanguagePackStringValuePluralized value
    )?,
  4. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(LanguagePackStringValueDeleted value)? deleted,
  TResult Function(LanguagePackStringValueOrdinary value)? ordinary,
  TResult Function(LanguagePackStringValuePluralized value)? pluralized,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case LanguagePackStringValueDeleted.constructor:
      if (deleted != null) {
        return deleted.call(this as LanguagePackStringValueDeleted);
      }
      break;
    case LanguagePackStringValueOrdinary.constructor:
      if (ordinary != null) {
        return ordinary.call(this as LanguagePackStringValueOrdinary);
      }
      break;
    case LanguagePackStringValuePluralized.constructor:
      if (pluralized != null) {
        return pluralized.call(this as LanguagePackStringValuePluralized);
      }
      break;
  }
  return orElse.call();
}