LLVM
8.0.1
|
#include "llvm/ADT/IntervalMap.h"
Public Member Functions | |
iterator ()=default | |
iterator - Create null iterator. More... | |
void | setStart (KeyT a) |
setStart - Move the start of the current interval. More... | |
void | setStop (KeyT b) |
setStop - Move the end of the current interval. More... | |
void | setValue (ValT x) |
setValue - Change the mapped value of the current interval. More... | |
void | setStartUnchecked (KeyT a) |
setStartUnchecked - Move the start of the current interval without checking for coalescing or overlaps. More... | |
void | setStopUnchecked (KeyT b) |
setStopUnchecked - Move the end of the current interval without checking for coalescing or overlaps. More... | |
void | setValueUnchecked (ValT x) |
setValueUnchecked - Change the mapped value of the current interval without checking for coalescing. More... | |
void | insert (KeyT a, KeyT b, ValT y) |
insert - Insert mapping [a;b] -> y before the current position. More... | |
void | erase () |
erase - Erase the current interval. More... | |
iterator & | operator++ () |
iterator | operator++ (int) |
iterator & | operator-- () |
iterator | operator-- (int) |
Public Member Functions inherited from llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator | |
const_iterator ()=default | |
const_iterator - Create an iterator that isn't pointing anywhere. More... | |
void | setMap (const IntervalMap &m) |
setMap - Change the map iterated over. More... | |
bool | valid () const |
valid - Return true if the current position is valid, false for end(). More... | |
bool | atBegin () const |
atBegin - Return true if the current position is the first map entry. More... | |
const KeyT & | start () const |
start - Return the beginning of the current interval. More... | |
const KeyT & | stop () const |
stop - Return the end of the current interval. More... | |
const ValT & | value () const |
value - Return the mapped value at the current interval. More... | |
const ValT & | operator* () const |
bool | operator== (const const_iterator &RHS) const |
bool | operator!= (const const_iterator &RHS) const |
void | goToBegin () |
goToBegin - Move to the first interval in map. More... | |
void | goToEnd () |
goToEnd - Move beyond the last interval in map. More... | |
const_iterator & | operator++ () |
preincrement - move to the next interval. More... | |
const_iterator | operator++ (int) |
postincrement - Dont do that! More... | |
const_iterator & | operator-- () |
predecrement - move to the previous interval. More... | |
const_iterator | operator-- (int) |
postdecrement - Dont do that! More... | |
void | find (KeyT x) |
find - Move to the first interval with stop >= x, or end(). More... | |
void | advanceTo (KeyT x) |
advanceTo - Move to the first interval with stop >= x, or end(). More... | |
Friends | |
class | IntervalMap |
Additional Inherited Members | |
Protected Member Functions inherited from llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator | |
const_iterator (const IntervalMap &map) | |
bool | branched () const |
void | setRoot (unsigned Offset) |
void | pathFillFind (KeyT x) |
pathFillFind - Complete path by searching for x. More... | |
void | treeFind (KeyT x) |
treeFind - Find in a branched tree. More... | |
void | treeAdvanceTo (KeyT x) |
treeAdvanceTo - Find position after the current one. More... | |
KeyT & | unsafeStart () const |
unsafeStart - Writable access to start() for iterator. More... | |
KeyT & | unsafeStop () const |
unsafeStop - Writable access to stop() for iterator. More... | |
ValT & | unsafeValue () const |
unsafeValue - Writable access to value() for iterator. More... | |
Protected Attributes inherited from llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator | |
IntervalMap * | map = nullptr |
IntervalMapImpl::Path | path |
Definition at line 1521 of file IntervalMap.h.
|
default |
iterator - Create null iterator.
void llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::erase | ( | ) |
erase - Erase the current interval.
erase - erase the current interval and move to the next position.
Definition at line 1871 of file IntervalMap.h.
References llvm::IntervalMapImpl::adjustSiblingSizes(), assert(), llvm::IntervalMapImpl::Path::atBegin(), llvm::IntervalMapImpl::distribute(), llvm::IntervalMap< KeyT, ValT, N, Traits >::empty(), llvm::IntervalMapImpl::NodeBase< T1, T2, N >::erase(), llvm::IntervalMapImpl::Path::leaf(), llvm::IntervalMapImpl::Path::leafOffset(), llvm::IntervalMapImpl::Path::leafSize(), llvm::IntervalMapImpl::Path::moveRight(), llvm::IntervalMapImpl::Path::node(), llvm::IntervalMapImpl::Path::offset(), llvm::IntervalMapImpl::Path::reset(), llvm::IntervalMapImpl::Path::setSize(), llvm::IntervalMapImpl::Path::size(), llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::stop(), llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::stop(), and llvm::IntervalMapImpl::Path::valid().
Referenced by llvm::LiveIntervalUnion::extract(), llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::insert(), and llvm::LiveDebugVariables::~LiveDebugVariables().
void llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::insert | ( | KeyT | a, |
KeyT | b, | ||
ValT | y | ||
) |
insert - Insert mapping [a;b] -> y before the current position.
Definition at line 1782 of file IntervalMap.h.
References assert(), llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::erase(), llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::insertFrom(), llvm::IntervalMapImpl::Path::leafOffset(), llvm::IntervalMapImpl::NodeBase< T1, T2, N >::moveLeft(), llvm::IntervalMapImpl::Path::replaceRoot(), llvm::IntervalMapImpl::Path::setSize(), Size, llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::start(), llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::stop(), and llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::value().
Referenced by llvm::LiveIntervalUnion::unify(), and llvm::LiveDebugVariables::~LiveDebugVariables().
|
inline |
Definition at line 1584 of file IntervalMap.h.
|
inline |
Definition at line 1589 of file IntervalMap.h.
|
inline |
Definition at line 1595 of file IntervalMap.h.
|
inline |
Definition at line 1600 of file IntervalMap.h.
void llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setStart | ( | KeyT | a | ) |
setStart - Move the start of the current interval.
This may cause coalescing with the previous interval.
a | New start key, must not overlap the previous interval. |
Definition at line 1683 of file IntervalMap.h.
References assert(), and llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setStop().
|
inline |
setStartUnchecked - Move the start of the current interval without checking for coalescing or overlaps.
This should only be used when it is known that coalescing is not required.
a | New start key. |
Definition at line 1560 of file IntervalMap.h.
Referenced by llvm::LiveDebugVariables::~LiveDebugVariables().
void llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setStop | ( | KeyT | b | ) |
setStop - Move the end of the current interval.
This may cause coalescing with the following interval.
b | New stop key, must not overlap the following interval. |
Definition at line 1699 of file IntervalMap.h.
References assert(), and llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setValue().
Referenced by llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setStart().
|
inline |
setStopUnchecked - Move the end of the current interval without checking for coalescing or overlaps.
This should only be used when it is known that coalescing is not required.
b | New stop key. |
Definition at line 1566 of file IntervalMap.h.
Referenced by llvm::LiveDebugVariables::~LiveDebugVariables().
void llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setValue | ( | ValT | x | ) |
setValue - Change the mapped value of the current interval.
This may cause coalescing with the previous and following intervals.
x | New value. |
Definition at line 1714 of file IntervalMap.h.
References assert(), llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::insert(), and llvm::IntervalMapImpl::Path::offset().
Referenced by llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setStop(), and llvm::LiveDebugVariables::~LiveDebugVariables().
|
inline |
setValueUnchecked - Change the mapped value of the current interval without checking for coalescing.
x | New value. |
Definition at line 1576 of file IntervalMap.h.
Referenced by llvm::LiveDebugVariables::~LiveDebugVariables().
|
friend |
Definition at line 1522 of file IntervalMap.h.