diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/TreeUtil.java b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/TreeUtil.java index 6e1cd4cb89fe..173aed12cb63 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/TreeUtil.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/TreeUtil.java @@ -118,8 +118,7 @@ public class TreeUtil { } public static boolean isLeafOrCollapsedChameleon(ASTNode node) { - return node instanceof LeafElement || - node instanceof LazyParseableElement && !((LazyParseableElement)node).isParsed(); + return node instanceof LeafElement || isCollapsedChameleon(node); } @Nullable diff --git a/platform/platform-impl/src/com/intellij/openapi/vfs/newvfs/impl/VirtualFileSystemEntry.java b/platform/platform-impl/src/com/intellij/openapi/vfs/newvfs/impl/VirtualFileSystemEntry.java index ffe0ed3b534b..45d403a820ec 100644 --- a/platform/platform-impl/src/com/intellij/openapi/vfs/newvfs/impl/VirtualFileSystemEntry.java +++ b/platform/platform-impl/src/com/intellij/openapi/vfs/newvfs/impl/VirtualFileSystemEntry.java @@ -208,7 +208,8 @@ public abstract class VirtualFileSystemEntry extends NewVirtualFile { @Override public int hashCode() { - return myId >= 0 ? myId : -myId; + int id = myId; + return id >= 0 ? id : -id; } @NotNull diff --git a/platform/util/src/com/intellij/openapi/util/LowMemoryWatcher.java b/platform/util/src/com/intellij/openapi/util/LowMemoryWatcher.java index 75a12e9a590c..bbdf98350dea 100644 --- a/platform/util/src/com/intellij/openapi/util/LowMemoryWatcher.java +++ b/platform/util/src/com/intellij/openapi/util/LowMemoryWatcher.java @@ -18,13 +18,13 @@ package com.intellij.openapi.util; import com.intellij.openapi.Forceable; import com.intellij.openapi.diagnostic.Logger; import com.intellij.reference.SoftReference; +import com.intellij.util.containers.ContainerUtil; import java.lang.ref.ReferenceQueue; import java.lang.ref.WeakReference; import java.util.HashSet; import java.util.List; import java.util.Set; -import java.util.concurrent.CopyOnWriteArrayList; /** * @author Eugene Zhuravlev @@ -33,7 +33,7 @@ import java.util.concurrent.CopyOnWriteArrayList; public class LowMemoryWatcher { private static final long MEM_THRESHOLD = 5 /*MB*/ * 1024 * 1024; - public static abstract class ForceableAdapter implements Forceable { + public abstract static class ForceableAdapter implements Forceable { public boolean isDirty() { return true; } @@ -44,7 +44,7 @@ public class LowMemoryWatcher { private static final ReferenceQueue ourRefQueue = new ReferenceQueue(); @SuppressWarnings({"FieldCanBeLocal"}) private static SoftReference ourRef; - private static final List> ourInstances = new CopyOnWriteArrayList>(); + private static final List> ourInstances = ContainerUtil.createEmptyCOWList(); private final Forceable myForceable; @@ -62,7 +62,7 @@ public class LowMemoryWatcher { if (!shouldCleanup) { final Runtime runtime = Runtime.getRuntime(); - shouldCleanup = (runtime.maxMemory() - runtime.totalMemory()) <= MEM_THRESHOLD; + shouldCleanup = runtime.maxMemory() - runtime.totalMemory() <= MEM_THRESHOLD; } for (WeakReference instanceRef : ourInstances) { diff --git a/platform/util/src/com/intellij/util/containers/ContainerUtil.java b/platform/util/src/com/intellij/util/containers/ContainerUtil.java index cffa2990143a..daf08f3d75c0 100644 --- a/platform/util/src/com/intellij/util/containers/ContainerUtil.java +++ b/platform/util/src/com/intellij/util/containers/ContainerUtil.java @@ -827,7 +827,7 @@ public class ContainerUtil { @NotNull public static List createMaybeSingletonList(@Nullable T element) { - return element == null ? Collections.emptyList() : Arrays.asList(element); + return element == null ? Collections.emptyList() : Collections.singletonList(element); } public static V getOrCreate(@NotNull Map result, final T key, final V defaultValue) { @@ -955,7 +955,7 @@ public class ContainerUtil { if ((s = d - c) > 1) quickSort(x, comparator, n - s, s); } - /** + /* * Returns the index of the median of the three indexed longs. */ private static int med3(@NotNull List x, Comparator comparator, int a, int b, int c) { @@ -967,7 +967,7 @@ public class ContainerUtil { : comparator.compare(x.get(c), x.get(a)) < 0 ? c : a; } - /** + /* * Swaps x[a .. (a+n-1)] with x[b .. (b+n-1)]. */ private static void vecswap(List x, int a, int b, int n) {