LLVM API Documentation

Public Member Functions
llvm::ImmutableSet< ValT, ValInfo >::Factory Class Reference

#include <ImmutableSet.h>

List of all members.

Public Member Functions

 Factory (bool canonicalize=true)
 Factory (BumpPtrAllocator &Alloc, bool canonicalize=true)
ImmutableSet getEmptySet ()
 getEmptySet - Returns an immutable set that contains no elements.
ImmutableSet add (ImmutableSet Old, value_type_ref V)
ImmutableSet remove (ImmutableSet Old, value_type_ref V)
BumpPtrAllocatorgetAllocator ()
TreeTy::FactorygetTreeFactory () const

Detailed Description

template<typename ValT, typename ValInfo = ImutContainerInfo<ValT>>
class llvm::ImmutableSet< ValT, ValInfo >::Factory

Definition at line 970 of file ImmutableSet.h.


Constructor & Destructor Documentation

template<typename ValT, typename ValInfo = ImutContainerInfo<ValT>>
llvm::ImmutableSet< ValT, ValInfo >::Factory::Factory ( bool  canonicalize = true) [inline]

Definition at line 975 of file ImmutableSet.h.

template<typename ValT, typename ValInfo = ImutContainerInfo<ValT>>
llvm::ImmutableSet< ValT, ValInfo >::Factory::Factory ( BumpPtrAllocator Alloc,
bool  canonicalize = true 
) [inline]

Definition at line 978 of file ImmutableSet.h.


Member Function Documentation

template<typename ValT, typename ValInfo = ImutContainerInfo<ValT>>
ImmutableSet llvm::ImmutableSet< ValT, ValInfo >::Factory::add ( ImmutableSet  Old,
value_type_ref  V 
) [inline]

add - 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 993 of file ImmutableSet.h.

References llvm::ImutAVLFactory< ImutInfo >::add(), llvm::ImutAVLFactory< ImutInfo >::getCanonicalTree(), and llvm::ImmutableSet< ValT, ValInfo >::ImmutableSet().

template<typename ValT, typename ValInfo = ImutContainerInfo<ValT>>
BumpPtrAllocator& llvm::ImmutableSet< ValT, ValInfo >::Factory::getAllocator ( ) [inline]

Definition at line 1010 of file ImmutableSet.h.

template<typename ValT, typename ValInfo = ImutContainerInfo<ValT>>
ImmutableSet llvm::ImmutableSet< ValT, ValInfo >::Factory::getEmptySet ( ) [inline]

getEmptySet - Returns an immutable set that contains no elements.

Definition at line 982 of file ImmutableSet.h.

References llvm::ImutAVLFactory< ImutInfo >::getEmptyTree(), and llvm::ImmutableSet< ValT, ValInfo >::ImmutableSet().

template<typename ValT, typename ValInfo = ImutContainerInfo<ValT>>
TreeTy::Factory* llvm::ImmutableSet< ValT, ValInfo >::Factory::getTreeFactory ( ) const [inline]

Definition at line 1012 of file ImmutableSet.h.

template<typename ValT, typename ValInfo = ImutContainerInfo<ValT>>
ImmutableSet llvm::ImmutableSet< ValT, ValInfo >::Factory::remove ( ImmutableSet  Old,
value_type_ref  V 
) [inline]

remove - 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 1005 of file ImmutableSet.h.

References llvm::ImutAVLFactory< ImutInfo >::getCanonicalTree(), llvm::ImmutableSet< ValT, ValInfo >::ImmutableSet(), and llvm::ImutAVLFactory< ImutInfo >::remove().


The documentation for this class was generated from the following file: