SpMat_meat.hpp (armadillo-10.8.2.tar.xz) | : | SpMat_meat.hpp (armadillo-11.0.0.tar.xz) | ||
---|---|---|---|---|
skipping to change at line 3049 | skipping to change at line 3049 | |||
arma_debug_check_bounds( (i >= n_elem), "SpMat::operator(): out of bounds" ); | arma_debug_check_bounds( (i >= n_elem), "SpMat::operator(): out of bounds" ); | |||
return get_value(i); | return get_value(i); | |||
} | } | |||
/** | /** | |||
* Element access; access the element at row in_rows and column in_col. | * Element access; access the element at row in_rows and column in_col. | |||
* If there is nothing at that position, 0 is returned. | * If there is nothing at that position, 0 is returned. | |||
*/ | */ | |||
#if defined(__cpp_multidimensional_subscript) | ||||
template<typename eT> | ||||
arma_inline | ||||
arma_warn_unused | ||||
SpMat_MapMat_val<eT> | ||||
SpMat<eT>::operator[] (const uword in_row, const uword in_col) | ||||
{ | ||||
return SpMat_MapMat_val<eT>((*this), cache, in_row, in_col); | ||||
} | ||||
template<typename eT> | ||||
arma_inline | ||||
arma_warn_unused | ||||
eT | ||||
SpMat<eT>::operator[] (const uword in_row, const uword in_col) const | ||||
{ | ||||
return get_value(in_row, in_col); | ||||
} | ||||
#endif | ||||
template<typename eT> | template<typename eT> | |||
arma_inline | arma_inline | |||
arma_warn_unused | arma_warn_unused | |||
SpMat_MapMat_val<eT> | SpMat_MapMat_val<eT> | |||
SpMat<eT>::at(const uword in_row, const uword in_col) | SpMat<eT>::at(const uword in_row, const uword in_col) | |||
{ | { | |||
return SpMat_MapMat_val<eT>((*this), cache, in_row, in_col); | return SpMat_MapMat_val<eT>((*this), cache, in_row, in_col); | |||
} | } | |||
template<typename eT> | template<typename eT> | |||
skipping to change at line 3269 | skipping to change at line 3291 | |||
bool | bool | |||
SpMat<eT>::has_nan() const | SpMat<eT>::has_nan() const | |||
{ | { | |||
arma_extra_debug_sigprint(); | arma_extra_debug_sigprint(); | |||
sync_csc(); | sync_csc(); | |||
return arrayops::has_nan(values, n_nonzero); | return arrayops::has_nan(values, n_nonzero); | |||
} | } | |||
template<typename eT> | ||||
inline | ||||
arma_warn_unused | ||||
bool | ||||
SpMat<eT>::has_nonfinite() const | ||||
{ | ||||
arma_extra_debug_sigprint(); | ||||
sync_csc(); | ||||
return (arrayops::is_finite(values, n_nonzero) == false); | ||||
} | ||||
//! returns true if the given index is currently in range | //! returns true if the given index is currently in range | |||
template<typename eT> | template<typename eT> | |||
arma_inline | arma_inline | |||
arma_warn_unused | arma_warn_unused | |||
bool | bool | |||
SpMat<eT>::in_range(const uword i) const | SpMat<eT>::in_range(const uword i) const | |||
{ | { | |||
return (i < n_elem); | return (i < n_elem); | |||
} | } | |||
skipping to change at line 6366 | skipping to change at line 6401 | |||
const unwrap_spmat<T1> U(X.get_ref()); | const unwrap_spmat<T1> U(X.get_ref()); | |||
const SpMat<T>& Y = U.M; | const SpMat<T>& Y = U.M; | |||
arma_debug_assert_same_size(out, Y, "SpMat::set_imag()"); | arma_debug_assert_same_size(out, Y, "SpMat::set_imag()"); | |||
SpMat<eT> tmp(arma::real(out),Y); // arma:: prefix required due to bugs in GC C 4.4 - 4.6 | SpMat<eT> tmp(arma::real(out),Y); // arma:: prefix required due to bugs in GC C 4.4 - 4.6 | |||
out.steal_mem(tmp); | out.steal_mem(tmp); | |||
} | } | |||
#ifdef ARMA_EXTRA_SPMAT_MEAT | #if defined(ARMA_EXTRA_SPMAT_MEAT) | |||
#include ARMA_INCFILE_WRAP(ARMA_EXTRA_SPMAT_MEAT) | #include ARMA_INCFILE_WRAP(ARMA_EXTRA_SPMAT_MEAT) | |||
#endif | #endif | |||
//! @} | //! @} | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 36 lines changed or added |