Commit Graph

12200 Commits

Author SHA1 Message Date
Jonas Schievink
bee56e68a3 Hacky support for fn-like proc macros 2020-08-15 15:34:56 +02: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
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
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
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
Wilco Kusee
de282ddd86 Only print chalk programs with CHALK_PRINT 2020-08-14 14:52:07 +02: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
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
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
Aleksey Kladov
fc34403018 Rename ra_assists -> assists 2020-08-13 17:33:38 +02:00
bors[bot]
d2212a49f6
Merge #5748
5748: Rename ra_ssr -> ssr
 r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-13 15:03:57 +00:00
Aleksey Kladov
ae3abd6e57 Rename ra_ssr -> ssr 2020-08-13 17:02:44 +02:00
Aleksey Kladov
bb5c189b7d Rename ra_ide_db -> ide_db 2020-08-13 16:39:16 +02:00
Aleksey Kladov
ae71a631fd Rename ra_hir -> hir 2020-08-13 16:36:55 +02:00
Aleksey Kladov
6a77ec7bbe Rename ra_hir_ty -> hir_ty 2020-08-13 16:35:29 +02:00
bors[bot]
e9926948ca
Merge #5747
5747: Rename crate r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-13 14:31:49 +00:00
Aleksey Kladov
50f8c1ebf2 Somewhat fix pre-cache 2020-08-13 16:31:04 +02:00
Aleksey Kladov
b28c54a2c2 Rename ra_hir_def -> hir_def 2020-08-13 16:29:33 +02:00
Aleksey Kladov
b7aa4898e0 Rename ra_hir_expand -> hir_expand 2020-08-13 16:29:33 +02:00
Aleksey Kladov
ed20a857f4 Rename ra_db -> base_db 2020-08-13 16:29:33 +02:00
bors[bot]
902f74c269
Merge #5746
5746: Structured search replace now handles UFCS calls to trait methods r=matklad a=davidlattimore



Co-authored-by: David Lattimore <dml@google.com>
2020-08-13 14:21:35 +00:00
bors[bot]
c2b1503fe4
Merge #5745
5745: Rename ra_proc_macro -> proc_macro_api
 r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-13 10:39:57 +00:00
Aleksey Kladov
2119dc23e8 Rename ra_proc_macro -> proc_macro_api 2020-08-13 12:39:27 +02:00
David Lattimore
3100de842b Structured search replace now handles UFCS calls to trait methods 2020-08-13 20:24:55 +10:00
bors[bot]
4abdf323af
Merge #5732
5732: Consider only IdentPats for param name hints r=matklad a=SomeoneToIgnore

Closes https://github.com/rust-analyzer/rust-analyzer/issues/4960

Avoid displaying any param name hints like 
<img width="590" alt="image" src="https://user-images.githubusercontent.com/2690773/90071461-47a4ad80-dcfe-11ea-9330-fb4f4e2d1b71.png">

Those hints seem to occupy plenty of space for no apparent benefit, with their destructured content not used in the code with the function hints.

I'm not entirely sure if we should show something else than `IdentPat`s, since I don't understand some of the `Pat` variant meanings:
a1c187eef3/crates/syntax/src/ast/generated/nodes.rs (L1336-L1352)

Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
2020-08-13 10:20:59 +00:00
bors[bot]
de1d93455f
Merge #5744
5744: Rename ra_project_model -> project_model r=matklad a=pksunkara



Co-authored-by: Pavan Kumar Sunkara <pavan.sss1991@gmail.com>
2020-08-13 10:10:03 +00:00
Pavan Kumar Sunkara
eac24d52e6 Rename ra_project_model -> project_model 2020-08-13 12:05:30 +02:00
bors[bot]
8870a5ea13
Merge #5743
5743: Remove ra_fmt crate
 r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-13 10:00:05 +00:00
Aleksey Kladov
c81f6230da Remove ra_fmt crate 2020-08-13 11:59:42 +02:00
Aleksey Kladov
479235ff0b Minor 2020-08-13 11:48:26 +02:00
bors[bot]
b5cb16fb90
Merge #5741
5741: Minor
 r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-13 09:45:29 +00:00