llvm::IntervalMapImpl

IntervalMapImpl - Namespace used for IntervalMap implementation details. It should be considered private to the implementation.

Types

NameDescription
BranchNode Interior B+-tree node holding child NodeRefs and their stop keys.
LeafNode Leaf B+-tree node storing up to N coalesced key intervals and values.
NodeBase Fixed-capacity parallel arrays of keys/values (or child refs) for a tree node.
NodeRef Polymorphic reference to a leaf or branch node plus its element count.
NodeSizer Compute leaf and branch node capacities and allocator sizing for key/value types.
Path Root-to-leaf path used to navigate an IntervalMap tree.

Type Aliases

NameDescription
IdxPair Pair of node indices used when splitting or balancing B+-tree nodes.

Enums

NameDescription
CacheSizing Cache-line sizing constants used when choosing IntervalMap node capacities.

Functions

NameDescription
adjustSiblingSizes IntervalMapImpl::adjustSiblingSizes - Move elements between sibling nodes.
distribute Compute a new distribution of node elements after overflow or underflow.