From: Maxim Mamontov Date: Sat, 10 Jan 2015 19:34:40 +0000 (+0200) Subject: Simplified ToLower/ToUpper functions. X-Git-Url: https://git.stg.codes/stg.git/commitdiff_plain/1c9c1588c5d07cea181632fc95b0046b6b04758e?hp=-c Simplified ToLower/ToUpper functions. --- 1c9c1588c5d07cea181632fc95b0046b6b04758e diff --git a/stglibs/common.lib/common.cpp b/stglibs/common.lib/common.cpp index 2a26c5ae..d0ff074c 100644 --- a/stglibs/common.lib/common.cpp +++ b/stglibs/common.lib/common.cpp @@ -47,6 +47,7 @@ #include +#include #include #include #include @@ -856,20 +857,16 @@ std::string res(val); return TrimR(TrimL(res)); } //--------------------------------------------------------------------------- -std::string ToLower(const std::string & value) +std::string ToLower(std::string value) { - std::string res; - for (std::string::size_type pos = 0; pos < value.length(); ++pos) - res += tolower(value[pos]); - return res; + std::transform(value.begin(), value.end(), value.begin(), ::tolower); + return value; } //--------------------------------------------------------------------------- -std::string ToUpper(const std::string & value) +std::string ToUpper(std::string value) { - std::string res; - for (std::string::size_type pos = 0; pos < value.length(); ++pos) - res += toupper(value[pos]); - return res; + std::transform(value.begin(), value.end(), value.begin(), ::toupper); + return value; } //--------------------------------------------------------------------------- #ifdef WIN32 diff --git a/stglibs/common.lib/include/stg/common.h b/stglibs/common.lib/include/stg/common.h index ec05adb1..90bd639d 100644 --- a/stglibs/common.lib/include/stg/common.h +++ b/stglibs/common.lib/include/stg/common.h @@ -99,8 +99,8 @@ std::string & TrimR(std::string & val); std::string & Trim(std::string & val); std::string Trim(const std::string & val); -std::string ToLower(const std::string & value); -std::string ToUpper(const std::string & value); +std::string ToLower(std::string value); +std::string ToUpper(std::string value); template inline