maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult mtprotoProxy(
    1. ChatSourceMtprotoProxy value
    )?,
  2. TResult publicServiceAnnouncement(
    1. ChatSourcePublicServiceAnnouncement value
    )?,
  3. required TResult orElse(),
})

Implementation

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