~alinuxninja/nginx-edge/trunk

« back to all changes in this revision

Viewing changes to debian/modules/ngx_pagespeed/psol/include/third_party/icu/source/i18n/unicode/uldnames.h

  • Committer: Vivian
  • Date: 2015-12-04 18:20:11 UTC
  • Revision ID: git-v1:a36f2bc32e884f7473b3a47040e5411306144d7d
* Do not extract psol.tar.gz

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
*******************************************************************************
3
 
*   Copyright (C) 2010, International Business Machines Corporation and       * 
4
 
*   others.  All Rights Reserved.                                             *
5
 
*******************************************************************************
6
 
*/
7
 
 
8
 
#ifndef __ULDNAMES_H__
9
 
#define __ULDNAMES_H__
10
 
 
11
 
/**
12
 
 * \file
13
 
 * \brief C++ API: Provides display names of Locale ids and their components.
14
 
 */
15
 
 
16
 
#include "unicode/utypes.h"
17
 
#include "unicode/localpointer.h"
18
 
#include "unicode/uscript.h"
19
 
 
20
 
/**
21
 
 * Enum used in LocaleDisplayNames::createInstance.
22
 
 * @stable ICU 4.4
23
 
 */
24
 
typedef enum {
25
 
    /**
26
 
     * Use standard names when generating a locale name,
27
 
     * e.g. en_GB displays as 'English (United Kingdom)'.
28
 
     * @stable ICU 4.4
29
 
     */
30
 
    ULDN_STANDARD_NAMES = 0,
31
 
    /**
32
 
     * Use dialect names, when generating a locale name,
33
 
     * e.g. en_GB displays as 'British English'.
34
 
     * @stable ICU 4.4
35
 
     */
36
 
    ULDN_DIALECT_NAMES
37
 
} UDialectHandling;
38
 
 
39
 
/**
40
 
 * Opaque C service object type for the locale display names API
41
 
 * @stable ICU 4.4
42
 
 */
43
 
struct ULocaleDisplayNames;
44
 
 
45
 
/** 
46
 
 * C typedef for struct ULocaleDisplayNames. 
47
 
 * @stable ICU 4.4 
48
 
 */
49
 
typedef struct ULocaleDisplayNames ULocaleDisplayNames;  
50
 
 
51
 
#if !UCONFIG_NO_FORMATTING
52
 
 
53
 
/**
54
 
 * Returns an instance of LocaleDisplayNames that returns names
55
 
 * formatted for the provided locale, using the provided
56
 
 * dialectHandling.  The usual value for dialectHandling is
57
 
 * ULOC_STANDARD_NAMES.
58
 
 *
59
 
 * @param locale the display locale 
60
 
 * @param dialectHandling how to select names for locales 
61
 
 * @return a ULocaleDisplayNames instance 
62
 
 * @param pErrorCode the status code
63
 
 * @stable ICU 4.4
64
 
 */
65
 
U_STABLE ULocaleDisplayNames * U_EXPORT2
66
 
uldn_open(const char * locale,
67
 
          UDialectHandling dialectHandling,
68
 
          UErrorCode *pErrorCode);
69
 
 
70
 
/**
71
 
 * Closes a ULocaleDisplayNames instance obtained from uldn_open().
72
 
 * @param ldn the ULocaleDisplayNames instance to be closed
73
 
 * @stable ICU 4.4
74
 
 */
75
 
U_STABLE void U_EXPORT2
76
 
uldn_close(ULocaleDisplayNames *ldn);
77
 
 
78
 
#if U_SHOW_CPLUSPLUS_API
79
 
 
80
 
U_NAMESPACE_BEGIN
81
 
 
82
 
/**
83
 
 * \class LocalULocaleDisplayNamesPointer
84
 
 * "Smart pointer" class, closes a ULocaleDisplayNames via uldn_close().
85
 
 * For most methods see the LocalPointerBase base class.
86
 
 *
87
 
 * @see LocalPointerBase
88
 
 * @see LocalPointer
89
 
 * @stable ICU 4.4
90
 
 */
91
 
U_DEFINE_LOCAL_OPEN_POINTER(LocalULocaleDisplayNamesPointer, ULocaleDisplayNames, uldn_close);
92
 
 
93
 
U_NAMESPACE_END
94
 
 
95
 
#endif
96
 
 
97
 
/* getters for state */
98
 
 
99
 
/**
100
 
 * Returns the locale used to determine the display names. This is
101
 
 * not necessarily the same locale passed to {@link #uldn_open}.
102
 
 * @param ldn the LocaleDisplayNames instance
103
 
 * @return the display locale 
104
 
 * @stable ICU 4.4
105
 
 */
106
 
U_STABLE const char * U_EXPORT2
107
 
uldn_getLocale(const ULocaleDisplayNames *ldn);
108
 
 
109
 
/**
110
 
 * Returns the dialect handling used in the display names.
111
 
 * @param ldn the LocaleDisplayNames instance
112
 
 * @return the dialect handling enum
113
 
 * @stable ICU 4.4
114
 
 */
115
 
U_STABLE UDialectHandling U_EXPORT2
116
 
uldn_getDialectHandling(const ULocaleDisplayNames *ldn);
117
 
 
118
 
/* names for entire locales */
119
 
 
120
 
/**
121
 
 * Returns the display name of the provided locale.
122
 
 * @param ldn the LocaleDisplayNames instance
123
 
 * @param locale the locale whose display name to return
124
 
 * @param result receives the display name
125
 
 * @param maxResultSize the size of the result buffer
126
 
 * @param pErrorCode the status code
127
 
 * @return the actual buffer size needed for the display name.  If it's
128
 
 * greater than maxResultSize, the returned name will be truncated.
129
 
 * @stable ICU 4.4
130
 
 */
131
 
U_STABLE int32_t U_EXPORT2
132
 
uldn_localeDisplayName(const ULocaleDisplayNames *ldn,
133
 
                       const char *locale,
134
 
                       UChar *result,
135
 
                       int32_t maxResultSize,
136
 
                       UErrorCode *pErrorCode);
137
 
 
138
 
/* names for components of a locale */
139
 
 
140
 
/**
141
 
 * Returns the display name of the provided language code.
142
 
 * @param ldn the LocaleDisplayNames instance
143
 
 * @param lang the language code whose display name to return
144
 
 * @param result receives the display name
145
 
 * @param maxResultSize the size of the result buffer
146
 
 * @param pErrorCode the status code
147
 
 * @return the actual buffer size needed for the display name.  If it's
148
 
 * greater than maxResultSize, the returned name will be truncated.
149
 
 * @stable ICU 4.4
150
 
 */
151
 
U_STABLE int32_t U_EXPORT2
152
 
uldn_languageDisplayName(const ULocaleDisplayNames *ldn,
153
 
                         const char *lang,
154
 
                         UChar *result,
155
 
                         int32_t maxResultSize,
156
 
                         UErrorCode *pErrorCode);
157
 
 
158
 
/**
159
 
 * Returns the display name of the provided script.
160
 
 * @param ldn the LocaleDisplayNames instance
161
 
 * @param script the script whose display name to return
162
 
 * @param result receives the display name
163
 
 * @param maxResultSize the size of the result buffer
164
 
 * @param pErrorCode the status code
165
 
 * @return the actual buffer size needed for the display name.  If it's
166
 
 * greater than maxResultSize, the returned name will be truncated.
167
 
 * @stable ICU 4.4
168
 
 */
169
 
U_STABLE int32_t U_EXPORT2
170
 
uldn_scriptDisplayName(const ULocaleDisplayNames *ldn,
171
 
                       const char *script,
172
 
                       UChar *result,
173
 
                       int32_t maxResultSize,
174
 
                       UErrorCode *pErrorCode);
175
 
 
176
 
/**
177
 
 * Returns the display name of the provided script code.
178
 
 * @param ldn the LocaleDisplayNames instance
179
 
 * @param scriptCode the script code whose display name to return
180
 
 * @param result receives the display name
181
 
 * @param maxResultSize the size of the result buffer
182
 
 * @param pErrorCode the status code
183
 
 * @return the actual buffer size needed for the display name.  If it's
184
 
 * greater than maxResultSize, the returned name will be truncated.
185
 
 * @stable ICU 4.4
186
 
 */
187
 
U_STABLE int32_t U_EXPORT2
188
 
uldn_scriptCodeDisplayName(const ULocaleDisplayNames *ldn,
189
 
                           UScriptCode scriptCode,
190
 
                           UChar *result,
191
 
                           int32_t maxResultSize,
192
 
                           UErrorCode *pErrorCode);
193
 
 
194
 
/**
195
 
 * Returns the display name of the provided region code.
196
 
 * @param ldn the LocaleDisplayNames instance
197
 
 * @param region the region code whose display name to return
198
 
 * @param result receives the display name
199
 
 * @param maxResultSize the size of the result buffer
200
 
 * @param pErrorCode the status code
201
 
 * @return the actual buffer size needed for the display name.  If it's
202
 
 * greater than maxResultSize, the returned name will be truncated.
203
 
 * @stable ICU 4.4
204
 
 */
205
 
U_STABLE int32_t U_EXPORT2
206
 
uldn_regionDisplayName(const ULocaleDisplayNames *ldn,
207
 
                       const char *region,
208
 
                       UChar *result,
209
 
                       int32_t maxResultSize,
210
 
                       UErrorCode *pErrorCode);
211
 
 
212
 
/**
213
 
 * Returns the display name of the provided variant
214
 
 * @param ldn the LocaleDisplayNames instance
215
 
 * @param variant the variant whose display name to return
216
 
 * @param result receives the display name
217
 
 * @param maxResultSize the size of the result buffer
218
 
 * @param pErrorCode the status code
219
 
 * @return the actual buffer size needed for the display name.  If it's
220
 
 * greater than maxResultSize, the returned name will be truncated.
221
 
 * @stable ICU 4.4
222
 
 */
223
 
U_STABLE int32_t U_EXPORT2
224
 
uldn_variantDisplayName(const ULocaleDisplayNames *ldn,
225
 
                        const char *variant,
226
 
                        UChar *result,
227
 
                        int32_t maxResultSize,
228
 
                        UErrorCode *pErrorCode);
229
 
 
230
 
/**
231
 
 * Returns the display name of the provided locale key
232
 
 * @param ldn the LocaleDisplayNames instance
233
 
 * @param key the locale key whose display name to return
234
 
 * @param result receives the display name
235
 
 * @param maxResultSize the size of the result buffer
236
 
 * @param pErrorCode the status code
237
 
 * @return the actual buffer size needed for the display name.  If it's
238
 
 * greater than maxResultSize, the returned name will be truncated.
239
 
 * @stable ICU 4.4
240
 
 */
241
 
U_STABLE int32_t U_EXPORT2
242
 
uldn_keyDisplayName(const ULocaleDisplayNames *ldn,
243
 
                    const char *key,
244
 
                    UChar *result,
245
 
                    int32_t maxResultSize,
246
 
                    UErrorCode *pErrorCode);
247
 
 
248
 
/**
249
 
 * Returns the display name of the provided value (used with the provided key).
250
 
 * @param ldn the LocaleDisplayNames instance
251
 
 * @param key the locale key
252
 
 * @param value the locale key's value
253
 
 * @param result receives the display name
254
 
 * @param maxResultSize the size of the result buffer
255
 
 * @param pErrorCode the status code
256
 
 * @return the actual buffer size needed for the display name.  If it's
257
 
 * greater than maxResultSize, the returned name will be truncated.
258
 
 * @stable ICU 4.4
259
 
 */
260
 
U_STABLE int32_t U_EXPORT2
261
 
uldn_keyValueDisplayName(const ULocaleDisplayNames *ldn,
262
 
                         const char *key,
263
 
                         const char *value,
264
 
                         UChar *result,
265
 
                         int32_t maxResultSize,
266
 
                         UErrorCode *pErrorCode);
267
 
 
268
 
 
269
 
#endif  /* !UCONFIG_NO_FORMATTING */
270
 
#endif  /* __ULDNAMES_H__ */