Class MagnetizeBy<A>
- java.lang.Object
-
- com.jnape.palatable.lambda.functions.builtin.fn2.MagnetizeBy<A>
-
- Type Parameters:
A
- theIterable
element type
- All Implemented Interfaces:
Fn1<Fn2<? super A,? super A,? extends java.lang.Boolean>,Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>>
,Fn2<Fn2<? super A,? super A,? extends java.lang.Boolean>,java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>
,Applicative<Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>,Fn1<Fn2<? super A,? super A,? extends java.lang.Boolean>,?>>
,Cartesian<Fn2<? super A,? super A,? extends java.lang.Boolean>,Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>,Fn1<?,?>>
,Cocartesian<Fn2<? super A,? super A,? extends java.lang.Boolean>,Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>,Fn1<?,?>>
,Contravariant<Fn2<? super A,? super A,? extends java.lang.Boolean>,Profunctor<?,Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>,Fn1<?,?>>>
,Functor<Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>,Fn1<Fn2<? super A,? super A,? extends java.lang.Boolean>,?>>
,Profunctor<Fn2<? super A,? super A,? extends java.lang.Boolean>,Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>,Fn1<?,?>>
,Monad<Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>,Fn1<Fn2<? super A,? super A,? extends java.lang.Boolean>,?>>
,MonadReader<Fn2<? super A,? super A,? extends java.lang.Boolean>,Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>,Fn1<Fn2<? super A,? super A,? extends java.lang.Boolean>,?>>
,MonadRec<Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>,Fn1<Fn2<? super A,? super A,? extends java.lang.Boolean>,?>>
,MonadWriter<Fn2<? super A,? super A,? extends java.lang.Boolean>,Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>,Fn1<Fn2<? super A,? super A,? extends java.lang.Boolean>,?>>
public final class MagnetizeBy<A> extends java.lang.Object implements Fn2<Fn2<? super A,? super A,? extends java.lang.Boolean>,java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>
Given a binary predicate and an
, return anIterable
<A>
of the contiguous groups of elements that match the predicate pairwise.Iterable
<Iterable
<A>>Example:
magnetizeBy((x, y) -> x <= y, asList(1, 2, 3, 2, 2, 3, 2, 1)); // [[1, 2, 3], [2, 2, 3], [2], [1]]
-
-
Field Summary
Fields Modifier and Type Field Description private static MagnetizeBy<?>
INSTANCE
-
Constructor Summary
Constructors Modifier Constructor Description private
MagnetizeBy()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Iterable<java.lang.Iterable<A>>
checkedApply(Fn2<? super A,? super A,? extends java.lang.Boolean> predicate, java.lang.Iterable<A> as)
static <A> MagnetizeBy<A>
magnetizeBy()
static <A> Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>>
magnetizeBy(Fn2<? super A,? super A,? extends java.lang.Boolean> predicate)
static <A> java.lang.Iterable<java.lang.Iterable<A>>
magnetizeBy(Fn2<? super A,? super A,? extends java.lang.Boolean> predicate, java.lang.Iterable<A> as)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.jnape.palatable.lambda.functions.Fn1
andThen, carry, cartesian, censor, choose, cocartesian, diMap, diMapR, discardL, flatMap, fmap, lazyZip, listens, local, pure, self, thunk, toFunction, trampolineM, zip, zip
-
-
-
-
Field Detail
-
INSTANCE
private static final MagnetizeBy<?> INSTANCE
-
-
Method Detail
-
checkedApply
public java.lang.Iterable<java.lang.Iterable<A>> checkedApply(Fn2<? super A,? super A,? extends java.lang.Boolean> predicate, java.lang.Iterable<A> as)
-
magnetizeBy
public static <A> MagnetizeBy<A> magnetizeBy()
-
magnetizeBy
public static <A> Fn1<java.lang.Iterable<A>,java.lang.Iterable<java.lang.Iterable<A>>> magnetizeBy(Fn2<? super A,? super A,? extends java.lang.Boolean> predicate)
-
magnetizeBy
public static <A> java.lang.Iterable<java.lang.Iterable<A>> magnetizeBy(Fn2<? super A,? super A,? extends java.lang.Boolean> predicate, java.lang.Iterable<A> as)
-
-