Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit a1e4d8e

Browse files
scheglovcommit-bot@chromium.org
authored andcommitted
Don't do implicit new/const code generation with --preview-dart-2 enabled.
R=brianwilkerson@google.com, devoncarew@google.com Change-Id: I8a96a5ccceae57c3ed5c1f2e0fd4897a7e99df03 Reviewed-on: https://dart-review.googlesource.com/48883 Reviewed-by: Devon Carew <devoncarew@google.com> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com> Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
1 parent 49558b9 commit a1e4d8e

File tree

8 files changed

+24
-44
lines changed

8 files changed

+24
-44
lines changed

pkg/analysis_server/lib/src/services/completion/dart/static_member_contributor.dart

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -67,13 +67,6 @@ class _SuggestionBuilder extends GeneralizingElementVisitor {
6767
// ignored
6868
}
6969

70-
@override
71-
visitConstructorElement(ConstructorElement element) {
72-
if (element.context.analysisOptions.previewDart2) {
73-
_addSuggestion(element);
74-
}
75-
}
76-
7770
@override
7871
visitFieldElement(FieldElement element) {
7972
if (element.isStatic) {

pkg/analysis_server/lib/src/services/correction/assist_internal.dart

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1676,9 +1676,7 @@ class AssistProcessor {
16761676
DartChangeBuilder changeBuilder = new DartChangeBuilder(session);
16771677
await changeBuilder.addFileEdit(file, (DartFileEditBuilder builder) {
16781678
builder.addReplacement(range.node(widgetExpr), (DartEditBuilder builder) {
1679-
if (!driver.analysisOptions.previewDart2) {
1680-
builder.write('new ');
1681-
}
1679+
builder.write('new ');
16821680
if (parentClassElement == null) {
16831681
builder.addSimpleLinkedEdit('WIDGET', 'widget');
16841682
} else {
@@ -1757,9 +1755,7 @@ class AssistProcessor {
17571755
DartChangeBuilder changeBuilder = new DartChangeBuilder(session);
17581756
await changeBuilder.addFileEdit(file, (DartFileEditBuilder builder) {
17591757
builder.addReplacement(selectedRange, (DartEditBuilder builder) {
1760-
if (!driver.analysisOptions.previewDart2) {
1761-
builder.write('new ');
1762-
}
1758+
builder.write('new ');
17631759
builder.writeType(parentClassElement.type);
17641760
builder.write('(');
17651761

pkg/analysis_server/test/completion_test.dart

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -732,17 +732,21 @@ main() {
732732
<String>["1+fooConst", "1-fooNotConst", "1-bar"],
733733
failingTests: '1');
734734

735-
buildTests('testCompletion_annotation_type', '''
735+
buildTests(
736+
'testCompletion_annotation_type',
737+
'''
736738
class AAA {
737739
const AAA({int a, int b});
738740
const AAA.nnn(int c, int d);
739741
}
740742
@AAA!1
741743
main() {
742-
}''', <String>[
743-
"1+AAA" /*":" + ProposalKind.CONSTRUCTOR*/,
744-
"1+AAA.nnn" /*":" + ProposalKind.CONSTRUCTOR*/
745-
]);
744+
}''',
745+
<String>[
746+
"1+AAA" /*":" + ProposalKind.CONSTRUCTOR*/,
747+
"1+AAA.nnn" /*":" + ProposalKind.CONSTRUCTOR*/
748+
],
749+
failingTests: '1');
746750

747751
buildTests('testCompletion_annotation_type_inClass_withoutMember', '''
748752
class AAA {

pkg/analysis_server/test/domain_completion_test.dart

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -619,11 +619,8 @@ main() {
619619
assertHasResult(CompletionSuggestionKind.INVOCATION, 'A',
620620
elementKind: ElementKind.CLASS);
621621

622-
// Both constructors - default and named, are suggested.
623-
assertHasResult(CompletionSuggestionKind.INVOCATION, 'A',
624-
elementKind: ElementKind.CONSTRUCTOR);
625-
assertHasResult(CompletionSuggestionKind.INVOCATION, 'A.named',
626-
elementKind: ElementKind.CONSTRUCTOR);
622+
// No constructors suggested.
623+
assertNoResult('A.named');
627624
}
628625

629626
test_local_named_constructor() {

pkg/analysis_server/test/services/completion/dart/imported_reference_contributor_test.dart

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2449,12 +2449,12 @@ main() {
24492449
await computeSuggestions();
24502450

24512451
assertSuggestClass('A');
2452-
assertSuggestConstructor('A.a1');
2453-
assertSuggestConstructor('A.a2');
2452+
assertNotSuggested('A.a1');
2453+
assertNotSuggested('A.a2');
24542454

24552455
assertSuggestClass('B');
2456-
assertSuggestConstructor('B.b1');
2457-
assertSuggestConstructor('B.b2');
2456+
assertNotSuggested('B.b1');
2457+
assertNotSuggested('B.b2');
24582458
}
24592459

24602460
test_ImportDirective_dart() async {

pkg/analysis_server/test/services/completion/dart/static_member_contributor_test.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,8 @@ main() {
114114
''');
115115
await computeSuggestions();
116116

117-
assertSuggestConstructor('foo', elementName: 'foo');
118-
assertSuggestConstructor('bar', elementName: 'bar');
117+
assertNotSuggested('foo');
118+
assertNotSuggested('bar');
119119
}
120120

121121
test_keyword() async {

pkg/analysis_server/test/services/correction/assist_test.dart

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3541,7 +3541,7 @@ class FakeFlutter {
35413541
import 'package:flutter/widgets.dart';
35423542
class FakeFlutter {
35433543
main() {
3544-
return /*caret*/Container();
3544+
return /*caret*/new Container();
35453545
}
35463546
}
35473547
''');
@@ -3550,7 +3550,7 @@ class FakeFlutter {
35503550
import 'package:flutter/widgets.dart';
35513551
class FakeFlutter {
35523552
main() {
3553-
return /*caret*/Center(child: Container());
3553+
return /*caret*/new Center(child: new Container());
35543554
}
35553555
}
35563556
''');
@@ -3677,7 +3677,7 @@ import 'package:flutter/widgets.dart';
36773677
36783678
main() {
36793679
return Container(
3680-
child: /*caret*/Text('aaa'),
3680+
child: /*caret*/new Text('aaa'),
36813681
);
36823682
}
36833683
''');
@@ -3687,9 +3687,9 @@ import 'package:flutter/widgets.dart';
36873687
36883688
main() {
36893689
return Container(
3690-
child: /*caret*/Column(
3690+
child: /*caret*/new Column(
36913691
children: <Widget>[
3692-
Text('aaa'),
3692+
new Text('aaa'),
36933693
],
36943694
),
36953695
);

pkg/analyzer_plugin/lib/src/utilities/completion/optype.dart

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -130,16 +130,6 @@ class OpType {
130130
optype.inStaticMethodBody =
131131
mthDecl is MethodDeclaration && mthDecl.isStatic;
132132

133-
// If a value should be suggested, suggest also constructors.
134-
if (optype.includeReturnValueSuggestions) {
135-
// Careful: in angular plugin, `target.unit` may be null!
136-
CompilationUnitElement unitElement = target.unit?.element;
137-
if (unitElement != null &&
138-
unitElement.context.analysisOptions.previewDart2) {
139-
optype.includeConstructorSuggestions = true;
140-
}
141-
}
142-
143133
// Compute the type required by the context and set filters.
144134
optype._computeRequiredTypeAndFilters(target);
145135

0 commit comments

Comments
 (0)