ICU 67.1 67.1
uformattedvalue.h
Go to the documentation of this file.
1// © 2018 and later: Unicode, Inc. and others.
2// License & terms of use: http://www.unicode.org/copyright.html
3
4#ifndef __UFORMATTEDVALUE_H__
5#define __UFORMATTEDVALUE_H__
6
7#include "unicode/utypes.h"
8
9#if !UCONFIG_NO_FORMATTING
10
12
20
21
97
98
112
113
125
126
136U_STABLE void U_EXPORT2
139 UErrorCode* ec);
140
141
148U_STABLE void U_EXPORT2
150
151
177U_STABLE void U_EXPORT2
180 int32_t category,
181 UErrorCode* ec);
182
183
210U_STABLE void U_EXPORT2
213 int32_t category,
214 int32_t field,
215 UErrorCode* ec);
216
217
230U_STABLE int32_t U_EXPORT2
232 const UConstrainedFieldPosition* ucfpos,
233 UErrorCode* ec);
234
235
248U_STABLE int32_t U_EXPORT2
250 const UConstrainedFieldPosition* ucfpos,
251 UErrorCode* ec);
252
253
265U_STABLE void U_EXPORT2
267 const UConstrainedFieldPosition* ucfpos,
268 int32_t* pStart,
269 int32_t* pLimit,
270 UErrorCode* ec);
271
272
285U_STABLE int64_t U_EXPORT2
287 const UConstrainedFieldPosition* ucfpos,
288 UErrorCode* ec);
289
290
301U_STABLE void U_EXPORT2
304 int64_t context,
305 UErrorCode* ec);
306
307
320U_STABLE UBool U_EXPORT2
322 const UConstrainedFieldPosition* ucfpos,
323 int32_t category,
324 int32_t field,
325 UErrorCode* ec);
326
327
344U_STABLE void U_EXPORT2
347 int32_t category,
348 int32_t field,
349 int32_t start,
350 int32_t limit,
351 UErrorCode* ec);
352
353
354struct UFormattedValue;
362
363
377U_STABLE const UChar* U_EXPORT2
379 const UFormattedValue* ufmtval,
380 int32_t* pLength,
381 UErrorCode* ec);
382
383
407U_STABLE UBool U_EXPORT2
409 const UFormattedValue* ufmtval,
411 UErrorCode* ec);
412
413
414#if U_SHOW_CPLUSPLUS_API
415U_NAMESPACE_BEGIN
416
432
433U_NAMESPACE_END
434#endif // U_SHOW_CPLUSPLUS_API
435
436
437#endif /* #if !UCONFIG_NO_FORMATTING */
438#endif // __UFORMATTEDVALUE_H__
"Smart pointer" class; closes a UConstrainedFieldPosition via ucfpos_close().
#define U_DEFINE_LOCAL_OPEN_POINTER(LocalPointerClassName, Type, closeFunction)
"Smart pointer" definition macro, deletes objects via the closeFunction.
C API: UFieldPositionIterator for use with format APIs.
const UChar * ufmtval_getString(const UFormattedValue *ufmtval, int32_t *pLength, UErrorCode *ec)
Returns a pointer to the formatted string.
UConstrainedFieldPosition * ucfpos_open(UErrorCode *ec)
Creates a new UConstrainedFieldPosition.
void ucfpos_setState(UConstrainedFieldPosition *ucfpos, int32_t category, int32_t field, int32_t start, int32_t limit, UErrorCode *ec)
Sets new values for the primary public getters.
int64_t ucfpos_getInt64IterationContext(const UConstrainedFieldPosition *ucfpos, UErrorCode *ec)
Gets an int64 that FormattedValue implementations may use for storage.
void ucfpos_constrainCategory(UConstrainedFieldPosition *ucfpos, int32_t category, UErrorCode *ec)
Sets a constraint on the field category.
void ucfpos_close(UConstrainedFieldPosition *ucfpos)
Destroys a UConstrainedFieldPosition and releases its memory.
UFieldCategory
All possible field categories in ICU.
@ UFIELD_CATEGORY_DATE_INTERVAL
Reserved for possible future fields in UDateIntervalFormatField.
@ UFIELD_CATEGORY_DATE_INTERVAL_SPAN
Category for spans in a date interval.
@ UFIELD_CATEGORY_DATE
For fields in UDateFormatField (udat.h), from ICU 3.0.
@ UFIELD_CATEGORY_LIST_SPAN
Category for spans in a list.
@ UFIELD_CATEGORY_RELATIVE_DATETIME
For fields in URelativeDateTimeFormatterField (ureldatefmt.h), from ICU 64.
@ UFIELD_CATEGORY_UNDEFINED
For an undefined field category.
@ UFIELD_CATEGORY_LIST
For fields in UListFormatterField (ulistformatter.h), from ICU 63.
@ UFIELD_CATEGORY_COUNT
@ UFIELD_CATEGORY_NUMBER
For fields in UNumberFormatFields (unum.h), from ICU 49.
void ucfpos_constrainField(UConstrainedFieldPosition *ucfpos, int32_t category, int32_t field, UErrorCode *ec)
Sets a constraint on the category and field.
int32_t ucfpos_getField(const UConstrainedFieldPosition *ucfpos, UErrorCode *ec)
Gets the field for the current position.
struct UConstrainedFieldPosition UConstrainedFieldPosition
Represents a span of a string containing a given field.
UBool ucfpos_matchesField(const UConstrainedFieldPosition *ucfpos, int32_t category, int32_t field, UErrorCode *ec)
Determines whether a given field should be included given the constraints.
void ucfpos_reset(UConstrainedFieldPosition *ucfpos, UErrorCode *ec)
Resets a UConstrainedFieldPosition to its initial state, as if it were newly created.
int32_t ucfpos_getCategory(const UConstrainedFieldPosition *ucfpos, UErrorCode *ec)
Gets the field category for the current position.
UBool ufmtval_nextPosition(const UFormattedValue *ufmtval, UConstrainedFieldPosition *ucfpos, UErrorCode *ec)
Iterates over field positions in the UFormattedValue.
void ucfpos_getIndexes(const UConstrainedFieldPosition *ucfpos, int32_t *pStart, int32_t *pLimit, UErrorCode *ec)
Gets the INCLUSIVE start and EXCLUSIVE end index stored for the current position.
void ucfpos_setInt64IterationContext(UConstrainedFieldPosition *ucfpos, int64_t context, UErrorCode *ec)
Sets an int64 that FormattedValue implementations may use for storage.
struct UFormattedValue UFormattedValue
An abstract formatted value: a string with associated field attributes.
char16_t UChar
The base type for UTF-16 code units and pointers.
Definition umachine.h:376
int8_t UBool
The ICU boolean type.
Definition umachine.h:261
#define U_STABLE
This is used to declare a function as a stable public ICU C API.
Definition umachine.h:111
Basic definitions for ICU, for both C and C++ APIs.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
Definition utypes.h:415