Added FileSystem::join("dir", "file") -> "dir/file"
authorIngo Ruhnke <grumbel@gmail.com>
Sun, 10 Aug 2014 21:52:16 +0000 (23:52 +0200)
committerIngo Ruhnke <grumbel@gmail.com>
Mon, 11 Aug 2014 22:21:35 +0000 (00:21 +0200)
src/util/file_system.cpp
src/util/file_system.hpp

index a89b1b4..524d4a5 100644 (file)
@@ -103,6 +103,22 @@ std::string normalize(const std::string& filename)
   return result.str();
 }
 
+std::string join(const std::string& lhs, const std::string& rhs)
+{
+  if (lhs.empty())
+  {
+    return rhs;
+  }
+  else if (lhs.back() == '/')
+  {
+    return lhs + rhs;
+  }
+  else
+  {
+    return lhs + "/" + rhs;
+  }
+}
+
 } // namespace FileSystem
 
 /* EOF */
index 5cdda27..0e97835 100644 (file)
@@ -40,6 +40,11 @@ std::string strip_extension(const std::string& filename);
  */
 std::string normalize(const std::string& filename);
 
+/**
+ * join two filenames join("foo", "bar") -> "foo/bar"
+ */
+std::string join(const std::string& lhs, const std::string& rhs);
+
 } // namespace FileSystem
 
 #endif