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

U_CAPI ULocaleData * | ulocdata_open (const char *localeID, UErrorCode *status)
| Opens a locale data object for the given locale. More...
U_CAPI void | ulocdata_close (ULocaleData *uld)
| Closes a locale data object. More...
U_CAPI void | ulocdata_setNoSubstitute (ULocaleData *uld, UBool setting)
| Sets the "no Substitute" attribute of the locale data object. More...
U_CAPI UBool | ulocdata_getNoSubstitute (ULocaleData *uld)
| Retrieves the current "no Substitute" value of the locale data object. More...
U_CAPI USet * | ulocdata_getExemplarSet (ULocaleData *uld, USet *fillIn, uint32_t options, ULocaleDataExemplarSetType extype, UErrorCode *status)
| Returns the set of exemplar characters for a locale. More...
U_CAPI 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...
U_CAPI UMeasurementSystem | ulocdata_getMeasurementSystem (const char *localeID, UErrorCode *status)
| Returns the measurement system used in the locale specified by the localeID. More...
U_CAPI 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...
U_CAPI void | ulocdata_getCLDRVersion (UVersionInfo versionArray, UErrorCode *status)
| Return the current CLDR version used by the library. More...
U_CAPI int32_t | ulocdata_getLocaleDisplayPattern (ULocaleData *uld, UChar *pattern, int32_t patternCapacity, UErrorCode *status)
| Returns locale display pattern associated with a locale. More...
U_CAPI 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 1 of file ulocdata.h.

## ULocaleDataDelimiterType

typedef enum ULocaleDataDelimiterType ULocaleDataDelimiterType

The possible types of delimiters.

Stable:
  ICU 3.4

## ULocaleDataExemplarSetType

typedef enum ULocaleDataExemplarSetType ULocaleDataExemplarSetType

The possible types of exemplar character sets.

Stable:
  ICU 3.4

## UMeasurementSystem

typedef enum UMeasurementSystem UMeasurementSystem

Enumeration for representing the measurement systems.

Stable:
  ICU 2.8

## Enumeration Type Documentation

## ULocaleDataDelimiterType

enum 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 67 of file ulocdata.h.

## ULocaleDataExemplarSetType

enum 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 46 of file ulocdata.h.

## UMeasurementSystem

enum 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 203 of file ulocdata.h.

## Function Documentation

## ulocdata_close()

U_CAPI void ulocdata_close | ( | ULocaleData * | uld | ) |

Closes a locale data object.

Parameters

  uld | The locale data object to close

Stable:
  ICU 3.4

## ulocdata_getCLDRVersion()

U_CAPI void ulocdata_getCLDRVersion | ( | UVersionInfo | versionArray,
|  | UErrorCode * | status
| ) |  |

Return the current CLDR version used by the library.

Parameters

  versionArray | fill-in that will receive the version number
  status | error code - could be U_MISSING_RESOURCE_ERROR if the version was not found.

Stable:
  ICU 4.2

## ulocdata_getDelimiter()

U_CAPI 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

  uld | Pointer to the locale data object from which the delimiter string is to be retrieved.
  type | the type of delimiter to be retrieved.
  result | A pointer to a buffer to receive the result.
  resultLength | The maximum size of result.
  status | Pointer 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()

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

Returns the set of exemplar characters for a locale.

Parameters

  uld | Pointer to the locale data object from which the exemplar character set is to be retrieved.
  fillIn | Pointer 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.
  options | Bitmask 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'.
  extype | Specifies the type of exemplar set to be retrieved.
  status | Pointer 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()

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

Returns locale display pattern associated with a locale.

Parameters

  uld | Pointer to the locale data object from which the exemplar character set is to be retrieved.
  pattern | locale display pattern for locale.
  patternCapacity | the size of the buffer to store the locale display pattern with.
  status | Must 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()

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

Returns locale separator associated with a locale.

Parameters

  uld | Pointer to the locale data object from which the exemplar character set is to be retrieved.
  separator | locale separator for locale.
  separatorCapacity | the size of the buffer to store the locale separator with.
  status | Must 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()

U_CAPI 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

  localeID | The id of the locale for which the measurement system to be retrieved.
  status | Must 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()

U_CAPI 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

  uld | Pointer to the The locale data object to set.

Returns
  UBool Value of the "no substitute" attribute.

Stable:
  ICU 3.4

## ulocdata_getPaperSize()

U_CAPI 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 yield 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 respectively, 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

  localeID | The id of the locale for which the paper size information to be retrieved.
  height | A pointer to int to receive the height information.
  width | A pointer to int to receive the width information.
  status | Must 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()

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

Opens a locale data object for the given locale.

Parameters

  localeID | Specifies the locale associated with this locale data object.
  status | Pointer to error status code.

Stable:
  ICU 3.4

## ulocdata_setNoSubstitute()

U_CAPI 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

  uld | The locale data object to set.
  setting | Value of the "no substitute" attribute.

Stable:
  ICU 3.4