LLVM  3.7.0
Public Types | Public Member Functions | Friends | List of all members
llvm::ScopedHashTable< K, V, KInfo, AllocatorTy > Class Template Reference

#include <ScopedHashTable.h>

Public Types

typedef ScopedHashTableScope
< K, V, KInfo, AllocatorTy > 
ScopeTy
 ScopeTy - This is a helpful typedef that allows clients to get easy access to the name of the scope for this hash table. More...
 
typedef unsigned size_type
 
typedef
ScopedHashTableIterator< K, V,
KInfo > 
iterator
 

Public Member Functions

 ScopedHashTable ()
 
 ScopedHashTable (AllocatorTy A)
 
 ~ScopedHashTable ()
 
AllocatorTy & getAllocator ()
 Access to the allocator. More...
 
const AllocatorTy & getAllocator () const
 
size_type count (const K &Key) const
 Return 1 if the specified key is in the table, 0 otherwise. More...
 
lookup (const K &Key)
 
void insert (const K &Key, const V &Val)
 
iterator end ()
 
iterator begin (const K &Key)
 
ScopeTygetCurScope ()
 
const ScopeTygetCurScope () const
 
void insertIntoScope (ScopeTy *S, const K &Key, const V &Val)
 insertIntoScope - This inserts the specified key/value at the specified (possibly not the current) scope. More...
 

Friends

class ScopedHashTableScope< K, V, KInfo, AllocatorTy >
 

Detailed Description

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
class llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >

Definition at line 41 of file ScopedHashTable.h.

Member Typedef Documentation

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
typedef ScopedHashTableIterator<K, V, KInfo> llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::iterator

Definition at line 191 of file ScopedHashTable.h.

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
typedef ScopedHashTableScope<K, V, KInfo, AllocatorTy> llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::ScopeTy

ScopeTy - This is a helpful typedef that allows clients to get easy access to the name of the scope for this hash table.

Definition at line 150 of file ScopedHashTable.h.

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
typedef unsigned llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::size_type

Definition at line 151 of file ScopedHashTable.h.

Constructor & Destructor Documentation

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::ScopedHashTable ( )
inline

Definition at line 163 of file ScopedHashTable.h.

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::ScopedHashTable ( AllocatorTy  A)
inline

Definition at line 164 of file ScopedHashTable.h.

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::~ScopedHashTable ( )
inline

Definition at line 165 of file ScopedHashTable.h.

Member Function Documentation

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
iterator llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::begin ( const K &  Key)
inline
template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
size_type llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::count ( const K &  Key) const
inline

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

Definition at line 175 of file ScopedHashTable.h.

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
iterator llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::end ( )
inline
template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
AllocatorTy& llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::getAllocator ( )
inline

Access to the allocator.

Definition at line 171 of file ScopedHashTable.h.

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
const AllocatorTy& llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::getAllocator ( ) const
inline

Definition at line 172 of file ScopedHashTable.h.

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
ScopeTy* llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::getCurScope ( )
inline

Definition at line 202 of file ScopedHashTable.h.

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
const ScopeTy* llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::getCurScope ( ) const
inline

Definition at line 203 of file ScopedHashTable.h.

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
void llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::insert ( const K &  Key,
const V &  Val 
)
inline
template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
void llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::insertIntoScope ( ScopeTy S,
const K &  Key,
const V &  Val 
)
inline

insertIntoScope - This inserts the specified key/value at the specified (possibly not the current) scope.

While it is ok to insert into a scope that isn't the current one, it isn't ok to insert underneath an existing value of the specified key.

Definition at line 209 of file ScopedHashTable.h.

References llvm::ScopedHashTableVal< K, V >::Create().

Referenced by llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::insert().

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
V llvm::ScopedHashTable< K, V, KInfo, AllocatorTy >::lookup ( const K &  Key)
inline

Definition at line 179 of file ScopedHashTable.h.

References I.

Friends And Related Function Documentation

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
friend class ScopedHashTableScope< K, V, KInfo, AllocatorTy >
friend

Definition at line 161 of file ScopedHashTable.h.


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