File tree 2 files changed +13
-5
lines changed
analysis_server/test/analysis
analyzer_plugin/lib/utilities/navigation 2 files changed +13
-5
lines changed Original file line number Diff line number Diff line change @@ -1289,7 +1289,7 @@ void f(Object? x) {
1289
1289
''' );
1290
1290
await prepareNavigation ();
1291
1291
1292
- assertHasRegionTarget ('foo: ' , 'foo =>' , regionLength : 4 );
1292
+ assertHasRegionTarget ('foo' , 'foo =>' );
1293
1293
}
1294
1294
1295
1295
Future <void > test_objectPattern_patternField_implicitlyNamed () async {
@@ -1304,7 +1304,7 @@ void f(Object? x) {
1304
1304
''' );
1305
1305
await prepareNavigation ();
1306
1306
1307
- assertHasRegionTarget (': var ' , 'foo =>' , regionLength : 1 );
1307
+ assertHasRegionTarget ('foo)) ' , 'foo =>' );
1308
1308
}
1309
1309
1310
1310
Future <void > test_objectPattern_patternField_notResolved () async {
@@ -1429,7 +1429,7 @@ void f(Object? x) {
1429
1429
''' );
1430
1430
await prepareNavigation ();
1431
1431
1432
- assertNoRegionAt ('foo: ' );
1432
+ assertNoRegionAt ('foo' );
1433
1433
}
1434
1434
1435
1435
Future <void > test_redirectingConstructorInvocation () async {
Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ import 'package:analyzer/dart/ast/visitor.dart';
8
8
import 'package:analyzer/dart/element/element.dart' ;
9
9
import 'package:analyzer/dart/element/type.dart' ;
10
10
import 'package:analyzer/file_system/file_system.dart' ;
11
+ import 'package:analyzer/src/dart/ast/ast.dart' ;
11
12
import 'package:analyzer/src/dart/ast/extensions.dart' ;
12
13
import 'package:analyzer/src/dart/ast/utilities.dart' ;
13
14
import 'package:analyzer/src/dart/element/element.dart' ;
@@ -500,8 +501,15 @@ class _DartNavigationComputerVisitor extends RecursiveAstVisitor<void> {
500
501
}
501
502
502
503
@override
503
- void visitPatternField (PatternField node) {
504
- computer._addRegionForNode (node.name, node.element);
504
+ void visitPatternField (covariant PatternFieldImpl node) {
505
+ final nameNode = node.name;
506
+ if (nameNode != null ) {
507
+ final nameToken = nameNode.name ?? node.pattern.variablePattern? .name;
508
+ if (nameToken != null ) {
509
+ computer._addRegionForToken (nameToken, node.element);
510
+ }
511
+ }
512
+
505
513
node.pattern.accept (this );
506
514
}
507
515
You can’t perform that action at this time.
0 commit comments