aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java
diff options
context:
space:
mode:
authorGravatar gregce <gregce@google.com>2017-12-28 11:58:15 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2017-12-28 11:59:56 -0800
commit4e093d8e08454c9c2c04e94fe2e97ef4592198b6 (patch)
treecde1332470f53d3a45a68b6852a207bc6851d8e2 /src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java
parent8bd201631e380327f5a7fb72e11bd493973913b8 (diff)
Replace Attribute.ConfigurationTransition with config.transitions.ConfigurationTransitionProxy.
The "proxy" part is to dissuade people from writing: void myfunc(ConfigurationTransition transition) signatures casually. Maybe that's actually a better name than "Transition". But I'd rather rename Transition to ConfigurationTransition in its own change if we want to do that. PiperOrigin-RevId: 180285321
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java18
1 files changed, 11 insertions, 7 deletions
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 ce2569a1a6..25a0cf3381 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
@@ -47,6 +47,7 @@ import com.google.devtools.build.lib.analysis.config.BuildOptions;
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.PatchTransition;
+import com.google.devtools.build.lib.analysis.config.transitions.ConfigurationTransitionProxy;
import com.google.devtools.build.lib.analysis.config.transitions.SplitTransition;
import com.google.devtools.build.lib.analysis.config.transitions.Transition;
import com.google.devtools.build.lib.analysis.configuredtargets.RuleConfiguredTarget.Mode;
@@ -65,7 +66,6 @@ import com.google.devtools.build.lib.packages.AbstractRuleErrorConsumer;
import com.google.devtools.build.lib.packages.Aspect;
import com.google.devtools.build.lib.packages.AspectDescriptor;
import com.google.devtools.build.lib.packages.Attribute;
-import com.google.devtools.build.lib.packages.Attribute.ConfigurationTransition;
import com.google.devtools.build.lib.packages.AttributeMap;
import com.google.devtools.build.lib.packages.BuildType;
import com.google.devtools.build.lib.packages.ConfigurationFragmentPolicy;
@@ -410,7 +410,7 @@ public final class RuleContext extends TargetContext
@Nullable
public <T extends Fragment> T getFragment(Class<T> fragment) {
// NONE means target configuration.
- return getFragment(fragment, ConfigurationTransition.NONE);
+ return getFragment(fragment, ConfigurationTransitionProxy.NONE);
}
@Nullable
@@ -441,7 +441,7 @@ public final class RuleContext extends TargetContext
public <T extends Fragment> boolean isLegalFragment(Class<T> fragment) {
// NONE means target configuration.
- return isLegalFragment(fragment, ConfigurationTransition.NONE);
+ return isLegalFragment(fragment, ConfigurationTransitionProxy.NONE);
}
protected BuildConfiguration getConfiguration(Transition transition) {
@@ -1063,13 +1063,15 @@ public final class RuleContext extends TargetContext
+ " is not configured for the host configuration");
}
} else if (mode == Mode.TARGET) {
- if (!(transition instanceof PatchTransition) && transition != ConfigurationTransition.NONE) {
+ if (!(transition instanceof PatchTransition)
+ && transition != ConfigurationTransitionProxy.NONE) {
throw new IllegalStateException(getRule().getLocation() + ": "
+ getRuleClassNameForLogging() + " attribute " + attributeName
+ " is not configured for the target configuration");
}
} else if (mode == Mode.DATA) {
- if (!(transition instanceof PatchTransition) && transition != ConfigurationTransition.DATA) {
+ if (!(transition instanceof PatchTransition)
+ && transition != ConfigurationTransitionProxy.DATA) {
throw new IllegalStateException(getRule().getLocation() + ": "
+ getRuleClassNameForLogging() + " attribute " + attributeName
+ " is not configured for the data configuration");
@@ -1099,9 +1101,11 @@ public final class RuleContext extends TargetContext
}
if (attributeDefinition.getConfigurationTransition().isHostTransition()) {
return Mode.HOST;
- } else if (attributeDefinition.getConfigurationTransition() == ConfigurationTransition.NONE) {
+ } else if (attributeDefinition.getConfigurationTransition()
+ == ConfigurationTransitionProxy.NONE) {
return Mode.TARGET;
- } else if (attributeDefinition.getConfigurationTransition() == ConfigurationTransition.DATA) {
+ } else if (attributeDefinition.getConfigurationTransition()
+ == ConfigurationTransitionProxy.DATA) {
return Mode.DATA;
} else if (attributeDefinition.hasSplitConfigurationTransition()) {
return Mode.SPLIT;