Clean up some code in register module map action

This is an NFC.  Get rid of a NestedSet that gets immediately
flattened, and remove some resulting dead APIs.

PiperOrigin-RevId: 354036229
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/UmbrellaHeaderAction.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/UmbrellaHeaderAction.java
index ac216f5..950b0e8 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/UmbrellaHeaderAction.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/UmbrellaHeaderAction.java
@@ -23,7 +23,6 @@
 import com.google.devtools.build.lib.actions.Artifact.ArtifactExpander;
 import com.google.devtools.build.lib.analysis.actions.AbstractFileWriteAction;
 import com.google.devtools.build.lib.analysis.actions.DeterministicWriter;
-import com.google.devtools.build.lib.collect.nestedset.NestedSet;
 import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
 import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
 import com.google.devtools.build.lib.util.Fingerprint;
@@ -52,14 +51,6 @@
   public UmbrellaHeaderAction(
       ActionOwner owner,
       Artifact umbrellaHeader,
-      NestedSet<Artifact> publicHeaders,
-      Iterable<PathFragment> additionalExportedHeaders) {
-    this(owner, umbrellaHeader, publicHeaders.toList(), additionalExportedHeaders);
-  }
-
-  public UmbrellaHeaderAction(
-      ActionOwner owner,
-      Artifact umbrellaHeader,
       Iterable<Artifact> publicHeaders,
       Iterable<PathFragment> additionalExportedHeaders) {
     super(
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/CompilationSupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/CompilationSupport.java
index bf2583d..64078f6 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/CompilationSupport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/CompilationSupport.java
@@ -1620,13 +1620,11 @@
    * Registers an action that will generate a clang module map for this target, using the hdrs
    * attribute of this rule.
    */
-  CompilationSupport registerGenerateModuleMapAction(CompilationArtifacts compilationArtifacts)
-      throws RuleErrorException, InterruptedException {
+  public CompilationSupport registerGenerateModuleMapAction(
+      CompilationArtifacts compilationArtifacts) throws RuleErrorException, InterruptedException {
     // TODO(bazel-team): Include textual headers in the module map when Xcode 6 support is
     // dropped.
     // TODO(b/32225593): Include private headers in the module map.
-    // Both registerGenerateModuleMapAction and registerGenerateUmbrellaHeaderAction make a copy,
-    // so flattening eagerly here using toList() is acceptable.
     ObjcCppSemantics semantics = createObjcCppSemantics();
     CcCompilationHelper ccCompilationHelper =
         new CcCompilationHelper(
@@ -1644,15 +1642,15 @@
                 ruleContext.getRule(), ruleContext.isAllowTagsPropagation()),
             /* shouldProcessHeaders= */ false);
 
-    NestedSet<Artifact> publicHeaders =
-        NestedSetBuilder.<Artifact>stableOrder()
-            .addTransitive(attributes.hdrs())
-            .addTransitive(compilationArtifacts.getAdditionalHdrs())
-            .build();
+    ImmutableSortedSet<Artifact> publicHeaders =
+        Stream.concat(
+                attributes.hdrs().toList().stream(),
+                compilationArtifacts.getAdditionalHdrs().toList().stream())
+            .collect(toImmutableSortedSet(naturalOrder()));
 
     CppModuleMap moduleMap = intermediateArtifacts.moduleMap();
 
-    ccCompilationHelper.setCppModuleMap(moduleMap).addPublicHeaders(publicHeaders.toList());
+    ccCompilationHelper.setCppModuleMap(moduleMap).addPublicHeaders(publicHeaders);
 
     ccCompilationHelper.compile(ruleContext);
 
@@ -1667,18 +1665,6 @@
    * @return this compilation support
    */
   public CompilationSupport registerGenerateModuleMapAction(
-      CppModuleMap moduleMap, NestedSet<Artifact> publicHeaders) {
-    return registerGenerateModuleMapAction(moduleMap, publicHeaders.toList());
-  }
-
-  /**
-   * Registers an action that will generate a clang module map.
-   *
-   * @param moduleMap the module map to generate
-   * @param publicHeaders the headers that should be directly accessible by dependers
-   * @return this compilation support
-   */
-  public CompilationSupport registerGenerateModuleMapAction(
       CppModuleMap moduleMap, Iterable<Artifact> publicHeaders) {
     publicHeaders = Iterables.filter(publicHeaders, CppFileTypes.MODULE_MAP_HEADER);
     ruleContext.registerAction(
@@ -1689,10 +1675,10 @@
             publicHeaders,
             attributes.moduleMapsForDirectDeps().toList(),
             ImmutableList.<PathFragment>of(),
-            /*compiledModule=*/ true,
-            /*moduleMapHomeIsCwd=*/ false,
+            /* compiledModule= */ true,
+            /* moduleMapHomeIsCwd= */ false,
             /* generateSubmodules= */ false,
-            /*externDependencies=*/ true));
+            /* externDependencies= */ true));
 
     return this;
   }
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcImport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcImport.java
index 82a008e..fc92ddf 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcImport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcImport.java
@@ -19,7 +19,6 @@
 import com.google.devtools.build.lib.analysis.ConfiguredTarget;
 import com.google.devtools.build.lib.analysis.RuleConfiguredTargetFactory;
 import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.collect.nestedset.NestedSet;
 import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
 import com.google.devtools.build.lib.packages.Type;
 import com.google.devtools.build.lib.rules.cpp.CcCommon;
@@ -53,7 +52,7 @@
 
     NestedSetBuilder<Artifact> filesToBuild = NestedSetBuilder.stableOrder();
 
-    NestedSet<Artifact> publicHeaders = compilationAttributes.hdrs();
+    Iterable<Artifact> publicHeaders = compilationAttributes.hdrs().toList();
     CppModuleMap moduleMap = intermediateArtifacts.moduleMap();
 
     new CompilationSupport.Builder()