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

A value object class that is seeded with the static variable value and it vends the user facing value object. More...

#include <ValueObjectUpdater.h>

Public Member Functions

 ValueObjectUpdater (lldb::ValueObjectSP in_valobj_sp)
 
lldb::ValueObjectSP GetSP ()
 Gets the correct value object from the root object for a given process stop ID.
 
lldb::ProcessSP GetProcessSP () const
 

Private Attributes

lldb::ValueObjectSP m_root_valobj_sp
 The root value object is the static typed variable object.
 
lldb::ValueObjectSP m_user_valobj_sp
 The user value object is the value object the user wants to see.
 
uint32_t m_stop_id = UINT32_MAX
 The stop ID that m_user_valobj_sp is valid for.
 

Detailed Description

A value object class that is seeded with the static variable value and it vends the user facing value object.

If the type is dynamic it can vend the dynamic type. If this user type also has a synthetic type associated with it, it will vend the synthetic type. The class watches the process' stop ID and will update the user type when needed.

Definition at line 21 of file ValueObjectUpdater.h.

Constructor & Destructor Documentation

◆ ValueObjectUpdater()

ValueObjectUpdater::ValueObjectUpdater ( lldb::ValueObjectSP  in_valobj_sp)

Definition at line 13 of file ValueObjectUpdater.cpp.

References lldb::eNoDynamicValues, and m_root_valobj_sp.

Member Function Documentation

◆ GetProcessSP()

lldb::ProcessSP ValueObjectUpdater::GetProcessSP ( ) const

Definition at line 52 of file ValueObjectUpdater.cpp.

References m_root_valobj_sp.

Referenced by GetSP().

◆ GetSP()

lldb::ValueObjectSP ValueObjectUpdater::GetSP ( )

Gets the correct value object from the root object for a given process stop ID.

If dynamic values are enabled, or if synthetic children are enabled, the value object that the user wants to see might change while debugging.

Definition at line 22 of file ValueObjectUpdater.cpp.

References lldb::eDynamicDontRunTarget, GetProcessSP(), m_root_valobj_sp, m_stop_id, and m_user_valobj_sp.

Member Data Documentation

◆ m_root_valobj_sp

lldb::ValueObjectSP lldb_private::ValueObjectUpdater::m_root_valobj_sp
private

The root value object is the static typed variable object.

Definition at line 23 of file ValueObjectUpdater.h.

Referenced by GetProcessSP(), GetSP(), and ValueObjectUpdater().

◆ m_stop_id

uint32_t lldb_private::ValueObjectUpdater::m_stop_id = UINT32_MAX
private

The stop ID that m_user_valobj_sp is valid for.

Definition at line 27 of file ValueObjectUpdater.h.

Referenced by GetSP().

◆ m_user_valobj_sp

lldb::ValueObjectSP lldb_private::ValueObjectUpdater::m_user_valobj_sp
private

The user value object is the value object the user wants to see.

Definition at line 25 of file ValueObjectUpdater.h.

Referenced by GetSP().


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