aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-12-04 02:24:15 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-12-04 02:24:15 +0000
commit4b85e88174eea7a79d9c68210d716dc3e4c4f0eb (patch)
treeef0e8d1db1b3072c40ee0d3c68859fd7511b1e53
parentb0ec083a20c7b717492994f1ad7a03a97540f218 (diff)
downloadruby-4b85e88174eea7a79d9c68210d716dc3e4c4f0eb.tar.gz
Prefer rb_check_arity when 0 or 1 arguments
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66179 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--array.c17
-rw-r--r--complex.c2
-rw-r--r--rational.c4
-rw-r--r--re.c6
-rw-r--r--time.c2
5 files changed, 9 insertions, 22 deletions
diff --git a/array.c b/array.c
index aab70a5a47..1c6c5ab405 100644
--- a/array.c
+++ b/array.c
@@ -2590,13 +2590,7 @@ rb_ary_rotate(VALUE ary, long cnt)
static VALUE
rb_ary_rotate_bang(int argc, VALUE *argv, VALUE ary)
{
- long n = 1;
-
- switch (argc) {
- case 1: n = NUM2LONG(argv[0]);
- case 0: break;
- default: rb_scan_args(argc, argv, "01", NULL);
- }
+ long n = (rb_check_arity(argc, 0, 1) ? NUM2LONG(argv[0]) : 1);
rb_ary_rotate(ary, n);
return ary;
}
@@ -2623,13 +2617,8 @@ rb_ary_rotate_m(int argc, VALUE *argv, VALUE ary)
{
VALUE rotated;
const VALUE *ptr;
- long len, cnt = 1;
-
- switch (argc) {
- case 1: cnt = NUM2LONG(argv[0]);
- case 0: break;
- default: rb_scan_args(argc, argv, "01", NULL);
- }
+ long len;
+ long cnt = (rb_check_arity(argc, 0, 1) ? NUM2LONG(argv[0]) : 1);
len = RARRAY_LEN(ary);
rotated = rb_ary_new2(len);
diff --git a/complex.c b/complex.c
index 7a52a4259e..dcc25852a9 100644
--- a/complex.c
+++ b/complex.c
@@ -1491,7 +1491,7 @@ nucomp_rationalize(int argc, VALUE *argv, VALUE self)
{
get_dat1(self);
- rb_scan_args(argc, argv, "01", NULL);
+ rb_check_arity(argc, 0, 1);
if (!k_exact_zero_p(dat->imag)) {
rb_raise(rb_eRangeError, "can't convert %"PRIsVALUE" into Rational",
diff --git a/rational.c b/rational.c
index 47e67f128d..b320ed5501 100644
--- a/rational.c
+++ b/rational.c
@@ -2121,7 +2121,7 @@ nilclass_to_r(VALUE self)
static VALUE
nilclass_rationalize(int argc, VALUE *argv, VALUE self)
{
- rb_scan_args(argc, argv, "01", NULL);
+ rb_check_arity(argc, 0, 1);
return nilclass_to_r(self);
}
@@ -2150,7 +2150,7 @@ integer_to_r(VALUE self)
static VALUE
integer_rationalize(int argc, VALUE *argv, VALUE self)
{
- rb_scan_args(argc, argv, "01", NULL);
+ rb_check_arity(argc, 0, 1);
return integer_to_r(self);
}
diff --git a/re.c b/re.c
index 84027707e0..1218877684 100644
--- a/re.c
+++ b/re.c
@@ -3960,13 +3960,11 @@ match_setter(VALUE val)
static VALUE
rb_reg_s_last_match(int argc, VALUE *argv)
{
- VALUE nth;
-
- if (argc > 0 && rb_scan_args(argc, argv, "01", &nth) == 1) {
+ if (rb_check_arity(argc, 0, 1) == 1) {
VALUE match = rb_backref_get();
int n;
if (NIL_P(match)) return Qnil;
- n = match_backref_number(match, nth);
+ n = match_backref_number(match, argv[0]);
return rb_reg_nth_match(n, match);
}
return match_getter();
diff --git a/time.c b/time.c
index 21b9fecf8c..f1cb7b6716 100644
--- a/time.c
+++ b/time.c
@@ -4959,7 +4959,7 @@ time_dump(int argc, VALUE *argv, VALUE time)
{
VALUE str;
- rb_scan_args(argc, argv, "01", 0);
+ rb_check_arity(argc, 0, 1);
str = time_mdump(time);
return str;