diff options
author | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-07-06 15:07:44 +0000 |
---|---|---|
committer | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-07-06 15:07:44 +0000 |
commit | c38982f75f4be560ded527bd4d54398187318ec7 (patch) | |
tree | 54e2bcd4b552181bcb86ea7e3d4b886fb4ce4455 /bignum.c | |
parent | 62b4c459ac89e64861b9bc75f275e31c19085ade (diff) |
* bignum.c (Init_Bignum): revert a part of previous commit (r55598),
because the implementation of Object#hash is a little difference from
trunk. cf. [Backport #12391]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'bignum.c')
-rw-r--r-- | bignum.c | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -6780,6 +6780,15 @@ rb_big_aref(VALUE x, VALUE y) return (xds[s1] & bit) ? INT2FIX(1) : INT2FIX(0); } +/* + * call-seq: + * big.hash -> fixnum + * + * Compute a hash based on the value of _big_. + * + * See also Object#hash. + */ + VALUE rb_big_hash(VALUE x) { @@ -7019,6 +7028,7 @@ Init_Bignum(void) rb_define_method(rb_cBignum, "<=", big_le, 1); rb_define_method(rb_cBignum, "===", rb_big_eq, 1); rb_define_method(rb_cBignum, "eql?", rb_big_eql, 1); + rb_define_method(rb_cBignum, "hash", rb_big_hash, 0); rb_define_method(rb_cBignum, "to_f", rb_big_to_f, 0); rb_define_method(rb_cBignum, "abs", rb_big_abs, 0); rb_define_method(rb_cBignum, "magnitude", rb_big_abs, 0); |