saker.build Documentation TaskDoc JavaDoc Packages
public interface TaskDuplicationPredicate
Functional interface for checking if the associated task duplication should continue.

This interface is used when starting inner tasks in the build system. They can be duplicated to be executed multiple times and an instance of this interface can be used to specify the nature of this duplication.

The shouldInvokeOnceMore() function is called by the build system to determine if the associated task should be invoked once more.

Methods
public boolean
Checks if the associated task should be invoked once more.
public abstract boolean shouldInvokeOnceMore() throws RuntimeException
Checks if the associated task should be invoked once more.

This method should check if there is anything left to be done for duplicated tasks. If so, return true in which case a new instance of the task will be started and executed.

If this method returns false, it should return false for any further calls to it.

true if the associated task should be invoked once more.
RuntimeExceptionIf the predicate fails to determine its result. Implementations should not directly throw this exception, but return false instead. The handling of the exception is implementation dependent to the build system, but usually will be treated as if the associated task threw an exception.