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: