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 | 0ffe0e096d8d31384da852c513784ec7c9245876 (patch) | |
tree | 7c36c8708cb02f9161bc1dbf488d7ae9338fa20c /llvm/lib/Support/raw_os_ostream.cpp | |
parent | 06fa1768620138a57dcad5277b0a3dd0adb505cc (diff) | |
download | bcm5719-llvm-0ffe0e096d8d31384da852c513784ec7c9245876.tar.gz bcm5719-llvm-0ffe0e096d8d31384da852c513784ec7c9245876.zip |
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.
llvm-svn: 79886
Diffstat (limited to 'llvm/lib/Support/raw_os_ostream.cpp')
-rw-r--r-- | llvm/lib/Support/raw_os_ostream.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/llvm/lib/Support/raw_os_ostream.cpp b/llvm/lib/Support/raw_os_ostream.cpp new file mode 100644 index 00000000000..3374dd7a66a --- /dev/null +++ b/llvm/lib/Support/raw_os_ostream.cpp @@ -0,0 +1,30 @@ +//===--- raw_os_ostream.cpp - Implement the raw_os_ostream class ----------===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This implements support adapting raw_ostream to std::ostream. +// +//===----------------------------------------------------------------------===// + +#include "llvm/Support/raw_os_ostream.h" +#include <ostream> +using namespace llvm; + +//===----------------------------------------------------------------------===// +// raw_os_ostream +//===----------------------------------------------------------------------===// + +raw_os_ostream::~raw_os_ostream() { + flush(); +} + +void raw_os_ostream::write_impl(const char *Ptr, size_t Size) { + OS.write(Ptr, Size); +} + +uint64_t raw_os_ostream::current_pos() { return OS.tellp(); } |