Struct reproto_core::RpEnumBody
[−]
[src]
pub struct RpEnumBody<F: 'static> where
F: Flavor, { pub name: F::Name, pub ident: String, pub comment: Vec<String>, pub decls: Vec<RpDecl<F>>, pub enum_type: F::EnumType, pub variants: RpVariants<F>, pub codes: Vec<Loc<RpCode>>, }
Fields
name: F::Name
ident: String
comment: Vec<String>
decls: Vec<RpDecl<F>>
enum_type: F::EnumType
The type of the variant.
variants: RpVariants<F>
Variants in the enum.
codes: Vec<Loc<RpCode>>
Custom code blocks in the enum.
Trait Implementations
impl<F: Debug + 'static> Debug for RpEnumBody<F> where
F: Flavor,
F::Name: Debug,
F::EnumType: Debug,
[src]
F: Flavor,
F::Name: Debug,
F::EnumType: Debug,
fn fmt(&self, __arg_0: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more
impl<F: Clone + 'static> Clone for RpEnumBody<F> where
F: Flavor,
F::Name: Clone,
F::EnumType: Clone,
[src]
F: Flavor,
F::Name: Clone,
F::EnumType: Clone,
fn clone(&self) -> RpEnumBody<F>
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<F: 'static, T> Translate<T> for RpEnumBody<F> where
F: Flavor,
T: Translator<Source = F>,
[src]
F: Flavor,
T: Translator<Source = F>,
type Source = F
type Out = RpEnumBody<T::Target>
fn translate(
self,
diag: &mut Diagnostics,
translator: &T
) -> Result<RpEnumBody<T::Target>>
[src]
self,
diag: &mut Diagnostics,
translator: &T
) -> Result<RpEnumBody<T::Target>>
Translate into different flavor.
Auto Trait Implementations
impl<F> Send for RpEnumBody<F> where
<F as Flavor>::Endpoint: Send,
<F as Flavor>::EnumType: Send,
<F as Flavor>::Field: Send,
<F as Flavor>::Name: Send,
<F as Flavor>::Endpoint: Send,
<F as Flavor>::EnumType: Send,
<F as Flavor>::Field: Send,
<F as Flavor>::Name: Send,
impl<F> Sync for RpEnumBody<F> where
<F as Flavor>::Endpoint: Sync,
<F as Flavor>::EnumType: Sync,
<F as Flavor>::Field: Sync,
<F as Flavor>::Name: Sync,
<F as Flavor>::Endpoint: Sync,
<F as Flavor>::EnumType: Sync,
<F as Flavor>::Field: Sync,
<F as Flavor>::Name: Sync,