All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.echocat.jsu.SpliteratorUtils Maven / Gradle / Ivy

There is a newer version: 2.0.6
Show newest version
package org.echocat.jsu;

import javax.annotation.Nonnegative;
import javax.annotation.Nonnull;
import java.util.List;
import java.util.Spliterator;
import java.util.function.Predicate;
import java.util.function.Supplier;

public final class SpliteratorUtils {

    @Nonnull
    public static  Spliterator takeWhile(@Nonnull Spliterator source, @Nonnegative @Nonnull Predicate predicate) {
        return new TakeWhile<>(source, predicate);
    }

    @Nonnull
    public static  Spliterator> batch(@Nonnull Spliterator source, @Nonnegative @Nonnull Supplier batchSize) {
        return new Batch<>(source, batchSize);
    }

    @Nonnull
    public static  Spliterator> batch(@Nonnull Spliterator source, @Nonnegative int batchSize) {
        return batch(source, () -> batchSize);
    }

    @Nonnull
    public static  Spliterator generate(@Nonnull Generator generator) {
        return new ContinuingGenerator<>(generator);
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy