momo  3.9
momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings > Class Template Reference

#include <TreeSet.h>

Public Types

typedef TKey Key
 
typedef TTreeTraits TreeTraits
 
typedef TMemManager MemManager
 
typedef TItemTraits ItemTraits
 
typedef TSettings Settings
 
typedef ItemTraits::Item Item
 
typedef internal::TreeSetConstIterator< Node, SettingsConstIterator
 
typedef ConstIterator Iterator
 
typedef internal::InsertResult< ConstIteratorInsertResult
 
typedef internal::SetExtractedItem< ItemTraits, SettingsExtractedItem
 

Public Member Functions

 MOMO_STATIC_ASSERT (internal::ObjectAlignmenter< Item >::Check(ItemTraits::alignment))
 
 TreeSet ()
 
 TreeSet (const TreeTraits &treeTraits, MemManager memManager=MemManager())
 
 TreeSet (std::initializer_list< Item > items)
 
 TreeSet (std::initializer_list< Item > items, const TreeTraits &treeTraits, MemManager memManager=MemManager())
 
 TreeSet (TreeSet &&treeSet) noexcept
 
 TreeSet (const TreeSet &treeSet)
 
 TreeSet (const TreeSet &treeSet, MemManager memManager)
 
 ~TreeSet () noexcept
 
TreeSetoperator= (TreeSet &&treeSet) noexcept
 
TreeSetoperator= (const TreeSet &treeSet)
 
void Swap (TreeSet &treeSet) noexcept
 
ConstIterator GetBegin () const noexcept
 
ConstIterator GetEnd () const noexcept
 
const TreeTraitsGetTreeTraits () const noexcept
 
const MemManagerGetMemManager () const noexcept
 
MemManagerGetMemManager () noexcept
 
size_t GetCount () const noexcept
 
bool IsEmpty () const noexcept
 
void Clear () noexcept
 
ConstIterator GetLowerBound (const Key &key) const
 
template<typename KeyArg >
internal::EnableIf< IsValidKeyArg< KeyArg >::value, ConstIteratorGetLowerBound (const KeyArg &key) const
 
ConstIterator GetUpperBound (const Key &key) const
 
template<typename KeyArg >
internal::EnableIf< IsValidKeyArg< KeyArg >::value, ConstIteratorGetUpperBound (const KeyArg &key) const
 
ConstIterator Find (const Key &key) const
 
template<typename KeyArg >
internal::EnableIf< IsValidKeyArg< KeyArg >::value, ConstIteratorFind (const KeyArg &key) const
 
bool ContainsKey (const Key &key) const
 
template<typename KeyArg >
internal::EnableIf< IsValidKeyArg< KeyArg >::value, bool > ContainsKey (const KeyArg &key) const
 
size_t GetKeyCount (const Key &key) const
 
template<typename KeyArg >
internal::EnableIf< IsValidKeyArg< KeyArg >::value, size_t > GetKeyCount (const KeyArg &key) const
 
template<typename ItemCreator , bool extraCheck = true>
InsertResult InsertCrt (const Key &key, ItemCreator &&itemCreator)
 
template<typename... ItemArgs>
InsertResult InsertVar (const Key &key, ItemArgs &&... itemArgs)
 
InsertResult Insert (Item &&item)
 
InsertResult Insert (const Item &item)
 
InsertResult Insert (ExtractedItem &&extItem)
 
template<typename ArgIterator >
size_t Insert (ArgIterator begin, ArgIterator end)
 
size_t Insert (std::initializer_list< Item > items)
 
template<typename ItemCreator , bool extraCheck = true>
ConstIterator AddCrt (ConstIterator iter, ItemCreator &&itemCreator)
 
template<typename... ItemArgs>
ConstIterator AddVar (ConstIterator iter, ItemArgs &&... itemArgs)
 
ConstIterator Add (ConstIterator iter, Item &&item)
 
ConstIterator Add (ConstIterator iter, const Item &item)
 
ConstIterator Add (ConstIterator iter, ExtractedItem &&extItem)
 
ConstIterator Remove (ConstIterator iter)
 
ConstIterator Remove (ConstIterator iter, ExtractedItem &extItem)
 
ConstIterator Remove (ConstIterator begin, ConstIterator end)
 
size_t Remove (const Key &key)
 
template<typename ItemFilter >
internal::EnableIf< internal::IsInvocable< const ItemFilter &, bool, const Item & >::value, size_t > Remove (const ItemFilter &itemFilter)
 
ExtractedItem Extract (ConstIterator iter)
 
template<typename KeyArg , bool extraCheck = true>
void ResetKey (ConstIterator iter, KeyArg &&keyArg)
 
template<typename RSet >
void MergeFrom (RSet &&srcSet)
 
template<typename Set >
void MergeTo (Set &dstSet)
 
void MergeTo (TreeSet &dstTreeSet)
 
void CheckIterator (ConstIterator iter, bool allowEmpty=true) const
 

Detailed Description

template<typename TKey, typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
class momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >

All TreeSet functions and constructors have strong exception safety, but not the following cases:

  1. Functions Insert receiving many items have basic exception safety.
  2. Function Remove receiving predicate has basic exception safety.
  3. Functions MergeFrom and MergeTo have basic exception safety.

Member Typedef Documentation

◆ ConstIterator

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
typedef internal::TreeSetConstIterator<Node, Settings> momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::ConstIterator

◆ ExtractedItem

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
typedef internal::SetExtractedItem<ItemTraits, Settings> momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::ExtractedItem

◆ InsertResult

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
typedef internal::InsertResult<ConstIterator> momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::InsertResult

◆ Item

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
typedef ItemTraits::Item momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Item

◆ ItemTraits

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
typedef TItemTraits momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::ItemTraits

◆ Iterator

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
typedef ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Iterator

◆ Key

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
typedef TKey momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Key

◆ MemManager

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
typedef TMemManager momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::MemManager

◆ Settings

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
typedef TSettings momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Settings

◆ TreeTraits

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
typedef TTreeTraits momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::TreeTraits

Constructor & Destructor Documentation

◆ TreeSet() [1/7]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::TreeSet ( )
inline

◆ TreeSet() [2/7]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::TreeSet ( const TreeTraits treeTraits,
MemManager  memManager = MemManager() 
)
inlineexplicit

◆ TreeSet() [3/7]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::TreeSet ( std::initializer_list< Item items)
inline

◆ TreeSet() [4/7]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::TreeSet ( std::initializer_list< Item items,
const TreeTraits treeTraits,
MemManager  memManager = MemManager() 
)
inlineexplicit

◆ TreeSet() [5/7]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::TreeSet ( TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings > &&  treeSet)
inlinenoexcept

◆ TreeSet() [6/7]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::TreeSet ( const TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings > &  treeSet)
inline

◆ TreeSet() [7/7]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::TreeSet ( const TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings > &  treeSet,
MemManager  memManager 
)
inlineexplicit

◆ ~TreeSet()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::~TreeSet ( )
inlinenoexcept

Member Function Documentation

◆ Add() [1/3]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Add ( ConstIterator  iter,
const Item item 
)
inline

◆ Add() [2/3]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Add ( ConstIterator  iter,
ExtractedItem &&  extItem 
)
inline

◆ Add() [3/3]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Add ( ConstIterator  iter,
Item &&  item 
)
inline

◆ AddCrt()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename ItemCreator , bool extraCheck = true>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::AddCrt ( ConstIterator  iter,
ItemCreator &&  itemCreator 
)
inline

◆ AddVar()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename... ItemArgs>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::AddVar ( ConstIterator  iter,
ItemArgs &&...  itemArgs 
)
inline

◆ CheckIterator()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
void momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::CheckIterator ( ConstIterator  iter,
bool  allowEmpty = true 
) const
inline

◆ Clear()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
void momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Clear ( )
inlinenoexcept

◆ ContainsKey() [1/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
bool momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::ContainsKey ( const Key key) const
inline

◆ ContainsKey() [2/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename KeyArg >
internal::EnableIf<IsValidKeyArg<KeyArg>::value, bool> momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::ContainsKey ( const KeyArg &  key) const
inline

◆ Extract()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
ExtractedItem momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Extract ( ConstIterator  iter)
inline

◆ Find() [1/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Find ( const Key key) const
inline

◆ Find() [2/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename KeyArg >
internal::EnableIf<IsValidKeyArg<KeyArg>::value, ConstIterator> momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Find ( const KeyArg &  key) const
inline

◆ GetBegin()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::GetBegin ( ) const
inlinenoexcept

◆ GetCount()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
size_t momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::GetCount ( ) const
inlinenoexcept

◆ GetEnd()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::GetEnd ( ) const
inlinenoexcept

◆ GetKeyCount() [1/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
size_t momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::GetKeyCount ( const Key key) const
inline

◆ GetKeyCount() [2/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename KeyArg >
internal::EnableIf<IsValidKeyArg<KeyArg>::value, size_t> momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::GetKeyCount ( const KeyArg &  key) const
inline

◆ GetLowerBound() [1/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::GetLowerBound ( const Key key) const
inline

◆ GetLowerBound() [2/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename KeyArg >
internal::EnableIf<IsValidKeyArg<KeyArg>::value, ConstIterator> momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::GetLowerBound ( const KeyArg &  key) const
inline

◆ GetMemManager() [1/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
const MemManager& momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::GetMemManager ( ) const
inlinenoexcept

◆ GetMemManager() [2/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
MemManager& momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::GetMemManager ( )
inlinenoexcept

◆ GetTreeTraits()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
const TreeTraits& momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::GetTreeTraits ( ) const
inlinenoexcept

◆ GetUpperBound() [1/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::GetUpperBound ( const Key key) const
inline

◆ GetUpperBound() [2/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename KeyArg >
internal::EnableIf<IsValidKeyArg<KeyArg>::value, ConstIterator> momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::GetUpperBound ( const KeyArg &  key) const
inline

◆ Insert() [1/5]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename ArgIterator >
size_t momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Insert ( ArgIterator  begin,
ArgIterator  end 
)
inline

◆ Insert() [2/5]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
InsertResult momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Insert ( const Item item)
inline

◆ Insert() [3/5]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
InsertResult momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Insert ( ExtractedItem &&  extItem)
inline

◆ Insert() [4/5]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
InsertResult momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Insert ( Item &&  item)
inline

◆ Insert() [5/5]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
size_t momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Insert ( std::initializer_list< Item items)
inline

◆ InsertCrt()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename ItemCreator , bool extraCheck = true>
InsertResult momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::InsertCrt ( const Key key,
ItemCreator &&  itemCreator 
)
inline

◆ InsertVar()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename... ItemArgs>
InsertResult momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::InsertVar ( const Key key,
ItemArgs &&...  itemArgs 
)
inline

◆ IsEmpty()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
bool momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::IsEmpty ( ) const
inlinenoexcept

◆ MergeFrom()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename RSet >
void momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::MergeFrom ( RSet &&  srcSet)
inline

◆ MergeTo() [1/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename Set >
void momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::MergeTo ( Set &  dstSet)
inline

◆ MergeTo() [2/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
void momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::MergeTo ( TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings > &  dstTreeSet)
inline

◆ MOMO_STATIC_ASSERT()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::MOMO_STATIC_ASSERT ( internal::ObjectAlignmenter< Item ::CheckItemTraits::alignment)

◆ operator=() [1/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
TreeSet& momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::operator= ( const TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings > &  treeSet)
inline

◆ operator=() [2/2]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
TreeSet& momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::operator= ( TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings > &&  treeSet)
inlinenoexcept

◆ Remove() [1/5]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename ItemFilter >
internal::EnableIf<internal::IsInvocable<const ItemFilter&, bool, const Item&>::value, size_t> momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Remove ( const ItemFilter &  itemFilter)
inline

◆ Remove() [2/5]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
size_t momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Remove ( const Key key)
inline

◆ Remove() [3/5]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Remove ( ConstIterator  begin,
ConstIterator  end 
)
inline

◆ Remove() [4/5]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Remove ( ConstIterator  iter)
inline

◆ Remove() [5/5]

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
ConstIterator momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Remove ( ConstIterator  iter,
ExtractedItem extItem 
)
inline

◆ ResetKey()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
template<typename KeyArg , bool extraCheck = true>
void momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::ResetKey ( ConstIterator  iter,
KeyArg &&  keyArg 
)
inline

◆ Swap()

template<typename TKey , typename TTreeTraits = TreeTraits<TKey>, typename TMemManager = MemManagerDefault, typename TItemTraits = TreeSetItemTraits<TKey, TMemManager>, typename TSettings = TreeSetSettings>
void momo::TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings >::Swap ( TreeSet< TKey, TTreeTraits, TMemManager, TItemTraits, TSettings > &  treeSet)
inlinenoexcept

The documentation for this class was generated from the following file: