Package org.apache.lucene.util
Class StableMSBRadixSorter
- java.lang.Object
-
- org.apache.lucene.util.Sorter
-
- org.apache.lucene.util.MSBRadixSorter
-
- org.apache.lucene.util.StableMSBRadixSorter
-
public abstract class StableMSBRadixSorter extends MSBRadixSorter
Stable radix sorter for variable-length strings.- NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
StableMSBRadixSorter.MergeSorter
A MergeSorter taking advantage of temporary storage.
-
Field Summary
-
Fields inherited from class org.apache.lucene.util.MSBRadixSorter
HISTOGRAM_SIZE, LENGTH_THRESHOLD, LEVEL_THRESHOLD, maxLength
-
-
Constructor Summary
Constructors Constructor Description StableMSBRadixSorter(int maxLength)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected Sorter
getFallbackSorter(int k)
Get a fall-back sorter which may assume that the first k bytes of all compared strings are equal.protected void
reorder(int from, int to, int[] startOffsets, int[] endOffsets, int k)
Reorder elements in stable way, since Dutch sort does not guarantee ordering for same values.protected abstract void
restore(int i, int j)
Restore values between i-th and j-th(excluding) in temporary storage into original storage.protected abstract void
save(int i, int j)
Save the i-th value into the j-th position in temporary storage.-
Methods inherited from class org.apache.lucene.util.MSBRadixSorter
buildHistogram, byteAt, compare, getBucket, shouldFallback, sort, sort
-
Methods inherited from class org.apache.lucene.util.Sorter
comparePivot, setPivot, swap
-
-
-
-
Method Detail
-
save
protected abstract void save(int i, int j)
Save the i-th value into the j-th position in temporary storage.
-
restore
protected abstract void restore(int i, int j)
Restore values between i-th and j-th(excluding) in temporary storage into original storage.
-
getFallbackSorter
protected Sorter getFallbackSorter(int k)
Description copied from class:MSBRadixSorter
Get a fall-back sorter which may assume that the first k bytes of all compared strings are equal.- Overrides:
getFallbackSorter
in classMSBRadixSorter
-
reorder
protected void reorder(int from, int to, int[] startOffsets, int[] endOffsets, int k)
Reorder elements in stable way, since Dutch sort does not guarantee ordering for same values.When this method returns, startOffsets and endOffsets are equal.
- Overrides:
reorder
in classMSBRadixSorter
startOffsets
- start offsets per bucketendOffsets
- end offsets per bucket
-
-