|
| | SmallPtrSet () |
| |
| | SmallPtrSet (const SmallPtrSet &that) |
| |
| | SmallPtrSet (SmallPtrSet &&that) |
| |
| template<typename It > |
| | 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<typename UnaryPredicate > |
| 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<typename IterT > |
| 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 |
| |
| void | clear () |
| |
| | DebugEpochBase ()=default |
| |
| void | incrementEpoch () |
| | Calling incrementEpoch invalidates all handles pointing into the calling instance.
|
| |
| | ~DebugEpochBase () |
| | The destructor calls incrementEpoch to make use-after-free bugs more likely to crash deterministically.
|
| |
|
| 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, SmallPtrSetImplBase &&that) |
| |
| | SmallPtrSetImplBase (const void **SmallStorage, unsigned SmallSize) |
| |
| | SmallPtrSetImplBase (const void **SmallStorage, const SmallPtrSetImplBase &that) |
| |
| | SmallPtrSetImplBase (const void **SmallStorage, unsigned SmallSize, 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 | isSmall () const |
| |
| void | swap (SmallPtrSetImplBase &RHS) |
| | swap - Swaps the elements of two sets.
|
| |
| void | CopyFrom (const SmallPtrSetImplBase &RHS) |
| |
| void | MoveFrom (unsigned SmallSize, SmallPtrSetImplBase &&RHS) |
| |
| static void * | getTombstoneMarker () |
| |
| static void * | getEmptyMarker () |
| |
| const void ** | SmallArray |
| | SmallArray - Points to a fixed size set of buckets, used in 'small mode'.
|
| |
| const void ** | CurArray |
| | CurArray - This is the current set of buckets.
|
| |
| 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.
|
| |
template<class PtrType, unsigned SmallSize>
class wpi::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.