alpaka
Abstraction Library for Parallel Kernel Acceleration
alpaka::meta::detail::CartesianProductImplHelper< TList< X... >, Head< T, Ts... >, Rests... > Struct Template Reference

#include <CartesianProduct.hpp>

Public Types

using type = typename CartesianProductImplHelper< type3, Rests... >::type
 
using type1 = TList< Concatenate< X, TList< T > >... >
 
using type2 = typename CartesianProductImplHelper< TList< X... >, TList< Ts... > >::type
 
using type3 = Concatenate< type1, type2 >
 

Detailed Description

template<template< typename... > class TList, typename... X, template< typename... > class Head, typename T, typename... Ts, typename... Rests>
struct alpaka::meta::detail::CartesianProductImplHelper< TList< X... >, Head< T, Ts... >, Rests... >

Definition at line 56 of file CartesianProduct.hpp.

Member Typedef Documentation

◆ type

template<template< typename... > class TList, typename... X, template< typename... > class Head, typename T , typename... Ts, typename... Rests>
using alpaka::meta::detail::CartesianProductImplHelper< TList< X... >, Head< T, Ts... >, Rests... >::type = typename CartesianProductImplHelper<type3, Rests...>::type

Definition at line 61 of file CartesianProduct.hpp.

◆ type1

template<template< typename... > class TList, typename... X, template< typename... > class Head, typename T , typename... Ts, typename... Rests>
using alpaka::meta::detail::CartesianProductImplHelper< TList< X... >, Head< T, Ts... >, Rests... >::type1 = TList<Concatenate<X, TList<T> >...>

Definition at line 58 of file CartesianProduct.hpp.

◆ type2

template<template< typename... > class TList, typename... X, template< typename... > class Head, typename T , typename... Ts, typename... Rests>
using alpaka::meta::detail::CartesianProductImplHelper< TList< X... >, Head< T, Ts... >, Rests... >::type2 = typename CartesianProductImplHelper<TList<X...>, TList<Ts...> >::type

Definition at line 59 of file CartesianProduct.hpp.

◆ type3

template<template< typename... > class TList, typename... X, template< typename... > class Head, typename T , typename... Ts, typename... Rests>
using alpaka::meta::detail::CartesianProductImplHelper< TList< X... >, Head< T, Ts... >, Rests... >::type3 = Concatenate<type1, type2>

Definition at line 60 of file CartesianProduct.hpp.


The documentation for this struct was generated from the following file: