LLVM  3.7.0
Classes | Public Types | Public Member Functions | List of all members
llvm::DenseSet< ValueT, ValueInfoT > Class Template Reference

DenseSet - This implements a dense probed hash-table based set. More...

#include <DenseSet.h>

Inheritance diagram for llvm::DenseSet< ValueT, ValueInfoT >:
[legend]

Classes

class  ConstIterator
 
class  Iterator
 

Public Types

typedef ValueT key_type
 
typedef ValueT value_type
 
typedef unsigned size_type
 
typedef Iterator iterator
 
typedef ConstIterator const_iterator
 

Public Member Functions

 DenseSet (unsigned NumInitBuckets=0)
 
bool empty () const
 
size_type size () const
 
size_t getMemorySize () const
 
void resize (size_t Size)
 Grow the DenseSet so that it has at least Size buckets. More...
 
void clear ()
 
size_type count (const ValueT &V) const
 Return 1 if the specified key is in the set, 0 otherwise. More...
 
bool erase (const ValueT &V)
 
void swap (DenseSet &RHS)
 
iterator begin ()
 
iterator end ()
 
const_iterator begin () const
 
const_iterator end () const
 
iterator find (const ValueT &V)
 
template<class LookupKeyT >
iterator find_as (const LookupKeyT &Val)
 Alternative version of find() which allows a different, and possibly less expensive, key type. More...
 
template<class LookupKeyT >
const_iterator find_as (const LookupKeyT &Val) const
 
void erase (Iterator I)
 
void erase (ConstIterator CI)
 
std::pair< iterator, boolinsert (const ValueT &V)
 
template<typename InputIt >
void insert (InputIt I, InputIt E)
 

Detailed Description

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
class llvm::DenseSet< ValueT, ValueInfoT >

DenseSet - This implements a dense probed hash-table based set.

Definition at line 39 of file DenseSet.h.

Member Typedef Documentation

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
typedef ConstIterator llvm::DenseSet< ValueT, ValueInfoT >::const_iterator

Definition at line 120 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
typedef Iterator llvm::DenseSet< ValueT, ValueInfoT >::iterator

Definition at line 119 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
typedef ValueT llvm::DenseSet< ValueT, ValueInfoT >::key_type

Definition at line 46 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
typedef unsigned llvm::DenseSet< ValueT, ValueInfoT >::size_type

Definition at line 48 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
typedef ValueT llvm::DenseSet< ValueT, ValueInfoT >::value_type

Definition at line 47 of file DenseSet.h.

Constructor & Destructor Documentation

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
llvm::DenseSet< ValueT, ValueInfoT >::DenseSet ( unsigned  NumInitBuckets = 0)
inlineexplicit

Definition at line 50 of file DenseSet.h.

Member Function Documentation

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
iterator llvm::DenseSet< ValueT, ValueInfoT >::begin ( )
inline

Definition at line 122 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
const_iterator llvm::DenseSet< ValueT, ValueInfoT >::begin ( ) const
inline

Definition at line 125 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
void llvm::DenseSet< ValueT, ValueInfoT >::clear ( )
inline
template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
size_type llvm::DenseSet< ValueT, ValueInfoT >::count ( const ValueT &  V) const
inline

Return 1 if the specified key is in the set, 0 otherwise.

Definition at line 65 of file DenseSet.h.

Referenced by recomputeLiveInValues(), relocationViaAlloca(), and llvm::LoopInfoBase< N, M >::verify().

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
bool llvm::DenseSet< ValueT, ValueInfoT >::empty ( ) const
inline

Definition at line 52 of file DenseSet.h.

Referenced by llvm::ScalarEvolution::releaseMemory().

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
iterator llvm::DenseSet< ValueT, ValueInfoT >::end ( )
inline
template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
const_iterator llvm::DenseSet< ValueT, ValueInfoT >::end ( ) const
inline

Definition at line 126 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
bool llvm::DenseSet< ValueT, ValueInfoT >::erase ( const ValueT &  V)
inline

Definition at line 69 of file DenseSet.h.

Referenced by computeLiveInValues().

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
void llvm::DenseSet< ValueT, ValueInfoT >::erase ( Iterator  I)
inline

Definition at line 144 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
void llvm::DenseSet< ValueT, ValueInfoT >::erase ( ConstIterator  CI)
inline

Definition at line 145 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
iterator llvm::DenseSet< ValueT, ValueInfoT >::find ( const ValueT &  V)
inline

Definition at line 128 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
template<class LookupKeyT >
iterator llvm::DenseSet< ValueT, ValueInfoT >::find_as ( const LookupKeyT &  Val)
inline

Alternative version of find() which allows a different, and possibly less expensive, key type.

The DenseMapInfo is responsible for supplying methods getHashValue(LookupKeyT) and isEqual(LookupKeyT, KeyT) for each key type used.

Definition at line 136 of file DenseSet.h.

Referenced by llvm::FunctionType::get(), llvm::StructType::get(), llvm::getUniqued(), and llvm::PBQP::ValuePool< AllowedRegVector >::getValue().

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
template<class LookupKeyT >
const_iterator llvm::DenseSet< ValueT, ValueInfoT >::find_as ( const LookupKeyT &  Val) const
inline

Definition at line 140 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
size_t llvm::DenseSet< ValueT, ValueInfoT >::getMemorySize ( ) const
inline

Definition at line 54 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
std::pair<iterator, bool> llvm::DenseSet< ValueT, ValueInfoT >::insert ( const ValueT &  V)
inline
template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
template<typename InputIt >
void llvm::DenseSet< ValueT, ValueInfoT >::insert ( InputIt  I,
InputIt  E 
)
inline

Definition at line 154 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
void llvm::DenseSet< ValueT, ValueInfoT >::resize ( size_t  Size)
inline

Grow the DenseSet so that it has at least Size buckets.

Will not shrink the Size of the set.

Definition at line 58 of file DenseSet.h.

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
size_type llvm::DenseSet< ValueT, ValueInfoT >::size ( ) const
inline

Definition at line 53 of file DenseSet.h.

Referenced by computeLiveInValues().

template<typename ValueT, typename ValueInfoT = DenseMapInfo<ValueT>>
void llvm::DenseSet< ValueT, ValueInfoT >::swap ( DenseSet< ValueT, ValueInfoT > &  RHS)
inline

Definition at line 73 of file DenseSet.h.


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