private int NextDocOutOfOrder()
{
while (true)
{
if (DocsEnum != null)
{
int docId = DocsEnumNextDoc();
if (docId == DocIdSetIterator.NO_MORE_DOCS)
{
DocsEnum = null;
}
else
{
return _doc = docId;
}
}
if (_upto == outerInstance._terms.Size())
{
return _doc = DocIdSetIterator.NO_MORE_DOCS;
}
_scoreUpto = _upto;
if (_termsEnum.SeekExact(outerInstance._terms.Get(outerInstance._ords[_upto++], _spare)))
{
DocsEnum = _reuse = _termsEnum.Docs(_acceptDocs, _reuse, DocsEnum.FLAG_NONE);
}
}
}