aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Remove deps on tt_mbeEdwin Cheng2020-03-2610-49/+58
|
* Refactoring a bitEdwin Cheng2020-03-261-7/+12
|
* Add ProcMacroClientEdwin Cheng2020-03-2517-43/+222
|
* Add ra_proc_macroEdwin Cheng2020-03-253-0/+28
|
* Merge #3723bors[bot]2020-03-252-2/+2
|\ | | | | | | | | | | | | | | 3723: Fix typo of visibility_of r=edwin0cheng a=edwin0cheng cc @kjeremy Co-authored-by: Edwin Cheng <[email protected]>
| * fix typo of visibility_ofEdwin Cheng2020-03-252-2/+2
|/
* Merge #3722bors[bot]2020-03-254-21/+75
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3722: Fix parsing lambdas with return type r=matklad a=matklad We should eat only a single block, and not whatever larger expression may start with a block. closes #3721 bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Fix parsing lambdas with return typeAleksey Kladov2020-03-254-21/+75
| | | | | | | | | | | | | | We should eat only a single block, and not whatever larger expression may start with a block. closes #3721
* | Merge #3718bors[bot]2020-03-253-30/+55
|\ \ | |/ |/| | | | | | | | | | | | | 3718: Fix couple of assists r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Fix add visibility false-positiveAleksey Kladov2020-03-252-12/+29
| |
| * Preserve relative ordering of grouped assistsAleksey Kladov2020-03-251-18/+26
|/
* Merge #3717bors[bot]2020-03-253-23/+51
|\ | | | | | | | | | | | | | | | | | | | | 3717: Always expand macros during analysis r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Always expand macros during analysisAleksey Kladov2020-03-253-23/+51
| |
* | Merge #3692bors[bot]2020-03-2510-28/+144
|\ \ | |/ |/| | | | | | | | | | | | | | | 3692: Introduce `MacroDefKind::CustomDerive` r=matklad a=edwin0cheng This PR introduce a new `MacroDefKind` `CustomDerive`. And use a new `ProcMacroExpander` for its expanding. And the expander is a dummy for now. Related: #3654 Co-authored-by: Edwin Cheng <[email protected]>
| * Remove collect proc_macro definitionsEdwin Cheng2020-03-252-29/+25
| |
| * Fix trailling whitespaceEdwin Cheng2020-03-251-1/+1
| |
| * Rename to CustomDeriveEdwin Cheng2020-03-255-5/+5
| |
| * Refactoring a bitEdwin Cheng2020-03-253-15/+10
| |
| * Use dummy implementationEdwin Cheng2020-03-251-2/+3
| |
| * Add basic custom derive loweringEdwin Cheng2020-03-2511-28/+152
|/
* Merge #3714bors[bot]2020-03-251-1/+1
|\ | | | | | | | | | | | | | | | | | | | | 3714: Use the right arch name for x86 (32 bit) r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Use the right arch name for x86 (32 bit)Aleksey Kladov2020-03-251-1/+1
| |
* | Merge #3713bors[bot]2020-03-251-11/+0
|\ \ | |/ |/| | | | | | | | | | | | | | | | | 3713: Remove dead code r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Remove dead codeAleksey Kladov2020-03-251-11/+0
|/
* Merge #3707bors[bot]2020-03-255-59/+50
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3707: Add ItemScope::visibility_of r=matklad a=edwin0cheng ~This PR implements `HasVisibility` for various constructs and change `Definition::search_scope` to use `Visibility` directly instead of depends on ad-hoc string parsing.~ This PR added `visibility_of` in `ItemScope` and `Module` and use it directly directly instead of depends on ad-hoc string parsing. And also add a FIXME to indicate that there is a bug which do not search child-submodules in other files recursively in `Definition::search_scope`. I will submit another PR to fix that bug after this is merged. cc @flodiebold Co-authored-by: Edwin Cheng <[email protected]>
| * Use visibility_of in searchEdwin Cheng2020-03-241-35/+31
| |
| * Add ItemScope::visibility_ofEdwin Cheng2020-03-244-24/+19
| |
* | Merge #3710bors[bot]2020-03-2411-9/+218
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3710: Inlay hints for method chaining pattern r=matklad a=M-J-Hooper This PR adds inlay hints on method call chains: ![image](https://user-images.githubusercontent.com/13765376/77472008-8dc2a880-6e13-11ea-9c18-2c2e2b809799.png) It is not only explicit `MethodCall`s where this can be helpful. The heuristic used here is that whenever any expression is followed by a new line and then a dot, it resembles a call chain and type information can be #useful. Changes: - A new `InlayKind` for chaining. - New option for disabling this type of hints. - Tree traversal rules for identifying the chaining hints. - VSCode decorators in the extension layer (and associated types). Notes: - IntelliJ has additional rules and configuration on this topic. Eg. minimum length of chain to start displaying hints and only displaying distinct types in the chain. - I am checking for chaining on every `ast::Expr` in the tree; Are there performance concerns there? This is my first contribution (to RA and to Rust in general) so would appreciate any feedback. The only issue I can find the references this feature is #2741. Co-authored-by: Matt Hooper <[email protected]>
| * | Improvements based on code review feedbackMatt Hooper2020-03-241-5/+5
| | |
| * | Fmt correctionsMatt Hooper2020-03-241-13/+9
| | |
| * | Added more unit testsMatt Hooper2020-03-241-76/+159
| | |
| * | Updated docsMatt Hooper2020-03-241-0/+2
| | |
| * | Extension types and renderingMatt Hooper2020-03-245-4/+39
| | |
| * | Added new inlay hint kind and rules for method chainingMatt Hooper2020-03-245-5/+98
|/ /
* | Merge #3664bors[bot]2020-03-242-171/+250
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 3664: Introduce TokenConverter Trait r=matklad a=edwin0cheng This PR add a `TokenConverter` Trait to share the conversion logic between raw `lexer` token and Syntax Node Token. Related #2158. Co-authored-by: Edwin Cheng <[email protected]>
| * | Add open delim when delim not matchEdwin Cheng2020-03-202-5/+28
| | |
| * | Fix text range bug and reorderEdwin Cheng2020-03-201-14/+19
| | |
| * | Add TokenConvertor traitEdwin Cheng2020-03-202-239/+155
| | |
| * | Add test for delim bugEdwin Cheng2020-03-202-12/+147
| | |
* | | Merge #3708bors[bot]2020-03-247-121/+270
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | 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-247-121/+252
| | |
| * | Add a testAleksey Kladov2020-03-231-0/+18
| | |
* | | Merge #3705bors[bot]2020-03-243-5/+5
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3705: Align naming r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Align namingAleksey Kladov2020-03-243-5/+5
| | | |
* | | | Merge #3700bors[bot]2020-03-244-49/+52
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3700: fill match arms with empty block rather than unit tuple r=matklad a=JoshMcguigan As requested by @Veetaha in #3689 and #3687, this modifies the fill match arms assist to create match arms as an empty block `{}` rather than a unit tuple `()`. In one test I left one of the pre-existing match arms as a unit tuple, and added a body to another match arm, to demonstrate that the contents of existing match arms persist. Co-authored-by: Josh Mcguigan <[email protected]>
| * | | update assists docsJosh Mcguigan2020-03-241-2/+2
| | | |
| * | | fill match arms with empty block rather than unit tupleJosh Mcguigan2020-03-243-47/+50
| | | |
* | | | Merge #3694bors[bot]2020-03-241-1/+61
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3694: Complete only missing fields r=matklad a=SomeoneToIgnore Co-authored-by: Kirill Bulatov <[email protected]>
| * | | | Code review fixesKirill Bulatov2020-03-241-3/+4
| | | | | | | | | | | | | | | | | | | | Co-Authored-By: Aleksey Kladov <[email protected]>
| * | | | Complete only missing fieldsKirill Bulatov2020-03-231-1/+60
| | | | |