1*7330f729Sjoerg //===- PrettyExternalSymbolDumper.h --------------------------- *- C++ --*-===// 2*7330f729Sjoerg // 3*7330f729Sjoerg // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*7330f729Sjoerg // See https://llvm.org/LICENSE.txt for license information. 5*7330f729Sjoerg // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*7330f729Sjoerg // 7*7330f729Sjoerg //===----------------------------------------------------------------------===// 8*7330f729Sjoerg 9*7330f729Sjoerg #ifndef LLVM_TOOLS_LLVMPDBDUMP_PRETTYEXTERNALSYMBOLDUMPER_H 10*7330f729Sjoerg #define LLVM_TOOLS_LLVMPDBDUMP_PRETTYEXTERNALSYMBOLDUMPER_H 11*7330f729Sjoerg 12*7330f729Sjoerg #include "llvm/DebugInfo/PDB/PDBSymDumper.h" 13*7330f729Sjoerg 14*7330f729Sjoerg namespace llvm { 15*7330f729Sjoerg namespace pdb { 16*7330f729Sjoerg 17*7330f729Sjoerg class LinePrinter; 18*7330f729Sjoerg 19*7330f729Sjoerg class ExternalSymbolDumper : public PDBSymDumper { 20*7330f729Sjoerg public: 21*7330f729Sjoerg ExternalSymbolDumper(LinePrinter &P); 22*7330f729Sjoerg 23*7330f729Sjoerg void start(const PDBSymbolExe &Symbol); 24*7330f729Sjoerg 25*7330f729Sjoerg void dump(const PDBSymbolPublicSymbol &Symbol) override; 26*7330f729Sjoerg 27*7330f729Sjoerg private: 28*7330f729Sjoerg LinePrinter &Printer; 29*7330f729Sjoerg }; 30*7330f729Sjoerg } 31*7330f729Sjoerg } 32*7330f729Sjoerg 33*7330f729Sjoerg #endif 34