|
constexpr auto | allocator () -> Alloc & |
|
constexpr auto | insert_with_factory (U &&needle, F &&factory) |
|
constexpr auto | insert_with_factory (ConstIterator, U &&needle, F &&factory) |
|
| RBTree ()=default |
|
| RBTree (RBTree const &)=delete |
|
constexpr | RBTree (function::Compare comparator) |
|
constexpr | RBTree (RBTree &&other) |
|
auto | operator= (RBTree const &) -> RBTree &=delete |
|
constexpr auto | operator= (RBTree &&other) -> RBTree & |
|
constexpr | ~RBTree () |
|
constexpr auto | size () const -> usize |
|
constexpr auto | empty () const -> bool |
|
constexpr auto | begin () -> Iterator |
|
constexpr auto | begin () const -> ConstIterator |
|
constexpr auto | end () -> Iterator |
|
constexpr auto | end () const -> ConstIterator |
|
constexpr auto | unconst_iterator (ConstIterator it) -> Iterator |
|
constexpr auto | insert_node (Node &node) |
|
constexpr auto | insert_node (ConstIterator, Node &node) |
|
constexpr auto | erase_impl (ConstIterator position) -> Iterator |
|
constexpr auto | equal_range_impl (U &&needle) const |
|
constexpr auto | lower_bound_impl (U &&needle) const -> ConstIterator |
|
constexpr auto | upper_bound_impl (U &&needle) const -> ConstIterator |
|
constexpr auto | find_impl (U &&needle) const -> ConstIterator |
|
constexpr void | merge_impl (RBTree &&other) |
|
constexpr auto | empty () const -> bool |
|
constexpr void | clear () |
|
constexpr auto | insert (Value const &value) |
|
constexpr auto | insert (Value &&value) |
|
constexpr auto | insert (U &&value) |
|
constexpr auto | insert (container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > hint, Value const &value) |
|
constexpr auto | insert (container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > hint, Value &&value) |
|
constexpr auto | insert (container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > hint, U &&value) |
|
constexpr auto | emplace (Args &&... args) |
|
constexpr auto | emplace_hint (container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > hint, Args &&... args) |
|
constexpr auto | insert_container (Con &&container) |
|
constexpr void | insert_container (container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > hint, Con &&container) |
|
constexpr auto | merge (TreeMultiSet< Value, function::Compare, DefaultAllocator > &self) |
|
constexpr auto | merge (TreeMultiSet< Value, function::Compare, DefaultAllocator > &&self) |
|
constexpr auto | erase (RBTreeIterator< Value, detail::TreeSetTag< Value > > position) |
|
constexpr auto | erase (RBTreeIterator< Value, detail::TreeSetTag< Value > > first, RBTreeIterator< Value, detail::TreeSetTag< Value > > last) -> RBTreeIterator< Value, detail::TreeSetTag< Value > > |
|
constexpr auto | erase (Value const &needle) -> size_t |
|
constexpr auto | erase (U &&needle) -> size_t |
|
constexpr auto | front () -> Optional< Value & > |
|
constexpr auto | front () const -> Optional< Value const & > |
|
constexpr auto | back () -> Optional< Value & > |
|
constexpr auto | back () const -> Optional< Value const & > |
|
constexpr auto | at (Value const &needle) -> Optional< Value & > |
|
constexpr auto | at (Value const &needle) const -> Optional< Value const & > |
|
constexpr auto | at (U &&needle) -> Optional< Value & > |
|
constexpr auto | at (U &&needle) const -> Optional< Value const & > |
|
constexpr auto | find (Value const &needle) -> RBTreeIterator< Value, detail::TreeSetTag< Value > > |
|
constexpr auto | find (Value const &needle) const -> container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > |
|
constexpr auto | find (U &&needle) -> RBTreeIterator< Value, detail::TreeSetTag< Value > > |
|
constexpr auto | find (U &&needle) const -> container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > |
|
constexpr auto | contains (Value const &needle) const -> bool |
|
constexpr auto | contains (U &&needle) const -> bool |
|
constexpr auto | count (Value const &needle) const -> size_t |
|
constexpr auto | count (U &&needle) const -> size_t |
|
constexpr auto | equal_range (Value const &needle) -> View< RBTreeIterator< Value, detail::TreeSetTag< Value > > > |
|
constexpr auto | equal_range (U &&needle) -> View< RBTreeIterator< Value, detail::TreeSetTag< Value > > > |
|
constexpr auto | equal_range (Value const &needle) const -> View< container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > > |
|
constexpr auto | equal_range (U &&needle) const -> View< container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > > |
|
constexpr auto | lower_bound (Value const &needle) -> RBTreeIterator< Value, detail::TreeSetTag< Value > > requires( |
|
constexpr auto | lower_bound (Value const &needle) const -> container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > requires( |
|
constexpr auto | lower_bound (U &&needle) -> RBTreeIterator< Value, detail::TreeSetTag< Value > > requires( |
|
constexpr auto | lower_bound (U &&needle) const -> container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > requires( |
|
constexpr auto | upper_bound (Value const &needle) -> RBTreeIterator< Value, detail::TreeSetTag< Value > > requires( |
|
constexpr auto | upper_bound (Value const &needle) const -> container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > requires( |
|
constexpr auto | upper_bound (U &&needle) -> RBTreeIterator< Value, detail::TreeSetTag< Value > > requires( |
|
constexpr auto | upper_bound (U &&needle) const -> container::ConstIteratorImpl< RBTreeIterator< Value, detail::TreeSetTag< Value > > > requires( |
|
constexpr void | intersect (TreeMultiSet< Value, function::Compare, DefaultAllocator > const &b) |
|
constexpr void | subtract (TreeMultiSet< Value, function::Compare, DefaultAllocator > const &b) |
|
constexpr void | insert_node (InsertPosition position, Node &to_insert) |
|
constexpr auto | node_value (Node &node) const -> Value & |
|
constexpr auto | node_value (Node const &node) const -> Value const & |
|
constexpr auto | node_color (Node *node) const -> Node::Color |
|
constexpr void | rotate_left (Node &x) |
|
constexpr void | rotate_right (Node &y) |
|
constexpr auto | insert_position (U &&needle) const -> InsertPosition |
|
constexpr void | do_insert_node (InsertPosition position, Node &to_insert) |
|
constexpr void | do_insert_rebalancing (Node *node) |
|
constexpr void | transplant (Node &u, Node *v) |
|
constexpr void | erase_node (Node &to_delete) |
|
constexpr void | do_erase_rebalancing (Node *x) |
|
constexpr auto | compare (Node const &a, Node const &b) const |
|
constexpr auto | compare (T const &a, U &&b) const |
|
Node * | m_root |
|
Node * | m_minimum |
|
Node * | m_maximum |
|
usize | m_size |
|
function::Compare | m_comparator |
|