summaryrefslogtreecommitdiff
path: root/bignum.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-02-12 02:46:21 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-02-12 02:46:21 +0000
commitf3ac3dc79cdba4692b5b21695eef14d96b33400a (patch)
tree917c82846fb0073e309bbab4dbeb6093011a2645 /bignum.c
parent030a513a49f361f09f11a93d11c034ce07921873 (diff)
* numeric.c (rb_num_coerce_bin): add ID argument to specify
caller's method name. [ruby-dev:33663] * numeric.c (rb_num_coerce_cmp): ditto. * numeric.c (rb_num_coerce_relop): ditto. * ext/bigdecimal/bigdecimal.c (DoSomeOne): add function name argument. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'bignum.c')
-rw-r--r--bignum.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/bignum.c b/bignum.c
index f8400b0f49..2119b7d9aa 100644
--- a/bignum.c
+++ b/bignum.c
@@ -1184,7 +1184,7 @@ rb_big_cmp(VALUE x, VALUE y)
return rb_dbl_cmp(rb_big2dbl(x), RFLOAT_VALUE(y));
default:
- return rb_num_coerce_cmp(x, y);
+ return rb_num_coerce_cmp(x, y, rb_intern("<=>"));
}
if (RBIGNUM_SIGN(x) > RBIGNUM_SIGN(y)) return INT2FIX(1);
@@ -1419,7 +1419,7 @@ rb_big_plus(VALUE x, VALUE y)
return DOUBLE2NUM(rb_big2dbl(x) + RFLOAT_VALUE(y));
default:
- return rb_num_coerce_bin(x, y);
+ return rb_num_coerce_bin(x, y, '+');
}
}
@@ -1444,7 +1444,7 @@ rb_big_minus(VALUE x, VALUE y)
return DOUBLE2NUM(rb_big2dbl(x) - RFLOAT_VALUE(y));
default:
- return rb_num_coerce_bin(x, y);
+ return rb_num_coerce_bin(x, y, '-');
}
}
@@ -1508,7 +1508,7 @@ rb_big_mul0(VALUE x, VALUE y)
return DOUBLE2NUM(rb_big2dbl(x) * RFLOAT_VALUE(y));
default:
- return rb_num_coerce_bin(x, y);
+ return rb_num_coerce_bin(x, y, '*');
}
bms.x = x;
@@ -1742,7 +1742,7 @@ rb_big_div(VALUE x, VALUE y)
return DOUBLE2NUM(rb_big2dbl(x) / RFLOAT_VALUE(y));
default:
- return rb_num_coerce_bin(x, y);
+ return rb_num_coerce_bin(x, y, '/');
}
bigdivmod(x, y, &z, 0);
@@ -1772,7 +1772,7 @@ rb_big_modulo(VALUE x, VALUE y)
break;
default:
- return rb_num_coerce_bin(x, y);
+ return rb_num_coerce_bin(x, y, '%');
}
bigdivmod(x, y, 0, &z);
@@ -1802,7 +1802,7 @@ rb_big_remainder(VALUE x, VALUE y)
break;
default:
- return rb_num_coerce_bin(x, y);
+ return rb_num_coerce_bin(x, y, rb_intern("remainder"));
}
bigdivrem(x, y, 0, &z);
@@ -1830,7 +1830,7 @@ rb_big_divmod(VALUE x, VALUE y)
break;
default:
- return rb_num_coerce_bin(x, y);
+ return rb_num_coerce_bin(x, y, rb_intern("divmod"));
}
bigdivmod(x, y, &div, &mod);
@@ -1931,7 +1931,7 @@ rb_big_quo(VALUE x, VALUE y)
break;
default:
- return rb_num_coerce_bin(x, y);
+ return rb_num_coerce_bin(x, y, rb_intern("quo"));
}
return DOUBLE2NUM(dx / dy);
}
@@ -2038,7 +2038,7 @@ rb_big_pow(VALUE x, VALUE y)
break;
default:
- return rb_num_coerce_bin(x, y);
+ return rb_num_coerce_bin(x, y, rb_intern("**"));
}
return DOUBLE2NUM(pow(rb_big2dbl(x), d));
}