bors[bot]
bf77850c81
Merge #3542
...
3542: Renames work on struct field shorthands r=matklad a=m-n
When renaming either a local or a struct field, struct field shorthands are now renamed correctly.
Happy to refactor this if it doesn't fit the design of the code. Thanks for adding the suggestion of where to start on the issue.
I wasn't sure if I should also look at the behavior of renaming when placing the cursor at the field shorthand; the following describes the behavior with this patch:
```rust
#[test]
fn test_rename_field_shorthand_for_unspecified() {
// when renaming a shorthand, should we have a way to specify
// between renaming the field and the local?
//
// If not is this the correct default?
test_rename(
r#"
struct Foo {
i: i32,
}
impl Foo {
fn new(i: i32) -> Self {
Self { i<|> }
}
}
"#,
"j",
r#"
struct Foo {
i: i32,
}
impl Foo {
fn new(j: i32) -> Self {
Self { i: j }
}
}
"#,
);
}
```
Resolves #3431
Co-authored-by: Matt Niemeir <matt.niemeir@gmail.com>
2020-03-11 09:22:09 +00:00
Matt Niemeir
13ccbb2919
find_usages limited to actual usages again
2020-03-10 22:27:38 -05:00
Aleksey Kladov
14094e4477
Move FeatureFlags
2020-03-10 18:56:15 +01:00
Aleksey Kladov
bf582e77d6
Pull completion options up to the rust-analyzer
2020-03-10 18:47:09 +01:00
Edwin Cheng
22f064cca7
Add resolve_extern_path in DB
2020-03-11 01:06:01 +08:00
Aleksey Kladov
59a3ec5f33
⬆️ fst
2020-03-10 15:03:32 +01:00
Matt Niemeir
ce8121bd65
Renaming a local renames struct field shorthand
2020-03-09 22:14:17 -05:00
Matt Niemeir
a9b6aec8a7
Struct field rename renames field in constructor field shorthand
2020-03-09 22:14:17 -05:00
Kirill Bulatov
5cffef56e2
Consider crate declaration names
2020-03-08 23:00:50 +02:00
Kirill Bulatov
32f5276465
Show mod path in hover tooltip
2020-03-07 23:20:18 +02:00
Aleksey Kladov
9abf0d9659
Normalize waiting queries names
2020-03-07 00:18:04 +01:00
Florian Diebold
9ce30281f6
Don't reuse the Chalk solver
...
This slows down analysis-stats a bit (~5% in my measurement), but improves
incremental checking a lot because we can reuse trait solve results.
2020-03-06 23:04:14 +01:00
Aleksey Kladov
80909f7698
Don't creat public APIs with typos
2020-03-06 18:38:56 +01:00
Aleksey Kladov
95a2755aa8
Concise mode for parameter hints
...
This works around VS Code bug where it tries to cram everything in a
tiny popup, and brings experience closer to Intellij.
2020-03-06 18:35:30 +01:00
Aleksey Kladov
4e7f6c2354
Feature flag for arg snippets
2020-03-06 17:51:10 +01:00
Aleksey Kladov
4f50a37187
Fix docs
2020-03-04 12:48:50 +01:00
Aleksey Kladov
98d68fa6be
Cleanup API
2020-03-04 12:46:40 +01:00
Aleksey Kladov
072ec1a8ae
Fix tests
2020-03-04 12:24:28 +01:00
Aleksey Kladov
994000b5dd
Use method instead of a free function
2020-03-04 12:22:47 +01:00
Aleksey Kladov
f79719b8ae
Move find_refs_to_def
2020-03-04 12:22:47 +01:00
Aleksey Kladov
1874b6738a
Move ReferenceKind
2020-03-04 12:22:06 +01:00
Aleksey Kladov
a549da7e3e
Move SearchScope
2020-03-04 12:22:06 +01:00
Aleksey Kladov
19115e9fab
Support cross-crate marks
2020-03-04 11:55:25 +01:00
Aleksey Kladov
177229bfde
Move reference classification to ra_ide_db
...
Lost some marks along the way :-(
2020-03-03 18:50:15 +01:00
Aleksey Kladov
d49a4d1863
Rename NameDefinition -> Definition
2020-03-03 18:40:27 +01:00
Aleksey Kladov
7d71cc72b5
Refactor reference search a bit
2020-03-03 18:22:52 +01:00
Aleksey Kladov
1a6f51da66
Simplify: remove couple of useless functions
2020-03-02 19:03:46 +01:00
Aleksey Kladov
a1e1869554
Rename ast::ImplBlock -> ast::ImplDef
2020-02-29 21:33:15 +01:00
Aleksey Kladov
5ebfcb9cb7
Fix highlighting of const patterns
2020-02-28 16:38:36 +01:00
Aleksey Kladov
209eb32796
Classify name takes const patterns into account
2020-02-28 15:27:52 +01:00
Aleksey Kladov
da40149572
Fix union classification
2020-02-28 15:03:09 +01:00
Aleksey Kladov
8ed7e751b6
Ensure that semantic tokens are single-line
2020-02-27 16:06:46 +01:00
Shotaro Yamada
33de107ed9
Remove unused dependencies
2020-02-27 14:04:13 +09:00
Aleksey Kladov
c3a4c4429d
Refactor primary IDE API
...
This introduces the new type -- Semantics.
Semantics maps SyntaxNodes to various semantic info, such as type,
name resolution or macro expansions.
To do so, Semantics maintains a HashMap which maps every node it saw
to the file from which the node originated. This is enough to get all
the necessary hir bits just from syntax.
2020-02-26 12:55:50 +01:00
Aleksey Kladov
8046622871
Actually drop unicase dependency
2020-02-26 11:38:33 +01:00
Aleksey Kladov
372439dec8
Merge NameDefinition and NameKind
2020-02-19 14:56:22 +01:00
Aleksey Kladov
0d5ae89948
Derive visibility as well
2020-02-19 14:45:49 +01:00
Aleksey Kladov
86b66067f6
Don't store deriveable Module info in NameDefinition
2020-02-19 14:32:22 +01:00
Kirill Bulatov
f6816c253b
Update versions
2020-02-18 16:12:40 +02:00
Kirill Bulatov
b8ddcb0652
Run cargo +nightly fix --clippy -Z unstable-options
2020-02-18 16:03:08 +02:00
Aleksey Kladov
039f2039a4
Remove unicase dependency
2020-02-18 14:44:52 +01:00
Aleksey Kladov
c0fa5e2246
Rename the binary to rust-analyzer
2020-02-18 12:33:16 +01:00
Aleksey Kladov
57140f1730
Drop proptest tests
...
It takes waaay to long to compile.
We should add quickcheck tests when we touch the relevant code next
time.
2020-02-17 16:57:06 +01:00
Aleksey Kladov
11dda31941
Remove extra dep
2020-02-15 23:23:44 +01:00
Aleksey Kladov
ae70d07237
Rename
2020-02-07 14:26:59 +01:00
Aleksey Kladov
f55be75a17
Remove irrelevant distinction
2020-02-07 14:25:16 +01:00
Kirill Bulatov
f4a4fcf275
Remove the leftovers after ImportLocator removal
2020-02-06 19:27:48 +02:00
Aleksey Kladov
d1e8b8d134
Fix tests
2020-02-06 17:42:17 +01:00
Aleksey Kladov
a173e31890
Make assists use ImportsLocator directly
2020-02-06 16:40:28 +01:00
Aleksey Kladov
dfbe96750b
Move imports locator to ide_db
2020-02-06 16:26:43 +01:00
Aleksey Kladov
ec23030e16
Add a fixme note
2020-02-06 16:24:14 +01:00
Aleksey Kladov
271017e6bf
Move NameKind up
2020-02-06 16:23:28 +01:00
Aleksey Kladov
355c98fd08
Docs
2020-02-06 15:10:17 +01:00
Aleksey Kladov
8a39519e1c
Cleanup
2020-02-06 15:10:07 +01:00
Aleksey Kladov
88267c86c0
cleanup imports
2020-02-06 14:03:45 +01:00
Aleksey Kladov
939f05f3e3
Move to a crate
2020-02-06 12:43:56 +01:00