public void FixFailedBuild(DigitalTree node = null) { node = node ?? _digitalTree; var word = node.Word; for (var i = 1; i < word.Length && node.Fail == null; i++) { node.Fail = _digitalTree.ExploreFailLink(word.Substring(i)); } foreach (var subNode in node.Next.Values) { FixFailedBuild(subNode); } }
public MainSearcher() { _digitalTree = new DigitalTree(); }