LLVM: llvm::IntervalMapImpl::NodeBase< T1, T2, N (original) (raw)

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

Public Member Functions
template<unsigned M>
void copy (const NodeBase< T1, T2, 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.
Public Attributes
T1 first [N]
T2 second [N]
Static Public Attributes
static constexpr unsigned Capacity = N

template<typename T1, typename T2, unsigned N>
class llvm::IntervalMapImpl::NodeBase< T1, T2, N >

Definition at line 224 of file IntervalMap.h.

adjustFromLeftSib()

adjustFromLeftSib - Adjust the number if elements in this node by moving elements to or from a left sibling node.

Parameters

Size Number of elements in this.
Sib Right sibling node.
SSize Number of elements in sib.
Add The number of elements to add to this node, possibly < 0.

Returns

Number of elements added to this node, possibly negative.

Definition at line 320 of file IntervalMap.h.

copy()

copy - Copy elements from another node.

Parameters

Other Node elements are copied from.
i Beginning of the source range in other.
j Beginning of the destination range in this.
Count Number of elements to copy.

Definition at line 237 of file IntervalMap.h.

Referenced by llvm::IntervalMapImpl::NodeBase< std::pair< KeyT, KeyT >, ValT, LeafSize >::moveLeft(), llvm::IntervalMapImpl::NodeBase< std::pair< KeyT, KeyT >, ValT, LeafSize >::transferToLeftSib(), and llvm::IntervalMapImpl::NodeBase< std::pair< KeyT, KeyT >, ValT, LeafSize >::transferToRightSib().

erase() [1/2]

erase - Erase elements [i;j).

Parameters

i Beginning of the range to erase.
j End of the range. (Exclusive).
Size Number of elements in node.

Definition at line 273 of file IntervalMap.h.

Referenced by llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::erase(), llvm::IntervalMapImpl::NodeBase< std::pair< KeyT, KeyT >, ValT, LeafSize >::erase(), and llvm::IntervalMapImpl::NodeBase< std::pair< KeyT, KeyT >, ValT, LeafSize >::transferToLeftSib().

erase() [2/2]

erase - Erase element at i.

Parameters

i Index of element to erase.
Size Number of elements in node.

Definition at line 280 of file IntervalMap.h.

moveLeft()

moveRight()

shift()

shift - Shift elements [i;size) 1 position to the right.

Parameters

i Beginning of the range to move.
Size Number of elements in node.

Definition at line 287 of file IntervalMap.h.

transferToLeftSib()

transferToRightSib()

Capacity

first

second


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