LLVM  3.7.0
Classes | Public Member Functions | Friends | List of all members
llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT > Class Template Reference

#include <DenseMap.h>

Inheritance diagram for llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >:
[legend]
Collaboration diagram for llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >:
[legend]

Public Member Functions

 SmallDenseMap (unsigned NumInitBuckets=0)
 
 SmallDenseMap (const SmallDenseMap &other)
 
 SmallDenseMap (SmallDenseMap &&other)
 
template<typename InputIt >
 SmallDenseMap (const InputIt &I, const InputIt &E)
 
 ~SmallDenseMap ()
 
void swap (SmallDenseMap &RHS)
 
SmallDenseMapoperator= (const SmallDenseMap &other)
 
SmallDenseMapoperator= (SmallDenseMap &&other)
 
void copyFrom (const SmallDenseMap &other)
 
void init (unsigned InitBuckets)
 
void grow (unsigned AtLeast)
 
void shrink_and_clear ()
 
- Public Member Functions inherited from llvm::DenseMapBase< SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >, KeyT, ValueT, KeyInfoT, BucketT >
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
bool LLVM_ATTRIBUTE_UNUSED_RESULT empty () const
 
unsigned size () const
 
void resize (size_type Size)
 Grow the densemap so that it has at least Size buckets. Does not shrink. More...
 
void clear ()
 
size_type count (const KeyT &Val) const
 Return 1 if the specified key is in the map, 0 otherwise. More...
 
iterator find (const KeyT &Val)
 
const_iterator find (const KeyT &Val) const
 
iterator find_as (const LookupKeyT &Val)
 Alternate version of find() which allows a different, and possibly less expensive, key type. More...
 
const_iterator find_as (const LookupKeyT &Val) const
 
ValueT lookup (const KeyT &Val) const
 lookup - Return the entry for the specified key, or a default constructed value if no such entry exists. More...
 
std::pair< iterator, boolinsert (const std::pair< KeyT, ValueT > &KV)
 
std::pair< iterator, boolinsert (std::pair< KeyT, ValueT > &&KV)
 
void insert (InputIt I, InputIt E)
 insert - Range insertion of pairs. More...
 
bool erase (const KeyT &Val)
 
void erase (iterator I)
 
value_typeFindAndConstruct (const KeyT &Key)
 
value_typeFindAndConstruct (KeyT &&Key)
 
ValueT & operator[] (const KeyT &Key)
 
ValueT & operator[] (KeyT &&Key)
 
bool isPointerIntoBucketsArray (const void *Ptr) const
 isPointerIntoBucketsArray - Return true if the specified pointer points somewhere into the DenseMap's array of buckets (i.e. More...
 
const void * getPointerIntoBucketsArray () const
 getPointerIntoBucketsArray() - Return an opaque pointer into the buckets array. More...
 
size_t getMemorySize () const
 Return the approximate size (in bytes) of the actual map. More...
 
- Public Member Functions inherited from llvm::DebugEpochBase
void incrementEpoch ()
 

Friends

class DenseMapBase< SmallDenseMap, KeyT, ValueT, KeyInfoT, BucketT >
 

Additional Inherited Members

- Public Types inherited from llvm::DenseMapBase< SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >, KeyT, ValueT, KeyInfoT, BucketT >
typedef unsigned size_type
 
typedef KeyT key_type
 
typedef ValueT mapped_type
 
typedef BucketT value_type
 
typedef DenseMapIterator< KeyT,
ValueT, KeyInfoT, BucketT > 
iterator
 
typedef DenseMapIterator< KeyT,
ValueT, KeyInfoT, BucketT,
true
const_iterator
 
- Protected Member Functions inherited from llvm::DenseMapBase< SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >, KeyT, ValueT, KeyInfoT, BucketT >
 DenseMapBase ()=default
 
void destroyAll ()
 
void initEmpty ()
 
void moveFromOldBuckets (BucketT *OldBucketsBegin, BucketT *OldBucketsEnd)
 
void copyFrom (const DenseMapBase< OtherBaseT, KeyT, ValueT, KeyInfoT, BucketT > &other)
 
- Static Protected Member Functions inherited from llvm::DenseMapBase< SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >, KeyT, ValueT, KeyInfoT, BucketT >
static unsigned getHashValue (const KeyT &Val)
 
static unsigned getHashValue (const LookupKeyT &Val)
 
static const KeyT getEmptyKey ()
 
static const KeyT getTombstoneKey ()
 

Detailed Description

template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
class llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >

Definition at line 693 of file DenseMap.h.

Constructor & Destructor Documentation

template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >::SmallDenseMap ( unsigned  NumInitBuckets = 0)
inlineexplicit

Definition at line 716 of file DenseMap.h.

template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >::SmallDenseMap ( const SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT > &  other)
inline

Definition at line 720 of file DenseMap.h.

template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >::SmallDenseMap ( SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT > &&  other)
inline

Definition at line 725 of file DenseMap.h.

template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
template<typename InputIt >
llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >::SmallDenseMap ( const InputIt &  I,
const InputIt &  E 
)
inline

Definition at line 731 of file DenseMap.h.

template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >::~SmallDenseMap ( )
inline

Definition at line 736 of file DenseMap.h.

Member Function Documentation

template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
void llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >::copyFrom ( const SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT > &  other)
inline
template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
void llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >::grow ( unsigned  AtLeast)
inline

Definition at line 847 of file DenseMap.h.

template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
void llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >::init ( unsigned  InitBuckets)
inline
template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
SmallDenseMap& llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >::operator= ( const SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT > &  other)
inline

Definition at line 813 of file DenseMap.h.

template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
SmallDenseMap& llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >::operator= ( SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT > &&  other)
inline

Definition at line 819 of file DenseMap.h.

template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
void llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >::shrink_and_clear ( )
inline

Definition at line 899 of file DenseMap.h.

template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
void llvm::SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT >::swap ( SmallDenseMap< KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT > &  RHS)
inline

Friends And Related Function Documentation

template<typename KeyT, typename ValueT, unsigned InlineBuckets = 4, typename KeyInfoT = DenseMapInfo<KeyT>, typename BucketT = detail::DenseMapPair<KeyT, ValueT>>
friend class DenseMapBase< SmallDenseMap, KeyT, ValueT, KeyInfoT, BucketT >
friend

Definition at line 700 of file DenseMap.h.


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