4#ifndef TETL_TYPE_TRAITS_IS_BASE_OF_HPP
5#define TETL_TYPE_TRAITS_IS_BASE_OF_HPP
7#include <etl/_type_traits/bool_constant.hpp>
8#include <etl/_type_traits/is_class.hpp>
14auto test_pre_ptr_convertible(B
const volatile*) -> true_type;
16auto test_pre_ptr_convertible(
void const volatile*) -> false_type;
18template <
typename,
typename>
19auto test_pre_is_base_of(...) -> true_type;
20template <
typename B,
typename D>
21auto test_pre_is_base_of(
int) ->
decltype(test_pre_ptr_convertible<B>(
static_cast<D*>(
nullptr)));
33template <
typename Base,
typename Derived>
36 is_class_v<Base>
and is_class_v<Derived>
and decltype(detail::test_pre_is_base_of<Base, Derived>(0))::value
Definition adjacent_find.hpp:9
constexpr bool is_base_of_v
Definition is_base_of.hpp:40
If Derived is derived from Base or if both are the same non-union class (in both cases ignoring cv-qu...
Definition is_base_of.hpp:37