Class ZipWith<A,​B,​C>

  • Type Parameters:
    A - The first input Iterable element type
    B - The second input Iterable element type
    C - The output Iterable element type
    All Implemented Interfaces:
    Fn1<Fn2<? super A,​? super B,​? extends C>,​Fn1<java.lang.Iterable<A>,​Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>>>>, Fn2<Fn2<? super A,​? super B,​? extends C>,​java.lang.Iterable<A>,​Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>>>, Fn3<Fn2<? super A,​? super B,​? extends C>,​java.lang.Iterable<A>,​java.lang.Iterable<B>,​java.lang.Iterable<C>>, Applicative<Fn1<java.lang.Iterable<A>,​Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>>>,​Fn1<Fn2<? super A,​? super B,​? extends C>,​?>>, Cartesian<Fn2<? super A,​? super B,​? extends C>,​Fn1<java.lang.Iterable<A>,​Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>>>,​Fn1<?,​?>>, Cocartesian<Fn2<? super A,​? super B,​? extends C>,​Fn1<java.lang.Iterable<A>,​Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>>>,​Fn1<?,​?>>, Contravariant<Fn2<? super A,​? super B,​? extends C>,​Profunctor<?,​Fn1<java.lang.Iterable<A>,​Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>>>,​Fn1<?,​?>>>, Functor<Fn1<java.lang.Iterable<A>,​Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>>>,​Fn1<Fn2<? super A,​? super B,​? extends C>,​?>>, Profunctor<Fn2<? super A,​? super B,​? extends C>,​Fn1<java.lang.Iterable<A>,​Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>>>,​Fn1<?,​?>>, Monad<Fn1<java.lang.Iterable<A>,​Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>>>,​Fn1<Fn2<? super A,​? super B,​? extends C>,​?>>, MonadReader<Fn2<? super A,​? super B,​? extends C>,​Fn1<java.lang.Iterable<A>,​Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>>>,​Fn1<Fn2<? super A,​? super B,​? extends C>,​?>>, MonadRec<Fn1<java.lang.Iterable<A>,​Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>>>,​Fn1<Fn2<? super A,​? super B,​? extends C>,​?>>, MonadWriter<Fn2<? super A,​? super B,​? extends C>,​Fn1<java.lang.Iterable<A>,​Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>>>,​Fn1<Fn2<? super A,​? super B,​? extends C>,​?>>

    public final class ZipWith<A,​B,​C>
    extends java.lang.Object
    implements Fn3<Fn2<? super A,​? super B,​? extends C>,​java.lang.Iterable<A>,​java.lang.Iterable<B>,​java.lang.Iterable<C>>
    Zip together two Iterables by applying a zipping function to the successive elements of each Iterable until one of them runs out of elements. Returns an Iterable containing the results.
    See Also:
    Zip
    • Field Detail

      • INSTANCE

        private static final ZipWith<?,​?,​?> INSTANCE
    • Constructor Detail

      • ZipWith

        private ZipWith()
    • Method Detail

      • checkedApply

        public java.lang.Iterable<C> checkedApply​(Fn2<? super A,​? super B,​? extends C> zipper,
                                                  java.lang.Iterable<A> as,
                                                  java.lang.Iterable<B> bs)
        Specified by:
        checkedApply in interface Fn3<Fn2<? super A,​? super B,​? extends C>,​java.lang.Iterable<A>,​java.lang.Iterable<B>,​java.lang.Iterable<C>>
      • zipWith

        public static <A,​B,​C> ZipWith<A,​B,​C> zipWith()
      • zipWith

        public static <A,​B,​C> Fn2<java.lang.Iterable<A>,​java.lang.Iterable<B>,​java.lang.Iterable<C>> zipWith​(Fn2<? super A,​? super B,​? extends C> zipper)
      • zipWith

        public static <A,​B,​C> Fn1<java.lang.Iterable<B>,​java.lang.Iterable<C>> zipWith​(Fn2<? super A,​? super B,​? extends C> zipper,
                                                                                                         java.lang.Iterable<A> as)
      • zipWith

        public static <A,​B,​C> java.lang.Iterable<C> zipWith​(Fn2<? super A,​? super B,​? extends C> zipper,
                                                                        java.lang.Iterable<A> as,
                                                                        java.lang.Iterable<B> bs)