LLDB mainline
|
Public Member Functions | |
LibcxxStdSpanSyntheticFrontEnd (lldb::ValueObjectSP valobj_sp) | |
~LibcxxStdSpanSyntheticFrontEnd () override=default | |
llvm::Expected< uint32_t > | CalculateNumChildren () override |
lldb::ValueObjectSP | GetChildAtIndex (uint32_t idx) override |
lldb::ChildCacheState | Update () override |
Determines properties of the std::span<> associated with this object. | |
llvm::Expected< size_t > | GetIndexOfChildWithName (ConstString name) override |
Public Member Functions inherited from lldb_private::SyntheticChildrenFrontEnd | |
SyntheticChildrenFrontEnd (ValueObject &backend) | |
virtual | ~SyntheticChildrenFrontEnd ()=default |
virtual llvm::Expected< uint32_t > | CalculateNumChildren (uint32_t max) |
uint32_t | CalculateNumChildrenIgnoringErrors (uint32_t max=UINT32_MAX) |
virtual bool | MightHaveChildren () |
virtual lldb::ValueObjectSP | GetSyntheticValue () |
virtual ConstString | GetSyntheticTypeName () |
Private Attributes | |
ValueObject * | m_start = nullptr |
First element of span. Held, not owned. | |
CompilerType | m_element_type {} |
Type of span elements. | |
size_t | m_num_elements = 0 |
Number of elements in span. | |
uint32_t | m_element_size = 0 |
Size in bytes of each span element. |
Additional Inherited Members | |
Public Types inherited from lldb_private::SyntheticChildrenFrontEnd | |
typedef std::shared_ptr< SyntheticChildrenFrontEnd > | SharedPointer |
typedef std::unique_ptr< SyntheticChildrenFrontEnd > | AutoPointer |
Protected Member Functions inherited from lldb_private::SyntheticChildrenFrontEnd | |
void | SetValid (bool valid) |
bool | IsValid () |
lldb::ValueObjectSP | CreateValueObjectFromExpression (llvm::StringRef name, llvm::StringRef expression, const ExecutionContext &exe_ctx) |
lldb::ValueObjectSP | CreateValueObjectFromAddress (llvm::StringRef name, uint64_t address, const ExecutionContext &exe_ctx, CompilerType type, bool do_deref=true) |
lldb::ValueObjectSP | CreateValueObjectFromData (llvm::StringRef name, const DataExtractor &data, const ExecutionContext &exe_ctx, CompilerType type) |
Protected Attributes inherited from lldb_private::SyntheticChildrenFrontEnd | |
ValueObject & | m_backend |
Definition at line 24 of file LibCxxSpan.cpp.
lldb_private::formatters::LibcxxStdSpanSyntheticFrontEnd::LibcxxStdSpanSyntheticFrontEnd | ( | lldb::ValueObjectSP | valobj_sp | ) |
Definition at line 67 of file LibCxxSpan.cpp.
References lldb_private::SyntheticChildrenFrontEnd::SyntheticChildrenFrontEnd(), and Update().
|
overridedefault |
|
overridevirtual |
Implements lldb_private::SyntheticChildrenFrontEnd.
Definition at line 74 of file LibCxxSpan.cpp.
References m_num_elements.
|
overridevirtual |
Implements lldb_private::SyntheticChildrenFrontEnd.
Definition at line 80 of file LibCxxSpan.cpp.
References lldb_private::SyntheticChildrenFrontEnd::CreateValueObjectFromAddress(), lldb_private::StreamString::GetString(), lldb_private::SyntheticChildrenFrontEnd::m_backend, m_element_size, m_element_type, m_start, and lldb_private::Stream::Printf().
|
overridevirtual |
Implements lldb_private::SyntheticChildrenFrontEnd.
Definition at line 131 of file LibCxxSpan.cpp.
References lldb_private::ConstString::AsCString(), lldb_private::formatters::ExtractIndexFromString(), lldb_private::ConstString::GetCString(), and m_start.
|
overridevirtual |
Determines properties of the std::span<> associated with this object.
Implements lldb_private::SyntheticChildrenFrontEnd.
Definition at line 95 of file LibCxxSpan.cpp.
References lldb_private::DataFormatters, lldb::eRefetch, lldb::eReuse, lldb_private::formatters::GetChildMemberWithName(), lldb_private::GetLog(), LLDB_LOG_ERRORV, lldb_private::SyntheticChildrenFrontEnd::m_backend, m_element_size, m_element_type, m_num_elements, and m_start.
Referenced by LibcxxStdSpanSyntheticFrontEnd().
|
private |
Size in bytes of each span element.
Definition at line 64 of file LibCxxSpan.cpp.
Referenced by GetChildAtIndex(), and Update().
|
private |
Type of span elements.
Definition at line 62 of file LibCxxSpan.cpp.
Referenced by GetChildAtIndex(), and Update().
|
private |
Number of elements in span.
Definition at line 63 of file LibCxxSpan.cpp.
Referenced by CalculateNumChildren(), and Update().
|
private |
First element of span. Held, not owned.
Definition at line 61 of file LibCxxSpan.cpp.
Referenced by GetChildAtIndex(), GetIndexOfChildWithName(), and Update().