LLVM: llvm::IntervalTree< PointT, ValueT, DataT (original) (raw)

#include "[llvm/ADT/IntervalTree.h](IntervalTree%5F8h%5Fsource.html)"

Public Types
enum class Sorting { Ascending, Descending }
using PointType = PointT
using ValueType = ValueT
using DataType = DataT
using Allocator = BumpPtrAllocator
using IntervalReferences = SmallVector<const DataType *, 4>
Public Member Functions
IntervalTree (Allocator &NodeAllocator)
~IntervalTree ()
bool empty () const
Return true when no intervals are mapped.
void clear ()
Remove all entries.
void insert (PointType Left, PointType Right, ValueType Value)
Add a mapping of [Left;Right] to Value.
IntervalReferences getContaining (PointType Point) const
Return all the intervals in their natural tree location, that contain the given point.
void print (raw_ostream &OS, bool HexFormat=true)
Print the interval tree.
void create ()
Create the interval tree.
find_iterator find (PointType Point) const
Iterator to start a find operation; it returns find_end() if the tree has not been built.
find_iterator find_end () const
Iterator to end find operation.
Static Public Member Functions
static void sortIntervals (IntervalReferences &IntervalSet, Sorting Sort)
Sort the given intervals using the following sort options: Ascending: return the intervals with the smallest at the front.

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>
class llvm::IntervalTree< PointT, ValueT, DataT >

Definition at line 247 of file IntervalTree.h.

Allocator

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

DataType

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

IntervalReferences

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

PointType

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

ValueType

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

Sorting

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

~IntervalTree()

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

clear()

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

create()

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

empty()

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

find()

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

find_end()

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

getContaining()

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

Return all the intervals in their natural tree location, that contain the given point.

Definition at line 615 of file IntervalTree.h.

insert()

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

print()

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

Print the interval tree.

When HexFormat is true, the interval tree interval ranges and associated values are printed in hexadecimal format.

Definition at line 640 of file IntervalTree.h.

sortIntervals()

template<typename PointT, typename ValueT, typename DataT = IntervalData<PointT, ValueT>>

Sort the given intervals using the following sort options: Ascending: return the intervals with the smallest at the front.

Descending: return the intervals with the biggest at the front.

Definition at line 626 of file IntervalTree.h.


The documentation for this class was generated from the following file: