quantitymanager 0.2.0 → 0.9.0
Sign up to get free protection for your applications and to get access to all the features.
- data/doc/classes/Array.html +12 -12
- data/doc/classes/Array.src/M000042.html +23 -0
- data/doc/classes/Array.src/M000043.html +19 -0
- data/doc/classes/CalculatorTest.html +72 -72
- data/doc/classes/CalculatorTest.src/M000024.html +18 -10
- data/doc/classes/CalculatorTest.src/M000025.html +11 -17
- data/doc/classes/CalculatorTest.src/M000026.html +11 -13
- data/doc/classes/CalculatorTest.src/M000027.html +19 -13
- data/doc/classes/CalculatorTest.src/M000028.html +12 -11
- data/doc/classes/CalculatorTest.src/M000029.html +12 -9
- data/doc/classes/CalculatorTest.src/M000030.html +10 -10
- data/doc/classes/CalculatorTest.src/M000031.html +9 -15
- data/doc/classes/CalculatorTest.src/M000032.html +11 -8
- data/doc/classes/CalculatorTest.src/M000033.html +15 -7
- data/doc/classes/CalculatorTest.src/M000034.html +8 -17
- data/doc/classes/CalculatorTest.src/M000035.html +9 -6
- data/doc/classes/CalculatorTest.src/M000036.html +32 -0
- data/doc/classes/CalculatorTest.src/M000037.html +20 -0
- data/doc/classes/CompasedUnitTest.html +32 -2
- data/doc/classes/CompasedUnitTest.src/M000001.html +1 -1
- data/doc/classes/CompasedUnitTest.src/M000002.html +1 -1
- data/doc/classes/CompasedUnitTest.src/M000003.html +1 -1
- data/doc/classes/CompasedUnitTest.src/M000004.html +1 -1
- data/doc/classes/CompasedUnitTest.src/M000005.html +1 -1
- data/doc/classes/CompasedUnitTest.src/M000006.html +1 -1
- data/doc/classes/CompasedUnitTest.src/M000007.html +1 -1
- data/doc/classes/CompasedUnitTest.src/M000008.html +1 -1
- data/doc/classes/CompasedUnitTest.src/M000009.html +1 -1
- data/doc/classes/CompasedUnitTest.src/M000010.html +1 -1
- data/doc/classes/CompasedUnitTest.src/M000011.html +18 -0
- data/doc/classes/CompasedUnitTest.src/M000012.html +32 -0
- data/doc/classes/Configuration.html +22 -22
- data/doc/classes/Configuration.src/M000044.html +5 -4
- data/doc/classes/Configuration.src/M000045.html +4 -10
- data/doc/classes/Configuration.src/M000046.html +18 -0
- data/doc/classes/Configuration.src/M000047.html +24 -0
- data/doc/classes/ConfigurationTest.html +22 -22
- data/doc/classes/ConfigurationTest.src/M000068.html +16 -9
- data/doc/classes/ConfigurationTest.src/M000069.html +27 -0
- data/doc/classes/ConfigurationTest.src/M000070.html +35 -0
- data/doc/classes/ConfigurationTest.src/M000071.html +24 -0
- data/doc/classes/CustomUnitConversionTest.html +47 -32
- data/doc/classes/CustomUnitConversionTest.src/M000055.html +16 -11
- data/doc/classes/CustomUnitConversionTest.src/M000056.html +9 -10
- data/doc/classes/CustomUnitConversionTest.src/M000057.html +6 -10
- data/doc/classes/CustomUnitConversionTest.src/M000058.html +26 -0
- data/doc/classes/CustomUnitConversionTest.src/M000059.html +26 -0
- data/doc/classes/CustomUnitConversionTest.src/M000060.html +24 -0
- data/doc/classes/CustomUnitConversionTest.src/M000061.html +27 -0
- data/doc/classes/Numeric.html +2 -2
- data/doc/classes/QuantifiableTest.html +22 -22
- data/doc/classes/QuantifiableTest.src/M000038.html +8 -25
- data/doc/classes/QuantifiableTest.src/M000039.html +12 -9
- data/doc/classes/QuantifiableTest.src/M000040.html +41 -0
- data/doc/classes/QuantifiableTest.src/M000041.html +31 -0
- data/doc/classes/Quantity/CalculationSupport.html +168 -0
- data/doc/classes/Quantity/CalculationSupport.src/M000075.html +22 -0
- data/doc/classes/Quantity/CalculationSupport.src/M000076.html +21 -0
- data/doc/classes/Quantity/CalculationSupport.src/M000077.html +18 -0
- data/doc/classes/Quantity/Calculator.html +32 -32
- data/doc/classes/Quantity/Calculator.src/M000083.html +1 -1
- data/doc/classes/Quantity/Calculator.src/M000084.html +2 -2
- data/doc/classes/Quantity/Calculator.src/M000085.html +1 -1
- data/doc/classes/Quantity/Calculator.src/M000086.html +2 -2
- data/doc/classes/Quantity/Calculator.src/M000087.html +1 -1
- data/doc/classes/Quantity/Calculator.src/M000088.html +2 -3
- data/doc/classes/Quantity/Measurable.html +12 -12
- data/doc/classes/Quantity/Measurable.src/M000073.html +18 -0
- data/doc/classes/Quantity/Measurable.src/M000074.html +18 -0
- data/doc/classes/Quantity/OperationInfo.html +13 -13
- data/doc/classes/Quantity/OperationInfo.src/M000089.html +3 -3
- data/doc/classes/Quantity/OperationInfo.src/M000090.html +1 -1
- data/doc/classes/Quantity/Quantifiable.html +7 -7
- data/doc/classes/Quantity/Quantifiable.src/M000072.html +18 -0
- data/doc/classes/Quantity/Quantity.html +18 -18
- data/doc/classes/Quantity/Quantity.src/M000078.html +1 -1
- data/doc/classes/Quantity/Quantity.src/M000079.html +1 -1
- data/doc/classes/Quantity/Quantity.src/M000080.html +1 -1
- data/doc/classes/Quantity/QuantityInfo.html +13 -13
- data/doc/classes/Quantity/QuantityInfo.src/M000081.html +1 -1
- data/doc/classes/Quantity/QuantityInfo.src/M000082.html +1 -1
- data/doc/classes/Quantity.html +5 -5
- data/doc/classes/QuantityTest.html +44 -29
- data/doc/classes/QuantityTest.src/M000048.html +18 -13
- data/doc/classes/QuantityTest.src/M000049.html +17 -4
- data/doc/classes/QuantityTest.src/M000050.html +12 -7
- data/doc/classes/QuantityTest.src/M000051.html +6 -6
- data/doc/classes/QuantityTest.src/M000052.html +22 -0
- data/doc/classes/QuantityTest.src/M000053.html +20 -0
- data/doc/classes/QuantityTest.src/M000054.html +27 -0
- data/doc/classes/SimpleUnitTest.html +29 -44
- data/doc/classes/SimpleUnitTest.src/M000062.html +9 -11
- data/doc/classes/SimpleUnitTest.src/M000063.html +12 -8
- data/doc/classes/SimpleUnitTest.src/M000064.html +7 -4
- data/doc/classes/SimpleUnitTest.src/M000065.html +20 -0
- data/doc/classes/SimpleUnitTest.src/M000066.html +26 -0
- data/doc/classes/SimpleUnitTest.src/M000067.html +21 -0
- data/doc/classes/SpecParserTest.html +17 -17
- data/doc/classes/SpecParserTest.src/M000021.html +10 -16
- data/doc/classes/SpecParserTest.src/M000022.html +28 -0
- data/doc/classes/SpecParserTest.src/M000023.html +31 -0
- data/doc/classes/Unit/BaseUnit.html +148 -0
- data/doc/classes/Unit/BaseUnit.src/M000108.html +18 -0
- data/doc/classes/Unit/Comparable.html +12 -12
- data/doc/classes/Unit/Comparable.src/M000092.html +1 -1
- data/doc/classes/Unit/Comparable.src/M000093.html +1 -1
- data/doc/classes/Unit/ComposedUnit.html +61 -55
- data/doc/classes/Unit/ComposedUnit.src/M000109.html +7 -10
- data/doc/classes/Unit/ComposedUnit.src/M000110.html +4 -8
- data/doc/classes/Unit/ComposedUnit.src/M000111.html +4 -15
- data/doc/classes/Unit/ComposedUnit.src/M000112.html +6 -10
- data/doc/classes/Unit/ComposedUnit.src/M000113.html +4 -11
- data/doc/classes/Unit/ComposedUnit.src/M000114.html +4 -4
- data/doc/classes/Unit/ComposedUnit.src/M000115.html +22 -0
- data/doc/classes/Unit/ComposedUnit.src/M000116.html +25 -0
- data/doc/classes/Unit/ComposedUnit.src/M000117.html +18 -0
- data/doc/classes/Unit/Optimizer.html +12 -12
- data/doc/classes/Unit/Optimizer.src/M000106.html +30 -4
- data/doc/classes/Unit/Optimizer.src/M000107.html +18 -0
- data/doc/classes/Unit/Parser.html +17 -17
- data/doc/classes/Unit/Parser.src/M000103.html +4 -11
- data/doc/classes/Unit/Parser.src/M000104.html +11 -5
- data/doc/classes/Unit/Parser.src/M000105.html +19 -0
- data/doc/classes/Unit/SimpleUnit.html +57 -51
- data/doc/classes/Unit/SimpleUnit.src/M000094.html +2 -2
- data/doc/classes/Unit/SimpleUnit.src/M000095.html +1 -1
- data/doc/classes/Unit/SimpleUnit.src/M000096.html +1 -1
- data/doc/classes/Unit/SimpleUnit.src/M000097.html +4 -6
- data/doc/classes/Unit/SimpleUnit.src/M000098.html +4 -4
- data/doc/classes/Unit/SimpleUnit.src/M000099.html +4 -7
- data/doc/classes/Unit/SimpleUnit.src/M000100.html +7 -4
- data/doc/classes/Unit/SimpleUnit.src/M000101.html +18 -0
- data/doc/classes/Unit/SymbolConverter.html +7 -7
- data/doc/classes/Unit/SymbolConverter.src/M000091.html +1 -1
- data/doc/classes/Unit/TestCase.html +5 -11
- data/doc/classes/Unit/TestCase.src/M000102.html +24 -0
- data/doc/classes/Unit.html +6 -4
- data/doc/classes/UnitOptemizerTest.html +45 -42
- data/doc/classes/UnitOptemizerTest.src/M000013.html +16 -12
- data/doc/classes/UnitOptemizerTest.src/M000014.html +6 -8
- data/doc/classes/UnitOptemizerTest.src/M000015.html +9 -9
- data/doc/classes/UnitOptemizerTest.src/M000016.html +6 -5
- data/doc/classes/UnitOptemizerTest.src/M000017.html +9 -5
- data/doc/classes/UnitOptemizerTest.src/M000018.html +12 -8
- data/doc/classes/UnitOptemizerTest.src/M000019.html +23 -0
- data/doc/classes/UnitOptemizerTest.src/M000020.html +22 -0
- data/doc/created.rid +1 -1
- data/doc/files/lib/config/default_configuration_rb.html +108 -0
- data/doc/files/lib/quantity_rb.html +113 -0
- data/doc/files/lib/unitmanager/calculator_rb.html +101 -0
- data/doc/files/lib/unitmanager/configuration_rb.html +101 -0
- data/doc/files/lib/unitmanager/quantity_rb.html +101 -0
- data/doc/files/lib/unitmanager/simple_unit_rb.html +109 -0
- data/doc/files/lib/unitmanager/unit_composition_rb.html +101 -0
- data/doc/files/test/all_tests_rb.html +1 -8
- data/doc/files/test/calculator_test_rb.html +109 -0
- data/doc/files/test/composed_unit_test_rb.html +101 -0
- data/doc/files/test/configuration_test_rb.html +109 -0
- data/doc/files/test/custom_conversion_test_rb.html +109 -0
- data/doc/files/test/quantifiable_test_rb.html +101 -0
- data/doc/files/test/quantity_test_rb.html +101 -0
- data/doc/files/test/simple_unit_test_rb.html +101 -0
- data/doc/files/test/test_helper_rb.html +1 -2
- data/doc/files/test/unit_optimizer_test_rb.html +101 -0
- data/doc/files/test/unit_spec_parser_test_rb.html +101 -0
- data/doc/fr_class_index.html +13 -1
- data/doc/fr_file_index.html +18 -7
- data/doc/fr_method_index.html +117 -51
- data/doc/index.html +1 -1
- data/lib/unitmanager/calculator.rb +4 -5
- data/lib/unitmanager/quantity.rb +30 -39
- data/lib/unitmanager/simple_unit.rb +5 -5
- data/test/quantity_test.rb +13 -0
- metadata +69 -3
@@ -5,25 +5,14 @@
|
|
5
5
|
|
6
6
|
<html>
|
7
7
|
<head>
|
8
|
-
<title>
|
8
|
+
<title>from_base (Unit::ComposedUnit)</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 unitmanager/unit_composition.rb, line
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-
|
15
|
-
<span class="ruby-
|
16
|
-
<span class="ruby-identifier">:dividends</span> =<span class="ruby-operator">></span>
|
17
|
-
<span class="ruby-identifier">collect</span>(<span class="ruby-ivar">@dividends</span>){<span class="ruby-operator">|</span><span class="ruby-identifier">unit</span><span class="ruby-operator">|</span> <span class="ruby-identifier">unit</span>[<span class="ruby-identifier">:dividends</span>]} <span class="ruby-operator">+</span>
|
18
|
-
<span class="ruby-identifier">collect</span>(<span class="ruby-ivar">@divisors</span>){<span class="ruby-operator">|</span><span class="ruby-identifier">unit</span><span class="ruby-operator">|</span> <span class="ruby-identifier">unit</span>[<span class="ruby-identifier">:divisors</span>]},
|
19
|
-
<span class="ruby-identifier">:divisors</span> =<span class="ruby-operator">></span>
|
20
|
-
<span class="ruby-identifier">collect</span>(<span class="ruby-ivar">@divisors</span>){<span class="ruby-operator">|</span><span class="ruby-identifier">unit</span><span class="ruby-operator">|</span> <span class="ruby-identifier">unit</span>[<span class="ruby-identifier">:dividends</span>]} <span class="ruby-operator">+</span>
|
21
|
-
<span class="ruby-identifier">collect</span>(<span class="ruby-ivar">@dividends</span>){<span class="ruby-operator">|</span><span class="ruby-identifier">unit</span><span class="ruby-operator">|</span> <span class="ruby-identifier">unit</span>[<span class="ruby-identifier">:divisors</span>]},
|
22
|
-
<span class="ruby-identifier">:string</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">unit_string</span>
|
23
|
-
|
24
|
-
} <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@unit_sym</span>
|
25
|
-
|
26
|
-
<span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@unit_sym</span>[<span class="ruby-identifier">symbol</span>]
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/unitmanager/unit_composition.rb, line 40</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">from_base</span>(<span class="ruby-identifier">value</span>)
|
15
|
+
<span class="ruby-identifier">value</span> <span class="ruby-operator">*</span> <span class="ruby-identifier">from_base_coef</span>
|
27
16
|
<span class="ruby-keyword kw">end</span></pre>
|
28
17
|
</body>
|
29
18
|
</html>
|
@@ -5,20 +5,16 @@
|
|
5
5
|
|
6
6
|
<html>
|
7
7
|
<head>
|
8
|
-
<title>
|
8
|
+
<title>h_base (Unit::ComposedUnit)</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 unitmanager/unit_composition.rb, line
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">
|
15
|
-
<span class="ruby-
|
16
|
-
|
17
|
-
|
18
|
-
<span class="ruby-identifier">:divisors</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@dividends</span>.<span class="ruby-identifier">collect</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">unit</span><span class="ruby-operator">|</span> <span class="ruby-identifier">unit</span> }
|
19
|
-
}) <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@reverse</span>
|
20
|
-
|
21
|
-
<span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@reverse</span>
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/unitmanager/unit_composition.rb, line 46</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">h_base</span>
|
15
|
+
<span class="ruby-constant">ComposedUnit</span>.<span class="ruby-identifier">new</span>({ <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">></span> <span class="ruby-value">1.0</span>,
|
16
|
+
<span class="ruby-identifier">:dividends</span> =<span class="ruby-operator">></span> <span class="ruby-constant">Optimizer</span>.<span class="ruby-identifier">base</span>(<span class="ruby-ivar">@dividends</span>),
|
17
|
+
<span class="ruby-identifier">:divisors</span> =<span class="ruby-operator">></span> <span class="ruby-constant">Optimizer</span>.<span class="ruby-identifier">base</span>(<span class="ruby-ivar">@divisors</span>) })
|
22
18
|
<span class="ruby-keyword kw">end</span></pre>
|
23
19
|
</body>
|
24
20
|
</html>
|
@@ -5,21 +5,14 @@
|
|
5
5
|
|
6
6
|
<html>
|
7
7
|
<head>
|
8
|
-
<title
|
8
|
+
<title>dividend (Unit::ComposedUnit)</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 unitmanager/unit_composition.rb, line
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-
|
15
|
-
<span class="ruby-
|
16
|
-
<span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">class</span>)
|
17
|
-
|
18
|
-
<span class="ruby-identifier">result</span> = (<span class="ruby-identifier">coefficient</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">coefficient</span>) <span class="ruby-operator">&&</span>
|
19
|
-
<span class="ruby-identifier">dividends</span>.<span class="ruby-identifier">same?</span>(<span class="ruby-identifier">other</span>.<span class="ruby-identifier">dividends</span>) <span class="ruby-operator">&&</span>
|
20
|
-
<span class="ruby-identifier">divisors</span>.<span class="ruby-identifier">same?</span>(<span class="ruby-identifier">other</span>.<span class="ruby-identifier">divisors</span>)
|
21
|
-
|
22
|
-
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">result</span>
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/unitmanager/unit_composition.rb, line 52</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">dividend</span>
|
15
|
+
<span class="ruby-constant">ComposedUnit</span>.<span class="ruby-identifier">new</span>({<span class="ruby-identifier">:dividends</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@dividends</span>})
|
23
16
|
<span class="ruby-keyword kw">end</span></pre>
|
24
17
|
</body>
|
25
18
|
</html>
|
@@ -5,14 +5,14 @@
|
|
5
5
|
|
6
6
|
<html>
|
7
7
|
<head>
|
8
|
-
<title>
|
8
|
+
<title>divisor (Unit::ComposedUnit)</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 unitmanager/unit_composition.rb, line
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">
|
15
|
-
<span class="ruby-
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/unitmanager/unit_composition.rb, line 56</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">divisor</span>
|
15
|
+
<span class="ruby-constant">ComposedUnit</span>.<span class="ruby-identifier">new</span>({<span class="ruby-identifier">:divisors</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@divisors</span>})
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
17
17
|
</body>
|
18
18
|
</html>
|
@@ -0,0 +1,22 @@
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2
|
+
<!DOCTYPE html
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
|
6
|
+
<html>
|
7
|
+
<head>
|
8
|
+
<title>reverse (Unit::ComposedUnit)</title>
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
10
|
+
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
11
|
+
</head>
|
12
|
+
<body class="standalone-code">
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/unitmanager/unit_composition.rb, line 60</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">reverse</span>
|
15
|
+
<span class="ruby-constant">ComposedUnit</span>.<span class="ruby-identifier">new</span>({
|
16
|
+
<span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">></span> <span class="ruby-value">1.0</span> <span class="ruby-operator">/</span> <span class="ruby-identifier">coefficient</span>,
|
17
|
+
<span class="ruby-identifier">:dividends</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@divisors</span>.<span class="ruby-identifier">collect</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">unit</span><span class="ruby-operator">|</span> <span class="ruby-identifier">unit</span> },
|
18
|
+
<span class="ruby-identifier">:divisors</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@dividends</span>.<span class="ruby-identifier">collect</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">unit</span><span class="ruby-operator">|</span> <span class="ruby-identifier">unit</span> }
|
19
|
+
})
|
20
|
+
<span class="ruby-keyword kw">end</span></pre>
|
21
|
+
</body>
|
22
|
+
</html>
|
@@ -0,0 +1,25 @@
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2
|
+
<!DOCTYPE html
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
|
6
|
+
<html>
|
7
|
+
<head>
|
8
|
+
<title>== (Unit::ComposedUnit)</title>
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
10
|
+
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
11
|
+
</head>
|
12
|
+
<body class="standalone-code">
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/unitmanager/unit_composition.rb, line 70</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-operator">==</span>(<span class="ruby-identifier">other</span>)
|
15
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">other</span> <span class="ruby-operator">==</span> <span class="ruby-keyword kw">nil</span>
|
16
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">class</span>)
|
17
|
+
|
18
|
+
<span class="ruby-identifier">result</span> = (<span class="ruby-identifier">coefficient</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">coefficient</span>) <span class="ruby-operator">&&</span>
|
19
|
+
<span class="ruby-identifier">dividends</span>.<span class="ruby-identifier">same?</span>(<span class="ruby-identifier">other</span>.<span class="ruby-identifier">dividends</span>) <span class="ruby-operator">&&</span>
|
20
|
+
<span class="ruby-identifier">divisors</span>.<span class="ruby-identifier">same?</span>(<span class="ruby-identifier">other</span>.<span class="ruby-identifier">divisors</span>)
|
21
|
+
|
22
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">result</span>
|
23
|
+
<span class="ruby-keyword kw">end</span></pre>
|
24
|
+
</body>
|
25
|
+
</html>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2
|
+
<!DOCTYPE html
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
|
6
|
+
<html>
|
7
|
+
<head>
|
8
|
+
<title>eql? (Unit::ComposedUnit)</title>
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
10
|
+
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
11
|
+
</head>
|
12
|
+
<body class="standalone-code">
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/unitmanager/unit_composition.rb, line 81</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">eql?</span>(<span class="ruby-identifier">other</span>)
|
15
|
+
<span class="ruby-keyword kw">self</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>
|
16
|
+
<span class="ruby-keyword kw">end</span></pre>
|
17
|
+
</body>
|
18
|
+
</html>
|
@@ -55,8 +55,8 @@
|
|
55
55
|
<tr class="top-aligned-row">
|
56
56
|
<td><strong>In:</strong></td>
|
57
57
|
<td>
|
58
|
-
<a href="../../files/unitmanager/unit_composition_rb.html">
|
59
|
-
unitmanager/unit_composition.rb
|
58
|
+
<a href="../../files/lib/unitmanager/unit_composition_rb.html">
|
59
|
+
lib/unitmanager/unit_composition.rb
|
60
60
|
</a>
|
61
61
|
<br />
|
62
62
|
</td>
|
@@ -86,8 +86,8 @@
|
|
86
86
|
<h3 class="section-bar">Methods</h3>
|
87
87
|
|
88
88
|
<div class="name-list">
|
89
|
-
<a href="#
|
90
|
-
<a href="#
|
89
|
+
<a href="#M000107">base</a>
|
90
|
+
<a href="#M000106">process</a>
|
91
91
|
</div>
|
92
92
|
</div>
|
93
93
|
|
@@ -109,12 +109,12 @@
|
|
109
109
|
<div id="methods">
|
110
110
|
<h3 class="section-bar">Public Class methods</h3>
|
111
111
|
|
112
|
-
<div id="method-
|
113
|
-
<a name="
|
112
|
+
<div id="method-M000107" class="method-detail">
|
113
|
+
<a name="M000107"></a>
|
114
114
|
|
115
115
|
<div class="method-heading">
|
116
|
-
<a href="Optimizer.src/
|
117
|
-
onclick="popupCode('Optimizer.src/
|
116
|
+
<a href="Optimizer.src/M000107.html" target="Code" class="method-signature"
|
117
|
+
onclick="popupCode('Optimizer.src/M000107.html');return false;">
|
118
118
|
<span class="method-name">base</span><span class="method-args">(units)</span>
|
119
119
|
</a>
|
120
120
|
</div>
|
@@ -123,12 +123,12 @@
|
|
123
123
|
</div>
|
124
124
|
</div>
|
125
125
|
|
126
|
-
<div id="method-
|
127
|
-
<a name="
|
126
|
+
<div id="method-M000106" class="method-detail">
|
127
|
+
<a name="M000106"></a>
|
128
128
|
|
129
129
|
<div class="method-heading">
|
130
|
-
<a href="Optimizer.src/
|
131
|
-
onclick="popupCode('Optimizer.src/
|
130
|
+
<a href="Optimizer.src/M000106.html" target="Code" class="method-signature"
|
131
|
+
onclick="popupCode('Optimizer.src/M000106.html');return false;">
|
132
132
|
<span class="method-name">process</span><span class="method-args">(params)</span>
|
133
133
|
</a>
|
134
134
|
</div>
|
@@ -5,14 +5,40 @@
|
|
5
5
|
|
6
6
|
<html>
|
7
7
|
<head>
|
8
|
-
<title>
|
8
|
+
<title>process (Unit::Optimizer)</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 unitmanager/unit_composition.rb, line
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-constant">Optimizer</span>.<span class="ruby-identifier">
|
15
|
-
<span class="ruby-identifier">
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/unitmanager/unit_composition.rb, line 181</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-constant">Optimizer</span>.<span class="ruby-identifier">process</span>(<span class="ruby-identifier">params</span>)
|
15
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"Incoming parameter has to respond to [] method"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">params</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">:[]</span>)
|
16
|
+
|
17
|
+
<span class="ruby-comment cmt">#initialize local values</span>
|
18
|
+
<span class="ruby-identifier">coefficient</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:coefficient</span>] <span class="ruby-operator">||</span> <span class="ruby-value">1</span>
|
19
|
+
<span class="ruby-identifier">dividends</span> = [] <span class="ruby-operator">+</span> (<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:dividends</span>] <span class="ruby-operator">||</span> [])
|
20
|
+
<span class="ruby-identifier">divisors</span> = [] <span class="ruby-operator">+</span> (<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:divisors</span>] <span class="ruby-operator">||</span> [])
|
21
|
+
|
22
|
+
<span class="ruby-comment cmt">#create arrays of unit hierarchy bases.. </span>
|
23
|
+
<span class="ruby-identifier">base_dividends</span> = <span class="ruby-identifier">base</span>(<span class="ruby-identifier">dividends</span>)
|
24
|
+
<span class="ruby-identifier">base_divisors</span> = <span class="ruby-identifier">base</span>(<span class="ruby-identifier">divisors</span>)
|
25
|
+
|
26
|
+
<span class="ruby-comment cmt">#try to find matching units and optimize them</span>
|
27
|
+
<span class="ruby-identifier">base_dividends</span>.<span class="ruby-identifier">each_index</span> { <span class="ruby-operator">|</span> <span class="ruby-identifier">i</span> <span class="ruby-operator">|</span>
|
28
|
+
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">index</span> = <span class="ruby-identifier">base_divisors</span>.<span class="ruby-identifier">index</span>(<span class="ruby-identifier">base_dividends</span>[<span class="ruby-identifier">i</span>])
|
29
|
+
<span class="ruby-identifier">coefficient</span> <span class="ruby-operator">*=</span> <span class="ruby-identifier">dividends</span>[<span class="ruby-identifier">i</span>].<span class="ruby-identifier">to_base</span>(<span class="ruby-value">1.0</span>)
|
30
|
+
<span class="ruby-identifier">coefficient</span> <span class="ruby-operator">/=</span> <span class="ruby-identifier">divisors</span>[<span class="ruby-identifier">index</span>].<span class="ruby-identifier">to_base</span>(<span class="ruby-value">1.0</span>)
|
31
|
+
|
32
|
+
<span class="ruby-comment cmt">#set 'used' units to nil, so they won't be used again </span>
|
33
|
+
<span class="ruby-identifier">dividends</span>[<span class="ruby-identifier">i</span>] = <span class="ruby-identifier">divisors</span>[<span class="ruby-identifier">index</span>] = <span class="ruby-identifier">base_divisors</span>[<span class="ruby-identifier">index</span>] = <span class="ruby-keyword kw">nil</span>
|
34
|
+
<span class="ruby-keyword kw">end</span>
|
35
|
+
}
|
36
|
+
|
37
|
+
<span class="ruby-keyword kw">return</span> {
|
38
|
+
<span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">coefficient</span>,
|
39
|
+
<span class="ruby-identifier">:dividends</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">dividends</span>.<span class="ruby-identifier">compact</span>,
|
40
|
+
<span class="ruby-identifier">:divisors</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">divisors</span>.<span class="ruby-identifier">compact</span>
|
41
|
+
}
|
16
42
|
<span class="ruby-keyword kw">end</span></pre>
|
17
43
|
</body>
|
18
44
|
</html>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2
|
+
<!DOCTYPE html
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
|
6
|
+
<html>
|
7
|
+
<head>
|
8
|
+
<title>base (Unit::Optimizer)</title>
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
10
|
+
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
11
|
+
</head>
|
12
|
+
<body class="standalone-code">
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/unitmanager/unit_composition.rb, line 211</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-constant">Optimizer</span>.<span class="ruby-identifier">base</span>(<span class="ruby-identifier">units</span>)
|
15
|
+
<span class="ruby-identifier">units</span>.<span class="ruby-identifier">collect</span> {<span class="ruby-operator">|</span> <span class="ruby-identifier">item</span> <span class="ruby-operator">|</span> <span class="ruby-identifier">item</span>.<span class="ruby-identifier">h_base</span>}
|
16
|
+
<span class="ruby-keyword kw">end</span></pre>
|
17
|
+
</body>
|
18
|
+
</html>
|
@@ -55,8 +55,8 @@
|
|
55
55
|
<tr class="top-aligned-row">
|
56
56
|
<td><strong>In:</strong></td>
|
57
57
|
<td>
|
58
|
-
<a href="../../files/unitmanager/unit_composition_rb.html">
|
59
|
-
unitmanager/unit_composition.rb
|
58
|
+
<a href="../../files/lib/unitmanager/unit_composition_rb.html">
|
59
|
+
lib/unitmanager/unit_composition.rb
|
60
60
|
</a>
|
61
61
|
<br />
|
62
62
|
</td>
|
@@ -86,9 +86,9 @@
|
|
86
86
|
<h3 class="section-bar">Methods</h3>
|
87
87
|
|
88
88
|
<div class="name-list">
|
89
|
-
<a href="#
|
90
|
-
<a href="#
|
91
|
-
<a href="#
|
89
|
+
<a href="#M000103">new</a>
|
90
|
+
<a href="#M000105">parse_operand_symbols</a>
|
91
|
+
<a href="#M000104">to_units</a>
|
92
92
|
</div>
|
93
93
|
</div>
|
94
94
|
|
@@ -117,12 +117,12 @@
|
|
117
117
|
<div id="methods">
|
118
118
|
<h3 class="section-bar">Public Class methods</h3>
|
119
119
|
|
120
|
-
<div id="method-
|
121
|
-
<a name="
|
120
|
+
<div id="method-M000103" class="method-detail">
|
121
|
+
<a name="M000103"></a>
|
122
122
|
|
123
123
|
<div class="method-heading">
|
124
|
-
<a href="Parser.src/
|
125
|
-
onclick="popupCode('Parser.src/
|
124
|
+
<a href="Parser.src/M000103.html" target="Code" class="method-signature"
|
125
|
+
onclick="popupCode('Parser.src/M000103.html');return false;">
|
126
126
|
<span class="method-name">new</span><span class="method-args">(units)</span>
|
127
127
|
</a>
|
128
128
|
</div>
|
@@ -133,12 +133,12 @@
|
|
133
133
|
|
134
134
|
<h3 class="section-bar">Public Instance methods</h3>
|
135
135
|
|
136
|
-
<div id="method-
|
137
|
-
<a name="
|
136
|
+
<div id="method-M000105" class="method-detail">
|
137
|
+
<a name="M000105"></a>
|
138
138
|
|
139
139
|
<div class="method-heading">
|
140
|
-
<a href="Parser.src/
|
141
|
-
onclick="popupCode('Parser.src/
|
140
|
+
<a href="Parser.src/M000105.html" target="Code" class="method-signature"
|
141
|
+
onclick="popupCode('Parser.src/M000105.html');return false;">
|
142
142
|
<span class="method-name">parse_operand_symbols</span><span class="method-args">(string)</span>
|
143
143
|
</a>
|
144
144
|
</div>
|
@@ -147,12 +147,12 @@
|
|
147
147
|
</div>
|
148
148
|
</div>
|
149
149
|
|
150
|
-
<div id="method-
|
151
|
-
<a name="
|
150
|
+
<div id="method-M000104" class="method-detail">
|
151
|
+
<a name="M000104"></a>
|
152
152
|
|
153
153
|
<div class="method-heading">
|
154
|
-
<a href="Parser.src/
|
155
|
-
onclick="popupCode('Parser.src/
|
154
|
+
<a href="Parser.src/M000104.html" target="Code" class="method-signature"
|
155
|
+
onclick="popupCode('Parser.src/M000104.html');return false;">
|
156
156
|
<span class="method-name">to_units</span><span class="method-args">(unit_spec)</span>
|
157
157
|
</a>
|
158
158
|
</div>
|
@@ -5,21 +5,14 @@
|
|
5
5
|
|
6
6
|
<html>
|
7
7
|
<head>
|
8
|
-
<title>
|
8
|
+
<title>new (Unit::Parser)</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 unitmanager/unit_composition.rb, line
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">
|
15
|
-
|
16
|
-
<span class="ruby-identifier">operands</span> = <span class="ruby-identifier">unit_spec</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/\//</span>)
|
17
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-node">"Invalid Number of Operands in : #{unit_spec}"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">operands</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">2</span>
|
18
|
-
|
19
|
-
{
|
20
|
-
<span class="ruby-identifier">:dividends</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">convert</span>(<span class="ruby-identifier">parse_operand_symbols</span>(<span class="ruby-identifier">operands</span>[<span class="ruby-value">0</span>])),
|
21
|
-
<span class="ruby-identifier">:divisors</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">convert</span>(<span class="ruby-identifier">parse_operand_symbols</span>(<span class="ruby-identifier">operands</span>[<span class="ruby-value">1</span>]))
|
22
|
-
}
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/unitmanager/unit_composition.rb, line 156</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">units</span>)
|
15
|
+
<span class="ruby-ivar">@units</span> = <span class="ruby-identifier">units</span>
|
23
16
|
<span class="ruby-keyword kw">end</span></pre>
|
24
17
|
</body>
|
25
18
|
</html>
|
@@ -5,15 +5,21 @@
|
|
5
5
|
|
6
6
|
<html>
|
7
7
|
<head>
|
8
|
-
<title>
|
8
|
+
<title>to_units (Unit::Parser)</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 unitmanager/unit_composition.rb, line
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">
|
15
|
-
|
16
|
-
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/unitmanager/unit_composition.rb, line 160</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_units</span>(<span class="ruby-identifier">unit_spec</span>)
|
15
|
+
|
16
|
+
<span class="ruby-identifier">operands</span> = <span class="ruby-identifier">unit_spec</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/\//</span>)
|
17
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-node">"Invalid Number of Operands in : #{unit_spec}"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">operands</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">2</span>
|
18
|
+
|
19
|
+
{
|
20
|
+
<span class="ruby-identifier">:dividends</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">convert</span>(<span class="ruby-identifier">parse_operand_symbols</span>(<span class="ruby-identifier">operands</span>[<span class="ruby-value">0</span>])),
|
21
|
+
<span class="ruby-identifier">:divisors</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">convert</span>(<span class="ruby-identifier">parse_operand_symbols</span>(<span class="ruby-identifier">operands</span>[<span class="ruby-value">1</span>]))
|
22
|
+
}
|
17
23
|
<span class="ruby-keyword kw">end</span></pre>
|
18
24
|
</body>
|
19
25
|
</html>
|
@@ -0,0 +1,19 @@
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2
|
+
<!DOCTYPE html
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
|
6
|
+
<html>
|
7
|
+
<head>
|
8
|
+
<title>parse_operand_symbols (Unit::Parser)</title>
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
10
|
+
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
11
|
+
</head>
|
12
|
+
<body class="standalone-code">
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/unitmanager/unit_composition.rb, line 171</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">parse_operand_symbols</span>(<span class="ruby-identifier">string</span>)
|
15
|
+
<span class="ruby-identifier">operands</span> = <span class="ruby-identifier">string</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-value">? </span>[] <span class="ruby-operator">:</span> <span class="ruby-identifier">string</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/\*/</span>)
|
16
|
+
<span class="ruby-identifier">operands</span>.<span class="ruby-identifier">collect</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span> <span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_sym</span>}
|
17
|
+
<span class="ruby-keyword kw">end</span></pre>
|
18
|
+
</body>
|
19
|
+
</html>
|