public SpanWeight(SpanQuery query, IndexSearcher searcher) { this.m_similarity = searcher.Similarity; this.m_query = query; m_termContexts = new Dictionary <Term, TermContext>(); SortedSet <Term> terms = new SortedSet <Term>(); query.ExtractTerms(terms); IndexReaderContext context = searcher.TopReaderContext; TermStatistics[] termStats = new TermStatistics[terms.Count]; int i = 0; foreach (Term term in terms) { TermContext state = TermContext.Build(context, term); termStats[i] = searcher.TermStatistics(term, state); m_termContexts[term] = state; i++; } string field = query.Field; if (field != null) { m_stats = m_similarity.ComputeWeight(query.Boost, searcher.CollectionStatistics(query.Field), termStats); } }
public override void ExtractTerms(ISet <Term> terms) { include.ExtractTerms(terms); }
public override void ExtractTerms(ISet <Term> terms) { maskedQuery.ExtractTerms(terms); }