diff --git a/server/src/utils/string.cpp b/server/src/utils/string.cpp index 9a4e359..aa834ae 100644 --- a/server/src/utils/string.cpp +++ b/server/src/utils/string.cpp @@ -1,3 +1,17 @@ #include "string.hpp" -using namespace sosc::util::str; +std::string sosc::str::trim(std::string str) { + return rtrimr(ltrimr(str)); +} +std::string* sosc::str::trim(std::string* str) { + return rtrim(ltrim(str)); +} + +std::string& sosc::str::trimr(std::string& str) { + return rtrimr(ltrimr(str)); +} + +std::string sosc::str::rtrim(std::string str) { + int marker = 0; + +} diff --git a/server/src/utils/string.hpp b/server/src/utils/string.hpp index 4232dc8..c4674cc 100644 --- a/server/src/utils/string.hpp +++ b/server/src/utils/string.hpp @@ -1,10 +1,31 @@ #ifndef SOSC_UTIL_STRING_H #define SOSC_UTIL_STRING_H +#include + namespace sosc { -namespace util { -namespace str { +namespace str { +std::string trim (std::string str); +std::string* trim (std::string* str); +std::string& trimr(std::string& str); -}}} +std::string rtrim (std::string str); +std::string* rtrim (std::string* str); +std::string& rtrimr(std::string& str); + +std::string ltrim (std::string str); +std::string* ltrim (std::string* str); +std::string& ltrimr(std::string& str); + +std::vector split + (const std::string& str, char delimiter, int count = -1); +std::vector split + (const std::string& str, std::string delimiter, int count = -1); + +std::string join(const std::vector& strs, + char delimiter, int count = -1); +std::string join(const std::vector& strs, + std::string delimiter, int count = -1); +}} #endif