23#ifndef VCL_TYPES_INHERITANCE_H
24#define VCL_TYPES_INHERITANCE_H
32template<
template<
typename... formal>
class base>
33struct IsDerivedFromImplementation
35 template<
typename... actual>
36 std::true_type operator()(base<actual...>*)
const;
38 std::false_type operator()(
void*)
const;
66template<
typename derived,
template<
typename...>
class base>
68 detail::IsDerivedFromImplementation<base>,
69 typename std::remove_cv<derived>::type*>::type;
std::invoke_result< detail::IsDerivedFromImplementation< base >, typename std::remove_cv< derived >::type * >::type IsDerivedFromTemplateSpecialization
Utility class that allows to check if given class 'Derived' is derived from a specialization of a tem...
Definition inheritance.h:69