@@ -62,27 +62,27 @@ void ElementWiseKernel(GenericParameter const* ctx, linalg::TensorView<T, D> t,
62
62
#endif // !defined(XGBOOST_USE_CUDA)
63
63
64
64
template <typename T, std::int32_t kDim >
65
- auto cbegin (TensorView<T, kDim > v) { // NOLINT
65
+ auto cbegin (TensorView<T, kDim > const & v) { // NOLINT
66
66
auto it = common::MakeIndexTransformIter ([&](size_t i) -> std::remove_cv_t <T> const & {
67
67
return linalg::detail::Apply (v, linalg::UnravelIndex (i, v.Shape ()));
68
68
});
69
69
return it;
70
70
}
71
71
72
72
template <typename T, std::int32_t kDim >
73
- auto cend (TensorView<T, kDim > v) { // NOLINT
73
+ auto cend (TensorView<T, kDim > const & v) { // NOLINT
74
74
return cbegin (v) + v.Size ();
75
75
}
76
76
77
77
template <typename T, std::int32_t kDim >
78
- auto begin (TensorView<T, kDim > v) { // NOLINT
78
+ auto begin (TensorView<T, kDim >& v) { // NOLINT
79
79
auto it = common::MakeIndexTransformIter (
80
80
[&](size_t i) -> T& { return linalg::detail::Apply (v, linalg::UnravelIndex (i, v.Shape ())); });
81
81
return it;
82
82
}
83
83
84
84
template <typename T, std::int32_t kDim >
85
- auto end (TensorView<T, kDim > v) { // NOLINT
85
+ auto end (TensorView<T, kDim >& v) { // NOLINT
86
86
return begin (v) + v.Size ();
87
87
}
88
88
} // namespace linalg
0 commit comments