Aleksey Kladov
ff42008679
Move insert_use util to utils
2020-02-28 21:53:20 +01:00
Aleksey Kladov
c3a4c4429d
Refactor primary IDE API
...
This introduces the new type -- Semantics.
Semantics maps SyntaxNodes to various semantic info, such as type,
name resolution or macro expansions.
To do so, Semantics maintains a HashMap which maps every node it saw
to the file from which the node originated. This is enough to get all
the necessary hir bits just from syntax.
2020-02-26 12:55:50 +01:00
Aleksey Kladov
52fd19621c
Remove code duplication in tests
2020-02-26 11:25:07 +01:00
Aleksey Kladov
312a779610
Add remove_mut
assist
2020-02-19 12:44:54 +01:00
Shotaro Yamada
d06733efeb
Cleanup
2020-02-19 13:36:59 +09:00
Kirill Bulatov
b8ddcb0652
Run cargo +nightly fix --clippy -Z unstable-options
2020-02-18 16:03:08 +02:00
Kevin DeLorey
d85abd77b9
Added a utility function that can be used to determine the missing impl items.
2020-02-09 12:24:59 -06:00
Aleksey Kladov
9769c5140c
Simplify Assists interface
...
Instead of building a physical tree structure, just "tag" related
assists with the same group
2020-02-09 16:03:54 +01:00
Kirill Bulatov
740a26b7d2
Rename add import assist
2020-02-07 23:53:08 +02:00
Aleksey Kladov
d00add1f1f
Introduce assists utils
2020-02-07 17:28:02 +01:00
Aleksey Kladov
561b4b11ff
Name assist handlers
2020-02-07 17:28:02 +01:00
Aleksey Kladov
6ac9c4ad6a
Cleanup
2020-02-07 15:04:50 +01:00
Aleksey Kladov
2d95047f7c
Cleanup
2020-02-07 14:55:47 +01:00
Aleksey Kladov
b831b17b3d
Simplify
2020-02-07 14:53:50 +01:00
Aleksey Kladov
7e73b7a5f8
Minor rename
2020-02-06 18:47:26 +01:00
Aleksey Kladov
d1e8b8d134
Fix tests
2020-02-06 17:42:17 +01:00
Aleksey Kladov
ad204f7562
Mostly remove ImoportLocator infra
2020-02-06 17:17:51 +01:00
Aleksey Kladov
cf812c12d1
Assists are not generic
2020-02-06 17:12:02 +01:00
Aleksey Kladov
f8965ffafd
Remove assists TestDB
2020-02-06 16:56:42 +01:00
Aleksey Kladov
2c922ef549
Start switching assists to a root database
2020-02-06 16:56:42 +01:00
Aleksey Kladov
a173e31890
Make assists use ImportsLocator directly
2020-02-06 16:40:28 +01:00
Kirill Bulatov
9be1ab7ff9
Code review fixes
2020-01-27 14:42:45 +02:00
Kirill Bulatov
1a78991df6
Adjust the tests
2020-01-27 00:57:24 +02:00
Kirill Bulatov
d0a782ef1c
Have a better trait interface
2020-01-27 00:17:10 +02:00
Kirill Bulatov
f57239729c
Remove unnecessary lifetime parameter
2020-01-27 00:16:29 +02:00
Kirill Bulatov
316795e074
Initial auto import action implementation
2020-01-27 00:16:29 +02:00
TomasKralCZ
8dc94a452c
fix typo in 'inline_local_variable'
2020-01-19 17:39:53 +01:00
Kirill Bulatov
d51cf7794d
itertools::Either -> either::Either
2020-01-15 20:20:20 +02:00
Kirill Bulatov
78a21253b4
Apply the api design suggestions
2020-01-15 20:17:17 +02:00
Kirill Bulatov
73dc8b6f06
Another attempt to add multiple edits
2020-01-15 20:16:27 +02:00
Jeremy Kolb
e04661e495
Fix casing
2020-01-14 12:32:26 -05:00
Florian Diebold
15fc643e05
Fix ordering problem between qualifying paths and substituting params
2020-01-11 23:33:04 +01:00
Paulo Lieuthier
439080f027
assists: add assist for custom implementation for derived trait
2019-11-28 16:56:06 -03:00
bravomikekilo
8a8be06219
initial invert_if
2019-11-22 02:51:40 +08:00
Wesley Norris
cbc6f94573
Add add_new assist
...
Adds a new assist to autogenerate a new fn based on the selected struct,
excluding tuple structs and unions. The fn will inherit the same
visibility as the struct and the assist will attempt to reuse any
existing impl blocks that exist at the same level of struct.
2019-11-09 10:56:36 -05:00
Aleksey Kladov
42370610ce
Restore assists tests
2019-11-04 22:28:47 +03:00
Aleksey Kladov
74d827bb80
Rename MockDatabase -> TestDB
...
Actually working rename is sooo useful!
2019-11-04 22:21:15 +03:00
Aleksey Kladov
24894aca31
Remove more duplication in test fixtures
2019-11-04 22:12:49 +03:00
Aleksey Kladov
ad3fe316c6
further simplify assists
2019-10-27 18:22:14 +03:00
bors[bot]
ad950830d0
Merge #2090
...
2090: move public stuff to top r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-10-27 14:13:09 +00:00
Wesley Norris
3a64a85a52
Fixes #2054 .
...
This adds the `flip_trait_bound` assist which allows for the swapping of two trait bounds in a trait list that are next to each other.
2019-10-27 16:52:33 +03:00
Aleksey Kladov
73532e900e
rename auto_import -> add_import
...
We are long way from auto imports at the moment
2019-10-27 16:46:49 +03:00
Aleksey Kladov
0dd35ff2b2
auto-generate assists docs and tests
2019-10-25 14:47:48 +03:00
Mikhail Modin
fb215dc192
Adds "replace with guarded return" assist
2019-10-20 19:14:32 +01:00
Lúcás Meier
ad65ba4062
WIP: Add demorgan application with naive negation
2019-10-03 22:19:46 +02:00
Aleksey Kladov
05ca252fb5
remove ast_editor.rs
2019-09-30 10:05:12 +03:00
Aleksey Kladov
d847d53e36
Start simplifying editing API
2019-09-26 22:22:08 +03:00
Aleksey Kladov
183a38fb50
keep ast creation API simple
2019-09-26 15:29:28 +03:00
Aleksey Kladov
69689625ce
move ast builder to a separate file
2019-09-25 14:35:26 +03:00
Aleksey Kladov
f32081fa18
move assists to subdir
2019-09-25 14:29:41 +03:00