bors[bot]
1927eb088a
Merge #901
...
901: Add basic support for showing fn signature when hovering r=matklad a=vipentti
This adds basic support for displaying function signature when hovering over a usage of a function.
Additionally refactored `hover` to return `HoverResult` to ease with testing and in general to be more robust.
Co-authored-by: Ville Penttinen <villem.penttinen@gmail.com>
2019-02-27 11:50:38 +00:00
Ville Penttinen
6eb45c1c2b
Remove RawResponse::empty()
2019-02-27 12:57:59 +02:00
Ville Penttinen
33cebe1724
Work around for issue in vscode reporting a failure in request
...
vscode would report "A request has failed" when it got "Content modified"
message and this would cause a pop-up to appear. This works around the issue by
returning an "empty" response that vscode can ignore.
2019-02-27 12:49:04 +02:00
Ville Penttinen
e3525527e3
Add support for hovering over the name of an item
2019-02-27 09:49:22 +02:00
Ville Penttinen
79114c67b1
Replace visit_fn with crate::completion::function_label
2019-02-26 21:30:46 +02:00
Dale Wijnand
ffca2c1fe4
Fix a typo
2019-02-26 17:59:32 +00:00
Ville Penttinen
6f5fd6c9de
Add new type HoverResult to contain the results of hovering
...
This makes testing hovers easier as well as allows us to do more things with the
results if needed.
2019-02-26 19:30:17 +02:00
Ville Penttinen
3ec2584148
Add support for showing fn signature when hovering
2019-02-26 18:55:08 +02:00
bors[bot]
7c9acf2f83
Merge #897
...
897: Add basic const/static type inference r=flodiebold a=vipentti
This adds basic const/static type inference discussed in #887 .
Currently the inference does not work for const/static declared inside a block. In addition the inference does not work inside the bodies of const/static.
Co-authored-by: Ville Penttinen <villem.penttinen@gmail.com>
2019-02-25 12:03:57 +00:00
Aleksey Kladov
4f67df9042
kill accidently commited file
2019-02-25 15:02:12 +03:00
Aleksey Kladov
78f10fcdc4
rename type to type_alias in the AST as well
2019-02-25 13:49:32 +03:00
Ville Penttinen
cff9a7dfad
Move ConstSignature creation to a single method
2019-02-25 10:55:39 +02:00
Ville Penttinen
29f93a7906
Add static type inference
2019-02-25 10:55:23 +02:00
Ville Penttinen
18b0bd9bff
Add const type inference
2019-02-25 10:51:46 +02:00
Aleksey Kladov
330ce2e26b
complete patterns
2019-02-24 23:50:02 +03:00
Florian Diebold
bd8ed644e4
Rename Type => TypeAlias
2019-02-24 21:36:49 +01:00
Florian Diebold
c3c0979561
Add test for recursive type aliases
2019-02-24 20:54:04 +01:00
Florian Diebold
5d72b96988
Implement support for type aliases
2019-02-24 20:54:04 +01:00
Aleksey Kladov
d5f6a5f5e2
move testing functions
2019-02-24 21:54:13 +03:00
Aleksey Kladov
98510ec5d3
move the rest of presentation to presentation
2019-02-24 21:46:04 +03:00
Aleksey Kladov
b7a7872910
move more code to presentation
2019-02-24 21:34:38 +03:00
Aleksey Kladov
a650a93bf5
move res completion to presentation
2019-02-24 21:21:31 +03:00
Aleksey Kladov
2369af8c82
simplify
2019-02-24 20:59:12 +03:00
Aleksey Kladov
5887c0e574
move enum-variants to presentation
2019-02-24 20:56:53 +03:00
Aleksey Kladov
9af525dbd6
simplify
2019-02-24 20:49:55 +03:00
Aleksey Kladov
3c7c5a7354
move presentaion completion to presentation
2019-02-24 19:37:22 +03:00
Aleksey Kladov
b04cadc02c
move function rendering to presentation
2019-02-24 19:34:27 +03:00
Aleksey Kladov
d0a261468e
introduce completion presentation
...
This module should remove completion rendering boilerplate from the
"brains" of completion engine.
2019-02-24 18:51:38 +03:00
bors[bot]
67528c4b39
Merge #891
...
891: Field completion r=matklad a=matklad
bors r+
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-02-24 14:39:38 +00:00
Aleksey Kladov
6285fcc39b
complete fields in struct literals
2019-02-24 17:39:08 +03:00
Florian Diebold
c71740e956
Clean up imports a bit
2019-02-24 15:17:20 +01:00
Aleksey Kladov
65a2be4953
complete struct literals
2019-02-24 17:01:56 +03:00
Aleksey Kladov
666303faf3
support upcastig in AST enum
2019-02-24 16:57:05 +03:00
Aleksey Kladov
c110e72a11
add marks to assists
2019-02-24 15:46:06 +03:00
Aleksey Kladov
b3cc7c057d
dont show introduce variable everywhere
2019-02-24 14:18:10 +03:00
Aleksey Kladov
ef442b8682
Assign IDs to assists
2019-02-24 14:00:00 +03:00
bors[bot]
f6f160391d
Merge #885
...
885: Parse token trees directy r=matklad a=matklad
This takes advantage of the recent macro refactoring to directly parse token stream into a syntax tree.
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-02-24 10:15:43 +00:00
Aleksey Kladov
81bca78349
rename
2019-02-24 13:14:14 +03:00
Florian Diebold
82fe7b77a3
Refactor associated method resolution a bit and make it work with generics
2019-02-23 23:00:02 +01:00
Aleksey Kladov
8cf156d85b
Add a test for macro parsing
2019-02-23 17:51:23 +03:00
Florian Diebold
dcfb4ee702
Split ty.rs into several modules
...
It was just getting too big. We now have:
- ty: the `Ty` enum and helpers
- ty::infer: actual type inference
- ty::lower: lowering from HIR to `Ty`
- ty::op: helpers for binary operations, currently
2019-02-23 15:36:38 +01:00
Aleksey Kladov
8eac450f41
implement tt -> ast
2019-02-23 17:21:56 +03:00
Aleksey Kladov
83d6be6cec
keep-text
2019-02-23 16:55:18 +03:00
Aleksey Kladov
71b8a874e7
flatten tt
2019-02-23 16:55:18 +03:00
Aleksey Kladov
10deefd371
token source scaffold
2019-02-23 16:55:18 +03:00
Aleksey Kladov
e9cafafbc2
add dependency on the parser
2019-02-23 16:55:18 +03:00
Aleksey Kladov
60373aa504
add interface
2019-02-23 16:55:18 +03:00
Aleksey Kladov
f078f7adc8
introduce tree builder
2019-02-23 16:55:01 +03:00
Ville Penttinen
14cff98cb0
Simplify test_fill_match_arm_refs test cases
2019-02-23 15:13:17 +02:00
Aleksey Kladov
0c1cb98182
rename
2019-02-23 16:07:29 +03:00