ICU 58.2  58.2
ureldatefmt.h
Go to the documentation of this file.
1 // Copyright (C) 2016 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3 /*
4 *****************************************************************************************
5 * Copyright (C) 2016, International Business Machines
6 * Corporation and others. All Rights Reserved.
7 *****************************************************************************************
8 */
9 
10 #ifndef URELDATEFMT_H
11 #define URELDATEFMT_H
12 
13 #include "unicode/utypes.h"
14 
15 #if !UCONFIG_NO_FORMATTING && !UCONFIG_NO_BREAK_ITERATION
16 
17 #include "unicode/unum.h"
19 #include "unicode/localpointer.h"
20 
50 
56 
62 
63 #ifndef U_HIDE_DEPRECATED_API
64 
69 #endif // U_HIDE_DEPRECATED_API
71 
72 #ifndef U_HIDE_DRAFT_API
73 
78 typedef enum URelativeDateTimeUnit {
169 #ifndef U_HIDE_DEPRECATED_API
170 
175 #endif // U_HIDE_DEPRECATED_API
177 #endif /* U_HIDE_DRAFT_API */
178 
179 #ifndef U_HIDE_DRAFT_API
180 
222 ureldatefmt_open( const char* locale,
223  UNumberFormat* nfToAdopt,
225  UDisplayContext capitalizationContext,
226  UErrorCode* status );
227 
234 U_DRAFT void U_EXPORT2
236 
237 #if U_SHOW_CPLUSPLUS_API
238 
240 
251 
253 
254 #endif
255 
284 U_DRAFT int32_t U_EXPORT2
286  double offset,
288  UChar* result,
289  int32_t resultCapacity,
290  UErrorCode* status);
291 
320 U_DRAFT int32_t U_EXPORT2
322  double offset,
324  UChar* result,
325  int32_t resultCapacity,
326  UErrorCode* status);
327 
357 U_DRAFT int32_t U_EXPORT2
359  const UChar * relativeDateString,
360  int32_t relativeDateStringLen,
361  const UChar * timeString,
362  int32_t timeStringLen,
363  UChar* result,
364  int32_t resultCapacity,
365  UErrorCode* status );
366 
367 #endif /* U_HIDE_DRAFT_API */
368 
369 #endif /* !UCONFIG_NO_FORMATTING && !UCONFIG_NO_BREAK_ITERATION */
370 
371 #endif
URelativeDateTimeUnit
Represents the unit for formatting a relative date.
Definition: ureldatefmt.h:78
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:126
struct URelativeDateTimeFormatter URelativeDateTimeFormatter
C typedef for struct URelativeDateTimeFormatter.
Definition: ureldatefmt.h:186
Specifies that relative unit is week, e.g.
Definition: ureldatefmt.h:102
Specifies that relative unit is month, e.g.
Definition: ureldatefmt.h:96
UDisplayContext
Display context settings.
Specifies that relative unit is Friday, e.g.
Definition: ureldatefmt.h:162
Specifies that relative unit is Monday, e.g.
Definition: ureldatefmt.h:138
Everything spelled out.
Definition: ureldatefmt.h:49
Specifies that relative unit is Saturday, e.g.
Definition: ureldatefmt.h:168
C API: Display context types (enum values)
Specifies that relative unit is minute, e.g.
Definition: ureldatefmt.h:120
Specifies that relative unit is Wednesday, e.g.
Definition: ureldatefmt.h:150
Abbreviations used when possible.
Definition: ureldatefmt.h:55
Specifies that relative unit is Sunday, e.g.
Definition: ureldatefmt.h:132
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition: uversion.h:131
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:530
void * UNumberFormat
A number formatter.
Definition: unum.h:136
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...
One more than the highest normal UDateRelativeDateTimeFormatterStyle value.
Definition: ureldatefmt.h:68
Specifies that relative unit is quarter, e.g.
Definition: ureldatefmt.h:90
UDateRelativeDateTimeFormatterStyle
The formatting style.
Definition: ureldatefmt.h:44
"Smart pointer" class, closes a URelativeDateTimeFormatter via ureldatefmt_close().
Specifies that relative unit is hour, e.g.
Definition: ureldatefmt.h:114
Use the shortest possible form.
Definition: ureldatefmt.h:61
Specifies that relative unit is year, e.g.
Definition: ureldatefmt.h:84
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:337
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition: uversion.h:132
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Definition: utypes.h:396
Specifies that relative unit is Tuesday, e.g.
Definition: ureldatefmt.h:144
Specifies that relative unit is day, e.g.
Definition: ureldatefmt.h:108
Basic definitions for ICU, for both C and C++ APIs.
Specifies that relative unit is Thursday, e.g.
Definition: ureldatefmt.h:156
One more than the highest normal URelativeDateTimeUnit value.
Definition: ureldatefmt.h:174
#define U_DRAFT
This is used to declare a function as a draft public ICU C API.
Definition: umachine.h:136
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.