java.lang.Object
com.jnape.palatable.lambda.functions.builtin.fn1.Flatten<A>
Type Parameters:
A - the nested Iterable element type
All Implemented Interfaces:
Fn1<Iterable<? extends Iterable<? extends A>>,Iterable<A>>, Applicative<Iterable<A>,Fn1<Iterable<? extends Iterable<? extends A>>,?>>, Cartesian<Iterable<? extends Iterable<? extends A>>,Iterable<A>,Fn1<?,?>>, Cocartesian<Iterable<? extends Iterable<? extends A>>,Iterable<A>,Fn1<?,?>>, Contravariant<Iterable<? extends Iterable<? extends A>>,Profunctor<?,Iterable<A>,Fn1<?,?>>>, Functor<Iterable<A>,Fn1<Iterable<? extends Iterable<? extends A>>,?>>, Profunctor<Iterable<? extends Iterable<? extends A>>,Iterable<A>,Fn1<?,?>>, Monad<Iterable<A>,Fn1<Iterable<? extends Iterable<? extends A>>,?>>, MonadReader<Iterable<? extends Iterable<? extends A>>,Iterable<A>,Fn1<Iterable<? extends Iterable<? extends A>>,?>>, MonadRec<Iterable<A>,Fn1<Iterable<? extends Iterable<? extends A>>,?>>, MonadWriter<Iterable<? extends Iterable<? extends A>>,Iterable<A>,Fn1<Iterable<? extends Iterable<? extends A>>,?>>

public final class Flatten<A> extends Object implements Fn1<Iterable<? extends Iterable<? extends A>>,Iterable<A>>
Given a nested Iterable of Iterables, return a lazily flattening Iterable of the nested elements.
  • Field Details

    • INSTANCE

      private static final Flatten<?> INSTANCE
  • Constructor Details

    • Flatten

      private Flatten()
  • Method Details

    • checkedApply

      public Iterable<A> checkedApply(Iterable<? extends Iterable<? extends A>> iterables)
      Description copied from interface: Fn1
      Invoke this function with the given argument, potentially throwing any Throwable.
      Specified by:
      checkedApply in interface Fn1<Iterable<? extends Iterable<? extends A>>,Iterable<A>>
      Parameters:
      iterables - the argument
      Returns:
      the result of the function application
    • flatten

      public static <A> Flatten<A> flatten()
    • flatten

      public static <A> Iterable<A> flatten(Iterable<? extends Iterable<? extends A>> as)