Enum darling::ast::Data [−][src]
A struct or enum body.
V
is the type which receives any encountered variants, and F
receives struct fields.
Variants
Struct(Fields<F>)
Implementations
impl<V, F> Data<V, F>
[src]
impl<V, F> Data<V, F>
[src]pub fn empty_from(src: &Data) -> Data<V, F>
[src]
Creates an empty body of the same shape as the passed-in body.
pub fn as_ref(&'a self) -> Data<&'a V, &'a F>
[src]
Creates a new Data<&'a V, &'a F>
instance from Data<V, F>
.
pub fn map_enum_variants<T, U>(self, map: T) -> Data<U, F> where
T: FnMut(V) -> U,
[src]
T: FnMut(V) -> U,
Applies a function V -> U
on enum variants, if this is an enum.
pub fn map_struct_fields<T, U>(self, map: T) -> Data<V, U> where
T: FnMut(F) -> U,
[src]
T: FnMut(F) -> U,
Applies a function F -> U
on struct fields, if this is a struct.
pub fn map_struct<T, U>(self, map: T) -> Data<V, U> where
T: FnMut(Fields<F>) -> Fields<U>,
[src]
T: FnMut(Fields<F>) -> Fields<U>,
Applies a function to the Fields
if this is a struct.
pub fn take_struct(self) -> Option<Fields<F>>
[src]
Consumes the Data
, returning Fields<F>
if it was a struct.
pub fn take_enum(self) -> Option<Vec<V, Global>>
[src]
Consumes the Data
, returning Vec<V>
if it was an enum.
pub fn is_enum(&self) -> bool
[src]
Returns true
if this instance is Data::Enum
.
pub fn is_struct(&self) -> bool
[src]
Returns true
if this instance is Data::Struct
.
impl<V, F> Data<V, F> where
F: FromField,
V: FromVariant,
[src]
impl<V, F> Data<V, F> where
F: FromField,
V: FromVariant,
[src]Trait Implementations
impl<V, F> UsesLifetimes for Data<V, F> where
F: UsesLifetimes,
V: UsesLifetimes,
[src]
impl<V, F> UsesLifetimes for Data<V, F> where
F: UsesLifetimes,
V: UsesLifetimes,
[src]pub fn uses_lifetimes(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>
[src]
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>
pub fn uses_lifetimes_cloned(
&self,
options: &Options,
lifetimes: &HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
[src]
&self,
options: &Options,
lifetimes: &HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
impl<V, F> UsesTypeParams for Data<V, F> where
F: UsesTypeParams,
V: UsesTypeParams,
[src]
impl<V, F> UsesTypeParams for Data<V, F> where
F: UsesTypeParams,
V: UsesTypeParams,
[src]pub fn uses_type_params(
&self,
options: &Options,
type_set: &'a HashSet<Ident, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Ident, BuildHasherDefault<FnvHasher>>
[src]
&self,
options: &Options,
type_set: &'a HashSet<Ident, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Ident, BuildHasherDefault<FnvHasher>>
pub fn uses_type_params_cloned(
&self,
options: &Options,
type_set: &HashSet<Ident, BuildHasherDefault<FnvHasher>>
) -> HashSet<Ident, BuildHasherDefault<FnvHasher>>
[src]
&self,
options: &Options,
type_set: &HashSet<Ident, BuildHasherDefault<FnvHasher>>
) -> HashSet<Ident, BuildHasherDefault<FnvHasher>>
impl<V, F> Eq for Data<V, F> where
F: Eq,
V: Eq,
[src]
F: Eq,
V: Eq,
impl<V, F> StructuralEq for Data<V, F>
[src]
impl<V, F> StructuralPartialEq for Data<V, F>
[src]
Auto Trait Implementations
impl<V, F> RefUnwindSafe for Data<V, F> where
F: RefUnwindSafe,
V: RefUnwindSafe,
F: RefUnwindSafe,
V: RefUnwindSafe,
impl<V, F> Send for Data<V, F> where
F: Send,
V: Send,
F: Send,
V: Send,
impl<V, F> Sync for Data<V, F> where
F: Sync,
V: Sync,
F: Sync,
V: Sync,
impl<V, F> Unpin for Data<V, F> where
F: Unpin,
V: Unpin,
F: Unpin,
V: Unpin,
impl<V, F> UnwindSafe for Data<V, F> where
F: UnwindSafe,
V: UnwindSafe,
F: UnwindSafe,
V: UnwindSafe,