ICU 75.1 75.1
Loading...
Searching...
No Matches
udatpg.h
Go to the documentation of this file.
1// © 2016 and later: Unicode, Inc. and others.
2// License & terms of use: http://www.unicode.org/copyright.html
3/*
4*******************************************************************************
5*
6* Copyright (C) 2007-2015, International Business Machines
7* Corporation and others. All Rights Reserved.
8*
9*******************************************************************************
10* file name: udatpg.h
11* encoding: UTF-8
12* tab size: 8 (not used)
13* indentation:4
14*
15* created on: 2007jul30
16* created by: Markus W. Scherer
17*/
18
19#ifndef __UDATPG_H__
20#define __UDATPG_H__
21
22#include "unicode/utypes.h"
23#include "unicode/udat.h"
24#include "unicode/uenum.h"
25
26#if U_SHOW_CPLUSPLUS_API
28#endif // U_SHOW_CPLUSPLUS_API
29
52
103
116
138
150#ifndef U_HIDE_DEPRECATED_API
156#endif // U_HIDE_DEPRECATED_API
158
168udatpg_open(const char *locale, UErrorCode *pErrorCode);
169
179
185U_CAPI void U_EXPORT2
187
188#if U_SHOW_CPLUSPLUS_API
189
190U_NAMESPACE_BEGIN
191
202
203U_NAMESPACE_END
204
205#endif
206
217
241U_CAPI int32_t U_EXPORT2
243 const UChar *skeleton, int32_t length,
244 UChar *bestPattern, int32_t capacity,
245 UErrorCode *pErrorCode);
246
277U_CAPI int32_t U_EXPORT2
279 const UChar *skeleton, int32_t length,
281 UChar *bestPattern, int32_t capacity,
282 UErrorCode *pErrorCode);
283
305U_CAPI int32_t U_EXPORT2
307 const UChar *pattern, int32_t length,
308 UChar *skeleton, int32_t capacity,
309 UErrorCode *pErrorCode);
310
335U_CAPI int32_t U_EXPORT2
337 const UChar *pattern, int32_t length,
338 UChar *baseSkeleton, int32_t capacity,
339 UErrorCode *pErrorCode);
340
367 const UChar *pattern, int32_t patternLength,
368 UBool override,
369 UChar *conflictingPattern, int32_t capacity, int32_t *pLength,
370 UErrorCode *pErrorCode);
371
392U_CAPI void U_EXPORT2
395 const UChar *value, int32_t length);
396
407U_CAPI const UChar * U_EXPORT2
410 int32_t *pLength);
411
425U_CAPI void U_EXPORT2
428 const UChar *value, int32_t length);
429
442U_CAPI const UChar * U_EXPORT2
445 int32_t *pLength);
446
472U_CAPI int32_t U_EXPORT2
476 UChar *fieldName, int32_t capacity,
477 UErrorCode *pErrorCode);
478
507U_CAPI void U_EXPORT2
509 const UChar *dtFormat, int32_t length);
510
524U_CAPI const UChar * U_EXPORT2
526 int32_t *pLength);
527
528#if !UCONFIG_NO_FORMATTING
556U_CAPI void U_EXPORT2
558 UDateFormatStyle style,
559 const UChar *dateTimeFormat, int32_t length,
560 UErrorCode *pErrorCode);
561
584U_CAPI const UChar* U_EXPORT2
586 UDateFormatStyle style, int32_t *pLength,
587 UErrorCode *pErrorCode);
588#endif /* #if !UCONFIG_NO_FORMATTING */
589
603U_CAPI void U_EXPORT2
605 const UChar *decimal, int32_t length);
606
615U_CAPI const UChar * U_EXPORT2
617 int32_t *pLength);
618
644U_CAPI int32_t U_EXPORT2
646 const UChar *pattern, int32_t patternLength,
647 const UChar *skeleton, int32_t skeletonLength,
648 UChar *dest, int32_t destCapacity,
649 UErrorCode *pErrorCode);
650
681U_CAPI int32_t U_EXPORT2
683 const UChar *pattern, int32_t patternLength,
684 const UChar *skeleton, int32_t skeletonLength,
686 UChar *dest, int32_t destCapacity,
687 UErrorCode *pErrorCode);
688
700U_CAPI UEnumeration * U_EXPORT2
702
713U_CAPI UEnumeration * U_EXPORT2
715
726U_CAPI const UChar * U_EXPORT2
728 const UChar *skeleton, int32_t skeletonLength,
729 int32_t *pLength);
730
731#if !UCONFIG_NO_FORMATTING
732
748
749#endif /* #if !UCONFIG_NO_FORMATTING */
750
751#endif
"Smart pointer" class, closes a UDateTimePatternGenerator via udatpg_close().
C++ API: "Smart pointers" for use with and in ICU4C C++ code.
#define U_DEFINE_LOCAL_OPEN_POINTER(LocalPointerClassName, Type, closeFunction)
"Smart pointer" definition macro, deletes objects via the closeFunction.
C API: DateFormat.
UDateFormatStyle
The possible date/time format styles.
Definition udat.h:162
UDateFormatHourCycle
Hour Cycle.
Definition udat.h:983
U_CAPI UEnumeration * udatpg_openSkeletons(const UDateTimePatternGenerator *dtpg, UErrorCode *pErrorCode)
Return a UEnumeration list of all the skeletons in canonical form.
U_CAPI int32_t udatpg_getBestPatternWithOptions(UDateTimePatternGenerator *dtpg, const UChar *skeleton, int32_t length, UDateTimePatternMatchOptions options, UChar *bestPattern, int32_t capacity, UErrorCode *pErrorCode)
Get the best pattern matching the input skeleton.
UDateTimePGDisplayWidth
Field display name width constants for udatpg_getFieldDisplayName().
Definition udatpg.h:108
@ UDATPG_ABBREVIATED
Definition udatpg.h:112
@ UDATPG_WIDE
Definition udatpg.h:110
@ UDATPG_NARROW
Definition udatpg.h:114
U_CAPI void udatpg_close(UDateTimePatternGenerator *dtpg)
Close a generator.
U_CAPI const UChar * udatpg_getDateTimeFormat(const UDateTimePatternGenerator *dtpg, int32_t *pLength)
Getter corresponding to setDateTimeFormat.
U_CAPI const UChar * udatpg_getAppendItemFormat(const UDateTimePatternGenerator *dtpg, UDateTimePatternField field, int32_t *pLength)
Getter corresponding to setAppendItemFormat.
void * UDateTimePatternGenerator
Opaque type for a date/time pattern generator object.
Definition udatpg.h:51
U_CAPI const UChar * udatpg_getDecimal(const UDateTimePatternGenerator *dtpg, int32_t *pLength)
Getter corresponding to setDecimal.
U_CAPI void udatpg_setDecimal(UDateTimePatternGenerator *dtpg, const UChar *decimal, int32_t length)
The decimal value is used in formatting fractions of seconds.
U_CAPI UDateTimePatternConflict udatpg_addPattern(UDateTimePatternGenerator *dtpg, const UChar *pattern, int32_t patternLength, UBool override, UChar *conflictingPattern, int32_t capacity, int32_t *pLength, UErrorCode *pErrorCode)
Adds a pattern to the generator.
U_CAPI const UChar * udatpg_getDateTimeFormatForStyle(const UDateTimePatternGenerator *udtpg, UDateFormatStyle style, int32_t *pLength, UErrorCode *pErrorCode)
Getter corresponding to udatpg_setDateTimeFormatForStyle.
U_CAPI void udatpg_setAppendItemFormat(UDateTimePatternGenerator *dtpg, UDateTimePatternField field, const UChar *value, int32_t length)
An AppendItem format is a pattern used to append a field if there is no good match.
U_CAPI int32_t udatpg_getBestPattern(UDateTimePatternGenerator *dtpg, const UChar *skeleton, int32_t length, UChar *bestPattern, int32_t capacity, UErrorCode *pErrorCode)
Get the best pattern matching the input skeleton.
U_CAPI int32_t udatpg_getSkeleton(UDateTimePatternGenerator *unusedDtpg, const UChar *pattern, int32_t length, UChar *skeleton, int32_t capacity, UErrorCode *pErrorCode)
Get a unique skeleton from a given pattern.
UDateTimePatternConflict
Status return values from udatpg_addPattern().
Definition udatpg.h:143
@ UDATPG_NO_CONFLICT
Definition udatpg.h:145
@ UDATPG_BASE_CONFLICT
Definition udatpg.h:147
@ UDATPG_CONFLICT
Definition udatpg.h:149
@ UDATPG_CONFLICT_COUNT
One more than the highest normal UDateTimePatternConflict value.
Definition udatpg.h:155
U_CAPI int32_t udatpg_replaceFieldTypes(UDateTimePatternGenerator *dtpg, const UChar *pattern, int32_t patternLength, const UChar *skeleton, int32_t skeletonLength, UChar *dest, int32_t destCapacity, UErrorCode *pErrorCode)
Adjusts the field types (width and subtype) of a pattern to match what is in a skeleton.
U_CAPI UDateTimePatternGenerator * udatpg_openEmpty(UErrorCode *pErrorCode)
Open an empty generator, to be constructed with udatpg_addPattern(...) etc.
U_CAPI void udatpg_setAppendItemName(UDateTimePatternGenerator *dtpg, UDateTimePatternField field, const UChar *value, int32_t length)
Set the name of field, eg "era" in English for ERA.
U_CAPI void udatpg_setDateTimeFormatForStyle(UDateTimePatternGenerator *udtpg, UDateFormatStyle style, const UChar *dateTimeFormat, int32_t length, UErrorCode *pErrorCode)
dateTimeFormats are message patterns used to compose combinations of date and time patterns.
U_CAPI void udatpg_setDateTimeFormat(const UDateTimePatternGenerator *dtpg, const UChar *dtFormat, int32_t length)
The DateTimeFormat is a message format pattern used to compose date and time patterns.
UDateTimePatternMatchOptions
Masks to control forcing the length of specified fields in the returned pattern to match those in the...
Definition udatpg.h:124
@ UDATPG_MATCH_HOUR_FIELD_LENGTH
Definition udatpg.h:128
@ UDATPG_MATCH_MINUTE_FIELD_LENGTH
Definition udatpg.h:131
@ UDATPG_MATCH_SECOND_FIELD_LENGTH
Definition udatpg.h:133
@ UDATPG_MATCH_NO_OPTIONS
Definition udatpg.h:126
@ UDATPG_MATCH_ALL_FIELDS_LENGTH
Definition udatpg.h:136
U_CAPI const UChar * udatpg_getAppendItemName(const UDateTimePatternGenerator *dtpg, UDateTimePatternField field, int32_t *pLength)
Getter corresponding to setAppendItemNames.
U_CAPI UDateFormatHourCycle udatpg_getDefaultHourCycle(const UDateTimePatternGenerator *dtpg, UErrorCode *pErrorCode)
Return the default hour cycle for a locale.
U_CAPI int32_t udatpg_replaceFieldTypesWithOptions(UDateTimePatternGenerator *dtpg, const UChar *pattern, int32_t patternLength, const UChar *skeleton, int32_t skeletonLength, UDateTimePatternMatchOptions options, UChar *dest, int32_t destCapacity, UErrorCode *pErrorCode)
Adjusts the field types (width and subtype) of a pattern to match what is in a skeleton.
U_CAPI int32_t udatpg_getFieldDisplayName(const UDateTimePatternGenerator *dtpg, UDateTimePatternField field, UDateTimePGDisplayWidth width, UChar *fieldName, int32_t capacity, UErrorCode *pErrorCode)
The general interface to get a display name for a particular date/time field, in one of several possi...
U_CAPI int32_t udatpg_getBaseSkeleton(UDateTimePatternGenerator *unusedDtpg, const UChar *pattern, int32_t length, UChar *baseSkeleton, int32_t capacity, UErrorCode *pErrorCode)
Get a unique base skeleton from a given pattern.
U_CAPI UDateTimePatternGenerator * udatpg_open(const char *locale, UErrorCode *pErrorCode)
Open a generator according to a given locale.
U_CAPI UEnumeration * udatpg_openBaseSkeletons(const UDateTimePatternGenerator *dtpg, UErrorCode *pErrorCode)
Return a UEnumeration list of all the base skeletons in canonical form.
U_CAPI const UChar * udatpg_getPatternForSkeleton(const UDateTimePatternGenerator *dtpg, const UChar *skeleton, int32_t skeletonLength, int32_t *pLength)
Get the pattern corresponding to a given skeleton.
U_CAPI UDateTimePatternGenerator * udatpg_clone(const UDateTimePatternGenerator *dtpg, UErrorCode *pErrorCode)
Create a copy pf a generator.
UDateTimePatternField
Field number constants for udatpg_getAppendItemFormats() and similar functions.
Definition udatpg.h:59
@ UDATPG_WEEK_OF_YEAR_FIELD
Definition udatpg.h:69
@ UDATPG_DAY_OF_YEAR_FIELD
Definition udatpg.h:75
@ UDATPG_QUARTER_FIELD
Definition udatpg.h:65
@ UDATPG_WEEKDAY_FIELD
Definition udatpg.h:73
@ UDATPG_DAYPERIOD_FIELD
Definition udatpg.h:81
@ UDATPG_MONTH_FIELD
Definition udatpg.h:67
@ UDATPG_DAY_FIELD
Definition udatpg.h:79
@ UDATPG_SECOND_FIELD
Definition udatpg.h:87
@ UDATPG_ZONE_FIELD
Definition udatpg.h:91
@ UDATPG_FRACTIONAL_SECOND_FIELD
Definition udatpg.h:89
@ UDATPG_DAY_OF_WEEK_IN_MONTH_FIELD
Definition udatpg.h:77
@ UDATPG_YEAR_FIELD
Definition udatpg.h:63
@ UDATPG_FIELD_COUNT
One more than the highest normal UDateTimePatternField value.
Definition udatpg.h:100
@ UDATPG_WEEK_OF_MONTH_FIELD
Definition udatpg.h:71
@ UDATPG_HOUR_FIELD
Definition udatpg.h:83
@ UDATPG_ERA_FIELD
Definition udatpg.h:61
@ UDATPG_MINUTE_FIELD
Definition udatpg.h:85
C API: String Enumeration.
struct UEnumeration UEnumeration
structure representing an enumeration object instance
Definition uenum.h:44
int8_t UBool
The ICU boolean type, a signed-byte integer.
Definition umachine.h:247
#define U_CAPI
This is used to declare a function as a public ICU C API.
Definition umachine.h:110
char16_t UChar
The base type for UTF-16 code units and pointers.
Definition umachine.h:378
Basic definitions for ICU, for both C and C++ APIs.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
Definition utypes.h:415