whenOrNull<TResult extends Object?> method
- @optionalTypeArgs
A variant of when
that fallback to returning null
It is equivalent to doing:
switch (sealedClass) {
case Subclass(:final field):
return ...;
case _:
return null;
}
Implementation
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( String type, @ElementConverter() Element? card, @JsonKey(name: "au_becs_debit")@ElementConverter() Element? auBecsDebit, @ElementConverter() Element? fpx, @JsonKey(name: "fpx[bank]") String? fpxBank, @JsonKey(name: "netbanking[bank]") String? netbankingBank, @ElementConverter() Element? ideal, @JsonKey(name: "ideal[bank]") String? idealBank, @JsonKey(name: "sepa_debit")@ElementConverter() Element? sepaDebit, @JsonKey(name: "sepa_debit[iban]") String? sepaDebitIban, @JsonKey(name: "upi[vpa]") String? upiVpa, @JsonKey(name: "billing_details") BillingDetails? billingDetails)? $default,) {final _that = this;
switch (_that) {
case _CreatePaymentMethodData() when $default != null:
return $default(_that.type,_that.card,_that.auBecsDebit,_that.fpx,_that.fpxBank,_that.netbankingBank,_that.ideal,_that.idealBank,_that.sepaDebit,_that.sepaDebitIban,_that.upiVpa,_that.billingDetails);case _:
return null;
}
}