|
| | MOMO_STATIC_ASSERT (internal::ObjectAlignmenter< Item >::Check(ItemTraits::alignment)) |
| |
| | TreeSet () |
| |
| | TreeSet (const TreeTraits &treeTraits, MemManager memManager=MemManager()) |
| |
| template<typename ArgIterator , typename ArgSentinel , typename = decltype(*std::declval<ArgIterator>())> |
| | TreeSet (ArgIterator begin, ArgSentinel end, const TreeTraits &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 |
| |
| TreeSet & | operator= (TreeSet &&treeSet) noexcept |
| |
| TreeSet & | operator= (const TreeSet &treeSet) |
| |
| void | Swap (TreeSet &treeSet) noexcept |
| |
| ConstIterator | GetBegin () const noexcept |
| |
| ConstIterator | GetEnd () const noexcept |
| |
| const TreeTraits & | GetTreeTraits () const noexcept |
| |
| const MemManager & | GetMemManager () const noexcept |
| |
| MemManager & | GetMemManager () 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, ConstIterator > | GetLowerBound (const KeyArg &key) const |
| |
| ConstIterator | GetUpperBound (const Key &key) const |
| |
| template<typename KeyArg > |
| internal::EnableIf< IsValidKeyArg< KeyArg >::value, ConstIterator > | GetUpperBound (const KeyArg &key) const |
| |
| ConstIterator | Find (const Key &key) const |
| |
| template<typename KeyArg > |
| internal::EnableIf< IsValidKeyArg< KeyArg >::value, ConstIterator > | Find (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 , typename ArgSentinel > |
| size_t | Insert (ArgIterator begin, ArgSentinel 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 |
| |
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:
- Functions
Insert receiving many items have basic exception safety.
- Function
Remove receiving predicate has basic exception safety.
- Functions
MergeFrom and MergeTo have basic exception safety.