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

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.

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

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.

Convert DiagnosticMessages to a string, performing translation if necessary.

Convert a DiagnosticMessage to a string, performing translation if necessary.

Implementors