1//===-- ValueObjectConstResultChild.cpp --------------------------*- C++-*-===// 2// 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 6// 7//===----------------------------------------------------------------------===// 8 9#include "lldb/Core/ValueObjectConstResultChild.h" 10 11#include "lldb/lldb-private-enumerations.h" 12namespace lldb_private { 13class DataExtractor; 14} 15namespace lldb_private { 16class Status; 17} 18namespace lldb_private { 19class ValueObject; 20} 21 22using namespace lldb_private; 23 24ValueObjectConstResultChild::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) { 34 m_name = name; 35} 36 37ValueObjectConstResultChild::~ValueObjectConstResultChild() {} 38 39lldb::ValueObjectSP ValueObjectConstResultChild::Dereference(Status &error) { 40 return m_impl.Dereference(error); 41} 42 43lldb::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, 47 name_const_str); 48} 49 50lldb::ValueObjectSP ValueObjectConstResultChild::AddressOf(Status &error) { 51 return m_impl.AddressOf(error); 52} 53 54lldb::addr_t ValueObjectConstResultChild::GetAddressOf( 55 bool scalar_is_load_address, AddressType* address_type) { 56 return m_impl.GetAddressOf(scalar_is_load_address, address_type); 57} 58 59ValueObject *ValueObjectConstResultChild::CreateChildAtIndex( 60 size_t idx, bool synthetic_array_member, int32_t synthetic_index) { 61 return m_impl.CreateChildAtIndex(idx, synthetic_array_member, 62 synthetic_index); 63} 64 65size_t ValueObjectConstResultChild::GetPointeeData(DataExtractor &data, 66 uint32_t item_idx, 67 uint32_t item_count) { 68 return m_impl.GetPointeeData(data, item_idx, item_count); 69} 70 71lldb::ValueObjectSP 72ValueObjectConstResultChild::Cast(const CompilerType &compiler_type) { 73 return m_impl.Cast(compiler_type); 74} 75