aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationCollection.java
diff options
context:
space:
mode:
authorGravatar gregce <gregce@google.com>2017-07-10 22:32:54 +0200
committerGravatar László Csomor <laszlocsomor@google.com>2017-07-11 10:56:09 +0200
commitcac6839ea63ddc3e370f785804a4349ce60f80fc (patch)
tree9a3fecc953cf28b4c2897287e093718acab8fcdd /src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationCollection.java
parent0e0d5e21b491e595f05468fc6a12254ad76830ac (diff)
Remove dynamic configs dep on the static transition table.
PiperOrigin-RevId: 161432622
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationCollection.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationCollection.java12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationCollection.java b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationCollection.java
index 1137280bde..439cc3619c 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationCollection.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationCollection.java
@@ -25,7 +25,6 @@ import com.google.devtools.build.lib.packages.Attribute.Transition;
import com.google.devtools.build.lib.packages.Rule;
import com.google.devtools.build.lib.packages.Target;
import com.google.devtools.build.lib.util.Preconditions;
-
import java.io.PrintStream;
import java.io.Serializable;
import java.util.Collection;
@@ -98,8 +97,11 @@ public final class BuildConfigurationCollection {
}
/**
- * Returns all configurations that can be reached from the target configuration through any kind
- * of configuration transition.
+ * For static configurations, returns all configurations that can be reached from the target
+ * configurations through any kind of configuration transition.
+ *
+ * <p>For dynamic configurations, returns the target configurations (since configurations aren't
+ * reached through other configurations).
*/
public Collection<BuildConfiguration> getAllConfigurations() {
Set<BuildConfiguration> result = new LinkedHashSet<>();
@@ -172,6 +174,10 @@ public final class BuildConfigurationCollection {
public Transitions(BuildConfiguration configuration,
Map<? extends Transition, ConfigurationHolder> transitionTable,
ListMultimap<? extends SplitTransition<?>, BuildConfiguration> splitTransitionTable) {
+ Preconditions.checkState(!configuration.useDynamicConfigurations(),
+ "Dynamic configurations don't use this class and static configurations are going away. "
+ + "Anything added here is dead code. Contact Blaze developers if you need help.");
+
this.configuration = configuration;
this.transitionTable = ImmutableMap.copyOf(transitionTable);
// Do not remove <SplitTransition<?>, BuildConfiguration>: