# HG changeset patch # User John W. Eaton # Date 1268832883 14400 # Node ID 3373fdc0b14a58b0c566b8f6153243452283523a # Parent afe44ee90cbd9e635b3425525a689cea56a1987a use macro for 2 and 3 arg dim_vector constructors diff -r afe44ee90cbd -r 3373fdc0b14a liboctave/ChangeLog --- a/liboctave/ChangeLog Wed Mar 17 10:30:36 2010 +0100 +++ b/liboctave/ChangeLog Wed Mar 17 09:34:43 2010 -0400 @@ -1,3 +1,8 @@ +2010-03-17 John W. Eaton + + * dim-vector.h (dim_vector): Also use DIM_VECTOR macro for 2 and + 3 dimensions. + 2010-03-17 Jaroslav Hajek * lo-macros.h: New source. diff -r afe44ee90cbd -r 3373fdc0b14a liboctave/dim-vector.h --- a/liboctave/dim-vector.h Wed Mar 17 10:30:36 2010 +0100 +++ b/liboctave/dim-vector.h Wed Mar 17 09:34:43 2010 -0400 @@ -134,6 +134,20 @@ public: + // The constructor + // + // dim_vector (n) + // + // creates an dimension vector with N rows and 1 column. It is + // deprecated because of the potentiol for confusion that it causes. + // Additional constructors of the form + // + // dim_vector (r, c) + // dim_vector (r, c, p) + // dim_vector (d1, d2, d3, d4, ...) + // + // are available for up to 7 dimensions. + explicit dim_vector (octave_idx_type n) GCC_ATTR_DEPRECATED : rep (newrep (2)) { @@ -141,34 +155,21 @@ rep[1] = 1; } - dim_vector (octave_idx_type r, octave_idx_type c) - : rep (newrep (2)) - { - rep[0] = r; - rep[1] = c; - } - - dim_vector (octave_idx_type r, octave_idx_type c, octave_idx_type p) - : rep (newrep (3)) - { - rep[0] = r; - rep[1] = c; - rep[2] = p; - } - #define ASSIGN_REP(i) rep[i] = d ## i; #define DIM_VECTOR_CTOR(N) \ - dim_vector (OCT_MAKE_DECL_LIST(octave_idx_type, d, N)) \ + dim_vector (OCT_MAKE_DECL_LIST (octave_idx_type, d, N)) \ : rep (newrep (N)) \ { \ - OCT_ITERATE_MACRO(ASSIGN_REP, N) \ + OCT_ITERATE_MACRO (ASSIGN_REP, N) \ } // Add more if needed. - DIM_VECTOR_CTOR(4) - DIM_VECTOR_CTOR(5) - DIM_VECTOR_CTOR(6) - DIM_VECTOR_CTOR(7) + DIM_VECTOR_CTOR (2) + DIM_VECTOR_CTOR (3) + DIM_VECTOR_CTOR (4) + DIM_VECTOR_CTOR (5) + DIM_VECTOR_CTOR (6) + DIM_VECTOR_CTOR (7) #undef ASSIGN_REP #undef DIM_VECTOR_CTOR