protected override void VisitDocument(DocumentModel documentModel) { var documentId = Path.Combine(_username, _repository, documentModel.RelativePath); var declarations = documentModel.Tokens.Where(n => n.IsDeclaration && n.IsSearchable); var tokenModels = from declaration in declarations select new TokenViewModel( _username, _repository, documentId, declaration.FullName, declaration.LineNumber ); SearchIndex.AddDeclarationsToIndex(tokenModels); base.VisitDocument(documentModel); }