diff options
author | vng <viktor.govako@gmail.com> | 2015-09-18 16:09:59 +0300 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 04:26:59 +0300 |
commit | 76b9949a81c0ab82d0ff5d1b688967758e46d46f (patch) | |
tree | c75c24a8f10a13e1865325b4e3a5629b359137a7 | |
parent | f41010bf48caf96170091d44f0c7b25cdfcb1ce4 (diff) |
Removed dummy *InPlace functions.
-rw-r--r-- | base/base_tests/string_utils_test.cpp | 15 | ||||
-rw-r--r-- | base/lower_case.cpp | 10 | ||||
-rw-r--r-- | base/normalize_unicode.cpp | 4 | ||||
-rw-r--r-- | base/string_utils.cpp | 28 | ||||
-rw-r--r-- | base/string_utils.hpp | 3 | ||||
-rw-r--r-- | indexer/search_string_utils.hpp | 3 | ||||
-rw-r--r-- | search/house_detector.cpp | 5 |
7 files changed, 18 insertions, 50 deletions
diff --git a/base/base_tests/string_utils_test.cpp b/base/base_tests/string_utils_test.cpp index 615edb7e32..6c6e6a548e 100644 --- a/base/base_tests/string_utils_test.cpp +++ b/base/base_tests/string_utils_test.cpp @@ -101,24 +101,20 @@ UNIT_TEST(MakeLowerCase) string s; s = "THIS_IS_UPPER"; - strings::MakeLowerCaseInplace(s); - TEST_EQUAL(s, "this_is_upper", ()); + TEST_EQUAL(strings::MakeLowerCase(s), "this_is_upper", ()); s = "THIS_iS_MiXed"; - strings::MakeLowerCaseInplace(s); - TEST_EQUAL(s, "this_is_mixed", ()); + TEST_EQUAL(strings::MakeLowerCase(s), "this_is_mixed", ()); s = "this_is_lower"; - strings::MakeLowerCaseInplace(s); - TEST_EQUAL(s, "this_is_lower", ()); + TEST_EQUAL(strings::MakeLowerCase(s), "this_is_lower", ()); string const utf8("Hola! 99-\xD0\xA3\xD0\x9F\xD0\xAF\xD0\xA7\xD0\x9A\xD0\x90"); TEST_EQUAL(strings::MakeLowerCase(utf8), "hola! 99-\xD1\x83\xD0\xBF\xD1\x8F\xD1\x87\xD0\xBA\xD0\xB0", ()); s = "\xc3\x9f"; // es-cet - strings::MakeLowerCaseInplace(s); - TEST_EQUAL(s, "ss", ()); + TEST_EQUAL(strings::MakeLowerCase(s), "ss", ()); strings::UniChar const arr[] = {0x397, 0x10B4, 'Z'}; strings::UniChar const carr[] = {0x3b7, 0x2d14, 'z'}; @@ -382,8 +378,7 @@ UNIT_TEST(Normalize) strings::UniChar const r[] = { 0x30, 0x2c, 'H', 0x649, 0x631, 0x6cc, 0x627, 0x644, 0x31, 0x2044, 0x37 }; strings::UniString result(&r[0], &r[0] + ARRAY_SIZE(r)); - strings::NormalizeInplace(us); - TEST_EQUAL(us, result, ()); + TEST_EQUAL(strings::Normalize(us), result, ()); } UNIT_TEST(Normalize_Special) diff --git a/base/lower_case.cpp b/base/lower_case.cpp index cc6b69ddb9..83a036fb91 100644 --- a/base/lower_case.cpp +++ b/base/lower_case.cpp @@ -174,7 +174,7 @@ static size_t w(UniChar c, UniChar * buf) return 0; } -void MakeLowerCaseInplace(UniString & s) +UniString MakeLowerCase(UniString const & s) { size_t const size = s.size(); @@ -195,7 +195,7 @@ void MakeLowerCaseInplace(UniString & s) } } - s.swap(r); + return r; } size_t CountNormLowerSymbols(UniString const & s, UniString const & lowStr) @@ -209,11 +209,7 @@ size_t CountNormLowerSymbols(UniString const & s, UniString const & lowStr) if (sIdx == size) return 0; // low_s has more length than s - UniString strCharNorm; - strCharNorm.push_back(s[sIdx++]); - MakeLowerCaseInplace(strCharNorm); - NormalizeInplace(strCharNorm); - + UniString const strCharNorm = Normalize(MakeLowerCase(UniString(1, s[sIdx++]))); for (size_t i = 0; i < strCharNorm.size(); ++i) { if (lowIdx >= lowSize) diff --git a/base/normalize_unicode.cpp b/base/normalize_unicode.cpp index 497a513a83..3ef3fcafe0 100644 --- a/base/normalize_unicode.cpp +++ b/base/normalize_unicode.cpp @@ -15,7 +15,7 @@ static void w(strings::UniString & r, uint16_t startIndex, int count) r.push_back(normSymbols[startIndex + i]); } -void NormalizeInplace(strings::UniString & s) +strings::UniString Normalize(strings::UniString const & s) { size_t const size = s.size(); @@ -4590,7 +4590,7 @@ void NormalizeInplace(strings::UniString & s) } } - s.swap(r); + return r; } } diff --git a/base/string_utils.cpp b/base/string_utils.cpp index 2afc7e14e3..39d281a50d 100644 --- a/base/string_utils.cpp +++ b/base/string_utils.cpp @@ -84,34 +84,16 @@ bool to_double(char const * s, double & d) return stop && *stop == 0; } -UniString MakeLowerCase(UniString const & s) -{ - UniString result(s); - MakeLowerCaseInplace(result); - return result; -} - -void MakeLowerCaseInplace(string & s) +string MakeLowerCase(string const & s) { UniString uniStr; utf8::unchecked::utf8to32(s.begin(), s.end(), back_inserter(uniStr)); - MakeLowerCaseInplace(uniStr); - s.clear(); - utf8::unchecked::utf32to8(uniStr.begin(), uniStr.end(), back_inserter(s)); -} -string MakeLowerCase(string const & s) -{ - string result(s); - MakeLowerCaseInplace(result); - return result; -} + uniStr = MakeLowerCase(uniStr); -UniString Normalize(UniString const & s) -{ - UniString result(s); - NormalizeInplace(result); - return result; + string r; + utf8::unchecked::utf32to8(uniStr.begin(), uniStr.end(), back_inserter(r)); + return r; } namespace diff --git a/base/string_utils.hpp b/base/string_utils.hpp index d1f318873b..8ad14f95e0 100644 --- a/base/string_utils.hpp +++ b/base/string_utils.hpp @@ -32,13 +32,11 @@ public: /// Performs full case folding for string to make it search-compatible according /// to rules in ftp://ftp.unicode.org/Public/UNIDATA/CaseFolding.txt /// For implementation @see base/lower_case.cpp -void MakeLowerCaseInplace(UniString & s); UniString MakeLowerCase(UniString const & s); /// Performs NFKD - Compatibility decomposition for Unicode according /// to rules in ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData.txt /// For implementation @see base/normilize_unicode.cpp -void NormalizeInplace(UniString & s); UniString Normalize(UniString const & s); /// Counts number of start symbols in string s (that is not lower and not normalized) that maches @@ -50,7 +48,6 @@ size_t CountNormLowerSymbols(UniString const & s, UniString const & lowStr); void AsciiToLower(string & s); void Trim(string & s); -void MakeLowerCaseInplace(string & s); string MakeLowerCase(string const & s); bool EqualNoCase(string const & s1, string const & s2); diff --git a/indexer/search_string_utils.hpp b/indexer/search_string_utils.hpp index f131bb73a4..d1dc208cf1 100644 --- a/indexer/search_string_utils.hpp +++ b/indexer/search_string_utils.hpp @@ -44,8 +44,7 @@ inline strings::UniString NormalizeAndSimplifyString(string const & s) } } - MakeLowerCaseInplace(uniString); - NormalizeInplace(uniString); + uniString = Normalize(MakeLowerCase(uniString)); // Remove accents that can appear after NFKD normalization. uniString.erase_if([](UniChar const & c) diff --git a/search/house_detector.cpp b/search/house_detector.cpp index 9b625163a7..6eff00279a 100644 --- a/search/house_detector.cpp +++ b/search/house_detector.cpp @@ -118,10 +118,9 @@ public: } -ParsedNumber::ParsedNumber(string const & number, bool american) : m_fullN(number) +ParsedNumber::ParsedNumber(string const & number, bool american) + : m_fullN(strings::MakeLowerCase(number)) { - strings::MakeLowerCaseInplace(m_fullN); - size_t curr = 0; m_startN = stoi(number, &curr, 10); m_endN = -1; |