pub struct DeriveDecl {
pub doc: Option<Doc>,
pub name: Ident,
pub methods: Vec<Method>,
pub span: Span,
}Expand description
A derive declaration (ADR-0058).
Holds a list of method declarations whose body refers to the host type
as Self. Methods are spliced into a host type’s method list when a
@derive(Name) directive on a struct or enum names this derive.
derive Drop {
fn __drop(self) {
comptime_unroll for f in @type_info(Self).fields {
drop(@field(self, f.name));
}
}
}Fields§
§doc: Option<Doc>ADR-0089: docstring attached to this derive.
name: IdentDerive name (e.g., Drop)
methods: Vec<Method>Method declarations inside the derive body
span: SpanSpan covering the entire derive item
Trait Implementations§
Source§impl Clone for DeriveDecl
impl Clone for DeriveDecl
Source§fn clone(&self) -> DeriveDecl
fn clone(&self) -> DeriveDecl
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DeriveDecl
impl Debug for DeriveDecl
Source§impl<'de> Deserialize<'de> for DeriveDecl
impl<'de> Deserialize<'de> for DeriveDecl
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for DeriveDecl
impl PartialEq for DeriveDecl
Source§impl Serialize for DeriveDecl
impl Serialize for DeriveDecl
impl Eq for DeriveDecl
impl StructuralPartialEq for DeriveDecl
Auto Trait Implementations§
impl Freeze for DeriveDecl
impl RefUnwindSafe for DeriveDecl
impl Send for DeriveDecl
impl Sync for DeriveDecl
impl Unpin for DeriveDecl
impl UnsafeUnpin for DeriveDecl
impl UnwindSafe for DeriveDecl
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<'src, T> IntoMaybe<'src, T> for Twhere
T: 'src,
impl<'src, T> IntoMaybe<'src, T> for Twhere
T: 'src,
§impl<'p, T> Seq<'p, T> for Twhere
T: Clone,
impl<'p, T> Seq<'p, T> for Twhere
T: Clone,
§type Iter<'a> = Once<&'a T>
where
T: 'a
type Iter<'a> = Once<&'a T> where T: 'a
An iterator over the items within this container, by reference.
§fn contains(&self, val: &T) -> boolwhere
T: PartialEq,
fn contains(&self, val: &T) -> boolwhere
T: PartialEq,
Check whether an item is contained within this sequence.
§fn to_maybe_ref<'b>(item: <T as Seq<'p, T>>::Item<'b>) -> Maybe<T, &'p T>where
'p: 'b,
fn to_maybe_ref<'b>(item: <T as Seq<'p, T>>::Item<'b>) -> Maybe<T, &'p T>where
'p: 'b,
Convert an item of the sequence into a [
MaybeRef].