Commit Graph

15487 Commits

Author SHA1 Message Date
Chetan Khilosiya
b8e6d6a606 7708: Added the logic to check is default impl is already present.
Also added test cases for code present within module.
2021-03-07 00:49:03 +05:30
Chetan Khilosiya
a59a97ae04 7708: Updated generate default fn logic. 2021-03-07 00:49:03 +05:30
Chetan Khilosiya
54b4727fa3 7708: Added the work for review comments.
Also added 1 test case to test multiple struct blocks are present.
2021-03-07 00:49:03 +05:30
Chetan Khilosiya
135c9e2027 7708: Fixed many documentaion example issues. 2021-03-07 00:49:03 +05:30
Chetan Khilosiya
69a6e4c80c 7708: Format code through rust-analyzer formatter. 2021-03-07 00:49:03 +05:30
Chetan Khilosiya
cb3f4d43d9 7708: Initial implementation of generate Default assist.
The Generate Default impl from new function.
2021-03-07 00:49:03 +05:30
bors[bot]
71b8fb7c57
Merge #7894
7894: generate_function assist: convert arg names to lower snake case r=Veykril a=JoshMcguigan

This PR fixes one of the points listed by @TimoFreiberg in #3639. Specifically that all generated argument names should be converted to lower snake case. 

```rust
struct BazBaz;

fn foo() {
    bar$0(BazBaz);
    // ^ when triggering the assist here, you get the output below
}

// BEFORE
fn bar(BazBaz: BazBaz) ${0:-> ()} {
    todo!()
}

// AFTER
fn bar(baz_baz: BazBaz) ${0:-> ()} {
    todo!()
}
```

Co-authored-by: Josh Mcguigan <joshmcg88@gmail.com>
2021-03-06 18:44:34 +00:00
Josh Mcguigan
e29b53f1e6 generate function assist convert arg names to lower snake case 2021-03-06 09:53:21 -08:00
Kevin Mehall
93c9b34635 Make a placeholder panic message explain its purpose 2021-03-06 09:51:13 -07:00
Kevin Mehall
62f594b390 Refactor TokenStream to hold Vec<TokenTree> instead of tt::Subtree
`TokenStream` assumes that its subtree's delimeter is `None`, and this
should be encoded in the type system instead of having a delimiter field
that is mostly ignored.

`tt::Subtree` is just `pub delimiter: Option<Delimiter>, pub
token_trees: Vec<TokenTree>`, so a Subtree that is statically guaranteed
not to have a delimiter is just Vec<TokenTree>.
2021-03-06 09:48:30 -07:00
Kevin Mehall
632fa8ef4a Fix TokenStream::from_str for input consisting of a single Group
TokenStream holds a `tt::Subtree` but assumes its `delimiter` is always
`None`. In particular, the iterator implementation iterates over the
inner `token_trees` and ignores the `delimiter`.

However, `TokenStream::from_str` violated this assumption when the input
consists of a single Group by producing a Subtree with an outer
delimiter, which was ignored as seen by a procedural macro.

In this case, wrap an extra level of Subtree around it.

Fixes #7810
Fixes #7875
2021-03-06 09:48:08 -07:00
Daniel McNab
7513867aa2 If a manual dependency exists, don't overwrite
This is a hack to work around miri being included in
our analysis of rustc-dev
Really, we should probably use an include set of the actual root libraries

I'm not sure how those are determined however
2021-03-06 13:56:42 +00:00
Daniel McNab
1076d21fc0 Implement opt-in (and opt-out) rustc_private 2021-03-06 12:17:22 +00:00
bors[bot]
cd60c4f76c
Merge #7888
7888: Add a line about code action commands to the CoC section of the docs r=lnicola a=flodiebold



Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2021-03-06 10:38:57 +00:00
Florian Diebold
d6094c70fb Add a line about code action commands to the CoC section of the docs 2021-03-06 11:35:04 +01:00
bors[bot]
750d3cb846
Merge #7887
7887: Fix fail to parse :: for meta in mbe r=edwin0cheng a=edwin0cheng

fixes #7886

bors r+

Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2021-03-05 20:59:31 +00:00
Edwin Cheng
20eda09712 Fix fail to parse :: for meta in mbe 2021-03-06 04:57:34 +08:00
bors[bot]
94012e24e0
Merge #7884
7884: Simplify TokenStream FromStr r=edwin0cheng a=edwin0cheng

Make sure `FromStr` ignore all `TokenMap` in all cases.

bors r+

Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2021-03-05 20:00:04 +00:00
bors[bot]
7199d5b56d
Merge #7869
7869: Add support for deref assignments to "pull assignment up" assist. r=Veykril a=Jesse-Bakker

Fixes #7867


Co-authored-by: Jesse Bakker <github@jessebakker.com>
2021-03-05 19:52:15 +00:00
Jesse Bakker
ab84a4746b Add support for deref assignments to "pull assignment up" assist.
Fixes #7867
2021-03-05 20:42:23 +01:00
Edwin Cheng
83230b2704 Fix test 2021-03-06 03:30:22 +08:00
Edwin Cheng
0405d758a5 Simplify TokenStream FromStr 2021-03-06 03:17:36 +08:00
bors[bot]
3d662e320b
Merge #7883
7883: Make two calls virtual r=matklad a=lnicola



Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-03-05 18:49:29 +00:00
Laurențiu Nicola
d3ca22876c Make two calls virtual 2021-03-05 20:25:24 +02:00
bors[bot]
069efbbb52
Merge #7882
7882: cargo update r=kjeremy a=kjeremy



Co-authored-by: kjeremy <kjeremy@gmail.com>
2021-03-05 18:15:10 +00:00
kjeremy
124c9fe006 cargo update 2021-03-05 13:14:29 -05:00
bors[bot]
3ee531afd8
Merge #7881
7881: Underengineer `cargo xtask install --client` r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-03-05 17:43:23 +00:00
Aleksey Kladov
bf4aaa4fb0 Underengineer cargo xtask install --client 2021-03-05 20:42:41 +03:00
bors[bot]
2b55cce49e
Merge #7880
7880: Honor snippet capability when using the extract function assist r=lnicola a=Arthamys

This fixes issue #7793

Co-authored-by: san <san@alien.parts>
2021-03-05 16:24:32 +00:00
san
769b3bca28 Honor snippet capability in extract function assist 2021-03-05 17:20:26 +01:00
bors[bot]
6c27c55041
Merge #7870
7870: Use chalk_ir::AdtId r=Veykril a=Veykril

It's a bit unfortunate that we got two AdtId's now(technically 3 with the alias in the chalk module but that one won't allow pattern matching), one from hir_def and one from chalk_ir(hir_ty). But the hir_ty/chalk one doesn't leave hir so it shouldn't be that bad I suppose. Though if I see this right this will happen for almost all IDs.

I imagine most of the intermediate changes to using chalk ids will turn out not too nice until the refactor is over.

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-03-05 16:04:49 +00:00
bors[bot]
25a43e24c8
Merge #7879
7879: Fix some warnings r=lnicola a=lnicola

bors r+

Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-03-05 14:12:19 +00:00
Laurențiu Nicola
42057896bc Fix some warnings 2021-03-05 15:59:50 +02:00
bors[bot]
9707acb59b
Merge #7876
7876: Cleanup install command r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-03-05 08:52:07 +00:00
Aleksey Kladov
142f9a03fd Cleanup install command 2021-03-05 11:51:32 +03:00
Aleksey Kladov
97b1550dda Fix regression where the client was not installed 2021-03-05 11:12:40 +03:00
Lukas Wirth
50e01d2bc7 Use chalk_ir::AdtId 2021-03-04 19:38:02 +01:00
bors[bot]
16a76aa158
Merge #7868
7868: Migrate to user-centric config name for `cargo check` stuff r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-03-04 12:39:36 +00:00
Aleksey Kladov
3d80e0a154 Migrate to user-centric config name for cargo check stuff 2021-03-04 15:38:53 +03:00
bors[bot]
7275750e42
Merge #7866
7866: Complete `while let` r=Veykril a=Veykril

bors r+

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-03-03 22:05:38 +00:00
Lukas Wirth
02e9440e23 Complete while let 2021-03-03 23:04:11 +01:00
Domantas Jadenkus
5bb4aec05f preserve escape sequences when replacing string with char 2021-03-03 23:20:18 +02:00
Lukas Wirth
1914b7723f Don't complete super unless its valid in paths 2021-03-03 21:58:48 +01:00
bors[bot]
d0fa7abc50
Merge #7863
7863: Prevent renaming SelfType and BuiltinType r=Veykril a=Veykril

bors r+

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-03-03 18:49:43 +00:00
Lukas Wirth
e194f2edc4 Prevent renaming SelfType and BuiltinType 2021-03-03 19:48:53 +01:00
Lukas Wirth
183ba483a9 Reorder functions in rename.rs 2021-03-03 19:48:35 +01:00
bors[bot]
607716d213
Merge #7862
7862: Remove incorrect broken test r=jonas-schievink a=jonas-schievink

`Struct` cannot be named at all in that position, since `super` doesn't
resolve to the block scope

bors r+

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-03-03 18:11:56 +00:00
Jonas Schievink
1c057dc3c1 Remove incorrect broken test
`Struct` cannot be named at all in that position, since `super` doesn't
resolve to the block scope
2021-03-03 19:10:56 +01:00
bors[bot]
603481f534
Merge #7861
7861: Special-case parenthesized and negated expressions in demorgan assist r=lnicola a=Jesse-Bakker

Fixes #7831 

Co-authored-by: Jesse Bakker <github@jessebakker.com>
2021-03-03 13:29:56 +00:00
Jesse Bakker
1363d60111 Special-case parenthesized and negated expressions in demorgan assist 2021-03-03 13:18:24 +01:00