4#ifndef _Stroika_Foundation_Containers_Concrete_Collection_Array_h_
5#define _Stroika_Foundation_Containers_Concrete_Collection_Array_h_
7#include "Stroika/Foundation/StroikaPreComp.h"
9#include "Stroika/Foundation/Containers/Collection.h"
48 template <IIterableOfTo<T> ITERABLE_OF_ADDABLE>
51#if qCompilerAndStdLib_RequiresNotMatchInlineOutOfLineForTemplateClassBeingDefined_Buggy
55 this->
AddAll (forward<ITERABLE_OF_ADDABLE> (src));
56 AssertRepValidType_ ();
60 template <IInputIterator<T> ITERATOR_OF_ADDABLE>
72 nonvirtual
void AssertRepValidType_ ()
const;
83#include "Collection_Array.inl"
Implementation detail for Collection<T> implementors.
A Collection<T> is a container to manage an un-ordered collection of items, without equality defined ...
nonvirtual void AddAll(ITERATOR_OF_ADDABLE &&start, ITERATOR_OF_ADDABLE2 &&end)
typename inherited::value_type value_type
Collection_Array<T> is an Array-based concrete implementation of the Collection<T> container pattern.
ArrayBasedContainer is a Stroika implementation detail, but its public methods are fair game and full...
nonvirtual void reserve(size_t slotsAlloced)
static constexpr default_sentinel_t end() noexcept
Support for ranged for, and STL syntax in general.