|
|
const key_type & | key () const |
| | Returns key (const reference).
|
|
value_type & | value () |
| | Returns mapped value (reference).
|
|
store_t & | stored () |
| | Returns full stored pair (reference).
|
|
const store_t & | stored () const |
| | Returns full stored pair (const reference).
|
|
| avl_node () |
| | Default constructor (value-initializes storage and clears links).
|
| template<typename KK, typename VV> |
| | avl_node (KK &&k, VV &&v, std::size_t parent_index=static_cast< std::size_t >(-1), std::size_t left_index=static_cast< std::size_t >(-1), std::size_t right_index=static_cast< std::size_t >(-1), std::uint16_t h=1) |
| | Construct a node by forwarding a key and a mapped value.
|
|
| avl_node (const avl_node &)=default |
| | Copy constructor.
|
|
avl_node & | operator= (const avl_node &)=default |
| | Copy assignment.
|
|
| avl_node (avl_node &&)=default |
| | Move constructor.
|
|
avl_node & | operator= (avl_node &&)=default |
| | Move assignment.
|
|
| ~avl_node ()=default |
| | Destructor.
|
template<typename K, typename V>
requires ((requires(const K &a, const K &b) { { a < b } -> std::convertible_to<bool>; }) && std::copy_constructible<K> && std::copy_constructible<V>)
struct jh::avl::avl_node< K, V >
Node element for the contiguous AVL tree.
- Template Parameters
-
| K | key type (strictly ordered) |
| V | mapped value type |
Represents a single AVL node stored inside a contiguous vector. Links are expressed as indices rather than pointers. Each node contains a key-value pair, parent/left/right indices, and an explicit height field used for balancing. No per-node allocation occurs; nodes are relocated only during erase compactification.