createSingletons method
Future<void>
createSingletons(
)
Implementation
@visibleForTesting
Future<void> createSingletons() async {
// no need to count references for singletons
final unorderedInstances = singletonInstances.where(
(element) => element.initializationOrder == null,
);
final orderedInstances =
singletonInstances
.where((element) => element.initializationOrder != null)
.toList()
..sort((first, second) {
return first.initializationOrder!.compareTo(
second.initializationOrder!,
);
});
for (final element in orderedInstances) {
await _addInstance(element);
}
await Future.wait([
for (final element in unorderedInstances) _addInstance(element),
]);
}