Trait rustc_errors::translation::Translate
source · pub trait Translate {
fn fluent_bundle(&self) -> Option<&Lrc<FluentBundle>>;
fn fallback_fluent_bundle(&self) -> &FluentBundle;
fn to_fluent_args<'arg>(
&self,
args: &[DiagnosticArg<'arg>]
) -> FluentArgs<'arg> { ... }
fn translate_messages(
&self,
messages: &[(DiagnosticMessage, Style)],
args: &FluentArgs<'_>
) -> Cow<'_, str> { ... }
fn translate_message<'a>(
&'a self,
message: &'a DiagnosticMessage,
args: &'a FluentArgs<'_>
) -> Cow<'_, str> { ... }
}
Required Methods
sourcefn fluent_bundle(&self) -> Option<&Lrc<FluentBundle>>
fn fluent_bundle(&self) -> Option<&Lrc<FluentBundle>>
Return FluentBundle
with localized diagnostics for the locale requested by the user. If no
language was requested by the user then this will be None
and fallback_fluent_bundle
should be used.
sourcefn fallback_fluent_bundle(&self) -> &FluentBundle
fn fallback_fluent_bundle(&self) -> &FluentBundle
Return FluentBundle
with localized diagnostics for the default locale of the compiler.
Used when the user has not requested a specific language or when a localized diagnostic is
unavailable for the requested locale.
Provided Methods
sourcefn to_fluent_args<'arg>(&self, args: &[DiagnosticArg<'arg>]) -> FluentArgs<'arg>
fn to_fluent_args<'arg>(&self, args: &[DiagnosticArg<'arg>]) -> FluentArgs<'arg>
Convert diagnostic arguments (a rustc internal type that exists to implement
Encodable
/Decodable
) into FluentArgs
which is necessary to perform translation.
Typically performed once for each diagnostic at the start of emit_diagnostic
and then
passed around as a reference thereafter.
sourcefn translate_messages(
&self,
messages: &[(DiagnosticMessage, Style)],
args: &FluentArgs<'_>
) -> Cow<'_, str>
fn translate_messages(
&self,
messages: &[(DiagnosticMessage, Style)],
args: &FluentArgs<'_>
) -> Cow<'_, str>
Convert DiagnosticMessage
s to a string, performing translation if necessary.
sourcefn translate_message<'a>(
&'a self,
message: &'a DiagnosticMessage,
args: &'a FluentArgs<'_>
) -> Cow<'_, str>
fn translate_message<'a>(
&'a self,
message: &'a DiagnosticMessage,
args: &'a FluentArgs<'_>
) -> Cow<'_, str>
Convert a DiagnosticMessage
to a string, performing translation if necessary.