aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java17
1 files changed, 3 insertions, 14 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java
index 88eb059c47..7590bc344e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java
@@ -36,7 +36,6 @@ import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
import com.google.devtools.build.lib.analysis.config.FragmentCollection;
-import com.google.devtools.build.lib.analysis.platform.ToolchainInfo;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.events.Location;
@@ -66,6 +65,7 @@ import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.FuncallExpression.FuncallException;
import com.google.devtools.build.lib.syntax.Runtime;
import com.google.devtools.build.lib.syntax.SkylarkDict;
+import com.google.devtools.build.lib.syntax.SkylarkIndexable;
import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkSemanticsOptions;
import com.google.devtools.build.lib.syntax.SkylarkType;
@@ -186,7 +186,6 @@ public final class SkylarkRuleContext implements SkylarkValue {
private SkylarkRuleAttributesCollection attributesCollection;
private SkylarkRuleAttributesCollection ruleAttributesCollection;
private SkylarkClassObject splitAttributes;
- private SkylarkDict<Label, ToolchainInfo> toolchains;
// TODO(bazel-team): we only need this because of the css_binary rule.
private ImmutableMap<Artifact, Label> artifactsLabelMap;
@@ -292,10 +291,6 @@ public final class SkylarkRuleContext implements SkylarkValue {
}
makeVariables = ruleContext.getConfigurationMakeVariableContext().collectMakeVariables();
- toolchains =
- ruleContext.getToolchainContext() == null
- ? SkylarkDict.<Label, ToolchainInfo>of(null)
- : ruleContext.getToolchainContext().collectToolchains();
}
/**
@@ -315,7 +310,6 @@ public final class SkylarkRuleContext implements SkylarkValue {
splitAttributes = null;
artifactsLabelMap = null;
outputsObject = null;
- toolchains = null;
}
public void checkMutable(String attrName) throws EvalException {
@@ -852,14 +846,9 @@ public final class SkylarkRuleContext implements SkylarkValue {
}
@SkylarkCallable(structField = true, doc = "Toolchains required for this rule.")
- public SkylarkDict<Label, ToolchainInfo> toolchains() throws EvalException {
+ public SkylarkIndexable toolchains() throws EvalException {
checkMutable("toolchains");
- if (isForAspect) {
- // TODO(katre): Support toolchains on aspects.
- throw new EvalException(
- Location.BUILTIN, "'toolchains' is not available in aspect implementations");
- }
- return toolchains;
+ return ruleContext.getToolchainContext().getResolvedToolchainProviders();
}
@Override