Move a logic for finding words with a missing character to the native code.
Change-Id: I58338643830ff4f9708f78a9c26f75c8bf2ebf45
diff --git a/native/src/dictionary.h b/native/src/dictionary.h
index d13496e..2dac3b2 100644
--- a/native/src/dictionary.h
+++ b/native/src/dictionary.h
@@ -48,7 +48,10 @@
~Dictionary();
private:
-
+ void initSuggestions(int *codes, int codesSize, unsigned short *outWords, int *frequencies,
+ int maxWordLength, int maxWords, int maxAlternatives);
+ int getSuggestionCandidates(int inputLength, int maxWords, int skipPos, int *nextLetters,
+ int nextLettersSize);
void getVersionNumber();
bool checkIfDictVersionIsLatest();
int getAddress(int *pos);
@@ -70,9 +73,9 @@
bool addWordBigram(unsigned short *word, int length, int frequency);
unsigned short toLowerCase(unsigned short c);
void getWordsRec(int pos, int depth, int maxDepth, bool completion, int frequency,
- int inputIndex, int diffs);
+ int inputIndex, int diffs, int skipPos, int *nextLetters, int nextLettersSize);
int isValidWordRec(int pos, unsigned short *word, int offset, int length);
- void registerNextLetter(unsigned short c);
+ void registerNextLetter(unsigned short c, int *nextLetters, int nextLettersSize);
unsigned char *mDict;
void *mAsset;
@@ -88,13 +91,10 @@
int mInputLength;
int mMaxAlternatives;
unsigned short mWord[128];
- int mSkipPos;
int mMaxEditDistance;
int mFullWordMultiplier;
int mTypedLetterMultiplier;
- int *mNextLettersFrequencies;
- int mNextLettersSize;
int mVersion;
int mBigram;
};