Lukas Wirth
b6ed91a6de
Rename *Owner
traits to Has*
2021-09-27 12:54:24 +02:00
Lukas Wirth
6465868449
Make inlay hints work in attributed items
2021-09-18 13:19:29 +02:00
Lukas Wirth
64fb7be247
Revert attributed items inlay hints
2021-09-14 20:30:28 +02:00
Lukas Wirth
e193e3b076
feat: Make inlay hints work in attributed items
2021-09-14 01:59:45 +02:00
Frank Steffahn
75073451c6
Fix three more (reverse) “a”/“an” typos
2021-08-22 17:48:15 +02:00
Dawer
14898729f4
Account sized bounds in parentheses printing inside of ptr/ref of rpit.
2021-08-08 00:54:38 +05:00
Dawer
d9ec88ea23
Adjust fn_hints test
2021-08-04 20:26:51 +05:00
Lukas Wirth
b96f1adf5c
Give TypeInfo fields and methods more appropriate names
2021-08-03 17:28:51 +02:00
Lukas Wirth
25ff7171c4
Introduce TypeInfo
2021-08-03 16:41:53 +02:00
Lukas Wirth
f7c7f89c3c
Annotate type hints for pattern name ranges instead of the pattern itself
2021-07-31 15:30:45 +02:00
Aleksey Kladov
7ec8434674
internal: remove potentially slow method
2021-07-20 17:19:58 +03:00
Aleksey Kladov
0db4f3f6a4
internal: ensure consistent passing for config params
...
We pass "context" parametes first, so configs should be on the left.
"Bigger" context wins, so configs goes after db.
2021-07-06 00:00:39 +03:00
Aleksey Kladov
a9623f3165
minor: use minicore
2021-06-18 23:38:19 +03:00
Aleksey Kladov
cc73abf72c
minor: use minicore
2021-06-18 23:33:01 +03:00
Aleksey Kladov
c42cdff3d2
internal: minimize minicore
...
We want to keep minicore small, so let's split out iterator adapters and
sources into a separate `iterators` region, and use them only when
needed.
2021-06-17 11:28:44 +03:00
Aleksey Kladov
9b3aa591cd
internal: switch some tests to minicore
2021-06-17 11:18:37 +03:00
Maan2003
c9b4ac5be4
clippy::redudant_borrow
2021-06-13 09:24:16 +05:30
Lukas Wirth
5f1fac44c5
Cleanup parameter_hint_heuristics inlay hints test
2021-06-04 14:09:20 +02:00
Lukas Wirth
b0f6d8868c
Reorganize inlay_hints tests
2021-06-04 13:47:39 +02:00
Lukas Wirth
cc762c30df
Prefix/suffix parameter inlay hint hiding heuristic is more strict
2021-06-03 16:22:24 +02:00
bors[bot]
8b049ec393
Merge #8942
...
8942: Add `library` semantic token modifier to items from other crates r=arzg a=arzg
Closes #5772 .
A lot of code here is pretty repetitive; please let me know if you have any ideas how to improve it, or whether it’s fine as-is.
Side-note: How can I add tests for this? I don’t see a way for the test Rust code in `test_highlighting` to reference other crates to observe the new behaviour.
Co-authored-by: Aramis Razzaghipour <aramisnoah@gmail.com>
2021-05-25 02:30:47 +00:00
Aramis Razzaghipour
c32428571c
Remove hir krate methods
2021-05-24 14:54:16 +10:00
Aleksey Kladov
7283163bb9
Minor: fix comment style
...
See https://github.com/rust-analyzer/rust-analyzer/blob/master/docs/dev/style.md#documentation
2021-05-23 19:50:23 +03:00
Jade
dc63fea427
Add basic support for array lengths in types
...
This recognizes `let a = [1u8, 2, 3]` as having type `[u8; 3]` instead
of the previous `[u8; _]`. Byte strings and `[0u8; 2]` kinds of range
array declarations are unsupported as before.
I don't know why a bunch of our rustc tests had single quotes inside
strings un-escaped by `UPDATE_EXPECT=1 cargo t`, but I don't think it's
bad? Maybe something in a nightly?
2021-05-11 05:25:19 -07:00
Lukas Tobias Wirth
3f796fea9f
simplify
2021-05-05 22:55:12 +02:00
Florian Diebold
cd227f581e
Add and start using TraitRef and ProjectionTy builders
2021-04-04 13:16:38 +02:00
Ayomide Bamidele
276022682b
Gifs and screenshots for features in manual
2021-03-31 00:08:10 +01:00
cynecx
5ff3299dd6
syntax: return owned string instead of leaking string
2021-03-26 18:30:59 +01:00
Lukas Wirth
6c782a5314
Power up goto_implementation
...
by allowing it to be invoked on references of names, showing all (trait)
implementations of the given type in all crates including builtin types
2021-03-15 12:10:18 +01:00
Paco Soberón
e0eb80eaee
Allow comments between newlines in chaining hints
2021-02-17 00:09:56 +01:00
Jonas Schievink
244d8e37f1
Update fixed tests
2021-02-10 14:48:52 +01:00
Lukas Wirth
0aaa61cd56
Only hide parameter hints for path, field and methodcall expressions
2021-01-27 15:03:43 +01:00
Aleksey Kladov
46b4f89c92
.
2021-01-20 01:56:11 +03:00
Lukas Wirth
3d6480bc31
Render Fn* trait objects and impl types as rust does
2021-01-13 13:29:47 +01:00
Jacob Pratt
5e81892d4d
Skip leading underscores unconditionally
2021-01-10 04:23:32 -05:00
Jacob Pratt
22566ecd1b
Short-circuit boolean operation
2021-01-10 03:05:52 -05:00
Jacob Pratt
bd8a903548
Remove unnecessary allocation
...
The case-insensitive prefix/suffix check can be performed
character-by-character. This allows the check to be done without having
to allocate a new string. As a side effect, it's also no longer
necessary to convert the entire string to lowercase, as it's done as
needed. As the only case equality we're handling is ASCII, this
operation can be further optimized by using byte equality, rather than
character equality.
2021-01-09 21:36:38 -05:00
Jacob Pratt
38dd9aa284
Hide argument name hint regardless of case
2021-01-09 04:05:59 -05:00
Aleksey Kladov
f7a15b5cd1
More maintainable config
...
Rather than eagerly converting JSON, we losslessly keep it as is, and
change the shape of user-submitted data at the last moment.
This also allows us to remove a bunch of wrong Defaults
2021-01-06 15:39:28 +03:00
Kirill Bulatov
3f612d37c6
Move the helpers into ide_db
2020-11-28 16:30:39 +02:00
Kirill Bulatov
f4ae3650d8
Extract the import code into the shared module
2020-11-27 18:28:41 +02:00
Lukas Wirth
74c82ca8ce
Only show self
ident when showing parameter self hints
2020-11-02 21:56:16 +01:00
bors[bot]
d021dbeb4f
Merge #6393 #6399
...
6393: Remove repetitive inlay hints (take 2) r=matklad a=lnicola
6399: Keep generic annotations when qualifying things r=matklad a=Veykril
The `qualify_path` assists currently eats up already annotated generics in all but one cases which can be annoying if one already pre-fills generics of a type before it's been qualified.
Co-authored-by: Matthew Sanetra <matthewsanetra@gmail.com>
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2020-11-02 17:40:47 +00:00
Benjamin Coenen
ef2f7bb243
do not use associated types placeholder for inlay hint
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2020-10-28 14:07:12 +01:00
Matthew Sanetra
05723cb50d
Add check if param name is similar to fn name
2020-10-28 14:45:45 +02:00
Lukas Wirth
78c3e4a23c
Hide paramater inlay hints for cloned vars if applicable
2020-10-22 19:44:52 +02:00
Aleksey Kladov
a3a8ad8bc4
Don't rely on display names in inlay_hints
2020-10-20 18:14:14 +02:00
Aleksey Kladov
3b1a648539
More type safety around names
2020-10-20 17:09:03 +02:00
Aleksey Kladov
af4e75533f
Rename declaration_name -> display_name
...
Declaration names sounds like a name of declaration -- something you
can use for analysis. It empathically isn't, and is just a label
displayed in various UI. It's important not to confuse the two, least
we accidentally mix semantics with UI (I believe, there's already a
case of this in the FamousDefs at least).
2020-10-20 15:38:11 +02:00
Lukas Wirth
ed59512d02
Fix iterator hint shortening heuristic
2020-10-12 17:18:21 +02:00
Kirill Bulatov
2bb80a4f03
Also replace the associated types with iter
2020-10-10 21:39:57 +03:00
Kirill Bulatov
9a72b7bccd
Add a test
2020-10-10 20:02:38 +03:00
Lukas Wirth
783af171f7
Clean up inlay_hints
2020-10-07 13:18:12 +02:00
Lukas Wirth
e106857e80
Shorten iterator hints for std::iter iterators behind references
2020-10-07 12:14:08 +02:00
Lukas Wirth
209e9b9926
Shorten iterator chain hints
2020-10-07 11:30:42 +02:00
Lukas Wirth
c133651e0a
Move IntoIterator into FamousDefs
2020-10-07 10:14:42 +02:00
Lukas Wirth
c6f1de6ac5
Use FamousDefs for shorten_iterator hint
2020-10-06 21:25:39 +02:00
Lukas Wirth
aaa3905fdd
Shorten type hints for std::iter Iterators
2020-10-06 19:20:42 +02:00
Lukas Wirth
643bbf15a2
Fix trait object hir formatting behind pointer and references
2020-10-06 14:40:27 +02:00
Igor Aleksanov
3cadba4956
Improve readability in inlay_hints.rs
2020-10-03 13:44:43 +03:00
Igor Aleksanov
91a09f50f4
Remove 'for_expr' test from inlay_hints.rs
2020-10-03 08:58:17 +03:00
Igor Aleksanov
a58441ad1b
Make the tests for complete/incomplete for inlay hints work
2020-10-03 08:37:58 +03:00
Igor Aleksanov
8ca214fbfb
Better inlay hints in 'for' loops
2020-10-03 08:30:25 +03:00
Aleksey Kladov
b06259673f
rename mock_analysis -> fixture
2020-10-02 17:49:44 +02:00
Aleksey Kladov
b0fd3faf36
Switch to expect_test from crates.io
2020-08-21 13:19:31 +02:00
Dave Lage
d31634940d
Fix typo in comment
2020-08-15 16:37:44 -04:00
Aleksey Kladov
1b0c7701cc
Rename ra_ide -> ide
2020-08-13 17:58:27 +02:00