# HG changeset patch # User Jaroslav Hajek # Date 1274768669 -7200 # Node ID 2f0fbfa4dd23a63c1c26f4aac14295df29bef369 # Parent 944b78191f030e80ec759b063d4c1c1892899a38 simplify octave_base_value::ndims diff -r 944b78191f03 -r 2f0fbfa4dd23 src/ChangeLog --- a/src/ChangeLog Tue May 25 07:41:31 2010 +0200 +++ b/src/ChangeLog Tue May 25 08:24:29 2010 +0200 @@ -1,3 +1,10 @@ +2010-05-25 Jaroslav Hajek + + * ov-base.cc (octave_base_value::ndims): Remove fallback + implementation (makes no sense). + * ov-base.h (octave_base_value::ndims): Use a simplistic fallback + here. + 2010-05-25 Jaroslav Hajek * ov-base.h (octave_base_value::rows, octave_base_value::columns): diff -r 944b78191f03 -r 2f0fbfa4dd23 src/ov-base.cc --- a/src/ov-base.cc Tue May 25 07:41:31 2010 +0200 +++ b/src/ov-base.cc Tue May 25 08:24:29 2010 +0200 @@ -203,31 +203,6 @@ return idx_vector (); } -int -octave_base_value::ndims (void) const -{ - dim_vector dv = dims (); - - int n_dims = dv.length (); - - // Remove trailing singleton dimensions. - - for (int i = n_dims; i > 2; i--) - { - if (dv(i-1) == 1) - n_dims--; - else - break; - } - - // The result is always >= 2. - - if (n_dims < 2) - n_dims = 2; - - return n_dims; -} - octave_value octave_base_value::subsasgn (const std::string& type, const std::list& idx, diff -r 944b78191f03 -r 2f0fbfa4dd23 src/ov-base.h --- a/src/ov-base.h Tue May 25 07:41:31 2010 +0200 +++ b/src/ov-base.h Tue May 25 08:24:29 2010 +0200 @@ -289,7 +289,8 @@ return dv(1); } - virtual int ndims (void) const; + virtual int ndims (void) const + { return dims ().length (); } virtual octave_idx_type numel (void) const { return dims ().numel (); }