aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax
Commit message (Collapse)AuthorAgeFilesLines
* SimplifyAleksey Kladov2020-03-271-29/+28
|
* Get rid of ItemOrMacroAleksey Kladov2020-03-262-31/+10
|
* Fix parsing lambdas with return typeAleksey Kladov2020-03-253-14/+62
| | | | | | | We should eat only a single block, and not whatever larger expression may start with a block. closes #3721
* Remove dead codeAleksey Kladov2020-03-251-11/+0
|
* Merge #3708bors[bot]2020-03-242-67/+174
|\ | | | | | | | | | | | | | | | | | | | | 3708: Generalise syntax rewriting infrastructure to allow removal of nodes r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Generalise syntax rewriting infrastructure to allow removal of nodesAleksey Kladov2020-03-242-67/+174
| |
* | Merge #3705bors[bot]2020-03-241-3/+3
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3705: Align naming r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Align namingAleksey Kladov2020-03-241-3/+3
| | |
* | | fill match arms with empty block rather than unit tupleJosh Mcguigan2020-03-241-0/+3
|/ /
* | update itertools version to 0.9.0Josh Mcguigan2020-03-231-1/+1
| |
* | review commentsJosh Mcguigan2020-03-231-1/+6
| |
* | implement fill match arm assist for tuple of enumsJosh Mcguigan2020-03-231-0/+9
|/
* Add support for macro in symbo_indexEdwin Cheng2020-03-221-1/+12
|
* Add identity expansion checkingEdwin Cheng2020-03-211-0/+4
|
* Support arbitrary discriminantsAleksey Kladov2020-03-202-0/+31
| | | | Closes #3661
* GeneralizeAleksey Kladov2020-03-191-0/+4
|
* Use match_astAleksey Kladov2020-03-181-2/+2
|
* Merge imports assistAleksey Kladov2020-03-182-0/+34
| | | | Work towards #2220
* Strongly-typed generic methods for editing nodesAleksey Kladov2020-03-181-47/+49
|
* Merge #3540bors[bot]2020-03-161-1/+15
|\ | | | | | | | | | | | | | | 3540: Swtches to rust SSR query check r=matklad a=mikhail-m1 related to #3186 Co-authored-by: Mikhail Modin <[email protected]>
| * Swtches to rust SSR query checkMikhail Modin2020-03-151-1/+15
| |
* | Parse variadics correctlyAleksey Kladov2020-03-136-3/+145
| | | | | | | | closes #3571
* | Move verbose tests out of lineAleksey Kladov2020-03-138-56/+87
| |
* | Remove some TextUnit->usize escapeesCAD972020-03-132-7/+7
| |
* | Merge pull request #3562 from FireofGods/display_for_nodeAleksey Kladov2020-03-122-1/+636
|\ \ | | | | | | Add `std::fmt::Display` as a supertrait for `AstNode`
| * | implementing Display for enums too.Fireassember2020-03-111-0/+635
| | |
| * | added fmt::Display as a supertrait for AstNode and changed generation.Fireassember2020-03-061-1/+1
| | |
* | | Fix parsing of stement-ish binary expressionsAleksey Kladov2020-03-112-0/+41
| |/ |/| | | | | closes #3512
* | Add parse_to_token_treeEdwin Cheng2020-03-081-0/+6
|/
* make::use_itemAleksey Kladov2020-03-061-0/+4
|
* Simplify creation of `T[,]`Aleksey Kladov2020-03-062-13/+4
|
* Rerail split_import API onto ASTAleksey Kladov2020-03-062-0/+39
| | | | | The code is more verbose and less efficient now, but should be reusable in add_import context as well
* Add with_use_treeAleksey Kladov2020-03-051-0/+10
|
* Implement concat macroEdwin Cheng2020-03-031-1/+7
|
* Slightly refactor inlay hintsAleksey Kladov2020-02-291-1/+1
|
* Rename ast::ImplBlock -> ast::ImplDefAleksey Kladov2020-02-2927-46/+45
|
* Fix typoAleksey Kladov2020-02-291-1/+1
|
* Cleanup editing APIAleksey Kladov2020-02-292-9/+33
|
* More orthogonal API for building pathsAleksey Kladov2020-02-291-4/+7
|
* Parse attr in rhs of let stmtsEdwin Cheng2020-02-282-7/+35
|
* Refactor string literalsAleksey Kladov2020-02-271-60/+74
|
* Basic injectionsAleksey Kladov2020-02-271-0/+30
|
* Skip trival token in original_rangeEdwin Cheng2020-02-261-1/+13
|
* Refactor primary IDE APIAleksey Kladov2020-02-261-1/+6
| | | | | | | | | | This introduces the new type -- Semantics. Semantics maps SyntaxNodes to various semantic info, such as type, name resolution or macro expansions. To do so, Semantics maintains a HashMap which maps every node it saw to the file from which the node originated. This is enough to get all the necessary hir bits just from syntax.
* :arrow_up: rowanAleksey Kladov2020-02-251-1/+1
|
* Fix a crash with non-ascii whitespace in doc-commentsShotaro Yamada2020-02-191-2/+2
|
* Update versionsKirill Bulatov2020-02-181-6/+6
|
* Run cargo +nightly fix --clippy -Z unstable-optionsKirill Bulatov2020-02-184-12/+13
|
* Remove dat FIXMEVeetaha2020-02-181-1/+0
|
* Merge #3026bors[bot]2020-02-1855-642/+450
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3026: ra_syntax: reshape SyntaxError for the sake of removing redundancy r=matklad a=Veetaha Followup of #2911, also puts some crosses to the todo list of #223. **AHTUNG!** A big part of the diff of this PR are test data files changes. Simplified `SyntaxError` that was `SyntaxError { kind: { /* big enum */ }, location: Location }` to `SyntaxError(String, TextRange)`. I am not sure whether the tuple struct here is best fit, I am inclined to add names to the fields, because I already provide getters `SyntaxError::message()`, `SyntaxError::range()`. I also removed `Location` altogether ... This is currently WIP, because the following is not done: - [ ] ~~Add tests to `test_data` dir for unescape errors *// I don't know where to put these errors in particular, because they are out of the scope of the lexer and parser. However, I have an idea in mind that we move all validators we have right now to parsing stage, but this is up to discussion...*~~ **[UPD]** I came to a conclusion that tree validation logic, which unescape errors are a part of, should be rethought of, we currently have no tests and no place to put tests for tree validations. So I'd like to extract potential redesign (maybe move of tree validation to ra_parser) and adding tests for this into a separate task. Co-authored-by: Veetaha <[email protected]> Co-authored-by: Veetaha <[email protected]>