diff options
Diffstat (limited to 'lldb/include/lldb/Core/ValueObject.h')
-rw-r--r-- | lldb/include/lldb/Core/ValueObject.h | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/lldb/include/lldb/Core/ValueObject.h b/lldb/include/lldb/Core/ValueObject.h index 1b000e617f0e..0080368fd996 100644 --- a/lldb/include/lldb/Core/ValueObject.h +++ b/lldb/include/lldb/Core/ValueObject.h @@ -6,8 +6,8 @@ // //===----------------------------------------------------------------------===// -#ifndef liblldb_ValueObject_h_ -#define liblldb_ValueObject_h_ +#ifndef LLDB_CORE_VALUEOBJECT_H +#define LLDB_CORE_VALUEOBJECT_H #include "lldb/Core/Value.h" #include "lldb/Symbol/CompilerType.h" @@ -396,10 +396,8 @@ public: bool IsIntegerType(bool &is_signed); - virtual bool GetBaseClassPath(Stream &s); - virtual void GetExpressionPath( - Stream &s, bool qualify_cxx_base_classes, + Stream &s, GetExpressionPathFormat = eGetExpressionPathFormatDereferencePointers); lldb::ValueObjectSP GetValueForExpressionPath( @@ -577,7 +575,7 @@ public: virtual lldb::ValueObjectSP GetNonSyntheticValue(); - lldb::ValueObjectSP GetSyntheticValue(bool use_synthetic = true); + lldb::ValueObjectSP GetSyntheticValue(); virtual bool HasSyntheticValue(); @@ -889,7 +887,6 @@ protected: m_is_synthetic_children_generated : 1; friend class ValueObjectChild; - friend class ClangExpressionDeclMap; // For GetValue friend class ExpressionVariable; // For SetName friend class Target; // For SetName friend class ValueObjectConstResultImpl; @@ -905,7 +902,7 @@ protected: // Use this constructor to create a "root variable object". The ValueObject // will be locked to this context through-out its lifespan. - ValueObject(ExecutionContextScope *exe_scope, + ValueObject(ExecutionContextScope *exe_scope, ValueObjectManager &manager, AddressType child_ptr_or_ref_addr_type = eAddressTypeLoad); // Use this constructor to create a ValueObject owned by another ValueObject. @@ -929,7 +926,7 @@ protected: virtual bool HasDynamicValueTypeInfo() { return false; } - virtual void CalculateSyntheticValue(bool use_synthetic = true); + virtual void CalculateSyntheticValue(); // Should only be called by ValueObject::GetChildAtIndex() Returns a // ValueObject managed by this ValueObject's manager. @@ -966,9 +963,14 @@ protected: void SetPreferredDisplayLanguageIfNeeded(lldb::LanguageType); +protected: + virtual void DoUpdateChildrenAddressType(ValueObject &valobj) { return; }; + private: virtual CompilerType MaybeCalculateCompleteType(); - void UpdateChildrenAddressType(); + void UpdateChildrenAddressType() { + GetRoot()->DoUpdateChildrenAddressType(*this); + } lldb::ValueObjectSP GetValueForExpressionPath_Impl( llvm::StringRef expression_cstr, @@ -977,7 +979,8 @@ private: const GetValueForExpressionPathOptions &options, ExpressionPathAftermath *final_task_on_target); - DISALLOW_COPY_AND_ASSIGN(ValueObject); + ValueObject(const ValueObject &) = delete; + const ValueObject &operator=(const ValueObject &) = delete; }; // A value object manager class that is seeded with the static variable value @@ -1023,4 +1026,4 @@ public: } // namespace lldb_private -#endif // liblldb_ValueObject_h_ +#endif // LLDB_CORE_VALUEOBJECT_H |