A - the element typepublic interface ImmutableIterable<A> extends EnhancedIterable<A>
EnhancedIterable that is safe from mutation.
May be infinite, finite, or empty.
| Modifier and Type | Method and Description |
|---|---|
default ImmutableNonEmptyIterable<A> |
append(A element) |
default ImmutableIterable<A> |
concat(ImmutableIterable<A> other) |
default ImmutableIterable<A> |
drop(int count)
Returns a new
ImmutableIterable that drops the first count elements of this ImmutableIterable. |
default ImmutableIterable<A> |
dropWhile(com.jnape.palatable.lambda.functions.Fn1<? super A,? extends Boolean> predicate) |
default ImmutableIterable<A> |
filter(com.jnape.palatable.lambda.functions.Fn1<? super A,? extends Boolean> predicate) |
default <B> ImmutableIterable<B> |
fmap(com.jnape.palatable.lambda.functions.Fn1<? super A,? extends B> f) |
default ImmutableIterable<A> |
intersperse(A a) |
static <A> ImmutableNonEmptyFiniteIterable<A> |
of(A first,
A... more) |
default <B,C> com.jnape.palatable.lambda.adt.hlist.Tuple2<? extends ImmutableIterable<B>,? extends ImmutableIterable<C>> |
partition(com.jnape.palatable.lambda.functions.Fn1<? super A,? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct2<B,C,?>> function)
Partitions this
ImmutableIterable given a disjoint mapping function. |
default ImmutableNonEmptyIterable<A> |
prepend(A element) |
default ImmutableIterable<A> |
prependAll(A a) |
default ImmutableIterable<? extends ImmutableNonEmptyFiniteIterable<A>> |
slide(int k)
"Slide" a window of
k elements across the ImmutableIterable by one element at a time. |
default com.jnape.palatable.lambda.adt.hlist.Tuple2<? extends ImmutableIterable<A>,? extends ImmutableIterable<A>> |
span(com.jnape.palatable.lambda.functions.Fn1<? super A,? extends Boolean> predicate) |
default NonEmptyIterable<? extends ImmutableIterable<A>> |
tails() |
default ImmutableFiniteIterable<A> |
take(int count) |
default ImmutableIterable<A> |
takeWhile(com.jnape.palatable.lambda.functions.Fn1<? super A,? extends Boolean> predicate) |
default <B,C> ImmutableIterable<C> |
zipWith(com.jnape.palatable.lambda.functions.Fn2<A,B,C> fn,
ImmutableIterable<B> other) |
concat, enhance, find, isEmpty, toArray, toCollection, zipWithforEach, iterator, spliteratordefault ImmutableNonEmptyIterable<A> append(A element)
append in interface EnhancedIterable<A>default ImmutableIterable<A> concat(ImmutableIterable<A> other)
default ImmutableIterable<A> drop(int count)
ImmutableIterable that drops the first count elements of this ImmutableIterable.drop in interface EnhancedIterable<A>count - the number of elements to drop from this ImmutableIterable.
Must be >= 0.
May exceed size of this ImmutableIterable, in which case, the result will be an
empty ImmutableIterable.ImmutableIterable<A>default ImmutableIterable<A> dropWhile(com.jnape.palatable.lambda.functions.Fn1<? super A,? extends Boolean> predicate)
dropWhile in interface EnhancedIterable<A>default ImmutableIterable<A> filter(com.jnape.palatable.lambda.functions.Fn1<? super A,? extends Boolean> predicate)
filter in interface EnhancedIterable<A>default <B> ImmutableIterable<B> fmap(com.jnape.palatable.lambda.functions.Fn1<? super A,? extends B> f)
fmap in interface EnhancedIterable<A>default ImmutableIterable<A> intersperse(A a)
intersperse in interface EnhancedIterable<A>default <B,C> com.jnape.palatable.lambda.adt.hlist.Tuple2<? extends ImmutableIterable<B>,? extends ImmutableIterable<C>> partition(com.jnape.palatable.lambda.functions.Fn1<? super A,? extends com.jnape.palatable.lambda.adt.coproduct.CoProduct2<B,C,?>> function)
ImmutableIterable given a disjoint mapping function.
Note that while the returned tuple must be constructed eagerly, the left and right iterables contained therein are both lazy, so comprehension over infinite iterables is supported.
partition in interface EnhancedIterable<A>B - The output left Iterable element type, as well as the CoProduct2 A typeC - The output right Iterable element type, as well as the CoProduct2 B typefunction - the mapping functionTuple2<ImmutableIterable<B>, ImmutableIterable<C>>default ImmutableNonEmptyIterable<A> prepend(A element)
prepend in interface EnhancedIterable<A>default ImmutableIterable<A> prependAll(A a)
prependAll in interface EnhancedIterable<A>default ImmutableIterable<? extends ImmutableNonEmptyFiniteIterable<A>> slide(int k)
k elements across the ImmutableIterable by one element at a time.
Example:
ImmutableIterable.of(1, 2, 3, 4, 5).slide(2); // [[1, 2], [2, 3], [3, 4], [4, 5]]
slide in interface EnhancedIterable<A>k - the number of elements in the sliding window. Must be >= 1.ImmutableIterable<ImmutableNonEmptyFiniteIterable<A>>default com.jnape.palatable.lambda.adt.hlist.Tuple2<? extends ImmutableIterable<A>,? extends ImmutableIterable<A>> span(com.jnape.palatable.lambda.functions.Fn1<? super A,? extends Boolean> predicate)
span in interface EnhancedIterable<A>default NonEmptyIterable<? extends ImmutableIterable<A>> tails()
tails in interface EnhancedIterable<A>default ImmutableFiniteIterable<A> take(int count)
take in interface EnhancedIterable<A>default ImmutableIterable<A> takeWhile(com.jnape.palatable.lambda.functions.Fn1<? super A,? extends Boolean> predicate)
takeWhile in interface EnhancedIterable<A>default <B,C> ImmutableIterable<C> zipWith(com.jnape.palatable.lambda.functions.Fn2<A,B,C> fn, ImmutableIterable<B> other)
@SafeVarargs static <A> ImmutableNonEmptyFiniteIterable<A> of(A first, A... more)
of in interface EnhancedIterable<A>Copyright © 2019. All rights reserved.