Class CollationWeights
java.lang.Object
org.graalvm.shadowed.com.ibm.icu.impl.coll.CollationWeights
Allocates n collation element weights between two exclusive limits.
Used only internally by the collation tailoring builder.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanallocWeights(long lowerLimit, long upperLimit, int n) Determine heuristically what ranges to use for a given number of weights between (excluding) two limits.voidinitForPrimary(boolean compressible) voidvoidstatic intlengthOfWeight(long weight) longGiven a set of ranges calculated by allocWeights(), iterate through the weights.
-
Constructor Details
-
CollationWeights
public CollationWeights()
-
-
Method Details
-
initForPrimary
public void initForPrimary(boolean compressible) -
initForSecondary
public void initForSecondary() -
initForTertiary
public void initForTertiary() -
allocWeights
public boolean allocWeights(long lowerLimit, long upperLimit, int n) Determine heuristically what ranges to use for a given number of weights between (excluding) two limits.- Parameters:
lowerLimit- A collation element weight; the ranges will be filled to cover weights greater than this one.upperLimit- A collation element weight; the ranges will be filled to cover weights less than this one.n- The number of collation element weights w necessary such that lowerLimitinvalid input: '<'winvalid input: '<'upperLimit in lexical order.- Returns:
- true if it is possible to fit n elements between the limits
-
nextWeight
public long nextWeight()Given a set of ranges calculated by allocWeights(), iterate through the weights. The ranges are modified to keep the current iteration state.- Returns:
- The next weight in the ranges, or 0xffffffff if there is none left.
-
lengthOfWeight
public static int lengthOfWeight(long weight)
-