diff src/OPERATORS/op-m-m.cc @ 4543:79df15d4470c

[project @ 2003-10-18 03:53:52 by jwe]
author jwe
date Sat, 18 Oct 2003 03:53:53 +0000
parents 01ee68d18069
children 69a9b22a72a2
line wrap: on
line diff
--- a/src/OPERATORS/op-m-m.cc	Fri Oct 17 04:41:36 2003 +0000
+++ b/src/OPERATORS/op-m-m.cc	Sat Oct 18 03:53:53 2003 +0000
@@ -39,8 +39,8 @@
 
 // matrix unary ops.
 
-DEFUNOP_OP (not, matrix, !)
-DEFUNOP_OP (uminus, matrix, -)
+DEFNDUNOP_OP (not, matrix, !)
+DEFNDUNOP_OP (uminus, matrix, -)
 
 DEFUNOP (transpose, matrix)
 {
@@ -54,8 +54,9 @@
 
 // matrix by matrix ops.
 
-DEFBINOP_OP (add, matrix, matrix, +)
-DEFBINOP_OP (sub, matrix, matrix, -)
+DEFNDBINOP_OP (add, matrix, matrix, array, array, +)
+DEFNDBINOP_OP (sub, matrix, matrix, array, array, -)
+
 DEFBINOP_OP (mul, matrix, matrix, *)
 DEFBINOP_FN (div, matrix, matrix, xdiv)
 
@@ -67,40 +68,26 @@
 
 DEFBINOP_FN (ldiv, matrix, matrix, xleftdiv)
 
-DEFBINOP_FN (lt, matrix, matrix, mx_el_lt)
-DEFBINOP_FN (le, matrix, matrix, mx_el_le)
-DEFBINOP_FN (eq, matrix, matrix, mx_el_eq)
-DEFBINOP_FN (ge, matrix, matrix, mx_el_ge)
-DEFBINOP_FN (gt, matrix, matrix, mx_el_gt)
-DEFBINOP_FN (ne, matrix, matrix, mx_el_ne)
+DEFNDBINOP_FN (lt, matrix, matrix, array, array, mx_el_lt)
+DEFNDBINOP_FN (le, matrix, matrix, array, array, mx_el_le)
+DEFNDBINOP_FN (eq, matrix, matrix, array, array, mx_el_eq)
+DEFNDBINOP_FN (ge, matrix, matrix, array, array, mx_el_ge)
+DEFNDBINOP_FN (gt, matrix, matrix, array, array, mx_el_gt)
+DEFNDBINOP_FN (ne, matrix, matrix, array, array, mx_el_ne)
 
-DEFBINOP_FN (el_mul, matrix, matrix, product)
-DEFBINOP_FN (el_div, matrix, matrix, quotient)
-DEFBINOP_FN (el_pow, matrix, matrix, elem_xpow)
+DEFNDBINOP_FN (el_mul, matrix, matrix, array, array, product)
+DEFNDBINOP_FN (el_div, matrix, matrix, array, array, quotient)
+DEFNDBINOP_FN (el_pow, matrix, matrix, array, array, elem_xpow)
 
 DEFBINOP (el_ldiv, matrix, matrix)
 {
   CAST_BINOP_ARGS (const octave_matrix&, const octave_matrix&);
 
-  return octave_value (quotient (v2.matrix_value (), v1.matrix_value ()));
+  return octave_value (quotient (v2.array_value (), v1.array_value ()));
 }
 
-DEFBINOP_FN (el_and, matrix, matrix, mx_el_and)
-DEFBINOP_FN (el_or, matrix, matrix, mx_el_or)
-
-#if 0
-static octave_value
-oct_assignop_assign (octave_value& a1,
-		     const octave_value_list& idx,
-		     const octave_value& a2)
-{
-  CAST_BINOP_ARGS (octave_matrix&, const octave_matrix&);
-
-  v1.assign (idx, v2.double_nd_array_value ());
-
-  return octave_value ();
-}
-#endif
+DEFNDBINOP_FN (el_and, matrix, matrix, array, array, mx_el_and)
+DEFNDBINOP_FN (el_or,  matrix, matrix, array, array, mx_el_or)
 
 DEFASSIGNOP_FN (assign, matrix, matrix, assign)