public override Scorer Scorer(AtomicReaderContext context, Bits acceptDocs)
{
Terms terms = context.AtomicReader.Terms(outerInstance._field);
if (terms == null)
{
return null;
}
// what is the runtime...seems ok?
long cost = context.AtomicReader.MaxDoc * terms.Size();
segmentTermsEnum = terms.Iterator(segmentTermsEnum);
if (outerInstance._multipleValuesPerDocument)
{
return new MVInOrderScorer(outerInstance, this, acceptDocs, segmentTermsEnum, context.AtomicReader.MaxDoc, cost);
}
return new SVInOrderScorer(outerInstance, this, acceptDocs, segmentTermsEnum, context.AtomicReader.MaxDoc, cost);
}