whenOrNull<TResult extends Object?> method
TResult?
whenOrNull<TResult extends Object?>(
- TResult? $default(
- String? getepayTxnId,
- String? mid,
- String? txnAmount,
- String? txnStatus,
- String? merchantOrderNo,
- String? udf1,
- String? udf2,
- String? udf3,
- String? udf4,
- String? udf5,
- String? udf6,
- String? udf7,
- String? udf8,
- String? udf9,
- String? udf10,
- String? udf41,
- String? custRefNo,
- String? paymentMode,
- String? currency,
- String? discriminator,
- String? message,
- String? paymentStatus,
- DateTime? txnDate,
- String? surcharge,
- String? totalAmount,
- String? settlementAmount,
- String? settlementRefNo,
- String? settlementDate,
- String? txnNote,
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? getepayTxnId, String? mid, String? txnAmount, String? txnStatus, String? merchantOrderNo, String? udf1, String? udf2, String? udf3, String? udf4, String? udf5, String? udf6, String? udf7, String? udf8, String? udf9, String? udf10, String? udf41, String? custRefNo, String? paymentMode, String? currency, String? discriminator, String? message, String? paymentStatus, DateTime? txnDate, String? surcharge, String? totalAmount, String? settlementAmount, String? settlementRefNo, String? settlementDate, String? txnNote)? $default,) {final _that = this;
switch (_that) {
case _PgInvoiceResponse() when $default != null:
return $default(_that.getepayTxnId,_that.mid,_that.txnAmount,_that.txnStatus,_that.merchantOrderNo,_that.udf1,_that.udf2,_that.udf3,_that.udf4,_that.udf5,_that.udf6,_that.udf7,_that.udf8,_that.udf9,_that.udf10,_that.udf41,_that.custRefNo,_that.paymentMode,_that.currency,_that.discriminator,_that.message,_that.paymentStatus,_that.txnDate,_that.surcharge,_that.totalAmount,_that.settlementAmount,_that.settlementRefNo,_that.settlementDate,_that.txnNote);case _:
return null;
}
}