aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax
Commit message (Collapse)AuthorAgeFilesLines
...
* 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]>
| * ra_syntax: fix reparsing merging errors, also now reparse_token() reports errorsVeetaha2020-02-181-7/+50
| |
| * ra_syntax: migrate test data to 0-length text-range of SyntaxError when ↵Veetaha2020-02-1746-242/+242
| | | | | | | | constructed from TextUnit
| * ra_syntax: remove message() method and use only Display trait in SyntaxError ↵Veetaha2020-02-172-4/+1
| | | | | | | | as per matklad
| * ra_syntax: change module-level documentation for syntax_error to "see X" as ↵Veetaha2020-02-171-1/+1
| | | | | | | | per matklad
| * ra_syntax: followup fix for making SyntaxError::range() to return by valueVeetaha2020-02-171-1/+1
| |
| * ra_syntax: SyntaxError::range() now returns by valueVeetaha2020-02-173-11/+5
| |
| * ra_syntax: moved reexport declaration after imports as per matkladVeetaha2020-02-171-1/+2
| |
| * ra_syntax: Apply Aleksei Kladov suggestion about TextRange of TextUnitVeetaha2020-02-171-1/+1
| | | | | | Co-Authored-By: Aleksey Kladov <[email protected]>
| * Change semmantical analyzis to tree validation as per @matkladVeetaha2020-02-171-1/+1
| | | | | | Co-Authored-By: Aleksey Kladov <[email protected]>
| * ra_syntax: reshape SyntaxError for the sake of removing redundancyVeetaha2020-02-1754-629/+402
| |
* | Rename the binary to rust-analyzerAleksey Kladov2020-02-181-1/+1
|/
* Init implementation of structural search replaceMikhail Modin2020-02-141-1/+1
|
* Run cargo testHan Mertens2020-02-121-0/+26
|
* Run cargo xtask codegenHan Mertens2020-02-121-0/+1
|