Trait syntex_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<P<ImplItem>>> { ... } fn make_pat(self: Box<Self>) -> Option<P<Pat>> { ... } fn make_stmts(self: Box<Self>) -> Option<SmallVector<P<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
fn make_expr(self: Box<Self>) -> Option<P<Expr>>
Create an expression.
fn make_items(self: Box<Self>) -> Option<SmallVector<P<Item>>>
Create zero or more items.
fn make_impl_items(self: Box<Self>) -> Option<SmallVector<P<ImplItem>>>
Create zero or more impl items.
fn make_pat(self: Box<Self>) -> Option<P<Pat>>
Create a pattern.
fn make_stmts(self: Box<Self>) -> Option<SmallVector<P<Stmt>>>
Create zero or more statements.
By default this attempts to create an expression statement, returning None if that fails.
fn make_ty(self: Box<Self>) -> Option<P<Ty>>
Implementors
impl MacResult for MacEager
impl MacResult for DummyResult