diff options
author | tadf <tadf@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-06-16 23:17:17 +0000 |
---|---|---|
committer | tadf <tadf@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-06-16 23:17:17 +0000 |
commit | 19e547ea39df78ccb779bece37215309a2555838 (patch) | |
tree | c03667f6ee8f999e8a60b23453e7b12e043c9880 /complex.c | |
parent | c2b2aa8b27101fa76be45debfc6a96b9a58dab23 (diff) | |
download | ruby-19e547ea39df78ccb779bece37215309a2555838.tar.gz ruby-19e547ea39df78ccb779bece37215309a2555838.tar.xz ruby-19e547ea39df78ccb779bece37215309a2555838.zip |
* complex.c (nucomp_coerce): accepts Complex instances.
* rational.c (nurat_coerce): accepts Rational
instances. [ruby-core:23859]
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@23718 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'complex.c')
-rw-r--r-- | complex.c | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -747,6 +747,8 @@ nucomp_coerce(VALUE self, VALUE other) { if (k_numeric_p(other) && f_real_p(other)) return rb_assoc_new(f_complex_new_bang1(CLASS_OF(self), other), self); + if (TYPE(other) == T_COMPLEX) + return rb_assoc_new(other, self); rb_raise(rb_eTypeError, "%s can't be coerced into %s", rb_obj_classname(other), rb_obj_classname(self)); |