Define Integer#% instead of Bignum#%.

* numeric.c (rb_int_modulo): Define Integer#%.

* bignum.c (rb_big_modulo): Don't define Bignum#%.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
akr 2016-04-30 11:31:28 +00:00
Родитель 25f2c85066
Коммит e27a06f4bb
3 изменённых файлов: 7 добавлений и 1 удалений

Просмотреть файл

@ -1,3 +1,9 @@
Sat Apr 30 20:30:44 2016 Tanaka Akira <akr@fsij.org>
* numeric.c (rb_int_modulo): Define Integer#%.
* bignum.c (rb_big_modulo): Don't define Bignum#%.
Sat Apr 30 20:17:08 2016 Tanaka Akira <akr@fsij.org>
* numeric.c (int_equal): Define Integer#==.

Просмотреть файл

@ -6846,7 +6846,6 @@ Init_Bignum(void)
rb_define_method(rb_cBignum, "-", rb_big_minus, 1);
rb_define_method(rb_cBignum, "*", rb_big_mul, 1);
rb_define_method(rb_cBignum, "/", rb_big_div, 1);
rb_define_method(rb_cBignum, "%", rb_big_modulo, 1);
rb_define_method(rb_cBignum, "===", rb_big_eq, 1);

Просмотреть файл

@ -4943,6 +4943,7 @@ Init_Numeric(void)
rb_define_method(rb_cFixnum, "/", fix_div, 1);
rb_define_method(rb_cInteger, "div", rb_int_idiv, 1);
rb_define_method(rb_cFixnum, "%", fix_mod, 1);
rb_define_method(rb_cInteger, "%", rb_int_modulo, 1);
rb_define_method(rb_cInteger, "modulo", rb_int_modulo, 1);
rb_define_method(rb_cInteger, "remainder", int_remainder, 1);
rb_define_method(rb_cInteger, "divmod", int_divmod, 1);