zng_ext_l10n/sources/
nil.rs

1use std::{collections::HashMap, path::PathBuf, sync::Arc};
2
3use zng_var::{ArcEq, Var, const_var};
4
5use crate::{L10nSource, Lang, LangFilePath, LangMap, LangResourceStatus};
6
7/// Localization source that is never available.
8pub struct NilL10nSource;
9impl L10nSource for NilL10nSource {
10    fn available_langs(&mut self) -> Var<Arc<LangMap<HashMap<LangFilePath, PathBuf>>>> {
11        const_var(Arc::default())
12    }
13
14    fn available_langs_status(&mut self) -> Var<LangResourceStatus> {
15        const_var(LangResourceStatus::NotAvailable)
16    }
17
18    fn lang_resource(&mut self, _: Lang, _: LangFilePath) -> Var<Option<ArcEq<fluent::FluentResource>>> {
19        const_var(None)
20    }
21
22    fn lang_resource_status(&mut self, _: Lang, _: LangFilePath) -> Var<LangResourceStatus> {
23        const_var(LangResourceStatus::NotAvailable)
24    }
25}