File tree Expand file tree Collapse file tree 5 files changed +30
-15
lines changed Expand file tree Collapse file tree 5 files changed +30
-15
lines changed Original file line number Diff line number Diff line change @@ -6481,8 +6481,7 @@ final class ExtensionDeclarationImpl extends CompilationUnitMemberImpl
64816481
64826482 @experimental
64836483 @override
6484- ExtensionFragment? get declaredFragment =>
6485- declaredElement as ExtensionFragment?;
6484+ ExtensionElementImpl? get declaredFragment => declaredElement;
64866485
64876486 @override
64886487 Token get endToken => rightBracket;
@@ -8319,11 +8318,8 @@ final class FunctionDeclarationImpl extends NamedCompilationUnitMemberImpl
83198318
83208319 @experimental
83218320 @override
8322- ExecutableFragment? get declaredFragment {
8323- if (declaredElement case ExecutableFragment fragment) {
8324- return fragment;
8325- }
8326- return null;
8321+ ExecutableElementImpl? get declaredFragment {
8322+ return declaredElement;
83278323 }
83288324
83298325 @override
@@ -11910,8 +11906,7 @@ final class MethodDeclarationImpl extends ClassMemberImpl
1191011906
1191111907 @experimental
1191211908 @override
11913- ExecutableFragment? get declaredFragment =>
11914- declaredElement as ExecutableFragment?;
11909+ ExecutableElementImpl? get declaredFragment => declaredElement;
1191511910
1191611911 @override
1191711912 Token get endToken => body.endToken;
Original file line number Diff line number Diff line change @@ -3761,6 +3761,9 @@ abstract class ExecutableElementImpl extends _ExistingElementImpl
37613761 ...parameters,
37623762 ];
37633763
3764+ @override
3765+ ExecutableElementImpl2 get element;
3766+
37643767 @override
37653768 Element get enclosingElement3 {
37663769 return super .enclosingElement3! ;
@@ -5247,7 +5250,7 @@ class FunctionElementImpl extends ExecutableElementImpl
52475250 // TODO(brianwilkerson): Use either `LocalFunctionElement` or
52485251 // `TopLevelFunctionElement` when this class is split.
52495252 @override
5250- late ExecutableElement2 element;
5253+ late ExecutableElementImpl2 element;
52515254
52525255 /// Initialize a newly created function element to have the given [name] and
52535256 /// [offset] .
Original file line number Diff line number Diff line change @@ -165,8 +165,7 @@ class FunctionExpressionResolver {
165165 }
166166
167167 void _resolve2 (FunctionExpressionImpl node, DartType ? imposedType) {
168- var functionElement =
169- node.declaredFragment! .element as ExecutableElementImpl2 ;
168+ var functionElement = node.declaredFragment! .element;
170169
171170 if (_shouldUpdateReturnType (node)) {
172171 var firstFragment =
Original file line number Diff line number Diff line change @@ -176,7 +176,7 @@ class ResolverVisitor extends ThrowingAstVisitor<void>
176176
177177 /// The element representing the extension containing the AST nodes being
178178 /// visited, or `null` if we are not in the scope of an extension.
179- ExtensionElementImpl ? enclosingExtension;
179+ ExtensionElementImpl2 ? enclosingExtension;
180180
181181 /// The element representing the function containing the current node, or
182182 /// `null` if the current node is not contained in a function.
@@ -1350,7 +1350,7 @@ class ResolverVisitor extends ThrowingAstVisitor<void>
13501350 }
13511351
13521352 if (parent is ExtensionDeclarationImpl ) {
1353- enclosingExtension = parent.declaredElement ! ;
1353+ enclosingExtension = parent.declaredFragment ! .element ;
13541354 return true ;
13551355 }
13561356
@@ -2672,7 +2672,7 @@ class ResolverVisitor extends ThrowingAstVisitor<void>
26722672 void visitExtensionDeclaration (covariant ExtensionDeclarationImpl node) {
26732673 var outerExtension = enclosingExtension;
26742674 try {
2675- enclosingExtension = node.declaredElement ! ;
2675+ enclosingExtension = node.declaredFragment ! .element ;
26762676 checkUnreachableNode (node);
26772677 node.visitChildren (this );
26782678 elementResolver.visitExtensionDeclaration (node);
Original file line number Diff line number Diff line change @@ -107,6 +107,12 @@ extension ConstructorElementExtension on ConstructorElement {
107107 }
108108}
109109
110+ extension ConstructorElementImplExtension on ConstructorElementImpl {
111+ ConstructorElementImpl2 get asElement2 {
112+ return element;
113+ }
114+ }
115+
110116extension Element2Extension on Element2 {
111117 /// Whether the element is effectively [internal] .
112118 bool get isInternal {
@@ -352,6 +358,12 @@ extension ExecutableElementExtension on ExecutableElement {
352358 }
353359}
354360
361+ extension ExecutableElementImplExtension on ExecutableElementImpl {
362+ ExecutableElementImpl2 get asElement2 {
363+ return element;
364+ }
365+ }
366+
355367extension ExecutableElementOrNullExtension on ExecutableElement ? {
356368 ExecutableElement2 ? get asElement2 {
357369 return this ? .asElement2;
@@ -623,6 +635,12 @@ extension PropertyAccessorElementExtension on PropertyAccessorElement {
623635 }
624636}
625637
638+ extension PropertyAccessorElementImplExtension on PropertyAccessorElementImpl {
639+ PropertyAccessorElementImpl2 get asElement2 {
640+ return element;
641+ }
642+ }
643+
626644extension PropertyAccessorElementOrMemberExtension
627645 on PropertyAccessorElementOrMember {
628646 PropertyAccessorElement2OrMember get asElement2 {
You can’t perform that action at this time.
0 commit comments