kwartz 3.1.2 → 3.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (140) hide show
  1. data/CHANGES +444 -0
  2. data/README.txt +4 -1
  3. data/bin/kwartz +2 -2
  4. data/doc-api/classes/Kwartz.html +16 -7
  5. data/doc-api/classes/Kwartz/Assertion.html +6 -6
  6. data/doc-api/classes/Kwartz/AssertionError.html +6 -6
  7. data/doc-api/classes/Kwartz/AttrInfo.html +71 -61
  8. data/doc-api/classes/Kwartz/BaseError.html +12 -12
  9. data/doc-api/classes/Kwartz/BaseTranslator.html +104 -74
  10. data/doc-api/classes/Kwartz/CharacterType.html +24 -24
  11. data/doc-api/classes/Kwartz/CommandOptionError.html +7 -7
  12. data/doc-api/classes/Kwartz/CommandOptions.html +50 -50
  13. data/doc-api/classes/Kwartz/Config.html +5 -0
  14. data/doc-api/classes/Kwartz/ConvertError.html +12 -12
  15. data/doc-api/classes/Kwartz/Converter.html +31 -33
  16. data/doc-api/classes/Kwartz/CssStyleParser.html +207 -168
  17. data/doc-api/classes/Kwartz/Defun.html +32 -31
  18. data/doc-api/classes/Kwartz/{HandlerArgument.html → Directive.html} +27 -53
  19. data/doc-api/classes/Kwartz/ElementInfo.html +68 -53
  20. data/doc-api/classes/Kwartz/EperlExpressionParser.html +185 -0
  21. data/doc-api/classes/Kwartz/EperlHandler.html +65 -58
  22. data/doc-api/classes/Kwartz/EperlTranslator.html +14 -7
  23. data/doc-api/classes/Kwartz/ErubisTranslator.html +14 -7
  24. data/doc-api/classes/Kwartz/ErubyTranslator.html +14 -7
  25. data/doc-api/classes/Kwartz/ExpandStatement.html +20 -20
  26. data/doc-api/classes/Kwartz/Expander.html +358 -0
  27. data/doc-api/classes/Kwartz/Handler.html +287 -157
  28. data/doc-api/classes/Kwartz/{StatementHelper.html → HandlerHelper.html} +307 -112
  29. data/doc-api/classes/Kwartz/Helper/ActionViewHelper.html +23 -23
  30. data/doc-api/classes/Kwartz/Helper/RailsTemplate.html +96 -96
  31. data/doc-api/classes/Kwartz/JstlExpressionParser.html +181 -0
  32. data/doc-api/classes/Kwartz/JstlHandler.html +134 -126
  33. data/doc-api/classes/Kwartz/JstlTranslator.html +21 -14
  34. data/doc-api/classes/Kwartz/KwartzError.html +6 -6
  35. data/doc-api/classes/Kwartz/Main.html +4 -4
  36. data/doc-api/classes/Kwartz/NativeExpression.html +19 -19
  37. data/doc-api/classes/Kwartz/NativeStatement.html +24 -24
  38. data/doc-api/classes/Kwartz/Node.html +7 -7
  39. data/doc-api/classes/Kwartz/PIErubisTranslator.html +21 -14
  40. data/doc-api/classes/Kwartz/ParseError.html +6 -6
  41. data/doc-api/classes/Kwartz/PerlExpressionParser.html +185 -0
  42. data/doc-api/classes/Kwartz/PerlHandler.html +353 -0
  43. data/doc-api/classes/Kwartz/PerlTranslator.html +226 -0
  44. data/doc-api/classes/Kwartz/PhpExpressionParser.html +185 -0
  45. data/doc-api/classes/Kwartz/PhpHandler.html +63 -56
  46. data/doc-api/classes/Kwartz/PhpTranslator.html +21 -14
  47. data/doc-api/classes/Kwartz/PresentationLogicParser.html +126 -123
  48. data/doc-api/classes/Kwartz/PrintStatement.html +18 -18
  49. data/doc-api/classes/Kwartz/RailsHandler.html +84 -85
  50. data/doc-api/classes/Kwartz/RailsTranslator.html +13 -6
  51. data/doc-api/classes/Kwartz/RubyExpressionParser.html +180 -0
  52. data/doc-api/classes/Kwartz/RubyHandler.html +73 -69
  53. data/doc-api/classes/Kwartz/RubyStyleParser.html +86 -86
  54. data/doc-api/classes/Kwartz/RubyTranslator.html +28 -21
  55. data/doc-api/classes/Kwartz/Ruleset.html +622 -1
  56. data/doc-api/classes/Kwartz/StrutsTranslator.html +14 -14
  57. data/doc-api/classes/Kwartz/TagInfo.html +52 -27
  58. data/doc-api/classes/Kwartz/TextConverter.html +75 -37
  59. data/doc-api/classes/Kwartz/Translator.html +54 -53
  60. data/doc-api/classes/Kwartz/Util.html +25 -25
  61. data/doc-api/created.rid +1 -1
  62. data/doc-api/files/__/README_txt.html +7 -2
  63. data/doc-api/files/kwartz/assert_rb.html +2 -2
  64. data/doc-api/files/kwartz/binding/eperl_rb.html +2 -2
  65. data/doc-api/files/kwartz/binding/erubis_rb.html +2 -2
  66. data/doc-api/files/kwartz/binding/eruby_rb.html +2 -2
  67. data/doc-api/files/kwartz/binding/jstl_rb.html +2 -2
  68. data/doc-api/files/kwartz/binding/perl_rb.html +115 -0
  69. data/doc-api/files/kwartz/binding/php_rb.html +2 -2
  70. data/doc-api/files/kwartz/binding/pierubis_rb.html +2 -2
  71. data/doc-api/files/kwartz/binding/rails_rb.html +2 -2
  72. data/doc-api/files/kwartz/binding/ruby_rb.html +2 -2
  73. data/doc-api/files/kwartz/binding/struts_rb.html +2 -2
  74. data/doc-api/files/kwartz/config_rb.html +2 -2
  75. data/doc-api/files/kwartz/converter_rb.html +2 -2
  76. data/doc-api/files/kwartz/defun_rb.html +2 -2
  77. data/doc-api/files/kwartz/error_rb.html +2 -2
  78. data/doc-api/files/kwartz/helper/rails_rb.html +2 -2
  79. data/doc-api/files/kwartz/main_rb.html +3 -2
  80. data/doc-api/files/kwartz/node_rb.html +2 -2
  81. data/doc-api/files/kwartz/parser_rb.html +2 -2
  82. data/doc-api/files/kwartz/translator_rb.html +2 -2
  83. data/doc-api/files/kwartz/util/assert-text-equal_rb.html +2 -2
  84. data/doc-api/files/kwartz/util/testcase-helper_rb.html +2 -2
  85. data/doc-api/files/kwartz/util_rb.html +2 -2
  86. data/doc-api/files/kwartz_rb.html +2 -2
  87. data/doc-api/fr_class_index.html +10 -5
  88. data/doc-api/fr_file_index.html +1 -0
  89. data/doc-api/fr_method_index.html +268 -239
  90. data/doc/docstyle.css +9 -3
  91. data/doc/img/fig05.png +0 -0
  92. data/doc/introduction-to-kwartz.html +3040 -0
  93. data/doc/pattern-catalog.html +5 -3
  94. data/doc/reference.html +680 -26
  95. data/doc/users-guide.html +222 -67
  96. data/kwartz.gemspec +4 -4
  97. data/lib/kwartz.rb +3 -3
  98. data/lib/kwartz/assert.rb +2 -2
  99. data/lib/kwartz/binding/eperl.rb +71 -31
  100. data/lib/kwartz/binding/erubis.rb +3 -2
  101. data/lib/kwartz/binding/eruby.rb +3 -2
  102. data/lib/kwartz/binding/jstl.rb +66 -29
  103. data/lib/kwartz/binding/perl.rb +230 -0
  104. data/lib/kwartz/binding/php.rb +69 -29
  105. data/lib/kwartz/binding/pierubis.rb +3 -2
  106. data/lib/kwartz/binding/rails.rb +18 -18
  107. data/lib/kwartz/binding/ruby.rb +74 -42
  108. data/lib/kwartz/binding/struts.rb +22 -21
  109. data/lib/kwartz/config.rb +4 -4
  110. data/lib/kwartz/converter.rb +465 -345
  111. data/lib/kwartz/defun.rb +2 -2
  112. data/lib/kwartz/error.rb +2 -2
  113. data/lib/kwartz/helper/rails.rb +2 -2
  114. data/lib/kwartz/main.rb +5 -4
  115. data/lib/kwartz/node.rb +92 -144
  116. data/lib/kwartz/parser.rb +112 -103
  117. data/lib/kwartz/translator.rb +14 -6
  118. data/lib/kwartz/util.rb +2 -2
  119. data/lib/kwartz/util/assert-text-equal.rb +2 -2
  120. data/lib/kwartz/util/testcase-helper.rb +1 -1
  121. data/test/test-compile.rb +2 -2
  122. data/test/test-compile.yaml +81 -0
  123. data/test/test-converter.rb +4 -8
  124. data/test/test-converter.yaml +152 -3
  125. data/test/test-directives.rb +2 -2
  126. data/test/test-directives.yaml +222 -0
  127. data/test/test-main.rb +6 -4
  128. data/test/test-main.yaml +66 -1
  129. data/test/test-parser.rb +12 -3
  130. data/test/test-parser.yaml +64 -51
  131. data/test/test-rails.rb +2 -2
  132. data/test/test-ruleset.rb +2 -2
  133. data/test/test-ruleset.yaml +465 -4
  134. data/test/test.log +6 -0
  135. data/test/test.rb +2 -2
  136. metadata +116 -106
  137. data/ChangeLog +0 -156
  138. data/doc-api/classes/Kwartz/DocumentRuleset.html +0 -369
  139. data/doc-api/classes/Kwartz/ElementExpander.html +0 -325
  140. data/doc-api/classes/Kwartz/ElementRuleset.html +0 -612
@@ -112,18 +112,18 @@ presentation logic example (ruby style):
112
112
  <h3 class="section-bar">Methods</h3>
113
113
 
114
114
  <div class="name-list">
115
- <a href="#M000148">_parse_block</a>&nbsp;&nbsp;
116
- <a href="#M000147">_parse_item</a>&nbsp;&nbsp;
117
- <a href="#M000144">_parse_list</a>&nbsp;&nbsp;
118
- <a href="#M000146">_parse_str</a>&nbsp;&nbsp;
119
- <a href="#M000145">_parse_strs</a>&nbsp;&nbsp;
120
- <a href="#M000149">_parse_tuples</a>&nbsp;&nbsp;
121
- <a href="#M000143">has_space?</a>&nbsp;&nbsp;
122
- <a href="#M000141">keywords</a>&nbsp;&nbsp;
123
- <a href="#M000139">parse</a>&nbsp;&nbsp;
124
- <a href="#M000142">parse_document_ruleset</a>&nbsp;&nbsp;
125
- <a href="#M000150">parse_element_ruleset</a>&nbsp;&nbsp;
126
- <a href="#M000140">scan_hook</a>&nbsp;&nbsp;
115
+ <a href="#M000146">_parse_block</a>&nbsp;&nbsp;
116
+ <a href="#M000145">_parse_item</a>&nbsp;&nbsp;
117
+ <a href="#M000142">_parse_list</a>&nbsp;&nbsp;
118
+ <a href="#M000144">_parse_str</a>&nbsp;&nbsp;
119
+ <a href="#M000143">_parse_strs</a>&nbsp;&nbsp;
120
+ <a href="#M000147">_parse_tuples</a>&nbsp;&nbsp;
121
+ <a href="#M000141">has_space?</a>&nbsp;&nbsp;
122
+ <a href="#M000139">keywords</a>&nbsp;&nbsp;
123
+ <a href="#M000137">parse</a>&nbsp;&nbsp;
124
+ <a href="#M000140">parse_document_ruleset</a>&nbsp;&nbsp;
125
+ <a href="#M000148">parse_element_ruleset</a>&nbsp;&nbsp;
126
+ <a href="#M000138">scan_hook</a>&nbsp;&nbsp;
127
127
  </div>
128
128
  </div>
129
129
 
@@ -143,7 +143,7 @@ presentation logic example (ruby style):
143
143
  <tr class="top-aligned-row context-row">
144
144
  <td class="context-item-name">RUBYSTYLE_KEYWORDS</td>
145
145
  <td>=</td>
146
- <td class="context-item-value">{ 'BEGIN' =&gt; :BEGIN, 'END' =&gt; :END }</td>
146
+ <td class="context-item-value">{ 'BEGIN'=&gt;:BEGIN, 'END'=&gt;:END, 'element'=&gt;:element, 'document'=&gt;:document }</td>
147
147
  </tr>
148
148
  </table>
149
149
  </div>
@@ -158,21 +158,21 @@ presentation logic example (ruby style):
158
158
  <div id="methods">
159
159
  <h3 class="section-bar">Public Instance methods</h3>
160
160
 
161
- <div id="method-M000139" class="method-detail">
162
- <a name="M000139"></a>
161
+ <div id="method-M000137" class="method-detail">
162
+ <a name="M000137"></a>
163
163
 
164
164
  <div class="method-heading">
165
- <a href="#M000139" class="method-signature">
165
+ <a href="#M000137" class="method-signature">
166
166
  <span class="method-name">parse</span><span class="method-args">(input, filename='')</span>
167
167
  </a>
168
168
  </div>
169
169
 
170
170
  <div class="method-description">
171
171
  <p><a class="source-toggle" href="#"
172
- onclick="toggleCode('M000139-source');return false;">[Source]</a></p>
173
- <div class="method-source-code" id="M000139-source">
172
+ onclick="toggleCode('M000137-source');return false;">[Source]</a></p>
173
+ <div class="method-source-code" id="M000137-source">
174
174
  <pre>
175
- <span class="ruby-comment cmt"># File kwartz/parser.rb, line 405</span>
175
+ <span class="ruby-comment cmt"># File kwartz/parser.rb, line 407</span>
176
176
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">parse</span>(<span class="ruby-identifier">input</span>, <span class="ruby-identifier">filename</span>=<span class="ruby-value str">''</span>)
177
177
  <span class="ruby-identifier">reset</span>(<span class="ruby-identifier">input</span>, <span class="ruby-identifier">filename</span>)
178
178
  <span class="ruby-identifier">scan</span>()
@@ -196,21 +196,21 @@ presentation logic example (ruby style):
196
196
 
197
197
  <h3 class="section-bar">Protected Instance methods</h3>
198
198
 
199
- <div id="method-M000148" class="method-detail">
200
- <a name="M000148"></a>
199
+ <div id="method-M000146" class="method-detail">
200
+ <a name="M000146"></a>
201
201
 
202
202
  <div class="method-heading">
203
- <a href="#M000148" class="method-signature">
203
+ <a href="#M000146" class="method-signature">
204
204
  <span class="method-name">_parse_block</span><span class="method-args">()</span>
205
205
  </a>
206
206
  </div>
207
207
 
208
208
  <div class="method-description">
209
209
  <p><a class="source-toggle" href="#"
210
- onclick="toggleCode('M000148-source');return false;">[Source]</a></p>
211
- <div class="method-source-code" id="M000148-source">
210
+ onclick="toggleCode('M000146-source');return false;">[Source]</a></p>
211
+ <div class="method-source-code" id="M000146-source">
212
212
  <pre>
213
- <span class="ruby-comment cmt"># File kwartz/parser.rb, line 511</span>
213
+ <span class="ruby-comment cmt"># File kwartz/parser.rb, line 513</span>
214
214
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">_parse_block</span>
215
215
  <span class="ruby-keyword kw">super</span>
216
216
  <span class="ruby-keyword kw">end</span>
@@ -219,21 +219,21 @@ presentation logic example (ruby style):
219
219
  </div>
220
220
  </div>
221
221
 
222
- <div id="method-M000147" class="method-detail">
223
- <a name="M000147"></a>
222
+ <div id="method-M000145" class="method-detail">
223
+ <a name="M000145"></a>
224
224
 
225
225
  <div class="method-heading">
226
- <a href="#M000147" class="method-signature">
226
+ <a href="#M000145" class="method-signature">
227
227
  <span class="method-name">_parse_item</span><span class="method-args">()</span>
228
228
  </a>
229
229
  </div>
230
230
 
231
231
  <div class="method-description">
232
232
  <p><a class="source-toggle" href="#"
233
- onclick="toggleCode('M000147-source');return false;">[Source]</a></p>
234
- <div class="method-source-code" id="M000147-source">
233
+ onclick="toggleCode('M000145-source');return false;">[Source]</a></p>
234
+ <div class="method-source-code" id="M000145-source">
235
235
  <pre>
236
- <span class="ruby-comment cmt"># File kwartz/parser.rb, line 504</span>
236
+ <span class="ruby-comment cmt"># File kwartz/parser.rb, line 506</span>
237
237
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">_parse_item</span>
238
238
  <span class="ruby-identifier">item</span> = <span class="ruby-identifier">scan_line</span>()
239
239
  <span class="ruby-identifier">item</span>.<span class="ruby-identifier">strip!</span>
@@ -244,21 +244,21 @@ presentation logic example (ruby style):
244
244
  </div>
245
245
  </div>
246
246
 
247
- <div id="method-M000144" class="method-detail">
248
- <a name="M000144"></a>
247
+ <div id="method-M000142" class="method-detail">
248
+ <a name="M000142"></a>
249
249
 
250
250
  <div class="method-heading">
251
- <a href="#M000144" class="method-signature">
251
+ <a href="#M000142" class="method-signature">
252
252
  <span class="method-name">_parse_list</span><span class="method-args">()</span>
253
253
  </a>
254
254
  </div>
255
255
 
256
256
  <div class="method-description">
257
257
  <p><a class="source-toggle" href="#"
258
- onclick="toggleCode('M000144-source');return false;">[Source]</a></p>
259
- <div class="method-source-code" id="M000144-source">
258
+ onclick="toggleCode('M000142-source');return false;">[Source]</a></p>
259
+ <div class="method-source-code" id="M000142-source">
260
260
  <pre>
261
- <span class="ruby-comment cmt"># File kwartz/parser.rb, line 477</span>
261
+ <span class="ruby-comment cmt"># File kwartz/parser.rb, line 479</span>
262
262
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">_parse_list</span>
263
263
  <span class="ruby-identifier">line</span> = <span class="ruby-identifier">scan_line</span>()
264
264
  <span class="ruby-identifier">list</span> = <span class="ruby-identifier">line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/,\s+/</span>).<span class="ruby-identifier">collect</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">item</span><span class="ruby-operator">|</span> <span class="ruby-identifier">item</span>.<span class="ruby-identifier">strip</span>}
@@ -269,21 +269,21 @@ presentation logic example (ruby style):
269
269
  </div>
270
270
  </div>
271
271
 
272
- <div id="method-M000146" class="method-detail">
273
- <a name="M000146"></a>
272
+ <div id="method-M000144" class="method-detail">
273
+ <a name="M000144"></a>
274
274
 
275
275
  <div class="method-heading">
276
- <a href="#M000146" class="method-signature">
276
+ <a href="#M000144" class="method-signature">
277
277
  <span class="method-name">_parse_str</span><span class="method-args">()</span>
278
278
  </a>
279
279
  </div>
280
280
 
281
281
  <div class="method-description">
282
282
  <p><a class="source-toggle" href="#"
283
- onclick="toggleCode('M000146-source');return false;">[Source]</a></p>
284
- <div class="method-source-code" id="M000146-source">
283
+ onclick="toggleCode('M000144-source');return false;">[Source]</a></p>
284
+ <div class="method-source-code" id="M000144-source">
285
285
  <pre>
286
- <span class="ruby-comment cmt"># File kwartz/parser.rb, line 499</span>
286
+ <span class="ruby-comment cmt"># File kwartz/parser.rb, line 501</span>
287
287
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">_parse_str</span>
288
288
  <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">_parse_strs</span>()[<span class="ruby-value">0</span>]
289
289
  <span class="ruby-keyword kw">end</span>
@@ -292,21 +292,21 @@ presentation logic example (ruby style):
292
292
  </div>
293
293
  </div>
294
294
 
295
- <div id="method-M000145" class="method-detail">
296
- <a name="M000145"></a>
295
+ <div id="method-M000143" class="method-detail">
296
+ <a name="M000143"></a>
297
297
 
298
298
  <div class="method-heading">
299
- <a href="#M000145" class="method-signature">
299
+ <a href="#M000143" class="method-signature">
300
300
  <span class="method-name">_parse_strs</span><span class="method-args">()</span>
301
301
  </a>
302
302
  </div>
303
303
 
304
304
  <div class="method-description">
305
305
  <p><a class="source-toggle" href="#"
306
- onclick="toggleCode('M000145-source');return false;">[Source]</a></p>
307
- <div class="method-source-code" id="M000145-source">
306
+ onclick="toggleCode('M000143-source');return false;">[Source]</a></p>
307
+ <div class="method-source-code" id="M000143-source">
308
308
  <pre>
309
- <span class="ruby-comment cmt"># File kwartz/parser.rb, line 484</span>
309
+ <span class="ruby-comment cmt"># File kwartz/parser.rb, line 486</span>
310
310
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">_parse_strs</span>
311
311
  <span class="ruby-identifier">list</span> = <span class="ruby-identifier">_parse_list</span>()
312
312
  <span class="ruby-identifier">list2</span> = []
@@ -325,21 +325,21 @@ presentation logic example (ruby style):
325
325
  </div>
326
326
  </div>
327
327
 
328
- <div id="method-M000149" class="method-detail">
329
- <a name="M000149"></a>
328
+ <div id="method-M000147" class="method-detail">
329
+ <a name="M000147"></a>
330
330
 
331
331
  <div class="method-heading">
332
- <a href="#M000149" class="method-signature">
332
+ <a href="#M000147" class="method-signature">
333
333
  <span class="method-name">_parse_tuples</span><span class="method-args">()</span>
334
334
  </a>
335
335
  </div>
336
336
 
337
337
  <div class="method-description">
338
338
  <p><a class="source-toggle" href="#"
339
- onclick="toggleCode('M000149-source');return false;">[Source]</a></p>
340
- <div class="method-source-code" id="M000149-source">
339
+ onclick="toggleCode('M000147-source');return false;">[Source]</a></p>
340
+ <div class="method-source-code" id="M000147-source">
341
341
  <pre>
342
- <span class="ruby-comment cmt"># File kwartz/parser.rb, line 516</span>
342
+ <span class="ruby-comment cmt"># File kwartz/parser.rb, line 518</span>
343
343
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">_parse_tuples</span>
344
344
  <span class="ruby-identifier">line</span> = <span class="ruby-identifier">scan_line</span>()
345
345
  <span class="ruby-identifier">items</span> = <span class="ruby-identifier">line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/,\s+/</span>)
@@ -366,21 +366,21 @@ presentation logic example (ruby style):
366
366
  </div>
367
367
  </div>
368
368
 
369
- <div id="method-M000143" class="method-detail">
370
- <a name="M000143"></a>
369
+ <div id="method-M000141" class="method-detail">
370
+ <a name="M000141"></a>
371
371
 
372
372
  <div class="method-heading">
373
- <a href="#M000143" class="method-signature">
373
+ <a href="#M000141" class="method-signature">
374
374
  <span class="method-name">has_space?</span><span class="method-args">()</span>
375
375
  </a>
376
376
  </div>
377
377
 
378
378
  <div class="method-description">
379
379
  <p><a class="source-toggle" href="#"
380
- onclick="toggleCode('M000143-source');return false;">[Source]</a></p>
381
- <div class="method-source-code" id="M000143-source">
380
+ onclick="toggleCode('M000141-source');return false;">[Source]</a></p>
381
+ <div class="method-source-code" id="M000141-source">
382
382
  <pre>
383
- <span class="ruby-comment cmt"># File kwartz/parser.rb, line 470</span>
383
+ <span class="ruby-comment cmt"># File kwartz/parser.rb, line 472</span>
384
384
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">has_space?</span>
385
385
  <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@ch</span> <span class="ruby-operator">==</span> <span class="ruby-value">?\ </span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@ch</span> <span class="ruby-operator">==</span> <span class="ruby-value">?\t</span>
386
386
  <span class="ruby-identifier">raise</span> <span class="ruby-identifier">parse_error</span>(<span class="ruby-node">&quot;'#{@value}': following spaces are required but got '#{@ch.chr}'.&quot;</span>)
@@ -391,21 +391,21 @@ presentation logic example (ruby style):
391
391
  </div>
392
392
  </div>
393
393
 
394
- <div id="method-M000141" class="method-detail">
395
- <a name="M000141"></a>
394
+ <div id="method-M000139" class="method-detail">
395
+ <a name="M000139"></a>
396
396
 
397
397
  <div class="method-heading">
398
- <a href="#M000141" class="method-signature">
398
+ <a href="#M000139" class="method-signature">
399
399
  <span class="method-name">keywords</span><span class="method-args">(keyword)</span>
400
400
  </a>
401
401
  </div>
402
402
 
403
403
  <div class="method-description">
404
404
  <p><a class="source-toggle" href="#"
405
- onclick="toggleCode('M000141-source');return false;">[Source]</a></p>
406
- <div class="method-source-code" id="M000141-source">
405
+ onclick="toggleCode('M000139-source');return false;">[Source]</a></p>
406
+ <div class="method-source-code" id="M000139-source">
407
407
  <pre>
408
- <span class="ruby-comment cmt"># File kwartz/parser.rb, line 437</span>
408
+ <span class="ruby-comment cmt"># File kwartz/parser.rb, line 439</span>
409
409
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">keywords</span>(<span class="ruby-identifier">keyword</span>)
410
410
  <span class="ruby-keyword kw">return</span> <span class="ruby-constant">RUBYSTYLE_KEYWORDS</span>[<span class="ruby-identifier">keyword</span>]
411
411
  <span class="ruby-keyword kw">end</span>
@@ -414,28 +414,28 @@ presentation logic example (ruby style):
414
414
  </div>
415
415
  </div>
416
416
 
417
- <div id="method-M000142" class="method-detail">
418
- <a name="M000142"></a>
417
+ <div id="method-M000140" class="method-detail">
418
+ <a name="M000140"></a>
419
419
 
420
420
  <div class="method-heading">
421
- <a href="#M000142" class="method-signature">
421
+ <a href="#M000140" class="method-signature">
422
422
  <span class="method-name">parse_document_ruleset</span><span class="method-args">()</span>
423
423
  </a>
424
424
  </div>
425
425
 
426
426
  <div class="method-description">
427
427
  <p><a class="source-toggle" href="#"
428
- onclick="toggleCode('M000142-source');return false;">[Source]</a></p>
429
- <div class="method-source-code" id="M000142-source">
428
+ onclick="toggleCode('M000140-source');return false;">[Source]</a></p>
429
+ <div class="method-source-code" id="M000140-source">
430
430
  <pre>
431
- <span class="ruby-comment cmt"># File kwartz/parser.rb, line 443</span>
431
+ <span class="ruby-comment cmt"># File kwartz/parser.rb, line 445</span>
432
432
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">parse_document_ruleset</span>
433
433
  <span class="ruby-identifier">assert</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@token</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:document</span>
434
434
  <span class="ruby-identifier">scan</span>()
435
435
  <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@token</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'{'</span><span class="ruby-value str">'{'</span>
436
436
  <span class="ruby-identifier">raise</span> <span class="ruby-identifier">parse_error</span>(<span class="ruby-node">&quot;'#{@value}': document requires '{'.&quot;</span>)
437
437
  <span class="ruby-keyword kw">end</span>
438
- <span class="ruby-identifier">ruleset</span> = <span class="ruby-constant">DocumentRuleset</span>.<span class="ruby-identifier">new</span>
438
+ <span class="ruby-identifier">ruleset</span> = <span class="ruby-constant">Ruleset</span>.<span class="ruby-identifier">new</span>
439
439
  <span class="ruby-keyword kw">while</span> <span class="ruby-ivar">@token</span>
440
440
  <span class="ruby-identifier">scan</span>()
441
441
  <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@token</span>
@@ -459,21 +459,21 @@ presentation logic example (ruby style):
459
459
  </div>
460
460
  </div>
461
461
 
462
- <div id="method-M000150" class="method-detail">
463
- <a name="M000150"></a>
462
+ <div id="method-M000148" class="method-detail">
463
+ <a name="M000148"></a>
464
464
 
465
465
  <div class="method-heading">
466
- <a href="#M000150" class="method-signature">
466
+ <a href="#M000148" class="method-signature">
467
467
  <span class="method-name">parse_element_ruleset</span><span class="method-args">()</span>
468
468
  </a>
469
469
  </div>
470
470
 
471
471
  <div class="method-description">
472
472
  <p><a class="source-toggle" href="#"
473
- onclick="toggleCode('M000150-source');return false;">[Source]</a></p>
474
- <div class="method-source-code" id="M000150-source">
473
+ onclick="toggleCode('M000148-source');return false;">[Source]</a></p>
474
+ <div class="method-source-code" id="M000148-source">
475
475
  <pre>
476
- <span class="ruby-comment cmt"># File kwartz/parser.rb, line 539</span>
476
+ <span class="ruby-comment cmt"># File kwartz/parser.rb, line 541</span>
477
477
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">parse_element_ruleset</span>
478
478
  <span class="ruby-identifier">assert</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@token</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:element</span>
479
479
  <span class="ruby-identifier">scan</span>()
@@ -514,21 +514,21 @@ presentation logic example (ruby style):
514
514
  </div>
515
515
  </div>
516
516
 
517
- <div id="method-M000140" class="method-detail">
518
- <a name="M000140"></a>
517
+ <div id="method-M000138" class="method-detail">
518
+ <a name="M000138"></a>
519
519
 
520
520
  <div class="method-heading">
521
- <a href="#M000140" class="method-signature">
521
+ <a href="#M000138" class="method-signature">
522
522
  <span class="method-name">scan_hook</span><span class="method-args">()</span>
523
523
  </a>
524
524
  </div>
525
525
 
526
526
  <div class="method-description">
527
527
  <p><a class="source-toggle" href="#"
528
- onclick="toggleCode('M000140-source');return false;">[Source]</a></p>
529
- <div class="method-source-code" id="M000140-source">
528
+ onclick="toggleCode('M000138-source');return false;">[Source]</a></p>
529
+ <div class="method-source-code" id="M000138-source">
530
530
  <pre>
531
- <span class="ruby-comment cmt"># File kwartz/parser.rb, line 426</span>
531
+ <span class="ruby-comment cmt"># File kwartz/parser.rb, line 428</span>
532
532
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">scan_hook</span>
533
533
  <span class="ruby-comment cmt">## line comment</span>
534
534
  <span class="ruby-identifier">c</span> = <span class="ruby-ivar">@ch</span>
@@ -94,9 +94,9 @@ translator for eRuby
94
94
  <h3 class="section-bar">Methods</h3>
95
95
 
96
96
  <div class="name-list">
97
- <a href="#M000210">new</a>&nbsp;&nbsp;
98
- <a href="#M000212">translate</a>&nbsp;&nbsp;
99
- <a href="#M000211">translate_string</a>&nbsp;&nbsp;
97
+ <a href="#M000209">new</a>&nbsp;&nbsp;
98
+ <a href="#M000211">translate</a>&nbsp;&nbsp;
99
+ <a href="#M000210">translate_string</a>&nbsp;&nbsp;
100
100
  </div>
101
101
  </div>
102
102
 
@@ -104,6 +104,13 @@ translator for eRuby
104
104
 
105
105
 
106
106
  <!-- if includes -->
107
+ <div id="includes">
108
+ <h3 class="section-bar">Included Modules</h3>
109
+
110
+ <div id="includes-list">
111
+ <span class="include-name"><a href="RubyExpressionParser.html">RubyExpressionParser</a></span>
112
+ </div>
113
+ </div>
107
114
 
108
115
  <div id="section">
109
116
 
@@ -118,21 +125,21 @@ translator for eRuby
118
125
  <div id="methods">
119
126
  <h3 class="section-bar">Public Class methods</h3>
120
127
 
121
- <div id="method-M000210" class="method-detail">
122
- <a name="M000210"></a>
128
+ <div id="method-M000209" class="method-detail">
129
+ <a name="M000209"></a>
123
130
 
124
131
  <div class="method-heading">
125
- <a href="#M000210" class="method-signature">
132
+ <a href="#M000209" class="method-signature">
126
133
  <span class="method-name">new</span><span class="method-args">(properties={})</span>
127
134
  </a>
128
135
  </div>
129
136
 
130
137
  <div class="method-description">
131
138
  <p><a class="source-toggle" href="#"
132
- onclick="toggleCode('M000210-source');return false;">[Source]</a></p>
133
- <div class="method-source-code" id="M000210-source">
139
+ onclick="toggleCode('M000209-source');return false;">[Source]</a></p>
140
+ <div class="method-source-code" id="M000209-source">
134
141
  <pre>
135
- <span class="ruby-comment cmt"># File kwartz/binding/ruby.rb, line 159</span>
142
+ <span class="ruby-comment cmt"># File kwartz/binding/ruby.rb, line 191</span>
136
143
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">properties</span>={})
137
144
  <span class="ruby-identifier">escapefunc</span> = <span class="ruby-identifier">properties</span>[<span class="ruby-identifier">:escapefunc</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">'ERB::Util.h'</span>
138
145
  <span class="ruby-identifier">marks</span> = [<span class="ruby-value str">''</span>, <span class="ruby-value str">''</span>, <span class="ruby-value str">'_buf &lt;&lt; ('</span>, <span class="ruby-value str">').to_s; '</span>, <span class="ruby-node">&quot;_buf &lt;&lt; #{escapefunc}(&quot;</span>, <span class="ruby-value str">'); '</span>]
@@ -147,21 +154,21 @@ translator for eRuby
147
154
 
148
155
  <h3 class="section-bar">Public Instance methods</h3>
149
156
 
150
- <div id="method-M000212" class="method-detail">
151
- <a name="M000212"></a>
157
+ <div id="method-M000211" class="method-detail">
158
+ <a name="M000211"></a>
152
159
 
153
160
  <div class="method-heading">
154
- <a href="#M000212" class="method-signature">
161
+ <a href="#M000211" class="method-signature">
155
162
  <span class="method-name">translate</span><span class="method-args">(stmt_list)</span>
156
163
  </a>
157
164
  </div>
158
165
 
159
166
  <div class="method-description">
160
167
  <p><a class="source-toggle" href="#"
161
- onclick="toggleCode('M000212-source');return false;">[Source]</a></p>
162
- <div class="method-source-code" id="M000212-source">
168
+ onclick="toggleCode('M000211-source');return false;">[Source]</a></p>
169
+ <div class="method-source-code" id="M000211-source">
163
170
  <pre>
164
- <span class="ruby-comment cmt"># File kwartz/binding/ruby.rb, line 182</span>
171
+ <span class="ruby-comment cmt"># File kwartz/binding/ruby.rb, line 214</span>
165
172
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">translate</span>(<span class="ruby-identifier">stmt_list</span>)
166
173
  <span class="ruby-identifier">stmt_list2</span> = <span class="ruby-identifier">optimize_print_stmts</span>(<span class="ruby-identifier">stmt_list</span>)
167
174
  <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">stmt_list2</span>)
@@ -171,21 +178,21 @@ translator for eRuby
171
178
  </div>
172
179
  </div>
173
180
 
174
- <div id="method-M000211" class="method-detail">
175
- <a name="M000211"></a>
181
+ <div id="method-M000210" class="method-detail">
182
+ <a name="M000210"></a>
176
183
 
177
184
  <div class="method-heading">
178
- <a href="#M000211" class="method-signature">
185
+ <a href="#M000210" class="method-signature">
179
186
  <span class="method-name">translate_string</span><span class="method-args">(str)</span>
180
187
  </a>
181
188
  </div>
182
189
 
183
190
  <div class="method-description">
184
191
  <p><a class="source-toggle" href="#"
185
- onclick="toggleCode('M000211-source');return false;">[Source]</a></p>
186
- <div class="method-source-code" id="M000211-source">
192
+ onclick="toggleCode('M000210-source');return false;">[Source]</a></p>
193
+ <div class="method-source-code" id="M000210-source">
187
194
  <pre>
188
- <span class="ruby-comment cmt"># File kwartz/binding/ruby.rb, line 168</span>
195
+ <span class="ruby-comment cmt"># File kwartz/binding/ruby.rb, line 200</span>
189
196
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">translate_string</span>(<span class="ruby-identifier">str</span>)
190
197
  <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">str</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">str</span>.<span class="ruby-identifier">empty?</span>
191
198
  <span class="ruby-comment cmt">#str.gsub!(/['\\]/, '\\\\\&amp;')</span>