OLD | NEW |
| (Empty) |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 // This file contains utility functions for dealing with pluralization of | |
6 // localized content. | |
7 | |
8 #ifndef UI_BASE_L10N_L10N_UTIL_PLURALS_H_ | |
9 #define UI_BASE_L10N_L10N_UTIL_PLURALS_H_ | |
10 | |
11 #include <string> | |
12 #include <vector> | |
13 | |
14 #include "base/memory/scoped_ptr.h" | |
15 #include "third_party/icu/source/i18n/unicode/msgfmt.h" | |
16 #include "third_party/icu/source/i18n/unicode/plurrule.h" | |
17 | |
18 namespace l10n_util { | |
19 | |
20 // Returns a PluralRules for the current locale. | |
21 scoped_ptr<icu::PluralRules> BuildPluralRules(); | |
22 | |
23 // Formats |number| using MessageFormat |format| and appends the result | |
24 // to |append_to|. | |
25 // |format| has to be generated with ICU's plural message format. | |
26 // See http://userguide.icu-project.org/formatparse/messages | |
27 void FormatNumberInPlural(const icu::MessageFormat& format, int number, | |
28 icu::UnicodeString* append_to, UErrorCode* err); | |
29 | |
30 } // namespace l10n_util | |
31 | |
32 #endif // UI_BASE_L10N_L10N_UTIL_PLURALS_H_ | |
OLD | NEW |