public static <T1, T2, R> Case<Tuple2<T1, T2>, R> Case(Predicate<T1> predicate1, Predicate<T2> predicate2, Supplier<R> supplier) { return new Case2<>(predicate1, predicate2, value -> supplier.get()); }
public static <T1, T2, R> Case<Tuple2<T1, T2>, R> Case(Predicate<T1> predicate1, Predicate<T2> predicate2, Supplier<R> supplier) { return new Case2<>(predicate1, predicate2, value -> supplier.get()); }
public static <T1, T2, R> Case<Tuple2<T1, T2>, R> Case(Predicate<T1> predicate1, Predicate<T2> predicate2, Function<? super Tuple2<T1, T2>, ? extends R> fn) { return new Case2<>(predicate1, predicate2, fn); }
public static <T1, T2, R> Case<Tuple2<T1, T2>, R> Case(Predicate<T1> predicate1, Predicate<T2> predicate2, Function<? super Tuple2<T1, T2>, ? extends R> fn) { return new Case2<>(predicate1, predicate2, fn); }
@Test public void shouldMatchForPartial() { Tuple2<String, Integer> tuple2 = new Tuple2<>("tuple", 2); assertFalse(new Case2<>((String t1) -> t1.equals("tuple"), (Integer t2) -> false, __ -> "tuple2").test(tuple2).isPresent()); assertFalse(new Case2<>((String t1) -> false, (Integer t2) -> t2.equals(2), __ -> "tuple2").test(tuple2).isPresent()); assertFalse(new Case2<>((String t1) -> false, (Integer t2) -> false, __ -> "tuple2").test(tuple2).isPresent()); }