in src/main/java/org/apache/sling/query/impl/iterator/tree/BfsTreeIterator.java [43:56]
protected T getElement() {
if (currentIterator.hasNext()) {
T resource = currentIterator.next();
queue.add(resource);
return resource;
}
if (!queue.isEmpty()) {
currentIterator = provider.listChildren(queue.pop());
return getElement();
}
return null;
}