public class BufferedIterator extends java.lang.Object implements IteratingRLW, java.lang.Cloneable
Modifier and Type | Field and Description |
---|---|
private IteratingBufferedRunningLengthWord |
iteratingBrlw |
private CloneableIterator<EWAHIterator> |
masterIterator |
Constructor and Description |
---|
BufferedIterator(CloneableIterator<EWAHIterator> iterator)
Instantiates a new iterating buffered running length word.
|
Modifier and Type | Method and Description |
---|---|
BufferedIterator |
clone() |
void |
discardFirstWords(long x)
Discard first words, iterating to the next running length word if
needed.
|
void |
discardRunningWords()
Discard all running words
|
long |
getLiteralWordAt(int index)
Get the nth literal word for the current running length word
|
int |
getNumberOfLiteralWords()
Gets the number of literal words for the current running length word.
|
boolean |
getRunningBit()
Gets the running bit.
|
long |
getRunningLength()
Gets the running length.
|
boolean |
next()
Move to the next RunningLengthWord
|
long |
size()
Size in uncompressed words of the current running length word.
|
private IteratingBufferedRunningLengthWord iteratingBrlw
private CloneableIterator<EWAHIterator> masterIterator
public BufferedIterator(CloneableIterator<EWAHIterator> iterator)
iterator
- iteratorpublic void discardFirstWords(long x)
discardFirstWords
in interface IteratingRLW
x
- the number of words to be discardedpublic void discardRunningWords()
IteratingRLW
discardRunningWords
in interface IteratingRLW
public boolean next()
next
in interface IteratingRLW
public long getLiteralWordAt(int index)
getLiteralWordAt
in interface IteratingRLW
index
- zero based indexpublic int getNumberOfLiteralWords()
getNumberOfLiteralWords
in interface IteratingRLW
public boolean getRunningBit()
getRunningBit
in interface IteratingRLW
public long getRunningLength()
getRunningLength
in interface IteratingRLW
public long size()
size
in interface IteratingRLW
public BufferedIterator clone() throws java.lang.CloneNotSupportedException
clone
in interface IteratingRLW
clone
in class java.lang.Object
java.lang.CloneNotSupportedException
- this should not be thrown in theory