long-decimal 0.00.11 → 0.00.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. data/README +6 -3
  2. data/VERSION +1 -1
  3. data/doc/classes/LongDecimalRoundingMode/RoundingModeClass.html +5 -5
  4. data/doc/classes/LongDecimalRoundingMode/RoundingModeClass.src/M000133.html +22 -0
  5. data/doc/classes/LongDecimalRoundingMode/RoundingModeClass.src/M000135.html +22 -0
  6. data/doc/classes/LongMath.html +78 -29
  7. data/doc/classes/LongMath.src/M000001.html +1 -1
  8. data/doc/classes/LongMath.src/M000002.html +1 -1
  9. data/doc/classes/LongMath.src/M000003.html +1 -1
  10. data/doc/classes/LongMath.src/M000004.html +1 -1
  11. data/doc/classes/LongMath.src/M000005.html +1 -1
  12. data/doc/classes/LongMath.src/M000006.html +1 -1
  13. data/doc/classes/LongMath.src/M000007.html +1 -1
  14. data/doc/classes/LongMath.src/M000008.html +1 -1
  15. data/doc/classes/LongMath.src/M000009.html +1 -1
  16. data/doc/classes/LongMath.src/M000010.html +1 -1
  17. data/doc/classes/LongMath.src/M000011.html +2 -2
  18. data/doc/classes/LongMath.src/M000012.html +1 -1
  19. data/doc/classes/LongMath.src/M000013.html +1 -1
  20. data/doc/classes/LongMath.src/M000014.html +1 -1
  21. data/doc/classes/LongMath.src/M000015.html +1 -1
  22. data/doc/classes/LongMath.src/M000016.html +14 -11
  23. data/doc/classes/LongMath.src/M000017.html +10 -17
  24. data/doc/classes/LongMath.src/M000018.html +1 -1
  25. data/doc/classes/LongMath.src/M000019.html +2 -1
  26. data/doc/classes/LongMath.src/M000021.html +51 -1
  27. data/doc/classes/LongMath.src/M000022.html +12 -9
  28. data/doc/classes/LongMath.src/M000023.html +28 -5
  29. data/doc/classes/LongMath.src/M000024.html +22 -0
  30. data/doc/classes/LongMath.src/M000025.html +18 -0
  31. data/doc/classes/LongMath/LongDecimal.html +371 -371
  32. data/doc/classes/LongMath/LongDecimal.src/M000058.html +18 -0
  33. data/doc/classes/LongMath/LongDecimal.src/M000059.html +18 -0
  34. data/doc/classes/LongMath/LongDecimal.src/M000060.html +18 -0
  35. data/doc/classes/LongMath/LongDecimal.src/M000061.html +4 -4
  36. data/doc/classes/LongMath/LongDecimal.src/M000062.html +4 -4
  37. data/doc/classes/LongMath/LongDecimal.src/M000063.html +4 -4
  38. data/doc/classes/LongMath/LongDecimal.src/M000064.html +4 -6
  39. data/doc/classes/LongMath/LongDecimal.src/M000065.html +4 -95
  40. data/doc/classes/LongMath/LongDecimal.src/M000066.html +6 -20
  41. data/doc/classes/LongMath/LongDecimal.src/M000067.html +92 -24
  42. data/doc/classes/LongMath/LongDecimal.src/M000068.html +17 -18
  43. data/doc/classes/LongMath/LongDecimal.src/M000069.html +27 -4
  44. data/doc/classes/LongMath/LongDecimal.src/M000070.html +19 -13
  45. data/doc/classes/LongMath/LongDecimal.src/M000071.html +4 -4
  46. data/doc/classes/LongMath/LongDecimal.src/M000072.html +13 -22
  47. data/doc/classes/LongMath/LongDecimal.src/M000073.html +4 -4
  48. data/doc/classes/LongMath/LongDecimal.src/M000074.html +24 -4
  49. data/doc/classes/LongMath/LongDecimal.src/M000075.html +4 -6
  50. data/doc/classes/LongMath/LongDecimal.src/M000076.html +4 -4
  51. data/doc/classes/LongMath/LongDecimal.src/M000077.html +6 -15
  52. data/doc/classes/LongMath/LongDecimal.src/M000078.html +4 -32
  53. data/doc/classes/LongMath/LongDecimal.src/M000079.html +14 -14
  54. data/doc/classes/LongMath/LongDecimal.src/M000080.html +31 -12
  55. data/doc/classes/LongMath/LongDecimal.src/M000081.html +15 -4
  56. data/doc/classes/LongMath/LongDecimal.src/M000082.html +27 -0
  57. data/doc/classes/LongMath/LongDecimal.src/M000083.html +4 -4
  58. data/doc/classes/LongMath/LongDecimal.src/M000085.html +4 -4
  59. data/doc/classes/LongMath/LongDecimal.src/M000086.html +4 -4
  60. data/doc/classes/LongMath/LongDecimal.src/M000087.html +4 -4
  61. data/doc/classes/LongMath/LongDecimal.src/M000088.html +18 -0
  62. data/doc/classes/LongMath/LongDecimal.src/M000089.html +4 -4
  63. data/doc/classes/LongMath/LongDecimal.src/M000090.html +4 -8
  64. data/doc/classes/LongMath/LongDecimal.src/M000091.html +4 -9
  65. data/doc/classes/LongMath/LongDecimal.src/M000092.html +6 -7
  66. data/doc/classes/LongMath/LongDecimal.src/M000093.html +6 -6
  67. data/doc/classes/LongMath/LongDecimal.src/M000094.html +9 -4
  68. data/doc/classes/LongMath/LongDecimal.src/M000095.html +7 -13
  69. data/doc/classes/LongMath/LongDecimal.src/M000096.html +4 -9
  70. data/doc/classes/LongMath/LongDecimal.src/M000097.html +13 -7
  71. data/doc/classes/LongMath/LongDecimal.src/M000098.html +7 -18
  72. data/doc/classes/LongMath/LongDecimal.src/M000099.html +8 -7
  73. data/doc/classes/LongMath/LongDecimal.src/M000100.html +20 -5
  74. data/doc/classes/LongMath/LongDecimal.src/M000101.html +7 -8
  75. data/doc/classes/LongMath/LongDecimal.src/M000102.html +5 -9
  76. data/doc/classes/LongMath/LongDecimal.src/M000103.html +5 -5
  77. data/doc/classes/LongMath/LongDecimal.src/M000104.html +9 -4
  78. data/doc/classes/LongMath/LongDecimal.src/M000105.html +8 -6
  79. data/doc/classes/LongMath/LongDecimal.src/M000106.html +4 -7
  80. data/doc/classes/LongMath/LongDecimal.src/M000107.html +7 -4
  81. data/doc/classes/LongMath/LongDecimal.src/M000108.html +7 -4
  82. data/doc/classes/LongMath/LongDecimal.src/M000109.html +4 -9
  83. data/doc/classes/LongMath/LongDecimal.src/M000110.html +4 -9
  84. data/doc/classes/LongMath/LongDecimal.src/M000111.html +9 -5
  85. data/doc/classes/LongMath/LongDecimal.src/M000112.html +7 -7
  86. data/doc/classes/LongMath/LongDecimal.src/M000113.html +5 -4
  87. data/doc/classes/LongMath/LongDecimal.src/M000114.html +8 -15
  88. data/doc/classes/LongMath/LongDecimal.src/M000115.html +4 -4
  89. data/doc/classes/LongMath/LongDecimal.src/M000116.html +15 -8
  90. data/doc/classes/LongMath/LongDecimal.src/M000117.html +4 -4
  91. data/doc/classes/LongMath/LongDecimal.src/M000119.html +4 -9
  92. data/doc/classes/LongMath/LongDecimal.src/M000121.html +9 -4
  93. data/doc/classes/LongMath/LongDecimal.src/M000122.html +5 -33
  94. data/doc/classes/LongMath/LongDecimal.src/M000123.html +4 -4
  95. data/doc/classes/LongMath/LongDecimal.src/M000124.html +33 -4
  96. data/doc/classes/LongMath/LongDecimal.src/M000125.html +4 -33
  97. data/doc/classes/LongMath/LongDecimal.src/M000126.html +4 -4
  98. data/doc/classes/LongMath/LongDecimal.src/M000128.html +18 -0
  99. data/doc/classes/LongMath/LongDecimal.src/M000129.html +19 -0
  100. data/doc/classes/LongMath/LongDecimal.src/M000130.html +4 -4
  101. data/doc/classes/LongMath/LongDecimal.src/M000131.html +4 -4
  102. data/doc/classes/LongMath/LongDecimal.src/M000132.html +4 -4
  103. data/doc/classes/LongMath/LongDecimal.src/M000133.html +4 -4
  104. data/doc/classes/LongMath/LongDecimalQuot.html +168 -168
  105. data/doc/classes/LongMath/LongDecimalQuot.src/M000026.html +4 -4
  106. data/doc/classes/LongMath/LongDecimalQuot.src/M000027.html +14 -4
  107. data/doc/classes/LongMath/LongDecimalQuot.src/M000028.html +4 -5
  108. data/doc/classes/LongMath/LongDecimalQuot.src/M000029.html +4 -4
  109. data/doc/classes/LongMath/LongDecimalQuot.src/M000030.html +5 -4
  110. data/doc/classes/LongMath/LongDecimalQuot.src/M000031.html +4 -4
  111. data/doc/classes/LongMath/LongDecimalQuot.src/M000032.html +4 -4
  112. data/doc/classes/LongMath/LongDecimalQuot.src/M000033.html +4 -4
  113. data/doc/classes/LongMath/LongDecimalQuot.src/M000034.html +4 -8
  114. data/doc/classes/LongMath/LongDecimalQuot.src/M000035.html +4 -9
  115. data/doc/classes/LongMath/LongDecimalQuot.src/M000036.html +6 -7
  116. data/doc/classes/LongMath/LongDecimalQuot.src/M000037.html +5 -5
  117. data/doc/classes/LongMath/LongDecimalQuot.src/M000038.html +5 -5
  118. data/doc/classes/LongMath/LongDecimalQuot.src/M000039.html +7 -19
  119. data/doc/classes/LongMath/LongDecimalQuot.src/M000040.html +8 -7
  120. data/doc/classes/LongMath/LongDecimalQuot.src/M000041.html +21 -5
  121. data/doc/classes/LongMath/LongDecimalQuot.src/M000042.html +8 -4
  122. data/doc/classes/LongMath/LongDecimalQuot.src/M000043.html +5 -4
  123. data/doc/classes/LongMath/LongDecimalQuot.src/M000044.html +4 -4
  124. data/doc/classes/LongMath/LongDecimalQuot.src/M000045.html +4 -4
  125. data/doc/classes/LongMath/LongDecimalQuot.src/M000046.html +4 -63
  126. data/doc/classes/LongMath/LongDecimalQuot.src/M000047.html +4 -22
  127. data/doc/classes/LongMath/LongDecimalQuot.src/M000048.html +63 -4
  128. data/doc/classes/LongMath/LongDecimalQuot.src/M000049.html +20 -7
  129. data/doc/classes/LongMath/LongDecimalQuot.src/M000050.html +4 -5
  130. data/doc/classes/LongMath/LongDecimalQuot.src/M000051.html +9 -4
  131. data/doc/classes/LongMath/LongDecimalQuot.src/M000052.html +5 -4
  132. data/doc/classes/LongMath/LongDecimalQuot.src/M000053.html +4 -4
  133. data/doc/classes/LongMath/LongDecimalQuot.src/M000054.html +1 -1
  134. data/doc/classes/LongMath/LongDecimalQuot.src/M000055.html +1 -1
  135. data/doc/classes/LongMath/LongDecimalQuot.src/M000056.html +18 -0
  136. data/doc/classes/LongMath/LongDecimalQuot.src/M000057.html +18 -0
  137. data/doc/classes/LongMath/LongDecimalQuot.src/M000058.html +1 -1
  138. data/doc/classes/LongMath/LongDecimalQuot.src/M000059.html +4 -4
  139. data/doc/classes/LongMath/Numeric.html +5 -5
  140. data/doc/classes/LongMath/Numeric.src/M000132.html +18 -0
  141. data/doc/classes/LongMath/Numeric.src/M000134.html +18 -0
  142. data/doc/created.rid +1 -1
  143. data/doc/files/lib/longdecimal_rb.html +2 -2
  144. data/doc/fr_method_index.html +115 -113
  145. data/lib/longdecimal.rb +84 -34
  146. data/test/testlongdecimal.rb +271 -15
  147. metadata +17 -2
@@ -5,19 +5,18 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>&amp; (LongMath::LongDecimal)</title>
8
+ <title>divmod (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1446</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&amp;</span>(<span class="ruby-identifier">other</span>)
15
- <span class="ruby-identifier">s</span>, <span class="ruby-identifier">o</span> = <span class="ruby-identifier">equalize_scale</span>(<span class="ruby-identifier">other</span>)
16
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">LongDecimal</span> <span class="ruby-keyword kw">then</span>
17
- <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">s</span>.<span class="ruby-identifier">int_val</span> <span class="ruby-operator">&amp;</span> <span class="ruby-identifier">o</span>.<span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">s</span>.<span class="ruby-identifier">scale</span>)
18
- <span class="ruby-keyword kw">else</span>
19
- <span class="ruby-identifier">s</span> <span class="ruby-operator">&amp;</span> <span class="ruby-identifier">o</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1477</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">divmod</span>(<span class="ruby-identifier">other</span>)
15
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">other</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Complex</span>) <span class="ruby-keyword kw">then</span>
16
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;divmod not supported for Complex&quot;</span>
20
17
  <span class="ruby-keyword kw">end</span>
18
+ <span class="ruby-identifier">q</span> = (<span class="ruby-keyword kw">self</span> <span class="ruby-operator">/</span> <span class="ruby-identifier">other</span>).<span class="ruby-identifier">to_i</span>
19
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">q</span>, <span class="ruby-keyword kw">self</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">other</span> <span class="ruby-operator">*</span> <span class="ruby-identifier">q</span>
21
20
  <span class="ruby-keyword kw">end</span></pre>
22
21
  </body>
23
22
  </html>
@@ -5,19 +5,15 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>| (LongMath::LongDecimal)</title>
8
+ <title>% (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1458</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-operator">|</span>(<span class="ruby-identifier">other</span>)
15
- <span class="ruby-identifier">s</span>, <span class="ruby-identifier">o</span> = <span class="ruby-identifier">equalize_scale</span>(<span class="ruby-identifier">other</span>)
16
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">LongDecimal</span> <span class="ruby-keyword kw">then</span>
17
- <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">s</span>.<span class="ruby-identifier">int_val</span> <span class="ruby-operator">|</span> <span class="ruby-identifier">o</span>.<span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">s</span>.<span class="ruby-identifier">scale</span>)
18
- <span class="ruby-keyword kw">else</span>
19
- <span class="ruby-identifier">s</span> <span class="ruby-operator">|</span> <span class="ruby-identifier">o</span>
20
- <span class="ruby-keyword kw">end</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1488</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">%</span>(<span class="ruby-identifier">other</span>)
15
+ <span class="ruby-identifier">q</span>, <span class="ruby-identifier">r</span> = <span class="ruby-identifier">divmod</span> <span class="ruby-identifier">other</span>
16
+ <span class="ruby-identifier">r</span>
21
17
  <span class="ruby-keyword kw">end</span></pre>
22
18
  </body>
23
19
  </html>
@@ -5,18 +5,18 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>^ (LongMath::LongDecimal)</title>
8
+ <title>&amp; (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1470</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-operator">^</span>(<span class="ruby-identifier">other</span>)
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1496</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&amp;</span>(<span class="ruby-identifier">other</span>)
15
15
  <span class="ruby-identifier">s</span>, <span class="ruby-identifier">o</span> = <span class="ruby-identifier">equalize_scale</span>(<span class="ruby-identifier">other</span>)
16
16
  <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">LongDecimal</span> <span class="ruby-keyword kw">then</span>
17
- <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">s</span>.<span class="ruby-identifier">int_val</span> <span class="ruby-operator">^</span> <span class="ruby-identifier">o</span>.<span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">s</span>.<span class="ruby-identifier">scale</span>)
17
+ <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">s</span>.<span class="ruby-identifier">int_val</span> <span class="ruby-operator">&amp;</span> <span class="ruby-identifier">o</span>.<span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">s</span>.<span class="ruby-identifier">scale</span>)
18
18
  <span class="ruby-keyword kw">else</span>
19
- <span class="ruby-identifier">s</span> <span class="ruby-operator">^</span> <span class="ruby-identifier">o</span>
19
+ <span class="ruby-identifier">s</span> <span class="ruby-operator">&amp;</span> <span class="ruby-identifier">o</span>
20
20
  <span class="ruby-keyword kw">end</span>
21
21
  <span class="ruby-keyword kw">end</span></pre>
22
22
  </body>
@@ -5,14 +5,19 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>~ (LongMath::LongDecimal)</title>
8
+ <title>| (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1482</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-operator">~</span>
15
- <span class="ruby-constant">LongDecimal</span>(<span class="ruby-operator">~</span><span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">scale</span>)
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1508</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">|</span>(<span class="ruby-identifier">other</span>)
15
+ <span class="ruby-identifier">s</span>, <span class="ruby-identifier">o</span> = <span class="ruby-identifier">equalize_scale</span>(<span class="ruby-identifier">other</span>)
16
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">LongDecimal</span> <span class="ruby-keyword kw">then</span>
17
+ <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">s</span>.<span class="ruby-identifier">int_val</span> <span class="ruby-operator">|</span> <span class="ruby-identifier">o</span>.<span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">s</span>.<span class="ruby-identifier">scale</span>)
18
+ <span class="ruby-keyword kw">else</span>
19
+ <span class="ruby-identifier">s</span> <span class="ruby-operator">|</span> <span class="ruby-identifier">o</span>
20
+ <span class="ruby-keyword kw">end</span>
16
21
  <span class="ruby-keyword kw">end</span></pre>
17
22
  </body>
18
23
  </html>
@@ -5,17 +5,19 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>&lt;&lt; (LongMath::LongDecimal)</title>
8
+ <title>^ (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1489</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;&lt;</span>(<span class="ruby-identifier">other</span>)
15
- <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">other</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Integer</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">other</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span> <span class="ruby-keyword kw">then</span>
16
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;cannot shift by something other than integer &gt;= 0&quot;</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1520</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">^</span>(<span class="ruby-identifier">other</span>)
15
+ <span class="ruby-identifier">s</span>, <span class="ruby-identifier">o</span> = <span class="ruby-identifier">equalize_scale</span>(<span class="ruby-identifier">other</span>)
16
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">LongDecimal</span> <span class="ruby-keyword kw">then</span>
17
+ <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">s</span>.<span class="ruby-identifier">int_val</span> <span class="ruby-operator">^</span> <span class="ruby-identifier">o</span>.<span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">s</span>.<span class="ruby-identifier">scale</span>)
18
+ <span class="ruby-keyword kw">else</span>
19
+ <span class="ruby-identifier">s</span> <span class="ruby-operator">^</span> <span class="ruby-identifier">o</span>
17
20
  <span class="ruby-keyword kw">end</span>
18
- <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">s</span>.<span class="ruby-identifier">int_val</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">other</span>, <span class="ruby-identifier">s</span>.<span class="ruby-identifier">scale</span>)
19
21
  <span class="ruby-keyword kw">end</span></pre>
20
22
  </body>
21
23
  </html>
@@ -5,17 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>&gt;&gt; (LongMath::LongDecimal)</title>
8
+ <title>~ (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1499</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&gt;&gt;</span>(<span class="ruby-identifier">other</span>)
15
- <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">other</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Integer</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">other</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span> <span class="ruby-keyword kw">then</span>
16
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;cannot shift by something other than integer &gt;= 0&quot;</span>
17
- <span class="ruby-keyword kw">end</span>
18
- <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">s</span>.<span class="ruby-identifier">int_val</span> <span class="ruby-operator">&gt;&gt;</span> <span class="ruby-identifier">other</span>, <span class="ruby-identifier">s</span>.<span class="ruby-identifier">scale</span>)
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1532</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">~</span>
15
+ <span class="ruby-constant">LongDecimal</span>(<span class="ruby-operator">~</span><span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">scale</span>)
19
16
  <span class="ruby-keyword kw">end</span></pre>
20
17
  </body>
21
18
  </html>
@@ -5,14 +5,17 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>[] (LongMath::LongDecimal)</title>
8
+ <title>&lt;&lt; (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1509</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-operator">[]</span>(<span class="ruby-identifier">other</span>)
15
- <span class="ruby-identifier">int_val</span>[<span class="ruby-identifier">other</span>]
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1539</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;&lt;</span>(<span class="ruby-identifier">other</span>)
15
+ <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">other</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Integer</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">other</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span> <span class="ruby-keyword kw">then</span>
16
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;cannot shift by something other than integer &gt;= 0&quot;</span>
17
+ <span class="ruby-keyword kw">end</span>
18
+ <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">s</span>.<span class="ruby-identifier">int_val</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">other</span>, <span class="ruby-identifier">s</span>.<span class="ruby-identifier">scale</span>)
16
19
  <span class="ruby-keyword kw">end</span></pre>
17
20
  </body>
18
21
  </html>
@@ -5,14 +5,17 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>size (LongMath::LongDecimal)</title>
8
+ <title>&gt;&gt; (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1516</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">size</span>
15
- <span class="ruby-identifier">int_val</span>.<span class="ruby-identifier">size</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1549</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&gt;&gt;</span>(<span class="ruby-identifier">other</span>)
15
+ <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">other</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Integer</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">other</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span> <span class="ruby-keyword kw">then</span>
16
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;cannot shift by something other than integer &gt;= 0&quot;</span>
17
+ <span class="ruby-keyword kw">end</span>
18
+ <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">s</span>.<span class="ruby-identifier">int_val</span> <span class="ruby-operator">&gt;&gt;</span> <span class="ruby-identifier">other</span>, <span class="ruby-identifier">s</span>.<span class="ruby-identifier">scale</span>)
16
19
  <span class="ruby-keyword kw">end</span></pre>
17
20
  </body>
18
21
  </html>
@@ -5,19 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>move_point_left (LongMath::LongDecimal)</title>
8
+ <title>[] (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1523</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">move_point_left</span>(<span class="ruby-identifier">n</span>)
15
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;only implemented for Fixnum&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">n</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Fixnum</span>
16
- <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">n</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
17
- <span class="ruby-identifier">move_point_left_int</span>(<span class="ruby-identifier">n</span>)
18
- <span class="ruby-keyword kw">else</span>
19
- <span class="ruby-identifier">move_point_right_int</span>(<span class="ruby-operator">-</span><span class="ruby-identifier">n</span>)
20
- <span class="ruby-keyword kw">end</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1559</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">[]</span>(<span class="ruby-identifier">other</span>)
15
+ <span class="ruby-identifier">int_val</span>[<span class="ruby-identifier">other</span>]
21
16
  <span class="ruby-keyword kw">end</span></pre>
22
17
  </body>
23
18
  </html>
@@ -5,19 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>move_point_right (LongMath::LongDecimal)</title>
8
+ <title>size (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1535</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">move_point_right</span>(<span class="ruby-identifier">n</span>)
15
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;only implemented for Fixnum&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">n</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Fixnum</span>
16
- <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">n</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
17
- <span class="ruby-identifier">move_point_left_int</span>(<span class="ruby-operator">-</span><span class="ruby-identifier">n</span>)
18
- <span class="ruby-keyword kw">else</span>
19
- <span class="ruby-identifier">move_point_right_int</span>(<span class="ruby-identifier">n</span>)
20
- <span class="ruby-keyword kw">end</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1566</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">size</span>
15
+ <span class="ruby-identifier">int_val</span>.<span class="ruby-identifier">size</span>
21
16
  <span class="ruby-keyword kw">end</span></pre>
22
17
  </body>
23
18
  </html>
@@ -5,15 +5,19 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>move_point_left_int (LongMath::LongDecimal)</title>
8
+ <title>move_point_left (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1548</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">move_point_left_int</span>(<span class="ruby-identifier">n</span>)
15
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;only implemented for Fixnum &gt;= 0&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">n</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span>
16
- <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">scale</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">n</span>)
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1573</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">move_point_left</span>(<span class="ruby-identifier">n</span>)
15
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;only implemented for Fixnum&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">n</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Fixnum</span>
16
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">n</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
17
+ <span class="ruby-identifier">move_point_left_int</span>(<span class="ruby-identifier">n</span>)
18
+ <span class="ruby-keyword kw">else</span>
19
+ <span class="ruby-identifier">move_point_right_int</span>(<span class="ruby-operator">-</span><span class="ruby-identifier">n</span>)
20
+ <span class="ruby-keyword kw">end</span>
17
21
  <span class="ruby-keyword kw">end</span></pre>
18
22
  </body>
19
23
  </html>
@@ -5,18 +5,18 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>move_point_right_int (LongMath::LongDecimal)</title>
8
+ <title>move_point_right (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1557</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">move_point_right_int</span>(<span class="ruby-identifier">n</span>)
15
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;only implemented for Fixnum &gt;= 0&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">n</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span>
16
- <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">n</span> <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">scale</span>) <span class="ruby-keyword kw">then</span>
17
- <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">int_val</span> <span class="ruby-operator">*</span> <span class="ruby-value">10</span><span class="ruby-operator">**</span>(<span class="ruby-identifier">n</span><span class="ruby-operator">-</span><span class="ruby-identifier">scale</span>), <span class="ruby-value">0</span>)
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1585</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">move_point_right</span>(<span class="ruby-identifier">n</span>)
15
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;only implemented for Fixnum&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">n</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Fixnum</span>
16
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">n</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
17
+ <span class="ruby-identifier">move_point_left_int</span>(<span class="ruby-operator">-</span><span class="ruby-identifier">n</span>)
18
18
  <span class="ruby-keyword kw">else</span>
19
- <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">scale</span><span class="ruby-operator">-</span><span class="ruby-identifier">n</span>)
19
+ <span class="ruby-identifier">move_point_right_int</span>(<span class="ruby-identifier">n</span>)
20
20
  <span class="ruby-keyword kw">end</span>
21
21
  <span class="ruby-keyword kw">end</span></pre>
22
22
  </body>
@@ -5,14 +5,15 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>square (LongMath::LongDecimal)</title>
8
+ <title>move_point_left_int (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1571</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">square</span>
15
- <span class="ruby-keyword kw">self</span> <span class="ruby-operator">*</span> <span class="ruby-keyword kw">self</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1598</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">move_point_left_int</span>(<span class="ruby-identifier">n</span>)
15
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;only implemented for Fixnum &gt;= 0&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">n</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span>
16
+ <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">scale</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">n</span>)
16
17
  <span class="ruby-keyword kw">end</span></pre>
17
18
  </body>
18
19
  </html>
@@ -5,26 +5,19 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>sqrt (LongMath::LongDecimal)</title>
8
+ <title>move_point_right_int (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1575</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sqrt</span>(<span class="ruby-identifier">new_scale</span>, <span class="ruby-identifier">rounding_mode</span>)
15
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-node">&quot;new_scale #{new_scale.inspect} must be integer&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">new_scale</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Integer</span>
16
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-node">&quot;new_scale #{new_scale.inspect} must be &gt;= 0&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">new_scale</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span>
17
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-node">&quot;mode #{mode.inspect} must be legal rounding mode&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">rounding_mode</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">RoundingModeClass</span>
18
-
19
- <span class="ruby-identifier">new_scale1</span> = <span class="ruby-identifier">new_scale</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
20
- <span class="ruby-identifier">old_scale</span> = (<span class="ruby-identifier">new_scale1</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value">1</span>)
21
- <span class="ruby-identifier">x</span> = <span class="ruby-identifier">round_to_scale</span>(<span class="ruby-identifier">old_scale</span>, <span class="ruby-identifier">rounding_mode</span>)
22
- <span class="ruby-identifier">root</span>, <span class="ruby-identifier">rem</span> = <span class="ruby-constant">LongMath</span>.<span class="ruby-identifier">sqrtb_with_remainder</span>(<span class="ruby-identifier">x</span>.<span class="ruby-identifier">int_val</span>)
23
- <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">rem</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">rounding_mode</span> <span class="ruby-operator">==</span> <span class="ruby-constant">ROUND_HALF_EVEN</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">rounding_mode</span> <span class="ruby-operator">==</span> <span class="ruby-constant">ROUND_HALF_DOWN</span>)) <span class="ruby-keyword kw">then</span>
24
- <span class="ruby-identifier">rounding_mode</span> = <span class="ruby-constant">ROUND_HALF_UP</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1607</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">move_point_right_int</span>(<span class="ruby-identifier">n</span>)
15
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;only implemented for Fixnum &gt;= 0&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">n</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span>
16
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">n</span> <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">scale</span>) <span class="ruby-keyword kw">then</span>
17
+ <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">int_val</span> <span class="ruby-operator">*</span> <span class="ruby-value">10</span><span class="ruby-operator">**</span>(<span class="ruby-identifier">n</span><span class="ruby-operator">-</span><span class="ruby-identifier">scale</span>), <span class="ruby-value">0</span>)
18
+ <span class="ruby-keyword kw">else</span>
19
+ <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">scale</span><span class="ruby-operator">-</span><span class="ruby-identifier">n</span>)
25
20
  <span class="ruby-keyword kw">end</span>
26
- <span class="ruby-identifier">y</span> = <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">root</span>, <span class="ruby-identifier">new_scale1</span>)
27
- <span class="ruby-identifier">y</span>.<span class="ruby-identifier">round_to_scale</span>(<span class="ruby-identifier">new_scale</span>, <span class="ruby-identifier">rounding_mode</span>)
28
21
  <span class="ruby-keyword kw">end</span></pre>
29
22
  </body>
30
23
  </html>
@@ -5,14 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>reciprocal (LongMath::LongDecimal)</title>
8
+ <title>square (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1595</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">reciprocal</span>
15
- <span class="ruby-value">1</span> <span class="ruby-operator">/</span> <span class="ruby-keyword kw">self</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1621</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">square</span>
15
+ <span class="ruby-keyword kw">self</span> <span class="ruby-operator">*</span> <span class="ruby-keyword kw">self</span>
16
16
  <span class="ruby-keyword kw">end</span></pre>
17
17
  </body>
18
18
  </html>
@@ -5,19 +5,26 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>move_point_right_int (LongMath::LongDecimal)</title>
8
+ <title>sqrt (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1443</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">move_point_right_int</span>(<span class="ruby-identifier">n</span>)
15
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">&quot;only implemented for Fixnum &gt;= 0&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">n</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span>
16
- <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">n</span> <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">scale</span>) <span class="ruby-keyword kw">then</span>
17
- <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">int_val</span> <span class="ruby-operator">*</span> <span class="ruby-value">10</span><span class="ruby-operator">**</span>(<span class="ruby-identifier">n</span><span class="ruby-operator">-</span><span class="ruby-identifier">scale</span>), <span class="ruby-value">0</span>)
18
- <span class="ruby-keyword kw">else</span>
19
- <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">int_val</span>, <span class="ruby-identifier">scale</span><span class="ruby-operator">-</span><span class="ruby-identifier">n</span>)
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1625</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sqrt</span>(<span class="ruby-identifier">new_scale</span>, <span class="ruby-identifier">rounding_mode</span>)
15
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-node">&quot;new_scale #{new_scale.inspect} must be integer&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">new_scale</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Integer</span>
16
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-node">&quot;new_scale #{new_scale.inspect} must be &gt;= 0&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">new_scale</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span>
17
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-node">&quot;mode #{mode.inspect} must be legal rounding mode&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">rounding_mode</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">RoundingModeClass</span>
18
+
19
+ <span class="ruby-identifier">new_scale1</span> = <span class="ruby-identifier">new_scale</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
20
+ <span class="ruby-identifier">old_scale</span> = (<span class="ruby-identifier">new_scale1</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value">1</span>)
21
+ <span class="ruby-identifier">x</span> = <span class="ruby-identifier">round_to_scale</span>(<span class="ruby-identifier">old_scale</span>, <span class="ruby-identifier">rounding_mode</span>)
22
+ <span class="ruby-identifier">root</span>, <span class="ruby-identifier">rem</span> = <span class="ruby-constant">LongMath</span>.<span class="ruby-identifier">sqrtb_with_remainder</span>(<span class="ruby-identifier">x</span>.<span class="ruby-identifier">int_val</span>)
23
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">rem</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">rounding_mode</span> <span class="ruby-operator">==</span> <span class="ruby-constant">ROUND_HALF_EVEN</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">rounding_mode</span> <span class="ruby-operator">==</span> <span class="ruby-constant">ROUND_HALF_DOWN</span>)) <span class="ruby-keyword kw">then</span>
24
+ <span class="ruby-identifier">rounding_mode</span> = <span class="ruby-constant">ROUND_HALF_UP</span>
20
25
  <span class="ruby-keyword kw">end</span>
26
+ <span class="ruby-identifier">y</span> = <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">root</span>, <span class="ruby-identifier">new_scale1</span>)
27
+ <span class="ruby-identifier">y</span>.<span class="ruby-identifier">round_to_scale</span>(<span class="ruby-identifier">new_scale</span>, <span class="ruby-identifier">rounding_mode</span>)
21
28
  <span class="ruby-keyword kw">end</span></pre>
22
29
  </body>
23
30
  </html>
@@ -5,14 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>abs (LongMath::LongDecimal)</title>
8
+ <title>reciprocal (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1604</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">abs</span>
15
- <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">int_val</span>.<span class="ruby-identifier">abs</span>, <span class="ruby-identifier">scale</span>)
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1645</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">reciprocal</span>
15
+ <span class="ruby-value">1</span> <span class="ruby-operator">/</span> <span class="ruby-keyword kw">self</span>
16
16
  <span class="ruby-keyword kw">end</span></pre>
17
17
  </body>
18
18
  </html>
@@ -5,19 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>&lt;=&gt; (LongMath::LongDecimal)</title>
8
+ <title>abs (LongMath::LongDecimal)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1627</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;=&gt;</span> (<span class="ruby-identifier">other</span>)
15
- <span class="ruby-identifier">diff</span> = (<span class="ruby-keyword kw">self</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">other</span>)
16
- <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">diff</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">LongDecimal</span>) <span class="ruby-operator">||</span> (<span class="ruby-identifier">diff</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">LongDecimalQuot</span>) <span class="ruby-keyword kw">then</span>
17
- <span class="ruby-identifier">diff</span>.<span class="ruby-identifier">sgn</span>
18
- <span class="ruby-keyword kw">else</span>
19
- <span class="ruby-identifier">diff</span> <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-value">0</span>
20
- <span class="ruby-keyword kw">end</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/longdecimal.rb, line 1654</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">abs</span>
15
+ <span class="ruby-constant">LongDecimal</span>(<span class="ruby-identifier">int_val</span>.<span class="ruby-identifier">abs</span>, <span class="ruby-identifier">scale</span>)
21
16
  <span class="ruby-keyword kw">end</span></pre>
22
17
  </body>
23
18
  </html>