diff src/ov-ch-mat.cc @ 3136:af7ec9d3a5e6

[project @ 1998-02-01 20:11:06 by jwe]
author jwe
date Sun, 01 Feb 1998 20:11:08 +0000
parents 4e7bea116f24
children 30770ba4457a
line wrap: on
line diff
--- a/src/ov-ch-mat.cc	Sun Feb 01 18:43:51 1998 +0000
+++ b/src/ov-ch-mat.cc	Sun Feb 01 20:11:08 1998 +0000
@@ -49,22 +49,41 @@
 bool
 octave_char_matrix::valid_as_scalar_index (void) const
 {
-  // XXX FIXME XXX
-  return false;
+  bool retval = false;
+  error ("octave_char_matrix::valid_as_scalar_index(): not implemented");
+  return retval;
 }
 
 bool
 octave_char_matrix::valid_as_zero_index (void) const
 {
-  // XXX FIXME XXX
-  return false;
+  bool retval = false;
+  error ("octave_char_matrix::valid_as_zero_index(): not implemented");
+  return retval;
 }
 
 bool
 octave_char_matrix::is_true (void) const
 {
-  // XXX FIXME XXX
-  return false;
+  bool retval = false;
+
+  if (rows () == 0 || columns () == 0)
+    {
+      int flag = Vpropagate_empty_matrices;
+
+      if (flag < 0)
+	warning ("empty matrix used in conditional expression");
+      else if (flag == 0)
+	error ("empty matrix used in conditional expression");
+    }
+  else
+    {
+      Matrix m = (matrix.all ()) . all ();
+
+      retval = (m.rows () == 1 && m.columns () == 1 && m (0, 0) != 0.0);
+    }
+
+  return retval;
 }
 
 double