blob: fb6b0b172e6ebd96bdfceec72bc3a7203660b603 [file] [log] [blame]
Zachary Turnereb6ab042017-01-11 00:35:43 +00001//===- PrettyBuiltinDumper.h ---------------------------------- *- C++ --*-===//
Zachary Turner4490f2d2015-02-26 23:51:49 +00002//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
Zachary Turnereb6ab042017-01-11 00:35:43 +000010#ifndef LLVM_TOOLS_LLVMPDBDUMP_PRETTYBUILTINDUMPER_H
11#define LLVM_TOOLS_LLVMPDBDUMP_PRETTYBUILTINDUMPER_H
Zachary Turner4490f2d2015-02-26 23:51:49 +000012
Zachary Turner8ba06b52016-04-25 17:38:08 +000013#include "llvm/ADT/StringRef.h"
Zachary Turner4490f2d2015-02-26 23:51:49 +000014#include "llvm/DebugInfo/PDB/PDBSymDumper.h"
15
16namespace llvm {
Zachary Turnerc95df942016-05-04 20:32:13 +000017namespace pdb {
Zachary Turner4490f2d2015-02-26 23:51:49 +000018
Zachary Turner756b8232015-02-27 09:15:59 +000019class LinePrinter;
20
Zachary Turner4490f2d2015-02-26 23:51:49 +000021class BuiltinDumper : public PDBSymDumper {
22public:
Zachary Turner756b8232015-02-27 09:15:59 +000023 BuiltinDumper(LinePrinter &P);
Zachary Turner4490f2d2015-02-26 23:51:49 +000024
Zachary Turner53e4b562015-03-01 06:51:29 +000025 void start(const PDBSymbolTypeBuiltin &Symbol);
Zachary Turner756b8232015-02-27 09:15:59 +000026
27private:
Rui Ueyama7c5ec542015-11-03 20:16:18 +000028 StringRef getTypeName(const PDBSymbolTypeBuiltin &Symbol);
29
Zachary Turner756b8232015-02-27 09:15:59 +000030 LinePrinter &Printer;
Zachary Turner4490f2d2015-02-26 23:51:49 +000031};
32}
Zachary Turnerc95df942016-05-04 20:32:13 +000033}
Zachary Turner4490f2d2015-02-26 23:51:49 +000034
35#endif