LLDB  mainline
Public Types | Public Member Functions | Protected Attributes | List of all members
lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType > Class Template Reference

#include <ThreadSafeDenseMap.h>

Inheritance diagram for lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType >:
Inheritance graph
[legend]
Collaboration diagram for lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType >:
Collaboration graph
[legend]

Public Types

typedef llvm::DenseMap< _KeyType, _ValueType > LLVMMapType
 

Public Member Functions

 ThreadSafeDenseMap (unsigned map_initial_capacity=0)
 
void Insert (_KeyType k, _ValueType v)
 
void Erase (_KeyType k)
 
_ValueType Lookup (_KeyType k)
 
bool Lookup (_KeyType k, _ValueType &v)
 
void Clear ()
 

Protected Attributes

LLVMMapType m_map
 
_MutexType m_mutex
 

Detailed Description

template<typename _KeyType, typename _ValueType, typename _MutexType = std::mutex>
class lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType >

Definition at line 22 of file ThreadSafeDenseMap.h.

Member Typedef Documentation

◆ LLVMMapType

template<typename _KeyType , typename _ValueType , typename _MutexType = std::mutex>
typedef llvm::DenseMap<_KeyType, _ValueType> lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType >::LLVMMapType

Definition at line 24 of file ThreadSafeDenseMap.h.

Constructor & Destructor Documentation

◆ ThreadSafeDenseMap()

template<typename _KeyType , typename _ValueType , typename _MutexType = std::mutex>
lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType >::ThreadSafeDenseMap ( unsigned  map_initial_capacity = 0)
inline

Definition at line 26 of file ThreadSafeDenseMap.h.

Member Function Documentation

◆ Clear()

template<typename _KeyType , typename _ValueType , typename _MutexType = std::mutex>
void lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType >::Clear ( )
inline

Definition at line 53 of file ThreadSafeDenseMap.h.

◆ Erase()

template<typename _KeyType , typename _ValueType , typename _MutexType = std::mutex>
void lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType >::Erase ( _KeyType  k)
inline

Definition at line 34 of file ThreadSafeDenseMap.h.

Referenced by lldb_private::TypeSystemClang::Finalize().

◆ Insert()

template<typename _KeyType , typename _ValueType , typename _MutexType = std::mutex>
void lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType >::Insert ( _KeyType  k,
_ValueType  v 
)
inline

◆ Lookup() [1/2]

template<typename _KeyType , typename _ValueType , typename _MutexType = std::mutex>
_ValueType lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType >::Lookup ( _KeyType  k)
inline

◆ Lookup() [2/2]

template<typename _KeyType , typename _ValueType , typename _MutexType = std::mutex>
bool lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType >::Lookup ( _KeyType  k,
_ValueType &  v 
)
inline

Definition at line 44 of file ThreadSafeDenseMap.h.

Member Data Documentation

◆ m_map

template<typename _KeyType , typename _ValueType , typename _MutexType = std::mutex>
LLVMMapType lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType >::m_map
protected

◆ m_mutex

template<typename _KeyType , typename _ValueType , typename _MutexType = std::mutex>
_MutexType lldb_private::ThreadSafeDenseMap< _KeyType, _ValueType, _MutexType >::m_mutex
protected

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