subview_col/subview_row setting via initializer_list
This commit is contained in:
@@ -364,6 +364,7 @@ class subview_col : public subview<eT>
|
||||
inline void operator= (const subview<eT>& x);
|
||||
inline void operator= (const subview_col& x);
|
||||
inline void operator= (const eT val);
|
||||
inline void operator= (const std::initializer_list<eT>& list);
|
||||
|
||||
template<typename T1>
|
||||
inline void operator= (const Base<eT,T1>& x);
|
||||
@@ -452,6 +453,7 @@ class subview_row : public subview<eT>
|
||||
inline void operator= (const subview<eT>& x);
|
||||
inline void operator= (const subview_row& x);
|
||||
inline void operator= (const eT val);
|
||||
inline void operator= (const std::initializer_list<eT>& list);
|
||||
|
||||
template<typename T1>
|
||||
inline void operator= (const Base<eT,T1>& x);
|
||||
|
||||
@@ -3157,6 +3157,22 @@ subview_col<eT>::operator=(const subview_col<eT>& X)
|
||||
|
||||
|
||||
|
||||
template<typename eT>
|
||||
inline
|
||||
void
|
||||
subview_col<eT>::operator=(const std::initializer_list<eT>& list)
|
||||
{
|
||||
arma_extra_debug_sigprint();
|
||||
|
||||
const uword N = uword(list.size());
|
||||
|
||||
arma_debug_assert_same_size(subview<eT>::n_rows, subview<eT>::n_cols, N, 1, "copy into submatrix");
|
||||
|
||||
arrayops::copy( access::rwp(colmem), list.begin(), N );
|
||||
}
|
||||
|
||||
|
||||
|
||||
template<typename eT>
|
||||
inline
|
||||
void
|
||||
@@ -3761,6 +3777,28 @@ subview_row<eT>::operator=(const eT val)
|
||||
|
||||
|
||||
|
||||
template<typename eT>
|
||||
inline
|
||||
void
|
||||
subview_row<eT>::operator=(const std::initializer_list<eT>& list)
|
||||
{
|
||||
arma_extra_debug_sigprint();
|
||||
|
||||
const uword N = uword(list.size());
|
||||
|
||||
arma_debug_assert_same_size(subview<eT>::n_rows, subview<eT>::n_cols, 1, N, "copy into submatrix");
|
||||
|
||||
auto it = list.begin();
|
||||
|
||||
for(uword ii=0; ii < N; ++ii)
|
||||
{
|
||||
(*this).operator[](ii) = (*it);
|
||||
++it;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
template<typename eT>
|
||||
template<typename T1>
|
||||
inline
|
||||
|
||||
Reference in New Issue
Block a user