FastLED 3.9.15
Loading...
Searching...
No Matches
fl::MultiMapTree< Key, Value, Compare, Allocator > Class Template Reference

Detailed Description

template<typename Key, typename Value, typename Compare = less<Key>, typename Allocator = allocator<fl::pair<Key, Value>>>
class fl::MultiMapTree< Key, Value, Compare, Allocator >

Definition at line 21 of file multi_map.h.

#include <multi_map.h>

+ Inheritance diagram for fl::MultiMapTree< Key, Value, Compare, Allocator >:
+ Collaboration diagram for fl::MultiMapTree< Key, Value, Compare, Allocator >:

Classes

class  ConstIteratorWrapper
 
class  ConstReverseIteratorWrapper
 
class  IteratorWrapper
 
struct  PairCompareWithId
 
class  ReverseIteratorWrapper
 
class  value_compare
 
struct  ValueWithId
 

Public Types

using allocator_type = Allocator
 
using const_iterator = ConstIteratorWrapper
 
using const_pointer = const value_type*
 
using const_reference = const value_type&
 
using const_reverse_iterator = ConstReverseIteratorWrapper
 
using difference_type = ptrdiff_t
 
using iterator = IteratorWrapper
 
using key_compare = Compare
 
using key_type = Key
 
using mapped_type = Value
 
using pointer = value_type*
 
using reference = value_type&
 
using reverse_iterator = ReverseIteratorWrapper
 
using size_type = fl::size
 
using value_type = fl::pair<Key, Value>
 

Public Member Functions

 MultiMapTree (const Compare &comp=Compare(), const Allocator &alloc=Allocator())
 
 MultiMapTree (const MultiMapTree &other) FL_NOEXCEPT=default
 
 MultiMapTree (fl::initializer_list< value_type > init, const Compare &comp=Compare(), const Allocator &alloc=Allocator())
 
 MultiMapTree (MultiMapTree &&other) FL_NOEXCEPT=default
 
 ~MultiMapTree () FL_NOEXCEPT=default
 
iterator begin ()
 
const_iterator begin () const
 
const_iterator cbegin () const
 
const_iterator cend () const
 
void clear ()
 
bool contains (const Key &key) const
 
fl::size count (const Key &key) const
 
template<typename... Args>
iterator emplace (Args &&... args)
 
bool empty () const
 
iterator end ()
 
const_iterator end () const
 
fl::pair< iterator, iteratorequal_range (const Key &key)
 
fl::pair< const_iterator, const_iteratorequal_range (const Key &key) const
 
fl::size erase (const Key &key)
 
iterator erase (const_iterator first, const_iterator last)
 
iterator erase (const_iterator pos)
 
iterator erase (iterator pos)
 
iterator find (const Key &key)
 
const_iterator find (const Key &key) const
 
allocator_type get_allocator () const
 
iterator insert (const value_type &value)
 
void insert (fl::initializer_list< value_type > ilist)
 
template<typename InputIt>
void insert (InputIt first, InputIt last)
 
iterator insert (value_type &&value)
 
key_compare key_comp () const
 
iterator lower_bound (const Key &key)
 
const_iterator lower_bound (const Key &key) const
 
fl::size max_size () const
 
bool operator!= (const MultiMapTree &other) const
 
bool operator< (const MultiMapTree &other) const
 
bool operator<= (const MultiMapTree &other) const
 
MultiMapTreeoperator= (const MultiMapTree &other) FL_NOEXCEPT=default
 
MultiMapTreeoperator= (MultiMapTree &&other) FL_NOEXCEPT=default
 
bool operator== (const MultiMapTree &other) const
 
bool operator> (const MultiMapTree &other) const
 
bool operator>= (const MultiMapTree &other) const
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
fl::size size () const
 
void swap (MultiMapTree &other)
 
iterator upper_bound (const Key &key)
 
const_iterator upper_bound (const Key &key) const
 
value_compare value_comp () const
 

Private Types

using TreeType = RedBlackTree<ValueWithId, PairCompareWithId, Allocator>
 

Private Attributes

fl::size mNextId = 0
 
TreeType mTree
 

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