LLDB mainline
lldb_private::TypeSummaryImpl Class Referenceabstract

#include <TypeSummary.h>

Inheritance diagram for lldb_private::TypeSummaryImpl:
[legend]

Classes

class  Flags

Public Types

enum class  Kind {
  eSummaryString , eScript , eBytecode , eCallback ,
  eInternal
}
typedef std::shared_ptr< TypeSummaryImplSharedPointer

Public Member Functions

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)
uint32_t GetPtrMatchDepth ()
void SetPtrMatchDepth (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 ()

Protected Member Functions

 TypeSummaryImpl (Kind kind, const TypeSummaryImpl::Flags &flags, uint32_t ptr_match_depth=1)

Protected Attributes

uint32_t m_my_revision = 0
Flags m_flags

Private Member Functions

 TypeSummaryImpl (const TypeSummaryImpl &)=delete
const TypeSummaryImploperator= (const TypeSummaryImpl &)=delete

Private Attributes

Kind m_kind
uint32_t m_ptr_match_depth = 1

Detailed Description

Definition at line 49 of file TypeSummary.h.

Member Typedef Documentation

◆ SharedPointer

Definition at line 279 of file TypeSummary.h.

Member Enumeration Documentation

◆ Kind

Enumerator
eSummaryString 
eScript 
eBytecode 
eCallback 
eInternal 

Definition at line 51 of file TypeSummary.h.

Constructor & Destructor Documentation

◆ ~TypeSummaryImpl()

virtual lldb_private::TypeSummaryImpl::~TypeSummaryImpl ( )
virtualdefault

◆ TypeSummaryImpl() [1/2]

◆ TypeSummaryImpl() [2/2]

lldb_private::TypeSummaryImpl::TypeSummaryImpl ( const TypeSummaryImpl & )
privatedelete

References TypeSummaryImpl().

Member Function Documentation

◆ Cascades()

◆ DoesPrintChildren()

◆ DoesPrintEmptyAggregates()

virtual bool lldb_private::TypeSummaryImpl::DoesPrintEmptyAggregates ( ) const
inlinevirtual

Definition at line 218 of file TypeSummary.h.

References m_flags.

Referenced by lldb_private::ValueObjectPrinter::ShouldExpandEmptyAggregates().

◆ DoesPrintValue()

◆ FormatObject()

virtual bool lldb_private::TypeSummaryImpl::FormatObject ( ValueObject * valobj,
std::string & dest,
const TypeSummaryOptions & options )
pure virtual

◆ GetDescription()

virtual std::string lldb_private::TypeSummaryImpl::GetDescription ( )
pure virtual

◆ GetKind()

Kind lldb_private::TypeSummaryImpl::GetKind ( ) const
inline

Definition at line 55 of file TypeSummary.h.

References m_kind.

◆ GetName()

virtual std::string lldb_private::TypeSummaryImpl::GetName ( )
pure virtual

Get the name of the Type Summary Provider, either a C++ class, a summary string, or a script function name.

Implemented in lldb_private::BytecodeSummaryFormat, lldb_private::CXXFunctionSummaryFormat, lldb_private::ScriptSummaryFormat, and lldb_private::StringSummaryFormat.

Referenced by lldb_private::SummaryStatisticsCache::GetSummaryStatisticsForProvider().

◆ GetOptions()

uint32_t lldb_private::TypeSummaryImpl::GetOptions ( )
inline

Definition at line 252 of file TypeSummary.h.

References m_flags.

◆ GetPtrMatchDepth()

uint32_t lldb_private::TypeSummaryImpl::GetPtrMatchDepth ( )
inline

◆ GetRevision()

uint32_t & lldb_private::TypeSummaryImpl::GetRevision ( )
inline

Definition at line 277 of file TypeSummary.h.

References m_my_revision.

◆ GetSummaryKindName()

std::string TypeSummaryImpl::GetSummaryKindName ( )
virtual

Get the name of the kind of Summary Provider, either c++, summary string, script or python.

Definition at line 50 of file TypeSummary.cpp.

References eBytecode, eCallback, eInternal, eScript, eSummaryString, and m_kind.

Referenced by lldb_private::SummaryStatisticsCache::GetSummaryStatisticsForProvider().

◆ HideNames()

◆ IsOneLiner()

◆ NonCacheable()

bool lldb_private::TypeSummaryImpl::NonCacheable ( ) const
inline

Definition at line 212 of file TypeSummary.h.

References m_flags.

◆ operator=()

const TypeSummaryImpl & lldb_private::TypeSummaryImpl::operator= ( const TypeSummaryImpl & )
privatedelete

References TypeSummaryImpl().

◆ SetCascades()

void lldb_private::TypeSummaryImpl::SetCascades ( bool value)
inline

Definition at line 232 of file TypeSummary.h.

References m_flags.

◆ SetDoesPrintChildren()

virtual void lldb_private::TypeSummaryImpl::SetDoesPrintChildren ( bool value)
inlinevirtual

Definition at line 238 of file TypeSummary.h.

References m_flags.

◆ SetDoesPrintValue()

virtual void lldb_private::TypeSummaryImpl::SetDoesPrintValue ( bool value)
inlinevirtual

Definition at line 242 of file TypeSummary.h.

References m_flags.

◆ SetHideNames()

virtual void lldb_private::TypeSummaryImpl::SetHideNames ( bool value)
inlinevirtual

Definition at line 248 of file TypeSummary.h.

References m_flags.

◆ SetIsOneLiner()

void lldb_private::TypeSummaryImpl::SetIsOneLiner ( bool value)
inline

Definition at line 246 of file TypeSummary.h.

References m_flags.

◆ SetNonCacheable()

virtual void lldb_private::TypeSummaryImpl::SetNonCacheable ( bool value)
inlinevirtual

Definition at line 250 of file TypeSummary.h.

References m_flags.

◆ SetOptions()

void lldb_private::TypeSummaryImpl::SetOptions ( uint32_t value)
inline

Definition at line 254 of file TypeSummary.h.

References m_flags.

◆ SetPtrMatchDepth()

void lldb_private::TypeSummaryImpl::SetPtrMatchDepth ( uint32_t value)
inline

Definition at line 258 of file TypeSummary.h.

References m_ptr_match_depth.

◆ SetSkipsPointers()

void lldb_private::TypeSummaryImpl::SetSkipsPointers ( bool value)
inline

Definition at line 234 of file TypeSummary.h.

References m_flags.

◆ SetSkipsReferences()

void lldb_private::TypeSummaryImpl::SetSkipsReferences ( bool value)
inline

Definition at line 236 of file TypeSummary.h.

References m_flags.

◆ SkipsPointers()

◆ SkipsReferences()

Member Data Documentation

◆ m_flags

◆ m_kind

Kind lldb_private::TypeSummaryImpl::m_kind
private

Definition at line 289 of file TypeSummary.h.

Referenced by GetKind(), GetSummaryKindName(), and TypeSummaryImpl().

◆ m_my_revision

uint32_t lldb_private::TypeSummaryImpl::m_my_revision = 0
protected

Definition at line 282 of file TypeSummary.h.

Referenced by GetRevision().

◆ m_ptr_match_depth

uint32_t lldb_private::TypeSummaryImpl::m_ptr_match_depth = 1
private

Definition at line 290 of file TypeSummary.h.

Referenced by GetPtrMatchDepth(), SetPtrMatchDepth(), and TypeSummaryImpl().


The documentation for this class was generated from the following files: