types.hpp: add PtrCastable concept

This commit is contained in:
Nekotekina 2021-05-29 18:30:06 +03:00
parent d81a5b1423
commit eec9578619
2 changed files with 10 additions and 9 deletions

View file

@ -1010,3 +1010,10 @@ constexpr auto fill_array(const T&... args)
{
return fill_array_t<T...>{{args...}};
}
template <typename X, typename Y>
concept PtrCastable = requires(const volatile X* x, const volatile Y* y)
{
static_cast<const volatile Y*>(x);
static_cast<const volatile X*>(y);
};