diff options
author | rouslan@chromium.org <rouslan@chromium.org@38ededc0-08b8-5190-f2ac-b31f878777ad> | 2014-07-17 03:42:55 +0000 |
---|---|---|
committer | rouslan@chromium.org <rouslan@chromium.org@38ededc0-08b8-5190-f2ac-b31f878777ad> | 2014-07-17 03:42:55 +0000 |
commit | 54a60127ec33ff2c28b1934d75cb17c5c51b9f43 (patch) | |
tree | 067f2c1055ec3d69c7232aae88b812c16c616c7d | |
parent | 790e435e19c39de8c6d57ef82480fd44571f9003 (diff) | |
download | src-54a60127ec33ff2c28b1934d75cb17c5c51b9f43.tar.gz |
Revert "Expose GetLineSeparatorForLanguage in address_formatter.h"
This reverts revision
https://code.google.com/p/libaddressinput/source/detail?r=305.
TBR=lararennie@google.com
Review URL: https://codereview.appspot.com/118800043
git-svn-id: http://libaddressinput.googlecode.com/svn/trunk@306 38ededc0-08b8-5190-f2ac-b31f878777ad
-rw-r--r-- | cpp/include/libaddressinput/address_formatter.h | 4 | ||||
-rw-r--r-- | cpp/src/address_formatter.cc | 80 |
2 files changed, 40 insertions, 44 deletions
diff --git a/cpp/include/libaddressinput/address_formatter.h b/cpp/include/libaddressinput/address_formatter.h index 3ac94c3..e267884 100644 --- a/cpp/include/libaddressinput/address_formatter.h +++ b/cpp/include/libaddressinput/address_formatter.h @@ -45,10 +45,6 @@ void GetFormattedNationalAddressLine( void GetStreetAddressLinesAsSingleLine( const AddressData& address_data, std::string* line); -// Returns the separator used for collapsing multiple parts of an address into a -// single line. -std::string GetLineSeparatorForLanguage(const std::string& language_tag); - } // namespace addressinput } // namespace i18n diff --git a/cpp/src/address_formatter.cc b/cpp/src/address_formatter.cc index da5bd07..f4fc04d 100644 --- a/cpp/src/address_formatter.cc +++ b/cpp/src/address_formatter.cc @@ -66,6 +66,46 @@ const char* kLanguagesThatUseAnArabicComma[] = { "uz" }; +std::string GetLineSeparatorForLanguage(const std::string& language_tag) { + Language address_language(language_tag); + + // First deal with explicit script tags. + if (address_language.has_latin_script) { + return kCommaSeparator; + } + + // Now guess something appropriate based on the base language. + const std::string& base_language = address_language.base; + if (std::find_if(kLanguagesThatUseSpace, + kLanguagesThatUseSpace + arraysize(kLanguagesThatUseSpace), + std::bind2nd(EqualToTolowerString(), base_language)) != + kLanguagesThatUseSpace + arraysize(kLanguagesThatUseSpace)) { + return kSpaceSeparator; + } else if (std::find_if( + kLanguagesThatHaveNoSeparator, + kLanguagesThatHaveNoSeparator + + arraysize(kLanguagesThatHaveNoSeparator), + std::bind2nd(EqualToTolowerString(), base_language)) != + kLanguagesThatHaveNoSeparator + + arraysize(kLanguagesThatHaveNoSeparator)) { + return ""; + } else if (std::find_if( + kLanguagesThatUseAnArabicComma, + kLanguagesThatUseAnArabicComma + + arraysize(kLanguagesThatUseAnArabicComma), + std::bind2nd(EqualToTolowerString(), base_language)) != + kLanguagesThatUseAnArabicComma + + arraysize(kLanguagesThatUseAnArabicComma)) { + return kArabicCommaSeparator; + } + // Either the language is a latin-script language, or no language was + // specified. In the latter case we still return ", " as the most common + // separator in use. In countries that don't use this, e.g. Thailand, + // addresses are often written in latin script where this would still be + // appropriate, so this is a reasonable default in the absence of information. + return kCommaSeparator; +} + void CombineLinesForLanguage( const std::vector<std::string>& lines, const std::string& language_tag, std::string *line) { @@ -146,45 +186,5 @@ void GetStreetAddressLinesAsSingleLine( address_data.address_line, address_data.language_code, line); } -std::string GetLineSeparatorForLanguage(const std::string& language_tag) { - Language address_language(language_tag); - - // First deal with explicit script tags. - if (address_language.has_latin_script) { - return kCommaSeparator; - } - - // Now guess something appropriate based on the base language. - const std::string& base_language = address_language.base; - if (std::find_if(kLanguagesThatUseSpace, - kLanguagesThatUseSpace + arraysize(kLanguagesThatUseSpace), - std::bind2nd(EqualToTolowerString(), base_language)) != - kLanguagesThatUseSpace + arraysize(kLanguagesThatUseSpace)) { - return kSpaceSeparator; - } else if (std::find_if( - kLanguagesThatHaveNoSeparator, - kLanguagesThatHaveNoSeparator + - arraysize(kLanguagesThatHaveNoSeparator), - std::bind2nd(EqualToTolowerString(), base_language)) != - kLanguagesThatHaveNoSeparator + - arraysize(kLanguagesThatHaveNoSeparator)) { - return ""; - } else if (std::find_if( - kLanguagesThatUseAnArabicComma, - kLanguagesThatUseAnArabicComma + - arraysize(kLanguagesThatUseAnArabicComma), - std::bind2nd(EqualToTolowerString(), base_language)) != - kLanguagesThatUseAnArabicComma + - arraysize(kLanguagesThatUseAnArabicComma)) { - return kArabicCommaSeparator; - } - // Either the language is a latin-script language, or no language was - // specified. In the latter case we still return ", " as the most common - // separator in use. In countries that don't use this, e.g. Thailand, - // addresses are often written in latin script where this would still be - // appropriate, so this is a reasonable default in the absence of information. - return kCommaSeparator; -} - } // namespace addressinput } // namespace i18n |