Crate icu_provider_export

Source
Expand description

icu_provider_export is a library to generate data files that can be used in ICU4X data providers.

For command-line usage, see the icu4x-datagen binary.

Also see our datagen tutorial.

§Examples

use icu_provider_export::blob_exporter::*;
use icu_provider_export::prelude::*;
use icu_provider_source::SourceDataProvider;
use std::fs::File;

let provider = SourceDataProvider::new();

ExportDriver::new(
    [DataLocaleFamily::FULL],
    DeduplicationStrategy::None.into(),
    LocaleFallbacker::try_new_unstable(&provider).unwrap(),
)
.with_markers([icu::list::provider::ListAndV1::INFO])
.export(
    &provider,
    BlobExporter::new_with_sink(Box::new(
        File::create("data.postcard").unwrap(),
    )),
)
.unwrap();

§Cargo features

Modules§

baked_exporter
A data exporter that bakes the data into Rust code.
blob_exporter
Data exporter that creates a binary blob for use with BlobDataProvider.
fs_exporter
Data exporter that creates a file system structure for use with FsDataProvider.
prelude
A prelude for using the datagen API

Structs§

DataLocaleFamily
A family of locales to export.
ExportDriver
Configuration for a data export operation.
ExportMetadata
Contains information about a successful export.
FallbackOptions
Options bag configuring locale inclusion and behavior when runtime fallback is enabled.
NoFallbackOptions
Options bag configuring locale inclusion and behavior when runtime fallback is disabled.

Enums§

DataLocaleFamilyParseError
An error while parsing a DataLocaleFamily.
DeduplicationStrategy
Choices for determining the deduplication of locales for exported data payloads.