22// for details. All rights reserved. Use of this source code is governed by a
33// BSD-style license that can be found in the LICENSE file.
44
5- // ignore_for_file: analyzer_use_new_elements
6-
75import 'package:analyzer/dart/element/element.dart' ;
6+ import 'package:analyzer/dart/element/element2.dart' ;
87import 'package:analyzer/source/line_info.dart' ;
98// ignore: implementation_imports
109import 'package:analyzer/src/dart/element/member.dart' show ExecutableMember;
10+ // ignore: implementation_imports
11+ import 'package:analyzer/src/utilities/extensions/element.dart' ;
1112import 'package:dartdoc/src/element_type.dart' ;
1213import 'package:dartdoc/src/model/attribute.dart' ;
1314import 'package:dartdoc/src/model/comment_referable.dart' ;
@@ -17,7 +18,11 @@ import 'package:dartdoc/src/model/model.dart';
1718class Method extends ModelElement
1819 with ContainerMember , Inheritable , TypeParameters {
1920 @override
20- final MethodElement element;
21+ // ignore: analyzer_use_new_elements
22+ MethodElement get element => element2.asElement;
23+
24+ @override
25+ final MethodElement2 element2;
2126
2227 Container ? _enclosingContainer;
2328
@@ -26,20 +31,20 @@ class Method extends ModelElement
2631 @override
2732 late final List <TypeParameter > typeParameters;
2833
29- Method (this .element , super .library, super .packageGraph)
34+ Method (this .element2 , super .library, super .packageGraph)
3035 : _isInherited = false {
3136 _calcTypeParameters ();
3237 }
3338
34- Method .inherited (
35- this .element, this ._enclosingContainer, super .library, super .packageGraph,
39+ Method .inherited (this .element2, this ._enclosingContainer, super .library,
40+ super .packageGraph,
3641 {ExecutableMember ? super .originalMember})
3742 : _isInherited = true {
3843 _calcTypeParameters ();
3944 }
4045
4146 Method .providedByExtension (
42- this .element ,
47+ this .element2 ,
4348 this ._enclosingContainer,
4449 super .library,
4550 super .packageGraph, {
@@ -49,8 +54,8 @@ class Method extends ModelElement
4954 }
5055
5156 void _calcTypeParameters () {
52- typeParameters = element.typeParameters .map ((f) {
53- return getModelFor (f, library) as TypeParameter ;
57+ typeParameters = element2.typeParameters2 .map ((f) {
58+ return getModelFor2 (f, library) as TypeParameter ;
5459 }).toList (growable: false );
5560 }
5661
@@ -69,7 +74,7 @@ class Method extends ModelElement
6974
7075 @override
7176 Container get enclosingElement => _enclosingContainer ?? =
72- getModelFor (element.enclosingElement3 , library) as Container ;
77+ getModelFor2 (element2.enclosingElement2 ! , library) as Container ;
7378
7479 @override
7580 String get aboveSidebarPath => enclosingElement.sidebarPath;
@@ -79,8 +84,8 @@ class Method extends ModelElement
7984
8085 String get fullkind {
8186 // A method cannot be abstract and static at the same time.
82- if (element .isAbstract) return 'abstract $kind ' ;
83- if (element .isStatic) return 'static $kind ' ;
87+ if (element2 .isAbstract) return 'abstract $kind ' ;
88+ if (element2 .isStatic) return 'static $kind ' ;
8489 return kind.toString ();
8590 }
8691
@@ -97,7 +102,7 @@ class Method extends ModelElement
97102 bool get isOperator => false ;
98103
99104 bool get isProvidedByExtension =>
100- element.enclosingElement3 is ExtensionElement ;
105+ element2.enclosingElement2 is ExtensionElement2 ;
101106
102107 /// The [enclosingElement] , which is expected to be an [Extension] .
103108 Extension get enclosingExtension => enclosingElement as Extension ;
@@ -108,7 +113,7 @@ class Method extends ModelElement
108113 if (isInherited) Attribute .inherited,
109114 };
110115
111- bool get isStatic => element .isStatic;
116+ bool get isStatic => element2 .isStatic;
112117
113118 @override
114119 Kind get kind => Kind .method;
@@ -118,24 +123,24 @@ class Method extends ModelElement
118123 super .originalMember as ExecutableMember ? ;
119124
120125 late final Callable modelType =
121- getTypeFor ((originalMember ?? element ).type, library) as Callable ;
126+ getTypeFor ((originalMember ?? element2 ).type, library) as Callable ;
122127
123128 @override
124129 Method ? get overriddenElement {
125130 if (_enclosingContainer is Extension ||
126- element.enclosingElement3 is ExtensionElement ) {
131+ element2.enclosingElement2 is ExtensionElement2 ) {
127132 return null ;
128133 }
129- var parent = element.enclosingElement3 as InterfaceElement ;
134+ var parent = element2.enclosingElement2 as InterfaceElement2 ;
130135 for (var t in parent.allSupertypes) {
131- Element ? e = t.getMethod (element.name );
136+ Element2 ? e = t.getMethod2 (element2.name3 ?? '' );
132137 if (e != null ) {
133138 assert (
134- e.enclosingElement3 is InterfaceElement ,
135- 'Expected "${e .enclosingElement3 ?. name }" to be a InterfaceElement, '
136- 'but was ${e .enclosingElement3 .runtimeType }' ,
139+ e.enclosingElement2 is InterfaceElement2 ,
140+ 'Expected "${e .enclosingElement2 ?. name3 }" to be a InterfaceElement, '
141+ 'but was ${e .enclosingElement2 .runtimeType }' ,
137142 );
138- return getModelForElement (e) as Method ? ;
143+ return getModelForElement2 (e) as Method ? ;
139144 }
140145 }
141146 return null ;
0 commit comments