aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/analysis/DependencyResolver.java
diff options
context:
space:
mode:
authorGravatar gregce <gregce@google.com>2017-09-12 23:10:38 +0200
committerGravatar Philipp Wollermann <philwo@google.com>2017-09-13 19:06:20 +0200
commitf2c1e8331faf39406a889429de1cbdd9e03e1e3b (patch)
tree9bc9a1a70b1ad3c47d2d920ae72f12c634c48993 /src/main/java/com/google/devtools/build/lib/analysis/DependencyResolver.java
parent8dacd1dde5ea348dfe1162ae27daf1f04b7b258d (diff)
Remove outdated Attribute.Configurator interface.
With dynamic configurations we no longer need a special class to apply transitions: a simple patch transition bound to an attribute works just as well. PiperOrigin-RevId: 168442602
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis/DependencyResolver.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/DependencyResolver.java15
1 files changed, 5 insertions, 10 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/DependencyResolver.java b/src/main/java/com/google/devtools/build/lib/analysis/DependencyResolver.java
index f5829ed2e9..4997a895f8 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/DependencyResolver.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/DependencyResolver.java
@@ -13,7 +13,6 @@
// limitations under the License.
package com.google.devtools.build.lib.analysis;
-import com.google.common.base.Verify;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
@@ -376,16 +375,12 @@ public abstract class DependencyResolver {
getSplitOptions(depResolver.rule, attribute, ruleConfig);
if (!splitOptions.isEmpty() && !ruleConfig.isHostConfiguration()) {
// Late-bound attribute with a split transition:
- // Since we want to get the same results as BuildConfiguration.evaluateTransition (but
+ // Since we want to get the same results as ConfigurationResolver.evaluateTransition (but
// skip it since we've already applied the split), we want to make sure this logic
- // doesn't do anything differently. evaluateTransition has additional logic
- // for host configs and attributes with configurators. To keep the fork as simple as
- // possible, we don't support the configurator case. And when we're in the host
- // configuration, we fall back to the non-split branch, which calls
- // BuildConfiguration.evaluateTransition, which returns its "host mode" result without
- // ever looking at the split.
- Verify.verify(attribute.getConfigurator() == null);
-
+ // doesn't do anything differently. ConfigurationResolver.evaluateTransition has additional
+ // logic for host configs. So when we're in the host configuration we fall back to the
+ // non-split branch, which calls ConfigurationResolver.evaluateTransition, which returns its
+ // "host mode" result without ever looking at the split.
Iterable<BuildConfiguration> splitConfigs =
getConfigurations(ruleConfig.fragmentClasses(), splitOptions);
if (splitConfigs == null) {