/// <summary>Make an empty path.</summary> /// <param name="tree">Target of path.</param> internal TreePath(BPlusTreeDictionary <TKey, TValue> tree) { indexStack = new List <int> (); nodeStack = new List <Node> (); IsFound = false; Push(tree.root, 0); }
/// <summary>Make a path to leftmost branch or leaf at the given level.</summary> /// <param name="tree">Target of path.</param> /// <param name="level">Level of node to seek where root is level 0.</param> /// <remarks>Used only for diagnostics.</remarks> internal TreePath(BPlusTreeDictionary <TKey, TValue> tree, int level) : this(tree) { Node node = TopNode; for (; ;) { if (level <= 0) { break; } node = ((InternalNode)node).GetChild(0); Push(node, 0); --level; } }