summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--compat/array-size.hpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/compat/array-size.hpp b/compat/array-size.hpp
index 4d9b6ce6..fd313e6e 100644
--- a/compat/array-size.hpp
+++ b/compat/array-size.hpp
@@ -9,6 +9,7 @@ template<typename T, size_t N> struct array_size_<T(*)[N]> : std::integral_const
template<typename T, size_t N> struct array_size_<T[N]> : std::integral_constant<size_t, N> {};
template<typename T, size_t N> struct array_size_<std::array<T, N>> : std::integral_constant<size_t, N> {};
template<typename T, size_t N> struct array_size_<StaticArray<N, T>> : std::integral_constant<size_t, N> {};
+template<size_t N, class T, class U> constexpr std::size_t arraySize(U(T::*)[N]) { return N; }
template<typename C, typename T> struct array_size_<T C::*> : std::integral_constant<size_t, array_size_<std::remove_cvref_t<T>>::value> {};