Trait syntax::ext::base::MacResult[][src]

pub trait MacResult {
    fn make_expr(self: Box<Self>) -> Option<P<Expr>> { ... }
fn make_items(self: Box<Self>) -> Option<SmallVector<P<Item>>> { ... }
fn make_impl_items(self: Box<Self>) -> Option<SmallVector<ImplItem>> { ... }
fn make_trait_items(self: Box<Self>) -> Option<SmallVector<TraitItem>> { ... }
fn make_foreign_items(self: Box<Self>) -> Option<SmallVector<ForeignItem>> { ... }
fn make_pat(self: Box<Self>) -> Option<P<Pat>> { ... }
fn make_stmts(self: Box<Self>) -> Option<SmallVector<Stmt>> { ... }
fn make_ty(self: Box<Self>) -> Option<P<Ty>> { ... } }

The result of a macro expansion. The return values of the various methods are spliced into the AST at the callsite of the macro.

Provided Methods

Create an expression.

Create zero or more items.

Create zero or more impl items.

Create zero or more trait items.

Create zero or more items in an extern {} block

Create a pattern.

Create zero or more statements.

By default this attempts to create an expression statement, returning None if that fails.

Implementors