rust-analyzer/crates
bors[bot] 2a3ab7f3b4
Merge #4689
4689: Implement return position impl trait / opaque type support r=matklad a=flodiebold

This is working, but I'm not that happy with how the lowering works. We might need an additional representation between `TypeRef` and `Ty` where names are resolved and `impl Trait` bounds are separated out, but things like inference variables don't exist and `impl Trait` is always represented the same way.

Also note that this doesn't implement correct handling of RPIT *inside* the function (which involves turning the `impl Trait`s into variables and creating obligations for them). That intermediate representation might help there as well.

Co-authored-by: Florian Diebold <flodiebold@gmail.com>
Co-authored-by: Florian Diebold <florian.diebold@freiheit.com>
2020-06-05 15:46:28 +00:00
..
ra_arena Extract messy tree handling out of profiling code 2020-04-25 21:22:40 +02:00
ra_assists introduce_named_lifetime assist wasn't applicable when type parameter 2020-06-04 17:31:21 -05:00
ra_cfg add support of feature flag for runnables #4464 2020-05-23 20:59:18 +02:00
ra_db Merge #4760 2020-06-05 15:23:22 +00:00
ra_flycheck Cleanups 2020-05-15 02:09:30 +02:00
ra_fmt Introduce EffectExpr 2020-05-02 11:21:39 +02:00
ra_hir Merge #4689 2020-06-05 15:46:28 +00:00
ra_hir_def Merge #4760 2020-06-05 15:23:22 +00:00
ra_hir_expand Minimize FileLoader interface 2020-06-05 17:22:56 +02:00
ra_hir_ty Merge #4689 2020-06-05 15:46:28 +00:00
ra_ide Merge #4729 #4748 2020-06-05 15:14:35 +00:00
ra_ide_db Merge #4689 2020-06-05 15:46:28 +00:00
ra_mbe Reuse Vec allocations 2020-05-16 22:20:44 +02:00
ra_parser Move default const test out of line 2020-06-04 13:06:57 -04:00
ra_proc_macro proc_macro: add ability to log to stderr and view output in vscode 2020-04-23 01:57:02 +03:00
ra_proc_macro_srv Fix tests, apply code review proposals 2020-05-31 03:10:23 +03:00
ra_prof Simplify profiler impl (bubble up Option and shorten code 2020-04-26 00:55:49 +03:00
ra_project_model Document rust-project.json 2020-06-03 15:17:26 +02:00
ra_syntax Move default const test out of line 2020-06-04 13:06:57 -04:00
ra_text_edit Formalize JoinLines protocol extension 2020-05-21 20:05:33 +02:00
ra_toolchain Simplify match 2020-05-09 22:20:11 +03:00
ra_tt Reduce reallocations in ra_tt::buffer::TokenBuffer::new_inner 2020-05-16 22:20:44 +02:00
rust-analyzer Merge #4729 #4748 2020-06-05 15:14:35 +00:00
stdx Use split1 when formatting function signature params 2020-06-03 07:26:15 -04:00
test_utils Use split1 when formatting function signature params 2020-06-03 07:26:15 -04:00