Crate embedded_lang

Source
Expand description

A small library to provide translation strings as an embedded resource Language files are in JSON format and will be embedded into the binary at compile time.

Please see the examples directory for language file samples

Usage example:

use embedded_lang::{ LanguageSet, embedded_language };

fn main() {
    let mut translator = LanguageSet::new("fr", &[
        embedded_language!("../examples/en.lang.json"),
        embedded_language!("../examples/fr.lang.json"),
    ]);
    translator.set_fallback_language("en");

    assert_eq!(translator["tree"], "arbre".to_string());
}

LanguageSets have a current language, and a fallback language from which strings will be fetched if the current language is missing the requested string.

Macros§

embedded_language
Get a language as an embedded resource
get_string
Get a language string

Structs§

Language
Represents a single language lookup instance
LanguageSet
A searchable set of language string instances

Enums§

LanguageStringObject
Part of a path to a string