LLVM 22.0.0git
|
#include "llvm/ADT/IntervalMap.h"
Classes | |
class | const_iterator |
class | iterator |
Public Types | |
using | Allocator = typename Sizer::Allocator |
using | KeyType = KeyT |
using | ValueType = ValT |
using | KeyTraits = Traits |
Public Member Functions | |
IntervalMap (Allocator &a) | |
~IntervalMap () | |
bool | empty () const |
empty - Return true when no intervals are mapped. | |
KeyT | start () const |
start - Return the smallest mapped key in a non-empty map. | |
KeyT | stop () const |
stop - Return the largest mapped key in a non-empty map. | |
ValT | lookup (KeyT x, ValT NotFound=ValT()) const |
lookup - Return the mapped value at x or NotFound. | |
void | insert (KeyT a, KeyT b, ValT y) |
insert - Add a mapping of [a;b] to y, coalesce with adjacent intervals. | |
void | clear () |
clear - Remove all entries. | |
const_iterator | begin () const |
iterator | begin () |
const_iterator | end () const |
iterator | end () |
const_iterator | find (KeyT x) const |
find - Return an iterator pointing to the first interval ending at or after x, or end(). | |
iterator | find (KeyT x) |
bool | overlaps (KeyT a, KeyT b) const |
overlaps(a, b) - Return true if the intervals in this map overlap with the interval [a;b]. | |
IntervalMap (IntervalMap const &RHS) | |
IntervalMap & | operator= (IntervalMap const &RHS) |
IntervalMap (IntervalMap &&RHS) | |
IntervalMap & | operator= (IntervalMap &&RHS) |
Friends | |
class | const_iterator |
class | iterator |
Definition at line 937 of file IntervalMap.h.
using llvm::IntervalMap< KeyT, ValT, N, Traits >::Allocator = typename Sizer::Allocator |
Definition at line 963 of file IntervalMap.h.
using llvm::IntervalMap< KeyT, ValT, N, Traits >::KeyTraits = Traits |
Definition at line 966 of file IntervalMap.h.
using llvm::IntervalMap< KeyT, ValT, N, Traits >::KeyType = KeyT |
Definition at line 964 of file IntervalMap.h.
using llvm::IntervalMap< KeyT, ValT, N, Traits >::ValueType = ValT |
Definition at line 965 of file IntervalMap.h.
|
inlineexplicit |
Definition at line 1042 of file IntervalMap.h.
|
inline |
NOTE: The moved-from or copied-from object's allocator needs to have a lifetime equal to or exceeding the moved-to or copied-to object to avoid undefined behaviour.
Definition at line 1050 of file IntervalMap.h.
|
inline |
Definition at line 1064 of file IntervalMap.h.
|
inline |
Definition at line 1096 of file IntervalMap.h.
|
inline |
Definition at line 1153 of file IntervalMap.h.
|
inline |
Definition at line 1147 of file IntervalMap.h.
Referenced by tryToShortenBegin().
void llvm::IntervalMap< KeyT, ValT, N, Traits >::clear | ( | ) |
clear - Remove all entries.
Definition at line 1330 of file IntervalMap.h.
|
inline |
empty - Return true when no intervals are mapped.
Definition at line 1102 of file IntervalMap.h.
Referenced by tryToShortenBegin(), and tryToShortenEnd().
|
inline |
Definition at line 1165 of file IntervalMap.h.
|
inline |
Definition at line 1159 of file IntervalMap.h.
Referenced by tryToShortenEnd().
|
inline |
Definition at line 1179 of file IntervalMap.h.
|
inline |
find - Return an iterator pointing to the first interval ending at or after x, or end().
Definition at line 1173 of file IntervalMap.h.
|
inline |
insert - Add a mapping of [a;b] to y, coalesce with adjacent intervals.
It is assumed that no key in the interval is mapped to another value, but overlapping intervals already mapped to y will be coalesced.
Definition at line 1130 of file IntervalMap.h.
|
inline |
lookup - Return the mapped value at x or NotFound.
Definition at line 1120 of file IntervalMap.h.
|
inline |
Definition at line 1070 of file IntervalMap.h.
|
inline |
Definition at line 1056 of file IntervalMap.h.
|
inline |
overlaps(a, b) - Return true if the intervals in this map overlap with the interval [a;b].
Definition at line 1187 of file IntervalMap.h.
|
inline |
start - Return the smallest mapped key in a non-empty map.
Definition at line 1107 of file IntervalMap.h.
Referenced by llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setStart(), llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setStop(), and llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setValue().
|
inline |
stop - Return the largest mapped key in a non-empty map.
Definition at line 1113 of file IntervalMap.h.
Referenced by llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setStart(), llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setStop(), and llvm::IntervalMap< KeyT, ValT, N, Traits >::iterator::setValue().
|
friend |
Definition at line 1144 of file IntervalMap.h.
|
friend |
Definition at line 1145 of file IntervalMap.h.
RootBranchData llvm::IntervalMap< KeyT, ValT, N, Traits >::branchData |
Definition at line 972 of file IntervalMap.h.
RootLeaf llvm::IntervalMap< KeyT, ValT, N, Traits >::leaf |
Definition at line 971 of file IntervalMap.h.
Referenced by llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::operator==().