mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
Initial fixes for bug #85.
Renamed meta_{true|false} to {true|false}_type, meta_if to conditional, is_same_type to is_same, un{ref|pointer|const} to remove_{reference|pointer|const} and makeconst to add_const.
Changed boolean type 'ret' member to 'value'.
Changed 'ret' members refering to types to 'type'.
Adapted all code occurences.
This commit is contained in:
@@ -74,13 +74,13 @@ template<typename _DerType, bool Enable> struct auto_diff_special_op;
|
||||
template<typename _DerType>
|
||||
class AutoDiffScalar
|
||||
: public internal::auto_diff_special_op
|
||||
<_DerType, !internal::is_same_type<typename internal::traits<typename internal::cleantype<_DerType>::type>::Scalar,
|
||||
typename NumTraits<typename internal::traits<typename internal::cleantype<_DerType>::type>::Scalar>::Real>::ret>
|
||||
<_DerType, !internal::is_same<typename internal::traits<typename internal::cleantype<_DerType>::type>::Scalar,
|
||||
typename NumTraits<typename internal::traits<typename internal::cleantype<_DerType>::type>::Scalar>::Real>::value>
|
||||
{
|
||||
public:
|
||||
typedef internal::auto_diff_special_op
|
||||
<_DerType, !internal::is_same_type<typename internal::traits<typename internal::cleantype<_DerType>::type>::Scalar,
|
||||
typename NumTraits<typename internal::traits<typename internal::cleantype<_DerType>::type>::Scalar>::Real>::ret> Base;
|
||||
<_DerType, !internal::is_same<typename internal::traits<typename internal::cleantype<_DerType>::type>::Scalar,
|
||||
typename NumTraits<typename internal::traits<typename internal::cleantype<_DerType>::type>::Scalar>::Real>::value> Base;
|
||||
typedef typename internal::cleantype<_DerType>::type DerType;
|
||||
typedef typename internal::traits<DerType>::Scalar Scalar;
|
||||
typedef typename NumTraits<Scalar>::Real Real;
|
||||
@@ -341,14 +341,14 @@ namespace internal {
|
||||
template<typename _DerType>
|
||||
struct auto_diff_special_op<_DerType, true>
|
||||
// : auto_diff_scalar_op<_DerType, typename NumTraits<Scalar>::Real,
|
||||
// is_same_type<Scalar,typename NumTraits<Scalar>::Real>::ret>
|
||||
// is_same<Scalar,typename NumTraits<Scalar>::Real>::value>
|
||||
{
|
||||
typedef typename cleantype<_DerType>::type DerType;
|
||||
typedef typename traits<DerType>::Scalar Scalar;
|
||||
typedef typename NumTraits<Scalar>::Real Real;
|
||||
|
||||
// typedef auto_diff_scalar_op<_DerType, typename NumTraits<Scalar>::Real,
|
||||
// is_same_type<Scalar,typename NumTraits<Scalar>::Real>::ret> Base;
|
||||
// is_same<Scalar,typename NumTraits<Scalar>::Real>::value> Base;
|
||||
|
||||
// using Base::operator+;
|
||||
// using Base::operator+=;
|
||||
|
||||
@@ -65,9 +65,9 @@ struct internal::traits<SkylineProduct<LhsNested, RhsNested, ProductMode> > {
|
||||
CoeffReadCost = Dynamic
|
||||
};
|
||||
|
||||
typedef typename internal::meta_if<ResultIsSkyline,
|
||||
typedef typename internal::conditional<ResultIsSkyline,
|
||||
SkylineMatrixBase<SkylineProduct<LhsNested, RhsNested, ProductMode> >,
|
||||
MatrixBase<SkylineProduct<LhsNested, RhsNested, ProductMode> > >::ret Base;
|
||||
MatrixBase<SkylineProduct<LhsNested, RhsNested, ProductMode> > >::type Base;
|
||||
};
|
||||
|
||||
namespace internal {
|
||||
|
||||
@@ -30,22 +30,22 @@ namespace internal {
|
||||
template<typename Scalar, typename CholmodType>
|
||||
void cholmod_configure_matrix(CholmodType& mat)
|
||||
{
|
||||
if (is_same_type<Scalar,float>::ret)
|
||||
if (is_same<Scalar,float>::value)
|
||||
{
|
||||
mat.xtype = CHOLMOD_REAL;
|
||||
mat.dtype = CHOLMOD_SINGLE;
|
||||
}
|
||||
else if (is_same_type<Scalar,double>::ret)
|
||||
else if (is_same<Scalar,double>::value)
|
||||
{
|
||||
mat.xtype = CHOLMOD_REAL;
|
||||
mat.dtype = CHOLMOD_DOUBLE;
|
||||
}
|
||||
else if (is_same_type<Scalar,std::complex<float> >::ret)
|
||||
else if (is_same<Scalar,std::complex<float> >::value)
|
||||
{
|
||||
mat.xtype = CHOLMOD_COMPLEX;
|
||||
mat.dtype = CHOLMOD_SINGLE;
|
||||
}
|
||||
else if (is_same_type<Scalar,std::complex<double> >::ret)
|
||||
else if (is_same<Scalar,std::complex<double> >::value)
|
||||
{
|
||||
mat.xtype = CHOLMOD_COMPLEX;
|
||||
mat.dtype = CHOLMOD_DOUBLE;
|
||||
|
||||
@@ -134,13 +134,13 @@ struct SluMatrix : SuperMatrix
|
||||
template<typename Scalar>
|
||||
void setScalarType()
|
||||
{
|
||||
if (internal::is_same_type<Scalar,float>::ret)
|
||||
if (internal::is_same<Scalar,float>::value)
|
||||
Dtype = SLU_S;
|
||||
else if (internal::is_same_type<Scalar,double>::ret)
|
||||
else if (internal::is_same<Scalar,double>::value)
|
||||
Dtype = SLU_D;
|
||||
else if (internal::is_same_type<Scalar,std::complex<float> >::ret)
|
||||
else if (internal::is_same<Scalar,std::complex<float> >::value)
|
||||
Dtype = SLU_C;
|
||||
else if (internal::is_same_type<Scalar,std::complex<double> >::ret)
|
||||
else if (internal::is_same<Scalar,std::complex<double> >::value)
|
||||
Dtype = SLU_Z;
|
||||
else
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user