LLVM
8.0.1
|
#include "llvm/ADT/IntervalMap.h"
Public Member Functions | |
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... | |
Protected Member Functions | |
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 | |
IntervalMap * | map = nullptr |
IntervalMapImpl::Path | path |
Friends | |
class | IntervalMap |
Definition at line 1297 of file IntervalMap.h.
|
inlineexplicitprotected |
Definition at line 1310 of file IntervalMap.h.
|
default |
const_iterator - Create an iterator that isn't pointing anywhere.
|
inline |
advanceTo - Move to the first interval with stop >= x, or end().
The search is started from the current position, and no earlier positions can be found. This is much faster than find() for small moves.
Definition at line 1443 of file IntervalMap.h.
References llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::findFrom(), llvm::IntervalMapImpl::Path::leafOffset(), and llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::pathFillFind().
Referenced by llvm::LiveIntervalUnion::extract(), llvm::LiveIntervalUnion::unify(), and llvm::LiveDebugVariables::~LiveDebugVariables().
|
inline |
atBegin - Return true if the current position is the first map entry.
Definition at line 1362 of file IntervalMap.h.
References llvm::IntervalMapImpl::Path::atBegin().
|
inlineprotected |
Definition at line 1313 of file IntervalMap.h.
References assert().
|
inline |
find - Move to the first interval with stop >= x, or end().
This is a full search from the root, the current position is ignored.
Definition at line 1433 of file IntervalMap.h.
References llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::findFrom().
Referenced by llvm::LiveDebugVariables::~LiveDebugVariables().
|
inline |
goToBegin - Move to the first interval in map.
Definition at line 1389 of file IntervalMap.h.
References llvm::IntervalMapImpl::Path::fillLeft().
Referenced by llvm::LiveDebugVariables::~LiveDebugVariables().
|
inline |
goToEnd - Move beyond the last interval in map.
Definition at line 1396 of file IntervalMap.h.
|
inline |
Definition at line 1384 of file IntervalMap.h.
References llvm::operator==().
|
inline |
Definition at line 1373 of file IntervalMap.h.
|
inline |
preincrement - move to the next interval.
Definition at line 1401 of file IntervalMap.h.
References assert(), llvm::IntervalMapImpl::Path::leafOffset(), llvm::IntervalMapImpl::Path::leafSize(), and llvm::IntervalMapImpl::Path::moveRight().
|
inline |
postincrement - Dont do that!
Definition at line 1409 of file IntervalMap.h.
|
inline |
predecrement - move to the previous interval.
Definition at line 1416 of file IntervalMap.h.
References llvm::IntervalMapImpl::Path::leafOffset(), and llvm::IntervalMapImpl::Path::moveLeft().
|
inline |
postdecrement - Dont do that!
Definition at line 1425 of file IntervalMap.h.
|
inline |
Definition at line 1375 of file IntervalMap.h.
References assert(), llvm::IntervalMapImpl::Path::leafOffset(), llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::map, llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::path, and llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::valid().
|
protected |
pathFillFind - Complete path by searching for x.
x | Key to search for. |
Definition at line 1458 of file IntervalMap.h.
References llvm::IntervalMapImpl::NodeRef::get(), llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::safeFind(), llvm::IntervalMapImpl::NodeRef::subtree(), and llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::treeFind().
Referenced by llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::advanceTo().
|
inline |
setMap - Change the map iterated over.
This call must be followed by a call to goToBegin(), goToEnd(), or find()
Definition at line 1356 of file IntervalMap.h.
Referenced by llvm::LiveDebugVariables::~LiveDebugVariables().
|
inlineprotected |
Definition at line 1318 of file IntervalMap.h.
References llvm::IntervalMapImpl::Path::setRoot().
|
inline |
start - Return the beginning of the current interval.
Definition at line 1365 of file IntervalMap.h.
Referenced by llvm::LiveIntervalUnion::extract(), getNumAllocatableRegsForConstraints(), and llvm::LiveDebugVariables::~LiveDebugVariables().
|
inline |
stop - Return the end of the current interval.
Definition at line 1368 of file IntervalMap.h.
Referenced by getNumAllocatableRegsForConstraints(), and llvm::LiveDebugVariables::~LiveDebugVariables().
|
protected |
treeAdvanceTo - Find position after the current one.
x | Key to search for. |
Definition at line 1482 of file IntervalMap.h.
References llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::stop(), and llvm::IntervalMapImpl::BranchNode< KeyT, ValT, N, Traits >::stop().
Referenced by llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::treeFind().
|
protected |
treeFind - Find in a branched tree.
x | Key to search for. |
Definition at line 1472 of file IntervalMap.h.
References llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::treeAdvanceTo().
Referenced by llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::pathFillFind().
|
inlineprotected |
unsafeStart - Writable access to start() for iterator.
Definition at line 1330 of file IntervalMap.h.
References assert(), llvm::IntervalMapImpl::Path::leaf(), llvm::IntervalMapImpl::Path::leafOffset(), and llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::start().
|
inlineprotected |
unsafeStop - Writable access to stop() for iterator.
Definition at line 1337 of file IntervalMap.h.
References assert(), llvm::IntervalMapImpl::Path::leaf(), llvm::IntervalMapImpl::Path::leafOffset(), and llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::stop().
|
inlineprotected |
unsafeValue - Writable access to value() for iterator.
Definition at line 1344 of file IntervalMap.h.
References assert(), llvm::IntervalMapImpl::Path::leaf(), llvm::IntervalMapImpl::Path::leafOffset(), and llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::value().
|
inline |
valid - Return true if the current position is valid, false for end().
Definition at line 1359 of file IntervalMap.h.
References llvm::IntervalMapImpl::Path::valid().
Referenced by llvm::LiveIntervalUnion::extract(), getNumAllocatableRegsForConstraints(), llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::operator==(), llvm::LiveIntervalUnion::unify(), and llvm::LiveDebugVariables::~LiveDebugVariables().
|
inline |
value - Return the mapped value at the current interval.
Definition at line 1371 of file IntervalMap.h.
Referenced by llvm::LiveIntervalUnion::extract(), getNumAllocatableRegsForConstraints(), and llvm::LiveDebugVariables::~LiveDebugVariables().
|
friend |
Definition at line 1301 of file IntervalMap.h.
|
protected |
Definition at line 1304 of file IntervalMap.h.
Referenced by llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::operator==().
|
protected |
Definition at line 1308 of file IntervalMap.h.
Referenced by llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::operator==().