Mercurial > hg > octave-nkf
view test/bug-38576.tst @ 19511:3746b92739f7
Replace some duplicated code and count on methods implemented on base classes.
* liboctave/array/CMatrix.cc, liboctave/array/CMatrix.h,
liboctave/array/dMatrix.cc, liboctave/array/dMatrix.h,
liboctave/array/fCMatrix.cc, liboctave/array/fCMatrix.h,
liboctave/array/fMatrix.cc, liboctave/array/fMatrix.h: remove a lot of
duplicate code from Matrix type classes now that these classes inherit from
their NDArrays counterpart. These mostly include operator ! and =,
any_element_is_nan, any_element_is_inf_or_nan, all_elements_are_real,
all_integers, too_large_for_float, all, any, cumprod, cumsum, prod, sum,
sumsq, and abs. In some cases these need to still appear on the Matrix
definition to avoid slicing.
author | Carnë Draug <carandraug@octave.org> |
---|---|
date | Fri, 07 Nov 2014 10:41:18 +0000 |
parents | 730bc06134f9 |
children |
line wrap: on
line source
%!function r = f1 () %! ls = svd (1); %! r = eval ("ls -1;"); %!endfunction %!function r = f2 () %! [u,ls,v] = svd (1); %! r = eval ("ls -1;"); %!endfunction %!function r = f3 (ls) %! r = eval ("ls -1;"); %!endfunction %!test %! ## Windows systems can't run "ls -1" %! if (! ispc ()) %! assert (f1 (), 0); %! assert (f2 (), 0); %! assert (ischar (f3 ()), true); %! assert (f3 (1), 0); %! endif