Struct gooey::fluent::fluent::FluentMessage
[−]pub struct FluentMessage<'m> { /* private fields */ }
Expand description
FluentMessage
is a basic translation unit of the Fluent system.
The instance of a message is returned from the
FluentBundle::get_message
method, for the lifetime of the FluentBundle
instance.
Example
use fluent_bundle::{FluentResource, FluentBundle};
let source = r#"
hello-world = Hello World!
"#;
let resource = FluentResource::try_new(source.to_string())
.expect("Failed to parse the resource.");
let mut bundle = FluentBundle::default();
bundle.add_resource(resource)
.expect("Failed to add a resource.");
let msg = bundle.get_message("hello-world")
.expect("Failed to retrieve a message.");
assert!(msg.value().is_some());
That value can be then passed to
FluentBundle::format_pattern
to be formatted
within the context of a given FluentBundle
instance.
Compound Message
A message may contain a value
, but it can also contain a list of FluentAttribute
elements.
If a message contains attributes, it is called a “compound” message.
In such case, the message contains a list of key-value attributes that represent different translation values associated with a single translation unit.
This is useful for scenarios where a FluentMessage
is associated with a
complex User Interface widget which has multiple attributes that need to be translated.
confirm-modal = Are you sure?
.confirm = Yes
.cancel = No
.tooltip = Closing the window will lose all unsaved data.
Implementations
impl<'m> FluentMessage<'m>
impl<'m> FluentMessage<'m>
pub fn value(&self) -> Option<&'m Pattern<&'m str>>
pub fn value(&self) -> Option<&'m Pattern<&'m str>>
Retrieves an option of a ast::Pattern
.
Example
let msg = bundle.get_message("hello-world")
.expect("Failed to retrieve a message.");
if let Some(value) = msg.value() {
let mut err = vec![];
assert_eq!(
bundle.format_pattern(value, None, &mut err),
"Hello World!"
);
}
pub fn attributes(&self) -> impl Iterator<Item = FluentAttribute<'m>>
pub fn attributes(&self) -> impl Iterator<Item = FluentAttribute<'m>>
An iterator over FluentAttribute
elements.
Example
let msg = bundle.get_message("hello-world")
.expect("Failed to retrieve a message.");
let mut err = vec![];
for attr in msg.attributes() {
let _ = bundle.format_pattern(attr.value(), None, &mut err);
}
pub fn get_attribute(&self, key: &str) -> Option<FluentAttribute<'m>>
pub fn get_attribute(&self, key: &str) -> Option<FluentAttribute<'m>>
Retrieve a single FluentAttribute
element.
Example
let msg = bundle.get_message("hello-world")
.expect("Failed to retrieve a message.");
let mut err = vec![];
if let Some(attr) = msg.get_attribute("label") {
assert_eq!(
bundle.format_pattern(attr.value(), None, &mut err),
"This is a label"
);
}
Trait Implementations
impl<'m> Debug for FluentMessage<'m>
impl<'m> Debug for FluentMessage<'m>
impl<'m> From<&'m Message<&'m str>> for FluentMessage<'m>
impl<'m> From<&'m Message<&'m str>> for FluentMessage<'m>
fn from(msg: &'m Message<&'m str>) -> FluentMessage<'m>
fn from(msg: &'m Message<&'m str>) -> FluentMessage<'m>
Converts to this type from the input type.
impl<'m> PartialEq<FluentMessage<'m>> for FluentMessage<'m>
impl<'m> PartialEq<FluentMessage<'m>> for FluentMessage<'m>
fn eq(&self, other: &FluentMessage<'m>) -> bool
fn eq(&self, other: &FluentMessage<'m>) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
fn ne(&self, other: &FluentMessage<'m>) -> bool
fn ne(&self, other: &FluentMessage<'m>) -> bool
This method tests for !=
.
impl<'m> StructuralPartialEq for FluentMessage<'m>
Auto Trait Implementations
impl<'m> RefUnwindSafe for FluentMessage<'m>
impl<'m> Send for FluentMessage<'m>
impl<'m> Sync for FluentMessage<'m>
impl<'m> Unpin for FluentMessage<'m>
impl<'m> UnwindSafe for FluentMessage<'m>
Blanket Implementations
sourceimpl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
T: FloatComponent,
Swp: WhitePoint,
Dwp: WhitePoint,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
T: FloatComponent,
Swp: WhitePoint,
Dwp: WhitePoint,
D: AdaptFrom<S, Swp, Dwp, T>,
sourcefn adapt_into_using<M>(self, method: M) -> D where
M: TransformMatrix<Swp, Dwp, T>,
fn adapt_into_using<M>(self, method: M) -> D where
M: TransformMatrix<Swp, Dwp, T>,
Convert the source color to the destination color using the specified method Read more
sourcefn adapt_into(self) -> D
fn adapt_into(self) -> D
Convert the source color to the destination color using the bradford method by default Read more
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> 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>
sourceimpl<T, U> IntoColor<U> for T where
U: FromColor<T>,
impl<T, U> IntoColor<U> for T where
U: FromColor<T>,
sourcefn into_color(self) -> U
fn into_color(self) -> U
Convert into T with values clamped to the color defined bounds Read more
sourceimpl<T, U> IntoColorUnclamped<U> for T where
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for T where
U: FromColorUnclamped<T>,
sourcefn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
Convert into T. The resulting color might be invalid in its color space Read more
sourceimpl<T, U> TryIntoColor<U> for T where
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for T where
U: TryFromColor<T>,
sourcefn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
Convert into T, returning ok if the color is inside of its defined
range, otherwise an OutOfBounds
error is returned which contains
the unclamped color. Read more
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