Module icu_provider::serde[][src]

Expand description

Collection of traits for providers that support serializing or deserializing data.

Deserializing

Providers that involve a serde::Deserializer to produce data from an opaque source should implement SerdeDeDataProvider. For example, FsDataProvider implements SerdeDeDataProvider.

SerdeDeDataProvider can be made into a trait object. It is used over FFI.

Serializing

Providers that have full type information should implement DataProvider<dyn SerdeSeDataStruct>. Note that a provider like FsDataProvider cannot implement that trait, because type information on the data structs is required in order to deserialize and then serialize them.

DataProvider<dyn SerdeSeDataStruct> is used by data exporters such as FilesystemExporter.

Structs

Marker type for SerdeSeDataStruct.

A wrapper around &dyn SerdeSeDataStruct<'data> for integration with DataProvider.

Traits

A type-erased data provider that loads payloads from a Serde Deserializer.

An object that receives data from a Serde Deserializer.

Auto-implemented trait for all data structs that support serde::Serialize. This trait is usually used as a trait object in DataProvider<dyn SerdeSeDataStruct>.