38 #include "vtkABINamespace.h"
39 #include "vtkTypeListMacros.h"
43 VTK_ABI_NAMESPACE_BEGIN
58 template <
typename T,
typename U>
70 template <
bool Exp,
typename T,
typename F>
78 template <
typename From,
typename To>
86 template <
typename TList,
typename T>
94 template <
typename TList,
typename T>
101 template <
typename TList,
typename T>
109 template <
typename TList>
117 template <
typename TList,
typename Bad,
typename Good>
125 template <
typename TList,
typename Bad,
typename Good>
134 template <
typename TList,
typename T>
143 template <
typename TList>
150 template <
typename TList,
typename T>
153 VTK_ABI_NAMESPACE_END
156 #include "vtkTypeList.txx"
160 VTK_ABI_NAMESPACE_BEGIN
162 template <
typename... Ts>
165 VTK_ABI_NAMESPACE_END
typename vtkTypeList::detail::CreateImpl< Ts... >::type Create
Appends type T to TypeList TList and stores the result in Result.
Sets member Result to true if a conversion exists to convert type From to type To.
Sort the TypeList from most-derived to least-derived type, storing the sorted TypeList in Result.
Erase all type T from TypeList TList, storing the new list in Result.
Erase the first element of type T from TypeList TList, storing the new list in Result.
Sets the enum value Result to the index of type T in the TypeList TList.
Given a type T and a TypeList TList, store the most derived type of T in TList as Result.
Used to terminate a TypeList.
Replace all instances of Bad with Good in the TypeList TList, storing the new list in Result.
Replace the first instance of Bad with Good in the TypeList TList, storing the new list in Result.
Sets Result to T if Exp is true, or F if Exp is false.
Generic implementation of TypeList.
Remove all duplicate types from TypeList TList, storing the new list in Result.