LLVM: llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits (original) (raw)

#include "[llvm/ADT/IntervalMap.h](IntervalMap%5F8h%5Fsource.html)"

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 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 Attributes inherited from llvm::IntervalMapImpl::NodeBase< NodeRef, KeyT, N >
NodeRef first [N]
KeyT second [N]
Static Public Attributes inherited from llvm::IntervalMapImpl::NodeBase< NodeRef, KeyT, N >
static constexpr unsigned Capacity

template<typename KeyT, typename ValT, unsigned N, typename Traits>
class llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >

Definition at line 704 of file IntervalMap.h.

findFrom()

findFrom - Find the first subtree after i that may contain x.

Parameters

i Starting index for the search.
Size Number of elements in node.
x Key to search for.

Returns

First index with !stopLess(key[i], x), or size. This is the first subtree that can possibly contain x.

Definition at line 718 of file IntervalMap.h.

insert()

insert - Insert a new (subtree, stop) pair.

Parameters

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 753 of file IntervalMap.h.

safeFind()

safeFind - Find a subtree that is known to exist.

This is the same as findFrom except is it assumed that x is in range.

Parameters

i Starting index for the search.
x Key to search for.

Returns

First index with !stopLess(key[i], x), never size. This is the first subtree that can possibly contain x.

Definition at line 732 of file IntervalMap.h.

safeLookup()

safeLookup - Get the subtree containing x, Assuming that x is in range.

Parameters

Returns

Subtree containing x

Definition at line 744 of file IntervalMap.h.

stop() [1/2]

stop() [2/2]

subtree() [1/2]

subtree() [2/2]


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