LLVM: llvm::IntervalMap< KeyT, ValT, N, Traits (original) (raw)
#include "[llvm/ADT/IntervalMap.h](IntervalMap%5F8h%5Fsource.html)"
| 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 |
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
class llvm::IntervalMap< KeyT, ValT, N, Traits >
Definition at line 937 of file IntervalMap.h.
◆ Allocator
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ KeyTraits
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ KeyType
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ ValueType
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ IntervalMap() [2/3]
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
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.
◆ IntervalMap() [3/3]
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ ~IntervalMap()
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ begin() [1/2]
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ begin() [2/2]
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ clear()
◆ empty()
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ end() [1/2]
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ end() [2/2]
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ find() [1/2]
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ find() [2/2]
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
find - Return an iterator pointing to the first interval ending at or after x, or end().
Definition at line 1173 of file IntervalMap.h.
◆ insert()
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
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.
◆ lookup()
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
lookup - Return the mapped value at x or NotFound.
Definition at line 1120 of file IntervalMap.h.
◆ operator=() [1/2]
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ operator=() [2/2]
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ overlaps()
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
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.
◆ start()
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
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().
◆ stop()
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
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().
◆ const_iterator
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
| friend class const_iterator | friend |
|---|
◆ iterator
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ branchData
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
◆ leaf
template<typename KeyT, typename ValT, unsigned N = IntervalMapImpl::NodeSizer<KeyT, ValT>::LeafSize, typename Traits = IntervalMapInfo>
The documentation for this class was generated from the following file:
- include/llvm/ADT/IntervalMap.h