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
span: Span
🔬 This is a nightly-only experimental API. (
rustc_private)The span for the current #[derive(Foo)] header.
attributes: Vec<Attribute>
🔬 This is a nightly-only experimental API. (
rustc_private)path: Path<'a>
🔬 This is a nightly-only experimental API. (
rustc_private)Path of the trait, including any type parameters
additional_bounds: Vec<Ty<'a>>
🔬 This is a nightly-only experimental API. (
rustc_private)Additional bounds required of any type parameters of the type, other than the current trait
generics: LifetimeBounds<'a>
🔬 This is a nightly-only experimental API. (
rustc_private)Any extra lifetimes and/or bounds, e.g. D: serialize::Decoder
is_unsafe: bool
🔬 This is a nightly-only experimental API. (
rustc_private)Is it an unsafe trait?
supports_unions: bool
🔬 This is a nightly-only experimental API. (
rustc_private)Can this trait be derived for unions?
methods: Vec<MethodDef<'a>>
🔬 This is a nightly-only experimental API. (
rustc_private)associated_types: Vec<(Ident, Ty<'a>)>
🔬 This is a nightly-only experimental API. (
rustc_private)Methods
impl<'a> TraitDef<'a>[src]
fn expand(&self,
cx: &mut ExtCtxt,
mitem: &MetaItem,
item: &'a Annotatable,
push: &mut FnMut(Annotatable))
cx: &mut ExtCtxt,
mitem: &MetaItem,
item: &'a Annotatable,
push: &mut FnMut(Annotatable))
🔬 This is a nightly-only experimental API. (
rustc_private)fn expand_ext(&self,
cx: &mut ExtCtxt,
mitem: &MetaItem,
item: &'a Annotatable,
push: &mut FnMut(Annotatable),
from_scratch: bool)
cx: &mut ExtCtxt,
mitem: &MetaItem,
item: &'a Annotatable,
push: &mut FnMut(Annotatable),
from_scratch: bool)
🔬 This is a nightly-only experimental API. (
rustc_private)