]> git.lizzy.rs Git - rust.git/commitdiff
Split up large `FnDecl` expression
authorJonas Schievink <jonasschievink@gmail.com>
Tue, 11 Feb 2020 11:03:52 +0000 (12:03 +0100)
committerJonas Schievink <jonasschievink@gmail.com>
Tue, 17 Mar 2020 21:17:31 +0000 (22:17 +0100)
src/librustc_ast_lowering/expr.rs

index 93e32e85efc4193a534fca90d8b9b4011c52a30f..f84efe2ba76f5e7ba05457cd28dfc3eccd316d85 100644 (file)
@@ -487,23 +487,22 @@ pub(super) fn make_async_expr(
 
         let task_context_id = self.resolver.next_node_id();
         let task_context_hid = self.lower_node_id(task_context_id);
+
+        let arg_ty = Ty { id: self.resolver.next_node_id(), kind: TyKind::Infer, span: DUMMY_SP };
+        let arg_pat = Pat {
+            id: task_context_id,
+            kind: PatKind::Ident(
+                BindingMode::ByValue(Mutability::Mut),
+                Ident::with_dummy_span(sym::_task_context),
+                None,
+            ),
+            span: DUMMY_SP,
+        };
         let ast_decl = FnDecl {
             inputs: vec![Param {
                 attrs: AttrVec::new(),
-                ty: AstP(Ty {
-                    id: self.resolver.next_node_id(),
-                    kind: TyKind::Infer,
-                    span: DUMMY_SP,
-                }),
-                pat: AstP(Pat {
-                    id: task_context_id,
-                    kind: PatKind::Ident(
-                        BindingMode::ByValue(Mutability::Mut),
-                        Ident::with_dummy_span(sym::_task_context),
-                        None,
-                    ),
-                    span: DUMMY_SP,
-                }),
+                ty: AstP(arg_ty),
+                pat: AstP(arg_pat),
                 id: self.resolver.next_node_id(),
                 span: DUMMY_SP,
                 is_placeholder: false,