maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult bot(
    1. AffiliateTypeBot value
    )?,
  2. TResult channel(
    1. AffiliateTypeChannel value
    )?,
  3. TResult currentUser(
    1. AffiliateTypeCurrentUser value
    )?,
  4. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(AffiliateTypeBot value)? bot,
  TResult Function(AffiliateTypeChannel value)? channel,
  TResult Function(AffiliateTypeCurrentUser value)? currentUser,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case AffiliateTypeBot.constructor:
      if (bot != null) {
        return bot.call(this as AffiliateTypeBot);
      }
      break;
    case AffiliateTypeChannel.constructor:
      if (channel != null) {
        return channel.call(this as AffiliateTypeChannel);
      }
      break;
    case AffiliateTypeCurrentUser.constructor:
      if (currentUser != null) {
        return currentUser.call(this as AffiliateTypeCurrentUser);
      }
      break;
  }
  return orElse.call();
}