An abstract basic tree-like-based associative container.
Defined in: assoc_container.hpp
Parameter | Description | Default Value |
typename Key |
Key type. |
- |
typename Mapped |
Mapped type. |
- |
class Tag |
Mapped-structure tag. |
- |
class Node_Update |
Node updater. Restores node-invariants when invalidated. |
- |
class Policy_Tl |
Policy typelist. Contains subclasses' policies. |
- |
class Allocator |
Allocator type. |
- |
Class | Derivation Type |
Node_Update |
public |
container_base |
public |
Type | Definition | Description |
const_key_reference |
typename container_base::const_key_reference |
Const key reference type. |
Type | Definition | Description |
node_update |
Node_Update |
Node updater type. |
Type | Definition | Description |
const_iterator |
typename container_base::const_iterator |
Const range-type iterator. |
iterator |
typename container_base::iterator |
Range-type iterator. |
const_reverse_iterator |
Const reverse range-type iterator. |
Const reverse range-type iterator. |
reverse_iterator |
Reverse range-type iterator. |
Reverse range-type iterator. |
Method | Description |
virtual ~basic_tree () |
Destructor. |
Method | Description |
node_update & get_node_update () |
Access to the node_update object. |
const node_update & get_node_update () const |
Const access to the node_update object. |
Method | Description |
iterator lower_bound (const_key_reference r_key) |
Returns an iterator corresponding to the entry whose key is the smallest one at least as large as r_key. |
const_iterator lower_bound (const_key_reference r_key) const |
Returns a const iterator corresponding to the entry whose key is the smallest one at least as large as r_key. |
iterator upper_bound (const_key_reference r_key) |
Returns an iterator corresponding to the entry whose key is the smallest one larger than r_key. |
const_iterator upper_bound (const_key_reference r_key) const |
Returns a const_iterator corresponding to the entry whose key is the smallest one larger than r_key. |
Method | Description |
iterator erase (iterator it) |
Erases the value_type corresponding to the iterator it. Returns the iterator corresponding to the next value_type. |
reverse_iterator erase (reverse_iterator it) |
Erases the value_type corresponding to the reverse_iterator it. Returns the reverse_iterator corresponding to the previous value_type. |
Method | Description |
reverse_iterator rbegin () |
Returns a reverse_iterator corresponding to the last value_type in the container. |
const_reverse_iterator rbegin () const |
Returns a const_reverse_iterator corresponding to the last value_type in the container. |
reverse_iterator rend () |
Returns a reverse_iterator corresponding to the just-before-first value_type in the container. |
const_reverse_iterator rend () const |
Returns a const_reverse_iterator corresponding to the just-before-first value_type in the container. |
Method | Description |
void
join
(basic_tree &other)
|
Joins two trees. When this function returns, other will be empty. When calling this method, other's keys must be all larger or all smaller than this object's keys, and other's policies must be equivalent to this object's policies. |
void split (const_key_reference r_key, basic_tree &other) |
Splits into two trees. When this function returns, other will contain only keys larger than r_key. When calling this method, other's policies must be equivalent to this object's policies. |