#sqlite #localization #icu4x #data-store

i18n_provider_sqlite3-rizzen-yazston

The i18n_provider_sqlite3 crate of the Internationalisation project

8 releases (4 breaking)

new 0.10.1 Nov 15, 2024
0.10.0 Aug 2, 2024
0.9.2 Jul 23, 2024
0.9.1 Mar 24, 2024
0.6.1 Jul 6, 2023

#171 in Internationalization (i18n)


Used in 4 crates (3 directly)

BSD-3-Clause

180KB
3K SLoC

i18n_provider_sqlite3

Rizzen Yazston :BufferProvider: https://docs.rs/icu_provider/latest/icu_provider/buf/trait.BufferProvider.html :CLDR: https://cldr.unicode.org/ :ICU4X: https://github.com/unicode-org/icu4x :Unicode_Consortium: https://home.unicode.org/

Welcome to the i18n_provider_sqlite3 crate of the Internationalisation (i18n) project.

This crate consists of two modules:

  • error: Contains the error enum for the Sqlite3 provider,

  • provider: The provider implementation using Sqlite3 for the data store.

Features

Available features for i18n_provider_sqlite3 crate:

  • logging: To provide some logging information.

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

Modules

Sqlite3 provider for localisation strings.

This crate implements LocalisationProviderTrait using Sqlite3 as the data store for localisation strings. As a directory path is used at the time of creating a LocalisationProviderSqlite3 instance, it means that an application can have multiple data stores for both application localisation strings, and also for data packages' localisation strings.

Localisation Sqlite3 templates

Can find the templates all_in_one.sqlite3 and component application.sqlite3 for the application in the l10n directory.

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.

Dependencies

~26MB
~492K SLoC