Skip to content

Commit 70c2897

Browse files
authored
Simplify some code in PackageBuilder (#3447)
1 parent 1a8403e commit 70c2897

File tree

1 file changed

+11
-22
lines changed

1 file changed

+11
-22
lines changed

lib/src/model/package_builder.dart

Lines changed: 11 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -260,10 +260,9 @@ class PubPackageBuilder implements PackageBuilder {
260260

261261
current = _packageMetasForFiles(files.difference(_knownParts));
262262
// To get canonicalization correct for non-locally documented packages
263-
// (so we can generate the right hyperlinks), it's vital that we
264-
// add all libraries in dependent packages. So if the analyzer
265-
// discovers some files in a package we haven't seen yet, add files
266-
// for that package.
263+
// (so we can generate the right hyperlinks), it's vital that we add all
264+
// libraries in dependent packages. So if the analyzer discovers some
265+
// files in a package we haven't seen yet, add files for that package.
267266
for (var meta in current.difference(lastPass)) {
268267
if (meta.isSdk) {
269268
if (!_skipUnreachableSdkLibraries) {
@@ -337,9 +336,10 @@ class PubPackageBuilder implements PackageBuilder {
337336

338337
/// Lists the contents of [dir].
339338
///
340-
/// If [recursive] is `true`, lists subdirectory contents (defaults to `false`).
339+
/// If [recursive] is `true`, lists subdirectory contents (defaults to
340+
/// `false`).
341341
///
342-
/// Excludes files and directories beginning with `.`
342+
/// Excludes files and directories beginning with `.`.
343343
///
344344
/// The returned paths are guaranteed to begin with [dir].
345345
Iterable<String> _listDir(String dir,
@@ -419,13 +419,11 @@ class PubPackageBuilder implements PackageBuilder {
419419
}
420420

421421
Future<void> getLibraries(PackageGraph uninitializedPackageGraph) async {
422-
DartSdk findSpecialsSdk;
423422
var embedderSdk = this.embedderSdk;
424-
if (embedderSdk != null && embedderSdk.urlMappings.isNotEmpty) {
425-
findSpecialsSdk = embedderSdk;
426-
} else {
427-
findSpecialsSdk = sdk;
428-
}
423+
var findSpecialsSdk = switch (embedderSdk) {
424+
EmbedderSdk(:var urlMappings) when urlMappings.isNotEmpty => embedderSdk,
425+
_ => sdk,
426+
};
429427
var files = await _getFiles();
430428
var specialFiles = specialLibraryFiles(findSpecialsSdk);
431429

@@ -499,16 +497,7 @@ class DartDocResolvedLibrary {
499497
if (fullName != null && !element.isSynthetic && element.nameOffset != -1) {
500498
var unit = _units[fullName];
501499
if (unit != null) {
502-
var locator = NodeLocator2(element.nameOffset);
503-
var node = locator.searchWithin(unit);
504-
if (node is SimpleIdentifier) {
505-
// TODO(scheglov) Remove this branch after the breaking change for
506-
// the analyzer, when we start returning the declaring node, not
507-
// the name, which will be just a `Token`.
508-
return node.parent;
509-
} else {
510-
return node;
511-
}
500+
return NodeLocator2(element.nameOffset).searchWithin(unit);
512501
}
513502
}
514503
return null;

0 commit comments

Comments
 (0)