86 uint64_t start_val =
m_start->GetValueAsUnsigned(0);
87 uint64_t finish_val =
m_finish->GetValueAsUnsigned(0);
89 if (start_val == 0 || finish_val == 0)
92 if (start_val >= finish_val)
95 size_t num_children = (finish_val - start_val);
108 offset = offset +
m_start->GetValueAsUnsigned(0);
115 const size_t value = indirect->GetValueAsUnsigned(0);
120 offset = offset +
m_base->GetValueAsUnsigned(0);
123 name.
Printf(
"[%" PRIu64
"] -> [%zu]", (uint64_t)idx, value);
140 if (std::optional<uint64_t> size =
151 type = vector->GetCompilerType();
156 if (std::optional<uint64_t> size =
164 ValueObjectSP start = vector->GetChildMemberWithName(
"__begin_");
165 ValueObjectSP finish = vector->GetChildMemberWithName(
"__end_");
166 if (!base || !start || !finish)
176llvm::Expected<size_t>
180 return llvm::createStringError(
"Type has no child named '%s'",
184 return llvm::createStringError(
"Type has no child named '%s'",
187 return *optional_idx;
Generic representation of a type in a programming language.
CompilerType GetTypeTemplateArgument(size_t idx, bool expand_pack=false) const
size_t GetNumTemplateArguments(bool expand_pack=false) const
Return the number of template arguments the type has.
A uniqued constant string class.
const char * AsCString(const char *value_if_empty=nullptr) const
Get the string value as a C string.
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.
SyntheticChildrenFrontEnd(ValueObject &backend)
lldb::ValueObjectSP CreateValueObjectFromAddress(llvm::StringRef name, uint64_t address, const ExecutionContext &exe_ctx, CompilerType type, bool do_deref=true)
A class that represents a running process on the host machine.
ChildCacheState
Specifies if children need to be re-computed after a call to SyntheticChildrenFrontEnd::Update.
@ eRefetch
Children need to be recomputed dynamically.
std::shared_ptr< lldb_private::ValueObject > ValueObjectSP