diff src/data.cc @ 3258:4964d5391acc

[project @ 1999-07-21 21:51:33 by jwe]
author jwe
date Wed, 21 Jul 1999 21:52:04 +0000
parents 041ea33fbbf4
children b6c74a0772b5
line wrap: on
line diff
--- a/src/data.cc
+++ b/src/data.cc
@@ -759,7 +759,7 @@
   octave_value retval;
 
   if (args.length () == 1)
-    retval = args(0).is_bool_type () ? 1.0 : 0.0;
+    retval = args(0).is_bool_type ();
   else
     print_usage ("is_bool");
 
@@ -769,18 +769,31 @@
 DEFALIAS (islogical, is_bool);
 
 DEFUN (is_complex, args, ,
-  "is_complex (x): return nonzero if x is a complex numeric object")
+  "is_complex (x): return nonzero if x is a complex-valued numeric object")
 {
   octave_value retval;
 
   if (args.length () == 1)
-    retval = args(0).is_complex_type () ? 1.0 : 0.0;
+    retval = args(0).is_complex_type ();
   else
     print_usage ("is_complex");
 
   return retval;
 }
 
+DEFUN (isreal, args, ,
+  "isreal (x): return nonzero if x is a real-valued numeric object")
+{
+  octave_value retval;
+
+  if (args.length () == 1)
+    retval = args(0).is_real_type ();
+  else
+    print_usage ("isreal");
+
+  return retval;
+}
+
 DEFUN (isempty, args, ,
   "isempty (x): return nonzero if x is an empty matrix, string, or list")
 {
@@ -807,7 +820,7 @@
   octave_value retval;
 
   if (args.length () == 1)
-    retval = args(0).is_numeric_type () ? 1.0 : 0.0;
+    retval = args(0).is_numeric_type ();
   else
     print_usage ("isnumeric");
 
@@ -820,7 +833,7 @@
   octave_value retval;
 
   if (args.length () == 1)
-    retval = args(0).is_list () ? 1.0 : 0.0;
+    retval = args(0).is_list ();
   else
     print_usage ("is_list");
 
@@ -853,7 +866,7 @@
   octave_value retval;
 
   if (args.length () == 1)
-    retval = args(0).is_map () ? 1.0 : 0.0;
+    retval = args(0).is_map ();
   else
     print_usage ("is_struct");
 
@@ -1241,6 +1254,9 @@
   DEFCONST (eps, DBL_EPSILON,
     "machine precision");
 
+  DEFCONST (false, false,
+    "logical false value");
+
   DEFCONST (i, Complex (0.0, 1.0),
     "sqrt (-1)");
 
@@ -1268,8 +1284,11 @@
   DEFCONST (realmin, DBL_MIN,
     "realmin (): return smallest representable floating point number");
 
-  DEFVAR (treat_neg_dim_as_zero, 0.0, 0, treat_neg_dim_as_zero,
+  DEFVAR (treat_neg_dim_as_zero, 0.0, treat_neg_dim_as_zero,
     "convert negative dimensions to zero");
+
+  DEFCONST (true, true,
+    "logical true value");
 }
 
 /*