nobu
25b9eb5e57
* include/ruby/ruby.h (rb_data_type_t): restructured. [ruby-dev:41862]
...
add parent member.
* error.c (rb_typeddata_inherited_p): new function.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-18 07:31:54 +00:00
mrkn
1c3e07f0d6
* ext/bigdecimal/bigdecimal.c (Init_bigdecimal): add two new constants BigDecimal::INFINITY and BigDecimal::NAN.
...
* ext/bigdecimal/lib/bigdecimal/math.rb (BigMath.exp): modify the behaviors for infinity arguments as same as Math.exp.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28533 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-03 07:47:00 +00:00
nobu
5b20a1398b
* ext/bigdecimal/lib/bigdecimal/math.rb (BigMath#log): improved
...
precision and performance. [ruby-dev:41295]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27747 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-12 06:04:59 +00:00
mrkn
74365313f7
* ext/bigdecimal/lib/bigdecimal/math.rb (atan), test/bigdecimal/test_bigmath.rb (test_atan): explicitly specify the precision for calculating a reciprocal number of an argument. [Bug #3267 ]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-11 05:11:59 +00:00
nobu
66abf4ad68
* ext/bigdecimal/bigdecimal.c (VpAlloc): ensure buf does not get
...
collected. based on a patch masaya tarui at [ruby-dev:41213].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-08 02:07:43 +00:00
naruse
54476a6024
* ext/bigdecimal/bigdecimal.c (VpCtoV): fix to check overflow.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-06 19:28:12 +00:00
nobu
c8316e30ae
* ext/bigdecimal/bigdecimal.c (BigDecimal_IsInfinite): don't use
...
non-ascii character.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27575 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-01 07:46:46 +00:00
nobu
382085b75b
* ext/bigdecimal: fixed types.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-28 00:47:22 +00:00
nobu
6c29e97c72
* ext/bigdecimal/bigdecimal.def: unnecessary.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-26 01:07:36 +00:00
nobu
cce2aa4958
* ext/bigdecimal/bigdecimal.c: suppressed warnings.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27494 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-26 01:07:32 +00:00
nobu
977267c2e0
* ext/**/*.[ch]: removed trailing spaces.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-22 08:04:13 +00:00
mrkn
5318e0f605
* ext/bigdecimal/bigdecimal.[ch]: replace _DEBUG with BIGDECIMAL_DEBUG to prevent activating debugging code when compiled with -DEBUG flag on Windows. [ruby-core:22989] #1308
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-21 17:22:27 +00:00
mame
49884b5769
* ext/bigdecimal/bigdecimal.c (BigDecimal_coerce): revert r23389,
...
which not only is unnecessary but also causes the inconsistency of
return type. [ruby-core:25706] [Bug #2129 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27358 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-16 12:36:41 +00:00
nobu
ad41699b47
* ext/bigdecimal/bigdecimal.c (BigDecimal_{to_i,mod,divmod,div2}):
...
removed unused variables.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26969 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-17 20:58:34 +00:00
naruse
d4120b1f1d
* ext/bigdecimal/bigdecimal.c (VpCtoV): keep e's sign.
...
When e doesn't over flow e * BASE_FIG but overflow e * 10,
e will overflow.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26954 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-16 08:38:14 +00:00
mame
520053232e
* ext/bigdecimal/bigdecimal.c (BigDecimal_divide): fix precision too.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-09 14:49:41 +00:00
mame
03ad923cdd
* ext/bigdecimal/bigdecimal.c (BigDecimal_DoDivmod): fix precision.
...
[ruby-core:17472][ruby-dev:35372][ruby-dev:40105][ruby-dev:40358]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26626 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-09 14:30:30 +00:00
mame
7a4621eecf
* ext/bigdecimal/bigdecimal.c (BigDecimal_DoDivmod): get red of
...
floating point exception.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-03 18:02:47 +00:00
mame
6c1c35db17
* ext/bigdecimal/bigdecimal.c (BigDecimal_DoDivmod): fix infinity
...
handling. 1 / Infinity was evaluated to NaN.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-03 16:34:24 +00:00
matz
d1499525d5
* ext/bigdecimal/bigdecimal.c (BigDecimal_to_i): update RDoc to
...
denote that #to_i raises FloatDomainError for Inf and NaN.
* ext/bigdecimal/bigdecimal.c (BigDecimal_to_i): fast #to_i using
BigDecimal_split().
* bignum.c (conv_digit): use faster ISDIGIT() assuming ASCII.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26461 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-28 16:34:11 +00:00
mame
1d3c2678e2
* ext/bigdecimal/bigdecimal.c (BigDecimal_DoDivmod, BigDecimal_mod,
...
BigDecimal_divmod, BigDecimal_div2): BigDecimal#% and #div returned
an array itself that was returned by #divmod.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-26 15:25:04 +00:00
mame
48b4d8c528
* ext/bigdecimal/bigdecimal.c (VpCtoV): do not raise infinity
...
exception for BigDecimal("0E200000000000").
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-26 15:21:25 +00:00
mame
05d80e2fc6
* ext/bigdecimal/bigdecimal.c (VpCtoV): BigDecimal("0E200000000000")
...
was Infinity, not 0.
* test/bigdecimal/test_bigdecimal.rb: add a test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26428 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-26 12:52:49 +00:00
marcandre
553b55f6e6
ext/bigdecimal/bigdecimal_en.html: Remove obsolete information, fix typos
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26035 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-12-06 22:35:45 +00:00
marcandre
c07e7d167d
* ext/bigdecimal/bigdecimal.c (BigDecimalCmp): Fix comparisons [ruby-core:26646]
...
* test/bigdecimal/test_bigdecimal.rb (class): Fix and improve tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25765 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-14 00:17:07 +00:00
marcandre
54b5ac5663
* string.c (rb_str_each_line): rdoc fix
...
* ext/bigdecimal/bigdecimal.c (#infinite?, #nonzero?): rdoc fix
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-09 06:50:29 +00:00
naruse
74d16cd0a4
* ext/bigdecimal/bigdecimal.c: fixed rdoc. [ruby-core:26457]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25615 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-01 11:16:53 +00:00
naruse
438b8706a7
* ext/bigdecimal/bigdecimal.c (VpMidRound): remove warnings.
...
patch from Charlie Savage. [ruby-core:22869]
* ext/digest/bubblebabble/bubblebabble.c (bubblebabble_str_new): ditto.
* ext/digest/digest.c (hexencode_str_new): ditto.
* ext/iconv/iconv.c (iconv_convert): ditto.
* ext/socket/socket.c (inspect_sockaddr): ditto.
* ext/socket/raddrinfo.c (sockaddr_obj): ditto.
* ext/syck/emitter.c (syck_emitter_write): ditto.
* ext/syck/emitter.c (syck_emitter_flush): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-16 04:36:31 +00:00
nobu
39ea1c8c7c
* ext/bigdecimal/lib/bigdecimal/math.rb (atan): atan(Infinity) is
...
PI/2.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-23 17:21:26 +00:00
nobu
1ef3ac4738
* ext/bigdecimal/lib/bigdecimal/math.rb (atan): reduce loop with
...
the formula of the double corner. based on a patch from
Masahiro Kanai (CanI) in [ruby-dev:39367].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-23 17:08:37 +00:00
nobu
8c3926aea0
* ext/bigdecimal/lib/bigdecimal/math.rb (atan): refined.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-23 12:25:20 +00:00
nobu
2c34b66e24
* ext/bigdecimal/lib/bigdecimal/{ludcmp,math}.rb: depend on
...
bigdecimal.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-21 20:04:10 +00:00
nobu
51132a8ad9
* ext/bigdecimal/lib/bigdecimal/newton.rb: rdoc needs to be
...
followed by the definition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-21 20:00:21 +00:00
nobu
c1f1b452cb
* ext/bigdecimal/lib/bigdecimal/*.rb: made module functions.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-21 19:56:20 +00:00
nobu
178dafefa9
* ext/bigdecimal/lib/*.rb: fixed indent.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-21 19:49:32 +00:00
nobu
d9bfa822ea
* ext/bigdecimal/bigdecimal.c (GetVpValue): support conversion from
...
Rational. [ruby-core:25697]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25025 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-21 19:47:39 +00:00
marcandre
52999632d7
* ext/bigdecimal/bigdecimal.c (BigDecimal_remainder): Doc fix [ruby-core:18796]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25020 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-21 17:42:37 +00:00
nobu
cd4f59bc5e
* ext/bigdecimal/lib/bigdecimal/math.rb (sin, cos, atan, exp, log):
...
improved precision and performance. based on a patch from Makoto
Yamashita in [ruby-core:25600] and [ruby-core:25602].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-20 15:07:38 +00:00
nobu
7bac09fc26
* ext/bigdecimal/bigdecimal.c (BigDecimal_data_type): typed.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-09 12:20:51 +00:00
azav
a34dc9dc14
* ext/bigdecimal.c: moved BASE_FIG definition before it is used first time.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24274 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-25 15:18:37 +00:00
matz
fe737a1e1d
* ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): went infinity too
...
early. add BASE_FIG margin. [ruby-dev:38673]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-06-18 16:02:21 +00:00
nobu
610c0568c4
* ext/bigdecimal/bigdecimal.c (gfCheckVal): never used.
...
* ext/bigdecimal/bigdecimal.c (VpInit): fixed format modifiers.
* ext/bigdecimal/bigdecimal.c (VPrint): constified.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-06-11 08:49:37 +00:00
matz
5594f2bffb
* ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): returns Inf if
...
exp is bigger than DBL_MANT_DIG.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-31 22:46:43 +00:00
matz
70abf7e8fa
* ext/bigdecimal/bigdecimal.c (BigDecimal_coerce): support
...
coercing into Rational. [ruby-core:23415]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23389 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-10 23:59:10 +00:00
nobu
287a34ae0d
* {ext,lib,test}/**/*.rb: removed trailing spaces.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 03:56:38 +00:00
nobu
0fee78a198
* ext/bigdecimal/bigdecimal.c (gfDebug): uncommented out.
...
[ruby-core:22600]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22689 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-01 08:27:17 +00:00
matz
842be2d7cb
* ext/bigdecimal/bigdecimal.c (VpToString): reverted modification
...
(that caused a bug) in r20359. [ruby-dev:37370]
* ext/bigdecimal/bigdecimal.c (BigDecimal_limit): comment update.
[ruby-dev:37465]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20797 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-16 13:10:35 +00:00
matz
82c719c337
* ext/bigdecimal/bigdecimal.c (BigDecimal_round): should be round
...
to integer. [ruby-dev:37355]
* ext/bigdecimal/bigdecimal.c (BigDecimal_divmod): division should
be integer. [incompatible] [ruby-dev:37355]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-10 16:54:43 +00:00
matz
70cf909fdd
* ext/bigdecimal/bigdecimal.c (BigDecimal_truncate): return
...
integer if no optional argument given. [incompatible]
* ext/bigdecimal/bigdecimal.c (BigDecimal_floor): ditto.
* ext/bigdecimal/bigdecimal.c (BigDecimal_ceil): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-08 16:46:48 +00:00
matz
4d3f3af836
* ext/bigdecimal/bigdecimal.c (BigDecimal_DoDivmod): bigdecimal
...
division (including modulo) should raise ZeroDivisionError as
integer division. [incompatible]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-27 17:20:08 +00:00