1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-24 22:14:36 +02:00

vstd: pass separators and input by reference

It removes many cases of redundnant string copying
This commit is contained in:
Konstantin 2023-02-05 17:27:39 +03:00
parent 14d27c788f
commit cb3723b54c
2 changed files with 4 additions and 4 deletions

View File

@ -5,8 +5,8 @@ VCMI_LIB_NAMESPACE_BEGIN
namespace vstd
{
DLL_LINKAGE std::vector<std::string> split(std::string s, std::string separators);
DLL_LINKAGE std::pair<std::string, std::string> splitStringToPair(std::string input, char separator);
DLL_LINKAGE std::vector<std::string> split(std::string s, const std::string& separators);
DLL_LINKAGE std::pair<std::string, std::string> splitStringToPair(const std::string& input, char separator);
}

View File

@ -6,14 +6,14 @@ VCMI_LIB_NAMESPACE_BEGIN
namespace vstd
{
DLL_LINKAGE std::vector<std::string> split(std::string s, std::string separators)
DLL_LINKAGE std::vector<std::string> split(std::string s, const std::string& separators)
{
std::vector<std::string> result;
boost::split(result, s, boost::is_any_of(separators));
return result;
}
DLL_LINKAGE std::pair<std::string, std::string> splitStringToPair(std::string input, char separator)
DLL_LINKAGE std::pair<std::string, std::string> splitStringToPair(const std::string& input, char separator)
{
std::pair<std::string, std::string> ret;
size_t splitPos = input.find(separator);