LLVM 20.0.0git
|
#include "llvm/ADT/IntervalMap.h"
Public Member Functions | |
iterator ()=default | |
iterator - Create null iterator. | |
void | setStart (KeyT a) |
setStart - Move the start of the current interval. | |
void | setStop (KeyT b) |
setStop - Move the end of the current interval. | |
void | setValue (ValT x) |
setValue - Change the mapped value of the current interval. | |
void | setStartUnchecked (KeyT a) |
setStartUnchecked - Move the start of the current interval without checking for coalescing or overlaps. | |
void | setStopUnchecked (KeyT b) |
setStopUnchecked - Move the end of the current interval without checking for coalescing or overlaps. | |
void | setValueUnchecked (ValT x) |
setValueUnchecked - Change the mapped value of the current interval without checking for coalescing. | |
void | insert (KeyT a, KeyT b, ValT y) |
insert - Insert mapping [a;b] -> y before the current position. | |
void | erase () |
erase - Erase the current interval. | |
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. | |
void | setMap (const IntervalMap &m) |
setMap - Change the map iterated over. | |
bool | valid () const |
valid - Return true if the current position is valid, false for end(). | |
bool | atBegin () const |
atBegin - Return true if the current position is the first map entry. | |
const KeyT & | start () const |
start - Return the beginning of the current interval. | |
const KeyT & | stop () const |
stop - Return the end of the current interval. | |
const ValT & | value () const |
value - Return the mapped value at the current interval. | |
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. | |
void | goToEnd () |
goToEnd - Move beyond the last interval in map. | |
const_iterator & | operator++ () |
preincrement - Move to the next interval. | |
const_iterator | operator++ (int) |
postincrement - Don't do that! | |
const_iterator & | operator-- () |
predecrement - Move to the previous interval. | |
const_iterator | operator-- (int) |
postdecrement - Don't do that! | |
void | find (KeyT x) |
find - Move to the first interval with stop >= x, or end(). | |
void | advanceTo (KeyT x) |
advanceTo - Move to the first interval with stop >= x, or end(). | |
Friends | |
class | IntervalMap |
Additional Inherited Members | |
Public Types inherited from llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator | |
using | iterator_category = std::bidirectional_iterator_tag |
using | value_type = ValT |
using | difference_type = std::ptrdiff_t |
using | pointer = value_type * |
using | reference = value_type & |
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. | |
void | treeFind (KeyT x) |
treeFind - Find in a branched tree. | |
void | treeAdvanceTo (KeyT x) |
treeAdvanceTo - Find position after the current one. | |
KeyT & | unsafeStart () const |
unsafeStart - Writable access to start() for iterator. | |
KeyT & | unsafeStop () const |
unsafeStop - Writable access to stop() for iterator. | |
ValT & | unsafeValue () const |
unsafeValue - Writable access to value() for iterator. | |
Protected Attributes inherited from llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator | |
IntervalMap * | map = nullptr |
IntervalMapImpl::Path | path |
Definition at line 1572 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 1921 of file IntervalMap.h.
References assert(), llvm::IntervalMapImpl::NodeBase< T1, T2, N >::erase(), and P.
insert - Insert mapping [a;b] -> y before the current position.
Definition at line 1832 of file IntervalMap.h.
References llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::insertFrom(), llvm::Offset, P, and Size.
|
inline |
Definition at line 1635 of file IntervalMap.h.
References llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::operator++().
|
inline |
Definition at line 1640 of file IntervalMap.h.
|
inline |
Definition at line 1646 of file IntervalMap.h.
References llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::operator--().
|
inline |
Definition at line 1651 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 1733 of file IntervalMap.h.
References assert(), llvm::erase(), and value.
|
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 1611 of file IntervalMap.h.
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 1749 of file IntervalMap.h.
References assert(), llvm::erase(), and value.
|
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 1617 of file IntervalMap.h.
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 1764 of file IntervalMap.h.
References llvm::erase().
|
inline |
setValueUnchecked - Change the mapped value of the current interval without checking for coalescing.
x | New value. |
Definition at line 1627 of file IntervalMap.h.
|
friend |
Definition at line 1573 of file IntervalMap.h.