Remove brigand from FunctionInterface

Replace with features in `vtkm::List`.
This commit is contained in:
Kenneth Moreland 2022-02-09 13:56:26 -07:00
parent be8004b01a
commit a771359d72
2 changed files with 8 additions and 10 deletions

@ -17,13 +17,12 @@
#error FunctionInterfaceDetailPre.h must be included from FunctionInterface.h
#endif
#include <vtkm/List.h>
#include <vtkm/Types.h>
#include <vtkm/internal/IndexTag.h>
#include <type_traits>
#include <vtkm/internal/brigand.hpp>
#define VTKM_MAX_FUNCTION_PARAMETERS 20
@ -600,8 +599,8 @@ struct FunctionSigInfo<R(ArgTypes...)>
using ArityType = std::integral_constant<int, static_cast<int>(Arity)>;
using ResultType = R;
using Components = brigand::list<R, ArgTypes...>;
using Parameters = brigand::list<ArgTypes...>;
using Components = vtkm::List<R, ArgTypes...>;
using Parameters = vtkm::List<ArgTypes...>;
};
template <int, typename>
@ -609,7 +608,7 @@ struct AtType;
template <int Index, typename R, typename... ArgTypes>
struct AtType<Index, R(ArgTypes...)>
{
using type = brigand::at_c<brigand::list<R, ArgTypes...>, Index>;
using type = vtkm::ListAt<vtkm::List<R, ArgTypes...>, Index>;
};
//============================================================================

@ -29,13 +29,12 @@ $# Ignore the following comment. It is meant for the generated file.
#error FunctionInterfaceDetailPre.h must be included from FunctionInterface.h
#endif
#include <vtkm/List.h>
#include <vtkm/Types.h>
#include <vtkm/internal/IndexTag.h>
#include <type_traits>
#include <vtkm/internal/brigand.hpp>
$py(max_parameters=20)\
#define VTKM_MAX_FUNCTION_PARAMETERS $(max_parameters)
@ -131,8 +130,8 @@ struct FunctionSigInfo<R(ArgTypes...)>
using ArityType = std::integral_constant<int, static_cast<int>(Arity)>;
using ResultType = R;
using Components = brigand::list<R, ArgTypes...>;
using Parameters = brigand::list<ArgTypes...>;
using Components = vtkm::List<R, ArgTypes...>;
using Parameters = vtkm::List<ArgTypes...>;
};
template <int, typename>
@ -140,7 +139,7 @@ struct AtType;
template <int Index, typename R, typename... ArgTypes>
struct AtType<Index, R(ArgTypes...)>
{
using type = brigand::at_c<brigand::list<R, ArgTypes...>, Index>;
using type = vtkm::ListAt<vtkm::List<R, ArgTypes...>, Index>;
};
//============================================================================