Spaces:
Paused
Paused
Download api/src/services/lang.rs from stremio-db/a: direct link, hf CLI and curl.
- Browser
- Download file 886 Bytes
-
https://huggingface.co/spaces/stremio-db/a/resolve/main/api/src/services/lang.rs
- Command line
-
hf download hf://spaces/stremio-db/a/api/src/services/lang.rs
-
curl -L -o lang.rs https://huggingface.co/spaces/stremio-db/a/resolve/main/api/src/services/lang.rs
886 Bytes
| /// Extract the base ISO 639-1 language code from a regional variant. | |
| /// e.g. "pt-BR" → "pt", "zh-CN" → "zh", "en" → "en" | |
| pub fn lang_base(lang: &str) -> &str { | |
| lang.split('-').next().unwrap_or(lang) | |
| } | |
| /// Extract the ISO 3166-1 region from a regional language code. | |
| /// e.g. "pt-BR" → Some("BR"), "en" → None | |
| pub fn lang_region(lang: &str) -> Option<&str> { | |
| lang.split_once('-').map(|(_, r)| r) | |
| } | |
| mod tests { | |
| use super::*; | |
| fn lang_base_and_region() { | |
| assert_eq!(lang_base("pt-BR"), "pt"); | |
| assert_eq!(lang_base("zh-CN"), "zh"); | |
| assert_eq!(lang_base("en"), "en"); | |
| assert_eq!(lang_base(""), ""); | |
| assert_eq!(lang_region("pt-BR"), Some("BR")); | |
| assert_eq!(lang_region("zh-CN"), Some("CN")); | |
| assert_eq!(lang_region("en"), None); | |
| assert_eq!(lang_region(""), None); | |
| } | |
| } | |