4#ifndef _Stroika_Foundation_Containers_Concrete_SortedCollection_SkipList_h_
5#define _Stroika_Foundation_Containers_Concrete_SortedCollection_SkipList_h_
7#include "Stroika/Foundation/StroikaPreComp.h"
9#include "Stroika/Foundation/Containers/DataStructures/SkipList.h"
22 using Common::IThreeWayComparer;
46 template <IThreeWayComparer<T> COMPARER = compare_three_way>
52 template <IThreeWayComparer<T> COMPARER = compare_three_way>
60 template <IThreeWayComparer<T> COMPARER>
70#if qCompilerAndStdLib_RequiresNotMatchInlineOutOfLineForTemplateClassBeingDefined_Buggy
74 AssertRepValidType_ ();
78 template <IThreeWayComparer<T> COMPARER, IIterableOfTo<T> ITERABLE_OF_ADDABLE>
80 template <IInputIterator<T> ITERATOR_OF_ADDABLE>
82 template <IThreeWayComparer<T> COMPARER, IInputIterator<T> ITERATOR_OF_ADDABLE>
97 nonvirtual
void AssertRepValidType_ ()
const;
110#include "SortedCollection_SkipList.inl"
nonvirtual void AddAll(ITERATOR_OF_ADDABLE &&start, ITERATOR_OF_ADDABLE2 &&end)
typename inherited::value_type value_type
SortedCollection_SkipList<T> is an SkipList-based concrete implementation of the SortedCollection<T> ...
SortedCollection_SkipList()
SkipListBasedContainer is a Stroika implementation detail, but its public methods are fair game and f...
A SortedCollection is a Collection<T> which remains sorted (iteration produces items sorted) even as ...
nonvirtual CONTAINER_OF_T As(CONTAINER_OF_T_CONSTRUCTOR_ARGS... args) const
static constexpr default_sentinel_t end() noexcept
Support for ranged for, and STL syntax in general.