Package libcore.icu
Class CollationElementIteratorICU
java.lang.Object
libcore.icu.CollationElementIteratorICU
public final class CollationElementIteratorICU extends Object
Collation element iterator JNI wrapper.
Iterates over the collation elements of a data string.
The iterator supports both forward and backwards full iteration, ie if
backwards iteration is performed in the midst of a forward iteration, the
result is undefined.
To perform a backwards iteration in the midst of a forward iteration,
reset() has to be called.
This will shift the position to either the start or the last character in the
data string depending on whether next() is called or previous().
RuleBasedCollator coll = Collator.getInstance();
CollationElementIterator iterator = coll.getCollationElementIterator("abc");
int ce = 0;
while (ce != CollationElementIterator.NULLORDER) {
ce = iterator.next();
}
iterator.reset();
while (ce != CollationElementIterator.NULLORDER) {
ce = iterator.previous();
}
- Author:
- syn wee quek
-
Field Summary
Fields Modifier and Type Field Description static intNULLORDER -
Method Summary
Modifier and Type Method Description protected voidfinalize()Garbage collection.static CollationElementIteratorICUgetInstance(long collatorAddress, String source)intgetMaxExpansion(int order)Get the maximum length of any expansion sequences that end with the specified comparison order.intgetOffset()Get the offset of the current source character.intnext()Get the ordering priority of the next collation element in the text.intprevious()Get the ordering priority of the previous collation element in the text.static intprimaryOrder(int order)Gets the primary order of a collation order.voidreset()Reset the collation elements to their initial state.static intsecondaryOrder(int order)Gets the secondary order of a collation order.voidsetOffset(int offset)Set the offset of the current source character.voidsetText(String source)Set the text containing the collation elements.voidsetText(CharacterIterator source)static inttertiaryOrder(int order)Gets the tertiary order of a collation order.
-
Field Details
-
NULLORDER
public static final int NULLORDER- See Also:
- Constant Field Values
-
-
Method Details
-
reset
public void reset()Reset the collation elements to their initial state. This will move the 'cursor' to the beginning of the text. -
next
public int next()Get the ordering priority of the next collation element in the text. A single character may contain more than one collation element.- Returns:
- next collation elements ordering, or NULLORDER if the end of the text is reached.
-
previous
public int previous()Get the ordering priority of the previous collation element in the text. A single character may contain more than one collation element.- Returns:
- previous collation element ordering, or NULLORDER if the end of the text is reached.
-
getMaxExpansion
public int getMaxExpansion(int order)Get the maximum length of any expansion sequences that end with the specified comparison order.- Parameters:
order- collation order returned by previous or next.- Returns:
- maximum size of the expansion sequences ending with the collation element or 1 if collation element does not occur at the end of any expansion sequence
-
setText
Set the text containing the collation elements.- Parameters:
source- text containing the collation elements.
-
setText
-
getOffset
public int getOffset()Get the offset of the current source character. This is an offset into the text of the character containing the current collation elements.- Returns:
- offset of the current source character.
-
setOffset
public void setOffset(int offset)Set the offset of the current source character. This is an offset into the text of the character to be processed.- Parameters:
offset- The desired character offset.
-
primaryOrder
public static int primaryOrder(int order)Gets the primary order of a collation order.- Parameters:
order- the collation order- Returns:
- the primary order of a collation order.
-
secondaryOrder
public static int secondaryOrder(int order)Gets the secondary order of a collation order.- Parameters:
order- the collation order- Returns:
- the secondary order of a collation order.
-
tertiaryOrder
public static int tertiaryOrder(int order)Gets the tertiary order of a collation order.- Parameters:
order- the collation order- Returns:
- the tertiary order of a collation order.
-
getInstance
-
finalize
Garbage collection. Close C collator and reclaim memory.
-