macro_rules! langid {
($langid:literal) => { ... };
}
Expand description
A macro allowing for compile-time construction of valid LanguageIdentifier
s.
The macro will perform syntax normalization of the tag.
§Examples
use icu::locale::{langid, LanguageIdentifier};
const DE_AT: LanguageIdentifier = langid!("de-at");
let de_at: LanguageIdentifier = "de-at".parse().unwrap();
assert_eq!(DE_AT, de_at);
Note: The macro cannot produce language identifiers with more than one variants due to const
limitations (see Heap Allocations in Constants
):
ⓘ
icu::locale::langid!("und-variant1-variant2");
Use runtime parsing instead:
"und-variant1-variant2"
.parse::<icu::locale::LanguageIdentifier>()
.unwrap();