@@ -3,10 +3,10 @@ use hir::InFile;
3
3
use ide_db:: base_db:: FileRange ;
4
4
use syntax:: {
5
5
ast:: { self , HasArgList } ,
6
- AstNode , SyntaxNodePtr ,
6
+ AstNode , AstPtr ,
7
7
} ;
8
8
9
- use crate :: { adjusted_display_range , Diagnostic , DiagnosticCode , DiagnosticsContext } ;
9
+ use crate :: { adjusted_display_range_new , Diagnostic , DiagnosticCode , DiagnosticsContext } ;
10
10
11
11
// Diagnostic: mismatched-tuple-struct-pat-arg-count
12
12
//
@@ -24,7 +24,7 @@ pub(crate) fn mismatched_tuple_struct_pat_arg_count(
24
24
Diagnostic :: new (
25
25
DiagnosticCode :: RustcHardError ( "E0023" ) ,
26
26
message,
27
- invalid_args_range ( ctx, d. expr_or_pat . map ( Into :: into ) , d. expected , d. found ) ,
27
+ invalid_args_range ( ctx, d. expr_or_pat , d. expected , d. found ) ,
28
28
)
29
29
}
30
30
@@ -40,17 +40,17 @@ pub(crate) fn mismatched_arg_count(
40
40
Diagnostic :: new (
41
41
DiagnosticCode :: RustcHardError ( "E0107" ) ,
42
42
message,
43
- invalid_args_range ( ctx, d. call_expr . map ( Into :: into ) , d. expected , d. found ) ,
43
+ invalid_args_range ( ctx, d. call_expr . map ( AstPtr :: wrap_left ) , d. expected , d. found ) ,
44
44
)
45
45
}
46
46
47
47
fn invalid_args_range (
48
48
ctx : & DiagnosticsContext < ' _ > ,
49
- source : InFile < SyntaxNodePtr > ,
49
+ source : InFile < AstPtr < Either < ast :: Expr , ast :: Pat > > > ,
50
50
expected : usize ,
51
51
found : usize ,
52
52
) -> FileRange {
53
- adjusted_display_range :: < Either < ast :: Expr , ast :: TupleStructPat > > ( ctx, source, & |expr| {
53
+ adjusted_display_range_new ( ctx, source, & |expr| {
54
54
let ( text_range, r_paren_token, expected_arg) = match expr {
55
55
Either :: Left ( ast:: Expr :: CallExpr ( call) ) => {
56
56
let arg_list = call. arg_list ( ) ?;
@@ -68,7 +68,7 @@ fn invalid_args_range(
68
68
arg_list. args ( ) . nth ( expected) . map ( |it| it. syntax ( ) . text_range ( ) ) ,
69
69
)
70
70
}
71
- Either :: Right ( pat) => {
71
+ Either :: Right ( ast :: Pat :: TupleStructPat ( pat) ) => {
72
72
let r_paren = pat. r_paren_token ( ) ?;
73
73
let l_paren = pat. l_paren_token ( ) ?;
74
74
(
0 commit comments