diff src/ov-base-sparse.cc @ 8150:283989f2da9b

make null assignment matlab compatible
author Jaroslav Hajek <highegg@gmail.com>
date Fri, 26 Sep 2008 11:52:01 -0400
parents 91d7440211e7
children 22462fd58e66
line wrap: on
line diff
--- a/src/ov-base-sparse.cc
+++ b/src/ov-base-sparse.cc
@@ -196,6 +196,23 @@
   typ.invalidate_type ();
 }
 
+template <class MT>
+void
+octave_base_sparse<MT>::delete_elements (const octave_value_list& idx)
+{
+  octave_idx_type len = idx.length ();
+
+  Array<idx_vector> ra_idx (len);
+
+  for (octave_idx_type i = 0; i < len; i++)
+    ra_idx(i) = idx(i).index_vector ();
+
+  matrix.maybe_delete_elements (ra_idx);
+
+  // Invalidate the matrix type
+  typ.invalidate_type ();
+}
+
 template <class T>
 octave_value 
 octave_base_sparse<T>::resize (const dim_vector& dv, bool) const