diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | ext/bigdecimal/bigdecimal.c | 13 |
2 files changed, 20 insertions, 0 deletions
@@ -1,3 +1,10 @@ +Thu Aug 01 07:28:12 2014 Kenta Murata <mrkn@mrkn.jp> + + * ext/bigdecimal/bigdecimal.c: [DOC] Add description of + `BigDecimal.new` exceptions. Patched by @joker1007 and + @prathamesh-sonpatki [Fixes GH-690] + https://github.com/ruby/ruby/pull/690 + Thu Jul 31 22:20:12 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> * ext/win32ole/win32ole.c: add WIN32OLE_RECORD#inspect. diff --git a/ext/bigdecimal/bigdecimal.c b/ext/bigdecimal/bigdecimal.c index 44e13a49d7..08febb5585 100644 --- a/ext/bigdecimal/bigdecimal.c +++ b/ext/bigdecimal/bigdecimal.c @@ -2463,6 +2463,19 @@ static Real *BigDecimal_new(int argc, VALUE *argv); * * The actual number of significant digits used in computation is usually * larger than the specified number. + * + * ==== Exceptions + * + * TypeError:: If the +initial+ type is neither Fixnum, Bignum, Float, + * Rational, nor BigDecimal, this exception is raised. + * + * TypeError:: If the +digits+ is not a Fixnum, this exception is raised. + * + * ArgumentError:: If +initial+ is a Float, and the +digits+ is larger than + * Float::DIG + 1, this exception is raised. + * + * ArgumentError:: If the +initial+ is a Float or Rational, and the +digits+ + * value is omitted, this exception is raised. */ static VALUE BigDecimal_initialize(int argc, VALUE *argv, VALUE self) |