diff src/ops.h @ 3195:7a5a5da64756

[project @ 1998-10-28 22:54:04 by jwe]
author jwe
date Wed, 28 Oct 1998 23:01:17 +0000
parents d6a3e3723736
children bc61b0e8d60e
line wrap: on
line diff
--- a/src/ops.h	Wed Oct 28 17:51:09 1998 +0000
+++ b/src/ops.h	Wed Oct 28 23:01:17 1998 +0000
@@ -33,6 +33,10 @@
   octave_value_typeinfo::register_assign_op \
     (octave_value::op, t1::static_type_id (), t2::static_type_id (), f);
 
+#define INSTALL_ASSIGNANYOP(op, t1, f) \
+  octave_value_typeinfo::register_assignany_op \
+    (octave_value::op, t1::static_type_id (), f);
+
 #define INSTALL_ASSIGNCONV(t1, t2, tr) \
   octave_value_typeinfo::register_pref_assign_conv \
     (t1::static_type_id (), t2::static_type_id (), tr::static_type_id ());
@@ -134,6 +138,15 @@
     return octave_value (); \
   }
 
+#define DEFASSIGNANYOP_FN(name, t1, f) \
+  ASSIGNOPDECL (name) \
+  { \
+    octave_ ## t1& v1 = DYNAMIC_CAST (octave_ ## t1&, a1); \
+ \
+    v1.f (idx, a2); \
+    return octave_value (); \
+  }
+
 #define CONVDECL(name) \
   static octave_value * \
   name (const octave_value& a)