#include "PrettyFunctionDumper.h"
#include "PrettyBuiltinDumper.h"
#include "llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h"
#include "llvm/DebugInfo/PDB/IPDBLineNumber.h"
#include "llvm/DebugInfo/PDB/IPDBSession.h"
#include "llvm/DebugInfo/PDB/Native/LinePrinter.h"
#include "llvm/DebugInfo/PDB/PDBExtras.h"
#include "llvm/DebugInfo/PDB/PDBSymbolData.h"
#include "llvm/DebugInfo/PDB/PDBSymbolFunc.h"
#include "llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h"
#include "llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h"
#include "llvm/DebugInfo/PDB/PDBSymbolTypeArray.h"
#include "llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h"
#include "llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h"
#include "llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h"
#include "llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h"
#include "llvm/DebugInfo/PDB/PDBSymbolTypePointer.h"
#include "llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h"
#include "llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h"
#include "llvm/Support/Format.h"
#include "llvm/Support/FormatVariadic.h"
usingnamespacellvm;
usingnamespacellvm::codeview;
usingnamespacellvm::pdb;
namespace {
template <class T>
void dumpClassParentWithScopeOperator(const T &Symbol, LinePrinter &Printer,
FunctionDumper &Dumper) { … }
}
FunctionDumper::FunctionDumper(LinePrinter &P)
: … { … }
void FunctionDumper::start(const PDBSymbolTypeFunctionSig &Symbol,
const char *Name, PointerType Pointer) { … }
void FunctionDumper::start(const PDBSymbolFunc &Symbol, PointerType Pointer) { … }
void FunctionDumper::dump(const PDBSymbolTypeArray &Symbol) { … }
void FunctionDumper::dump(const PDBSymbolTypeBuiltin &Symbol) { … }
void FunctionDumper::dump(const PDBSymbolTypeEnum &Symbol) { … }
void FunctionDumper::dump(const PDBSymbolTypeFunctionArg &Symbol) { … }
void FunctionDumper::dump(const PDBSymbolTypeTypedef &Symbol) { … }
void FunctionDumper::dump(const PDBSymbolTypePointer &Symbol) { … }
void FunctionDumper::dump(const PDBSymbolTypeUDT &Symbol) { … }