public override int NextDoc() { while (true) { if (Current == null) { if (Upto == NumSubs_Renamed - 1) { return this.Doc = NO_MORE_DOCS; } else { Upto++; int reader = Subs_Renamed[Upto].Slice.ReaderIndex; Current = Subs_Renamed[Upto].DocsEnum; CurrentBase = MergeState_Renamed.DocBase[reader]; CurrentMap = MergeState_Renamed.DocMaps[reader]; Debug.Assert(CurrentMap.MaxDoc == Subs_Renamed[Upto].Slice.Length, "readerIndex=" + reader + " subs.len=" + Subs_Renamed.Length + " len1=" + CurrentMap.MaxDoc + " vs " + Subs_Renamed[Upto].Slice.Length); } } int doc = Current.NextDoc(); if (doc != NO_MORE_DOCS) { // compact deletions doc = CurrentMap.Get(doc); if (doc == -1) { continue; } return this.Doc = CurrentBase + doc; } else { Current = null; } } }
public override int NextDoc() { while (true) { if (current == null) { if (upto == numSubs - 1) { return(this.doc = NO_MORE_DOCS); } else { upto++; int reader = subs[upto].Slice.ReaderIndex; current = subs[upto].DocsEnum; currentBase = mergeState.DocBase[reader]; currentMap = mergeState.DocMaps[reader]; Debug.Assert(currentMap.MaxDoc == subs[upto].Slice.Length, "readerIndex=" + reader + " subs.len=" + subs.Length + " len1=" + currentMap.MaxDoc + " vs " + subs[upto].Slice.Length); } } int doc = current.NextDoc(); if (doc != NO_MORE_DOCS) { // compact deletions doc = currentMap.Get(doc); if (doc == -1) { continue; } return(this.doc = currentBase + doc); } else { current = null; } } }
public override int NextDoc() { while (true) { if (current == null) { if (upto == numSubs - 1) { return(this.doc = NO_MORE_DOCS); } else { upto++; int reader = subs[upto].Slice.ReaderIndex; current = subs[upto].DocsAndPositionsEnum; currentBase = mergeState.DocBase[reader]; currentMap = mergeState.DocMaps[reader]; } } int doc = current.NextDoc(); if (doc != NO_MORE_DOCS) { // compact deletions doc = currentMap.Get(doc); if (doc == -1) { continue; } return(this.doc = currentBase + doc); } else { current = null; } } }