aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax
Commit message (Collapse)AuthorAgeFilesLines
...
* Allow attributes on top level expressionpcpthm2019-03-194-0/+152
| | | | | | A top level expression is either - a expression statement or - the last expression in a block
* Merge #991bors[bot]2019-03-188-10/+88
|\ | | | | | | | | | | | | | | | | | | | | | | 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-188-10/+88
| | | | | | | | | | - Fix pub_expr - Fix incorrect parsing of crate::path
* | Merge #983bors[bot]2019-03-172-0/+217
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-172-0/+217
| | |
* | | Fix parse tree of attribute on match armpcpthm2019-03-173-118/+118
| |/ |/|
* | Allow attribute on struct literal fieldpcpthm2019-03-172-0/+48
| |
* | add name resolution from the old implAleksey Kladov2019-03-173-7/+5
|/ | | | unlike the old impl, this also handles macro imports across crates
* Add test for minus in inner patternMichael Chesser2019-03-142-0/+347
|
* Add test for async blockCaio2019-03-102-0/+32
|
* Add async keywordCaio2019-03-095-1/+21
|
* Add support for parsing multiple if and while-let patternsVille Penttinen2019-03-042-1/+164
|
* allow `mut ident` patterns in trait methodsAleksey Kladov2019-03-042-11/+26
| | | | closes #928
* allow aliases in underscoresAleksey Kladov2019-03-042-1/+17
| | | | | | | | this helps with use foo::Trait as _; syntax
* Merge #926bors[bot]2019-03-042-0/+50
|\ | | | | | | | | | | | | | | 926: allow vararg functions r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * allow vararg functionsAleksey Kladov2019-03-042-0/+50
| |
* | improve error recoveryAleksey Kladov2019-03-043-42/+70
|/ | | | parse the contents of error block as an expression
* Remove `TypeRef` from item opts which implement TypeAscriptionOwnerVille Penttinen2019-02-272-33/+14
|
* Add new trait TypeAscriptionOwnerVille Penttinen2019-02-263-9/+36
| | | | | This trait should be implemented for nodes which have an ascribed type, e.g. thing : Type. Such as let, const, static, param, named struct fields.
* rename type to type_alias in the AST as wellAleksey Kladov2019-02-2531-89/+89
|
* complete struct literalsAleksey Kladov2019-02-241-0/+6
|
* support upcastig in AST enumAleksey Kladov2019-02-242-0/+407
|
* introduce tree builderAleksey Kladov2019-02-233-20/+61
|
* renameAleksey Kladov2019-02-234-23/+19
|
* Merge #876bors[bot]2019-02-211-1/+6
|\ | | | | | | | | | | | | | | 876: Fix join_lines not adding a comma after join_single_expr_block with match arm r=matklad a=vipentti Fixes #868 Co-authored-by: Ville Penttinen <[email protected]>
| * Move `non_trivia_sibling` to `ra_syntax::algo`Ville Penttinen2019-02-211-1/+6
| |
* | add API guide to ra_syntaxAleksey Kladov2019-02-211-0/+173
|/
* simplify trait boundsAleksey Kladov2019-02-211-12/+18
|
* rearrange methodsAleksey Kladov2019-02-211-67/+67
|
* kill utils moduleAleksey Kladov2019-02-217-104/+96
|
* Ignore lockfile in fuzzAleksey Kladov2019-02-212-521/+1
| | | | It's too much trouble maintaining it
* docsAleksey Kladov2019-02-218-83/+104
|
* fix compilationAleksey Kladov2019-02-217-52/+31
|
* move parser to a separate crateAleksey Kladov2019-02-2121-4217/+0
|
* make grammar independent of syntax treeAleksey Kladov2019-02-212-14/+18
|
* minorAleksey Kladov2019-02-211-1/+1
|
* move whitespace handling to tree builderAleksey Kladov2019-02-214-188/+159
|
* move syntax error to parserAleksey Kladov2019-02-206-25/+24
|
* simplifyAleksey Kladov2019-02-205-29/+4
|
* remove TokenPosAleksey Kladov2019-02-203-49/+28
|
* flattern module structureAleksey Kladov2019-02-205-14/+30
|
* merge parse_impl and parser_apiAleksey Kladov2019-02-202-171/+102
|
* fix off by one errorAleksey Kladov2019-02-201-1/+1
|
* move abstract traits to topAleksey Kladov2019-02-204-65/+59
|
* switch to dynamic dispatch for TokenSourceAleksey Kladov2019-02-202-9/+7
| | | | | | | | | | | Benchmarks show no difference. This is probably because we are bottlenecked on memory allocations, and we should fix that, but we are not optimizing for performance just yet. changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch token-source # Changes to be committed: # modified: crates/ra_syntax/src/parsing/parser_api.rs # modified: crates/ra_syntax/src/parsing/parser_impl.rs #
* route parsing via TokenSource traitAleksey Kladov2019-02-203-64/+59
|
* rename Sink -> TreeSinkAleksey Kladov2019-02-203-8/+8
|
* fix testsAleksey Kladov2019-02-202-4/+7
|
* rearrange modules in a suggestd reading orderAleksey Kladov2019-02-202-9/+10
|
* flatten modulesAleksey Kladov2019-02-2015-40/+37
|