14struct SearchResultItem;
47std::uint64_t
stree_num_nodes(std::uint64_t num_items, std::uint16_t branching_factor);
66 std::uint16_t branching_factor);
74 const std::vector<std::uint64_t>& offsets);
Synchronous byte-range source.
Minimal C++17 stand-in for std::span: a non-owning view over contiguous memory.
bool is_payload_ref(std::uint64_t off)
std::uint64_t stree_num_nodes(std::uint64_t num_items, std::uint16_t branching_factor)
Total node count.
std::vector< std::uint64_t > decode_payload_entry(bytes_view b)
Decode a payload entry: u32 count then count x u64, all little-endian.
std::vector< StreeLevelBound > stree_level_bounds(std::uint64_t num_items, std::uint16_t branching_factor)
Mirrors Stree::generate_level_bounds (stree.rs:474-508).
std::uint64_t payload_offset(std::uint64_t off)
std::vector< SearchResultItem > stree_query(RangeReader &reader, const AttrIndexInfo &index, KeyKind kind, Operator op, const KeyValue &value)
Run one condition against one column's index blob, returning candidate feature offsets (relative to t...
void encode_payload_entry(std::vector< std::uint8_t > &out, const std::vector< std::uint64_t > &offsets)
Encode a payload entry: u32 count then count x u64, all little-endian (mirrors PayloadEntry::serializ...
constexpr std::uint64_t kPayloadMask
constexpr std::uint64_t kPayloadTag
The MSB of a leaf offset marks a payload reference rather than a direct feature offset (stree....
KeyKind
The concrete key types the B+tree index can hold.
std::vector< AttrCondition > AttrQuery
Operator
Comparison operators the attribute index supports.
One condition of an attribute query.
Where one column's B+tree index lives, and how it is shaped.
bool exact_index_only
Return raw index candidates without verifying them against the decoded attribute.
Half-open [start, end) node index range for one tree level, in the flat node array shared by every le...