From da32ce1a67677bd0f5df8fa31e0ab05c26c7d401 Mon Sep 17 00:00:00 2001 From: matz Date: Wed, 7 Dec 2005 08:41:59 +0000 Subject: * sprintf.c (rb_f_sprintf): [ruby-dev:27967] * range.c (range_include): use discrete membership for non Numeric values, for example, String. * numeric.c (num_scalar_p): new method. [ruby-dev:27936] * lib/complex.rb (Complex#scalar?): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- numeric.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'numeric.c') diff --git a/numeric.c b/numeric.c index 08685718a4..91e7dfc1e7 100644 --- a/numeric.c +++ b/numeric.c @@ -348,6 +348,20 @@ num_remainder(VALUE x, VALUE y) return z; } +/* + * call-seq: + * num.scalar? -> true or false + * + * Returns true if num is an Scalar + * (i.e. non Complex). + */ + +static VALUE +num_scalar_p(VALUE num) +{ + return Qtrue; +} + /* * call-seq: * num.integer? -> true or false @@ -2806,6 +2820,7 @@ Init_Numeric(void) rb_define_method(rb_cNumeric, "abs", num_abs, 0); rb_define_method(rb_cNumeric, "to_int", num_to_int, 0); + rb_define_method(rb_cNumeric, "scalar?", num_scalar_p, 0); rb_define_method(rb_cNumeric, "integer?", num_int_p, 0); rb_define_method(rb_cNumeric, "zero?", num_zero_p, 0); rb_define_method(rb_cNumeric, "nonzero?", num_nonzero_p, 0); -- cgit v1.2.3