Agrupar sequências de valores

Gostaria de saber se existe alguma maneira bacana de usar as novas APIs de fluxo para "agrupar" sequências de valores.

por exemplo. divida uma série de números inteiros em grupos de números inteiros em que cada grupo é uma sequência numérica ascendente:

IntStream seq = IntStream.of(1, 2, 3, -1, -1, 1, 2, 1, 2);
IntFunction next = i -> i + 1;

// DESIRED OUTPUT: [[1,2,3], [-1], [-1], [1,2], [1,2]]

questionAnswers(3)

yourAnswerToTheQuestion