aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | Update `CrateGraph` commentJonas Schievink2021-05-241-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | `cfg` flags are now implemented, and crates *may* have names, it doesn't doesn't matter for name resolution
* | | | | internal: intern `AttrInput`Jonas Schievink2021-05-243-13/+14
|/ / / /
* | | | Merge #8975bors[bot]2021-05-243-62/+111
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8975: Use todo!() as placeholder body for generated match arms r=matklad a=jDomantas `todo!()` seems to be a better fit for this than `{}`. Seeing that this assist predates stabilization of `todo` my guess is that simply no one bothered to change it yet. Also fixed the issue where if the last arm was not block-like, rust-analyzer would not add a comma after it and would generate invalid code. Co-authored-by: Domantas Jadenkus <[email protected]>
| * | | | add test that it does not create extraneous commasDomantas Jadenkus2021-05-241-0/+20
| | | | |
| * | | | tidyDomantas Jadenkus2021-05-241-2/+2
| | | | |
| * | | | generate match arms with todo!() as placeholder bodyDomantas Jadenkus2021-05-242-60/+89
| | | | |
* | | | | Merge #8977bors[bot]2021-05-247-90/+101
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8977: internal: minor `TokenMap` cleanups r=jonas-schievink a=jonas-schievink bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | | | FixupJonas Schievink2021-05-242-4/+8
| | | | | |
| * | | | | Make `TokenTextRange` privateJonas Schievink2021-05-245-11/+10
| | | | | |
| * | | | | Move `TokenMap` to its own fileJonas Schievink2021-05-243-81/+89
| | | | | |
* | | | | | internal: rename hypothetical -> speculativeAleksey Kladov2021-05-245-25/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lets steal this good naming from Roslyn before I forget about it yet again.
* | | | | | Merge #8970bors[bot]2021-05-241-15/+21
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8970: fix: duplicate dependencies that have multiple DepKinds r=jonas-schievink a=jonas-schievink Cargo collapses identical dependencies that are listed under `[dependencies]` and `[build-dependencies]` into a single `NodeDep`. We have to undo that by duplicating the dependency for each of its listed `DepKind`s. Not doing that would incorrectly treat a dependency as `DepKind::Normal`, even though it is *also* meant to be a `DepKind::Build`. Fixes https://github.com/rust-analyzer/rust-analyzer/pull/8812#issuecomment-847125395 bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | | | Duplicate dependencies that have multiple DepKindsJonas Schievink2021-05-241-15/+21
| |/ / / /
* | | | | Merge #8963bors[bot]2021-05-2418-12/+68
|\ \ \ \ \ | |/ / / / |/| | | / | | |_|/ | |/| | | | | | | | | | | | | | 8963: Bump deps r=matklad a=lnicola Co-authored-by: Laurențiu Nicola <[email protected]>
| * | | Update test fixturesLaurențiu Nicola2021-05-2411-1/+57
| | | |
| * | | Bump rustc_lexerLaurențiu Nicola2021-05-241-1/+1
| | | |
| * | | Disable `unaliged` feature of `object`Laurențiu Nicola2021-05-241-1/+1
| | | |
| * | | Bump objectLaurențiu Nicola2021-05-243-3/+3
| | | |
| * | | Bump misc depsLaurențiu Nicola2021-05-242-4/+4
| | | |
| * | | Bump chalkLaurențiu Nicola2021-05-241-3/+3
| | | |
* | | | Intern `GenericArgs`Jonas Schievink2021-05-244-11/+10
| | | | | | | | | | | | | | | | This shaves off another ~4 mb or so
* | | | internal: intern `TypeBound`sJonas Schievink2021-05-2412-27/+49
|/ / / | | | | | | | | | | | | Doesn't save much memory (~2 mb), but interning things is generally a good pattern to follow
* | | Merge #8955bors[bot]2021-05-248-20/+141
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8955: feature: Support standalone Rust files r=matklad a=SomeoneToIgnore ![standalone](https://user-images.githubusercontent.com/2690773/119277037-0b579380-bc26-11eb-8d77-20d46ab4916a.gif) Closes https://github.com/rust-analyzer/rust-analyzer/issues/6388 Caveats: * I've decided to support multiple detached files in the code (anticipating the scratch files), but I found no way to open multiple files in VSCode at once: running `code *.rs` makes the plugin to register in the `vscode.workspace.textDocuments` only the first file, while code actually displays all files later. Apparently what happens is the same as when you have VSCode open at some workplace already and then run `code some_other_file.rs`: it gets opened in the same workspace of the same VSCode with no server to support it. If there's a way to override it, I'd appreciate the pointer. * No way to toggle inlay hints, since the setting is updated for the workspace (which does not exist for a single file opened) > [2021-05-24 00:22:49.100] [exthost] [error] Error: Unable to write to Workspace Settings because no workspace is opened. Please open a workspace first and try again. * No runners/lens to run or check the code are implemented for this mode. In theory, we can detect `rustc`, run it on a file and run the resulting binary, but not sure if worth doing it at this stage. Otherwise imports, hints, completion and other features work. Co-authored-by: Kirill Bulatov <[email protected]>
| * | | Add a FIXMEKirill Bulatov2021-05-241-0/+9
| | | |
| * | | Small file error display fixKirill Bulatov2021-05-241-1/+1
| | | | | | | | | | | | Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Don't discover workspaces when detached files are givenKirill Bulatov2021-05-231-3/+2
| | | |
| * | | Deal with todosKirill Bulatov2021-05-231-4/+14
| | | |
| * | | Do not add cargo target for detached files only projectKirill Bulatov2021-05-231-13/+22
| | | |
| * | | Drag detached files towards loadingKirill Bulatov2021-05-236-11/+83
| | | |
| * | | Draft detached files retrievalKirill Bulatov2021-05-236-3/+25
| | |/ | |/|
* | | Merge #8945bors[bot]2021-05-2314-69/+175
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8945: fix: Make expected type work in more situations r=flodiebold a=flodiebold Also makes call info show the correct types for generic methods. ![2021-05-23-182952_1134x616_scrot](https://user-images.githubusercontent.com/906069/119269023-dd5a5b00-bbf5-11eb-993a-b6e122c3b9a6.png) ![2021-05-23-183117_922x696_scrot](https://user-images.githubusercontent.com/906069/119269025-dfbcb500-bbf5-11eb-983c-fc415b8428e0.png) Co-authored-by: Florian Diebold <[email protected]>
| * | | Get rid of field_type againFlorian Diebold2021-05-236-24/+16
| | | |
| * | | Infer correct expected type in closureFlorian Diebold2021-05-231-1/+8
| | | | | | | | | | | | | | | | Sadly currently only works if the closure body isn't completely missing.
| * | | Infer correct expected type for generic struct fieldsFlorian Diebold2021-05-234-19/+46
| | | |
| * | | Record method call substs and use them in call infoFlorian Diebold2021-05-239-45/+125
| | | |
* | | | Merge #8953bors[bot]2021-05-232-9/+108
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8953: feat: generate getter avoids generating types like `&Vec<T>` r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | feat: generate getter avoids generating types like `&Vec<T>`Aleksey Kladov2021-05-232-9/+108
| | | | |
* | | | | internal: document ItemTree designJonas Schievink2021-05-231-2/+32
|/ / / /
* | | | Merge #8948bors[bot]2021-05-235-252/+141
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8948: feat: generate getter assist places the cursor at the generated function r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | feat: generate getter assist places the cursor at the generated functionAleksey Kladov2021-05-232-9/+14
| | | | |
| * | | | minimize testsAleksey Kladov2021-05-231-44/+54
| | | | |
| * | | | remove duplicate testsAleksey Kladov2021-05-231-103/+26
| | | | |
| * | | | reduce duplicationAleksey Kladov2021-05-234-211/+162
| | |/ / | |/| |
* / | | minor: align import style with styleguideAleksey Kladov2021-05-231-3/+3
|/ / /
* | | Correctly resolve crate name in use paths when import shadows itselfLukas Tobias Wirth2021-05-233-3/+31
| | |
* | | Minor: fix comment styleAleksey Kladov2021-05-231-1/+3
|/ / | | | | | | See https://github.com/rust-analyzer/rust-analyzer/blob/master/docs/dev/style.md#documentation
* / Explain why nested `TypeRef` aren't internedJonas Schievink2021-05-231-0/+4
|/
* Give ‘unsafe’ semantic token modifier to unsafe traitsAramis Razzaghipour2021-05-235-3/+20
|
* Merge #8938bors[bot]2021-05-234-15/+118
|\ | | | | | | | | | | | | | | 8938: internal: Fix #8931 r=flodiebold a=flodiebold - and add some better checking for similar bugs Co-authored-by: Florian Diebold <[email protected]>
| * Paper over #8931 a bit moreFlorian Diebold2021-05-232-2/+4
| | | | | | | | | | | | | | | | | | The problem was the skipping of binders in `resolve_method_call_as_callable`; this still doesn't use the _correct_ substitution, but at least it doesn't return a type with free variables in it. Fixes #8931.