Skip to content

Commit b3b65a8

Browse files
authored
Merge pull request #4353 from roystgnr/std_enable_if
Deprecate boostcopy::enable_if_c
2 parents 887dd78 + a185149 commit b3b65a8

12 files changed

Lines changed: 57 additions & 55 deletions

include/geom/node.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ class Node : public Point,
9090
*/
9191
template <typename T,
9292
typename = typename
93-
boostcopy::enable_if_c<ScalarTraits<T>::value,void>::type>
93+
std::enable_if<ScalarTraits<T>::value,void>::type>
9494
explicit Node (const T x) :
9595
Point (x,0,0)
9696
{ this->set_id() = invalid_id; }

include/geom/point.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ class Point : public TypeVector<Real>
7272
*/
7373
template <typename T,
7474
typename = typename
75-
boostcopy::enable_if_c<ScalarTraits<T>::value,void>::type>
75+
std::enable_if<ScalarTraits<T>::value,void>::type>
7676
Point (const T x) :
7777
TypeVector<Real> (x,0,0)
7878
{}

include/numerics/dense_matrix.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ class DenseMatrix : public DenseMatrixBase<T>
276276
* \returns A reference to *this.
277277
*/
278278
template<typename T2, typename T3>
279-
typename boostcopy::enable_if_c<
279+
typename std::enable_if<
280280
ScalarTraits<T2>::value, void >::type add (const T2 factor,
281281
const DenseMatrix<T3> & mat);
282282

@@ -1013,7 +1013,7 @@ DenseMatrix<T> & DenseMatrix<T>::operator *= (const T factor)
10131013
template<typename T>
10141014
template<typename T2, typename T3>
10151015
inline
1016-
typename boostcopy::enable_if_c<
1016+
typename std::enable_if<
10171017
ScalarTraits<T2>::value, void >::type
10181018
DenseMatrix<T>::add (const T2 factor,
10191019
const DenseMatrix<T3> & mat)

include/numerics/dense_matrix_base.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ class DenseMatrixBase
136136
* if T2 is scalar. Return type is void
137137
*/
138138
template <typename T2, typename T3>
139-
typename boostcopy::enable_if_c<
139+
typename std::enable_if<
140140
ScalarTraits<T2>::value, void >::type
141141
add (const T2 factor,
142142
const DenseMatrixBase<T3> & mat);
@@ -190,7 +190,7 @@ class DenseMatrixBase
190190
template<typename T>
191191
template<typename T2, typename T3>
192192
inline
193-
typename boostcopy::enable_if_c<
193+
typename std::enable_if<
194194
ScalarTraits<T2>::value, void >::type
195195
DenseMatrixBase<T>::add (const T2 factor,
196196
const DenseMatrixBase<T3> & mat)

include/numerics/dense_vector.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ class DenseVector : public DenseVectorBase<T>
182182
* \returns A reference to *this.
183183
*/
184184
template <typename T2, typename T3>
185-
typename boostcopy::enable_if_c<
185+
typename std::enable_if<
186186
ScalarTraits<T2>::value, void >::type
187187
add (const T2 factor,
188188
const DenseVector<T3> & vec);
@@ -472,7 +472,7 @@ DenseVector<T> & DenseVector<T>::operator*= (const T factor)
472472
template<typename T>
473473
template<typename T2, typename T3>
474474
inline
475-
typename boostcopy::enable_if_c<
475+
typename std::enable_if<
476476
ScalarTraits<T2>::value, void >::type
477477
DenseVector<T>::add (const T2 factor,
478478
const DenseVector<T3> & vec)

include/numerics/tensor_tools.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,8 @@ namespace TensorTools
4646

4747
template <typename T, typename T2>
4848
inline
49-
typename boostcopy::enable_if_c<ScalarTraits<T>::value && ScalarTraits<T2>::value,
50-
typename CompareTypes<T, T2>::supertype>::type
49+
typename std::enable_if<ScalarTraits<T>::value && ScalarTraits<T2>::value,
50+
typename CompareTypes<T, T2>::supertype>::type
5151
inner_product(const T & a, const T2& b)
5252
{ return a * b; }
5353

include/numerics/tensor_value.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ class TensorValue : public TypeTensor<T>
8686
const Scalar & zx=0,
8787
const Scalar & zy=0,
8888
typename
89-
boostcopy::enable_if_c<ScalarTraits<Scalar>::value,
89+
std::enable_if<ScalarTraits<Scalar>::value,
9090
const Scalar>::type & zz=0);
9191

9292
/**
@@ -139,7 +139,7 @@ class TensorValue : public TypeTensor<T>
139139
* Assignment-from-scalar operator. Used only to zero out tensors.
140140
*/
141141
template <typename Scalar>
142-
typename boostcopy::enable_if_c<
142+
typename std::enable_if<
143143
ScalarTraits<Scalar>::value,
144144
TensorValue &>::type
145145
operator = (const Scalar & libmesh_dbg_var(p) )
@@ -247,7 +247,7 @@ TensorValue<T>::TensorValue (const Scalar & xx,
247247
const Scalar & zx,
248248
const Scalar & zy,
249249
typename
250-
boostcopy::enable_if_c<ScalarTraits<Scalar>::value,
250+
std::enable_if<ScalarTraits<Scalar>::value,
251251
const Scalar>::type & zz) :
252252
TypeTensor<T> (xx,xy,xz,yx,yy,yz,zx,zy,zz)
253253
{

include/numerics/type_n_tensor.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ class TypeNTensor
9595
}
9696

9797
template <typename Scalar>
98-
typename boostcopy::enable_if_c<
98+
typename std::enable_if<
9999
ScalarTraits<Scalar>::value,
100100
TypeNTensor &>::type
101101
operator = (const Scalar & libmesh_dbg_var(p))
@@ -156,7 +156,7 @@ class TypeNTensor
156156
* Multiply every entry of a tensor by a number.
157157
*/
158158
template <typename Scalar>
159-
typename boostcopy::enable_if_c<
159+
typename std::enable_if<
160160
ScalarTraits<Scalar>::value,
161161
TypeNTensor<N,typename CompareTypes<T, Scalar>::supertype>>::type
162162
operator * (const Scalar) const
@@ -179,7 +179,7 @@ class TypeNTensor
179179
* Divide every entry of a tensor by a number.
180180
*/
181181
template <typename Scalar>
182-
typename boostcopy::enable_if_c<
182+
typename std::enable_if<
183183
ScalarTraits<Scalar>::value,
184184
TypeNTensor<N,typename CompareTypes<T, Scalar>::supertype>>::type
185185
operator / (const Scalar) const
@@ -317,7 +317,7 @@ void TypeNTensor<N, T>::add_scaled (const TypeNTensor<N, T2> & p, const T & fact
317317
}
318318

319319
template <unsigned int N, typename T, typename Scalar>
320-
typename boostcopy::enable_if_c<
320+
typename std::enable_if<
321321
ScalarTraits<Scalar>::value,
322322
TypeNTensor<N,typename CompareTypes<Scalar, T>::supertype>>::type
323323
operator * (const Scalar &, const TypeNTensor<N, T> &)
@@ -327,7 +327,7 @@ operator * (const Scalar &, const TypeNTensor<N, T> &)
327327
}
328328

329329
template <unsigned int N, typename T, typename Scalar>
330-
typename boostcopy::enable_if_c<
330+
typename std::enable_if<
331331
ScalarTraits<Scalar>::value,
332332
TypeNTensor<N,typename CompareTypes<Scalar, T>::supertype>>::type
333333
operator / (const Scalar &, const TypeNTensor<N, T> &)

include/numerics/type_tensor.h

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ class TypeTensor
9292
const Scalar & zx=0,
9393
const Scalar & zy=0,
9494
typename
95-
boostcopy::enable_if_c<ScalarTraits<Scalar>::value,
95+
std::enable_if<ScalarTraits<Scalar>::value,
9696
const Scalar>::type & zz=0);
9797

9898
/**
@@ -147,7 +147,7 @@ class TypeTensor
147147
* \returns A reference to *this.
148148
*/
149149
template <typename Scalar>
150-
typename boostcopy::enable_if_c<
150+
typename std::enable_if<
151151
ScalarTraits<Scalar>::value,
152152
TypeTensor &>::type
153153
operator = (const Scalar & libmesh_dbg_var(p))
@@ -254,7 +254,7 @@ class TypeTensor
254254
*/
255255
template <typename Scalar>
256256
auto
257-
operator * (const Scalar & scalar) const -> typename boostcopy::enable_if_c<
257+
operator * (const Scalar & scalar) const -> typename std::enable_if<
258258
ScalarTraits<Scalar>::value,
259259
TypeTensor<decltype(T() * scalar)>>::type;
260260

@@ -263,7 +263,7 @@ class TypeTensor
263263
*
264264
* \returns A reference to *this.
265265
*/
266-
template <typename Scalar, typename boostcopy::enable_if_c<
266+
template <typename Scalar, typename std::enable_if<
267267
ScalarTraits<Scalar>::value, int>::type = 0>
268268
const TypeTensor<T> & operator *= (const Scalar & factor)
269269
{
@@ -279,7 +279,7 @@ class TypeTensor
279279
* \returns A copy of the result, this tensor is unchanged.
280280
*/
281281
template <typename Scalar>
282-
typename boostcopy::enable_if_c<
282+
typename std::enable_if<
283283
ScalarTraits<Scalar>::value,
284284
TypeTensor<typename CompareTypes<T, Scalar>::supertype>>::type
285285
operator / (const Scalar &) const;
@@ -592,7 +592,7 @@ TypeTensor<T>::TypeTensor (const Scalar & xx,
592592
const Scalar & zx,
593593
const Scalar & zy,
594594
typename
595-
boostcopy::enable_if_c<ScalarTraits<Scalar>::value,
595+
std::enable_if<ScalarTraits<Scalar>::value,
596596
const Scalar>::type & zz)
597597
{
598598
_coords[0] = xx;
@@ -969,7 +969,7 @@ template <typename T>
969969
template <typename Scalar>
970970
inline
971971
auto
972-
TypeTensor<T>::operator * (const Scalar & factor) const -> typename boostcopy::enable_if_c<
972+
TypeTensor<T>::operator * (const Scalar & factor) const -> typename std::enable_if<
973973
ScalarTraits<Scalar>::value,
974974
TypeTensor<decltype(T() * factor)>>::type
975975
{
@@ -1004,7 +1004,7 @@ TypeTensor<T>::operator * (const Scalar & factor) const -> typename boostcopy::e
10041004

10051005
template <typename T, typename Scalar>
10061006
inline
1007-
typename boostcopy::enable_if_c<
1007+
typename std::enable_if<
10081008
ScalarTraits<Scalar>::value,
10091009
TypeTensor<typename CompareTypes<T, Scalar>::supertype>>::type
10101010
operator * (const Scalar & factor,
@@ -1016,7 +1016,7 @@ operator * (const Scalar & factor,
10161016
template <typename T>
10171017
template <typename Scalar>
10181018
inline
1019-
typename boostcopy::enable_if_c<
1019+
typename std::enable_if<
10201020
ScalarTraits<Scalar>::value,
10211021
TypeTensor<typename CompareTypes<T, Scalar>::supertype>>::type
10221022
TypeTensor<T>::operator / (const Scalar & factor) const

include/numerics/type_vector.h

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -88,13 +88,13 @@ class TypeVector
8888
*/
8989
template <typename Scalar1, typename Scalar2, typename Scalar3>
9090
TypeVector (typename
91-
boostcopy::enable_if_c<ScalarTraits<Scalar1>::value,
91+
std::enable_if<ScalarTraits<Scalar1>::value,
9292
const Scalar1>::type & x,
9393
typename
94-
boostcopy::enable_if_c<ScalarTraits<Scalar2>::value,
94+
std::enable_if<ScalarTraits<Scalar2>::value,
9595
const Scalar2>::type & y=0,
9696
typename
97-
boostcopy::enable_if_c<ScalarTraits<Scalar3>::value,
97+
std::enable_if<ScalarTraits<Scalar3>::value,
9898
const Scalar3>::type & z=0);
9999

100100
/**
@@ -106,7 +106,7 @@ class TypeVector
106106
template <typename Scalar>
107107
TypeVector (const Scalar & x,
108108
typename
109-
boostcopy::enable_if_c<ScalarTraits<Scalar>::value,
109+
std::enable_if<ScalarTraits<Scalar>::value,
110110
const Scalar>::type * sfinae = nullptr);
111111

112112
public:
@@ -147,7 +147,7 @@ class TypeVector
147147
* Assignment-from-scalar operator. Used only to zero out vectors.
148148
*/
149149
template <typename Scalar>
150-
typename boostcopy::enable_if_c<
150+
typename std::enable_if<
151151
ScalarTraits<Scalar>::value,
152152
TypeVector &>::type
153153
operator = (const Scalar & libmesh_dbg_var(p))
@@ -235,7 +235,7 @@ class TypeVector
235235
* \returns A copy of the result, this vector is unchanged.
236236
*/
237237
template <typename Scalar>
238-
typename boostcopy::enable_if_c<
238+
typename std::enable_if<
239239
ScalarTraits<Scalar>::value,
240240
TypeVector<typename CompareTypes<T, Scalar>::supertype>>::type
241241
operator * (const Scalar &) const;
@@ -253,7 +253,7 @@ class TypeVector
253253
* \returns A copy of the result, this vector is unchanged.
254254
*/
255255
template <typename Scalar>
256-
typename boostcopy::enable_if_c<
256+
typename std::enable_if<
257257
ScalarTraits<Scalar>::value,
258258
TypeVector<typename CompareTypes<T, Scalar>::supertype>>::type
259259
operator / (const Scalar &) const;
@@ -469,13 +469,13 @@ template <typename T>
469469
template <typename Scalar1, typename Scalar2, typename Scalar3>
470470
inline
471471
TypeVector<T>::TypeVector (typename
472-
boostcopy::enable_if_c<ScalarTraits<Scalar1>::value,
472+
std::enable_if<ScalarTraits<Scalar1>::value,
473473
const Scalar1>::type & x,
474474
typename
475-
boostcopy::enable_if_c<ScalarTraits<Scalar2>::value,
475+
std::enable_if<ScalarTraits<Scalar2>::value,
476476
const Scalar2>::type & y,
477477
typename
478-
boostcopy::enable_if_c<ScalarTraits<Scalar3>::value,
478+
std::enable_if<ScalarTraits<Scalar3>::value,
479479
const Scalar3>::type & z)
480480
{
481481
_coords[0] = x;
@@ -500,7 +500,7 @@ template <typename Scalar>
500500
inline
501501
TypeVector<T>::TypeVector (const Scalar & x,
502502
typename
503-
boostcopy::enable_if_c<ScalarTraits<Scalar>::value,
503+
std::enable_if<ScalarTraits<Scalar>::value,
504504
const Scalar>::type * /*sfinae*/)
505505
{
506506
_coords[0] = x;
@@ -735,7 +735,7 @@ TypeVector<T> TypeVector<T>::operator - () const
735735
template <typename T>
736736
template <typename Scalar>
737737
inline
738-
typename boostcopy::enable_if_c<
738+
typename std::enable_if<
739739
ScalarTraits<Scalar>::value,
740740
TypeVector<typename CompareTypes<T, Scalar>::supertype>>::type
741741
TypeVector<T>::operator * (const Scalar & factor) const
@@ -762,7 +762,7 @@ TypeVector<T>::operator * (const Scalar & factor) const
762762

763763
template <typename T, typename Scalar>
764764
inline
765-
typename boostcopy::enable_if_c<
765+
typename std::enable_if<
766766
ScalarTraits<Scalar>::value,
767767
TypeVector<typename CompareTypes<T, Scalar>::supertype>>::type
768768
operator * (const Scalar & factor,
@@ -800,7 +800,7 @@ const TypeVector<T> & TypeVector<T>::operator *= (const T & factor)
800800
template <typename T>
801801
template <typename Scalar>
802802
inline
803-
typename boostcopy::enable_if_c<
803+
typename std::enable_if<
804804
ScalarTraits<Scalar>::value,
805805
TypeVector<typename CompareTypes<T, Scalar>::supertype>>::type
806806
TypeVector<T>::operator / (const Scalar & factor) const

0 commit comments

Comments
 (0)