darling_core::options::from_meta

Struct FromMetaOptions

Source
pub struct FromMetaOptions {
    base: Core,
    from_word: Option<Callable>,
    from_none: Option<Callable>,
}

Fields§

§base: Core§from_word: Option<Callable>

Override for the default FromMeta::from_word method.

§from_none: Option<Callable>

Override for the default FromMeta::from_none method.

Implementations§

Source§

impl FromMetaOptions

Source

pub fn new(di: &DeriveInput) -> Result<Self>

Source

fn from_word(&self) -> Option<Cow<'_, Callable>>

Get the from_word method body, if one exists. This can come from direct use of #[darling(from_word = ...)] on the container or from use of #[darling(word)] on a unit variant.

Trait Implementations§

Source§

impl<'a> From<&'a FromMetaOptions> for FromMetaImpl<'a>

Source§

fn from(v: &'a FromMetaOptions) -> Self

Converts to this type from the input type.
Source§

impl ParseAttribute for FromMetaOptions

Source§

fn parse_nested(&mut self, mi: &Meta) -> Result<()>

Read a meta-item, and apply its values to the current instance.
Source§

fn parse_attributes(self, attrs: &[Attribute]) -> Result<Self>

Source§

impl ParseData for FromMetaOptions

Source§

fn parse_variant(&mut self, variant: &Variant) -> Result<()>

Apply the next found variant to the object, returning an error if parsing goes wrong.
Source§

fn parse_field(&mut self, field: &Field) -> Result<()>

Apply the next found struct field to the object, returning an error if parsing goes wrong.
Source§

fn validate_body(&self, errors: &mut Accumulator)

Perform validation checks that require data from more than one field or variant. The default implementation does no validations. Implementors can override this method as appropriate for their use-case.
Source§

fn parse_body(self, body: &Data) -> Result<Self>

Source§

impl ToTokens for FromMetaOptions

Source§

fn to_tokens(&self, tokens: &mut TokenStream)

Write self to the given TokenStream. Read more
Source§

fn to_token_stream(&self) -> TokenStream

Convert self directly into a TokenStream object. Read more
Source§

fn into_token_stream(self) -> TokenStream
where Self: Sized,

Convert self directly into a TokenStream object. Read more

Auto Trait Implementations§

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,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

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

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> Spanned for T
where T: Spanned + ?Sized,

Source§

fn span(&self) -> Span

Returns a Span covering the complete contents of this syntax tree node, or Span::call_site() if this node is empty.
Source§

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

Source§

type Error = Infallible

The type returned in the event of a conversion error.
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>,

Source§

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

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.