Struct poem::i18n::I18NResourcesBuilder
source · [−]pub struct I18NResourcesBuilder { /* private fields */ }
This is supported 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 T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
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
sourceimpl<T> FutureExt for T
impl<T> FutureExt for T
sourcefn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
sourcefn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more