@@ -68,23 +68,20 @@ macro_rules! ast_fragments {
6868 /// Can also serve as an input and intermediate result for macro expansion operations.
6969 pub enum AstFragment {
7070 OptExpr ( Option <Box <ast:: Expr >>) ,
71- MethodReceiverExpr ( Box <ast:: Expr >) ,
7271 $( $Kind( $AstTy) , ) *
7372 }
7473
7574 /// "Discriminant" of an AST fragment.
7675 #[ derive( Copy , Clone , Debug , PartialEq , Eq ) ]
7776 pub enum AstFragmentKind {
7877 OptExpr ,
79- MethodReceiverExpr ,
8078 $( $Kind, ) *
8179 }
8280
8381 impl AstFragmentKind {
8482 pub fn name( self ) -> & ' static str {
8583 match self {
8684 AstFragmentKind :: OptExpr => "expression" ,
87- AstFragmentKind :: MethodReceiverExpr => "expression" ,
8885 $( AstFragmentKind :: $Kind => $kind_name, ) *
8986 }
9087 }
@@ -93,8 +90,6 @@ macro_rules! ast_fragments {
9390 match self {
9491 AstFragmentKind :: OptExpr =>
9592 result. make_expr( ) . map( Some ) . map( AstFragment :: OptExpr ) ,
96- AstFragmentKind :: MethodReceiverExpr =>
97- result. make_expr( ) . map( AstFragment :: MethodReceiverExpr ) ,
9893 $( AstFragmentKind :: $Kind => result. $make_ast( ) . map( AstFragment :: $Kind) , ) *
9994 }
10095 }
@@ -121,13 +116,6 @@ macro_rules! ast_fragments {
121116 }
122117 }
123118
124- pub ( crate ) fn make_method_receiver_expr( self ) -> Box <ast:: Expr > {
125- match self {
126- AstFragment :: MethodReceiverExpr ( expr) => expr,
127- _ => panic!( "AstFragment::make_method_receiver_expr called on the wrong kind of fragment" ) ,
128- }
129- }
130-
131119 $( pub fn $make_ast( self ) -> $AstTy {
132120 match self {
133121 AstFragment :: $Kind( ast) => ast,
@@ -146,7 +134,6 @@ macro_rules! ast_fragments {
146134 * opt_expr = vis. filter_map_expr( expr)
147135 }
148136 }
149- AstFragment :: MethodReceiverExpr ( expr) => vis. visit_method_receiver_expr( expr) ,
150137 $( $( AstFragment :: $Kind( ast) => vis. $visit_ast( ast) , ) ?) *
151138 $( $( AstFragment :: $Kind( ast) =>
152139 ast. flat_map_in_place( |ast| vis. $flat_map_ast_elt( ast, $( $args) * ) ) , ) ?) *
@@ -157,7 +144,6 @@ macro_rules! ast_fragments {
157144 match self {
158145 AstFragment :: OptExpr ( Some ( expr) ) => try_visit!( visitor. visit_expr( expr) ) ,
159146 AstFragment :: OptExpr ( None ) => { }
160- AstFragment :: MethodReceiverExpr ( expr) => try_visit!( visitor. visit_method_receiver_expr( expr) ) ,
161147 $( $( AstFragment :: $Kind( ast) => try_visit!( visitor. $visit_ast( ast) ) , ) ?) *
162148 $( $( AstFragment :: $Kind( ast) => walk_list!( visitor, $visit_ast_elt, & ast[ ..] , $( $args) * ) , ) ?) *
163149 }
@@ -180,6 +166,11 @@ ast_fragments! {
180166 one fn visit_expr;
181167 fn make_expr;
182168 }
169+ MethodReceiverExpr ( Box <ast:: Expr >) {
170+ "expression" ;
171+ one fn visit_method_receiver_expr;
172+ fn make_method_receiver_expr;
173+ }
183174 Pat ( Box <ast:: Pat >) {
184175 "pattern" ;
185176 one fn visit_pat;
0 commit comments