diplomat_core::ast::attrs

Enum StandardAttribute

source
pub(crate) enum StandardAttribute<'a> {
    String(String),
    List(&'a MetaList),
    Empty,
}
Expand description

Helper type for parsing standard attributes. A standard attribute typically will accept the forms:

  • #[attr = "foo"] and #[attr("foo")] for a simple string
  • #[attr(....)] for a more complicated context
  • #[attr] for a “defaulting” context

This allows attributes to parse simple string values without caring too much about the NameValue vs List representation and then attributes can choose to handle more complicated lists if they so desire.

Variants§

§

String(String)

§

List(&'a MetaList)

§

Empty

Implementations§

source§

impl<'a> StandardAttribute<'a>

source

pub(crate) fn from_meta(meta: &'a Meta) -> Result<Self, ()>

Parse from a Meta. Returns an error when no string value is specified in the path/namevalue forms.

Auto Trait Implementations§

§

impl<'a> Freeze for StandardAttribute<'a>

§

impl<'a> RefUnwindSafe for StandardAttribute<'a>

§

impl<'a> !Send for StandardAttribute<'a>

§

impl<'a> !Sync for StandardAttribute<'a>

§

impl<'a> Unpin for StandardAttribute<'a>

§

impl<'a> UnwindSafe for StandardAttribute<'a>

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, 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.