ZXFoundation™ 26h2
Loading...
Searching...
No Matches
lib::rb_root_cached Struct Referenceexport
module lib.rbtree

RB-tree root with cached leftmost node for O(1) begin(). More...

Collaboration diagram for lib::rb_root_cached:
[legend]

Data Structures

struct  typed_iterator
 Typed in-order iterator (yields Owner&). More...
struct  typed_range
 Typed range adaptor for range-for. More...

Public Member Functions

auto empty () const noexcept -> bool
template<typename Owner, rb_node Owner::* member>
auto iter () const noexcept -> typed_range< Owner, member >
 Get a typed iterable range over the tree.

Data Fields

rb_nodeleftmost {nullptr}
rb_root root {}

Detailed Description

RB-tree root with cached leftmost node for O(1) begin().

Member Function Documentation

◆ iter()

template<typename Owner, rb_node Owner::* member>
auto lib::rb_root_cached::iter ( ) const->typed_range< Owner, member >
inlinenodiscardexportnoexcept

Get a typed iterable range over the tree.

Usage: for (auto& vma : tree.iter<vm_area, &vm_area::rb_link>()) { ... }


The documentation for this struct was generated from the following file: