mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-29 05:15:04 +00:00
internal: Shrink size of Binding
This commit is contained in:
parent
36f58f5fff
commit
7c374a10bd
15 changed files with 94 additions and 56 deletions
|
@ -1170,7 +1170,7 @@ impl InferenceContext<'_> {
|
|||
Expr::Tuple { exprs, .. } => {
|
||||
// We don't consider multiple ellipses. This is analogous to
|
||||
// `hir_def::body::lower::ExprCollector::collect_tuple_pat()`.
|
||||
let ellipsis = exprs.iter().position(|e| is_rest_expr(*e));
|
||||
let ellipsis = exprs.iter().position(|e| is_rest_expr(*e)).map(|it| it as u32);
|
||||
let exprs: Vec<_> = exprs.iter().filter(|e| !is_rest_expr(**e)).copied().collect();
|
||||
|
||||
self.infer_tuple_pat_like(&rhs_ty, (), ellipsis, &exprs)
|
||||
|
@ -1184,7 +1184,7 @@ impl InferenceContext<'_> {
|
|||
|
||||
// We don't consider multiple ellipses. This is analogous to
|
||||
// `hir_def::body::lower::ExprCollector::collect_tuple_pat()`.
|
||||
let ellipsis = args.iter().position(|e| is_rest_expr(*e));
|
||||
let ellipsis = args.iter().position(|e| is_rest_expr(*e)).map(|it| it as u32);
|
||||
let args: Vec<_> = args.iter().filter(|e| !is_rest_expr(**e)).copied().collect();
|
||||
|
||||
self.infer_tuple_struct_pat_like(path, &rhs_ty, (), lhs, ellipsis, &args)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue