Migrate some uses of NestedSet#forEachElement to NestedSetVisitor

These were the only 2 uses of NestedSet#forEachElement in Bazel.

No functional change intended.

Closes #12584.

PiperOrigin-RevId: 381914149
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java
index a47f477..23bdec6 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java
@@ -1066,14 +1066,13 @@
   }
 
   static DetailedExitCode getPrioritizedDetailedExitCode(NestedSet<Cause> causes) {
-    DetailedExitCode[] prioritizedDetailedExitCodeWrapper = {null};
-    causes.forEachElement(
-        o -> true,
-        c ->
-            prioritizedDetailedExitCodeWrapper[0] =
-                DetailedExitCodeComparator.chooseMoreImportantWithFirstIfTie(
-                    prioritizedDetailedExitCodeWrapper[0], c.getDetailedExitCode()));
-    return prioritizedDetailedExitCodeWrapper[0];
+    DetailedExitCode prioritizedDetailedExitCode = null;
+    for (Cause c : causes.toList()) {
+      prioritizedDetailedExitCode =
+          DetailedExitCodeComparator.chooseMoreImportantWithFirstIfTie(
+              prioritizedDetailedExitCode, c.getDetailedExitCode());
+    }
+    return prioritizedDetailedExitCode;
   }
 
   /**
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/TargetCompleteEventTest.java b/src/test/java/com/google/devtools/build/lib/analysis/TargetCompleteEventTest.java
index a02da32..4c8fd7f 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/TargetCompleteEventTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/TargetCompleteEventTest.java
@@ -72,9 +72,9 @@
     ArrayList<File> fileProtos = new ArrayList<>();
     ReportedArtifacts reportedArtifacts = event.reportedArtifacts();
     for (NestedSet<Artifact> artifactSet : reportedArtifacts.artifacts) {
-      artifactSet.forEachElement(
-          o -> true,
-          a -> fileProtos.add(newFileFromArtifact(null, a, PathFragment.EMPTY_FRAGMENT).build()));
+      for (Artifact a : artifactSet.toListInterruptibly()) {
+        fileProtos.add(newFileFromArtifact(null, a, PathFragment.EMPTY_FRAGMENT).build());
+      }
     }
     // Bytes are the same but the encoding is actually UTF-8 as required of a protobuf string.
     String utf8FileName = new String(filenameBytes, UTF_8);