// returns true if anything was removed static <A> bool lambdaMapLike removeElementsThat(IPred<A> pred, Cl<A> c) { if (c == null || pred == null) false; Iterator<A> it = iterator(c); bool change; while (it.hasNext()) if (pred.get(it.next())) { it.remove(); set change; } ret change; } static <A> bool removeElementsThat(Cl<A> c, IPred<A> pred) { ret removeElementsThat(pred, c); }