public NitraReferenceSearcher(NitraSearcherFactory factory, IEnumerable <IDeclaredElement> elements, bool findCandidates, bool searchForLateBound) { myFindCandidates = findCandidates; mySearchForLateBound = searchForLateBound; myElements = new JetHashSet <IDeclaredElement>(elements); myNames = new JetHashSet <string>(); myWordsInText = new JetHashSet <string>(); foreach (var element in myElements) { myNames.Add(element.ShortName); myWordsInText.UnionWith(factory.GetAllPossibleWordsInFile(element)); } myWordIndex = myElements.First().GetPsiServices().WordIndex; }