pub enum FluentError {
    Overriding {
        kind: EntryKind,
        id: String,
    },
    ParserError(ParserError),
    ResolverError(ResolverError),
}
Expand description

Core error type for Fluent runtime system.

It contains three main types of errors that may come up during runtime use of the fluent-bundle crate.

Variants

Overriding

Fields

kind: EntryKind
id: String

An error which occurs when FluentBundle::add_resource adds entries that are already registered in a given FluentBundle.

Example

use fluent_bundle::{FluentBundle, FluentResource};
use unic_langid::langid;

let ftl_string = String::from("intro = Welcome, { $name }.");
let res1 = FluentResource::try_new(ftl_string)
    .expect("Could not parse an FTL string.");

let ftl_string = String::from("intro = Hi, { $name }.");
let res2 = FluentResource::try_new(ftl_string)
    .expect("Could not parse an FTL string.");

let langid_en = langid!("en-US");
let mut bundle = FluentBundle::new(vec![langid_en]);

bundle.add_resource(&res1)
    .expect("Failed to add FTL resources to the bundle.");

assert!(bundle.add_resource(&res2).is_err());

ParserError(ParserError)

ResolverError(ResolverError)

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

🔬This is a nightly-only experimental API. (provide_any)
Data providers should implement this method to provide all values they are able to provide by using demand. Read more
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
Converts the given value to a String. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.

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: 80 bytes

Size for each variant:

  • Overriding: 31 bytes
  • ParserError: 79 bytes
  • ResolverError: 63 bytes