Struct syntax_ext::deriving::generic::TraitDef [] [src]

pub struct TraitDef<'a> {
    pub span: Span,
    pub attributes: Vec<Attribute>,
    pub path: Path<'a>,
    pub additional_bounds: Vec<Ty<'a>>,
    pub generics: LifetimeBounds<'a>,
    pub is_unsafe: bool,
    pub supports_unions: bool,
    pub methods: Vec<MethodDef<'a>>,
    pub associated_types: Vec<(Ident, Ty<'a>)>,
}
🔬 This is a nightly-only experimental API. (rustc_private)

Fields

🔬 This is a nightly-only experimental API. (rustc_private)

The span for the current #[derive(Foo)] header.

🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)

Path of the trait, including any type parameters

🔬 This is a nightly-only experimental API. (rustc_private)

Additional bounds required of any type parameters of the type, other than the current trait

🔬 This is a nightly-only experimental API. (rustc_private)

Any extra lifetimes and/or bounds, e.g. D: serialize::Decoder

🔬 This is a nightly-only experimental API. (rustc_private)

Is it an unsafe trait?

🔬 This is a nightly-only experimental API. (rustc_private)

Can this trait be derived for unions?

🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)

Methods

impl<'a> TraitDef<'a>
[src]

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)