mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
three implementation specific methods were removed from api
This commit is contained in:
@@ -158,7 +158,7 @@ class ChangeTrackingValueContainer<Value> extends UpdatableValueContainer<Value>
|
||||
needsCompacting();
|
||||
}
|
||||
|
||||
public @Nullable ValueContainer<Value> getAddedDelta() {
|
||||
public @Nullable UpdatableValueContainer<Value> getAddedDelta() {
|
||||
return myAdded;
|
||||
}
|
||||
|
||||
@@ -174,7 +174,7 @@ class ChangeTrackingValueContainer<Value> extends UpdatableValueContainer<Value>
|
||||
}
|
||||
}
|
||||
|
||||
final ValueContainer<Value> toAppend = getAddedDelta();
|
||||
final UpdatableValueContainer<Value> toAppend = getAddedDelta();
|
||||
if (toAppend != null && toAppend.size() > 0) {
|
||||
toAppend.saveTo(out, externalizer);
|
||||
}
|
||||
|
||||
@@ -914,9 +914,9 @@ public class FileBasedIndexImpl extends FileBasedIndex {
|
||||
@NotNull K dataKey,
|
||||
@Nullable VirtualFile restrictToFile,
|
||||
@NotNull GlobalSearchScope scope,
|
||||
@NotNull Processor<ValueIteratorImpl<V>> valueProcessor) {
|
||||
@NotNull Processor<InvertedIndexValueIterator<V>> valueProcessor) {
|
||||
final Boolean result = processExceptions(indexId, restrictToFile, scope,
|
||||
index -> valueProcessor.process((ValueIteratorImpl<V>)index.getData(dataKey).getValueIterator()));
|
||||
index -> valueProcessor.process((InvertedIndexValueIterator<V>)index.getData(dataKey).getValueIterator()));
|
||||
return result == null || result.booleanValue();
|
||||
}
|
||||
|
||||
@@ -1065,7 +1065,7 @@ public class FileBasedIndexImpl extends FileBasedIndex {
|
||||
final TIntHashSet copy = new TIntHashSet();
|
||||
final ValueContainer<V> container = index.getData(dataKey);
|
||||
|
||||
for (ValueIteratorImpl<V> valueIt = (ValueIteratorImpl<V>)container.getValueIterator(); valueIt.hasNext(); ) {
|
||||
for (InvertedIndexValueIterator<V> valueIt = (InvertedIndexValueIterator<V>)container.getValueIterator(); valueIt.hasNext(); ) {
|
||||
final V value = valueIt.next();
|
||||
if (valueChecker != null && !valueChecker.value(value)) {
|
||||
continue;
|
||||
|
||||
@@ -73,7 +73,7 @@ class FileId2ValueMapping<Value> {
|
||||
valueContainer.removeValue(inputId, mapped);
|
||||
}
|
||||
if (DebugAssertions.EXTRA_SANITY_CHECKS && myOnePerFileValidationEnabled) {
|
||||
for (final ValueIteratorImpl<Value> valueIterator = valueContainer.getValueIterator(); valueIterator.hasNext();) {
|
||||
for (final InvertedIndexValueIterator<Value> valueIterator = valueContainer.getValueIterator(); valueIterator.hasNext();) {
|
||||
valueIterator.next();
|
||||
DebugAssertions.assertTrue(!valueIterator.getValueAssociationPredicate().contains(inputId));
|
||||
}
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@ import org.jetbrains.annotations.NotNull;
|
||||
/**
|
||||
* Created by Maxim.Mossienko on 11/22/2016.
|
||||
*/
|
||||
interface ValueIteratorImpl<Value> extends ValueContainer.ValueIterator<Value> {
|
||||
interface InvertedIndexValueIterator<Value> extends ValueContainer.ValueIterator<Value> {
|
||||
@NotNull
|
||||
IntPredicate getValueAssociationPredicate();
|
||||
|
||||
@@ -53,7 +53,7 @@ public final class MapIndexStorage<Key, Value> implements IndexStorage<Key, Valu
|
||||
private static final Logger LOG = Logger.getInstance("#com.intellij.util.indexing.MapIndexStorage");
|
||||
private static final boolean ENABLE_CACHED_HASH_IDS = SystemProperties.getBooleanProperty("idea.index.no.cashed.hashids", true);
|
||||
private final boolean myBuildKeyHashToVirtualFileMapping;
|
||||
private PersistentMap<Key, ValueContainer<Value>> myMap;
|
||||
private PersistentMap<Key, UpdatableValueContainer<Value>> myMap;
|
||||
private AppendableStorageBackedByResizableMappedFile myKeyHashToVirtualFileMapping;
|
||||
private SLRUCache<Key, ChangeTrackingValueContainer<Value>> myCache;
|
||||
private volatile int myLastScannedId;
|
||||
|
||||
@@ -16,6 +16,11 @@
|
||||
|
||||
package com.intellij.util.indexing;
|
||||
|
||||
import com.intellij.util.io.DataExternalizer;
|
||||
|
||||
import java.io.DataOutput;
|
||||
import java.io.IOException;
|
||||
|
||||
/**
|
||||
* @author Eugene Zhuravlev
|
||||
* Date: Feb 27, 2008
|
||||
@@ -35,4 +40,6 @@ public abstract class UpdatableValueContainer<T> extends ValueContainer<T>{
|
||||
void setNeedsCompacting(boolean value) {
|
||||
myNeedsCompacting = value;
|
||||
}
|
||||
|
||||
public abstract void saveTo(DataOutput out, DataExternalizer<T> externalizer) throws IOException;
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@ import com.intellij.util.SmartList;
|
||||
import com.intellij.util.containers.EmptyIterator;
|
||||
import com.intellij.util.indexing.containers.ChangeBufferingList;
|
||||
import com.intellij.util.indexing.containers.IdSet;
|
||||
import com.intellij.util.indexing.containers.IntIdsIterator;
|
||||
import com.intellij.util.io.DataExternalizer;
|
||||
import com.intellij.util.io.DataInputOutputUtil;
|
||||
import gnu.trove.THashMap;
|
||||
@@ -84,7 +85,7 @@ class ValueContainerImpl<Value> extends UpdatableValueContainer<Value> implement
|
||||
if (myInputIdMapping == null) return;
|
||||
List<Object> fileSetObjects = null;
|
||||
List<Value> valueObjects = null;
|
||||
for (final ValueIteratorImpl<Value> valueIterator = getValueIterator(); valueIterator.hasNext();) {
|
||||
for (final InvertedIndexValueIterator<Value> valueIterator = getValueIterator(); valueIterator.hasNext();) {
|
||||
final Value value = valueIterator.next();
|
||||
|
||||
if (valueIterator.getValueAssociationPredicate().contains(inputId)) {
|
||||
@@ -142,10 +143,10 @@ class ValueContainerImpl<Value> extends UpdatableValueContainer<Value> implement
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public ValueIteratorImpl<Value> getValueIterator() {
|
||||
public InvertedIndexValueIterator<Value> getValueIterator() {
|
||||
if (myInputIdMapping != null) {
|
||||
if (!(myInputIdMapping instanceof THashMap)) {
|
||||
return new ValueIteratorImpl<Value>() {
|
||||
return new InvertedIndexValueIterator<Value>() {
|
||||
private Value value = (Value)myInputIdMapping;
|
||||
|
||||
@NotNull
|
||||
@@ -184,7 +185,7 @@ class ValueContainerImpl<Value> extends UpdatableValueContainer<Value> implement
|
||||
}
|
||||
};
|
||||
} else {
|
||||
return new ValueIteratorImpl<Value>() {
|
||||
return new InvertedIndexValueIterator<Value>() {
|
||||
private Value current;
|
||||
private Object currentValue;
|
||||
private final THashMap<Value, Object> myMapping = ((THashMap<Value, Object>)myInputIdMapping);
|
||||
@@ -233,7 +234,7 @@ class ValueContainerImpl<Value> extends UpdatableValueContainer<Value> implement
|
||||
}
|
||||
}
|
||||
|
||||
static class EmptyValueIterator<Value> extends EmptyIterator<Value> implements ValueIteratorImpl<Value> {
|
||||
static class EmptyValueIterator<Value> extends EmptyIterator<Value> implements InvertedIndexValueIterator<Value> {
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
@@ -311,7 +312,7 @@ class ValueContainerImpl<Value> extends UpdatableValueContainer<Value> implement
|
||||
}
|
||||
}
|
||||
|
||||
private static final IntIterator EMPTY_ITERATOR = new IntIterator() {
|
||||
private static final IntIterator EMPTY_ITERATOR = new IntIdsIterator() {
|
||||
@Override
|
||||
public boolean hasNext() {
|
||||
return false;
|
||||
@@ -333,7 +334,7 @@ class ValueContainerImpl<Value> extends UpdatableValueContainer<Value> implement
|
||||
}
|
||||
|
||||
@Override
|
||||
public IntIterator createCopyInInitialState() {
|
||||
public IntIdsIterator createCopyInInitialState() {
|
||||
return this;
|
||||
}
|
||||
};
|
||||
@@ -410,7 +411,7 @@ class ValueContainerImpl<Value> extends UpdatableValueContainer<Value> implement
|
||||
public void saveTo(DataOutput out, DataExternalizer<Value> externalizer) throws IOException {
|
||||
DataInputOutputUtil.writeINT(out, size());
|
||||
|
||||
for (final ValueIteratorImpl<Value> valueIterator = getValueIterator(); valueIterator.hasNext();) {
|
||||
for (final InvertedIndexValueIterator<Value> valueIterator = getValueIterator(); valueIterator.hasNext();) {
|
||||
final Value value = valueIterator.next();
|
||||
externalizer.save(out, value);
|
||||
Object fileSetObject = valueIterator.getFileSetObject();
|
||||
@@ -420,7 +421,7 @@ class ValueContainerImpl<Value> extends UpdatableValueContainer<Value> implement
|
||||
} else {
|
||||
// serialize positive file ids with delta encoding
|
||||
ChangeBufferingList originalInput = (ChangeBufferingList)fileSetObject;
|
||||
IntIterator intIterator = originalInput.sortedIntIterator();
|
||||
IntIdsIterator intIterator = originalInput.sortedIntIterator();
|
||||
if (DebugAssertions.DEBUG) DebugAssertions.assertTrue(intIterator.hasAscendingOrder());
|
||||
|
||||
if (intIterator.size() == 1) {
|
||||
@@ -498,7 +499,7 @@ class ValueContainerImpl<Value> extends UpdatableValueContainer<Value> implement
|
||||
}
|
||||
}
|
||||
|
||||
private static class SingleValueIterator implements IntIterator {
|
||||
private static class SingleValueIterator implements IntIdsIterator {
|
||||
private final int myValue;
|
||||
private boolean myValueRead = false;
|
||||
|
||||
@@ -529,7 +530,7 @@ class ValueContainerImpl<Value> extends UpdatableValueContainer<Value> implement
|
||||
}
|
||||
|
||||
@Override
|
||||
public IntIterator createCopyInInitialState() {
|
||||
public IntIdsIterator createCopyInInitialState() {
|
||||
return new SingleValueIterator(myValue);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ import java.io.*;
|
||||
* @author Dmitry Avdeev
|
||||
* Date: 8/10/11
|
||||
*/
|
||||
class ValueContainerMap<Key, Value> extends PersistentHashMap<Key, ValueContainer<Value>> {
|
||||
class ValueContainerMap<Key, Value> extends PersistentHashMap<Key, UpdatableValueContainer<Value>> {
|
||||
@NotNull private final DataExternalizer<Value> myValueExternalizer;
|
||||
private final boolean myKeyIsUniqueForIndexedFile;
|
||||
|
||||
@@ -46,7 +46,7 @@ class ValueContainerMap<Key, Value> extends PersistentHashMap<Key, ValueContaine
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doPut(Key key, ValueContainer<Value> container) throws IOException {
|
||||
protected void doPut(Key key, UpdatableValueContainer<Value> container) throws IOException {
|
||||
synchronized (myEnumerator) {
|
||||
ChangeTrackingValueContainer<Value> valueContainer = (ChangeTrackingValueContainer<Value>)container;
|
||||
|
||||
@@ -68,7 +68,7 @@ class ValueContainerMap<Key, Value> extends PersistentHashMap<Key, ValueContaine
|
||||
}
|
||||
}
|
||||
|
||||
private static final class ValueContainerExternalizer<T> implements DataExternalizer<ValueContainer<T>> {
|
||||
private static final class ValueContainerExternalizer<T> implements DataExternalizer<UpdatableValueContainer<T>> {
|
||||
@NotNull private final DataExternalizer<T> myValueExternalizer;
|
||||
|
||||
private ValueContainerExternalizer(@NotNull DataExternalizer<T> valueExternalizer) {
|
||||
@@ -76,13 +76,13 @@ class ValueContainerMap<Key, Value> extends PersistentHashMap<Key, ValueContaine
|
||||
}
|
||||
|
||||
@Override
|
||||
public void save(@NotNull final DataOutput out, @NotNull final ValueContainer<T> container) throws IOException {
|
||||
public void save(@NotNull final DataOutput out, @NotNull final UpdatableValueContainer<T> container) throws IOException {
|
||||
container.saveTo(out, myValueExternalizer);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public ValueContainerImpl<T> read(@NotNull final DataInput in) throws IOException {
|
||||
public UpdatableValueContainer<T> read(@NotNull final DataInput in) throws IOException {
|
||||
final ValueContainerImpl<T> valueContainer = new ValueContainerImpl<>();
|
||||
|
||||
valueContainer.readFrom((DataInputStream)in, myValueExternalizer);
|
||||
|
||||
+5
-5
@@ -282,7 +282,7 @@ public class ChangeBufferingList implements Cloneable {
|
||||
return predicate;
|
||||
}
|
||||
|
||||
public ValueContainer.IntIterator intIterator() {
|
||||
public IntIdsIterator intIterator() {
|
||||
RandomAccessIntContainer intContainer = randomAccessContainer;
|
||||
if (intContainer == null && !hasRemovals) {
|
||||
int[] currentChanges = changes;
|
||||
@@ -298,8 +298,8 @@ public class ChangeBufferingList implements Cloneable {
|
||||
return getRandomAccessContainer().intIterator();
|
||||
}
|
||||
|
||||
public ValueContainer.IntIterator sortedIntIterator() {
|
||||
ValueContainer.IntIterator intIterator = intIterator();
|
||||
public IntIdsIterator sortedIntIterator() {
|
||||
IntIdsIterator intIterator = intIterator();
|
||||
|
||||
if (!intIterator.hasAscendingOrder()) {
|
||||
intIterator = SortedFileIdSetIterator.getTransientIterator(intIterator);
|
||||
@@ -311,7 +311,7 @@ public class ChangeBufferingList implements Cloneable {
|
||||
return checkSet;
|
||||
}
|
||||
|
||||
private static class ChangesIterator implements ValueContainer.IntIterator {
|
||||
private static class ChangesIterator implements IntIdsIterator {
|
||||
private int cursor;
|
||||
private final int length;
|
||||
private final int[] changes;
|
||||
@@ -346,7 +346,7 @@ public class ChangeBufferingList implements Cloneable {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ValueContainer.IntIterator createCopyInInitialState() {
|
||||
public IntIdsIterator createCopyInInitialState() {
|
||||
return new ChangesIterator(changes, length, sorted);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -122,7 +122,7 @@ class IdBitSet implements Cloneable, RandomAccessIntContainer {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ValueContainer.IntIterator intIterator() {
|
||||
public IntIdsIterator intIterator() {
|
||||
return new Iterator();
|
||||
}
|
||||
|
||||
@@ -197,7 +197,7 @@ class IdBitSet implements Cloneable, RandomAccessIntContainer {
|
||||
return calcCapacity(((roundToNearest(max) - roundToNearest(min)) >> SHIFT) + 1) * 8;
|
||||
}
|
||||
|
||||
private class Iterator implements ValueContainer.IntIterator {
|
||||
private class Iterator implements IntIdsIterator {
|
||||
private int nextSetBit = nextSetBit(0);
|
||||
|
||||
@Override
|
||||
@@ -223,7 +223,7 @@ class IdBitSet implements Cloneable, RandomAccessIntContainer {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ValueContainer.IntIterator createCopyInInitialState() {
|
||||
public IntIdsIterator createCopyInInitialState() {
|
||||
return new Iterator();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,7 +16,6 @@
|
||||
package com.intellij.util.indexing.containers;
|
||||
|
||||
import com.intellij.util.indexing.IntPredicate;
|
||||
import com.intellij.util.indexing.ValueContainer;
|
||||
import gnu.trove.TIntHashSet;
|
||||
|
||||
public class IdSet extends TIntHashSet implements RandomAccessIntContainer {
|
||||
@@ -47,7 +46,7 @@ public class IdSet extends TIntHashSet implements RandomAccessIntContainer {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ValueContainer.IntIterator intIterator() {
|
||||
public IntIdsIterator intIterator() {
|
||||
return new IntSetIterator();
|
||||
}
|
||||
|
||||
@@ -57,7 +56,7 @@ public class IdSet extends TIntHashSet implements RandomAccessIntContainer {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ValueContainer.IntIterator createCopyInInitialState() {
|
||||
public IntIdsIterator createCopyInInitialState() {
|
||||
return new IntSetIterator();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Copyright 2000-2016 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package com.intellij.util.indexing.containers;
|
||||
|
||||
import com.intellij.util.indexing.ValueContainer;
|
||||
|
||||
public interface IntIdsIterator extends ValueContainer.IntIterator {
|
||||
boolean hasAscendingOrder();
|
||||
|
||||
IntIdsIterator createCopyInInitialState();
|
||||
}
|
||||
+1
-2
@@ -16,7 +16,6 @@
|
||||
package com.intellij.util.indexing.containers;
|
||||
|
||||
import com.intellij.util.indexing.IntPredicate;
|
||||
import com.intellij.util.indexing.ValueContainer;
|
||||
|
||||
/**
|
||||
* Created by Maxim.Mossienko on 5/27/2014.
|
||||
@@ -25,7 +24,7 @@ interface RandomAccessIntContainer {
|
||||
Object clone();
|
||||
boolean add(int value);
|
||||
boolean remove(int value);
|
||||
ValueContainer.IntIterator intIterator();
|
||||
IntIdsIterator intIterator();
|
||||
IntPredicate intPredicate();
|
||||
void compact();
|
||||
int size();
|
||||
|
||||
+4
-5
@@ -16,12 +16,11 @@
|
||||
package com.intellij.util.indexing.containers;
|
||||
|
||||
import com.intellij.openapi.util.ThreadLocalCachedIntArray;
|
||||
import com.intellij.util.indexing.ValueContainer;
|
||||
|
||||
/**
|
||||
* Created by Maxim.Mossienko on 6/12/2014.
|
||||
*/
|
||||
public class SortedFileIdSetIterator implements ValueContainer.IntIterator {
|
||||
public class SortedFileIdSetIterator implements IntIdsIterator {
|
||||
private final int[] myBits;
|
||||
private final int myBitsLength;
|
||||
private final int myOffset;
|
||||
@@ -59,12 +58,12 @@ public class SortedFileIdSetIterator implements ValueContainer.IntIterator {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ValueContainer.IntIterator createCopyInInitialState() {
|
||||
public IntIdsIterator createCopyInInitialState() {
|
||||
return new SortedFileIdSetIterator(myBits, myBitsLength, myOffset, mySize);
|
||||
}
|
||||
|
||||
public static ValueContainer.IntIterator getTransientIterator(ValueContainer.IntIterator intIterator) {
|
||||
final ValueContainer.IntIterator intIteratorCloned = intIterator.createCopyInInitialState();
|
||||
public static IntIdsIterator getTransientIterator(IntIdsIterator intIterator) {
|
||||
final IntIdsIterator intIteratorCloned = intIterator.createCopyInInitialState();
|
||||
int max = 0, min = Integer.MAX_VALUE;
|
||||
|
||||
while(intIterator.hasNext()) {
|
||||
|
||||
@@ -16,7 +16,6 @@
|
||||
package com.intellij.util.indexing.containers;
|
||||
|
||||
import com.intellij.util.indexing.IntPredicate;
|
||||
import com.intellij.util.indexing.ValueContainer;
|
||||
import gnu.trove.TIntProcedure;
|
||||
|
||||
/**
|
||||
@@ -90,7 +89,7 @@ public class SortedIdSet implements Cloneable, RandomAccessIntContainer {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ValueContainer.IntIterator intIterator() {
|
||||
public IntIdsIterator intIterator() {
|
||||
return new Iterator();
|
||||
}
|
||||
|
||||
@@ -105,7 +104,7 @@ public class SortedIdSet implements Cloneable, RandomAccessIntContainer {
|
||||
};
|
||||
}
|
||||
|
||||
private class Iterator implements ValueContainer.IntIterator {
|
||||
private class Iterator implements IntIdsIterator {
|
||||
private int myCursor;
|
||||
|
||||
Iterator() {
|
||||
@@ -135,7 +134,7 @@ public class SortedIdSet implements Cloneable, RandomAccessIntContainer {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ValueContainer.IntIterator createCopyInInitialState() {
|
||||
public IntIdsIterator createCopyInInitialState() {
|
||||
return new Iterator();
|
||||
}
|
||||
}
|
||||
|
||||
+3
-4
@@ -16,17 +16,16 @@
|
||||
package com.intellij.util.indexing.containers;
|
||||
|
||||
import com.intellij.util.containers.EmptyIntHashSet;
|
||||
import com.intellij.util.indexing.ValueContainer;
|
||||
import gnu.trove.TIntHashSet;
|
||||
import gnu.trove.TIntIterator;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class TroveSetIntIterator implements ValueContainer.IntIterator {
|
||||
public class TroveSetIntIterator implements IntIdsIterator {
|
||||
@NotNull public static final TroveSetIntIterator EMPTY = new TroveSetIntIterator(EmptyIntHashSet.INSTANCE);
|
||||
|
||||
@NotNull private final TIntHashSet mySet;
|
||||
@NotNull private final TIntIterator mySetIterator;
|
||||
@NotNull private final int mySize;
|
||||
private final int mySize;
|
||||
|
||||
public TroveSetIntIterator(@NotNull TIntHashSet set) {
|
||||
mySet = set;
|
||||
@@ -55,7 +54,7 @@ public class TroveSetIntIterator implements ValueContainer.IntIterator {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ValueContainer.IntIterator createCopyInInitialState() {
|
||||
public IntIdsIterator createCopyInInitialState() {
|
||||
return new TroveSetIntIterator(mySet);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,11 +16,8 @@
|
||||
|
||||
package com.intellij.util.indexing;
|
||||
|
||||
import com.intellij.util.io.DataExternalizer;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.io.DataOutput;
|
||||
import java.io.IOException;
|
||||
import java.util.Iterator;
|
||||
|
||||
/**
|
||||
@@ -34,10 +31,6 @@ public abstract class ValueContainer<Value> {
|
||||
int next();
|
||||
|
||||
int size();
|
||||
|
||||
boolean hasAscendingOrder();
|
||||
|
||||
IntIterator createCopyInInitialState();
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@@ -63,6 +56,4 @@ public abstract class ValueContainer<Value> {
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public abstract void saveTo(DataOutput out, DataExternalizer<Value> externalizer) throws IOException;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user