From cbbf84044000878a219fad47ea16dae0cc1699a3 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Wed, 29 Oct 2014 13:22:04 +0900 Subject: use mrb_get_args to parse Integer() option; ref #2625 --- mrbgems/mruby-kernel-ext/src/kernel.c | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) (limited to 'mrbgems/mruby-kernel-ext/src/kernel.c') diff --git a/mrbgems/mruby-kernel-ext/src/kernel.c b/mrbgems/mruby-kernel-ext/src/kernel.c index a72516f48..baccbd303 100644 --- a/mrbgems/mruby-kernel-ext/src/kernel.c +++ b/mrbgems/mruby-kernel-ext/src/kernel.c @@ -49,22 +49,10 @@ mrb_f_method(mrb_state *mrb, mrb_value self) static mrb_value mrb_f_integer(mrb_state *mrb, mrb_value self) { - mrb_value *argv; mrb_value arg; - int argc; - int base = 0; + mrb_int base = 0; - mrb_get_args(mrb, "*", &argv, &argc); - switch (argc) { - case 2: - base = mrb_fixnum(argv[1]); - case 1: - arg = argv[0]; - break; - default: - mrb_raisef(mrb, E_ARGUMENT_ERROR, "wrong number of arguments (%S for 1..2)", - mrb_fixnum_value(argc)); - } + mrb_get_args(mrb, "o|i", &arg, &base); return mrb_convert_to_integer(mrb, arg, base); } -- cgit v1.2.3