Skip to content

Commit bb7d6ed

Browse files
scheglovCommit Queue
authored andcommitted
Parts. Fix enclosingElement3 for nested parts.
Change-Id: Ifa71541f928fe96139a08c8b5cdc1527e819eac2 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/378577 Reviewed-by: Phil Quitslund <[email protected]> Commit-Queue: Konstantin Shcheglov <[email protected]>
1 parent c8cf274 commit bb7d6ed

File tree

2 files changed

+9
-14
lines changed

2 files changed

+9
-14
lines changed

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

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -844,17 +844,12 @@ class CompilationUnitElementImpl extends UriReferencedElementImpl
844844

845845
@override
846846
CompilationUnitElementImpl? get enclosingElement3 {
847-
switch (libraryOrAugmentationElement) {
848-
case LibraryElementImpl library:
849-
if (identical(library.definingCompilationUnit, this)) {
850-
return null;
851-
}
852-
return library.definingCompilationUnit;
853-
default:
854-
return (libraryOrAugmentationElement.enclosingElement3
855-
as LibraryOrAugmentationElementImpl)
856-
.definingCompilationUnit;
847+
if (libraryOrAugmentationElement is LibraryAugmentationElementImpl) {
848+
return (libraryOrAugmentationElement.enclosingElement
849+
as LibraryOrAugmentationElementImpl)
850+
.definingCompilationUnit;
857851
}
852+
return super.enclosingElement3 as CompilationUnitElementImpl?;
858853
}
859854

860855
@override

pkg/analyzer/test/src/summary/elements/part_include_test.dart

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -139,14 +139,14 @@ library
139139
enclosingElement: <testLibrary>::@fragment::package:test/a.dart
140140
<testLibrary>::@fragment::package:test/a11.dart
141141
enclosingElement: <testLibrary>
142-
enclosingElement3: <testLibraryFragment>
142+
enclosingElement3: <testLibrary>::@fragment::package:test/a.dart
143143
classes
144144
class A11 @24
145145
reference: <testLibrary>::@fragment::package:test/a11.dart::@class::A11
146146
enclosingElement: <testLibrary>::@fragment::package:test/a11.dart
147147
<testLibrary>::@fragment::package:test/a12.dart
148148
enclosingElement: <testLibrary>
149-
enclosingElement3: <testLibraryFragment>
149+
enclosingElement3: <testLibrary>::@fragment::package:test/a.dart
150150
classes
151151
class A12 @24
152152
reference: <testLibrary>::@fragment::package:test/a12.dart::@class::A12
@@ -167,14 +167,14 @@ library
167167
unit: <testLibrary>::@fragment::package:test/b12.dart
168168
<testLibrary>::@fragment::package:test/b11.dart
169169
enclosingElement: <testLibrary>
170-
enclosingElement3: <testLibraryFragment>
170+
enclosingElement3: <testLibrary>::@fragment::package:test/b.dart
171171
classes
172172
class B11 @24
173173
reference: <testLibrary>::@fragment::package:test/b11.dart::@class::B11
174174
enclosingElement: <testLibrary>::@fragment::package:test/b11.dart
175175
<testLibrary>::@fragment::package:test/b12.dart
176176
enclosingElement: <testLibrary>
177-
enclosingElement3: <testLibraryFragment>
177+
enclosingElement3: <testLibrary>::@fragment::package:test/b.dart
178178
classes
179179
class B12 @24
180180
reference: <testLibrary>::@fragment::package:test/b12.dart::@class::B12

0 commit comments

Comments
 (0)