1 //===-- ValueObjectConstResultChild.cpp -----------------------------------===//
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
9 #include "lldb/Core/ValueObjectConstResultChild.h"
11 #include "lldb/lldb-private-enumerations.h"
12 namespace lldb_private
{
15 namespace lldb_private
{
18 namespace lldb_private
{
22 using namespace lldb_private
;
24 ValueObjectConstResultChild::ValueObjectConstResultChild(
25 ValueObject
&parent
, const CompilerType
&compiler_type
,
26 ConstString name
, uint32_t byte_size
, int32_t byte_offset
,
27 uint32_t bitfield_bit_size
, uint32_t bitfield_bit_offset
,
28 bool is_base_class
, bool is_deref_of_parent
, lldb::addr_t live_address
,
29 uint64_t language_flags
)
30 : ValueObjectChild(parent
, compiler_type
, name
, byte_size
, byte_offset
,
31 bitfield_bit_size
, bitfield_bit_offset
, is_base_class
,
32 is_deref_of_parent
, eAddressTypeLoad
, language_flags
),
33 m_impl(this, live_address
) {
37 ValueObjectConstResultChild::~ValueObjectConstResultChild() = default;
39 lldb::ValueObjectSP
ValueObjectConstResultChild::Dereference(Status
&error
) {
40 return m_impl
.Dereference(error
);
43 lldb::ValueObjectSP
ValueObjectConstResultChild::GetSyntheticChildAtOffset(
44 uint32_t offset
, const CompilerType
&type
, bool can_create
,
45 ConstString name_const_str
) {
46 return m_impl
.GetSyntheticChildAtOffset(offset
, type
, can_create
,
50 lldb::ValueObjectSP
ValueObjectConstResultChild::AddressOf(Status
&error
) {
51 return m_impl
.AddressOf(error
);
54 lldb::addr_t
ValueObjectConstResultChild::GetAddressOf(
55 bool scalar_is_load_address
, AddressType
* address_type
) {
56 return m_impl
.GetAddressOf(scalar_is_load_address
, address_type
);
59 ValueObject
*ValueObjectConstResultChild::CreateChildAtIndex(
60 size_t idx
, bool synthetic_array_member
, int32_t synthetic_index
) {
61 return m_impl
.CreateChildAtIndex(idx
, synthetic_array_member
,
65 size_t ValueObjectConstResultChild::GetPointeeData(DataExtractor
&data
,
67 uint32_t item_count
) {
68 return m_impl
.GetPointeeData(data
, item_idx
, item_count
);
72 ValueObjectConstResultChild::DoCast(const CompilerType
&compiler_type
) {
73 return m_impl
.Cast(compiler_type
);