LLVM 20.0.0git
|
#include "llvm/ADT/ImmutableSet.h"
Public Types | |
using | value_type = typename ValInfo::value_type |
using | value_type_ref = typename ValInfo::value_type_ref |
using | TreeTy = ImutAVLTree< ValInfo > |
using | FactoryTy = typename TreeTy::Factory |
using | iterator = ImutAVLValueIterator< ImmutableSetRef > |
Public Member Functions | |
ImmutableSetRef (TreeTy *R, FactoryTy *F) | |
Constructs a set from a pointer to a tree root. | |
ImmutableSetRef | add (value_type_ref V) |
ImmutableSetRef | remove (value_type_ref V) |
bool | contains (value_type_ref V) const |
Returns true if the set contains the specified value. | |
ImmutableSet< ValT > | asImmutableSet (bool canonicalize=true) const |
TreeTy * | getRootWithoutRetain () const |
bool | operator== (const ImmutableSetRef &RHS) const |
bool | operator!= (const ImmutableSetRef &RHS) const |
bool | isEmpty () const |
isEmpty - Return true if the set contains no elements. | |
bool | isSingleton () const |
isSingleton - Return true if the set contains exactly one element. | |
iterator | begin () const |
iterator | end () const |
unsigned | getHeight () const |
void | Profile (FoldingSetNodeID &ID) const |
void | validateTree () const |
Static Public Member Functions | |
static ImmutableSetRef | getEmptySet (FactoryTy *F) |
static void | Profile (FoldingSetNodeID &ID, const ImmutableSetRef &S) |
Definition at line 1083 of file ImmutableSet.h.
using llvm::ImmutableSetRef< ValT, ValInfo >::FactoryTy = typename TreeTy::Factory |
Definition at line 1088 of file ImmutableSet.h.
using llvm::ImmutableSetRef< ValT, ValInfo >::iterator = ImutAVLValueIterator<ImmutableSetRef> |
Definition at line 1145 of file ImmutableSet.h.
using llvm::ImmutableSetRef< ValT, ValInfo >::TreeTy = ImutAVLTree<ValInfo> |
Definition at line 1087 of file ImmutableSet.h.
using llvm::ImmutableSetRef< ValT, ValInfo >::value_type = typename ValInfo::value_type |
Definition at line 1085 of file ImmutableSet.h.
using llvm::ImmutableSetRef< ValT, ValInfo >::value_type_ref = typename ValInfo::value_type_ref |
Definition at line 1086 of file ImmutableSet.h.
|
inline |
Constructs a set from a pointer to a tree root.
In general one should use a Factory object to create sets instead of directly invoking the constructor, but there are cases where make this constructor public is useful.
Definition at line 1099 of file ImmutableSet.h.
|
inline |
Definition at line 1105 of file ImmutableSet.h.
References llvm::IntrusiveRefCntPtr< T >::get().
|
inline |
Definition at line 1118 of file ImmutableSet.h.
References llvm::IntrusiveRefCntPtr< T >::get().
|
inline |
Definition at line 1147 of file ImmutableSet.h.
References llvm::IntrusiveRefCntPtr< T >::get().
|
inline |
Returns true if the set contains the specified value.
Definition at line 1114 of file ImmutableSet.h.
|
inline |
Definition at line 1148 of file ImmutableSet.h.
|
inlinestatic |
Definition at line 1101 of file ImmutableSet.h.
References F.
|
inline |
Definition at line 1154 of file ImmutableSet.h.
Referenced by llvm::ImmutableSetRef< ValT, ValInfo >::isSingleton().
|
inline |
Definition at line 1123 of file ImmutableSet.h.
References llvm::IntrusiveRefCntPtr< T >::get().
|
inline |
isEmpty - Return true if the set contains no elements.
Definition at line 1135 of file ImmutableSet.h.
|
inline |
isSingleton - Return true if the set contains exactly one element.
This method runs in constant time.
Definition at line 1139 of file ImmutableSet.h.
References llvm::ImmutableSetRef< ValT, ValInfo >::getHeight().
|
inline |
Definition at line 1129 of file ImmutableSet.h.
References RHS.
|
inline |
Definition at line 1125 of file ImmutableSet.h.
References RHS.
|
inline |
Definition at line 1160 of file ImmutableSet.h.
References llvm::ImmutableSetRef< ValT, ValInfo >::Profile().
Referenced by llvm::ImmutableSetRef< ValT, ValInfo >::Profile().
|
inlinestatic |
Definition at line 1156 of file ImmutableSet.h.
|
inline |
Definition at line 1109 of file ImmutableSet.h.
References llvm::IntrusiveRefCntPtr< T >::get().
|
inline |
Definition at line 1166 of file ImmutableSet.h.