icu_provider_blob/
lib.rs

1// This file is part of ICU4X. For terms of use, please see the file
2// called LICENSE at the top level of the ICU4X source tree
3// (online at: https://github.com/unicode-org/icu4x/blob/main/LICENSE ).
4
5//! `icu_provider_blob` contains [`BlobDataProvider`], a [`BufferProvider`] implementation that
6//! supports loading data from a single serialized blob.
7//!
8//! To build blob data, use the `--format blob2` option of [`icu_datagen`]:
9//!
10//! ```bash
11//! $ icu4x-datagen --keys all --locales full --format blob2 --out data.postcard
12//! ```
13//!
14//! You can also use `--format blob` if you need to support ICU4X versions prior to 1.4.
15//!
16//! [`ICU4X`]: ../icu/index.html
17//! [`BufferProvider`]: icu_provider::BufferProvider
18//! [`icu_datagen`]: ../icu_datagen/index.html
19
20// https://github.com/unicode-org/icu4x/blob/main/documents/process/boilerplate.md#library-annotations
21#![cfg_attr(not(any(test, feature = "std")), no_std)]
22#![cfg_attr(
23    not(test),
24    deny(
25        clippy::indexing_slicing,
26        clippy::unwrap_used,
27        clippy::expect_used,
28        clippy::panic,
29        clippy::exhaustive_structs,
30        clippy::exhaustive_enums,
31        missing_debug_implementations,
32    )
33)]
34#![warn(missing_docs)]
35
36extern crate alloc;
37
38mod blob_data_provider;
39mod blob_schema;
40
41#[cfg(feature = "export")]
42pub mod export;
43
44pub use blob_data_provider::BlobDataProvider;