# HG changeset patch # User Jaroslav Hajek # Date 1235470300 -3600 # Node ID 97d146d1648b9bb3ebb0784dd99b671133f4d303 # Parent 9df4c9c94862599ca81d094735953576ec51d8c1 add missing scalar->int scalar conversions diff -r 9df4c9c94862 -r 97d146d1648b src/ChangeLog --- a/src/ChangeLog Tue Feb 24 04:34:24 2009 -0500 +++ b/src/ChangeLog Tue Feb 24 11:11:40 2009 +0100 @@ -1,3 +1,25 @@ +2009-02-24 Jaroslav Hajek + + * ov-scalar.h + (octave_scalar::int8_scalar_value): New method. + (octave_scalar::int16_scalar_value): New method. + (octave_scalar::int32_scalar_value): New method. + (octave_scalar::int64_scalar_value): New method. + (octave_scalar::uint8_scalar_value): New method. + (octave_scalar::uint16_scalar_value): New method. + (octave_scalar::uint32_scalar_value): New method. + (octave_scalar::uint64_scalar_value): New method. + + * ov-float.h + (octave_float_scalar::int8_scalar_value): New method. + (octave_float_scalar::int16_scalar_value): New method. + (octave_float_scalar::int32_scalar_value): New method. + (octave_float_scalar::int64_scalar_value): New method. + (octave_float_scalar::uint8_scalar_value): New method. + (octave_float_scalar::uint16_scalar_value): New method. + (octave_float_scalar::uint32_scalar_value): New method. + (octave_float_scalar::uint64_scalar_value): New method. + 2009-02-24 John W. Eaton * OPERATORS/op-float-conv.cc: New file. diff -r 9df4c9c94862 -r 97d146d1648b src/ov-float.h --- a/src/ov-float.h Tue Feb 24 04:34:24 2009 -0500 +++ b/src/ov-float.h Tue Feb 24 11:11:40 2009 +0100 @@ -122,6 +122,22 @@ uint64_array_value (void) const { return uint64NDArray (dim_vector (1, 1), scalar); } +#define DEFINE_INT_SCALAR_VALUE(TYPE) \ + octave_ ## TYPE \ + TYPE ## _scalar_value (void) const \ + { return octave_ ## TYPE (scalar); } + + DEFINE_INT_SCALAR_VALUE (int8) + DEFINE_INT_SCALAR_VALUE (int16) + DEFINE_INT_SCALAR_VALUE (int32) + DEFINE_INT_SCALAR_VALUE (int64) + DEFINE_INT_SCALAR_VALUE (uint8) + DEFINE_INT_SCALAR_VALUE (uint16) + DEFINE_INT_SCALAR_VALUE (uint32) + DEFINE_INT_SCALAR_VALUE (uint64) + +#undef DEFINE_INT_SCALAR_VALUE + double double_value (bool = false) const { return static_cast (scalar); } float float_value (bool = false) const { return scalar; } diff -r 9df4c9c94862 -r 97d146d1648b src/ov-scalar.h --- a/src/ov-scalar.h Tue Feb 24 04:34:24 2009 -0500 +++ b/src/ov-scalar.h Tue Feb 24 11:11:40 2009 +0100 @@ -123,6 +123,22 @@ uint64_array_value (void) const { return uint64NDArray (dim_vector (1, 1), scalar); } +#define DEFINE_INT_SCALAR_VALUE(TYPE) \ + octave_ ## TYPE \ + TYPE ## _scalar_value (void) const \ + { return octave_ ## TYPE (scalar); } + + DEFINE_INT_SCALAR_VALUE (int8) + DEFINE_INT_SCALAR_VALUE (int16) + DEFINE_INT_SCALAR_VALUE (int32) + DEFINE_INT_SCALAR_VALUE (int64) + DEFINE_INT_SCALAR_VALUE (uint8) + DEFINE_INT_SCALAR_VALUE (uint16) + DEFINE_INT_SCALAR_VALUE (uint32) + DEFINE_INT_SCALAR_VALUE (uint64) + +#undef DEFINE_INT_SCALAR_VALUE + double double_value (bool = false) const { return scalar; } float float_value (bool = false) const { return static_cast (scalar); }