[][src]Trait i18n_embed::I18nEmbed

pub trait I18nEmbed: RustEmbed {
    fn src_locale() -> LanguageIdentifier;

    fn language_file_name<L: LanguageLoader>() -> String { ... }
fn available_languages<L: LanguageLoader>() -> Vec<LanguageIdentifier> { ... }
fn select<R: LanguageRequester, L: LanguageLoader>(
        language_requester: &R,
        language_loader: &L
    ) { ... } }

A trait to handle the embedding of software translations within the current binary, and the retrieval/loading of those translations at runtime.

Required methods

fn src_locale() -> LanguageIdentifier

The locale for the project the translations are being embedded into.

Loading content...

Provided methods

fn language_file_name<L: LanguageLoader>() -> String

Calculate the language file name to use for the given LanguageLoader.

fn available_languages<L: LanguageLoader>() -> Vec<LanguageIdentifier>

Calculate the embedded languages available to be selected for the module requested by the provided LanguageLoader.

fn select<R: LanguageRequester, L: LanguageLoader>(
    language_requester: &R,
    language_loader: &L
)

Select the language currently requested by the system by the the LanguageRequester), and load it using the provided LanguageLoader. Logging is performed using the log crate.

Loading content...

Implementors

Loading content...