void (TreeTraversal.GuidedIt<T> it, Condition<? super T> expand) { if (it.curChild == null) return; if (forceIgnore != Cond.FALSE && forceIgnore.valueOr(it.curChild)) return; if (it.curParent == null || expand == Conditions.alwaysTrue() || expand.value(it.curChild)) { it.queueNext(it.curChild); } else { it.result(it.curChild); } }