class Bar { interface Foo {} interface Predicate {} interface Function {} static public void bar() { filter(null, and(compose(w(), x()), compose(w(), compose(z(), x())) )); } static Function z() { return null; } static Function x() { return null; } private static Predicate w() { return null; } public static Iterable filter(final Iterable u, final Predicate p) { return null; } public static Predicate and(Predicate... c) { return null; } public static Predicate compose(Predicate p, Function f) { return null; } public static Function compose(Function g, Function f) { return null; } }