ICU 65.1  65.1
Namespaces | Typedefs | Enumerations | Functions
ulocdata.h File Reference

C API: Provides access to locale data. More...

#include "unicode/ures.h"
#include "unicode/uloc.h"
#include "unicode/uset.h"
#include "unicode/localpointer.h"

Go to the source code of this file.

Namespaces

 icu
 File coll.h.
 

Typedefs

typedef struct ULocaleData ULocaleData
 A locale data object. More...
 
typedef enum ULocaleDataExemplarSetType ULocaleDataExemplarSetType
 The possible types of exemplar character sets. More...
 
typedef enum ULocaleDataDelimiterType ULocaleDataDelimiterType
 The possible types of delimiters. More...
 
typedef enum UMeasurementSystem UMeasurementSystem
 Enumeration for representing the measurement systems. More...
 

Enumerations

enum  ULocaleDataExemplarSetType {
  ULOCDATA_ES_STANDARD =0, ULOCDATA_ES_AUXILIARY =1, ULOCDATA_ES_INDEX =2, ULOCDATA_ES_PUNCTUATION =3,
  ULOCDATA_ES_COUNT =4
}
 The possible types of exemplar character sets. More...
 
enum  ULocaleDataDelimiterType {
  ULOCDATA_QUOTATION_START = 0, ULOCDATA_QUOTATION_END = 1, ULOCDATA_ALT_QUOTATION_START = 2, ULOCDATA_ALT_QUOTATION_END = 3,
  ULOCDATA_DELIMITER_COUNT = 4
}
 The possible types of delimiters. More...
 
enum  UMeasurementSystem { UMS_SI, UMS_US, UMS_UK, UMS_LIMIT }
 Enumeration for representing the measurement systems. More...
 

Functions

ULocaleDataulocdata_open (const char *localeID, UErrorCode *status)
 Opens a locale data object for the given locale. More...
 
void ulocdata_close (ULocaleData *uld)
 Closes a locale data object. More...
 
void ulocdata_setNoSubstitute (ULocaleData *uld, UBool setting)
 Sets the "no Substitute" attribute of the locale data object. More...
 
UBool ulocdata_getNoSubstitute (ULocaleData *uld)
 Retrieves the current "no Substitute" value of the locale data object. More...
 
USetulocdata_getExemplarSet (ULocaleData *uld, USet *fillIn, uint32_t options, ULocaleDataExemplarSetType extype, UErrorCode *status)
 Returns the set of exemplar characters for a locale. More...
 
int32_t ulocdata_getDelimiter (ULocaleData *uld, ULocaleDataDelimiterType type, UChar *result, int32_t resultLength, UErrorCode *status)
 Returns one of the delimiter strings associated with a locale. More...
 
UMeasurementSystem ulocdata_getMeasurementSystem (const char *localeID, UErrorCode *status)
 Returns the measurement system used in the locale specified by the localeID. More...
 
void ulocdata_getPaperSize (const char *localeID, int32_t *height, int32_t *width, UErrorCode *status)
 Returns the element gives the normal business letter size, and customary units. More...
 
void ulocdata_getCLDRVersion (UVersionInfo versionArray, UErrorCode *status)
 Return the current CLDR version used by the library. More...
 
int32_t ulocdata_getLocaleDisplayPattern (ULocaleData *uld, UChar *pattern, int32_t patternCapacity, UErrorCode *status)
 Returns locale display pattern associated with a locale. More...
 
int32_t ulocdata_getLocaleSeparator (ULocaleData *uld, UChar *separator, int32_t separatorCapacity, UErrorCode *status)
 Returns locale separator associated with a locale. More...
 

Detailed Description

C API: Provides access to locale data.

Definition in file ulocdata.h.

Typedef Documentation

◆ ULocaleData

typedef struct ULocaleData ULocaleData

A locale data object.

Stable:
ICU 3.6

Definition at line 36 of file ulocdata.h.

◆ ULocaleDataDelimiterType

The possible types of delimiters.

Stable:
ICU 3.4

◆ ULocaleDataExemplarSetType

The possible types of exemplar character sets.

Stable:
ICU 3.4

◆ UMeasurementSystem

Enumeration for representing the measurement systems.

Stable:
ICU 2.8

Enumeration Type Documentation

◆ ULocaleDataDelimiterType

The possible types of delimiters.

Stable:
ICU 3.4
Enumerator
ULOCDATA_QUOTATION_START 

Quotation start.

Stable:
ICU 3.4
ULOCDATA_QUOTATION_END 

Quotation end.

Stable:
ICU 3.4
ULOCDATA_ALT_QUOTATION_START 

Alternate quotation start.

Stable:
ICU 3.4
ULOCDATA_ALT_QUOTATION_END 

Alternate quotation end.

Stable:
ICU 3.4
ULOCDATA_DELIMITER_COUNT 

One more than the highest normal ULocaleDataDelimiterType value.

Deprecated:
ICU 58 The numeric value may change over time, see ICU ticket #12420.

Definition at line 64 of file ulocdata.h.

◆ ULocaleDataExemplarSetType

The possible types of exemplar character sets.

Stable:
ICU 3.4
Enumerator
ULOCDATA_ES_STANDARD 

Basic set.

Stable:
ICU 3.4
ULOCDATA_ES_AUXILIARY 

Auxiliary set.

Stable:
ICU 3.4
ULOCDATA_ES_INDEX 

Index Character set.

Stable:
ICU 4.8
ULOCDATA_ES_PUNCTUATION 

Punctuation set.

Stable:
ICU 51
ULOCDATA_ES_COUNT 

One more than the highest normal ULocaleDataExemplarSetType value.

Deprecated:
ICU 58 The numeric value may change over time, see ICU ticket #12420.

Definition at line 43 of file ulocdata.h.

◆ UMeasurementSystem

Enumeration for representing the measurement systems.

Stable:
ICU 2.8
Enumerator
UMS_SI 

Measurement system specified by SI otherwise known as Metric system.

Stable:
ICU 2.8
UMS_US 

Measurement system followed in the United States of America.

Stable:
ICU 2.8
UMS_UK 

Mix of metric and imperial units used in Great Britain.

Stable:
ICU 55
UMS_LIMIT 

One more than the highest normal UMeasurementSystem value.

Deprecated:
ICU 58 The numeric value may change over time, see ICU ticket #12420.

Definition at line 200 of file ulocdata.h.

Function Documentation

◆ ulocdata_close()

void ulocdata_close ( ULocaleData uld)

Closes a locale data object.

Parameters
uldThe locale data object to close
Stable:
ICU 3.4

◆ ulocdata_getCLDRVersion()

void ulocdata_getCLDRVersion ( UVersionInfo  versionArray,
UErrorCode status 
)

Return the current CLDR version used by the library.

Parameters
versionArrayfillin that will recieve the version number
statuserror code - could be U_MISSING_RESOURCE_ERROR if the version was not found.
Stable:
ICU 4.2

◆ ulocdata_getDelimiter()

int32_t ulocdata_getDelimiter ( ULocaleData uld,
ULocaleDataDelimiterType  type,
UChar result,
int32_t  resultLength,
UErrorCode status 
)

Returns one of the delimiter strings associated with a locale.

Parameters
uldPointer to the locale data object from which the delimiter string is to be retrieved.
typethe type of delimiter to be retrieved.
resultA pointer to a buffer to receive the result.
resultLengthThe maximum size of result.
statusPointer to an error code value
Returns
int32_t The total buffer size needed; if greater than resultLength, the output was truncated.
Stable:
ICU 3.4

◆ ulocdata_getExemplarSet()

USet* ulocdata_getExemplarSet ( ULocaleData uld,
USet fillIn,
uint32_t  options,
ULocaleDataExemplarSetType  extype,
UErrorCode status 
)

Returns the set of exemplar characters for a locale.

Parameters
uldPointer to the locale data object from which the exemplar character set is to be retrieved.
fillInPointer to a USet object to receive the exemplar character set for the given locale. Previous contents of fillIn are lost. If fillIn is NULL, then a new USet is created and returned. The caller owns the result and must dispose of it by calling uset_close.
optionsBitmask for options to apply to the exemplar pattern. Specify zero to retrieve the exemplar set as it is defined in the locale data. Specify USET_CASE_INSENSITIVE to retrieve a case-folded exemplar set. See uset_applyPattern for a complete list of valid options. The USET_IGNORE_SPACE bit is always set, regardless of the value of 'options'.
extypeSpecifies the type of exemplar set to be retrieved.
statusPointer to an input-output error code value; must not be NULL. Will be set to U_MISSING_RESOURCE_ERROR if the requested data is not available.
Returns
USet* Either fillIn, or if fillIn is NULL, a pointer to a newly-allocated USet that the user must close. In case of error, NULL is returned.
Stable:
ICU 3.4

◆ ulocdata_getLocaleDisplayPattern()

int32_t ulocdata_getLocaleDisplayPattern ( ULocaleData uld,
UChar pattern,
int32_t  patternCapacity,
UErrorCode status 
)

Returns locale display pattern associated with a locale.

Parameters
uldPointer to the locale data object from which the exemplar character set is to be retrieved.
patternlocale display pattern for locale.
patternCapacitythe size of the buffer to store the locale display pattern with.
statusMust be a valid pointer to an error code value, which must not indicate a failure before the function call.
Returns
the actual buffer size needed for localeDisplayPattern. If it's greater than patternCapacity, the returned pattern will be truncated.
Stable:
ICU 4.2

◆ ulocdata_getLocaleSeparator()

int32_t ulocdata_getLocaleSeparator ( ULocaleData uld,
UChar separator,
int32_t  separatorCapacity,
UErrorCode status 
)

Returns locale separator associated with a locale.

Parameters
uldPointer to the locale data object from which the exemplar character set is to be retrieved.
separatorlocale separator for locale.
separatorCapacitythe size of the buffer to store the locale separator with.
statusMust be a valid pointer to an error code value, which must not indicate a failure before the function call.
Returns
the actual buffer size needed for localeSeparator. If it's greater than separatorCapacity, the returned separator will be truncated.
Stable:
ICU 4.2

◆ ulocdata_getMeasurementSystem()

UMeasurementSystem ulocdata_getMeasurementSystem ( const char *  localeID,
UErrorCode status 
)

Returns the measurement system used in the locale specified by the localeID.

Please note that this API will change in ICU 3.6 and will use an ulocdata object.

Parameters
localeIDThe id of the locale for which the measurement system to be retrieved.
statusMust be a valid pointer to an error code value, which must not indicate a failure before the function call.
Returns
UMeasurementSystem the measurement system used in the locale.
Stable:
ICU 2.8

◆ ulocdata_getNoSubstitute()

UBool ulocdata_getNoSubstitute ( ULocaleData uld)

Retrieves the current "no Substitute" value of the locale data object.

If true, then any methods associated with the locale data object will return null when there is no data available for that method, given the locale ID supplied to ulocdata_open().

Parameters
uldPointer to the The locale data object to set.
Returns
UBool Value of the "no substitute" attribute.
Stable:
ICU 3.4

◆ ulocdata_getPaperSize()

void ulocdata_getPaperSize ( const char *  localeID,
int32_t *  height,
int32_t *  width,
UErrorCode status 
)

Returns the element gives the normal business letter size, and customary units.

The units for the numbers are always in milli-meters. For US since 8.5 and 11 do not yeild an integral value when converted to milli-meters, the values are rounded off. So for A4 size paper the height and width are 297 mm and 210 mm repectively, and for US letter size the height and width are 279 mm and 216 mm respectively. Please note that this API will change in ICU 3.6 and will use an ulocdata object.

Parameters
localeIDThe id of the locale for which the paper size information to be retrieved.
heightA pointer to int to recieve the height information.
widthA pointer to int to recieve the width information.
statusMust be a valid pointer to an error code value, which must not indicate a failure before the function call.
Stable:
ICU 2.8

◆ ulocdata_open()

ULocaleData* ulocdata_open ( const char *  localeID,
UErrorCode status 
)

Opens a locale data object for the given locale.

Parameters
localeIDSpecifies the locale associated with this locale data object.
statusPointer to error status code.
Stable:
ICU 3.4

◆ ulocdata_setNoSubstitute()

void ulocdata_setNoSubstitute ( ULocaleData uld,
UBool  setting 
)

Sets the "no Substitute" attribute of the locale data object.

If true, then any methods associated with the locale data object will return null when there is no data available for that method, given the locale ID supplied to ulocdata_open().

Parameters
uldThe locale data object to set.
settingValue of the "no substitute" attribute.
Stable:
ICU 3.4