mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Use StreamEx.ofReversed; avoid LinkedList
GitOrigin-RevId: 240c9d3eac1f729a1572a869cad7e3737d82e9b9
This commit is contained in:
committed by
intellij-monorepo-bot
parent
c4af9c199c
commit
b044a6eb2b
@@ -39,7 +39,7 @@ import static com.intellij.psi.CommonClassNames.SERIAL_VERSION_UID_FIELD_NAME;
|
||||
|
||||
public class ConvertRecordToClassFix extends LocalQuickFixAndIntentionActionOnPsiElement {
|
||||
private final LanguageLevel myLanguageLevel;
|
||||
|
||||
|
||||
public ConvertRecordToClassFix(@NotNull PsiElement candidate) {
|
||||
super(candidate);
|
||||
myLanguageLevel = PsiUtil.getLanguageLevel(candidate);
|
||||
@@ -107,10 +107,9 @@ public class ConvertRecordToClassFix extends LocalQuickFixAndIntentionActionOnPs
|
||||
@NotNull
|
||||
private String generateText(@NotNull PsiClass recordClass) {
|
||||
PsiField lastField =
|
||||
StreamEx.of(recordClass.getFields()).filter(field -> field.hasModifierProperty(PsiModifier.STATIC)).reduce((a, b) -> b)
|
||||
.orElse(null);
|
||||
StreamEx.ofReversed(recordClass.getFields()).findFirst(field -> field.hasModifierProperty(PsiModifier.STATIC)).orElse(null);
|
||||
PsiMethod lastMethod =
|
||||
StreamEx.of(recordClass.getMethods()).filter(method -> !(method instanceof SyntheticElement)).reduce((a, b) -> b).orElse(null);
|
||||
StreamEx.ofReversed(recordClass.getMethods()).findFirst(method -> !(method instanceof SyntheticElement)).orElse(null);
|
||||
PsiElement lBrace = recordClass.getLBrace();
|
||||
PsiElement insertFieldsAfter = lastField == null ? lBrace : lastField;
|
||||
PsiElement insertMethodsAfter = lastMethod == null ? insertFieldsAfter : lastMethod;
|
||||
@@ -328,7 +327,7 @@ public class ConvertRecordToClassFix extends LocalQuickFixAndIntentionActionOnPs
|
||||
:
|
||||
"if(obj == this) return true;\n" +
|
||||
"if(obj == null || obj.getClass() != this.getClass()) return false;\n" +
|
||||
(myLanguageLevel.isAtLeast(HighlightingFeature.LVTI.getLevel()) ? PsiKeyword.VAR : psiClass.getName()) +
|
||||
(myLanguageLevel.isAtLeast(HighlightingFeature.LVTI.getLevel()) ? PsiKeyword.VAR : psiClass.getName()) +
|
||||
" that = (" + psiClass.getName() + ")obj;\n" +
|
||||
"return " + equalsExpression + ";\n";
|
||||
return "@" + CommonClassNames.JAVA_LANG_OVERRIDE + "\n" +
|
||||
|
||||
+2
-2
@@ -77,7 +77,7 @@ final class PsiReflectionAccessUtil {
|
||||
}
|
||||
}
|
||||
|
||||
@Contract(value = "null -> true")
|
||||
@Contract("null -> true")
|
||||
public static boolean isQualifierAccessible(@Nullable PsiExpression qualifierExpression) {
|
||||
if (qualifierExpression == null) return true;
|
||||
PsiType type = qualifierExpression.getType();
|
||||
@@ -118,7 +118,7 @@ final class PsiReflectionAccessUtil {
|
||||
@NotNull
|
||||
private static List<PsiType> getAllAssignableSupertypes(@NotNull PsiType from, @NotNull PsiType to) {
|
||||
Set<PsiType> types = new LinkedHashSet<>();
|
||||
Queue<PsiType> queue = new LinkedList<>();
|
||||
Queue<PsiType> queue = new ArrayDeque<>();
|
||||
queue.offer(from);
|
||||
while (!queue.isEmpty()) {
|
||||
PsiType type = queue.poll();
|
||||
|
||||
@@ -7,6 +7,7 @@ import com.intellij.psi.PsiReference;
|
||||
import com.intellij.psi.util.PsiTreeUtil;
|
||||
import com.intellij.refactoring.rename.RenamePsiElementProcessor;
|
||||
import com.intellij.util.containers.MultiMap;
|
||||
import one.util.streamex.StreamEx;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.yaml.YAMLBundle;
|
||||
import org.jetbrains.yaml.psi.YAMLAnchor;
|
||||
@@ -40,7 +41,7 @@ public class YAMLRenamePsiElementProcessor extends RenamePsiElementProcessor {
|
||||
// use2: *cur
|
||||
|
||||
Predicate<YAMLAnchor> hasNewName = a -> a.getName().equals(newName);
|
||||
Optional<YAMLAnchor> prevOpt = allAnchors.subList(0, idx).stream().filter(hasNewName).reduce((x1, x2) -> x2);
|
||||
Optional<YAMLAnchor> prevOpt = StreamEx.ofReversed(allAnchors.subList(0, idx)).filter(hasNewName).findFirst();
|
||||
if (prevOpt.isPresent()) {
|
||||
YAMLAnchor prev = prevOpt.get();
|
||||
findReferences(prev, prev.getUseScope(), false).stream()
|
||||
|
||||
Reference in New Issue
Block a user