aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge #7698bors[bot]2021-05-188-8/+220
|\ | | | | | | | | | | | | | | | | | | | | | | 7698: Add new LSP extension for workspace symbol lookup r=matklad a=alcroito As well as all symbol types (functions, modules). Remove outdated documentation regarding symbol lookup filtering. Closes #4881 Co-authored-by: alcroito <[email protected]>
| * Add new LSP extension for workspace symbol lookupalcroito2021-05-178-8/+220
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new extension allows filtering of workspace symbool lookup results by search scope or search kind. Filtering can be configured in 3 different ways: - The '#' or '*' markers can be added inline with the symbol lookup query. The '#' marker means symbols should be looked up in the current workspace and any dependencies. If not specified, only current workspace is considered. The '*' marker means all kinds of symbols should be looked up (types, functions, etc). If not specified, only type symbols are returned. - Each LSP request can take an optional search_scope or search_kind argument query parameter. - Finally there are 2 global config options that can be set for all requests served by the active RA instance. Add support for setting the global config options to the VSCode extension. The extension does not use the per-request way, but it's useful for other IDEs. The latest version of VSCode filters out the inline markers, so currently the only reasonable way to use the new functionality is via the global config.
* | Merge #8871bors[bot]2021-05-181-23/+13
|\ \ | | | | | | | | | | | | | | | | | | | | | 8871: internal: Simplify `DefCollector::resolve_macros` r=jonas-schievink a=jonas-schievink bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | Simplify `DefCollector::resolve_macros`Jonas Schievink2021-05-181-23/+13
| | |
* | | Merge #8345bors[bot]2021-05-1812-121/+158
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8345: Add pub mod option for UnlinkedFile r=rainy-me a=rainy-me close #8228 This is a draft that changes `Diagnostic` to contain multiple fixes. Pre analysis is in https://github.com/rust-analyzer/rust-analyzer/issues/8228#issuecomment-812887085 Because this solution is straightforward so I decided to type it out for discussion. Currently the `check_fix` is not able to test the situation when multiple fixes available. <del>Also because `Insert 'mod x;'` and `Insert 'pub mod x;'` are so similar, I don't know how to test them correctly and want some suggestions.</del>. I added `check_fixes` to allow checking mutiple possible fixes. In additional, instead of append after possible existing `mod y`, I think it's possible to Insert `pub mod x;` after `pub mod y`. Should I implement this too? Co-authored-by: rainy-me <[email protected]>
| * | Add pub mod option for UnlinkedFilerainy-me2021-05-1812-121/+158
|/ /
* | Merge #8766bors[bot]2021-05-171-2/+63
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 8766: Extract function assist will add async if required r=Veykril a=JamieCunliffe The extract function assist will check for an AWAIT_EXPR or AWAIT_KW in the body and if found, will add async to the generated function. closes #8232 Co-authored-by: Jamie Cunliffe <[email protected]>
| * | Extract function assist will add async if requiredJamie Cunliffe2021-05-171-2/+63
|/ / | | | | | | | | The extract function assist will check for an AWAIT_EXPR in the body and if found, will add async to the generated function.
* | internal: use more evocative test folder nameAleksey Kladov2021-05-173-5/+4
| |
* | minor: adjust config nameAleksey Kladov2021-05-178-74/+41
| |
* | Merge #8795bors[bot]2021-05-176-10/+78
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 8795: Allow semantic tokens for strings to be disabled r=matklad a=djrenren Fixes https://github.com/rust-analyzer/rust-analyzer/issues/7111 Pretty straightforward change, but open to any suggestions if there's a more recommended testing strategy than what I went with. Co-authored-by: John Renner <[email protected]>
| * | Formatting and docsJohn Renner2021-05-106-16/+35
| | |
| * | Allow semantic tokens for strings to be disabledJohn Renner2021-05-104-9/+58
| | |
* | | Merge #8864bors[bot]2021-05-171-7/+6
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8864: Update notify and fst r=kjeremy a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * | | Update notify and fstkjeremy2021-05-171-7/+6
|/ / /
* | | Merge #8858bors[bot]2021-05-172-0/+21
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8858: Ignore macro import from `extern crate self` r=jonas-schievink a=ivan770 Closes #8834 Co-authored-by: ivan770 <[email protected]>
| * | | Added cov markivan7702021-05-172-1/+3
| | | |
| * | | Fix #8834ivan7702021-05-162-0/+19
| | | |
* | | | Merge #8863bors[bot]2021-05-174-0/+81
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8863: fix: don't add extra whitespace around fields r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | fix: don't add extra whitespace around fieldsAleksey Kladov2021-05-172-0/+29
| | | | | | | | | | | | | | | | | | | | closes #8785
| * | | | minor: add missing testsAleksey Kladov2021-05-172-0/+52
|/ / / /
* | | | Merge #8862bors[bot]2021-05-1710-811/+889
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8862: internal: scalable module structure for fixits r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | internal: scalable module structure for fixitsAleksey Kladov2021-05-179-769/+695
| | | | |
| * | | | minor: extract fix to fileAleksey Kladov2021-05-172-44/+196
| | | | |
* | | | | Merge #8861bors[bot]2021-05-171-0/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8861: minor: and one more recipe for ace r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | minor: and one more recipe for aceAleksey Kladov2021-05-171-0/+1
|/ / / /
* | | | Merge #8845bors[bot]2021-05-161-12/+275
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8845: Generate the impl block via generate_trait_impl_text_from_impl r=Veykril a=hi-rustin Try to close https://github.com/rust-analyzer/rust-analyzer/issues/8827 Co-authored-by: hi-rustin <[email protected]>
| * | | | Remove attrshi-rustin2021-05-151-5/+1
| | | | |
| * | | | Address comments and add more testshi-rustin2021-05-151-25/+249
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix tests Fmt code
| * | | | Generate the impl block via generate_trait_impl_texthi-rustin2021-05-151-2/+45
| | | | |
* | | | | Merge #8853bors[bot]2021-05-163-5/+5
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8853: Tag Self in impls as a TypeAlias r=matklad a=Veykril bors r+ Fixes #4398 Co-authored-by: Lukas Wirth <[email protected]>
| * | | | Tag Self in impls as a TypeAliasLukas Wirth2021-05-163-5/+5
| | | | |
* | | | | Merge #8854bors[bot]2021-05-164-104/+49
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8854: internal: use mutable syntax trees when filling fields r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | internal: use mutable syntax trees when filling fieldsAleksey Kladov2021-05-164-104/+49
|/ / / / /
* | | | | internal: use standard test styleAleksey Kladov2021-05-161-304/+305
| | | | |
* | | | | internal: use mutable trees when filling match armsAleksey Kladov2021-05-163-134/+89
| | | | |
* | | | | minor: use uniform namesAleksey Kladov2021-05-1612-30/+29
| | | | |
* | | | | Merge #8813bors[bot]2021-05-1621-136/+427
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8813: Get some more array lengths! r=lf- a=lf- This is built on #8799 and thus contains its changes. I'll rebase it onto master when that one gets merged. It adds support for r-a understanding the length of: * `let a: [u8; 2] = ...` * `let a = b"aaa"` * `let a = [0u8; 4]` I have added support for getting the values of byte strings, which was not previously there. I am least confident in the correctness of this part and it probably needs some more tests, as we currently have only one test that exercised that part (!). Fixes #2922. Co-authored-by: Jade <[email protected]>
| * | | | | Address final feedbackJade2021-05-165-32/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rename ConstExtension->ConstExt * refactor a manual construction of a Const
| * | | | | Add more tests, refactor array lengths/consteval workJade2021-05-148-35/+223
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix #2922: add unknown length as a condition for a type having unknown. Incorporate reviews: * Extract some of the const evaluation workings into functions * Add fixmes on the hacks * Add tests for impls on specific array lengths (these work!!! 😁) * Add tests for const generics (indeed we don't support it yet)
| * | | | | Test lowering byte strings some moreJade2021-05-131-14/+25
| | | | | |
| * | | | | Add support for lengths in array repeats, if they are literalsJade2021-05-134-11/+22
| | | | | | | | | | | | | | | | | | | | | | | | Now we will get the type of `[0u8; 4]`.
| * | | | | Support length for ByteStringsJade2021-05-138-33/+85
| | | | | | | | | | | | | | | | | | | | | | | | I am not confident that my added byte string parsing is right.
| * | | | | Add lowering of array lengths in typesJade2021-05-1310-79/+114
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now e.g. ```rust fn a(b: [u8; 2]) { } ``` will know about the length of b.
* | | | | Merge #8848bors[bot]2021-05-156-16/+38
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8848: Attach comments to ast::Impl r=Veykril a=Veykril bors r+ Fixes #8847 Co-authored-by: Lukas Wirth <[email protected]>
| * | | | Attach comments to ast::ImplLukas Wirth2021-05-154-6/+30
| | | | |
| * | | | simplifyLukas Wirth2021-05-152-10/+8
| | |/ / | |/| |
* | | | Merge #8843bors[bot]2021-05-151-12/+10
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | 8843: minor: simplify r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | | simplifyLukas Wirth2021-05-151-12/+10
|/ / /
* | | Merge #8840bors[bot]2021-05-143-5/+7
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8840: fix: false positive "Missing match arm" when a tuple pattern is shorter than scrutinee type. r=Veykril a=iDawer ![Screenshot_20210515_003035](https://user-images.githubusercontent.com/7803845/118320023-2bcb7380-b4eb-11eb-9de6-d8762f981dc2.jpg) Match checking diagnostic shouldn't fire when there is type mismatches. rust-analyzer fd109fb58 2021-05-10 dev (This is part of the preparation for https://github.com/rust-analyzer/rust-analyzer/pull/8717) Co-authored-by: Dawer <[email protected]>