mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-08-12 19:59:05 +08:00
Fix duplicates of array_size bewteen unsupported and Core
This commit is contained in:
parent
d83db761a2
commit
607be65a03
@ -290,7 +290,7 @@ protected:
|
|||||||
* - std::array (c++11)
|
* - std::array (c++11)
|
||||||
* - some internal types such as SingleRange and AllRange
|
* - some internal types such as SingleRange and AllRange
|
||||||
*
|
*
|
||||||
* The second template parameter ease SFINAE-based specializations.
|
* The second template parameter eases SFINAE-based specializations.
|
||||||
*/
|
*/
|
||||||
template<typename T, typename EnableIf = void> struct array_size {
|
template<typename T, typename EnableIf = void> struct array_size {
|
||||||
enum { value = Dynamic };
|
enum { value = Dynamic };
|
||||||
@ -303,8 +303,14 @@ template<typename T> struct array_size<T,typename internal::enable_if<((T::SizeA
|
|||||||
template<typename T, int N> struct array_size<const T (&)[N]> {
|
template<typename T, int N> struct array_size<const T (&)[N]> {
|
||||||
enum { value = N };
|
enum { value = N };
|
||||||
};
|
};
|
||||||
|
template<typename T, int N> struct array_size<T (&)[N]> {
|
||||||
|
enum { value = N };
|
||||||
|
};
|
||||||
|
|
||||||
#ifdef EIGEN_HAS_CXX11
|
#if EIGEN_HAS_CXX11
|
||||||
|
template<typename T, std::size_t N> struct array_size<const std::array<T,N> > {
|
||||||
|
enum { value = N };
|
||||||
|
};
|
||||||
template<typename T, std::size_t N> struct array_size<std::array<T,N> > {
|
template<typename T, std::size_t N> struct array_size<std::array<T,N> > {
|
||||||
enum { value = N };
|
enum { value = N };
|
||||||
};
|
};
|
||||||
|
@ -200,19 +200,15 @@ EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const T& array_get(const array<T,N>& a) {
|
|||||||
return a[I];
|
return a[I];
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename T> struct array_size;
|
|
||||||
template<class T, std::size_t N> struct array_size<array<T,N> > {
|
template<class T, std::size_t N> struct array_size<array<T,N> > {
|
||||||
static const size_t value = N;
|
static const size_t value = N;
|
||||||
};
|
};
|
||||||
template <typename T> struct array_size;
|
|
||||||
template<class T, std::size_t N> struct array_size<array<T,N>& > {
|
template<class T, std::size_t N> struct array_size<array<T,N>& > {
|
||||||
static const size_t value = N;
|
static const size_t value = N;
|
||||||
};
|
};
|
||||||
template <typename T> struct array_size;
|
|
||||||
template<class T, std::size_t N> struct array_size<const array<T,N> > {
|
template<class T, std::size_t N> struct array_size<const array<T,N> > {
|
||||||
static const size_t value = N;
|
static const size_t value = N;
|
||||||
};
|
};
|
||||||
template <typename T> struct array_size;
|
|
||||||
template<class T, std::size_t N> struct array_size<const array<T,N>& > {
|
template<class T, std::size_t N> struct array_size<const array<T,N>& > {
|
||||||
static const size_t value = N;
|
static const size_t value = N;
|
||||||
};
|
};
|
||||||
@ -251,14 +247,6 @@ template<std::size_t I, class T, std::size_t N> constexpr inline T const& array_
|
|||||||
|
|
||||||
#undef STD_GET_ARR_HACK
|
#undef STD_GET_ARR_HACK
|
||||||
|
|
||||||
template <typename T> struct array_size;
|
|
||||||
template<class T, std::size_t N> struct array_size<const std::array<T,N> > {
|
|
||||||
static const size_t value = N;
|
|
||||||
};
|
|
||||||
template <typename T> struct array_size;
|
|
||||||
template<class T, std::size_t N> struct array_size<std::array<T,N> > {
|
|
||||||
static const size_t value = N;
|
|
||||||
};
|
|
||||||
} // end namespace internal
|
} // end namespace internal
|
||||||
} // end namespace Eigen
|
} // end namespace Eigen
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user