From 9fcef035b7bf1b72df6f692d1d05038718b290cf Mon Sep 17 00:00:00 2001 From: janakr Date: Tue, 23 Jan 2018 13:38:24 -0800 Subject: Explicitly make fragments option to BuildConfigurationValue#key an ImmutableSortedSet wherever possible, and use a known explicit ImmutableSortedSet in the case of two sets being equal. This is mainly a cosmetic cleanup for the sequel changes. Also rename test-only methods in SkyframeExecutor to indicate that, and do a drive-by clean-up of a test that reported hard crashes confusingly because it wrapped RuntimeExceptions. PiperOrigin-RevId: 182984572 --- .../build/lib/analysis/ConfiguredRuleClassProvider.java | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java') diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java index ab0cb03a61..2b1a480921 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java @@ -25,7 +25,7 @@ import com.google.common.cache.LoadingCache; import com.google.common.collect.ImmutableBiMap; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import com.google.common.collect.ImmutableSet; +import com.google.common.collect.ImmutableSortedSet; import com.google.devtools.build.lib.analysis.buildinfo.BuildInfoFactory; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.analysis.config.BuildConfiguration.Fragment; @@ -70,7 +70,6 @@ import java.util.Collection; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.Set; import java.util.TreeMap; import javax.annotation.Nullable; @@ -808,12 +807,10 @@ public class ConfiguredRuleClassProvider implements RuleClassProvider { return configurationFragmentMap; } - /** - * Returns all registered {@link BuildConfiguration.Fragment} classes. - */ - public Set> getAllFragments() { - ImmutableSet.Builder> fragmentsBuilder = - ImmutableSet.builder(); + /** Returns all registered {@link BuildConfiguration.Fragment} classes. */ + public ImmutableSortedSet> getAllFragments() { + ImmutableSortedSet.Builder> fragmentsBuilder = + ImmutableSortedSet.orderedBy(BuildConfiguration.lexicalFragmentSorter); for (ConfigurationFragmentFactory factory : getConfigurationFragments()) { fragmentsBuilder.add(factory.creates()); } -- cgit v1.2.3