LLVM
15.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. More... | |
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. More... | |
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. More... | |
bool | isSingleton () const |
isSingleton - Return true if the set contains exactly one element. More... | |
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.
Referenced by llvm::ImmutableSetRef< ValT, ValInfo >::add(), llvm::ImmutableSetRef< ValT, ValInfo >::getEmptySet(), and llvm::ImmutableSetRef< ValT, ValInfo >::remove().
|
inline |
Definition at line 1105 of file ImmutableSet.h.
References llvm::IntrusiveRefCntPtr< T >::get(), and llvm::ImmutableSetRef< ValT, ValInfo >::ImmutableSetRef().
|
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.
References llvm::ImutAVLTree< ImutInfo >::contains().
|
inline |
Definition at line 1148 of file ImmutableSet.h.
|
inlinestatic |
Definition at line 1101 of file ImmutableSet.h.
References F, and llvm::ImmutableSetRef< ValT, ValInfo >::ImmutableSetRef().
|
inline |
Definition at line 1154 of file ImmutableSet.h.
References llvm::ImutAVLTree< ImutInfo >::getHeight().
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 llvm::ImutAVLTree< ImutInfo >::isNotEqual(), and RHS.
|
inline |
Definition at line 1125 of file ImmutableSet.h.
References llvm::ImutAVLTree< ImutInfo >::isEqual(), and 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.
References S.
|
inline |
Definition at line 1109 of file ImmutableSet.h.
References llvm::IntrusiveRefCntPtr< T >::get(), and llvm::ImmutableSetRef< ValT, ValInfo >::ImmutableSetRef().
|
inline |
Definition at line 1166 of file ImmutableSet.h.
References llvm::ImutAVLTree< ImutInfo >::validateTree().