ソースを参照

Convert FilePathSeparatorMatch into a class

Patrick-Christopher Mattulat 2 年 前
コミット
06f99104e4

+ 1 - 0
CMakeLists.txt

@@ -192,6 +192,7 @@ set(SOURCE_FILES_IO
         ${CMAKE_CURRENT_SOURCE_DIR}/source/ls-std/io/File.cpp
         ${CMAKE_CURRENT_SOURCE_DIR}/source/ls-std/io/FileOutputStream.cpp
         ${CMAKE_CURRENT_SOURCE_DIR}/source/ls-std/io/FilePathSeparator.cpp
+        ${CMAKE_CURRENT_SOURCE_DIR}/source/ls-std/io/FilePathSeparatorMatch.cpp
         ${CMAKE_CURRENT_SOURCE_DIR}/source/ls-std/io/FileReader.cpp
         ${CMAKE_CURRENT_SOURCE_DIR}/source/ls-std/io/FileWriter.cpp
         ${CMAKE_CURRENT_SOURCE_DIR}/source/ls-std/io/NewLine.cpp

+ 6 - 8
include/ls-std/io/FilePathSeparatorMatch.hpp

@@ -3,25 +3,23 @@
  * Company:         Lynar Studios
  * E-Mail:          webmaster@lynarstudios.com
  * Created:         2020-08-15
- * Changed:         2023-02-04
+ * Changed:         2023-02-05
  *
  * */
 
 #ifndef LS_STD_FILE_PATH_MATCH_HPP
 #define LS_STD_FILE_PATH_MATCH_HPP
 
-#include "FilePathSeparator.hpp"
-
 namespace ls::std::io
 {
-  struct FilePathSeparatorMatch // TODO: turn to class, rather than keeping it as struct
+  class FilePathSeparatorMatch
   {
     public:
 
-      bool operator()(char _char) const
-      {
-        return _char == ls::std::io::FilePathSeparator::getWindowsFilePathSeparator() || _char == ls::std::io::FilePathSeparator::getUnixFilePathSeparator();
-      }
+      FilePathSeparatorMatch();
+      ~FilePathSeparatorMatch();
+
+      bool operator()(char _char) const;
   };
 }
 

+ 2 - 1
source/ls-std/io/File.cpp

@@ -3,7 +3,7 @@
  * Company:         Lynar Studios
  * E-Mail:          webmaster@lynarstudios.com
  * Created:         2020-08-15
- * Changed:         2023-02-04
+ * Changed:         2023-02-05
  *
  * */
 
@@ -15,6 +15,7 @@
 #include <fstream>
 #include <ls-std/core/exception/FileOperationException.hpp>
 #include <ls-std/io/File.hpp>
+#include <ls-std/io/FilePathSeparator.hpp>
 #include <ls-std/io/FilePathSeparatorMatch.hpp>
 #include <sstream>
 #include <sys/stat.h>

+ 20 - 0
source/ls-std/io/FilePathSeparatorMatch.cpp

@@ -0,0 +1,20 @@
+/*
+* Author:          Patrick-Christopher Mattulat
+* Company:         Lynar Studios
+* E-Mail:          webmaster@lynarstudios.com
+* Created:         2023-02-05
+* Changed:         2023-02-05
+*
+* */
+
+#include <ls-std/io/FilePathSeparator.hpp>
+#include <ls-std/io/FilePathSeparatorMatch.hpp>
+
+ls::std::io::FilePathSeparatorMatch::FilePathSeparatorMatch() = default;
+
+ls::std::io::FilePathSeparatorMatch::~FilePathSeparatorMatch() = default;
+
+bool ls::std::io::FilePathSeparatorMatch::operator()(char _char) const
+{
+  return _char == ls::std::io::FilePathSeparator::getWindowsFilePathSeparator() || _char == ls::std::io::FilePathSeparator::getUnixFilePathSeparator();
+}