FIX Container concept requires erase_element

[SVN r29804]
This commit is contained in:
Michael Stevens 2005-06-27 12:37:27 +00:00
parent d08d75f289
commit dfb27459c5
6 changed files with 35 additions and 1 deletions

View File

@ -199,6 +199,10 @@ namespace boost { namespace numeric { namespace ublas {
reference insert_element (size_type i, size_type j, const_reference t) {
return (operator () (i, j) = t);
}
BOOST_UBLAS_INLINE
void erase_element (size_type i, size_type j) {
return (operator () (i, j) = value_type/*zero*/());
}
// Zeroing
BOOST_UBLAS_INLINE

View File

@ -384,6 +384,12 @@ namespace boost { namespace numeric { namespace ublas {
return (data () [triangular_type::element (layout_type (), j, size_, i, size_)] = type_traits<value_type>::conj (t));
}
}
BOOST_UBLAS_INLINE
void erase_element (size_type i, size_type j) {
BOOST_UBLAS_CHECK (i < size_, bad_index ());
BOOST_UBLAS_CHECK (j < size_, bad_index ());
data () [triangular_type::element (layout_type (), i, size_, j, size_)] = value_type/*zero*/();
}
// Zeroing
BOOST_UBLAS_INLINE

View File

@ -163,7 +163,10 @@ namespace boost { namespace numeric { namespace ublas {
reference insert_element (size_type i, size_type j, const_reference t) {
return (at_element (i, j) = t);
}
void erase_element (size_type i, size_type j) {
return (at_element (i, j) = value_type/*zero*/());
}
// Zeroing
BOOST_UBLAS_INLINE
void clear () {
@ -1075,6 +1078,10 @@ namespace boost { namespace numeric { namespace ublas {
reference insert_element (size_type i, size_type j, const_reference t) {
return (at_element (i, j) = t);
}
BOOST_UBLAS_INLINE
void erase_element (size_type i, size_type j) {
return (at_element (i, j) = value_type/*zero*/());
}
// Zeroing
BOOST_UBLAS_INLINE

View File

@ -171,6 +171,10 @@ namespace boost { namespace numeric { namespace ublas {
reference insert_element (size_type i, size_type j, const_reference t) {
return (operator () (i, j) = t);
}
BOOST_UBLAS_INLINE
void erase_element (size_type i, size_type j) {
return (operator () (i, j) = value_type/*zero*/());
}
// Zeroing
BOOST_UBLAS_INLINE

View File

@ -153,6 +153,10 @@ namespace boost { namespace numeric { namespace ublas {
reference insert_element (size_type i, size_type j, const_reference t) {
return (operator () (i, j) = t);
}
BOOST_UBLAS_INLINE
void erase_element (size_type i, size_type j) {
return (operator () (i, j) = value_type/*zero*/());
}
// Zeroing
BOOST_UBLAS_INLINE

View File

@ -132,6 +132,10 @@ namespace boost { namespace numeric { namespace ublas {
reference insert_element (size_type i, const_reference t) {
return (data () [i] = t);
}
BOOST_UBLAS_INLINE
void erase_element (size_type i) {
data () [i] = value_type/*zero*/();
}
// Zeroing
BOOST_UBLAS_INLINE
@ -1258,6 +1262,11 @@ namespace boost { namespace numeric { namespace ublas {
BOOST_UBLAS_CHECK (i < size_, bad_index ());
return (data_ [i] = t);
}
BOOST_UBLAS_INLINE
void erase_element (size_type i) {
BOOST_UBLAS_CHECK (i < size_, bad_index ());
return (data_ [i] = value_type/*zero*/());
}
// Zeroing
BOOST_UBLAS_INLINE