LLVM 20.0.0git
|
#include "llvm/ADT/IntervalMap.h"
Public Member Functions | |
const KeyT & | stop (unsigned i) const |
const NodeRef & | subtree (unsigned i) const |
KeyT & | stop (unsigned i) |
NodeRef & | subtree (unsigned i) |
unsigned | findFrom (unsigned i, unsigned Size, KeyT x) const |
findFrom - Find the first subtree after i that may contain x. | |
unsigned | safeFind (unsigned i, KeyT x) const |
safeFind - Find a subtree that is known to exist. | |
NodeRef | safeLookup (KeyT x) const |
safeLookup - Get the subtree containing x, Assuming that x is in range. | |
void | insert (unsigned i, unsigned Size, NodeRef Node, KeyT Stop) |
insert - Insert a new (subtree, stop) pair. | |
Public Member Functions inherited from llvm::IntervalMapImpl::NodeBase< NodeRef, KeyT, N > | |
void | copy (const NodeBase< NodeRef, KeyT, M > &Other, unsigned i, unsigned j, unsigned Count) |
copy - Copy elements from another node. | |
void | moveLeft (unsigned i, unsigned j, unsigned Count) |
moveLeft - Move elements to the left. | |
void | moveRight (unsigned i, unsigned j, unsigned Count) |
moveRight - Move elements to the right. | |
void | erase (unsigned i, unsigned j, unsigned Size) |
erase - Erase elements [i;j). | |
void | erase (unsigned i, unsigned Size) |
erase - Erase element at i. | |
void | shift (unsigned i, unsigned Size) |
shift - Shift elements [i;size) 1 position to the right. | |
void | transferToLeftSib (unsigned Size, NodeBase &Sib, unsigned SSize, unsigned Count) |
transferToLeftSib - Transfer elements to a left sibling node. | |
void | transferToRightSib (unsigned Size, NodeBase &Sib, unsigned SSize, unsigned Count) |
transferToRightSib - Transfer elements to a right sibling node. | |
int | adjustFromLeftSib (unsigned Size, NodeBase &Sib, unsigned SSize, int Add) |
adjustFromLeftSib - Adjust the number if elements in this node by moving elements to or from a left sibling node. | |
Additional Inherited Members | |
Public Types inherited from llvm::IntervalMapImpl::NodeBase< NodeRef, KeyT, N > | |
enum | |
Public Attributes inherited from llvm::IntervalMapImpl::NodeBase< NodeRef, KeyT, N > | |
NodeRef | first [N] |
KeyT | second [N] |
Definition at line 703 of file IntervalMap.h.
|
inline |
findFrom - Find the first subtree after i that may contain x.
i | Starting index for the search. |
Size | Number of elements in node. |
x | Key to search for. |
Definition at line 717 of file IntervalMap.h.
References assert(), N, Size, and llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::stop().
|
inline |
insert - Insert a new (subtree, stop) pair.
i | Insert position, following entries will be shifted. |
Size | Number of elements in node. |
Node | Subtree to insert. |
Stop | Last key in subtree. |
Definition at line 752 of file IntervalMap.h.
References assert(), N, llvm::IntervalMapImpl::NodeBase< NodeRef, KeyT, N >::shift(), Size, llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::stop(), and llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::subtree().
|
inline |
safeFind - Find a subtree that is known to exist.
This is the same as findFrom except is it assumed that x is in range.
i | Starting index for the search. |
x | Key to search for. |
Definition at line 731 of file IntervalMap.h.
References assert(), N, and llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::stop().
Referenced by llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::safeLookup().
|
inline |
safeLookup - Get the subtree containing x, Assuming that x is in range.
x | Key to search for. |
Definition at line 743 of file IntervalMap.h.
References llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::safeFind(), and llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::subtree().
Definition at line 708 of file IntervalMap.h.
References llvm::IntervalMapImpl::NodeBase< NodeRef, KeyT, N >::second.
|
inline |
Definition at line 705 of file IntervalMap.h.
References llvm::IntervalMapImpl::NodeBase< NodeRef, KeyT, N >::second.
Referenced by llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::findFrom(), llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::insert(), llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::safeFind(), llvm::IntervalMap< KeyT, ValT, N, Traits >::stop(), and llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::treeAdvanceTo().
Definition at line 709 of file IntervalMap.h.
References llvm::IntervalMapImpl::NodeBase< NodeRef, KeyT, N >::first.
|
inline |
Definition at line 706 of file IntervalMap.h.
References llvm::IntervalMapImpl::NodeBase< NodeRef, KeyT, N >::first.
Referenced by llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::insert(), and llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::safeLookup().