@Override public LongIterator nextBatch() { if ( startId >= highExcluded ) { return null; } long endId = min( highExcluded, findRoofId( startId ) ); final LongIterator result = range( startId, endId - 1 /*excluded*/ ); startId = endId; return result; }
@Override public LongIterator nextBatch() { if ( endId <= lowIncluded ) { return null; } long startId = findFloorId( endId ); final LongIterator result = range( startId, endId - 1 /*excluded*/ ); endId = max( lowIncluded, startId ); return result; }
@Override public LongIterator nextBatch() { if ( startId >= highExcluded ) { return null; } long endId = min( highExcluded, findRoofId( startId ) ); final LongIterator result = range( startId, endId - 1 /*excluded*/ ); startId = endId; return result; }
@Override public LongIterator nextBatch() { if ( endId <= lowIncluded ) { return null; } long startId = findFloorId( endId ); final LongIterator result = range( startId, endId - 1 /*excluded*/ ); endId = max( lowIncluded, startId ); return result; }