Paul Daniel Faria
3456e2eec7
Add new method to Semantics, method_receiver_kind, which returns the kind of self
...
The options are Shared, Mutable, Consuming, and Copied. Use this to add proper
highlighting to methods based on usage.
2020-08-16 10:26:16 -04:00
Paul Daniel Faria
a044ff0138
Mark mutating functions with mutable
modifier, and owning functions with consuming
.
2020-08-16 10:22:51 -04:00
Paul Daniel Faria
7009d5ee2b
Add new HighlightModifier variant, Consuming
2020-08-16 10:22:51 -04:00
bors[bot]
3b206ff756
Merge #5770
...
5770: Fix typo in comment r=kjeremy a=rockerBOO
Co-authored-by: Dave Lage <rockerboo@gmail.com>
2020-08-15 20:47:08 +00:00
Dave Lage
d31634940d
Fix typo in comment
2020-08-15 16:37:44 -04:00
bors[bot]
b5023e25e3
Merge #5769
...
5769: Don't expose hir::Path out of hir
r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-15 16:53:15 +00:00
Aleksey Kladov
0ca1ba29e8
Don't expose hir::Path out of hir
...
Conjecture: it's impossible to use hir::Path *correctly* from an IDE.
I am not entirely sure about this, and we might need to add it back at
some point, but I have to arguments that convince me that we probably
won't:
* `hir::Path` has to know about hygiene, which an IDE can't set up
properly.
* `hir::Path` lacks identity, but you actually have to know identity
to resolve it correctly
2020-08-15 18:50:41 +02:00
bors[bot]
19c41a9152
Merge #5768
...
5768: Remove deprecated Path::from_ast
r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-15 16:23:13 +00:00
Aleksey Kladov
2052d33b9b
Remove deprecated Path::from_ast
...
Long term, we probably should make hir::Path private to hir.
2020-08-15 18:22:16 +02:00
Jonas Schievink
bee56e68a3
Hacky support for fn-like proc macros
2020-08-15 15:34:56 +02:00
bors[bot]
f0ad68b962
Merge #5762
...
5762: Add a proc_macro_test crate r=jonas-schievink a=jonas-schievink
This exports all 3 kinds of proc macros and is useful for testing.
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-08-14 22:29:04 +00:00
Jonas Schievink
cb816b1ea8
Add a proc_macro_test crate
...
This exports all 3 kinds of proc macros and is useful for testing
2020-08-15 00:27:32 +02:00
Dmitry
73315c9168
synchronizing changes
2020-08-15 02:37:43 +07:00
Dmitry
178c3e135a
Merge remote-tracking branch 'origin/master'
2020-08-15 01:32:05 +07:00
Dmitry
06ff8e6c76
refactor requirements put forward mkladov
2020-08-15 01:25:08 +07:00
bors[bot]
c2594daf29
Merge #5347
...
5347: Chalk writer integration r=flodiebold a=detrumi
~~This adds a `rust-analyzer dump-chalk` command, similar to analysis-stats, which writes out the whole chalk progam (see [chalk#365](https://github.com/rust-lang/chalk/issues/365 ) for more info about the .chalk writer)~~
Write out chalk programs in debug output if chalk debugging is active (using `CHALK_DEBUG`).
Example output:
```
[DEBUG ra_hir_ty::traits] solve(UCanonical { canonical: Canonical { value: InEnvironment { environment: Env([]), goal: Implemented(SeparatorTraitRef(?)) }, binders: [] }, universes: 1 }) => None
[INFO ra_hir_ty::traits] trait_solve_query(Implements(fn min<?0.0>(?0.0, ?0.0) -> ?0.0: Deref))
[DEBUG ra_hir_ty::traits] solve goal: UCanonical { canonical: Canonical { value: InEnvironment { environment: Env([]), goal: Implemented(SeparatorTraitRef(?)) }, binders: [U0 with kind type] }, universes: 1 }
[DEBUG ra_hir_ty::traits::chalk] impls_for_trait Deref
[DEBUG ra_hir_ty::traits::chalk] impls_for_trait returned 0 impls
[DEBUG ra_hir_ty::traits::chalk] trait_datum Ord
[DEBUG ra_hir_ty::traits::chalk] trait Ord = Name(Text("Ord"))
[DEBUG ra_hir_ty::traits] chalk program:
#[upstream]
#[non_enumerable]
#[object_safe]
trait Ord {}
#[upstream]
#[non_enumerable]
#[object_safe]
#[lang(sized)]
trait Sized {}
fn fn_0<_1_0>(arg_0: _1_0, arg_1: _1_0) -> _1_0
where
_1_0: Ord;
#[upstream]
#[non_enumerable]
#[object_safe]
trait Deref {
type Assoc_1829: Sized;
}
[DEBUG ra_hir_ty::traits] solve(UCanonical { canonical: Canonical { value: InEnvironment { environment: Env([]), goal: Implemented(SeparatorTraitRef(?)) }, binders: [U0 with kind type] }, universes: 1 }) => None
[INFO ra_hir_ty::traits] trait_solve_query(Implements(?0.0: Ord))
```
Co-authored-by: Wilco Kusee <wilcokusee@gmail.com>
2020-08-14 17:02:55 +00:00
Dmitry
e7899625e6
restrict visibility only by crate
2020-08-14 23:22:23 +07:00
Dmitry
7f11cc42de
Merge branch 'master' of https://github.com/Fihtangolz/rust-analyzer into master
2020-08-14 23:16:15 +07:00
Dmitry Opokin
782238d2a9
Update xtask/src/codegen/gen_unstable_future_descriptor.rs
...
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-14 23:11:50 +07:00
Dmitry
c8a6ecc075
Revert "replase sparse-checkout by github api"
...
This reverts commit 034db28c54
.
2020-08-14 23:09:47 +07:00
bors[bot]
f7abd16a8c
Merge #5760
...
5760: Document xtask has few deps invariant
r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-14 15:30:53 +00:00
Aleksey Kladov
1d11c9c91a
Document xtask has few deps invariant
2020-08-14 17:30:27 +02:00
Dmitry
034db28c54
replase sparse-checkout by github api
2020-08-14 21:58:04 +07:00
bors[bot]
3b5947e1cd
Merge #5759
...
5759: Rename hypothetical -> speculative
r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-14 13:23:58 +00:00
Aleksey Kladov
125744c057
Rename hypothetical -> speculative
2020-08-14 15:23:27 +02:00
jDomantas
9f548a0295
fixup whitespace when adding missing impl items
2020-08-14 16:10:52 +03:00
Wilco Kusee
de282ddd86
Only print chalk programs with CHALK_PRINT
2020-08-14 14:52:07 +02:00
David Lattimore
a4a504e132
SSR: Explicitly autoderef and ref placeholders as needed
...
Structured search replace now inserts *, & and &mut in the replacement to match any auto[de]ref in the matched code.
2020-08-14 21:26:25 +10:00
bors[bot]
1ec23e7d33
Merge #5757
...
5757: Document the most important CI invariant
r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-14 10:27:38 +00:00
Aleksey Kladov
200161c734
Document the most important CI invariant
2020-08-14 12:27:15 +02:00
David Lattimore
c84f98385a
Refactor SSR so that placeholders store a Var
...
This allows lookup of placeholder bindings given a placeholder without
needing to create a Var instance.
2020-08-14 20:12:26 +10:00
bors[bot]
674af600f1
Merge #5756
...
5756: Sophisticate Windows path encoding r=matklad a=pragmatrix
As discussed in #5475 , path encoding should be agnostic of the drive letter casing on Windows.
Compared to the problem it solves, the code added seems a lot and may introduce other problems. But I've not found a simpler way basing this on the public API surface that Rust offers.
Fixes #5484 .
cc @Emilgardis
Co-authored-by: Armin Sander <armin@replicator.org>
2020-08-14 10:06:03 +00:00
Wilco Kusee
36052ce1a1
Lookup adt names
2020-08-14 11:43:11 +02:00
Wilco Kusee
10c33275b0
Only use logging db if CHALK_DEBUG is active
2020-08-14 11:43:10 +02:00
Wilco Kusee
58e338a729
Print chalk programs in debug output
2020-08-14 11:43:10 +02:00
Igor Aleksanov
c26c911ec1
Merge branch 'master' into add-disable-diagnostics
2020-08-14 07:34:07 +03:00
Armin Sander
8fc254597f
Sophisticate Windows path encoding
2020-08-14 02:03:54 +02:00
bors[bot]
f1f73649a6
Merge #5755
...
5755: Make hygiene private to hir r=davidlattimore a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-13 22:16:31 +00:00
Aleksey Kladov
9664c57e60
Make hygiene private to hir
2020-08-13 23:54:37 +02:00
bors[bot]
9930ef2536
Merge #5753
...
5753: Remove Hygiene from completion
r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-13 20:42:36 +00:00
Aleksey Kladov
86f89d9b31
Remove Hygiene from completion
2020-08-13 22:41:55 +02:00
bors[bot]
e5b17b6ad4
Merge #5752
...
5752: display correctly 'impl Trait<T> + Trait<T>' #4814 r=flodiebold a=bnjjj
close #4814
Co-authored-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2020-08-13 20:28:11 +00:00
Benjamin Coenen
947a27b797
display correctly 'impl Trait<T> + Trait<T>' #4814
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2020-08-13 22:13:34 +02:00
bors[bot]
3d6fd620e8
Merge #5751
...
5751: Better recovery in `use foo::;`
r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-13 16:50:50 +00:00
Aleksey Kladov
ef462ed6af
Better recovery in use foo::;
2020-08-13 18:50:21 +02:00
Aleksey Kladov
0e1cda3079
Minor
2020-08-13 18:17:53 +02:00
bors[bot]
018a6cac07
Merge #5750
...
5750: Rename ra_ide -> ide
r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-13 15:59:50 +00:00
Aleksey Kladov
6bc2633c90
Align parser names with grammar
2020-08-13 17:59:27 +02:00
Aleksey Kladov
1b0c7701cc
Rename ra_ide -> ide
2020-08-13 17:58:27 +02:00
bors[bot]
00fb411f3e
Merge #5749
...
5749: Rename ra_assists -> assists
r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-13 15:34:51 +00:00