diplomat_core::ast::modules

Enum DiplomatStructAttribute

source
enum DiplomatStructAttribute {
    Out,
    Opaque,
    OpaqueMut,
}
Expand description

Custom Diplomat attribute that can be placed on a struct definition.

Variants§

§

Out

The #[diplomat::out] attribute, used for non-opaque structs that contain an owned opaque in the form of a Box.

§

Opaque

The #[diplomat::opaque] attribute, used for marking a struct as opaque. Note that opaque structs can be borrowed in return types, but cannot be passed into a function behind a mutable reference.

§

OpaqueMut

The #[diplomat::opaque_mut] attribute, used for marking a struct as opaque and mutable. Note that mutable opaque structs can never be borrowed in return types (even immutably!), but can be passed into a function behind a mutable reference.

Implementations§

source§

impl DiplomatStructAttribute

source

fn parse(attrs: &[Attribute]) -> Result<Option<Self>, Vec<Self>>

Parses a DiplomatStructAttribute from an array of syn::Attributes. If more than one kind is found, an error is returned containing all the ones encountered, since all the current attributes are disjoint.

Trait Implementations§

source§

impl Debug for DiplomatStructAttribute

source§

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

Formats the value using the given formatter. 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, 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.