Browse Source

Add StandardOutputWriter class

- add StandardOutputWriter class, which implements
IWriter interface
Patrick 3 years ago
parent
commit
60af831901

+ 3 - 1
CMakeLists.txt

@@ -125,7 +125,9 @@ set(SOURCE_FILES
         ${CMAKE_CURRENT_SOURCE_DIR}/source/ls_std/io/xml/XMLParseData.hpp
         ${CMAKE_CURRENT_SOURCE_DIR}/source/ls_std/io/xml/XMLReaderMock.hpp
         ${CMAKE_CURRENT_SOURCE_DIR}/source/ls_std/io/xml/XMLReaderMock.cpp
-        ${CMAKE_CURRENT_SOURCE_DIR}/source/ls_std/exception/NullPointerException.hpp)
+        ${CMAKE_CURRENT_SOURCE_DIR}/source/ls_std/exception/NullPointerException.hpp
+        ${CMAKE_CURRENT_SOURCE_DIR}/source/ls_std/io/StandardOutputWriter.hpp
+        ${CMAKE_CURRENT_SOURCE_DIR}/source/ls_std/io/StandardOutputWriter.cpp)
 
 set(TEST_FILES
         ${CMAKE_CURRENT_SOURCE_DIR}/test/cases/boxing/IntegerTest.cpp

+ 17 - 0
source/ls_std/io/StandardOutputWriter.cpp

@@ -0,0 +1,17 @@
+/*
+ * Author:          Patrick-Christopher Mattulat
+ * Company:         Lynar Studios
+ * E-Mail:          webmaster@lynarstudios.com
+ * Created:         2020-11-06
+ * Changed:         2020-11-06
+ *
+ * */
+
+#include <iostream>
+#include "StandardOutputWriter.hpp"
+
+bool ls_std::StandardOutputWriter::write(const ls_std::byte_field &_data)
+{
+  std::cout << _data << std::endl;
+  return !_data.empty();
+}

+ 26 - 0
source/ls_std/io/StandardOutputWriter.hpp

@@ -0,0 +1,26 @@
+/*
+ * Author:          Patrick-Christopher Mattulat
+ * Company:         Lynar Studios
+ * E-Mail:          webmaster@lynarstudios.com
+ * Created:         2020-11-06
+ * Changed:         2020-11-06
+ *
+ * */
+
+#ifndef LS_STD_STANDARD_OUTPUT_WRITER_HPP
+#define LS_STD_STANDARD_OUTPUT_WRITER_HPP
+
+#include "IWriter.hpp"
+
+namespace ls_std {
+  class StandardOutputWriter : public IWriter {
+    public:
+
+      StandardOutputWriter() = default;
+      ~StandardOutputWriter() = default;
+
+      bool write(const ls_std::byte_field& _data) override;
+  };
+}
+
+#endif