Struct poem::i18n::I18NResourcesBuilder
source · [−]pub struct I18NResourcesBuilder { /* private fields */ }
Available on crate feature
i18n
only.Expand description
I18N resources builder.
Implementations
sourceimpl I18NResourcesBuilder
impl I18NResourcesBuilder
sourcepub fn add_path(self, path: impl Into<PathBuf>) -> Self
pub fn add_path(self, path: impl Into<PathBuf>) -> Self
Add resources directory.
The resource directory contains multiple language directories, each of which can contain multiple FTL files for that language.
/resources
/en-US
simple.ftl
errors.ftl
/zh-CN
simple.ftl
errors.ftl
sourcepub fn add_ftl(self, language: impl Into<String>, ftl: impl Into<String>) -> Self
pub fn add_ftl(self, language: impl Into<String>, ftl: impl Into<String>) -> Self
Add FTL(Fluent Translation List) for the specified language.
Example
use poem::i18n::I18NResources;
let resources = I18NResources::builder()
.add_ftl("en-US", "hello-world = Hello world!")
.add_ftl("zh-CN", "hello-world = 你好世界!")
.build()
.unwrap();
sourcepub fn default_language(self, language: LanguageIdentifier) -> Self
pub fn default_language(self, language: LanguageIdentifier) -> Self
Set the default language when the language negotiation fails.
NOTE: This language ID matches exactly the language id contained in the resources.
Example
use poem::i18n::I18NResources;
use unic_langid::langid;
let resources = I18NResources::builder()
.add_ftl("en-US", "hello-world = Hello world!")
.add_ftl("zh-CN", "hello-world = 你好世界!")
.default_language(langid!("en-US"))
.build()
.unwrap();
sourcepub fn negotiation_strategy(self, strategy: NegotiationStrategy) -> Self
pub fn negotiation_strategy(self, strategy: NegotiationStrategy) -> Self
Sets the negotiation strategy.
Default is NegotiationStrategy::Filtering
.
sourcepub fn build(self) -> Result<I18NResources, I18NError>
pub fn build(self) -> Result<I18NResources, I18NError>
Consumes this builder and returns a I18NResources
object.
Auto Trait Implementations
impl RefUnwindSafe for I18NResourcesBuilder
impl Send for I18NResourcesBuilder
impl Sync for I18NResourcesBuilder
impl Unpin for I18NResourcesBuilder
impl UnwindSafe for I18NResourcesBuilder
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more