From af0e76deef42154fd9914aceb31e5ca80465410e Mon Sep 17 00:00:00 2001
From: Daniel Friesel <derf@finalrewind.org>
Date: Mon, 24 Sep 2018 16:33:53 +0200
Subject: [PATCH] Add memory buffer (drop-in replacement for kout/stdout)

---
 include/object/stdbuf.h | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)
 create mode 100644 include/object/stdbuf.h

diff --git a/include/object/stdbuf.h b/include/object/stdbuf.h
new file mode 100644
index 0000000..db30621
--- /dev/null
+++ b/include/object/stdbuf.h
@@ -0,0 +1,20 @@
+#ifndef STDBUF_H
+#define STDBUF_H
+
+#include "object/outputstream.h"
+
+template <class T = OutputStream>
+class BufferOutput : public T {
+	private:
+		BufferOutput(const BufferOutput &copy);
+		char *buffer;
+
+	public:
+		BufferOutput(char *target) { buffer = target; }
+		virtual void put(char c) {
+			*buffer = c;
+			buffer++;
+		}
+};
+
+#endif
-- 
GitLab