()
| 337 | thisLevel = ret; |
| 338 | return ret.iterator(); |
| 339 | } |
| 340 | |
| 341 | @Override |
| 342 | protected Iterator<Box> pull() { |
| 343 | if (thisLevel.size() == 0) return null; |
| 344 | |
| 345 | Set<Box> nextLevel = new LinkedHashSet<>(); |
| 346 | for (Box b : thisLevel) |
| 347 | if (!b.disconnected) |
| 348 | nextLevel.addAll(map.apply(b)); |
| 349 | nextLevel.removeAll(ret); |
| 350 | ret.addAll(nextLevel); |
| 351 | thisLevel = nextLevel; |
| 352 | |
| 353 | return thisLevel.iterator(); |
| 354 | |
| 355 | } |
| 356 | }.reset() |