LLDB mainline
Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
lldb_private::TypeMap Class Reference

#include <TypeMap.h>

Public Types

typedef std::multimap< lldb::user_id_t, lldb::TypeSPcollection
 
typedef AdaptedIterable< collection, lldb::TypeSP, map_adapterTypeIterable
 

Public Member Functions

 TypeMap ()
 
virtual ~TypeMap ()
 
void Clear ()
 
void Dump (Stream *s, bool show_context, lldb::DescriptionLevel level=lldb::eDescriptionLevelFull) const
 
TypeMap FindTypes (ConstString name)
 
void Insert (const lldb::TypeSP &type)
 
bool Empty () const
 
bool InsertUnique (const lldb::TypeSP &type)
 
uint32_t GetSize () const
 
lldb::TypeSP GetTypeAtIndex (uint32_t idx)
 
lldb::TypeSP FirstType () const
 
TypeIterable Types () const
 
void ForEach (std::function< bool(const lldb::TypeSP &type_sp)> const &callback) const
 
void ForEach (std::function< bool(lldb::TypeSP &type_sp)> const &callback)
 
bool Remove (const lldb::TypeSP &type_sp)
 
void RemoveMismatchedTypes (llvm::StringRef type_scope, llvm::StringRef type_basename, lldb::TypeClass type_class, bool exact_match)
 

Private Types

typedef collection::iterator iterator
 
typedef collection::const_iterator const_iterator
 

Private Member Functions

 TypeMap (const TypeMap &)=delete
 
const TypeMapoperator= (const TypeMap &)=delete
 

Private Attributes

collection m_types
 

Detailed Description

Definition at line 20 of file TypeMap.h.

Member Typedef Documentation

◆ collection

Definition at line 46 of file TypeMap.h.

◆ const_iterator

typedef collection::const_iterator lldb_private::TypeMap::const_iterator
private

Definition at line 64 of file TypeMap.h.

◆ iterator

typedef collection::iterator lldb_private::TypeMap::iterator
private

Definition at line 63 of file TypeMap.h.

◆ TypeIterable

Definition at line 47 of file TypeMap.h.

Constructor & Destructor Documentation

◆ TypeMap() [1/2]

TypeMap::TypeMap ( )

Definition at line 22 of file TypeMap.cpp.

◆ ~TypeMap()

TypeMap::~TypeMap ( )
virtualdefault

◆ TypeMap() [2/2]

lldb_private::TypeMap::TypeMap ( const TypeMap )
privatedelete

Member Function Documentation

◆ Clear()

void TypeMap::Clear ( )

Definition at line 73 of file TypeMap.cpp.

References m_types.

◆ Dump()

void TypeMap::Dump ( Stream s,
bool  show_context,
lldb::DescriptionLevel  level = lldb::eDescriptionLevelFull 
) const

Definition at line 130 of file TypeMap.cpp.

References m_types.

◆ Empty()

bool TypeMap::Empty ( ) const

◆ FindTypes()

TypeMap lldb_private::TypeMap::FindTypes ( ConstString  name)

◆ FirstType()

lldb::TypeSP TypeMap::FirstType ( ) const

◆ ForEach() [1/2]

void TypeMap::ForEach ( std::function< bool(const lldb::TypeSP &type_sp)> const &  callback) const

Definition at line 100 of file TypeMap.cpp.

References m_types.

Referenced by lldb_private::SymbolContext::SortTypeList().

◆ ForEach() [2/2]

void TypeMap::ForEach ( std::function< bool(lldb::TypeSP &type_sp)> const &  callback)

Definition at line 108 of file TypeMap.cpp.

References m_types.

◆ GetSize()

uint32_t TypeMap::GetSize ( ) const

Definition at line 75 of file TypeMap.cpp.

References m_types.

◆ GetTypeAtIndex()

TypeSP TypeMap::GetTypeAtIndex ( uint32_t  idx)

Definition at line 83 of file TypeMap.cpp.

References m_types.

◆ Insert()

void TypeMap::Insert ( const lldb::TypeSP type)

◆ InsertUnique()

bool TypeMap::InsertUnique ( const lldb::TypeSP type)

Definition at line 34 of file TypeMap.cpp.

References Insert(), and m_types.

Referenced by lldb_private::TypeResults::InsertUnique().

◆ operator=()

const TypeMap & lldb_private::TypeMap::operator= ( const TypeMap )
privatedelete

◆ Remove()

bool TypeMap::Remove ( const lldb::TypeSP type_sp)

Definition at line 116 of file TypeMap.cpp.

References m_types.

Referenced by lldb_private::SymbolContext::SortTypeList().

◆ RemoveMismatchedTypes()

void TypeMap::RemoveMismatchedTypes ( llvm::StringRef  type_scope,
llvm::StringRef  type_basename,
lldb::TypeClass  type_class,
bool  exact_match 
)

◆ Types()

TypeIterable lldb_private::TypeMap::Types ( ) const
inline

Member Data Documentation

◆ m_types

collection lldb_private::TypeMap::m_types
private

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