maybeWhen<TResult extends Object?> method
TResult
maybeWhen<TResult extends Object?>(})
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 id, String? displayName, String? avatarUrl, String? bio, String? email, UserRole role, bool active, Map<String, dynamic>? custom, UserConfiguration? configuration)? $default,{required TResult orElse(),}) {final _that = this;
switch (_that) {
case _ChatUser() when $default != null:
return $default(_that.id,_that.displayName,_that.avatarUrl,_that.bio,_that.email,_that.role,_that.active,_that.custom,_that.configuration);case _:
return orElse();
}
}