como 0.2.1 → 0.2.2

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/doc/Como/Spec.html CHANGED
@@ -148,6 +148,21 @@
148
148
  </span> <span class='symbol'>:hidden</span>
149
149
  <span class='rbracket'>]</span></pre></dd>
150
150
 
151
+ <dt id="MAP_TYPE_PRIMS-constant" class="">MAP_TYPE_PRIMS =
152
+
153
+ </dt>
154
+ <dd><pre class="code"><span class='lbrace'>{</span>
155
+ <span class='symbol'>:switch</span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span> <span class='symbol'>:none</span><span class='comma'>,</span> <span class='symbol'>:opt</span> <span class='rbracket'>]</span><span class='comma'>,</span>
156
+ <span class='symbol'>:single</span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span> <span class='symbol'>:one</span> <span class='rbracket'>]</span><span class='comma'>,</span>
157
+ <span class='symbol'>:multi</span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span> <span class='symbol'>:one</span><span class='comma'>,</span> <span class='symbol'>:many</span> <span class='rbracket'>]</span><span class='comma'>,</span>
158
+ <span class='symbol'>:opt_single</span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span> <span class='symbol'>:one</span><span class='comma'>,</span> <span class='symbol'>:opt</span> <span class='rbracket'>]</span><span class='comma'>,</span>
159
+ <span class='symbol'>:opt_multi</span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span> <span class='symbol'>:one</span><span class='comma'>,</span> <span class='symbol'>:many</span><span class='comma'>,</span> <span class='symbol'>:opt</span> <span class='rbracket'>]</span><span class='comma'>,</span>
160
+ <span class='symbol'>:opt_any</span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span> <span class='symbol'>:none</span><span class='comma'>,</span> <span class='symbol'>:one</span><span class='comma'>,</span> <span class='symbol'>:many</span><span class='comma'>,</span> <span class='symbol'>:opt</span> <span class='rbracket'>]</span><span class='comma'>,</span>
161
+ <span class='symbol'>:default</span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span> <span class='symbol'>:none</span><span class='comma'>,</span> <span class='symbol'>:one</span><span class='comma'>,</span> <span class='symbol'>:many</span><span class='comma'>,</span> <span class='symbol'>:opt</span><span class='comma'>,</span> <span class='symbol'>:default</span> <span class='rbracket'>]</span><span class='comma'>,</span>
162
+ <span class='symbol'>:exclusive</span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span> <span class='symbol'>:none</span><span class='comma'>,</span> <span class='symbol'>:one</span><span class='comma'>,</span> <span class='symbol'>:many</span><span class='comma'>,</span> <span class='symbol'>:opt</span><span class='comma'>,</span> <span class='symbol'>:mutex</span> <span class='rbracket'>]</span><span class='comma'>,</span>
163
+ <span class='symbol'>:silent</span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span> <span class='symbol'>:none</span><span class='comma'>,</span> <span class='symbol'>:opt</span><span class='comma'>,</span> <span class='symbol'>:hidden</span> <span class='rbracket'>]</span><span class='comma'>,</span>
164
+ <span class='rbrace'>}</span></pre></dd>
165
+
151
166
  <dt id="argv-classvariable" class="">@@argv =
152
167
  <div class="docstring">
153
168
  <div class="discussion">
@@ -787,10 +802,10 @@
787
802
  <pre class="lines">
788
803
 
789
804
 
790
- 886</pre>
805
+ 891</pre>
791
806
  </td>
792
807
  <td>
793
- <pre class="code"><span class="info file"># File 'lib/como.rb', line 886</span>
808
+ <pre class="code"><span class="info file"># File 'lib/como.rb', line 891</span>
794
809
 
795
810
  <span class='kw'>def</span> <span class='const'>Spec</span><span class='period'>.</span><span class='id identifier rubyid_check'>check</span><span class='lparen'>(</span> <span class='id identifier rubyid_opt'>opt</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_rule'>rule</span> <span class='rparen'>)</span> <span class='const'>Spec</span><span class='period'>.</span><span class='id identifier rubyid_checkRule'>checkRule</span><span class='lparen'>(</span> <span class='id identifier rubyid_opt'>opt</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_rule'>rule</span> <span class='rparen'>)</span> <span class='kw'>end</span></pre>
796
811
  </td>
@@ -894,12 +909,12 @@
894
909
  <pre class="lines">
895
910
 
896
911
 
897
- 913
898
- 914
899
- 915</pre>
912
+ 918
913
+ 919
914
+ 920</pre>
900
915
  </td>
901
916
  <td>
902
- <pre class="code"><span class="info file"># File 'lib/como.rb', line 913</span>
917
+ <pre class="code"><span class="info file"># File 'lib/como.rb', line 918</span>
903
918
 
904
919
  <span class='kw'>def</span> <span class='const'>Spec</span><span class='period'>.</span><span class='id identifier rubyid_checkAlso'>checkAlso</span><span class='lparen'>(</span> <span class='id identifier rubyid_opt'>opt</span><span class='comma'>,</span> <span class='id identifier rubyid_error'>error</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_check'>check</span> <span class='rparen'>)</span>
905
920
  <span class='const'>Opt</span><span class='period'>.</span><span class='id identifier rubyid_main'>main</span><span class='period'>.</span><span class='id identifier rubyid_checkAlso'>checkAlso</span><span class='lparen'>(</span> <span class='id identifier rubyid_opt'>opt</span><span class='comma'>,</span> <span class='id identifier rubyid_error'>error</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_check'>check</span> <span class='rparen'>)</span>
@@ -973,18 +988,18 @@
973
988
  <pre class="lines">
974
989
 
975
990
 
976
- 874
977
- 875
978
- 876
979
- 877
980
- 878
981
991
  879
982
992
  880
983
993
  881
984
- 882</pre>
994
+ 882
995
+ 883
996
+ 884
997
+ 885
998
+ 886
999
+ 887</pre>
985
1000
  </td>
986
1001
  <td>
987
- <pre class="code"><span class="info file"># File 'lib/como.rb', line 874</span>
1002
+ <pre class="code"><span class="info file"># File 'lib/como.rb', line 879</span>
988
1003
 
989
1004
  <span class='kw'>def</span> <span class='const'>Spec</span><span class='period'>.</span><span class='id identifier rubyid_checkRule'>checkRule</span><span class='lparen'>(</span> <span class='id identifier rubyid_opt'>opt</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_rule'>rule</span> <span class='rparen'>)</span>
990
1005
  <span class='kw'>if</span> <span class='id identifier rubyid_opt'>opt</span>
@@ -1522,20 +1537,6 @@ the command line. Performs “usage” display if “help” was selected.</p>
1522
1537
  <pre class="lines">
1523
1538
 
1524
1539
 
1525
- 806
1526
- 807
1527
- 808
1528
- 809
1529
- 810
1530
- 811
1531
- 812
1532
- 813
1533
- 814
1534
- 815
1535
- 816
1536
- 817
1537
- 818
1538
- 819
1539
1540
  820
1540
1541
  821
1541
1542
  822
@@ -1558,27 +1559,23 @@ the command line. Performs “usage” display if “help” was selected.</p>
1558
1559
  839
1559
1560
  840
1560
1561
  841
1561
- 842</pre>
1562
+ 842
1563
+ 843
1564
+ 844
1565
+ 845
1566
+ 846
1567
+ 847</pre>
1562
1568
  </td>
1563
1569
  <td>
1564
- <pre class="code"><span class="info file"># File 'lib/como.rb', line 806</span>
1570
+ <pre class="code"><span class="info file"># File 'lib/como.rb', line 820</span>
1565
1571
 
1566
1572
  <span class='kw'>def</span> <span class='const'>Spec</span><span class='period'>.</span><span class='id identifier rubyid_mapTypeToPrims'>mapTypeToPrims</span><span class='lparen'>(</span> <span class='id identifier rubyid_type'>type</span> <span class='rparen'>)</span>
1567
1573
 
1568
1574
  <span class='id identifier rubyid_prims'>prims</span> <span class='op'>=</span> <span class='kw'>nil</span>
1569
1575
 
1570
1576
  <span class='kw'>if</span> <span class='id identifier rubyid_type'>type</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span> <span class='const'>Symbol</span>
1571
- <span class='kw'>case</span> <span class='id identifier rubyid_type'>type</span>
1572
- <span class='kw'>when</span> <span class='symbol'>:switch</span><span class='semicolon'>;</span> <span class='id identifier rubyid_prims'>prims</span> <span class='op'>=</span> <span class='lbracket'>[</span> <span class='symbol'>:none</span><span class='comma'>,</span> <span class='symbol'>:opt</span> <span class='rbracket'>]</span>
1573
- <span class='kw'>when</span> <span class='symbol'>:single</span><span class='semicolon'>;</span> <span class='id identifier rubyid_prims'>prims</span> <span class='op'>=</span> <span class='lbracket'>[</span> <span class='symbol'>:one</span> <span class='rbracket'>]</span>
1574
- <span class='kw'>when</span> <span class='symbol'>:multi</span><span class='semicolon'>;</span> <span class='id identifier rubyid_prims'>prims</span> <span class='op'>=</span> <span class='lbracket'>[</span> <span class='symbol'>:one</span><span class='comma'>,</span> <span class='symbol'>:many</span> <span class='rbracket'>]</span>
1575
- <span class='kw'>when</span> <span class='symbol'>:opt_single</span><span class='semicolon'>;</span> <span class='id identifier rubyid_prims'>prims</span> <span class='op'>=</span> <span class='lbracket'>[</span> <span class='symbol'>:one</span><span class='comma'>,</span> <span class='symbol'>:opt</span> <span class='rbracket'>]</span>
1576
- <span class='kw'>when</span> <span class='symbol'>:opt_multi</span><span class='semicolon'>;</span> <span class='id identifier rubyid_prims'>prims</span> <span class='op'>=</span> <span class='lbracket'>[</span> <span class='symbol'>:one</span><span class='comma'>,</span> <span class='symbol'>:many</span><span class='comma'>,</span> <span class='symbol'>:opt</span> <span class='rbracket'>]</span>
1577
- <span class='kw'>when</span> <span class='symbol'>:opt_any</span><span class='semicolon'>;</span> <span class='id identifier rubyid_prims'>prims</span> <span class='op'>=</span> <span class='lbracket'>[</span> <span class='symbol'>:none</span><span class='comma'>,</span> <span class='symbol'>:one</span><span class='comma'>,</span> <span class='symbol'>:many</span><span class='comma'>,</span> <span class='symbol'>:opt</span> <span class='rbracket'>]</span>
1578
- <span class='kw'>when</span> <span class='symbol'>:default</span><span class='semicolon'>;</span> <span class='id identifier rubyid_prims'>prims</span> <span class='op'>=</span> <span class='lbracket'>[</span> <span class='symbol'>:none</span><span class='comma'>,</span> <span class='symbol'>:one</span><span class='comma'>,</span> <span class='symbol'>:many</span><span class='comma'>,</span> <span class='symbol'>:opt</span><span class='comma'>,</span> <span class='symbol'>:default</span> <span class='rbracket'>]</span>
1579
- <span class='kw'>when</span> <span class='symbol'>:exclusive</span><span class='semicolon'>;</span> <span class='id identifier rubyid_prims'>prims</span> <span class='op'>=</span> <span class='lbracket'>[</span> <span class='symbol'>:none</span><span class='comma'>,</span> <span class='symbol'>:one</span><span class='comma'>,</span> <span class='symbol'>:many</span><span class='comma'>,</span> <span class='symbol'>:opt</span><span class='comma'>,</span> <span class='symbol'>:mutex</span> <span class='rbracket'>]</span>
1580
- <span class='kw'>when</span> <span class='symbol'>:silent</span><span class='semicolon'>;</span> <span class='id identifier rubyid_prims'>prims</span> <span class='op'>=</span> <span class='lbracket'>[</span> <span class='symbol'>:none</span><span class='comma'>,</span> <span class='symbol'>:opt</span><span class='comma'>,</span> <span class='symbol'>:hidden</span> <span class='rbracket'>]</span>
1581
- <span class='kw'>else</span>
1577
+ <span class='id identifier rubyid_prims'>prims</span> <span class='op'>=</span> <span class='const'>MAP_TYPE_PRIMS</span><span class='lbracket'>[</span> <span class='id identifier rubyid_type'>type</span> <span class='rbracket'>]</span>
1578
+ <span class='kw'>unless</span> <span class='id identifier rubyid_prims'>prims</span>
1582
1579
  <span class='id identifier rubyid_raise'>raise</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Unknown option type: \&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot;...</span><span class='tstring_end'>&quot;</span></span>
1583
1580
  <span class='kw'>end</span>
1584
1581
 
@@ -1730,12 +1727,12 @@ the command line. Performs “usage” display if “help” was selected.</p>
1730
1727
  <pre class="lines">
1731
1728
 
1732
1729
 
1733
- 848
1734
- 849
1735
- 850</pre>
1730
+ 853
1731
+ 854
1732
+ 855</pre>
1736
1733
  </td>
1737
1734
  <td>
1738
- <pre class="code"><span class="info file"># File 'lib/como.rb', line 848</span>
1735
+ <pre class="code"><span class="info file"># File 'lib/como.rb', line 853</span>
1739
1736
 
1740
1737
  <span class='kw'>def</span> <span class='const'>Spec</span><span class='period'>.</span><span class='id identifier rubyid_setArgv'>setArgv</span><span class='lparen'>(</span> <span class='id identifier rubyid_newArgv'>newArgv</span> <span class='rparen'>)</span>
1741
1738
  <span class='cvar'>@@argv</span> <span class='op'>=</span> <span class='id identifier rubyid_newArgv'>newArgv</span>
@@ -1771,12 +1768,12 @@ the command line. Performs “usage” display if “help” was selected.</p>
1771
1768
  <pre class="lines">
1772
1769
 
1773
1770
 
1774
- 864
1775
- 865
1776
- 866</pre>
1771
+ 869
1772
+ 870
1773
+ 871</pre>
1777
1774
  </td>
1778
1775
  <td>
1779
- <pre class="code"><span class="info file"># File 'lib/como.rb', line 864</span>
1776
+ <pre class="code"><span class="info file"># File 'lib/como.rb', line 869</span>
1780
1777
 
1781
1778
  <span class='kw'>def</span> <span class='const'>Spec</span><span class='period'>.</span><span class='id identifier rubyid_setUsageFooter'>setUsageFooter</span><span class='lparen'>(</span> <span class='id identifier rubyid_str'>str</span> <span class='rparen'>)</span>
1782
1779
  <span class='const'>Opt</span><span class='period'>.</span><span class='id identifier rubyid_main'>main</span><span class='period'>.</span><span class='id identifier rubyid_setUsageFooter'>setUsageFooter</span><span class='lparen'>(</span> <span class='id identifier rubyid_str'>str</span> <span class='rparen'>)</span>
@@ -1812,12 +1809,12 @@ the command line. Performs “usage” display if “help” was selected.</p>
1812
1809
  <pre class="lines">
1813
1810
 
1814
1811
 
1815
- 858
1816
- 859
1817
- 860</pre>
1812
+ 863
1813
+ 864
1814
+ 865</pre>
1818
1815
  </td>
1819
1816
  <td>
1820
- <pre class="code"><span class="info file"># File 'lib/como.rb', line 858</span>
1817
+ <pre class="code"><span class="info file"># File 'lib/como.rb', line 863</span>
1821
1818
 
1822
1819
  <span class='kw'>def</span> <span class='const'>Spec</span><span class='period'>.</span><span class='id identifier rubyid_setUsageHeader'>setUsageHeader</span><span class='lparen'>(</span> <span class='id identifier rubyid_str'>str</span> <span class='rparen'>)</span>
1823
1820
  <span class='const'>Opt</span><span class='period'>.</span><span class='id identifier rubyid_main'>main</span><span class='period'>.</span><span class='id identifier rubyid_setUsageHeader'>setUsageHeader</span><span class='lparen'>(</span> <span class='id identifier rubyid_str'>str</span> <span class='rparen'>)</span>
@@ -1889,7 +1886,6 @@ the command line. Performs “usage” display if “help” was selected.</p>
1889
1886
  <pre class="lines">
1890
1887
 
1891
1888
 
1892
- 716
1893
1889
  717
1894
1890
  718
1895
1891
  719
@@ -1907,10 +1903,11 @@ the command line. Performs “usage” display if “help” was selected.</p>
1907
1903
  731
1908
1904
  732
1909
1905
  733
1910
- 734</pre>
1906
+ 734
1907
+ 735</pre>
1911
1908
  </td>
1912
1909
  <td>
1913
- <pre class="code"><span class="info file"># File 'lib/como.rb', line 716</span>
1910
+ <pre class="code"><span class="info file"># File 'lib/como.rb', line 717</span>
1914
1911
 
1915
1912
  <span class='kw'>def</span> <span class='const'>Spec</span><span class='period'>.</span><span class='id identifier rubyid_specify'>specify</span><span class='lparen'>(</span> <span class='id identifier rubyid_subcmd'>subcmd</span><span class='comma'>,</span> <span class='id identifier rubyid_table'>table</span> <span class='rparen'>)</span>
1916
1913
 
@@ -1982,7 +1979,6 @@ the command line. Performs “usage” display if “help” was selected.</p>
1982
1979
  <pre class="lines">
1983
1980
 
1984
1981
 
1985
- 742
1986
1982
  743
1987
1983
  744
1988
1984
  745
@@ -2022,10 +2018,11 @@ the command line. Performs “usage” display if “help” was selected.</p>
2022
2018
  779
2023
2019
  780
2024
2020
  781
2025
- 782</pre>
2021
+ 782
2022
+ 783</pre>
2026
2023
  </td>
2027
2024
  <td>
2028
- <pre class="code"><span class="info file"># File 'lib/como.rb', line 742</span>
2025
+ <pre class="code"><span class="info file"># File 'lib/como.rb', line 743</span>
2029
2026
 
2030
2027
  <span class='kw'>def</span> <span class='const'>Spec</span><span class='period'>.</span><span class='id identifier rubyid_specifyOptOrSub'>specifyOptOrSub</span><span class='lparen'>(</span> <span class='id identifier rubyid_opt_or_sub'>opt_or_sub</span> <span class='rparen'>)</span>
2031
2028
 
@@ -2099,12 +2096,12 @@ the command line. Performs “usage” display if “help” was selected.</p>
2099
2096
  <pre class="lines">
2100
2097
 
2101
2098
 
2102
- 853
2103
- 854
2104
- 855</pre>
2099
+ 858
2100
+ 859
2101
+ 860</pre>
2105
2102
  </td>
2106
2103
  <td>
2107
- <pre class="code"><span class="info file"># File 'lib/como.rb', line 853</span>
2104
+ <pre class="code"><span class="info file"># File 'lib/como.rb', line 858</span>
2108
2105
 
2109
2106
  <span class='kw'>def</span> <span class='const'>Spec</span><span class='period'>.</span><span class='id identifier rubyid_usage'>usage</span>
2110
2107
  <span class='const'>Opt</span><span class='period'>.</span><span class='id identifier rubyid_main'>main</span><span class='period'>.</span><span class='id identifier rubyid_usage'>usage</span>
@@ -2188,17 +2185,17 @@ the command line. Performs “usage” display if “help” was selected.</p>
2188
2185
  <pre class="lines">
2189
2186
 
2190
2187
 
2191
- 893
2192
- 894
2193
- 895
2194
- 896
2195
- 897
2196
2188
  898
2197
2189
  899
2198
- 900</pre>
2190
+ 900
2191
+ 901
2192
+ 902
2193
+ 903
2194
+ 904
2195
+ 905</pre>
2199
2196
  </td>
2200
2197
  <td>
2201
- <pre class="code"><span class="info file"># File 'lib/como.rb', line 893</span>
2198
+ <pre class="code"><span class="info file"># File 'lib/como.rb', line 898</span>
2202
2199
 
2203
2200
  <span class='kw'>def</span> <span class='id identifier rubyid_checkRule'>checkRule</span><span class='lparen'>(</span> <span class='id identifier rubyid_opt'>opt</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_rule'>rule</span> <span class='rparen'>)</span>
2204
2201
  <span class='kw'>if</span> <span class='id identifier rubyid_opt'>opt</span>
@@ -2330,7 +2327,8 @@ the command line. Performs “usage” display if “help” was selected.</p>
2330
2327
  701
2331
2328
  702
2332
2329
  703
2333
- 704</pre>
2330
+ 704
2331
+ 705</pre>
2334
2332
  </td>
2335
2333
  <td>
2336
2334
  <pre class="code"><span class="info file"># File 'lib/como.rb', line 675</span>
@@ -2358,8 +2356,9 @@ the command line. Performs “usage” display if “help” was selected.</p>
2358
2356
  </span> <span class='id identifier rubyid_subcmd'>subcmd</span><span class='period'>.</span><span class='id identifier rubyid_applyConfig'>applyConfig</span><span class='lparen'>(</span> <span class='id identifier rubyid_config'>config</span> <span class='rparen'>)</span>
2359
2357
 
2360
2358
  <span class='kw'>if</span> <span class='id identifier rubyid_subcmd'>subcmd</span><span class='period'>.</span><span class='id identifier rubyid_config'>config</span><span class='lbracket'>[</span> <span class='symbol'>:autohelp</span> <span class='rbracket'>]</span>
2361
- <span class='comment'># Automatically add the help option.
2362
- </span> <span class='id identifier rubyid_defs'>defs</span><span class='period'>.</span><span class='id identifier rubyid_insert'>insert</span><span class='lparen'>(</span> <span class='int'>0</span><span class='comma'>,</span> <span class='lbracket'>[</span> <span class='symbol'>:silent</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>help</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>-h</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Display usage info.</span><span class='tstring_end'>&quot;</span></span> <span class='rbracket'>]</span> <span class='rparen'>)</span>
2359
+ <span class='comment'># Automatically add the help option and make it also mutex.
2360
+ </span> <span class='id identifier rubyid_spec'>spec</span> <span class='op'>=</span> <span class='const'>MAP_TYPE_PRIMS</span><span class='lbracket'>[</span> <span class='symbol'>:silent</span> <span class='rbracket'>]</span> <span class='op'>+</span> <span class='lbracket'>[</span> <span class='symbol'>:mutex</span> <span class='rbracket'>]</span>
2361
+ <span class='id identifier rubyid_defs'>defs</span><span class='period'>.</span><span class='id identifier rubyid_insert'>insert</span><span class='lparen'>(</span> <span class='int'>0</span><span class='comma'>,</span> <span class='lbracket'>[</span> <span class='id identifier rubyid_spec'>spec</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>help</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>-h</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Display usage info.</span><span class='tstring_end'>&quot;</span></span> <span class='rbracket'>]</span> <span class='rparen'>)</span>
2363
2362
  <span class='kw'>end</span>
2364
2363
 
2365
2364
  <span class='const'>Spec</span><span class='period'>.</span><span class='id identifier rubyid_specify'>specify</span><span class='lparen'>(</span> <span class='id identifier rubyid_subcmd'>subcmd</span><span class='comma'>,</span> <span class='id identifier rubyid_defs'>defs</span> <span class='rparen'>)</span>
@@ -2375,9 +2374,9 @@ the command line. Performs “usage” display if “help” was selected.</p>
2375
2374
  </div>
2376
2375
 
2377
2376
  <div id="footer">
2378
- Generated on Sun Jan 1 15:54:18 2017 by
2377
+ Generated on Fri Feb 17 00:05:17 2017 by
2379
2378
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
2380
- 0.8.7.6 (ruby-2.3.1).
2379
+ 0.8.7.6 (ruby-2.3.3).
2381
2380
  </div>
2382
2381
 
2383
2382
  </body>
data/doc/Como.html CHANGED
@@ -975,9 +975,9 @@ of the internal workings of Como is required though.</p>
975
975
  </div>
976
976
 
977
977
  <div id="footer">
978
- Generated on Sun Jan 1 15:54:18 2017 by
978
+ Generated on Fri Feb 17 00:05:17 2017 by
979
979
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
980
- 0.8.7.6 (ruby-2.3.1).
980
+ 0.8.7.6 (ruby-2.3.3).
981
981
  </div>
982
982
 
983
983
  </body>
data/doc/_index.html CHANGED
@@ -233,9 +233,9 @@
233
233
  </div>
234
234
 
235
235
  <div id="footer">
236
- Generated on Sun Jan 1 15:54:18 2017 by
236
+ Generated on Fri Feb 17 00:05:17 2017 by
237
237
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
238
- 0.8.7.6 (ruby-2.3.1).
238
+ 0.8.7.6 (ruby-2.3.3).
239
239
  </div>
240
240
 
241
241
  </body>
@@ -63,7 +63,10 @@
63
63
 
64
64
  <div id="content"><div id='filecontents'>
65
65
  <h1 id="label-Version+history">Version history</h1>
66
- <dl class="rdoc-list label-list"><dt>0.2.1
66
+ <dl class="rdoc-list label-list"><dt>0.2.2
67
+ <dd>
68
+ <p>Must have “-h” with mutex prim to prevent subcmd error.</p>
69
+ </dd><dt>0.2.1
67
70
  <dd>
68
71
  <p>Handle unknown subcmd/no-default case gracefully.</p>
69
72
  </dd><dt>0.2.0
@@ -125,9 +128,9 @@ settings, i.e. the Opt#params method added.</p>
125
128
  </div></div>
126
129
 
127
130
  <div id="footer">
128
- Generated on Sun Jan 1 15:54:18 2017 by
131
+ Generated on Fri Feb 17 00:05:17 2017 by
129
132
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
130
- 0.8.7.6 (ruby-2.3.1).
133
+ 0.8.7.6 (ruby-2.3.3).
131
134
  </div>
132
135
 
133
136
  </body>
data/doc/file.README.html CHANGED
@@ -92,9 +92,9 @@ similar, but (obviously) not identical.</p>
92
92
  </div></div>
93
93
 
94
94
  <div id="footer">
95
- Generated on Sun Jan 1 15:54:18 2017 by
95
+ Generated on Fri Feb 17 00:05:17 2017 by
96
96
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
97
- 0.8.7.6 (ruby-2.3.1).
97
+ 0.8.7.6 (ruby-2.3.3).
98
98
  </div>
99
99
 
100
100
  </body>
data/doc/index.html CHANGED
@@ -92,9 +92,9 @@ similar, but (obviously) not identical.</p>
92
92
  </div></div>
93
93
 
94
94
  <div id="footer">
95
- Generated on Sun Jan 1 15:54:18 2017 by
95
+ Generated on Fri Feb 17 00:05:17 2017 by
96
96
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
97
- 0.8.7.6 (ruby-2.3.1).
97
+ 0.8.7.6 (ruby-2.3.3).
98
98
  </div>
99
99
 
100
100
  </body>
@@ -103,9 +103,9 @@
103
103
  </div>
104
104
 
105
105
  <div id="footer">
106
- Generated on Sun Jan 1 15:54:18 2017 by
106
+ Generated on Fri Feb 17 00:05:17 2017 by
107
107
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
108
- 0.8.7.6 (ruby-2.3.1).
108
+ 0.8.7.6 (ruby-2.3.3).
109
109
  </div>
110
110
 
111
111
  </body>
data/lib/como.rb CHANGED
@@ -695,8 +695,9 @@ module Como
695
695
  subcmd.applyConfig( config )
696
696
 
697
697
  if subcmd.config[ :autohelp ]
698
- # Automatically add the help option.
699
- defs.insert( 0, [ :silent, "help", "-h", "Display usage info." ] )
698
+ # Automatically add the help option and make it also mutex.
699
+ spec = MAP_TYPE_PRIMS[ :silent ] + [ :mutex ]
700
+ defs.insert( 0, [ spec, "help", "-h", "Display usage info." ] )
700
701
  end
701
702
 
702
703
  Spec.specify( subcmd, defs )
@@ -801,6 +802,19 @@ module Como
801
802
  ]
802
803
 
803
804
 
805
+ MAP_TYPE_PRIMS = {
806
+ :switch => [ :none, :opt ],
807
+ :single => [ :one ],
808
+ :multi => [ :one, :many ],
809
+ :opt_single => [ :one, :opt ],
810
+ :opt_multi => [ :one, :many, :opt ],
811
+ :opt_any => [ :none, :one, :many, :opt ],
812
+ :default => [ :none, :one, :many, :opt, :default ],
813
+ :exclusive => [ :none, :one, :many, :opt, :mutex ],
814
+ :silent => [ :none, :opt, :hidden ],
815
+ }
816
+
817
+
804
818
  # Convert option types (type definitions) to option type
805
819
  # primitives.
806
820
  def Spec.mapTypeToPrims( type )
@@ -808,17 +822,8 @@ module Como
808
822
  prims = nil
809
823
 
810
824
  if type.kind_of? Symbol
811
- case type
812
- when :switch; prims = [ :none, :opt ]
813
- when :single; prims = [ :one ]
814
- when :multi; prims = [ :one, :many ]
815
- when :opt_single; prims = [ :one, :opt ]
816
- when :opt_multi; prims = [ :one, :many, :opt ]
817
- when :opt_any; prims = [ :none, :one, :many, :opt ]
818
- when :default; prims = [ :none, :one, :many, :opt, :default ]
819
- when :exclusive; prims = [ :none, :one, :many, :opt, :mutex ]
820
- when :silent; prims = [ :none, :opt, :hidden ]
821
- else
825
+ prims = MAP_TYPE_PRIMS[ type ]
826
+ unless prims
822
827
  raise "Unknown option type: \"#{type}\"..."
823
828
  end
824
829
 
data/lib/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Como
2
- VERSION = "0.2.1"
2
+ VERSION = "0.2.2"
3
3
  def Como.version
4
4
  Como::VERSION
5
5
  end
@@ -14,6 +14,22 @@ como_subcmd error: Subcommand required for "como_subcmd"...
14
14
  commit Commit (pending) changes to repo.
15
15
 
16
16
 
17
+ Copyright (c) 2013 by Como Tester
18
+
19
+ ---- CMD: como_subcmd -h
20
+
21
+ como_subcmd [-p <password>] [-u <username>+] <<subcommand>>
22
+
23
+ Options:
24
+ -p User password.
25
+ -u Username(s).
26
+
27
+ Subcommands:
28
+ add Add file to repo.
29
+ rm Remove file from repo.
30
+ commit Commit (pending) changes to repo.
31
+
32
+
17
33
  Copyright (c) 2013 by Como Tester
18
34
 
19
35
  ---- CMD: como_subcmd -p passwd
data/test/test_subcmd CHANGED
@@ -1,4 +1,5 @@
1
1
  como_subcmd
2
+ como_subcmd -h
2
3
  como_subcmd -p passwd
3
4
  como_subcmd add
4
5
  como_subcmd add -f