I'm searching some kind of meta vector/linked list. Seems like mpl::vector was the best way of doing this. But now there is hana. Unfortunately I can't find some kind of hana::vector. I saw an adapter for mpl::vector that's all. So that's mean mpl::vector is still the best way of doing things?
Hana was pretty quick to compile so I was like : well why not? But mpl is not that fast, do I really need to code mpl::vector myself?
boost::hana::tupleshould be a good-enough replacement formpl::vectorif what you need is a heterogeneous "list" of types/values.You can access an item in a particular index with
boost::hana::at, append items withboost::hana::append, remove them withboost::hana::removeand much more.Even if there isn't a 1-to-1 correspondence to
mpl::vector's interface, it should be trivial to implement some utility functions given the primitives mentioned above.If you need a list of types, you should use
boost::hana::tuple_t, which is syntactic sugar forhana::tuple(hana::type_c<Types>...).