Mercurial > hg > octave-lyh
diff src/data.cc @ 6518:952c8b00525e
[project @ 2007-04-11 20:50:22 by jwe]
author | jwe |
---|---|
date | Wed, 11 Apr 2007 20:50:23 +0000 |
parents | 184ab67c3bc1 |
children | 8810bbf321ce |
line wrap: on
line diff
--- a/src/data.cc +++ b/src/data.cc @@ -2656,6 +2656,234 @@ return retval; } +#define UNARY_OP_DEFUN_BODY(F) \ + \ + octave_value retval; \ + \ + if (args.length () == 1) \ + retval = F (args(0)); \ + else \ + print_usage (); \ + \ + return retval + +DEFUN (not, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} not (@var{x})\n\ +This function is equivalent to @code{! x}.\n\ +@end deftypefn") +{ + UNARY_OP_DEFUN_BODY (op_not); +} + +DEFUN (uplus, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} uplus (@var{x})\n\ +This function is equivalent to @code{+ x}.\n\ +@end deftypefn") +{ + UNARY_OP_DEFUN_BODY (op_uplus); +} + +DEFUN (uminus, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} uminus (@var{x})\n\ +This function is equivalent to @code{- x}.\n\ +@end deftypefn") +{ + UNARY_OP_DEFUN_BODY (op_uminus); +} + +DEFUN (transpose, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} transpose (@var{x})\n\ +This function is equivalent to @code{x.'}.\n\ +@end deftypefn") +{ + UNARY_OP_DEFUN_BODY (op_transpose); +} + +DEFUN (ctranspose, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} ctranspose (@var{x})\n\ +This function is equivalent to @code{x'}.\n\ +@end deftypefn") +{ + UNARY_OP_DEFUN_BODY (op_hermitian); +} + +#define BINARY_OP_DEFUN_BODY(F) \ + \ + octave_value retval; \ + \ + if (args.length () == 2) \ + retval = F (args(0), args(1)); \ + else \ + print_usage (); \ + \ + return retval + +DEFUN (plus, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} plus (@var{x}, @var{y})\n\ +This function is equivalent to @code{x + y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_add); +} + +DEFUN (minus, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} minus (@var{x}, @var{y})\n\ +This function is equivalent to @code{x - y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_sub); +} + +DEFUN (mtimes, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} mtimes (@var{x}, @var{y})\n\ +This function is equivalent to @code{x * y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_mul); +} + +DEFUN (mrdivide, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} mrdivide (@var{x}, @var{y})\n\ +This function is equivalent to @code{x / y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_div); +} + +DEFUN (mpower, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} mpower (@var{x}, @var{y})\n\ +This function is equivalent to @code{x ^ y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_pow); +} + +DEFUN (mldivide, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} mldivide (@var{x}, @var{y})\n\ +This function is equivalent to @code{x \\ y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_ldiv); +} + +DEFUN (lt, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} lt (@var{x}, @var{y})\n\ +This function is equivalent to @code{x < y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_lt); +} + +DEFUN (le, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} le (@var{x}, @var{y})\n\ +This function is equivalent to @code{x <= y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_le); +} + +DEFUN (eq, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} eq (@var{x}, @var{y})\n\ +This function is equivalent to @code{x == y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_eq); +} + +DEFUN (ge, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} ge (@var{x}, @var{y})\n\ +This function is equivalent to @code{x >= y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_ge); +} + +DEFUN (gt, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} gt (@var{x}, @var{y})\n\ +This function is equivalent to @code{x > y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_gt); +} + +DEFUN (ne, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} ne (@var{x}, @var{y})\n\ +This function is equivalent to @code{x != y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_ne); +} + +DEFUN (times, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} times (@var{x}, @var{y})\n\ +This function is equivalent to @code{x .* y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_el_mul); +} + +DEFUN (rdivide, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} rdivide (@var{x}, @var{y})\n\ +This function is equivalent to @code{x ./ y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_el_div); +} + +DEFUN (power, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} power (@var{x}, @var{y})\n\ +This function is equivalent to @code{x .\\ y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_el_pow); +} + +DEFUN (ldivide, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} ldivide (@var{x}, @var{y})\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_el_ldiv); +} + +DEFUN (and, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} and (@var{x}, @var{y})\n\ +This function is equivalent to @code{x & y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_el_and); +} + +DEFUN (or, args, , + "-*- texinfo -*-\n\ +@deftypefn {Built-in Function} {} or (@var{x}, @var{y})\n\ +This function is equivalent to @code{x | y}.\n\ +@end deftypefn") +{ + BINARY_OP_DEFUN_BODY (op_el_or); +} + /* ;;; Local Variables: *** ;;; mode: C++ ***