1f8877efcSSiva Chandra //===-- ValueObjectConstResultCast.cpp --------------------------*- C++ -*-===//
2f8877efcSSiva Chandra //
3f8877efcSSiva Chandra //                     The LLVM Compiler Infrastructure
4f8877efcSSiva Chandra //
5f8877efcSSiva Chandra // This file is distributed under the University of Illinois Open Source
6f8877efcSSiva Chandra // License. See LICENSE.TXT for details.
7f8877efcSSiva Chandra //
8f8877efcSSiva Chandra //===----------------------------------------------------------------------===//
9f8877efcSSiva Chandra 
10f8877efcSSiva Chandra #include "lldb/Core/ValueObjectConstResultCast.h"
11f8877efcSSiva Chandra 
12*2f3df613SZachary Turner namespace lldb_private {
13*2f3df613SZachary Turner class DataExtractor;
14*2f3df613SZachary Turner }
15*2f3df613SZachary Turner namespace lldb_private {
16*2f3df613SZachary Turner class Error;
17*2f3df613SZachary Turner }
18*2f3df613SZachary Turner namespace lldb_private {
19*2f3df613SZachary Turner class ValueObject;
20*2f3df613SZachary Turner }
21f8877efcSSiva Chandra 
22f8877efcSSiva Chandra using namespace lldb_private;
23f8877efcSSiva Chandra 
24f8877efcSSiva Chandra ValueObjectConstResultCast::ValueObjectConstResultCast(
25b9c1b51eSKate Stone     ValueObject &parent, const ConstString &name, const CompilerType &cast_type,
26b9c1b51eSKate Stone     lldb::addr_t live_address)
27b9c1b51eSKate Stone     : ValueObjectCast(parent, name, cast_type), m_impl(this, live_address) {
28f8877efcSSiva Chandra   m_name = name;
29f8877efcSSiva Chandra }
30f8877efcSSiva Chandra 
31b9c1b51eSKate Stone ValueObjectConstResultCast::~ValueObjectConstResultCast() {}
32f8877efcSSiva Chandra 
33b9c1b51eSKate Stone lldb::ValueObjectSP ValueObjectConstResultCast::Dereference(Error &error) {
34f8877efcSSiva Chandra   return m_impl.Dereference(error);
35f8877efcSSiva Chandra }
36f8877efcSSiva Chandra 
37b9c1b51eSKate Stone lldb::ValueObjectSP ValueObjectConstResultCast::GetSyntheticChildAtOffset(
38b9c1b51eSKate Stone     uint32_t offset, const CompilerType &type, bool can_create,
39b9c1b51eSKate Stone     ConstString name_const_str) {
40b9c1b51eSKate Stone   return m_impl.GetSyntheticChildAtOffset(offset, type, can_create,
41b9c1b51eSKate Stone                                           name_const_str);
42f8877efcSSiva Chandra }
43f8877efcSSiva Chandra 
44b9c1b51eSKate Stone lldb::ValueObjectSP ValueObjectConstResultCast::AddressOf(Error &error) {
45f8877efcSSiva Chandra   return m_impl.AddressOf(error);
46f8877efcSSiva Chandra }
47f8877efcSSiva Chandra 
48b9c1b51eSKate Stone ValueObject *ValueObjectConstResultCast::CreateChildAtIndex(
49b9c1b51eSKate Stone     size_t idx, bool synthetic_array_member, int32_t synthetic_index) {
50b9c1b51eSKate Stone   return m_impl.CreateChildAtIndex(idx, synthetic_array_member,
51b9c1b51eSKate Stone                                    synthetic_index);
52f8877efcSSiva Chandra }
53f8877efcSSiva Chandra 
54b9c1b51eSKate Stone size_t ValueObjectConstResultCast::GetPointeeData(DataExtractor &data,
55f8877efcSSiva Chandra                                                   uint32_t item_idx,
56b9c1b51eSKate Stone                                                   uint32_t item_count) {
57f8877efcSSiva Chandra   return m_impl.GetPointeeData(data, item_idx, item_count);
58f8877efcSSiva Chandra }
59f8877efcSSiva Chandra 
60f8877efcSSiva Chandra lldb::ValueObjectSP
61b9c1b51eSKate Stone ValueObjectConstResultCast::Cast(const CompilerType &compiler_type) {
623ad353f3SBruce Mitchener   return m_impl.Cast(compiler_type);
63f8877efcSSiva Chandra }
64