Тоесть придумывать новый метод для стрима некорректно и надо писать его для источника - итератора?
ещё раз стрим это апи для комбинации операций, источником может быть итератор, а может быть не итератор, конкретно в моём примере был сплитератор, итератор это вырожденный сплитератор, который не может сплитить, потому можно считать, что мои примеры выше, если смотреть в реализацию ждк 11 — не на итераторах, а на RangeIntSpliterator и UnorderedSliceSpliterator