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/analysis/results.dart' ;
86import 'package:analyzer/dart/ast/token.dart' ;
9- import 'package:analyzer/dart/element/element.dart' ;
107import 'package:analyzer/dart/element/element2.dart' ;
118import 'package:analyzer/dart/element/type_provider.dart' ;
129import 'package:analyzer/dart/element/type_system.dart' ;
@@ -57,8 +54,6 @@ abstract class LinterContext {
5754 /// Whether the [definingUnit] is in a [package] 's "test" directory.
5855 bool get isInTestDirectory;
5956
60- LibraryElement ? get libraryElement;
61-
6257 /// The library element representing the library that contains the compilation
6358 /// unit being linted.
6459 @experimental
@@ -98,15 +93,11 @@ final class LinterContextWithParsedResults implements LinterContext {
9893
9994 @override
10095 bool get isInLibDir => LinterContext ._isInLibDir (
101- definingUnit.unit.declaredElement ? .source.fullName, package);
96+ definingUnit.unit.declaredFragment ? .source.fullName, package);
10297
10398 @override
10499 bool get isInTestDirectory => false ;
105100
106- @override
107- LibraryElement get libraryElement => throw UnsupportedError (
108- 'LinterContext with parsed results does not include a LibraryElement' );
109-
110101 @experimental
111102 @override
112103 LibraryElement2 get libraryElement2 => throw UnsupportedError (
@@ -158,7 +149,7 @@ final class LinterContextWithResolvedResults implements LinterContext {
158149
159150 @override
160151 bool get isInLibDir => LinterContext ._isInLibDir (
161- definingUnit.unit.declaredElement ? .source.fullName, package);
152+ definingUnit.libraryFragment .source.fullName, package);
162153
163154 @override
164155 bool get isInTestDirectory {
@@ -169,13 +160,9 @@ final class LinterContextWithResolvedResults implements LinterContext {
169160 return false ;
170161 }
171162
172- @override
173- LibraryElement get libraryElement =>
174- definingUnit.unit.declaredElement! .library;
175-
176163 @experimental
177164 @override
178- LibraryElement2 get libraryElement2 => libraryElement as LibraryElement2 ;
165+ LibraryElement2 get libraryElement2 => definingUnit.libraryFragment.element ;
179166}
180167
181168/// Describes a lint rule.
0 commit comments