Skip to content

Commit a6f06e8

Browse files
srawlinsCommit Queue
authored andcommitted
analyzer: Migrate element model in session_helper.dart
Change-Id: I8c52a22126ad1e5cd6700946797330e025e9411c Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/409361 Commit-Queue: Samuel Rawlins <[email protected]> Auto-Submit: Samuel Rawlins <[email protected]> Reviewed-by: Konstantin Shcheglov <[email protected]>
1 parent b7602f4 commit a6f06e8

File tree

1 file changed

+12
-25
lines changed

1 file changed

+12
-25
lines changed

pkg/analyzer/lib/src/dart/analysis/session_helper.dart

Lines changed: 12 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,9 @@
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-
75
import 'package:analyzer/dart/analysis/results.dart';
86
import 'package:analyzer/dart/analysis/session.dart';
9-
import 'package:analyzer/dart/element/element.dart';
107
import 'package:analyzer/dart/element/element2.dart';
11-
import 'package:analyzer/src/utilities/extensions/element.dart';
128

139
/// A wrapper around [AnalysisSession] that provides additional utilities.
1410
///
@@ -58,7 +54,7 @@ class AnalysisSessionHelper {
5854
Future<EnumElement2?> getEnum(String libraryUri, String className) async {
5955
var libraryResult = await session.getLibraryByUri(libraryUri);
6056
if (libraryResult is LibraryElementResult) {
61-
var element = libraryResult.element.exportNamespace.get2(className);
57+
var element = libraryResult.element2.exportNamespace.get2(className);
6258
if (element is EnumElement2) {
6359
return element;
6460
}
@@ -86,12 +82,17 @@ class AnalysisSessionHelper {
8682
return null;
8783
}
8884

89-
/// Return the resolved unit that declares the given [element2].
90-
Future<ResolvedUnitResult?> getResolvedUnitByElement(
91-
Element2 element2) async {
92-
var element = element2.asElement;
93-
if (element == null) return null;
94-
return await _getResolvedUnitByElement(element);
85+
/// Returns the resolved unit that declares the given [element].
86+
Future<ResolvedUnitResult?> getResolvedUnitByElement(Element2 element) async {
87+
var libraryPath = element.library2!.firstFragment.source.fullName;
88+
var resolvedLibrary = await _getResolvedLibrary(libraryPath);
89+
if (resolvedLibrary == null) {
90+
return null;
91+
}
92+
93+
var unitPath = element.firstFragment.libraryFragment!.source.fullName;
94+
return resolvedLibrary.units
95+
.singleWhere((resolvedUnit) => resolvedUnit.path == unitPath);
9596
}
9697

9798
/// Returns the [PropertyAccessorElement2] with the given [name] that is
@@ -122,18 +123,4 @@ class AnalysisSessionHelper {
122123
}
123124
return result;
124125
}
125-
126-
/// Return the resolved unit that declares the given [element].
127-
Future<ResolvedUnitResult?> _getResolvedUnitByElement(Element element) async {
128-
var libraryPath = element.library!.source.fullName;
129-
var resolvedLibrary = await _getResolvedLibrary(libraryPath);
130-
if (resolvedLibrary == null) {
131-
return null;
132-
}
133-
134-
var unitPath = element.source!.fullName;
135-
return resolvedLibrary.units.singleWhere((resolvedUnit) {
136-
return resolvedUnit.path == unitPath;
137-
});
138-
}
139126
}

0 commit comments

Comments
 (0)