i18n_icu-rizzen-yazston

Crates.ioi18n_icu-rizzen-yazston
lib.rsi18n_icu-rizzen-yazston
version0.8.0
sourcesrc
created_at2023-07-06 16:57:05.238214
updated_at2024-02-03 15:45:45.071425
descriptionThe `i18n_icu` crate of the Internationalisation project.
homepagehttps://github.com/rizzen-yazston/i18n
repositoryhttps://github.com/rizzen-yazston/i18n
max_upload_size
id910100
size23,332
Rizzen (rizzen-yazston)

documentation

README

= i18n_icu Rizzen Yazston :icu4x: https://github.com/unicode-org/icu4x :url-unicode: https://home.unicode.org/ :DataProvider: https://docs.rs/icu_provider/1.2.0/icu_provider/trait.DataProvider.html :BlobDataProvider: https://docs.rs/icu_provider_blob/1.2.0/icu_provider_blob/struct.BlobDataProvider.html :FsDataProvider: https://docs.rs/icu_provider_fs/1.2.1/icu_provider_fs/struct.FsDataProvider.html :BufferProvider: https://docs.rs/icu_provider/1.2.0/icu_provider/buf/trait.BufferProvider.html

{icu4x}[ICU4X] project (maintained by the {url-unicode}[Unicode Consortium]) data provider helper.

The IcuDataProvider type contains the DataProvider enum of supported implementations of ICU4X {DataProvider}[DataProvider]. Depending on the features selected, they are: Internal (internally uses the BakedDataProvider), {BlobDataProvider}[BlobDataProvider], or {FsDataProvider}[FsDataProvider].

When data provider is not Internal and depending on the data provider used, the IcuDataProvider may contain non-locale based data, such as the grapheme cluster segmenter and the selected character properties set data.

IcuDataProvider type is used within the Rc type as Rc<IcuDataProvider> or Arc type as Arc<IcuDataProvider> to prevent unnecessary duplication.

== Features

Available features for i18n_icu crate:

  • compiled_data (Preferred): Allow for the internal data of the various ICU4X components.

  • blob: Allow for instances of BlobDataProvider to be used various ICU4X components that supports {BufferProvider}[BufferProvider]. An alternative provider when the internal data of ICU4X components are insufficient for a particular use case.

  • fs: Allow for instances of FsDataProvider to be used various ICU4X components that supports BufferProvider. An alternative provider when the internal data of ICU4X components are insufficient for a particular use case.

  • sync: Allow for rust's concurrency capabilities to be used. Use of Arc and Mutex instead Rc and RefCell.

  • log: Enable log support.

== Acknowledgement

Stefano Angeleri for advice on various design aspects of implementing the components of the internationalisation project, and also providing the Italian translation of error message strings.

Commit count: 88

cargo fmt