whenOrNull<TResult extends Object?> method

  1. @optionalTypeArgs
TResult? whenOrNull<TResult extends Object?>(
  1. TResult? $default(
    1. String? message,
    2. String? name,
    3. String? method,
    4. bool? connected,
    5. String? namespace,
    6. String? network,
    7. String? caipNetworkId,
    8. String? explorerId,
    9. int? walletRank,
    10. int? displayIndex,
    11. String? view,
    12. String? provider,
    13. String? platform,
    14. List<String>? trace,
    15. String? topic,
    16. int? correlation_id,
    17. String? client_id,
    18. String? direction,
    19. String? userAgent,
    20. String? token,
    21. String? amount,
    22. String? hash,
    23. String? address,
    24. String? project_id,
    25. String? cursor,
    26. Map<String, String>? exchange,
    27. Map<String, String>? configuration,
    28. Map<String, String>? currentPayment,
    29. String? source,
    30. bool? headless,
    31. bool? reconnect,
    32. String? link,
    33. String? linkType,
    34. bool? showWallets,
    35. Map<String, dynamic>? siweConfig,
    36. String? themeMode,
    37. List<String>? networks,
    38. String? defaultNetwork,
    39. List<String>? chainImages,
    40. Map<String, dynamic>? metadata,
    41. String? accountType,
    42. String? query,
    43. bool? certified,
    44. bool? installed,
    )?
)

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? message,  String? name,  String? method,  bool? connected,  String? namespace,  String? network,  String? caipNetworkId,  String? explorerId,  int? walletRank,  int? displayIndex,  String? view,  String? provider,  String? platform,  List<String>? trace,  String? topic,  int? correlation_id,  String? client_id,  String? direction,  String? userAgent,  String? token,  String? amount,  String? hash,  String? address,  String? project_id,  String? cursor,  Map<String, String>? exchange,  Map<String, String>? configuration,  Map<String, String>? currentPayment,  String? source,  bool? headless,  bool? reconnect,  String? link,  String? linkType,  bool? showWallets,  Map<String, dynamic>? siweConfig,  String? themeMode,  List<String>? networks,  String? defaultNetwork,  List<String>? chainImages,  Map<String, dynamic>? metadata,  String? accountType,  String? query,  bool? certified,  bool? installed)?  $default,) {final _that = this;
switch (_that) {
case _CoreEventProperties() when $default != null:
return $default(_that.message,_that.name,_that.method,_that.connected,_that.namespace,_that.network,_that.caipNetworkId,_that.explorerId,_that.walletRank,_that.displayIndex,_that.view,_that.provider,_that.platform,_that.trace,_that.topic,_that.correlation_id,_that.client_id,_that.direction,_that.userAgent,_that.token,_that.amount,_that.hash,_that.address,_that.project_id,_that.cursor,_that.exchange,_that.configuration,_that.currentPayment,_that.source,_that.headless,_that.reconnect,_that.link,_that.linkType,_that.showWallets,_that.siweConfig,_that.themeMode,_that.networks,_that.defaultNetwork,_that.chainImages,_that.metadata,_that.accountType,_that.query,_that.certified,_that.installed);case _:
  return null;

}
}