Iterable<JComponent> () { return new Iterable<>() { @Override public @NotNull Iterator<JComponent> iterator() { Iterable<JComponent> components = JBIterable.<Fragment>empty() .append(myPrimaryColumn.fragments) .append(mySecondaryColumn.fragments) .map(it -> it.myComponent); return components.iterator(); } }; }