changeset 4017:0eb247b9cc9b

[project @ 2002-08-03 04:07:14 by jwe]
author jwe
date Sat, 03 Aug 2002 04:07:15 +0000
parents 139f5273d0f8
children a8621d87fbf5
files liboctave/CMatrix.h liboctave/ChangeLog liboctave/boolMatrix.h liboctave/chMatrix.h liboctave/dMatrix.h src/ChangeLog src/ov-base-mat.cc src/ov-base-mat.h src/ov-base-scalar.h src/ov-base.h src/ov-range.cc src/ov-range.h
diffstat 12 files changed, 51 insertions(+), 33 deletions(-) [+]
line wrap: on
line diff
--- a/liboctave/CMatrix.h	Fri Aug 02 22:55:51 2002 +0000
+++ b/liboctave/CMatrix.h	Sat Aug 03 04:07:15 2002 +0000
@@ -241,14 +241,14 @@
   bool all_integers (double& max_val, double& min_val) const;
   bool too_large_for_float (void) const;
 
-  boolMatrix all (int dim = 0) const;
-  boolMatrix any (int dim = 0) const;
+  boolMatrix all (int dim = -1) const;
+  boolMatrix any (int dim = -1) const;
 
-  ComplexMatrix cumprod (int dim = 0) const;
-  ComplexMatrix cumsum (int dim = 0) const;
-  ComplexMatrix prod (int dim = 0) const;
-  ComplexMatrix sum (int dim = 0) const;
-  ComplexMatrix sumsq (int dim = 0) const;
+  ComplexMatrix cumprod (int dim = -1) const;
+  ComplexMatrix cumsum (int dim = -1) const;
+  ComplexMatrix prod (int dim = -1) const;
+  ComplexMatrix sum (int dim = -1) const;
+  ComplexMatrix sumsq (int dim = -1) const;
 
   ComplexColumnVector diag (void) const;
   ComplexColumnVector diag (int k) const;
--- a/liboctave/ChangeLog	Fri Aug 02 22:55:51 2002 +0000
+++ b/liboctave/ChangeLog	Sat Aug 03 04:07:15 2002 +0000
@@ -1,5 +1,14 @@
 2002-08-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
 
+	* CMatrix.h (ComplexMatrix::all, ComplexMatrix::any,
+	ComplexMatrix::cumprod, ComplexMatrix::cumsum,
+	ComplexMatrix::prod, ComplexMatrix::sum, ComplexMatrix::sumsq):
+	Default value for dim is -1, not 0.
+	* dMatrix.h (Matrix::all, Matrix::any, Matrix::cumprod,
+	Matrix::cumsum, Matrix::prod, Matrix::sum, Matrix::sumsq): Likewise.
+	* boolMatrix.h (boolMatrix:all, boolMatrix::any): Likewise.
+	* chMatrix.h (charMatrix::all, charMatrix::any): Likewise.
+
 	* mx-inlines.cc (MX_ANY_ALL_OP_ROW_CODE, MX_ANY_ALL_OP_COL_CODE):
 	New macros.
 	(MX_ANY_ALL_OP): Define MX_ANY_ALL_OP using them and
--- a/liboctave/boolMatrix.h	Fri Aug 02 22:55:51 2002 +0000
+++ b/liboctave/boolMatrix.h	Sat Aug 03 04:07:15 2002 +0000
@@ -64,8 +64,8 @@
 
   // other operations
 
-  boolMatrix all (int dim = 0) const;
-  boolMatrix any (int dim = 0) const;
+  boolMatrix all (int dim = -1) const;
+  boolMatrix any (int dim = -1) const;
 
 #if 0
   // i/o
--- a/liboctave/chMatrix.h	Fri Aug 02 22:55:51 2002 +0000
+++ b/liboctave/chMatrix.h	Sat Aug 03 04:07:15 2002 +0000
@@ -71,8 +71,8 @@
 
   charMatrix extract (int r1, int c1, int r2, int c2) const;
 
-  boolMatrix all (int dim = 0) const;
-  boolMatrix any (int dim = 0) const;
+  boolMatrix all (int dim = -1) const;
+  boolMatrix any (int dim = -1) const;
 
 #if 0
   // i/o
--- a/liboctave/dMatrix.h	Fri Aug 02 22:55:51 2002 +0000
+++ b/liboctave/dMatrix.h	Sat Aug 03 04:07:15 2002 +0000
@@ -197,14 +197,14 @@
   bool all_integers (double& max_val, double& min_val) const;
   bool too_large_for_float (void) const;
  
-  boolMatrix all (int dim = 0) const;
-  boolMatrix any (int dim = 0) const;
+  boolMatrix all (int dim = -1) const;
+  boolMatrix any (int dim = -1) const;
 
-  Matrix cumprod (int dim = 0) const; //optional dimension argument
-  Matrix cumsum (int dim = 0) const;
-  Matrix prod (int dim = 0) const;
-  Matrix sum (int dim = 0) const;
-  Matrix sumsq (int dim = 0) const;
+  Matrix cumprod (int dim = -1) const;
+  Matrix cumsum (int dim = -1) const;
+  Matrix prod (int dim = -1) const;
+  Matrix sum (int dim = -1) const;
+  Matrix sumsq (int dim = -1) const;
   Matrix abs (void) const;
 
   ColumnVector diag (void) const;
--- a/src/ChangeLog	Fri Aug 02 22:55:51 2002 +0000
+++ b/src/ChangeLog	Sat Aug 03 04:07:15 2002 +0000
@@ -1,5 +1,10 @@
 2002-08-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
 
+	* ov-base-scalar.h (octave_base_scalar::all): New int arg.
+	(octave_base_scalar::any): Likewise.
+	* ov-range.h (octave_range::all): Likewise.
+	(octave_range::any): Likewise.
+
 	* Makefile.in (doc-files): Use mv, not move-if-change here.
 
 	* variables.cc (symbol_exist): New function.
--- a/src/ov-base-mat.cc	Fri Aug 02 22:55:51 2002 +0000
+++ b/src/ov-base-mat.cc	Sat Aug 03 04:07:15 2002 +0000
@@ -203,9 +203,9 @@
     }
   else
     {
-      boolMatrix m = (matrix.all ()) . all ();
+      boolMatrix m = (matrix.all () . all ());
 
-      retval = (m.rows () == 1 && m.columns () == 1 && m (0, 0) != 0.0);
+      retval = (m.rows () == 1 && m.columns () == 1 && m(0,0));
     }
 
   return retval;
--- a/src/ov-base-mat.h	Fri Aug 02 22:55:51 2002 +0000
+++ b/src/ov-base-mat.h	Sat Aug 03 04:07:15 2002 +0000
@@ -91,8 +91,8 @@
     return (r == 0 || c == 0) ? 0 : ((r > c) ? r : c);
   }
 
-  octave_value all (int dim) const { return matrix.all (dim); }
-  octave_value any (int dim) const { return matrix.any (dim); }
+  octave_value all (int dim = 0) const { return matrix.all (dim); }
+  octave_value any (int dim = 0) const { return matrix.any (dim); }
 
   bool is_matrix_type (void) const { return true; }
 
--- a/src/ov-base-scalar.h	Fri Aug 02 22:55:51 2002 +0000
+++ b/src/ov-base-scalar.h	Sat Aug 03 04:07:15 2002 +0000
@@ -76,9 +76,9 @@
 
   bool is_defined (void) const { return true; }
 
-  octave_value all (void) const { return (scalar != 0.0); }
+  octave_value all (int = 0) const { return (scalar != 0.0); }
 
-  octave_value any (void) const { return (scalar != 0.0); }
+  octave_value any (int = 0) const { return (scalar != 0.0); }
 
   bool is_scalar_type (void) const { return true; }
 
--- a/src/ov-base.h	Fri Aug 02 22:55:51 2002 +0000
+++ b/src/ov-base.h	Sat Aug 03 04:07:15 2002 +0000
@@ -128,9 +128,9 @@
 
   bool is_all_va_args (void) const { return false; }
 
-  octave_value all (int dim) const { return 0.0; }
+  octave_value all (int = 0) const { return 0.0; }
 
-  octave_value any (int dim) const { return 0.0; }
+  octave_value any (int = 0) const { return 0.0; }
 
   bool is_bool_type (void) const { return false; }
 
--- a/src/ov-range.cc	Fri Aug 02 22:55:51 2002 +0000
+++ b/src/ov-range.cc	Sat Aug 03 04:07:15 2002 +0000
@@ -142,19 +142,23 @@
 }
 
 octave_value
-octave_range::all (void) const
+octave_range::all (int dim) const
 {
   // XXX FIXME XXX -- this is a potential waste of memory.
 
   Matrix m = range.matrix_value ();
 
-  return m.all ();
+  return m.all (dim);
 }
 
 octave_value
-octave_range::any (void) const
+octave_range::any (int dim) const
 {
-  return static_cast<double> (range.base () != 0.0 || range.nelem () > 1);
+  // XXX FIXME XXX -- this is a potential waste of memory.
+
+  Matrix m = range.matrix_value ();
+
+  return m.any (dim);
 }
 
 bool
--- a/src/ov-range.h	Fri Aug 02 22:55:51 2002 +0000
+++ b/src/ov-range.h	Sat Aug 03 04:07:15 2002 +0000
@@ -107,9 +107,9 @@
 
   bool is_range (void) const { return true; }
 
-  // XXX DO ME XXX
-  octave_value all (void) const;
-  octave_value any (void) const;
+  octave_value all (int dim = 0) const;
+
+  octave_value any (int dim = 0) const;
 
   bool is_real_type (void) const { return true; }