groupInputsByType

internal fun groupInputsByType(inputs: List<PathSpec>): List<List<PathSpec>>

Groups all consecutive PathSpec provided to the stage configuration.

This method works by grouping all consecutive PathSpec with the same type together, forming one JavaCompile stage (as opposed to spawning one stage per PathSpec). The intention of this is to provide a way to optimize the pipeline by creating as little pipeline stages as possible.

Developer Note: This design is not the most optimal; The best way would be to directly pass this list to the stage, and the stage will construct a cmdSpec which encapsulates all compilation commands, achieving the same effect with only one stage. However, due to the current usage of buildCompileCmd, this is not possible at the moment.