7namespace Stroika::Foundation::Containers::Factory {
14 template <
typename T, IEqualsComparer<T> EQUALS_COMPARER>
19 template <
typename T, IEqualsComparer<T> EQUALS_COMPARER>
24 template <
typename T, IEqualsComparer<T> EQUALS_COMPARER>
29 template <
typename T, IEqualsComparer<T> EQUALS_COMPARER>
32 return AccessDefault_ ();
34 template <
typename T, IEqualsComparer<T> EQUALS_COMPARER>
37 if (this->fFactory_ ==
nullptr) [[likely]] {
38 if constexpr (same_as<EQUALS_COMPARER, equal_to<T>> and totally_ordered<T>) {
51 return this->fFactory_ (equalsComparer);
54 template <
typename T, IEqualsComparer<T> EQUALS_COMPARER>
59 template <
typename T, IEqualsComparer<T> EQUALS_COMPARER>
Set_Array<T> is an Array-based concrete implementation of the Set<T> container pattern.
SortedSet_stdset<T> is an std::set-based concrete implementation of the SortedSet<T> container patter...
Singleton factory object - Used to create the default backend implementation of a Set<> container; ty...
static const Set_Factory & Default()
nonvirtual ConstructedType operator()(const EQUALS_COMPARER &equalsComparer={}) const
static void Register(const optional< Set_Factory > &f=nullopt)
Set<T> is a container of T, where once an item is added, additionally adds () do nothing.