Я хочу использовать Boost's any_range
для обработки нескольких неоднородных диапазонов данных.Тип моих диапазонов данных известен как вектор Fusion, например:
typedef vector<double, int, char> TypeSequence
Учитывая такой тип, я хочу написать шаблон для получения следующего типа, такого как:
vector<AnyRange<double>::value, AnyRange<int>::value, AnyRange<char>::value>
, где AnyRange
определяется как:
using namespace boost;
template <typename T>
struct AnyRange
{
typedef typename any_range<typename T, forward_pass_traversal_tag, int, std::ptrdiff_t> value;
};
Я пытался и потерпел неудачу.Это возможно даже с Fusion?MPL?Или, возможно, я иду по неверному пути с any_range
.