diff liboctave/MArray-defs.h @ 9612:66970dd627f6

further liboctave design improvements
author Jaroslav Hajek <highegg@gmail.com>
date Fri, 04 Sep 2009 11:22:53 +0200
parents a9b37bae1802
children 12884915a8e4
line wrap: on
line diff
--- a/liboctave/MArray-defs.h
+++ b/liboctave/MArray-defs.h
@@ -25,54 +25,7 @@
 #if !defined (octave_MArray_defs_h)
 #define octave_MArray_defs_h 1
 
-// Nothing like a little CPP abuse to brighten everyone's day.
-
-#define DO_VS_OP(r, l, v, OP, s) \
-  if (l > 0) \
-    { \
-      for (octave_idx_type i = 0; i < l; i++) \
-	r[i] = v[i] OP s; \
-    }
-
-#define DO_SV_OP(r, l, s, OP, v) \
-  if (l > 0) \
-    { \
-      for (octave_idx_type i = 0; i < l; i++) \
-	r[i] = s OP v[i]; \
-    }
-
-#define DO_VV_OP(r, l, x, OP, y) \
-  if (l > 0) \
-    { \
-      for (octave_idx_type i = 0; i < l; i++) \
-	r[i] = x[i] OP y[i]; \
-    }
-
-#define NEG_V(r, l, x) \
-  if (l > 0) \
-    { \
-      for (octave_idx_type i = 0; i < l; i++) \
-	r[i] = -x[i]; \
-    }
-
-#define DO_VS_OP2(T, a, OP, s) \
-  octave_idx_type l = a.length (); \
-  if (l > 0) \
-    { \
-      T *tmp = a.fortran_vec (); \
-      for (octave_idx_type i = 0; i < l; i++) \
-	tmp[i] OP s; \
-    }
-
-#define DO_VV_OP2(T, a, OP, b) \
-  do \
-    { \
-      T *a_tmp = a.fortran_vec (); \
-      const T *b_tmp = b.data (); \
-      for (octave_idx_type i = 0; i < l; i++) \
-	a_tmp[i] OP b_tmp[i]; \
-    } \
-  while (0)
+#include "mx-inlines.cc"
 
 // Instantiate the OP= operators.
 #define MARRAY_OP_ASSIGN_DEFS(A_T, E_T, RHS_T, API) \