LLVM: llvm::SmallPtrSet< PtrType, SmallSize > Class Template Reference (original) (raw)
SmallPtrSet - This class implements a set which is optimized for holding SmallSize or less elements. More...
#include "[llvm/ADT/SmallPtrSet.h](SmallPtrSet%5F8h%5Fsource.html)"
Inherits llvm::SmallPtrSetImpl< PtrType >.
Inherited by llvm::df_iterator_default_set< typename GraphTraits< std::conditional_t< IsConst, const BlockT, BlockT > * >::NodeRef >, llvm::df_iterator_default_set< typename GraphTraits< T >::NodeRef >, llvm::df_iterator_default_set< typename GraphTraits< GraphT >::NodeRef >, and llvm::df_iterator_default_set< NodeRef, SmallSize >.
Public Member Functions | |
---|---|
SmallPtrSet () | |
SmallPtrSet (const SmallPtrSet &that) | |
SmallPtrSet (SmallPtrSet &&that) | |
template | |
SmallPtrSet (It I, It E) | |
SmallPtrSet (std::initializer_list< PtrType > IL) | |
SmallPtrSet< PtrType, SmallSize > & | operator= (const SmallPtrSet< PtrType, SmallSize > &RHS) |
SmallPtrSet< PtrType, SmallSize > & | operator= (SmallPtrSet< PtrType, SmallSize > &&RHS) |
SmallPtrSet< PtrType, SmallSize > & | operator= (std::initializer_list< PtrType > IL) |
void | swap (SmallPtrSet< PtrType, SmallSize > &RHS) |
swap - Swaps the elements of two sets. | |
![]() |
|
SmallPtrSetImpl (const SmallPtrSetImpl &)=delete | |
std::pair< iterator, bool > | insert (PtrType Ptr) |
Inserts Ptr if and only if there is no element in the container equal to Ptr. | |
iterator | insert (iterator, PtrType Ptr) |
Insert the given pointer with an iterator hint that is ignored. | |
bool | erase (PtrType Ptr) |
Remove pointer from the set. | |
template | |
bool | remove_if (UnaryPredicate P) |
Remove elements that match the given predicate. | |
size_type | count (ConstPtrType Ptr) const |
count - Return 1 if the specified pointer is in the set, 0 otherwise. | |
iterator | find (ConstPtrType Ptr) const |
bool | contains (ConstPtrType Ptr) const |
template | |
void | insert (IterT I, IterT E) |
void | insert (std::initializer_list< PtrType > IL) |
iterator | begin () const |
iterator | end () const |
![]() |
|
SmallPtrSetImplBase & | operator= (const SmallPtrSetImplBase &)=delete |
bool | empty () const |
size_type | size () const |
size_type | capacity () const |
void | clear () |
void | reserve (size_type NumEntries) |
![]() |
|
void | incrementEpoch () |
Additional Inherited Members | |
---|---|
![]() |
|
using | iterator = SmallPtrSetIterator< PtrType > |
using | const_iterator = SmallPtrSetIterator< PtrType > |
using | key_type = ConstPtrType |
using | value_type = PtrType |
![]() |
|
using | size_type = unsigned |
![]() |
|
SmallPtrSetImplBase (const void **SmallStorage, const SmallPtrSetImplBase &that) | |
SmallPtrSetImplBase (const void **SmallStorage, unsigned SmallSize, const void **RHSSmallStorage, SmallPtrSetImplBase &&that) | |
SmallPtrSetImplBase (const void **SmallStorage, unsigned SmallSize) | |
![]() |
|
SmallPtrSetImplBase (const void **SmallStorage, const SmallPtrSetImplBase &that) | |
SmallPtrSetImplBase (const void **SmallStorage, unsigned SmallSize, const void **RHSSmallStorage, SmallPtrSetImplBase &&that) | |
SmallPtrSetImplBase (const void **SmallStorage, unsigned SmallSize) | |
~SmallPtrSetImplBase () | |
const void ** | EndPointer () const |
std::pair< const void *const *, bool > | insert_imp (const void *Ptr) |
insert_imp - This returns true if the pointer was new to the set, false if it was already in the set. | |
bool | erase_imp (const void *Ptr) |
erase_imp - If the set contains the specified pointer, remove it and return true, otherwise return false. | |
const void *const * | find_imp (const void *Ptr) const |
Returns the raw pointer needed to construct an iterator. | |
bool | contains_imp (const void *Ptr) const |
bool | isSmall () const |
void | swap (const void **SmallStorage, const void **RHSSmallStorage, SmallPtrSetImplBase &RHS) |
swap - Swaps the elements of two sets. | |
void | copyFrom (const void **SmallStorage, const SmallPtrSetImplBase &RHS) |
void | moveFrom (const void **SmallStorage, unsigned SmallSize, const void **RHSSmallStorage, SmallPtrSetImplBase &&RHS) |
![]() |
|
static void * | getTombstoneMarker () |
static void * | getEmptyMarker () |
![]() |
|
const void ** | CurArray |
The current set of buckets, in either small or big representation. | |
unsigned | CurArraySize |
CurArraySize - The allocated size of CurArray, always a power of two. | |
unsigned | NumNonEmpty |
Number of elements in CurArray that contain a value or are a tombstone. | |
unsigned | NumTombstones |
Number of tombstones in CurArray. | |
bool | IsSmall |
Whether the set is in small representation. | |
template<class PtrType, unsigned SmallSize>
class llvm::SmallPtrSet< PtrType, SmallSize >
SmallPtrSet - This class implements a set which is optimized for holding SmallSize or less elements.
This internally rounds up SmallSize to the next power of two if it is not already a power of two. See the comments above SmallPtrSetImplBase for details of the algorithm.
Definition at line 519 of file SmallPtrSet.h.
template<class PtrType , unsigned SmallSize>
◆ SmallPtrSet() [2/5]
template<class PtrType , unsigned SmallSize>
◆ SmallPtrSet() [3/5]
template<class PtrType , unsigned SmallSize>
◆ SmallPtrSet() [4/5]
template<class PtrType , unsigned SmallSize>
template
◆ SmallPtrSet() [5/5]
template<class PtrType , unsigned SmallSize>
llvm::SmallPtrSet< PtrType, SmallSize >::SmallPtrSet ( std::initializer_list< PtrType > IL) | inline |
---|
◆ operator=() [1/3]
template<class PtrType , unsigned SmallSize>
◆ operator=() [2/3]
template<class PtrType , unsigned SmallSize>
◆ operator=() [3/3]
template<class PtrType , unsigned SmallSize>
◆ swap()
template<class PtrType , unsigned SmallSize>
The documentation for this class was generated from the following file:
- include/llvm/ADT/SmallPtrSet.h