mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
Replace Eigen type metaprogramming with corresponding std types and make use of alias templates
This commit is contained in:
committed by
Antonio Sánchez
parent
514f90c9ff
commit
421cbf0866
@@ -34,7 +34,7 @@ class TensorBase<Derived, ReadOnlyAccessors>
|
||||
typedef internal::traits<Derived> DerivedTraits;
|
||||
typedef typename DerivedTraits::Scalar Scalar;
|
||||
typedef typename DerivedTraits::Index Index;
|
||||
typedef typename internal::remove_const<Scalar>::type CoeffReturnType;
|
||||
typedef std::remove_const_t<Scalar> CoeffReturnType;
|
||||
static const int NumDimensions = DerivedTraits::NumDimensions;
|
||||
|
||||
// Generic nullary operation support.
|
||||
@@ -318,9 +318,9 @@ class TensorBase<Derived, ReadOnlyAccessors>
|
||||
}
|
||||
|
||||
EIGEN_DEVICE_FUNC
|
||||
EIGEN_STRONG_INLINE const typename internal::conditional<NumTraits<CoeffReturnType>::IsComplex,
|
||||
TensorCwiseUnaryOp<internal::scalar_conjugate_op<Scalar>, const Derived>,
|
||||
Derived>::type
|
||||
EIGEN_STRONG_INLINE const std::conditional_t<NumTraits<CoeffReturnType>::IsComplex,
|
||||
TensorCwiseUnaryOp<internal::scalar_conjugate_op<Scalar>, const Derived>,
|
||||
Derived>
|
||||
conjugate() const {
|
||||
return choose(Cond<NumTraits<CoeffReturnType>::IsComplex>(), unaryExpr(internal::scalar_conjugate_op<Scalar>()), derived());
|
||||
}
|
||||
@@ -419,9 +419,9 @@ class TensorBase<Derived, ReadOnlyAccessors>
|
||||
|
||||
template<typename NewType>
|
||||
EIGEN_DEVICE_FUNC
|
||||
EIGEN_STRONG_INLINE const typename internal::conditional<internal::is_same<NewType, CoeffReturnType>::value,
|
||||
Derived,
|
||||
TensorConversionOp<NewType, const Derived> >::type
|
||||
EIGEN_STRONG_INLINE const std::conditional_t<internal::is_same<NewType, CoeffReturnType>::value,
|
||||
Derived,
|
||||
TensorConversionOp<NewType, const Derived> >
|
||||
cast() const {
|
||||
return choose(Cond<internal::is_same<NewType, CoeffReturnType>::value>(), derived(), TensorConversionOp<NewType, const Derived>(derived()));
|
||||
}
|
||||
@@ -717,26 +717,26 @@ class TensorBase<Derived, ReadOnlyAccessors>
|
||||
}
|
||||
|
||||
template <typename Dims> EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE
|
||||
const TensorReductionOp<internal::AndReducer, const Dims, const typename internal::conditional<internal::is_same<bool, CoeffReturnType>::value, Derived, TensorConversionOp<bool, const Derived> >::type >
|
||||
const TensorReductionOp<internal::AndReducer, const Dims, const std::conditional_t<internal::is_same<bool, CoeffReturnType>::value, Derived, TensorConversionOp<bool, const Derived> > >
|
||||
all(const Dims& dims) const {
|
||||
return cast<bool>().reduce(dims, internal::AndReducer());
|
||||
}
|
||||
|
||||
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE
|
||||
const TensorReductionOp<internal::AndReducer, const DimensionList<Index, NumDimensions>, const typename internal::conditional<internal::is_same<bool, CoeffReturnType>::value, Derived, TensorConversionOp<bool, const Derived> >::type >
|
||||
const TensorReductionOp<internal::AndReducer, const DimensionList<Index, NumDimensions>, const std::conditional_t<internal::is_same<bool, CoeffReturnType>::value, Derived, TensorConversionOp<bool, const Derived> > >
|
||||
all() const {
|
||||
DimensionList<Index, NumDimensions> in_dims;
|
||||
return cast<bool>().reduce(in_dims, internal::AndReducer());
|
||||
}
|
||||
|
||||
template <typename Dims> EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE
|
||||
const TensorReductionOp<internal::OrReducer, const Dims, const typename internal::conditional<internal::is_same<bool, CoeffReturnType>::value, Derived, TensorConversionOp<bool, const Derived> >::type >
|
||||
const TensorReductionOp<internal::OrReducer, const Dims, const std::conditional_t<internal::is_same<bool, CoeffReturnType>::value, Derived, TensorConversionOp<bool, const Derived> > >
|
||||
any(const Dims& dims) const {
|
||||
return cast<bool>().reduce(dims, internal::OrReducer());
|
||||
}
|
||||
|
||||
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE
|
||||
const TensorReductionOp<internal::OrReducer, const DimensionList<Index, NumDimensions>, const typename internal::conditional<internal::is_same<bool, CoeffReturnType>::value, Derived, TensorConversionOp<bool, const Derived> >::type >
|
||||
const TensorReductionOp<internal::OrReducer, const DimensionList<Index, NumDimensions>, const std::conditional_t<internal::is_same<bool, CoeffReturnType>::value, Derived, TensorConversionOp<bool, const Derived> > >
|
||||
any() const {
|
||||
DimensionList<Index, NumDimensions> in_dims;
|
||||
return cast<bool>().reduce(in_dims, internal::OrReducer());
|
||||
|
||||
Reference in New Issue
Block a user