66 ValueObjectSP size_sp(m_backend.GetChildMemberWithName(g_size_,
true));
68 m_num_elements = size_sp->GetValueAsUnsigned(0);
69 return m_num_elements;
75 return lldb::ValueObjectSP();
77 uint64_t offset = idx * m_element_size;
78 offset = offset + m_start->GetValueAsUnsigned(0);
80 name.
Printf(
"[%" PRIu64
"]", (uint64_t)idx);
81 return CreateValueObjectFromAddress(name.
GetString(), offset,
82 m_backend.GetExecutionContextRef(),
92 m_element_type = m_backend.GetCompilerType().GetTypeTemplateArgument(0);
93 if (!m_element_type.IsValid())
96 if (std::optional<uint64_t> size = m_element_type.GetByteSize(
nullptr)) {
97 m_element_size = *size;
99 m_start = m_backend.GetChildMemberWithName(g_begin_,
true).get();
Generic representation of a type in a programming language.
A uniqued constant string class.
const char * GetCString() const
Get the string value as a C string.
llvm::StringRef GetString() const
size_t Printf(const char *format,...) __attribute__((format(printf
Output printf formatted output to the stream.
A class that represents a running process on the host machine.