[Lldb-commits] [lldb] r274901 - Make IsSyntheticChildrenGenerated() virtual so that dynamic and synthetic values can refer back to their parents

Enrico Granata via lldb-commits lldb-commits at lists.llvm.org
Fri Jul 8 11:39:36 PDT 2016


Author: enrico
Date: Fri Jul  8 13:39:36 2016
New Revision: 274901

URL: http://llvm.org/viewvc/llvm-project?rev=274901&view=rev
Log:
Make IsSyntheticChildrenGenerated() virtual so that dynamic and synthetic values can refer back to their parents


Modified:
    lldb/trunk/include/lldb/Core/ValueObject.h
    lldb/trunk/include/lldb/Core/ValueObjectDynamicValue.h
    lldb/trunk/include/lldb/Core/ValueObjectSyntheticFilter.h
    lldb/trunk/source/Core/ValueObjectDynamicValue.cpp
    lldb/trunk/source/Core/ValueObjectSyntheticFilter.cpp

Modified: lldb/trunk/include/lldb/Core/ValueObject.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/ValueObject.h?rev=274901&r1=274900&r2=274901&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Core/ValueObject.h (original)
+++ lldb/trunk/include/lldb/Core/ValueObject.h Fri Jul  8 13:39:36 2016
@@ -793,10 +793,10 @@ public:
         return false;
     }
     
-    bool
+    virtual bool
     IsSyntheticChildrenGenerated ();
     
-    void
+    virtual void
     SetSyntheticChildrenGenerated (bool b);
     
     virtual SymbolContextScope *

Modified: lldb/trunk/include/lldb/Core/ValueObjectDynamicValue.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/ValueObjectDynamicValue.h?rev=274901&r1=274900&r2=274901&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Core/ValueObjectDynamicValue.h (original)
+++ lldb/trunk/include/lldb/Core/ValueObjectDynamicValue.h Fri Jul  8 13:39:36 2016
@@ -117,6 +117,12 @@ public:
     
     void
     SetPreferredDisplayLanguage (lldb::LanguageType);
+        
+    bool
+    IsSyntheticChildrenGenerated () override;
+    
+    void
+    SetSyntheticChildrenGenerated (bool b) override;
     
     bool
     GetDeclaration(Declaration &decl) override;

Modified: lldb/trunk/include/lldb/Core/ValueObjectSyntheticFilter.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/ValueObjectSyntheticFilter.h?rev=274901&r1=274900&r2=274901&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Core/ValueObjectSyntheticFilter.h (original)
+++ lldb/trunk/include/lldb/Core/ValueObjectSyntheticFilter.h Fri Jul  8 13:39:36 2016
@@ -148,6 +148,12 @@ public:
     SetPreferredDisplayLanguage (lldb::LanguageType);
     
     bool
+    IsSyntheticChildrenGenerated () override;
+    
+    void
+    SetSyntheticChildrenGenerated (bool b) override;
+    
+    bool
     GetDeclaration(Declaration &decl) override;
 
     uint64_t

Modified: lldb/trunk/source/Core/ValueObjectDynamicValue.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/ValueObjectDynamicValue.cpp?rev=274901&r1=274900&r2=274901&view=diff
==============================================================================
--- lldb/trunk/source/Core/ValueObjectDynamicValue.cpp (original)
+++ lldb/trunk/source/Core/ValueObjectDynamicValue.cpp Fri Jul  8 13:39:36 2016
@@ -419,6 +419,22 @@ ValueObjectDynamicValue::GetPreferredDis
 }
 
 bool
+ValueObjectDynamicValue::IsSyntheticChildrenGenerated ()
+{
+    if (m_parent)
+        return m_parent->IsSyntheticChildrenGenerated();
+    return false;
+}
+
+void
+ValueObjectDynamicValue::SetSyntheticChildrenGenerated (bool b)
+{
+    if (m_parent)
+        m_parent->SetSyntheticChildrenGenerated(b);
+    this->ValueObject::SetSyntheticChildrenGenerated(b);
+}
+
+bool
 ValueObjectDynamicValue::GetDeclaration (Declaration &decl)
 {
     if (m_parent)

Modified: lldb/trunk/source/Core/ValueObjectSyntheticFilter.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/ValueObjectSyntheticFilter.cpp?rev=274901&r1=274900&r2=274901&view=diff
==============================================================================
--- lldb/trunk/source/Core/ValueObjectSyntheticFilter.cpp (original)
+++ lldb/trunk/source/Core/ValueObjectSyntheticFilter.cpp Fri Jul  8 13:39:36 2016
@@ -417,6 +417,22 @@ ValueObjectSynthetic::GetPreferredDispla
 }
 
 bool
+ValueObjectSynthetic::IsSyntheticChildrenGenerated ()
+{
+    if (m_parent)
+        return m_parent->IsSyntheticChildrenGenerated();
+    return false;
+}
+
+void
+ValueObjectSynthetic::SetSyntheticChildrenGenerated (bool b)
+{
+    if (m_parent)
+        m_parent->SetSyntheticChildrenGenerated(b);
+    this->ValueObject::SetSyntheticChildrenGenerated(b);
+}
+
+bool
 ValueObjectSynthetic::GetDeclaration (Declaration &decl)
 {
     if (m_parent)




More information about the lldb-commits mailing list