Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Make records grammar more orthogonal | Aleksey Kladov | 2020-04-11 | 1 | -12/+25 | |
| | | | | | | | | | | | | We used name [: expr] grammar before, now it is [name :] expr which makes things simpler | |||||
* | Rename some tokens | Aleksey Kladov | 2020-04-10 | 2 | -3/+15 | |
| | ||||||
* | Add L_DOLLAR for TYPE_RECOVERY_SET | Edwin Cheng | 2020-04-08 | 1 | -1/+1 | |
| | ||||||
* | Macro patterns are not confused with expressions. | Aleksey Kladov | 2020-04-03 | 1 | -2/+2 | |
| | | | | | | | | | | | We treat macro calls as expressions (there's appropriate Into impl), which causes problem if there's expresison and non-expression macro in the same node (like in the match arm). We fix this problem by nesting macor patterns into another node (the same way we nest path into PathExpr or PathPat). Ideally, we probably should add a similar nesting for macro expressions, but that needs some careful thinking about macros in blocks: `{ am_i_expression!() }`. | |||||
* | Cleanups | Aleksey Kladov | 2020-04-03 | 2 | -14/+13 | |
| | ||||||
* | Fix parsing lambdas with return type | Aleksey Kladov | 2020-03-25 | 1 | -7/+13 | |
| | | | | | | | We should eat only a single block, and not whatever larger expression may start with a block. closes #3721 | |||||
* | Support arbitrary discriminants | Aleksey Kladov | 2020-03-20 | 1 | -4/+6 | |
| | | | | Closes #3661 | |||||
* | Better fix for stuck parser? | Florian Diebold | 2020-03-16 | 1 | -3/+3 | |
| | ||||||
* | Get tests working | Florian Diebold | 2020-03-16 | 1 | -2/+2 | |
| | ||||||
* | Parse variadics correctly | Aleksey Kladov | 2020-03-13 | 1 | -11/+33 | |
| | | | | closes #3571 | |||||
* | Move verbose tests out of line | Aleksey Kladov | 2020-03-13 | 1 | -20/+2 | |
| | ||||||
* | Fix parsing of stement-ish binary expressions | Aleksey Kladov | 2020-03-11 | 1 | -2/+8 | |
| | | | | closes #3512 | |||||
* | Rename ast::ImplBlock -> ast::ImplDef | Aleksey Kladov | 2020-02-29 | 2 | -5/+5 | |
| | ||||||
* | Parse attr in rhs of let stmts | Edwin Cheng | 2020-02-28 | 1 | -1/+2 | |
| | ||||||
* | More manual clippy fixes | Kirill Bulatov | 2020-02-18 | 1 | -1/+1 | |
| | ||||||
* | Run cargo +nightly fix --clippy -Z unstable-options | Kirill Bulatov | 2020-02-18 | 2 | -5/+3 | |
| | ||||||
* | Add test for unnamed argument in function pointer | Han Mertens | 2020-02-12 | 1 | -0/+3 | |
| | ||||||
* | Support unnamed arguments in function pointers | Han Mertens | 2020-02-12 | 1 | -1/+1 | |
| | | | | Fixes #3089 | |||||
* | Address review comments | Matthew Jasper | 2020-02-10 | 1 | -7/+8 | |
| | ||||||
* | Add or- and parenthesized-patterns | Matthew Jasper | 2020-02-09 | 3 | -14/+60 | |
| | ||||||
* | Merge #3047 | bors[bot] | 2020-02-07 | 1 | -9/+9 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | 3047: Update async unsafe fn ordering in parser r=matklad a=kiljacken As of rust-lang/rust#61319 the correct order for functions that are both unsafe and async is: `async unsafe fn` and not `unsafe async fn`. This commit updates the parser tests to reflect this, and corrects parsing behavior to accept the correct ordering. Fixes #3025 Co-authored-by: Emil Lauridsen <[email protected]> | |||||
| * | Update async unsafe fn ordering. | Emil Lauridsen | 2020-02-07 | 1 | -9/+9 | |
| | | | | | | | | | | | | | | | | | | | | As of rust-lang/rust#61319 the correct order for functions that are both unsafe and async is: `async unsafe fn` and not `unsafe async fn`. This commit updates the parser tests to reflect this, and corrects parsing behavior to accept the correct ordering. Fixes #3025 | |||||
* | | PR tweaks | Toby Dimmick | 2020-02-07 | 3 | -21/+18 | |
| | | ||||||
* | | Closure params test | Toby Dimmick | 2020-02-06 | 1 | -0/+4 | |
| | | ||||||
* | | rustfmt | Toby Dimmick | 2020-02-06 | 1 | -2/+2 | |
| | | ||||||
* | | Rework value parameter parsing | Toby Dimmick | 2020-02-06 | 5 | -55/+73 | |
|/ | | | | | | | - `Fn__(...)` parameters with idents/patterns no longer parse - Trait function parameters with arbitrary patterns parse - Trait function parameters without idents/patterns no longer parse - `fn(...)` parameters no longer parse with patterns other than a single ident | |||||
* | Nest attrs into exprs in function args | Aleksey Kladov | 2020-01-17 | 1 | -4/+1 | |
| | ||||||
* | Extract expr_with_attrs | Aleksey Kladov | 2020-01-17 | 2 | -13/+22 | |
| | ||||||
* | Merge pull request #2813 from jyn514/arg_attributes | Aleksey Kladov | 2020-01-17 | 1 | -0/+5 | |
|\ | | | | | Allow attributes before function arguments | |||||
| * | move inline function closer to relevant code | Joshua Nelson | 2020-01-17 | 1 | -4/+4 | |
| | | | | | | | | also updates generated inline tests | |||||
| * | shrink inline tes | Joshua Nelson | 2020-01-16 | 1 | -9/+3 | |
| | | ||||||
| * | Allow attributes before function arguments | Joshua Nelson | 2020-01-12 | 1 | -0/+11 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for function calls of the form: ```rust ( #[attr(...)] 1.2, #[attr_one(...)] #[attr_two(...)] 1.5, ... etc ... ) ``` Closes https://github.com/rust-analyzer/rust-analyzer/issues/2801 | |||||
* | | Minimize test | Aleksey Kladov | 2020-01-16 | 1 | -13/+3 | |
| | | ||||||
* | | Simplify array parsing | Aleksey Kladov | 2020-01-16 | 2 | -48/+31 | |
| | | ||||||
* | | fix formating | Edwin Cheng | 2020-01-16 | 1 | -1/+1 | |
| | | ||||||
* | | Fix array element attribute position | Edwin Cheng | 2020-01-16 | 3 | -8/+32 | |
|/ | ||||||
* | Parse trait aliases | Emil Lauridsen | 2020-01-09 | 1 | -0/+10 | |
| | ||||||
* | Improve const generics parsing | Michael Chesser | 2020-01-06 | 2 | -2/+13 | |
| | | | | | - Handle const generics type args - Fix issue with const generic as first parameter in trait impl | |||||
* | Merge #2642 | bors[bot] | 2019-12-22 | 1 | -1/+1 | |
|\ | | | | | | | | | | | | | | | 2642: Use name instead of ident in parser for macro 2.0 syntax r=matklad a=edwin0cheng Co-authored-by: Edwin Cheng <[email protected]> | |||||
| * | Use name instead of ident for macro 2.0 sytnax | Edwin Cheng | 2019-12-22 | 1 | -1/+1 | |
| | | ||||||
* | | Merge #2641 | bors[bot] | 2019-12-22 | 1 | -0/+11 | |
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | 2641: Parse const generics r=matklad a=roblabla Adds very primitive support for parsing const generics (`const IDENT: TY`) so that rust-analyzer stops complaining about the syntax being invalid. Fixes #1574 Fixes #2281 Co-authored-by: roblabla <[email protected]> | |||||
| * | Parse const generics | roblabla | 2019-12-22 | 1 | -0/+11 | |
| | | | | | | | | | | Fixes #1574 Fixes #2281 | |||||
* | | Add macro keyword to ITEM_RECOVERY_SET | Edwin Cheng | 2019-12-21 | 1 | -1/+1 | |
| | | ||||||
* | | Add macro 2.0 support in parser | Edwin Cheng | 2019-12-21 | 1 | -0/+28 | |
| | | ||||||
* | | Fix parser for macro call in pattern position | Edwin Cheng | 2019-12-20 | 1 | -1/+1 | |
|/ | ||||||
* | Touch up TokenSet a bit | Aleksey Kladov | 2019-12-19 | 1 | -1/+1 | |
| | ||||||
* | Fix parsing of interpolated expressions | Aleksey Kladov | 2019-12-19 | 1 | -0/+1 | |
| | ||||||
* | Improve recovery for incomplete lambdas | Aleksey Kladov | 2019-12-17 | 1 | -1/+6 | |
| | ||||||
* | Fix hir for ast::UnionDef | Aleksey Kladov | 2019-11-25 | 1 | -1/+1 | |
| | ||||||
* | Introduce dedicated AST node for union | Aleksey Kladov | 2019-11-25 | 2 | -12/+21 | |
| | | | | | | | | | | Although structs and unions have the same syntax and differ only in the keyword, re-using the single syntax node for both of them leads to confusion in practice, and propagates further down the hir in an upleasent way. Moreover, static and consts also share syntax, but we use different nodes for them. |