Skip to content

Commit 73e13d7

Browse files
scheglovCommit Queue
authored and
Commit Queue
committed
Elements. Store classes / enums / etc directly in LibraryElementImpl.
Add them when building or reading. Change-Id: I11b57f28c4803f7e60d280d6fd4a925b0c46fb60 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/393908 Reviewed-by: Brian Wilkerson <[email protected]> Commit-Queue: Konstantin Shcheglov <[email protected]>
1 parent 305c0f3 commit 73e13d7

File tree

3 files changed

+134
-166
lines changed

3 files changed

+134
-166
lines changed

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

Lines changed: 18 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -6400,6 +6400,24 @@ class LibraryElementImpl extends ElementImpl
64006400
@override
64016401
int nameLength;
64026402

6403+
@override
6404+
List<ClassElementImpl2> classes = [];
6405+
6406+
@override
6407+
List<EnumElementImpl2> enums = [];
6408+
6409+
@override
6410+
List<ExtensionElementImpl2> extensions = [];
6411+
6412+
@override
6413+
List<ExtensionTypeElementImpl2> extensionTypes = [];
6414+
6415+
@override
6416+
List<TopLevelFunctionElementImpl> functions = [];
6417+
6418+
@override
6419+
List<MixinElementImpl2> mixins = [];
6420+
64036421
/// The export [Namespace] of this library, `null` if it has not been
64046422
/// computed yet.
64056423
Namespace? _exportNamespace;
@@ -6447,15 +6465,6 @@ class LibraryElementImpl extends ElementImpl
64476465
];
64486466
}
64496467

6450-
@override
6451-
List<ClassElementImpl2> get classes {
6452-
return units
6453-
.expand((fragment) => fragment.classes)
6454-
.map((fragment) => fragment.element)
6455-
.toSet()
6456-
.toList();
6457-
}
6458-
64596468
@override
64606469
CompilationUnitElementImpl get definingCompilationUnit =>
64616470
_definingCompilationUnit;
@@ -6488,15 +6497,6 @@ class LibraryElementImpl extends ElementImpl
64886497
TopLevelFunctionElement? get entryPoint2 =>
64896498
entryPoint as TopLevelFunctionElement?;
64906499

6491-
@override
6492-
List<EnumElementImpl2> get enums {
6493-
return units
6494-
.expand((fragment) => fragment.enums)
6495-
.map((fragment) => fragment.element)
6496-
.toSet()
6497-
.toList();
6498-
}
6499-
65006500
@override
65016501
List<LibraryElementImpl> get exportedLibraries {
65026502
return fragments
@@ -6521,24 +6521,6 @@ class LibraryElementImpl extends ElementImpl
65216521
_exportNamespace = exportNamespace;
65226522
}
65236523

6524-
@override
6525-
List<ExtensionElementImpl2> get extensions {
6526-
return units
6527-
.expand((fragment) => fragment.extensions)
6528-
.map((fragment) => fragment.element)
6529-
.toSet()
6530-
.toList();
6531-
}
6532-
6533-
@override
6534-
List<ExtensionTypeElementImpl2> get extensionTypes {
6535-
return units
6536-
.expand((fragment) => fragment.extensionTypes)
6537-
.map((fragment) => fragment.element)
6538-
.toSet()
6539-
.toList();
6540-
}
6541-
65426524
/// Information about why non-promotable private fields in the library are not
65436525
/// promotable.
65446526
///
@@ -6583,15 +6565,6 @@ class LibraryElementImpl extends ElementImpl
65836565
];
65846566
}
65856567

6586-
@override
6587-
List<TopLevelFunctionElementImpl> get functions {
6588-
return units
6589-
.expand((fragment) => fragment.functions)
6590-
.map((fragment) => fragment.element as TopLevelFunctionElementImpl)
6591-
.toSet()
6592-
.toList();
6593-
}
6594-
65956568
@override
65966569
List<GetterElement> get getters {
65976570
var declarations = <GetterElement>{};
@@ -6678,15 +6651,6 @@ class LibraryElementImpl extends ElementImpl
66786651
return super.metadata;
66796652
}
66806653

6681-
@override
6682-
List<MixinElementImpl2> get mixins {
6683-
return units
6684-
.expand((fragment) => fragment.mixins)
6685-
.map((fragment) => fragment.element)
6686-
.toSet()
6687-
.toList();
6688-
}
6689-
66906654
@override
66916655
String get name => super.name!;
66926656

0 commit comments

Comments
 (0)