Struct rustc_error_messages::FluentArgs
source · pub struct FluentArgs<'args>(Vec<(Cow<'args, str>, FluentValue<'args>)>);
Expand description
A map of arguments passed from the code to the localization to be used for message formatting.
§Example
use fluent_bundle::{FluentArgs, FluentBundle, FluentResource};
let mut args = FluentArgs::new();
args.set("user", "John");
args.set("emailCount", 5);
let res = FluentResource::try_new(r#"
msg-key = Hello, { $user }. You have { $emailCount } messages.
"#.to_string())
.expect("Failed to parse FTL.");
let mut bundle = FluentBundle::default();
// For this example, we'll turn on BiDi support.
// Please, be careful when doing it, it's a risky move.
bundle.set_use_isolating(false);
bundle.add_resource(res)
.expect("Failed to add a resource.");
let mut err = vec![];
let msg = bundle.get_message("msg-key")
.expect("Failed to retrieve a message.");
let value = msg.value()
.expect("Failed to retrieve a value.");
assert_eq!(
bundle.format_pattern(value, Some(&args), &mut err),
"Hello, John. You have 5 messages."
);
Tuple Fields§
§0: Vec<(Cow<'args, str>, FluentValue<'args>)>
Implementations§
source§impl<'args> FluentArgs<'args>
impl<'args> FluentArgs<'args>
pub fn new() -> FluentArgs<'args>
pub fn with_capacity(capacity: usize) -> FluentArgs<'args>
pub fn get<K>(&self, key: K) -> Option<&FluentValue<'args>>
pub fn set<K, V>(&mut self, key: K, value: V)
pub fn iter(&self) -> impl Iterator<Item = (&str, &FluentValue<'_>)>
Trait Implementations§
source§impl<'args> Debug for FluentArgs<'args>
impl<'args> Debug for FluentArgs<'args>
source§impl<'args> Default for FluentArgs<'args>
impl<'args> Default for FluentArgs<'args>
source§fn default() -> FluentArgs<'args>
fn default() -> FluentArgs<'args>
Returns the “default value” for a type. Read more
source§impl<'args, K, V> FromIterator<(K, V)> for FluentArgs<'args>
impl<'args, K, V> FromIterator<(K, V)> for FluentArgs<'args>
source§fn from_iter<I>(iter: I) -> FluentArgs<'args>where
I: IntoIterator<Item = (K, V)>,
fn from_iter<I>(iter: I) -> FluentArgs<'args>where
I: IntoIterator<Item = (K, V)>,
Creates a value from an iterator. Read more
source§impl<'args> IntoIterator for FluentArgs<'args>
impl<'args> IntoIterator for FluentArgs<'args>
Auto Trait Implementations§
impl<'args> !DynSend for FluentArgs<'args>
impl<'args> !DynSync for FluentArgs<'args>
impl<'args> Freeze for FluentArgs<'args>
impl<'args> !RefUnwindSafe for FluentArgs<'args>
impl<'args> Send for FluentArgs<'args>
impl<'args> !Sync for FluentArgs<'args>
impl<'args> Unpin for FluentArgs<'args>
impl<'args> !UnwindSafe for FluentArgs<'args>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> Filterable for T
impl<T> Filterable for T
source§fn filterable(
self,
filter_name: &'static str
) -> RequestFilterDataProvider<T, fn(_: DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str ) -> RequestFilterDataProvider<T, fn(_: DataRequest<'_>) -> bool>
Creates a filterable data provider with the given name for debugging. Read more
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<'a, T> Captures<'a> for Twhere
T: ?Sized,
impl<T> ErasedDestructor for Twhere
T: 'static,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 24 bytes