maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult absolute(
    1. DateTimeFormattingTypeAbsolute value
    )?,
  2. TResult relative(
    1. DateTimeFormattingTypeRelative value
    )?,
  3. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(DateTimeFormattingTypeAbsolute value)? absolute,
  TResult Function(DateTimeFormattingTypeRelative value)? relative,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case DateTimeFormattingTypeAbsolute.constructor:
      if (absolute != null) {
        return absolute.call(this as DateTimeFormattingTypeAbsolute);
      }
      break;
    case DateTimeFormattingTypeRelative.constructor:
      if (relative != null) {
        return relative.call(this as DateTimeFormattingTypeRelative);
      }
      break;
  }
  return orElse.call();
}