diff options
Diffstat (limited to 'tools/lldb-test/FormatUtil.h')
-rw-r--r-- | tools/lldb-test/FormatUtil.h | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/tools/lldb-test/FormatUtil.h b/tools/lldb-test/FormatUtil.h deleted file mode 100644 index 598d4c5440f5..000000000000 --- a/tools/lldb-test/FormatUtil.h +++ /dev/null @@ -1,78 +0,0 @@ -//===- FormatUtil.h ------------------------------------------- *- C++ --*-===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -#ifndef LLVM_TOOLS_LLDBTEST_FORMATUTIL_H -#define LLVM_TOOLS_LLDBTEST_FORMATUTIL_H - -#include "llvm/ADT/ArrayRef.h" -#include "llvm/ADT/StringRef.h" -#include "llvm/ADT/Twine.h" -#include "llvm/Support/FormatVariadic.h" -#include "llvm/Support/raw_ostream.h" - -#include <list> - -namespace lldb_private { - -class LinePrinter { - llvm::raw_ostream &OS; - int IndentSpaces; - int CurrentIndent; - -public: - class Line { - LinePrinter *P; - - public: - Line(LinePrinter &P) : P(&P) { P.OS.indent(P.CurrentIndent); } - ~Line(); - - Line(Line &&RHS) : P(RHS.P) { RHS.P = nullptr; } - void operator=(Line &&) = delete; - - operator llvm::raw_ostream &() { return P->OS; } - }; - - LinePrinter(int Indent, llvm::raw_ostream &Stream); - - void Indent(uint32_t Amount = 0); - void Unindent(uint32_t Amount = 0); - void NewLine(); - - void printLine(const llvm::Twine &T) { line() << T; } - template <typename... Ts> void formatLine(const char *Fmt, Ts &&... Items) { - printLine(llvm::formatv(Fmt, std::forward<Ts>(Items)...)); - } - - void formatBinary(llvm::StringRef Label, llvm::ArrayRef<uint8_t> Data, - uint32_t StartOffset); - void formatBinary(llvm::StringRef Label, llvm::ArrayRef<uint8_t> Data, - uint64_t BaseAddr, uint32_t StartOffset); - - Line line() { return Line(*this); } - int getIndentLevel() const { return CurrentIndent; } -}; - -struct AutoIndent { - explicit AutoIndent(LinePrinter &L, uint32_t Amount = 0) - : L(&L), Amount(Amount) { - L.Indent(Amount); - } - ~AutoIndent() { - if (L) - L->Unindent(Amount); - } - - LinePrinter *L = nullptr; - uint32_t Amount = 0; -}; - -} // namespace lldb_private - -#endif |