/// <summary>
 /// Initializes the search.
 /// </summary>
 public void InitSearch()
 {
     trie = new Trie <IDefinition>();
     foreach (var item in definitions.Where(p => p.Tags?.Count > 0))
     {
         trie.Add(item, item.Tags);
     }
 }
 /// <summary>
 /// Initializes the search.
 /// </summary>
 public void InitSearch()
 {
     trie = new Trie <IDefinition>();
     // We're not indexing definitions from the game
     foreach (var item in definitions.Where(p => (p.Tags?.Any()).GetValueOrDefault() && !p.IsFromGame))
     {
         trie.Add(item, item.Tags);
     }
 }