diff options
author | Florian Diebold <[email protected]> | 2019-08-22 12:23:50 +0100 |
---|---|---|
committer | Florian Diebold <[email protected]> | 2019-08-22 20:55:11 +0100 |
commit | b1a40042e8f595af0486cf1cc70b63be1ff302b3 (patch) | |
tree | c3f58127c4a330275d2dd635bb5fb11ca7957ddc /crates/ra_ide_api/src/completion/completion_item.rs | |
parent | 16a7d8cc850002b427fdc8d21ccde81caaed7902 (diff) |
Handle impl/dyn Trait in method resolution
When we have one of these, the `Trait` doesn't need to be in scope to call its
methods. So we need to consider this when looking for method
candidates. (Actually I think the same is true when we have a bound `T:
some::Trait`, but we don't handle that yet).
At the same time, since Chalk doesn't handle these types yet, add a small hack
to skip Chalk in method resolution and just consider `impl Trait: Trait` always
true. This is enough to e.g. get completions for `impl Trait`, but since we
don't do any unification we won't infer the return type of e.g. `impl
Into<i64>::into()`.
Diffstat (limited to 'crates/ra_ide_api/src/completion/completion_item.rs')
0 files changed, 0 insertions, 0 deletions