shenanigans 1.0.9 → 1.0.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +6 -3
  3. data/README.rdoc +1 -1
  4. data/doc/Array.html +423 -202
  5. data/doc/Fixnum.html +155 -140
  6. data/doc/Hash.html +305 -206
  7. data/doc/Kernel.html +360 -249
  8. data/doc/Module.html +181 -153
  9. data/doc/Object.html +210 -201
  10. data/doc/String.html +166 -139
  11. data/doc/_index.html +188 -0
  12. data/doc/class_list.html +54 -0
  13. data/doc/css/common.css +1 -0
  14. data/doc/css/full_list.css +57 -0
  15. data/doc/css/style.css +338 -0
  16. data/doc/file.README.html +162 -0
  17. data/doc/file_list.html +56 -0
  18. data/doc/frames.html +26 -0
  19. data/doc/index.html +62 -80
  20. data/doc/js/app.js +219 -0
  21. data/doc/js/full_list.js +178 -0
  22. data/doc/js/jquery.js +4 -18
  23. data/doc/method_list.html +149 -0
  24. data/doc/top-level-namespace.html +114 -0
  25. data/lib/shenanigans.rb +3 -1
  26. data/lib/shenanigans/array.rb +3 -3
  27. data/lib/shenanigans/array/reductions.rb +29 -0
  28. data/lib/shenanigans/kernel.rb +4 -4
  29. data/lib/shenanigans/module.rb +1 -1
  30. data/lib/shenanigans/object.rb +2 -2
  31. data/lib/shenanigans/string.rb +1 -1
  32. data/test/array/test_reductions.rb +27 -0
  33. metadata +16 -36
  34. data/doc/README_rdoc.html +0 -199
  35. data/doc/created.rid +0 -25
  36. data/doc/images/add.png +0 -0
  37. data/doc/images/arrow_up.png +0 -0
  38. data/doc/images/brick.png +0 -0
  39. data/doc/images/brick_link.png +0 -0
  40. data/doc/images/bug.png +0 -0
  41. data/doc/images/bullet_black.png +0 -0
  42. data/doc/images/bullet_toggle_minus.png +0 -0
  43. data/doc/images/bullet_toggle_plus.png +0 -0
  44. data/doc/images/date.png +0 -0
  45. data/doc/images/delete.png +0 -0
  46. data/doc/images/find.png +0 -0
  47. data/doc/images/loadingAnimation.gif +0 -0
  48. data/doc/images/macFFBgHack.png +0 -0
  49. data/doc/images/package.png +0 -0
  50. data/doc/images/page_green.png +0 -0
  51. data/doc/images/page_white_text.png +0 -0
  52. data/doc/images/page_white_width.png +0 -0
  53. data/doc/images/plugin.png +0 -0
  54. data/doc/images/ruby.png +0 -0
  55. data/doc/images/tag_blue.png +0 -0
  56. data/doc/images/tag_green.png +0 -0
  57. data/doc/images/transparent.png +0 -0
  58. data/doc/images/wrench.png +0 -0
  59. data/doc/images/wrench_orange.png +0 -0
  60. data/doc/images/zoom.png +0 -0
  61. data/doc/js/darkfish.js +0 -155
  62. data/doc/js/navigation.js +0 -142
  63. data/doc/js/search.js +0 -94
  64. data/doc/js/search_index.js +0 -1
  65. data/doc/js/searcher.js +0 -228
  66. data/doc/rdoc.css +0 -595
  67. data/doc/table_of_contents.html +0 -114
data/doc/Kernel.html CHANGED
@@ -1,178 +1,249 @@
1
- <!DOCTYPE html>
2
-
3
- <html>
4
- <head>
5
- <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Module: Kernel
8
+
9
+ &mdash; Documentation by YARD 0.8.7.3
10
+
11
+ </title>
6
12
 
7
- <title>module Kernel - Shenanigans</title>
13
+ <link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
8
14
 
9
- <link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
15
+ <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
10
16
 
11
- <script type="text/javascript">
12
- var rdoc_rel_prefix = "./";
17
+ <script type="text/javascript" charset="utf-8">
18
+ hasFrames = window.top.frames.main ? true : false;
19
+ relpath = '';
20
+ framesUrl = "frames.html#!" + escape(window.location.href);
13
21
  </script>
14
22
 
15
- <script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
16
- <script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
17
- <script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
18
- <script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
19
- <script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
20
- <script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
21
23
 
24
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
22
25
 
23
- <body id="top" class="module">
24
- <nav id="metadata">
25
- <nav id="home-section" class="section">
26
- <h3 class="section-header">
27
- <a href="./index.html">Home</a>
28
- <a href="./table_of_contents.html#classes">Classes</a>
29
- <a href="./table_of_contents.html#methods">Methods</a>
30
- </h3>
31
- </nav>
26
+ <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
32
27
 
33
28
 
34
- <nav id="search-section" class="section project-section" class="initially-hidden">
35
- <form action="#" method="get" accept-charset="utf-8">
36
- <h3 class="section-header">
37
- <input type="text" name="search" placeholder="Search" id="search-field"
38
- title="Type to search, Up and Down to navigate, Enter to load">
39
- </h3>
40
- </form>
41
-
42
- <ul id="search-results" class="initially-hidden"></ul>
43
- </nav>
29
+ </head>
30
+ <body>
31
+ <div id="header">
32
+ <div id="menu">
33
+
34
+ <a href="_index.html">Index (K)</a> &raquo;
35
+
36
+
37
+ <span class="title">Kernel</span>
38
+
44
39
 
40
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
41
+ </div>
45
42
 
43
+ <div id="search">
44
+
45
+ <a class="full_list_link" id="class_list_link"
46
+ href="class_list.html">
47
+ Class List
48
+ </a>
46
49
 
50
+ <a class="full_list_link" id="method_list_link"
51
+ href="method_list.html">
52
+ Method List
53
+ </a>
54
+
55
+ <a class="full_list_link" id="file_list_link"
56
+ href="file_list.html">
57
+ File List
58
+ </a>
59
+
60
+ </div>
61
+ <div class="clear"></div>
62
+ </div>
47
63
 
48
- <div id="file-metadata">
49
- <nav id="file-list-section" class="section">
50
- <h3 class="section-header">Defined In</h3>
51
- <ul>
52
- <li>lib/shenanigans/kernel/fn.rb
53
- <li>lib/shenanigans/kernel/prompt.rb
54
- <li>lib/shenanigans/kernel/require_optional.rb
55
- <li>lib/shenanigans/kernel/with.rb
56
- </ul>
57
- </nav>
64
+ <iframe id="search_frame"></iframe>
58
65
 
59
-
60
- </div>
66
+ <div id="content"><h1>Module: Kernel
67
+
68
+
69
+
70
+ </h1>
61
71
 
62
- <div id="class-metadata">
63
-
64
-
72
+ <dl class="box">
73
+
74
+
65
75
 
76
+
66
77
 
67
- <!-- Method Quickref -->
68
- <nav id="method-list-section" class="section">
69
- <h3 class="section-header">Methods</h3>
78
+
79
+
80
+
81
+ <dt class="r1 last">Defined in:</dt>
82
+ <dd class="r1 last">lib/shenanigans/kernel/fn.rb<span class="defines">,<br />
83
+ lib/shenanigans/kernel/with.rb,<br /> lib/shenanigans/kernel/prompt.rb,<br /> lib/shenanigans/kernel/require_optional.rb</span>
84
+ </dd>
85
+
86
+ </dl>
87
+ <div class="clear"></div>
70
88
 
71
- <ul class="link-list">
72
-
73
- <li ><a href="#method-i-fn">#fn</a>
74
-
75
- <li ><a href="#method-i-prompt">#prompt</a>
76
-
77
- <li ><a href="#method-i-require_optional">#require_optional</a>
78
-
79
- <li ><a href="#method-i-with">#with</a>
89
+
90
+ <h2>Constant Summary</h2>
91
+
92
+ <dl class="constants">
93
+
94
+ <dt id="CONVERSIONS-constant" class="">CONVERSIONS =
95
+ <div class="docstring">
96
+ <div class="discussion">
80
97
 
81
- </ul>
82
- </nav>
98
+ <p>Currently only used by <code>prompt</code>: <code>:to_i</code>,
99
+ <code>:to_f</code>, <code>:to_r</code>, <code>:to_sym</code>,
100
+ <code>:to_c</code></p>
83
101
 
84
- </div>
85
102
 
86
- <div id="project-metadata">
87
- <nav id="fileindex-section" class="section project-section">
88
- <h3 class="section-header">Pages</h3>
103
+ </div>
104
+ </div>
105
+ <div class="tags">
106
+
89
107
 
90
- <ul>
108
+ </div>
109
+ </dt>
110
+ <dd><pre class="code"><span class='lbracket'>[</span><span class='symbol'>:to_i</span><span class='comma'>,</span> <span class='symbol'>:to_f</span><span class='comma'>,</span> <span class='symbol'>:to_r</span><span class='comma'>,</span> <span class='symbol'>:to_sym</span><span class='comma'>,</span> <span class='symbol'>:to_c</span><span class='rbracket'>]</span></pre></dd>
111
+
112
+ </dl>
91
113
 
92
- <li class="file"><a href="./README_rdoc.html">README</a>
114
+
115
+
116
+
117
+
118
+
119
+
120
+
93
121
 
94
- </ul>
95
- </nav>
122
+ <h2>
123
+ Instance Method Summary
124
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
125
+ </h2>
96
126
 
97
- <nav id="classindex-section" class="section project-section">
98
- <h3 class="section-header">Class and Module Index</h3>
127
+ <ul class="summary">
128
+
129
+ <li class="private ">
130
+ <span class="summary_signature">
131
+
132
+ <a href="#fn-instance_method" title="#fn (instance method)">- (Object) <strong>fn</strong>(*funs) </a>
133
+
99
134
 
100
- <ul class="link-list">
135
+
136
+ </span>
101
137
 
102
- <li><a href="./Array.html">Array</a>
103
138
 
104
- <li><a href="./Fixnum.html">Fixnum</a>
105
139
 
106
- <li><a href="./Hash.html">Hash</a>
140
+ <span class="note title private">private</span>
107
141
 
108
- <li><a href="./Kernel.html">Kernel</a>
109
142
 
110
- <li><a href="./Module.html">Module</a>
111
143
 
112
- <li><a href="./Object.html">Object</a>
144
+
113
145
 
114
- <li><a href="./String.html">String</a>
146
+ <span class="summary_desc"><div class='inline'>
147
+ <p>Composes a list of functions.</p>
148
+ </div></span>
115
149
 
116
- </ul>
117
- </nav>
118
-
119
- </div>
120
- </nav>
150
+ </li>
121
151
 
122
- <div id="documentation">
123
- <h1 class="module">module Kernel</h1>
124
-
125
- <div id="description" class="description">
152
+
153
+ <li class="private ">
154
+ <span class="summary_signature">
155
+
156
+ <a href="#prompt-instance_method" title="#prompt (instance method)">- (Object) <strong>prompt</strong>(text = &#39;&#39;, conversion = nil) </a>
126
157
 
127
- </div><!-- description -->
128
158
 
159
+
160
+ </span>
161
+
162
+
163
+
164
+ <span class="note title private">private</span>
129
165
 
130
166
 
131
167
 
132
- <section id="5Buntitled-5D" class="documentation-section">
133
-
134
168
 
169
+
170
+ <span class="summary_desc"><div class='inline'>
171
+ <p>Displays a prompt and returns chomped input.</p>
172
+ </div></span>
173
+
174
+ </li>
175
+
176
+
177
+ <li class="private ">
178
+ <span class="summary_signature">
179
+
180
+ <a href="#require_optional-instance_method" title="#require_optional (instance method)">- (Object) <strong>require_optional</strong>(gem, &amp;block) </a>
135
181
 
136
182
 
137
183
 
138
- <!-- Constants -->
139
- <section id="constants-list" class="section">
140
- <h3 class="section-header">Constants</h3>
141
- <dl>
142
-
143
- <dt id="CONVERSIONS">CONVERSIONS
144
-
145
- <dd class="description"><p>Currently only used by <code>prompt</code>: <code>:to_i</code>,
146
- <code>:to_f</code>, <code>:to_r</code>, <code>:to_sym</code>,
147
- <code>:to_c</code></p>
148
-
184
+ </span>
185
+
186
+
187
+
188
+ <span class="note title private">private</span>
189
+
190
+
191
+
192
+
193
+
194
+ <span class="summary_desc"><div class='inline'>
195
+ <p>Optionally require a gem.</p>
196
+ </div></span>
197
+
198
+ </li>
199
+
149
200
 
150
- </dl>
151
- </section>
201
+ <li class="private ">
202
+ <span class="summary_signature">
203
+
204
+ <a href="#with-instance_method" title="#with (instance method)">- (Object) <strong>with</strong>(o, &amp;blk) </a>
152
205
 
153
206
 
154
207
 
208
+ </span>
209
+
210
+
211
+
212
+ <span class="note title private">private</span>
213
+
214
+
215
+
216
+
217
+
218
+ <span class="summary_desc"><div class='inline'>
219
+ <p>A Pascal/ActionScript like with method.</p>
220
+ </div></span>
221
+
222
+ </li>
223
+
224
+
225
+ </ul>
226
+
227
+
228
+
229
+
230
+ <div id="instance_method_details" class="method_details_list">
231
+ <h2>Instance Method Details</h2>
155
232
 
156
- <!-- Methods -->
157
233
 
158
- <section id="private-instance-5Buntitled-5D-method-details" class="method-section section">
159
- <h3 class="section-header">Private Instance Methods</h3>
234
+ <div class="method_details first">
235
+ <h3 class="signature first" id="fn-instance_method">
236
+
237
+ - (<tt><span class='object_link'><a href="Object.html" title="Object (class)">Object</a></span></tt>) <strong>fn</strong>(*funs) <span class="extras">(private)</span>
238
+
160
239
 
240
+
241
+
242
+
243
+ </h3><div class="docstring">
244
+ <div class="discussion">
161
245
 
162
- <div id="method-i-fn" class="method-detail ">
163
-
164
- <div class="method-heading">
165
- <span class="method-name">fn</span><span
166
- class="method-args">(*funs)</span>
167
-
168
- <span class="method-click-advice">click to toggle source</span>
169
-
170
- </div>
171
-
172
-
173
- <div class="method-description">
174
-
175
- <p>Composes a list of functions. Functions can be specified as symbols or
246
+ <p>Composes a list of functions. Functions can be specified as symbols or
176
247
  lambdas.</p>
177
248
 
178
249
  <pre class="ruby">[<span class="ruby-string">&quot;foo bar&quot;</span>, <span class="ruby-string">&quot;baz qux&quot;</span>].<span class="ruby-identifier">map</span> <span class="ruby-operator">&amp;</span><span class="ruby-identifier">fn</span>(:<span class="ruby-identifier">split</span>, :<span class="ruby-identifier">last</span>)
@@ -181,43 +252,55 @@ lambdas.</p>
181
252
  (<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">3</span>).<span class="ruby-identifier">map</span> <span class="ruby-operator">&amp;</span><span class="ruby-identifier">fn</span>(:<span class="ruby-keyword">next</span>, <span class="ruby-operator">-</span><span class="ruby-operator">&gt;</span> <span class="ruby-identifier">x</span> { <span class="ruby-identifier">x</span> <span class="ruby-operator">*</span> <span class="ruby-identifier">x</span> }, <span class="ruby-operator">-</span><span class="ruby-operator">&gt;</span> <span class="ruby-identifier">x</span> { <span class="ruby-identifier">x</span>.<span class="ruby-identifier">to_f</span> <span class="ruby-operator">/</span> <span class="ruby-value">2</span> } )
182
253
  <span class="ruby-comment">#=&gt; [2.0, 4.5, 8.0]</span>
183
254
  </pre>
184
-
185
-
186
-
187
-
188
- <div class="method-source-code" id="fn-source">
189
- <pre><span class="ruby-comment"># File lib/shenanigans/kernel/fn.rb, line 9</span>
190
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">fn</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">funs</span>)
191
- <span class="ruby-operator">-</span><span class="ruby-operator">&gt;</span> <span class="ruby-identifier">x</span> <span class="ruby-keyword">do</span>
192
- <span class="ruby-identifier">funs</span>.<span class="ruby-identifier">inject</span>(<span class="ruby-identifier">x</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">v</span>,<span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
193
- <span class="ruby-constant">Proc</span> <span class="ruby-operator">===</span> <span class="ruby-identifier">f</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">f</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">v</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">v</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">f</span>)
194
- <span class="ruby-keyword">end</span>
195
- <span class="ruby-keyword">end</span>
196
- <span class="ruby-keyword">end</span></pre>
197
- </div><!-- fn-source -->
198
-
199
- </div>
200
-
201
-
202
-
203
-
204
- </div><!-- fn-method -->
205
255
 
256
+
257
+ </div>
258
+ </div>
259
+ <div class="tags">
260
+
261
+
262
+ </div><table class="source_code">
263
+ <tr>
264
+ <td>
265
+ <pre class="lines">
266
+
267
+
268
+ 9
269
+ 10
270
+ 11
271
+ 12
272
+ 13
273
+ 14
274
+ 15</pre>
275
+ </td>
276
+ <td>
277
+ <pre class="code"><span class="info file"># File 'lib/shenanigans/kernel/fn.rb', line 9</span>
278
+
279
+ <span class='kw'>def</span> <span class='id identifier rubyid_fn'>fn</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_funs'>funs</span><span class='rparen'>)</span>
280
+ <span class='tlambda'>-&gt;</span> <span class='id identifier rubyid_x'>x</span> <span class='kw'>do</span>
281
+ <span class='id identifier rubyid_funs'>funs</span><span class='period'>.</span><span class='id identifier rubyid_inject'>inject</span><span class='lparen'>(</span><span class='id identifier rubyid_x'>x</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_v'>v</span><span class='comma'>,</span><span class='id identifier rubyid_f'>f</span><span class='op'>|</span>
282
+ <span class='const'>Proc</span> <span class='op'>===</span> <span class='id identifier rubyid_f'>f</span> <span class='op'>?</span> <span class='id identifier rubyid_f'>f</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_f'>f</span><span class='rparen'>)</span>
283
+ <span class='kw'>end</span>
284
+ <span class='kw'>end</span>
285
+ <span class='kw'>end</span></pre>
286
+ </td>
287
+ </tr>
288
+ </table>
289
+ </div>
206
290
 
207
- <div id="method-i-prompt" class="method-detail ">
208
-
209
- <div class="method-heading">
210
- <span class="method-name">prompt</span><span
211
- class="method-args">(text='', conversion=nil)</span>
212
-
213
- <span class="method-click-advice">click to toggle source</span>
214
-
215
- </div>
216
-
217
-
218
- <div class="method-description">
219
-
220
- <p>Displays a prompt and returns chomped input. Modelled after the Python
291
+ <div class="method_details ">
292
+ <h3 class="signature " id="prompt-instance_method">
293
+
294
+ - (<tt><span class='object_link'><a href="Object.html" title="Object (class)">Object</a></span></tt>) <strong>prompt</strong>(text = &#39;&#39;, conversion = nil) <span class="extras">(private)</span>
295
+
296
+
297
+
298
+
299
+
300
+ </h3><div class="docstring">
301
+ <div class="discussion">
302
+
303
+ <p>Displays a prompt and returns chomped input. Modelled after the Python
221
304
  method <code>raw_input</code>, but also can be supplied with an optional
222
305
  conversion method.</p>
223
306
 
@@ -229,41 +312,51 @@ conversion method.</p>
229
312
  <span class="ruby-constant">Prompt</span><span class="ruby-operator">&gt;</span> <span class="ruby-value">12</span>
230
313
  <span class="ruby-comment">#=&gt; 12.0</span>
231
314
  </pre>
232
-
233
-
234
-
235
-
236
- <div class="method-source-code" id="prompt-source">
237
- <pre><span class="ruby-comment"># File lib/shenanigans/kernel/prompt.rb, line 17</span>
238
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">prompt</span>(<span class="ruby-identifier">text</span>=<span class="ruby-string">&#39;&#39;</span>, <span class="ruby-identifier">conversion</span>=<span class="ruby-keyword">nil</span>)
239
- <span class="ruby-identifier">print</span> <span class="ruby-identifier">text</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">text</span>.<span class="ruby-identifier">empty?</span>
240
- <span class="ruby-identifier">input</span> = <span class="ruby-identifier">gets</span>.<span class="ruby-identifier">chomp</span>
241
- <span class="ruby-constant">CONVERSIONS</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">conversion</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">input</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">conversion</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">input</span>
242
- <span class="ruby-keyword">end</span></pre>
243
- </div><!-- prompt-source -->
244
-
245
- </div>
246
-
247
-
248
-
249
-
250
- </div><!-- prompt-method -->
251
315
 
316
+
317
+ </div>
318
+ </div>
319
+ <div class="tags">
320
+
321
+
322
+ </div><table class="source_code">
323
+ <tr>
324
+ <td>
325
+ <pre class="lines">
326
+
327
+
328
+ 17
329
+ 18
330
+ 19
331
+ 20
332
+ 21</pre>
333
+ </td>
334
+ <td>
335
+ <pre class="code"><span class="info file"># File 'lib/shenanigans/kernel/prompt.rb', line 17</span>
336
+
337
+ <span class='kw'>def</span> <span class='id identifier rubyid_prompt'>prompt</span><span class='lparen'>(</span><span class='id identifier rubyid_text'>text</span><span class='op'>=</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='id identifier rubyid_conversion'>conversion</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
338
+ <span class='id identifier rubyid_print'>print</span> <span class='id identifier rubyid_text'>text</span> <span class='kw'>unless</span> <span class='id identifier rubyid_text'>text</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
339
+ <span class='id identifier rubyid_input'>input</span> <span class='op'>=</span> <span class='id identifier rubyid_gets'>gets</span><span class='period'>.</span><span class='id identifier rubyid_chomp'>chomp</span>
340
+ <span class='const'>CONVERSIONS</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_conversion'>conversion</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_input'>input</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_conversion'>conversion</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_input'>input</span>
341
+ <span class='kw'>end</span></pre>
342
+ </td>
343
+ </tr>
344
+ </table>
345
+ </div>
346
+
347
+ <div class="method_details ">
348
+ <h3 class="signature " id="require_optional-instance_method">
349
+
350
+ - (<tt><span class='object_link'><a href="Object.html" title="Object (class)">Object</a></span></tt>) <strong>require_optional</strong>(gem, &amp;block) <span class="extras">(private)</span>
351
+
352
+
353
+
354
+
355
+
356
+ </h3><div class="docstring">
357
+ <div class="discussion">
252
358
 
253
- <div id="method-i-require_optional" class="method-detail ">
254
-
255
- <div class="method-heading">
256
- <span class="method-name">require_optional</span><span
257
- class="method-args">(gem, &block)</span>
258
-
259
- <span class="method-click-advice">click to toggle source</span>
260
-
261
- </div>
262
-
263
-
264
- <div class="method-description">
265
-
266
- <p>Optionally require a gem. If it is not available, <code>nil</code> will be
359
+ <p>Optionally require a gem. If it is not available, <code>nil</code> will be
267
360
  returned. Alternatively, a block can be provided with code to run.</p>
268
361
 
269
362
  <pre class="ruby"><span class="ruby-identifier">require</span> <span class="ruby-string">&#39;non_existent&#39;</span>
@@ -274,41 +367,51 @@ returned. Alternatively, a block can be provided with code to run.</p>
274
367
  <span class="ruby-keyword">end</span>
275
368
  <span class="ruby-comment">#=&gt; Outputs &#39;Something went wrong&#39;</span>
276
369
  </pre>
277
-
278
-
279
-
280
-
281
- <div class="method-source-code" id="require_optional-source">
282
- <pre><span class="ruby-comment"># File lib/shenanigans/kernel/require_optional.rb, line 12</span>
283
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">require_optional</span>(<span class="ruby-identifier">gem</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
284
- <span class="ruby-identifier">require</span> <span class="ruby-identifier">gem</span>
285
- <span class="ruby-keyword">rescue</span> <span class="ruby-constant">LoadError</span>
286
- <span class="ruby-identifier">block</span>.<span class="ruby-identifier">call</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">block</span>
287
- <span class="ruby-keyword">end</span></pre>
288
- </div><!-- require_optional-source -->
289
-
290
- </div>
291
-
292
-
293
-
294
-
295
- </div><!-- require_optional-method -->
296
370
 
371
+
372
+ </div>
373
+ </div>
374
+ <div class="tags">
375
+
376
+
377
+ </div><table class="source_code">
378
+ <tr>
379
+ <td>
380
+ <pre class="lines">
381
+
382
+
383
+ 12
384
+ 13
385
+ 14
386
+ 15
387
+ 16</pre>
388
+ </td>
389
+ <td>
390
+ <pre class="code"><span class="info file"># File 'lib/shenanigans/kernel/require_optional.rb', line 12</span>
391
+
392
+ <span class='kw'>def</span> <span class='id identifier rubyid_require_optional'>require_optional</span><span class='lparen'>(</span><span class='id identifier rubyid_gem'>gem</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
393
+ <span class='id identifier rubyid_require'>require</span> <span class='id identifier rubyid_gem'>gem</span>
394
+ <span class='kw'>rescue</span> <span class='const'>LoadError</span>
395
+ <span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span> <span class='kw'>if</span> <span class='id identifier rubyid_block'>block</span>
396
+ <span class='kw'>end</span></pre>
397
+ </td>
398
+ </tr>
399
+ </table>
400
+ </div>
297
401
 
298
- <div id="method-i-with" class="method-detail ">
299
-
300
- <div class="method-heading">
301
- <span class="method-name">with</span><span
302
- class="method-args">(o, &blk)</span>
303
-
304
- <span class="method-click-advice">click to toggle source</span>
305
-
306
- </div>
307
-
308
-
309
- <div class="method-description">
310
-
311
- <p>A Pascal/ActionScript like <code>with</code> method. Yields its argument to
402
+ <div class="method_details ">
403
+ <h3 class="signature " id="with-instance_method">
404
+
405
+ - (<tt><span class='object_link'><a href="Object.html" title="Object (class)">Object</a></span></tt>) <strong>with</strong>(o, &amp;blk) <span class="extras">(private)</span>
406
+
407
+
408
+
409
+
410
+
411
+ </h3><div class="docstring">
412
+ <div class="discussion">
413
+
414
+ <p>A Pascal/ActionScript like <code>with</code> method. Yields its argument to
312
415
  the provided block and then returns it.</p>
313
416
 
314
417
  <pre class="ruby"><span class="ruby-identifier">with</span>([]) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span>
@@ -317,35 +420,43 @@ the provided block and then returns it.</p>
317
420
  <span class="ruby-keyword">end</span>
318
421
  <span class="ruby-comment">#=&gt; [&quot;a&quot;, &quot;b&quot;]</span>
319
422
  </pre>
320
-
321
-
322
-
323
-
324
- <div class="method-source-code" id="with-source">
325
- <pre><span class="ruby-comment"># File lib/shenanigans/kernel/with.rb, line 9</span>
326
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">with</span>(<span class="ruby-identifier">o</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span>)
327
- <span class="ruby-identifier">o</span>.<span class="ruby-identifier">tap</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span>)
328
- <span class="ruby-keyword">end</span></pre>
329
- </div><!-- with-source -->
330
-
331
- </div>
332
-
333
-
334
423
 
335
-
336
- </div><!-- with-method -->
337
424
 
338
-
339
- </section><!-- private-instance-method-details -->
425
+ </div>
426
+ </div>
427
+ <div class="tags">
340
428
 
341
- </section><!-- 5Buntitled-5D -->
342
429
 
343
- </div><!-- documentation -->
430
+ </div><table class="source_code">
431
+ <tr>
432
+ <td>
433
+ <pre class="lines">
434
+
435
+
436
+ 9
437
+ 10
438
+ 11</pre>
439
+ </td>
440
+ <td>
441
+ <pre class="code"><span class="info file"># File 'lib/shenanigans/kernel/with.rb', line 9</span>
442
+
443
+ <span class='kw'>def</span> <span class='id identifier rubyid_with'>with</span><span class='lparen'>(</span><span class='id identifier rubyid_o'>o</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_blk'>blk</span><span class='rparen'>)</span>
444
+ <span class='id identifier rubyid_o'>o</span><span class='period'>.</span><span class='id identifier rubyid_tap'>tap</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_blk'>blk</span><span class='rparen'>)</span>
445
+ <span class='kw'>end</span></pre>
446
+ </td>
447
+ </tr>
448
+ </table>
449
+ </div>
450
+
451
+ </div>
344
452
 
453
+ </div>
345
454
 
346
- <footer id="validator-badges">
347
- <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
348
- <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 4.0.0.
349
- <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
350
- </footer>
455
+ <div id="footer">
456
+ Generated on Tue Dec 31 15:41:29 2013 by
457
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
458
+ 0.8.7.3 (ruby-2.0.0).
459
+ </div>
351
460
 
461
+ </body>
462
+ </html>