Interface ChainStorage<E,K,V,EN extends ChainStorage.Entry<E,K,V,EN>>
-
- All Superinterfaces:
Composition,Iterable<E>
- All Known Subinterfaces:
ChainKeyValueStorage<K,V,EN>
- All Known Implementing Classes:
AbstractChainKeyValueStorage,AbstractChainStorage,ChainStorageStrong,ChainStrongStrongStorage
public interface ChainStorage<E,K,V,EN extends ChainStorage.Entry<E,K,V,EN>> extends Iterable<E>, Composition
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceChainStorage.Entry<E,K,V,EN extends ChainStorage.Entry<E,K,V,EN>>
-
Method Summary
Modifier and Type Method Description voidappendEntry(EN entry)VarStringappendTo(VarString vc)VarStringappendTo(VarString vc, char separator)VarStringappendTo(VarString vc, String separator)VarStringappendTo(VarString vc, BiConsumer<VarString,? super E> appender)VarStringappendTo(VarString vc, BiConsumer<VarString,? super E> appender, char separator)VarStringappendTo(VarString vc, BiConsumer<VarString,? super E> appender, String separator)booleanappliesAll(Predicate<? super E> predicate)voidclear()longconsolidate()Removes all empty entries from the passed chain and returns the number of removed entries.booleancontains(E element)booleancontains(E sample, Equalator<? super E> equalator)booleancontainsAll(E[] elements, int elementsOffset, int elementsLength)booleancontainsAll(XGettingCollection<? extends E> elements)booleancontainsId(E element)booleancontainsNull()booleancontainsSearched(Predicate<? super E> predicate)<C extends Consumer<? super E>>
CcopySelection(C target, long[] indices)<C extends Consumer<? super E>>
CcopyTo(C target)<C extends Consumer<? super E>>
CcopyTo(C target, Predicate<? super E> predicate)intcopyToArray(long offset, int length, Object[] target, int targetOffset)longcount(E element)longcount(E sample, Equalator<? super E> equalator)longcount(Predicate<? super E> predicate)<C extends Consumer<? super E>>
Cdistinct(C target)<C extends Consumer<? super E>>
Cdistinct(C target, Equalator<? super E> equalator)booleanequalsContent(XGettingCollection<? extends E> other, Equalator<? super E> equalator)<C extends Consumer<? super E>>
Cexcept(XGettingCollection<? extends E> samples, Equalator<? super E> equalator, C target)voidfill(long offset, long length, E element)Efirst()Eget(long index)ENgetChainEntry(long index)ENgetIntervalLowChainEntry(long lowIndex, long highIndex)ENgetRangeChainEntry(long offset, long length)ReferenceTypegetReferenceType()booleanhasDistinctValues()booleanhasDistinctValues(Equalator<? super E> equalator)booleanhasVolatileElements()longindexOf(E element)longindexOf(E sample, Equalator<? super E> equalator)longindexOf(Predicate<? super E> predicate)<C extends Consumer<? super E>>
Cintersect(XGettingCollection<? extends E> samples, Equalator<? super E> equalator, C target)booleanisSorted(Comparator<? super E> comparator)voiditerate(Consumer<? super E> procedure)voiditerate(Predicate<? super E> predicate, Consumer<? super E> procedure)voiditerateIndexed(IndexedAcceptor<? super E> procedure)Iterator<E>iterator()<A> voidjoin(BiConsumer<? super E,A> joiner, A aggregate)Elast()Emax(Comparator<? super E> comparator)longmaxIndex(Comparator<? super E> comparator)Emin(Comparator<? super E> comparator)longminIndex(Comparator<? super E> comparator)longmoveRange(long offset, long length, Consumer<? super E> target)longmoveSelection(Consumer<? super E> target, long... indices)longmoveTo(Consumer<? super E> target, Predicate<? super E> predicate)voidprependEntry(EN entry)longprocess(Consumer<? super E> procedure)longreduce(Predicate<? super E> predicate)Eremove(long index)longremove(E element)longremove(E sample, Equalator<? super E> equalator)longremoveAll(E[] elements, int elementsOffset, int elementsLength)longremoveAll(XGettingCollection<? extends E> elements)longremoveDuplicates()longremoveDuplicates(Equalator<? super E> equalator)longremoveNull()booleanremoveOne(E element)booleanremoveOne(E sample, Equalator<? super E> equalator)voidremoveRange(long offset, long length)longremoveSelection(long... indices)Removes all entries at the indices (offsets) given in the passedintarray.longreplace(E element, E replacement)longreplaceAll(E[] elements, int elementsOffset, int elementsLength, E replacement)longreplaceAll(XGettingCollection<? extends E> elements, E replacement)longreplaceBy(Predicate<? super E> predicate, E substitute)longreplaceOne(E element, E replacement)longreplaceOneBy(Predicate<? super E> predicate, E substitute)longretainAll(E[] elements, int elementsOffset, int elementsLength)longretainAll(XGettingCollection<? extends E> elements)longretainAll(XGettingCollection<? extends E> samples, Equalator<? super E> equalator)voidretainRange(long offset, long length)Eretrieve(E element)Eretrieve(E sample, Equalator<? super E> equalator)Eretrieve(Predicate<? super E> predicate)voidreverse()VarStringrngAppendTo(long offset, long length, VarString vc)VarStringrngAppendTo(long offset, long length, VarString vc, char separator)VarStringrngAppendTo(long offset, long length, VarString vc, String separator)VarStringrngAppendTo(long offset, long length, VarString vc, BiConsumer<VarString,? super E> appender)VarStringrngAppendTo(long offset, long length, VarString vc, BiConsumer<VarString,? super E> appender, char separator)VarStringrngAppendTo(long offset, long length, VarString vc, BiConsumer<VarString,? super E> appender, String separator)booleanrngAppliesAll(long offset, long length, Predicate<? super E> predicate)booleanrngContains(long offset, long length, E element)booleanrngContainsAll(long offset, long length, E[] elements, int elementsOffset, int elementsLength)booleanrngContainsAll(long offset, long length, XGettingCollection<? extends E> elements)booleanrngContainsId(long offset, long length, E element)booleanrngContainsNull(long offset, long length)booleanrngContainsSearched(long offset, long length, Predicate<? super E> predicate)<C extends Consumer<? super E>>
CrngCopyTo(long offset, long length, C target)<C extends Consumer<? super E>>
CrngCopyTo(long offset, long length, C target, Predicate<? super E> predicate)longrngCount(long offset, long length, E element)longrngCount(long offset, long length, Predicate<? super E> predicate)<C extends Consumer<? super E>>
CrngDistinct(long offset, long length, C target)<C extends Consumer<? super E>>
CrngDistinct(long offset, long length, C target, Equalator<? super E> equalator)<C extends Consumer<? super E>>
CrngExcept(long offset, long length, XGettingCollection<? extends E> samples, Equalator<? super E> equalator, C target)longrngIndexOf(long offset, long length, E element)longrngIndexOf(long offset, long length, E sample, Equalator<? super E> equalator)longrngIndexOf(long offset, long length, Predicate<? super E> predicate)<C extends Consumer<? super E>>
CrngIntersect(long offset, long length, XGettingCollection<? extends E> samples, Equalator<? super E> equalator, C target)booleanrngIsSorted(long offset, long length, Comparator<? super E> comparator)voidrngIterate(long offset, long length, Consumer<? super E> procedure)voidrngIterateIndexed(long offset, long length, IndexedAcceptor<? super E> procedure)ErngMax(long offset, long length, Comparator<? super E> comparator)longrngMaxIndex(long offset, long length, Comparator<? super E> comparator)ErngMin(long offset, long length, Comparator<? super E> comparator)longrngMinIndex(long offset, long length, Comparator<? super E> comparator)longrngMoveTo(long offset, long length, Consumer<? super E> target, Predicate<? super E> predicate)longrngProcess(long offset, long length, Consumer<? super E> procedure)longrngReduce(long offset, long length, Predicate<? super E> predicate)longrngRemove(long offset, long length, E element)longrngRemoveAll(long offset, long length, E[] elements, int elementsOffset, int elementsLength)longrngRemoveAll(long offset, long length, XGettingCollection<? extends E> elements)longrngRemoveDuplicates(long offset, long length)longrngRemoveDuplicates(long offset, long length, Equalator<? super E> equalator)longrngRemoveNull(long offset, long length)longrngReplace(long offset, long length, E element, E replacement)longrngReplace(long offset, long length, E sample, Equalator<? super E> equalator, E replacement)longrngReplaceAll(long offset, long length, E[] elements, int elementsOffset, int elementsLength, E replacement)longrngReplaceAll(long offset, long length, XGettingCollection<? extends E> elements, E replacement)longrngReplaceOne(long offset, long length, E element, E replacement)longrngReplaceOne(long offset, long length, Predicate<? super E> predicate, E substitute)longrngReplaceOneBy(long offset, long length, Predicate<? super E> predicate, E substitute)longrngRetainAll(long offset, long length, E[] elements, int elementsOffset, int elementsLength)longrngRetainAll(long offset, long length, XGettingCollection<? extends E> elements)ErngRetrieve(long offset, long length, E element)ErngRetrieve(long offset, long length, E sample, Equalator<? super E> equalator)voidrngReverse(long offset, long length)longrngScan(long offset, long length, Predicate<? super E> predicate)ErngSearch(long offset, long length, Predicate<? super E> predicate)voidrngShuffle(long offset, long length)voidrngSort(long offset, long length, Comparator<? super E> comparator)longrngSubstitute(long offset, long length, Function<E,E> mapper)longrngSubstitute(long offset, long length, Predicate<? super E> predicate, Function<E,E> mapper)Object[]rngToArray(long offset, int length)E[]rngToArray(long offset, int length, Class<E> type)<C extends Consumer<? super E>>
CrngUnion(long offset, long length, XGettingCollection<? extends E> samples, Equalator<? super E> equalator, C target)longscan(Predicate<? super E> predicate)Esearch(Predicate<? super E> predicate)Eseek(E sample)Eseek(E sample, Equalator<? super E> equalator)voidset(long offset, E[] elements)voidset(long offset, E[] elements, int elementsOffset, int elementsLength)voidshiftBy(long sourceIndex, long distance)voidshiftBy(long sourceIndex, long distance, long length)voidshiftTo(long sourceIndex, long targetIndex)voidshiftTo(long sourceIndex, long targetIndex, long length)voidshuffle()longsize()voidsort(Comparator<? super E> comparator)longsubstitute(Function<E,E> mapper)longsubstitute(Predicate<? super E> predicate, Function<E,E> mapper)voidswap(long indexA, long indexB)voidswap(long indexA, long indexB, long length)Object[]toArray()E[]toArray(Class<E> type)StringtoString()<C extends Consumer<? super E>>
Cunion(XGettingCollection<? extends E> samples, Equalator<? super E> equalator, C target)-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Method Detail
-
appendEntry
void appendEntry(EN entry)
-
prependEntry
void prependEntry(EN entry)
-
clear
void clear()
-
getChainEntry
EN getChainEntry(long index) throws IndexOutOfBoundsException
- Throws:
IndexOutOfBoundsException
-
getRangeChainEntry
EN getRangeChainEntry(long offset, long length) throws IndexOutOfBoundsException
- Throws:
IndexOutOfBoundsException
-
getIntervalLowChainEntry
EN getIntervalLowChainEntry(long lowIndex, long highIndex) throws IndexOutOfBoundsException
- Throws:
IndexOutOfBoundsException
-
size
long size()
-
consolidate
long consolidate()
Removes all empty entries from the passed chain and returns the number of removed entries.- Returns:
- the number of removed entries.
-
hasVolatileElements
boolean hasVolatileElements()
-
getReferenceType
ReferenceType getReferenceType()
-
equalsContent
boolean equalsContent(XGettingCollection<? extends E> other, Equalator<? super E> equalator)
-
containsNull
boolean containsNull()
-
rngContainsNull
boolean rngContainsNull(long offset, long length)
-
containsId
boolean containsId(E element)
-
rngContainsId
boolean rngContainsId(long offset, long length, E element)
-
contains
boolean contains(E element)
-
rngContains
boolean rngContains(long offset, long length, E element)
-
containsAll
boolean containsAll(E[] elements, int elementsOffset, int elementsLength)
-
rngContainsAll
boolean rngContainsAll(long offset, long length, E[] elements, int elementsOffset, int elementsLength)
-
containsAll
boolean containsAll(XGettingCollection<? extends E> elements)
-
rngContainsAll
boolean rngContainsAll(long offset, long length, XGettingCollection<? extends E> elements)
-
rngContainsSearched
boolean rngContainsSearched(long offset, long length, Predicate<? super E> predicate)
-
count
long count(E element)
-
rngCount
long rngCount(long offset, long length, E element)
-
intersect
<C extends Consumer<? super E>> C intersect(XGettingCollection<? extends E> samples, Equalator<? super E> equalator, C target)
-
except
<C extends Consumer<? super E>> C except(XGettingCollection<? extends E> samples, Equalator<? super E> equalator, C target)
-
union
<C extends Consumer<? super E>> C union(XGettingCollection<? extends E> samples, Equalator<? super E> equalator, C target)
-
rngIntersect
<C extends Consumer<? super E>> C rngIntersect(long offset, long length, XGettingCollection<? extends E> samples, Equalator<? super E> equalator, C target)
-
rngExcept
<C extends Consumer<? super E>> C rngExcept(long offset, long length, XGettingCollection<? extends E> samples, Equalator<? super E> equalator, C target)
-
rngUnion
<C extends Consumer<? super E>> C rngUnion(long offset, long length, XGettingCollection<? extends E> samples, Equalator<? super E> equalator, C target)
-
copyToArray
int copyToArray(long offset, int length, Object[] target, int targetOffset)
-
rngCopyTo
<C extends Consumer<? super E>> C rngCopyTo(long offset, long length, C target, Predicate<? super E> predicate)
-
toArray
Object[] toArray()
-
rngToArray
Object[] rngToArray(long offset, int length)
-
first
E first()
-
last
E last()
-
get
E get(long index)
-
min
E min(Comparator<? super E> comparator)
-
max
E max(Comparator<? super E> comparator)
-
rngMin
E rngMin(long offset, long length, Comparator<? super E> comparator)
-
rngMax
E rngMax(long offset, long length, Comparator<? super E> comparator)
-
join
<A> void join(BiConsumer<? super E,A> joiner, A aggregate)
-
iterateIndexed
void iterateIndexed(IndexedAcceptor<? super E> procedure)
-
rngIterateIndexed
void rngIterateIndexed(long offset, long length, IndexedAcceptor<? super E> procedure)
-
indexOf
long indexOf(E element)
-
rngIndexOf
long rngIndexOf(long offset, long length, E element)
-
minIndex
long minIndex(Comparator<? super E> comparator)
-
maxIndex
long maxIndex(Comparator<? super E> comparator)
-
rngMinIndex
long rngMinIndex(long offset, long length, Comparator<? super E> comparator)
-
rngMaxIndex
long rngMaxIndex(long offset, long length, Comparator<? super E> comparator)
-
hasDistinctValues
boolean hasDistinctValues()
-
rngDistinct
<C extends Consumer<? super E>> C rngDistinct(long offset, long length, C target, Equalator<? super E> equalator)
-
appendTo
VarString appendTo(VarString vc, BiConsumer<VarString,? super E> appender)
-
appendTo
VarString appendTo(VarString vc, BiConsumer<VarString,? super E> appender, char separator)
-
appendTo
VarString appendTo(VarString vc, BiConsumer<VarString,? super E> appender, String separator)
-
rngAppendTo
VarString rngAppendTo(long offset, long length, VarString vc, BiConsumer<VarString,? super E> appender)
-
rngAppendTo
VarString rngAppendTo(long offset, long length, VarString vc, BiConsumer<VarString,? super E> appender, char separator)
-
rngAppendTo
VarString rngAppendTo(long offset, long length, VarString vc, BiConsumer<VarString,? super E> appender, String separator)
-
remove
E remove(long index)
-
removeRange
void removeRange(long offset, long length)
-
retainRange
void retainRange(long offset, long length)
-
removeSelection
long removeSelection(long... indices)
Removes all entries at the indices (offsets) given in the passedintarray.Note that the indices array gets presorted to increase algorithm performance. If the original
intarray shall be unchanged, a clone must be passed.- Parameters:
indices- the indices (offsets) of the entries to be removed.- Returns:
- the amount of actually removed entries.
-
removeNull
long removeNull()
-
rngRemoveNull
long rngRemoveNull(long offset, long length)
-
removeOne
boolean removeOne(E element)
-
remove
long remove(E element)
-
rngRemove
long rngRemove(long offset, long length, E element)
-
removeAll
long removeAll(E[] elements, int elementsOffset, int elementsLength)
-
rngRemoveAll
long rngRemoveAll(long offset, long length, E[] elements, int elementsOffset, int elementsLength)
-
removeAll
long removeAll(XGettingCollection<? extends E> elements)
-
rngRemoveAll
long rngRemoveAll(long offset, long length, XGettingCollection<? extends E> elements)
-
removeDuplicates
long removeDuplicates()
-
rngRemoveDuplicates
long rngRemoveDuplicates(long offset, long length)
-
rngRemoveDuplicates
long rngRemoveDuplicates(long offset, long length, Equalator<? super E> equalator)
-
retainAll
long retainAll(E[] elements, int elementsOffset, int elementsLength)
-
rngRetainAll
long rngRetainAll(long offset, long length, E[] elements, int elementsOffset, int elementsLength)
-
retainAll
long retainAll(XGettingCollection<? extends E> elements)
-
retainAll
long retainAll(XGettingCollection<? extends E> samples, Equalator<? super E> equalator)
-
rngRetainAll
long rngRetainAll(long offset, long length, XGettingCollection<? extends E> elements)
-
rngMoveTo
long rngMoveTo(long offset, long length, Consumer<? super E> target, Predicate<? super E> predicate)
-
shiftTo
void shiftTo(long sourceIndex, long targetIndex)
-
shiftTo
void shiftTo(long sourceIndex, long targetIndex, long length)
-
shiftBy
void shiftBy(long sourceIndex, long distance)
-
shiftBy
void shiftBy(long sourceIndex, long distance, long length)
-
swap
void swap(long indexA, long indexB)
-
swap
void swap(long indexA, long indexB, long length)
-
reverse
void reverse()
-
rngReverse
void rngReverse(long offset, long length)
-
sort
void sort(Comparator<? super E> comparator)
-
rngSort
void rngSort(long offset, long length, Comparator<? super E> comparator)
-
isSorted
boolean isSorted(Comparator<? super E> comparator)
-
rngIsSorted
boolean rngIsSorted(long offset, long length, Comparator<? super E> comparator)
-
shuffle
void shuffle()
-
rngShuffle
void rngShuffle(long offset, long length)
-
set
void set(long offset, E[] elements)
-
set
void set(long offset, E[] elements, int elementsOffset, int elementsLength)
-
fill
void fill(long offset, long length, E element)
-
rngReplace
long rngReplace(long offset, long length, E sample, Equalator<? super E> equalator, E replacement)
-
rngReplaceAll
long rngReplaceAll(long offset, long length, E[] elements, int elementsOffset, int elementsLength, E replacement)
-
replaceAll
long replaceAll(XGettingCollection<? extends E> elements, E replacement)
-
rngReplaceAll
long rngReplaceAll(long offset, long length, XGettingCollection<? extends E> elements, E replacement)
-
rngSubstitute
long rngSubstitute(long offset, long length, Predicate<? super E> predicate, Function<E,E> mapper)
-
rngReplaceOneBy
long rngReplaceOneBy(long offset, long length, Predicate<? super E> predicate, E substitute)
-
-