aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_parser/src/grammar/expressions.rs
Commit message (Collapse)AuthorAgeFilesLines
* Fix parsing <= in type_argsVille Penttinen2019-03-301-0/+1
|
* Replace `contract_child` to a less ad-hoc APIpcpthm2019-03-191-10/+10
|
* Error about attributes onpcpthm2019-03-191-12/+23
| | | | unallowed types of expression statement
* Allow attributes on top level expressionpcpthm2019-03-191-32/+51
| | | | | | A top level expression is either - a expression statement or - the last expression in a block
* Merge #991bors[bot]2019-03-181-2/+0
|\ | | | | | | | | | | | | | | | | | | | | | | 991: Use Marker argument for item parsers r=matklad a=pcpthm Before doing this for expressions, I found that the pattern (Marker argument) should be applied to the item parsers because visiblity and modifiers are parsed in a separate function. Fixed some parser bugs: - Fix pub_expr: `pub 42;` was allowed. - Fix incorrect parsing of crate::path: incorrectly parsed as `crate` as a visibility. Co-authored-by: pcpthm <[email protected]>
| * Use Marker argument for item parserspcpthm2019-03-181-2/+0
| | | | | | | | | | - Fix pub_expr - Fix incorrect parsing of crate::path
* | Merge #987bors[bot]2019-03-181-38/+32
|\| | | | | | | | | | | | | | | | | | | | | | | 987: Refactor maybe_item to use Marker argument r=pcpthm a=pcpthm As suggested at <https://github.com/rust-analyzer/rust-analyzer/pull/980#issuecomment-473659745>. For expression paring functions, changing signature - from `fn(&mut Parser) -> Option<CompletedMarker>` to `fn(&mut Parser, Marker) -> Result<CompletedMarker, Marker>` - from `fn(&mut Parser) -> CompletedMarker` to `fn(&mut Parser, Marker) -> CompletedMarker` is my plan. Co-authored-by: pcpthm <[email protected]>
| * Apply stylistic changes suggestedpcpthm2019-03-181-4/+4
| |
| * Refactor maybe_item to use Marker argumentpcpthm2019-03-171-39/+33
| |
* | Merge #983bors[bot]2019-03-171-0/+1
|\ \ | |/ |/| | | | | | | | | | | | | | | 983: support remainder assignment operator r=matklad a=JeanMertz `%=` was returning errors for me, turns out it wasn't added as a valid assignment operation. I'm not sure what the best location would be to add a test for this. Please let me know and I'll add one. Co-authored-by: Jean Mertz <[email protected]>
| * support remainder assignment operatorJean Mertz2019-03-171-0/+1
| |
* | Merge #985bors[bot]2019-03-171-57/+56
|\ \ | | | | | | | | | | | | | | | | | | | | | 985: simplify parsing blocks a bit r=pcpthm a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | simplify parsing blocks a bitAleksey Kladov2019-03-171-57/+56
| |/
* / Allow attribute on struct literal fieldpcpthm2019-03-171-1/+6
|/
* extract block contents into a functionAleksey Kladov2019-03-041-2/+6
|
* move parser to a separate crateAleksey Kladov2019-02-211-0/+473