diff liboctave/Array.cc @ 9624:3fc7272937ce

implement Array<T>::clear overloads
author Jaroslav Hajek <highegg@gmail.com>
date Sun, 06 Sep 2009 10:54:36 +0200
parents a9b37bae1802
children c929f09457b7
line wrap: on
line diff
--- a/liboctave/Array.cc
+++ b/liboctave/Array.cc
@@ -88,6 +88,20 @@
 }
 
 template <class T>
+void
+Array<T>::clear (const dim_vector& dv)
+{
+  if (--rep->count <= 0)
+    delete rep;
+
+  rep = new ArrayRep (dv.numel ());
+  slice_data = rep->data;
+  slice_len = rep->len;
+
+  dimensions = dv;
+}
+
+template <class T>
 Array<T>
 Array<T>::squeeze (void) const
 {