Commit Graph

13834 Commits

Author SHA1 Message Date
Jonas Schievink
777d8dca26 Fix memory usage metrics 2020-12-11 15:47:40 +01:00
bors[bot]
f304ce329f
Merge #6821
6821: Improve code structure r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-12-11 14:08:22 +00:00
Aleksey Kladov
4015ff0e0b Improve code structure
Make sure that there's only one entry point, analyze, remove awkard
analyzer2 name
2020-12-11 17:06:21 +03:00
Jonas Schievink
253678ead2 Add builtin attributes for use in nameres 2020-12-11 14:04:33 +01:00
bors[bot]
15a644d606
Merge #6816
6816: Use natural trait ordering in derive completion r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-12-11 12:46:47 +00:00
Aleksey Kladov
e179ed6f53 Use natural trait ordering in derive completion
derive(Clone, Copy) reads better than derive(Copy, Clone).

However, we preserve the reverse ordering in the lookup text for
sorting purposes. That way, it's convenient to type just `Ord` to
derive everything.
2020-12-11 15:45:53 +03:00
Edwin Cheng
175229ab3d negative sign matching in mbe matching for literal 2020-12-11 17:59:04 +08:00
bors[bot]
41321d9678
Merge #6807
6807: Replicate Cargo environment variables r=jonas-schievink a=jonas-schievink

These might be relied on by procedural macros, and can also be accessed via `env!`.

Required for fixing https://github.com/rust-analyzer/rust-analyzer/issues/6696. We do not yet propagate these to any proc macros though.

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-12-10 18:30:11 +00:00
Jonas Schievink
4d4b91117a Use itertools 2020-12-10 19:29:11 +01:00
bors[bot]
814e31957e
Merge #6804
6804: Bump the macro token limit r=jonas-schievink a=jonas-schievink

Should fix https://github.com/rust-analyzer/rust-analyzer/issues/6504

Not entirely sure what the previous limit was based on, but it looks like it does get hit in practice.

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-12-10 18:14:17 +00:00
Jonas Schievink
41d73d1312 Replicate Cargo environment variables 2020-12-10 18:51:39 +01:00
bors[bot]
6095debda8
Merge #6806
6806: Improve docs for building from source r=lnicola a=lnicola

bors r+

Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2020-12-10 17:32:21 +00:00
Laurențiu Nicola
3ecdb778c2 Improve docs for building from source 2020-12-10 19:31:46 +02:00
bors[bot]
0baff25d99
Merge #6805
6805: Fix accidently quadratic syntax rewriter r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-12-10 17:08:59 +00:00
Aleksey Kladov
3d5be5ba5b Fix accidently quadratic syntax rewriter
Switching from SyntaxNode to GreenNode is a costly operation (b/c
dereferencing a synax ptr in `with_green` is linear), so we should
avoid that.
2020-12-10 20:07:37 +03:00
Jonas Schievink
829d9d36eb Use decimal notation 2020-12-10 18:03:37 +01:00
Jonas Schievink
19508b474f Double the macro token limit 2020-12-10 17:51:39 +01:00
Jonas Schievink
614e5a2272 Improve macro limit error and move to const 2020-12-10 17:50:56 +01:00
bors[bot]
44978acf51
Merge #6769
6769: Add native "remove this semicolon" diagnostics r=matklad a=ivan770

Closes #6739 
![demo2](https://user-images.githubusercontent.com/14003886/101530533-b76c3180-399a-11eb-9d18-5c8457721655.gif)


Co-authored-by: ivan770 <leshenko.ivan770@gmail.com>
2020-12-10 16:18:49 +00:00
ivan770
bbb0bc7b04
Cast to ExprStmt, style fixes 2020-12-10 18:10:39 +02:00
bors[bot]
5a6065e3b0
Merge #6802
6802: Minor, more orthogonal code r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-12-10 15:32:23 +00:00
Aleksey Kladov
78de7f0d4a Remove debug print 2020-12-10 18:30:49 +03:00
bors[bot]
a6c8098113
Merge #6798
6798: Ignore extern items in incorrect-case check r=jonas-schievink a=jonas-schievink

Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6736

bors r+

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-12-10 15:08:30 +00:00
bors[bot]
bd78578851
Merge #6801
6801: Minor, more orthogonal code r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-12-10 15:02:04 +00:00
Aleksey Kladov
076945e47c Minor, more orthogonal code
It's better to accept things as arguments rather than store them.
2020-12-10 18:01:02 +03:00
Jonas Schievink
05d4a5a150 Use mark/hit 2020-12-10 15:56:04 +01:00
bors[bot]
83aa6fbd1e
Merge #6797
6797: Normalize spelling to American English r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-12-10 14:53:59 +00:00
Jonas Schievink
d338513e95 Remove item tree tests
They were useful during initial development of the item tree, but
now just cause churn
2020-12-10 15:53:48 +01:00
Aleksey Kladov
17f236c2b0 Normalize spelling to American English 2020-12-10 17:51:56 +03:00
Jonas Schievink
d82292e1ce Ignore extern items in incorrect-case check 2020-12-10 15:45:01 +01:00
bors[bot]
1341a98f05
Merge #6796
6796: Fix FileId computation in IncorrectCase fix r=jonas-schievink a=jonas-schievink

Fixes the sub-issue mentioned in https://github.com/rust-analyzer/rust-analyzer/issues/4058#issuecomment-741919659

bors r+

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-12-10 13:17:53 +00:00
Jonas Schievink
f57ce36988 Fix FileId computation in IncorrectCase fix 2020-12-10 14:16:34 +01:00
bors[bot]
8d5da92e4c
Merge #6795
6795: format_args: handle key-value arguments r=jonas-schievink a=jonas-schievink

fixes https://github.com/rust-analyzer/rust-analyzer/issues/6728

bors r+

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-12-10 12:47:30 +00:00
Jonas Schievink
948832d10b format_args: handle key-value arguments 2020-12-10 13:46:47 +01:00
bors[bot]
06a03bab8e
Merge #6790
6790: Send a CodeLensRefresh when we reload r=kjeremy a=kjeremy



Co-authored-by: kjeremy <kjeremy@gmail.com>
2020-12-09 19:37:55 +00:00
kjeremy
78dd2ba196 Send a CodeLensRefresh when we reload 2020-12-09 14:36:47 -05:00
bors[bot]
fc1595539e
Merge #6789
6789: Fix a typo in manual.adoc r=lnicola a=cuviper



Co-authored-by: Josh Stone <cuviper@gmail.com>
2020-12-09 19:26:33 +00:00
Josh Stone
bb412f314d
Fix a typo in manual.adoc 2020-12-09 11:25:05 -08:00
bors[bot]
928d4c6744
Merge #6786
6786: Implement HirDisplay for FnSig r=jonas-schievink a=jonas-schievink

This could be useful for diagnostics, but isn't used right now

bors r+

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-12-09 17:08:23 +00:00
Jonas Schievink
dedd888570 Implement HirDisplay for FnSig
This could be useful for diagnostics, but isn't used right now
2020-12-09 18:06:56 +01:00
bors[bot]
243ba330dd
Merge #6785
6785: Fix "no value set for FileTextQuery(FileId(..))" r=jonas-schievink a=jonas-schievink

Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6622

Let's hope I got it right this time, but I feel like I slowly begin to understand the main loop logic.

bors r+

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-12-09 16:32:03 +00:00
Jonas Schievink
6857989f6f Fix "no value set for FileTextQuery(FileId(..))" 2020-12-09 17:30:46 +01:00
bors[bot]
99118eeccd
Merge #6784
6784: Introduce anchored_path r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-12-09 16:07:33 +00:00
Aleksey Kladov
6e24321e45 Introduce anchored_path
They allow to represent paths like `#[path = "C:\path.rs"] mod foo;`
in a lossless cross-platform & network-transparent way.
2020-12-09 19:07:05 +03:00
Aleksey Kladov
5e3891c255 . 2020-12-09 18:42:07 +03:00
bors[bot]
42be522c80
Merge #6783
6783: Avoid nesting Subtrees when parsing TokenStream r=jonas-schievink a=jonas-schievink

Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6744

bors r+

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-12-09 13:59:39 +00:00
Jonas Schievink
d477c09c8a Avoid nesting Subtrees when parsing TokenStream 2020-12-09 14:58:46 +01:00
bors[bot]
ef989880ff
Merge #6771
6771: Properly attach inner attributes in Attrs::new r=matklad a=Veykril

Properly attach inner and outer attributes to the things they actually belong to in the HIR. ~~I can add some tests for this if wanted once I know where to put them/how to test for this.~~ Put some tests into `hover.rs`.
 
So the following snippet
```rust
mod foo {
	//! Hello
}
```
now shows `Hello` on hover 🎉

Fixes #2148


Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2020-12-09 13:16:39 +00:00
bors[bot]
7bda4c722b
Merge #6776
6776: Include config into the manual r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-12-09 13:07:33 +00:00
Aleksey Kladov
0890512e1c Include config into the manual 2020-12-09 15:31:10 +03:00