Florian Diebold
6c70619b01
Deal better with implicit type parameters and argument lists
2020-02-07 18:28:10 +01:00
Florian Diebold
dded90a748
Formatting
2020-02-07 18:28:10 +01:00
Florian Diebold
6787f124b5
Clean up RPIT a bit
2020-02-07 18:28:10 +01:00
Florian Diebold
0718682cff
Fix compilation of other crates
2020-02-07 18:28:10 +01:00
Florian Diebold
a3d8cffde3
Use variables in predicates as well
2020-02-07 18:28:10 +01:00
Florian Diebold
86348f5994
Comment fixes / todos
2020-02-07 18:28:10 +01:00
Florian Diebold
3397ca679f
Fix APIT some more
2020-02-07 18:28:10 +01:00
Florian Diebold
c6654fd4a7
Fix APIT
2020-02-07 18:28:10 +01:00
Florian Diebold
ed25cf70d5
Change Ty::Param to contain param ID
2020-02-07 18:28:10 +01:00
Florian Diebold
f8b7b64bce
WIP use params for APIT
2020-02-07 18:28:10 +01:00
Florian Diebold
33aa2f8e4f
Fix assoc type selection
2020-02-07 18:28:10 +01:00
Florian Diebold
4a8279a21a
Fix another test
2020-02-07 18:28:10 +01:00
Florian Diebold
dbc14f9d57
First stab at desugaring bounds for APIT
2020-02-07 18:28:10 +01:00
Florian Diebold
a9430865b3
Fix crash
2020-02-07 18:28:10 +01:00
Florian Diebold
a5554dcb17
Fix enum constructors
2020-02-07 18:28:10 +01:00
Florian Diebold
4789a993eb
Fix printing of function types
2020-02-07 18:28:10 +01:00
Florian Diebold
16c6937447
Lower impl trait to variables, move away from using placeholders where they don't belong
2020-02-07 18:28:10 +01:00
Florian Diebold
93aa166748
wip lower impl trait to type args
2020-02-07 18:28:10 +01:00
Florian Diebold
9dec65d3b1
wip implement lowering mode
2020-02-07 18:28:10 +01:00
Florian Diebold
7ea4bce1b2
Add impl trait lowering mode
2020-02-07 18:28:10 +01:00
Florian Diebold
22a65b11b3
Introduce TyLoweringContext
2020-02-07 18:28:10 +01:00
bors[bot]
5397f05bfe
Merge #3049
...
3049: Introduce assists utils r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-02-07 16:28:33 +00: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
aa64a84b49
Cleanups
2020-02-07 15:12:51 +01:00
Aleksey Kladov
ce44547cfb
Cleanup imports
2020-02-07 15:10:19 +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
bors[bot]
1996762b1f
Merge #3048
...
3048: Remove irrelevant distinction r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-02-07 13:35:02 +00:00
Aleksey Kladov
ae70d07237
Rename
2020-02-07 14:26:59 +01:00
Aleksey Kladov
f55be75a17
Remove irrelevant distinction
2020-02-07 14:25:16 +01:00
bors[bot]
8337dcd9e2
Merge #3047
...
3047: Update async unsafe fn ordering in parser r=matklad a=kiljacken
As of rust-lang/rust#61319 the correct order for functions that are both unsafe and async is: `async unsafe fn` and not `unsafe async fn`.
This commit updates the parser tests to reflect this, and corrects parsing behavior to accept the correct ordering.
Fixes #3025
Co-authored-by: Emil Lauridsen <mine809@gmail.com>
2020-02-07 13:21:02 +00:00
bors[bot]
6d6a995e09
Merge #3040
...
3040: Rework value parameter parsing r=matklad a=tobz1000
Fixes #2847 .
- `Fn__(...)` parameters with idents/patterns no longer parse
- Trait function parameters with arbitrary patterns parse
- Trait function parameters without idents/patterns no longer parse
- `fn(...)` parameters no longer parse with patterns other than a single ident
__Question__: The pre-existing test `param_list_opt_patterns` has been kept as-is, although the name no longer makes sense (it's testing `Fn__(...)` params, which aren't allowed patterns any more). What would be best to do about this?
Co-authored-by: Toby Dimmick <tobydimmick@pm.me>
2020-02-07 13:13:36 +00:00
Emil Lauridsen
73ec2ab184
Update async unsafe fn ordering.
...
As of rust-lang/rust#61319 the correct order for functions that are both
unsafe and async is: `async unsafe fn` and not `unsafe async fn`.
This commit updates the parser tests to reflect this, and corrects
parsing behavior to accept the correct ordering.
Fixes #3025
2020-02-07 13:51:51 +01:00
Toby Dimmick
90ff2be4e8
PR tweaks
2020-02-07 12:36:33 +00:00
bors[bot]
4d0d113c7d
Merge #3044
...
3044: Don't crash when recieving unkown file for cargo diagnostic. r=matklad a=kiljacken
Fixes #3014
Co-authored-by: Emil Lauridsen <mine809@gmail.com>
2020-02-07 11:41:25 +00:00
Emil Lauridsen
137a878461
to_string_lossy() -> display()
2020-02-07 12:35:36 +01:00
bors[bot]
1479dd6f2d
Merge #3045
...
3045: Cleanup early return assist r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-02-07 11:34:31 +00:00
Aleksey Kladov
36ee9ecb67
Cleanup early return assist
2020-02-07 12:30:39 +01:00
Emil Lauridsen
5db7c8642b
Don't crash when recieving unkown file for cargo diagnostic.
2020-02-07 12:30:29 +01:00
Aleksey Kladov
aa1234e02b
Generalize invert_if to just always work
2020-02-07 12:14:33 +01:00
bors[bot]
5aba5a756a
Merge #3042
...
3042: A tiny bit more consistent API r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-02-06 23:00:07 +00:00
Aleksey Kladov
56e3fbe588
A tiny bit more consistent API
2020-02-06 23:59:27 +01:00
Toby Dimmick
0183952d2e
Closure params test
2020-02-06 20:39:27 +00:00
Toby Dimmick
e1921ea59c
rustfmt
2020-02-06 20:04:35 +00:00
Toby Dimmick
7e66785859
Rework value parameter parsing
...
- `Fn__(...)` parameters with idents/patterns no longer parse
- Trait function parameters with arbitrary patterns parse
- Trait function parameters without idents/patterns no longer parse
- `fn(...)` parameters no longer parse with patterns other than a single ident
2020-02-06 19:45:51 +00:00
bors[bot]
a4431e8302
Merge #3038
...
3038: Minor rename r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-02-06 17:50:11 +00:00
Aleksey Kladov
7e73b7a5f8
Minor rename
2020-02-06 18:47:26 +01:00
bors[bot]
918115c32e
Merge #3036
...
3036: Remove the leftovers after ImportLocator removal r=matklad a=SomeoneToIgnore
Follow the FIXME's suggestion (https://github.com/rust-analyzer/rust-analyzer/pull/3034/files#diff-001b3b1412c33fee802c22b0f848dcd7L237 ) and remove the `ModuleDefId` reexport.
Also rename `ImportsLocatorIde` into plain `ImportsLocator`
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
2020-02-06 17:30:57 +00:00