diff liboctave/Array2.h @ 3665:0689afb1d001

[project @ 2000-05-11 19:07:56 by jwe]
author jwe
date Thu, 11 May 2000 19:10:09 +0000
parents d9803711e047
children 39aee8115584
line wrap: on
line diff
--- a/liboctave/Array2.h
+++ b/liboctave/Array2.h
@@ -120,6 +120,9 @@
   int cols (void) const { return d2; }
   int columns (void) const { return d2; }
 
+  T range_error (const char *fcn, int i, int j) const;
+  T& range_error (const char *fcn, int i, int j);
+
   // No checking of any kind, ever.
 
   T& xelem (int i, int j) { return Array<T>::xelem (d1*j+i); }
@@ -132,12 +135,7 @@
   T& checkelem (int i, int j)
     {
       if (i < 0 || j < 0 || i >= d1 || j >= d2)
-	{
-	  (*current_liboctave_error_handler)
-	    ("T& Array2<T>::checkelem (%d, %d): range error", i, j);
-	  static T foo;
-	  return foo;
-	}
+	return range_error ("T& Array2<T>::checkelem", i, j);
       else
 	return Array<T>::elem (d1*j+i);
     }
@@ -153,11 +151,7 @@
   T checkelem (int i, int j) const
     {
       if (i < 0 || j < 0 || i >= d1 || j >= d2)
-	{
-	  (*current_liboctave_error_handler)
-	    ("T Array2<T>::checkelem (%d, %d): range error", i, j);
-	  return T ();
-	}
+	return range_error ("T Array2<T>::checkelem", i, j);
       else
 	return Array<T>::elem (d1*j+i);
     }
@@ -170,9 +164,6 @@
   T operator () (int i, int j) const { return elem (i, j); }
 #endif
 
-  T range_error (const char *fcn, int i, int j) const;
-  T& range_error (const char *fcn, int i, int j);
-
   void resize (int n, int m);
   void resize (int n, int m, const T& val);
 
@@ -196,7 +187,8 @@
 };
 
 template <class LT, class RT>
-int assign (Array2<LT>& lhs, const Array2<RT>& rhs);
+int
+assign (Array2<LT>& lhs, const Array2<RT>& rhs);
 
 #endif