template <typename NodeType>

struct PathTracker

Defined at line 152 of file ../../zircon/kernel/lib/btree/include/lib/btree_util.h

Used to remember a path to a node. This allows for efficient upwards traversal, as parent

pointers are not otherwise stored in the nodes.

This implementation has a fixed maximum depth (kMaxPath). If an operation would exceed this

depth, it must be detected and failed before it occurs.

Public Members

uint32_t nodes
iterator_base<NodeType>[8] path
static const uint32_t kMaxPath

Public Methods

void push (iterator_base<NodeType> location)

Defined at line 159 of file ../../zircon/kernel/lib/btree/include/lib/btree_util.h

iterator_base<NodeType> pop ()

Defined at line 166 of file ../../zircon/kernel/lib/btree/include/lib/btree_util.h

bool is_full ()

Defined at line 172 of file ../../zircon/kernel/lib/btree/include/lib/btree_util.h

void reset_path ()

Resets back to the start of the path, allowing it to be pop'ed again.

Defined at line 175 of file ../../zircon/kernel/lib/btree/include/lib/btree_util.h

void PathTracker<NodeType> ()

Defined at line 177 of file ../../zircon/kernel/lib/btree/include/lib/btree_util.h