LLVM
8.0.1
|
UniqueVector - This class produces a sequential ID number (base 1) for each unique entry that is added. More...
#include "llvm/ADT/UniqueVector.h"
Public Types | |
using | VectorType = typename std::vector< T > |
using | iterator = typename VectorType::iterator |
using | const_iterator = typename VectorType::const_iterator |
Public Member Functions | |
unsigned | insert (const T &Entry) |
insert - Append entry to the vector if it doesn't already exist. More... | |
unsigned | idFor (const T &Entry) const |
idFor - return the ID for an existing entry. More... | |
const T & | operator[] (unsigned ID) const |
operator[] - Returns a reference to the entry with the specified ID. More... | |
iterator | begin () |
Return an iterator to the start of the vector. More... | |
const_iterator | begin () const |
Return an iterator to the start of the vector. More... | |
iterator | end () |
Return an iterator to the end of the vector. More... | |
const_iterator | end () const |
Return an iterator to the end of the vector. More... | |
size_t | size () const |
size - Returns the number of entries in the vector. More... | |
bool | empty () const |
empty - Returns true if the vector is empty. More... | |
void | reset () |
reset - Clears all the entries. More... | |
UniqueVector - This class produces a sequential ID number (base 1) for each unique entry that is added.
T is the type of entries in the vector. This class should have an implementation of operator== and of operator<. Entries can be fetched using operator[] with the entry ID.
Definition at line 25 of file UniqueVector.h.
using llvm::UniqueVector< T >::const_iterator = typename VectorType::const_iterator |
Definition at line 29 of file UniqueVector.h.
using llvm::UniqueVector< T >::iterator = typename VectorType::iterator |
Definition at line 28 of file UniqueVector.h.
using llvm::UniqueVector< T >::VectorType = typename std::vector<T> |
Definition at line 27 of file UniqueVector.h.
|
inline |
Return an iterator to the start of the vector.
Definition at line 76 of file UniqueVector.h.
Referenced by llvm::DebugCounter::begin().
|
inline |
Return an iterator to the start of the vector.
Definition at line 79 of file UniqueVector.h.
|
inline |
empty - Returns true if the vector is empty.
Definition at line 91 of file UniqueVector.h.
|
inline |
Return an iterator to the end of the vector.
Definition at line 82 of file UniqueVector.h.
Referenced by llvm::DebugCounter::end().
|
inline |
Return an iterator to the end of the vector.
Definition at line 85 of file UniqueVector.h.
|
inline |
idFor - return the ID for an existing entry.
Returns 0 if the entry is not found.
Definition at line 58 of file UniqueVector.h.
Referenced by llvm::ValueEnumerator::getComdatID(), and llvm::DebugCounter::getCounterId().
|
inline |
insert - Append entry to the vector if it doesn't already exist.
Returns the entry's index + 1 to be used as a unique ID.
Definition at line 41 of file UniqueVector.h.
Referenced by llvm::DebugCounter::enableAllCounters(), and getMetadataTypeOrder().
|
inline |
operator[] - Returns a reference to the entry with the specified ID.
Definition at line 70 of file UniqueVector.h.
|
inline |
reset - Clears all the entries.
Definition at line 94 of file UniqueVector.h.
|
inline |
size - Returns the number of entries in the vector.
Definition at line 88 of file UniqueVector.h.
Referenced by llvm::DebugCounter::getNumCounters(), and llvm::UniqueVector< std::string >::operator[]().