Trait Language

Source
pub trait Language {
    // Required method
    fn tag(&self) -> &str;
}
Expand description

Interface for a language.

This trait enables compatibility with your own language enum. Alternatively, you can simply use &str or String language tags.

§Examples

use web_lang::Language;

enum MyLanguage {
    English,
    AustralianEnglish,
    German,
    Japanese,
}

impl Language for MyLanguage {
    fn tag(&self) -> &str {
        match self {
            Self::English => "en",
            Self::AustralianEnglish => "en-au",
            Self::German => "de",
            Self::Japanese => "ja",
        }
    }
}

Required Methods§

Source

fn tag(&self) -> &str

The language “tag”, for example en or en-au.

Implementations on Foreign Types§

Source§

impl Language for &str

Source§

fn tag(&self) -> &str

Source§

impl Language for String

Source§

fn tag(&self) -> &str

Implementors§