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)],
);
}