]> git.lizzy.rs Git - rust.git/commitdiff
parse_bottom_expr: extract common 'return' out.
authorMazdak Farrokhzad <twingoow@gmail.com>
Sun, 12 May 2019 00:01:32 +0000 (02:01 +0200)
committerMazdak Farrokhzad <twingoow@gmail.com>
Sun, 12 May 2019 00:01:32 +0000 (02:01 +0200)
src/libsyntax/parse/parser.rs

index 36ee1949ad587e65a491edd8944900a5d5b023b5..3eb5281e3b1693d3a9eafb98dc6da0582685ee6a 100644 (file)
@@ -2643,13 +2643,12 @@ fn parse_bottom_expr(&mut self) -> PResult<'a, P<Expr>> {
                     hi = path.span;
                     return Ok(self.mk_expr(lo.to(hi), ExprKind::Path(Some(qself), path), attrs));
                 }
                     hi = path.span;
                     return Ok(self.mk_expr(lo.to(hi), ExprKind::Path(Some(qself), path), attrs));
                 }
-                if self.span.rust_2018() && self.check_keyword(keywords::Async)
-                {
-                    if self.is_async_block() { // check for `async {` and `async move {`
-                        return self.parse_async_block(attrs);
+                if self.span.rust_2018() && self.check_keyword(keywords::Async) {
+                    return if self.is_async_block() { // check for `async {` and `async move {`
+                        self.parse_async_block(attrs)
                     } else {
                     } else {
-                        return self.parse_lambda_expr(attrs);
-                    }
+                        self.parse_lambda_expr(attrs)
+                    };
                 }
                 if self.check_keyword(keywords::Move) || self.check_keyword(keywords::Static) {
                     return self.parse_lambda_expr(attrs);
                 }
                 if self.check_keyword(keywords::Move) || self.check_keyword(keywords::Static) {
                     return self.parse_lambda_expr(attrs);