firstRuntimeType<R> method
Implementation
Future<R> firstRuntimeType<R>({R Function()? orElse}) {
final completer = Completer<R>();
firstWhere((v) => v.runtimeType == R).then((v) => completer.complete(v as R),
onError: (exception, stackTrace) {
if (exception is StateError && orElse != null) {
completer.complete(orElse());
} else {
completer.completeError(exception, stackTrace);
}
});
return completer.future;
}