[−][src]Trait rustc_expand::base::MacResult
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
pub fn make_expr(self: Box<Self>) -> Option<P<Expr>>[src]
Creates an expression.
pub fn make_items(self: Box<Self>) -> Option<SmallVec<[P<Item>; 1]>>[src]
Creates zero or more items.
pub fn make_impl_items(self: Box<Self>) -> Option<SmallVec<[P<AssocItem>; 1]>>[src]
Creates zero or more impl items.
pub fn make_trait_items(self: Box<Self>) -> Option<SmallVec<[P<AssocItem>; 1]>>[src]
Creates zero or more trait items.
pub fn make_foreign_items(
self: Box<Self>
) -> Option<SmallVec<[P<ForeignItem>; 1]>>[src]
self: Box<Self>
) -> Option<SmallVec<[P<ForeignItem>; 1]>>
Creates zero or more items in an extern {} block
pub fn make_pat(self: Box<Self>) -> Option<P<Pat>>[src]
Creates a pattern.
pub fn make_stmts(self: Box<Self>) -> Option<SmallVec<[Stmt; 1]>>[src]
Creates zero or more statements.
By default this attempts to create an expression statement, returning None if that fails.
pub fn make_ty(self: Box<Self>) -> Option<P<Ty>>[src]
pub fn make_arms(self: Box<Self>) -> Option<SmallVec<[Arm; 1]>>[src]
pub fn make_fields(self: Box<Self>) -> Option<SmallVec<[Field; 1]>>[src]
pub fn make_field_patterns(self: Box<Self>) -> Option<SmallVec<[FieldPat; 1]>>[src]
pub fn make_generic_params(
self: Box<Self>
) -> Option<SmallVec<[GenericParam; 1]>>[src]
self: Box<Self>
) -> Option<SmallVec<[GenericParam; 1]>>
pub fn make_params(self: Box<Self>) -> Option<SmallVec<[Param; 1]>>[src]
pub fn make_struct_fields(self: Box<Self>) -> Option<SmallVec<[StructField; 1]>>[src]
pub fn make_variants(self: Box<Self>) -> Option<SmallVec<[Variant; 1]>>[src]
Implementors
impl MacResult for DummyResult[src]
pub fn make_expr(self: Box<DummyResult>) -> Option<P<Expr>>[src]
pub fn make_pat(self: Box<DummyResult>) -> Option<P<Pat>>[src]
pub fn make_items(self: Box<DummyResult>) -> Option<SmallVec<[P<Item>; 1]>>[src]
pub fn make_impl_items(
self: Box<DummyResult>
) -> Option<SmallVec<[P<AssocItem>; 1]>>[src]
self: Box<DummyResult>
) -> Option<SmallVec<[P<AssocItem>; 1]>>
pub fn make_trait_items(
self: Box<DummyResult>
) -> Option<SmallVec<[P<AssocItem>; 1]>>[src]
self: Box<DummyResult>
) -> Option<SmallVec<[P<AssocItem>; 1]>>
pub fn make_foreign_items(
self: Box<Self>
) -> Option<SmallVec<[P<ForeignItem>; 1]>>[src]
self: Box<Self>
) -> Option<SmallVec<[P<ForeignItem>; 1]>>
pub fn make_stmts(self: Box<DummyResult>) -> Option<SmallVec<[Stmt; 1]>>[src]
pub fn make_ty(self: Box<DummyResult>) -> Option<P<Ty>>[src]
pub fn make_arms(self: Box<DummyResult>) -> Option<SmallVec<[Arm; 1]>>[src]
pub fn make_fields(self: Box<DummyResult>) -> Option<SmallVec<[Field; 1]>>[src]
pub fn make_field_patterns(
self: Box<DummyResult>
) -> Option<SmallVec<[FieldPat; 1]>>[src]
self: Box<DummyResult>
) -> Option<SmallVec<[FieldPat; 1]>>
pub fn make_generic_params(
self: Box<DummyResult>
) -> Option<SmallVec<[GenericParam; 1]>>[src]
self: Box<DummyResult>
) -> Option<SmallVec<[GenericParam; 1]>>
pub fn make_params(self: Box<DummyResult>) -> Option<SmallVec<[Param; 1]>>[src]
pub fn make_struct_fields(
self: Box<DummyResult>
) -> Option<SmallVec<[StructField; 1]>>[src]
self: Box<DummyResult>
) -> Option<SmallVec<[StructField; 1]>>
pub fn make_variants(self: Box<DummyResult>) -> Option<SmallVec<[Variant; 1]>>[src]
impl MacResult for MacEager[src]
pub fn make_expr(self: Box<Self>) -> Option<P<Expr>>[src]
pub fn make_items(self: Box<Self>) -> Option<SmallVec<[P<Item>; 1]>>[src]
pub fn make_impl_items(self: Box<Self>) -> Option<SmallVec<[P<AssocItem>; 1]>>[src]
pub fn make_trait_items(self: Box<Self>) -> Option<SmallVec<[P<AssocItem>; 1]>>[src]
pub fn make_foreign_items(
self: Box<Self>
) -> Option<SmallVec<[P<ForeignItem>; 1]>>[src]
self: Box<Self>
) -> Option<SmallVec<[P<ForeignItem>; 1]>>
pub fn make_stmts(self: Box<Self>) -> Option<SmallVec<[Stmt; 1]>>[src]
pub fn make_pat(self: Box<Self>) -> Option<P<Pat>>[src]
pub fn make_ty(self: Box<Self>) -> Option<P<Ty>>[src]
impl<'a> MacResult for ParserAnyMacro<'a>[src]
pub fn make_expr(self: Box<ParserAnyMacro<'a>>) -> Option<P<Expr>>[src]
pub fn make_pat(self: Box<ParserAnyMacro<'a>>) -> Option<P<Pat>>[src]
pub fn make_ty(self: Box<ParserAnyMacro<'a>>) -> Option<P<Ty>>[src]
pub fn make_stmts(self: Box<ParserAnyMacro<'a>>) -> Option<SmallVec<[Stmt; 1]>>[src]
pub fn make_items(
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[P<Item>; 1]>>[src]
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[P<Item>; 1]>>
pub fn make_trait_items(
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[P<AssocItem>; 1]>>[src]
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[P<AssocItem>; 1]>>
pub fn make_impl_items(
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[P<AssocItem>; 1]>>[src]
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[P<AssocItem>; 1]>>
pub fn make_foreign_items(
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[P<ForeignItem>; 1]>>[src]
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[P<ForeignItem>; 1]>>
pub fn make_arms(self: Box<ParserAnyMacro<'a>>) -> Option<SmallVec<[Arm; 1]>>[src]
pub fn make_fields(
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[Field; 1]>>[src]
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[Field; 1]>>
pub fn make_field_patterns(
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[FieldPat; 1]>>[src]
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[FieldPat; 1]>>
pub fn make_generic_params(
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[GenericParam; 1]>>[src]
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[GenericParam; 1]>>
pub fn make_params(
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[Param; 1]>>[src]
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[Param; 1]>>
pub fn make_struct_fields(
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[StructField; 1]>>[src]
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[StructField; 1]>>
pub fn make_variants(
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[Variant; 1]>>[src]
self: Box<ParserAnyMacro<'a>>
) -> Option<SmallVec<[Variant; 1]>>