maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult compact(
    1. WebAppOpenModeCompact value
    )?,
  2. TResult fullScreen(
    1. WebAppOpenModeFullScreen value
    )?,
  3. TResult fullSize(
    1. WebAppOpenModeFullSize value
    )?,
  4. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(WebAppOpenModeCompact value)? compact,
  TResult Function(WebAppOpenModeFullScreen value)? fullScreen,
  TResult Function(WebAppOpenModeFullSize value)? fullSize,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case WebAppOpenModeCompact.constructor:
      if (compact != null) {
        return compact.call(this as WebAppOpenModeCompact);
      }
      break;
    case WebAppOpenModeFullScreen.constructor:
      if (fullScreen != null) {
        return fullScreen.call(this as WebAppOpenModeFullScreen);
      }
      break;
    case WebAppOpenModeFullSize.constructor:
      if (fullSize != null) {
        return fullSize.call(this as WebAppOpenModeFullSize);
      }
      break;
  }
  return orElse.call();
}