// "Fix all 'Simplify stream API call chains' problems in file" "true" import java.util.*; import java.util.function.Function; import java.util.stream.Stream; public class Main { interface MyFunction extends Function {} public static void main(String[] args) { MyFunction fn = "xyz"::equals; System.out.println(Stream.of("xyz").map(fn).anyMatch(Boolean::booleanValue)); } public boolean simpleFn(List list, Function fn) { return list.stream().map(fn).allMatch(Boolean::booleanValue); } public boolean ternaryFn(List list, Function fn, Function fn2, boolean b) { return list.stream().map(b ? fn : fn2).allMatch(Boolean::booleanValue); } public boolean doubleTernary(List list, Function fn, Function fn2, boolean b, boolean b2) { return list.stream().map(b ? fn : b2 ? fn2 : fn).allMatch(Boolean::booleanValue); } MyFunction fn3 = "xyz"::equals; public boolean doubleTernaryOtherType(List list, Function fn, Function fn2, boolean b, boolean b2) { return list.stream().map(b ? fn : b2 ? fn2 : fn3).allMatch(Boolean::booleanValue); } public boolean ternaryFnMrGeneric(List list, Function fn, boolean b) { return list.stream().map(b ? String::isEmpty : fn).allMatch(Boolean::booleanValue); } public boolean ternaryFnMrGenericComment(List list, Function fn, boolean b) { return list.stream().map(b ? // select /* comment */ String::isEmpty : /* comment2 */fn).allMatch(Boolean::booleanValue); } public boolean doubleTernaryMr(List list, boolean b, boolean b2) { return list.stream().map(b ? String::isEmpty : b2 ? "foo"::equals : "bar"::equals) .allMatch(Boolean::booleanValue); } public boolean allMatchValueOf(List list) { return list.stream().map(String::isEmpty).allMatch(b -> { return Boolean.valueOf(b); }); } public boolean anyMatchBooleanValue(List list) { return list.stream().map(String::isEmpty).anyMatch(/* ditto boolean!*/Boolean::booleanValue); } public boolean noneMatchDittoLambda(List list) { return list.stream().map(String::isEmpty).noneMatch(b -> b); } public boolean anyMatchBooleanEquals(List list) { return list.stream().map(String::isEmpty).anyMatch(Boolean.TRUE::equals); } public boolean anyMatchBooleanEqualsFalse(List list) { return list.stream().map(String::isEmpty).anyMatch(Boolean.FALSE::equals); } public boolean anyMatchBooleanEqualsLambda(List list) { return list.stream().map(String::isEmpty).anyMatch(b -> Boolean.TRUE.equals(b)); } public boolean allMatchBooleanEqualsLambda(List list) { return list.stream().map(String::isEmpty).allMatch(b -> Boolean.FALSE.equals((b))); } public boolean noneMatchBooleanEqualsLambda(List list) { return list.stream().map(String::isEmpty).noneMatch(b -> Boolean.FALSE.equals((!b))); } interface Source { Optional containsDescendantOf(String name); } public static boolean testNullityInference(Stream sources, String name) { return sources.map((s) -> s.containsDescendantOf(name).orElse(true)).allMatch(Boolean.FALSE::equals); } public static boolean testNullityInference2(Stream sources, String name) { return sources.map((s) -> s.containsDescendantOf(name).orElse(null)).allMatch(Boolean.FALSE::equals); } }