Skip to content

Commit 6a7fd7c

Browse files
scheglovCommit Queue
authored andcommitted
Elements. Remove from AugmentedInterfaceElement 'interfaces' and 'mixins'.
Change-Id: I95d4d11c0a5b0a5ccbfe7890f87cf3836a7a39f9 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/414182 Reviewed-by: Brian Wilkerson <[email protected]> Commit-Queue: Konstantin Shcheglov <[email protected]>
1 parent e52b141 commit 6a7fd7c

File tree

19 files changed

+33
-134
lines changed

19 files changed

+33
-134
lines changed

pkg/analyzer/api.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3021,8 +3021,6 @@ package:analyzer/dart/element/element.dart:
30213021
new (constructor: AugmentedInterfaceElement Function())
30223022
constructors (getter: List<ConstructorElement>)
30233023
firstFragment (getter: InterfaceElement)
3024-
interfaces (getter: List<InterfaceType>)
3025-
mixins (getter: List<InterfaceType>)
30263024
thisType (getter: InterfaceType)
30273025
unnamedConstructor (getter: ConstructorElement?)
30283026
getNamedConstructor (method: ConstructorElement? Function(String))

pkg/analyzer/lib/dart/element/element.dart

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -157,18 +157,6 @@ abstract class AugmentedInterfaceElement implements AugmentedInstanceElement {
157157
@override
158158
InterfaceElement get firstFragment;
159159

160-
/// The interfaces implemented by this element.
161-
///
162-
/// This is a union of interfaces declared by the class declaration and
163-
/// all its augmentations.
164-
List<InterfaceType> get interfaces;
165-
166-
/// The mixins applied by this class or in its augmentations.
167-
///
168-
/// This is a union of mixins applied by the class declaration and all its
169-
/// augmentations.
170-
List<InterfaceType> get mixins;
171-
172160
@override
173161
InterfaceType get thisType;
174162

pkg/analyzer/lib/src/dart/analysis/driver.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ import 'package:meta/meta.dart';
100100
// TODO(scheglov): Clean up the list of implicitly analyzed files.
101101
class AnalysisDriver {
102102
/// The version of data format, should be incremented on every format change.
103-
static const int DATA_VERSION = 435;
103+
static const int DATA_VERSION = 437;
104104

105105
/// The number of exception contexts allowed to write. Once this field is
106106
/// zero, we stop writing any new exception contexts in this process.

pkg/analyzer/lib/src/dart/element/element.dart

Lines changed: 3 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -6683,10 +6683,6 @@ abstract class InterfaceElementImpl2 extends InstanceElementImpl2
66836683
/// Should be used only when the element has no type parameters.
66846684
InterfaceTypeImpl? _nullableInstance;
66856685

6686-
List<InterfaceTypeImpl> _interfaces = [];
6687-
6688-
List<InterfaceTypeImpl> _mixins = [];
6689-
66906686
@override
66916687
List<ConstructorElementMixin> constructors = [];
66926688

@@ -6746,12 +6742,8 @@ abstract class InterfaceElementImpl2 extends InstanceElementImpl2
67466742
.map2;
67476743

67486744
@override
6749-
List<InterfaceTypeImpl> get interfaces => _interfaces;
6750-
6751-
set interfaces(List<InterfaceType> values) {
6752-
// TODO(paulberry): eliminate this cast by changing the type of the `values`
6753-
// parameter
6754-
_interfaces = values.cast();
6745+
List<InterfaceTypeImpl> get interfaces {
6746+
return firstFragment.interfaces;
67556747
}
67566748

67576749
set isSimplyBounded(bool value) {
@@ -6762,22 +6754,7 @@ abstract class InterfaceElementImpl2 extends InstanceElementImpl2
67626754

67636755
@override
67646756
List<InterfaceTypeImpl> get mixins {
6765-
if (firstFragment.mixinInferenceCallback case var callback?) {
6766-
var mixins = callback(firstFragment);
6767-
if (mixins != null) {
6768-
// TODO(paulberry): eliminate this cast by changing the type of
6769-
// `InterfaceElementImpl.mixinInferenceCallback`.
6770-
return _mixins = mixins.cast();
6771-
}
6772-
}
6773-
6774-
return _mixins;
6775-
}
6776-
6777-
set mixins(List<InterfaceType> value) {
6778-
// TODO(paulberry): eliminate this cast by changing the type of the `value`
6779-
// parameter.
6780-
_mixins = value.cast();
6757+
return firstFragment.mixins;
67816758
}
67826759

67836760
@override

pkg/analyzer/lib/src/generated/testing/element_factory.dart

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,7 @@ class ElementFactory {
5454
fragment.typeParameters = typeParameters(parameterNames);
5555
}
5656

57-
var element = ClassElementImpl2(Reference.root(), fragment);
58-
element.mixins = fragment.mixins;
59-
element.interfaces = fragment.interfaces;
57+
ClassElementImpl2(Reference.root(), fragment);
6058

6159
return fragment;
6260
}
@@ -83,9 +81,7 @@ class ElementFactory {
8381
fragment.interfaces = interfaces;
8482
fragment.constructors = const <ConstructorElementImpl>[];
8583

86-
var element = ClassElementImpl2(Reference.root(), fragment);
87-
element.mixins = fragment.mixins;
88-
element.interfaces = fragment.interfaces;
84+
ClassElementImpl2(Reference.root(), fragment);
8985

9086
return fragment;
9187
}

pkg/analyzer/lib/src/summary2/augmentation.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -275,8 +275,6 @@ abstract class InstanceElementBuilder<E extends InstanceElementImpl2,
275275

276276
if (element is InterfaceElementImpl2) {
277277
if (firstFragment is InterfaceElementImpl) {
278-
element.mixins.addAll(firstFragment.mixins);
279-
element.interfaces.addAll(firstFragment.interfaces);
280278
element.constructors.addAll(firstFragment.constructors);
281279
}
282280
}

pkg/analyzer/lib/src/summary2/bundle_reader.dart

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -142,8 +142,6 @@ class ClassElementLinkedData extends ElementLinkedData<ClassElementImpl> {
142142

143143
if (element.augmentationTarget == null) {
144144
var augmented = element.augmentedInternal;
145-
augmented.mixins = reader._readInterfaceTypeList();
146-
augmented.interfaces = reader._readInterfaceTypeList();
147145
augmented.fields = reader.readElementList();
148146
augmented.constructors = reader.readElementList();
149147
augmented.accessors = reader.readElementList();
@@ -382,8 +380,6 @@ class EnumElementLinkedData extends ElementLinkedData<EnumElementImpl> {
382380
element.interfaces = reader._readInterfaceTypeList();
383381
if (element.augmentationTarget == null) {
384382
var augmented = element.augmentedInternal;
385-
augmented.mixins = reader._readInterfaceTypeList();
386-
augmented.interfaces = reader._readInterfaceTypeList();
387383
augmented.fields = reader.readElementList();
388384
augmented.constructors = reader.readElementList();
389385
augmented.accessors = reader.readElementList();
@@ -451,7 +447,6 @@ class ExtensionTypeElementLinkedData
451447
element.interfaces = reader._readInterfaceTypeList();
452448
if (element.augmentationTarget == null) {
453449
var augmented = element.augmentedInternal;
454-
augmented.interfaces = reader._readInterfaceTypeList();
455450
augmented.fields = reader.readElementList();
456451
augmented.accessors = reader.readElementList();
457452
augmented.constructors = reader.readElementList();
@@ -1972,7 +1967,6 @@ class MixinElementLinkedData extends ElementLinkedData<MixinElementImpl> {
19721967
if (element.augmentationTarget == null) {
19731968
var augmented = element.augmentedInternal;
19741969
augmented.superclassConstraints = reader._readInterfaceTypeList();
1975-
augmented.interfaces = reader._readInterfaceTypeList();
19761970
augmented.fields = reader.readElementList();
19771971
augmented.accessors = reader.readElementList();
19781972
}

pkg/analyzer/lib/src/summary2/bundle_writer.dart

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -159,8 +159,6 @@ class BundleWriter {
159159
_resolutionSink._writeTypeList(fragment.interfaces);
160160
if (fragment.augmentationTarget == null) {
161161
var element = fragment.element;
162-
_resolutionSink._writeTypeList(element.mixins);
163-
_resolutionSink._writeTypeList(element.interfaces);
164162
_resolutionSink._writeElementList(element.fields);
165163
_resolutionSink._writeElementList(element.constructors);
166164
_resolutionSink._writeElementList(element.accessors);
@@ -252,8 +250,6 @@ class BundleWriter {
252250
_resolutionSink._writeTypeList(fragment.interfaces);
253251
if (fragment.augmentationTarget == null) {
254252
var element = fragment.element;
255-
_resolutionSink._writeTypeList(element.mixins);
256-
_resolutionSink._writeTypeList(element.interfaces);
257253
_resolutionSink._writeElementList(element.fields);
258254
_resolutionSink._writeElementList(element.constructors);
259255
_resolutionSink._writeElementList(element.accessors);
@@ -346,7 +342,6 @@ class BundleWriter {
346342
_resolutionSink._writeTypeList(fragment.interfaces);
347343
if (fragment.augmentationTarget == null) {
348344
var element = fragment.element;
349-
_resolutionSink._writeTypeList(element.interfaces);
350345
_resolutionSink._writeElementList(element.fields);
351346
_resolutionSink._writeElementList(element.accessors);
352347
_resolutionSink._writeElementList(element.constructors);
@@ -520,7 +515,6 @@ class BundleWriter {
520515
if (fragment.augmentationTarget == null) {
521516
var element = fragment.element;
522517
_resolutionSink._writeTypeList(element.superclassConstraints);
523-
_resolutionSink._writeTypeList(element.interfaces);
524518
_resolutionSink._writeElementList(element.fields);
525519
_resolutionSink._writeElementList(element.accessors);
526520
}

pkg/analyzer/lib/src/summary2/extension_type.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ class _ImplementsNode extends graph.Node<_ImplementsNode> {
9090
var superInterface = typeSystem.isNonNullable(representationType)
9191
? typeSystem.objectNone
9292
: typeSystem.objectQuestion;
93-
element.interfaces = [superInterface];
93+
element.firstFragment.interfaces = [superInterface];
9494
}
9595
}
9696

@@ -153,7 +153,7 @@ class _Node extends graph.Node<_Node> {
153153

154154
element.representation.type = type;
155155
element.typeErasure = type.extensionTypeErasure;
156-
element.interfaces = element.interfaces
156+
element.firstFragment.interfaces = element.interfaces
157157
.whereType<InterfaceType>()
158158
.where(typeSystem.isValidExtensionTypeSuperinterface)
159159
.toFixedList();

pkg/analyzer/lib/src/summary2/types_builder.dart

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -431,10 +431,6 @@ class TypesBuilder {
431431
firstFragment.supertype = superType;
432432
}
433433
}
434-
435-
element.interfaces.addAll(
436-
toFirst.mapInterfaceTypes(fragment.interfaces),
437-
);
438434
}
439435

440436
if (fragment is MixinElementImpl && element is MixinElementImpl2) {
@@ -688,10 +684,6 @@ class _MixinsInference {
688684
}
689685
} finally {
690686
element.mixinInferenceCallback = null;
691-
switch (element.element) {
692-
case InterfaceElementImpl2 augmented:
693-
augmented.mixins.addAll(declarationMixins);
694-
}
695687
}
696688
}
697689

0 commit comments

Comments
 (0)