// Copyright 2019 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "components/language/core/common/language_util.h" #include <stddef.h> #include <algorithm> #include <string_view> #include "base/strings/strcat.h" #include "components/country_codes/country_codes.h" #include "components/language/core/common/locale_util.h" namespace language { namespace { struct LanguageCodePair { … }; // Some languages are treated as same languages in Translate even though they // are different to be exact. // // If this table is updated, please sync this with the synonym table in // chrome/browser/resources/settings/languages_page/languages.ts. const LanguageCodePair kTranslateOnlySynonyms[] = …; // Some languages have changed codes over the years and sometimes the older // codes are used, so we must see them as synonyms. // // If this table is updated, please sync this with the synonym table in // chrome/browser/resources/settings/languages_page/languages.ts. const LanguageCodePair kLanguageCodeSynonyms[] = …; // Some Chinese language codes are compatible with zh-TW or zh-CN in terms of // Translate. // // If this table is updated, please sync this with the synonym table in // chrome/browser/resources/settings/languages_page/languages.ts. const LanguageCodePair kLanguageCodeChineseCompatiblePairs[] = …; } // namespace bool OverrideTranslateTriggerInIndia() { … } OverrideLanguageModel GetOverrideLanguageModel() { … } void ToTranslateLanguageSynonym(std::string* language) { … } void ToChromeLanguageSynonym(std::string* language) { … } } // namespace language