diff --git a/src/expr.rs b/src/expr.rs
index 5dec492..2bd1099 100644
--- a/src/expr.rs
+++ b/src/expr.rs
@@ -956,7 +956,7 @@
         pub leading_vert: Option<Token![|]>,
         pub pats: Punctuated<Pat, Token![|]>,
         pub guard: Option<(Token![if], Box<Expr>)>,
-        pub rocket_token: Token![=>],
+        pub fat_arrow_token: Token![=>],
         pub body: Box<Expr>,
         pub comma: Option<Token![,]>,
     }
@@ -1935,7 +1935,7 @@
             leading_vert: option!(punct!(|)) >>
             pats: call!(Punctuated::parse_separated_nonempty) >>
             guard: option!(tuple!(keyword!(if), syn!(Expr))) >>
-            rocket: punct!(=>) >>
+            fat_arrow: punct!(=>) >>
             body: do_parse!(
                 expr: alt!(expr_nosemi | syn!(Expr)) >>
                 comma: switch!(value!(arm_expr_requires_comma(&expr)),
@@ -1950,7 +1950,7 @@
                 (expr, comma)
             ) >>
             (Arm {
-                rocket_token: rocket,
+                fat_arrow_token: fat_arrow,
                 attrs: attrs,
                 leading_vert: leading_vert,
                 pats: pats,
@@ -3358,7 +3358,7 @@
                 if_token.to_tokens(tokens);
                 guard.to_tokens(tokens);
             }
-            self.rocket_token.to_tokens(tokens);
+            self.fat_arrow_token.to_tokens(tokens);
             self.body.to_tokens(tokens);
             self.comma.to_tokens(tokens);
         }
diff --git a/src/gen/fold.rs b/src/gen/fold.rs
index 84523a1..e30906f 100644
--- a/src/gen/fold.rs
+++ b/src/gen/fold.rs
@@ -496,7 +496,7 @@
             Token ! [ if ](tokens_helper(_visitor, &(( it ) . 0).0)),
             Box::new(_visitor.fold_expr(* ( it ) . 1)),
         ) }),
-        rocket_token: Token ! [ => ](tokens_helper(_visitor, &(_i . rocket_token).0)),
+        fat_arrow_token: Token ! [ => ](tokens_helper(_visitor, &(_i . fat_arrow_token).0)),
         body: Box::new(_visitor.fold_expr(* _i . body)),
         comma: (_i . comma).map(|it| { Token ! [ , ](tokens_helper(_visitor, &(it).0)) }),
     }
diff --git a/src/gen/visit.rs b/src/gen/visit.rs
index 5af584f..abe2820 100644
--- a/src/gen/visit.rs
+++ b/src/gen/visit.rs
@@ -457,7 +457,7 @@
             tokens_helper(_visitor, &(& ( it ) . 0).0);
             _visitor.visit_expr(& * ( it ) . 1);
          };
-    tokens_helper(_visitor, &(& _i . rocket_token).0);
+    tokens_helper(_visitor, &(& _i . fat_arrow_token).0);
     _visitor.visit_expr(& * _i . body);
     if let Some(ref it) = _i . comma { tokens_helper(_visitor, &(it).0) };
 }
diff --git a/src/gen/visit_mut.rs b/src/gen/visit_mut.rs
index e81d52e..fcb842a 100644
--- a/src/gen/visit_mut.rs
+++ b/src/gen/visit_mut.rs
@@ -458,7 +458,7 @@
             tokens_helper(_visitor, &mut (& mut ( it ) . 0).0);
             _visitor.visit_expr_mut(& mut * ( it ) . 1);
          };
-    tokens_helper(_visitor, &mut (& mut _i . rocket_token).0);
+    tokens_helper(_visitor, &mut (& mut _i . fat_arrow_token).0);
     _visitor.visit_expr_mut(& mut * _i . body);
     if let Some(ref mut it) = _i . comma { tokens_helper(_visitor, &mut (it).0) };
 }
