Arene Base
Fundamental Utilities For Safety Critical C++
Loading...
Searching...
No Matches
std::is_convertible_detail Namespace Reference

Function Documentation

◆ check()

template<typename To>
void std::is_convertible_detail::check ( To )
noexcept

Implementation function declared but not defined that accepts an argument of the specified type.

Template Parameters
ToThe type of the argument

Variable Documentation

◆ is_convertible_v

template<typename From, typename To, typename = arene::base::constraints<>>
bool std::is_convertible_detail::is_convertible_v = false
externconstexpr

Type trait to detect if one type is convertible to another.

Template Parameters
FromThe type to (try to) convert from
ToThe type to (try to) convert to

◆ is_convertible_v< From, To, arene::base::constraints< > >

template<typename From, typename To>
bool std::is_convertible_detail::is_convertible_v< From, To, arene::base::constraints< > >
externconstexpr
Initial value:
=
true

Type trait to detect if one type is convertible to another.

This specialization handles the case that they are

Template Parameters
FromThe type to (try to) convert from
ToThe type to (try to) convert to

◆ is_convertible_v< From, To, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< From >, void > >, enable_if_t< is_same_v< remove_cv_t< To >, void > > > >

template<typename From, typename To>
bool std::is_convertible_detail::is_convertible_v< From, To, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< From >, void > >, enable_if_t< is_same_v< remove_cv_t< To >, void > > > >
externconstexpr
Initial value:
=
constexpr bool is_same_or_more_cv_qualified_v
Type trait for checking if TypeToCheck has the same cv-qualification as Baseline, or is more cv-quali...

Type trait to detect if one type is convertible to another.

This specialization handles the case that the source and target are both void

Template Parameters
FromThe type to (try to) convert from
ToThe type to (try to) convert to

◆ is_same_or_more_cv_qualified_v

template<typename TypeToCheck, typename Baseline, typename = arene::base::constraints<>>
bool std::is_convertible_detail::is_same_or_more_cv_qualified_v = false
externconstexpr

Type trait for checking if TypeToCheck has the same cv-qualification as Baseline, or is more cv-qualified.

Template Parameters
TypeToCheckThe type to check
BaselineThe type to check against

◆ is_same_or_more_cv_qualified_v< TypeToCheck const volatile, Baseline const volatile, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< TypeToCheck >, TypeToCheck > >, enable_if_t< is_same_v< remove_cv_t< Baseline >, Baseline > > > >

template<typename TypeToCheck, typename Baseline>
bool std::is_convertible_detail::is_same_or_more_cv_qualified_v< TypeToCheck const volatile, Baseline const volatile, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< TypeToCheck >, TypeToCheck > >, enable_if_t< is_same_v< remove_cv_t< Baseline >, Baseline > > > > = true
externconstexpr

Type trait for checking if TypeToCheck has the same cv-qualification as Baseline, or is more cv-qualified.

This specialization is for the case that Baseline is const volatile and TypeToCheck is const volatile

Template Parameters
TypeToCheckThe type to check
BaselineThe type to check against

◆ is_same_or_more_cv_qualified_v< TypeToCheck const volatile, Baseline const, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< TypeToCheck >, TypeToCheck > >, enable_if_t< is_same_v< remove_cv_t< Baseline >, Baseline > > > >

template<typename TypeToCheck, typename Baseline>
bool std::is_convertible_detail::is_same_or_more_cv_qualified_v< TypeToCheck const volatile, Baseline const, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< TypeToCheck >, TypeToCheck > >, enable_if_t< is_same_v< remove_cv_t< Baseline >, Baseline > > > > = true
externconstexpr

Type trait for checking if TypeToCheck has the same cv-qualification as Baseline, or is more cv-qualified.

This specialization is for the case that Baseline is const and TypeToCheck is const volatile

Template Parameters
TypeToCheckThe type to check
BaselineThe type to check against

◆ is_same_or_more_cv_qualified_v< TypeToCheck const volatile, Baseline volatile, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< TypeToCheck >, TypeToCheck > >, enable_if_t< is_same_v< remove_cv_t< Baseline >, Baseline > > > >

template<typename TypeToCheck, typename Baseline>
bool std::is_convertible_detail::is_same_or_more_cv_qualified_v< TypeToCheck const volatile, Baseline volatile, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< TypeToCheck >, TypeToCheck > >, enable_if_t< is_same_v< remove_cv_t< Baseline >, Baseline > > > > = true
externconstexpr

Type trait for checking if TypeToCheck has the same cv-qualification as Baseline, or is more cv-qualified.

This specialization is for the case that Baseline is volatile and TypeToCheck is const volatile

Template Parameters
TypeToCheckThe type to check
BaselineThe type to check against

◆ is_same_or_more_cv_qualified_v< TypeToCheck const, Baseline const, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< TypeToCheck >, TypeToCheck > >, enable_if_t< is_same_v< remove_cv_t< Baseline >, Baseline > > > >

template<typename TypeToCheck, typename Baseline>
bool std::is_convertible_detail::is_same_or_more_cv_qualified_v< TypeToCheck const, Baseline const, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< TypeToCheck >, TypeToCheck > >, enable_if_t< is_same_v< remove_cv_t< Baseline >, Baseline > > > > = true
externconstexpr

Type trait for checking if TypeToCheck has the same cv-qualification as Baseline, or is more cv-qualified.

This specialization is for the case that Baseline is const and TypeToCheck is const

Template Parameters
TypeToCheckThe type to check
BaselineThe type to check against

◆ is_same_or_more_cv_qualified_v< TypeToCheck volatile, Baseline volatile, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< TypeToCheck >, TypeToCheck > >, enable_if_t< is_same_v< remove_cv_t< Baseline >, Baseline > > > >

template<typename TypeToCheck, typename Baseline>
bool std::is_convertible_detail::is_same_or_more_cv_qualified_v< TypeToCheck volatile, Baseline volatile, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< TypeToCheck >, TypeToCheck > >, enable_if_t< is_same_v< remove_cv_t< Baseline >, Baseline > > > > = true
externconstexpr

Type trait for checking if TypeToCheck has the same cv-qualification as Baseline, or is more cv-qualified.

This specialization is for the case that Baseline is volatile and TypeToCheck is volatile

Template Parameters
TypeToCheckThe type to check
BaselineThe type to check against

◆ is_same_or_more_cv_qualified_v< TypeToCheck, Baseline, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< Baseline >, Baseline > > > >

template<typename TypeToCheck, typename Baseline>
bool std::is_convertible_detail::is_same_or_more_cv_qualified_v< TypeToCheck, Baseline, arene::base::constraints< enable_if_t< is_same_v< remove_cv_t< Baseline >, Baseline > > > > = true
externconstexpr

Type trait for checking if TypeToCheck has the same cv-qualification as Baseline, or is more cv-qualified.

This specialization is for the case that Baseline is not cv-qualified

Template Parameters
TypeToCheckThe type to check
BaselineThe type to check against