long-decimal 0.00.18 → 0.00.19
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.
- data/README +23 -5
- data/Rakefile +5 -5
- data/VERSION +1 -1
- data/doc/classes/LongDecimal.html +10 -9
- data/doc/classes/LongDecimal.src/M000034.html +1 -1
- data/doc/classes/LongDecimal.src/M000035.html +1 -1
- data/doc/classes/LongDecimal.src/M000036.html +1 -1
- data/doc/classes/LongDecimal.src/M000037.html +1 -1
- data/doc/classes/LongDecimal.src/M000038.html +1 -1
- data/doc/classes/LongDecimal.src/M000039.html +1 -1
- data/doc/classes/LongDecimal.src/M000040.html +1 -1
- data/doc/classes/LongDecimal.src/M000041.html +1 -1
- data/doc/classes/LongDecimal.src/M000042.html +1 -1
- data/doc/classes/LongDecimal.src/M000043.html +1 -1
- data/doc/classes/LongDecimal.src/M000044.html +1 -1
- data/doc/classes/LongDecimal.src/M000045.html +1 -1
- data/doc/classes/LongDecimal.src/M000046.html +1 -1
- data/doc/classes/LongDecimal.src/M000047.html +1 -1
- data/doc/classes/LongDecimal.src/M000048.html +1 -1
- data/doc/classes/LongDecimal.src/M000049.html +1 -1
- data/doc/classes/LongDecimal.src/M000050.html +1 -1
- data/doc/classes/LongDecimal.src/M000051.html +1 -1
- data/doc/classes/LongDecimal.src/M000052.html +1 -1
- data/doc/classes/LongDecimal.src/M000053.html +1 -1
- data/doc/classes/LongDecimal.src/M000054.html +1 -1
- data/doc/classes/LongDecimal.src/M000055.html +1 -1
- data/doc/classes/LongDecimal.src/M000056.html +1 -1
- data/doc/classes/LongDecimal.src/M000058.html +1 -1
- data/doc/classes/LongDecimal.src/M000059.html +1 -1
- data/doc/classes/LongDecimal.src/M000060.html +1 -1
- data/doc/classes/LongDecimal.src/M000061.html +1 -1
- data/doc/classes/LongDecimal.src/M000062.html +1 -1
- data/doc/classes/LongDecimal.src/M000063.html +1 -1
- data/doc/classes/LongDecimal.src/M000064.html +1 -1
- data/doc/classes/LongDecimal.src/M000065.html +1 -1
- data/doc/classes/LongDecimal.src/M000066.html +1 -1
- data/doc/classes/LongDecimal.src/M000067.html +1 -1
- data/doc/classes/LongDecimal.src/M000068.html +1 -1
- data/doc/classes/LongDecimal.src/M000069.html +1 -1
- data/doc/classes/LongDecimal.src/M000070.html +1 -1
- data/doc/classes/LongDecimal.src/M000071.html +1 -1
- data/doc/classes/LongDecimal.src/M000072.html +1 -1
- data/doc/classes/LongDecimal.src/M000073.html +1 -1
- data/doc/classes/LongDecimal.src/M000074.html +1 -1
- data/doc/classes/LongDecimal.src/M000075.html +1 -1
- data/doc/classes/LongDecimal.src/M000076.html +1 -1
- data/doc/classes/LongDecimal.src/M000077.html +1 -1
- data/doc/classes/LongDecimal.src/M000078.html +1 -1
- data/doc/classes/LongDecimal.src/M000079.html +1 -1
- data/doc/classes/LongDecimal.src/M000080.html +1 -1
- data/doc/classes/LongDecimal.src/M000081.html +1 -1
- data/doc/classes/LongDecimal.src/M000082.html +1 -1
- data/doc/classes/LongDecimal.src/M000083.html +1 -1
- data/doc/classes/LongDecimal.src/M000084.html +1 -1
- data/doc/classes/LongDecimal.src/M000085.html +1 -1
- data/doc/classes/LongDecimal.src/M000086.html +1 -1
- data/doc/classes/LongDecimal.src/M000087.html +1 -1
- data/doc/classes/LongDecimal.src/M000088.html +1 -1
- data/doc/classes/LongDecimal.src/M000089.html +1 -1
- data/doc/classes/LongDecimal.src/M000090.html +1 -1
- data/doc/classes/LongDecimal.src/M000091.html +1 -1
- data/doc/classes/LongDecimal.src/M000094.html +1 -1
- data/doc/classes/LongDecimal.src/M000095.html +1 -1
- data/doc/classes/LongDecimal.src/M000096.html +1 -1
- data/doc/classes/LongDecimal.src/M000097.html +1 -1
- data/doc/classes/LongDecimal.src/M000098.html +1 -1
- data/doc/classes/LongDecimal.src/M000099.html +1 -1
- data/doc/classes/LongDecimalBase.html +10 -9
- data/doc/classes/LongDecimalBase.src/M000102.html +1 -1
- data/doc/classes/LongDecimalBase.src/M000103.html +1 -1
- data/doc/classes/LongDecimalBase.src/M000104.html +1 -1
- data/doc/classes/LongDecimalBase.src/M000105.html +1 -1
- data/doc/classes/LongDecimalBase.src/M000106.html +1 -1
- data/doc/classes/LongDecimalBase.src/M000107.html +1 -1
- data/doc/classes/LongDecimalBase.src/M000110.html +1 -1
- data/doc/classes/LongDecimalBase.src/M000111.html +1 -1
- data/doc/classes/LongDecimalBase.src/M000112.html +1 -1
- data/doc/classes/LongDecimalQuot.html +10 -9
- data/doc/classes/LongDecimalQuot.src/M000003.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000004.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000005.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000006.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000007.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000008.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000009.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000010.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000011.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000012.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000013.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000014.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000015.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000016.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000017.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000018.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000019.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000020.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000021.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000022.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000023.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000024.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000025.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000026.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000027.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000028.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000029.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000032.html +1 -1
- data/doc/classes/LongDecimalQuot.src/M000033.html +1 -1
- data/doc/classes/LongDecimalRoundingMode/RoundingModeClass.html +20 -5
- data/doc/classes/LongMath.html +119 -64
- data/doc/classes/LongMath.src/M000113.html +1 -1
- data/doc/classes/LongMath.src/M000114.html +1 -1
- data/doc/classes/LongMath.src/M000115.html +1 -1
- data/doc/classes/LongMath.src/M000116.html +1 -1
- data/doc/classes/LongMath.src/M000117.html +1 -1
- data/doc/classes/LongMath.src/M000118.html +1 -1
- data/doc/classes/LongMath.src/M000119.html +1 -1
- data/doc/classes/LongMath.src/M000120.html +1 -1
- data/doc/classes/LongMath.src/M000121.html +1 -1
- data/doc/classes/LongMath.src/M000122.html +1 -1
- data/doc/classes/LongMath.src/M000123.html +1 -1
- data/doc/classes/LongMath.src/M000124.html +1 -1
- data/doc/classes/LongMath.src/M000125.html +1 -1
- data/doc/classes/LongMath.src/M000126.html +41 -25
- data/doc/classes/LongMath.src/M000127.html +1 -1
- data/doc/classes/LongMath.src/M000128.html +1 -1
- data/doc/classes/LongMath.src/M000129.html +1 -1
- data/doc/classes/LongMath.src/M000130.html +10 -38
- data/doc/classes/LongMath.src/M000131.html +41 -8
- data/doc/classes/LongMath.src/M000132.html +7 -4
- data/doc/classes/LongMath.src/M000133.html +4 -18
- data/doc/classes/LongMath.src/M000134.html +8 -7
- data/doc/classes/LongMath.src/M000135.html +13 -204
- data/doc/classes/LongMath.src/M000136.html +35 -39
- data/doc/classes/LongMath.src/M000137.html +129 -3
- data/doc/classes/Numeric.html +10 -9
- data/doc/classes/Numeric.src/M000100.html +1 -1
- data/doc/classes/Rational.html +10 -9
- data/doc/classes/Rational.src/M000101.html +1 -1
- data/doc/created.rid +1 -1
- data/doc/dot/f_0.dot +20 -7
- data/doc/dot/f_0.png +0 -0
- data/doc/dot/m_0_0.dot +20 -1
- data/doc/dot/m_0_0.png +0 -0
- data/doc/files/lib/long-decimal_rb.html +12 -11
- data/doc/files/lib/long-decimal_rb.src/M000001.html +1 -1
- data/doc/files/lib/long-decimal_rb.src/M000002.html +1 -1
- data/doc/fr_class_index.html +1 -0
- data/doc/fr_method_index.html +30 -26
- data/lib/long-decimal.rb +201 -53
- data/test/testlongdecimal.rb +4 -3
- metadata +3 -3
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1222</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-constant">LongDecimalQuot</span>.<span class="ruby-identifier">new!</span>(<span class="ruby-identifier">first</span>, <span class="ruby-identifier">second</span>)
|
15
15
|
<span class="ruby-identifier">new</span>(<span class="ruby-identifier">first</span>, <span class="ruby-identifier">second</span>)
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1230</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">first</span>, <span class="ruby-identifier">second</span>)
|
15
15
|
<span class="ruby-keyword kw">if</span> ((<span class="ruby-identifier">first</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Rational</span>) <span class="ruby-operator">||</span> (<span class="ruby-identifier">first</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Integer</span>)) <span class="ruby-operator">&&</span> (<span class="ruby-identifier">second</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Integer</span>) <span class="ruby-keyword kw">then</span>
|
16
16
|
<span class="ruby-ivar">@rat</span> = <span class="ruby-constant">Rational</span>(<span class="ruby-identifier">first</span>.<span class="ruby-identifier">numerator</span>, <span class="ruby-identifier">first</span>.<span class="ruby-identifier">denominator</span>)
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1250</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">numerator</span>
|
15
15
|
<span class="ruby-identifier">rat</span>.<span class="ruby-identifier">numerator</span>
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1258</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">denominator</span>
|
15
15
|
<span class="ruby-identifier">rat</span>.<span class="ruby-identifier">denominator</span>
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1276</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
|
15
15
|
<span class="ruby-identifier">str</span> = <span class="ruby-ivar">@rat</span>.<span class="ruby-identifier">to_s</span>
|
16
16
|
<span class="ruby-identifier">str</span> <span class="ruby-operator">+</span> <span class="ruby-value str">"["</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">scale</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">+</span> <span class="ruby-value str">"]"</span>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1284</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_f</span>
|
15
15
|
<span class="ruby-identifier">to_r</span>.<span class="ruby-identifier">to_f</span>
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1291</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_bd</span>
|
15
15
|
<span class="ruby-identifier">to_ld</span>.<span class="ruby-identifier">to_bd</span>
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1298</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_i</span>
|
15
15
|
<span class="ruby-identifier">to_r</span>.<span class="ruby-identifier">to_i</span>
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1307</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_ld</span>(<span class="ruby-identifier">prec</span> = <span class="ruby-identifier">scale</span>, <span class="ruby-identifier">mode</span> = <span class="ruby-constant">LongDecimal</span><span class="ruby-operator">::</span><span class="ruby-constant">ROUND_HALF_UP</span>)
|
15
15
|
<span class="ruby-identifier">round_to_scale</span>(<span class="ruby-identifier">prec</span>, <span class="ruby-identifier">mode</span>)
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1314</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">inc!</span>
|
15
15
|
<span class="ruby-ivar">@rat</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1321</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">dec!</span>
|
15
15
|
<span class="ruby-ivar">@rat</span> <span class="ruby-operator">-=</span> <span class="ruby-value">1</span>
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1329</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-operator">-@</span>
|
15
15
|
<span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">zero?</span> <span class="ruby-keyword kw">then</span>
|
16
16
|
<span class="ruby-keyword kw">self</span>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1343</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-operator">+</span>(<span class="ruby-identifier">other</span>)
|
15
15
|
<span class="ruby-identifier">o</span>, <span class="ruby-identifier">s</span> = <span class="ruby-identifier">coerce</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">LongDecimalQuot</span>) <span class="ruby-keyword kw">then</span>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1358</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-operator">-</span>(<span class="ruby-identifier">other</span>)
|
15
15
|
<span class="ruby-identifier">o</span>, <span class="ruby-identifier">s</span> = <span class="ruby-identifier">coerce</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">LongDecimalQuot</span>) <span class="ruby-keyword kw">then</span>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1373</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-operator">*</span>(<span class="ruby-identifier">other</span>)
|
15
15
|
<span class="ruby-identifier">o</span>, <span class="ruby-identifier">s</span> = <span class="ruby-identifier">coerce</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">LongDecimalQuot</span>) <span class="ruby-keyword kw">then</span>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1388</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-operator">/</span>(<span class="ruby-identifier">other</span>)
|
15
15
|
<span class="ruby-identifier">o</span>, <span class="ruby-identifier">s</span> = <span class="ruby-identifier">coerce</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">LongDecimalQuot</span>) <span class="ruby-keyword kw">then</span>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1403</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-operator">**</span>(<span class="ruby-identifier">other</span>)
|
15
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">LongDecimalBase</span>) <span class="ruby-keyword kw">then</span>
|
16
16
|
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">is_int?</span> <span class="ruby-keyword kw">then</span>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1430</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">divmod</span>(<span class="ruby-identifier">other</span>)
|
15
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
16
|
<span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-value str">"divmod not supported for Complex"</span>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1442</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-operator">%</span>(<span class="ruby-identifier">other</span>)
|
15
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
16
|
<span class="ruby-identifier">r</span>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1450</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">abs</span>
|
15
15
|
<span class="ruby-constant">LongDecimalQuot</span>(<span class="ruby-identifier">rat</span>.<span class="ruby-identifier">abs</span>, <span class="ruby-identifier">scale</span>)
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1464</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">round_to_scale</span>(<span class="ruby-identifier">new_scale</span> = <span class="ruby-ivar">@scale</span>, <span class="ruby-identifier">mode</span> = <span class="ruby-constant">ROUND_UNNECESSARY</span>)
|
15
15
|
|
16
16
|
<span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-node">"new_scale #{new_scale.inspect} must be integer"</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>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1569</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">coerce</span>(<span class="ruby-identifier">other</span>)
|
15
15
|
|
16
16
|
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">LongDecimal</span> <span class="ruby-keyword kw">then</span>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1617</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-operator">==</span>(<span class="ruby-identifier">other</span>)
|
15
15
|
(<span class="ruby-identifier">other</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">LongDecimalQuot</span>) <span class="ruby-operator">&&</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-value">0</span> <span class="ruby-operator">&&</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">scale</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">scale</span>
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1625</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">zero?</span>
|
15
15
|
<span class="ruby-ivar">@rat</span>.<span class="ruby-identifier">zero?</span>
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1633</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">one?</span>
|
15
15
|
(<span class="ruby-ivar">@rat</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>)
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1640</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is_int?</span>
|
15
15
|
<span class="ruby-identifier">denominator</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1647</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sgn</span>
|
15
15
|
<span class="ruby-identifier">numerator</span> <span class="ruby-operator"><=></span> <span class="ruby-value">0</span>
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1656</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">hash</span>
|
15
15
|
<span class="ruby-identifier">rat</span>.<span class="ruby-identifier">hash</span> <span class="ruby-operator">^</span> <span class="ruby-identifier">scale</span>.<span class="ruby-identifier">hash</span>
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -10,7 +10,7 @@
|
|
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/long-decimal.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/long-decimal.rb, line 1664</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">inspect</span>
|
15
15
|
<span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">"LongDecimalQuot(Rational(%s, %s), %s)"</span>, <span class="ruby-identifier">numerator</span>.<span class="ruby-identifier">inspect</span>, <span class="ruby-identifier">denominator</span>.<span class="ruby-identifier">inspect</span>, <span class="ruby-identifier">scale</span>.<span class="ruby-identifier">inspect</span>)
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
@@ -101,7 +101,8 @@ by <a href="../LongDecimal.html">LongDecimal</a>
|
|
101
101
|
<h3 class="section-bar">Methods</h3>
|
102
102
|
|
103
103
|
<div class="name-list">
|
104
|
-
<a href="#
|
104
|
+
<a href="#M000141"><=></a>
|
105
|
+
<a href="#M000142">hash</a>
|
105
106
|
</div>
|
106
107
|
</div>
|
107
108
|
|
@@ -130,12 +131,12 @@ by <a href="../LongDecimal.html">LongDecimal</a>
|
|
130
131
|
<div id="methods">
|
131
132
|
<h3 class="section-bar">Public Instance methods</h3>
|
132
133
|
|
133
|
-
<div id="method-
|
134
|
-
<a name="
|
134
|
+
<div id="method-M000141" class="method-detail">
|
135
|
+
<a name="M000141"></a>
|
135
136
|
|
136
137
|
<div class="method-heading">
|
137
|
-
<a href="RoundingModeClass.src/
|
138
|
-
onclick="popupCode('RoundingModeClass.src/
|
138
|
+
<a href="RoundingModeClass.src/M000141.html" target="Code" class="method-signature"
|
139
|
+
onclick="popupCode('RoundingModeClass.src/M000141.html');return false;">
|
139
140
|
<span class="method-name"><=></span><span class="method-args">(o)</span>
|
140
141
|
</a>
|
141
142
|
</div>
|
@@ -147,6 +148,20 @@ introduce some ordering for rounding modes
|
|
147
148
|
</div>
|
148
149
|
</div>
|
149
150
|
|
151
|
+
<div id="method-M000142" class="method-detail">
|
152
|
+
<a name="M000142"></a>
|
153
|
+
|
154
|
+
<div class="method-heading">
|
155
|
+
<a href="RoundingModeClass.src/M000142.html" target="Code" class="method-signature"
|
156
|
+
onclick="popupCode('RoundingModeClass.src/M000142.html');return false;">
|
157
|
+
<span class="method-name">hash</span><span class="method-args">()</span>
|
158
|
+
</a>
|
159
|
+
</div>
|
160
|
+
|
161
|
+
<div class="method-description">
|
162
|
+
</div>
|
163
|
+
</div>
|
164
|
+
|
150
165
|
|
151
166
|
</div>
|
152
167
|
|
data/doc/classes/LongMath.html
CHANGED
@@ -73,8 +73,10 @@
|
|
73
73
|
<div id="contextContent">
|
74
74
|
<div id="diagram">
|
75
75
|
<map id="map" name="map">
|
76
|
-
<area shape="RECT" coords="5,
|
77
|
-
<area shape="RECT" coords="
|
76
|
+
<area shape="RECT" coords="5,6,85,54" href="Comparable.html" alt="Comparable">
|
77
|
+
<area shape="RECT" coords="43,102,123,150" href="LongMath/CacheKey.html" alt="CacheKey">
|
78
|
+
<area shape="RECT" coords="109,6,264,54" href="LongDecimalRoundingMode.html" alt="LongDecimalRoundingMode">
|
79
|
+
<area shape="RECT" coords="32,68,160,160" href="LongMath.html" alt="LongMath">
|
78
80
|
</map>
|
79
81
|
<img src="../dot/m_0_0.png" usemap="#map" border=0 alt="Module: LongMath">
|
80
82
|
</div>
|
@@ -99,7 +101,6 @@ href="LongDecimal.html">LongDecimal</a> instead of Float.
|
|
99
101
|
<h3 class="section-bar">Methods</h3>
|
100
102
|
|
101
103
|
<div class="name-list">
|
102
|
-
<a href="#M000126">calc_pi</a>
|
103
104
|
<a href="#M000114">check_is_int</a>
|
104
105
|
<a href="#M000115">check_is_ld</a>
|
105
106
|
<a href="#M000117">check_is_mode</a>
|
@@ -109,17 +110,20 @@ href="LongDecimal.html">LongDecimal</a> instead of Float.
|
|
109
110
|
<a href="#M000129">exp10</a>
|
110
111
|
<a href="#M000128">exp2</a>
|
111
112
|
<a href="#M000130">exp_internal</a>
|
113
|
+
<a href="#M000131">exp_raw</a>
|
112
114
|
<a href="#M000124">gcd_with_high_power</a>
|
113
|
-
<a href="#
|
114
|
-
<a href="#
|
115
|
-
<a href="#
|
116
|
-
<a href="#
|
115
|
+
<a href="#M000133">log</a>
|
116
|
+
<a href="#M000134">log10</a>
|
117
|
+
<a href="#M000135">log2</a>
|
118
|
+
<a href="#M000136">log_internal</a>
|
119
|
+
<a href="#M000137">log_raw</a>
|
117
120
|
<a href="#M000119">merge_from_words</a>
|
118
121
|
<a href="#M000125">multiplicity_of_factor</a>
|
119
|
-
<a href="#
|
120
|
-
<a href="#
|
122
|
+
<a href="#M000126">pi</a>
|
123
|
+
<a href="#M000138">power</a>
|
124
|
+
<a href="#M000139">power_internal</a>
|
121
125
|
<a href="#M000118">split_to_words</a>
|
122
|
-
<a href="#
|
126
|
+
<a href="#M000132">sqrt</a>
|
123
127
|
<a href="#M000120">sqrtb</a>
|
124
128
|
<a href="#M000121">sqrtb_with_remainder</a>
|
125
129
|
<a href="#M000122">sqrtw</a>
|
@@ -141,6 +145,12 @@ href="LongDecimal.html">LongDecimal</a> instead of Float.
|
|
141
145
|
|
142
146
|
<div id="section">
|
143
147
|
|
148
|
+
<div id="class-list">
|
149
|
+
<h3 class="section-bar">Classes and Modules</h3>
|
150
|
+
|
151
|
+
Class <a href="LongMath/CacheKey.html" class="link">LongMath::CacheKey</a><br />
|
152
|
+
|
153
|
+
</div>
|
144
154
|
|
145
155
|
<div id="constants-list">
|
146
156
|
<h3 class="section-bar">Constants</h3>
|
@@ -167,6 +177,11 @@ href="LongDecimal.html">LongDecimal</a> instead of Float.
|
|
167
177
|
<td>=</td>
|
168
178
|
<td class="context-item-value">Math.log(10.0)</td>
|
169
179
|
</tr>
|
180
|
+
<tr class="top-aligned-row context-row">
|
181
|
+
<td class="context-item-name">CacheKey</td>
|
182
|
+
<td>=</td>
|
183
|
+
<td class="context-item-value">Struct.new(:fname, :arg, :mode)</td>
|
184
|
+
</tr>
|
170
185
|
</table>
|
171
186
|
</div>
|
172
187
|
</div>
|
@@ -180,30 +195,6 @@ href="LongDecimal.html">LongDecimal</a> instead of Float.
|
|
180
195
|
<div id="methods">
|
181
196
|
<h3 class="section-bar">Public Class methods</h3>
|
182
197
|
|
183
|
-
<div id="method-M000126" class="method-detail">
|
184
|
-
<a name="M000126"></a>
|
185
|
-
|
186
|
-
<div class="method-heading">
|
187
|
-
<a href="LongMath.src/M000126.html" target="Code" class="method-signature"
|
188
|
-
onclick="popupCode('LongMath.src/M000126.html');return false;">
|
189
|
-
<span class="method-name">calc_pi</span><span class="method-args">(prec, final_mode = LongDecimal::ROUND_HALF_DOWN)</span>
|
190
|
-
</a>
|
191
|
-
</div>
|
192
|
-
|
193
|
-
<div class="method-description">
|
194
|
-
<p>
|
195
|
-
method for calculating pi to the given number of digits after the decimal
|
196
|
-
point. It works fine for 1000 or 2000 digits or so. This method could be
|
197
|
-
optimized more, but if you really want to go for more digits, you will find
|
198
|
-
a specialized and optimized program for this specific purpose, probably
|
199
|
-
written in C or C++. Since calculation of pi is not what should typically
|
200
|
-
be done with <a href="LongDecimal.html">LongDecimal</a>, you may consider
|
201
|
-
this method to be the easter egg of <a
|
202
|
-
href="LongDecimal.html">LongDecimal</a>. ;-)
|
203
|
-
</p>
|
204
|
-
</div>
|
205
|
-
</div>
|
206
|
-
|
207
198
|
<div id="method-M000114" class="method-detail">
|
208
199
|
<a name="M000114"></a>
|
209
200
|
|
@@ -365,7 +356,7 @@ future versions.
|
|
365
356
|
<div class="method-heading">
|
366
357
|
<a href="LongMath.src/M000130.html" target="Code" class="method-signature"
|
367
358
|
onclick="popupCode('LongMath.src/M000130.html');return false;">
|
368
|
-
<span class="method-name">exp_internal</span><span class="method-args">(x, prec = nil, final_mode = LongDecimal::ROUND_HALF_DOWN, j = nil, k = nil, iprec = nil, mode = LongDecimal::ROUND_HALF_DOWN)</span>
|
359
|
+
<span class="method-name">exp_internal</span><span class="method-args">(x, prec = nil, final_mode = LongDecimal::ROUND_HALF_DOWN, j = nil, k = nil, iprec = nil, mode = LongDecimal::ROUND_HALF_DOWN, cache_result = true)</span>
|
369
360
|
</a>
|
370
361
|
</div>
|
371
362
|
|
@@ -379,6 +370,24 @@ if the default settings for the parameters do not work correctly
|
|
379
370
|
</div>
|
380
371
|
</div>
|
381
372
|
|
373
|
+
<div id="method-M000131" class="method-detail">
|
374
|
+
<a name="M000131"></a>
|
375
|
+
|
376
|
+
<div class="method-heading">
|
377
|
+
<a href="LongMath.src/M000131.html" target="Code" class="method-signature"
|
378
|
+
onclick="popupCode('LongMath.src/M000131.html');return false;">
|
379
|
+
<span class="method-name">exp_raw</span><span class="method-args">(x, prec, j, k, iprec, mode)</span>
|
380
|
+
</a>
|
381
|
+
</div>
|
382
|
+
|
383
|
+
<div class="method-description">
|
384
|
+
<p>
|
385
|
+
calculation of exp(x) with precision used internally. Needs to be rounded
|
386
|
+
to be accurate to all digits that are provided.
|
387
|
+
</p>
|
388
|
+
</div>
|
389
|
+
</div>
|
390
|
+
|
382
391
|
<div id="method-M000124" class="method-detail">
|
383
392
|
<a name="M000124"></a>
|
384
393
|
|
@@ -397,12 +406,12 @@ exponent such that gcd(x, b**m) = gcd(x, b**n) for all m, n >= n0
|
|
397
406
|
</div>
|
398
407
|
</div>
|
399
408
|
|
400
|
-
<div id="method-
|
401
|
-
<a name="
|
409
|
+
<div id="method-M000133" class="method-detail">
|
410
|
+
<a name="M000133"></a>
|
402
411
|
|
403
412
|
<div class="method-heading">
|
404
|
-
<a href="LongMath.src/
|
405
|
-
onclick="popupCode('LongMath.src/
|
413
|
+
<a href="LongMath.src/M000133.html" target="Code" class="method-signature"
|
414
|
+
onclick="popupCode('LongMath.src/M000133.html');return false;">
|
406
415
|
<span class="method-name">log</span><span class="method-args">(x, prec, mode = LongDecimal::ROUND_HALF_DOWN)</span>
|
407
416
|
</a>
|
408
417
|
</div>
|
@@ -415,12 +424,12 @@ href="LongDecimal.html">LongDecimal</a>.
|
|
415
424
|
</div>
|
416
425
|
</div>
|
417
426
|
|
418
|
-
<div id="method-
|
419
|
-
<a name="
|
427
|
+
<div id="method-M000134" class="method-detail">
|
428
|
+
<a name="M000134"></a>
|
420
429
|
|
421
430
|
<div class="method-heading">
|
422
|
-
<a href="LongMath.src/
|
423
|
-
onclick="popupCode('LongMath.src/
|
431
|
+
<a href="LongMath.src/M000134.html" target="Code" class="method-signature"
|
432
|
+
onclick="popupCode('LongMath.src/M000134.html');return false;">
|
424
433
|
<span class="method-name">log10</span><span class="method-args">(x, prec, mode = LongDecimal::ROUND_HALF_DOWN)</span>
|
425
434
|
</a>
|
426
435
|
</div>
|
@@ -433,12 +442,12 @@ href="LongDecimal.html">LongDecimal</a>.
|
|
433
442
|
</div>
|
434
443
|
</div>
|
435
444
|
|
436
|
-
<div id="method-
|
437
|
-
<a name="
|
445
|
+
<div id="method-M000135" class="method-detail">
|
446
|
+
<a name="M000135"></a>
|
438
447
|
|
439
448
|
<div class="method-heading">
|
440
|
-
<a href="LongMath.src/
|
441
|
-
onclick="popupCode('LongMath.src/
|
449
|
+
<a href="LongMath.src/M000135.html" target="Code" class="method-signature"
|
450
|
+
onclick="popupCode('LongMath.src/M000135.html');return false;">
|
442
451
|
<span class="method-name">log2</span><span class="method-args">(x, prec, mode = LongDecimal::ROUND_HALF_DOWN)</span>
|
443
452
|
</a>
|
444
453
|
</div>
|
@@ -451,13 +460,13 @@ href="LongDecimal.html">LongDecimal</a>.
|
|
451
460
|
</div>
|
452
461
|
</div>
|
453
462
|
|
454
|
-
<div id="method-
|
455
|
-
<a name="
|
463
|
+
<div id="method-M000136" class="method-detail">
|
464
|
+
<a name="M000136"></a>
|
456
465
|
|
457
466
|
<div class="method-heading">
|
458
|
-
<a href="LongMath.src/
|
459
|
-
onclick="popupCode('LongMath.src/
|
460
|
-
<span class="method-name">log_internal</span><span class="method-args">(x, prec = nil, final_mode = LongDecimal::ROUND_HALF_DOWN, iprec = nil, mode = LongDecimal::ROUND_HALF_DOWN)</span>
|
467
|
+
<a href="LongMath.src/M000136.html" target="Code" class="method-signature"
|
468
|
+
onclick="popupCode('LongMath.src/M000136.html');return false;">
|
469
|
+
<span class="method-name">log_internal</span><span class="method-args">(x, prec = nil, final_mode = LongDecimal::ROUND_HALF_DOWN, iprec = nil, mode = LongDecimal::ROUND_HALF_DOWN, cache_result = true)</span>
|
461
470
|
</a>
|
462
471
|
</div>
|
463
472
|
|
@@ -471,6 +480,24 @@ if the default settings for the parameters do not work correctly
|
|
471
480
|
</div>
|
472
481
|
</div>
|
473
482
|
|
483
|
+
<div id="method-M000137" class="method-detail">
|
484
|
+
<a name="M000137"></a>
|
485
|
+
|
486
|
+
<div class="method-heading">
|
487
|
+
<a href="LongMath.src/M000137.html" target="Code" class="method-signature"
|
488
|
+
onclick="popupCode('LongMath.src/M000137.html');return false;">
|
489
|
+
<span class="method-name">log_raw</span><span class="method-args">(x, prec, iprec, mode)</span>
|
490
|
+
</a>
|
491
|
+
</div>
|
492
|
+
|
493
|
+
<div class="method-description">
|
494
|
+
<p>
|
495
|
+
calculate log with all digits used internally. result needs to be rounded
|
496
|
+
in order to ensure that all digits that are provided are correct.
|
497
|
+
</p>
|
498
|
+
</div>
|
499
|
+
</div>
|
500
|
+
|
474
501
|
<div id="method-M000119" class="method-detail">
|
475
502
|
<a name="M000119"></a>
|
476
503
|
|
@@ -511,12 +538,40 @@ that exceed the range of Float
|
|
511
538
|
</div>
|
512
539
|
</div>
|
513
540
|
|
514
|
-
<div id="method-
|
515
|
-
<a name="
|
541
|
+
<div id="method-M000126" class="method-detail">
|
542
|
+
<a name="M000126"></a>
|
516
543
|
|
517
544
|
<div class="method-heading">
|
518
|
-
<a href="LongMath.src/
|
519
|
-
onclick="popupCode('LongMath.src/
|
545
|
+
<a href="LongMath.src/M000126.html" target="Code" class="method-signature"
|
546
|
+
onclick="popupCode('LongMath.src/M000126.html');return false;">
|
547
|
+
<span class="method-name">pi</span><span class="method-args">(prec, final_mode = LongDecimal::ROUND_HALF_DOWN, iprec = nil, mode = nil, cache_result = true)</span>
|
548
|
+
</a>
|
549
|
+
</div>
|
550
|
+
|
551
|
+
<div class="method-description">
|
552
|
+
<p>
|
553
|
+
method for calculating pi to the given number of digits after the decimal
|
554
|
+
point. It works fine for 1000 or 2000 digits or so. This method could be
|
555
|
+
optimized more, but if you really want to go for more digits, you will find
|
556
|
+
a specialized and optimized program for this specific purpose, probably
|
557
|
+
written in C or C++. Since calculation of pi is not what should typically
|
558
|
+
be done with <a href="LongDecimal.html">LongDecimal</a>, you may consider
|
559
|
+
this method to be the easter egg of <a
|
560
|
+
href="LongDecimal.html">LongDecimal</a>. ;-) parameters prec precision of
|
561
|
+
the end result final_mode rounding mode to be used when creating the end
|
562
|
+
result iprec precision used internally mode rounding_mode used internally
|
563
|
+
cache_result should the result be cached? Set to false, if an extraordinary
|
564
|
+
long result is really needed only once
|
565
|
+
</p>
|
566
|
+
</div>
|
567
|
+
</div>
|
568
|
+
|
569
|
+
<div id="method-M000138" class="method-detail">
|
570
|
+
<a name="M000138"></a>
|
571
|
+
|
572
|
+
<div class="method-heading">
|
573
|
+
<a href="LongMath.src/M000138.html" target="Code" class="method-signature"
|
574
|
+
onclick="popupCode('LongMath.src/M000138.html');return false;">
|
520
575
|
<span class="method-name">power</span><span class="method-args">(x, y, prec, mode = LongDecimal::ROUND_HALF_DOWN)</span>
|
521
576
|
</a>
|
522
577
|
</div>
|
@@ -530,12 +585,12 @@ that exp(y) still fits into a float (y <= 709)
|
|
530
585
|
</div>
|
531
586
|
</div>
|
532
587
|
|
533
|
-
<div id="method-
|
534
|
-
<a name="
|
588
|
+
<div id="method-M000139" class="method-detail">
|
589
|
+
<a name="M000139"></a>
|
535
590
|
|
536
591
|
<div class="method-heading">
|
537
|
-
<a href="LongMath.src/
|
538
|
-
onclick="popupCode('LongMath.src/
|
592
|
+
<a href="LongMath.src/M000139.html" target="Code" class="method-signature"
|
593
|
+
onclick="popupCode('LongMath.src/M000139.html');return false;">
|
539
594
|
<span class="method-name">power_internal</span><span class="method-args">(x, y, prec = nil, final_mode = LongDecimal::ROUND_HALF_DOWN, iprec = nil, mode = LongDecimal::ROUND_HALF_DOWN)</span>
|
540
595
|
</a>
|
541
596
|
</div>
|
@@ -569,12 +624,12 @@ href="LongMath.html#M000119">merge_from_words</a>)
|
|
569
624
|
</div>
|
570
625
|
</div>
|
571
626
|
|
572
|
-
<div id="method-
|
573
|
-
<a name="
|
627
|
+
<div id="method-M000132" class="method-detail">
|
628
|
+
<a name="M000132"></a>
|
574
629
|
|
575
630
|
<div class="method-heading">
|
576
|
-
<a href="LongMath.src/
|
577
|
-
onclick="popupCode('LongMath.src/
|
631
|
+
<a href="LongMath.src/M000132.html" target="Code" class="method-signature"
|
632
|
+
onclick="popupCode('LongMath.src/M000132.html');return false;">
|
578
633
|
<span class="method-name">sqrt</span><span class="method-args">(x, prec, mode = LongDecimal::ROUND_HALF_DOWN)</span>
|
579
634
|
</a>
|
580
635
|
</div>
|