wee 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. data/ChangeLog +75 -0
  2. data/README +17 -9
  3. data/Rakefile +2 -2
  4. data/TODO +20 -0
  5. data/benchmark/Makefile +14 -9
  6. data/benchmark/counter.rb +11 -30
  7. data/benchmark/report_req.rb +12 -0
  8. data/doc/rdoc/classes/Array.html +12 -12
  9. data/doc/rdoc/classes/Cache/StorageCache.html +38 -38
  10. data/doc/rdoc/classes/Cache/Strategy/CapacityBounded.html +30 -30
  11. data/doc/rdoc/classes/Cache/Strategy/LFU.html +24 -24
  12. data/doc/rdoc/classes/Cache/Strategy/LRU.html +24 -24
  13. data/doc/rdoc/classes/Cache/Strategy/Unbounded.html +24 -24
  14. data/doc/rdoc/classes/Enumerable.html +6 -6
  15. data/doc/rdoc/classes/Object.html +12 -12
  16. data/doc/rdoc/classes/OgApplication.html +126 -0
  17. data/doc/rdoc/classes/OgScaffolder.html +401 -0
  18. data/doc/rdoc/classes/OgSession.html +172 -0
  19. data/doc/rdoc/classes/String.html +12 -12
  20. data/doc/rdoc/classes/Struct.html +12 -12
  21. data/doc/rdoc/classes/Wee.html +5 -62
  22. data/doc/rdoc/classes/Wee/AnswerDecoration.html +9 -9
  23. data/doc/rdoc/classes/Wee/Application.html +107 -39
  24. data/doc/rdoc/classes/Wee/Brush.html +22 -18
  25. data/doc/rdoc/classes/Wee/Brush/ActionCallbackMixin.html +17 -11
  26. data/doc/rdoc/classes/Wee/Brush/ActionURLCallbackMixin.html +18 -10
  27. data/doc/rdoc/classes/Wee/Brush/AnchorTag.html +30 -64
  28. data/doc/rdoc/classes/Wee/Brush/FileUploadTag.html +8 -10
  29. data/doc/rdoc/classes/Wee/Brush/FormTag.html +27 -79
  30. data/doc/rdoc/classes/Wee/Brush/GenericEncodedTextBrush.html +12 -12
  31. data/doc/rdoc/classes/Wee/Brush/GenericSingleTagBrush.html +146 -0
  32. data/doc/rdoc/classes/Wee/Brush/GenericTagBrush.html +179 -65
  33. data/doc/rdoc/classes/Wee/Brush/GenericTextBrush.html +12 -12
  34. data/doc/rdoc/classes/Wee/Brush/ImageButtonTag.html +16 -18
  35. data/doc/rdoc/classes/Wee/Brush/ImageTag.html +203 -0
  36. data/doc/rdoc/classes/Wee/Brush/InputCallbackMixin.html +17 -11
  37. data/doc/rdoc/classes/Wee/Brush/InputTag.html +15 -15
  38. data/doc/rdoc/classes/Wee/Brush/JavascriptTag.html +147 -0
  39. data/doc/rdoc/classes/Wee/Brush/Page.html +17 -17
  40. data/doc/rdoc/classes/Wee/Brush/SelectListTag.html +25 -50
  41. data/doc/rdoc/classes/Wee/Brush/SelectOptionTag.html +7 -38
  42. data/doc/rdoc/classes/Wee/Brush/SubmitButtonTag.html +7 -7
  43. data/doc/rdoc/classes/Wee/Brush/TableDataTag.html +15 -16
  44. data/doc/rdoc/classes/Wee/Brush/TableHeaderTag.html +7 -7
  45. data/doc/rdoc/classes/Wee/Brush/TableRowTag.html +65 -50
  46. data/doc/rdoc/classes/Wee/Brush/TableTag.html +7 -7
  47. data/doc/rdoc/classes/Wee/Brush/TextAreaTag.html +14 -64
  48. data/doc/rdoc/classes/Wee/Brush/TextInputTag.html +7 -7
  49. data/doc/rdoc/classes/Wee/Brush/ToCallback.html +146 -0
  50. data/doc/rdoc/classes/Wee/CallbackRegistry.html +40 -40
  51. data/doc/rdoc/classes/Wee/CallbackStream.html +18 -18
  52. data/doc/rdoc/classes/Wee/Canvas.html +24 -24
  53. data/doc/rdoc/classes/Wee/Component.html +232 -149
  54. data/doc/rdoc/classes/Wee/Component/OnAnswer.html +153 -0
  55. data/doc/rdoc/classes/Wee/Decoration.html +42 -42
  56. data/doc/rdoc/classes/Wee/Delegate.html +27 -27
  57. data/doc/rdoc/classes/Wee/ErrorResponse.html +12 -12
  58. data/doc/rdoc/classes/Wee/FormDecoration.html +148 -0
  59. data/doc/rdoc/classes/Wee/GenericResponse.html +6 -6
  60. data/doc/rdoc/classes/Wee/HtmlCanvas.html +296 -215
  61. data/doc/rdoc/classes/Wee/HtmlWriter.html +83 -81
  62. data/doc/rdoc/classes/Wee/LiteralMethodCallback.html +21 -16
  63. data/doc/rdoc/classes/Wee/MessageBox.html +180 -0
  64. data/doc/rdoc/classes/Wee/PageDecoration.html +30 -30
  65. data/doc/rdoc/classes/Wee/Presenter.html +237 -69
  66. data/doc/rdoc/classes/Wee/RedirectResponse.html +6 -6
  67. data/doc/rdoc/classes/Wee/RefreshResponse.html +6 -6
  68. data/doc/rdoc/classes/Wee/Request.html +18 -18
  69. data/doc/rdoc/classes/Wee/RequestHandler.html +43 -39
  70. data/doc/rdoc/classes/Wee/Response.html +24 -24
  71. data/doc/rdoc/classes/Wee/Session.html +746 -72
  72. data/doc/rdoc/classes/Wee/SimpleIdGenerator.html +18 -18
  73. data/doc/rdoc/classes/Wee/Snapshot.html +19 -19
  74. data/doc/rdoc/classes/Wee/Utils.html +138 -2
  75. data/doc/rdoc/classes/Wee/Utils/LRUCache.html +7 -7
  76. data/doc/rdoc/classes/Wee/ValueHolder.html +18 -18
  77. data/doc/rdoc/classes/Wee/WEBrickAdaptor.html +43 -68
  78. data/doc/rdoc/classes/Wee/WrapperDecoration.html +150 -0
  79. data/doc/rdoc/created.rid +1 -1
  80. data/doc/rdoc/files/README.html +29 -15
  81. data/doc/rdoc/files/lib/wee/adaptors/webrick_rb.html +1 -1
  82. data/doc/rdoc/files/lib/wee/application_rb.html +1 -1
  83. data/doc/rdoc/files/lib/wee/components/form_decoration_rb.html +101 -0
  84. data/doc/rdoc/files/lib/wee/components/messagebox_rb.html +101 -0
  85. data/doc/rdoc/files/lib/wee/components/page_decoration_rb.html +1 -1
  86. data/doc/rdoc/files/lib/wee/components/wrapper_decoration_rb.html +101 -0
  87. data/doc/rdoc/files/lib/wee/components_rb.html +4 -1
  88. data/doc/rdoc/files/lib/wee/continuation/core/component_rb.html +101 -0
  89. data/doc/rdoc/files/lib/wee/continuation/session_rb.html +110 -0
  90. data/doc/rdoc/files/lib/wee/continuation_rb.html +116 -0
  91. data/doc/rdoc/files/lib/wee/core/callback_rb.html +1 -1
  92. data/doc/rdoc/files/lib/wee/core/component_rb.html +1 -1
  93. data/doc/rdoc/files/lib/wee/core/presenter_rb.html +1 -1
  94. data/doc/rdoc/files/lib/wee/core_rb.html +3 -3
  95. data/doc/rdoc/files/lib/wee/databases/og_rb.html +108 -0
  96. data/doc/rdoc/files/lib/wee/renderer/html/brushes_rb.html +1 -1
  97. data/doc/rdoc/files/lib/wee/renderer/html/canvas_rb.html +1 -1
  98. data/doc/rdoc/files/lib/wee/renderer/html/writer_rb.html +1 -1
  99. data/doc/rdoc/files/lib/wee/requesthandler_rb.html +1 -1
  100. data/doc/rdoc/files/lib/wee/session_rb.html +1 -2
  101. data/doc/rdoc/files/lib/wee/utils/autoreload_rb.html +1 -1
  102. data/doc/rdoc/files/lib/wee/utils/cache_rb.html +1 -1
  103. data/doc/rdoc/files/lib/wee/utils/helper_rb.html +1 -8
  104. data/doc/rdoc/files/lib/wee/utils_rb.html +110 -0
  105. data/doc/rdoc/files/lib/wee_rb.html +1 -1
  106. data/doc/rdoc/fr_class_index.html +11 -1
  107. data/doc/rdoc/fr_file_index.html +8 -0
  108. data/doc/rdoc/fr_method_index.html +269 -228
  109. data/examples/calculator.rb +69 -0
  110. data/examples/calendar.rb +5 -17
  111. data/examples/example.rb +2 -2
  112. data/examples/hw.rb +17 -0
  113. data/examples/live-update.rb +45 -0
  114. data/examples/og-test.rb +51 -0
  115. data/lib/wee.rb +1 -1
  116. data/lib/wee/adaptors/webrick.rb +2 -0
  117. data/lib/wee/application.rb +16 -0
  118. data/lib/wee/components.rb +3 -0
  119. data/lib/wee/components/form_decoration.rb +7 -0
  120. data/{test → lib/wee}/components/messagebox.rb +1 -1
  121. data/lib/wee/components/page_decoration.rb +5 -5
  122. data/lib/wee/components/wrapper_decoration.rb +7 -0
  123. data/lib/wee/continuation.rb +5 -0
  124. data/lib/wee/continuation/core/component.rb +55 -0
  125. data/lib/wee/continuation/session.rb +217 -0
  126. data/lib/wee/core/callback.rb +11 -6
  127. data/lib/wee/core/component.rb +45 -33
  128. data/lib/wee/core/presenter.rb +68 -0
  129. data/lib/wee/databases/og.rb +114 -0
  130. data/lib/wee/renderer/html/brushes.rb +179 -98
  131. data/lib/wee/renderer/html/canvas.rb +37 -13
  132. data/lib/wee/renderer/html/writer.rb +34 -32
  133. data/lib/wee/requesthandler.rb +6 -3
  134. data/lib/wee/session.rb +73 -54
  135. data/lib/wee/utils.rb +5 -0
  136. data/lib/wee/utils/autoreload.rb +1 -1
  137. data/lib/wee/utils/cache.rb +0 -2
  138. data/lib/wee/utils/helper.rb +40 -8
  139. data/test/components/calltest-cont.rb +16 -0
  140. data/test/components/calltest.rb +15 -10
  141. data/test/stress.rb +31 -28
  142. data/test/stress_and_measure.rb +53 -0
  143. data/test/stressed_application.rb +15 -0
  144. data/test/test_html_writer.rb +9 -4
  145. metadata +236 -195
  146. data/benchmark/bench.sh +0 -24
@@ -92,18 +92,24 @@ the correct handler by examining the request.
92
92
  </div>
93
93
 
94
94
 
95
+ <div id="contents-list">
96
+ <h3 class="section-bar">Contents</h3>
97
+ <ul>
98
+ <li><a href="#SEC00019">Properties</a></li>
99
+ </ul>
95
100
  </div>
96
101
 
97
102
  <div id="method-list">
98
103
  <h3 class="section-bar">Methods</h3>
99
104
 
100
105
  <div class="name-list">
101
- <a href="#M000146">default_request_handler</a>&nbsp;&nbsp;
102
- <a href="#M000150">garbage_collect_handlers</a>&nbsp;&nbsp;
103
- <a href="#M000148">handle_request</a>&nbsp;&nbsp;
104
- <a href="#M000147">new</a>&nbsp;&nbsp;
105
- <a href="#M000151">request_handler_expired</a>&nbsp;&nbsp;
106
- <a href="#M000149">unique_request_handler_id</a>&nbsp;&nbsp;
106
+ <a href="#M000181">default_request_handler</a>&nbsp;&nbsp;
107
+ <a href="#M000186">garbage_collect_handlers</a>&nbsp;&nbsp;
108
+ <a href="#M000184">get_property</a>&nbsp;&nbsp;
109
+ <a href="#M000183">handle_request</a>&nbsp;&nbsp;
110
+ <a href="#M000182">new</a>&nbsp;&nbsp;
111
+ <a href="#M000187">request_handler_expired</a>&nbsp;&nbsp;
112
+ <a href="#M000185">unique_request_handler_id</a>&nbsp;&nbsp;
107
113
  </div>
108
114
  </div>
109
115
 
@@ -149,11 +155,11 @@ The maximum number of request handlers
149
155
  <div id="methods">
150
156
  <h3 class="section-bar">Public Class methods</h3>
151
157
 
152
- <div id="method-M000147" class="method-detail">
153
- <a name="M000147"></a>
158
+ <div id="method-M000182" class="method-detail">
159
+ <a name="M000182"></a>
154
160
 
155
161
  <div class="method-heading">
156
- <a href="#M000147" class="method-signature">
162
+ <a href="#M000182" class="method-signature">
157
163
  <span class="method-name">new</span><span class="method-args">(&amp;block)</span>
158
164
  </a>
159
165
  </div>
@@ -170,8 +176,8 @@ Creates a new application. The block is used to initialize the attributes:
170
176
  }
171
177
  </pre>
172
178
  <p><a class="source-toggle" href="#"
173
- onclick="toggleCode('M000147-source');return false;">[Source]</a></p>
174
- <div class="method-source-code" id="M000147-source">
179
+ onclick="toggleCode('M000182-source');return false;">[Source]</a></p>
180
+ <div class="method-source-code" id="M000182-source">
175
181
  <pre>
176
182
  <span class="ruby-comment cmt"># File lib/wee/application.rb, line 34</span>
177
183
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
@@ -197,11 +203,11 @@ Creates a new application. The block is used to initialize the attributes:
197
203
 
198
204
  <h3 class="section-bar">Public Instance methods</h3>
199
205
 
200
- <div id="method-M000146" class="method-detail">
201
- <a name="M000146"></a>
206
+ <div id="method-M000181" class="method-detail">
207
+ <a name="M000181"></a>
202
208
 
203
209
  <div class="method-heading">
204
- <a href="#M000146" class="method-signature">
210
+ <a href="#M000181" class="method-signature">
205
211
  <span class="method-name">default_request_handler</span><span class="method-args">(&amp;block)</span>
206
212
  </a>
207
213
  </div>
@@ -212,8 +218,8 @@ Get or set the default request handler. The default request handler is used
212
218
  if no request handler id is given in a request.
213
219
  </p>
214
220
  <p><a class="source-toggle" href="#"
215
- onclick="toggleCode('M000146-source');return false;">[Source]</a></p>
216
- <div class="method-source-code" id="M000146-source">
221
+ onclick="toggleCode('M000181-source');return false;">[Source]</a></p>
222
+ <div class="method-source-code" id="M000181-source">
217
223
  <pre>
218
224
  <span class="ruby-comment cmt"># File lib/wee/application.rb, line 18</span>
219
225
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">default_request_handler</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
@@ -228,19 +234,19 @@ if no request handler id is given in a request.
228
234
  </div>
229
235
  </div>
230
236
 
231
- <div id="method-M000148" class="method-detail">
232
- <a name="M000148"></a>
237
+ <div id="method-M000183" class="method-detail">
238
+ <a name="M000183"></a>
233
239
 
234
240
  <div class="method-heading">
235
- <a href="#M000148" class="method-signature">
241
+ <a href="#M000183" class="method-signature">
236
242
  <span class="method-name">handle_request</span><span class="method-args">(context)</span>
237
243
  </a>
238
244
  </div>
239
245
 
240
246
  <div class="method-description">
241
247
  <p><a class="source-toggle" href="#"
242
- onclick="toggleCode('M000148-source');return false;">[Source]</a></p>
243
- <div class="method-source-code" id="M000148-source">
248
+ onclick="toggleCode('M000183-source');return false;">[Source]</a></p>
249
+ <div class="method-source-code" id="M000183-source">
244
250
  <pre>
245
251
  <span class="ruby-comment cmt"># File lib/wee/application.rb, line 51</span>
246
252
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">handle_request</span>(<span class="ruby-identifier">context</span>)
@@ -301,13 +307,75 @@ if no request handler id is given in a request.
301
307
  </div>
302
308
  </div>
303
309
 
310
+
311
+ </div>
312
+ <div id="section">
313
+ <h2 class="section-title"><a name="SEC00019">Properties</a></h2>
314
+ <div class="section-comment">
315
+
316
+ </div>
317
+
318
+
319
+
320
+
321
+
322
+ <div id="attribute-list">
323
+ <h3 class="section-bar">Attributes</h3>
324
+
325
+ <div class="name-list">
326
+ <table>
327
+ <tr class="top-aligned-row context-row">
328
+ <td class="context-item-name">properties</td>
329
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
330
+ <td class="context-item-desc"></td>
331
+ </tr>
332
+ </table>
333
+ </div>
334
+ </div>
335
+
336
+
337
+
338
+ <!-- if method_list -->
339
+ <div id="methods">
340
+ <h3 class="section-bar">Public Instance methods</h3>
341
+
342
+ <div id="method-M000184" class="method-detail">
343
+ <a name="M000184"></a>
344
+
345
+ <div class="method-heading">
346
+ <a href="#M000184" class="method-signature">
347
+ <span class="method-name">get_property</span><span class="method-args">(prop, klass)</span>
348
+ </a>
349
+ </div>
350
+
351
+ <div class="method-description">
352
+ <p>
353
+ Returns an &quot;owned&quot; property for the given <tt>klass</tt>.
354
+ </p>
355
+ <p><a class="source-toggle" href="#"
356
+ onclick="toggleCode('M000184-source');return false;">[Source]</a></p>
357
+ <div class="method-source-code" id="M000184-source">
358
+ <pre>
359
+ <span class="ruby-comment cmt"># File lib/wee/application.rb, line 113</span>
360
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_property</span>(<span class="ruby-identifier">prop</span>, <span class="ruby-identifier">klass</span>)
361
+ <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@properties</span>
362
+ <span class="ruby-ivar">@properties</span>.<span class="ruby-identifier">fetch</span>(<span class="ruby-identifier">klass</span>, {})[<span class="ruby-identifier">prop</span>]
363
+ <span class="ruby-keyword kw">else</span>
364
+ <span class="ruby-keyword kw">nil</span>
365
+ <span class="ruby-keyword kw">end</span>
366
+ <span class="ruby-keyword kw">end</span>
367
+ </pre>
368
+ </div>
369
+ </div>
370
+ </div>
371
+
304
372
  <h3 class="section-bar">Private Instance methods</h3>
305
373
 
306
- <div id="method-M000150" class="method-detail">
307
- <a name="M000150"></a>
374
+ <div id="method-M000186" class="method-detail">
375
+ <a name="M000186"></a>
308
376
 
309
377
  <div class="method-heading">
310
- <a href="#M000150" class="method-signature">
378
+ <a href="#M000186" class="method-signature">
311
379
  <span class="method-name">garbage_collect_handlers</span><span class="method-args">()</span>
312
380
  </a>
313
381
  </div>
@@ -317,10 +385,10 @@ if no request handler id is given in a request.
317
385
  MUST be called while holding @mutex
318
386
  </p>
319
387
  <p><a class="source-toggle" href="#"
320
- onclick="toggleCode('M000150-source');return false;">[Source]</a></p>
321
- <div class="method-source-code" id="M000150-source">
388
+ onclick="toggleCode('M000186-source');return false;">[Source]</a></p>
389
+ <div class="method-source-code" id="M000186-source">
322
390
  <pre>
323
- <span class="ruby-comment cmt"># File lib/wee/application.rb, line 117</span>
391
+ <span class="ruby-comment cmt"># File lib/wee/application.rb, line 133</span>
324
392
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">garbage_collect_handlers</span>
325
393
  <span class="ruby-ivar">@request_handlers</span>.<span class="ruby-identifier">delete_if</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">id</span>,<span class="ruby-identifier">rh</span><span class="ruby-operator">|</span> <span class="ruby-operator">!</span><span class="ruby-identifier">rh</span>.<span class="ruby-identifier">alive?</span> }
326
394
  <span class="ruby-keyword kw">end</span>
@@ -329,21 +397,21 @@ MUST be called while holding @mutex
329
397
  </div>
330
398
  </div>
331
399
 
332
- <div id="method-M000151" class="method-detail">
333
- <a name="M000151"></a>
400
+ <div id="method-M000187" class="method-detail">
401
+ <a name="M000187"></a>
334
402
 
335
403
  <div class="method-heading">
336
- <a href="#M000151" class="method-signature">
404
+ <a href="#M000187" class="method-signature">
337
405
  <span class="method-name">request_handler_expired</span><span class="method-args">(context)</span>
338
406
  </a>
339
407
  </div>
340
408
 
341
409
  <div class="method-description">
342
410
  <p><a class="source-toggle" href="#"
343
- onclick="toggleCode('M000151-source');return false;">[Source]</a></p>
344
- <div class="method-source-code" id="M000151-source">
411
+ onclick="toggleCode('M000187-source');return false;">[Source]</a></p>
412
+ <div class="method-source-code" id="M000187-source">
345
413
  <pre>
346
- <span class="ruby-comment cmt"># File lib/wee/application.rb, line 121</span>
414
+ <span class="ruby-comment cmt"># File lib/wee/application.rb, line 137</span>
347
415
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">request_handler_expired</span>(<span class="ruby-identifier">context</span>)
348
416
  <span class="ruby-identifier">context</span>.<span class="ruby-identifier">response</span> = <span class="ruby-constant">Wee</span><span class="ruby-operator">::</span><span class="ruby-constant">RefreshResponse</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;Invalid or expired request handler!&quot;</span>, <span class="ruby-identifier">context</span>.<span class="ruby-identifier">request</span>.<span class="ruby-identifier">application_path</span>)
349
417
  <span class="ruby-keyword kw">end</span>
@@ -352,11 +420,11 @@ MUST be called while holding @mutex
352
420
  </div>
353
421
  </div>
354
422
 
355
- <div id="method-M000149" class="method-detail">
356
- <a name="M000149"></a>
423
+ <div id="method-M000185" class="method-detail">
424
+ <a name="M000185"></a>
357
425
 
358
426
  <div class="method-heading">
359
- <a href="#M000149" class="method-signature">
427
+ <a href="#M000185" class="method-signature">
360
428
  <span class="method-name">unique_request_handler_id</span><span class="method-args">()</span>
361
429
  </a>
362
430
  </div>
@@ -366,10 +434,10 @@ MUST be called while holding @mutex
366
434
  MUST be called while holding @mutex
367
435
  </p>
368
436
  <p><a class="source-toggle" href="#"
369
- onclick="toggleCode('M000149-source');return false;">[Source]</a></p>
370
- <div class="method-source-code" id="M000149-source">
437
+ onclick="toggleCode('M000185-source');return false;">[Source]</a></p>
438
+ <div class="method-source-code" id="M000185-source">
371
439
  <pre>
372
- <span class="ruby-comment cmt"># File lib/wee/application.rb, line 109</span>
440
+ <span class="ruby-comment cmt"># File lib/wee/application.rb, line 125</span>
373
441
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">unique_request_handler_id</span>
374
442
  <span class="ruby-identifier">id</span> = <span class="ruby-ivar">@id_generator</span>.<span class="ruby-identifier">next</span>.<span class="ruby-identifier">to_s</span>
375
443
  <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;failed to create unique request handler id&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@request_handlers</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">id</span>)
@@ -88,9 +88,9 @@
88
88
  <h3 class="section-bar">Methods</h3>
89
89
 
90
90
  <div class="name-list">
91
- <a href="#M000079">close</a>&nbsp;&nbsp;
92
- <a href="#M000077">new</a>&nbsp;&nbsp;
93
- <a href="#M000078">with</a>&nbsp;&nbsp;
91
+ <a href="#M000097">close</a>&nbsp;&nbsp;
92
+ <a href="#M000095">new</a>&nbsp;&nbsp;
93
+ <a href="#M000096">with</a>&nbsp;&nbsp;
94
94
  </div>
95
95
  </div>
96
96
 
@@ -107,14 +107,18 @@
107
107
  Module <a href="Brush/ActionCallbackMixin.html" class="link">Wee::Brush::ActionCallbackMixin</a><br />
108
108
  Module <a href="Brush/ActionURLCallbackMixin.html" class="link">Wee::Brush::ActionURLCallbackMixin</a><br />
109
109
  Module <a href="Brush/InputCallbackMixin.html" class="link">Wee::Brush::InputCallbackMixin</a><br />
110
+ Module <a href="Brush/ToCallback.html" class="link">Wee::Brush::ToCallback</a><br />
110
111
  Class <a href="Brush/AnchorTag.html" class="link">Wee::Brush::AnchorTag</a><br />
111
112
  Class <a href="Brush/FileUploadTag.html" class="link">Wee::Brush::FileUploadTag</a><br />
112
113
  Class <a href="Brush/FormTag.html" class="link">Wee::Brush::FormTag</a><br />
113
114
  Class <a href="Brush/GenericEncodedTextBrush.html" class="link">Wee::Brush::GenericEncodedTextBrush</a><br />
115
+ Class <a href="Brush/GenericSingleTagBrush.html" class="link">Wee::Brush::GenericSingleTagBrush</a><br />
114
116
  Class <a href="Brush/GenericTagBrush.html" class="link">Wee::Brush::GenericTagBrush</a><br />
115
117
  Class <a href="Brush/GenericTextBrush.html" class="link">Wee::Brush::GenericTextBrush</a><br />
116
118
  Class <a href="Brush/ImageButtonTag.html" class="link">Wee::Brush::ImageButtonTag</a><br />
119
+ Class <a href="Brush/ImageTag.html" class="link">Wee::Brush::ImageTag</a><br />
117
120
  Class <a href="Brush/InputTag.html" class="link">Wee::Brush::InputTag</a><br />
121
+ Class <a href="Brush/JavascriptTag.html" class="link">Wee::Brush::JavascriptTag</a><br />
118
122
  Class <a href="Brush/Page.html" class="link">Wee::Brush::Page</a><br />
119
123
  Class <a href="Brush/SelectListTag.html" class="link">Wee::Brush::SelectListTag</a><br />
120
124
  Class <a href="Brush/SelectOptionTag.html" class="link">Wee::Brush::SelectOptionTag</a><br />
@@ -156,19 +160,19 @@ Class <a href="Brush/TextInputTag.html" class="link">Wee::Brush::TextInputTag</a
156
160
  <div id="methods">
157
161
  <h3 class="section-bar">Public Class methods</h3>
158
162
 
159
- <div id="method-M000077" class="method-detail">
160
- <a name="M000077"></a>
163
+ <div id="method-M000095" class="method-detail">
164
+ <a name="M000095"></a>
161
165
 
162
166
  <div class="method-heading">
163
- <a href="#M000077" class="method-signature">
167
+ <a href="#M000095" class="method-signature">
164
168
  <span class="method-name">new</span><span class="method-args">()</span>
165
169
  </a>
166
170
  </div>
167
171
 
168
172
  <div class="method-description">
169
173
  <p><a class="source-toggle" href="#"
170
- onclick="toggleCode('M000077-source');return false;">[Source]</a></p>
171
- <div class="method-source-code" id="M000077-source">
174
+ onclick="toggleCode('M000095-source');return false;">[Source]</a></p>
175
+ <div class="method-source-code" id="M000095-source">
172
176
  <pre>
173
177
  <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 6</span>
174
178
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>
@@ -181,19 +185,19 @@ Class <a href="Brush/TextInputTag.html" class="link">Wee::Brush::TextInputTag</a
181
185
 
182
186
  <h3 class="section-bar">Public Instance methods</h3>
183
187
 
184
- <div id="method-M000079" class="method-detail">
185
- <a name="M000079"></a>
188
+ <div id="method-M000097" class="method-detail">
189
+ <a name="M000097"></a>
186
190
 
187
191
  <div class="method-heading">
188
- <a href="#M000079" class="method-signature">
192
+ <a href="#M000097" class="method-signature">
189
193
  <span class="method-name">close</span><span class="method-args">()</span>
190
194
  </a>
191
195
  </div>
192
196
 
193
197
  <div class="method-description">
194
198
  <p><a class="source-toggle" href="#"
195
- onclick="toggleCode('M000079-source');return false;">[Source]</a></p>
196
- <div class="method-source-code" id="M000079-source">
199
+ onclick="toggleCode('M000097-source');return false;">[Source]</a></p>
200
+ <div class="method-source-code" id="M000097-source">
197
201
  <pre>
198
202
  <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 17</span>
199
203
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">close</span>
@@ -204,19 +208,19 @@ Class <a href="Brush/TextInputTag.html" class="link">Wee::Brush::TextInputTag</a
204
208
  </div>
205
209
  </div>
206
210
 
207
- <div id="method-M000078" class="method-detail">
208
- <a name="M000078"></a>
211
+ <div id="method-M000096" class="method-detail">
212
+ <a name="M000096"></a>
209
213
 
210
214
  <div class="method-heading">
211
- <a href="#M000078" class="method-signature">
215
+ <a href="#M000096" class="method-signature">
212
216
  <span class="method-name">with</span><span class="method-args">(*args, &amp;block)</span>
213
217
  </a>
214
218
  </div>
215
219
 
216
220
  <div class="method-description">
217
221
  <p><a class="source-toggle" href="#"
218
- onclick="toggleCode('M000078-source');return false;">[Source]</a></p>
219
- <div class="method-source-code" id="M000078-source">
222
+ onclick="toggleCode('M000096-source');return false;">[Source]</a></p>
223
+ <div class="method-source-code" id="M000096-source">
220
224
  <pre>
221
225
  <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 10</span>
222
226
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">with</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
@@ -80,7 +80,7 @@
80
80
  <h3 class="section-bar">Methods</h3>
81
81
 
82
82
  <div class="name-list">
83
- <a href="#M000081">callback</a>&nbsp;&nbsp;
83
+ <a href="#M000100">callback</a>&nbsp;&nbsp;
84
84
  </div>
85
85
  </div>
86
86
 
@@ -88,6 +88,13 @@
88
88
 
89
89
 
90
90
  <!-- if includes -->
91
+ <div id="includes">
92
+ <h3 class="section-bar">Included Modules</h3>
93
+
94
+ <div id="includes-list">
95
+ <span class="include-name"><a href="ToCallback.html">Brush::ToCallback</a></span>
96
+ </div>
97
+ </div>
91
98
 
92
99
  <div id="section">
93
100
 
@@ -102,25 +109,24 @@
102
109
  <div id="methods">
103
110
  <h3 class="section-bar">Public Instance methods</h3>
104
111
 
105
- <div id="method-M000081" class="method-detail">
106
- <a name="M000081"></a>
112
+ <div id="method-M000100" class="method-detail">
113
+ <a name="M000100"></a>
107
114
 
108
115
  <div class="method-heading">
109
- <a href="#M000081" class="method-signature">
110
- <span class="method-name">callback</span><span class="method-args">(symbol=nil, &amp;block)</span>
116
+ <a href="#M000100" class="method-signature">
117
+ <span class="method-name">callback</span><span class="method-args">(symbol=nil, *args, &amp;block)</span>
111
118
  </a>
112
119
  </div>
113
120
 
114
121
  <div class="method-description">
115
122
  <p><a class="source-toggle" href="#"
116
- onclick="toggleCode('M000081-source');return false;">[Source]</a></p>
117
- <div class="method-source-code" id="M000081-source">
123
+ onclick="toggleCode('M000100-source');return false;">[Source]</a></p>
124
+ <div class="method-source-code" id="M000100-source">
118
125
  <pre>
119
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 165</span>
120
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">callback</span>(<span class="ruby-identifier">symbol</span>=<span class="ruby-keyword kw">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
126
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 280</span>
127
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">callback</span>(<span class="ruby-identifier">symbol</span>=<span class="ruby-keyword kw">nil</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
121
128
  <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">symbol</span> <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">block</span>
122
- <span class="ruby-identifier">block</span> = <span class="ruby-ivar">@canvas</span>.<span class="ruby-identifier">current_component</span>.<span class="ruby-identifier">method</span>(<span class="ruby-identifier">symbol</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">block</span>
123
- <span class="ruby-identifier">name</span>(<span class="ruby-ivar">@canvas</span>.<span class="ruby-identifier">register_callback</span>(<span class="ruby-identifier">:action</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>))
129
+ <span class="ruby-identifier">name</span>(<span class="ruby-ivar">@canvas</span>.<span class="ruby-identifier">register_callback</span>(<span class="ruby-identifier">:action</span>, <span class="ruby-identifier">to_callback</span>(<span class="ruby-identifier">symbol</span>, <span class="ruby-identifier">args</span>, <span class="ruby-identifier">block</span>)))
124
130
  <span class="ruby-keyword kw">end</span>
125
131
  </pre>
126
132
  </div>
@@ -86,7 +86,7 @@ The callback id is listed in the URL (not as a form-data field)
86
86
  <h3 class="section-bar">Methods</h3>
87
87
 
88
88
  <div class="name-list">
89
- <a href="#M000080">callback</a>&nbsp;&nbsp;
89
+ <a href="#M000098">callback</a>&nbsp;&nbsp;
90
90
  </div>
91
91
  </div>
92
92
 
@@ -94,6 +94,13 @@ The callback id is listed in the URL (not as a form-data field)
94
94
 
95
95
 
96
96
  <!-- if includes -->
97
+ <div id="includes">
98
+ <h3 class="section-bar">Included Modules</h3>
99
+
100
+ <div id="includes-list">
101
+ <span class="include-name"><a href="ToCallback.html">Brush::ToCallback</a></span>
102
+ </div>
103
+ </div>
97
104
 
98
105
  <div id="section">
99
106
 
@@ -108,23 +115,24 @@ The callback id is listed in the URL (not as a form-data field)
108
115
  <div id="methods">
109
116
  <h3 class="section-bar">Public Instance methods</h3>
110
117
 
111
- <div id="method-M000080" class="method-detail">
112
- <a name="M000080"></a>
118
+ <div id="method-M000098" class="method-detail">
119
+ <a name="M000098"></a>
113
120
 
114
121
  <div class="method-heading">
115
- <a href="#M000080" class="method-signature">
116
- <span class="method-name">callback</span><span class="method-args">(symbol=nil, &amp;block)</span>
122
+ <a href="#M000098" class="method-signature">
123
+ <span class="method-name">callback</span><span class="method-args">(symbol=nil, *args, &amp;block)</span>
117
124
  </a>
118
125
  </div>
119
126
 
120
127
  <div class="method-description">
121
128
  <p><a class="source-toggle" href="#"
122
- onclick="toggleCode('M000080-source');return false;">[Source]</a></p>
123
- <div class="method-source-code" id="M000080-source">
129
+ onclick="toggleCode('M000098-source');return false;">[Source]</a></p>
130
+ <div class="method-source-code" id="M000098-source">
124
131
  <pre>
125
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 176</span>
126
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">callback</span>(<span class="ruby-identifier">symbol</span>=<span class="ruby-keyword kw">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
127
- <span class="ruby-identifier">__set_url</span>(<span class="ruby-ivar">@canvas</span>.<span class="ruby-identifier">url_for_callback</span>(<span class="ruby-identifier">symbol</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>))
132
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 292</span>
133
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">callback</span>(<span class="ruby-identifier">symbol</span>=<span class="ruby-keyword kw">nil</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
134
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">symbol</span> <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">block</span>
135
+ <span class="ruby-identifier">__set_url</span>(<span class="ruby-ivar">@canvas</span>.<span class="ruby-identifier">url_for_callback</span>(<span class="ruby-identifier">to_callback</span>(<span class="ruby-identifier">symbol</span>, <span class="ruby-identifier">args</span>, <span class="ruby-identifier">block</span>)))
128
136
  <span class="ruby-keyword kw">end</span>
129
137
  </pre>
130
138
  </div>