|
LLVM 24.0.0git
|
#include "llvm/ADT/ImmutableSet.h"
Public Member Functions | |
| Factory ()=default | |
| Factory (BumpPtrAllocator &Alloc) | |
| Factory (const Factory &RHS)=delete | |
| void | operator= (const Factory &RHS)=delete |
| ImmutableSet | getEmptySet () |
| Returns an immutable set that contains no elements. | |
| ImmutableSet | add (ImmutableSet Old, value_type_ref V) |
| Creates a new immutable set that contains all of the values of the original set with the addition of the specified value. | |
| ImmutableSet | unionSets (ImmutableSet A, ImmutableSet B) |
Returns the union of A and B, computed in a single traversal that shares subtrees of both operands wherever possible (see ImutAVLFactory::unionTrees). | |
| ImmutableSet | remove (ImmutableSet Old, value_type_ref V) |
| Creates a new immutable set that contains all of the values of the original set with the exception of the specified value. | |
| BumpPtrAllocator & | getAllocator () |
| TreeTy::Factory * | getTreeFactory () const |
Definition at line 1109 of file ImmutableSet.h.
|
default |
Referenced by Factory(), and operator=().
|
inline |
Definition at line 1115 of file ImmutableSet.h.
References llvm::Alloc.
|
delete |
|
inlinenodiscard |
Creates a new immutable set that contains all of the values of the original set with the addition of the specified value.
If the original set already included the value, then the original set is returned and no memory is allocated. The time and space complexity of this operation is logarithmic in the size of the original set. The memory allocated to represent the set is released when the factory object that created the set is destroyed.
Definition at line 1132 of file ImmutableSet.h.
References llvm::ImmutableSet< ValT, ValInfo, Canonicalize >::ImmutableSet().
Referenced by unionSets().
|
inline |
Definition at line 1179 of file ImmutableSet.h.
|
inline |
Returns an immutable set that contains no elements.
Definition at line 1121 of file ImmutableSet.h.
References llvm::ImmutableSet< ValT, ValInfo, Canonicalize >::ImmutableSet().
|
inline |
Definition at line 1181 of file ImmutableSet.h.
|
delete |
|
inlinenodiscard |
Creates a new immutable set that contains all of the values of the original set with the exception of the specified value.
If the original set did not contain the value, the original set is returned and no memory is allocated. The time and space complexity of this operation is logarithmic in the size of the original set. The memory allocated to represent the set is released when the factory object that created the set is destroyed.
Definition at line 1171 of file ImmutableSet.h.
References llvm::ImmutableSet< ValT, ValInfo, Canonicalize >::ImmutableSet().
|
inlinenodiscard |
Returns the union of A and B, computed in a single traversal that shares subtrees of both operands wherever possible (see ImutAVLFactory::unionTrees).
This is more efficient than repeatedly adding B's elements to A when B is large.
Definition at line 1144 of file ImmutableSet.h.
References A(), add(), B(), llvm::ImmutableSet< ValT, ValInfo, Canonicalize >::ImmutableSet(), and std::swap().