| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
7892: Fix TokenStream::from_str for input consisting of a single group with delimiter r=edwin0cheng a=kevinmehall
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.
`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>`.
Fixes #7810
Fixes #7875
Co-authored-by: Kevin Mehall <[email protected]>
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
`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>.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
7899: Rename a few `crate_def_map`s to `def_map` r=jonas-schievink a=jonas-schievink
These could all be block `DefMap`s instead of crate-level `DefMap`s
bors r+
Co-authored-by: Jonas Schievink <[email protected]>
|
|/ /
| |
| |
| | |
These could all be block `DefMap`s instead of crate-level `DefMap`s
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
7896: Only replace quotes in replace_string_with_char assist r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <[email protected]>
|
| | | |
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | | |
7800: [WIP] 7708: Initial implementation of generate Default assist. r=Veykril a=chetankhilosiya
The Generate Default impl from new function.
Co-authored-by: Chetan Khilosiya <[email protected]>
|
| | | |
|
| | |
| | |
| | |
| | | |
Also fix typo in example.
|
| | |
| | |
| | |
| | | |
The implementation uses hir create to find the implemented trait.
|
| | |
| | |
| | |
| | | |
Also added test cases for code present within module.
|
| | | |
|
| | |
| | |
| | |
| | | |
Also added 1 test case to test multiple struct blocks are present.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
The Generate Default impl from new function.
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | | |
7865: preserve escape sequences when replacing string with char r=Veykril a=jDomantas
Currently it replaces escape sequence with the actual value, which is very wrong for `"\n"`.
Co-authored-by: Domantas Jadenkus <[email protected]>
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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 <[email protected]>
|
|/ / / |
|
|\ \ \
| |_|/
|/| |
| | |
| | |
| | |
| | |
| | | |
7888: Add a line about code action commands to the CoC section of the docs r=lnicola a=flodiebold
Co-authored-by: Florian Diebold <[email protected]>
|
|/ / |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
7887: Fix fail to parse :: for meta in mbe r=edwin0cheng a=edwin0cheng
fixes #7886
bors r+
Co-authored-by: Edwin Cheng <[email protected]>
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
7884: Simplify TokenStream FromStr r=edwin0cheng a=edwin0cheng
Make sure `FromStr` ignore all `TokenMap` in all cases.
bors r+
Co-authored-by: Edwin Cheng <[email protected]>
|
| | | | |
|
| | | | |
|
|\ \ \ \
| |_|/ /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
7869: Add support for deref assignments to "pull assignment up" assist. r=Veykril a=Jesse-Bakker
Fixes #7867
Co-authored-by: Jesse Bakker <[email protected]>
|
| |/ /
| | |
| | |
| | | |
Fixes #7867
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
7883: Make two calls virtual r=matklad a=lnicola
Co-authored-by: Laurențiu Nicola <[email protected]>
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
7882: cargo update r=kjeremy a=kjeremy
Co-authored-by: kjeremy <[email protected]>
|
|/ / / / |
|
|\ \ \ \
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
7881: Underengineer `cargo xtask install --client` r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <[email protected]>
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
7880: Honor snippet capability when using the extract function assist r=lnicola a=Arthamys
This fixes issue #7793
Co-authored-by: san <[email protected]>
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
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 <[email protected]>
|
| | |_|/ /
| |/| | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
7879: Fix some warnings r=lnicola a=lnicola
bors r+
Co-authored-by: Laurențiu Nicola <[email protected]>
|
|/ / / / / |
|
|\ \ \ \ \
| |/ / / /
|/| | / /
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | | |
7876: Cleanup install command r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <[email protected]>
|
| | | | |
|
|/ / / |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
7868: Migrate to user-centric config name for `cargo check` stuff r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <[email protected]>
|
| | | | |
|
|\ \ \ \
| |_|_|/
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | | |
7866: Complete `while let` r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <[email protected]>
|