Linux sagir-us1.hostever.us 5.14.0-570.51.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Oct 8 09:41:34 EDT 2025 x86_64
LiteSpeed
Server IP : 104.247.108.91 & Your IP : 216.73.216.26
Domains : 74 Domain
User : georgeto
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
local /
apps /
icu69 /
include /
unicode /
Delete
Unzip
Name
Size
Permission
Date
Action
alphaindex.h
26.48
KB
-rw-r--r--
2024-02-06 07:47
appendable.h
8.49
KB
-rw-r--r--
2024-02-06 07:47
basictz.h
9.68
KB
-rw-r--r--
2024-02-06 07:47
brkiter.h
27.8
KB
-rw-r--r--
2024-02-06 07:47
bytestream.h
10.73
KB
-rw-r--r--
2024-02-06 07:47
bytestrie.h
20.77
KB
-rw-r--r--
2024-02-06 07:47
bytestriebuilder.h
7.29
KB
-rw-r--r--
2024-02-06 07:47
calendar.h
105.88
KB
-rw-r--r--
2024-02-06 07:47
caniter.h
7.43
KB
-rw-r--r--
2024-02-06 07:47
casemap.h
25.33
KB
-rw-r--r--
2024-02-06 07:47
char16ptr.h
7.22
KB
-rw-r--r--
2024-02-06 07:47
chariter.h
24.05
KB
-rw-r--r--
2024-02-06 07:47
choicfmt.h
23.91
KB
-rw-r--r--
2024-02-06 07:47
coleitr.h
13.76
KB
-rw-r--r--
2024-02-06 07:47
coll.h
56.26
KB
-rw-r--r--
2024-02-06 07:47
compactdecimalformat.h
6.88
KB
-rw-r--r--
2024-02-06 07:47
curramt.h
3.76
KB
-rw-r--r--
2024-02-06 07:47
currpinf.h
7.3
KB
-rw-r--r--
2024-02-06 07:47
currunit.h
4
KB
-rw-r--r--
2024-02-06 07:47
datefmt.h
40.67
KB
-rw-r--r--
2024-02-06 07:47
dbbi.h
1.19
KB
-rw-r--r--
2024-02-06 07:47
dcfmtsym.h
20.42
KB
-rw-r--r--
2024-02-06 07:47
decimfmt.h
87.58
KB
-rw-r--r--
2024-02-06 07:47
docmain.h
7.21
KB
-rw-r--r--
2024-02-06 07:47
dtfmtsym.h
37.73
KB
-rw-r--r--
2024-02-06 07:47
dtintrv.h
3.84
KB
-rw-r--r--
2024-02-06 07:47
dtitvfmt.h
49.29
KB
-rw-r--r--
2024-02-06 07:47
dtitvinf.h
18.62
KB
-rw-r--r--
2024-02-06 07:47
dtptngen.h
26.06
KB
-rw-r--r--
2024-02-06 07:47
dtrule.h
8.68
KB
-rw-r--r--
2024-02-06 07:47
edits.h
20.74
KB
-rw-r--r--
2024-02-06 07:47
enumset.h
2.08
KB
-rw-r--r--
2024-02-06 07:47
errorcode.h
4.84
KB
-rw-r--r--
2024-02-06 07:47
fieldpos.h
8.69
KB
-rw-r--r--
2024-02-06 07:47
filteredbrk.h
5.37
KB
-rw-r--r--
2024-02-06 07:47
fmtable.h
24.42
KB
-rw-r--r--
2024-02-06 07:47
format.h
12.5
KB
-rw-r--r--
2024-02-06 07:47
formattedvalue.h
9.75
KB
-rw-r--r--
2024-02-06 07:47
fpositer.h
3.04
KB
-rw-r--r--
2024-02-06 07:47
gender.h
3.33
KB
-rw-r--r--
2024-02-06 07:47
gregocal.h
31.71
KB
-rw-r--r--
2024-02-06 07:47
icudataver.h
1.02
KB
-rw-r--r--
2024-02-06 07:47
icuplug.h
11.83
KB
-rw-r--r--
2024-02-06 07:47
idna.h
12.7
KB
-rw-r--r--
2024-02-06 07:47
listformatter.h
8.79
KB
-rw-r--r--
2024-02-06 07:47
localebuilder.h
11.23
KB
-rw-r--r--
2024-02-06 07:47
localematcher.h
26.98
KB
-rw-r--r--
2024-02-06 07:47
localpointer.h
19.36
KB
-rw-r--r--
2024-02-06 07:47
locdspnm.h
7.12
KB
-rw-r--r--
2024-02-06 07:47
locid.h
47.65
KB
-rw-r--r--
2024-02-06 07:47
measfmt.h
11.37
KB
-rw-r--r--
2024-02-06 07:47
measunit.h
104.66
KB
-rw-r--r--
2024-02-06 07:47
measure.h
4.32
KB
-rw-r--r--
2024-02-06 07:47
messagepattern.h
33.71
KB
-rw-r--r--
2024-02-06 07:47
msgfmt.h
44.12
KB
-rw-r--r--
2024-02-06 07:47
normalizer2.h
33.66
KB
-rw-r--r--
2024-02-06 07:47
normlzr.h
30.94
KB
-rw-r--r--
2024-02-06 07:47
nounit.h
2.3
KB
-rw-r--r--
2024-02-06 07:47
numberformatter.h
92.23
KB
-rw-r--r--
2024-02-06 07:47
numberrangeformatter.h
25.04
KB
-rw-r--r--
2024-02-06 07:47
numfmt.h
49.77
KB
-rw-r--r--
2024-02-06 07:47
numsys.h
7.32
KB
-rw-r--r--
2024-02-06 07:47
parseerr.h
3.08
KB
-rw-r--r--
2024-02-06 07:47
parsepos.h
5.56
KB
-rw-r--r--
2024-02-06 07:47
platform.h
28.08
KB
-rw-r--r--
2024-02-06 07:47
plurfmt.h
25.18
KB
-rw-r--r--
2024-02-06 07:47
plurrule.h
20.84
KB
-rw-r--r--
2024-02-06 07:47
ptypes.h
3.49
KB
-rw-r--r--
2024-02-06 07:47
putil.h
6.32
KB
-rw-r--r--
2024-02-06 07:47
rbbi.h
27.57
KB
-rw-r--r--
2024-02-06 07:47
rbnf.h
48.73
KB
-rw-r--r--
2024-02-06 07:47
rbtz.h
15.72
KB
-rw-r--r--
2024-02-06 07:47
regex.h
84.34
KB
-rw-r--r--
2024-02-06 07:47
region.h
9.18
KB
-rw-r--r--
2024-02-06 07:47
reldatefmt.h
22.22
KB
-rw-r--r--
2024-02-06 07:47
rep.h
9.37
KB
-rw-r--r--
2024-02-06 07:47
resbund.h
18.07
KB
-rw-r--r--
2024-02-06 07:47
schriter.h
6.32
KB
-rw-r--r--
2024-02-06 07:47
scientificnumberformatter.h
6.4
KB
-rw-r--r--
2024-02-06 07:47
search.h
22.22
KB
-rw-r--r--
2024-02-06 07:47
selfmt.h
14.3
KB
-rw-r--r--
2024-02-06 07:47
simpleformatter.h
12.59
KB
-rw-r--r--
2024-02-06 07:47
simpletz.h
45.55
KB
-rw-r--r--
2024-02-06 07:47
smpdtfmt.h
71
KB
-rw-r--r--
2024-02-06 07:47
sortkey.h
11.18
KB
-rw-r--r--
2024-02-06 07:47
std_string.h
1.05
KB
-rw-r--r--
2024-02-06 07:47
strenum.h
9.92
KB
-rw-r--r--
2024-02-06 07:47
stringoptions.h
5.79
KB
-rw-r--r--
2024-02-06 07:47
stringpiece.h
10.05
KB
-rw-r--r--
2024-02-06 07:47
stringtriebuilder.h
15.33
KB
-rw-r--r--
2024-02-06 07:47
stsearch.h
21.3
KB
-rw-r--r--
2024-02-06 07:47
symtable.h
4.27
KB
-rw-r--r--
2024-02-06 07:47
tblcoll.h
36.65
KB
-rw-r--r--
2024-02-06 07:47
timezone.h
41.52
KB
-rw-r--r--
2024-02-06 07:47
tmunit.h
3.38
KB
-rw-r--r--
2024-02-06 07:47
tmutamt.h
4.9
KB
-rw-r--r--
2024-02-06 07:47
tmutfmt.h
7.85
KB
-rw-r--r--
2024-02-06 07:47
translit.h
65.81
KB
-rw-r--r--
2024-02-06 07:47
tzfmt.h
42.89
KB
-rw-r--r--
2024-02-06 07:47
tznames.h
16.85
KB
-rw-r--r--
2024-02-06 07:47
tzrule.h
35.37
KB
-rw-r--r--
2024-02-06 07:47
tztrans.h
6.12
KB
-rw-r--r--
2024-02-06 07:47
ubidi.h
89.54
KB
-rw-r--r--
2024-02-06 07:47
ubiditransform.h
12.7
KB
-rw-r--r--
2024-02-06 07:47
ubrk.h
24.45
KB
-rw-r--r--
2024-02-06 07:47
ucal.h
61
KB
-rw-r--r--
2024-02-06 07:47
ucasemap.h
15.21
KB
-rw-r--r--
2024-02-06 07:47
ucat.h
5.35
KB
-rw-r--r--
2024-02-06 07:47
uchar.h
141.13
KB
-rw-r--r--
2024-02-06 07:47
ucharstrie.h
22.53
KB
-rw-r--r--
2024-02-06 07:47
ucharstriebuilder.h
7.3
KB
-rw-r--r--
2024-02-06 07:47
uchriter.h
13.2
KB
-rw-r--r--
2024-02-06 07:47
uclean.h
11.2
KB
-rw-r--r--
2024-02-06 07:47
ucnv.h
83.04
KB
-rw-r--r--
2024-02-06 07:47
ucnv_cb.h
6.58
KB
-rw-r--r--
2024-02-06 07:47
ucnv_err.h
20.97
KB
-rw-r--r--
2024-02-06 07:47
ucnvsel.h
6.19
KB
-rw-r--r--
2024-02-06 07:47
ucol.h
61.51
KB
-rw-r--r--
2024-02-06 07:47
ucoleitr.h
9.82
KB
-rw-r--r--
2024-02-06 07:47
uconfig.h
12.07
KB
-rw-r--r--
2024-02-06 07:47
ucpmap.h
5.53
KB
-rw-r--r--
2024-02-06 07:47
ucptrie.h
22.51
KB
-rw-r--r--
2024-02-06 07:47
ucsdet.h
14.69
KB
-rw-r--r--
2024-02-06 07:47
ucurr.h
16.77
KB
-rw-r--r--
2024-02-06 07:47
udat.h
62.11
KB
-rw-r--r--
2024-02-06 07:47
udata.h
15.62
KB
-rw-r--r--
2024-02-06 07:47
udateintervalformat.h
11.98
KB
-rw-r--r--
2024-02-06 07:47
udatpg.h
26.76
KB
-rw-r--r--
2024-02-06 07:47
udisplaycontext.h
5.94
KB
-rw-r--r--
2024-02-06 07:47
uenum.h
7.79
KB
-rw-r--r--
2024-02-06 07:47
ufieldpositer.h
4.41
KB
-rw-r--r--
2024-02-06 07:47
uformattable.h
10.97
KB
-rw-r--r--
2024-02-06 07:47
uformattedvalue.h
12.3
KB
-rw-r--r--
2024-02-06 07:47
ugender.h
2.06
KB
-rw-r--r--
2024-02-06 07:47
uidna.h
33.43
KB
-rw-r--r--
2024-02-06 07:47
uiter.h
22.75
KB
-rw-r--r--
2024-02-06 07:47
uldnames.h
10.48
KB
-rw-r--r--
2024-02-06 07:47
ulistformatter.h
10.78
KB
-rw-r--r--
2024-02-06 07:47
uloc.h
54.6
KB
-rw-r--r--
2024-02-06 07:47
ulocdata.h
11.3
KB
-rw-r--r--
2024-02-06 07:47
umachine.h
16.05
KB
-rw-r--r--
2024-02-06 07:47
umisc.h
1.33
KB
-rw-r--r--
2024-02-06 07:47
umsg.h
24.25
KB
-rw-r--r--
2024-02-06 07:47
umutablecptrie.h
8.29
KB
-rw-r--r--
2024-02-06 07:47
unifilt.h
3.96
KB
-rw-r--r--
2024-02-06 07:47
unifunct.h
4.04
KB
-rw-r--r--
2024-02-06 07:47
unimatch.h
6.1
KB
-rw-r--r--
2024-02-06 07:47
unirepl.h
3.38
KB
-rw-r--r--
2024-02-06 07:47
uniset.h
65.04
KB
-rw-r--r--
2024-02-06 07:47
unistr.h
170.46
KB
-rw-r--r--
2024-02-06 07:47
unorm.h
20.52
KB
-rw-r--r--
2024-02-06 07:47
unorm2.h
24.68
KB
-rw-r--r--
2024-02-06 07:47
unum.h
54.88
KB
-rw-r--r--
2024-02-06 07:47
unumberformatter.h
30.55
KB
-rw-r--r--
2024-02-06 07:47
unumberrangeformatter.h
15.38
KB
-rw-r--r--
2024-02-06 07:47
unumsys.h
7.26
KB
-rw-r--r--
2024-02-06 07:47
uobject.h
10.68
KB
-rw-r--r--
2024-02-06 07:47
upluralrules.h
8.8
KB
-rw-r--r--
2024-02-06 07:47
uregex.h
71.99
KB
-rw-r--r--
2024-02-06 07:47
uregion.h
9.81
KB
-rw-r--r--
2024-02-06 07:47
ureldatefmt.h
17.04
KB
-rw-r--r--
2024-02-06 07:47
urename.h
133.97
KB
-rw-r--r--
2024-02-06 07:47
urep.h
5.38
KB
-rw-r--r--
2024-02-06 07:47
ures.h
36.54
KB
-rw-r--r--
2024-02-06 07:47
uscript.h
27.19
KB
-rw-r--r--
2024-02-06 07:47
usearch.h
39.07
KB
-rw-r--r--
2024-02-06 07:47
uset.h
42.59
KB
-rw-r--r--
2024-02-06 07:47
usetiter.h
9.55
KB
-rw-r--r--
2024-02-06 07:47
ushape.h
18
KB
-rw-r--r--
2024-02-06 07:47
uspoof.h
65.84
KB
-rw-r--r--
2024-02-06 07:47
usprep.h
8.19
KB
-rw-r--r--
2024-02-06 07:47
ustdio.h
38.55
KB
-rw-r--r--
2024-02-06 07:47
ustream.h
1.89
KB
-rw-r--r--
2024-02-06 07:47
ustring.h
72.35
KB
-rw-r--r--
2024-02-06 07:47
ustringtrie.h
3.15
KB
-rw-r--r--
2024-02-06 07:47
utext.h
58.08
KB
-rw-r--r--
2024-02-06 07:47
utf.h
7.87
KB
-rw-r--r--
2024-02-06 07:47
utf16.h
23.35
KB
-rw-r--r--
2024-02-06 07:47
utf32.h
763
B
-rw-r--r--
2024-02-06 07:47
utf8.h
30.83
KB
-rw-r--r--
2024-02-06 07:47
utf_old.h
45.83
KB
-rw-r--r--
2024-02-06 07:47
utmscale.h
13.78
KB
-rw-r--r--
2024-02-06 07:47
utrace.h
17.18
KB
-rw-r--r--
2024-02-06 07:47
utrans.h
25.54
KB
-rw-r--r--
2024-02-06 07:47
utypes.h
31.06
KB
-rw-r--r--
2024-02-06 07:47
uvernum.h
6.68
KB
-rw-r--r--
2024-02-06 07:47
uversion.h
5.99
KB
-rw-r--r--
2024-02-06 07:47
vtzone.h
20.67
KB
-rw-r--r--
2024-02-06 07:47
Save
Rename
// © 2016 and later: Unicode, Inc. and others. // License & terms of use: http://www.unicode.org/copyright.html /* ***************************************************************************************** * Copyright (C) 2016, International Business Machines * Corporation and others. All Rights Reserved. ***************************************************************************************** */ #ifndef URELDATEFMT_H #define URELDATEFMT_H #include "unicode/utypes.h" #if !UCONFIG_NO_FORMATTING && !UCONFIG_NO_BREAK_ITERATION #include "unicode/unum.h" #include "unicode/udisplaycontext.h" #include "unicode/uformattedvalue.h" #if U_SHOW_CPLUSPLUS_API #include "unicode/localpointer.h" #endif // U_SHOW_CPLUSPLUS_API /** * \file * \brief C API: URelativeDateTimeFormatter, relative date formatting of unit + numeric offset. * * Provides simple formatting of relative dates, in two ways * <ul> * <li>relative dates with a quantity e.g "in 5 days"</li> * <li>relative dates without a quantity e.g "next Tuesday"</li> * </ul> * <p> * This does not provide compound formatting for multiple units, * other than the ability to combine a time string with a relative date, * as in "next Tuesday at 3:45 PM". It also does not provide support * for determining which unit to use, such as deciding between "in 7 days" * and "in 1 week". * * @stable ICU 57 */ /** * The formatting style * @stable ICU 54 */ typedef enum UDateRelativeDateTimeFormatterStyle { /** * Everything spelled out. * @stable ICU 54 */ UDAT_STYLE_LONG, /** * Abbreviations used when possible. * @stable ICU 54 */ UDAT_STYLE_SHORT, /** * Use the shortest possible form. * @stable ICU 54 */ UDAT_STYLE_NARROW, #ifndef U_HIDE_DEPRECATED_API /** * One more than the highest normal UDateRelativeDateTimeFormatterStyle value. * @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420. */ UDAT_STYLE_COUNT #endif /* U_HIDE_DEPRECATED_API */ } UDateRelativeDateTimeFormatterStyle; /** * Represents the unit for formatting a relative date. e.g "in 5 days" * or "next year" * @stable ICU 57 */ typedef enum URelativeDateTimeUnit { /** * Specifies that relative unit is year, e.g. "last year", * "in 5 years". * @stable ICU 57 */ UDAT_REL_UNIT_YEAR, /** * Specifies that relative unit is quarter, e.g. "last quarter", * "in 5 quarters". * @stable ICU 57 */ UDAT_REL_UNIT_QUARTER, /** * Specifies that relative unit is month, e.g. "last month", * "in 5 months". * @stable ICU 57 */ UDAT_REL_UNIT_MONTH, /** * Specifies that relative unit is week, e.g. "last week", * "in 5 weeks". * @stable ICU 57 */ UDAT_REL_UNIT_WEEK, /** * Specifies that relative unit is day, e.g. "yesterday", * "in 5 days". * @stable ICU 57 */ UDAT_REL_UNIT_DAY, /** * Specifies that relative unit is hour, e.g. "1 hour ago", * "in 5 hours". * @stable ICU 57 */ UDAT_REL_UNIT_HOUR, /** * Specifies that relative unit is minute, e.g. "1 minute ago", * "in 5 minutes". * @stable ICU 57 */ UDAT_REL_UNIT_MINUTE, /** * Specifies that relative unit is second, e.g. "1 second ago", * "in 5 seconds". * @stable ICU 57 */ UDAT_REL_UNIT_SECOND, /** * Specifies that relative unit is Sunday, e.g. "last Sunday", * "this Sunday", "next Sunday", "in 5 Sundays". * @stable ICU 57 */ UDAT_REL_UNIT_SUNDAY, /** * Specifies that relative unit is Monday, e.g. "last Monday", * "this Monday", "next Monday", "in 5 Mondays". * @stable ICU 57 */ UDAT_REL_UNIT_MONDAY, /** * Specifies that relative unit is Tuesday, e.g. "last Tuesday", * "this Tuesday", "next Tuesday", "in 5 Tuesdays". * @stable ICU 57 */ UDAT_REL_UNIT_TUESDAY, /** * Specifies that relative unit is Wednesday, e.g. "last Wednesday", * "this Wednesday", "next Wednesday", "in 5 Wednesdays". * @stable ICU 57 */ UDAT_REL_UNIT_WEDNESDAY, /** * Specifies that relative unit is Thursday, e.g. "last Thursday", * "this Thursday", "next Thursday", "in 5 Thursdays". * @stable ICU 57 */ UDAT_REL_UNIT_THURSDAY, /** * Specifies that relative unit is Friday, e.g. "last Friday", * "this Friday", "next Friday", "in 5 Fridays". * @stable ICU 57 */ UDAT_REL_UNIT_FRIDAY, /** * Specifies that relative unit is Saturday, e.g. "last Saturday", * "this Saturday", "next Saturday", "in 5 Saturdays". * @stable ICU 57 */ UDAT_REL_UNIT_SATURDAY, #ifndef U_HIDE_DEPRECATED_API /** * One more than the highest normal URelativeDateTimeUnit value. * @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420. */ UDAT_REL_UNIT_COUNT #endif /* U_HIDE_DEPRECATED_API */ } URelativeDateTimeUnit; /** * FieldPosition and UFieldPosition selectors for format fields * defined by RelativeDateTimeFormatter. * @stable ICU 64 */ typedef enum URelativeDateTimeFormatterField { /** * Represents a literal text string, like "tomorrow" or "days ago". * @stable ICU 64 */ UDAT_REL_LITERAL_FIELD, /** * Represents a number quantity, like "3" in "3 days ago". * @stable ICU 64 */ UDAT_REL_NUMERIC_FIELD, } URelativeDateTimeFormatterField; /** * Opaque URelativeDateTimeFormatter object for use in C programs. * @stable ICU 57 */ struct URelativeDateTimeFormatter; typedef struct URelativeDateTimeFormatter URelativeDateTimeFormatter; /**< C typedef for struct URelativeDateTimeFormatter. @stable ICU 57 */ /** * Open a new URelativeDateTimeFormatter object for a given locale using the * specified width and capitalizationContext, along with a number formatter * (if desired) to override the default formatter that would be used for * display of numeric field offsets. The default formatter typically rounds * toward 0 and has a minimum of 0 fraction digits and a maximum of 3 * fraction digits (i.e. it will show as many decimal places as necessary * up to 3, without showing trailing 0s). * * @param locale * The locale * @param nfToAdopt * A number formatter to set for this URelativeDateTimeFormatter * object (instead of the default decimal formatter). Ownership of * this UNumberFormat object will pass to the URelativeDateTimeFormatter * object (the URelativeDateTimeFormatter adopts the UNumberFormat), * which becomes responsible for closing it. If the caller wishes to * retain ownership of the UNumberFormat object, the caller must clone * it (with unum_clone) and pass the clone to ureldatefmt_open. May be * NULL to use the default decimal formatter. * @param width * The width - wide, short, narrow, etc. * @param capitalizationContext * A value from UDisplayContext that pertains to capitalization, e.g. * UDISPCTX_CAPITALIZATION_FOR_BEGINNING_OF_SENTENCE. * @param status * A pointer to a UErrorCode to receive any errors. * @return * A pointer to a URelativeDateTimeFormatter object for the specified locale, * or NULL if an error occurred. * @stable ICU 57 */ U_CAPI URelativeDateTimeFormatter* U_EXPORT2 ureldatefmt_open( const char* locale, UNumberFormat* nfToAdopt, UDateRelativeDateTimeFormatterStyle width, UDisplayContext capitalizationContext, UErrorCode* status ); /** * Close a URelativeDateTimeFormatter object. Once closed it may no longer be used. * @param reldatefmt * The URelativeDateTimeFormatter object to close. * @stable ICU 57 */ U_CAPI void U_EXPORT2 ureldatefmt_close(URelativeDateTimeFormatter *reldatefmt); struct UFormattedRelativeDateTime; /** * Opaque struct to contain the results of a URelativeDateTimeFormatter operation. * @stable ICU 64 */ typedef struct UFormattedRelativeDateTime UFormattedRelativeDateTime; /** * Creates an object to hold the result of a URelativeDateTimeFormatter * operation. The object can be used repeatedly; it is cleared whenever * passed to a format function. * * @param ec Set if an error occurs. * @return A pointer needing ownership. * @stable ICU 64 */ U_CAPI UFormattedRelativeDateTime* U_EXPORT2 ureldatefmt_openResult(UErrorCode* ec); /** * Returns a representation of a UFormattedRelativeDateTime as a UFormattedValue, * which can be subsequently passed to any API requiring that type. * * The returned object is owned by the UFormattedRelativeDateTime and is valid * only as long as the UFormattedRelativeDateTime is present and unchanged in memory. * * You can think of this method as a cast between types. * * @param ufrdt The object containing the formatted string. * @param ec Set if an error occurs. * @return A UFormattedValue owned by the input object. * @stable ICU 64 */ U_CAPI const UFormattedValue* U_EXPORT2 ureldatefmt_resultAsValue(const UFormattedRelativeDateTime* ufrdt, UErrorCode* ec); /** * Releases the UFormattedRelativeDateTime created by ureldatefmt_openResult. * * @param ufrdt The object to release. * @stable ICU 64 */ U_CAPI void U_EXPORT2 ureldatefmt_closeResult(UFormattedRelativeDateTime* ufrdt); #if U_SHOW_CPLUSPLUS_API U_NAMESPACE_BEGIN /** * \class LocalURelativeDateTimeFormatterPointer * "Smart pointer" class, closes a URelativeDateTimeFormatter via ureldatefmt_close(). * For most methods see the LocalPointerBase base class. * * @see LocalPointerBase * @see LocalPointer * @stable ICU 57 */ U_DEFINE_LOCAL_OPEN_POINTER(LocalURelativeDateTimeFormatterPointer, URelativeDateTimeFormatter, ureldatefmt_close); /** * \class LocalUFormattedRelativeDateTimePointer * "Smart pointer" class, closes a UFormattedRelativeDateTime via ureldatefmt_closeResult(). * For most methods see the LocalPointerBase base class. * * @see LocalPointerBase * @see LocalPointer * @stable ICU 64 */ U_DEFINE_LOCAL_OPEN_POINTER(LocalUFormattedRelativeDateTimePointer, UFormattedRelativeDateTime, ureldatefmt_closeResult); U_NAMESPACE_END #endif /** * Format a combination of URelativeDateTimeUnit and numeric * offset using a numeric style, e.g. "1 week ago", "in 1 week", * "5 weeks ago", "in 5 weeks". * * @param reldatefmt * The URelativeDateTimeFormatter object specifying the * format conventions. * @param offset * The signed offset for the specified unit. This will * be formatted according to this object's UNumberFormat * object. * @param unit * The unit to use when formatting the relative * date, e.g. UDAT_REL_UNIT_WEEK, UDAT_REL_UNIT_FRIDAY. * @param result * A pointer to a buffer to receive the formatted result. * @param resultCapacity * The maximum size of result. * @param status * A pointer to a UErrorCode to receive any errors. In * case of error status, the contents of result are * undefined. * @return * The length of the formatted result; may be greater * than resultCapacity, in which case an error is returned. * @stable ICU 57 */ U_CAPI int32_t U_EXPORT2 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. "1 week ago", "in 1 week", * "5 weeks ago", "in 5 weeks". * * @param reldatefmt * The URelativeDateTimeFormatter object specifying the * format conventions. * @param offset * The signed offset for the specified unit. This will * be formatted according to this object's UNumberFormat * object. * @param unit * The unit to use when formatting the relative * date, e.g. UDAT_REL_UNIT_WEEK, UDAT_REL_UNIT_FRIDAY. * @param result * A pointer to a UFormattedRelativeDateTime to populate. * @param status * A pointer to a UErrorCode to receive any errors. In * case of error status, the contents of result are * undefined. * @stable ICU 64 */ U_CAPI void U_EXPORT2 ureldatefmt_formatNumericToResult( const URelativeDateTimeFormatter* reldatefmt, double offset, URelativeDateTimeUnit unit, UFormattedRelativeDateTime* result, UErrorCode* status); /** * Format a combination of URelativeDateTimeUnit and numeric offset * using a text style if possible, e.g. "last week", "this week", * "next week", "yesterday", "tomorrow". Falls back to numeric * style if no appropriate text term is available for the specified * offset in the object's locale. * * @param reldatefmt * The URelativeDateTimeFormatter object specifying the * format conventions. * @param offset * The signed offset for the specified unit. * @param unit * The unit to use when formatting the relative * date, e.g. UDAT_REL_UNIT_WEEK, UDAT_REL_UNIT_FRIDAY. * @param result * A pointer to a buffer to receive the formatted result. * @param resultCapacity * The maximum size of result. * @param status * A pointer to a UErrorCode to receive any errors. In * case of error status, the contents of result are * undefined. * @return * The length of the formatted result; may be greater * than resultCapacity, in which case an error is returned. * @stable ICU 57 */ U_CAPI int32_t U_EXPORT2 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, e.g. "last week", "this week", * "next week", "yesterday", "tomorrow". Falls back to numeric * style if no appropriate text term is available for the specified * offset in the object's locale. * * This method populates a UFormattedRelativeDateTime, which exposes more * information than the string populated by format(). * * @param reldatefmt * The URelativeDateTimeFormatter object specifying the * format conventions. * @param offset * The signed offset for the specified unit. * @param unit * The unit to use when formatting the relative * date, e.g. UDAT_REL_UNIT_WEEK, UDAT_REL_UNIT_FRIDAY. * @param result * A pointer to a UFormattedRelativeDateTime to populate. * @param status * A pointer to a UErrorCode to receive any errors. In * case of error status, the contents of result are * undefined. * @stable ICU 64 */ U_CAPI void U_EXPORT2 ureldatefmt_formatToResult( const URelativeDateTimeFormatter* reldatefmt, double offset, URelativeDateTimeUnit unit, UFormattedRelativeDateTime* result, UErrorCode* status); /** * Combines a relative date string and a time string in this object's * locale. This is done with the same date-time separator used for the * default calendar in this locale to produce a result such as * "yesterday at 3:45 PM". * * @param reldatefmt * The URelativeDateTimeFormatter object specifying the format conventions. * @param relativeDateString * The relative date string. * @param relativeDateStringLen * The length of relativeDateString; may be -1 if relativeDateString * is zero-terminated. * @param timeString * The time string. * @param timeStringLen * The length of timeString; may be -1 if timeString is zero-terminated. * @param result * A pointer to a buffer to receive the formatted result. * @param resultCapacity * The maximum size of result. * @param status * A pointer to a UErrorCode to receive any errors. In case of error status, * the contents of result are undefined. * @return * The length of the formatted result; may be greater than resultCapacity, * in which case an error is returned. * @stable ICU 57 */ U_CAPI int32_t U_EXPORT2 ureldatefmt_combineDateAndTime( const URelativeDateTimeFormatter* reldatefmt, const UChar * relativeDateString, int32_t relativeDateStringLen, const UChar * timeString, int32_t timeStringLen, UChar* result, int32_t resultCapacity, UErrorCode* status ); #endif /* !UCONFIG_NO_FORMATTING && !UCONFIG_NO_BREAK_ITERATION */ #endif