aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_parser/src/grammar/expressions
Commit message (Collapse)AuthorAgeFilesLines
* Remove parse error on array initializer attributesRyan Cumming2019-06-301-11/+0
| | | | | This is actually allowed by the `rustc` parser but most attributes will fail later due to attributes on expressions being experimental.
* Support attributes on array membersRyan Cumming2019-06-301-0/+28
| | | | | | | | | | | | Array members are allow to have attributes such as `#[cfg]`. This is a bit tricky as we don't know if the first expression is an initializer or a member until we encounter a `;`. This reuses a trick from `stmt` where we remember if we saw an attribute and then raise an error if the first expression ends up being an initializer. This isn't perfect as the error isn't correctly located on the attribute or initializer; it ends up immediately after the `;`.
* fix: box_patterncsmoe2019-06-191-0/+15
| | | | Change-Id: I45a856d74fb616d3bce33050f9e69d327186bd59
* [#1083] Try block syntax: fix testsAndrey Tkachenko2019-06-061-7/+7
|
* [#1083] Try block syntaxAndrey Tkachenko2019-06-061-1/+17
|
* apply T! macro where it is possibleSergey Parilin2019-05-151-72/+72
|
* Merge #1082bors[bot]2019-04-011-0/+1
|\ | | | | | | | | | | | | | | 1082: Async block in argument position r=matklad a=andreytkachenko Fixes case when async block appears in argument position Co-authored-by: Andrey Tkachenko <[email protected]>
| * Async block in argument positionAndrey Tkachenko2019-04-011-0/+1
| |
* | Async closure syntaxrobojumper2019-03-311-2/+12
|/
* recognize async movememoryruins2019-03-281-2/+2
|
* Allow attributes on top level expressionpcpthm2019-03-191-2/+2
| | | | | | A top level expression is either - a expression statement or - the last expression in a block
* Fix parse tree of attribute on match armpcpthm2019-03-171-15/+15
|
* Add async keywordCaio2019-03-091-0/+5
|
* Introduce pattern_list to parse pipe separated patternsVille Penttinen2019-03-051-10/+2
| | | | | pattern_list comes in two variants, one uses the default PAT_RECOVERY_SET as the recovery set, while other allows the user to provide a recovery set.
* Add support for parsing multiple if and while-let patternsVille Penttinen2019-03-041-0/+10
|
* move parser to a separate crateAleksey Kladov2019-02-211-0/+475