[][src]Struct darling_core::error::Error

pub struct Error { /* fields omitted */ }

An error encountered during attribute parsing.

Given that most errors darling encounters represent code bugs in dependent crates, the internal structure of the error is deliberately opaque.

Methods

impl Error
[src]

Error-creation functions

pub fn custom<T: Display>(msg: T) -> Self
[src]

Creates a new error with a custom message.

pub fn duplicate_field(name: &str) -> Self
[src]

Creates a new error for a field that appears twice in the input.

pub fn missing_field(name: &str) -> Self
[src]

Creates a new error for a non-optional field that does not appear in the input.

pub fn unknown_field(name: &str) -> Self
[src]

Creates a new error for a field name that appears in the input but does not correspond to a known field.

pub fn unsupported_shape(shape: &str) -> Self
[src]

Creates a new error for a struct or variant that does not adhere to the supported shape.

pub fn unsupported_format(format: &str) -> Self
[src]

pub fn unexpected_type(ty: &str) -> Self
[src]

Creates a new error for a field which has an unexpected literal type.

pub fn unknown_value(value: &str) -> Self
[src]

Creates a new error for a value which doesn't match a set of expected literals.

pub fn too_few_items(min: usize) -> Self
[src]

Creates a new error for a list which did not get enough items to proceed.

pub fn too_many_items(max: usize) -> Self
[src]

Creates a new error when a list got more items than it supports. The max argument is the largest number of items the receiver could accept.

pub fn multiple(errors: Vec<Error>) -> Self
[src]

Bundle a set of multiple errors into a single Error instance.

Panics

This function will panic if errors.is_empty() == true.

impl Error
[src]

pub fn has_span(&self) -> bool
[src]

Check if this error is associated with a span in the token stream.

pub fn set_span(&mut self, span: Span)
[src]

pub fn with_span<T: Spanned>(self, node: &T) -> Self
[src]

Tie a span to the error if none is already present. This is used in darling::FromMeta to attach errors to the most specific possible location in the input source code.

pub fn flatten(self) -> Self
[src]

Recursively converts a tree of errors to a flattened list.

pub fn at<T: Display>(self, location: T) -> Self
[src]

Adds a location to the error, such as a field or variant. Locations must be added in reverse order of specificity.

pub fn len(&self) -> usize
[src]

Gets the number of individual errors in this error.

This function should never return 0, as it shouldn't be possible to construct a multi-error from an empty Vec.

Trait Implementations

impl IntoIterator for Error
[src]

type Item = Error

The type of the elements being iterated over.

type IntoIter = IntoIter

Which kind of iterator are we turning this into?

impl Debug for Error
[src]

impl Display for Error
[src]

impl Error for Error
[src]

fn source(&self) -> Option<&(dyn Error + 'static)>
1.30.0
[src]

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

Auto Trait Implementations

impl !Send for Error

impl !Sync for Error

Blanket Implementations

impl<T> From for T
[src]

impl<I> IntoIterator for I where
    I: Iterator
[src]

type Item = <I as Iterator>::Item

The type of the elements being iterated over.

type IntoIter = I

Which kind of iterator are we turning this into?

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

type Error = !

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

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

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

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

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]