aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/AliasProvider.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/AspectResolver.java17
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/BuildView.java18
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/ConfiguredAspectFactory.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/ConfiguredTargetFactory.java16
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java88
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/TargetContext.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/ToolchainContext.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/rules/BazelPrerequisiteValidator.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/android/AndroidNeverlinkAspect.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/android/DexArchiveAspect.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaLiteProtoAspect.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoAspect.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibrary.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchBinarySupport.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoAspect.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ProtoAttributes.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java32
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetAndData.java (renamed from src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetAndTarget.java)38
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java21
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java33
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SkylarkAspectFactory.java6
28 files changed, 202 insertions, 187 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/AliasProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/AliasProvider.java
index e650ec5343..ce3957e1d1 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/AliasProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/AliasProvider.java
@@ -18,7 +18,7 @@ import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableList;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
/**
* A provider that gives information about the aliases a rule was resolved through.
@@ -66,7 +66,7 @@ public final class AliasProvider implements TransitiveInfoProvider {
return aliasChain;
}
- public static String printLabelWithAliasChain(ConfiguredTargetAndTarget target) {
+ public static String printLabelWithAliasChain(ConfiguredTargetAndData target) {
AliasProvider aliasProvider = target.getConfiguredTarget().getProvider(AliasProvider.class);
String suffix = aliasProvider == null
? ""
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/AspectResolver.java b/src/main/java/com/google/devtools/build/lib/analysis/AspectResolver.java
index 79baad0f98..da80785060 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/AspectResolver.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/AspectResolver.java
@@ -25,7 +25,7 @@ import com.google.devtools.build.lib.packages.Package;
import com.google.devtools.build.lib.packages.Rule;
import com.google.devtools.build.lib.skyframe.AspectFunction;
import com.google.devtools.build.lib.skyframe.AspectValue;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import com.google.devtools.build.lib.skyframe.ConfiguredTargetValue;
import com.google.devtools.build.lib.util.OrderedSetMultimap;
import com.google.devtools.build.skyframe.SkyFunction;
@@ -50,7 +50,7 @@ public final class AspectResolver {
@Nullable
public static OrderedSetMultimap<Dependency, ConfiguredAspect> resolveAspectDependencies(
SkyFunction.Environment env,
- Map<SkyKey, ConfiguredTargetAndTarget> configuredTargetMap,
+ Map<SkyKey, ConfiguredTargetAndData> configuredTargetMap,
Iterable<Dependency> deps,
@Nullable NestedSetBuilder<Package> transitivePackages)
throws AspectFunction.AspectCreationException, InterruptedException {
@@ -90,7 +90,7 @@ public final class AspectResolver {
}
// Validate that aspect is applicable to "bare" configured target.
- ConfiguredTargetAndTarget associatedTarget =
+ ConfiguredTargetAndData associatedTarget =
configuredTargetMap.get(
ConfiguredTargetValue.key(dep.getLabel(), dep.getConfiguration()));
if (!aspectMatchesConfiguredTarget(associatedTarget, aspectValue.getAspect())) {
@@ -115,17 +115,17 @@ public final class AspectResolver {
* combinations of aspects for a particular configured target, so it would result in a
* combinatorial explosion of Skyframe nodes.
*/
- public static OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> mergeAspects(
+ public static OrderedSetMultimap<Attribute, ConfiguredTargetAndData> mergeAspects(
OrderedSetMultimap<Attribute, Dependency> depValueNames,
- Map<SkyKey, ConfiguredTargetAndTarget> depConfiguredTargetMap,
+ Map<SkyKey, ConfiguredTargetAndData> depConfiguredTargetMap,
OrderedSetMultimap<Dependency, ConfiguredAspect> depAspectMap)
throws MergedConfiguredTarget.DuplicateException {
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> result = OrderedSetMultimap.create();
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> result = OrderedSetMultimap.create();
for (Map.Entry<Attribute, Dependency> entry : depValueNames.entries()) {
Dependency dep = entry.getValue();
SkyKey depKey = ConfiguredTargetValue.key(dep.getLabel(), dep.getConfiguration());
- ConfiguredTargetAndTarget depConfiguredTarget = depConfiguredTargetMap.get(depKey);
+ ConfiguredTargetAndData depConfiguredTarget = depConfiguredTargetMap.get(depKey);
result.put(
entry.getKey(),
@@ -165,8 +165,7 @@ public final class AspectResolver {
return aspectKey;
}
- public static boolean aspectMatchesConfiguredTarget(
- ConfiguredTargetAndTarget dep, Aspect aspect) {
+ public static boolean aspectMatchesConfiguredTarget(ConfiguredTargetAndData dep, Aspect aspect) {
if (!aspect.getDefinition().applyToFiles() && !(dep.getTarget() instanceof Rule)) {
return false;
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java b/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
index ef8118fec8..8c4c28ddbb 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
@@ -81,7 +81,7 @@ import com.google.devtools.build.lib.pkgcache.PackageManager.PackageManagerStati
import com.google.devtools.build.lib.skyframe.AspectValue;
import com.google.devtools.build.lib.skyframe.AspectValue.AspectKey;
import com.google.devtools.build.lib.skyframe.AspectValue.AspectValueKey;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey;
import com.google.devtools.build.lib.skyframe.CoverageReportValue;
import com.google.devtools.build.lib.skyframe.SkyframeAnalysisResult;
@@ -967,7 +967,7 @@ public class BuildView {
getDirectPrerequisiteDependenciesForTesting(
eventHandler, ct, configurations, /*toolchainContext=*/ null)
.values())),
- ConfiguredTargetAndTarget::getConfiguredTarget);
+ ConfiguredTargetAndData::getConfiguredTarget);
}
@VisibleForTesting
@@ -1080,7 +1080,7 @@ public class BuildView {
return ImmutableMap.copyOf(keys);
}
- private OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> getPrerequisiteMapForTesting(
+ private OrderedSetMultimap<Attribute, ConfiguredTargetAndData> getPrerequisiteMapForTesting(
final ExtendedEventHandler eventHandler,
ConfiguredTarget target,
BuildConfigurationCollection configurations,
@@ -1091,11 +1091,11 @@ public class BuildView {
getDirectPrerequisiteDependenciesForTesting(
eventHandler, target, configurations, toolchainContext);
- ImmutableMultimap<Dependency, ConfiguredTargetAndTarget> cts =
+ ImmutableMultimap<Dependency, ConfiguredTargetAndData> cts =
skyframeExecutor.getConfiguredTargetMapForTesting(
eventHandler, target.getConfiguration(), ImmutableSet.copyOf(depNodeNames.values()));
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> result = OrderedSetMultimap.create();
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> result = OrderedSetMultimap.create();
for (Map.Entry<Attribute, Dependency> entry : depNodeNames.entries()) {
result.putAll(entry.getKey(), cts.get(entry.getValue()));
}
@@ -1144,7 +1144,7 @@ public class BuildView {
}
@VisibleForTesting
- public ConfiguredTargetAndTarget getConfiguredTargetAndTargetForTesting(
+ public ConfiguredTargetAndData getConfiguredTargetAndTargetForTesting(
ExtendedEventHandler eventHandler, Label label, BuildConfiguration config) {
return skyframeExecutor.getConfiguredTargetAndTargetForTesting(eventHandler, label, config);
}
@@ -1200,7 +1200,7 @@ public class BuildView {
ToolchainContext toolchainContext =
skyframeExecutor.getToolchainContextForTesting(
requiredToolchains, targetConfig, eventHandler);
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> prerequisiteMap =
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> prerequisiteMap =
getPrerequisiteMapForTesting(
eventHandler, configuredTarget, configurations, toolchainContext);
toolchainContext.resolveToolchains(prerequisiteMap);
@@ -1239,11 +1239,11 @@ public class BuildView {
BuildConfigurationCollection configurations)
throws EvalException, InvalidConfigurationException, InterruptedException,
InconsistentAspectOrderException {
- Collection<ConfiguredTargetAndTarget> configuredTargets =
+ Collection<ConfiguredTargetAndData> configuredTargets =
getPrerequisiteMapForTesting(
eventHandler, dependentTarget, configurations, /*toolchainContext=*/ null)
.values();
- for (ConfiguredTargetAndTarget ct : configuredTargets) {
+ for (ConfiguredTargetAndData ct : configuredTargets) {
if (ct.getTarget().getLabel().equals(desiredTarget)) {
return ct.getConfiguredTarget();
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredAspectFactory.java b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredAspectFactory.java
index 16159e3785..18462fb74d 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredAspectFactory.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredAspectFactory.java
@@ -14,7 +14,7 @@
package com.google.devtools.build.lib.analysis;
import com.google.devtools.build.lib.packages.AspectParameters;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
/**
* Creates the Skyframe node of an aspect.
@@ -23,12 +23,12 @@ public interface ConfiguredAspectFactory {
/**
* Creates the aspect based on the configured target of the associated rule.
*
- * @param ctatBase the ConfiguredTargetAndTarget of the associated rule
+ * @param ctadBase the ConfiguredTargetAndData of the associated rule
* @param context the context of the associated configured target plus all the attributes the
* aspect itself has defined
* @param parameters information from attributes of the rule that have requested this
*/
ConfiguredAspect create(
- ConfiguredTargetAndTarget ctatBase, RuleContext context, AspectParameters parameters)
+ ConfiguredTargetAndData ctadBase, RuleContext context, AspectParameters parameters)
throws InterruptedException;
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java
index 2cd14da2f5..c349b80799 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java
@@ -52,7 +52,7 @@ import com.google.devtools.build.lib.packages.RuleClassProvider;
import com.google.devtools.build.lib.packages.RuleErrorConsumer;
import com.google.devtools.build.lib.packages.Target;
import com.google.devtools.build.lib.runtime.proto.InvocationPolicyOuterClass.InvocationPolicy;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.syntax.Environment;
import com.google.devtools.build.lib.syntax.Environment.Extension;
@@ -93,7 +93,7 @@ public class ConfiguredRuleClassProvider implements RuleClassProvider {
*/
void validate(
RuleContext.Builder contextBuilder,
- ConfiguredTargetAndTarget prerequisite,
+ ConfiguredTargetAndData prerequisite,
Attribute attribute);
}
@@ -103,7 +103,7 @@ public class ConfiguredRuleClassProvider implements RuleClassProvider {
@Override
public void validate(
RuleContext.Builder contextBuilder,
- ConfiguredTargetAndTarget prerequisite,
+ ConfiguredTargetAndData prerequisite,
Attribute attribute) {
validateDirectPrerequisiteForDeprecation(
contextBuilder, contextBuilder.getRule(), prerequisite, contextBuilder.forAspect());
@@ -154,7 +154,7 @@ public class ConfiguredRuleClassProvider implements RuleClassProvider {
public static void validateDirectPrerequisiteForDeprecation(
RuleErrorConsumer errors,
Rule rule,
- ConfiguredTargetAndTarget prerequisite,
+ ConfiguredTargetAndData prerequisite,
boolean forAspect) {
Target prerequisiteTarget = prerequisite.getTarget();
Label prerequisiteLabel = prerequisiteTarget.getLabel();
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredTargetFactory.java b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredTargetFactory.java
index f963a22716..9647cb3435 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredTargetFactory.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredTargetFactory.java
@@ -66,7 +66,7 @@ import com.google.devtools.build.lib.packages.SkylarkProviderIdentifier;
import com.google.devtools.build.lib.packages.Target;
import com.google.devtools.build.lib.profiler.memory.CurrentRuleTracker;
import com.google.devtools.build.lib.skyframe.BuildConfigurationValue;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey;
import com.google.devtools.build.lib.util.OrderedSetMultimap;
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -100,7 +100,7 @@ public final class ConfiguredTargetFactory {
* to the {@code AnalysisEnvironment}.
*/
private NestedSet<PackageGroupContents> convertVisibility(
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> prerequisiteMap,
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> prerequisiteMap,
EventHandler reporter,
Target target,
BuildConfiguration packageGroupConfiguration) {
@@ -148,10 +148,10 @@ public final class ConfiguredTargetFactory {
}
private TransitiveInfoCollection findPrerequisite(
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> prerequisiteMap,
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> prerequisiteMap,
Label label,
BuildConfiguration config) {
- for (ConfiguredTargetAndTarget prerequisite : prerequisiteMap.get(null)) {
+ for (ConfiguredTargetAndData prerequisite : prerequisiteMap.get(null)) {
if (prerequisite.getTarget().getLabel().equals(label)
&& (prerequisite.getConfiguredTarget().getConfiguration() == config)) {
return prerequisite.getConfiguredTarget();
@@ -231,7 +231,7 @@ public final class ConfiguredTargetFactory {
Target target,
BuildConfiguration config,
BuildConfiguration hostConfig,
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> prerequisiteMap,
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> prerequisiteMap,
ImmutableMap<Label, ConfigMatchingProvider> configConditions,
@Nullable ToolchainContext toolchainContext)
throws InterruptedException, ActionConflictException {
@@ -305,7 +305,7 @@ public final class ConfiguredTargetFactory {
Rule rule,
BuildConfiguration configuration,
BuildConfiguration hostConfiguration,
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> prerequisiteMap,
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> prerequisiteMap,
ImmutableMap<Label, ConfigMatchingProvider> configConditions,
@Nullable ToolchainContext toolchainContext)
throws InterruptedException, ActionConflictException {
@@ -414,11 +414,11 @@ public final class ConfiguredTargetFactory {
*/
public ConfiguredAspect createAspect(
AnalysisEnvironment env,
- ConfiguredTargetAndTarget associatedTarget,
+ ConfiguredTargetAndData associatedTarget,
ImmutableList<Aspect> aspectPath,
ConfiguredAspectFactory aspectFactory,
Aspect aspect,
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> prerequisiteMap,
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> prerequisiteMap,
ImmutableMap<Label, ConfigMatchingProvider> configConditions,
@Nullable ToolchainContext toolchainContext,
BuildConfiguration aspectConfiguration,
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java b/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java
index 075a0ab2db..3d0fbf06a2 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java
@@ -89,7 +89,7 @@ import com.google.devtools.build.lib.packages.RuleClass.ConfiguredTargetFactory.
import com.google.devtools.build.lib.packages.RuleErrorConsumer;
import com.google.devtools.build.lib.packages.Target;
import com.google.devtools.build.lib.packages.TargetUtils;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.Type;
import com.google.devtools.build.lib.syntax.Type.LabelClass;
@@ -173,7 +173,7 @@ public final class RuleContext extends TargetContext
*/
private final ImmutableList<Aspect> aspects;
private final ImmutableList<AspectDescriptor> aspectDescriptors;
- private final ListMultimap<String, ConfiguredTargetAndTarget> targetMap;
+ private final ListMultimap<String, ConfiguredTargetAndData> targetMap;
private final ListMultimap<String, ConfiguredFilesetEntry> filesetEntryMap;
private final ImmutableMap<Label, ConfigMatchingProvider> configConditions;
private final AspectAwareAttributeMapper attributes;
@@ -195,7 +195,7 @@ public final class RuleContext extends TargetContext
private RuleContext(
Builder builder,
AttributeMap attributes,
- ListMultimap<String, ConfiguredTargetAndTarget> targetMap,
+ ListMultimap<String, ConfiguredTargetAndData> targetMap,
ListMultimap<String, ConfiguredFilesetEntry> filesetEntryMap,
ImmutableMap<Label, ConfigMatchingProvider> configConditions,
Class<? extends BuildConfiguration.Fragment> universalFragment,
@@ -372,14 +372,14 @@ public final class RuleContext extends TargetContext
* Returns an immutable map from attribute name to list of configured targets for that attribute.
*/
public ListMultimap<String, ? extends TransitiveInfoCollection> getConfiguredTargetMap() {
- return Multimaps.transformValues(targetMap, ConfiguredTargetAndTarget::getConfiguredTarget);
+ return Multimaps.transformValues(targetMap, ConfiguredTargetAndData::getConfiguredTarget);
}
private List<? extends TransitiveInfoCollection> getDeps(String key) {
- return Lists.transform(targetMap.get(key), ConfiguredTargetAndTarget::getConfiguredTarget);
+ return Lists.transform(targetMap.get(key), ConfiguredTargetAndData::getConfiguredTarget);
}
- private List<ConfiguredTargetAndTarget> getConfiguredTargetAndTargetDeps(String key) {
+ private List<ConfiguredTargetAndData> getConfiguredTargetAndTargetDeps(String key) {
return targetMap.get(key);
}
@@ -738,7 +738,7 @@ public final class RuleContext extends TargetContext
ImmutableMap.Builder<String, TransitiveInfoCollection> result = ImmutableMap.builder();
Map<String, Label> dict = attributes().get(attributeName, BuildType.LABEL_DICT_UNARY);
Map<Label, ConfiguredTarget> labelToDep = new HashMap<>();
- for (ConfiguredTargetAndTarget dep : targetMap.get(attributeName)) {
+ for (ConfiguredTargetAndData dep : targetMap.get(attributeName)) {
labelToDep.put(dep.getTarget().getLabel(), dep.getConfiguredTarget());
}
@@ -758,7 +758,7 @@ public final class RuleContext extends TargetContext
Mode mode) {
return Lists.transform(
getPrerequisiteConfiguredTargetAndTargets(attributeName, mode),
- ConfiguredTargetAndTarget::getConfiguredTarget);
+ ConfiguredTargetAndData::getConfiguredTarget);
}
/**
@@ -769,7 +769,7 @@ public final class RuleContext extends TargetContext
getSplitPrerequisites(String attributeName) {
return Maps.transformValues(
getSplitPrerequisiteConfiguredTargetAndTargets(attributeName),
- (ctatList) -> Lists.transform(ctatList, ConfiguredTargetAndTarget::getConfiguredTarget));
+ (ctatList) -> Lists.transform(ctatList, ConfiguredTargetAndData::getConfiguredTarget));
}
/**
@@ -777,7 +777,7 @@ public final class RuleContext extends TargetContext
* attribute. Note that you need to specify the correct mode for the attribute otherwise an
* exception will be raised.
*/
- public List<ConfiguredTargetAndTarget> getPrerequisiteConfiguredTargetAndTargets(
+ public List<ConfiguredTargetAndData> getPrerequisiteConfiguredTargetAndTargets(
String attributeName, Mode mode) {
Attribute attributeDefinition = attributes().getAttributeDefinition(attributeName);
if ((mode == Mode.TARGET) && (attributeDefinition.hasSplitConfigurationTransition())) {
@@ -787,7 +787,7 @@ public final class RuleContext extends TargetContext
// deeply nested and we can't easily inject the behavior we want. However, we should fix all
// such call sites.
checkAttribute(attributeName, Mode.SPLIT);
- Map<Optional<String>, List<ConfiguredTargetAndTarget>> map =
+ Map<Optional<String>, List<ConfiguredTargetAndData>> map =
getSplitPrerequisiteConfiguredTargetAndTargets(attributeName);
return map.isEmpty() ? ImmutableList.of() : map.entrySet().iterator().next().getValue();
}
@@ -796,7 +796,7 @@ public final class RuleContext extends TargetContext
return getConfiguredTargetAndTargetDeps(attributeName);
}
- private Map<Optional<String>, List<ConfiguredTargetAndTarget>>
+ private Map<Optional<String>, List<ConfiguredTargetAndData>>
getSplitPrerequisiteConfiguredTargetAndTargets(String attributeName) {
checkAttribute(attributeName, Mode.SPLIT);
Attribute attributeDefinition = attributes().getAttributeDefinition(attributeName);
@@ -804,7 +804,7 @@ public final class RuleContext extends TargetContext
attributeDefinition.getSplitTransition(
ConfiguredAttributeMapper.of(rule, configConditions));
List<BuildOptions> splitOptions = transition.split(getConfiguration().getOptions());
- List<ConfiguredTargetAndTarget> deps = getConfiguredTargetAndTargetDeps(attributeName);
+ List<ConfiguredTargetAndData> deps = getConfiguredTargetAndTargetDeps(attributeName);
if (splitOptions.isEmpty()) {
// The split transition is not active. Defer the decision on which CPU to use.
@@ -819,9 +819,9 @@ public final class RuleContext extends TargetContext
}
// Use an ImmutableListMultimap.Builder here to preserve ordering.
- ImmutableListMultimap.Builder<Optional<String>, ConfiguredTargetAndTarget> result =
+ ImmutableListMultimap.Builder<Optional<String>, ConfiguredTargetAndData> result =
ImmutableListMultimap.builder();
- for (ConfiguredTargetAndTarget t : deps) {
+ for (ConfiguredTargetAndData t : deps) {
if (t.getConfiguredTarget().getConfiguration() != null) {
result.put(Optional.of(t.getConfiguredTarget().getConfiguration().getCpu()), t);
} else {
@@ -863,16 +863,16 @@ public final class RuleContext extends TargetContext
/**
* For a given attribute, returns all the ConfiguredTargetAndTargets of that attribute. Each
- * ConfiguredTargetAndTarget is keyed by the {@link BuildConfiguration} that created it.
+ * ConfiguredTargetAndData is keyed by the {@link BuildConfiguration} that created it.
*/
- public ImmutableListMultimap<BuildConfiguration, ConfiguredTargetAndTarget>
+ public ImmutableListMultimap<BuildConfiguration, ConfiguredTargetAndData>
getPrerequisiteCofiguredTargetAndTargetsByConfiguration(String attributeName, Mode mode) {
- List<ConfiguredTargetAndTarget> ctatCollection =
+ List<ConfiguredTargetAndData> ctatCollection =
getPrerequisiteConfiguredTargetAndTargets(attributeName, mode);
- ImmutableListMultimap.Builder<BuildConfiguration, ConfiguredTargetAndTarget> result =
+ ImmutableListMultimap.Builder<BuildConfiguration, ConfiguredTargetAndData> result =
ImmutableListMultimap.builder();
- for (ConfiguredTargetAndTarget ctat : ctatCollection) {
- result.put(ctat.getConfiguredTarget().getConfiguration(), ctat);
+ for (ConfiguredTargetAndData ctad : ctatCollection) {
+ result.put(ctad.getConfiguredTarget().getConfiguration(), ctad);
}
return result.build();
}
@@ -1395,7 +1395,7 @@ public final class RuleContext extends TargetContext
private PatchTransition disableLipoTransition;
private final PrerequisiteValidator prerequisiteValidator;
private final ErrorReporter reporter;
- private OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> prerequisiteMap;
+ private OrderedSetMultimap<Attribute, ConfiguredTargetAndData> prerequisiteMap;
private ImmutableMap<Label, ConfigMatchingProvider> configConditions;
private NestedSet<PackageGroupContents> visibility;
private ImmutableMap<String, Attribute> aspectAttributes;
@@ -1428,7 +1428,7 @@ public final class RuleContext extends TargetContext
Preconditions.checkNotNull(visibility);
AttributeMap attributes = ConfiguredAttributeMapper.of(rule, configConditions);
validateAttributes(attributes);
- ListMultimap<String, ConfiguredTargetAndTarget> targetMap = createTargetMap();
+ ListMultimap<String, ConfiguredTargetAndData> targetMap = createTargetMap();
ListMultimap<String, ConfiguredFilesetEntry> filesetEntryMap =
createFilesetEntryMap(rule, configConditions);
return new RuleContext(
@@ -1457,7 +1457,7 @@ public final class RuleContext extends TargetContext
* warning messages and sets the error flag as appropriate.
*/
Builder setPrerequisites(
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> prerequisiteMap) {
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> prerequisiteMap) {
this.prerequisiteMap = Preconditions.checkNotNull(prerequisiteMap);
return this;
}
@@ -1506,7 +1506,7 @@ public final class RuleContext extends TargetContext
return this;
}
- private boolean validateFilesetEntry(FilesetEntry filesetEntry, ConfiguredTargetAndTarget src) {
+ private boolean validateFilesetEntry(FilesetEntry filesetEntry, ConfiguredTargetAndData src) {
if (src.getConfiguredTarget().getProvider(FilesetProvider.class) != null) {
return true;
}
@@ -1544,8 +1544,8 @@ public final class RuleContext extends TargetContext
continue;
}
String attributeName = attr.getName();
- Map<Label, ConfiguredTargetAndTarget> ctMap = new HashMap<>();
- for (ConfiguredTargetAndTarget prerequisite : prerequisiteMap.get(attr)) {
+ Map<Label, ConfiguredTargetAndData> ctMap = new HashMap<>();
+ for (ConfiguredTargetAndData prerequisite : prerequisiteMap.get(attr)) {
ctMap.put(
AliasProvider.getDependencyLabel(prerequisite.getConfiguredTarget()), prerequisite);
}
@@ -1554,7 +1554,7 @@ public final class RuleContext extends TargetContext
for (FilesetEntry entry : entries) {
if (entry.getFiles() == null) {
Label label = entry.getSrcLabel();
- ConfiguredTargetAndTarget src = ctMap.get(label);
+ ConfiguredTargetAndData src = ctMap.get(label);
if (!validateFilesetEntry(entry, src)) {
continue;
}
@@ -1574,11 +1574,11 @@ public final class RuleContext extends TargetContext
}
/** Determines and returns a map from attribute name to list of configured targets. */
- private ImmutableSortedKeyListMultimap<String, ConfiguredTargetAndTarget> createTargetMap() {
- ImmutableSortedKeyListMultimap.Builder<String, ConfiguredTargetAndTarget> mapBuilder =
+ private ImmutableSortedKeyListMultimap<String, ConfiguredTargetAndData> createTargetMap() {
+ ImmutableSortedKeyListMultimap.Builder<String, ConfiguredTargetAndData> mapBuilder =
ImmutableSortedKeyListMultimap.builder();
- for (Map.Entry<Attribute, Collection<ConfiguredTargetAndTarget>> entry :
+ for (Map.Entry<Attribute, Collection<ConfiguredTargetAndData>> entry :
prerequisiteMap.asMap().entrySet()) {
Attribute attribute = entry.getKey();
if (attribute == null) {
@@ -1592,7 +1592,7 @@ public final class RuleContext extends TargetContext
if (attribute.isSilentRuleClassFilter()) {
Predicate<RuleClass> filter = attribute.getAllowedRuleClassesPredicate();
- for (ConfiguredTargetAndTarget configuredTarget : entry.getValue()) {
+ for (ConfiguredTargetAndData configuredTarget : entry.getValue()) {
Target prerequisiteTarget = configuredTarget.getTarget();
if ((prerequisiteTarget instanceof Rule)
&& filter.apply(((Rule) prerequisiteTarget).getRuleClassObject())) {
@@ -1601,7 +1601,7 @@ public final class RuleContext extends TargetContext
}
}
} else {
- for (ConfiguredTargetAndTarget configuredTarget : entry.getValue()) {
+ for (ConfiguredTargetAndData configuredTarget : entry.getValue()) {
validateDirectPrerequisite(attribute, configuredTarget);
mapBuilder.put(attribute.getName(), configuredTarget);
}
@@ -1664,10 +1664,7 @@ public final class RuleContext extends TargetContext
}
private String badPrerequisiteMessage(
- String targetKind,
- ConfiguredTargetAndTarget prerequisite,
- String reason,
- boolean isWarning) {
+ String targetKind, ConfiguredTargetAndData prerequisite, String reason, boolean isWarning) {
String msgPrefix = targetKind != null ? targetKind + " " : "";
String msgReason = reason != null ? " (" + reason + ")" : "";
if (isWarning) {
@@ -1683,7 +1680,7 @@ public final class RuleContext extends TargetContext
private void reportBadPrerequisite(
Attribute attribute,
String targetKind,
- ConfiguredTargetAndTarget prerequisite,
+ ConfiguredTargetAndData prerequisite,
String reason,
boolean isWarning) {
String message = badPrerequisiteMessage(targetKind, prerequisite, reason, isWarning);
@@ -1695,7 +1692,7 @@ public final class RuleContext extends TargetContext
}
private void validateDirectPrerequisiteType(
- ConfiguredTargetAndTarget prerequisite, Attribute attribute) {
+ ConfiguredTargetAndData prerequisite, Attribute attribute) {
Target prerequisiteTarget = prerequisite.getTarget();
Label prerequisiteLabel = prerequisiteTarget.getLabel();
@@ -1778,7 +1775,7 @@ public final class RuleContext extends TargetContext
}
private void validateDirectPrerequisiteFileTypes(
- ConfiguredTargetAndTarget prerequisite, Attribute attribute) {
+ ConfiguredTargetAndData prerequisite, Attribute attribute) {
if (attribute.isSkipAnalysisTimeFileTypeCheck()) {
return;
}
@@ -1830,8 +1827,7 @@ public final class RuleContext extends TargetContext
* dependency is valid if it is from a rule in allowedRuledClasses, OR if all of the providers
* in requiredProviders are provided by the target.
*/
- private void validateRuleDependency(
- ConfiguredTargetAndTarget prerequisite, Attribute attribute) {
+ private void validateRuleDependency(ConfiguredTargetAndData prerequisite, Attribute attribute) {
Set<String> unfulfilledRequirements = new LinkedHashSet<>();
if (checkRuleDependencyClass(prerequisite, attribute, unfulfilledRequirements)) {
@@ -1855,7 +1851,7 @@ public final class RuleContext extends TargetContext
/** Check if prerequisite should be allowed based on its rule class. */
private boolean checkRuleDependencyClass(
- ConfiguredTargetAndTarget prerequisite,
+ ConfiguredTargetAndData prerequisite,
Attribute attribute,
Set<String> unfulfilledRequirements) {
if (attribute.getAllowedRuleClassesPredicate() != Predicates.<RuleClass>alwaysTrue()) {
@@ -1883,7 +1879,7 @@ public final class RuleContext extends TargetContext
* <p>If yes, also issues said warning.
*/
private boolean checkRuleDependencyClassWarnings(
- ConfiguredTargetAndTarget prerequisite, Attribute attribute) {
+ ConfiguredTargetAndData prerequisite, Attribute attribute) {
if (attribute
.getAllowedRuleClassesWarningPredicate()
.apply(((Rule) prerequisite.getTarget()).getRuleClassObject())) {
@@ -1904,7 +1900,7 @@ public final class RuleContext extends TargetContext
/** Check if prerequisite should be allowed based on required providers on the attribute. */
private boolean checkRuleDependencyMandatoryProviders(
- ConfiguredTargetAndTarget prerequisite,
+ ConfiguredTargetAndData prerequisite,
Attribute attribute,
Set<String> unfulfilledRequirements) {
RequiredProviders requiredProviders = attribute.getRequiredProviders();
@@ -1931,7 +1927,7 @@ public final class RuleContext extends TargetContext
}
private void validateDirectPrerequisite(
- Attribute attribute, ConfiguredTargetAndTarget prerequisite) {
+ Attribute attribute, ConfiguredTargetAndData prerequisite) {
validateDirectPrerequisiteType(prerequisite, attribute);
validateDirectPrerequisiteFileTypes(prerequisite, attribute);
if (attribute.performPrereqValidatorCheck()) {
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/TargetContext.java b/src/main/java/com/google/devtools/build/lib/analysis/TargetContext.java
index cd1fa08b17..4f554840b0 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/TargetContext.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/TargetContext.java
@@ -24,7 +24,7 @@ import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.packages.PackageSpecification.PackageGroupContents;
import com.google.devtools.build.lib.packages.Target;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import java.util.List;
import java.util.Set;
import javax.annotation.Nullable;
@@ -48,7 +48,7 @@ public class TargetContext {
* exception of visibility (i.e., visibility is represented here, even though it is a rule
* attribute in case of a rule). Rule attributes are handled by the {@link RuleContext} subclass.
*/
- private final List<ConfiguredTargetAndTarget> directPrerequisites;
+ private final List<ConfiguredTargetAndData> directPrerequisites;
private final NestedSet<PackageGroupContents> visibility;
@@ -61,7 +61,7 @@ public class TargetContext {
AnalysisEnvironment env,
Target target,
BuildConfiguration configuration,
- Set<ConfiguredTargetAndTarget> directPrerequisites,
+ Set<ConfiguredTargetAndData> directPrerequisites,
NestedSet<PackageGroupContents> visibility) {
this.env = env;
this.target = target;
@@ -115,7 +115,7 @@ public class TargetContext {
*/
public TransitiveInfoCollection maybeFindDirectPrerequisite(Label label,
BuildConfiguration config) {
- for (ConfiguredTargetAndTarget prerequisite : directPrerequisites) {
+ for (ConfiguredTargetAndData prerequisite : directPrerequisites) {
if (prerequisite.getTarget().getLabel().equals(label)
&& (Objects.equal(prerequisite.getConfiguredTarget().getConfiguration(), config))) {
return prerequisite.getConfiguredTarget();
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ToolchainContext.java b/src/main/java/com/google/devtools/build/lib/analysis/ToolchainContext.java
index 490462fdb7..a2e63b9755 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/ToolchainContext.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/ToolchainContext.java
@@ -31,7 +31,7 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe;
import com.google.devtools.build.lib.events.Location;
import com.google.devtools.build.lib.packages.Attribute;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
@@ -113,7 +113,7 @@ public class ToolchainContext {
}
public void resolveToolchains(
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> prerequisiteMap) {
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> prerequisiteMap) {
if (!this.requiredToolchains.isEmpty()) {
this.resolvedToolchainProviders =
new ResolvedToolchainProviders(findToolchains(resolvedToolchainLabels, prerequisiteMap));
@@ -164,7 +164,7 @@ public class ToolchainContext {
private static ImmutableMap<Label, ToolchainInfo> findToolchains(
ResolvedToolchainLabels resolvedToolchainLabels,
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> prerequisiteMap) {
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> prerequisiteMap) {
// Find the prerequisites associated with the $toolchains attribute.
Optional<Attribute> toolchainAttribute =
prerequisiteMap
@@ -178,7 +178,7 @@ public class ToolchainContext {
"No toolchains attribute found while loading resolved toolchains");
ImmutableMap.Builder<Label, ToolchainInfo> toolchains = new ImmutableMap.Builder<>();
- for (ConfiguredTargetAndTarget target : prerequisiteMap.get(toolchainAttribute.get())) {
+ for (ConfiguredTargetAndData target : prerequisiteMap.get(toolchainAttribute.get())) {
Label discoveredLabel = target.getTarget().getLabel();
Label toolchainType = resolvedToolchainLabels.getType(discoveredLabel);
if (toolchainType != null) {
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelPrerequisiteValidator.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelPrerequisiteValidator.java
index f6033adb5a..bfb346e421 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelPrerequisiteValidator.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelPrerequisiteValidator.java
@@ -24,7 +24,7 @@ import com.google.devtools.build.lib.packages.RawAttributeMapper;
import com.google.devtools.build.lib.packages.RequiredProviders;
import com.google.devtools.build.lib.packages.Rule;
import com.google.devtools.build.lib.packages.Target;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import com.google.devtools.build.lib.syntax.Type;
/** Ensures that a target's prerequisites are visible to it and match its testonly status. */
@@ -33,7 +33,7 @@ public class BazelPrerequisiteValidator
@Override
public void validate(
- RuleContext.Builder context, ConfiguredTargetAndTarget prerequisite, Attribute attribute) {
+ RuleContext.Builder context, ConfiguredTargetAndData prerequisite, Attribute attribute) {
validateDirectPrerequisiteVisibility(context, prerequisite, attribute.getName());
validateDirectPrerequisiteForTestOnly(context, prerequisite);
ConfiguredRuleClassProvider.DeprecationValidator.validateDirectPrerequisiteForDeprecation(
@@ -41,7 +41,7 @@ public class BazelPrerequisiteValidator
}
private void validateDirectPrerequisiteVisibility(
- RuleContext.Builder context, ConfiguredTargetAndTarget prerequisite, String attrName) {
+ RuleContext.Builder context, ConfiguredTargetAndData prerequisite, String attrName) {
Rule rule = context.getRule();
Target prerequisiteTarget = prerequisite.getTarget();
if (!context
@@ -100,7 +100,7 @@ public class BazelPrerequisiteValidator
}
private void validateDirectPrerequisiteForTestOnly(
- RuleContext.Builder context, ConfiguredTargetAndTarget prerequisite) {
+ RuleContext.Builder context, ConfiguredTargetAndData prerequisite) {
Rule rule = context.getRule();
if (rule.getRuleClassObject().getAdvertisedProviders().canHaveAnyProvider()) {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidNeverlinkAspect.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidNeverlinkAspect.java
index ff56c613fe..8e569e1f89 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidNeverlinkAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidNeverlinkAspect.java
@@ -27,7 +27,7 @@ import com.google.devtools.build.lib.packages.SkylarkProviderIdentifier;
import com.google.devtools.build.lib.rules.java.JavaCommon;
import com.google.devtools.build.lib.rules.java.JavaInfo;
import com.google.devtools.build.lib.rules.java.JavaRuntimeJarProvider;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import java.util.ArrayList;
import java.util.List;
@@ -47,7 +47,7 @@ public class AndroidNeverlinkAspect extends NativeAspectClass implements Configu
@Override
public ConfiguredAspect create(
- ConfiguredTargetAndTarget ctatBase, RuleContext ruleContext, AspectParameters parameters) {
+ ConfiguredTargetAndData ctadBase, RuleContext ruleContext, AspectParameters parameters) {
if (!JavaCommon.getConstraints(ruleContext).contains("android")
&& !ruleContext.getRule().getRuleClass().startsWith("android_")) {
return new ConfiguredAspect.Builder(this, parameters, ruleContext).build();
@@ -72,7 +72,7 @@ public class AndroidNeverlinkAspect extends NativeAspectClass implements Configu
AndroidCommon.collectTransitiveNeverlinkLibraries(
ruleContext,
deps,
- ctatBase
+ ctadBase
.getConfiguredTarget()
.getProvider(JavaRuntimeJarProvider.class)
.getRuntimeJars())))
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/DexArchiveAspect.java b/src/main/java/com/google/devtools/build/lib/rules/android/DexArchiveAspect.java
index adc6bea3d7..93d1709505 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/DexArchiveAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/DexArchiveAspect.java
@@ -64,7 +64,7 @@ import com.google.devtools.build.lib.rules.java.proto.JavaProtoAspectCommon;
import com.google.devtools.build.lib.rules.java.proto.JavaProtoLibraryAspectProvider;
import com.google.devtools.build.lib.rules.proto.ProtoLangToolchainProvider;
import com.google.devtools.build.lib.rules.proto.ProtoSourcesProvider;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@@ -170,11 +170,11 @@ public final class DexArchiveAspect extends NativeAspectClass implements Configu
@Override
public ConfiguredAspect create(
- ConfiguredTargetAndTarget ctatBase, RuleContext ruleContext, AspectParameters params)
+ ConfiguredTargetAndData ctadBase, RuleContext ruleContext, AspectParameters params)
throws InterruptedException {
ConfiguredAspect.Builder result = new ConfiguredAspect.Builder(this, params, ruleContext);
Function<Artifact, Artifact> desugaredJars =
- desugarJarsIfRequested(ctatBase.getConfiguredTarget(), ruleContext, result);
+ desugarJarsIfRequested(ctadBase.getConfiguredTarget(), ruleContext, result);
TriState incrementalAttr =
TriState.valueOf(params.getOnlyValueOfAttribute("incremental_dexing"));
@@ -193,7 +193,7 @@ public final class DexArchiveAspect extends NativeAspectClass implements Configu
new DexArchiveProvider.Builder()
.addTransitiveProviders(collectPrerequisites(ruleContext, DexArchiveProvider.class));
Iterable<Artifact> runtimeJars =
- getProducedRuntimeJars(ctatBase.getConfiguredTarget(), ruleContext);
+ getProducedRuntimeJars(ctadBase.getConfiguredTarget(), ruleContext);
if (runtimeJars != null) {
boolean basenameClash = checkBasenameClash(runtimeJars);
Set<Set<String>> aspectDexopts = aspectDexopts(ruleContext);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java
index 6a1ad0813d..acb8bd7aeb 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java
@@ -61,7 +61,7 @@ import com.google.devtools.build.lib.rules.proto.ProtoLangToolchainProvider;
import com.google.devtools.build.lib.rules.proto.ProtoSourceFileBlacklist;
import com.google.devtools.build.lib.rules.proto.ProtoSupportDataProvider;
import com.google.devtools.build.lib.rules.proto.SupportData;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import com.google.devtools.build.lib.vfs.FileSystemUtils;
import com.google.devtools.build.lib.vfs.PathFragment;
import java.util.ArrayList;
@@ -89,11 +89,11 @@ public abstract class CcProtoAspect extends NativeAspectClass implements Configu
@Override
public ConfiguredAspect create(
- ConfiguredTargetAndTarget ctatBase, RuleContext ruleContext, AspectParameters parameters)
+ ConfiguredTargetAndData ctadBase, RuleContext ruleContext, AspectParameters parameters)
throws InterruptedException {
// Get SupportData, which is provided by the proto_library rule we attach to.
SupportData supportData =
- checkNotNull(ctatBase.getConfiguredTarget().getProvider(ProtoSupportDataProvider.class))
+ checkNotNull(ctadBase.getConfiguredTarget().getProvider(ProtoSupportDataProvider.class))
.getSupportData();
try {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaLiteProtoAspect.java b/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaLiteProtoAspect.java
index 6a2417de70..8a4056bd06 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaLiteProtoAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaLiteProtoAspect.java
@@ -55,7 +55,7 @@ import com.google.devtools.build.lib.rules.proto.ProtoLangToolchainProvider;
import com.google.devtools.build.lib.rules.proto.ProtoSourcesProvider;
import com.google.devtools.build.lib.rules.proto.ProtoSupportDataProvider;
import com.google.devtools.build.lib.rules.proto.SupportData;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import javax.annotation.Nullable;
/** An Aspect which JavaLiteProtoLibrary injects to build Java Lite protos. */
@@ -87,13 +87,13 @@ public class JavaLiteProtoAspect extends NativeAspectClass implements Configured
@Override
public ConfiguredAspect create(
- ConfiguredTargetAndTarget ctatBase, RuleContext ruleContext, AspectParameters parameters)
+ ConfiguredTargetAndData ctadBase, RuleContext ruleContext, AspectParameters parameters)
throws InterruptedException {
ConfiguredAspect.Builder aspect = new ConfiguredAspect.Builder(this, parameters, ruleContext);
// Get SupportData, which is provided by the proto_library rule we attach to.
SupportData supportData =
- checkNotNull(ctatBase.getConfiguredTarget().getProvider(ProtoSupportDataProvider.class))
+ checkNotNull(ctadBase.getConfiguredTarget().getProvider(ProtoSupportDataProvider.class))
.getSupportData();
JavaProtoAspectCommon aspectCommon =
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoAspect.java b/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoAspect.java
index 82030e0643..81845ba13f 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoAspect.java
@@ -54,7 +54,7 @@ import com.google.devtools.build.lib.rules.proto.ProtoSourceFileBlacklist;
import com.google.devtools.build.lib.rules.proto.ProtoSourcesProvider;
import com.google.devtools.build.lib.rules.proto.ProtoSupportDataProvider;
import com.google.devtools.build.lib.rules.proto.SupportData;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import javax.annotation.Nullable;
/** An Aspect which JavaProtoLibrary injects to build Java SPEED protos. */
@@ -90,7 +90,7 @@ public class JavaProtoAspect extends NativeAspectClass implements ConfiguredAspe
@Override
public ConfiguredAspect create(
- ConfiguredTargetAndTarget ctatBase, RuleContext ruleContext, AspectParameters parameters)
+ ConfiguredTargetAndData ctadBase, RuleContext ruleContext, AspectParameters parameters)
throws InterruptedException {
ConfiguredAspect.Builder aspect = new ConfiguredAspect.Builder(this, parameters, ruleContext);
@@ -100,14 +100,14 @@ public class JavaProtoAspect extends NativeAspectClass implements ConfiguredAspe
// Get SupportData, which is provided by the proto_library rule we attach to.
SupportData supportData =
- checkNotNull(ctatBase.getConfiguredTarget().getProvider(ProtoSupportDataProvider.class))
+ checkNotNull(ctadBase.getConfiguredTarget().getProvider(ProtoSupportDataProvider.class))
.getSupportData();
JavaProtoAspectCommon aspectCommon =
JavaProtoAspectCommon.getSpeedInstance(ruleContext, javaSemantics, rpcSupport);
Impl impl = new Impl(ruleContext, supportData, aspectCommon, rpcSupport);
if (impl.shouldGenerateCode()
- && ActionReuser.reuseExistingActions(ctatBase.getConfiguredTarget(), ruleContext, aspect)) {
+ && ActionReuser.reuseExistingActions(ctadBase.getConfiguredTarget(), ruleContext, aspect)) {
return aspect.build();
}
impl.addProviders(aspect);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java
index be2a83943d..4150d8ec52 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java
@@ -48,7 +48,7 @@ import com.google.devtools.build.lib.rules.cpp.CcToolchainProvider;
import com.google.devtools.build.lib.rules.objc.AppleDebugOutputsInfo.OutputType;
import com.google.devtools.build.lib.rules.objc.CompilationSupport.ExtraLinkArgs;
import com.google.devtools.build.lib.rules.objc.MultiArchBinarySupport.DependencySpecificConfiguration;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import java.util.Map;
import java.util.TreeMap;
@@ -144,7 +144,7 @@ public class AppleBinary implements RuleConfiguredTargetFactory {
"non_propagated_deps", Mode.SPLIT, ObjcProvider.SKYLARK_CONSTRUCTOR);
ImmutableListMultimap<BuildConfiguration, TransitiveInfoCollection> configToDepsCollectionMap =
ruleContext.getPrerequisitesByConfiguration("deps", Mode.SPLIT);
- ImmutableListMultimap<BuildConfiguration, ConfiguredTargetAndTarget>
+ ImmutableListMultimap<BuildConfiguration, ConfiguredTargetAndData>
configToCTATDepsCollectionMap =
ruleContext.getPrerequisiteCofiguredTargetAndTargetsByConfiguration("deps", Mode.SPLIT);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibrary.java b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibrary.java
index ab1f93e049..98b764baff 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibrary.java
@@ -38,7 +38,7 @@ import com.google.devtools.build.lib.rules.cpp.CcToolchainProvider;
import com.google.devtools.build.lib.rules.cpp.CppHelper;
import com.google.devtools.build.lib.rules.objc.ObjcProvider.Key;
import com.google.devtools.build.lib.rules.proto.ProtoSourcesProvider;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
@@ -76,7 +76,7 @@ public class AppleStaticLibrary implements RuleConfiguredTargetFactory {
MultiArchSplitTransitionProvider.validateMinimumOs(ruleContext);
PlatformType platformType = MultiArchSplitTransitionProvider.getPlatformType(ruleContext);
- ImmutableListMultimap<BuildConfiguration, ConfiguredTargetAndTarget>
+ ImmutableListMultimap<BuildConfiguration, ConfiguredTargetAndData>
configToCTATDepsCollectionMap =
ruleContext.getPrerequisiteCofiguredTargetAndTargetsByConfiguration("deps", Mode.SPLIT);
ImmutableListMultimap<BuildConfiguration, ObjcProvider> configToObjcAvoidDepsMap =
@@ -208,7 +208,7 @@ public class AppleStaticLibrary implements RuleConfiguredTargetFactory {
RuleContext ruleContext,
BuildConfiguration buildConfiguration,
IntermediateArtifacts intermediateArtifacts,
- List<ConfiguredTargetAndTarget> propagatedConfigredTargetAndTargetDeps,
+ List<ConfiguredTargetAndData> propagatedConfigredTargetAndTargetDeps,
Optional<ObjcProvider> protosObjcProvider) {
CompilationArtifacts compilationArtifacts = new CompilationArtifacts.Builder().build();
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java
index 06759dcfe5..5a65d0b48e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java
@@ -72,7 +72,7 @@ import com.google.devtools.build.lib.rules.proto.ProtoSourceFileBlacklist;
import com.google.devtools.build.lib.rules.proto.ProtoSourcesProvider;
import com.google.devtools.build.lib.rules.proto.ProtoSupportDataProvider;
import com.google.devtools.build.lib.rules.proto.SupportData;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import com.google.devtools.build.lib.util.FileType;
import com.google.devtools.build.lib.vfs.PathFragment;
import java.util.List;
@@ -225,9 +225,9 @@ public class J2ObjcAspect extends NativeAspectClass implements ConfiguredAspectF
@Override
public ConfiguredAspect create(
- ConfiguredTargetAndTarget ctatBase, RuleContext ruleContext, AspectParameters parameters)
+ ConfiguredTargetAndData ctadBase, RuleContext ruleContext, AspectParameters parameters)
throws InterruptedException {
- ConfiguredTarget base = ctatBase.getConfiguredTarget();
+ ConfiguredTarget base = ctadBase.getConfiguredTarget();
if (isProtoRule(base)) {
if (shouldAttachToProtoRule(ruleContext)) {
return proto(base, ruleContext, parameters);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchBinarySupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchBinarySupport.java
index 372412f4b2..fa1662265d 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchBinarySupport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchBinarySupport.java
@@ -39,7 +39,7 @@ import com.google.devtools.build.lib.rules.cpp.CcLinkParamsInfo;
import com.google.devtools.build.lib.rules.cpp.CcToolchainProvider;
import com.google.devtools.build.lib.rules.objc.CompilationSupport.ExtraLinkArgs;
import com.google.devtools.build.lib.rules.proto.ProtoSourcesProvider;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -211,7 +211,7 @@ public class MultiArchBinarySupport {
public ImmutableSet<DependencySpecificConfiguration> getDependencySpecificConfigurations(
Map<BuildConfiguration, CcToolchainProvider> childConfigurationsAndToolchains,
ImmutableListMultimap<BuildConfiguration, TransitiveInfoCollection> configToDepsCollectionMap,
- ImmutableListMultimap<BuildConfiguration, ConfiguredTargetAndTarget>
+ ImmutableListMultimap<BuildConfiguration, ConfiguredTargetAndData>
configToCTATDepsCollectionMap,
ImmutableListMultimap<BuildConfiguration, ObjcProvider> configurationToNonPropagatedObjcMap,
Iterable<TransitiveInfoCollection> dylibProviders)
@@ -299,7 +299,7 @@ public class MultiArchBinarySupport {
RuleContext ruleContext,
BuildConfiguration buildConfiguration,
IntermediateArtifacts intermediateArtifacts,
- List<ConfiguredTargetAndTarget> propagatedConfiguredTargetAndTargetDeps,
+ List<ConfiguredTargetAndData> propagatedConfiguredTargetAndDataDeps,
List<ObjcProvider> nonPropagatedObjcDeps,
Iterable<ObjcProvider> additionalDepProviders) {
@@ -307,7 +307,7 @@ public class MultiArchBinarySupport {
new ObjcCommon.Builder(ruleContext, buildConfiguration)
.setCompilationAttributes(
CompilationAttributes.Builder.fromRuleContext(ruleContext).build())
- .addDeps(propagatedConfiguredTargetAndTargetDeps)
+ .addDeps(propagatedConfiguredTargetAndDataDeps)
.addDepObjcProviders(additionalDepProviders)
.addNonPropagatedDepObjcProviders(nonPropagatedObjcDeps)
.setIntermediateArtifacts(intermediateArtifacts)
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java
index fbfa23e121..bb20db497c 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java
@@ -72,7 +72,7 @@ import com.google.devtools.build.lib.rules.cpp.CcLinkParams;
import com.google.devtools.build.lib.rules.cpp.CcLinkParamsInfo;
import com.google.devtools.build.lib.rules.cpp.CppFileTypes;
import com.google.devtools.build.lib.rules.cpp.CppModuleMap;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import com.google.devtools.build.lib.util.FileType;
import com.google.devtools.build.lib.util.FileTypeSet;
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -249,14 +249,14 @@ public final class ObjcCommon {
return this;
}
- Builder addDeps(List<ConfiguredTargetAndTarget> deps) {
+ Builder addDeps(List<ConfiguredTargetAndData> deps) {
ImmutableList.Builder<ObjcProvider> propagatedObjcDeps =
ImmutableList.<ObjcProvider>builder();
ImmutableList.Builder<CcCompilationInfo> cppDeps = ImmutableList.<CcCompilationInfo>builder();
ImmutableList.Builder<CcLinkParamsInfo> cppDepLinkParams =
ImmutableList.<CcLinkParamsInfo>builder();
- for (ConfiguredTargetAndTarget dep : deps) {
+ for (ConfiguredTargetAndData dep : deps) {
ConfiguredTarget depCT = dep.getConfiguredTarget();
addAnyProviders(propagatedObjcDeps, depCT, ObjcProvider.SKYLARK_CONSTRUCTOR);
addAnyProviders(cppDeps, depCT, CcCompilationInfo.PROVIDER);
@@ -567,7 +567,7 @@ public final class ObjcCommon {
return new ObjcCommon(objcProvider.build(), compilationArtifacts);
}
- private static boolean isCcLibrary(ConfiguredTargetAndTarget info) {
+ private static boolean isCcLibrary(ConfiguredTargetAndData info) {
try {
String targetName = info.getTarget().getTargetKind();
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoAspect.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoAspect.java
index 010f2bcca3..279f19ec73 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoAspect.java
@@ -29,7 +29,7 @@ import com.google.devtools.build.lib.packages.AspectParameters;
import com.google.devtools.build.lib.packages.BuildType;
import com.google.devtools.build.lib.packages.SkylarkNativeAspect;
import com.google.devtools.build.lib.rules.proto.ProtoSourcesProvider;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
/**
* Aspect that gathers the proto dependencies of the attached rule target, and propagates the proto
@@ -47,7 +47,7 @@ public class ObjcProtoAspect extends SkylarkNativeAspect implements ConfiguredAs
@Override
public ConfiguredAspect create(
- ConfiguredTargetAndTarget ctatBase, RuleContext ruleContext, AspectParameters parameters)
+ ConfiguredTargetAndData ctadBase, RuleContext ruleContext, AspectParameters parameters)
throws InterruptedException {
ConfiguredAspect.Builder aspectBuilder = new ConfiguredAspect.Builder(
this, parameters, ruleContext);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ProtoAttributes.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ProtoAttributes.java
index 6add80c7df..8552434635 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ProtoAttributes.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ProtoAttributes.java
@@ -30,7 +30,7 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
import com.google.devtools.build.lib.packages.RuleClass.ConfiguredTargetFactory.RuleErrorException;
import com.google.devtools.build.lib.rules.proto.ProtoSourceFileBlacklist;
import com.google.devtools.build.lib.rules.proto.ProtoSourcesProvider;
-import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndTarget;
+import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
import java.util.ArrayList;
/** Common rule attributes used by an objc_proto_library. */
@@ -91,7 +91,7 @@ final class ProtoAttributes {
return ruleContext.attributes().has(ObjcProtoLibraryRule.PORTABLE_PROTO_FILTERS_ATTR);
}
- private boolean isObjcProtoLibrary(ConfiguredTargetAndTarget dependency) {
+ private boolean isObjcProtoLibrary(ConfiguredTargetAndData dependency) {
try {
String targetName = dependency.getTarget().getTargetKind();
return targetName.equals("objc_proto_library rule");
@@ -247,7 +247,7 @@ final class ProtoAttributes {
}
private boolean hasObjcProtoLibraryDependencies() {
- for (ConfiguredTargetAndTarget dep :
+ for (ConfiguredTargetAndData dep :
ruleContext.getPrerequisiteConfiguredTargetAndTargets("deps", Mode.TARGET)) {
if (isObjcProtoLibrary(dep)) {
return true;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java
index 54a0a370ad..917dfcb9dd 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java
@@ -260,15 +260,17 @@ public final class AspectFunction implements SkyFunction {
ConfiguredTarget associatedTarget = baseConfiguredTargetValue.getConfiguredTarget();
- ConfiguredTargetAndTarget associatedConfiguredTargetAndTarget;
+ ConfiguredTargetAndData associatedConfiguredTargetAndData;
Package targetPkg =
((PackageValue)
env.getValue(PackageValue.key(associatedTarget.getLabel().getPackageIdentifier())))
.getPackage();
try {
- associatedConfiguredTargetAndTarget =
- new ConfiguredTargetAndTarget(
- associatedTarget, targetPkg.getTarget(associatedTarget.getLabel().getName()));
+ associatedConfiguredTargetAndData =
+ new ConfiguredTargetAndData(
+ associatedTarget,
+ targetPkg.getTarget(associatedTarget.getLabel().getName()),
+ associatedTarget.getConfiguration());
} catch (NoSuchTargetException e) {
throw new IllegalStateException("Name already verified", e);
}
@@ -276,7 +278,7 @@ public final class AspectFunction implements SkyFunction {
if (baseConfiguredTargetValue.getConfiguredTarget().getProvider(AliasProvider.class) != null) {
return createAliasAspect(
env,
- associatedConfiguredTargetAndTarget.getTarget(),
+ associatedConfiguredTargetAndData.getTarget(),
aspect,
key,
baseConfiguredTargetValue.getConfiguredTarget());
@@ -307,14 +309,14 @@ public final class AspectFunction implements SkyFunction {
env.getListener()
.handle(
Event.error(
- associatedConfiguredTargetAndTarget.getTarget().getLocation(), e.getMessage()));
+ associatedConfiguredTargetAndData.getTarget().getLocation(), e.getMessage()));
throw new AspectFunctionException(
new AspectCreationException(e.getMessage(), associatedTarget.getLabel()));
}
}
- associatedConfiguredTargetAndTarget =
- associatedConfiguredTargetAndTarget.fromConfiguredTarget(associatedTarget);
+ associatedConfiguredTargetAndData =
+ associatedConfiguredTargetAndData.fromConfiguredTarget(associatedTarget);
aspectPathBuilder.add(aspect);
SkyframeDependencyResolver resolver = view.createDependencyResolver(env);
@@ -329,13 +331,13 @@ public final class AspectFunction implements SkyFunction {
// will be present this way.
TargetAndConfiguration originalTargetAndAspectConfiguration =
new TargetAndConfiguration(
- associatedConfiguredTargetAndTarget.getTarget(), aspectConfiguration);
+ associatedConfiguredTargetAndData.getTarget(), aspectConfiguration);
ImmutableList<Aspect> aspectPath = aspectPathBuilder.build();
try {
// Get the configuration targets that trigger this rule's configurable attributes.
ImmutableMap<Label, ConfigMatchingProvider> configConditions =
ConfiguredTargetFunction.getConfigConditions(
- associatedConfiguredTargetAndTarget.getTarget(),
+ associatedConfiguredTargetAndData.getTarget(),
env,
resolver,
originalTargetAndAspectConfiguration,
@@ -356,7 +358,7 @@ public final class AspectFunction implements SkyFunction {
String.format(
"aspect %s applied to %s",
aspect.getDescriptor().getDescription(),
- associatedConfiguredTargetAndTarget.getTarget().toString()),
+ associatedConfiguredTargetAndData.getTarget().toString()),
requiredToolchains,
key.getAspectConfigurationKey());
} catch (ToolchainContextException e) {
@@ -367,7 +369,7 @@ public final class AspectFunction implements SkyFunction {
return null;
}
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> depValueMap;
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> depValueMap;
try {
depValueMap =
ConfiguredTargetFunction.computeDependencies(
@@ -398,7 +400,7 @@ public final class AspectFunction implements SkyFunction {
aspectPath,
aspect,
aspectFactory,
- associatedConfiguredTargetAndTarget,
+ associatedConfiguredTargetAndData,
aspectConfiguration,
configConditions,
toolchainContext,
@@ -523,11 +525,11 @@ public final class AspectFunction implements SkyFunction {
ImmutableList<Aspect> aspectPath,
Aspect aspect,
ConfiguredAspectFactory aspectFactory,
- ConfiguredTargetAndTarget associatedTarget,
+ ConfiguredTargetAndData associatedTarget,
BuildConfiguration aspectConfiguration,
ImmutableMap<Label, ConfigMatchingProvider> configConditions,
ToolchainContext toolchainContext,
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> directDeps,
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> directDeps,
@Nullable NestedSetBuilder<Package> transitivePackagesForPackageRootResolution)
throws AspectFunctionException, InterruptedException {
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetAndTarget.java b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetAndData.java
index 15480b6a5b..829dac1af1 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetAndTarget.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetAndData.java
@@ -16,48 +16,64 @@ package com.google.devtools.build.lib.skyframe;
import com.google.common.base.Preconditions;
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
+import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
import com.google.devtools.build.lib.packages.Package;
import com.google.devtools.build.lib.packages.Target;
/**
- * A container class for a {@link ConfiguredTarget} and {@link Target}. In the future, {@link
- * ConfiguredTarget} objects will no longer contain their associated {@link Target}. Consumers that
- * need the {@link Target} must therefore have access to one of these objects.
+ * A container class for a {@link ConfiguredTarget} and associated data, {@link Target} and {@link
+ * BuildConfiguration}. In the future, {@link ConfiguredTarget} objects will no longer contain their
+ * associated {@link BuildConfiguration}. Consumers that need the {@link Target} or {@link
+ * BuildConfiguration} must therefore have access to one of these objects.
*
- * <p>These objects are intended to be short-lived, never stored in Skyframe, since they pair two
- * heavyweight objects, a {@link ConfiguredTarget} and a {@link Target}, which holds a {@link
- * Package}.
+ * <p>These objects are intended to be short-lived, never stored in Skyframe, since they pair three
+ * heavyweight objects, a {@link ConfiguredTarget}, a {@link Target} (which holds a {@link
+ * Package}), and a {@link BuildConfiguration}.
*/
-public class ConfiguredTargetAndTarget {
+public class ConfiguredTargetAndData {
private final ConfiguredTarget configuredTarget;
private final Target target;
+ private final BuildConfiguration configuration;
- ConfiguredTargetAndTarget(ConfiguredTarget configuredTarget, Target target) {
+ ConfiguredTargetAndData(
+ ConfiguredTarget configuredTarget, Target target, BuildConfiguration configuration) {
this.configuredTarget = configuredTarget;
this.target = target;
+ this.configuration = configuration;
Preconditions.checkState(
configuredTarget.getLabel().equals(target.getLabel()),
- "Unable to construct ConfiguredTargetAndTarget:"
+ "Unable to construct ConfiguredTargetAndData:"
+ " ConfiguredTarget's label %s is not equal to Target's label %s",
configuredTarget.getLabel(),
target.getLabel());
+ Preconditions.checkState(
+ configuration == configuredTarget.getConfiguration(),
+ "Configurations don't match: %s %s (%s %s)",
+ configuration,
+ configuredTarget.getConfiguration(),
+ configuredTarget,
+ target);
}
/**
* For use with {@code MergedConfiguredTarget} and similar, where we create a virtual {@link
* ConfiguredTarget} corresponding to the same {@link Target}.
*/
- public ConfiguredTargetAndTarget fromConfiguredTarget(ConfiguredTarget maybeNew) {
+ public ConfiguredTargetAndData fromConfiguredTarget(ConfiguredTarget maybeNew) {
if (configuredTarget.equals(maybeNew)) {
return this;
}
- return new ConfiguredTargetAndTarget(maybeNew, this.target);
+ return new ConfiguredTargetAndData(maybeNew, this.target, configuration);
}
public Target getTarget() {
return target;
}
+ public BuildConfiguration getConfiguration() {
+ return configuration;
+ }
+
public ConfiguredTarget getConfiguredTarget() {
return configuredTarget;
}
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java
index 42b32c98ca..ea70f6ebdc 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java
@@ -258,7 +258,7 @@ public final class ConfiguredTargetFunction implements SkyFunction {
}
// Calculate the dependencies of this target.
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> depValueMap =
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> depValueMap =
computeDependencies(
env,
resolver,
@@ -382,7 +382,7 @@ public final class ConfiguredTargetFunction implements SkyFunction {
* the host configuration as early as possible and pass this reference to all consumers
*/
@Nullable
- static OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> computeDependencies(
+ static OrderedSetMultimap<Attribute, ConfiguredTargetAndData> computeDependencies(
Environment env,
SkyframeDependencyResolver resolver,
TargetAndConfiguration ctgValue,
@@ -432,7 +432,7 @@ public final class ConfiguredTargetFunction implements SkyFunction {
}
// Resolve configured target dependencies and handle errors.
- Map<SkyKey, ConfiguredTargetAndTarget> depValues =
+ Map<SkyKey, ConfiguredTargetAndData> depValues =
resolveConfiguredTargetDependencies(
env,
depValueNames.values(),
@@ -522,7 +522,7 @@ public final class ConfiguredTargetFunction implements SkyFunction {
}
configValueNames = staticConfigs.build();
- Map<SkyKey, ConfiguredTargetAndTarget> configValues =
+ Map<SkyKey, ConfiguredTargetAndData> configValues =
resolveConfiguredTargetDependencies(
env,
configValueNames,
@@ -555,12 +555,12 @@ public final class ConfiguredTargetFunction implements SkyFunction {
/**
* Resolves the targets referenced in depValueNames and returns their {@link
- * ConfiguredTargetAndTarget} instances.
+ * ConfiguredTargetAndData} instances.
*
* <p>Returns null if not all instances are available yet.
*/
@Nullable
- private static Map<SkyKey, ConfiguredTargetAndTarget> resolveConfiguredTargetDependencies(
+ private static Map<SkyKey, ConfiguredTargetAndData> resolveConfiguredTargetDependencies(
Environment env,
Collection<Dependency> deps,
@Nullable NestedSetBuilder<Package> transitivePackagesForPackageRootResolution,
@@ -582,7 +582,7 @@ public final class ConfiguredTargetFunction implements SkyFunction {
deps, input -> PackageValue.key(input.getLabel().getPackageIdentifier())));
Map<SkyKey, ValueOrException<ConfiguredValueCreationException>> depValuesOrExceptions =
env.getValuesOrThrow(depKeys, ConfiguredValueCreationException.class);
- Map<SkyKey, ConfiguredTargetAndTarget> result = Maps.newHashMapWithExpectedSize(deps.size());
+ Map<SkyKey, ConfiguredTargetAndData> result = Maps.newHashMapWithExpectedSize(deps.size());
Set<SkyKey> aliasPackagesToFetch = new HashSet<>();
List<Dependency> aliasDepsToRedo = new ArrayList<>();
Map<SkyKey, SkyValue> aliasPackageValues = null;
@@ -629,9 +629,10 @@ public final class ConfiguredTargetFunction implements SkyFunction {
try {
result.put(
key,
- new ConfiguredTargetAndTarget(
+ new ConfiguredTargetAndData(
depValue.getConfiguredTarget(),
- pkgValue.getPackage().getTarget(depLabel.getName())));
+ pkgValue.getPackage().getTarget(depLabel.getName()),
+ depValue.getConfiguredTarget().getConfiguration()));
} catch (NoSuchTargetException e) {
throw new IllegalStateException("Target already verified for " + dep, e);
}
@@ -676,7 +677,7 @@ public final class ConfiguredTargetFunction implements SkyFunction {
Environment env,
Target target,
BuildConfiguration configuration,
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> depValueMap,
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> depValueMap,
ImmutableMap<Label, ConfigMatchingProvider> configConditions,
@Nullable ToolchainContext toolchainContext,
@Nullable NestedSetBuilder<Package> transitivePackagesForPackageRootResolution)
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java
index 5d9cde9c17..3cb34515df 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java
@@ -504,7 +504,7 @@ public final class SkyframeBuildView {
Target target,
BuildConfiguration configuration,
CachingAnalysisEnvironment analysisEnvironment,
- OrderedSetMultimap<Attribute, ConfiguredTargetAndTarget> prerequisiteMap,
+ OrderedSetMultimap<Attribute, ConfiguredTargetAndData> prerequisiteMap,
ImmutableMap<Label, ConfigMatchingProvider> configConditions,
@Nullable ToolchainContext toolchainContext)
throws InterruptedException, ActionConflictException {
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java
index 8390a34d9a..8783f43d5f 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java
@@ -1284,7 +1284,7 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
}
/**
- * Returns the {@link ConfiguredTargetAndTarget}s corresponding to the given keys.
+ * Returns the {@link ConfiguredTargetAndData}s corresponding to the given keys.
*
* <p>For use for legacy support and tests calling through {@code BuildView} only.
*
@@ -1292,7 +1292,7 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
* returned list.
*/
@ThreadSafety.ThreadSafe
- public ImmutableList<ConfiguredTargetAndTarget> getConfiguredTargetsForTesting(
+ public ImmutableList<ConfiguredTargetAndData> getConfiguredTargetsForTesting(
ExtendedEventHandler eventHandler,
BuildConfiguration originalConfig,
Iterable<Dependency> keys) {
@@ -1300,7 +1300,7 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
}
/**
- * Returns a map from {@link Dependency} inputs to the {@link ConfiguredTargetAndTarget}s
+ * Returns a map from {@link Dependency} inputs to the {@link ConfiguredTargetAndData}s
* corresponding to those dependencies.
*
* <p>For use for legacy support and tests calling through {@code BuildView} only.
@@ -1309,7 +1309,7 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
* returned list.
*/
@ThreadSafety.ThreadSafe
- public ImmutableMultimap<Dependency, ConfiguredTargetAndTarget> getConfiguredTargetMapForTesting(
+ public ImmutableMultimap<Dependency, ConfiguredTargetAndData> getConfiguredTargetMapForTesting(
ExtendedEventHandler eventHandler,
BuildConfiguration originalConfig,
Iterable<Dependency> keys) {
@@ -1347,7 +1347,7 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
reportCycles(eventHandler, entry.getValue().getCycleInfo(), entry.getKey());
}
- ImmutableMultimap.Builder<Dependency, ConfiguredTargetAndTarget> cts =
+ ImmutableMultimap.Builder<Dependency, ConfiguredTargetAndData> cts =
ImmutableMultimap.builder();
// Logic copied from ConfiguredTargetFunction#computeDependencies.
@@ -1399,11 +1399,14 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
}
try {
+ ConfiguredTarget mergedTarget =
+ MergedConfiguredTarget.of(configuredTarget, configuredAspects);
cts.put(
key,
- new ConfiguredTargetAndTarget(
- MergedConfiguredTarget.of(configuredTarget, configuredAspects),
- packageValue.getPackage().getTarget(configuredTarget.getLabel().getName())));
+ new ConfiguredTargetAndData(
+ mergedTarget,
+ packageValue.getPackage().getTarget(configuredTarget.getLabel().getName()),
+ mergedTarget.getConfiguration()));
} catch (DuplicateException | NoSuchTargetException e) {
throw new IllegalStateException(
@@ -1661,21 +1664,19 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
Label label,
BuildConfiguration configuration,
ConfigurationTransition transition) {
- ConfiguredTargetAndTarget configuredTargetAndTarget =
+ ConfiguredTargetAndData configuredTargetAndData =
getConfiguredTargetAndTargetForTesting(eventHandler, label, configuration, transition);
- return configuredTargetAndTarget == null
- ? null
- : configuredTargetAndTarget.getConfiguredTarget();
+ return configuredTargetAndData == null ? null : configuredTargetAndData.getConfiguredTarget();
}
@VisibleForTesting
@Nullable
- public ConfiguredTargetAndTarget getConfiguredTargetAndTargetForTesting(
+ public ConfiguredTargetAndData getConfiguredTargetAndTargetForTesting(
ExtendedEventHandler eventHandler,
Label label,
BuildConfiguration configuration,
ConfigurationTransition transition) {
- ConfiguredTargetAndTarget configuredTargetAndTarget =
+ ConfiguredTargetAndData configuredTargetAndData =
Iterables.getFirst(
getConfiguredTargetsForTesting(
eventHandler,
@@ -1686,12 +1687,12 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
: Dependency.withTransitionAndAspects(
label, transition, AspectCollection.EMPTY))),
null);
- return configuredTargetAndTarget;
+ return configuredTargetAndData;
}
@VisibleForTesting
@Nullable
- public ConfiguredTargetAndTarget getConfiguredTargetAndTargetForTesting(
+ public ConfiguredTargetAndData getConfiguredTargetAndTargetForTesting(
ExtendedEventHandler eventHandler, Label label, BuildConfiguration configuration) {
return getConfiguredTargetAndTargetForTesting(
eventHandler, label, configuration, NoTransition.INSTANCE);
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkylarkAspectFactory.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkylarkAspectFactory.java
index 4db1988ea3..a01560e427 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/SkylarkAspectFactory.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkylarkAspectFactory.java
@@ -50,7 +50,7 @@ public class SkylarkAspectFactory implements ConfiguredAspectFactory {
@Override
public ConfiguredAspect create(
- ConfiguredTargetAndTarget ctatBase, RuleContext ruleContext, AspectParameters parameters)
+ ConfiguredTargetAndData ctadBase, RuleContext ruleContext, AspectParameters parameters)
throws InterruptedException {
SkylarkRuleContext skylarkRuleContext = null;
try (Mutability mutability = Mutability.create("aspect")) {
@@ -77,7 +77,7 @@ public class SkylarkAspectFactory implements ConfiguredAspectFactory {
skylarkAspect
.getImplementation()
.call(
- /*args=*/ ImmutableList.of(ctatBase.getConfiguredTarget(), skylarkRuleContext),
+ /*args=*/ ImmutableList.of(ctadBase.getConfiguredTarget(), skylarkRuleContext),
/* kwargs= */ ImmutableMap.of(),
/*ast=*/ null,
env);
@@ -94,7 +94,7 @@ public class SkylarkAspectFactory implements ConfiguredAspectFactory {
}
return createAspect(aspectSkylarkObject, aspectDescriptor, ruleContext);
} catch (EvalException e) {
- addAspectToStackTrace(ctatBase.getTarget(), e);
+ addAspectToStackTrace(ctadBase.getTarget(), e);
ruleContext.ruleError("\n" + e.print());
return null;
}