dynamic algorithm
template <class T, class = void>
struct has_initialize : std::false_type
{
};
template <class T>
struct has_initialize<T, std::void_t<decltype(&T::initialize)>> : std::true_type
{
};
template <class T, class = void>
struct has_interaction : std::false_type
{
};
template <class T>
struct has_interaction<T, std::void_t<decltype(&T::interaction)>> : std::true_type
{
};
template <class T, class = void>
struct has_update : std::false_type
{
};
template <class T>
struct has_update<T, std::void_t<decltype(&T::update)>> : std::true_type
{
};Last updated