public <C> C map(final Function2<T1, T2, C> f) throws Exception { return f.apply(_1, _2); }
default <V> Function2<T1, T2, V> andThen(Function1<? super R, ? extends V> f) { Objects.requireNonNull(f); return (T1 t1, T2 t2) -> f.apply(apply(t1, t2)); }
/** * Equivalent to {@code map("map", f)}. * @see #map(String, Function2) */ default <R> Task<R> map(final Function2<T1, T2, R> f) { return map("map: " + _taskDescriptor.getDescription(f.getClass().getName()), tuple -> f.apply(tuple._1(), tuple._2())); }
/** * Equivalent to {@code flatMap("flatMap", f)}. * @see #flatMap(String, Function2) */ default <R> Task<R> flatMap(final Function2<T1, T2, Task<R>> f) { return flatMap("flatMap: " + _taskDescriptor.getDescription(f.getClass().getName()), tuple -> f.apply(tuple._1(), tuple._2())); }
/** * Equivalent to {@code withSideEffect("sideEffect", func)}. * @see #withSideEffect(String, Function2) */ default Tuple2Task<T1, T2> withSideEffect(Function2<T1, T2, Task<?>> func) { return cast(Task.super.withSideEffect("sideEffect: " + _taskDescriptor.getDescription(func.getClass().getName()), tuple -> func.apply(tuple._1(), tuple._2()))); }
return map(desc, tuple -> f.apply(tuple._1(), tuple._2()));
return flatMap(desc, tuple -> f.apply(tuple._1(), tuple._2()));
return cast(Task.super.withSideEffect(desc, tuple -> func.apply(tuple._1(), tuple._2())));
public <C> C map(final Function2<T1, T2, C> f) throws Exception { return f.apply(_1, _2); }
default <V> Function2<T1, T2, V> andThen(Function1<? super R, ? extends V> f) { Objects.requireNonNull(f); return (T1 t1, T2 t2) -> f.apply(apply(t1, t2)); }
/** * Equivalent to {@code map("map", f)}. * @see #map(String, Function2) */ default <R> Task<R> map(final Function2<T1, T2, R> f) { return map("map: " + _taskDescriptor.getDescription(f.getClass().getName()), tuple -> f.apply(tuple._1(), tuple._2())); }
/** * Equivalent to {@code flatMap("flatMap", f)}. * @see #flatMap(String, Function2) */ default <R> Task<R> flatMap(final Function2<T1, T2, Task<R>> f) { return flatMap("flatMap: " + _taskDescriptor.getDescription(f.getClass().getName()), tuple -> f.apply(tuple._1(), tuple._2())); }
/** * Equivalent to {@code withSideEffect("sideEffect", func)}. * @see #withSideEffect(String, Function2) */ default Tuple2Task<T1, T2> withSideEffect(Function2<T1, T2, Task<?>> func) { return cast(Task.super.withSideEffect("sideEffect: " + _taskDescriptor.getDescription(func.getClass().getName()), tuple -> func.apply(tuple._1(), tuple._2()))); }
return map(desc, tuple -> f.apply(tuple._1(), tuple._2()));
return flatMap(desc, tuple -> f.apply(tuple._1(), tuple._2()));
return cast(Task.super.withSideEffect(desc, tuple -> func.apply(tuple._1(), tuple._2())));