abstract class BaseTask<T, S extends BaseTask<T, S>> { | |
public abstract S make<caret>Task(int depth, ParallelStream<T> coll); | |
} | |
class ForEachTask<T> extends BaseTask<T, ForEachTask<T>> { | |
public ForEachTask<T> makeTask(int depth, ParallelStream<T> coll) { | |
return new ForEachTask<T>(); | |
} | |
} | |
class ParallelStream<T> { | |
} |