14#include "llvm/ADT/APSInt.h"
15#include "llvm/Support/ErrorExtras.h"
87 offset = offset +
m_start->GetValueAsUnsigned(0);
89 name.
Printf(
"[%" PRIu64
"]", (uint64_t)idx);
100 if (!data_type_finder_sp)
103 m_element_type = data_type_finder_sp->GetCompilerType().GetPointeeType();
106 llvm::Expected<uint64_t> size_or_err =
m_element_type.GetByteSize(
nullptr);
115 m_start = data_type_finder_sp.get();
122 }
else if (
auto arg =
123 m_backend.GetCompilerType().GetIntegralTemplateArgument(1)) {
135 return llvm::createStringErrorV(
"type has no child named '{0}'", name);
138 return llvm::createStringErrorV(
"type has no child named '{0}'", name);
140 return *optional_idx;
#define LLDB_LOG_ERRORV(log, error,...)
Generic representation of a type in a programming language.
size_t GetNumTemplateArguments(bool expand_pack=false) const
Return the number of template arguments the type has.
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.
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.
Log * GetLog(Cat mask)
Retrieve the Log object for the channel associated with the given log enum.
ChildCacheState
Specifies if children need to be re-computed after a call to SyntheticChildrenFrontEnd::Update.
@ eRefetch
Children need to be recomputed dynamically.
@ eReuse
Children did not change and don't need to be recomputed; re-use what we computed the last time we cal...
std::shared_ptr< lldb_private::ValueObject > ValueObjectSP