Lukas Wirth
f979667fb5
Remove DescendPreference::SameText
2024-08-22 12:34:20 +02:00
Chayim Refael Friedman
9d3368f2c2
Properly account for editions in names
...
This PR touches a lot of parts. But the main changes are changing
`hir_expand::Name` to be raw edition-dependently and only when necessary
(unrelated to how the user originally wrote the identifier),
and changing `is_keyword()` and `is_raw_identifier()` to be edition-aware
(this was done in #17896 , but the FIXMEs were fixed here).
It is possible that I missed some cases, but most IDE parts should properly
escape (or not escape) identifiers now.
The rules of thumb are:
- If we show the identifier to the user, its rawness should be determined
by the edition of the edited crate. This is nice for IDE features,
but really important for changes we insert to the source code.
- For tests, I chose `Edition::CURRENT` (so we only have to (maybe) update
tests when an edition becomes stable, to avoid churn).
- For debugging tools (helper methods and logs), I used `Edition::LATEST`.
2024-08-16 16:46:24 +03:00
Lukas Wirth
5264f86242
Encode edition within FileId in the hir layer
2024-07-18 08:49:10 +02:00
Lukas Wirth
2346a80ab4
Remove Name::to_smol_str
2024-07-16 12:43:58 +02:00
Lukas Wirth
3168ab5b99
Enum variants are not generic def ids
2024-06-24 10:07:31 +02:00
Lukas Wirth
8520a0c585
Thread more HasSource::source calls through Semantics for caching
2024-06-10 10:33:07 +02:00
Lukas Wirth
7bd343e085
Show fn traits in signature info for trait implementors
2024-05-18 16:22:59 +02:00
Lukas Wirth
ff79903cf6
Render closure fn trait kind in siganture help
2024-05-18 15:01:37 +02:00
Lukas Wirth
7c6f31a45b
Allow hir::Param to refer to other entity params aside from functions
2024-05-18 12:35:55 +02:00
Johann Hemmann
fad4fa163c
cargo clippy --fix
2024-01-18 13:59:49 +01:00
Lukas Wirth
f49a2fed3f
internal: Move out WithFixture
into dev-dep only crate
2023-12-18 15:24:08 +01:00
Lukas Wirth
35620306a6
internal: Move proc-macro knowledge out of base-db
2023-12-18 12:37:18 +01:00
Lukas Wirth
d2cd30007c
Implicit format args support
2023-12-05 17:07:00 +01:00
Lukas Wirth
5b8e386bae
Improve macro descension API
2023-12-05 17:06:57 +01:00
Lukas Wirth
81f0108067
Remove markdown module from rust-analyzer crate
2023-09-02 17:27:52 +02:00
Lukas Wirth
b1575528c0
Move doc comment handling into ide-db
2023-09-02 16:27:26 +02:00
Lukas Wirth
53b292478d
internal: Add offset param to token descending API
2023-08-16 10:07:18 +02:00
oxalica
de86444756
Prefer hir::SelfParam
and fix signature help of methods from macros
2023-08-09 02:42:08 +08:00
Lukas Wirth
0e28202832
Insert missing expr/pat for leading comma tuples
2023-06-01 08:56:40 +02:00
Lukas Wirth
7d1bf7023d
Recover from leading comma in tuple pat and expr
2023-06-01 08:40:50 +02:00
Lukas Wirth
42450d2511
Add signature help for tuple patterns and expressions
2023-06-01 07:45:55 +02:00
Lukas Wirth
c7ef6c25b7
internal: Replace Display impl for Name
2023-05-24 20:55:12 +02:00
hkalbasi
59b6f2d9f2
Compute closure captures
2023-04-10 23:04:34 +03:30
Lukas Wirth
55120b3d83
Add signature help for tuple struct patterns
2023-03-15 10:17:30 +01:00
Lukas Wirth
03a6ab0b62
Add signature help for record struct patterns
2023-03-14 21:55:03 +01:00
Lukas Wirth
199bc82ce8
feature: Make replace_or_with_or_else assists more generally applicable
2023-03-06 22:17:30 +01:00
Ryo Yoshida
29c957f973
Lower and handle trait aliases in HIR
2023-03-04 00:24:07 +09:00
Lukas Wirth
244a48d13d
Cleanup signature help a bit
2023-02-13 11:25:45 +01:00
Lukas Wirth
9738f97f8c
Fix active parameter analysis once more
2023-02-12 17:32:11 +01:00
Jonas Schievink
cad4cb38cd
Make it work with Self { .. }
2023-01-27 19:25:31 +01:00
Jonas Schievink
e993072661
Provide signature help when typing record literal
2023-01-27 19:17:23 +01:00
Maybe Waffle
4a16afa264
Parse do yeet
expressions
2022-12-28 22:42:26 +00:00
Jonas Schievink
b65b02fd97
Fix signature help not showing up when cursor is between ))
or >>
2022-11-29 18:50:21 +01:00
Jonas Schievink
9be0615bde
Don't canonicalize self type when querying FnOnce signature
2022-11-08 18:05:07 +01:00
Jonas Schievink
ecad1a9a6e
Create Callable
s for generic types implementing FnOnce
2022-11-01 16:38:19 +01:00
Lukas Wirth
aa1491ecde
Record derive helper attributes, resolve them in IDE layer
2022-07-26 09:26:51 +02:00
Amos Wenger
816f7fe12a
Run cargo fix --edition-idioms
2022-07-20 15:02:08 +02:00
Lukas Wirth
76ae5434fa
internal: Bump Dependencies
2022-06-10 17:30:02 +02:00
Jonas Schievink
52ff863abc
Teach Callable
about closures properly
2022-05-19 18:53:08 +02:00
Jonas Schievink
ac3c18bc17
Include assoc. types in trait signature help
2022-05-10 16:54:31 +02:00
iDawer
956b8fb954
signature_help
: detect fully qualified call syntax for parameter fallback
2022-05-10 17:18:42 +05:00
iDawer
dffbab45f4
Don't show signature help after closing bracket
2022-04-29 23:26:54 +05:00
iDawer
729cd8530b
signature_help
: use corresponding param list for methods
2022-04-26 11:50:28 +05:00
iDawer
baa4fa09ef
Add fallback for return type
2022-04-23 17:21:21 +05:00
iDawer
fae9049ccd
Fall back to parameter definitions on error types in signature help
2022-04-23 17:21:21 +05:00
Lukas Wirth
c290e68ff9
internal: Remove PathResolution::AssocItem
2022-04-01 18:32:05 +02:00
Jonas Schievink
4e07864f59
signature help: skip lifetimes when non-lifetime arguments are present
2022-03-22 16:44:27 +01:00
Jonas Schievink
4bb5df0ce5
Avoid signature help inside multiline expressions
...
Fixes #11768
2022-03-22 16:08:46 +01:00
Jonas Schievink
c9cefb9916
Improve readability of signature help tests
2022-03-22 15:03:19 +01:00
Jonas Schievink
55d2a25123
Rename call info to "signature help"
...
It is no longer limited to just calls
2022-03-18 20:19:35 +01:00