Skip to content

Commit 713065d

Browse files
scheglovCommit Queue
authored andcommitted
Fine. Rename InstanceItemMemberItem subclasses.
Previously InstanceMemberItem was confusing, because it could be read as instance vs. static, when actually it is InstanceElementImpl member. Change-Id: I0abf135638b18b205e6af1d243364ae9aca81239 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/420160 Commit-Queue: Konstantin Shcheglov <[email protected]> Reviewed-by: Paul Berry <[email protected]>
1 parent cc4c1ac commit 713065d

File tree

3 files changed

+109
-109
lines changed

3 files changed

+109
-109
lines changed

pkg/analyzer/lib/src/fine/library_manifest.dart

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ class LibraryManifestBuilder {
188188
required LookupName lookupName,
189189
}) {
190190
var item = _getOrBuildElementItem(element, () {
191-
return InstanceGetterItem.fromElement(
191+
return InstanceItemGetterItem.fromElement(
192192
name: lookupName,
193193
id: ManifestItemId.generate(),
194194
context: encodingContext,
@@ -205,7 +205,7 @@ class LibraryManifestBuilder {
205205
required LookupName lookupName,
206206
}) {
207207
var item = _getOrBuildElementItem(element, () {
208-
return InstanceMethodItem.fromElement(
208+
return InstanceItemMethodItem.fromElement(
209209
name: lookupName,
210210
id: ManifestItemId.generate(),
211211
context: encodingContext,
@@ -222,7 +222,7 @@ class LibraryManifestBuilder {
222222
required LookupName lookupName,
223223
}) {
224224
var item = _getOrBuildElementItem(element, () {
225-
return InterfaceConstructorItem.fromElement(
225+
return InterfaceItemConstructorItem.fromElement(
226226
name: lookupName,
227227
id: ManifestItemId.generate(),
228228
context: encodingContext,
@@ -649,15 +649,15 @@ class _LibraryMatch {
649649

650650
bool _matchInstanceExecutable({
651651
required MatchContext interfaceMatchContext,
652-
required Map<LookupName, InstanceMemberItem> members,
652+
required Map<LookupName, InstanceItemMemberItem> members,
653653
required LookupName lookupName,
654654
required ExecutableElement2 executable,
655655
}) {
656656
var item = members[lookupName];
657657

658658
switch (executable) {
659659
case GetterElement2OrMember():
660-
if (item is! InstanceGetterItem) {
660+
if (item is! InstanceItemGetterItem) {
661661
return false;
662662
}
663663

@@ -671,7 +671,7 @@ class _LibraryMatch {
671671
refExternalIds.addAll(matchContext.externalIds);
672672
return true;
673673
case MethodElement2OrMember():
674-
if (item is! InstanceMethodItem) {
674+
if (item is! InstanceItemMethodItem) {
675675
return false;
676676
}
677677

@@ -715,7 +715,7 @@ class _LibraryMatch {
715715

716716
bool _matchInterfaceConstructor({
717717
required MatchContext interfaceMatchContext,
718-
required Map<LookupName, InstanceMemberItem> members,
718+
required Map<LookupName, InstanceItemMemberItem> members,
719719
required ConstructorElementImpl2 element,
720720
}) {
721721
var lookupName = element.name3?.asLookupName;
@@ -724,7 +724,7 @@ class _LibraryMatch {
724724
}
725725

726726
var item = members[lookupName];
727-
if (item is! InterfaceConstructorItem) {
727+
if (item is! InterfaceItemConstructorItem) {
728728
return false;
729729
}
730730

pkg/analyzer/lib/src/fine/manifest_item.dart

Lines changed: 96 additions & 96 deletions
Original file line numberDiff line numberDiff line change
@@ -96,30 +96,65 @@ class ExportItem extends TopLevelItem {
9696
}
9797
}
9898

99-
class InstanceGetterItem extends InstanceMemberItem {
99+
/// The item for [InstanceElementImpl2].
100+
sealed class InstanceItem extends TopLevelItem {
101+
final List<ManifestTypeParameter> typeParameters;
102+
final Map<LookupName, InstanceItemMemberItem> members;
103+
104+
InstanceItem({
105+
required super.libraryUri,
106+
required super.name,
107+
required super.id,
108+
required this.typeParameters,
109+
required this.members,
110+
});
111+
112+
void _write(BufferedSink sink) {
113+
sink.writeUri(libraryUri);
114+
name.write(sink);
115+
id.write(sink);
116+
typeParameters.writeList(sink);
117+
sink.writeMap(
118+
members,
119+
writeKey: (name) => name.write(sink),
120+
writeValue: (member) => member.write(sink),
121+
);
122+
}
123+
124+
static Map<LookupName, InstanceItemMemberItem> _readMembers(
125+
SummaryDataReader reader,
126+
) {
127+
return reader.readMap(
128+
readKey: () => LookupName.read(reader),
129+
readValue: () => InstanceItemMemberItem.read(reader),
130+
);
131+
}
132+
}
133+
134+
class InstanceItemGetterItem extends InstanceItemMemberItem {
100135
final ManifestType returnType;
101136

102-
InstanceGetterItem({
137+
InstanceItemGetterItem({
103138
required super.name,
104139
required super.id,
105140
required this.returnType,
106141
});
107142

108-
factory InstanceGetterItem.fromElement({
143+
factory InstanceItemGetterItem.fromElement({
109144
required LookupName name,
110145
required ManifestItemId id,
111146
required EncodeContext context,
112147
required GetterElement2OrMember element,
113148
}) {
114-
return InstanceGetterItem(
149+
return InstanceItemGetterItem(
115150
name: name,
116151
id: id,
117152
returnType: element.returnType.encode(context),
118153
);
119154
}
120155

121-
factory InstanceGetterItem.read(SummaryDataReader reader) {
122-
return InstanceGetterItem(
156+
factory InstanceItemGetterItem.read(SummaryDataReader reader) {
157+
return InstanceItemGetterItem(
123158
name: LookupName.read(reader),
124159
id: ManifestItemId.read(reader),
125160
returnType: ManifestType.read(reader),
@@ -146,87 +181,52 @@ class InstanceGetterItem extends InstanceMemberItem {
146181
}
147182
}
148183

149-
/// The item for [InstanceElementImpl2].
150-
sealed class InstanceItem extends TopLevelItem {
151-
final List<ManifestTypeParameter> typeParameters;
152-
final Map<LookupName, InstanceMemberItem> members;
153-
154-
InstanceItem({
155-
required super.libraryUri,
156-
required super.name,
157-
required super.id,
158-
required this.typeParameters,
159-
required this.members,
160-
});
161-
162-
void _write(BufferedSink sink) {
163-
sink.writeUri(libraryUri);
164-
name.write(sink);
165-
id.write(sink);
166-
typeParameters.writeList(sink);
167-
sink.writeMap(
168-
members,
169-
writeKey: (name) => name.write(sink),
170-
writeValue: (member) => member.write(sink),
171-
);
172-
}
173-
174-
static Map<LookupName, InstanceMemberItem> _readMembers(
175-
SummaryDataReader reader,
176-
) {
177-
return reader.readMap(
178-
readKey: () => LookupName.read(reader),
179-
readValue: () => InstanceMemberItem.read(reader),
180-
);
181-
}
182-
}
183-
184-
sealed class InstanceMemberItem extends ManifestItem {
184+
sealed class InstanceItemMemberItem extends ManifestItem {
185185
final LookupName name;
186186
final ManifestItemId id;
187187

188-
InstanceMemberItem({
188+
InstanceItemMemberItem({
189189
required this.name,
190190
required this.id,
191191
});
192192

193-
factory InstanceMemberItem.read(SummaryDataReader reader) {
193+
factory InstanceItemMemberItem.read(SummaryDataReader reader) {
194194
var kind = reader.readEnum(_ManifestItemKind2.values);
195195
switch (kind) {
196196
case _ManifestItemKind2.instanceGetter:
197-
return InstanceGetterItem.read(reader);
197+
return InstanceItemGetterItem.read(reader);
198198
case _ManifestItemKind2.instanceMethod:
199-
return InstanceMethodItem.read(reader);
199+
return InstanceItemMethodItem.read(reader);
200200
case _ManifestItemKind2.interfaceConstructor:
201-
return InterfaceConstructorItem.read(reader);
201+
return InterfaceItemConstructorItem.read(reader);
202202
}
203203
}
204204
}
205205

206-
class InstanceMethodItem extends InstanceMemberItem {
206+
class InstanceItemMethodItem extends InstanceItemMemberItem {
207207
final ManifestFunctionType functionType;
208208

209-
InstanceMethodItem({
209+
InstanceItemMethodItem({
210210
required super.name,
211211
required super.id,
212212
required this.functionType,
213213
});
214214

215-
factory InstanceMethodItem.fromElement({
215+
factory InstanceItemMethodItem.fromElement({
216216
required LookupName name,
217217
required ManifestItemId id,
218218
required EncodeContext context,
219219
required MethodElement2OrMember element,
220220
}) {
221-
return InstanceMethodItem(
221+
return InstanceItemMethodItem(
222222
name: name,
223223
id: id,
224224
functionType: element.type.encode(context),
225225
);
226226
}
227227

228-
factory InstanceMethodItem.read(SummaryDataReader reader) {
229-
return InstanceMethodItem(
228+
factory InstanceItemMethodItem.read(SummaryDataReader reader) {
229+
return InstanceItemMethodItem(
230230
name: LookupName.read(reader),
231231
id: ManifestItemId.read(reader),
232232
functionType: ManifestFunctionType.read(reader),
@@ -253,27 +253,64 @@ class InstanceMethodItem extends InstanceMemberItem {
253253
}
254254
}
255255

256-
class InterfaceConstructorItem extends InstanceMemberItem {
256+
/// The item for [InterfaceElementImpl2].
257+
sealed class InterfaceItem extends InstanceItem {
258+
final ManifestType? supertype;
259+
final List<ManifestType> interfaces;
260+
final List<ManifestType> mixins;
261+
262+
InterfaceItem({
263+
required super.libraryUri,
264+
required super.name,
265+
required super.id,
266+
required super.typeParameters,
267+
required super.members,
268+
required this.supertype,
269+
required this.interfaces,
270+
required this.mixins,
271+
});
272+
273+
MatchContext? _matchInterfaceElement(InterfaceElementImpl2 element) {
274+
var context = MatchContext(parent: null);
275+
context.addTypeParameters(element.typeParameters2);
276+
if (supertype.match(context, element.supertype) &&
277+
interfaces.match(context, element.interfaces) &&
278+
mixins.match(context, element.mixins)) {
279+
return context;
280+
}
281+
return null;
282+
}
283+
284+
@override
285+
void _write(BufferedSink sink) {
286+
super._write(sink);
287+
supertype.writeOptional(sink);
288+
mixins.writeList(sink);
289+
interfaces.writeList(sink);
290+
}
291+
}
292+
293+
class InterfaceItemConstructorItem extends InstanceItemMemberItem {
257294
final bool isConst;
258295
final bool isFactory;
259296
final ManifestFunctionType functionType;
260297

261-
InterfaceConstructorItem({
298+
InterfaceItemConstructorItem({
262299
required super.name,
263300
required super.id,
264301
required this.isConst,
265302
required this.isFactory,
266303
required this.functionType,
267304
});
268305

269-
factory InterfaceConstructorItem.fromElement({
306+
factory InterfaceItemConstructorItem.fromElement({
270307
required LookupName name,
271308
required ManifestItemId id,
272309
required EncodeContext context,
273310
required ConstructorElementImpl2 element,
274311
}) {
275312
// TODO(scheglov): initializers
276-
return InterfaceConstructorItem(
313+
return InterfaceItemConstructorItem(
277314
name: name,
278315
id: id,
279316
isConst: element.isConst,
@@ -282,8 +319,8 @@ class InterfaceConstructorItem extends InstanceMemberItem {
282319
);
283320
}
284321

285-
factory InterfaceConstructorItem.read(SummaryDataReader reader) {
286-
return InterfaceConstructorItem(
322+
factory InterfaceItemConstructorItem.read(SummaryDataReader reader) {
323+
return InterfaceItemConstructorItem(
287324
name: LookupName.read(reader),
288325
id: ManifestItemId.read(reader),
289326
isConst: reader.readBool(),
@@ -320,43 +357,6 @@ class InterfaceConstructorItem extends InstanceMemberItem {
320357
}
321358
}
322359

323-
/// The item for [InterfaceElementImpl2].
324-
sealed class InterfaceItem extends InstanceItem {
325-
final ManifestType? supertype;
326-
final List<ManifestType> interfaces;
327-
final List<ManifestType> mixins;
328-
329-
InterfaceItem({
330-
required super.libraryUri,
331-
required super.name,
332-
required super.id,
333-
required super.typeParameters,
334-
required super.members,
335-
required this.supertype,
336-
required this.interfaces,
337-
required this.mixins,
338-
});
339-
340-
MatchContext? _matchInterfaceElement(InterfaceElementImpl2 element) {
341-
var context = MatchContext(parent: null);
342-
context.addTypeParameters(element.typeParameters2);
343-
if (supertype.match(context, element.supertype) &&
344-
interfaces.match(context, element.interfaces) &&
345-
mixins.match(context, element.mixins)) {
346-
return context;
347-
}
348-
return null;
349-
}
350-
351-
@override
352-
void _write(BufferedSink sink) {
353-
super._write(sink);
354-
supertype.writeOptional(sink);
355-
mixins.writeList(sink);
356-
interfaces.writeList(sink);
357-
}
358-
}
359-
360360
class ManifestAnnotation {
361361
final ManifestNode ast;
362362

0 commit comments

Comments
 (0)