summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/raw_os_ostream.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-08-24 04:02:06 +0000
committerChris Lattner <sabre@nondot.org>2009-08-24 04:02:06 +0000
commit0ffe0e096d8d31384da852c513784ec7c9245876 (patch)
tree7c36c8708cb02f9161bc1dbf488d7ae9338fa20c /llvm/lib/Support/raw_os_ostream.cpp
parent06fa1768620138a57dcad5277b0a3dd0adb505cc (diff)
downloadbcm5719-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.cpp30
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(); }
OpenPOWER on IntegriCloud