@@ -63,21 +63,25 @@ impl Component {
63
63
self . $collection. remove( & id) ;
64
64
) ;
65
65
66
+ /* Todo: Parenthesis after $foo: are currently required in quote_tokens! to work around
67
+ * ambiguity between macro-by-example $name:kind style matchers. Clean up once
68
+ * rust-lang/rust#18775 is fixed.
69
+ */
66
70
let field_decl = quote_tokens ! ( context,
67
- pub $var_name: Option <$ty>,
71
+ pub $var_name: ( Option <$ty>) ,
68
72
) ;
69
73
let field_init = quote_tokens ! ( context,
70
- $var_name: None ,
74
+ $var_name: ( None ) ,
71
75
) ;
72
76
let field_set = quote_tokens ! ( context,
73
- $var_name: self . $collection. pop( id) ,
77
+ $var_name: ( self . $collection. pop( id) ) ,
74
78
) ;
75
79
76
80
let collection_decl = quote_tokens ! ( context,
77
- pub $collection: _r:: rustecs:: Components <$ty>,
81
+ pub $collection: ( _r:: rustecs:: Components <$ty>) ,
78
82
) ;
79
83
let collection_init = quote_tokens ! ( context,
80
- $collection: _r:: rustecs:: components( ) ,
84
+ $collection: ( _r:: rustecs:: components( ) ) ,
81
85
) ;
82
86
let collection_arg = quote_tokens ! ( context,
83
87
& mut _entities. $collection,
0 commit comments