maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult long(
    1. DateTimePartPrecisionLong value
    )?,
  2. TResult none(
    1. DateTimePartPrecisionNone value
    )?,
  3. TResult short(
    1. DateTimePartPrecisionShort value
    )?,
  4. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(DateTimePartPrecisionLong value)? long,
  TResult Function(DateTimePartPrecisionNone value)? none,
  TResult Function(DateTimePartPrecisionShort value)? short,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case DateTimePartPrecisionLong.constructor:
      if (long != null) {
        return long.call(this as DateTimePartPrecisionLong);
      }
      break;
    case DateTimePartPrecisionNone.constructor:
      if (none != null) {
        return none.call(this as DateTimePartPrecisionNone);
      }
      break;
    case DateTimePartPrecisionShort.constructor:
      if (short != null) {
        return short.call(this as DateTimePartPrecisionShort);
      }
      break;
  }
  return orElse.call();
}