LLDB mainline
Classes | Public Types | Public Member Functions | Protected Attributes | List of all members
lldb_private::UniqueCStringMap< T > Class Template Reference

#include <UniqueCStringMap.h>

Inheritance diagram for lldb_private::UniqueCStringMap< T >:
Inheritance graph
[legend]

Classes

struct  Compare
 
struct  Entry
 

Public Types

typedef std::vector< Entrycollection
 
typedef collection::iterator iterator
 
typedef collection::const_iterator const_iterator
 

Public Member Functions

void Append (ConstString unique_cstr, const T &value)
 
void Append (const Entry &e)
 
void Clear ()
 
bool GetValueAtIndex (uint32_t idx, T &value) const
 
ConstString GetCStringAtIndexUnchecked (uint32_t idx) const
 
GetValueAtIndexUnchecked (uint32_t idx) const
 
const T & GetValueRefAtIndexUnchecked (uint32_t idx) const
 
ConstString GetCStringAtIndex (uint32_t idx) const
 
Find (ConstString unique_cstr, T fail_value) const
 
const EntryFindFirstValueForName (ConstString unique_cstr) const
 
const EntryFindNextValueForName (const Entry *entry_ptr) const
 
size_t GetValues (ConstString unique_cstr, std::vector< T > &values) const
 
size_t GetValues (const RegularExpression &regex, std::vector< T > &values) const
 
size_t GetSize () const
 
bool IsEmpty () const
 
void Reserve (size_t n)
 
void Sort ()
 
template<typename TCompare >
void Sort (TCompare tc)
 Sort contents of this map using the provided comparator to break ties for entries with the same string value.
 
void SizeToFit ()
 
iterator begin ()
 
iterator end ()
 
const_iterator begin () const
 
const_iterator end () const
 
llvm::iterator_range< const_iteratorequal_range (ConstString unique_cstr) const
 

Protected Attributes

collection m_map
 

Detailed Description

template<typename T>
class lldb_private::UniqueCStringMap< T >

Definition at line 26 of file UniqueCStringMap.h.

Member Typedef Documentation

◆ collection

template<typename T >
typedef std::vector<Entry> lldb_private::UniqueCStringMap< T >::collection

Definition at line 35 of file UniqueCStringMap.h.

◆ const_iterator

template<typename T >
typedef collection::const_iterator lldb_private::UniqueCStringMap< T >::const_iterator

Definition at line 37 of file UniqueCStringMap.h.

◆ iterator

template<typename T >
typedef collection::iterator lldb_private::UniqueCStringMap< T >::iterator

Definition at line 36 of file UniqueCStringMap.h.

Member Function Documentation

◆ Append() [1/2]

template<typename T >
void lldb_private::UniqueCStringMap< T >::Append ( const Entry e)
inline

Definition at line 46 of file UniqueCStringMap.h.

References lldb_private::UniqueCStringMap< T >::m_map.

◆ Append() [2/2]

template<typename T >
void lldb_private::UniqueCStringMap< T >::Append ( ConstString  unique_cstr,
const T &  value 
)
inline

◆ begin() [1/2]

template<typename T >
iterator lldb_private::UniqueCStringMap< T >::begin ( )
inline

Definition at line 196 of file UniqueCStringMap.h.

References lldb_private::UniqueCStringMap< T >::m_map.

◆ begin() [2/2]

template<typename T >
const_iterator lldb_private::UniqueCStringMap< T >::begin ( ) const
inline

Definition at line 198 of file UniqueCStringMap.h.

References lldb_private::UniqueCStringMap< T >::m_map.

◆ Clear()

template<typename T >
void lldb_private::UniqueCStringMap< T >::Clear ( )
inline

◆ end() [1/2]

template<typename T >
iterator lldb_private::UniqueCStringMap< T >::end ( )
inline

◆ end() [2/2]

template<typename T >
const_iterator lldb_private::UniqueCStringMap< T >::end ( ) const
inline

Definition at line 199 of file UniqueCStringMap.h.

References lldb_private::UniqueCStringMap< T >::m_map.

◆ equal_range()

template<typename T >
llvm::iterator_range< const_iterator > lldb_private::UniqueCStringMap< T >::equal_range ( ConstString  unique_cstr) const
inline

Definition at line 203 of file UniqueCStringMap.h.

References lldb_private::UniqueCStringMap< T >::m_map.

◆ Find()

template<typename T >
T lldb_private::UniqueCStringMap< T >::Find ( ConstString  unique_cstr,
fail_value 
) const
inline

◆ FindFirstValueForName()

template<typename T >
const Entry * lldb_private::UniqueCStringMap< T >::FindFirstValueForName ( ConstString  unique_cstr) const
inline

◆ FindNextValueForName()

template<typename T >
const Entry * lldb_private::UniqueCStringMap< T >::FindNextValueForName ( const Entry entry_ptr) const
inline

◆ GetCStringAtIndex()

template<typename T >
ConstString lldb_private::UniqueCStringMap< T >::GetCStringAtIndex ( uint32_t  idx) const
inline

◆ GetCStringAtIndexUnchecked()

template<typename T >
ConstString lldb_private::UniqueCStringMap< T >::GetCStringAtIndexUnchecked ( uint32_t  idx) const
inline

Definition at line 62 of file UniqueCStringMap.h.

References lldb_private::UniqueCStringMap< T >::m_map.

◆ GetSize()

template<typename T >
size_t lldb_private::UniqueCStringMap< T >::GetSize ( ) const
inline

◆ GetValueAtIndex()

template<typename T >
bool lldb_private::UniqueCStringMap< T >::GetValueAtIndex ( uint32_t  idx,
T &  value 
) const
inline

Definition at line 54 of file UniqueCStringMap.h.

References lldb_private::UniqueCStringMap< T >::m_map.

◆ GetValueAtIndexUnchecked()

template<typename T >
T lldb_private::UniqueCStringMap< T >::GetValueAtIndexUnchecked ( uint32_t  idx) const
inline

◆ GetValueRefAtIndexUnchecked()

template<typename T >
const T & lldb_private::UniqueCStringMap< T >::GetValueRefAtIndexUnchecked ( uint32_t  idx) const
inline

Definition at line 72 of file UniqueCStringMap.h.

References lldb_private::UniqueCStringMap< T >::m_map.

◆ GetValues() [1/2]

template<typename T >
size_t lldb_private::UniqueCStringMap< T >::GetValues ( const RegularExpression regex,
std::vector< T > &  values 
) const
inline

◆ GetValues() [2/2]

template<typename T >
size_t lldb_private::UniqueCStringMap< T >::GetValues ( ConstString  unique_cstr,
std::vector< T > &  values 
) const
inline

Definition at line 124 of file UniqueCStringMap.h.

References lldb_private::UniqueCStringMap< T >::m_map.

◆ IsEmpty()

template<typename T >
bool lldb_private::UniqueCStringMap< T >::IsEmpty ( ) const
inline

◆ Reserve()

template<typename T >
void lldb_private::UniqueCStringMap< T >::Reserve ( size_t  n)
inline

Definition at line 157 of file UniqueCStringMap.h.

References lldb_private::UniqueCStringMap< T >::m_map.

Referenced by DecodeCStrMap().

◆ SizeToFit()

template<typename T >
void lldb_private::UniqueCStringMap< T >::SizeToFit ( )
inline

◆ Sort() [1/2]

template<typename T >
void lldb_private::UniqueCStringMap< T >::Sort ( )
inline

◆ Sort() [2/2]

template<typename T >
template<typename TCompare >
void lldb_private::UniqueCStringMap< T >::Sort ( TCompare  tc)
inline

Sort contents of this map using the provided comparator to break ties for entries with the same string value.

Definition at line 174 of file UniqueCStringMap.h.

References lldb_private::UniqueCStringMap< T >::Entry::cstring, lldb_private::UniqueCStringMap< T >::m_map, lldb_private::UniqueCStringMap< T >::Compare::ThreeWay(), and lldb_private::UniqueCStringMap< T >::Entry::value.

Member Data Documentation

◆ m_map

template<typename T >
collection lldb_private::UniqueCStringMap< T >::m_map
protected

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