Mercurial > octave
diff libinterp/corefcn/hex2num.cc @ 20678:4b00afb5e9c3
eliminate more uses of error_state
* __lin_interpn__.cc, __qp__.cc, error.cc, file-io.cc, help.cc,
hex2num.cc, inv.cc, load-save.cc, rand.cc, symtab.cc, toplev.cc,
amd.cc, qr.cc, ov-base.cc, ov-classdef.cc:
Eliminate most trivial uses of error_state.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Wed, 04 Nov 2015 15:56:22 -0500 |
parents | a9574e3c6e9e |
children | 8bb38ba1bad6 |
line wrap: on
line diff
--- a/libinterp/corefcn/hex2num.cc Tue Nov 03 17:58:15 2015 -0500 +++ b/libinterp/corefcn/hex2num.cc Wed Nov 04 15:56:22 2015 -0500 @@ -83,7 +83,7 @@ error ("hex2num: S must be no more than %d characters", nchars); else if (prec != "double" && prec != "single") error ("hex2num: CLASS must be either \"double\" or \"single\""); - else if (! error_state) + else { octave_idx_type nr = cmat.rows (); octave_idx_type nc = cmat.columns (); @@ -123,19 +123,13 @@ } } - if (error_state) - break; - else - { - if (nc < nchars) - num.ival <<= (nchars - nc) * 4; + if (nc < nchars) + num.ival <<= (nchars - nc) * 4; - m(i) = num.dval; - } + m(i) = num.dval; } - if (! error_state) - retval = m; + retval = m; } else { @@ -172,19 +166,13 @@ } } - if (error_state) - break; - else - { - if (nc < nchars) - num.ival <<= (nchars - nc) * 4; + if (nc < nchars) + num.ival <<= (nchars - nc) * 4; - m(i) = num.dval; - } + m(i) = num.dval; } - if (! error_state) - retval = m; + retval = m; } } } @@ -239,75 +227,69 @@ { const FloatColumnVector v (args(0).float_vector_value ()); - if (! error_state) - { - octave_idx_type nchars = 8; - octave_idx_type nr = v.numel (); - charMatrix m (nr, nchars); - const float *pv = v.fortran_vec (); + octave_idx_type nchars = 8; + octave_idx_type nr = v.numel (); + charMatrix m (nr, nchars); + const float *pv = v.fortran_vec (); - for (octave_idx_type i = 0; i < nr; i++) - { - union - { - uint32_t ival; - float dval; - } num; + for (octave_idx_type i = 0; i < nr; i++) + { + union + { + uint32_t ival; + float dval; + } num; + + num.dval = *pv++; - num.dval = *pv++; + for (octave_idx_type j = 0; j < nchars; j++) + { + unsigned char ch = + static_cast<char>(num.ival >> ((nchars - 1 - j) * 4) & 0xF); + if (ch >= 10) + ch += 'a' - 10; + else + ch += '0'; - for (octave_idx_type j = 0; j < nchars; j++) - { - unsigned char ch = - static_cast<char>(num.ival >> ((nchars - 1 - j) * 4) & 0xF); - if (ch >= 10) - ch += 'a' - 10; - else - ch += '0'; + m.elem (i, j) = ch; + } + } - m.elem (i, j) = ch; - } - } - - retval = m; - } + retval = m; } else { const ColumnVector v (args(0).vector_value ()); - if (! error_state) - { - octave_idx_type nchars = 16; - octave_idx_type nr = v.numel (); - charMatrix m (nr, nchars); - const double *pv = v.fortran_vec (); + octave_idx_type nchars = 16; + octave_idx_type nr = v.numel (); + charMatrix m (nr, nchars); + const double *pv = v.fortran_vec (); - for (octave_idx_type i = 0; i < nr; i++) - { - union - { - uint64_t ival; - double dval; - } num; + for (octave_idx_type i = 0; i < nr; i++) + { + union + { + uint64_t ival; + double dval; + } num; + + num.dval = *pv++; - num.dval = *pv++; + for (octave_idx_type j = 0; j < nchars; j++) + { + unsigned char ch = + static_cast<char>(num.ival >> ((nchars - 1 - j) * 4) & 0xF); + if (ch >= 10) + ch += 'a' - 10; + else + ch += '0'; - for (octave_idx_type j = 0; j < nchars; j++) - { - unsigned char ch = - static_cast<char>(num.ival >> ((nchars - 1 - j) * 4) & 0xF); - if (ch >= 10) - ch += 'a' - 10; - else - ch += '0'; + m.elem (i, j) = ch; + } + } - m.elem (i, j) = ch; - } - } - - retval = m; - } + retval = m; } return retval;