maybeWhen<TResult extends Object?> method
TResult
maybeWhen<TResult extends Object?>({
- TResult getLink(
- String terminalId,
- String mid,
- double amount,
- String name,
- int mobile,
- String txnType,
- String paymentMode,
- String currency,
- String udf4,
- String udf5,
- String udf6,
- String udf7,
- String udf8,
- String udf9,
- String udf10,
- String callbackUrl,
- String ru,
- String email,
- String merchantTransactionId,
- String transactionDate,
- String productType,
- String txnNote,
- TResult getInvoiceStatus(
- PgStatusRequest request
- required TResult orElse(),
A variant of when that fallback to an orElse callback.
It is equivalent to doing:
switch (sealedClass) {
case Subclass(:final field):
return ...;
case _:
return orElse();
}
Implementation
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>({TResult Function( String terminalId, String mid, double amount, String name, int mobile, String txnType, String paymentMode, String currency, String udf4, String udf5, String udf6, String udf7, String udf8, String udf9, String udf10, String callbackUrl, String ru, String email, String merchantTransactionId, String transactionDate, String productType, String txnNote)? getLink,TResult Function( PgStatusRequest request)? getInvoiceStatus,required TResult orElse(),}) {final _that = this;
switch (_that) {
case _GetLink() when getLink != null:
return getLink(_that.terminalId,_that.mid,_that.amount,_that.name,_that.mobile,_that.txnType,_that.paymentMode,_that.currency,_that.udf4,_that.udf5,_that.udf6,_that.udf7,_that.udf8,_that.udf9,_that.udf10,_that.callbackUrl,_that.ru,_that.email,_that.merchantTransactionId,_that.transactionDate,_that.productType,_that.txnNote);case _GetInvoiceStatus() when getInvoiceStatus != null:
return getInvoiceStatus(_that.request);case _:
return orElse();
}
}