LLDB mainline
|
A ValueObject that contains a root variable that may or may not have children. More...
#include <ValueObjectVariable.h>
Public Member Functions | |
~ValueObjectVariable () override | |
std::optional< uint64_t > | GetByteSize () override |
ConstString | GetTypeName () override |
ConstString | GetQualifiedTypeName () override |
ConstString | GetDisplayTypeName () override |
llvm::Expected< uint32_t > | CalculateNumChildren (uint32_t max) override |
Should only be called by ValueObject::GetNumChildren(). | |
lldb::ValueType | GetValueType () const override |
bool | IsInScope () override |
lldb::ModuleSP | GetModule () override |
Return the module associated with this value object in case the value is from an executable file and might have its data in sections of the file. | |
SymbolContextScope * | GetSymbolContextScope () override |
bool | GetDeclaration (Declaration &decl) override |
const char * | GetLocationAsCString () override |
bool | SetValueFromCString (const char *value_str, Status &error) override |
bool | SetData (DataExtractor &data, Status &error) override |
lldb::VariableSP | GetVariable () override |
Public Member Functions inherited from lldb_private::ValueObject | |
virtual | ~ValueObject () |
const EvaluationPoint & | GetUpdatePoint () const |
EvaluationPoint & | GetUpdatePoint () |
const ExecutionContextRef & | GetExecutionContextRef () const |
lldb::TargetSP | GetTargetSP () const |
lldb::ProcessSP | GetProcessSP () const |
lldb::ThreadSP | GetThreadSP () const |
lldb::StackFrameSP | GetFrameSP () const |
void | SetNeedsUpdate () |
CompilerType | GetCompilerType () |
virtual TypeImpl | GetTypeImpl () |
virtual bool | CanProvideValue () |
virtual std::optional< uint64_t > | GetByteSize ()=0 |
virtual lldb::ValueType | GetValueType () const =0 |
virtual ConstString | GetTypeName () |
virtual ConstString | GetDisplayTypeName () |
virtual ConstString | GetQualifiedTypeName () |
lldb::LanguageType | GetObjectRuntimeLanguage () |
uint32_t | GetTypeInfo (CompilerType *pointee_or_element_compiler_type=nullptr) |
bool | IsPointerType () |
bool | IsArrayType () |
bool | IsScalarType () |
bool | IsPointerOrReferenceType () |
bool | IsPossibleDynamicType () |
bool | IsNilReference () |
bool | IsUninitializedReference () |
virtual bool | IsBaseClass () |
bool | IsBaseClass (uint32_t &depth) |
virtual bool | IsDereferenceOfParent () |
bool | IsIntegerType (bool &is_signed) |
virtual void | GetExpressionPath (Stream &s, GetExpressionPathFormat=eGetExpressionPathFormatDereferencePointers) |
lldb::ValueObjectSP | GetValueForExpressionPath (llvm::StringRef expression, ExpressionPathScanEndReason *reason_to_stop=nullptr, ExpressionPathEndResultType *final_value_type=nullptr, const GetValueForExpressionPathOptions &options=GetValueForExpressionPathOptions::DefaultOptions(), ExpressionPathAftermath *final_task_on_target=nullptr) |
virtual bool | IsInScope () |
virtual lldb::offset_t | GetByteOffset () |
virtual uint32_t | GetBitfieldBitSize () |
virtual uint32_t | GetBitfieldBitOffset () |
bool | IsBitfield () |
virtual const char * | GetValueAsCString () |
virtual bool | GetValueAsCString (const lldb_private::TypeFormatImpl &format, std::string &destination) |
bool | GetValueAsCString (lldb::Format format, std::string &destination) |
virtual uint64_t | GetValueAsUnsigned (uint64_t fail_value, bool *success=nullptr) |
virtual int64_t | GetValueAsSigned (int64_t fail_value, bool *success=nullptr) |
llvm::Expected< llvm::APSInt > | GetValueAsAPSInt () |
If the current ValueObject is of an appropriate type, convert the value to an APSInt and return that. | |
llvm::Expected< llvm::APFloat > | GetValueAsAPFloat () |
If the current ValueObject is of an appropriate type, convert the value to an APFloat and return that. | |
llvm::Expected< bool > | GetValueAsBool () |
If the current ValueObject is of an appropriate type, convert the value to a boolean and return that. | |
void | SetValueFromInteger (const llvm::APInt &value, Status &error) |
Update an existing integer ValueObject with a new integer value. | |
void | SetValueFromInteger (lldb::ValueObjectSP new_val_sp, Status &error) |
Update an existing integer ValueObject with an integer value created frome 'new_val_sp'. | |
virtual bool | SetValueFromCString (const char *value_str, Status &error) |
virtual lldb::ModuleSP | GetModule () |
Return the module associated with this value object in case the value is from an executable file and might have its data in sections of the file. | |
ValueObject * | GetRoot () |
ValueObject * | FollowParentChain (std::function< bool(ValueObject *)>) |
Given a ValueObject, loop over itself and its parent, and its parent's parent, . | |
virtual bool | GetDeclaration (Declaration &decl) |
const Status & | GetError () |
ConstString | GetName () const |
lldb::user_id_t | GetID () const |
Returns a unique id for this ValueObject. | |
virtual lldb::ValueObjectSP | GetChildAtIndex (uint32_t idx, bool can_create=true) |
lldb::ValueObjectSP | GetChildAtNamePath (llvm::ArrayRef< llvm::StringRef > names) |
virtual lldb::ValueObjectSP | GetChildMemberWithName (llvm::StringRef name, bool can_create=true) |
virtual size_t | GetIndexOfChildWithName (llvm::StringRef name) |
llvm::Expected< uint32_t > | GetNumChildren (uint32_t max=UINT32_MAX) |
uint32_t | GetNumChildrenIgnoringErrors (uint32_t max=UINT32_MAX) |
Like GetNumChildren but returns 0 on error. | |
bool | HasChildren () |
const Value & | GetValue () const |
Value & | GetValue () |
virtual bool | ResolveValue (Scalar &scalar) |
virtual bool | IsLogicalTrue (Status &error) |
virtual const char * | GetLocationAsCString () |
const char * | GetSummaryAsCString (lldb::LanguageType lang=lldb::eLanguageTypeUnknown) |
bool | GetSummaryAsCString (TypeSummaryImpl *summary_ptr, std::string &destination, lldb::LanguageType lang=lldb::eLanguageTypeUnknown) |
bool | GetSummaryAsCString (std::string &destination, const TypeSummaryOptions &options) |
bool | GetSummaryAsCString (TypeSummaryImpl *summary_ptr, std::string &destination, const TypeSummaryOptions &options) |
llvm::Expected< std::string > | GetObjectDescription () |
bool | HasSpecialPrintableRepresentation (ValueObjectRepresentationStyle val_obj_display, lldb::Format custom_format) |
bool | DumpPrintableRepresentation (Stream &s, ValueObjectRepresentationStyle val_obj_display=eValueObjectRepresentationStyleSummary, lldb::Format custom_format=lldb::eFormatInvalid, PrintableRepresentationSpecialCases special=PrintableRepresentationSpecialCases::eAllow, bool do_dump_error=true) |
bool | GetValueIsValid () const |
bool | GetValueDidChange () |
bool | UpdateValueIfNeeded (bool update_format=true) |
bool | UpdateFormatsIfNeeded () |
lldb::ValueObjectSP | GetSP () |
void | SetName (ConstString name) |
Change the name of the current ValueObject. | |
virtual lldb::addr_t | GetAddressOf (bool scalar_is_load_address=true, AddressType *address_type=nullptr) |
lldb::addr_t | GetPointerValue (AddressType *address_type=nullptr) |
lldb::ValueObjectSP | GetSyntheticChild (ConstString key) const |
lldb::ValueObjectSP | GetSyntheticArrayMember (size_t index, bool can_create) |
lldb::ValueObjectSP | GetSyntheticBitFieldChild (uint32_t from, uint32_t to, bool can_create) |
lldb::ValueObjectSP | GetSyntheticExpressionPathChild (const char *expression, bool can_create) |
virtual lldb::ValueObjectSP | GetSyntheticChildAtOffset (uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str=ConstString()) |
virtual lldb::ValueObjectSP | GetSyntheticBase (uint32_t offset, const CompilerType &type, bool can_create, ConstString name_const_str=ConstString()) |
virtual lldb::ValueObjectSP | GetDynamicValue (lldb::DynamicValueType valueType) |
lldb::DynamicValueType | GetDynamicValueType () |
virtual lldb::ValueObjectSP | GetStaticValue () |
virtual lldb::ValueObjectSP | GetNonSyntheticValue () |
lldb::ValueObjectSP | GetSyntheticValue () |
virtual bool | HasSyntheticValue () |
virtual bool | IsSynthetic () |
lldb::ValueObjectSP | GetQualifiedRepresentationIfAvailable (lldb::DynamicValueType dynValue, bool synthValue) |
virtual lldb::ValueObjectSP | CreateConstantValue (ConstString name) |
virtual lldb::ValueObjectSP | Dereference (Status &error) |
virtual lldb::ValueObjectSP | Clone (ConstString new_name) |
Creates a copy of the ValueObject with a new name and setting the current ValueObject as its parent. | |
virtual lldb::ValueObjectSP | AddressOf (Status &error) |
virtual lldb::addr_t | GetLiveAddress () |
virtual void | SetLiveAddress (lldb::addr_t addr=LLDB_INVALID_ADDRESS, AddressType address_type=eAddressTypeLoad) |
lldb::ValueObjectSP | Cast (const CompilerType &compiler_type) |
virtual lldb::ValueObjectSP | DoCast (const CompilerType &compiler_type) |
virtual lldb::ValueObjectSP | CastPointerType (const char *name, CompilerType &ast_type) |
virtual lldb::ValueObjectSP | CastPointerType (const char *name, lldb::TypeSP &type_sp) |
lldb::addr_t | GetLoadAddress () |
Return the target load address associated with this value object. | |
llvm::Expected< lldb::ValueObjectSP > | CastDerivedToBaseType (CompilerType type, const llvm::ArrayRef< uint32_t > &base_type_indices) |
Take a ValueObject whose type is an inherited class, and cast it to 'type', which should be one of its base classes. | |
llvm::Expected< lldb::ValueObjectSP > | CastBaseToDerivedType (CompilerType type, uint64_t offset) |
Take a ValueObject whose type is a base class, and cast it to 'type', which should be one of its derived classes. | |
lldb::ValueObjectSP | CastToBasicType (CompilerType type) |
lldb::ValueObjectSP | CastToEnumType (CompilerType type) |
lldb::ValueObjectSP | GetVTable () |
If this object represents a C++ class with a vtable, return an object that represents the virtual function table. | |
void | ValueUpdated () |
virtual bool | IsDynamic () |
virtual bool | DoesProvideSyntheticValue () |
virtual bool | IsSyntheticChildrenGenerated () |
virtual void | SetSyntheticChildrenGenerated (bool b) |
virtual SymbolContextScope * | GetSymbolContextScope () |
llvm::Error | Dump (Stream &s) |
llvm::Error | Dump (Stream &s, const DumpValueObjectOptions &options) |
lldb::ValueObjectSP | Persist () |
bool | IsCStringContainer (bool check_pointer=false) |
Returns true if this is a char* or a char[] if it is a char* and check_pointer is true, it also checks that the pointer is valid. | |
std::pair< size_t, bool > | ReadPointedString (lldb::WritableDataBufferSP &buffer_sp, Status &error, bool honor_array) |
virtual size_t | GetPointeeData (DataExtractor &data, uint32_t item_idx=0, uint32_t item_count=1) |
virtual uint64_t | GetData (DataExtractor &data, Status &error) |
virtual bool | SetData (DataExtractor &data, Status &error) |
virtual bool | GetIsConstant () const |
bool | NeedsUpdating () |
void | SetIsConstant () |
lldb::Format | GetFormat () const |
virtual void | SetFormat (lldb::Format format) |
virtual lldb::LanguageType | GetPreferredDisplayLanguage () |
void | SetPreferredDisplayLanguage (lldb::LanguageType lt) |
lldb::TypeSummaryImplSP | GetSummaryFormat () |
void | SetSummaryFormat (lldb::TypeSummaryImplSP format) |
void | SetDerefValobj (ValueObject *deref) |
ValueObject * | GetDerefValobj () |
void | SetValueFormat (lldb::TypeFormatImplSP format) |
lldb::TypeFormatImplSP | GetValueFormat () |
void | SetSyntheticChildren (const lldb::SyntheticChildrenSP &synth_sp) |
lldb::SyntheticChildrenSP | GetSyntheticChildren () |
virtual ValueObject * | GetParent () |
virtual const ValueObject * | GetParent () const |
ValueObject * | GetNonBaseClassParent () |
void | SetAddressTypeOfChildren (AddressType at) |
AddressType | GetAddressTypeOfChildren () |
void | SetHasCompleteType () |
virtual bool | MightHaveChildren () |
Find out if a ValueObject might have children. | |
virtual lldb::VariableSP | GetVariable () |
virtual bool | IsRuntimeSupportValue () |
virtual uint64_t | GetLanguageFlags () |
virtual void | SetLanguageFlags (uint64_t flags) |
Static Public Member Functions | |
static lldb::ValueObjectSP | Create (ExecutionContextScope *exe_scope, const lldb::VariableSP &var_sp) |
Static Public Member Functions inherited from lldb_private::ValueObject | |
static lldb::ValueObjectSP | CreateValueObjectFromExpression (llvm::StringRef name, llvm::StringRef expression, const ExecutionContext &exe_ctx) |
static lldb::ValueObjectSP | CreateValueObjectFromExpression (llvm::StringRef name, llvm::StringRef expression, const ExecutionContext &exe_ctx, const EvaluateExpressionOptions &options) |
static lldb::ValueObjectSP | CreateValueObjectFromAddress (llvm::StringRef name, uint64_t address, const ExecutionContext &exe_ctx, CompilerType type, bool do_deref=true) |
Given an address either create a value object containing the value at that address, or create a value object containing the address itself (pointer value), depending on whether the parameter 'do_deref' is true or false. | |
static lldb::ValueObjectSP | CreateValueObjectFromData (llvm::StringRef name, const DataExtractor &data, const ExecutionContext &exe_ctx, CompilerType type) |
static lldb::ValueObjectSP | CreateValueObjectFromAPInt (lldb::TargetSP target, const llvm::APInt &v, CompilerType type, llvm::StringRef name) |
Create a value object containing the given APInt value. | |
static lldb::ValueObjectSP | CreateValueObjectFromAPFloat (lldb::TargetSP target, const llvm::APFloat &v, CompilerType type, llvm::StringRef name) |
Create a value object containing the given APFloat value. | |
static lldb::ValueObjectSP | CreateValueObjectFromBool (lldb::TargetSP target, bool value, llvm::StringRef name) |
Create a value object containing the given boolean value. | |
static lldb::ValueObjectSP | CreateValueObjectFromNullptr (lldb::TargetSP target, CompilerType type, llvm::StringRef name) |
Create a nullptr value object with the specified type (must be a nullptr type). | |
Protected Attributes | |
lldb::VariableSP | m_variable_sp |
The variable that this value object is based upon. | |
Value | m_resolved_value |
Protected Attributes inherited from lldb_private::ValueObject | |
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 |
Private Member Functions | |
ValueObjectVariable (ExecutionContextScope *exe_scope, ValueObjectManager &manager, const lldb::VariableSP &var_sp) | |
ValueObjectVariable (const ValueObjectVariable &)=delete | |
const ValueObjectVariable & | operator= (const ValueObjectVariable &)=delete |
A ValueObject that contains a root variable that may or may not have children.
Definition at line 34 of file ValueObjectVariable.h.
|
overridedefault |
|
private |
Definition at line 58 of file ValueObjectVariable.cpp.
References lldb_private::ValueObject::m_name, and m_variable_sp.
|
privatedelete |
|
overridevirtual |
Should only be called by ValueObject::GetNumChildren().
Implements lldb_private::ValueObject.
Definition at line 98 of file ValueObjectVariable.cpp.
References lldb_private::ValueObject::GetCompilerType(), lldb_private::ValueObject::GetExecutionContextRef(), lldb_private::CompilerType::GetNumChildren(), and lldb_private::CompilerType::IsValid().
|
static |
Definition at line 52 of file ValueObjectVariable.cpp.
References lldb_private::ClusterManager< T >::Create().
Referenced by CommandObjectTargetVariable::DoExecute(), CommandObjectTargetVariable::DumpGlobalVariableList(), lldb_private::ClangExpressionDeclMap::FindExternalVisibleDecls(), lldb::SBTarget::FindGlobalVariables(), lldb::SBModule::FindGlobalVariables(), lldb_private::StackFrame::GetValueObjectForFrameVariable(), lldb_private::Variable::GetValuesForVariableExpressionPath(), lldb::SBBlock::GetVariables(), lldb_private::ClangExpressionDeclMap::LookupLocalVariable(), lldb_private::FormatEntity::PrettyPrintFunctionArguments(), and EntityVariable::SetupValueObject().
|
overrideprotectedvirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 259 of file ValueObjectVariable.cpp.
References lldb_private::eAddressTypeFile, lldb_private::eAddressTypeHost, lldb_private::eAddressTypeLoad, lldb_private::Value::FileAddress, lldb_private::ValueObject::GetCompilerType(), lldb_private::ValueObject::GetExecutionContextRef(), lldb_private::ExecutionContext::GetProcessPtr(), lldb_private::CompilerType::GetTypeInfo(), lldb_private::ValueObject::GetValue(), lldb_private::Value::GetValueType(), lldb_private::Value::HostAddress, lldb_private::Value::Invalid, lldb_private::Process::IsAlive(), lldb_private::Value::LoadAddress, lldb_private::Value::Scalar, and lldb_private::ValueObject::SetAddressTypeOfChildren().
|
overridevirtual |
Implements lldb_private::ValueObject.
Definition at line 113 of file ValueObjectVariable.cpp.
References lldb_private::ExecutionContext::GetBestExecutionContextScope(), lldb_private::CompilerType::GetByteSize(), lldb_private::ValueObject::GetCompilerType(), lldb_private::ValueObject::GetExecutionContextRef(), and lldb_private::CompilerType::IsValid().
|
overrideprotectedvirtual |
Implements lldb_private::ValueObject.
Definition at line 69 of file ValueObjectVariable.cpp.
References lldb_private::Type::GetForwardCompilerType(), and m_variable_sp.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 346 of file ValueObjectVariable.cpp.
References m_variable_sp.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 83 of file ValueObjectVariable.cpp.
References lldb_private::CompilerType::GetDisplayTypeName(), lldb_private::Type::GetForwardCompilerType(), and m_variable_sp.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 354 of file ValueObjectVariable.cpp.
References lldb_private::Value::GetContextType(), lldb_private::ValueObject::GetLocationAsCString(), lldb_private::ValueObject::GetLocationAsCStringImpl(), lldb_private::ValueObject::m_data, m_resolved_value, and lldb_private::Value::RegisterInfo.
|
overridevirtual |
Return the module associated with this value object in case the value is from an executable file and might have its data in sections of the file.
This can be used for variables.
Reimplemented from lldb_private::ValueObject.
Definition at line 330 of file ValueObjectVariable.cpp.
References lldb_private::SymbolContextScope::CalculateSymbolContextModule(), and m_variable_sp.
Referenced by UpdateValue().
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 90 of file ValueObjectVariable.cpp.
References lldb_private::Type::GetQualifiedName(), and m_variable_sp.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 340 of file ValueObjectVariable.cpp.
References m_variable_sp.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 76 of file ValueObjectVariable.cpp.
References lldb_private::Type::GetName(), and m_variable_sp.
|
overridevirtual |
Implements lldb_private::ValueObject.
Definition at line 124 of file ValueObjectVariable.cpp.
References lldb::eValueTypeInvalid, and m_variable_sp.
|
inlineoverridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 67 of file ValueObjectVariable.h.
References m_variable_sp.
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 312 of file ValueObjectVariable.cpp.
References lldb_private::ValueObject::GetExecutionContextRef(), lldb_private::ExecutionContext::GetFramePtr(), lldb_private::ExecutionContextRef::HasFrameRef(), and m_variable_sp.
|
privatedelete |
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 391 of file ValueObjectVariable.cpp.
References error(), lldb_private::Status::FromErrorString(), lldb_private::Value::GetContextType(), lldb_private::ValueObject::GetExecutionContextRef(), lldb_private::ExecutionContext::GetRegisterContext(), lldb_private::Value::GetRegisterInfo(), m_resolved_value, lldb_private::Value::RegisterInfo, lldb_private::ValueObject::SetData(), lldb_private::ValueObject::SetNeedsUpdate(), lldb_private::RegisterValue::SetValueFromData(), lldb_private::ValueObject::UpdateValueIfNeeded(), and lldb_private::RegisterContext::WriteRegister().
|
overridevirtual |
Reimplemented from lldb_private::ValueObject.
Definition at line 361 of file ValueObjectVariable.cpp.
References error(), lldb_private::Status::FromErrorString(), lldb_private::Value::GetContextType(), lldb_private::ValueObject::GetExecutionContextRef(), lldb_private::ExecutionContext::GetRegisterContext(), lldb_private::Value::GetRegisterInfo(), m_resolved_value, lldb_private::Value::RegisterInfo, lldb_private::ValueObject::SetNeedsUpdate(), lldb_private::ValueObject::SetValueFromCString(), lldb_private::RegisterValue::SetValueFromString(), lldb_private::ValueObject::UpdateValueIfNeeded(), and lldb_private::RegisterContext::WriteRegister().
|
overrideprotectedvirtual |
Implements lldb_private::ValueObject.
Definition at line 130 of file ValueObjectVariable.cpp.
References lldb_private::Variable::CalculateSymbolContext(), lldb_private::ValueObject::CanProvideValue(), lldb_private::Status::Clear(), lldb_private::Value::ConvertToLoadAddress(), lldb_private::DWARFExpressionList::Evaluate(), lldb_private::Value::FileAddress, lldb_private::Status::FromError(), lldb_private::Status::FromErrorString(), lldb_private::SymbolContext::function, lldb_private::ArchSpec::GetAddressByteSize(), lldb_private::Function::GetAddressRange(), lldb_private::Target::GetArchitecture(), lldb_private::AddressRange::GetBaseAddress(), lldb_private::Value::GetBuffer(), lldb_private::ArchSpec::GetByteOrder(), lldb_private::DataExtractor::GetByteSize(), lldb_private::DataBufferHeap::GetByteSize(), lldb_private::ValueObject::GetCompilerType(), lldb_private::DataExtractor::GetDataStart(), lldb_private::ValueObject::GetExecutionContextRef(), lldb_private::DWARFExpressionList::GetExpressionData(), lldb_private::Address::GetLoadAddress(), lldb_private::Variable::GetLocationIsConstantValueData(), GetModule(), lldb_private::ExecutionContext::GetProcessPtr(), lldb_private::Value::GetScalar(), lldb_private::ExecutionContext::GetTargetPtr(), lldb_private::Value::GetValueAsData(), lldb_private::Value::GetValueByteSize(), lldb_private::Value::GetValueType(), lldb_private::Value::HostAddress, lldb_private::Value::Invalid, lldb_private::Process::IsAlive(), lldb_private::DWARFExpressionList::IsAlwaysValidSingleExpr(), lldb_private::CompilerType::IsValid(), LLDB_INVALID_ADDRESS, lldb_private::Value::LoadAddress, lldb_private::Variable::LocationExpressionList(), lldb_private::ValueObject::m_data, lldb_private::ValueObject::m_error, m_resolved_value, lldb_private::ValueObject::m_value, m_variable_sp, lldb_private::Value::ResizeData(), lldb_private::Value::Scalar, lldb_private::DataExtractor::SetAddressByteSize(), lldb_private::DataExtractor::SetByteOrder(), lldb_private::Value::SetBytes(), lldb_private::Value::SetCompilerType(), lldb_private::Value::SetContext(), lldb_private::ValueObject::SetValueDidChange(), lldb_private::ValueObject::SetValueIsValid(), lldb_private::Status::Success(), and lldb_private::Value::Variable.
|
protected |
Definition at line 80 of file ValueObjectVariable.h.
Referenced by GetLocationAsCString(), SetData(), SetValueFromCString(), and UpdateValue().
|
protected |
The variable that this value object is based upon.
The value that DWARFExpression resolves this variable to before we patch it up.
Definition at line 77 of file ValueObjectVariable.h.
Referenced by GetCompilerTypeImpl(), GetDeclaration(), GetDisplayTypeName(), GetModule(), GetQualifiedTypeName(), GetSymbolContextScope(), GetTypeName(), GetValueType(), GetVariable(), IsInScope(), UpdateValue(), and ValueObjectVariable().