diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2017-04-16 16:01:22 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2017-04-16 16:01:22 +0000 |
commit | 71d5a2540a98c81f5bcaeb48805e0e2881f530ef (patch) | |
tree | 5343938942df402b49ec7300a1c25a2d4ccd5821 /tools/llvm-pdbdump/LinePrinter.h | |
parent | 31bbf64f3a4974a2d6c8b3b27ad2f519caf74057 (diff) |
Diffstat (limited to 'tools/llvm-pdbdump/LinePrinter.h')
-rw-r--r-- | tools/llvm-pdbdump/LinePrinter.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/tools/llvm-pdbdump/LinePrinter.h b/tools/llvm-pdbdump/LinePrinter.h index a4401f8af955..1a922feb1e62 100644 --- a/tools/llvm-pdbdump/LinePrinter.h +++ b/tools/llvm-pdbdump/LinePrinter.h @@ -20,20 +20,24 @@ namespace llvm { namespace pdb { +class ClassLayout; + class LinePrinter { friend class WithColor; public: - LinePrinter(int Indent, raw_ostream &Stream); + LinePrinter(int Indent, bool UseColor, raw_ostream &Stream); void Indent(); void Unindent(); void NewLine(); + bool hasColor() const { return UseColor; } raw_ostream &getStream() { return OS; } int getIndentLevel() const { return CurrentIndent; } - bool IsTypeExcluded(llvm::StringRef TypeName); + bool IsClassExcluded(const ClassLayout &Class); + bool IsTypeExcluded(llvm::StringRef TypeName, uint32_t Size); bool IsSymbolExcluded(llvm::StringRef SymbolName); bool IsCompilandExcluded(llvm::StringRef CompilandName); @@ -48,6 +52,7 @@ private: raw_ostream &OS; int IndentSpaces; int CurrentIndent; + bool UseColor; std::list<Regex> ExcludeCompilandFilters; std::list<Regex> ExcludeTypeFilters; @@ -68,6 +73,8 @@ enum class PDB_ColorItem { None, Address, Type, + Comment, + Padding, Keyword, Offset, Identifier, @@ -87,6 +94,7 @@ public: private: void applyColor(PDB_ColorItem C); raw_ostream &OS; + bool UseColor; }; } } |