setLexicon method

void setLexicon(
  1. List<FutoSwipeWord> lexicon, {
  2. required bool includeModelVocabulary,
})

Replaces all swipe words. Model vocabulary words are added first.

Implementation

void setLexicon(
  List<FutoSwipeWord> lexicon, {
  required bool includeModelVocabulary,
}) {
  _ensureOpen();
  final root = LexiconNode('', -1);
  var size = 0;
  if (includeModelVocabulary) {
    for (final word in _vocabulary) {
      if (addLexiconWord(root, word, 0)) size++;
    }
  }
  for (final word in lexicon) {
    if (addLexiconWord(root, word.text, word.frequency)) size++;
  }
  _root = root;
  _lexiconSize = size;
}