()
| 614 | checkNotNull(retainIfTrue); |
| 615 | return new AbstractIterator<T>() { |
| 616 | @Override |
| 617 | protected T computeNext() { |
| 618 | while (unfiltered.hasNext()) { |
| 619 | T element = unfiltered.next(); |
| 620 | if (retainIfTrue.apply(element)) { |
| 621 | return element; |
| 622 | } |
| 623 | } |
| 624 | return endOfData(); |
| 625 | } |
| 626 | }; |
| 627 | } |
| 628 |