diff liboctave/Array.cc @ 1735:d2ee993d40cd

[project @ 1996-01-12 07:46:09 by jwe]
author jwe
date Fri, 12 Jan 1996 07:48:03 +0000
parents e4d94a757f01
children 1281a23a34dd
line wrap: on
line diff
--- a/liboctave/Array.cc
+++ b/liboctave/Array.cc
@@ -42,54 +42,13 @@
 
 #include "lo-error.h"
 
-// The real representation of all arrays.
-
-template <class T>
-ArrayRep<T>::ArrayRep (int n)
-{
-  len = n;
-  count = 1;
-  data = new T [len];
-}
-
-template <class T>
-ArrayRep<T>::ArrayRep (const ArrayRep<T>& a)
-{
-  len = a.len;
-  count = 1;
-
-  data = new T [len];
-  for (int i = 0; i < len; i++)
-    data[i] = a.data[i];
-}
-
-template <class T>
-ArrayRep<T>::~ArrayRep (void)
-{
-  delete [] data;
-}
-
-template <class T>
-T&
-ArrayRep<T>::elem (int n)
-{
-  return data[n];
-}
-
-template <class T>
-T
-ArrayRep<T>::elem (int n) const
-{
-  return data[n];
-}
-
 // One dimensional array class.  Handles the reference counting for
 // all the derived classes.
 
 template <class T>
 Array<T>::Array (int n, const T& val)
 {
-  rep = new ArrayRep<T> (n);
+  rep = new ArrayRep (n);
 
   for (int i = 0; i < n; i++)
     rep->data[i] = val;
@@ -188,11 +147,11 @@
   if (n == length ())
     return;
 
-  ArrayRep<T> *old_rep = rep;
+  ArrayRep *old_rep = rep;
   const T *old_data = data ();
   int old_len = length ();
 
-  rep = new ArrayRep<T> (n);
+  rep = new ArrayRep (n);
 
   if (old_data && old_len > 0)
     {
@@ -219,11 +178,11 @@
   if (n == length ())
     return;
 
-  ArrayRep<T> *old_rep = rep;
+  ArrayRep *old_rep = rep;
   const T *old_data = data ();
   int old_len = length ();
 
-  rep = new ArrayRep<T> (n);
+  rep = new ArrayRep (n);
 
   int min_len = old_len < n ? old_len : n;
 
@@ -247,7 +206,7 @@
   if (rep->count > 1)
     {
       --rep->count;
-      rep = new ArrayRep<T> (*rep);
+      rep = new ArrayRep (*rep);
     }
   return rep->data;
 }
@@ -315,14 +274,14 @@
   if (r == dim1 () && c == dim2 ())
     return;
 
-  ArrayRep<T> *old_rep = rep;
+  ArrayRep *old_rep = rep;
   const T *old_data = data ();
 
   int old_d1 = dim1 ();
   int old_d2 = dim2 ();
   int old_len = length ();
 
-  rep = new ArrayRep<T> (r*c);
+  rep = new ArrayRep (r*c);
 
   d1 = r;
   d2 = c;
@@ -354,13 +313,13 @@
   if (r == dim1 () && c == dim2 ())
     return;
 
-  ArrayRep<T> *old_rep = rep;
+  ArrayRep *old_rep = rep;
   const T *old_data = data ();
   int old_d1 = dim1 ();
   int old_d2 = dim2 ();
   int old_len = length ();
 
-  rep = new ArrayRep<T> (r*c);
+  rep = new ArrayRep (r*c);
 
   d1 = r;
   d2 = c;
@@ -566,13 +525,13 @@
   if (r == dim1 () && c == dim2 ())
     return;
 
-  ArrayRep<T> *old_rep = rep;
+  ArrayRep *old_rep = rep;
   const T *old_data = data ();
   int old_len = length ();
 
   int new_len = r < c ? r : c;
 
-  rep = new ArrayRep<T> (new_len);
+  rep = new ArrayRep (new_len);
 
   nr = r;
   nc = c;
@@ -602,13 +561,13 @@
   if (r == dim1 () && c == dim2 ())
     return;
 
-  ArrayRep<T> *old_rep = rep;
+  ArrayRep *old_rep = rep;
   const T *old_data = data ();
   int old_len = length ();
 
   int new_len = r < c ? r : c;
 
-  rep = new ArrayRep<T> (new_len);
+  rep = new ArrayRep (new_len);
 
   nr = r;
   nc = c;