# Enum config::ConfigError

source · [−]

    pub enum ConfigError {
        Frozen,
        NotFound(String),
        PathParse(ErrorKind),
        FileParse {
            uri: Option<String>,
            cause: Box<dyn Error + Send + Sync>,
        },
        Type {
            origin: Option<String>,
            unexpected: Unexpected,
            expected: &'static str,
            key: Option<String>,
        },
        Message(String),
        Foreign(Box<dyn Error + Send + Sync>),
    }

Expand description

Represents all possible errors that can occur when working with configuration.

## Variants

### `Frozen`

Configuration is frozen and no further mutations can be made.

### `NotFound(String)`

Configuration property was not found

### `PathParse(ErrorKind)`

Configuration path could not be parsed.

### `FileParse`

#### Fields

`uri: Option<String>`

The URI used to access the file (if not loaded from a string). Example: `/path/to/config.json`

`cause: Box<dyn Error + Send + Sync>`

The captured error from attempting to parse the file in its desired format. This is the actual error object from the library used for the parsing.

Configuration could not be parsed from file.

### `Type`

#### Fields

`origin: Option<String>`

The URI that references the source that the value came from. Example: `/path/to/config.json` or `Environment` or `etcd://localhost`

`unexpected: Unexpected`

What we found when parsing the value

`expected: &'static str`

What was expected when parsing the value

`key: Option<String>`

The key in the configuration hash of this value (if available where the error is generated).

Value could not be converted into the requested type.

### `Message(String)`

Custom message

### `Foreign(Box<dyn Error + Send + Sync>)`

Unadorned error from a foreign origin.

## Trait Implementations

source

### impl Debug for ConfigError

source

#### fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

source

### impl Display for ConfigError

source

#### fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

source

### impl Error for ConfigError

1.30.0 · source

#### fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more

1.0.0 · source

#### fn description(&self) -> &str

👎 Deprecated since 1.42.0:

use the Display impl or to_string()

Read more
1.0.0 · source

#### fn cause(&self) -> Option<&dyn Error>

👎 Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

source

#### fn provide(&'a self, req: &mut Demand<'a>)

🔬 This is a nightly-only experimental API. (`error_generic_member_access`)

Provides type based access to context intended for error reports. Read more

source

### impl Error for ConfigError

source

#### fn custom<T: Display>(msg: T) -> Self

Raised when there is general error when deserializing a type. Read more

source

#### fn invalid_type(unexp: Unexpected<'_>, exp: &dyn Expected) -> Self

Raised when a `Deserialize` receives a type different from what it was expecting. Read more

source

#### fn invalid_value(unexp: Unexpected<'_>, exp: &dyn Expected) -> Self

Raised when a `Deserialize` receives a value of the right type but that is wrong for some other reason. Read more

source

#### fn invalid_length(len: usize, exp: &dyn Expected) -> Self

Raised when deserializing a sequence or map and the input data contains too many or too few elements. Read more

source

#### fn unknown_variant(variant: &str, expected: &'static [&'static str]) -> Self

Raised when a `Deserialize` enum type received a variant with an unrecognized name. Read more

source

#### fn unknown_field(field: &str, expected: &'static [&'static str]) -> Self

Raised when a `Deserialize` struct type received a field with an unrecognized name. Read more

source

#### fn missing_field(field: &'static str) -> Self

Raised when a `Deserialize` struct type expected to receive a required field with a particular name but that field was not present in the input. Read more

source

#### fn duplicate_field(field: &'static str) -> Self

Raised when a `Deserialize` struct type received more than one of the same field. Read more

source

### impl Error for ConfigError

source

#### fn custom<T: Display>(msg: T) -> Self

Used when a `Serialize` implementation encounters any error while serializing a type. Read more

## Auto Trait Implementations

### impl !RefUnwindSafe for ConfigError

### impl Send for ConfigError

### impl Sync for ConfigError

### impl Unpin for ConfigError

### impl !UnwindSafe for ConfigError

## Blanket Implementations

source

### impl<T> Any for T where
T: 'static + ?Sized,

source

#### fn type_id(&self) -> TypeId

Gets the `TypeId` of `self`. Read more

source

### impl<T> Borrow<T> for T where
T: ?Sized,

const: unstable · source

#### fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more

source

### impl<T> BorrowMut<T> for T where
T: ?Sized,

const: unstable · source

#### fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more

source

### impl<T> From<T> for T

const: unstable · source

#### fn from(t: T) -> T

Returns the argument unchanged.

source

### impl<T, U> Into<U> for T where
U: From<T>,

const: unstable · source

#### fn into(self) -> U

Calls `U::from(self)`.

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

source

### impl<T> ToString for T where
T: Display + ?Sized,

source

#### default fn to_string(&self) -> String

Converts the given value to a `String`. Read more

source

### impl<T, U> TryFrom<U> for T where
U: Into<T>,

#### type Error = Infallible

The type returned in the event of a conversion error.

const: unstable · source

#### fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.

source

### impl<T, U> TryInto<U> for T where
U: TryFrom<T>,

#### type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

const: unstable · source

#### fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.