comparison src/ov-re-sparse.cc @ 11129:0de5cc44e690

use gripe functions for NaN to logical and NaN to character conversions more consistently
author John W. Eaton <jwe@octave.org>
date Thu, 21 Oct 2010 16:12:00 -0400
parents b4d2080b6df7
children fd0a3ac60b0e
comparison
equal deleted inserted replaced
11128:9cb5c0b7b43b 11129:0de5cc44e690
143 octave_sparse_matrix::bool_array_value (bool warn) const 143 octave_sparse_matrix::bool_array_value (bool warn) const
144 { 144 {
145 NDArray m = matrix.matrix_value (); 145 NDArray m = matrix.matrix_value ();
146 146
147 if (m.any_element_is_nan ()) 147 if (m.any_element_is_nan ())
148 error ("invalid conversion from NaN to logical"); 148 gripe_nan_to_logical_conversion ();
149 else if (warn && m.any_element_not_one_or_zero ()) 149 else if (warn && m.any_element_not_one_or_zero ())
150 gripe_logical_conversion (); 150 gripe_logical_conversion ();
151 151
152 return boolNDArray (m); 152 return boolNDArray (m);
153 } 153 }
186 186
187 SparseBoolMatrix 187 SparseBoolMatrix
188 octave_sparse_matrix::sparse_bool_matrix_value (bool warn) const 188 octave_sparse_matrix::sparse_bool_matrix_value (bool warn) const
189 { 189 {
190 if (matrix.any_element_is_nan ()) 190 if (matrix.any_element_is_nan ())
191 error ("invalid conversion from NaN to logical"); 191 gripe_nan_to_logical_conversion ();
192 else if (warn && matrix.any_element_not_one_or_zero ()) 192 else if (warn && matrix.any_element_not_one_or_zero ())
193 gripe_logical_conversion (); 193 gripe_logical_conversion ();
194 194
195 return mx_el_ne (matrix, 0.0); 195 return mx_el_ne (matrix, 0.0);
196 } 196 }
223 223
224 double d = matrix.data (i); 224 double d = matrix.data (i);
225 225
226 if (xisnan (d)) 226 if (xisnan (d))
227 { 227 {
228 ::error ("invalid conversion from NaN to character"); 228 gripe_nan_to_character_conversion ();
229 return retval; 229 return retval;
230 } 230 }
231 else 231 else
232 { 232 {
233 int ival = NINT (d); 233 int ival = NINT (d);