23#ifndef VCL_TYPES_TYPE_WRAPPER_H
24#define VCL_TYPES_TYPE_WRAPPER_H
26#include "variadic_templates.h"
39template<
typename... Args>
42 static constexpr uint size() {
return sizeof...(Args); }
51template<
typename... Args>
54 using type = std::tuple_element<0, std::tuple<Args...>>::type;
58template<
typename... Args>
65template<
typename T,
typename... Us>
72template<uint I,
typename... T>
75 using type =
TypeAt<I, T...>::type;
79template<
typename... Args>
85template<
typename... T>
A class representing a line segment in n-dimensional space. The class is parameterized by a PointConc...
Definition segment.h:43
constexpr uint indexInTypePack()
Function that returns the index of a Type T in a pack of types (variadic templates)....
Definition variadic_templates.h:75
Get the first type of a pack of types (variadic templates) or a TypeWrapper.
Definition variadic_templates.h:49
Allows to apply a function to each type in a variadic template pack.
Definition variadic_templates.h:166
Definition variadic_templates.h:128
Definition variadic_templates.h:143
Definition variadic_templates.h:134
A simple structure that wraps a list of variadic templates, without instantiating anything....
Definition type_wrapper.h:41