whenOrNull<TResult extends Object?> method
TResult?
whenOrNull<TResult extends Object?>(
- TResult? $default(
- int? id,
- int? qrCodeId,
- int? depotId,
- int? statusId,
- String? userId,
- DateTime? createdDate,
- DateTime? endedDate,
- Depot? depot,
- QrCode? qrCode,
- Status? status,
- Order? order,
- String? orderId,
- String? purchaseOrder,
- User? user,
- String? remarks,
- List<
int> ? tagList, - List<
ScannedQrCodeTag> ? scannedQrCodeTag,
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( int? id, int? qrCodeId, int? depotId, int? statusId, String? userId, DateTime? createdDate, DateTime? endedDate, Depot? depot, QrCode? qrCode, Status? status, Order? order, String? orderId, String? purchaseOrder, User? user, String? remarks, List<int>? tagList, List<ScannedQrCodeTag>? scannedQrCodeTag)? $default,) {final _that = this;
switch (_that) {
case _ScannedQrCode() when $default != null:
return $default(_that.id,_that.qrCodeId,_that.depotId,_that.statusId,_that.userId,_that.createdDate,_that.endedDate,_that.depot,_that.qrCode,_that.status,_that.order,_that.orderId,_that.purchaseOrder,_that.user,_that.remarks,_that.tagList,_that.scannedQrCodeTag);case _:
return null;
}
}