public static class FSTDictionary.Builder extends Object implements IndexDictionary.Builder
FSTDictionary
.Modifier and Type | Field and Description |
---|---|
protected Builder<Long> |
fstBuilder |
protected IntsRefBuilder |
scratchInts |
Constructor and Description |
---|
Builder() |
Modifier and Type | Method and Description |
---|---|
void |
add(BytesRef blockKey,
long blockFilePointer)
Adds a [block key - block file pointer] entry to the dictionary.
|
FSTDictionary |
build()
Builds the immutable
IndexDictionary for the added entries. |
protected final IntsRefBuilder scratchInts
public void add(BytesRef blockKey, long blockFilePointer) throws IOException
IndexDictionary.Builder
The Uniform Split technique adds block keys in the dictionary. See
BlockReader
and TermBytes
for more info about block
key and minimal distinguishing prefix (MDP).
All block keys are added in strictly increasing order of the block file pointers,
this allows long encoding optimizations such as with PositiveIntOutputs
for FST
.
add
in interface IndexDictionary.Builder
blockKey
- The block key which is the minimal distinguishing
prefix (MDP) of the first term of a block.blockFilePointer
- Non-negative file pointer to the start of the
block in the block file.IOException
public FSTDictionary build() throws IOException
IndexDictionary.Builder
IndexDictionary
for the added entries.build
in interface IndexDictionary.Builder
IOException
Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.