LLDB mainline
|
A summary formatter that is defined in LLDB formmater bytecode. More...
#include <TypeSummary.h>
Public Member Functions | |
BytecodeSummaryFormat (const TypeSummaryImpl::Flags &flags, std::unique_ptr< llvm::MemoryBuffer > bytecode) | |
bool | FormatObject (ValueObject *valobj, std::string &dest, const TypeSummaryOptions &options) override |
std::string | GetDescription () override |
std::string | GetName () override |
Get the name of the Type Summary Provider, either a C++ class, a summary string, or a script function name. | |
Public Member Functions inherited from lldb_private::TypeSummaryImpl | |
virtual | ~TypeSummaryImpl ()=default |
Kind | GetKind () const |
bool | Cascades () const |
bool | SkipsPointers () const |
bool | SkipsReferences () const |
bool | NonCacheable () const |
virtual bool | DoesPrintChildren (ValueObject *valobj) const |
virtual bool | DoesPrintEmptyAggregates () const |
virtual bool | DoesPrintValue (ValueObject *valobj) const |
bool | IsOneLiner () const |
virtual bool | HideNames (ValueObject *valobj) const |
void | SetCascades (bool value) |
void | SetSkipsPointers (bool value) |
void | SetSkipsReferences (bool value) |
virtual void | SetDoesPrintChildren (bool value) |
virtual void | SetDoesPrintValue (bool value) |
void | SetIsOneLiner (bool value) |
virtual void | SetHideNames (bool value) |
virtual void | SetNonCacheable (bool value) |
uint32_t | GetOptions () |
void | SetOptions (uint32_t value) |
virtual bool | FormatObject (ValueObject *valobj, std::string &dest, const TypeSummaryOptions &options)=0 |
virtual std::string | GetDescription ()=0 |
virtual std::string | GetName ()=0 |
Get the name of the Type Summary Provider, either a C++ class, a summary string, or a script function name. | |
virtual std::string | GetSummaryKindName () |
Get the name of the kind of Summary Provider, either c++, summary string, script or python. | |
uint32_t & | GetRevision () |
Static Public Member Functions | |
static bool | classof (const TypeSummaryImpl *S) |
Private Attributes | |
std::unique_ptr< llvm::MemoryBuffer > | m_bytecode |
Additional Inherited Members | |
Public Types inherited from lldb_private::TypeSummaryImpl | |
enum class | Kind { eSummaryString , eScript , eBytecode , eCallback , eInternal } |
typedef std::shared_ptr< TypeSummaryImpl > | SharedPointer |
Protected Member Functions inherited from lldb_private::TypeSummaryImpl | |
TypeSummaryImpl (Kind kind, const TypeSummaryImpl::Flags &flags) | |
Protected Attributes inherited from lldb_private::TypeSummaryImpl | |
uint32_t | m_my_revision = 0 |
Flags | m_flags |
A summary formatter that is defined in LLDB formmater bytecode.
Definition at line 418 of file TypeSummary.h.
BytecodeSummaryFormat::BytecodeSummaryFormat | ( | const TypeSummaryImpl::Flags & | flags, |
std::unique_ptr< llvm::MemoryBuffer > | bytecode | ||
) |
Definition at line 234 of file TypeSummary.cpp.
|
inlinestatic |
Definition at line 428 of file TypeSummary.h.
References lldb_private::TypeSummaryImpl::eBytecode, and lldb_private::TypeSummaryImpl::GetKind().
|
overridevirtual |
Implements lldb_private::TypeSummaryImpl.
Definition at line 240 of file TypeSummary.cpp.
References error(), lldb_private::ValueObject::GetSP(), lldb_private::ValueObject::GetTargetSP(), lldb_private::ValueObject::GetValueAsCString(), lldb_private::FormatterBytecode::Interpret(), m_bytecode, and lldb_private::toString().
|
overridevirtual |
Implements lldb_private::TypeSummaryImpl.
Definition at line 288 of file TypeSummary.cpp.
References lldb_private::TypeSummaryImpl::Cascades(), lldb_private::TypeSummaryImpl::DoesPrintChildren(), lldb_private::TypeSummaryImpl::DoesPrintValue(), lldb_private::StreamString::GetString(), lldb_private::TypeSummaryImpl::HideNames(), lldb_private::TypeSummaryImpl::IsOneLiner(), lldb_private::Stream::Printf(), lldb_private::TypeSummaryImpl::SkipsPointers(), and lldb_private::TypeSummaryImpl::SkipsReferences().
|
overridevirtual |
Get the name of the Type Summary Provider, either a C++ class, a summary string, or a script function name.
Implements lldb_private::TypeSummaryImpl.
Definition at line 301 of file TypeSummary.cpp.
|
private |
Definition at line 419 of file TypeSummary.h.
Referenced by FormatObject().