T - public class Generator<T> extends java.lang.Object implements java.lang.Iterable<T>, ToStream<T>
import static cyclops.stream.Generator.*;
int i = 100;
ReactiveSeq.generate(suspend(infinitely(),s->s.yield(i++)))
.take(6)
.printOut();
100
101
102
103
104
105
106
ReactiveSeq.generate(suspend((Integer i)->i!=4, s-> {
Generator<Integer> gen1 = suspend(times(5),s2->s2.yield(i++));
Generator<Integer> gen2 = suspend(times(2),s2->s2.yield(k--));
return s.yieldAll(gen1.stream(),gen2.stream());
}
))
.take(12)
.printOut();
| Modifier and Type | Class and Description |
|---|---|
static interface |
Generator.GeneratorFunction<T> |
static interface |
Generator.GeneratorSupplier<T> |
static class |
Generator.Suspended<T> |
| Constructor and Description |
|---|
Generator(Generator.Suspended suspended,
Generator.GeneratorSupplier<T> work) |
Generator(Generator.Suspended suspended,
Maybe<T> value,
Generator.GeneratorSupplier<T> remainderOfWorkToBeDone) |
Generator(Generator.Suspended suspended,
T value,
Generator.GeneratorSupplier<T> work) |
| Modifier and Type | Method and Description |
|---|---|
T |
extract() |
static BooleanFn0 |
infinitely() |
java.util.Iterator<T> |
iterator() |
static BooleanFn0 |
once() |
static <T> Generator<T> |
suspend(java.util.function.BooleanSupplier pred,
Generator.GeneratorFunction<T> value) |
static <T> Generator<T> |
suspend(Generator.GeneratorFunction<T> value) |
static <T> Generator<T> |
suspend(java.util.function.Predicate<? super T> pred,
Generator.GeneratorFunction<T> value) |
static <T> Generator<T> |
suspendRef(java.util.function.BooleanSupplier pred,
java.util.function.Supplier<T> value) |
static <T> Generator<T> |
suspendRef(java.util.function.Predicate<? super T> pred,
java.util.function.Supplier<T> value) |
static <T> Generator<T> |
suspendRef(java.util.function.Supplier<T> value) |
static BooleanFn0 |
times(int times) |
ConvertableSequence<T> |
to() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitfutureStream, getStreamable, isEmpty, jdkStream, reactiveSeq, reveresedJDKStream, reveresedStream, streampublic Generator(Generator.Suspended suspended, Maybe<T> value, Generator.GeneratorSupplier<T> remainderOfWorkToBeDone)
public Generator(Generator.Suspended suspended, T value, Generator.GeneratorSupplier<T> work)
public Generator(Generator.Suspended suspended, Generator.GeneratorSupplier<T> work)
public ConvertableSequence<T> to()
public T extract()
public static <T> Generator<T> suspend(Generator.GeneratorFunction<T> value)
public static <T> Generator<T> suspend(java.util.function.BooleanSupplier pred, Generator.GeneratorFunction<T> value)
public static <T> Generator<T> suspend(java.util.function.Predicate<? super T> pred, Generator.GeneratorFunction<T> value)
public static <T> Generator<T> suspendRef(java.util.function.Supplier<T> value)
public static <T> Generator<T> suspendRef(java.util.function.BooleanSupplier pred, java.util.function.Supplier<T> value)
public static <T> Generator<T> suspendRef(java.util.function.Predicate<? super T> pred, java.util.function.Supplier<T> value)
public java.util.Iterator<T> iterator()
iterator in interface java.lang.Iterable<T>public static BooleanFn0 infinitely()
public static BooleanFn0 times(int times)
public static BooleanFn0 once()