ICU 57.1  57.1
ureldatefmt.h
Go to the documentation of this file.
1 /*
2 *****************************************************************************************
3 * Copyright (C) 2016, International Business Machines
4 * Corporation and others. All Rights Reserved.
5 *****************************************************************************************
6 */
7 
8 #ifndef URELDATEFMT_H
9 #define URELDATEFMT_H
10 
11 #include "unicode/utypes.h"
12 
13 #if !UCONFIG_NO_FORMATTING && !UCONFIG_NO_BREAK_ITERATION
14 
15 #include "unicode/unum.h"
17 #include "unicode/localpointer.h"
18 
48 
54 
60 
67 
68 #ifndef U_HIDE_DRAFT_API
69 
74 typedef enum URelativeDateTimeUnit {
171 #endif /* U_HIDE_DRAFT_API */
172 
173 #ifndef U_HIDE_DRAFT_API
174 
216 ureldatefmt_open( const char* locale,
217  UNumberFormat* nfToAdopt,
219  UDisplayContext capitalizationContext,
220  UErrorCode* status );
221 
228 U_DRAFT void U_EXPORT2
230 
231 #if U_SHOW_CPLUSPLUS_API
232 
234 
245 
247 
248 #endif
249 
278 U_DRAFT int32_t U_EXPORT2
280  double offset,
282  UChar* result,
283  int32_t resultCapacity,
284  UErrorCode* status);
285 
314 U_DRAFT int32_t U_EXPORT2
316  double offset,
318  UChar* result,
319  int32_t resultCapacity,
320  UErrorCode* status);
321 
351 U_DRAFT int32_t U_EXPORT2
353  const UChar * relativeDateString,
354  int32_t relativeDateStringLen,
355  const UChar * timeString,
356  int32_t timeStringLen,
357  UChar* result,
358  int32_t resultCapacity,
359  UErrorCode* status );
360 
361 #endif /* U_HIDE_DRAFT_API */
362 
363 #endif /* !UCONFIG_NO_FORMATTING && !UCONFIG_NO_BREAK_ITERATION */
364 
365 #endif
URelativeDateTimeUnit
Represents the unit for formatting a relative date.
Definition: ureldatefmt.h:74
int32_t ureldatefmt_formatNumeric(const URelativeDateTimeFormatter *reldatefmt, double offset, URelativeDateTimeUnit unit, UChar *result, int32_t resultCapacity, UErrorCode *status)
Format a combination of URelativeDateTimeUnit and numeric offset using a numeric style, e.g.
void ureldatefmt_close(URelativeDateTimeFormatter *reldatefmt)
Close a URelativeDateTimeFormatter object.
Specifies that relative unit is second, e.g.
Definition: ureldatefmt.h:122
struct URelativeDateTimeFormatter URelativeDateTimeFormatter
C typedef for struct URelativeDateTimeFormatter.
Definition: ureldatefmt.h:180
Specifies that relative unit is week, e.g.
Definition: ureldatefmt.h:98
Specifies that relative unit is month, e.g.
Definition: ureldatefmt.h:92
UDisplayContext
Display context settings.
Specifies that relative unit is Friday, e.g.
Definition: ureldatefmt.h:158
Specifies that relative unit is Monday, e.g.
Definition: ureldatefmt.h:134
Everything spelled out.
Definition: ureldatefmt.h:47
Specifies that relative unit is Saturday, e.g.
Definition: ureldatefmt.h:164
C API: Display context types (enum values)
Specifies that relative unit is minute, e.g.
Definition: ureldatefmt.h:116
Specifies that relative unit is Wednesday, e.g.
Definition: ureldatefmt.h:146
Abbreviations used when possible.
Definition: ureldatefmt.h:53
Specifies that relative unit is Sunday, e.g.
Definition: ureldatefmt.h:128
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition: uversion.h:129
int32_t ureldatefmt_format(const URelativeDateTimeFormatter *reldatefmt, double offset, URelativeDateTimeUnit unit, UChar *result, int32_t resultCapacity, UErrorCode *status)
Format a combination of URelativeDateTimeUnit and numeric offset using a text style if possible...
#define U_DEFINE_LOCAL_OPEN_POINTER(LocalPointerClassName, Type, closeFunction)
"Smart pointer" definition macro, deletes objects via the closeFunction.
Definition: localpointer.h:536
void * UNumberFormat
A number formatter.
Definition: unum.h:134
C++ API: "Smart pointers" for use with and in ICU4C C++ code.
URelativeDateTimeFormatter * ureldatefmt_open(const char *locale, UNumberFormat *nfToAdopt, UDateRelativeDateTimeFormatterStyle width, UDisplayContext capitalizationContext, UErrorCode *status)
Open a new URelativeDateTimeFormatter object for a given locale using the specified width and capital...
The number of styles.
Definition: ureldatefmt.h:65
Specifies that relative unit is quarter, e.g.
Definition: ureldatefmt.h:86
UDateRelativeDateTimeFormatterStyle
The formatting style.
Definition: ureldatefmt.h:42
"Smart pointer" class, closes a URelativeDateTimeFormatter via ureldatefmt_close().
Specifies that relative unit is hour, e.g.
Definition: ureldatefmt.h:110
Use the shortest possible form.
Definition: ureldatefmt.h:59
Specifies that relative unit is year, e.g.
Definition: ureldatefmt.h:80
uint16_t UChar
Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...
Definition: umachine.h:312
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition: uversion.h:130
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Definition: utypes.h:476
Specifies that relative unit is Tuesday, e.g.
Definition: ureldatefmt.h:140
Specifies that relative unit is day, e.g.
Definition: ureldatefmt.h:104
Basic definitions for ICU, for both C and C++ APIs.
Specifies that relative unit is Thursday, e.g.
Definition: ureldatefmt.h:152
Count of URelativeDateTimeUnit values.
Definition: ureldatefmt.h:169
#define U_DRAFT
This is used to declare a function as a draft public ICU C API.
Definition: umachine.h:111
C API: NumberFormat.
int32_t ureldatefmt_combineDateAndTime(const URelativeDateTimeFormatter *reldatefmt, const UChar *relativeDateString, int32_t relativeDateStringLen, const UChar *timeString, int32_t timeStringLen, UChar *result, int32_t resultCapacity, UErrorCode *status)
Combines a relative date string and a time string in this object's locale.