Skip to content

Commit 26f9407

Browse files
scheglovCommit Queue
authored and
Commit Queue
committed
Elements. Remove V1 Element extensions, #1.
Change-Id: I9ffa8a63e1de8a01964e75f65dc2e5e158818f07 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/423445 Reviewed-by: Brian Wilkerson <[email protected]> Commit-Queue: Konstantin Shcheglov <[email protected]>
1 parent 67b9a1b commit 26f9407

File tree

1 file changed

+3
-65
lines changed

1 file changed

+3
-65
lines changed

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

Lines changed: 3 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
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-
import 'package:analyzer/dart/element/element.dart';
65
import 'package:analyzer/dart/element/element2.dart';
76
import 'package:analyzer/dart/element/nullability_suffix.dart';
87
import 'package:analyzer/dart/element/type.dart';
@@ -175,61 +174,6 @@ extension Element2Extension on Element2 {
175174
}
176175
}
177176

178-
extension Element2OrNullExtension on Element2? {
179-
@Deprecated('Use Element2 instead')
180-
Element? get asElement {
181-
var self = this;
182-
switch (self) {
183-
case null:
184-
return null;
185-
case BindPatternVariableElementImpl2 element2:
186-
return element2.asElement;
187-
case ConstructorElementImpl2 element2:
188-
return element2.asElement;
189-
case DynamicElementImpl2():
190-
return self.firstFragment;
191-
case ExtensionElementImpl2 element2:
192-
return element2.asElement;
193-
case FieldElementImpl2 element2:
194-
return element2.asElement;
195-
case FieldMember():
196-
return self.declaration as Element;
197-
case FormalParameterElement element2:
198-
return element2.asElement;
199-
case GetterElementImpl element2:
200-
return element2.asElement;
201-
case LabelElementImpl2 element2:
202-
return element2.asElement;
203-
case LibraryElementImpl():
204-
return self as Element;
205-
case LibraryImportElementImpl():
206-
return self as Element;
207-
case LocalFunctionElementImpl element2:
208-
return element2.asElement;
209-
case LocalVariableElementImpl2():
210-
return self.wrappedElement as Element;
211-
case MethodElementImpl2 element2:
212-
return element2.asElement;
213-
case NeverElementImpl2():
214-
return NeverElementImpl.instance;
215-
case PrefixElement2 element2:
216-
return element2.asElement;
217-
case SetterElementImpl element2:
218-
return element2.asElement;
219-
case TopLevelFunctionElementImpl element2:
220-
return element2.asElement;
221-
case TopLevelVariableElementImpl2 element2:
222-
return element2.asElement;
223-
case TypeDefiningElement2():
224-
return self.firstFragment as Element;
225-
case MockLibraryImportElement():
226-
return self.import;
227-
default:
228-
throw UnsupportedError('Unsupported type: $runtimeType');
229-
}
230-
}
231-
}
232-
233177
extension ElementImplExtension on ElementImpl {
234178
ElementImpl? get enclosingElementImpl => enclosingElement3;
235179

@@ -238,8 +182,7 @@ extension ElementImplExtension on ElementImpl {
238182
}
239183
}
240184

241-
@Deprecated('Use Element2 instead')
242-
extension ElementOrNullExtension on Element? {
185+
extension ElementOrNullExtension on ElementImpl? {
243186
Element2? get asElement2 {
244187
var self = this;
245188
if (self == null) {
@@ -255,12 +198,7 @@ extension ElementOrNullExtension on Element? {
255198
} else if (self is FieldElementImpl) {
256199
return (self as FieldFragment).element;
257200
} else if (self is FunctionElementImpl) {
258-
if (self.enclosingElement3 is! CompilationUnitElementImpl) {
259-
// TODO(scheglov): update `FunctionElementImpl.element` return type?
260-
return self.element;
261-
} else {
262-
return (self as Fragment).element;
263-
}
201+
return (self as Fragment).element;
264202
} else if (self is InterfaceElementImpl) {
265203
return self.element;
266204
} else if (self is LabelElementImpl) {
@@ -272,7 +210,7 @@ extension ElementOrNullExtension on Element? {
272210
} else if (self is NeverElementImpl) {
273211
return NeverElementImpl2.instance;
274212
} else if (self is ParameterMember) {
275-
return self;
213+
return (self as FormalParameterFragment).element;
276214
} else if (self is LibraryImportElementImpl ||
277215
self is LibraryExportElementImpl ||
278216
self is PartElementImpl) {

0 commit comments

Comments
 (0)