Trait syntax::ast_util::PostExpansionMethodUnstable [-] [+] [src]

pub trait PostExpansionMethod {
    fn pe_ident(&self) -> Ident;
    fn pe_generics<'a>(&'a self) -> &'a Generics;
    fn pe_abi(&self) -> Abi;
    fn pe_explicit_self<'a>(&'a self) -> &'a ExplicitSelf;
    fn pe_unsafety(&self) -> Unsafety;
    fn pe_fn_decl<'a>(&'a self) -> &'a FnDecl;
    fn pe_body<'a>(&'a self) -> &'a Block;
    fn pe_vis(&self) -> Visibility;
}

Macro invocations are guaranteed not to occur after expansion is complete. Extracting fields of a method requires a dynamic check to make sure that it's not a macro invocation. This check is guaranteed to succeed, assuming that the invocations are indeed gone.

Required Methods

fn pe_ident(&self) -> Ident

fn pe_generics<'a>(&'a self) -> &'a Generics

fn pe_abi(&self) -> Abi

fn pe_explicit_self<'a>(&'a self) -> &'a ExplicitSelf

fn pe_unsafety(&self) -> Unsafety

fn pe_fn_decl<'a>(&'a self) -> &'a FnDecl

fn pe_body<'a>(&'a self) -> &'a Block

fn pe_vis(&self) -> Visibility

Implementors