aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/main/java/com/google/devtools/build/lib/packages/Package.java17
-rw-r--r--src/main/java/com/google/devtools/build/lib/pkgcache/TargetPatternResolverUtil.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/query2/output/PreciseAspectResolver.java2
-rw-r--r--src/test/java/com/google/devtools/build/lib/skyframe/SkylarkFileContentHashTests.java2
-rw-r--r--src/test/java/com/google/devtools/build/lib/testutil/BazelPackageBuilderHelperForTesting.java5
-rw-r--r--src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/WorkspaceResolver.java2
6 files changed, 13 insertions, 17 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/packages/Package.java b/src/main/java/com/google/devtools/build/lib/packages/Package.java
index 1556dcb141..3e0ec37f1e 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/Package.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/Package.java
@@ -114,10 +114,8 @@ public class Package {
*/
private MakeEnvironment makeEnv;
- /**
- * The collection of all targets defined in this package, indexed by name.
- */
- protected Map<String, Target> targets;
+ /** The collection of all targets defined in this package, indexed by name. */
+ protected ImmutableSortedKeyMap<String, Target> targets;
/**
* Default visibility for rules that do not specify it.
@@ -436,16 +434,13 @@ public class Package {
return events;
}
- /**
- * Returns an (immutable, unordered) view of all the targets belonging to this package.
- */
- public Collection<Target> getTargets() {
- return getTargets(targets);
+ /** Returns an (immutable, unordered) view of all the targets belonging to this package. */
+ public ImmutableSortedKeyMap<String, Target> getTargets() {
+ return targets;
}
/**
- * Common getTargets implementation, accessible by both {@link Package} and
- * {@link Package.Builder}.
+ * Common getTargets implementation, accessible by {@link Package.Builder}.
*/
private static Collection<Target> getTargets(Map<String, Target> targetMap) {
return Collections.unmodifiableCollection(targetMap.values());
diff --git a/src/main/java/com/google/devtools/build/lib/pkgcache/TargetPatternResolverUtil.java b/src/main/java/com/google/devtools/build/lib/pkgcache/TargetPatternResolverUtil.java
index d12b3ac5b5..84a1fc7e73 100644
--- a/src/main/java/com/google/devtools/build/lib/pkgcache/TargetPatternResolverUtil.java
+++ b/src/main/java/com/google/devtools/build/lib/pkgcache/TargetPatternResolverUtil.java
@@ -41,7 +41,7 @@ public final class TargetPatternResolverUtil {
public static ResolvedTargets<Target> resolvePackageTargets(Package pkg,
FilteringPolicy policy) {
ResolvedTargets.Builder<Target> builder = ResolvedTargets.builder();
- for (Target target : pkg.getTargets()) {
+ for (Target target : pkg.getTargets().values()) {
if (policy.shouldRetain(target, false)) {
builder.add(target);
}
diff --git a/src/main/java/com/google/devtools/build/lib/query2/output/PreciseAspectResolver.java b/src/main/java/com/google/devtools/build/lib/query2/output/PreciseAspectResolver.java
index 1cd14030c3..007828af53 100644
--- a/src/main/java/com/google/devtools/build/lib/query2/output/PreciseAspectResolver.java
+++ b/src/main/java/com/google/devtools/build/lib/query2/output/PreciseAspectResolver.java
@@ -87,7 +87,7 @@ public class PreciseAspectResolver implements AspectResolver {
Set<PackageIdentifier> dependentPackages = new LinkedHashSet<>();
// First compute with packages can possibly affect the aspect attributes of this package:
// Iterate over all rules...
- for (Target target : pkg.getTargets()) {
+ for (Target target : pkg.getTargets().values()) {
if (!(target instanceof Rule)) {
continue;
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/SkylarkFileContentHashTests.java b/src/test/java/com/google/devtools/build/lib/skyframe/SkylarkFileContentHashTests.java
index 03d7c15b93..59a68c50d7 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/SkylarkFileContentHashTests.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/SkylarkFileContentHashTests.java
@@ -177,7 +177,7 @@ public class SkylarkFileContentHashTests extends BuildViewTestCase {
SkyframeExecutorTestUtils.evaluate(
getSkyframeExecutor(), pkgLookupKey, /*keepGoing=*/ false, reporter);
assertFalse(result.hasError());
- Collection<Target> targets = result.get(pkgLookupKey).getPackage().getTargets();
+ Collection<Target> targets = result.get(pkgLookupKey).getPackage().getTargets().values();
for (Target target : targets) {
if (target.getName().equals(name)) {
return ((Rule) target)
diff --git a/src/test/java/com/google/devtools/build/lib/testutil/BazelPackageBuilderHelperForTesting.java b/src/test/java/com/google/devtools/build/lib/testutil/BazelPackageBuilderHelperForTesting.java
index 21f20cfb16..946ece8cee 100644
--- a/src/test/java/com/google/devtools/build/lib/testutil/BazelPackageBuilderHelperForTesting.java
+++ b/src/test/java/com/google/devtools/build/lib/testutil/BazelPackageBuilderHelperForTesting.java
@@ -88,9 +88,10 @@ public class BazelPackageBuilderHelperForTesting implements Package.Builder.Help
throw new IllegalStateException(e);
}
ImmutableSet<Label> targetsInPkg =
- ImmutableSet.copyOf(Iterables.transform(pkg.getTargets(), TARGET_TO_LABEL));
+ ImmutableSet.copyOf(Iterables.transform(pkg.getTargets().values(), TARGET_TO_LABEL));
ImmutableSet<Label> targetsInNewlyLoadedPkg =
- ImmutableSet.copyOf(Iterables.transform(newlyLoadedPkg.getTargets(), TARGET_TO_LABEL));
+ ImmutableSet.copyOf(
+ Iterables.transform(newlyLoadedPkg.getTargets().values(), TARGET_TO_LABEL));
if (!targetsInPkg.equals(targetsInNewlyLoadedPkg)) {
throw new IllegalStateException(String.format(
"The Package for %s had a different set of targets (<targetsInPkg> - "
diff --git a/src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/WorkspaceResolver.java b/src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/WorkspaceResolver.java
index bbf1a878df..97032b6e55 100644
--- a/src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/WorkspaceResolver.java
+++ b/src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/WorkspaceResolver.java
@@ -98,7 +98,7 @@ public class WorkspaceResolver {
*/
public void resolveTransitiveDependencies(Package externalPackage) {
Location location = Location.fromFile(externalPackage.getFilename());
- for (Target target : externalPackage.getTargets()) {
+ for (Target target : externalPackage.getTargets().values()) {
// Targets are //external:foo.
if (target.getTargetKind().startsWith("maven_jar ")) {
RepositoryName repositoryName;