LLDB mainline
|
A frozen ValueObject copied into host memory. More...
#include <ValueObjectConstResult.h>
Protected Attributes | |
ConstString | m_type_name |
std::optional< uint64_t > | m_byte_size |
ValueObjectConstResultImpl | m_impl |
![]() | |
ValueObject * | m_parent = nullptr |
The parent value object, or nullptr if this has no parent. | |
ValueObject * | m_root = nullptr |
The root of the hierarchy for this ValueObject (or nullptr if never calculated). | |
EvaluationPoint | m_update_point |
Stores both the stop id and the full context at which this value was last updated. | |
ConstString | m_name |
The name of this object. | |
DataExtractor | m_data |
A data extractor that can be used to extract the value. | |
Value | m_value |
Status | m_error |
An error object that can describe any errors that occur when updating values. | |
std::string | m_value_str |
Cached value string that will get cleared if/when the value is updated. | |
std::string | m_old_value_str |
Cached old value string from the last time the value was gotten. | |
std::string | m_location_str |
Cached location string that will get cleared if/when the value is updated. | |
std::string | m_summary_str |
Cached summary string that will get cleared if/when the value is updated. | |
std::string | m_object_desc_str |
Cached result of the "object printer". | |
CompilerType | m_override_type |
If the type of the value object should be overridden, the type to impose. | |
ValueObjectManager * | m_manager = nullptr |
This object is managed by the root object (any ValueObject that gets created without a parent.) The manager gets passed through all the generations of dependent objects, and will keep the whole cluster of objects alive as long as a shared pointer to any of them has been handed out. | |
ChildrenManager | m_children |
std::map< ConstString, ValueObject * > | m_synthetic_children |
ValueObject * | m_dynamic_value = nullptr |
ValueObject * | m_synthetic_value = nullptr |
ValueObject * | m_deref_valobj = nullptr |
lldb::ValueObjectSP | m_addr_of_valobj_sp |
We have to hold onto a shared pointer to this one because it is created as an independent ValueObjectConstResult, which isn't managed by us. | |
lldb::Format | m_format = lldb::eFormatDefault |
lldb::Format | m_last_format = lldb::eFormatDefault |
uint32_t | m_last_format_mgr_revision = 0 |
lldb::TypeSummaryImplSP | m_type_summary_sp |
lldb::TypeFormatImplSP | m_type_format_sp |
lldb::SyntheticChildrenSP | m_synthetic_children_sp |
ProcessModID | m_user_id_of_forced_summary |
AddressType | m_address_type_of_ptr_or_ref_children = eAddressTypeInvalid |
llvm::SmallVector< uint8_t, 16 > | m_value_checksum |
lldb::LanguageType | m_preferred_display_language = lldb::eLanguageTypeUnknown |
uint64_t | m_language_flags = 0 |
UserID | m_id |
Unique identifier for every value object. | |
struct lldb_private::ValueObject::Bitflags | m_flags |
Friends | |
class | ValueObjectConstResultImpl |
A frozen ValueObject copied into host memory.
Definition at line 34 of file ValueObjectConstResult.h.
|
overridedefault |
|
private |
Definition at line 39 of file ValueObjectConstResult.cpp.
References lldb_private::eAddressTypeLoad, lldb_private::ValueObject::m_data, lldb_private::DataExtractor::SetAddressByteSize(), lldb_private::ValueObject::SetAddressTypeOfChildren(), lldb_private::DataExtractor::SetByteOrder(), lldb_private::ValueObject::SetIsConstant(), and lldb_private::ValueObject::SetValueIsValid().
|
private |
Definition at line 63 of file ValueObjectConstResult.cpp.
References lldb_private::eAddressTypeLoad, lldb_private::DataExtractor::GetByteSize(), lldb_private::DataExtractor::GetDataStart(), lldb_private::Value::GetScalar(), lldb_private::DataExtractor::GetSharedDataBuffer(), lldb_private::Value::HostAddress, lldb_private::ValueObject::m_data, lldb_private::ValueObject::m_name, lldb_private::ValueObject::m_value, lldb_private::ValueObject::SetAddressTypeOfChildren(), lldb_private::Value::SetCompilerType(), lldb_private::DataExtractor::SetData(), lldb_private::ValueObject::SetIsConstant(), lldb_private::ValueObject::SetValueIsValid(), and lldb_private::Value::SetValueType().
|
private |
Definition at line 109 of file ValueObjectConstResult.cpp.
References lldb_private::eAddressTypeLoad, lldb_private::Scalar::GetBytes(), lldb_private::Value::GetScalar(), lldb_private::Value::HostAddress, lldb_private::ValueObject::m_data, lldb_private::ValueObject::m_name, lldb_private::ValueObject::m_value, lldb_private::DataExtractor::SetAddressByteSize(), lldb_private::ValueObject::SetAddressTypeOfChildren(), lldb_private::DataExtractor::SetByteOrder(), lldb_private::Value::SetCompilerType(), lldb_private::DataExtractor::SetData(), lldb_private::ValueObject::SetIsConstant(), lldb_private::ValueObject::SetValueIsValid(), and lldb_private::Value::SetValueType().
|
private |
Definition at line 140 of file ValueObjectConstResult.cpp.
References lldb_private::eAddressTypeFile, lldb_private::eAddressTypeHost, lldb_private::eAddressTypeInvalid, lldb_private::eAddressTypeLoad, lldb_private::Value::FileAddress, lldb_private::Scalar::GetData(), lldb_private::Value::GetScalar(), lldb_private::Value::HostAddress, lldb_private::Value::LoadAddress, lldb_private::ValueObject::m_data, lldb_private::ValueObject::m_name, lldb_private::ValueObject::m_value, lldb_private::Value::Scalar, lldb_private::DataExtractor::SetAddressByteSize(), lldb_private::ValueObject::SetAddressTypeOfChildren(), lldb_private::Value::SetCompilerType(), lldb_private::ValueObject::SetIsConstant(), lldb_private::ValueObject::SetValueIsValid(), and lldb_private::Value::SetValueType().
|
private |
Definition at line 185 of file ValueObjectConstResult.cpp.
References lldb_private::ExecutionContextScope::CalculateExecutionContext(), lldb_private::Value::GetValueAsData(), lldb_private::ValueObject::m_data, lldb_private::ValueObject::m_error, lldb_private::ValueObject::m_name, and lldb_private::ValueObject::m_value.
|
private |
Definition at line 177 of file ValueObjectConstResult.cpp.
References error(), lldb_private::ValueObject::m_error, and lldb_private::ValueObject::SetIsConstant().
|
privatedelete |
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 258 of file ValueObjectConstResult.cpp.
References lldb_private::ValueObjectConstResultImpl::AddressOf(), error(), and m_impl.
|
overridevirtual |
Should only be called by ValueObject::GetNumChildren().
Implements lldb_private::ValueObject.
Definition at line 219 of file ValueObjectConstResult.cpp.
References lldb_private::ValueObject::GetCompilerType(), lldb_private::ValueObject::GetExecutionContextRef(), and lldb_private::CompilerType::GetNumChildren().
|
static |
Definition at line 52 of file ValueObjectConstResult.cpp.
References lldb_private::ClusterManager< T >::Create().
|
static |
Definition at line 85 of file ValueObjectConstResult.cpp.
References lldb_private::ClusterManager< T >::Create().
|
static |
Definition at line 127 of file ValueObjectConstResult.cpp.
References lldb_private::ClusterManager< T >::Create().
|
static |
Definition at line 171 of file ValueObjectConstResult.cpp.
References lldb_private::ClusterManager< T >::Create(), and error().
|
static |
Definition at line 29 of file ValueObjectConstResult.cpp.
References lldb_private::ClusterManager< T >::Create().
Referenced by lldb_private::ValueObject::AddressOf(), lldb_private::ValueObjectConstResultImpl::AddressOf(), lldb_private::ValueObject::Cast(), lldb_private::ClangExpressionVariable::ClangExpressionVariable(), lldb_private::ValueObject::CreateConstantValue(), lldb_private::ValueObject::CreateValueObjectFromAddress(), lldb_private::ValueObject::CreateValueObjectFromData(), EntityPersistentVariable::Dematerialize(), EntityResultVariable::Dematerialize(), dump_type_value(), lldb_private::UserExpression::Evaluate(), lldb::SBFrame::EvaluateExpression(), lldb::SBTarget::EvaluateExpression(), lldb_private::Target::EvaluateExpression(), lldb_private::AppleObjCRuntime::GetBacktraceThreadFromException(), NSIndexPathSyntheticFrontEnd::Impl::InlinedIndexes::GetIndexAtIndex(), ABIMacOSX_arm64::GetReturnValueObjectImpl(), ABISysV_arm64::GetReturnValueObjectImpl(), ABIMacOSX_arm::GetReturnValueObjectImpl(), ABISysV_arm::GetReturnValueObjectImpl(), ABIMacOSX_i386::GetReturnValueObjectImpl(), ABISysV_mips::GetReturnValueObjectImpl(), ABISysV_mips64::GetReturnValueObjectImpl(), ABISysV_ppc::GetReturnValueObjectImpl(), ABISysV_x86_64::GetReturnValueObjectImpl(), ABIWindows_x86_64::GetReturnValueObjectImpl(), ABISysV_arc::GetReturnValueObjectImpl(), ABISysV_hexagon::GetReturnValueObjectImpl(), ABISysV_arc::GetReturnValueObjectSimple(), ABISysV_ppc::GetReturnValueObjectSimple(), ABISysV_s390x::GetReturnValueObjectSimple(), ABISysV_i386::GetReturnValueObjectSimple(), ABISysV_x86_64::GetReturnValueObjectSimple(), ABIWindows_x86_64::GetReturnValueObjectSimple(), lldb_private::Thread::GetSiginfoValue(), EntityPersistentVariable::MakeAllocation(), ObjCExceptionRecognizedStackFrame::ObjCExceptionRecognizedStackFrame(), and lldb_private::ValueObject::Persist().
|
static |
Definition at line 99 of file ValueObjectConstResult.cpp.
References lldb_private::ClusterManager< T >::Create().
|
overridevirtual |
Should only be called by ValueObject::GetChildAtIndex().
Reimplemented from lldb_private::ValueObject.
Definition at line 267 of file ValueObjectConstResult.cpp.
References lldb_private::ValueObjectConstResultImpl::CreateChildAtIndex(), and m_impl.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 247 of file ValueObjectConstResult.cpp.
References lldb_private::ValueObjectConstResultImpl::Dereference(), error(), and m_impl.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 297 of file ValueObjectConstResult.cpp.
References lldb_private::ValueObjectConstResultImpl::Cast(), and m_impl.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 262 of file ValueObjectConstResult.cpp.
References lldb_private::ValueObjectConstResultImpl::GetAddressOf(), and m_impl.
|
overridevirtual |
Implements lldb_private::ValueObject.
Definition at line 207 of file ValueObjectConstResult.cpp.
References lldb_private::ExecutionContext::GetBestExecutionContextScope(), GetByteSize(), lldb_private::ValueObject::GetCompilerType(), lldb_private::ValueObject::GetExecutionContextRef(), m_byte_size, and SetByteSize().
Referenced by GetByteSize().
|
overrideprotectedvirtual |
Implements lldb_private::ValueObject.
Definition at line 199 of file ValueObjectConstResult.cpp.
References lldb_private::Value::GetCompilerType(), and lldb_private::ValueObject::m_value.
Referenced by GetPreferredDisplayLanguage().
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 231 of file ValueObjectConstResult.cpp.
References lldb_private::ValueObject::GetCompilerType(), and lldb_private::CompilerType::GetDisplayTypeName().
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 280 of file ValueObjectConstResult.cpp.
References lldb::eNoDynamicValues, lldb_private::ValueObject::GetError(), lldb_private::ValueObject::GetExecutionContextRef(), lldb_private::ExecutionContext::GetProcessPtr(), lldb_private::ValueObject::GetSP(), lldb_private::ValueObject::IsDynamic(), lldb_private::Process::IsPossibleDynamicValue(), lldb_private::ValueObject::m_dynamic_value, and lldb_private::Status::Success().
|
inlineoverridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 97 of file ValueObjectConstResult.h.
References lldb_private::ValueObjectConstResultImpl::GetLiveAddress(), and m_impl.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 273 of file ValueObjectConstResult.cpp.
References lldb_private::ValueObjectConstResultImpl::GetPointeeData(), and m_impl.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 301 of file ValueObjectConstResult.cpp.
References lldb::eLanguageTypeUnknown, GetCompilerTypeImpl(), lldb_private::CompilerType::GetMinimumLanguage(), and lldb_private::ValueObject::m_preferred_display_language.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 251 of file ValueObjectConstResult.cpp.
References lldb_private::ValueObjectConstResultImpl::GetSyntheticChildAtOffset(), and m_impl.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 225 of file ValueObjectConstResult.cpp.
References lldb_private::ValueObject::GetCompilerType(), lldb_private::CompilerType::GetTypeName(), lldb_private::ConstString::IsEmpty(), and m_type_name.
|
overridevirtual |
Implements lldb_private::ValueObject.
Definition at line 203 of file ValueObjectConstResult.cpp.
References lldb::eValueTypeConstResult.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 241 of file ValueObjectConstResult.cpp.
|
privatedelete |
void ValueObjectConstResult::SetByteSize | ( | size_t | size | ) |
Definition at line 217 of file ValueObjectConstResult.cpp.
References m_byte_size.
Referenced by GetByteSize().
|
inlineoverridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 99 of file ValueObjectConstResult.h.
References m_impl, and lldb_private::ValueObjectConstResultImpl::SetLiveAddress().
|
overrideprotectedvirtual |
Implements lldb_private::ValueObject.
Definition at line 235 of file ValueObjectConstResult.cpp.
References lldb_private::ValueObject::SetValueIsValid().
|
friend |
Definition at line 122 of file ValueObjectConstResult.h.
|
protected |
Definition at line 117 of file ValueObjectConstResult.h.
Referenced by GetByteSize(), and SetByteSize().
|
protected |
Definition at line 119 of file ValueObjectConstResult.h.
Referenced by AddressOf(), CreateChildAtIndex(), Dereference(), DoCast(), GetAddressOf(), GetLiveAddress(), GetPointeeData(), GetSyntheticChildAtOffset(), and SetLiveAddress().
|
protected |
Definition at line 116 of file ValueObjectConstResult.h.
Referenced by GetTypeName().