LLVM 22.0.0git
llvm::pdb::LinePrinter Class Reference

#include "llvm/DebugInfo/PDB/Native/LinePrinter.h"

Public Member Functions

LLVM_ABI LinePrinter (int Indent, bool UseColor, raw_ostream &Stream, const FilterOptions &Filters)
LLVM_ABI void Indent (uint32_t Amount=0)
LLVM_ABI void Unindent (uint32_t Amount=0)
LLVM_ABI void NewLine ()
LLVM_ABI void printLine (const Twine &T)
LLVM_ABI void print (const Twine &T)
template<typename... Ts>
void formatLine (const char *Fmt, Ts &&...Items)
template<typename... Ts>
void format (const char *Fmt, Ts &&...Items)
LLVM_ABI void formatBinary (StringRef Label, ArrayRef< uint8_t > Data, uint64_t StartOffset)
LLVM_ABI void formatBinary (StringRef Label, ArrayRef< uint8_t > Data, uint64_t BaseAddr, uint64_t StartOffset)
LLVM_ABI void formatMsfStreamData (StringRef Label, PDBFile &File, uint32_t StreamIdx, StringRef StreamPurpose, uint64_t Offset, uint64_t Size)
LLVM_ABI void formatMsfStreamData (StringRef Label, PDBFile &File, const msf::MSFStreamLayout &Stream, BinarySubstreamRef Substream)
LLVM_ABI void formatMsfStreamBlocks (PDBFile &File, const msf::MSFStreamLayout &Stream)
bool hasColor () const
raw_ostreamgetStream ()
int getIndentLevel () const
LLVM_ABI bool IsClassExcluded (const ClassLayout &Class)
LLVM_ABI bool IsTypeExcluded (llvm::StringRef TypeName, uint64_t Size)
LLVM_ABI bool IsSymbolExcluded (llvm::StringRef SymbolName)
LLVM_ABI bool IsCompilandExcluded (llvm::StringRef CompilandName)
const FilterOptionsgetFilters () const

Friends

class WithColor

Detailed Description

Definition at line 51 of file LinePrinter.h.

Constructor & Destructor Documentation

◆ LinePrinter()

LinePrinter::LinePrinter ( int Indent,
bool UseColor,
llvm::raw_ostream & Stream,
const FilterOptions & Filters )

Definition at line 55 of file LinePrinter.cpp.

References Indent().

Member Function Documentation

◆ format()

template<typename... Ts>
void llvm::pdb::LinePrinter::format ( const char * Fmt,
Ts &&... Items )
inline

Definition at line 67 of file LinePrinter.h.

References llvm::formatv(), and print().

◆ formatBinary() [1/2]

void LinePrinter::formatBinary ( StringRef Label,
ArrayRef< uint8_t > Data,
uint64_t BaseAddr,
uint64_t StartOffset )

◆ formatBinary() [2/2]

void LinePrinter::formatBinary ( StringRef Label,
ArrayRef< uint8_t > Data,
uint64_t StartOffset )

◆ formatLine()

template<typename... Ts>
void llvm::pdb::LinePrinter::formatLine ( const char * Fmt,
Ts &&... Items )
inline

Definition at line 64 of file LinePrinter.h.

References llvm::formatv(), and printLine().

Referenced by formatMsfStreamData(), and llvm::pdb::iterateOneModule().

◆ formatMsfStreamBlocks()

◆ formatMsfStreamData() [1/2]

◆ formatMsfStreamData() [2/2]

◆ getFilters()

const FilterOptions & llvm::pdb::LinePrinter::getFilters ( ) const
inline

Definition at line 94 of file LinePrinter.h.

Referenced by llvm::pdb::iterateSymbolGroups().

◆ getIndentLevel()

int llvm::pdb::LinePrinter::getIndentLevel ( ) const
inline

Definition at line 87 of file LinePrinter.h.

◆ getStream()

raw_ostream & llvm::pdb::LinePrinter::getStream ( )
inline

Definition at line 86 of file LinePrinter.h.

◆ hasColor()

bool llvm::pdb::LinePrinter::hasColor ( ) const
inline

Definition at line 85 of file LinePrinter.h.

◆ Indent()

void LinePrinter::Indent ( uint32_t Amount = 0)

Definition at line 74 of file LinePrinter.cpp.

Referenced by formatMsfStreamData(), LinePrinter(), and WithColor.

◆ IsClassExcluded()

bool LinePrinter::IsClassExcluded ( const ClassLayout & Class)

Definition at line 98 of file LinePrinter.cpp.

References llvm::pdb::Class, and IsTypeExcluded().

◆ IsCompilandExcluded()

bool LinePrinter::IsCompilandExcluded ( llvm::StringRef CompilandName)

Definition at line 288 of file LinePrinter.cpp.

◆ IsSymbolExcluded()

bool LinePrinter::IsSymbolExcluded ( llvm::StringRef SymbolName)

Definition at line 284 of file LinePrinter.cpp.

◆ IsTypeExcluded()

bool LinePrinter::IsTypeExcluded ( llvm::StringRef TypeName,
uint64_t Size )

Definition at line 276 of file LinePrinter.cpp.

References Size.

Referenced by IsClassExcluded().

◆ NewLine()

void LinePrinter::NewLine ( )

◆ print()

void LinePrinter::print ( const Twine & T)

Definition at line 91 of file LinePrinter.cpp.

References T.

Referenced by format().

◆ printLine()

void LinePrinter::printLine ( const Twine & T)

Definition at line 93 of file LinePrinter.cpp.

References NewLine(), and T.

Referenced by formatLine().

◆ Unindent()

void LinePrinter::Unindent ( uint32_t Amount = 0)

Definition at line 80 of file LinePrinter.cpp.

◆ WithColor

friend class WithColor
friend

Definition at line 52 of file LinePrinter.h.

References Indent(), LLVM_ABI, T, and WithColor.

Referenced by WithColor.


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