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

#include <ValueObject.h>

Public Member Functions

 ChildrenManager ()=default
 
bool HasChildAtIndex (size_t idx)
 
ValueObjectGetChildAtIndex (uint32_t idx)
 
void SetChildAtIndex (size_t idx, ValueObject *valobj)
 
void SetChildrenCount (size_t count)
 
size_t GetChildrenCount ()
 
void Clear (size_t new_count=0)
 

Private Types

typedef std::map< size_t, ValueObject * > ChildrenMap
 
typedef ChildrenMap::iterator ChildrenIterator
 
typedef ChildrenMap::value_type ChildrenPair
 

Private Attributes

std::recursive_mutex m_mutex
 
ChildrenMap m_children
 
size_t m_children_count = 0
 

Detailed Description

Definition at line 791 of file ValueObject.h.

Member Typedef Documentation

◆ ChildrenIterator

typedef ChildrenMap::iterator lldb_private::ValueObject::ChildrenManager::ChildrenIterator
private

Definition at line 825 of file ValueObject.h.

◆ ChildrenMap

Definition at line 824 of file ValueObject.h.

◆ ChildrenPair

typedef ChildrenMap::value_type lldb_private::ValueObject::ChildrenManager::ChildrenPair
private

Definition at line 826 of file ValueObject.h.

Constructor & Destructor Documentation

◆ ChildrenManager()

lldb_private::ValueObject::ChildrenManager::ChildrenManager ( )
default

Member Function Documentation

◆ Clear()

void lldb_private::ValueObject::ChildrenManager::Clear ( size_t  new_count = 0)
inline

◆ GetChildAtIndex()

ValueObject * lldb_private::ValueObject::ChildrenManager::GetChildAtIndex ( uint32_t  idx)
inline

Definition at line 800 of file ValueObject.h.

References m_children, and m_mutex.

Referenced by lldb_private::ValueObject::GetChildAtIndex().

◆ GetChildrenCount()

size_t lldb_private::ValueObject::ChildrenManager::GetChildrenCount ( )
inline

Definition at line 815 of file ValueObject.h.

References m_children_count.

Referenced by lldb_private::ValueObject::GetNumChildren().

◆ HasChildAtIndex()

bool lldb_private::ValueObject::ChildrenManager::HasChildAtIndex ( size_t  idx)
inline

Definition at line 795 of file ValueObject.h.

References m_children, and m_mutex.

Referenced by lldb_private::ValueObject::GetChildAtIndex().

◆ SetChildAtIndex()

void lldb_private::ValueObject::ChildrenManager::SetChildAtIndex ( size_t  idx,
ValueObject valobj 
)
inline

Definition at line 806 of file ValueObject.h.

References m_children, and m_mutex.

Referenced by lldb_private::ValueObject::GetChildAtIndex().

◆ SetChildrenCount()

void lldb_private::ValueObject::ChildrenManager::SetChildrenCount ( size_t  count)
inline

Definition at line 813 of file ValueObject.h.

References Clear().

Referenced by lldb_private::ValueObject::SetNumChildren().

Member Data Documentation

◆ m_children

ChildrenMap lldb_private::ValueObject::ChildrenManager::m_children
private

Definition at line 828 of file ValueObject.h.

Referenced by Clear(), GetChildAtIndex(), HasChildAtIndex(), and SetChildAtIndex().

◆ m_children_count

size_t lldb_private::ValueObject::ChildrenManager::m_children_count = 0
private

Definition at line 829 of file ValueObject.h.

Referenced by Clear(), and GetChildrenCount().

◆ m_mutex

std::recursive_mutex lldb_private::ValueObject::ChildrenManager::m_mutex
private

Definition at line 827 of file ValueObject.h.

Referenced by Clear(), GetChildAtIndex(), HasChildAtIndex(), and SetChildAtIndex().


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