Возвращает новую последовательность без вложенных последовательностей.
template<
typename Sequence
>
typename result_of::flatten<Sequence>::type flatten(Sequence& seq);
template<
typename Sequence
>
typename result_of::flatten<Sequence const>::type flatten(Sequence const& seq);
flatten(seq);
Тип возврата:
Семантика: Возвращает новую последовательность, содержащую все листовые элементысек.
Постоянно. Возвращает взгляд, который лениво оценивается.
#include <boost/fusion/algorithm/transformation/flatten.hpp>
#include <boost/fusion/include/flatten.hpp>
const vector<int, int, vector<int, int>, int> vec(1, 2, make_vector(3, 4), 5);
assert(flatten(vec) == make_vector(1, 2, 3, 4, 5)));