Remove ConfigurationTransitionProxy.NONE and BaseRuleClasses.DYNAMIC_TRANSITION_MAP.
This leaves DATA as the last remaining legacy transition.
PiperOrigin-RevId: 182422552
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 a02d410..c8cee3c 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
@@ -48,6 +48,7 @@
import com.google.devtools.build.lib.analysis.config.ConfigMatchingProvider;
import com.google.devtools.build.lib.analysis.config.FragmentCollection;
import com.google.devtools.build.lib.analysis.config.transitions.ConfigurationTransitionProxy;
+import com.google.devtools.build.lib.analysis.config.transitions.NoTransition;
import com.google.devtools.build.lib.analysis.config.transitions.PatchTransition;
import com.google.devtools.build.lib.analysis.config.transitions.SplitTransition;
import com.google.devtools.build.lib.analysis.config.transitions.Transition;
@@ -416,8 +417,8 @@
@Nullable
public <T extends Fragment> T getFragment(Class<T> fragment) {
- // NONE means target configuration.
- return getFragment(fragment, ConfigurationTransitionProxy.NONE);
+ // No transition means target configuration.
+ return getFragment(fragment, NoTransition.INSTANCE);
}
@Nullable
@@ -447,8 +448,8 @@
}
public <T extends Fragment> boolean isLegalFragment(Class<T> fragment) {
- // NONE means target configuration.
- return isLegalFragment(fragment, ConfigurationTransitionProxy.NONE);
+ // No transition means target configuration.
+ return isLegalFragment(fragment, NoTransition.INSTANCE);
}
protected BuildConfiguration getConfiguration(Transition transition) {
@@ -1072,8 +1073,7 @@
+ " is not configured for the host configuration");
}
} else if (mode == Mode.TARGET) {
- if (!(transition instanceof PatchTransition)
- && transition != ConfigurationTransitionProxy.NONE) {
+ if (!(transition instanceof PatchTransition) && transition != NoTransition.INSTANCE) {
throw new IllegalStateException(getRule().getLocation() + ": "
+ getRuleClassNameForLogging() + " attribute " + attributeName
+ " is not configured for the target configuration");
@@ -1095,35 +1095,6 @@
}
/**
- * Returns the Mode for which the attribute is configured.
- * This is intended for Skylark, where the Mode is implicitly chosen.
- */
- public Mode getAttributeMode(String attributeName) {
- Attribute attributeDefinition = attributes().getAttributeDefinition(attributeName);
- if (attributeDefinition == null) {
- throw new IllegalStateException(getRule().getLocation() + ": " + getRuleClassNameForLogging()
- + " attribute " + attributeName + " is not defined");
- }
- if (attributeDefinition.getType().getLabelClass() != LabelClass.DEPENDENCY) {
- throw new IllegalStateException(getRuleClassNameForLogging() + " attribute " + attributeName
- + " is not a label type attribute");
- }
- if (attributeDefinition.getConfigurationTransition().isHostTransition()) {
- return Mode.HOST;
- } else if (attributeDefinition.getConfigurationTransition()
- == ConfigurationTransitionProxy.NONE) {
- return Mode.TARGET;
- } else if (attributeDefinition.getConfigurationTransition()
- == ConfigurationTransitionProxy.DATA) {
- return Mode.DATA;
- } else if (attributeDefinition.hasSplitConfigurationTransition()) {
- return Mode.SPLIT;
- }
- throw new IllegalStateException(getRule().getLocation() + ": "
- + getRuleClassNameForLogging() + " attribute " + attributeName + " is not configured");
- }
-
- /**
* For the specified attribute "attributeName" (which must be of type
* list(label)), resolve all the labels into ConfiguredTargets (for the
* configuration appropriate to the attribute) and return their build