aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* get matches from code.descendantsadamrk2020-02-251-7/+9
|
* save comments as ra_syntax::ast::Commentadamrk2020-02-251-10/+6
|
* Handle trivia in strucural search and replaceadamrk2020-02-231-27/+118
|
* Merge #3277bors[bot]2020-02-234-44/+60
|\ | | | | | | | | | | | | | | | | | | 3277: vscode: gracefully handle cancellation errors r=matklad a=Veetaha This PR fixes a fleet of errors that rapidly populate the Developer Tools console. ![image](https://user-images.githubusercontent.com/36276403/75097665-0c7aba80-55b6-11ea-8edd-ab5dc5f89e1e.png) Co-authored-by: Veetaha <[email protected]>
| * vscode: gracefully handle cancellation errorsVeetaha2020-02-234-44/+60
| |
* | Merge #3282bors[bot]2020-02-231-1/+1
|\ \ | |/ |/| | | | | | | | | | | | | | | 3282: Add suggestion for failed path resolution r=matklad a=yoshuawuyts This adds https://github.com/rust-analyzer/rust-analyzer/issues/3245 as an inline help text for when path resolution fails. I saw this error, but also `"Failed to read Cargo metadata from Cargo.toml file"` several times while trying to debug what was failing. There's probably a more structured way of displaying help texts in VS Code popups. But this would've saved me 20 mins of debugging when installing `rust-analyzer` under WSL today. Thanks! Co-authored-by: Yoshua Wuyts <[email protected]>
| * Add suggestion for failed path resolutionYoshua Wuyts2020-02-231-1/+1
|/ | | | This adds https://github.com/rust-analyzer/rust-analyzer/issues/3245 as an inline help text for when path resolution fails.
* Merge #3279bors[bot]2020-02-232-41/+188
|\ | | | | | | | | | | | | | | 3279: Add basic parameter name hints heuristics r=matklad a=SomeoneToIgnore Co-authored-by: Kirill Bulatov <[email protected]>
| * Style fixesKirill Bulatov2020-02-231-3/+4
| |
| * Add basic parameter name hints heuristicsKirill Bulatov2020-02-232-41/+187
| |
* | Merge #3261bors[bot]2020-02-2310-21/+51
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3261: Extract client-side logging r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Extract client-side loggingAleksey Kladov2020-02-2210-21/+51
| | |
* | | Merge #3275bors[bot]2020-02-231-0/+15
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | 3275: Add Structural Search and Replace doc r=matklad a=adamrk Addresses the first point of https://github.com/rust-analyzer/rust-analyzer/issues/3186. Co-authored-by: adamrk <[email protected]> Co-authored-by: Adam Bratschi-Kaye <[email protected]>
| * | rewording and typo fixAdam Bratschi-Kaye2020-02-221-1/+1
| | | | | | | | | Co-Authored-By: LaurenČ›iu Nicola <[email protected]>
| * | add ssr docadamrk2020-02-221-0/+15
| |/
* | Merge #3278bors[bot]2020-02-231-135/+174
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3278: Show more inlay hints r=matklad a=SomeoneToIgnore Closes https://github.com/rust-analyzer/rust-analyzer/issues/3273 As suggested in https://github.com/rust-analyzer/rust-analyzer/pull/1606#discussion_r308146363 , there is a simpler way to handle inlay hints after https://github.com/rust-analyzer/rust-analyzer/issues/1618 is closed. This PR uses the approach suggested (which results in more type hints for various bindings) and also adds more name hints for function parameters. Examples can be found in the issue: * https://github.com/rust-analyzer/rust-analyzer/issues/3273#issuecomment-589998051 * https://github.com/rust-analyzer/rust-analyzer/issues/3273#issuecomment-590002839 Co-authored-by: Kirill Bulatov <[email protected]>
| * | Fix the testsKirill Bulatov2020-02-221-5/+105
| | |
| * | Show more parameter name hintsKirill Bulatov2020-02-221-27/+34
| | |
| * | Simplify inlay hints processingKirill Bulatov2020-02-221-103/+35
|/ /
* | Merge #3276bors[bot]2020-02-221-23/+26
|\ \ | | | | | | | | | | | | | | | | | | | | | 3276: Bump crossbeam crates r=kjeremy a=lnicola This removes a duplicate `autocfg` dependency and was supposed to upgrade `rand`, but it got reverted in `crossbeam` to keep it compiling on pre-2018 edition compilers. Co-authored-by: LaurenČ›iu Nicola <[email protected]>
| * | Bump crossbeam cratesLaurențiu Nicola2020-02-221-23/+26
|/ /
* | Merge #3274bors[bot]2020-02-224-171/+58
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3274: Simplify r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | SimplifyAleksey Kladov2020-02-224-171/+58
|/ /
* | Merge #3272bors[bot]2020-02-221-5/+2
|\ \ | |/ |/| | | | | | | | | | | 3272: ra_db: removed a couple of explicit lifetimes r=matklad a=Veetaha Co-authored-by: Veetaha <[email protected]>
| * ra_db: removed a couple of explicit lifetimesVeetaha2020-02-221-5/+2
| |
* | Merge #3263bors[bot]2020-02-2210-261/+480
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3263: Implement unsizing coercions using Chalk r=matklad a=flodiebold These are coercions like `&[T; n] -> &[T]`, which are handled by the `Unsize` and `CoerceUnsized` traits. The impls for `Unsize` are all built in to the compiler and require special handling, so we need to provide them to Chalk. This adds the following `Unsize` impls: - `Unsize<[T]> for [T; _]` - `Unsize<dyn Trait> for T where T: Trait` - `Unsize<dyn SuperTrait> for dyn SubTrait` Hence we are still missing the 'unsizing the last field of a generic struct' case. Co-authored-by: Florian Diebold <[email protected]> Co-authored-by: Florian Diebold <[email protected]>
| * | Shorten some codeFlorian Diebold2020-02-221-4/+1
| | |
| * | Rework find_super_trait_path to protect against cyclesFlorian Diebold2020-02-225-23/+74
| | |
| * | Fix shift_bound_varsFlorian Diebold2020-02-221-3/+3
| | | | | | | | | | | | It should only shift free vars (maybe the name isn't the best...)
| * | Fix wrong handling of bare `dyn Trait` exposed by canonicalizer fixFlorian Diebold2020-02-221-1/+3
| | | | | | | | | | | | | | | The self type in the `dyn Trait` trait ref should always be ^0, but we didn't put that in there in the bare case.
| * | Add &dyn Trait -> &dyn SuperTrait coercion, and fix &T -> &dyn TraitFlorian Diebold2020-02-224-44/+132
| | |
| * | Fix handling of binders in canonicalizationFlorian Diebold2020-02-221-64/+35
| | | | | | | | | | | | I'm looking forward to getting rid of this in favor of Chalk's implementation.
| * | Implement dyn Trait unsizing as wellFlorian Diebold2020-02-225-9/+136
| | |
| * | Implement unsize coercion using proper trait solvingFlorian Diebold2020-02-225-187/+170
| |/
* | Merge #3271bors[bot]2020-02-221-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | 3271: Fix dat comment r=matklad a=Veetaha Co-authored-by: Veetaha <[email protected]>
| * | Fix dat commentVeetaha2020-02-221-1/+1
|/ /
* | Merge #3205bors[bot]2020-02-224-9/+10
|\ \ | | | | | | | | | | | | | | | | | | | | | 3205: vscode: migrate to tripple equals r=matklad a=Veetaha Co-authored-by: Veetaha <[email protected]>
| * | vscode: migrate to tripple equalsVeetaha2020-02-224-9/+10
| | |
* | | Merge #3269bors[bot]2020-02-221-0/+25
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 3269: Add inlay hints documentation r=flodiebold a=SomeoneToIgnore Closes https://github.com/rust-analyzer/rust-analyzer/issues/3267 Co-authored-by: Kirill Bulatov <[email protected]>
| * | Fix a typoKirill Bulatov2020-02-221-1/+1
| | |
| * | One more tiny doc fixKirill Bulatov2020-02-221-1/+1
| | |
| * | Code review fixesKirill Bulatov2020-02-221-5/+5
| | | | | | | | | | | | Co-Authored-By: Florian Diebold <[email protected]> Co-Authored-By: LaurenČ›iu Nicola <[email protected]>
| * | Add inlay hints documentationKirill Bulatov2020-02-221-0/+25
| |/
* | Merge #3260bors[bot]2020-02-225-68/+55
|\ \ | | | | | | | | | | | | | | | | | | | | | 3260: Refactor how builtins are resolved r=matklad a=flodiebold This fixes autocompletion suggesting e.g. `self::usize`. (I thought we had a bug for that, but I didn't find it.) Co-authored-by: Florian Diebold <[email protected]>
| * | Refactor how builtins are resolvedFlorian Diebold2020-02-215-68/+55
| | | | | | | | | | | | This fixes autocompletion suggesting e.g. self::usize.
* | | Merge #3230bors[bot]2020-02-222-4/+23
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | 3230: ra_mbe: convert_literal now works with malformed tokens r=edwin0cheng a=Veetaha Fixes: #3226 Co-authored-by: Veetaha <[email protected]> Co-authored-by: Veetaha <[email protected]>
| * | ra_mbe: Remove explicit type annotationVeetaha2020-02-221-1/+1
| | |
| * | ra_mbe: added test for malformed token in macro invokationVeetaha2020-02-221-3/+21
| | | | | | | | | | | | | | | There was a panic where lexer returned None on malformed tokens. But now we just ignore tokenization errors in mbe.
| * | ra_mbe: convert_literal now works with malformed tokensVeetaha2020-02-221-2/+3
|/ /
* | Merge #3262bors[bot]2020-02-225-6/+85
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3262: Fix handling of const patterns r=matklad a=flodiebold E.g. in `match x { None => ... }`, `None` is a path pattern (resolving to the option variant), not a binding. To determine this, we need to try to resolve the name during lowering. This isn't too hard since we already need to resolve names for macro expansion anyway (though maybe a bit hacky). Fixes #1618. Co-authored-by: Florian Diebold <[email protected]>