LLDB  mainline
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
lldb_private::FormattersContainer< ValueType > Class Template Reference

#include <FormattersContainer.h>

Inheritance diagram for lldb_private::FormattersContainer< ValueType >:
Inheritance graph
[legend]
Collaboration diagram for lldb_private::FormattersContainer< ValueType >:
Collaboration graph
[legend]

Public Types

typedef std::shared_ptr< ValueType > ValueSP
 
typedef std::vector< std::pair< TypeMatcher, ValueSP > > MapType
 
typedef std::function< bool(const TypeMatcher &, const ValueSP &)> ForEachCallback
 
typedef std::shared_ptr< FormattersContainer< ValueType > > SharedPointer
 

Public Member Functions

 FormattersContainer (IFormatChangeListener *lst)
 
void Add (TypeMatcher matcher, const ValueSP &entry)
 
bool Delete (TypeMatcher matcher)
 
bool Get (ConstString type, ValueSP &entry)
 
bool GetExact (TypeMatcher matcher, ValueSP &entry)
 
ValueSP GetAtIndex (size_t index)
 
lldb::TypeNameSpecifierImplSP GetTypeNameSpecifierAtIndex (size_t index)
 
void Clear ()
 
void ForEach (ForEachCallback callback)
 
uint32_t GetCount ()
 
void AutoComplete (CompletionRequest &request)
 

Protected Member Functions

 FormattersContainer (const FormattersContainer &)=delete
 
const FormattersContaineroperator= (const FormattersContainer &)=delete
 
bool Get (const FormattersMatchVector &candidates, ValueSP &entry)
 

Protected Attributes

MapType m_map
 
std::recursive_mutex m_map_mutex
 
IFormatChangeListenerlistener
 

Friends

class TypeCategoryImpl
 

Detailed Description

template<typename ValueType>
class lldb_private::FormattersContainer< ValueType >

Definition at line 107 of file FormattersContainer.h.

Member Typedef Documentation

◆ ForEachCallback

template<typename ValueType >
typedef std::function<bool(const TypeMatcher &, const ValueSP &)> lldb_private::FormattersContainer< ValueType >::ForEachCallback

Definition at line 112 of file FormattersContainer.h.

◆ MapType

template<typename ValueType >
typedef std::vector<std::pair<TypeMatcher, ValueSP> > lldb_private::FormattersContainer< ValueType >::MapType

Definition at line 110 of file FormattersContainer.h.

◆ SharedPointer

template<typename ValueType >
typedef std::shared_ptr<FormattersContainer<ValueType> > lldb_private::FormattersContainer< ValueType >::SharedPointer

Definition at line 114 of file FormattersContainer.h.

◆ ValueSP

template<typename ValueType >
typedef std::shared_ptr<ValueType> lldb_private::FormattersContainer< ValueType >::ValueSP

Definition at line 109 of file FormattersContainer.h.

Constructor & Destructor Documentation

◆ FormattersContainer() [1/2]

template<typename ValueType >
lldb_private::FormattersContainer< ValueType >::FormattersContainer ( IFormatChangeListener lst)
inline

Definition at line 118 of file FormattersContainer.h.

◆ FormattersContainer() [2/2]

template<typename ValueType >
lldb_private::FormattersContainer< ValueType >::FormattersContainer ( const FormattersContainer< ValueType > &  )
protecteddelete

Member Function Documentation

◆ Add()

template<typename ValueType >
void lldb_private::FormattersContainer< ValueType >::Add ( TypeMatcher  matcher,
const ValueSP entry 
)
inline

◆ AutoComplete()

template<typename ValueType >
void lldb_private::FormattersContainer< ValueType >::AutoComplete ( CompletionRequest request)
inline

Definition at line 205 of file FormattersContainer.h.

◆ Clear()

template<typename ValueType >
void lldb_private::FormattersContainer< ValueType >::Clear ( )
inline

◆ Delete()

template<typename ValueType >
bool lldb_private::FormattersContainer< ValueType >::Delete ( TypeMatcher  matcher)
inline

◆ ForEach()

template<typename ValueType >
void lldb_private::FormattersContainer< ValueType >::ForEach ( ForEachCallback  callback)
inline

◆ Get() [1/2]

template<typename ValueType >
bool lldb_private::FormattersContainer< ValueType >::Get ( const FormattersMatchVector candidates,
ValueSP entry 
)
inlineprotected

Definition at line 216 of file FormattersContainer.h.

◆ Get() [2/2]

template<typename ValueType >
bool lldb_private::FormattersContainer< ValueType >::Get ( ConstString  type,
ValueSP entry 
)
inline

◆ GetAtIndex()

template<typename ValueType >
ValueSP lldb_private::FormattersContainer< ValueType >::GetAtIndex ( size_t  index)
inline

Definition at line 166 of file FormattersContainer.h.

◆ GetCount()

template<typename ValueType >
uint32_t lldb_private::FormattersContainer< ValueType >::GetCount ( )
inline

◆ GetExact()

template<typename ValueType >
bool lldb_private::FormattersContainer< ValueType >::GetExact ( TypeMatcher  matcher,
ValueSP entry 
)
inline

◆ GetTypeNameSpecifierAtIndex()

template<typename ValueType >
lldb::TypeNameSpecifierImplSP lldb_private::FormattersContainer< ValueType >::GetTypeNameSpecifierAtIndex ( size_t  index)
inline

Definition at line 173 of file FormattersContainer.h.

◆ operator=()

template<typename ValueType >
const FormattersContainer& lldb_private::FormattersContainer< ValueType >::operator= ( const FormattersContainer< ValueType > &  )
protecteddelete

Friends And Related Function Documentation

◆ TypeCategoryImpl

template<typename ValueType >
friend class TypeCategoryImpl
friend

Definition at line 116 of file FormattersContainer.h.

Member Data Documentation

◆ listener

template<typename ValueType >
IFormatChangeListener* lldb_private::FormattersContainer< ValueType >::listener
protected

◆ m_map

template<typename ValueType >
MapType lldb_private::FormattersContainer< ValueType >::m_map
protected

◆ m_map_mutex

template<typename ValueType >
std::recursive_mutex lldb_private::FormattersContainer< ValueType >::m_map_mutex
protected

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