Enum darling::ast::Body
[−]
[src]
pub enum Body<V, F> { Enum(Vec<V>), Struct(VariantData<F>), }
A struct or enum body.
V
is the type which receives any encountered variants, and F
receives struct fields.
Variants
Enum(Vec<V>)
Struct(VariantData<F>)
Methods
impl<V, F> Body<V, F>
[src]
fn empty_from(src: &Body) -> Body<V, F>
[src]
Creates an empty body of the same shape as the passed-in body.
fn as_ref(&'a self) -> Body<&'a V, &'a F>
[src]
Creates a new Body<&'a V, &'a F>
instance from Body<V, F>
.
fn map_enum_variants<T, U>(self, map: T) -> Body<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.
fn map_struct_fields<T, U>(self, map: T) -> Body<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.
fn map_struct<T, U>(self, map: T) -> Body<V, U> where
T: FnMut(VariantData<F>) -> VariantData<U>,
[src]
T: FnMut(VariantData<F>) -> VariantData<U>,
Applies a function to the VariantData
if this is a struct.
fn take_struct(self) -> Option<VariantData<F>>
[src]
Consumes the Body
, returning VariantData<F>
if it was a struct.
fn take_enum(self) -> Option<Vec<V>>
[src]
Consumes the Body
, returning Vec<V>
if it was an enum.
fn is_enum(&self) -> bool
[src]
Returns true
if this instance is Body::Enum
.
fn is_struct(&self) -> bool
[src]
Returns true
if this instance is Body::Struct
.
impl<V, F> Body<V, F> where
F: FromField,
V: FromVariant,
[src]
F: FromField,
V: FromVariant,
fn try_from(body: &Body) -> Result<Body<V, F>, Error>
[src]
Attempt to convert from a syn::Body
instance.
Trait Implementations
impl<V, F> Clone for Body<V, F> where
F: Clone,
V: Clone,
[src]
F: Clone,
V: Clone,
impl<V, F> Eq for Body<V, F> where
F: Eq,
V: Eq,
[src]
F: Eq,
V: Eq,
impl<V, F> PartialEq<Body<V, F>> for Body<V, F> where
F: PartialEq<F>,
V: PartialEq<V>,
[src]
F: PartialEq<F>,
V: PartialEq<V>,
impl<V, F> Debug for Body<V, F> where
F: Debug,
V: Debug,
[src]
F: Debug,
V: Debug,