maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult external(
    1. WebBrowserTypeExternal value
    )?,
  2. TResult inApp(
    1. WebBrowserTypeInApp value
    )?,
  3. required TResult orElse(),
})

Implementation

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