From accd4283af8757416812fb05e4a6836e4ff989f7 Mon Sep 17 00:00:00 2001 From: Tagir Valeev Date: Thu, 11 Aug 2022 12:40:07 +0200 Subject: [PATCH] Use Stream.toList(); other minor fixes GitOrigin-RevId: 80cd98f05d25a63413085a2c6ee2bd650d7f5716 --- .../FrequentlyUsedInheritorInspection.java | 4 +- .../compiler/server/BuildManager.java | 38 +++++++++---------- .../impl/analysis/HighlightClassUtil.java | 2 +- .../IOStreamConstructorInspection.java | 2 +- .../ExtractGeneratedClassUtil.java | 11 ++---- .../daemon/impl/IconLineMarkerProvider.java | 2 +- .../AddAnnotationAttributeNameFix.java | 3 +- .../daemon/impl/quickfix/OrderEntryFix.java | 3 +- .../impl/AnnotateIntentionAction.java | 2 +- .../MagicConstantInspection.java | 2 +- .../createTest/CreateTestAction.java | 10 ++--- .../JSpecifyAnnotationTest.java | 2 +- .../java/psi/search/ClassInheritorsTest.java | 4 +- .../codeInsight/AnnotationsPanel.java | 2 +- .../impl/JsonSchemaAnnotatorChecker.java | 2 +- .../jsonSchema/impl/JsonSchemaResolver.java | 4 +- .../widget/JsonSchemaStatusWidget.java | 2 +- .../DefaultInspectionToolResultExporter.java | 2 +- .../BuildDependenciesDownloader.java | 8 ++-- .../dependencies/BuildDependenciesUtil.java | 2 +- .../intention/impl/IntentionListStep.java | 2 +- .../OfflineDescriptorResolveResult.java | 3 +- .../RecentFilesSEContributor.java | 22 +++++------ .../searcheverywhere/SearchEverywhereUI.java | 10 +---- .../projectView/impl/MoveModuleToGroup.java | 9 +++-- .../internal/DumpFormattingModelAction.java | 2 +- .../impl/JavaHomeFinderBasic.java | 2 +- .../ui/FragmentedSettingsEditor.java | 4 +- .../util/net/ssl/ConfirmingTrustManager.java | 2 +- .../LogLoadedApplicationClassesAgent.java | 2 +- .../ide/plugins/RepositoryHelper.java | 5 +-- .../newui/MultiSelectionEventHandler.java | 3 +- .../persistent/PersistentFSConnector.java | 2 +- .../internal/DumpTestEnvironmentTest.java | 16 ++++---- .../testSrc/com/intellij/util/AlarmTest.java | 2 +- .../AppScheduledExecutorServiceTest.java | 2 +- .../concurrency/BoundedTaskExecutorTest.java | 2 +- .../impl/runtime/ServerConnectionImpl.java | 2 +- .../history/actions/ImportTestsGroup.java | 5 ++- .../eventLog/ShortcutDataProvider.java | 2 +- .../src/com/intellij/tests/Retries.java | 3 +- .../testFramework/EditorTestUtil.java | 2 +- .../impl/CodeInsightTestFixtureImpl.java | 3 +- .../message/ReformatCommitMessageAction.java | 2 +- .../com/intellij/vcs/log/impl/VcsLogImpl.java | 2 +- .../src/com/siyeh/ig/psiutils/ClassUtils.java | 2 +- ...atchedCollectionQueryUpdateInspection.java | 2 +- .../export/EditorConfigSettingsWriter.java | 4 +- .../compiler/GradleDelegatedBuildTest.java | 2 +- .../service/task/GradleTaskManager.java | 2 +- .../plugins/gradle/util/GradleUtil.java | 2 +- .../org/zmlx/hg4idea/log/HgHistoryUtil.java | 2 +- .../javaFX/sceneBuilder/SceneBuilderUtil.java | 2 +- .../plugin/AbstractLombokParsingTestCase.java | 6 +-- .../maven/execution/MavenRunnerPanel.java | 2 +- .../maven/project/MavenProjectsManager.java | 2 +- .../idea/maven/project/MavenProjectsTree.java | 11 +++--- .../MavenWrapperTestFixture.java | 2 +- .../plugins/textmate/bundles/VSCBundle.java | 2 +- .../language/syntax/lexer/TextMateLexer.java | 3 +- .../yaml/breadcrumbs/YAMLBreadcrumbsTest.java | 5 +-- .../impl/references/PyOperatorReference.java | 7 ++-- .../python/packaging/PyPackageManagerUI.java | 2 +- .../com/jetbrains/python/PyOverrideTest.java | 5 +-- .../HtmlMissingClosingTagInspectionTest.java | 2 +- .../src/com/intellij/lexer/BaseHtmlLexer.java | 2 +- 66 files changed, 128 insertions(+), 159 deletions(-) diff --git a/java/compiler/impl/src/com/intellij/compiler/inspection/FrequentlyUsedInheritorInspection.java b/java/compiler/impl/src/com/intellij/compiler/inspection/FrequentlyUsedInheritorInspection.java index d70be9cd3e9a..0b43fba5f6ac 100644 --- a/java/compiler/impl/src/com/intellij/compiler/inspection/FrequentlyUsedInheritorInspection.java +++ b/java/compiler/impl/src/com/intellij/compiler/inspection/FrequentlyUsedInheritorInspection.java @@ -175,7 +175,7 @@ public final class FrequentlyUsedInheritorInspection extends AbstractBaseJavaLoc return null; }) .filter(Objects::nonNull) - .collect(Collectors.toList()); + .toList(); PsiResolveHelper resolveHelper = PsiResolveHelper.getInstance(project); return directInheritorStats @@ -184,7 +184,7 @@ public final class FrequentlyUsedInheritorInspection extends AbstractBaseJavaLoc .flatMap(c -> StreamEx.of(getClassesIfInterface(c, finalHierarchyCardinality, searchScope, place, project, compilerRefService)).prepend(c)) .sorted() .limit(MAX_RESULT) - .collect(Collectors.toList()); + .toList(); } private static List getClassesIfInterface(@NotNull ClassAndInheritorCount classAndInheritorCount, diff --git a/java/compiler/impl/src/com/intellij/compiler/server/BuildManager.java b/java/compiler/impl/src/com/intellij/compiler/server/BuildManager.java index bca7e64d1662..2b832cb06069 100644 --- a/java/compiler/impl/src/com/intellij/compiler/server/BuildManager.java +++ b/java/compiler/impl/src/com/intellij/compiler/server/BuildManager.java @@ -104,6 +104,8 @@ import io.netty.handler.codec.protobuf.ProtobufEncoder; import io.netty.handler.codec.protobuf.ProtobufVarint32FrameDecoder; import io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender; import io.netty.util.internal.ThreadLocalRandom; +import one.util.streamex.EntryStream; +import one.util.streamex.StreamEx; import org.jetbrains.annotations.Nls; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -511,14 +513,6 @@ public final class BuildManager implements Disposable { return; } synchronized (myProjectDataMap) { - //if (IS_UNIT_TEST_MODE) { - // if (notifyDeletion) { - // LOG.info("Registering deleted paths: " + filtered); - // } - // else { - // LOG.info("Registering changed paths: " + filtered); - // } - //} for (Map.Entry entry : myProjectDataMap.entrySet()) { final ProjectData data = entry.getValue(); if (notifyDeletion) { @@ -1139,15 +1133,17 @@ public final class BuildManager implements Disposable { if (configuration.getJavacCompiler().equals(configuration.getDefaultCompiler()) && JavacConfiguration.getOptions(project, JavacConfiguration.class).PREFER_TARGET_JDK_COMPILER) { // for javac, if compiler from associated SDK instead of cross-compilation is preferred, use a different policy: // select the most frequently used jdk from the sdks that are associated with the project, but not older than - // this policy attempts to compile as much modules as possible without spawning a separate javac process + // this policy attempts to compile as many modules as possible without spawning a separate javac process - final List> sortedSdks = candidates.entrySet().stream() - .sorted(Map.Entry.comparingByValue().reversed()) - .map(entry -> Pair.create(entry.getKey(), JavaVersion.tryParse(entry.getKey().getVersionString()))) - .filter(p -> p.second != null && p.second.isAtLeast(oldestPossibleVersion)) - .map(p -> Pair.create(p.first, JavaSdkVersion.fromJavaVersion(p.second))) - .filter(p -> p.second != null) - .collect(Collectors.toList()); + final List> sortedSdks = EntryStream.of(candidates) + .reverseSorted(Map.Entry.comparingByValue()) + .keys() + .mapToEntry(sdk -> JavaVersion.tryParse(sdk.getVersionString())) + .filterValues(version -> version != null && version.isAtLeast(oldestPossibleVersion)) + .mapValues(JavaSdkVersion::fromJavaVersion) + .nonNullValues() + .mapKeyValue(Pair::create) + .toList(); if (!sortedSdks.isEmpty()) { // first try to find most used JDK of version 9 and newer => JRT FS support will be needed @@ -1157,11 +1153,11 @@ public final class BuildManager implements Disposable { } // now select the latest version from the sdks that are used in the project, but not older than - return candidates.keySet().stream() - .map(sdk -> Pair.create(sdk, JavaVersion.tryParse(sdk.getVersionString()))) - .filter(p -> p.second != null && p.second.isAtLeast(oldestPossibleVersion)) - .max(Pair.comparingBySecond()) - .map(p -> Pair.create(p.first, JavaSdkVersion.fromJavaVersion(p.second))) + return StreamEx.ofKeys(candidates) + .mapToEntry(sdk -> JavaVersion.tryParse(sdk.getVersionString())) + .filterValues(version -> version != null && version.isAtLeast(oldestPossibleVersion)) + .max(Map.Entry.comparingByValue()) + .map(p -> Pair.create(p.getKey(), JavaSdkVersion.fromJavaVersion(p.getValue()))) .filter(p -> p.second != null) .orElseGet(() -> { Sdk internalJdk = JavaAwareProjectJdkTableImpl.getInstanceEx().getInternalJdk(); diff --git a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightClassUtil.java b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightClassUtil.java index c351be70fee0..226732cccc20 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightClassUtil.java +++ b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightClassUtil.java @@ -611,7 +611,7 @@ public final class HighlightClassUtil { return (parameters.length == 0 || parameters.length == 1 && parameters[0].isVarArgs()) && resolveHelper.isAccessible(constructor, aClass, null); }) - .limit(2).collect(Collectors.toList()); + .limit(2).toList(); if (constructorCandidates.size() >= 2) {// two ambiguous var-args-only constructors String m1 = PsiFormatUtil.formatMethod(constructorCandidates.get(0), PsiSubstitutor.EMPTY, diff --git a/java/java-impl-inspections/src/com/intellij/codeInspection/IOStreamConstructorInspection.java b/java/java-impl-inspections/src/com/intellij/codeInspection/IOStreamConstructorInspection.java index 5144d63ecc42..a7035b14fa1e 100644 --- a/java/java-impl-inspections/src/com/intellij/codeInspection/IOStreamConstructorInspection.java +++ b/java/java-impl-inspections/src/com/intellij/codeInspection/IOStreamConstructorInspection.java @@ -223,7 +223,7 @@ public class IOStreamConstructorInspection extends AbstractBaseJavaLocalInspecti // maybe we can reuse already created file.toPath() / Path.of(...) variable List pathVars = Arrays.stream(occurrences).map(o -> findVariableAssignedTo(o)) .filter(var -> var != null && HighlightControlFlowUtil.isEffectivelyFinal(var, toPathConversion, null)) - .collect(Collectors.toList()); + .toList(); if (!pathVars.isEmpty()) { PsiCodeBlock body = containingMethod.getBody(); if (body == null) return; diff --git a/java/java-impl-refactorings/src/com/intellij/refactoring/extractMethodObject/ExtractGeneratedClassUtil.java b/java/java-impl-refactorings/src/com/intellij/refactoring/extractMethodObject/ExtractGeneratedClassUtil.java index 8f78cd5416da..5faa29237443 100644 --- a/java/java-impl-refactorings/src/com/intellij/refactoring/extractMethodObject/ExtractGeneratedClassUtil.java +++ b/java/java-impl-refactorings/src/com/intellij/refactoring/extractMethodObject/ExtractGeneratedClassUtil.java @@ -7,12 +7,11 @@ import com.intellij.openapi.project.Project; import com.intellij.psi.*; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.psi.util.PsiTypesUtil; +import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.util.Arrays; import java.util.List; -import java.util.stream.Collectors; final class ExtractGeneratedClassUtil { private static final String GENERATED_CLASS_PACKAGE = "idea.debugger.rt"; @@ -118,8 +117,7 @@ final class ExtractGeneratedClassUtil { super.visitNewExpression(expression); PsiMethod constructor = expression.resolveConstructor(); if (constructor != null && generatedClass.equals(constructor.getContainingClass())) { - List methods = - Arrays.stream(extractedClass.getConstructors()).filter(x -> isSameMethod(x, constructor)).collect(Collectors.toList()); + List methods = ContainerUtil.filter(extractedClass.getConstructors(), x -> isSameMethod(x, constructor)); if (methods.size() == 1) { LOG.info("Replace constructor: " + constructor.getName()); constructor.putUserData(LightMethodObjectExtractedData.REFERENCE_METHOD, methods.get(0)); @@ -132,8 +130,7 @@ final class ExtractGeneratedClassUtil { super.visitMethodCallExpression(expression); PsiMethod method = expression.resolveMethod(); if (method != null && generatedClass.equals(method.getContainingClass())) { - List methods = - Arrays.stream(extractedClass.getMethods()).filter(x -> isSameMethod(x, method)).collect(Collectors.toList()); + List methods = ContainerUtil.filter(extractedClass.getMethods(), x -> isSameMethod(x, method)); if (methods.size() == 1) { LOG.info("Replace method: " + method.getName()); method.putUserData(LightMethodObjectExtractedData.REFERENCE_METHOD, methods.get(0)); @@ -141,7 +138,7 @@ final class ExtractGeneratedClassUtil { } } - private boolean isSameMethod(@NotNull PsiMethod first, @NotNull PsiMethod second) { + private static boolean isSameMethod(@NotNull PsiMethod first, @NotNull PsiMethod second) { if (first.getName().equals(second.getName())) { return first.getParameterList().getParametersCount() == second.getParameterList().getParametersCount(); } diff --git a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/IconLineMarkerProvider.java b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/IconLineMarkerProvider.java index d6d3abf01be6..2c323dabcc2e 100644 --- a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/IconLineMarkerProvider.java +++ b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/IconLineMarkerProvider.java @@ -62,7 +62,7 @@ public class IconLineMarkerProvider extends LineMarkerProviderDescriptor { .stream() .filter(constant -> constant instanceof UStringConstant) .map(UConstant::getSource) - .collect(Collectors.toList()); + .toList(); if (!constants.isEmpty()) { UIdentifier identifier = expression.getMethodIdentifier(); if (identifier != null) { diff --git a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/AddAnnotationAttributeNameFix.java b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/AddAnnotationAttributeNameFix.java index bb4a8bff4d78..72d2669bc766 100644 --- a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/AddAnnotationAttributeNameFix.java +++ b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/AddAnnotationAttributeNameFix.java @@ -121,8 +121,7 @@ public class AddAnnotationAttributeNameFix extends LocalQuickFixAndIntentionActi final Collection availableMethods = Arrays.stream(annotationClass.getMethods()) .filter(PsiAnnotationMethod.class::isInstance) - .filter(psiMethod -> !usedNames.contains(psiMethod.getName())) - .collect(Collectors.toList()); + .filter(psiMethod -> !usedNames.contains(psiMethod.getName())).toList(); if (!availableMethods.isEmpty()) { final PsiType valueType = CreateAnnotationMethodFromUsageFix.getAnnotationValueType(value); diff --git a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/OrderEntryFix.java b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/OrderEntryFix.java index bdcc0361d54a..2b99230d39a9 100644 --- a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/OrderEntryFix.java +++ b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/OrderEntryFix.java @@ -243,8 +243,7 @@ public abstract class OrderEntryFix implements IntentionAction, LocalQuickFix { ProjectFileIndex index = ProjectRootManager.getInstance(currentModule.getProject()).getFileIndex(); List targets = Stream.of(reference.multiResolve(true)) .map(ResolveResult::getElement) - .filter(Objects::nonNull) - .collect(Collectors.toList()); + .filter(Objects::nonNull).toList(); PsiElement statement = reference.getElement().getParent(); boolean exported = statement instanceof PsiRequiresStatement && diff --git a/java/java-impl/src/com/intellij/codeInsight/intention/impl/AnnotateIntentionAction.java b/java/java-impl/src/com/intellij/codeInsight/intention/impl/AnnotateIntentionAction.java index 0abf0aeef99d..ba9c2942ca87 100644 --- a/java/java-impl/src/com/intellij/codeInsight/intention/impl/AnnotateIntentionAction.java +++ b/java/java-impl/src/com/intellij/codeInsight/intention/impl/AnnotateIntentionAction.java @@ -92,7 +92,7 @@ public class AnnotateIntentionAction extends BaseIntentionAction implements LowP if (owner == null || owner.getModifierList() == null || !ExternalAnnotationsManagerImpl.areExternalAnnotationsApplicable(owner)) { return false; } - List annotations = availableAnnotations(owner, project).limit(2).collect(Collectors.toList()); + List annotations = availableAnnotations(owner, project).limit(2).toList(); if (annotations.isEmpty()) return false; if (mySingleAnnotationName != null && canAnnotateWith(file, owner, mySingleAnnotationName)) return true; if (annotations.size() == 1) { diff --git a/java/java-impl/src/com/intellij/codeInspection/magicConstant/MagicConstantInspection.java b/java/java-impl/src/com/intellij/codeInspection/magicConstant/MagicConstantInspection.java index bd8766db3f5d..4416dd4d8d5b 100644 --- a/java/java-impl/src/com/intellij/codeInspection/magicConstant/MagicConstantInspection.java +++ b/java/java-impl/src/com/intellij/codeInspection/magicConstant/MagicConstantInspection.java @@ -527,7 +527,7 @@ public final class MagicConstantInspection extends AbstractBaseJavaLocalInspecti @Override public String getText() { List names = myMemberValuePointers.stream().map(SmartPsiElementPointer::getElement).filter(Objects::nonNull) - .map(PsiElement::getText).collect(Collectors.toList()); + .map(PsiElement::getText).toList(); String expression = StringUtil.join(names, " | "); return CommonQuickFixBundle.message("fix.replace.with.x", expression); } diff --git a/java/java-impl/src/com/intellij/testIntegration/createTest/CreateTestAction.java b/java/java-impl/src/com/intellij/testIntegration/createTest/CreateTestAction.java index 520b12a80e49..41a88e533e3b 100644 --- a/java/java-impl/src/com/intellij/testIntegration/createTest/CreateTestAction.java +++ b/java/java-impl/src/com/intellij/testIntegration/createTest/CreateTestAction.java @@ -22,6 +22,8 @@ import com.intellij.psi.util.PsiTreeUtil; import com.intellij.testIntegration.TestFramework; import com.intellij.testIntegration.TestIntegrationUtils; import com.intellij.util.IncorrectOperationException; +import one.util.streamex.MoreCollectors; +import one.util.streamex.StreamEx; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -136,11 +138,9 @@ public class CreateTestAction extends PsiElementBaseIntentionAction { final HashSet modules = new HashSet<>(); ModuleUtilCore.collectModulesDependsOn(productionModule, modules); modules.remove(productionModule); - List modulesWithTestRoot = modules.stream() - .filter(module -> !computeSuitableTestRootUrls(module).isEmpty()) - .limit(2) - .collect(Collectors.toList()); - if (modulesWithTestRoot.size() == 1) return modulesWithTestRoot.get(0); + Module moduleWithTestRoot = StreamEx.of(modules) + .collect(MoreCollectors.onlyOne(module -> !computeSuitableTestRootUrls(module).isEmpty())).orElse(null); + if (moduleWithTestRoot != null) return moduleWithTestRoot; } return productionModule; diff --git a/java/java-tests/testSrc/com/intellij/java/codeInspection/JSpecifyAnnotationTest.java b/java/java-tests/testSrc/com/intellij/java/codeInspection/JSpecifyAnnotationTest.java index c9af3daaf649..df244669b28c 100644 --- a/java/java-tests/testSrc/com/intellij/java/codeInspection/JSpecifyAnnotationTest.java +++ b/java/java-tests/testSrc/com/intellij/java/codeInspection/JSpecifyAnnotationTest.java @@ -98,7 +98,7 @@ public class JSpecifyAnnotationTest extends LightJavaCodeInsightFixtureTestCase boolean dirMode = Files.isDirectory(path); List files = Files.walk(path) .filter(p -> Files.isRegularFile(p)).filter(p -> p.getFileName().toString().endsWith(".java")) - .collect(Collectors.toList()); + .toList(); if (files.isEmpty()) { throw new IllegalStateException("No Java files"); } diff --git a/java/java-tests/testSrc/com/intellij/java/psi/search/ClassInheritorsTest.java b/java/java-tests/testSrc/com/intellij/java/psi/search/ClassInheritorsTest.java index f9f291c97de2..cc85ac855200 100644 --- a/java/java-tests/testSrc/com/intellij/java/psi/search/ClassInheritorsTest.java +++ b/java/java-tests/testSrc/com/intellij/java/psi/search/ClassInheritorsTest.java @@ -38,11 +38,11 @@ public class ClassInheritorsTest extends JavaCodeInsightFixtureTestCase { PsiClass n2 = (PsiClass)numberClass.getNavigationElement(); assertTrue(String.valueOf(n2), n2 instanceof PsiClassImpl); Collection subClasses = DirectClassInheritorsSearch.search(n2, GlobalSearchScope.allScope(getProject())).findAll(); - List fqn = subClasses.stream().map(PsiClass::getQualifiedName).sorted().collect(Collectors.toList()); + List fqn = subClasses.stream().map(PsiClass::getQualifiedName).sorted().toList(); assertEquals(fqn.toString(), fqn.size(), new HashSet<>(fqn).size()); // no dups mean no Cls/Psi mixed Collection allSubClasses = ClassInheritorsSearch.search(n2, GlobalSearchScope.allScope(getProject()), true).findAll(); - List allFqn = allSubClasses.stream().map(PsiClass::getQualifiedName).sorted().collect(Collectors.toList()); + List allFqn = allSubClasses.stream().map(PsiClass::getQualifiedName).sorted().toList(); assertEquals(allFqn.toString(), allFqn.size(), new HashSet<>(allFqn).size()); } diff --git a/java/openapi/src/com/intellij/codeInsight/AnnotationsPanel.java b/java/openapi/src/com/intellij/codeInsight/AnnotationsPanel.java index 51b7206f3be7..7d501ec718c9 100644 --- a/java/openapi/src/com/intellij/codeInsight/AnnotationsPanel.java +++ b/java/openapi/src/com/intellij/codeInsight/AnnotationsPanel.java @@ -203,7 +203,7 @@ public class AnnotationsPanel { Object selectedItem = myCombo.getSelectedItem(); List newItems = Stream.concat( IntStream.range(0, count).mapToObj(myCombo::getItemAt), - advancedAnnotations.stream()).sorted().distinct().collect(Collectors.toList()); + advancedAnnotations.stream()).sorted().distinct().toList(); myCombo.removeAllItems(); newItems.forEach(myCombo::addItem); myCombo.setSelectedItem(selectedItem); diff --git a/json/src/com/jetbrains/jsonSchema/impl/JsonSchemaAnnotatorChecker.java b/json/src/com/jetbrains/jsonSchema/impl/JsonSchemaAnnotatorChecker.java index e351d3aef4be..22b6aca596d8 100644 --- a/json/src/com/jetbrains/jsonSchema/impl/JsonSchemaAnnotatorChecker.java +++ b/json/src/com/jetbrains/jsonSchema/impl/JsonSchemaAnnotatorChecker.java @@ -579,7 +579,7 @@ public final class JsonSchemaAnnotatorChecker implements JsonValidationHost { if (allTypes.size() == 1) return errors.iterator().next(); - List actualInfos = errors.stream().map(e -> e.getMessage()).map(JsonSchemaAnnotatorChecker::fetchActual).distinct().collect(Collectors.toList()); + List actualInfos = errors.stream().map(e -> e.getMessage()).map(JsonSchemaAnnotatorChecker::fetchActual).distinct().toList(); String actualInfo = actualInfos.size() == 1 ? (" " + JsonBundle.message("schema.validation.actual") + actualInfos.get(0) + ".") : ""; String commonTypeMessage = JsonBundle.message("schema.validation.incompatible.types") + "\n" + JsonBundle.message("schema.validation.required.one.of", diff --git a/json/src/com/jetbrains/jsonSchema/impl/JsonSchemaResolver.java b/json/src/com/jetbrains/jsonSchema/impl/JsonSchemaResolver.java index 21ff47fe68bd..9b8cdd8c193f 100644 --- a/json/src/com/jetbrains/jsonSchema/impl/JsonSchemaResolver.java +++ b/json/src/com/jetbrains/jsonSchema/impl/JsonSchemaResolver.java @@ -147,7 +147,7 @@ public class JsonSchemaResolver { @Nullable private static JsonPropertyAdapter findProperty(@NotNull JsonObjectValueAdapter value, @NotNull String name) { List list = value.getPropertyList(); - return list.stream().filter(p -> name.equals(p.getName())).findFirst().orElse(null); + return ContainerUtil.find(list, p -> name.equals(p.getName())); } @Nullable @@ -156,7 +156,7 @@ public class JsonSchemaResolver { boolean topLevelSchema) { final MatchResult matchResult = MatchResult.create(resolveRoot); List schemas = new ArrayList<>(matchResult.mySchemas); - schemas.addAll(matchResult.myExcludingSchemas.stream().flatMap(Collection::stream).collect(Collectors.toList())); + schemas.addAll(matchResult.myExcludingSchemas.stream().flatMap(Collection::stream).toList()); final JsonSchemaObject firstSchema = getFirstValidSchema(schemas); if (element == null || schemas.size() == 1 || firstSchema == null) { diff --git a/json/src/com/jetbrains/jsonSchema/widget/JsonSchemaStatusWidget.java b/json/src/com/jetbrains/jsonSchema/widget/JsonSchemaStatusWidget.java index 831e11203675..c8e131d48d06 100644 --- a/json/src/com/jetbrains/jsonSchema/widget/JsonSchemaStatusWidget.java +++ b/json/src/com/jetbrains/jsonSchema/widget/JsonSchemaStatusWidget.java @@ -540,7 +540,7 @@ class JsonSchemaStatusWidget extends EditorBasedStatusBarPopup { .map(file -> jsonSchemaService.getSchemaProvider(file)) .filter(Objects::nonNull) .map(provider -> Pair.create(SchemaType.userSchema.equals(provider.getSchemaType()), provider.getName())) - .collect(Collectors.toList()); + .toList(); final long numOfSystemSchemas = pairList.stream().filter(pair -> !pair.getFirst()).count(); // do not report anything if there is only one system schema and one user schema (user overrides schema that we provide) diff --git a/platform/analysis-impl/src/com/intellij/codeInspection/DefaultInspectionToolResultExporter.java b/platform/analysis-impl/src/com/intellij/codeInspection/DefaultInspectionToolResultExporter.java index bd3eea499602..a95c30a339fc 100644 --- a/platform/analysis-impl/src/com/intellij/codeInspection/DefaultInspectionToolResultExporter.java +++ b/platform/analysis-impl/src/com/intellij/codeInspection/DefaultInspectionToolResultExporter.java @@ -170,7 +170,7 @@ public class DefaultInspectionToolResultExporter implements InspectionToolResult .filter(desc -> !isDescriptorExcluded.test(desc)) .map(desc -> new ProblemDescriptorKey(desc)) .sorted() - .collect(Collectors.toList()); + .toList(); for (ProblemDescriptorKey key : keys) { final var descriptor = key.descriptor; diff --git a/platform/build-scripts/downloader/src/org/jetbrains/intellij/build/dependencies/BuildDependenciesDownloader.java b/platform/build-scripts/downloader/src/org/jetbrains/intellij/build/dependencies/BuildDependenciesDownloader.java index 0c0fcbc6c475..6d9d8df97575 100644 --- a/platform/build-scripts/downloader/src/org/jetbrains/intellij/build/dependencies/BuildDependenciesDownloader.java +++ b/platform/build-scripts/downloader/src/org/jetbrains/intellij/build/dependencies/BuildDependenciesDownloader.java @@ -341,11 +341,9 @@ final public class BuildDependenciesDownloader { new StringBuilder("Error downloading " + uri + ": non-200 http status code " + response.statusCode() + "\n"); Map> headers = response.headers().map(); - for (String headerName : headers.keySet().stream().sorted().collect(Collectors.toList())) { - for (String value : headers.get(headerName)) { - builder.append("Header: ").append(headerName).append(": ").append(value).append("\n"); - } - } + headers.keySet().stream().sorted() + .flatMap(headerName -> headers.get(headerName).stream().map(value -> "Header: " + headerName + ": " + value + "\n")) + .forEach(builder::append); builder.append("\n"); if (Files.exists(tempFile)) { diff --git a/platform/build-scripts/downloader/src/org/jetbrains/intellij/build/dependencies/BuildDependenciesUtil.java b/platform/build-scripts/downloader/src/org/jetbrains/intellij/build/dependencies/BuildDependenciesUtil.java index 7885bedf4e8e..b550b92cac03 100644 --- a/platform/build-scripts/downloader/src/org/jetbrains/intellij/build/dependencies/BuildDependenciesUtil.java +++ b/platform/build-scripts/downloader/src/org/jetbrains/intellij/build/dependencies/BuildDependenciesUtil.java @@ -426,7 +426,7 @@ public final class BuildDependenciesUtil { "Normalized entry name should not contain '" + doubleForwardSlashString + "': " + normalizedEntryName); } if (normalizedEntryName.contains("..") && - Arrays.stream(normalizedEntryName.split(forwardSlashString)).collect(Collectors.toList()).contains("..")) { + Arrays.asList(normalizedEntryName.split(forwardSlashString)).contains("..")) { throw new IllegalStateException("Invalid entry name: " + normalizedEntryName); } } diff --git a/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/IntentionListStep.java b/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/IntentionListStep.java index ae502a59b1ca..a610a94b2f39 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/IntentionListStep.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/IntentionListStep.java @@ -101,7 +101,7 @@ public class IntentionListStep implements ListPopupStep StackingPopupDispatcher.getInstance().getPopupStream() .filter(popup -> popup.getUserData(IntentionPreviewPopupUpdateProcessor.IntentionPreviewPopupKey.class) != null) - .collect(Collectors.toList()) + .toList() .forEach(popup -> popup.cancel())); } diff --git a/platform/lang-impl/src/com/intellij/codeInspection/offlineViewer/OfflineDescriptorResolveResult.java b/platform/lang-impl/src/com/intellij/codeInspection/offlineViewer/OfflineDescriptorResolveResult.java index 3868c60d636e..deed9dcddece 100644 --- a/platform/lang-impl/src/com/intellij/codeInspection/offlineViewer/OfflineDescriptorResolveResult.java +++ b/platform/lang-impl/src/com/intellij/codeInspection/offlineViewer/OfflineDescriptorResolveResult.java @@ -286,8 +286,7 @@ public final class OfflineDescriptorResolveResult { }; List hints = offlineDescriptor.getHints(); if (hints != null && entity instanceof RefModule) { - List fixes = - hints.stream().map(hint -> wrapper.getTool().getQuickFix(hint)).filter(f -> f != null).collect(Collectors.toList()); + List fixes = hints.stream().map(hint -> wrapper.getTool().getQuickFix(hint)).filter(f -> f != null).toList(); return new ModuleProblemDescriptorImpl(ArrayUtil.append(fixes.toArray(QuickFix.EMPTY_ARRAY), rerunFix), offlineDescriptor.getDescription(), ((RefModule)entity).getModule()); } return new CommonProblemDescriptorImpl(new QuickFix[]{rerunFix}, offlineDescriptor.getDescription()); diff --git a/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/RecentFilesSEContributor.java b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/RecentFilesSEContributor.java index 4e60dd7e1028..fe25d14f009d 100644 --- a/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/RecentFilesSEContributor.java +++ b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/RecentFilesSEContributor.java @@ -16,6 +16,7 @@ import com.intellij.psi.codeStyle.MinusculeMatcher; import com.intellij.psi.codeStyle.NameUtil; import com.intellij.util.Processor; import com.intellij.util.containers.ContainerUtil; +import one.util.streamex.StreamEx; import org.jetbrains.annotations.NotNull; import java.util.ArrayList; @@ -71,20 +72,19 @@ public class RecentFilesSEContributor extends FileSearchEverywhereContributor { ProgressIndicatorUtils.runInReadActionWithWriteActionPriority( () -> { PsiManager psiManager = PsiManager.getInstance(myProject); - Stream stream = history.stream(); + StreamEx stream = StreamEx.of(history); if (!StringUtil.isEmptyOrSpaces(searchString)) { stream = stream.filter(file -> matcher.matches(file.getName())); } - res.addAll(stream.filter(vf -> !opened.contains(vf) && vf.isValid()) - .distinct() - .map(vf -> { - PsiFile f = psiManager.findFile(vf); - String name = vf.getName(); - return f == null ? null : new FoundItemDescriptor(f, matcher.matchingDegree(name)); - }) - .filter(file -> file != null) - .collect(Collectors.toList()) - ); + stream.filter(vf -> !opened.contains(vf) && vf.isValid()) + .distinct() + .map(vf -> { + PsiFile f = psiManager.findFile(vf); + String name = vf.getName(); + return f == null ? null : new FoundItemDescriptor(f, matcher.matchingDegree(name)); + }) + .nonNull() + .into(res); ContainerUtil.process(res, consumer); }, progressIndicator); diff --git a/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereUI.java b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereUI.java index 4c13b0c50c72..a0661f062ac2 100644 --- a/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereUI.java +++ b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereUI.java @@ -299,10 +299,7 @@ public final class SearchEverywhereUI extends BigPopupUI implements DataProvider return IdeBundle.message("searcheverywhere.textfield.hint", SearchTopHitProvider.getTopHitAccelerator()); } - List advertisements = contributors.stream() - .map(c -> c.getAdvertisement()) - .filter(Objects::nonNull) - .collect(Collectors.toList()); + List advertisements = ContainerUtil.mapNotNull(contributors, c -> c.getAdvertisement()); return advertisements.isEmpty() ? null : advertisements.get(new Random().nextInt(advertisements.size())); } @@ -749,10 +746,7 @@ public final class SearchEverywhereUI extends BigPopupUI implements DataProvider }; ShortcutSet selectShortcuts = ActionManager.getInstance().getAction(SearchEverywhereActions.SELECT_ITEM).getShortcutSet(); - Collection keyboardShortcuts = Arrays.stream(selectShortcuts.getShortcuts()) - .filter(shortcut -> shortcut instanceof KeyboardShortcut) - .map(shortcut -> (KeyboardShortcut)shortcut) - .collect(Collectors.toList()); + Collection keyboardShortcuts = ContainerUtil.filterIsInstance(selectShortcuts.getShortcuts(), KeyboardShortcut.class); for (int modifiers : allowedModifiers) { Collection newShortcuts = new ArrayList<>(); diff --git a/platform/lang-impl/src/com/intellij/ide/projectView/impl/MoveModuleToGroup.java b/platform/lang-impl/src/com/intellij/ide/projectView/impl/MoveModuleToGroup.java index 3bbc5cffad38..e212c78c886f 100644 --- a/platform/lang-impl/src/com/intellij/ide/projectView/impl/MoveModuleToGroup.java +++ b/platform/lang-impl/src/com/intellij/ide/projectView/impl/MoveModuleToGroup.java @@ -11,6 +11,7 @@ import com.intellij.openapi.module.Module; import com.intellij.openapi.module.ModuleGrouper; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.text.StringUtil; +import one.util.streamex.StreamEx; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -49,10 +50,10 @@ public class MoveModuleToGroup extends ActionGroup { result.add(new MoveModulesToSubGroupAction(myModuleGroup)); result.add(Separator.getInstance()); ModuleGrouper grouper = ModuleGrouper.instanceFor(project, modifiableModuleModel); - result.addAll(myModuleGroup.childGroups(grouper).stream().sorted((moduleGroup1, moduleGroup2) -> { - assert moduleGroup1.getGroupPath().length == moduleGroup2.getGroupPath().length; - return moduleGroup1.toString().compareToIgnoreCase(moduleGroup2.toString()); - }).map(MoveModuleToGroup::new).collect(Collectors.toList())); + StreamEx.of(myModuleGroup.childGroups(grouper)).sorted((moduleGroup1, moduleGroup2) -> { + assert moduleGroup1.getGroupPath().length == moduleGroup2.getGroupPath().length; + return moduleGroup1.toString().compareToIgnoreCase(moduleGroup2.toString()); + }).map(MoveModuleToGroup::new).into(result); return result.toArray(AnAction.EMPTY_ARRAY); } diff --git a/platform/lang-impl/src/com/intellij/internal/DumpFormattingModelAction.java b/platform/lang-impl/src/com/intellij/internal/DumpFormattingModelAction.java index f54a377ded50..f0a64d6f7123 100644 --- a/platform/lang-impl/src/com/intellij/internal/DumpFormattingModelAction.java +++ b/platform/lang-impl/src/com/intellij/internal/DumpFormattingModelAction.java @@ -64,7 +64,7 @@ final class DumpFormattingModelAction extends AnAction implements DumbAware { .map(documentWindow -> PsiDocumentManager.getInstance(project).getPsiFile(documentWindow)) .filter(psi -> psi != null) .sorted(Comparator.comparingInt(psi -> injectedLanguageManager.injectedToHost(psi, psi.getTextRange()).getStartOffset())) - .collect(Collectors.toList()); + .toList(); for (PsiFile injectedFile : injectedFiles) { dumpModelForFile(injectedFile, output, injectedLanguageManager.injectedToHost(injectedFile, injectedFile.getTextRange())); diff --git a/platform/lang-impl/src/com/intellij/openapi/projectRoots/impl/JavaHomeFinderBasic.java b/platform/lang-impl/src/com/intellij/openapi/projectRoots/impl/JavaHomeFinderBasic.java index f2a43d8834f2..bb4f9b0d048e 100644 --- a/platform/lang-impl/src/com/intellij/openapi/projectRoots/impl/JavaHomeFinderBasic.java +++ b/platform/lang-impl/src/com/intellij/openapi/projectRoots/impl/JavaHomeFinderBasic.java @@ -288,7 +288,7 @@ public class JavaHomeFinderBasic { var result = new HashSet<@NotNull String>(); try (Stream stream = Files.list(javasDir)) { - List innerDirectories = stream.filter(d -> Files.isDirectory(d)).collect(Collectors.toList()); + List innerDirectories = stream.filter(d -> Files.isDirectory(d)).toList(); for (Path innerDir : innerDirectories) { var home = innerDir; var releaseFile = home.resolve("release"); diff --git a/platform/platform-api/src/com/intellij/execution/ui/FragmentedSettingsEditor.java b/platform/platform-api/src/com/intellij/execution/ui/FragmentedSettingsEditor.java index 04905543fda1..98629d364feb 100644 --- a/platform/platform-api/src/com/intellij/execution/ui/FragmentedSettingsEditor.java +++ b/platform/platform-api/src/com/intellij/execution/ui/FragmentedSettingsEditor.java @@ -51,7 +51,7 @@ public abstract class FragmentedSettingsEditor options = settings.getSelectedOptions(); - for (SettingsEditorFragment fragment : getAllFragments().collect(Collectors.toList())) { + for (SettingsEditorFragment fragment : getAllFragments().toList()) { FragmentedSettings.Option option = ContainerUtil.find(options, o -> fragment.getId().equals(o.getName())); fragment.setSelected(option == null ? fragment.isInitiallyVisible(settings) : option.getVisible()); } @@ -60,7 +60,7 @@ public abstract class FragmentedSettingsEditor f.validate(settings)); List options = fragments.stream().filter(fragment -> (isDefaultSettings() || fragment.isCanBeHidden()) && diff --git a/platform/platform-api/src/com/intellij/util/net/ssl/ConfirmingTrustManager.java b/platform/platform-api/src/com/intellij/util/net/ssl/ConfirmingTrustManager.java index 4c8937f3e99b..6fee0003f4d6 100644 --- a/platform/platform-api/src/com/intellij/util/net/ssl/ConfirmingTrustManager.java +++ b/platform/platform-api/src/com/intellij/util/net/ssl/ConfirmingTrustManager.java @@ -106,7 +106,7 @@ public final class ConfirmingTrustManager extends ClientOnlyTrustManager { Arrays.stream(x509TrustManager.getAcceptedIssuers()) .map(certificate -> certificate.getSubjectX500Principal().toString()) .sorted() - .collect(Collectors.toList()); + .toList(); LOG.debug("Accepted trusted certificate roots from the system: \n" + StringUtil.join(acceptedRoots, "\n")); return x509TrustManager; diff --git a/platform/platform-cds-agent/src/com/intellij/platform/cdsAgent/LogLoadedApplicationClassesAgent.java b/platform/platform-cds-agent/src/com/intellij/platform/cdsAgent/LogLoadedApplicationClassesAgent.java index 69836a067239..1e0fec5b1ac3 100644 --- a/platform/platform-cds-agent/src/com/intellij/platform/cdsAgent/LogLoadedApplicationClassesAgent.java +++ b/platform/platform-cds-agent/src/com/intellij/platform/cdsAgent/LogLoadedApplicationClassesAgent.java @@ -467,7 +467,7 @@ public final class LogLoadedApplicationClassesAgent { @NotNull public List generateReportWarnings() { - List allInfos = myClasses.values().stream().sorted(Comparator.comparing(info -> info.name)).collect(Collectors.toList()); + List allInfos = myClasses.values().stream().sorted(Comparator.comparing(info -> info.name)).toList(); List lines = new ArrayList<>(); lines.add("Pre 1.6 classes:"); diff --git a/platform/platform-impl/src/com/intellij/ide/plugins/RepositoryHelper.java b/platform/platform-impl/src/com/intellij/ide/plugins/RepositoryHelper.java index 23268f65e99c..d2178f11c398 100644 --- a/platform/platform-impl/src/com/intellij/ide/plugins/RepositoryHelper.java +++ b/platform/platform-impl/src/com/intellij/ide/plugins/RepositoryHelper.java @@ -142,10 +142,7 @@ public final class RepositoryHelper { addMarketplacePluginDependencyIfRequired(node, isPaidPluginsRequireMarketplacePlugin); } - return result - .values() - .stream() - .collect(Collectors.toUnmodifiableList()); + return List.copyOf(result.values()); } /** diff --git a/platform/platform-impl/src/com/intellij/ide/plugins/newui/MultiSelectionEventHandler.java b/platform/platform-impl/src/com/intellij/ide/plugins/newui/MultiSelectionEventHandler.java index e19e3893086d..05fab70def04 100644 --- a/platform/platform-impl/src/com/intellij/ide/plugins/newui/MultiSelectionEventHandler.java +++ b/platform/platform-impl/src/com/intellij/ide/plugins/newui/MultiSelectionEventHandler.java @@ -286,8 +286,7 @@ public class MultiSelectionEventHandler extends EventHandler { @Override public final @NotNull List getSelection() { return myComponents.stream() - .filter(component -> component.getSelection() == SelectionType.SELECTION) - .collect(Collectors.toUnmodifiableList()); + .filter(component -> component.getSelection() == SelectionType.SELECTION).toList(); } @Override diff --git a/platform/platform-impl/src/com/intellij/openapi/vfs/newvfs/persistent/PersistentFSConnector.java b/platform/platform-impl/src/com/intellij/openapi/vfs/newvfs/persistent/PersistentFSConnector.java index 6aeafa4d114c..b6822429b856 100644 --- a/platform/platform-impl/src/com/intellij/openapi/vfs/newvfs/persistent/PersistentFSConnector.java +++ b/platform/platform-impl/src/com/intellij/openapi/vfs/newvfs/persistent/PersistentFSConnector.java @@ -98,7 +98,7 @@ final class PersistentFSConnector { if (traceNumeratorOps) { try (Stream files = Files.list(basePath)) { List nameEnumeratorFiles = - files.filter(p -> p.getFileName().toString().startsWith(namesFile.getFileName().toString())).collect(Collectors.toList()); + files.filter(p -> p.getFileName().toString().startsWith(namesFile.getFileName().toString())).toList(); LOG.info("Existing name enumerator files: " + nameEnumeratorFiles); } } diff --git a/platform/platform-tests/testSrc/com/intellij/internal/DumpTestEnvironmentTest.java b/platform/platform-tests/testSrc/com/intellij/internal/DumpTestEnvironmentTest.java index 2c660a644c5e..4380cea3e8cd 100644 --- a/platform/platform-tests/testSrc/com/intellij/internal/DumpTestEnvironmentTest.java +++ b/platform/platform-tests/testSrc/com/intellij/internal/DumpTestEnvironmentTest.java @@ -4,6 +4,7 @@ package com.intellij.internal; import com.intellij.openapi.util.text.StringUtil; import com.intellij.util.ReflectionUtil; import com.intellij.util.containers.ContainerUtil; +import one.util.streamex.StreamEx; import org.junit.Assert; import org.junit.Test; @@ -17,16 +18,13 @@ public class DumpTestEnvironmentTest { @Test public void dumpEnvironment() throws Exception { Properties properties = System.getProperties(); - for (String propertyName : properties.keySet().stream().map(String.class::cast).sorted().collect(Collectors.toList())) { - System.out.println("PROPERTY " + propertyName + " = " + - (isSecretParameter(propertyName) ? "[REDACTED]" : properties.getProperty(propertyName))); + StreamEx.ofKeys(properties).map(String.class::cast).sorted() + .map(propertyName -> "PROPERTY " + propertyName + " = " + (isSecretParameter(propertyName) ? "[REDACTED]" : properties.getProperty(propertyName))) + .forEach(System.out::println); - } - - for (String key : System.getenv().keySet().stream().sorted().collect(Collectors.toList())) { - System.out.println("ENV " + key + " = " + - (isSecretParameter(key) ? "[REDACTED]" : System.getenv(key))); - } + StreamEx.ofKeys(System.getenv()).sorted() + .map(key -> "ENV " + key + " = " + (isSecretParameter(key) ? "[REDACTED]" : System.getenv(key))) + .forEach(System.out::println); System.out.println("*** Classloaders NOT SORTED CLASSPATH ***"); dumpClassloader(getClass().getClassLoader(), false, 0); diff --git a/platform/platform-tests/testSrc/com/intellij/util/AlarmTest.java b/platform/platform-tests/testSrc/com/intellij/util/AlarmTest.java index ca75c32aac5e..db1e6b23ac32 100644 --- a/platform/platform-tests/testSrc/com/intellij/util/AlarmTest.java +++ b/platform/platform-tests/testSrc/com/intellij/util/AlarmTest.java @@ -85,7 +85,7 @@ package com.intellij.util; Set used = ContainerUtil.newConcurrentSet(); AtomicInteger executed = new AtomicInteger(); int N = 100000; - List alarms = Stream.generate(() -> new Alarm(getTestRootDisposable())).limit(N).collect(Collectors.toList()); + List alarms = Stream.generate(() -> new Alarm(getTestRootDisposable())).limit(N).toList(); alarms.forEach(alarm -> alarm.addRequest(() -> { executed.incrementAndGet(); used.add(Thread.currentThread()); diff --git a/platform/platform-tests/testSrc/com/intellij/util/concurrency/AppScheduledExecutorServiceTest.java b/platform/platform-tests/testSrc/com/intellij/util/concurrency/AppScheduledExecutorServiceTest.java index dacc2add1f5c..1248e5efa03b 100644 --- a/platform/platform-tests/testSrc/com/intellij/util/concurrency/AppScheduledExecutorServiceTest.java +++ b/platform/platform-tests/testSrc/com/intellij/util/concurrency/AppScheduledExecutorServiceTest.java @@ -94,7 +94,7 @@ public class AppScheduledExecutorServiceTest extends CatchLogErrorsInAllThreadsT Future f4 = service.submit((Runnable)() -> log.add(new LogInfo(0))); - assertTrue(f.stream().noneMatch(Future::isDone)); + assertFalse(ContainerUtil.exists(f, Future::isDone)); TimeoutUtil.sleep(delay/2); Stream, Boolean>> done = f.stream().map(f1 -> Pair.create(f1, f1.isDone())); diff --git a/platform/platform-tests/testSrc/com/intellij/util/concurrency/BoundedTaskExecutorTest.java b/platform/platform-tests/testSrc/com/intellij/util/concurrency/BoundedTaskExecutorTest.java index 971ff2d9f520..e6fd64de63d5 100644 --- a/platform/platform-tests/testSrc/com/intellij/util/concurrency/BoundedTaskExecutorTest.java +++ b/platform/platform-tests/testSrc/com/intellij/util/concurrency/BoundedTaskExecutorTest.java @@ -52,7 +52,7 @@ public class BoundedTaskExecutorTest extends CatchLogErrorsInAllThreadsTestCase .filter(thread -> thread.getName().startsWith(AppScheduledExecutorService.POOLED_THREAD_PREFIX)) .filter(thread -> thread.getState() == Thread.State.RUNNABLE) .filter(thread -> thread.getStackTrace().length != 0) // there can be RUNNABLE zombies with empty stacktrace - .collect(Collectors.toList()); + .toList(); long finish = System.currentTimeMillis(); if (alive.isEmpty()) break; diff --git a/platform/remote-servers/impl/src/com/intellij/remoteServer/impl/runtime/ServerConnectionImpl.java b/platform/remote-servers/impl/src/com/intellij/remoteServer/impl/runtime/ServerConnectionImpl.java index 0fab0ba15be7..2eed353e2c3d 100644 --- a/platform/remote-servers/impl/src/com/intellij/remoteServer/impl/runtime/ServerConnectionImpl.java +++ b/platform/remote-servers/impl/src/com/intellij/remoteServer/impl/runtime/ServerConnectionImpl.java @@ -244,7 +244,7 @@ public class ServerConnectionImpl implements .map(nextForProject -> nextForProject.findManager(deployment)) .filter(Objects::nonNull) .map(DeploymentLogManagerImpl::getMainLoggingHandler) - .collect(Collectors.toList()); + .toList(); final Consumer logConsumer = message -> { if (handlers.isEmpty()) { diff --git a/platform/smRunner/src/com/intellij/execution/testframework/sm/runner/history/actions/ImportTestsGroup.java b/platform/smRunner/src/com/intellij/execution/testframework/sm/runner/history/actions/ImportTestsGroup.java index 4964b4ee9fbc..953b4bedf24b 100644 --- a/platform/smRunner/src/com/intellij/execution/testframework/sm/runner/history/actions/ImportTestsGroup.java +++ b/platform/smRunner/src/com/intellij/execution/testframework/sm/runner/history/actions/ImportTestsGroup.java @@ -18,6 +18,7 @@ import org.jetbrains.annotations.Nullable; import java.io.File; import java.util.Collection; +import java.util.Comparator; import java.util.List; import java.util.stream.Collectors; @@ -50,8 +51,8 @@ public class ImportTestsGroup extends ActionGroup { final List fileNames = filePaths.stream() .map(fileName -> new File(testHistoryRoot, fileName)) .filter(file -> file.exists()) - .sorted((f1, f2) -> Long.compare(f2.lastModified(), f1.lastModified())) - .collect(Collectors.toList()); + .sorted(Comparator.comparingLong(File::lastModified).reversed()) + .toList(); final int historySize = fileNames.size(); final AnAction[] actions = new AnAction[historySize]; for (int i = 0; i < historySize; i++) { diff --git a/platform/statistics/src/com/intellij/internal/statistic/eventLog/ShortcutDataProvider.java b/platform/statistics/src/com/intellij/internal/statistic/eventLog/ShortcutDataProvider.java index 6a8747bc2872..935e1572c8c8 100644 --- a/platform/statistics/src/com/intellij/internal/statistic/eventLog/ShortcutDataProvider.java +++ b/platform/statistics/src/com/intellij/internal/statistic/eventLog/ShortcutDataProvider.java @@ -162,7 +162,7 @@ public final class ShortcutDataProvider { private static String getLocaleUnawareKeyModifiersText(int modifiers) { List pressed = ourModifiers.stream() .filter(p -> (p.first & modifiers) != 0) - .map(p -> p.second).collect(Collectors.toList()); + .map(p -> p.second).toList(); return StringUtil.join(pressed, "+"); } diff --git a/platform/testFramework/bootstrap/src/com/intellij/tests/Retries.java b/platform/testFramework/bootstrap/src/com/intellij/tests/Retries.java index 9e2394547355..45eb9c09ec9c 100644 --- a/platform/testFramework/bootstrap/src/com/intellij/tests/Retries.java +++ b/platform/testFramework/bootstrap/src/com/intellij/tests/Retries.java @@ -63,8 +63,7 @@ public final class Retries { private static Optional getMethodFromClass(Class clazz, String methodName) { @SuppressWarnings("SSBasedInspection") var methods = Arrays.stream(clazz.getDeclaredMethods()) - .filter(method -> methodName.equals(method.getName())) - .collect(Collectors.toList()); + .filter(method -> methodName.equals(method.getName())).toList(); if (methods.size() == 1) { return Optional.of(methods.get(0)); } diff --git a/platform/testFramework/src/com/intellij/testFramework/EditorTestUtil.java b/platform/testFramework/src/com/intellij/testFramework/EditorTestUtil.java index 149e33364d67..2f5fd8ff9ef0 100644 --- a/platform/testFramework/src/com/intellij/testFramework/EditorTestUtil.java +++ b/platform/testFramework/src/com/intellij/testFramework/EditorTestUtil.java @@ -820,7 +820,7 @@ public final class EditorTestUtil { Pair.create(it.getEndOffset(), "") ); }) - .sorted(MARKERS_COMPARATOR).collect(Collectors.toList()); + .sorted(MARKERS_COMPARATOR).toList(); StringBuilder sb = new StringBuilder(); int lastEnd = 0; diff --git a/platform/testFramework/src/com/intellij/testFramework/fixtures/impl/CodeInsightTestFixtureImpl.java b/platform/testFramework/src/com/intellij/testFramework/fixtures/impl/CodeInsightTestFixtureImpl.java index 3dbe8f0015e9..521a47bcdcb9 100644 --- a/platform/testFramework/src/com/intellij/testFramework/fixtures/impl/CodeInsightTestFixtureImpl.java +++ b/platform/testFramework/src/com/intellij/testFramework/fixtures/impl/CodeInsightTestFixtureImpl.java @@ -550,8 +550,7 @@ public class CodeInsightTestFixtureImpl extends BaseFixture implements CodeInsig new ExpectedHighlightingData(document, checkWarnings, checkWeakWarnings, checkInfos, false, myMessageBundles); datum.init(); return Trinity.create(psiFile, createEditor(file), datum); - }) - .collect(Collectors.toList()); + }).toList(); long elapsed = 0; for (Trinity trinity : data) { setFileAndEditor(trinity.first.getVirtualFile(), trinity.second); diff --git a/platform/vcs-impl/src/com/intellij/vcs/commit/message/ReformatCommitMessageAction.java b/platform/vcs-impl/src/com/intellij/vcs/commit/message/ReformatCommitMessageAction.java index 1487c413059a..da6725ab1390 100644 --- a/platform/vcs-impl/src/com/intellij/vcs/commit/message/ReformatCommitMessageAction.java +++ b/platform/vcs-impl/src/com/intellij/vcs/commit/message/ReformatCommitMessageAction.java @@ -58,7 +58,7 @@ public class ReformatCommitMessageAction extends DumbAwareAction { @RequiresWriteLock public static void reformat(@NotNull Project project, @NotNull Document document) { - List inspections = getEnabledInspections(project).collect(toList()); + List inspections = getEnabledInspections(project).toList(); inspections.forEach(inspection -> inspection.reformat(project, document)); } diff --git a/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogImpl.java b/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogImpl.java index 1e5fbfe2e827..c3fa6fb62f99 100644 --- a/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogImpl.java +++ b/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogImpl.java @@ -74,7 +74,7 @@ public class VcsLogImpl implements VcsLog { SettableFuture future = SettableFuture.create(); VcsLogRefs refs = myUi.getDataPack().getRefs(); ApplicationManager.getApplication().executeOnPooledThread(() -> { - List matchingRefs = refs.stream().filter(ref -> ref.getName().startsWith(reference)).collect(Collectors.toList()); + List matchingRefs = refs.stream().filter(ref -> ref.getName().startsWith(reference)).toList(); ApplicationManager.getApplication().invokeLater(() -> { if (matchingRefs.isEmpty()) { future.setFuture(jumpToHash(reference, focus)); diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/psiutils/ClassUtils.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/psiutils/ClassUtils.java index a1be6b9c0ec9..7923183ff6eb 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/psiutils/ClassUtils.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/psiutils/ClassUtils.java @@ -366,7 +366,7 @@ public final class ClassUtils { .filter(innerClass -> innerClass.hasModifierProperty(PsiModifier.STATIC)) .flatMap(innerClass -> Arrays.stream(innerClass.getFields()))); - final List fields = fieldStream.filter(field -> resolveToSingletonField(aClass, field)).limit(2).collect(Collectors.toList()); + final List fields = fieldStream.filter(field -> resolveToSingletonField(aClass, field)).limit(2).toList(); return fields.size() == 1 ? fields.get(0) : null; } diff --git a/plugins/InspectionGadgets/src/com/siyeh/ig/bugs/MismatchedCollectionQueryUpdateInspection.java b/plugins/InspectionGadgets/src/com/siyeh/ig/bugs/MismatchedCollectionQueryUpdateInspection.java index f6bfa5d13e2d..4961bddb559f 100644 --- a/plugins/InspectionGadgets/src/com/siyeh/ig/bugs/MismatchedCollectionQueryUpdateInspection.java +++ b/plugins/InspectionGadgets/src/com/siyeh/ig/bugs/MismatchedCollectionQueryUpdateInspection.java @@ -501,7 +501,7 @@ public class MismatchedCollectionQueryUpdateInspection extends BaseInspection { if (written) { PsiExpression initializer = variable.getInitializer(); if (initializer != null) { - List expressions = ExpressionUtils.nonStructuralChildren(initializer).collect(Collectors.toList()); + List expressions = ExpressionUtils.nonStructuralChildren(initializer).toList(); if (!ContainerUtil.and(expressions, MismatchedCollectionQueryUpdateInspection::isCollectionInitializer)) { expressions.stream().filter(MismatchedCollectionQueryUpdateInspection::isCollectionInitializer) .forEach(emptyCollection -> registerError(emptyCollection, Boolean.TRUE)); diff --git a/plugins/editorconfig/src/org/editorconfig/configmanagement/export/EditorConfigSettingsWriter.java b/plugins/editorconfig/src/org/editorconfig/configmanagement/export/EditorConfigSettingsWriter.java index 3712398d0153..69b46ff1b692 100644 --- a/plugins/editorconfig/src/org/editorconfig/configmanagement/export/EditorConfigSettingsWriter.java +++ b/plugins/editorconfig/src/org/editorconfig/configmanagement/export/EditorConfigSettingsWriter.java @@ -125,13 +125,13 @@ public class EditorConfigSettingsWriter extends OutputStreamWriter { } } }); - for (String pattern : mappers.keySet().stream().sorted().collect(Collectors.toList())) { + for (String pattern : mappers.keySet().stream().sorted().toList()) { if (pattern.isEmpty()) continue; String currPattern = pattern; for ( LanguageCodeStylePropertyMapper mapper : mappers.get(pattern).stream() - .sorted(Comparator.comparing(mapper -> mapper.getLanguageDomainId())).collect(Collectors.toList())) { + .sorted(Comparator.comparing(mapper -> mapper.getLanguageDomainId())).toList()) { if (writeLangSection(mapper, currPattern)) { currPattern = null; // Do not write again } diff --git a/plugins/gradle/java/testSources/compiler/GradleDelegatedBuildTest.java b/plugins/gradle/java/testSources/compiler/GradleDelegatedBuildTest.java index d67ac9979ac3..3c6f75ce89bd 100644 --- a/plugins/gradle/java/testSources/compiler/GradleDelegatedBuildTest.java +++ b/plugins/gradle/java/testSources/compiler/GradleDelegatedBuildTest.java @@ -193,7 +193,7 @@ public class GradleDelegatedBuildTest extends GradleDelegatedBuildTestCase { @Override public void finished(@NotNull ProjectTaskManager.Result result) { result.getContext().getDirtyOutputPaths() - .ifPresent(paths -> dirtyOutputRoots.addAll(paths.map(PathUtil::toSystemIndependentName).collect(Collectors.toList()))); + .ifPresent(paths -> dirtyOutputRoots.addAll(paths.map(PathUtil::toSystemIndependentName).toList())); } }); diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/service/task/GradleTaskManager.java b/plugins/gradle/src/org/jetbrains/plugins/gradle/service/task/GradleTaskManager.java index 80b0f997ffb6..aca0d21cc81d 100644 --- a/plugins/gradle/src/org/jetbrains/plugins/gradle/service/task/GradleTaskManager.java +++ b/plugins/gradle/src/org/jetbrains/plugins/gradle/service/task/GradleTaskManager.java @@ -225,7 +225,7 @@ public class GradleTaskManager implements ExternalSystemTaskManager initScripts = new ArrayList<>(); - List extensions = GradleProjectResolverUtil.createProjectResolvers(null).collect(Collectors.toList()); + List extensions = GradleProjectResolverUtil.createProjectResolvers(null).toList(); for (GradleProjectResolverExtension resolverExtension : extensions) { final String resolverClassName = resolverExtension.getClass().getName(); Consumer initScriptConsumer = script -> { diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/util/GradleUtil.java b/plugins/gradle/src/org/jetbrains/plugins/gradle/util/GradleUtil.java index 9b0dac334eb0..e1009ef59b5d 100644 --- a/plugins/gradle/src/org/jetbrains/plugins/gradle/util/GradleUtil.java +++ b/plugins/gradle/src/org/jetbrains/plugins/gradle/util/GradleUtil.java @@ -219,7 +219,7 @@ public final class GradleUtil { try (Stream pathsStream = Files.list(wrapperDir)) { List candidates = pathsStream .filter(path -> FileUtilRt.extensionEquals(path.getFileName().toString(), "properties") && Files.isRegularFile(path)) - .collect(Collectors.toList()); + .toList(); if (candidates.isEmpty()) { GradleLog.LOG.warn("No *.properties file is found at the gradle wrapper directory " + wrapperDir); diff --git a/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgHistoryUtil.java b/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgHistoryUtil.java index 61cba44544c9..c2883cb40876 100644 --- a/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgHistoryUtil.java +++ b/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgHistoryUtil.java @@ -139,7 +139,7 @@ public final class HgHistoryUtil { HgRevisionNumber vcsRevisionNumber = revision.getRevisionNumber(); List parents = vcsRevisionNumber.getParents(); - for (HgRevisionNumber parent : parents.stream().skip(1).collect(Collectors.toList())) { + for (HgRevisionNumber parent : parents.stream().skip(1).toList()) { reportedChanges.add(getChangesFromParent(project, root, vcsRevisionNumber, parent)); } diff --git a/plugins/javaFX/src/org/jetbrains/plugins/javaFX/sceneBuilder/SceneBuilderUtil.java b/plugins/javaFX/src/org/jetbrains/plugins/javaFX/sceneBuilder/SceneBuilderUtil.java index ff0f4b468094..204dd18d6fc9 100644 --- a/plugins/javaFX/src/org/jetbrains/plugins/javaFX/sceneBuilder/SceneBuilderUtil.java +++ b/plugins/javaFX/src/org/jetbrains/plugins/javaFX/sceneBuilder/SceneBuilderUtil.java @@ -100,7 +100,7 @@ final class SceneBuilderUtil { .filter(path -> { String name = path.toFile().getName(); return name.startsWith(artifact + "-" + JAVAFX_VERSION) && name.endsWith(".jar"); //include os-specific jars - }).collect(Collectors.toList()); + }).toList(); for (Path path : paths) { urls.add(path.toUri().toURL()); diff --git a/plugins/lombok/src/test/java/de/plushnikov/intellij/plugin/AbstractLombokParsingTestCase.java b/plugins/lombok/src/test/java/de/plushnikov/intellij/plugin/AbstractLombokParsingTestCase.java index b69374fcdbcb..95f1f94db670 100644 --- a/plugins/lombok/src/test/java/de/plushnikov/intellij/plugin/AbstractLombokParsingTestCase.java +++ b/plugins/lombok/src/test/java/de/plushnikov/intellij/plugin/AbstractLombokParsingTestCase.java @@ -182,12 +182,10 @@ public abstract class AbstractLombokParsingTestCase extends AbstractLombokLightC Collection beforeAnnotations = Arrays.stream(beforeModifierList.getAnnotations()) .map(PsiAnnotation::getQualifiedName) .filter(Pattern.compile("lombok.*").asPredicate().negate().or(LombokClassNames.NON_NULL::equals)) - .filter(Pattern.compile(annotationToComparePattern()).asPredicate()) - .collect(Collectors.toList()); + .filter(Pattern.compile(annotationToComparePattern()).asPredicate()).toList(); Collection afterAnnotations = Arrays.stream(afterModifierList.getAnnotations()) .map(PsiAnnotation::getQualifiedName) - .filter(Pattern.compile(annotationToComparePattern()).asPredicate()) - .collect(Collectors.toList()); + .filter(Pattern.compile(annotationToComparePattern()).asPredicate()).toList(); assertTrue("Annotations are different for " + afterModifierList.getParent(), beforeAnnotations.size() == afterAnnotations.size() diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/MavenRunnerPanel.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/MavenRunnerPanel.java index 91e4031d3dda..7819945c4040 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/MavenRunnerPanel.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/MavenRunnerPanel.java @@ -221,7 +221,7 @@ public class MavenRunnerPanel implements MavenSettingsObservable { if (!localTarget) { List items = IntStream.range(0, myTargetJdkCombo.getItemCount()) .mapToObj(i -> myTargetJdkCombo.getItemAt(i)) - .collect(Collectors.toList()); + .toList(); List targetItems = new ArrayList<>(); TargetEnvironmentConfiguration targetEnvironmentConfiguration = TargetEnvironmentsManager.getInstance(myProject) diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManager.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManager.java index ed868e15baff..af9b516155fb 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManager.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsManager.java @@ -791,7 +791,7 @@ public class MavenProjectsManager extends MavenSimpleProjectComponent return VirtualFileManager.getInstance().findFileByUrl(pomFileUrl); } for (VirtualFile root : modelsProvider.getContentRoots(module)) { - List pomFiles = MavenUtil.streamPomFiles(module.getProject(), root).collect(Collectors.toList()); + List pomFiles = MavenUtil.streamPomFiles(module.getProject(), root).toList(); if (pomFiles.isEmpty()) { continue; } diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsTree.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsTree.java index a84341a1a0e7..a27c32e30462 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsTree.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsTree.java @@ -22,6 +22,8 @@ import com.intellij.util.containers.Stack; import com.intellij.util.io.PathKt; import it.unimi.dsi.fastutil.Hash; import it.unimi.dsi.fastutil.objects.ObjectOpenCustomHashSet; +import one.util.streamex.MoreCollectors; +import one.util.streamex.StreamEx; import org.jdom.Element; import org.jdom.output.Format; import org.jdom.output.XMLOutputter; @@ -1064,11 +1066,10 @@ public final class MavenProjectsTree { public MavenProject findSingleProjectInReactor(MavenId id) { readLock(); try { - List list = myMavenIdToProjectMapping.values().stream().filter( - it -> StringUtil.equals(it.getMavenId().getArtifactId(), id.getArtifactId()) && - StringUtil.equals(it.getMavenId().getGroupId(), id.getGroupId()) - ).collect(Collectors.toList()); - return list.size() == 1 ? list.get(0) : null; + return StreamEx.ofValues(myMavenIdToProjectMapping) + .collect(MoreCollectors.onlyOne(it -> StringUtil.equals(it.getMavenId().getArtifactId(), id.getArtifactId()) && + StringUtil.equals(it.getMavenId().getGroupId(), id.getGroupId()))) + .orElse(null); } finally { readUnlock(); diff --git a/plugins/maven/testFramework/src/com/intellij/maven/testFramework/MavenWrapperTestFixture.java b/plugins/maven/testFramework/src/com/intellij/maven/testFramework/MavenWrapperTestFixture.java index cb1c7266ff72..62edda24b078 100644 --- a/plugins/maven/testFramework/src/com/intellij/maven/testFramework/MavenWrapperTestFixture.java +++ b/plugins/maven/testFramework/src/com/intellij/maven/testFramework/MavenWrapperTestFixture.java @@ -60,7 +60,7 @@ public class MavenWrapperTestFixture { .flatMap(e -> e.getChildren().stream()) .filter(e -> "snapshot".equals(e.getName())) .flatMap(e -> e.getChildren().stream()) - .collect(Collectors.toList()); + .toList(); String timestamp = null; String build = null; for(Element e: timestampAndBuild){ diff --git a/plugins/textmate/core/src/org/jetbrains/plugins/textmate/bundles/VSCBundle.java b/plugins/textmate/core/src/org/jetbrains/plugins/textmate/bundles/VSCBundle.java index c0bdc69de1d3..127e8b9d9385 100644 --- a/plugins/textmate/core/src/org/jetbrains/plugins/textmate/bundles/VSCBundle.java +++ b/plugins/textmate/core/src/org/jetbrains/plugins/textmate/bundles/VSCBundle.java @@ -77,7 +77,7 @@ public class VSCBundle extends Bundle { if (extensions instanceof ArrayList) { //noinspection unchecked Stream stream = ((ArrayList)extensions).stream().map(ext -> Strings.trimStart((String)ext, ".")); - idToExtension.computeIfAbsent((String)id, (key) -> new HashSet<>()).addAll(stream.collect(Collectors.toList())); + idToExtension.computeIfAbsent((String)id, (key) -> new HashSet<>()).addAll(stream.toList()); } Object filenames = ((Map)language).get("filenames"); if (filenames instanceof ArrayList) { diff --git a/plugins/textmate/core/src/org/jetbrains/plugins/textmate/language/syntax/lexer/TextMateLexer.java b/plugins/textmate/core/src/org/jetbrains/plugins/textmate/language/syntax/lexer/TextMateLexer.java index 3fa96bb7fe82..c467d45e2a8a 100644 --- a/plugins/textmate/core/src/org/jetbrains/plugins/textmate/language/syntax/lexer/TextMateLexer.java +++ b/plugins/textmate/core/src/org/jetbrains/plugins/textmate/language/syntax/lexer/TextMateLexer.java @@ -253,8 +253,7 @@ public final class TextMateLexer { if (captures != null) { List matches = SyntaxMatchUtils.matchCaptures(captures, matchData, string, line); //noinspection SSBasedInspection - List nonEmptyMatches = matches.stream().filter(m -> m.selectorName.length() > 0 && !m.range.isEmpty()) - .collect(Collectors.toList()); + List nonEmptyMatches = matches.stream().filter(m -> m.selectorName.length() > 0 && !m.range.isEmpty()).toList(); LinkedList starts = new LinkedList<>(nonEmptyMatches); Collections.sort(starts, CaptureMatchData.START_OFFSET_ORDERING); diff --git a/plugins/yaml/testSrc/org/jetbrains/yaml/breadcrumbs/YAMLBreadcrumbsTest.java b/plugins/yaml/testSrc/org/jetbrains/yaml/breadcrumbs/YAMLBreadcrumbsTest.java index 006411268fdf..c63fd6baf0d3 100644 --- a/plugins/yaml/testSrc/org/jetbrains/yaml/breadcrumbs/YAMLBreadcrumbsTest.java +++ b/plugins/yaml/testSrc/org/jetbrains/yaml/breadcrumbs/YAMLBreadcrumbsTest.java @@ -7,6 +7,7 @@ import com.intellij.openapi.editor.CaretModel; import com.intellij.openapi.ide.CopyPasteManager; import com.intellij.testFramework.fixtures.BasePlatformTestCase; import com.intellij.ui.components.breadcrumbs.Crumb; +import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.yaml.YAMLBundle; @@ -38,9 +39,7 @@ public class YAMLBreadcrumbsTest extends BasePlatformTestCase { private void doTest(@NotNull Function crumbToString) { myFixture.configureByFile("all.yml"); final CaretModel caretModel = myFixture.getEditor().getCaretModel(); - final String result = caretModel.getAllCarets().stream() - .map(Caret::getOffset) - .collect(Collectors.toList()).stream() + final String result = ContainerUtil.map(caretModel.getAllCarets(), Caret::getOffset).stream() .map((offset) -> { caretModel.moveToOffset(offset); return myFixture.getBreadcrumbsAtCaret().stream() diff --git a/python/python-psi-impl/src/com/jetbrains/python/psi/impl/references/PyOperatorReference.java b/python/python-psi-impl/src/com/jetbrains/python/psi/impl/references/PyOperatorReference.java index 4b20c811b85b..7107e70957bd 100644 --- a/python/python-psi-impl/src/com/jetbrains/python/psi/impl/references/PyOperatorReference.java +++ b/python/python-psi-impl/src/com/jetbrains/python/psi/impl/references/PyOperatorReference.java @@ -30,6 +30,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Objects; +import java.util.function.Function; import java.util.stream.Collectors; /** @@ -132,14 +133,12 @@ public class PyOperatorReference extends PyReferenceImpl { PyTypeUtil .toStream(type) .nonNull() - .map( + .flatCollection( it -> it instanceof PyClassLikeType && ((PyClassLikeType)it).isDefinition() ? resolveDefinitionMember((PyClassLikeType)it, object, name) : it.resolveMember(name, object, AccessDirection.of(myElement), myContext) ) - .filter(Objects::nonNull) - .flatMap(List::stream) - .collect(Collectors.toList()); + .toList(); if (!ContainerUtil.isEmpty(res)) { results.addAll(res); diff --git a/python/src/com/jetbrains/python/packaging/PyPackageManagerUI.java b/python/src/com/jetbrains/python/packaging/PyPackageManagerUI.java index 69cd99b524db..f148b6c99d97 100644 --- a/python/src/com/jetbrains/python/packaging/PyPackageManagerUI.java +++ b/python/src/com/jetbrains/python/packaging/PyPackageManagerUI.java @@ -192,7 +192,7 @@ public final class PyPackageManagerUI { req -> ContainerUtil.map(req.getInstallOptions(), option -> Pair.create(option, req.getName()))) : null; final List packageManagerArguments = exceptions.stream() .flatMap(e -> (e instanceof PyExecutionException) ? ((PyExecutionException)e).getArgs().stream() : null) - .collect(Collectors.toList()); + .toList(); final String packageNames = requirements != null ? requirements.stream() .filter(req -> packageManagerArguments.contains(req.first)) .map(req -> req.second) diff --git a/python/testSrc/com/jetbrains/python/PyOverrideTest.java b/python/testSrc/com/jetbrains/python/PyOverrideTest.java index 5b015aff3408..b07130da02d3 100644 --- a/python/testSrc/com/jetbrains/python/PyOverrideTest.java +++ b/python/testSrc/com/jetbrains/python/PyOverrideTest.java @@ -190,10 +190,7 @@ public class PyOverrideTest extends PyTestCase { final String importFilePath = String.format("override/%s_import.py", testName); final String resultFilePath = String.format("override/%s_after.py", testName); - List pyFiles = Arrays.stream( - myFixture.configureByFiles(initialFilePath, importFilePath)) - .map(PyFile.class::cast) - .collect(Collectors.toList()); + List pyFiles = ContainerUtil.map(myFixture.configureByFiles(initialFilePath, importFilePath), PyFile.class::cast); PyFunction toOverride = pyFiles.get(1).getTopLevelClasses().get(orderOfClassToOverride).getMethods()[0]; PyOverrideImplementUtil.overrideMethods(myFixture.getEditor(), getTopLevelClass(0), diff --git a/xml/tests/src/com/intellij/codeInspection/htmlInspections/HtmlMissingClosingTagInspectionTest.java b/xml/tests/src/com/intellij/codeInspection/htmlInspections/HtmlMissingClosingTagInspectionTest.java index 4eb5123fba3a..dc2e5fa3ff3b 100644 --- a/xml/tests/src/com/intellij/codeInspection/htmlInspections/HtmlMissingClosingTagInspectionTest.java +++ b/xml/tests/src/com/intellij/codeInspection/htmlInspections/HtmlMissingClosingTagInspectionTest.java @@ -82,7 +82,7 @@ public class HtmlMissingClosingTagInspectionTest extends BasePlatformTestCase { protected IntentionAction findIntention(@NotNull final String hint) { final List allIntentions = myFixture.getAvailableIntentions(); final List intentions = - allIntentions.stream().filter(action -> action.getText().startsWith(hint)).limit(2).collect(Collectors.toList()); + allIntentions.stream().filter(action -> action.getText().startsWith(hint)).limit(2).toList(); Assert.assertFalse("\"" + hint + "\" not in " + intentions, intentions.isEmpty()); Assert.assertFalse("Too many quickfixes found for \"" + hint + "\": " + intentions + "]", intentions.size() > 1); return intentions.get(0); diff --git a/xml/xml-psi-impl/src/com/intellij/lexer/BaseHtmlLexer.java b/xml/xml-psi-impl/src/com/intellij/lexer/BaseHtmlLexer.java index e095123e5927..54c479ab8f09 100644 --- a/xml/xml-psi-impl/src/com/intellij/lexer/BaseHtmlLexer.java +++ b/xml/xml-psi-impl/src/com/intellij/lexer/BaseHtmlLexer.java @@ -55,7 +55,7 @@ public abstract class BaseHtmlLexer extends DelegateLexer { .map(factory -> factory.createEmbeddedContentProviders(this)) .flatMap(Collection::stream) .filter(this::acceptEmbeddedContentProvider) - .collect(Collectors.toUnmodifiableList()); + .toList(); myTagEmbedmentStartTokens = createTagEmbedmentStartTokenSet(); myAttributeEmbedmentTokens = createAttributeEmbedmentTokenSet(); }