Struct darling_core::ast::Fields
source · pub struct Fields<T> {
pub style: Style,
pub fields: Vec<T>,
/* private fields */
}
Expand description
Equivalent to syn::Fields
, but replaces the AST element with a generic.
Fields§
§style: Style
§fields: Vec<T>
Implementations§
source§impl<T> Fields<T>
impl<T> Fields<T>
pub fn empty_from(vd: &Fields) -> Self
sourcepub fn split(self) -> (Style, Vec<T>)
pub fn split(self) -> (Style, Vec<T>)
Splits the Fields
into its style and fields for further processing.
Returns an empty Vec
for Unit
data.
sourcepub fn is_newtype(&self) -> bool
pub fn is_newtype(&self) -> bool
Returns true if this variant’s data makes it a newtype.
pub fn is_unit(&self) -> bool
pub fn is_tuple(&self) -> bool
pub fn is_struct(&self) -> bool
pub fn as_ref(&self) -> Fields<&T>
pub fn map<F, U>(self, map: F) -> Fields<U>where
F: FnMut(T) -> U,
pub fn iter(&self) -> Iter<'_, T>
Trait Implementations§
source§impl<T> IntoIterator for Fields<T>
impl<T> IntoIterator for Fields<T>
source§impl<T: ToTokens> ToTokens for Fields<T>
impl<T: ToTokens> ToTokens for Fields<T>
source§fn to_tokens(&self, tokens: &mut TokenStream)
fn to_tokens(&self, tokens: &mut TokenStream)
source§fn to_token_stream(&self) -> TokenStream
fn to_token_stream(&self) -> TokenStream
source§fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
source§impl<T: UsesLifetimes> UsesLifetimes for Fields<T>
impl<T: UsesLifetimes> UsesLifetimes for Fields<T>
source§fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a LifetimeSet,
) -> LifetimeRefSet<'a>
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Returns the subset of the queried lifetimes that are used by the implementing syntax element. Read more
source§fn uses_lifetimes_cloned(
&self,
options: &Options,
lifetimes: &LifetimeSet,
) -> LifetimeSet
fn uses_lifetimes_cloned( &self, options: &Options, lifetimes: &LifetimeSet, ) -> LifetimeSet
Find all used lifetimes, then clone them and return that set.
source§impl<T: UsesTypeParams> UsesTypeParams for Fields<T>
impl<T: UsesTypeParams> UsesTypeParams for Fields<T>
source§fn uses_type_params<'a>(
&self,
options: &Options,
type_set: &'a IdentSet,
) -> IdentRefSet<'a>
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a IdentSet, ) -> IdentRefSet<'a>
Returns the subset of the queried type parameters that are used by the implementing syntax element. Read more
impl<T: Eq> Eq for Fields<T>
Auto Trait Implementations§
impl<T> Freeze for Fields<T>
impl<T> RefUnwindSafe for Fields<T>where
T: RefUnwindSafe,
impl<T> !Send for Fields<T>
impl<T> !Sync for Fields<T>
impl<T> Unpin for Fields<T>where
T: Unpin,
impl<T> UnwindSafe for Fields<T>where
T: UnwindSafe,
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,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<'i, I, T> CollectLifetimes for T
impl<'i, I, T> CollectLifetimes for T
source§fn collect_lifetimes<'a>(
self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>,
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>
fn collect_lifetimes<'a>( self, options: &Options, lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>, ) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>
Consume an iterator, accumulating all lifetimes in the elements which occur in
lifetimes
.source§fn collect_lifetimes_cloned(
self,
options: &Options,
lifetimes: &HashSet<Lifetime, BuildHasherDefault<FnvHasher>>,
) -> HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
fn collect_lifetimes_cloned( self, options: &Options, lifetimes: &HashSet<Lifetime, BuildHasherDefault<FnvHasher>>, ) -> HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
Consume an iterator using
collect_lifetimes
, then clone all found lifetimes and return that set.source§impl<'i, T, I> CollectTypeParams for T
impl<'i, T, I> CollectTypeParams for T
source§fn collect_type_params<'a>(
self,
options: &Options,
type_set: &'a HashSet<Ident, BuildHasherDefault<FnvHasher>>,
) -> HashSet<&'a Ident, BuildHasherDefault<FnvHasher>>
fn collect_type_params<'a>( self, options: &Options, type_set: &'a HashSet<Ident, BuildHasherDefault<FnvHasher>>, ) -> HashSet<&'a Ident, BuildHasherDefault<FnvHasher>>
Consume an iterator, accumulating all type parameters in the elements which occur in
type_set
.source§fn collect_type_params_cloned(
self,
options: &Options,
type_set: &HashSet<Ident, BuildHasherDefault<FnvHasher>>,
) -> HashSet<Ident, BuildHasherDefault<FnvHasher>>
fn collect_type_params_cloned( self, options: &Options, type_set: &HashSet<Ident, BuildHasherDefault<FnvHasher>>, ) -> HashSet<Ident, BuildHasherDefault<FnvHasher>>
Consume an iterator using
collect_type_params
, then clone all found type params and return that set.source§impl<T> Spanned for Twhere
T: Spanned + ?Sized,
impl<T> Spanned for Twhere
T: Spanned + ?Sized,
source§fn span(&self) -> Span
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.