pub type InnerNode16<K, V, const PREFIX_LEN: usize> = InnerNodeSorted<K, V, PREFIX_LEN, 16>;Expand description
Node that references between 5 and 16 children
Aliased Type§
#[repr(C, align(8))]pub struct InnerNode16<K, V, const PREFIX_LEN: usize> {
pub header: Header<PREFIX_LEN>,
pub child_pointers: [MaybeUninit<OpaqueNodePtr<K, V, PREFIX_LEN>>; 16],
pub keys: [u8; 16],
}Fields§
§header: Header<PREFIX_LEN>The common node fields.
child_pointers: [MaybeUninit<OpaqueNodePtr<K, V, PREFIX_LEN>>; 16]An array that contains the child data.
This array will only be initialized for the first header.num_children
values.
keys: [u8; 16]An array that contains single key bytes in the same index as the
child_pointers array contains the matching child tree.
This array will only be initialized for the first header.num_children
values.
Trait Implementations§
Source§impl<K, V, const PREFIX_LEN: usize> InnerNode<PREFIX_LEN> for InnerNode16<K, V, PREFIX_LEN>
impl<K, V, const PREFIX_LEN: usize> InnerNode<PREFIX_LEN> for InnerNode16<K, V, PREFIX_LEN>
Source§type GrownNode = InnerNodeIndirect<K, V, PREFIX_LEN, 48>
type GrownNode = InnerNodeIndirect<K, V, PREFIX_LEN, 48>
The type of the next larger node type.
Source§type ShrunkNode = InnerNodeSorted<K, V, PREFIX_LEN, 4>
type ShrunkNode = InnerNodeSorted<K, V, PREFIX_LEN, 4>
The type of the next smaller node type.
Source§fn grow(&self) -> Self::GrownNode
fn grow(&self) -> Self::GrownNode
Grow this node into the next larger class, copying over children and
prefix information.
Source§fn shrink(&self) -> Self::ShrunkNode
fn shrink(&self) -> Self::ShrunkNode
Shrink this node into the next smaller class, copying over children and
prefix information. Read more