mirror of
https://github.com/rust-lang/rust-analyzer
synced 2025-01-06 02:08:49 +00:00
f59cd1a4a0
1515: Trait environment r=matklad a=flodiebold This adds the environment, i.e. the set of `where` clauses in scope, when solving trait goals. That means that e.g. in ```rust fn foo<T: SomeTrait>(t: T) {} ``` , we are able to complete methods of `SomeTrait` on the `t`. This affects the trait APIs quite a bit (since every method that needs to be able to solve for some trait needs to get this environment somehow), so I thought I'd do it rather sooner than later ;) Co-authored-by: Florian Diebold <flodiebold@gmail.com> |
||
---|---|---|
.. | ||
code_model | ||
expr | ||
nameres | ||
ty | ||
adt.rs | ||
code_model.rs | ||
db.rs | ||
diagnostics.rs | ||
either.rs | ||
expr.rs | ||
generics.rs | ||
ids.rs | ||
impl_block.rs | ||
lang_item.rs | ||
lib.rs | ||
marks.rs | ||
mock.rs | ||
name.rs | ||
nameres.rs | ||
path.rs | ||
resolve.rs | ||
source_binder.rs | ||
source_id.rs | ||
traits.rs | ||
ty.rs | ||
type_alias.rs | ||
type_ref.rs |