DiagnosticPrinter.cpp revision 36b56886974eae4f9c5ebc96befd3e7bfe5de338
1//===- llvm/Support/DiagnosticInfo.cpp - Diagnostic Definitions -*- C++ -*-===// 2// 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// 10// This file defines the a diagnostic printer relying on raw_ostream. 11// 12//===----------------------------------------------------------------------===// 13 14#include "llvm/ADT/Twine.h" 15#include "llvm/IR/DiagnosticPrinter.h" 16#include "llvm/IR/Module.h" 17#include "llvm/IR/Value.h" 18#include "llvm/Support/raw_ostream.h" 19 20using namespace llvm; 21 22DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(char C) { 23 Stream << C; 24 return *this; 25} 26 27DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(unsigned char C) { 28 Stream << C; 29 return *this; 30} 31 32DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(signed char C) { 33 Stream << C; 34 return *this; 35} 36 37DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(StringRef Str) { 38 Stream << Str; 39 return *this; 40} 41 42DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(const char *Str) { 43 Stream << Str; 44 return *this; 45} 46 47DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<( 48 const std::string &Str) { 49 Stream << Str; 50 return *this; 51} 52 53DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(unsigned long N) { 54 Stream << N; 55 return *this; 56} 57DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(long N) { 58 Stream << N; 59 return *this; 60} 61 62DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<( 63 unsigned long long N) { 64 Stream << N; 65 return *this; 66} 67 68DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(long long N) { 69 Stream << N; 70 return *this; 71} 72 73DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(const void *P) { 74 Stream << P; 75 return *this; 76} 77 78DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(unsigned int N) { 79 Stream << N; 80 return *this; 81} 82 83DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(int N) { 84 Stream << N; 85 return *this; 86} 87 88DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(double N) { 89 Stream << N; 90 return *this; 91} 92 93DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(const Twine &Str) { 94 Str.print(Stream); 95 return *this; 96} 97 98// IR related types. 99DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(const Value &V) { 100 Stream << V.getName(); 101 return *this; 102} 103 104DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(const Module &M) { 105 Stream << M.getModuleIdentifier(); 106 return *this; 107} 108