Class WordStorage.Builder
- java.lang.Object
-
- org.apache.lucene.analysis.hunspell.WordStorage.Builder
-
- Enclosing class:
- WordStorage
static class WordStorage.Builder extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private int
actualWords
private int[]
chainLengths
private int
commonPrefixLength
private int
commonPrefixPos
private java.lang.String
currentEntry
private IntsRefBuilder
currentOrds
private ByteArrayDataOutput
dataWriter
private FlagEnumerator
flagEnumerator
private java.util.List<char[]>
group
private boolean
hasCustomMorphData
private double
hashFactor
private int[]
hashTable
private int
maxEntryLength
private java.util.List<java.lang.Integer>
morphDataIDs
private char[]
noSuggestFlags
private int
wordCount
private byte[]
wordData
-
Constructor Summary
Constructors Constructor Description Builder(int wordCount, double hashFactor, boolean hasCustomMorphData, FlagEnumerator flagEnumerator, char[] noSuggestFlags)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
add(java.lang.String entry, char[] flags, int morphDataID)
Add a dictionary entry.(package private) WordStorage
build()
private int
flushGroup()
private static boolean
hasFlag(char[] flags, char flag)
private boolean
hasNoSuggestFlag(char[] flags)
-
-
-
Field Detail
-
hasCustomMorphData
private final boolean hasCustomMorphData
-
hashTable
private final int[] hashTable
-
wordData
private byte[] wordData
-
noSuggestFlags
private final char[] noSuggestFlags
-
chainLengths
private final int[] chainLengths
-
currentOrds
private final IntsRefBuilder currentOrds
-
group
private final java.util.List<char[]> group
-
morphDataIDs
private final java.util.List<java.lang.Integer> morphDataIDs
-
currentEntry
private java.lang.String currentEntry
-
wordCount
private final int wordCount
-
hashFactor
private final double hashFactor
-
flagEnumerator
private final FlagEnumerator flagEnumerator
-
dataWriter
private final ByteArrayDataOutput dataWriter
-
commonPrefixLength
private int commonPrefixLength
-
commonPrefixPos
private int commonPrefixPos
-
actualWords
private int actualWords
-
maxEntryLength
private int maxEntryLength
-
-
Constructor Detail
-
Builder
Builder(int wordCount, double hashFactor, boolean hasCustomMorphData, FlagEnumerator flagEnumerator, char[] noSuggestFlags)
- Parameters:
wordCount
- an approximate number of the words in the resulting dictionary, used to pre-size the hash table. This argument can be a bit larger than the actual word count, but not smaller.
-
-
Method Detail
-
add
void add(java.lang.String entry, char[] flags, int morphDataID) throws java.io.IOException
Add a dictionary entry. This method should be called for entries sorted non-descending byString.compareTo(java.lang.String)
rules.- Throws:
java.io.IOException
-
flushGroup
private int flushGroup() throws java.io.IOException
- Throws:
java.io.IOException
-
hasNoSuggestFlag
private boolean hasNoSuggestFlag(char[] flags)
-
hasFlag
private static boolean hasFlag(char[] flags, char flag)
-
build
WordStorage build() throws java.io.IOException
- Throws:
java.io.IOException
-
-