1 //===-- ValueObjectDynamicValue.h -----------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef liblldb_ValueObjectCast_h_
11 #define liblldb_ValueObjectCast_h_
15 // Other libraries and framework includes
17 #include "lldb/Core/ValueObject.h"
19 namespace lldb_private {
21 //---------------------------------------------------------------------------------
22 // A ValueObject that represents a given value represented as a different type.
23 //---------------------------------------------------------------------------------
24 class ValueObjectCast : public ValueObject
27 static lldb::ValueObjectSP
28 Create (ValueObject &parent,
29 const ConstString &name,
30 const ClangASTType &cast_type);
39 CalculateNumChildren();
41 virtual lldb::ValueType
51 return m_parent->GetParent();
56 virtual const ValueObject *
60 return m_parent->GetParent();
72 ClangASTType m_cast_type;
75 ValueObjectCast (ValueObject &parent,
76 const ConstString &name,
77 const ClangASTType &cast_type);
79 //------------------------------------------------------------------
80 // For ValueObject only
81 //------------------------------------------------------------------
82 DISALLOW_COPY_AND_ASSIGN (ValueObjectCast);
85 } // namespace lldb_private
87 #endif // liblldb_ValueObjectCast_h_