| 
    LLVM 22.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::const_iterator< MemoryLocation > | |
| SmallVectorImpl (const SmallVectorImpl &)=delete | |
| void | clear () | 
| void | resize (size_type N) | 
| void | resize_for_overwrite (size_type N) | 
| Like resize, but T is POD, the new values won't be initialized.   | |
| void | truncate (size_type N) | 
Like resize, but requires that N is less than size().   | |
| void | resize (size_type N, ValueParamT NV) | 
| void | reserve (size_type N) | 
| void | pop_back_n (size_type NumItems) | 
| MemoryLocation | pop_back_val () | 
| void | swap (SmallVectorImpl &RHS) | 
| void | append (ItTy in_start, ItTy in_end) | 
| Add the specified range to the end of the SmallVector.   | |
| void | append (size_type NumInputs, ValueParamT Elt) | 
Append NumInputs copies of Elt to the end.   | |
| void | append (std::initializer_list< MemoryLocation > IL) | 
| void | append (const SmallVectorImpl &RHS) | 
| void | assign (size_type NumElts, ValueParamT Elt) | 
| void | assign (ItTy in_start, ItTy in_end) | 
| void | assign (std::initializer_list< MemoryLocation > IL) | 
| void | assign (const SmallVectorImpl &RHS) | 
| void | assign (ArrayRef< U > AR) | 
| iterator | erase (const_iterator CI) | 
| iterator | erase (const_iterator CS, const_iterator CE) | 
| iterator | insert (iterator I, MemoryLocation &&Elt) | 
| iterator | insert (iterator I, const MemoryLocation &Elt) | 
| iterator | insert (iterator I, size_type NumToInsert, ValueParamT Elt) | 
| iterator | insert (iterator I, ItTy From, ItTy To) | 
| void | insert (iterator I, std::initializer_list< MemoryLocation > IL) | 
| reference | emplace_back (ArgTypes &&... Args) | 
| SmallVectorImpl & | operator= (const SmallVectorImpl &RHS) | 
| SmallVectorImpl & | operator= (SmallVectorImpl &&RHS) | 
| bool | operator== (const SmallVectorImpl &RHS) const | 
| bool | operator!= (const SmallVectorImpl &RHS) const | 
| bool | operator< (const SmallVectorImpl &RHS) const | 
| bool | operator> (const SmallVectorImpl &RHS) const | 
| bool | operator<= (const SmallVectorImpl &RHS) const | 
| bool | operator>= (const SmallVectorImpl &RHS) const | 
| Public Member Functions inherited from llvm::SmallVectorTemplateBase< T, bool > | |
| void | push_back (const T &Elt) | 
| void | push_back (T &&Elt) | 
| void | pop_back () | 
| Public Member Functions inherited from llvm::SmallVectorTemplateCommon< T, typename > | |
| iterator | begin () | 
| const_iterator | begin () const | 
| iterator | end () | 
| const_iterator | end () const | 
| reverse_iterator | rbegin () | 
| const_reverse_iterator | rbegin () const | 
| reverse_iterator | rend () | 
| const_reverse_iterator | rend () const | 
| size_type | size_in_bytes () const | 
| size_type | max_size () const | 
| size_t | capacity_in_bytes () const | 
| pointer | data () | 
| Return a pointer to the vector's buffer, even if empty().   | |
| const_pointer | data () const | 
| Return a pointer to the vector's buffer, even if empty().   | |
| reference | operator[] (size_type idx) | 
| const_reference | operator[] (size_type idx) const | 
| reference | front () | 
| const_reference | front () const | 
| reference | back () | 
| const_reference | back () const | 
| size_t | capacity () const | 
| bool | empty () const | 
| size_t | size () const | 
| Public Member Functions inherited from llvm::SmallVectorBase< SmallVectorSizeType< T > > | |
| size_t | size () const | 
| size_t | capacity () const | 
| bool | empty () const | 
Friends | |
| class | IntervalMap | 
Additional Inherited Members | |
| Public Types inherited from llvm::const_iterator< MemoryLocation > | |
| using | iterator | 
| using | const_iterator | 
| using | reference | 
| using | size_type | 
| Public Types inherited from llvm::SmallVectorTemplateCommon< T, typename > | |
| using | size_type = size_t | 
| using | difference_type = ptrdiff_t | 
| using | value_type = T | 
| using | iterator = T * | 
| using | const_iterator = const T * | 
| using | const_reverse_iterator = std::reverse_iterator<const_iterator> | 
| using | reverse_iterator = std::reverse_iterator<iterator> | 
| using | reference = T & | 
| using | const_reference = const T & | 
| using | pointer = T * | 
| using | const_pointer = const T * | 
| Protected Types inherited from llvm::const_iterator< MemoryLocation > | |
| using | ValueParamT | 
| Protected Types inherited from llvm::SmallVectorTemplateBase< T, bool > | |
| using | ValueParamT = const T & | 
| Protected Member Functions inherited from llvm::const_iterator< MemoryLocation > | |
| SmallVectorImpl (unsigned N) | |
| void | assignRemote (SmallVectorImpl &&RHS) | 
| ~SmallVectorImpl () | |
| Protected Member Functions inherited from llvm::SmallVectorTemplateBase< T, bool > | |
| SmallVectorTemplateBase (size_t Size) | |
| void | grow (size_t MinSize=0) | 
| Grow the allocated memory (without initializing new elements), doubling the size of the allocated memory.   | |
| T * | mallocForGrow (size_t MinSize, size_t &NewCapacity) | 
Create a new allocation big enough for MinSize and pass back its size in NewCapacity.   | |
| void | moveElementsForGrow (T *NewElts) | 
Move existing elements over to the new allocation NewElts, the middle section of grow().   | |
| void | takeAllocationForGrow (T *NewElts, size_t NewCapacity) | 
| Transfer ownership of the allocation, finishing up grow().   | |
| const T * | reserveForParamAndGetAddress (const T &Elt, size_t N=1) | 
| Reserve enough space to add one element, and return the updated element pointer in case it was a reference to the storage.   | |
| T * | reserveForParamAndGetAddress (T &Elt, size_t N=1) | 
| Reserve enough space to add one element, and return the updated element pointer in case it was a reference to the storage.   | |
| void | growAndAssign (size_t NumElts, const T &Elt) | 
| template<typename... ArgTypes> | |
| T & | growAndEmplaceBack (ArgTypes &&... Args) | 
| Protected Member Functions inherited from llvm::SmallVectorTemplateCommon< T, typename > | |
| void * | getFirstEl () const | 
| Find the address of the first element.   | |
| SmallVectorTemplateCommon (size_t Size) | |
| void | grow_pod (size_t MinSize, size_t TSize) | 
| bool | isSmall () const | 
| Return true if this is a smallvector which has not had dynamic memory allocated for it.   | |
| void | resetToSmall () | 
| Put this vector in a state of being small.   | |
| bool | isReferenceToRange (const void *V, const void *First, const void *Last) const | 
| Return true if V is an internal reference to the given range.   | |
| bool | isReferenceToStorage (const void *V) const | 
| Return true if V is an internal reference to this vector.   | |
| bool | isRangeInStorage (const void *First, const void *Last) const | 
| Return true if First and Last form a valid (possibly empty) range in this vector's storage.   | |
| bool | isSafeToReferenceAfterResize (const void *Elt, size_t NewSize) | 
| Return true unless Elt will be invalidated by resizing the vector to NewSize.   | |
| void | assertSafeToReferenceAfterResize (const void *Elt, size_t NewSize) | 
| Check whether Elt will be invalidated by resizing the vector to NewSize.   | |
| void | assertSafeToAdd (const void *Elt, size_t N=1) | 
| Check whether Elt will be invalidated by increasing the size of the vector by N.   | |
| template<class ItTy> | |
| void | assertSafeToReferenceAfterClear (ItTy From, ItTy To) | 
| Check whether any part of the range will be invalidated by clearing.   | |
| template<class ItTy> | |
| void | assertSafeToAddRange (ItTy From, ItTy To) | 
| Check whether any part of the range will be invalidated by growing.   | |
| Protected Member Functions inherited from llvm::SmallVectorBase< SmallVectorSizeType< T > > | |
| SmallVectorBase ()=delete | |
| SmallVectorBase (void *FirstEl, size_t TotalCapacity) | |
| LLVM_ABI void * | mallocForGrow (void *FirstEl, size_t MinSize, size_t TSize, size_t &NewCapacity) | 
| This is a helper for grow() that's out of line to reduce code duplication.   | |
| LLVM_ABI void | grow_pod (void *FirstEl, size_t MinSize, size_t TSize) | 
| This is an implementation of the grow() method which only works on POD-like data types and is out of line to reduce code duplication.   | |
| void | set_size (size_t N) | 
Set the array size to N, which the current array must have enough capacity for.   | |
| void | set_allocation_range (void *Begin, size_t N) | 
Set the array data pointer to Begin and capacity to N.   | |
| Static Protected Member Functions inherited from llvm::SmallVectorTemplateBase< T, bool > | |
| static void | destroy_range (T *S, T *E) | 
| template<typename It1, typename It2> | |
| static void | uninitialized_move (It1 I, It1 E, It2 Dest) | 
| Move the range [I, E) into the uninitialized memory starting with "Dest", constructing elements as needed.   | |
| template<typename It1, typename It2> | |
| static void | uninitialized_copy (It1 I, It1 E, It2 Dest) | 
| Copy the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements as needed.   | |
| static T && | forward_value_param (T &&V) | 
| static const T & | forward_value_param (const T &V) | 
| Static Protected Member Functions inherited from llvm::SmallVectorTemplateCommon< T, typename > | |
| template<class U> | |
| static const T * | reserveForParamAndGetAddressImpl (U *This, const T &Elt, size_t N) | 
| Reserve enough space to add one element, and return the updated element pointer in case it was a reference to the storage.   | |
| Static Protected Member Functions inherited from llvm::SmallVectorBase< SmallVectorSizeType< T > > | |
| static constexpr size_t | SizeTypeMax () | 
| The maximum value of the Size_T used.   | |
| Protected Attributes inherited from llvm::SmallVectorBase< SmallVectorSizeType< T > > | |
| void * | BeginX | 
| SmallVectorSizeType< T > | Size | 
| SmallVectorSizeType< T > | Capacity | 
| Static Protected Attributes inherited from llvm::SmallVectorTemplateBase< T, bool > | |
| static constexpr bool | TakesParamByValue = false | 
Definition at line 1573 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 1922 of file IntervalMap.h.
References assert(), llvm::IntervalMapImpl::NodeBase< T1, T2, N >::erase(), IntervalMap, and P.
insert - Insert mapping [a;b] -> y before the current position.
Definition at line 1833 of file IntervalMap.h.
References llvm::IntervalMapImpl::NodeBase< std::pair< KeyT, KeyT >, ValT, N >::Capacity, llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::insertFrom(), IntervalMap, llvm::Offset, P, and llvm::SmallVectorBase< SmallVectorSizeType< T > >::Size.
      
  | 
  inline | 
Definition at line 1636 of file IntervalMap.h.
References llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::operator++().
Referenced by operator++().
      
  | 
  inline | 
Definition at line 1641 of file IntervalMap.h.
References operator++().
      
  | 
  inline | 
Definition at line 1647 of file IntervalMap.h.
References llvm::IntervalMap< KeyT, ValT, N, Traits >::const_iterator::operator--().
Referenced by operator--().
      
  | 
  inline | 
Definition at line 1652 of file IntervalMap.h.
References operator--().
| 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 1734 of file IntervalMap.h.
References assert(), llvm::erase(), setStartUnchecked(), llvm::IntervalMap< KeyT, ValT, N, Traits >::start(), and llvm::IntervalMap< KeyT, ValT, N, Traits >::stop().
      
  | 
  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 1612 of file IntervalMap.h.
Referenced by setStart(), setStop(), and setValue().
| 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 1750 of file IntervalMap.h.
References assert(), llvm::erase(), setStartUnchecked(), setStopUnchecked(), llvm::IntervalMap< KeyT, ValT, N, Traits >::start(), and llvm::IntervalMap< KeyT, ValT, N, Traits >::stop().
      
  | 
  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 1618 of file IntervalMap.h.
Referenced by setStop().
| 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 1765 of file IntervalMap.h.
References llvm::erase(), setStartUnchecked(), setValueUnchecked(), llvm::IntervalMap< KeyT, ValT, N, Traits >::start(), and llvm::IntervalMap< KeyT, ValT, N, Traits >::stop().
      
  | 
  inline | 
setValueUnchecked - Change the mapped value of the current interval without checking for coalescing.
| x | New value. | 
Definition at line 1628 of file IntervalMap.h.
Referenced by setValue().
      
  | 
  friend | 
Definition at line 1574 of file IntervalMap.h.
References IntervalMap.
Referenced by erase(), insert(), and IntervalMap.