Struct syntex_syntax::ext::base::MacEager [] [src]

pub struct MacEager {
    pub expr: Option<P<Expr>>,
    pub pat: Option<P<Pat>>,
    pub items: Option<SmallVector<P<Item>>>,
    pub impl_items: Option<SmallVector<ImplItem>>,
    pub trait_items: Option<SmallVector<TraitItem>>,
    pub stmts: Option<SmallVector<Stmt>>,
    pub ty: Option<P<Ty>>,
}

MacResult implementation for the common case where you've already built each form of AST that you might return.

Fields

expr: Option<P<Expr>> pat: Option<P<Pat>> items: Option<SmallVector<P<Item>>> impl_items: Option<SmallVector<ImplItem>> trait_items: Option<SmallVector<TraitItem>> stmts: Option<SmallVector<Stmt>> ty: Option<P<Ty>>

Methods

impl MacEager
[src]

fn expr(v: P<Expr>) -> Box<MacResult>

fn pat(v: P<Pat>) -> Box<MacResult>

fn items(v: SmallVector<P<Item>>) -> Box<MacResult>

fn impl_items(v: SmallVector<ImplItem>) -> Box<MacResult>

fn trait_items(v: SmallVector<TraitItem>) -> Box<MacResult>

fn stmts(v: SmallVector<Stmt>) -> Box<MacResult>

fn ty(v: P<Ty>) -> Box<MacResult>

Trait Implementations

impl Default for MacEager
[src]

fn default() -> MacEager

Returns the "default value" for a type. Read more

impl MacResult for MacEager
[src]

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<ImplItem>>

Create zero or more impl items.

fn make_trait_items(self: Box<Self>) -> Option<SmallVector<TraitItem>>

Create zero or more trait items.

fn make_stmts(self: Box<Self>) -> Option<SmallVector<Stmt>>

Create zero or more statements. Read more

fn make_pat(self: Box<Self>) -> Option<P<Pat>>

Create a pattern.

fn make_ty(self: Box<Self>) -> Option<P<Ty>>