cmoon::meta::concatenate_types


Defined in module <cmoon.meta>


template<class... TypeLists>
using concatenate_types = /* see below */;


(1)

Type alias for a type_list<Ts1..., Ts2..., /* ... */, TsN...> where Tsi... comes from the templates types that would complete TypeListsi.

Any type in TypeLists... may be used, as long as it has template parameters.

Example



import <concepts>;
import <type_traits>;
import <tuple>;

import cmoon.meta;

int main()
{
    using tl = cmoon::meta::concatenate_types<std::tuple<int, float>, cmoon::meta::type_list<double, double>>;

    static_assert(std::same_as<tl, cmoon::meta::type_list<int, float, double, double>>);
}