Mercurial > hg > octave-lyh
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 +++ b/src/ov-ch-mat.cc @@ -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