Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fix parsing lambdas with return type | Aleksey Kladov | 2020-03-25 | 3 | -14/+62 |
| | | | | | | | We should eat only a single block, and not whatever larger expression may start with a block. closes #3721 | ||||
* | Remove dead code | Aleksey Kladov | 2020-03-25 | 1 | -11/+0 |
| | |||||
* | Merge #3708 | bors[bot] | 2020-03-24 | 2 | -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 nodes | Aleksey Kladov | 2020-03-24 | 2 | -67/+174 |
| | | |||||
* | | Merge #3705 | bors[bot] | 2020-03-24 | 1 | -3/+3 |
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3705: Align naming r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]> | ||||
| * | | Align naming | Aleksey Kladov | 2020-03-24 | 1 | -3/+3 |
| | | | |||||
* | | | fill match arms with empty block rather than unit tuple | Josh Mcguigan | 2020-03-24 | 1 | -0/+3 |
|/ / | |||||
* | | update itertools version to 0.9.0 | Josh Mcguigan | 2020-03-23 | 1 | -1/+1 |
| | | |||||
* | | review comments | Josh Mcguigan | 2020-03-23 | 1 | -1/+6 |
| | | |||||
* | | implement fill match arm assist for tuple of enums | Josh Mcguigan | 2020-03-23 | 1 | -0/+9 |
|/ | |||||
* | Add support for macro in symbo_index | Edwin Cheng | 2020-03-22 | 1 | -1/+12 |
| | |||||
* | Add identity expansion checking | Edwin Cheng | 2020-03-21 | 1 | -0/+4 |
| | |||||
* | Support arbitrary discriminants | Aleksey Kladov | 2020-03-20 | 2 | -0/+31 |
| | | | | Closes #3661 | ||||
* | Generalize | Aleksey Kladov | 2020-03-19 | 1 | -0/+4 |
| | |||||
* | Use match_ast | Aleksey Kladov | 2020-03-18 | 1 | -2/+2 |
| | |||||
* | Merge imports assist | Aleksey Kladov | 2020-03-18 | 2 | -0/+34 |
| | | | | Work towards #2220 | ||||
* | Strongly-typed generic methods for editing nodes | Aleksey Kladov | 2020-03-18 | 1 | -47/+49 |
| | |||||
* | Merge #3540 | bors[bot] | 2020-03-16 | 1 | -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 check | Mikhail Modin | 2020-03-15 | 1 | -1/+15 |
| | | |||||
* | | Parse variadics correctly | Aleksey Kladov | 2020-03-13 | 6 | -3/+145 |
| | | | | | | | | closes #3571 | ||||
* | | Move verbose tests out of line | Aleksey Kladov | 2020-03-13 | 8 | -56/+87 |
| | | |||||
* | | Remove some TextUnit->usize escapees | CAD97 | 2020-03-13 | 2 | -7/+7 |
| | | |||||
* | | Merge pull request #3562 from FireofGods/display_for_node | Aleksey Kladov | 2020-03-12 | 2 | -1/+636 |
|\ \ | | | | | | | Add `std::fmt::Display` as a supertrait for `AstNode` | ||||
| * | | implementing Display for enums too. | Fireassember | 2020-03-11 | 1 | -0/+635 |
| | | | |||||
| * | | added fmt::Display as a supertrait for AstNode and changed generation. | Fireassember | 2020-03-06 | 1 | -1/+1 |
| | | | |||||
* | | | Fix parsing of stement-ish binary expressions | Aleksey Kladov | 2020-03-11 | 2 | -0/+41 |
| |/ |/| | | | | | closes #3512 | ||||
* | | Add parse_to_token_tree | Edwin Cheng | 2020-03-08 | 1 | -0/+6 |
|/ | |||||
* | make::use_item | Aleksey Kladov | 2020-03-06 | 1 | -0/+4 |
| | |||||
* | Simplify creation of `T[,]` | Aleksey Kladov | 2020-03-06 | 2 | -13/+4 |
| | |||||
* | Rerail split_import API onto AST | Aleksey Kladov | 2020-03-06 | 2 | -0/+39 |
| | | | | | The code is more verbose and less efficient now, but should be reusable in add_import context as well | ||||
* | Add with_use_tree | Aleksey Kladov | 2020-03-05 | 1 | -0/+10 |
| | |||||
* | Implement concat macro | Edwin Cheng | 2020-03-03 | 1 | -1/+7 |
| | |||||
* | Slightly refactor inlay hints | Aleksey Kladov | 2020-02-29 | 1 | -1/+1 |
| | |||||
* | Rename ast::ImplBlock -> ast::ImplDef | Aleksey Kladov | 2020-02-29 | 27 | -46/+45 |
| | |||||
* | Fix typo | Aleksey Kladov | 2020-02-29 | 1 | -1/+1 |
| | |||||
* | Cleanup editing API | Aleksey Kladov | 2020-02-29 | 2 | -9/+33 |
| | |||||
* | More orthogonal API for building paths | Aleksey Kladov | 2020-02-29 | 1 | -4/+7 |
| | |||||
* | Parse attr in rhs of let stmts | Edwin Cheng | 2020-02-28 | 2 | -7/+35 |
| | |||||
* | Refactor string literals | Aleksey Kladov | 2020-02-27 | 1 | -60/+74 |
| | |||||
* | Basic injections | Aleksey Kladov | 2020-02-27 | 1 | -0/+30 |
| | |||||
* | Skip trival token in original_range | Edwin Cheng | 2020-02-26 | 1 | -1/+13 |
| | |||||
* | Refactor primary IDE API | Aleksey Kladov | 2020-02-26 | 1 | -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: rowan | Aleksey Kladov | 2020-02-25 | 1 | -1/+1 |
| | |||||
* | Fix a crash with non-ascii whitespace in doc-comments | Shotaro Yamada | 2020-02-19 | 1 | -2/+2 |
| | |||||
* | Update versions | Kirill Bulatov | 2020-02-18 | 1 | -6/+6 |
| | |||||
* | Run cargo +nightly fix --clippy -Z unstable-options | Kirill Bulatov | 2020-02-18 | 4 | -12/+13 |
| | |||||
* | Remove dat FIXME | Veetaha | 2020-02-18 | 1 | -1/+0 |
| | |||||
* | Merge #3026 | bors[bot] | 2020-02-18 | 55 | -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 errors | Veetaha | 2020-02-18 | 1 | -7/+50 |
| | | |||||
| * | ra_syntax: migrate test data to 0-length text-range of SyntaxError when ↵ | Veetaha | 2020-02-17 | 46 | -242/+242 |
| | | | | | | | | constructed from TextUnit |