Skip to content

Commit 2094386

Browse files
committed
update creator code
1 parent 4fa8eb6 commit 2094386

File tree

3 files changed

+4
-6
lines changed

3 files changed

+4
-6
lines changed

Include/SevenBit/DI/Details/Core/Impl/ServiceInstancesCreator.hpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,9 @@ namespace sb::di::details
3737
INLINE ServiceInstanceList ServiceInstancesCreator::createAll(const ServiceDescriptorList &descriptors,
3838
const bool inPlaceRequest, const std::size_t skipLast)
3939
{
40-
ServiceInstanceList instances;
4140
const auto size = descriptors.size();
41+
ServiceInstanceList instances{size};
4242
const auto take = skipLast <= size ? size - skipLast : 0;
43-
instances.reserve(size);
4443
descriptors.forEach([&](const ServiceDescriptor &descriptor, const std::size_t index) {
4544
if (index < take)
4645
{

Include/SevenBit/DI/Details/Core/ServiceAliasesCreator.hpp

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,8 @@ namespace sb::di::details
1616
ServiceInstanceList tryCreateAll(const ServiceDescriptorList &descriptors, TResolver originalsResolver,
1717
const std::size_t skipLast = 0) const
1818
{
19-
ServiceInstanceList instances;
2019
const auto size = descriptors.size();
21-
instances.reserve(size);
20+
ServiceInstanceList instances{size};
2221
descriptors.forEach([&](const ServiceDescriptor &aliasDescriptor, const std::size_t index) {
2322
const auto lastDescriptorSkip = index + 1 == size ? skipLast : 0;
2423
tryCreateAll(instances, aliasDescriptor, originalsResolver(aliasDescriptor), lastDescriptorSkip);
@@ -31,7 +30,7 @@ namespace sb::di::details
3130
template <class TResolver>
3231
ServiceInstanceList tryMapAll(const ServiceDescriptorList &descriptors, TResolver originalsResolver) const
3332
{
34-
ServiceInstanceList instances;
33+
ServiceInstanceList instances{descriptors.size()};
3534
descriptors.forEach([&](const ServiceDescriptor &aliasDescriptor) {
3635
tryMapAll(instances, aliasDescriptor, originalsResolver(aliasDescriptor));
3736
});

Include/SevenBit/DI/OneOrList.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ namespace sb::di
2121

2222
public:
2323
OneOrList() = default;
24-
explicit OneOrList(const std::size_t size) : _variant(std::vector<T>{}) { reserve(size); }
24+
explicit OneOrList(const std::size_t size) { reserve(size); }
2525
explicit OneOrList(T &&mainElement) : _variant(std::move(mainElement)) {}
2626

2727
OneOrList(const OneOrList &) = delete;

0 commit comments

Comments
 (0)