LLVM 20.0.0git
Public Member Functions | Public Attributes | List of all members
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.

Member Function Documentation

◆ appendAndTerminateTemplateParameters()

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

Definition at line 569 of file DWARFTypePrinter.h.

References D, and OS.

◆ appendArrayType()

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

Definition at line 96 of file DWARFTypePrinter.h.

References llvm::CallingConv::C, D, and OS.

◆ appendConstVolatileQualifierAfter()

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

Definition at line 600 of file DWARFTypePrinter.h.

References llvm::CallingConv::C, N, llvm::detail::resolveReferencedType(), and T.

◆ appendConstVolatileQualifierBefore()

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

Definition at line 613 of file DWARFTypePrinter.h.

References A, llvm::CallingConv::C, N, OS, llvm::detail::resolveReferencedType(), and T.

◆ appendPointerLikeTypeBefore()

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

Definition at line 182 of file DWARFTypePrinter.h.

References OS, and Ptr.

◆ appendQualifiedName()

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

Definition at line 403 of file DWARFTypePrinter.h.

References D.

Referenced by llvm::dumpTypeQualifiedName().

◆ appendQualifiedNameBefore()

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

Definition at line 410 of file DWARFTypePrinter.h.

References D.

◆ appendScopes()

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

Definition at line 779 of file DWARFTypePrinter.h.

References D, OS, and P.

◆ appendSubroutineNameAfter()

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

Definition at line 655 of file DWARFTypePrinter.h.

References CC, D, llvm::First, OS, P, llvm::detail::resolveReferencedType(), and T.

◆ appendTemplateParameters()

template<typename DieType >
bool llvm::DWARFTypePrinter< DieType >::appendTemplateParameters ( DieType  D,
bool FirstParameter = nullptr 
)

◆ 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(), and llvm::StringRef::substr().

◆ 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 D.

Referenced by llvm::dumpTypeUnqualifiedName().

◆ appendUnqualifiedNameAfter()

template<typename DieType >
void llvm::DWARFTypePrinter< DieType >::appendUnqualifiedNameAfter ( DieType  D,
DieType  Inner,
bool  SkipFirstParamIfArtificial = false 
)

◆ appendUnqualifiedNameBefore()

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

◆ 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)

Definition at line 175 of file DWARFTypePrinter.h.

References 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().

Member Data Documentation

◆ EndedWithTemplate

template<typename DieType >
bool llvm::DWARFTypePrinter< DieType >::EndedWithTemplate = false

Definition at line 28 of file DWARFTypePrinter.h.

◆ OS

template<typename DieType >
raw_ostream& llvm::DWARFTypePrinter< DieType >::OS

Definition at line 26 of file DWARFTypePrinter.h.

◆ Word

template<typename DieType >
bool llvm::DWARFTypePrinter< DieType >::Word = true

Definition at line 27 of file DWARFTypePrinter.h.


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