diff options
author | Chris Lattner <sabre@nondot.org> | 2009-08-24 04:02:06 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2009-08-24 04:02:06 +0000 |
commit | cd25ee45526a75a9b7554757be30eacc3b2d7806 (patch) | |
tree | 7418845548c1a253fbda30d0eb9fa64f7eeded36 /include/llvm/Support | |
parent | f537768f6dfcdf5f06696b0383e292cbe3c6fec1 (diff) | |
download | external_llvm-cd25ee45526a75a9b7554757be30eacc3b2d7806.zip external_llvm-cd25ee45526a75a9b7554757be30eacc3b2d7806.tar.gz external_llvm-cd25ee45526a75a9b7554757be30eacc3b2d7806.tar.bz2 |
split raw_os_ostream out to its own header and implementation file. This
means that raw_ostream no longer has to #include <iosfwd>. Nothing in llvm
should use raw_os_ostream.h, but llvm-gcc and some unit tests do.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79886 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Support')
-rw-r--r-- | include/llvm/Support/raw_os_ostream.h | 42 | ||||
-rw-r--r-- | include/llvm/Support/raw_ostream.h | 19 |
2 files changed, 42 insertions, 19 deletions
diff --git a/include/llvm/Support/raw_os_ostream.h b/include/llvm/Support/raw_os_ostream.h new file mode 100644 index 0000000..e0978b2 --- /dev/null +++ b/include/llvm/Support/raw_os_ostream.h @@ -0,0 +1,42 @@ +//===- raw_os_ostream.h - std::ostream adaptor for raw_ostream --*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file defines the raw_os_ostream class. +// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_SUPPORT_RAW_OS_OSTREAM_H +#define LLVM_SUPPORT_RAW_OS_OSTREAM_H + +#include "llvm/Support/raw_ostream.h" +#include <iosfwd> + +namespace llvm { + +/// raw_os_ostream - A raw_ostream that writes to an std::ostream. This is a +/// simple adaptor class. It does not check for output errors; clients should +/// use the underlying stream to detect errors. +class raw_os_ostream : public raw_ostream { + std::ostream &OS; + + /// write_impl - See raw_ostream::write_impl. + virtual void write_impl(const char *Ptr, size_t Size); + + /// current_pos - Return the current position within the stream, not + /// counting the bytes currently in the buffer. + virtual uint64_t current_pos(); + +public: + raw_os_ostream(std::ostream &O) : OS(O) {} + ~raw_os_ostream(); +}; + +} // end llvm namespace + +#endif diff --git a/include/llvm/Support/raw_ostream.h b/include/llvm/Support/raw_ostream.h index 0a5019e..e9e2379 100644 --- a/include/llvm/Support/raw_ostream.h +++ b/include/llvm/Support/raw_ostream.h @@ -15,7 +15,6 @@ #define LLVM_SUPPORT_RAW_OSTREAM_H #include "llvm/ADT/StringRef.h" -#include <iosfwd> namespace llvm { class format_object_base; @@ -407,24 +406,6 @@ raw_ostream &nulls(); // Output Stream Adaptors //===----------------------------------------------------------------------===// -/// raw_os_ostream - A raw_ostream that writes to an std::ostream. This is a -/// simple adaptor class. It does not check for output errors; clients should -/// use the underlying stream to detect errors. -class raw_os_ostream : public raw_ostream { - std::ostream &OS; - - /// write_impl - See raw_ostream::write_impl. - virtual void write_impl(const char *Ptr, size_t Size); - - /// current_pos - Return the current position within the stream, not - /// counting the bytes currently in the buffer. - virtual uint64_t current_pos(); - -public: - raw_os_ostream(std::ostream &O) : OS(O) {} - ~raw_os_ostream(); -}; - /// raw_string_ostream - A raw_ostream that writes to an std::string. This is a /// simple adaptor class. This class does not encounter output errors. class raw_string_ostream : public raw_ostream { |