LLVM 22.0.0git
llvm::DWARFTypePrinter< DieType > Struct Template Reference

#include "llvm/DebugInfo/DWARF/DWARFTypePrinter.h"

Public Member Functions

 DWARFTypePrinter (raw_ostream &OS)
void appendTypeTagName (dwarf::Tag T)
 Dump the name encoded in the type tag.
void appendArrayType (const DieType &D)
DieType skipQualifiers (DieType D)
bool needsParens (DieType D)
void appendPointerLikeTypeBefore (DieType D, DieType Inner, StringRef Ptr)
DieType appendUnqualifiedNameBefore (DieType D, std::string *OriginalFullName=nullptr)
void appendUnqualifiedNameAfter (DieType D, DieType Inner, bool SkipFirstParamIfArtificial=false)
void appendQualifiedName (DieType D)
DieType appendQualifiedNameBefore (DieType D)
bool appendTemplateParameters (DieType D, bool *FirstParameter=nullptr)
void appendAndTerminateTemplateParameters (DieType D)
void decomposeConstVolatile (DieType &N, DieType &T, DieType &C, DieType &V)
void appendConstVolatileQualifierAfter (DieType N)
void appendConstVolatileQualifierBefore (DieType N)
void appendUnqualifiedName (DieType D, std::string *OriginalFullName=nullptr)
 Recursively append the DIE type name when applicable.
void appendSubroutineNameAfter (DieType D, DieType Inner, bool SkipFirstParamIfArtificial, bool Const, bool Volatile)
void appendScopes (DieType D)

Public Attributes

raw_ostreamOS
bool Word = true
bool EndedWithTemplate = false

Detailed Description

template<typename DieType>
struct llvm::DWARFTypePrinter< DieType >

Definition at line 25 of file DWARFTypePrinter.h.

Constructor & Destructor Documentation

◆ DWARFTypePrinter()

template<typename DieType>
llvm::DWARFTypePrinter< DieType >::DWARFTypePrinter ( raw_ostream & OS)
inline

Definition at line 30 of file DWARFTypePrinter.h.

References OS.

Member Function Documentation

◆ appendAndTerminateTemplateParameters()

template<typename DieType>
void llvm::DWARFTypePrinter< DieType >::appendAndTerminateTemplateParameters ( DieType D)

Definition at line 569 of file DWARFTypePrinter.h.

References appendTemplateParameters(), D(), EndedWithTemplate, OS, and Word.

◆ appendArrayType()

template<typename DieType>
void llvm::DWARFTypePrinter< DieType >::appendArrayType ( const DieType & D)

Definition at line 96 of file DWARFTypePrinter.h.

References llvm::CallingConv::C, llvm::Count, D(), EndedWithTemplate, and OS.

Referenced by appendUnqualifiedNameAfter().

◆ appendConstVolatileQualifierAfter()

template<typename DieType>
void llvm::DWARFTypePrinter< DieType >::appendConstVolatileQualifierAfter ( DieType N)

◆ appendConstVolatileQualifierBefore()

template<typename DieType>
void llvm::DWARFTypePrinter< DieType >::appendConstVolatileQualifierBefore ( DieType N)

◆ appendPointerLikeTypeBefore()

template<typename DieType>
void llvm::DWARFTypePrinter< DieType >::appendPointerLikeTypeBefore ( DieType D,
DieType Inner,
StringRef Ptr )

◆ appendQualifiedName()

template<typename DieType>
void llvm::DWARFTypePrinter< DieType >::appendQualifiedName ( DieType D)

◆ appendQualifiedNameBefore()

template<typename DieType>
DieType llvm::DWARFTypePrinter< DieType >::appendQualifiedNameBefore ( DieType D)

◆ appendScopes()

template<typename DieType>
void llvm::DWARFTypePrinter< DieType >::appendScopes ( DieType D)

◆ appendSubroutineNameAfter()

template<typename DieType>
void llvm::DWARFTypePrinter< DieType >::appendSubroutineNameAfter ( DieType D,
DieType Inner,
bool SkipFirstParamIfArtificial,
bool Const,
bool Volatile )

◆ appendTemplateParameters()

◆ appendTypeTagName()

template<typename DieType>
void llvm::DWARFTypePrinter< DieType >::appendTypeTagName ( dwarf::Tag T)

Dump the name encoded in the type tag.

Definition at line 84 of file DWARFTypePrinter.h.

References llvm::StringRef::ends_with(), OS, llvm::StringRef::size(), llvm::StringRef::starts_with(), llvm::StringRef::substr(), and T.

Referenced by appendUnqualifiedNameBefore().

◆ appendUnqualifiedName()

template<typename DieType>
void llvm::DWARFTypePrinter< DieType >::appendUnqualifiedName ( DieType D,
std::string * OriginalFullName = nullptr )

Recursively append the DIE type name when applicable.

Definition at line 646 of file DWARFTypePrinter.h.

References appendUnqualifiedNameAfter(), appendUnqualifiedNameBefore(), and D().

Referenced by appendQualifiedName(), appendScopes(), and llvm::dumpTypeUnqualifiedName().

◆ appendUnqualifiedNameAfter()

◆ appendUnqualifiedNameBefore()

◆ decomposeConstVolatile()

template<typename DieType>
void llvm::DWARFTypePrinter< DieType >::decomposeConstVolatile ( DieType & N,
DieType & T,
DieType & C,
DieType & V )

◆ needsParens()

template<typename DieType>
bool llvm::DWARFTypePrinter< DieType >::needsParens ( DieType D)

◆ skipQualifiers()

template<typename DieType>
DieType llvm::DWARFTypePrinter< DieType >::skipQualifiers ( DieType D)

Definition at line 167 of file DWARFTypePrinter.h.

References D(), and llvm::detail::resolveReferencedType().

Referenced by needsParens().

Member Data Documentation

◆ EndedWithTemplate

◆ OS

◆ Word


The documentation for this struct was generated from the following file: