Package io.vavr

Class API.ForLazy4Try<T1,​T2,​T3,​T4>

  • Type Parameters:
    T1 - the component type of the 1st Try
    T2 - the component type of the 2nd Try
    T3 - the component type of the 3rd Try
    T4 - the component type of the 4th Try
    Enclosing class:
    API

    public static class API.ForLazy4Try<T1,​T2,​T3,​T4>
    extends java.lang.Object
    A lazily evaluated For-comprehension with 4 Trys.

    Constructed via For(...) and evaluated by calling yield(...). Construction is side-effect free; underlying Trys are traversed only when yield(...) is invoked.

    • Method Detail

      • yield

        public <R> Try<R> yield​(@NonNull Function4<? super T1,​? super T2,​? super T3,​? super T4,​? extends R> f)
        Produces results by mapping the Cartesian product of all bound values.

        Evaluation is lazy and delegated to the underlying Trys by composing flatMap and map chains.

        Type Parameters:
        R - the element type of the resulting Try
        Parameters:
        f - a function mapping a tuple of bound values to a result
        Returns:
        an Try containing mapped results
        Throws:
        java.lang.NullPointerException - if f is null