erubis 2.3.1 → 2.7.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 (163) hide show
  1. data/{CHANGES → CHANGES.txt} +373 -3
  2. data/MIT-LICENSE +1 -1
  3. data/README.txt +6 -5
  4. data/benchmark/bench.rb +18 -11
  5. data/bin/erubis +3 -4
  6. data/contrib/erubis +3462 -5
  7. data/contrib/inline-require +54 -28
  8. data/doc/docstyle.css +25 -4
  9. data/doc/users-guide.html +814 -110
  10. data/doc-api/classes/ActionView/TemplateHandlers/ErubisHandler.html +209 -0
  11. data/doc-api/classes/ActionView.html +105 -0
  12. data/doc-api/classes/Erubis/ArrayBufferEnhancer.html +14 -14
  13. data/doc-api/classes/Erubis/ArrayEnhancer.html +16 -16
  14. data/doc-api/classes/Erubis/Basic/Converter.html +36 -31
  15. data/doc-api/classes/Erubis/BiPatternEnhancer.html +16 -13
  16. data/doc-api/classes/Erubis/CGenerator.html +70 -70
  17. data/doc-api/classes/Erubis/Context.html +49 -49
  18. data/doc-api/classes/Erubis/Converter.html +30 -29
  19. data/doc-api/classes/Erubis/CppGenerator.html +382 -0
  20. data/doc-api/classes/Erubis/DeleteIndentEnhancer.html +7 -7
  21. data/doc-api/classes/Erubis/Ecpp.html +126 -0
  22. data/doc-api/classes/Erubis/Engine.html +46 -43
  23. data/doc-api/classes/Erubis/ErboutEnhancer.html +16 -16
  24. data/doc-api/classes/Erubis/EscapeEnhancer.html +7 -7
  25. data/doc-api/classes/Erubis/EscapedEcpp.html +120 -0
  26. data/doc-api/classes/Erubis/Evaluator.html +22 -22
  27. data/doc-api/classes/Erubis/Generator.html +70 -70
  28. data/doc-api/classes/Erubis/HeaderFooterEnhancer.html +18 -15
  29. data/doc-api/classes/Erubis/Helpers/RailsFormHelper.html +787 -0
  30. data/doc-api/classes/Erubis/Helpers/RailsHelper/TemplateConverter.html +213 -0
  31. data/doc-api/classes/Erubis/Helpers/RailsHelper.html +103 -54
  32. data/doc-api/classes/Erubis/Helpers.html +6 -1
  33. data/doc-api/classes/Erubis/InterpolationEnhancer.html +42 -41
  34. data/doc-api/classes/Erubis/JavaGenerator.html +69 -69
  35. data/doc-api/classes/Erubis/JavascriptGenerator.html +79 -74
  36. data/doc-api/classes/Erubis/Main.html +49 -48
  37. data/doc-api/classes/Erubis/NoCodeEnhancer.html +35 -35
  38. data/doc-api/classes/Erubis/NoTextEnhancer.html +7 -7
  39. data/doc-api/classes/Erubis/OptimizedEruby.html +7 -7
  40. data/doc-api/classes/Erubis/OptimizedGenerator.html +84 -84
  41. data/doc-api/classes/Erubis/OptimizedXmlEruby.html +7 -7
  42. data/doc-api/classes/Erubis/PI/Converter.html +23 -22
  43. data/doc-api/classes/Erubis/PI/Ec.html +7 -7
  44. data/doc-api/classes/Erubis/PI/Ecpp.html +166 -0
  45. data/doc-api/classes/Erubis/PI/Ejava.html +7 -7
  46. data/doc-api/classes/Erubis/PI/Ejavascript.html +7 -7
  47. data/doc-api/classes/Erubis/PI/Eperl.html +7 -7
  48. data/doc-api/classes/Erubis/PI/Ephp.html +7 -7
  49. data/doc-api/classes/Erubis/PI/Eruby.html +6 -6
  50. data/doc-api/classes/Erubis/PI/Escheme.html +7 -7
  51. data/doc-api/classes/Erubis/PI/TinyEruby.html +28 -27
  52. data/doc-api/classes/Erubis/PI.html +1 -0
  53. data/doc-api/classes/Erubis/PercentLineEnhancer.html +18 -29
  54. data/doc-api/classes/Erubis/PerlGenerator.html +63 -63
  55. data/doc-api/classes/Erubis/PhpGenerator.html +63 -63
  56. data/doc-api/classes/Erubis/PrefixedLineEnhancer.html +210 -0
  57. data/doc-api/classes/Erubis/PrefixedLineEruby.html +120 -0
  58. data/doc-api/classes/Erubis/PreprocessingEruby.html +183 -0
  59. data/doc-api/classes/Erubis/PreprocessingHelper.html +212 -0
  60. data/doc-api/classes/Erubis/PrintEnabledEnhancer.html +23 -23
  61. data/doc-api/classes/Erubis/PrintOutEnhancer.html +38 -38
  62. data/doc-api/classes/Erubis/RubyEvaluator.html +59 -22
  63. data/doc-api/classes/Erubis/RubyGenerator.html +53 -52
  64. data/doc-api/classes/Erubis/SchemeGenerator.html +70 -70
  65. data/doc-api/classes/Erubis/SimplifyEnhancer.html +10 -9
  66. data/doc-api/classes/Erubis/StdoutEnhancer.html +3 -3
  67. data/doc-api/classes/Erubis/StringBufferEnhancer.html +16 -16
  68. data/doc-api/classes/Erubis/TinyEruby.html +33 -33
  69. data/doc-api/classes/Erubis/XmlHelper.html +80 -15
  70. data/doc-api/classes/Erubis.html +25 -1
  71. data/doc-api/classes/Kernel.html +155 -0
  72. data/doc-api/created.rid +1 -1
  73. data/doc-api/files/README_txt.html +8 -8
  74. data/doc-api/files/erubis/context_rb.html +2 -2
  75. data/doc-api/files/erubis/converter_rb.html +3 -3
  76. data/doc-api/files/erubis/engine/ec_rb.html +2 -2
  77. data/doc-api/files/erubis/engine/ecpp_rb.html +115 -0
  78. data/doc-api/files/erubis/engine/ejava_rb.html +2 -2
  79. data/doc-api/files/erubis/engine/ejavascript_rb.html +2 -2
  80. data/doc-api/files/erubis/engine/enhanced_rb.html +2 -2
  81. data/doc-api/files/erubis/engine/eperl_rb.html +2 -2
  82. data/doc-api/files/erubis/engine/ephp_rb.html +2 -2
  83. data/doc-api/files/erubis/engine/eruby_rb.html +2 -2
  84. data/doc-api/files/erubis/engine/escheme_rb.html +2 -2
  85. data/doc-api/files/erubis/engine/optimized_rb.html +2 -2
  86. data/doc-api/files/erubis/engine_rb.html +2 -2
  87. data/doc-api/files/erubis/enhancer_rb.html +2 -2
  88. data/doc-api/files/erubis/error_rb.html +2 -2
  89. data/doc-api/files/erubis/evaluator_rb.html +2 -2
  90. data/doc-api/files/erubis/generator_rb.html +3 -3
  91. data/doc-api/files/erubis/helper_rb.html +2 -2
  92. data/doc-api/files/erubis/helpers/rails_form_helper_rb.html +107 -0
  93. data/doc-api/files/erubis/helpers/rails_helper_rb.html +3 -2
  94. data/doc-api/files/erubis/local-setting_rb.html +2 -2
  95. data/doc-api/files/erubis/main_rb.html +4 -2
  96. data/doc-api/files/erubis/preprocessing_rb.html +114 -0
  97. data/doc-api/files/erubis/tiny_rb.html +2 -2
  98. data/doc-api/files/erubis/util_rb.html +107 -0
  99. data/doc-api/files/erubis_rb.html +2 -2
  100. data/doc-api/fr_class_index.html +13 -0
  101. data/doc-api/fr_file_index.html +4 -0
  102. data/doc-api/fr_method_index.html +237 -179
  103. data/examples/basic/Makefile +7 -2
  104. data/examples/basic/example.ecpp +33 -0
  105. data/lib/erubis/context.rb +2 -3
  106. data/lib/erubis/converter.rb +17 -11
  107. data/lib/erubis/engine/ec.rb +2 -3
  108. data/lib/erubis/engine/ecpp.rb +113 -0
  109. data/lib/erubis/engine/ejava.rb +9 -10
  110. data/lib/erubis/engine/ejavascript.rb +14 -9
  111. data/lib/erubis/engine/enhanced.rb +7 -3
  112. data/lib/erubis/engine/eperl.rb +2 -3
  113. data/lib/erubis/engine/ephp.rb +2 -3
  114. data/lib/erubis/engine/eruby.rb +8 -8
  115. data/lib/erubis/engine/escheme.rb +2 -3
  116. data/lib/erubis/engine/optimized.rb +2 -3
  117. data/lib/erubis/engine.rb +13 -11
  118. data/lib/erubis/enhancer.rb +101 -34
  119. data/lib/erubis/error.rb +2 -3
  120. data/lib/erubis/evaluator.rb +27 -10
  121. data/lib/erubis/generator.rb +3 -4
  122. data/lib/erubis/helper.rb +14 -3
  123. data/lib/erubis/helpers/rails_form_helper.rb +197 -0
  124. data/lib/erubis/helpers/rails_helper.rb +219 -77
  125. data/lib/erubis/local-setting.rb +2 -3
  126. data/lib/erubis/main.rb +85 -60
  127. data/lib/erubis/preprocessing.rb +58 -0
  128. data/lib/erubis/tiny.rb +9 -9
  129. data/lib/erubis/util.rb +22 -0
  130. data/lib/erubis.rb +4 -4
  131. data/test/assert-text-equal.rb +2 -3
  132. data/test/data/users-guide/bufvar-example.rb +10 -0
  133. data/test/data/users-guide/bufvar-example.result +17 -0
  134. data/test/data/users-guide/def_method.rb +14 -0
  135. data/test/data/users-guide/def_method.result +3 -0
  136. data/test/data/users-guide/example.ecpp +30 -0
  137. data/test/data/users-guide/example1.rb +1 -0
  138. data/test/data/users-guide/example_c.result +22 -19
  139. data/test/data/users-guide/fasteruby-example.rb +8 -0
  140. data/test/data/users-guide/fasteruby-example.result +18 -0
  141. data/test/data/users-guide/main_program1.rb +8 -0
  142. data/test/data/users-guide/main_program1.result +6 -0
  143. data/test/data/users-guide/main_program2.rb +8 -0
  144. data/test/data/users-guide/main_program2.result +6 -0
  145. data/test/data/users-guide/percentline-example.rhtml +3 -1
  146. data/test/data/users-guide/percentline_example.result +5 -3
  147. data/test/data/users-guide/prefixedline-example.rb +9 -0
  148. data/test/data/users-guide/prefixedline-example.rhtml +6 -0
  149. data/test/data/users-guide/prefixedline_example.result +9 -0
  150. data/test/data/users-guide/tail_260.result +4 -0
  151. data/test/data/users-guide/tailnewline.rhtml +3 -0
  152. data/test/data/users-guide/template1.rhtml +4 -0
  153. data/test/data/users-guide/template2.rhtml +4 -0
  154. data/test/test-engines.rb +88 -5
  155. data/test/test-enhancers.rb +83 -6
  156. data/test/test-erubis.rb +115 -11
  157. data/test/test-index-cgi.rb +191 -0
  158. data/test/test-main.rb +143 -31
  159. data/test/test-users-guide.rb +20 -3
  160. data/test/test.rb +18 -3
  161. data/test/testutil.rb +44 -8
  162. metadata +104 -67
  163. data/contrib/action_view_base_rb.patch +0 -23
@@ -95,11 +95,11 @@ this is language independent.
95
95
  <h3 class="section-bar">Methods</h3>
96
96
 
97
97
  <div class="name-list">
98
- <a href="#M000004">add_expr</a>&nbsp;&nbsp;
99
- <a href="#M000002">add_postamble</a>&nbsp;&nbsp;
100
- <a href="#M000001">add_preamble</a>&nbsp;&nbsp;
101
- <a href="#M000005">add_stmt</a>&nbsp;&nbsp;
102
- <a href="#M000003">add_text</a>&nbsp;&nbsp;
98
+ <a href="#M000009">add_expr</a>&nbsp;&nbsp;
99
+ <a href="#M000007">add_postamble</a>&nbsp;&nbsp;
100
+ <a href="#M000006">add_preamble</a>&nbsp;&nbsp;
101
+ <a href="#M000010">add_stmt</a>&nbsp;&nbsp;
102
+ <a href="#M000008">add_text</a>&nbsp;&nbsp;
103
103
  </div>
104
104
  </div>
105
105
 
@@ -121,21 +121,21 @@ this is language independent.
121
121
  <div id="methods">
122
122
  <h3 class="section-bar">Public Instance methods</h3>
123
123
 
124
- <div id="method-M000004" class="method-detail">
125
- <a name="M000004"></a>
124
+ <div id="method-M000009" class="method-detail">
125
+ <a name="M000009"></a>
126
126
 
127
127
  <div class="method-heading">
128
- <a href="#M000004" class="method-signature">
128
+ <a href="#M000009" class="method-signature">
129
129
  <span class="method-name">add_expr</span><span class="method-args">(src, code, indicator)</span>
130
130
  </a>
131
131
  </div>
132
132
 
133
133
  <div class="method-description">
134
134
  <p><a class="source-toggle" href="#"
135
- onclick="toggleCode('M000004-source');return false;">[Source]</a></p>
136
- <div class="method-source-code" id="M000004-source">
135
+ onclick="toggleCode('M000009-source');return false;">[Source]</a></p>
136
+ <div class="method-source-code" id="M000009-source">
137
137
  <pre>
138
- <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 318</span>
138
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 317</span>
139
139
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_expr</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">code</span>, <span class="ruby-identifier">indicator</span>)
140
140
  <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-operator">*</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">count</span>(<span class="ruby-value str">&quot;\n&quot;</span>)
141
141
  <span class="ruby-keyword kw">end</span>
@@ -144,21 +144,21 @@ this is language independent.
144
144
  </div>
145
145
  </div>
146
146
 
147
- <div id="method-M000002" class="method-detail">
148
- <a name="M000002"></a>
147
+ <div id="method-M000007" class="method-detail">
148
+ <a name="M000007"></a>
149
149
 
150
150
  <div class="method-heading">
151
- <a href="#M000002" class="method-signature">
151
+ <a href="#M000007" class="method-signature">
152
152
  <span class="method-name">add_postamble</span><span class="method-args">(src)</span>
153
153
  </a>
154
154
  </div>
155
155
 
156
156
  <div class="method-description">
157
157
  <p><a class="source-toggle" href="#"
158
- onclick="toggleCode('M000002-source');return false;">[Source]</a></p>
159
- <div class="method-source-code" id="M000002-source">
158
+ onclick="toggleCode('M000007-source');return false;">[Source]</a></p>
159
+ <div class="method-source-code" id="M000007-source">
160
160
  <pre>
161
- <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 311</span>
161
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 310</span>
162
162
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_postamble</span>(<span class="ruby-identifier">src</span>)
163
163
  <span class="ruby-keyword kw">end</span>
164
164
  </pre>
@@ -166,21 +166,21 @@ this is language independent.
166
166
  </div>
167
167
  </div>
168
168
 
169
- <div id="method-M000001" class="method-detail">
170
- <a name="M000001"></a>
169
+ <div id="method-M000006" class="method-detail">
170
+ <a name="M000006"></a>
171
171
 
172
172
  <div class="method-heading">
173
- <a href="#M000001" class="method-signature">
173
+ <a href="#M000006" class="method-signature">
174
174
  <span class="method-name">add_preamble</span><span class="method-args">(src)</span>
175
175
  </a>
176
176
  </div>
177
177
 
178
178
  <div class="method-description">
179
179
  <p><a class="source-toggle" href="#"
180
- onclick="toggleCode('M000001-source');return false;">[Source]</a></p>
181
- <div class="method-source-code" id="M000001-source">
180
+ onclick="toggleCode('M000006-source');return false;">[Source]</a></p>
181
+ <div class="method-source-code" id="M000006-source">
182
182
  <pre>
183
- <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 308</span>
183
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 307</span>
184
184
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_preamble</span>(<span class="ruby-identifier">src</span>)
185
185
  <span class="ruby-keyword kw">end</span>
186
186
  </pre>
@@ -188,21 +188,21 @@ this is language independent.
188
188
  </div>
189
189
  </div>
190
190
 
191
- <div id="method-M000005" class="method-detail">
192
- <a name="M000005"></a>
191
+ <div id="method-M000010" class="method-detail">
192
+ <a name="M000010"></a>
193
193
 
194
194
  <div class="method-heading">
195
- <a href="#M000005" class="method-signature">
195
+ <a href="#M000010" class="method-signature">
196
196
  <span class="method-name">add_stmt</span><span class="method-args">(src, code)</span>
197
197
  </a>
198
198
  </div>
199
199
 
200
200
  <div class="method-description">
201
201
  <p><a class="source-toggle" href="#"
202
- onclick="toggleCode('M000005-source');return false;">[Source]</a></p>
203
- <div class="method-source-code" id="M000005-source">
202
+ onclick="toggleCode('M000010-source');return false;">[Source]</a></p>
203
+ <div class="method-source-code" id="M000010-source">
204
204
  <pre>
205
- <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 322</span>
205
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 321</span>
206
206
  <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>)
207
207
  <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-operator">*</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">count</span>(<span class="ruby-value str">&quot;\n&quot;</span>)
208
208
  <span class="ruby-keyword kw">end</span>
@@ -211,21 +211,21 @@ this is language independent.
211
211
  </div>
212
212
  </div>
213
213
 
214
- <div id="method-M000003" class="method-detail">
215
- <a name="M000003"></a>
214
+ <div id="method-M000008" class="method-detail">
215
+ <a name="M000008"></a>
216
216
 
217
217
  <div class="method-heading">
218
- <a href="#M000003" class="method-signature">
218
+ <a href="#M000008" class="method-signature">
219
219
  <span class="method-name">add_text</span><span class="method-args">(src, text)</span>
220
220
  </a>
221
221
  </div>
222
222
 
223
223
  <div class="method-description">
224
224
  <p><a class="source-toggle" href="#"
225
- onclick="toggleCode('M000003-source');return false;">[Source]</a></p>
226
- <div class="method-source-code" id="M000003-source">
225
+ onclick="toggleCode('M000008-source');return false;">[Source]</a></p>
226
+ <div class="method-source-code" id="M000008-source">
227
227
  <pre>
228
- <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 314</span>
228
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 313</span>
229
229
  <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>)
230
230
  <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">text</span>
231
231
  <span class="ruby-keyword kw">end</span>
@@ -95,7 +95,7 @@ this is language independent.
95
95
  <h3 class="section-bar">Methods</h3>
96
96
 
97
97
  <div class="name-list">
98
- <a href="#M000151">add_text</a>&nbsp;&nbsp;
98
+ <a href="#M000177">add_text</a>&nbsp;&nbsp;
99
99
  </div>
100
100
  </div>
101
101
 
@@ -117,21 +117,21 @@ this is language independent.
117
117
  <div id="methods">
118
118
  <h3 class="section-bar">Public Instance methods</h3>
119
119
 
120
- <div id="method-M000151" class="method-detail">
121
- <a name="M000151"></a>
120
+ <div id="method-M000177" class="method-detail">
121
+ <a name="M000177"></a>
122
122
 
123
123
  <div class="method-heading">
124
- <a href="#M000151" class="method-signature">
124
+ <a href="#M000177" class="method-signature">
125
125
  <span class="method-name">add_text</span><span class="method-args">(src, text)</span>
126
126
  </a>
127
127
  </div>
128
128
 
129
129
  <div class="method-description">
130
130
  <p><a class="source-toggle" href="#"
131
- onclick="toggleCode('M000151-source');return false;">[Source]</a></p>
132
- <div class="method-source-code" id="M000151-source">
131
+ onclick="toggleCode('M000177-source');return false;">[Source]</a></p>
132
+ <div class="method-source-code" id="M000177-source">
133
133
  <pre>
134
- <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 283</span>
134
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 282</span>
135
135
  <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>)
136
136
  <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-operator">*</span> <span class="ruby-identifier">text</span>.<span class="ruby-identifier">count</span>(<span class="ruby-value str">&quot;\n&quot;</span>))
137
137
  <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">text</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">!=</span> <span class="ruby-value">?\n</span>
@@ -94,7 +94,7 @@
94
94
  <h3 class="section-bar">Methods</h3>
95
95
 
96
96
  <div class="name-list">
97
- <a href="#M000170">init_converter</a>&nbsp;&nbsp;
97
+ <a href="#M000227">init_converter</a>&nbsp;&nbsp;
98
98
  </div>
99
99
  </div>
100
100
 
@@ -124,21 +124,21 @@
124
124
  <div id="methods">
125
125
  <h3 class="section-bar">Public Instance methods</h3>
126
126
 
127
- <div id="method-M000170" class="method-detail">
128
- <a name="M000170"></a>
127
+ <div id="method-M000227" class="method-detail">
128
+ <a name="M000227"></a>
129
129
 
130
130
  <div class="method-heading">
131
- <a href="#M000170" class="method-signature">
131
+ <a href="#M000227" class="method-signature">
132
132
  <span class="method-name">init_converter</span><span class="method-args">(properties={})</span>
133
133
  </a>
134
134
  </div>
135
135
 
136
136
  <div class="method-description">
137
137
  <p><a class="source-toggle" href="#"
138
- onclick="toggleCode('M000170-source');return false;">[Source]</a></p>
139
- <div class="method-source-code" id="M000170-source">
138
+ onclick="toggleCode('M000227-source');return false;">[Source]</a></p>
139
+ <div class="method-source-code" id="M000227-source">
140
140
  <pre>
141
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 107</span>
141
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 106</span>
142
142
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">init_converter</span>(<span class="ruby-identifier">properties</span>={})
143
143
  <span class="ruby-ivar">@pi</span> = <span class="ruby-value str">'rb'</span>
144
144
  <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">properties</span>)
@@ -80,18 +80,18 @@
80
80
  <h3 class="section-bar">Methods</h3>
81
81
 
82
82
  <div class="name-list">
83
- <a href="#M000105">add_expr_debug</a>&nbsp;&nbsp;
84
- <a href="#M000104">add_expr_escaped</a>&nbsp;&nbsp;
85
- <a href="#M000103">add_expr_literal</a>&nbsp;&nbsp;
86
- <a href="#M000106">add_postamble</a>&nbsp;&nbsp;
87
- <a href="#M000100">add_preamble</a>&nbsp;&nbsp;
88
- <a href="#M000102">add_stmt</a>&nbsp;&nbsp;
89
- <a href="#M000101">add_text</a>&nbsp;&nbsp;
90
- <a href="#M000096">escape_text</a>&nbsp;&nbsp;
91
- <a href="#M000097">escaped_expr</a>&nbsp;&nbsp;
92
- <a href="#M000095">init_generator</a>&nbsp;&nbsp;
93
- <a href="#M000098">switch_to_expr</a>&nbsp;&nbsp;
94
- <a href="#M000099">switch_to_stmt</a>&nbsp;&nbsp;
83
+ <a href="#M000035">add_expr_debug</a>&nbsp;&nbsp;
84
+ <a href="#M000034">add_expr_escaped</a>&nbsp;&nbsp;
85
+ <a href="#M000033">add_expr_literal</a>&nbsp;&nbsp;
86
+ <a href="#M000036">add_postamble</a>&nbsp;&nbsp;
87
+ <a href="#M000030">add_preamble</a>&nbsp;&nbsp;
88
+ <a href="#M000032">add_stmt</a>&nbsp;&nbsp;
89
+ <a href="#M000031">add_text</a>&nbsp;&nbsp;
90
+ <a href="#M000026">escape_text</a>&nbsp;&nbsp;
91
+ <a href="#M000027">escaped_expr</a>&nbsp;&nbsp;
92
+ <a href="#M000025">init_generator</a>&nbsp;&nbsp;
93
+ <a href="#M000028">switch_to_expr</a>&nbsp;&nbsp;
94
+ <a href="#M000029">switch_to_stmt</a>&nbsp;&nbsp;
95
95
  </div>
96
96
  </div>
97
97
 
@@ -120,21 +120,21 @@
120
120
  <div id="methods">
121
121
  <h3 class="section-bar">Public Instance methods</h3>
122
122
 
123
- <div id="method-M000095" class="method-detail">
124
- <a name="M000095"></a>
123
+ <div id="method-M000025" class="method-detail">
124
+ <a name="M000025"></a>
125
125
 
126
126
  <div class="method-heading">
127
- <a href="#M000095" class="method-signature">
127
+ <a href="#M000025" class="method-signature">
128
128
  <span class="method-name">init_generator</span><span class="method-args">(properties={})</span>
129
129
  </a>
130
130
  </div>
131
131
 
132
132
  <div class="method-description">
133
133
  <p><a class="source-toggle" href="#"
134
- onclick="toggleCode('M000095-source');return false;">[Source]</a></p>
135
- <div class="method-source-code" id="M000095-source">
134
+ onclick="toggleCode('M000025-source');return false;">[Source]</a></p>
135
+ <div class="method-source-code" id="M000025-source">
136
136
  <pre>
137
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 21</span>
137
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 20</span>
138
138
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">init_generator</span>(<span class="ruby-identifier">properties</span>={})
139
139
  <span class="ruby-keyword kw">super</span>
140
140
  <span class="ruby-ivar">@escapefunc</span> <span class="ruby-operator">||=</span> <span class="ruby-value str">&quot;Erubis::XmlHelper.escape_xml&quot;</span>
@@ -148,21 +148,21 @@
148
148
 
149
149
  <h3 class="section-bar">Protected Instance methods</h3>
150
150
 
151
- <div id="method-M000105" class="method-detail">
152
- <a name="M000105"></a>
151
+ <div id="method-M000035" class="method-detail">
152
+ <a name="M000035"></a>
153
153
 
154
154
  <div class="method-heading">
155
- <a href="#M000105" class="method-signature">
155
+ <a href="#M000035" class="method-signature">
156
156
  <span class="method-name">add_expr_debug</span><span class="method-args">(src, code)</span>
157
157
  </a>
158
158
  </div>
159
159
 
160
160
  <div class="method-description">
161
161
  <p><a class="source-toggle" href="#"
162
- onclick="toggleCode('M000105-source');return false;">[Source]</a></p>
163
- <div class="method-source-code" id="M000105-source">
162
+ onclick="toggleCode('M000035-source');return false;">[Source]</a></p>
163
+ <div class="method-source-code" id="M000035-source">
164
164
  <pre>
165
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 86</span>
165
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 85</span>
166
166
  <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>)
167
167
  <span class="ruby-identifier">code</span>.<span class="ruby-identifier">strip!</span>
168
168
  <span class="ruby-identifier">s</span> = (<span class="ruby-identifier">code</span>.<span class="ruby-identifier">dump</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/\A&quot;(.*)&quot;\z/</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">$1</span>
@@ -173,21 +173,21 @@
173
173
  </div>
174
174
  </div>
175
175
 
176
- <div id="method-M000104" class="method-detail">
177
- <a name="M000104"></a>
176
+ <div id="method-M000034" class="method-detail">
177
+ <a name="M000034"></a>
178
178
 
179
179
  <div class="method-heading">
180
- <a href="#M000104" class="method-signature">
180
+ <a href="#M000034" class="method-signature">
181
181
  <span class="method-name">add_expr_escaped</span><span class="method-args">(src, code)</span>
182
182
  </a>
183
183
  </div>
184
184
 
185
185
  <div class="method-description">
186
186
  <p><a class="source-toggle" href="#"
187
- onclick="toggleCode('M000104-source');return false;">[Source]</a></p>
188
- <div class="method-source-code" id="M000104-source">
187
+ onclick="toggleCode('M000034-source');return false;">[Source]</a></p>
188
+ <div class="method-source-code" id="M000034-source">
189
189
  <pre>
190
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 80</span>
190
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 79</span>
191
191
  <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>)
192
192
  <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@initialized</span>; <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;_buf = ''&quot;</span>; <span class="ruby-ivar">@initialized</span> = <span class="ruby-keyword kw">true</span>; <span class="ruby-keyword kw">end</span>
193
193
  <span class="ruby-identifier">switch_to_expr</span>(<span class="ruby-identifier">src</span>)
@@ -198,21 +198,21 @@
198
198
  </div>
199
199
  </div>
200
200
 
201
- <div id="method-M000103" class="method-detail">
202
- <a name="M000103"></a>
201
+ <div id="method-M000033" class="method-detail">
202
+ <a name="M000033"></a>
203
203
 
204
204
  <div class="method-heading">
205
- <a href="#M000103" class="method-signature">
205
+ <a href="#M000033" class="method-signature">
206
206
  <span class="method-name">add_expr_literal</span><span class="method-args">(src, code)</span>
207
207
  </a>
208
208
  </div>
209
209
 
210
210
  <div class="method-description">
211
211
  <p><a class="source-toggle" href="#"
212
- onclick="toggleCode('M000103-source');return false;">[Source]</a></p>
213
- <div class="method-source-code" id="M000103-source">
212
+ onclick="toggleCode('M000033-source');return false;">[Source]</a></p>
213
+ <div class="method-source-code" id="M000033-source">
214
214
  <pre>
215
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 74</span>
215
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 73</span>
216
216
  <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>)
217
217
  <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@initialized</span>; <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;_buf = ''&quot;</span>; <span class="ruby-ivar">@initialized</span> = <span class="ruby-keyword kw">true</span>; <span class="ruby-keyword kw">end</span>
218
218
  <span class="ruby-identifier">switch_to_expr</span>(<span class="ruby-identifier">src</span>)
@@ -223,21 +223,21 @@
223
223
  </div>
224
224
  </div>
225
225
 
226
- <div id="method-M000106" class="method-detail">
227
- <a name="M000106"></a>
226
+ <div id="method-M000036" class="method-detail">
227
+ <a name="M000036"></a>
228
228
 
229
229
  <div class="method-heading">
230
- <a href="#M000106" class="method-signature">
230
+ <a href="#M000036" class="method-signature">
231
231
  <span class="method-name">add_postamble</span><span class="method-args">(src)</span>
232
232
  </a>
233
233
  </div>
234
234
 
235
235
  <div class="method-description">
236
236
  <p><a class="source-toggle" href="#"
237
- onclick="toggleCode('M000106-source');return false;">[Source]</a></p>
238
- <div class="method-source-code" id="M000106-source">
237
+ onclick="toggleCode('M000036-source');return false;">[Source]</a></p>
238
+ <div class="method-source-code" id="M000036-source">
239
239
  <pre>
240
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 92</span>
240
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 91</span>
241
241
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_postamble</span>(<span class="ruby-identifier">src</span>)
242
242
  <span class="ruby-comment cmt">#super if @initialized</span>
243
243
  <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;\n_buf\n&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@initialized</span>
@@ -247,21 +247,21 @@
247
247
  </div>
248
248
  </div>
249
249
 
250
- <div id="method-M000100" class="method-detail">
251
- <a name="M000100"></a>
250
+ <div id="method-M000030" class="method-detail">
251
+ <a name="M000030"></a>
252
252
 
253
253
  <div class="method-heading">
254
- <a href="#M000100" class="method-signature">
254
+ <a href="#M000030" class="method-signature">
255
255
  <span class="method-name">add_preamble</span><span class="method-args">(src)</span>
256
256
  </a>
257
257
  </div>
258
258
 
259
259
  <div class="method-description">
260
260
  <p><a class="source-toggle" href="#"
261
- onclick="toggleCode('M000100-source');return false;">[Source]</a></p>
262
- <div class="method-source-code" id="M000100-source">
261
+ onclick="toggleCode('M000030-source');return false;">[Source]</a></p>
262
+ <div class="method-source-code" id="M000030-source">
263
263
  <pre>
264
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 51</span>
264
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 50</span>
265
265
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_preamble</span>(<span class="ruby-identifier">src</span>)
266
266
  <span class="ruby-comment cmt">#@initialized = false</span>
267
267
  <span class="ruby-comment cmt">#@prev_is_expr = false</span>
@@ -271,21 +271,21 @@
271
271
  </div>
272
272
  </div>
273
273
 
274
- <div id="method-M000102" class="method-detail">
275
- <a name="M000102"></a>
274
+ <div id="method-M000032" class="method-detail">
275
+ <a name="M000032"></a>
276
276
 
277
277
  <div class="method-heading">
278
- <a href="#M000102" class="method-signature">
278
+ <a href="#M000032" class="method-signature">
279
279
  <span class="method-name">add_stmt</span><span class="method-args">(src, code)</span>
280
280
  </a>
281
281
  </div>
282
282
 
283
283
  <div class="method-description">
284
284
  <p><a class="source-toggle" href="#"
285
- onclick="toggleCode('M000102-source');return false;">[Source]</a></p>
286
- <div class="method-source-code" id="M000102-source">
285
+ onclick="toggleCode('M000032-source');return false;">[Source]</a></p>
286
+ <div class="method-source-code" id="M000032-source">
287
287
  <pre>
288
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 67</span>
288
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 66</span>
289
289
  <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>)
290
290
  <span class="ruby-identifier">switch_to_stmt</span>(<span class="ruby-identifier">src</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@initialized</span>
291
291
  <span class="ruby-comment cmt">#super</span>
@@ -297,21 +297,21 @@
297
297
  </div>
298
298
  </div>
299
299
 
300
- <div id="method-M000101" class="method-detail">
301
- <a name="M000101"></a>
300
+ <div id="method-M000031" class="method-detail">
301
+ <a name="M000031"></a>
302
302
 
303
303
  <div class="method-heading">
304
- <a href="#M000101" class="method-signature">
304
+ <a href="#M000031" class="method-signature">
305
305
  <span class="method-name">add_text</span><span class="method-args">(src, text)</span>
306
306
  </a>
307
307
  </div>
308
308
 
309
309
  <div class="method-description">
310
310
  <p><a class="source-toggle" href="#"
311
- onclick="toggleCode('M000101-source');return false;">[Source]</a></p>
312
- <div class="method-source-code" id="M000101-source">
311
+ onclick="toggleCode('M000031-source');return false;">[Source]</a></p>
312
+ <div class="method-source-code" id="M000031-source">
313
313
  <pre>
314
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 56</span>
314
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 55</span>
315
315
  <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>)
316
316
  <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>
317
317
  <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@initialized</span>
@@ -327,21 +327,21 @@
327
327
  </div>
328
328
  </div>
329
329
 
330
- <div id="method-M000096" class="method-detail">
331
- <a name="M000096"></a>
330
+ <div id="method-M000026" class="method-detail">
331
+ <a name="M000026"></a>
332
332
 
333
333
  <div class="method-heading">
334
- <a href="#M000096" class="method-signature">
334
+ <a href="#M000026" class="method-signature">
335
335
  <span class="method-name">escape_text</span><span class="method-args">(text)</span>
336
336
  </a>
337
337
  </div>
338
338
 
339
339
  <div class="method-description">
340
340
  <p><a class="source-toggle" href="#"
341
- onclick="toggleCode('M000096-source');return false;">[Source]</a></p>
342
- <div class="method-source-code" id="M000096-source">
341
+ onclick="toggleCode('M000026-source');return false;">[Source]</a></p>
342
+ <div class="method-source-code" id="M000026-source">
343
343
  <pre>
344
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 30</span>
344
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 29</span>
345
345
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">escape_text</span>(<span class="ruby-identifier">text</span>)
346
346
  <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>) <span class="ruby-comment cmt"># &quot;'&quot; =&gt; &quot;\\'&quot;, '\\' =&gt; '\\\\'</span>
347
347
  <span class="ruby-keyword kw">end</span>
@@ -350,21 +350,21 @@
350
350
  </div>
351
351
  </div>
352
352
 
353
- <div id="method-M000097" class="method-detail">
354
- <a name="M000097"></a>
353
+ <div id="method-M000027" class="method-detail">
354
+ <a name="M000027"></a>
355
355
 
356
356
  <div class="method-heading">
357
- <a href="#M000097" class="method-signature">
357
+ <a href="#M000027" class="method-signature">
358
358
  <span class="method-name">escaped_expr</span><span class="method-args">(code)</span>
359
359
  </a>
360
360
  </div>
361
361
 
362
362
  <div class="method-description">
363
363
  <p><a class="source-toggle" href="#"
364
- onclick="toggleCode('M000097-source');return false;">[Source]</a></p>
365
- <div class="method-source-code" id="M000097-source">
364
+ onclick="toggleCode('M000027-source');return false;">[Source]</a></p>
365
+ <div class="method-source-code" id="M000027-source">
366
366
  <pre>
367
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 34</span>
367
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 33</span>
368
368
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">escaped_expr</span>(<span class="ruby-identifier">code</span>)
369
369
  <span class="ruby-ivar">@escapefunc</span> <span class="ruby-operator">||=</span> <span class="ruby-value str">'Erubis::XmlHelper.escape_xml'</span>
370
370
  <span class="ruby-keyword kw">return</span> <span class="ruby-node">&quot;#{@escapefunc}(#{code})&quot;</span>
@@ -374,21 +374,21 @@
374
374
  </div>
375
375
  </div>
376
376
 
377
- <div id="method-M000098" class="method-detail">
378
- <a name="M000098"></a>
377
+ <div id="method-M000028" class="method-detail">
378
+ <a name="M000028"></a>
379
379
 
380
380
  <div class="method-heading">
381
- <a href="#M000098" class="method-signature">
381
+ <a href="#M000028" class="method-signature">
382
382
  <span class="method-name">switch_to_expr</span><span class="method-args">(src)</span>
383
383
  </a>
384
384
  </div>
385
385
 
386
386
  <div class="method-description">
387
387
  <p><a class="source-toggle" href="#"
388
- onclick="toggleCode('M000098-source');return false;">[Source]</a></p>
389
- <div class="method-source-code" id="M000098-source">
388
+ onclick="toggleCode('M000028-source');return false;">[Source]</a></p>
389
+ <div class="method-source-code" id="M000028-source">
390
390
  <pre>
391
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 39</span>
391
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 38</span>
392
392
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">switch_to_expr</span>(<span class="ruby-identifier">src</span>)
393
393
  <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@prev_is_expr</span>
394
394
  <span class="ruby-ivar">@prev_is_expr</span> = <span class="ruby-keyword kw">true</span>
@@ -399,21 +399,21 @@
399
399
  </div>
400
400
  </div>
401
401
 
402
- <div id="method-M000099" class="method-detail">
403
- <a name="M000099"></a>
402
+ <div id="method-M000029" class="method-detail">
403
+ <a name="M000029"></a>
404
404
 
405
405
  <div class="method-heading">
406
- <a href="#M000099" class="method-signature">
406
+ <a href="#M000029" class="method-signature">
407
407
  <span class="method-name">switch_to_stmt</span><span class="method-args">(src)</span>
408
408
  </a>
409
409
  </div>
410
410
 
411
411
  <div class="method-description">
412
412
  <p><a class="source-toggle" href="#"
413
- onclick="toggleCode('M000099-source');return false;">[Source]</a></p>
414
- <div class="method-source-code" id="M000099-source">
413
+ onclick="toggleCode('M000029-source');return false;">[Source]</a></p>
414
+ <div class="method-source-code" id="M000029-source">
415
415
  <pre>
416
- <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 45</span>
416
+ <span class="ruby-comment cmt"># File erubis/engine/optimized.rb, line 44</span>
417
417
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">switch_to_stmt</span>(<span class="ruby-identifier">src</span>)
418
418
  <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@prev_is_expr</span>
419
419
  <span class="ruby-ivar">@prev_is_expr</span> = <span class="ruby-keyword kw">false</span>