mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-10-01 11:31:15 +00:00
![bors[bot]](/assets/img/avatar_default.png)
1606: Add `if let`, `while let` and match arm inlay hints r=matklad a=SomeoneToIgnore <img width="693" alt="image" src="https://user-images.githubusercontent.com/2690773/62013363-152f1d80-b19a-11e9-90ea-07568757baa2.png"> Add more inline hints support. Looks like `while let` type inference support is missing currently, so the corresponding hint tests lack the actual results. I've also could not find a good way to distinguish between `a` and `b` pats in the following expressions: `if let Some(Test { a: None, b: y }) = &test {};` In this case we don't need to add a hint for first pat (`a: None`), since it's matched against the particular enum variant and need a hint for `y`, since it's a new variable. But both `a` and `b` are `BIND_PAT` with similar contents, so looks like there's nothing I can check for to find any differences. I don't display any hints for such cases now, to avoid confusion, but would be nice to know if there's a way to fix this behavior. Co-authored-by: Kirill Bulatov <mail4score@gmail.com>