Я хотел бы сгладить произвольные глубоко вложенные коллекции/структуры элементов некоторого типа T в Java, оптимально с помощью
- имеет только просмотр в реальном времени, а не скопированную коллекцию;
- не только обрабатывает коллекции, но и итераторы, массивы T произвольной размерности, итерации и все эти структуры произвольно смешанные и вложенные;
- статический тип безопасности.
Есть ли библиотека java, которая может справиться с этим?
Guava, похоже, обрабатывает только один уровень вложенности, т.е. Collection<Collection<T>> --flatten → Collection<T>.
lambdaj выглядит многообещающим: могу ли я каким-то образом объединить on(), asIterator() и flattenIterator(), чтобы достичь этого? Статически безопасным способом?