webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
udat.h
Go to the documentation of this file.
1 /*
2  *******************************************************************************
3  * Copyright (C) 1996-2013, International Business Machines
4  * Corporation and others. All Rights Reserved.
5  *******************************************************************************
6 */
7 
8 #ifndef UDAT_H
9 #define UDAT_H
10 
11 #include "unicode/utypes.h"
12 
13 #if !UCONFIG_NO_FORMATTING
14 
15 #include "unicode/localpointer.h"
16 #include "unicode/ucal.h"
17 #include "unicode/unum.h"
150 typedef void* UDateFormat;
151 
155 typedef enum UDateFormatStyle {
166 
168  UDAT_RELATIVE = (1 << 7),
169 
171 
173 
175 
177 
178 
180  UDAT_NONE = -1,
181 
188 
192 
193 /* Skeletons for dates. */
194 
199 #define UDAT_YEAR "y"
200 #ifndef U_HIDE_DRAFT_API
201 
205 #define UDAT_QUARTER "QQQQ"
206 
210 #define UDAT_ABBR_QUARTER "QQQ"
211 #endif /* U_HIDE_DRAFT_API */
212 
216 #define UDAT_YEAR_QUARTER "yQQQQ"
217 
221 #define UDAT_YEAR_ABBR_QUARTER "yQQQ"
222 
226 #define UDAT_MONTH "MMMM"
227 
231 #define UDAT_ABBR_MONTH "MMM"
232 
236 #define UDAT_NUM_MONTH "M"
237 
241 #define UDAT_YEAR_MONTH "yMMMM"
242 
246 #define UDAT_YEAR_ABBR_MONTH "yMMM"
247 
251 #define UDAT_YEAR_NUM_MONTH "yM"
252 
256 #define UDAT_DAY "d"
257 
262 #define UDAT_YEAR_MONTH_DAY "yMMMMd"
263 
268 #define UDAT_YEAR_ABBR_MONTH_DAY "yMMMd"
269 
274 #define UDAT_YEAR_NUM_MONTH_DAY "yMd"
275 #ifndef U_HIDE_DRAFT_API
276 
280 #define UDAT_WEEKDAY "EEEE"
281 
285 #define UDAT_ABBR_WEEKDAY "E"
286 #endif /* U_HIDE_DRAFT_API */
287 
292 #define UDAT_YEAR_MONTH_WEEKDAY_DAY "yMMMMEEEEd"
293 
298 #define UDAT_YEAR_ABBR_MONTH_WEEKDAY_DAY "yMMMEd"
299 
304 #define UDAT_YEAR_NUM_MONTH_WEEKDAY_DAY "yMEd"
305 
310 #define UDAT_MONTH_DAY "MMMMd"
311 
316 #define UDAT_ABBR_MONTH_DAY "MMMd"
317 
322 #define UDAT_NUM_MONTH_DAY "Md"
323 
328 #define UDAT_MONTH_WEEKDAY_DAY "MMMMEEEEd"
329 
334 #define UDAT_ABBR_MONTH_WEEKDAY_DAY "MMMEd"
335 
340 #define UDAT_NUM_MONTH_WEEKDAY_DAY "MEd"
341 
342 /* Skeletons for times. */
343 
348 #define UDAT_HOUR "j"
349 #ifndef U_HIDE_DRAFT_API
350 
354 #define UDAT_HOUR24 "H"
355 
359 #define UDAT_MINUTE "m"
360 #endif /* U_HIDE_DRAFT_API */
361 
366 #define UDAT_HOUR_MINUTE "jm"
367 
372 #define UDAT_HOUR24_MINUTE "Hm"
373 #ifndef U_HIDE_DRAFT_API
374 
378 #define UDAT_SECOND "s"
379 #endif /* U_HIDE_DRAFT_API */
380 
386 #define UDAT_HOUR_MINUTE_SECOND "jms"
387 
393 #define UDAT_HOUR24_MINUTE_SECOND "Hms"
394 
399 #define UDAT_MINUTE_SECOND "ms"
400 
401 /* Skeletons for time zones. */
402 
403 #ifndef U_HIDE_DRAFT_API
404 
411 #define UDAT_LOCATION_TZ "VVVV"
412 
419 #define UDAT_GENERIC_TZ "vvvv"
420 
427 #define UDAT_ABBR_GENERIC_TZ "v"
428 
435 #define UDAT_SPECIFIC_TZ "zzzz"
436 
443 #define UDAT_ABBR_SPECIFIC_TZ "z"
444 
451 #define UDAT_ABBR_UTC_TZ "ZZZZ"
452 #endif /* U_HIDE_DRAFT_API */
453 
454 /* deprecated skeleton constants */
455 
456 #ifndef U_HIDE_DEPRECATED_API
457 
461 #define UDAT_STANDALONE_MONTH "LLLL"
462 
466 #define UDAT_ABBR_STANDALONE_MONTH "LLL"
467 
472 #define UDAT_HOUR_MINUTE_GENERIC_TZ "jmv"
473 
477 #define UDAT_HOUR_MINUTE_TZ "jmz"
478 
482 #define UDAT_HOUR_GENERIC_TZ "jv"
483 
487 #define UDAT_HOUR_TZ "jz"
488 #endif /* U_HIDE_DEPRECATED_API */
489 
495 typedef enum UDateFormatField {
502 
509 
516 
523 
532 
541 
548 
555 
570 
577 
584 
591 
598 
605 
612 
621 
630 
638 
645 
652 
659 
666 
673 
681 
695 
703 
712 
721 
728 
737 
738 #ifndef U_HIDE_DRAFT_API
739 
746 
754 
762 #endif /* U_HIDE_DRAFT_API */
763 
773 
775 
776 
787 
788 
818 udat_open(UDateFormatStyle timeStyle,
819  UDateFormatStyle dateStyle,
820  const char *locale,
821  const UChar *tzID,
822  int32_t tzIDLength,
823  const UChar *pattern,
824  int32_t patternLength,
825  UErrorCode *status);
826 
827 
834 U_STABLE void U_EXPORT2
836 
837 
860 
861 #ifndef U_HIDE_INTERNAL_API
862 
874 
887 
888 #endif /* U_HIDE_INTERNAL_API */
889 
890 
891 
892 #if U_SHOW_CPLUSPLUS_API
893 
895 
905 U_DEFINE_LOCAL_OPEN_POINTER(LocalUDateFormatPointer, UDateFormat, udat_close);
906 
908 
909 #endif
910 
920 udat_clone(const UDateFormat *fmt,
921  UErrorCode *status);
922 
943  UDate dateToFormat,
944  UChar* result,
945  int32_t resultLength,
947  UErrorCode* status);
948 
976  const UChar* text,
977  int32_t textLength,
978  int32_t *parsePos,
979  UErrorCode *status);
980 
1002 U_STABLE void U_EXPORT2
1004  UCalendar* calendar,
1005  const UChar* text,
1006  int32_t textLength,
1007  int32_t *parsePos,
1008  UErrorCode *status);
1009 
1021 
1031 U_STABLE void U_EXPORT2
1033  UBool isLenient);
1034 
1046 
1056 U_STABLE void U_EXPORT2
1058  const UCalendar* calendarToSet);
1059 
1071 
1081 U_STABLE void U_EXPORT2
1083  const UNumberFormat* numberFormatToSet);
1084 
1094 U_STABLE const char* U_EXPORT2
1095 udat_getAvailable(int32_t localeIndex);
1096 
1106 udat_countAvailable(void);
1107 
1120  UErrorCode *status);
1121 
1132 U_STABLE void U_EXPORT2
1134  UDate d,
1135  UErrorCode *status);
1136 
1151  UBool localized,
1152  UChar *result,
1153  int32_t resultLength,
1154  UErrorCode *status);
1155 
1166 U_STABLE void U_EXPORT2
1168  UBool localized,
1169  const UChar *pattern,
1170  int32_t patternLength);
1171 
1220 #ifndef U_HIDE_DRAFT_API
1221 
1234 #endif /* U_HIDE_DRAFT_API */
1236 
1237 struct UDateFormatSymbols;
1243 
1263  int32_t symbolIndex,
1264  UChar *result,
1265  int32_t resultLength,
1266  UErrorCode *status);
1267 
1283 
1299 U_STABLE void U_EXPORT2
1302  int32_t symbolIndex,
1303  UChar *value,
1304  int32_t valueLength,
1305  UErrorCode *status);
1306 
1316 U_STABLE const char* U_EXPORT2
1319  UErrorCode* status);
1320 
1321 #ifndef U_HIDE_DRAFT_API
1322 
1330 U_DRAFT void U_EXPORT2
1332 
1344 
1345 #endif /* U_HIDE_DRAFT_API */
1346 
1347 #ifndef U_HIDE_INTERNAL_API
1348 
1361  UChar *result,
1362  int32_t resultLength,
1363  UErrorCode *status);
1364 
1378  UChar *result,
1379  int32_t resultLength,
1380  UErrorCode *status);
1381 
1394 U_INTERNAL void U_EXPORT2
1396  const UChar *datePattern,
1397  int32_t datePatternLength,
1398  const UChar *timePattern,
1399  int32_t timePatternLength,
1400  UErrorCode *status);
1401 
1407  UDateFormatStyle dateStyle,
1408  const char *locale,
1409  const UChar *tzID,
1410  int32_t tzIDLength,
1411  const UChar *pattern,
1412  int32_t patternLength,
1413  UErrorCode *status);
1414 
1419 U_INTERNAL void U_EXPORT2
1421 
1428 #endif /* U_HIDE_INTERNAL_API */
1429 
1430 
1431 #endif /* #if !UCONFIG_NO_FORMATTING */
1432 
1433 #endif
U_INTERNAL void U_EXPORT2 udat_setBooleanAttribute(UDateFormat *fmt, UDateFormatBooleanAttribute attr, UBool, UErrorCode *status)
void * UCalendar
Definition: ucal.h:153
Definition: udat.h:597
U_INTERNAL UDateFormatOpener U_EXPORT2 udat_unregisterOpener(UDateFormatOpener opener, UErrorCode *status)
U_STABLE int32_t U_EXPORT2 udat_getSymbols(const UDateFormat *fmt, UDateFormatSymbolType type, int32_t symbolIndex, UChar *result, int32_t resultLength, UErrorCode *status)
Definition: udat.h:651
Definition: udat.h:1228
Definition: udat.h:1201
UCalendarDateFields
Definition: ucal.h:183
Definition: udat.h:1193
Definition: udat.h:176
const FieldDescriptor * field
Definition: parser_unittest.cc:2279
Definition: udat.h:727
Definition: udat.h:1199
Definition: udat.h:711
C API: Calendar.
Definition: XMLHttpRequest.idl:39
GLint GLint GLint GLsizei GLsizei GLenum format
Definition: gl2.h:403
U_STABLE UBool U_EXPORT2 udat_isLenient(const UDateFormat *fmt)
U_INTERNAL int32_t U_EXPORT2 udat_toPatternRelativeTime(const UDateFormat *fmt, UChar *result, int32_t resultLength, UErrorCode *status)
Definition: udat.h:515
signed int int32_t
Definition: ptypes.h:101
U_STABLE int32_t U_EXPORT2 udat_countAvailable(void)
int8_t UBool
Definition: umachine.h:200
Definition: udat.h:531
Definition: udat.h:1195
U_STABLE void U_EXPORT2 udat_parseCalendar(const UDateFormat *format, UCalendar *calendar, const UChar *text, int32_t textLength, int32_t *parsePos, UErrorCode *status)
Definition: udat.h:163
UDateFormat *(U_EXPORT2 * UDateFormatOpener)(UDateFormatStyle timeStyle, UDateFormatStyle dateStyle, const char *locale, const UChar *tzID, int32_t tzIDLength, const UChar *pattern, int32_t patternLength, UErrorCode *status)
Definition: udat.h:1406
U_STABLE void U_EXPORT2 udat_set2DigitYearStart(UDateFormat *fmt, UDate d, UErrorCode *status)
U_STABLE int32_t U_EXPORT2 udat_format(const UDateFormat *format, UDate dateToFormat, UChar *result, int32_t resultLength, UFieldPosition *position, UErrorCode *status)
Definition: udat.h:1214
UDisplayContext
Definition: udisplaycontext.h:54
U_STABLE int32_t U_EXPORT2 udat_toPattern(const UDateFormat *fmt, UBool localized, UChar *result, int32_t resultLength, UErrorCode *status)
Definition: udat.h:180
ULocDataLocaleType
Definition: uloc.h:336
U_STABLE UCalendarDateFields U_EXPORT2 udat_toCalendarDateField(UDateFormatField field)
Definition: udat.h:1205
U_STABLE void U_EXPORT2 udat_close(UDateFormat *format)
Definition: udat.h:159
#define U_NAMESPACE_BEGIN
Definition: uversion.h:129
#define U_NAMESPACE_END
Definition: uversion.h:130
Definition: udat.h:753
U_DRAFT void U_EXPORT2 udat_setContext(UDateFormat *fmt, UDisplayContext value, UErrorCode *status)
Definition: udat.h:1182
Definition: udat.h:187
Definition: udat.h:174
Definition: udat.h:165
Definition: udat.h:858
Definition: status.py:1
Definition: udat.h:1203
Definition: umisc.h:32
C API: Display context types (enum values)
Definition: udat.h:665
#define U_DRAFT
Definition: umachine.h:111
U_STABLE int32_t U_EXPORT2 udat_countSymbols(const UDateFormat *fmt, UDateFormatSymbolType type)
Definition: udat.h:853
Definition: udat.h:168
Definition: udat.h:583
Definition: udat.h:720
Definition: udat.h:658
Definition: udat.h:190
Definition: udat.h:1202
U_DRAFT UDisplayContext U_EXPORT2 udat_getContext(UDateFormat *fmt, UDisplayContextType type, UErrorCode *status)
Definition: udat.h:694
Definition: udat.h:522
Definition: udat.h:157
Definition: udat.h:644
U_STABLE void U_EXPORT2 udat_setNumberFormat(UDateFormat *fmt, const UNumberFormat *numberFormatToSet)
Definition: udat.h:590
UDateFormatSymbolType
Definition: udat.h:1176
Definition: udat.h:1212
U_STABLE UDateFormat *U_EXPORT2 udat_open(UDateFormatStyle timeStyle, UDateFormatStyle dateStyle, const char *locale, const UChar *tzID, int32_t tzIDLength, const UChar *pattern, int32_t patternLength, UErrorCode *status)
Definition: udat.h:1180
void * UNumberFormat
Definition: unum.h:132
Definition: udat.h:672
UErrorCode
Definition: utypes.h:476
Definition: udat.h:847
Definition: udat.h:170
void * UDateFormat
Definition: udat.h:150
OPENSSL_EXPORT X509_ATTRIBUTE * attr
Definition: x509.h:1051
EGLAttrib * value
Definition: eglext.h:120
U_INTERNAL UBool U_EXPORT2 udat_getBooleanAttribute(const UDateFormat *fmt, UDateFormatBooleanAttribute attr, UErrorCode *status)
Definition: udat.h:687
Definition: udat.h:1178
U_STABLE const char *U_EXPORT2 udat_getAvailable(int32_t localeIndex)
U_STABLE const char *U_EXPORT2 udat_getLocaleByType(const UDateFormat *fmt, ULocDataLocaleType type, UErrorCode *status)
Definition: udat.h:604
Definition: udat.h:1184
struct UDateFormatSymbols UDateFormatSymbols
Definition: udat.h:1242
UDateFormatStyle
Definition: udat.h:155
#define U_EXPORT2
Definition: platform.h:724
U_INTERNAL void U_EXPORT2 udat_registerOpener(UDateFormatOpener opener, UErrorCode *status)
Definition: udat.h:576
Definition: udat.h:611
Definition: udat.h:1219
Definition: udat.h:1216
Definition: udat.h:629
EGLenum type
Definition: eglext.h:63
U_INTERNAL void U_EXPORT2 udat_applyPatternRelative(UDateFormat *format, const UChar *datePattern, int32_t datePatternLength, const UChar *timePattern, int32_t timePatternLength, UErrorCode *status)
result
Definition: target-blank-opener-post-window.php:5
UDisplayContextType
Definition: udisplaycontext.h:26
U_STABLE const UCalendar *U_EXPORT2 udat_getCalendar(const UDateFormat *fmt)
U_STABLE const UNumberFormat *U_EXPORT2 udat_getNumberFormat(const UDateFormat *fmt)
Definition: udat.h:1218
#define U_STABLE
Definition: umachine.h:109
UDateFormatField
Definition: udat.h:495
Definition: udat.h:501
Definition: udat.h:547
FmtSubchunk fmt
Definition: wav_header.cc:53
U_STABLE void U_EXPORT2 udat_setCalendar(UDateFormat *fmt, const UCalendar *calendarToSet)
Definition: udat.h:1210
U_STABLE UDate U_EXPORT2 udat_get2DigitYearStart(const UDateFormat *fmt, UErrorCode *status)
Definition: udat.h:1197
Definition: udat.h:761
Definition: xmltok.h:112
U_STABLE UDateFormat *U_EXPORT2 udat_clone(const UDateFormat *fmt, UErrorCode *status)
Definition: udat.h:554
Definition: udat.h:1189
double UDate
Definition: utypes.h:201
Definition: udat.h:637
Definition: udat.h:508
uint16_t UChar
Definition: umachine.h:278
Definition: udat.h:702
Definition: udat.h:1191
Definition: udat.h:772
Definition: udat.h:680
U_STABLE void U_EXPORT2 udat_setLenient(UDateFormat *fmt, UBool isLenient)
U_STABLE void U_EXPORT2 udat_setSymbols(UDateFormat *format, UDateFormatSymbolType type, int32_t symbolIndex, UChar *value, int32_t valueLength, UErrorCode *status)
U_STABLE UDate U_EXPORT2 udat_parse(const UDateFormat *format, const UChar *text, int32_t textLength, int32_t *parsePos, UErrorCode *status)
#define U_INTERNAL
Definition: umachine.h:117
Definition: udat.h:540
U_STABLE void U_EXPORT2 udat_applyPattern(UDateFormat *format, UBool localized, const UChar *pattern, int32_t patternLength)
UDateFormatBooleanAttribute
Definition: udat.h:842
#define d
Definition: float-mm.c:30
Definition: udat.h:569
U_INTERNAL int32_t U_EXPORT2 udat_toPatternRelativeDate(const UDateFormat *fmt, UChar *result, int32_t resultLength, UErrorCode *status)
Definition: udat.h:620
Definition: udat.h:736
Definition: udat.h:172
C API: NumberFormat.
Definition: udat.h:161
Definition: udat.h:1233