Package com.ibm.icu.util
Class BytesTrie.Iterator
java.lang.Object
com.ibm.icu.util.BytesTrie.Iterator
- All Implemented Interfaces:
Iterator<BytesTrie.Entry>
- Enclosing class:
BytesTrie
Iterator for all of the (byte sequence, value) pairs in a BytesTrie.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate byte[]private BytesTrie.Entryprivate intprivate intprivate intprivate intprivate int -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivateIterator(byte[] trieBytes, int offset, int remainingMatchLength, int maxStringLength) -
Method Summary
Modifier and TypeMethodDescriptionprivate intbranchNext(int pos, int length) booleanhasNext()next()Finds the next (byte sequence, value) pair if there is one.voidremove()Iterator.remove() is not supported.reset()Resets this iterator to its initial state.private BytesTrie.EntryMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.util.Iterator
forEachRemaining
-
Field Details
-
bytes_
private byte[] bytes_ -
pos_
private int pos_ -
initialPos_
private int initialPos_ -
remainingMatchLength_
private int remainingMatchLength_ -
initialRemainingMatchLength_
private int initialRemainingMatchLength_ -
maxLength_
private int maxLength_ -
entry_
-
stack_
-
-
Constructor Details
-
Iterator
private Iterator(byte[] trieBytes, int offset, int remainingMatchLength, int maxStringLength)
-
-
Method Details
-
reset
Resets this iterator to its initial state.- Returns:
- this
-
hasNext
public boolean hasNext()- Specified by:
hasNextin interfaceIterator<BytesTrie.Entry>- Returns:
- true if there are more elements.
-
next
Finds the next (byte sequence, value) pair if there is one. If the byte sequence is truncated to the maximum length and does not have a real value, then the value is set to -1. In this case, this "not a real value" is indistinguishable from a real value of -1.- Specified by:
nextin interfaceIterator<BytesTrie.Entry>- Returns:
- An Entry with the string and value of the next element.
- Throws:
NoSuchElementException- - iteration has no more elements.
-
remove
public void remove()Iterator.remove() is not supported.- Specified by:
removein interfaceIterator<BytesTrie.Entry>- Throws:
UnsupportedOperationException- (always)
-
truncateAndStop
-
branchNext
private int branchNext(int pos, int length)
-