public class STMergingBlockReader extends STBlockReader
TermsEnum.SeekStatusfieldInfosblockDecoder, blockFirstLineStart, blockHeader, blockInput, blockLine, blockLineReader, blockReadBuffer, blockStartFP, dictionaryBrowser, dictionaryBrowserSupplier, fieldMetadata, forcedTerm, lineIndexInBlock, postingsReader, scratchBlockBytes, scratchTermState, termState, termStateForced, termStateSerializer, termStatesReadBuffer| Constructor and Description |
|---|
STMergingBlockReader(java.util.function.Supplier<IndexDictionary.Browser> dictionaryBrowserSupplier,
IndexInput blockInput,
PostingsReaderBase postingsReader,
FieldMetadata fieldMetadata,
BlockDecoder blockDecoder,
FieldInfos fieldInfos) |
| Modifier and Type | Method and Description |
|---|---|
BytesRef |
next()
Increments the iteration to the next
BytesRef in the iterator. |
PostingsEnum |
postings(java.lang.String fieldName,
BlockTermState termState,
PostingsEnum reuse,
int flags)
Creates a new
PostingsEnum for the provided field and BlockTermState. |
void |
readFieldTermStatesMap(java.util.Map<java.lang.String,BlockTermState> fieldTermStatesMap)
Reads all the fields
TermStates of the current term and put them
in the provided map. |
protected BlockTermState |
readTermStateIfNotRead()
Reads the
BlockTermState if it is not already set. |
TermsEnum.SeekStatus |
seekCeil(BytesRef searchedTerm)
Seeks to the specified term, if it exists, or to the
next (ceiling) term.
|
boolean |
seekExact(BytesRef searchedTerm)
Attempts to seek to the exact term, returning true if the term is found.
|
void |
seekExact(BytesRef term,
TermState state)
Positions this
BlockReader without re-seeking the term dictionary. |
void |
seekExact(long ord)
Not supported.
|
isBeyondLastTerm, nextTerm, readTermState, seekCeilIgnoreFieldclearTermState, compareToMiddleAndJump, decodeBlockBytesIfNeeded, docFreq, getOrCreateDictionaryBrowser, impacts, initializeBlockReadLazily, initializeHeader, isCurrentTerm, ord, postings, ramBytesUsed, readHeader, readLineInBlock, seekInBlock, seekInBlock, term, termState, totalTermFreqattributesclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetChildResourcespublic STMergingBlockReader(java.util.function.Supplier<IndexDictionary.Browser> dictionaryBrowserSupplier, IndexInput blockInput, PostingsReaderBase postingsReader, FieldMetadata fieldMetadata, BlockDecoder blockDecoder, FieldInfos fieldInfos) throws java.io.IOException
java.io.IOExceptionpublic TermsEnum.SeekStatus seekCeil(BytesRef searchedTerm)
TermsEnumseekCeil in class STBlockReaderpublic boolean seekExact(BytesRef searchedTerm)
TermsEnumTermsEnum.seekCeil(org.apache.lucene.util.BytesRef).
seekExact in class STBlockReaderpublic void seekExact(BytesRef term, TermState state)
BlockReaderBlockReader without re-seeking the term dictionary.
The block containing the term is not read by this method. It will be read
lazily only if needed, for example if BlockReader.next() is called.
Calling BlockReader.postings(org.apache.lucene.index.PostingsEnum, int) after this method does require the block to be read.
seekExact in class BlockReaderterm - the term the TermState corresponds tostate - the TermStatepublic void seekExact(long ord)
BlockReaderseekExact in class BlockReaderprotected BlockTermState readTermStateIfNotRead()
BlockReaderBlockTermState if it is not already set.
Sets BlockReader.termState.readTermStateIfNotRead in class BlockReaderpublic BytesRef next() throws java.io.IOException
BytesRefIteratorBytesRef in the iterator.
Returns the resulting BytesRef or null if the end of
the iterator is reached. The returned BytesRef may be re-used across calls
to next. After this method returns null, do not call it again: the results
are undefined.next in interface BytesRefIteratornext in class STBlockReaderBytesRef in the iterator or null if
the end of the iterator is reached.java.io.IOException - If there is a low-level I/O error.public PostingsEnum postings(java.lang.String fieldName, BlockTermState termState, PostingsEnum reuse, int flags) throws java.io.IOException
PostingsEnum for the provided field and BlockTermState.reuse - Previous PostingsEnum to reuse; or null to create a new one.flags - Postings flags.java.io.IOExceptionpublic void readFieldTermStatesMap(java.util.Map<java.lang.String,BlockTermState> fieldTermStatesMap) throws java.io.IOException
TermStates of the current term and put them
in the provided map. Clears the map first, before putting TermStates.java.io.IOException