erubis 2.4.0 → 2.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. data/CHANGES +55 -2
  2. data/README.txt +1 -1
  3. data/benchmark/bench.rb +1 -1
  4. data/bin/erubis +1 -1
  5. data/contrib/erubis +57 -34
  6. data/contrib/inline-require +1 -1
  7. data/doc-api/classes/Erubis.html +6 -1
  8. data/doc-api/classes/Erubis/DeleteIndentEnhancer.html +1 -1
  9. data/doc-api/classes/Erubis/Evaluator.html +3 -3
  10. data/doc-api/classes/Erubis/HeaderFooterEnhancer.html +2 -2
  11. data/doc-api/classes/Erubis/InterpolationEnhancer.html +5 -5
  12. data/doc-api/classes/Erubis/JavascriptGenerator.html +16 -11
  13. data/doc-api/classes/Erubis/PI/Ejavascript.html +1 -1
  14. data/doc-api/classes/Erubis/PercentLineEnhancer.html +22 -18
  15. data/doc-api/classes/Erubis/RubyEvaluator.html +4 -4
  16. data/doc-api/created.rid +1 -1
  17. data/doc-api/files/README_txt.html +2 -2
  18. data/doc-api/files/erubis/context_rb.html +1 -1
  19. data/doc-api/files/erubis/converter_rb.html +1 -1
  20. data/doc-api/files/erubis/engine/ec_rb.html +1 -1
  21. data/doc-api/files/erubis/engine/ejava_rb.html +1 -1
  22. data/doc-api/files/erubis/engine/ejavascript_rb.html +2 -2
  23. data/doc-api/files/erubis/engine/enhanced_rb.html +1 -1
  24. data/doc-api/files/erubis/engine/eperl_rb.html +1 -1
  25. data/doc-api/files/erubis/engine/ephp_rb.html +1 -1
  26. data/doc-api/files/erubis/engine/eruby_rb.html +1 -1
  27. data/doc-api/files/erubis/engine/escheme_rb.html +1 -1
  28. data/doc-api/files/erubis/engine/optimized_rb.html +1 -1
  29. data/doc-api/files/erubis/engine_rb.html +1 -1
  30. data/doc-api/files/erubis/enhancer_rb.html +2 -2
  31. data/doc-api/files/erubis/error_rb.html +1 -1
  32. data/doc-api/files/erubis/evaluator_rb.html +2 -2
  33. data/doc-api/files/erubis/generator_rb.html +1 -1
  34. data/doc-api/files/erubis/helper_rb.html +1 -1
  35. data/doc-api/files/erubis/helpers/rails_helper_rb.html +1 -1
  36. data/doc-api/files/erubis/local-setting_rb.html +1 -1
  37. data/doc-api/files/erubis/main_rb.html +1 -1
  38. data/doc-api/files/erubis/tiny_rb.html +1 -1
  39. data/doc-api/files/erubis_rb.html +1 -1
  40. data/doc/users-guide.html +126 -14
  41. data/lib/erubis.rb +2 -2
  42. data/lib/erubis/context.rb +1 -1
  43. data/lib/erubis/converter.rb +1 -1
  44. data/lib/erubis/engine.rb +1 -1
  45. data/lib/erubis/engine/ec.rb +1 -1
  46. data/lib/erubis/engine/ejava.rb +1 -1
  47. data/lib/erubis/engine/ejavascript.rb +9 -3
  48. data/lib/erubis/engine/enhanced.rb +1 -1
  49. data/lib/erubis/engine/eperl.rb +1 -1
  50. data/lib/erubis/engine/ephp.rb +1 -1
  51. data/lib/erubis/engine/eruby.rb +1 -1
  52. data/lib/erubis/engine/escheme.rb +1 -1
  53. data/lib/erubis/engine/optimized.rb +1 -1
  54. data/lib/erubis/enhancer.rb +23 -8
  55. data/lib/erubis/error.rb +1 -1
  56. data/lib/erubis/evaluator.rb +5 -3
  57. data/lib/erubis/generator.rb +1 -1
  58. data/lib/erubis/helper.rb +1 -1
  59. data/lib/erubis/helpers/rails_helper.rb +1 -1
  60. data/lib/erubis/local-setting.rb +1 -1
  61. data/lib/erubis/main.rb +1 -1
  62. data/lib/erubis/tiny.rb +1 -1
  63. data/test/assert-text-equal.rb +1 -1
  64. data/test/data/users-guide/main_program1.rb +8 -0
  65. data/test/data/users-guide/main_program1.result +6 -0
  66. data/test/data/users-guide/main_program2.rb +8 -0
  67. data/test/data/users-guide/main_program2.result +6 -0
  68. data/test/data/users-guide/stderr.log +3 -0
  69. data/test/data/users-guide/template1.rhtml +4 -0
  70. data/test/data/users-guide/template2.rhtml +4 -0
  71. data/test/test-engines.rb +29 -4
  72. data/test/test-enhancers.rb +4 -4
  73. data/test/test-erubis.rb +17 -2
  74. data/test/test-main.rb +2 -2
  75. data/test/test-users-guide.rb +1 -1
  76. data/test/test.rb +1 -1
  77. data/test/testutil.rb +1 -1
  78. metadata +9 -2
@@ -130,7 +130,7 @@ this is only for <a href="Eruby.html">Eruby</a>.
130
130
  onclick="toggleCode('M000020-source');return false;">[Source]</a></p>
131
131
  <div class="method-source-code" id="M000020-source">
132
132
  <pre>
133
- <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 639</span>
133
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 654</span>
134
134
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">_add_text_to_str</span>(<span class="ruby-identifier">str</span>, <span class="ruby-identifier">text</span>)
135
135
  <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">text</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">text</span>.<span class="ruby-identifier">empty?</span>
136
136
  <span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-regexp re">/['\#\\]/</span>, <span class="ruby-value str">'\\\\\&amp;'</span>)
@@ -155,7 +155,7 @@ this is only for <a href="Eruby.html">Eruby</a>.
155
155
  onclick="toggleCode('M000021-source');return false;">[Source]</a></p>
156
156
  <div class="method-source-code" id="M000021-source">
157
157
  <pre>
158
- <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 645</span>
158
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 660</span>
159
159
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_expr_escaped</span>(<span class="ruby-identifier">str</span>, <span class="ruby-identifier">code</span>)
160
160
  <span class="ruby-identifier">str</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;\#{#{escaped_expr(code)}}&quot;</span>
161
161
  <span class="ruby-keyword kw">end</span>
@@ -178,7 +178,7 @@ this is only for <a href="Eruby.html">Eruby</a>.
178
178
  onclick="toggleCode('M000022-source');return false;">[Source]</a></p>
179
179
  <div class="method-source-code" id="M000022-source">
180
180
  <pre>
181
- <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 649</span>
181
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 664</span>
182
182
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_expr_literal</span>(<span class="ruby-identifier">str</span>, <span class="ruby-identifier">code</span>)
183
183
  <span class="ruby-identifier">str</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;\#{#{code}}&quot;</span>
184
184
  <span class="ruby-keyword kw">end</span>
@@ -201,7 +201,7 @@ this is only for <a href="Eruby.html">Eruby</a>.
201
201
  onclick="toggleCode('M000019-source');return false;">[Source]</a></p>
202
202
  <div class="method-source-code" id="M000019-source">
203
203
  <pre>
204
- <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 628</span>
204
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 643</span>
205
205
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_text</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">text</span>)
206
206
  <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">text</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">text</span>.<span class="ruby-identifier">empty?</span>
207
207
  <span class="ruby-comment cmt">#src &lt;&lt; &quot; _buf &lt;&lt; %Q`&quot; &lt;&lt; text &lt;&lt; &quot;`;&quot;</span>
@@ -231,7 +231,7 @@ this is only for <a href="Eruby.html">Eruby</a>.
231
231
  onclick="toggleCode('M000018-source');return false;">[Source]</a></p>
232
232
  <div class="method-source-code" id="M000018-source">
233
233
  <pre>
234
- <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 575</span>
234
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 590</span>
235
235
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">convert_input</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">input</span>)
236
236
  <span class="ruby-identifier">pat</span> = <span class="ruby-ivar">@pattern</span>
237
237
  <span class="ruby-identifier">regexp</span> = <span class="ruby-identifier">pat</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">pat</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'&lt;% %&gt;'</span> <span class="ruby-operator">?</span> <span class="ruby-constant">Basic</span><span class="ruby-operator">::</span><span class="ruby-constant">Converter</span><span class="ruby-operator">::</span><span class="ruby-constant">DEFAULT_REGEXP</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">pattern_regexp</span>(<span class="ruby-identifier">pat</span>)
@@ -132,7 +132,7 @@
132
132
  onclick="toggleCode('M000146-source');return false;">[Source]</a></p>
133
133
  <div class="method-source-code" id="M000146-source">
134
134
  <pre>
135
- <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 71</span>
135
+ <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 73</span>
136
136
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_expr_debug</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">code</span>)
137
137
  <span class="ruby-identifier">add_indent</span>(<span class="ruby-identifier">src</span>, <span class="ruby-ivar">@indent</span>)
138
138
  <span class="ruby-identifier">code</span>.<span class="ruby-identifier">strip!</span>
@@ -157,7 +157,7 @@
157
157
  onclick="toggleCode('M000145-source');return false;">[Source]</a></p>
158
158
  <div class="method-source-code" id="M000145-source">
159
159
  <pre>
160
- <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 67</span>
160
+ <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 69</span>
161
161
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_expr_escaped</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">code</span>)
162
162
  <span class="ruby-identifier">add_expr_literal</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">escaped_expr</span>(<span class="ruby-identifier">code</span>))
163
163
  <span class="ruby-keyword kw">end</span>
@@ -180,7 +180,7 @@
180
180
  onclick="toggleCode('M000144-source');return false;">[Source]</a></p>
181
181
  <div class="method-source-code" id="M000144-source">
182
182
  <pre>
183
- <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 61</span>
183
+ <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 63</span>
184
184
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_expr_literal</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">code</span>)
185
185
  <span class="ruby-identifier">add_indent</span>(<span class="ruby-identifier">src</span>, <span class="ruby-ivar">@indent</span>)
186
186
  <span class="ruby-identifier">code</span>.<span class="ruby-identifier">strip!</span>
@@ -205,7 +205,7 @@
205
205
  onclick="toggleCode('M000141-source');return false;">[Source]</a></p>
206
206
  <div class="method-source-code" id="M000141-source">
207
207
  <pre>
208
- <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 40</span>
208
+ <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 42</span>
209
209
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_indent</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">indent</span>)
210
210
  <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">src</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">src</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?\n</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">indent</span> <span class="ruby-operator">:</span> <span class="ruby-value str">' '</span>)
211
211
  <span class="ruby-keyword kw">end</span>
@@ -228,10 +228,14 @@
228
228
  onclick="toggleCode('M000147-source');return false;">[Source]</a></p>
229
229
  <div class="method-source-code" id="M000147-source">
230
230
  <pre>
231
- <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 77</span>
231
+ <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 79</span>
232
232
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_postamble</span>(<span class="ruby-identifier">src</span>)
233
233
  <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;\n&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">src</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?;</span>
234
- <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-ivar">@indent</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">'document.write('</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-ivar">@buf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;.join(\&quot;\&quot;));\n&quot;</span>
234
+ <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@docwrite</span>
235
+ <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-ivar">@indent</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">'document.write('</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-ivar">@buf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;.join(\&quot;\&quot;));\n&quot;</span>
236
+ <span class="ruby-keyword kw">else</span>
237
+ <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-ivar">@indent</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-ivar">@buf</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;.join(\&quot;\&quot;);\n&quot;</span>
238
+ <span class="ruby-keyword kw">end</span>
235
239
  <span class="ruby-keyword kw">end</span>
236
240
  </pre>
237
241
  </div>
@@ -252,7 +256,7 @@
252
256
  onclick="toggleCode('M000139-source');return false;">[Source]</a></p>
253
257
  <div class="method-source-code" id="M000139-source">
254
258
  <pre>
255
- <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 31</span>
259
+ <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 33</span>
256
260
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_preamble</span>(<span class="ruby-identifier">src</span>)
257
261
  <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;#{@indent}var #{@buf} = [];&quot;</span>
258
262
  <span class="ruby-keyword kw">end</span>
@@ -275,7 +279,7 @@
275
279
  onclick="toggleCode('M000143-source');return false;">[Source]</a></p>
276
280
  <div class="method-source-code" id="M000143-source">
277
281
  <pre>
278
- <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 57</span>
282
+ <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 59</span>
279
283
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_stmt</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">code</span>)
280
284
  <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">code</span>
281
285
  <span class="ruby-keyword kw">end</span>
@@ -298,7 +302,7 @@
298
302
  onclick="toggleCode('M000142-source');return false;">[Source]</a></p>
299
303
  <div class="method-source-code" id="M000142-source">
300
304
  <pre>
301
- <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 44</span>
305
+ <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 46</span>
302
306
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_text</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">text</span>)
303
307
  <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">text</span>.<span class="ruby-identifier">empty?</span>
304
308
  <span class="ruby-identifier">add_indent</span>(<span class="ruby-identifier">src</span>, <span class="ruby-ivar">@indent</span>)
@@ -330,7 +334,7 @@
330
334
  onclick="toggleCode('M000140-source');return false;">[Source]</a></p>
331
335
  <div class="method-source-code" id="M000140-source">
332
336
  <pre>
333
- <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 35</span>
337
+ <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 37</span>
334
338
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">escape_text</span>(<span class="ruby-identifier">text</span>)
335
339
  <span class="ruby-ivar">@@table_</span> <span class="ruby-operator">||=</span> { <span class="ruby-value str">&quot;\r&quot;</span>=<span class="ruby-operator">&gt;</span><span class="ruby-value str">&quot;\\r&quot;</span>, <span class="ruby-value str">&quot;\n&quot;</span>=<span class="ruby-operator">&gt;</span><span class="ruby-value str">&quot;\\n\\\n&quot;</span>, <span class="ruby-value str">&quot;\t&quot;</span>=<span class="ruby-operator">&gt;</span><span class="ruby-value str">&quot;\\t&quot;</span>, <span class="ruby-value str">'&quot;'</span>=<span class="ruby-operator">&gt;</span><span class="ruby-value str">'\\&quot;'</span>, <span class="ruby-value str">&quot;\\&quot;</span>=<span class="ruby-operator">&gt;</span><span class="ruby-value str">&quot;\\\\&quot;</span> }
336
340
  <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-regexp re">/[\r\n\t&quot;\\]/</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span> <span class="ruby-ivar">@@table_</span>[<span class="ruby-identifier">m</span>] } <span class="ruby-operator">||</span> <span class="ruby-identifier">text</span>
@@ -354,12 +358,13 @@
354
358
  onclick="toggleCode('M000138-source');return false;">[Source]</a></p>
355
359
  <div class="method-source-code" id="M000138-source">
356
360
  <pre>
357
- <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 24</span>
361
+ <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 25</span>
358
362
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">init_generator</span>(<span class="ruby-identifier">properties</span>={})
359
363
  <span class="ruby-keyword kw">super</span>
360
364
  <span class="ruby-ivar">@escapefunc</span> <span class="ruby-operator">||=</span> <span class="ruby-value str">'escape'</span>
361
365
  <span class="ruby-ivar">@indent</span> = <span class="ruby-identifier">properties</span>[<span class="ruby-identifier">:indent</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>
362
366
  <span class="ruby-ivar">@buf</span> = <span class="ruby-identifier">properties</span>[<span class="ruby-identifier">:out</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">'_buf'</span>
367
+ <span class="ruby-ivar">@docwrite</span> = <span class="ruby-identifier">properties</span>[<span class="ruby-identifier">:docwrite</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword kw">false</span> <span class="ruby-comment cmt"># '!= false' will be removed in the next release</span>
363
368
  <span class="ruby-keyword kw">end</span>
364
369
  </pre>
365
370
  </div>
@@ -141,7 +141,7 @@ end
141
141
  onclick="toggleCode('M000045-source');return false;">[Source]</a></p>
142
142
  <div class="method-source-code" id="M000045-source">
143
143
  <pre>
144
- <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 106</span>
144
+ <span class="ruby-comment cmt"># File erubis/engine/ejavascript.rb, line 112</span>
145
145
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">init_converter</span>(<span class="ruby-identifier">properties</span>={})
146
146
  <span class="ruby-ivar">@pi</span> = <span class="ruby-value str">'js'</span>
147
147
  <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">properties</span>)
@@ -104,19 +104,6 @@ this is language-independent.
104
104
  <div id="section">
105
105
 
106
106
 
107
- <div id="constants-list">
108
- <h3 class="section-bar">Constants</h3>
109
-
110
- <div class="name-list">
111
- <table summary="Constants">
112
- <tr class="top-aligned-row context-row">
113
- <td class="context-item-name">PERCENT_LINE_PATTERN</td>
114
- <td>=</td>
115
- <td class="context-item-value">/(.*?)^\%(.*?\r?\n)/m</td>
116
- </tr>
117
- </table>
118
- </div>
119
- </div>
120
107
 
121
108
 
122
109
 
@@ -141,17 +128,34 @@ this is language-independent.
141
128
  onclick="toggleCode('M000157-source');return false;">[Source]</a></p>
142
129
  <div class="method-source-code" id="M000157-source">
143
130
  <pre>
144
- <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 448</span>
131
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 446</span>
145
132
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_text</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">text</span>)
146
- <span class="ruby-identifier">text</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-constant">PERCENT_LINE_PATTERN</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">txt</span>, <span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
147
- <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">txt</span>)
133
+ <span class="ruby-identifier">pos</span> = <span class="ruby-value">0</span>
134
+ <span class="ruby-identifier">text2</span> = <span class="ruby-value str">''</span>
135
+ <span class="ruby-identifier">text</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-regexp re">/^\%(.*?\r?\n)/</span>) <span class="ruby-keyword kw">do</span>
136
+ <span class="ruby-identifier">line</span> = <span class="ruby-identifier">$1</span>
137
+ <span class="ruby-identifier">match</span> = <span class="ruby-constant">Regexp</span>.<span class="ruby-identifier">last_match</span>
138
+ <span class="ruby-identifier">len</span> = <span class="ruby-identifier">match</span>.<span class="ruby-identifier">begin</span>(<span class="ruby-value">0</span>) <span class="ruby-operator">-</span> <span class="ruby-identifier">pos</span>
139
+ <span class="ruby-identifier">str</span> = <span class="ruby-identifier">text</span>[<span class="ruby-identifier">pos</span>, <span class="ruby-identifier">len</span>]
140
+ <span class="ruby-identifier">pos</span> = <span class="ruby-identifier">match</span>.<span class="ruby-identifier">end</span>(<span class="ruby-value">0</span>)
141
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">text2</span>.<span class="ruby-identifier">empty?</span>
142
+ <span class="ruby-identifier">text2</span> = <span class="ruby-identifier">str</span>
143
+ <span class="ruby-keyword kw">else</span>
144
+ <span class="ruby-identifier">text2</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">str</span>
145
+ <span class="ruby-keyword kw">end</span>
148
146
  <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">line</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?%</span>
149
- <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">line</span>)
147
+ <span class="ruby-identifier">text2</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">line</span>
150
148
  <span class="ruby-keyword kw">else</span>
149
+ <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">text2</span>)
150
+ <span class="ruby-identifier">text2</span> = <span class="ruby-value str">''</span>
151
151
  <span class="ruby-identifier">add_stmt</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">line</span>)
152
152
  <span class="ruby-keyword kw">end</span>
153
153
  <span class="ruby-keyword kw">end</span>
154
- <span class="ruby-identifier">rest</span> = <span class="ruby-identifier">$'</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">text</span>
154
+ <span class="ruby-identifier">rest</span> = <span class="ruby-identifier">pos</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">text</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">$'</span> <span class="ruby-comment cmt"># or $' || text</span>
155
+ <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">text2</span>.<span class="ruby-identifier">empty?</span>
156
+ <span class="ruby-identifier">text2</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">rest</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">rest</span>
157
+ <span class="ruby-identifier">rest</span> = <span class="ruby-identifier">text2</span>
158
+ <span class="ruby-keyword kw">end</span>
155
159
  <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">rest</span>)
156
160
  <span class="ruby-keyword kw">end</span>
157
161
  </pre>
@@ -135,7 +135,7 @@ define singleton method to it.
135
135
  onclick="toggleCode('M000166-source');return false;">[Source]</a></p>
136
136
  <div class="method-source-code" id="M000166-source">
137
137
  <pre>
138
- <span class="ruby-comment cmt"># File erubis/evaluator.rb, line 73</span>
138
+ <span class="ruby-comment cmt"># File erubis/evaluator.rb, line 75</span>
139
139
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">def_method</span>(<span class="ruby-identifier">object</span>, <span class="ruby-identifier">method_name</span>, <span class="ruby-identifier">filename</span>=<span class="ruby-keyword kw">nil</span>)
140
140
  <span class="ruby-identifier">m</span> = <span class="ruby-identifier">object</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Module</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">:module_eval</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">:instance_eval</span>
141
141
  <span class="ruby-identifier">object</span>.<span class="ruby-identifier">__send__</span>(<span class="ruby-identifier">m</span>, <span class="ruby-node">&quot;def #{method_name}; #{@src}; end&quot;</span>, <span class="ruby-identifier">filename</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@filename</span> <span class="ruby-operator">||</span> <span class="ruby-value str">'(erubis)'</span>)
@@ -162,11 +162,11 @@ invoke context.instance_eval(@src)
162
162
  onclick="toggleCode('M000165-source');return false;">[Source]</a></p>
163
163
  <div class="method-source-code" id="M000165-source">
164
164
  <pre>
165
- <span class="ruby-comment cmt"># File erubis/evaluator.rb, line 64</span>
165
+ <span class="ruby-comment cmt"># File erubis/evaluator.rb, line 66</span>
166
166
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">evaluate</span>(<span class="ruby-identifier">context</span>=<span class="ruby-constant">Context</span>.<span class="ruby-identifier">new</span>)
167
167
  <span class="ruby-identifier">context</span> = <span class="ruby-constant">Context</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">context</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">context</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Hash</span>)
168
168
  <span class="ruby-comment cmt">#return context.instance_eval(@src, @filename || '(erubis)')</span>
169
- <span class="ruby-ivar">@_proc</span> <span class="ruby-operator">||=</span> <span class="ruby-identifier">eval</span>(<span class="ruby-node">&quot;proc { #{@src} }&quot;</span>, <span class="ruby-constant">TOPLEVEL_BINDING</span>, <span class="ruby-ivar">@filename</span> <span class="ruby-operator">||</span> <span class="ruby-value str">'(erubis)'</span>)
169
+ <span class="ruby-ivar">@_proc</span> <span class="ruby-operator">||=</span> <span class="ruby-identifier">eval</span>(<span class="ruby-node">&quot;proc { #{@src} }&quot;</span>, <span class="ruby-constant">Erubis</span><span class="ruby-operator">::</span><span class="ruby-constant">EMPTY_BINDING</span>, <span class="ruby-ivar">@filename</span> <span class="ruby-operator">||</span> <span class="ruby-value str">'(erubis)'</span>)
170
170
  <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">context</span>.<span class="ruby-identifier">instance_eval</span>(<span class="ruby-operator">&amp;</span><span class="ruby-ivar">@_proc</span>)
171
171
  <span class="ruby-keyword kw">end</span>
172
172
  </pre>
@@ -191,7 +191,7 @@ eval(@src) with binding object
191
191
  onclick="toggleCode('M000164-source');return false;">[Source]</a></p>
192
192
  <div class="method-source-code" id="M000164-source">
193
193
  <pre>
194
- <span class="ruby-comment cmt"># File erubis/evaluator.rb, line 52</span>
194
+ <span class="ruby-comment cmt"># File erubis/evaluator.rb, line 54</span>
195
195
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">result</span>(<span class="ruby-identifier">_binding_or_hash</span>=<span class="ruby-constant">TOPLEVEL_BINDING</span>)
196
196
  <span class="ruby-identifier">_arg</span> = <span class="ruby-identifier">_binding_or_hash</span>
197
197
  <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">_arg</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Hash</span>)
@@ -1 +1 @@
1
- Thu, 19 Jul 2007 13:15:03 +0900
1
+ Tue, 25 Sep 2007 07:56:39 +0900
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Thu Jul 19 13:15:03 +0900 2007</td>
59
+ <td>Tue Sep 25 07:56:38 +0900 2007</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -71,7 +71,7 @@
71
71
  <div id="description">
72
72
  <h1>README</h1>
73
73
  <table>
74
- <tr><td valign="top">release:</td><td>2.4.0
74
+ <tr><td valign="top">release:</td><td>2.4.1
75
75
 
76
76
  </td></tr>
77
77
  <tr><td valign="top">copyright:</td><td>copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 77 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 89 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 89 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 77 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 77 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Fri May 18 16:17:19 +0900 2007</td>
59
+ <td>Mon Sep 24 23:04:21 +0900 2007</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 95 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 77 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 77 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 77 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 77 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 77 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 77 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 77 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Fri May 18 16:17:19 +0900 2007</td>
59
+ <td>Mon Sep 10 16:23:59 +0900 2007</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 93 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 77 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Thu Jul 19 13:13:21 +0900 2007</td>
59
+ <td>Tue Sep 18 17:02:49 +0900 2007</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 91 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 94 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>
@@ -70,7 +70,7 @@
70
70
 
71
71
  <div id="description">
72
72
  <p>
73
- $Rev: 77 $ $Release: 2.4.0 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
73
+ $Rev: 77 $ $Release: 2.4.1 $ copyright(c) 2006-2007 kuwata-lab.com all rights reserved.
74
74
  </p>
75
75
 
76
76
  </div>