Emil Lauridsen
428a6ff5b8
Move cargo watch functionality to separate crate
2019-12-27 11:10:07 +01:00
Florian Diebold
dfe95d735b
Remove Arc from RawVisibility
...
Now that it's not used as a direct query return value anymore, it doesn't need
to be cheaply cloneable anymore.
2019-12-26 16:42:57 +01:00
Florian Diebold
04cf98f8a6
Fix cross-crate glob privacy handling
2019-12-26 16:31:38 +01:00
Florian Diebold
78111620a3
Remove visibility query, instead add struct field visibility to data
...
Methods should be handled the same, and for items the visibility will be in the
def map.
2019-12-26 16:23:40 +01:00
Florian Diebold
50ebff257d
Rename ResolvedVisibility -> Visibility
2019-12-26 16:23:40 +01:00
Florian Diebold
e1a2961273
Rename Visibility -> RawVisibility
2019-12-26 16:23:40 +01:00
Florian Diebold
04e8eaa14b
Handle privacy for modules
2019-12-26 16:23:40 +01:00
Florian Diebold
21359c3ab5
Take visibility into account for glob imports
2019-12-26 16:23:40 +01:00
Florian Diebold
8ac25f119e
Keep track of visibility during def collection
2019-12-26 16:23:40 +01:00
Florian Diebold
79c90b5641
Collect visibility of items during nameres
2019-12-26 16:23:40 +01:00
Florian Diebold
c31dae2aca
Add doc comment
2019-12-26 16:23:40 +01:00
Florian Diebold
8aeaf93b9a
Make enum variant fields public
2019-12-26 16:23:40 +01:00
Florian Diebold
9e9c4be48a
Hide completions for private struct fields
2019-12-26 16:23:40 +01:00
Florian Diebold
ca15cf422c
Add visibility in code model for fields
2019-12-26 16:23:40 +01:00
Florian Diebold
1ce809d0fa
Add logic for resolving and checking visibility
2019-12-26 16:23:40 +01:00
Florian Diebold
069bf55cca
Add infrastructure for visibility on syntax and hir_def level
2019-12-26 16:23:40 +01:00
bors[bot]
97f01396ed
Merge #2658
...
2658: Only add features flags if non-empty r=matklad a=edwin0cheng
This prevent error when disabled `all-features` in a cargo workspace, because of `--features is not allowed in the root of a virtual workspace` when running `cargo metadata`.
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2019-12-25 20:26:08 +00:00
bors[bot]
24e552fadf
Merge #2663
...
2663: Fill in type params in 'add missing impl members' assist r=flodiebold a=flodiebold
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2019-12-25 19:26:18 +00:00
Emil Lauridsen
0cdbd08149
Keep VSCode config mostly backwards compatible
2019-12-25 20:26:06 +01:00
Emil Lauridsen
71d2d81dcc
Some documentatioN
2019-12-25 19:56:07 +01:00
Emil Lauridsen
069c165536
Actually respect disabling cargo check functionality
2019-12-25 19:17:54 +01:00
Emil Lauridsen
f7d04d0575
Re-format ra_lsp_server changes
2019-12-25 19:14:30 +01:00
Emil Lauridsen
178c23f505
Re-implement status display using LSP 3.15 progress event
2019-12-25 19:08:44 +01:00
Emil Lauridsen
c21fbc3e87
Migrate tests from extension to rust
2019-12-25 17:37:40 +01:00
Emil Lauridsen
17360b5d14
Fix use of wrong message in diagnostic
2019-12-25 17:37:40 +01:00
Emil Lauridsen
6af4bf7a8d
Configuration plumbing for cargo watcher
2019-12-25 17:37:40 +01:00
Emil Lauridsen
66e8ef53a0
Initial implementation of cargo check watching
2019-12-25 17:37:40 +01:00
Florian Diebold
c39352fa43
Fill in type params in 'add missing impl members' assist
2019-12-24 17:29:27 +01:00
bors[bot]
3f7e5cde0b
Merge #2661
...
2661: Implement infer await from async function r=flodiebold a=edwin0cheng
This PR is my attempt for trying to add support for infer `.await` expression from an `async` function, by desugaring its return type to `Impl Future<Output=RetType>`.
Note that I don't know it is supposed to desugaring it in that phase, if it is not suitable in current design, just feel free to reject it :)
r=@flodiebold
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2019-12-24 16:28:46 +00:00
Edwin Cheng
208ad97fdc
Remove AsyncOwner
2019-12-25 00:25:18 +08:00
Edwin Cheng
42813126d9
Check if parameters is empty
2019-12-25 00:12:29 +08:00
Edwin Cheng
3a2cf708ed
Add FIXME
2019-12-24 23:39:17 +08:00
Edwin Cheng
d0537cda9e
Formatting
2019-12-24 20:30:39 +08:00
Edwin Cheng
0edb5b4a50
Implement infer await from async func
2019-12-24 19:45:28 +08:00
Kirill Bulatov
242be3631e
Omit closure parameters
2019-12-23 18:30:25 +02:00
Edwin Cheng
4ee3c5202e
Only add features flags if non-empty
2019-12-24 00:27:48 +08:00
Jeremy Kolb
019fab2261
lsp-types 0.67
2019-12-23 09:33:49 -05:00
Edwin Cheng
12cc2ed557
Use pre-stored macro file
2019-12-23 21:56:10 +08:00
bors[bot]
ce07a2daa9
Merge #2636
...
2636: Chalk update and refactoring r=flodiebold a=flodiebold
This updates the Chalk integration to https://github.com/rust-lang/chalk/pull/311 , which will presumably get merged soon, and refactors it some more, most notably introducing our own `TypeFamily` instead of reusing `ChalkIr`. It's still mostly the same as `ChalkIr` though, except for using Salsa `InternId`s directly.
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2019-12-23 10:58:06 +00:00
John-John Tedro
700e74df4a
Bump lsp-types to 0.66.0 ( fixes #2651 )
2019-12-23 11:03:41 +01:00
Edwin Cheng
16156d766d
Add macro call support for type_of
2019-12-23 13:19:01 +08:00
Florian Diebold
1f7f4578f7
Filter out error predicates in type bounds as well
2019-12-23 00:08:03 +01:00
Florian Diebold
4053fcfca0
Introduce our own Chalk TypeFamily, instead of using ChalkIr
...
It's not very different, except we can directly use Salsa IDs instead of casting
them. This means we need to refactor the handling of errors to get rid of
UNKNOWN_TRAIT though.
2019-12-23 00:08:03 +01:00
Florian Diebold
6b5efe5bda
Refactor Chalk integration some more
2019-12-23 00:08:03 +01:00
Florian Diebold
67a2555f6d
Update Chalk, clean up Chalk integration a bit
2019-12-23 00:08:03 +01:00
Aleksey Kladov
e424545c0f
Rudimentary name resolution for local items
2019-12-22 22:41:21 +01:00
Aleksey Kladov
7c405c0156
Simplify
2019-12-22 19:32:35 +01:00
Aleksey Kladov
007032f850
Refactor
2019-12-22 19:31:01 +01:00
Aleksey Kladov
baee746185
Share impl Scope between modules and blocks
2019-12-22 15:52:35 +01:00
Aleksey Kladov
6c3ddcfa50
Simplify
2019-12-22 15:37:53 +01:00