Mercurial > octave-nkf
diff src/pt-loop.cc @ 3180:c17387059fd3
[project @ 1998-09-24 18:59:11 by jwe]
author | jwe |
---|---|
date | Thu, 24 Sep 1998 19:00:19 +0000 |
parents | aa9d0c0e0458 |
children | bef7b73c0724 |
line wrap: on
line diff
--- a/src/pt-loop.cc Wed Jul 29 19:50:02 1998 +0000 +++ b/src/pt-loop.cc Thu Sep 24 19:00:19 1998 +0000 @@ -187,7 +187,29 @@ return; } - if (rhs.is_scalar_type ()) + if (rhs.is_range ()) + { + Range rng = rhs.range_value (); + + int steps = rng.nelem (); + double b = rng.base (); + double increment = rng.inc (); + + for (int i = 0; i < steps; i++) + { + double tmp_val = b + i * increment; + + octave_value val (tmp_val); + + bool quit = false; + + do_for_loop_once (ult, val, quit); + + if (quit) + break; + } + } + else if (rhs.is_scalar_type ()) { bool quit = false; @@ -214,6 +236,9 @@ steps = cm_tmp.columns (); } + if (error_state) + return; + if (rhs.is_real_matrix ()) { if (nr == 1) @@ -229,32 +254,6 @@ DO_LOOP (cm_tmp.extract (0, i, nr-1, i)); } } - else if (rhs.is_string ()) - { - gripe_string_invalid (); - } - else if (rhs.is_range ()) - { - Range rng = rhs.range_value (); - - int steps = rng.nelem (); - double b = rng.base (); - double increment = rng.inc (); - - for (int i = 0; i < steps; i++) - { - double tmp_val = b + i * increment; - - octave_value val (tmp_val); - - bool quit = false; - - do_for_loop_once (ult, val, quit); - - if (quit) - break; - } - } else if (rhs.is_map ()) { Octave_map tmp_val (rhs.map_value ());