protected override int DocsEnumNextDoc() { while (true) { int docId = docsEnum.NextDoc(); if (docId == DocIdSetIterator.NO_MORE_DOCS) { return(docId); } if (!alreadyEmittedDocs.GetAndSet(docId)) { return(docId); //if it wasn't previously set, return it } } }