ICU 72.1 72.1

udisplayoptions.h
1 // © 2022 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3
4 #ifndef __UDISPLAYOPTIONS_H__
5 #define __UDISPLAYOPTIONS_H__
6
7 #include "unicode/utypes.h"
8
9 #if !UCONFIG_NO_FORMATTING
10
11 #include "unicode/uversion.h"
12
13 #ifndef U_HIDE_DRAFT_API
14
20 typedef enum UDisplayOptionsGrammaticalCase {
26 UDISPOPT_GRAMMATICAL_CASE_UNDEFINED = 0,
28 UDISPOPT_GRAMMATICAL_CASE_ABLATIVE = 1,
30 UDISPOPT_GRAMMATICAL_CASE_ACCUSATIVE = 2,
32 UDISPOPT_GRAMMATICAL_CASE_COMITATIVE = 3,
34 UDISPOPT_GRAMMATICAL_CASE_DATIVE = 4,
36 UDISPOPT_GRAMMATICAL_CASE_ERGATIVE = 5,
38 UDISPOPT_GRAMMATICAL_CASE_GENITIVE = 6,
40 UDISPOPT_GRAMMATICAL_CASE_INSTRUMENTAL = 7,
42 UDISPOPT_GRAMMATICAL_CASE_LOCATIVE = 8,
44 UDISPOPT_GRAMMATICAL_CASE_LOCATIVE_COPULATIVE = 9,
46 UDISPOPT_GRAMMATICAL_CASE_NOMINATIVE = 10,
48 UDISPOPT_GRAMMATICAL_CASE_OBLIQUE = 11,
50 UDISPOPT_GRAMMATICAL_CASE_PREPOSITIONAL = 12,
52 UDISPOPT_GRAMMATICAL_CASE_SOCIATIVE = 13,
54 UDISPOPT_GRAMMATICAL_CASE_VOCATIVE = 14,
55 } UDisplayOptionsGrammaticalCase;
56
63 U_CAPI const char * U_EXPORT2
64 udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase grammaticalCase);
65
72 U_CAPI UDisplayOptionsGrammaticalCase U_EXPORT2
73 udispopt_fromGrammaticalCaseIdentifier(const char *identifier);
74
81 typedef enum UDisplayOptionsPluralCategory {
82
89 UDISPOPT_PLURAL_CATEGORY_UNDEFINED = 0,
91 UDISPOPT_PLURAL_CATEGORY_ZERO = 1,
93 UDISPOPT_PLURAL_CATEGORY_ONE = 2,
95 UDISPOPT_PLURAL_CATEGORY_TWO = 3,
97 UDISPOPT_PLURAL_CATEGORY_FEW = 4,
99 UDISPOPT_PLURAL_CATEGORY_MANY = 5,
101 UDISPOPT_PLURAL_CATEGORY_OTHER = 6,
102 } UDisplayOptionsPluralCategory;
103
110 U_CAPI const char * U_EXPORT2
111 udispopt_getPluralCategoryIdentifier(UDisplayOptionsPluralCategory pluralCategory);
112
119 U_CAPI UDisplayOptionsPluralCategory U_EXPORT2
120 udispopt_fromPluralCategoryIdentifier(const char *identifier);
121
127 typedef enum UDisplayOptionsNounClass {
134 UDISPOPT_NOUN_CLASS_UNDEFINED = 0,
136 UDISPOPT_NOUN_CLASS_OTHER = 1,
138 UDISPOPT_NOUN_CLASS_NEUTER = 2,
140 UDISPOPT_NOUN_CLASS_FEMININE = 3,
142 UDISPOPT_NOUN_CLASS_MASCULINE = 4,
144 UDISPOPT_NOUN_CLASS_ANIMATE = 5,
146 UDISPOPT_NOUN_CLASS_INANIMATE = 6,
148 UDISPOPT_NOUN_CLASS_PERSONAL = 7,
150 UDISPOPT_NOUN_CLASS_COMMON = 8,
151 } UDisplayOptionsNounClass;
152
159 U_CAPI const char * U_EXPORT2
160 udispopt_getNounClassIdentifier(UDisplayOptionsNounClass nounClass);
161
168 U_CAPI UDisplayOptionsNounClass U_EXPORT2
169 udispopt_fromNounClassIdentifier(const char *identifier);
170
176 typedef enum UDisplayOptionsCapitalization {
183 UDISPOPT_CAPITALIZATION_UNDEFINED = 0,
184
191 UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE = 1,
192
199 UDISPOPT_CAPITALIZATION_MIDDLE_OF_SENTENCE = 2,
200
208 UDISPOPT_CAPITALIZATION_STANDALONE = 3,
209
216 UDISPOPT_CAPITALIZATION_UI_LIST_OR_MENU = 4,
217 } UDisplayOptionsCapitalization;
218
224 typedef enum UDisplayOptionsNameStyle {
231 UDISPOPT_NAME_STYLE_UNDEFINED = 0,
232
239 UDISPOPT_NAME_STYLE_STANDARD_NAMES = 1,
240
247 UDISPOPT_NAME_STYLE_DIALECT_NAMES = 2,
248 } UDisplayOptionsNameStyle;
249
255 typedef enum UDisplayOptionsDisplayLength {
262 UDISPOPT_DISPLAY_LENGTH_UNDEFINED = 0,
263
270 UDISPOPT_DISPLAY_LENGTH_FULL = 1,
271
278 UDISPOPT_DISPLAY_LENGTH_SHORT = 2,
279 } UDisplayOptionsDisplayLength;
280
286 typedef enum UDisplayOptionsSubstituteHandling {
287
294 UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED = 0,
295
302 UDISPOPT_SUBSTITUTE_HANDLING_SUBSTITUTE = 1,
303
309 UDISPOPT_SUBSTITUTE_HANDLING_NO_SUBSTITUTE = 2,
310 } UDisplayOptionsSubstituteHandling;
311
312 #endif // U_HIDE_DRAFT_API
313
314 #endif /* #if !UCONFIG_NO_FORMATTING */
315
316 #endif // __UDISPLAYOPTIONS_H__
U_CAPI
#define U_CAPI
This is used to declare a function as a public ICU C API.
Definition: umachine.h:110
utypes.h
Basic definitions for ICU, for both C and C++ APIs.
uversion.h
C API: API for accessing ICU version numbers.