erubis 2.3.1 → 2.7.0
Sign up to get free protection for your applications and to get access to all the features.
- data/{CHANGES → CHANGES.txt} +373 -3
- data/MIT-LICENSE +1 -1
- data/README.txt +6 -5
- data/benchmark/bench.rb +18 -11
- data/bin/erubis +3 -4
- data/contrib/erubis +3462 -5
- data/contrib/inline-require +54 -28
- data/doc/docstyle.css +25 -4
- data/doc/users-guide.html +814 -110
- data/doc-api/classes/ActionView/TemplateHandlers/ErubisHandler.html +209 -0
- data/doc-api/classes/ActionView.html +105 -0
- data/doc-api/classes/Erubis/ArrayBufferEnhancer.html +14 -14
- data/doc-api/classes/Erubis/ArrayEnhancer.html +16 -16
- data/doc-api/classes/Erubis/Basic/Converter.html +36 -31
- data/doc-api/classes/Erubis/BiPatternEnhancer.html +16 -13
- data/doc-api/classes/Erubis/CGenerator.html +70 -70
- data/doc-api/classes/Erubis/Context.html +49 -49
- data/doc-api/classes/Erubis/Converter.html +30 -29
- data/doc-api/classes/Erubis/CppGenerator.html +382 -0
- data/doc-api/classes/Erubis/DeleteIndentEnhancer.html +7 -7
- data/doc-api/classes/Erubis/Ecpp.html +126 -0
- data/doc-api/classes/Erubis/Engine.html +46 -43
- data/doc-api/classes/Erubis/ErboutEnhancer.html +16 -16
- data/doc-api/classes/Erubis/EscapeEnhancer.html +7 -7
- data/doc-api/classes/Erubis/EscapedEcpp.html +120 -0
- data/doc-api/classes/Erubis/Evaluator.html +22 -22
- data/doc-api/classes/Erubis/Generator.html +70 -70
- data/doc-api/classes/Erubis/HeaderFooterEnhancer.html +18 -15
- data/doc-api/classes/Erubis/Helpers/RailsFormHelper.html +787 -0
- data/doc-api/classes/Erubis/Helpers/RailsHelper/TemplateConverter.html +213 -0
- data/doc-api/classes/Erubis/Helpers/RailsHelper.html +103 -54
- data/doc-api/classes/Erubis/Helpers.html +6 -1
- data/doc-api/classes/Erubis/InterpolationEnhancer.html +42 -41
- data/doc-api/classes/Erubis/JavaGenerator.html +69 -69
- data/doc-api/classes/Erubis/JavascriptGenerator.html +79 -74
- data/doc-api/classes/Erubis/Main.html +49 -48
- data/doc-api/classes/Erubis/NoCodeEnhancer.html +35 -35
- data/doc-api/classes/Erubis/NoTextEnhancer.html +7 -7
- data/doc-api/classes/Erubis/OptimizedEruby.html +7 -7
- data/doc-api/classes/Erubis/OptimizedGenerator.html +84 -84
- data/doc-api/classes/Erubis/OptimizedXmlEruby.html +7 -7
- data/doc-api/classes/Erubis/PI/Converter.html +23 -22
- data/doc-api/classes/Erubis/PI/Ec.html +7 -7
- data/doc-api/classes/Erubis/PI/Ecpp.html +166 -0
- data/doc-api/classes/Erubis/PI/Ejava.html +7 -7
- data/doc-api/classes/Erubis/PI/Ejavascript.html +7 -7
- data/doc-api/classes/Erubis/PI/Eperl.html +7 -7
- data/doc-api/classes/Erubis/PI/Ephp.html +7 -7
- data/doc-api/classes/Erubis/PI/Eruby.html +6 -6
- data/doc-api/classes/Erubis/PI/Escheme.html +7 -7
- data/doc-api/classes/Erubis/PI/TinyEruby.html +28 -27
- data/doc-api/classes/Erubis/PI.html +1 -0
- data/doc-api/classes/Erubis/PercentLineEnhancer.html +18 -29
- data/doc-api/classes/Erubis/PerlGenerator.html +63 -63
- data/doc-api/classes/Erubis/PhpGenerator.html +63 -63
- data/doc-api/classes/Erubis/PrefixedLineEnhancer.html +210 -0
- data/doc-api/classes/Erubis/PrefixedLineEruby.html +120 -0
- data/doc-api/classes/Erubis/PreprocessingEruby.html +183 -0
- data/doc-api/classes/Erubis/PreprocessingHelper.html +212 -0
- data/doc-api/classes/Erubis/PrintEnabledEnhancer.html +23 -23
- data/doc-api/classes/Erubis/PrintOutEnhancer.html +38 -38
- data/doc-api/classes/Erubis/RubyEvaluator.html +59 -22
- data/doc-api/classes/Erubis/RubyGenerator.html +53 -52
- data/doc-api/classes/Erubis/SchemeGenerator.html +70 -70
- data/doc-api/classes/Erubis/SimplifyEnhancer.html +10 -9
- data/doc-api/classes/Erubis/StdoutEnhancer.html +3 -3
- data/doc-api/classes/Erubis/StringBufferEnhancer.html +16 -16
- data/doc-api/classes/Erubis/TinyEruby.html +33 -33
- data/doc-api/classes/Erubis/XmlHelper.html +80 -15
- data/doc-api/classes/Erubis.html +25 -1
- data/doc-api/classes/Kernel.html +155 -0
- data/doc-api/created.rid +1 -1
- data/doc-api/files/README_txt.html +8 -8
- data/doc-api/files/erubis/context_rb.html +2 -2
- data/doc-api/files/erubis/converter_rb.html +3 -3
- data/doc-api/files/erubis/engine/ec_rb.html +2 -2
- data/doc-api/files/erubis/engine/ecpp_rb.html +115 -0
- data/doc-api/files/erubis/engine/ejava_rb.html +2 -2
- data/doc-api/files/erubis/engine/ejavascript_rb.html +2 -2
- data/doc-api/files/erubis/engine/enhanced_rb.html +2 -2
- data/doc-api/files/erubis/engine/eperl_rb.html +2 -2
- data/doc-api/files/erubis/engine/ephp_rb.html +2 -2
- data/doc-api/files/erubis/engine/eruby_rb.html +2 -2
- data/doc-api/files/erubis/engine/escheme_rb.html +2 -2
- data/doc-api/files/erubis/engine/optimized_rb.html +2 -2
- data/doc-api/files/erubis/engine_rb.html +2 -2
- data/doc-api/files/erubis/enhancer_rb.html +2 -2
- data/doc-api/files/erubis/error_rb.html +2 -2
- data/doc-api/files/erubis/evaluator_rb.html +2 -2
- data/doc-api/files/erubis/generator_rb.html +3 -3
- data/doc-api/files/erubis/helper_rb.html +2 -2
- data/doc-api/files/erubis/helpers/rails_form_helper_rb.html +107 -0
- data/doc-api/files/erubis/helpers/rails_helper_rb.html +3 -2
- data/doc-api/files/erubis/local-setting_rb.html +2 -2
- data/doc-api/files/erubis/main_rb.html +4 -2
- data/doc-api/files/erubis/preprocessing_rb.html +114 -0
- data/doc-api/files/erubis/tiny_rb.html +2 -2
- data/doc-api/files/erubis/util_rb.html +107 -0
- data/doc-api/files/erubis_rb.html +2 -2
- data/doc-api/fr_class_index.html +13 -0
- data/doc-api/fr_file_index.html +4 -0
- data/doc-api/fr_method_index.html +237 -179
- data/examples/basic/Makefile +7 -2
- data/examples/basic/example.ecpp +33 -0
- data/lib/erubis/context.rb +2 -3
- data/lib/erubis/converter.rb +17 -11
- data/lib/erubis/engine/ec.rb +2 -3
- data/lib/erubis/engine/ecpp.rb +113 -0
- data/lib/erubis/engine/ejava.rb +9 -10
- data/lib/erubis/engine/ejavascript.rb +14 -9
- data/lib/erubis/engine/enhanced.rb +7 -3
- data/lib/erubis/engine/eperl.rb +2 -3
- data/lib/erubis/engine/ephp.rb +2 -3
- data/lib/erubis/engine/eruby.rb +8 -8
- data/lib/erubis/engine/escheme.rb +2 -3
- data/lib/erubis/engine/optimized.rb +2 -3
- data/lib/erubis/engine.rb +13 -11
- data/lib/erubis/enhancer.rb +101 -34
- data/lib/erubis/error.rb +2 -3
- data/lib/erubis/evaluator.rb +27 -10
- data/lib/erubis/generator.rb +3 -4
- data/lib/erubis/helper.rb +14 -3
- data/lib/erubis/helpers/rails_form_helper.rb +197 -0
- data/lib/erubis/helpers/rails_helper.rb +219 -77
- data/lib/erubis/local-setting.rb +2 -3
- data/lib/erubis/main.rb +85 -60
- data/lib/erubis/preprocessing.rb +58 -0
- data/lib/erubis/tiny.rb +9 -9
- data/lib/erubis/util.rb +22 -0
- data/lib/erubis.rb +4 -4
- data/test/assert-text-equal.rb +2 -3
- data/test/data/users-guide/bufvar-example.rb +10 -0
- data/test/data/users-guide/bufvar-example.result +17 -0
- data/test/data/users-guide/def_method.rb +14 -0
- data/test/data/users-guide/def_method.result +3 -0
- data/test/data/users-guide/example.ecpp +30 -0
- data/test/data/users-guide/example1.rb +1 -0
- data/test/data/users-guide/example_c.result +22 -19
- data/test/data/users-guide/fasteruby-example.rb +8 -0
- data/test/data/users-guide/fasteruby-example.result +18 -0
- data/test/data/users-guide/main_program1.rb +8 -0
- data/test/data/users-guide/main_program1.result +6 -0
- data/test/data/users-guide/main_program2.rb +8 -0
- data/test/data/users-guide/main_program2.result +6 -0
- data/test/data/users-guide/percentline-example.rhtml +3 -1
- data/test/data/users-guide/percentline_example.result +5 -3
- data/test/data/users-guide/prefixedline-example.rb +9 -0
- data/test/data/users-guide/prefixedline-example.rhtml +6 -0
- data/test/data/users-guide/prefixedline_example.result +9 -0
- data/test/data/users-guide/tail_260.result +4 -0
- data/test/data/users-guide/tailnewline.rhtml +3 -0
- data/test/data/users-guide/template1.rhtml +4 -0
- data/test/data/users-guide/template2.rhtml +4 -0
- data/test/test-engines.rb +88 -5
- data/test/test-enhancers.rb +83 -6
- data/test/test-erubis.rb +115 -11
- data/test/test-index-cgi.rb +191 -0
- data/test/test-main.rb +143 -31
- data/test/test-users-guide.rb +20 -3
- data/test/test.rb +18 -3
- data/test/testutil.rb +44 -8
- metadata +104 -67
- data/contrib/action_view_base_rb.patch +0 -23
@@ -90,11 +90,11 @@ this is only for <a href="Eruby.html">Eruby</a>.
|
|
90
90
|
<h3 class="section-bar">Methods</h3>
|
91
91
|
|
92
92
|
<div class="name-list">
|
93
|
-
<a href="#
|
94
|
-
<a href="#
|
95
|
-
<a href="#
|
96
|
-
<a href="#
|
97
|
-
<a href="#
|
93
|
+
<a href="#M000213">_add_text_to_str</a>
|
94
|
+
<a href="#M000214">add_expr_escaped</a>
|
95
|
+
<a href="#M000215">add_expr_literal</a>
|
96
|
+
<a href="#M000212">add_text</a>
|
97
|
+
<a href="#M000211">convert_input</a>
|
98
98
|
</div>
|
99
99
|
</div>
|
100
100
|
|
@@ -116,46 +116,45 @@ this is only for <a href="Eruby.html">Eruby</a>.
|
|
116
116
|
<div id="methods">
|
117
117
|
<h3 class="section-bar">Public Instance methods</h3>
|
118
118
|
|
119
|
-
<div id="method-
|
120
|
-
<a name="
|
119
|
+
<div id="method-M000213" class="method-detail">
|
120
|
+
<a name="M000213"></a>
|
121
121
|
|
122
122
|
<div class="method-heading">
|
123
|
-
<a href="#
|
123
|
+
<a href="#M000213" class="method-signature">
|
124
124
|
<span class="method-name">_add_text_to_str</span><span class="method-args">(str, text)</span>
|
125
125
|
</a>
|
126
126
|
</div>
|
127
127
|
|
128
128
|
<div class="method-description">
|
129
129
|
<p><a class="source-toggle" href="#"
|
130
|
-
onclick="toggleCode('
|
131
|
-
<div class="method-source-code" id="
|
130
|
+
onclick="toggleCode('M000213-source');return false;">[Source]</a></p>
|
131
|
+
<div class="method-source-code" id="M000213-source">
|
132
132
|
<pre>
|
133
|
-
<span class="ruby-comment cmt"># File erubis/enhancer.rb, line
|
133
|
+
<span class="ruby-comment cmt"># File erubis/enhancer.rb, line 707</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
|
-
<span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub
|
137
|
-
<span class="ruby-identifier">str</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">text</span>
|
136
|
+
<span class="ruby-identifier">str</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/[`\#\\]/</span>, <span class="ruby-value str">'\\\\\&'</span>)
|
138
137
|
<span class="ruby-keyword kw">end</span>
|
139
138
|
</pre>
|
140
139
|
</div>
|
141
140
|
</div>
|
142
141
|
</div>
|
143
142
|
|
144
|
-
<div id="method-
|
145
|
-
<a name="
|
143
|
+
<div id="method-M000214" class="method-detail">
|
144
|
+
<a name="M000214"></a>
|
146
145
|
|
147
146
|
<div class="method-heading">
|
148
|
-
<a href="#
|
147
|
+
<a href="#M000214" class="method-signature">
|
149
148
|
<span class="method-name">add_expr_escaped</span><span class="method-args">(str, code)</span>
|
150
149
|
</a>
|
151
150
|
</div>
|
152
151
|
|
153
152
|
<div class="method-description">
|
154
153
|
<p><a class="source-toggle" href="#"
|
155
|
-
onclick="toggleCode('
|
156
|
-
<div class="method-source-code" id="
|
154
|
+
onclick="toggleCode('M000214-source');return false;">[Source]</a></p>
|
155
|
+
<div class="method-source-code" id="M000214-source">
|
157
156
|
<pre>
|
158
|
-
<span class="ruby-comment cmt"># File erubis/enhancer.rb, line
|
157
|
+
<span class="ruby-comment cmt"># File erubis/enhancer.rb, line 712</span>
|
159
158
|
<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
159
|
<span class="ruby-identifier">str</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"\#{#{escaped_expr(code)}}"</span>
|
161
160
|
<span class="ruby-keyword kw">end</span>
|
@@ -164,21 +163,21 @@ this is only for <a href="Eruby.html">Eruby</a>.
|
|
164
163
|
</div>
|
165
164
|
</div>
|
166
165
|
|
167
|
-
<div id="method-
|
168
|
-
<a name="
|
166
|
+
<div id="method-M000215" class="method-detail">
|
167
|
+
<a name="M000215"></a>
|
169
168
|
|
170
169
|
<div class="method-heading">
|
171
|
-
<a href="#
|
170
|
+
<a href="#M000215" class="method-signature">
|
172
171
|
<span class="method-name">add_expr_literal</span><span class="method-args">(str, code)</span>
|
173
172
|
</a>
|
174
173
|
</div>
|
175
174
|
|
176
175
|
<div class="method-description">
|
177
176
|
<p><a class="source-toggle" href="#"
|
178
|
-
onclick="toggleCode('
|
179
|
-
<div class="method-source-code" id="
|
177
|
+
onclick="toggleCode('M000215-source');return false;">[Source]</a></p>
|
178
|
+
<div class="method-source-code" id="M000215-source">
|
180
179
|
<pre>
|
181
|
-
<span class="ruby-comment cmt"># File erubis/enhancer.rb, line
|
180
|
+
<span class="ruby-comment cmt"># File erubis/enhancer.rb, line 716</span>
|
182
181
|
<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
182
|
<span class="ruby-identifier">str</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"\#{#{code}}"</span>
|
184
183
|
<span class="ruby-keyword kw">end</span>
|
@@ -187,29 +186,29 @@ this is only for <a href="Eruby.html">Eruby</a>.
|
|
187
186
|
</div>
|
188
187
|
</div>
|
189
188
|
|
190
|
-
<div id="method-
|
191
|
-
<a name="
|
189
|
+
<div id="method-M000212" class="method-detail">
|
190
|
+
<a name="M000212"></a>
|
192
191
|
|
193
192
|
<div class="method-heading">
|
194
|
-
<a href="#
|
193
|
+
<a href="#M000212" class="method-signature">
|
195
194
|
<span class="method-name">add_text</span><span class="method-args">(src, text)</span>
|
196
195
|
</a>
|
197
196
|
</div>
|
198
197
|
|
199
198
|
<div class="method-description">
|
200
199
|
<p><a class="source-toggle" href="#"
|
201
|
-
onclick="toggleCode('
|
202
|
-
<div class="method-source-code" id="
|
200
|
+
onclick="toggleCode('M000212-source');return false;">[Source]</a></p>
|
201
|
+
<div class="method-source-code" id="M000212-source">
|
203
202
|
<pre>
|
204
|
-
<span class="ruby-comment cmt"># File erubis/enhancer.rb, line
|
203
|
+
<span class="ruby-comment cmt"># File erubis/enhancer.rb, line 696</span>
|
205
204
|
<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
205
|
<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
206
|
<span class="ruby-comment cmt">#src << " _buf << %Q`" << text << "`;"</span>
|
208
207
|
<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>
|
209
208
|
<span class="ruby-identifier">text</span>[<span class="ruby-value">-1</span>] = <span class="ruby-value str">"\\n"</span>
|
210
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-
|
209
|
+
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" #{@bufvar} << %Q`#{text}`\n"</span>
|
211
210
|
<span class="ruby-keyword kw">else</span>
|
212
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-
|
211
|
+
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" #{@bufvar} << %Q`#{text}`;"</span>
|
213
212
|
<span class="ruby-keyword kw">end</span>
|
214
213
|
<span class="ruby-keyword kw">end</span>
|
215
214
|
</pre>
|
@@ -217,28 +216,28 @@ this is only for <a href="Eruby.html">Eruby</a>.
|
|
217
216
|
</div>
|
218
217
|
</div>
|
219
218
|
|
220
|
-
<div id="method-
|
221
|
-
<a name="
|
219
|
+
<div id="method-M000211" class="method-detail">
|
220
|
+
<a name="M000211"></a>
|
222
221
|
|
223
222
|
<div class="method-heading">
|
224
|
-
<a href="#
|
223
|
+
<a href="#M000211" class="method-signature">
|
225
224
|
<span class="method-name">convert_input</span><span class="method-args">(src, input)</span>
|
226
225
|
</a>
|
227
226
|
</div>
|
228
227
|
|
229
228
|
<div class="method-description">
|
230
229
|
<p><a class="source-toggle" href="#"
|
231
|
-
onclick="toggleCode('
|
232
|
-
<div class="method-source-code" id="
|
230
|
+
onclick="toggleCode('M000211-source');return false;">[Source]</a></p>
|
231
|
+
<div class="method-source-code" id="M000211-source">
|
233
232
|
<pre>
|
234
|
-
<span class="ruby-comment cmt"># File erubis/enhancer.rb, line
|
233
|
+
<span class="ruby-comment cmt"># File erubis/enhancer.rb, line 641</span>
|
235
234
|
<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
235
|
<span class="ruby-identifier">pat</span> = <span class="ruby-ivar">@pattern</span>
|
237
236
|
<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">'<% %>'</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>)
|
238
237
|
<span class="ruby-identifier">pos</span> = <span class="ruby-value">0</span>
|
239
238
|
<span class="ruby-identifier">is_bol</span> = <span class="ruby-keyword kw">true</span> <span class="ruby-comment cmt"># is beginning of line</span>
|
240
239
|
<span class="ruby-identifier">str</span> = <span class="ruby-value str">''</span>
|
241
|
-
<span class="ruby-identifier">input</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-identifier">regexp</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">indicator</span>, <span class="ruby-identifier">code</span>, <span class="ruby-identifier">rspace</span><span class="ruby-operator">|</span>
|
240
|
+
<span class="ruby-identifier">input</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-identifier">regexp</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">indicator</span>, <span class="ruby-identifier">code</span>, <span class="ruby-identifier">tailch</span>, <span class="ruby-identifier">rspace</span><span class="ruby-operator">|</span>
|
242
241
|
<span class="ruby-identifier">match</span> = <span class="ruby-constant">Regexp</span>.<span class="ruby-identifier">last_match</span>()
|
243
242
|
<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>
|
244
243
|
<span class="ruby-identifier">text</span> = <span class="ruby-identifier">input</span>[<span class="ruby-identifier">pos</span>, <span class="ruby-identifier">len</span>]
|
@@ -250,6 +249,7 @@ this is only for <a href="Eruby.html">Eruby</a>.
|
|
250
249
|
<span class="ruby-comment cmt">## * when '<%= %>', do nothing</span>
|
251
250
|
<span class="ruby-comment cmt">## * when '<% %>' or '<%# %>', delete spaces iff only spaces are around '<% %>'</span>
|
252
251
|
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">ch</span> <span class="ruby-operator">==</span> <span class="ruby-value">?=</span> <span class="ruby-comment cmt"># <%= %></span>
|
252
|
+
<span class="ruby-identifier">rspace</span> = <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tailch</span> <span class="ruby-operator">&&</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tailch</span>.<span class="ruby-identifier">empty?</span>
|
253
253
|
<span class="ruby-identifier">str</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">lspace</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">lspace</span>
|
254
254
|
<span class="ruby-identifier">add_expr</span>(<span class="ruby-identifier">str</span>, <span class="ruby-identifier">code</span>, <span class="ruby-identifier">indicator</span>)
|
255
255
|
<span class="ruby-identifier">str</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">rspace</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">rspace</span>
|
@@ -280,7 +280,8 @@ this is only for <a href="Eruby.html">Eruby</a>.
|
|
280
280
|
<span class="ruby-keyword kw">end</span>
|
281
281
|
<span class="ruby-keyword kw">end</span>
|
282
282
|
<span class="ruby-keyword kw">end</span>
|
283
|
-
<span class="ruby-
|
283
|
+
<span class="ruby-comment cmt">#rest = $' || input # ruby1.8</span>
|
284
|
+
<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">input</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">input</span>[<span class="ruby-identifier">pos</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>] <span class="ruby-comment cmt"># ruby1.9</span>
|
284
285
|
<span class="ruby-identifier">_add_text_to_str</span>(<span class="ruby-identifier">str</span>, <span class="ruby-identifier">rest</span>)
|
285
286
|
<span class="ruby-identifier">add_text</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">str</span>)
|
286
287
|
<span class="ruby-keyword kw">end</span>
|
@@ -80,15 +80,15 @@
|
|
80
80
|
<h3 class="section-bar">Methods</h3>
|
81
81
|
|
82
82
|
<div class="name-list">
|
83
|
-
<a href="#
|
84
|
-
<a href="#
|
85
|
-
<a href="#
|
86
|
-
<a href="#
|
87
|
-
<a href="#
|
88
|
-
<a href="#
|
89
|
-
<a href="#
|
90
|
-
<a href="#
|
91
|
-
<a href="#
|
83
|
+
<a href="#M000203">add_expr_debug</a>
|
84
|
+
<a href="#M000202">add_expr_escaped</a>
|
85
|
+
<a href="#M000201">add_expr_literal</a>
|
86
|
+
<a href="#M000204">add_postamble</a>
|
87
|
+
<a href="#M000197">add_preamble</a>
|
88
|
+
<a href="#M000200">add_stmt</a>
|
89
|
+
<a href="#M000199">add_text</a>
|
90
|
+
<a href="#M000198">escape_text</a>
|
91
|
+
<a href="#M000196">init_generator</a>
|
92
92
|
</div>
|
93
93
|
</div>
|
94
94
|
|
@@ -117,21 +117,21 @@
|
|
117
117
|
<div id="methods">
|
118
118
|
<h3 class="section-bar">Public Instance methods</h3>
|
119
119
|
|
120
|
-
<div id="method-
|
121
|
-
<a name="
|
120
|
+
<div id="method-M000203" class="method-detail">
|
121
|
+
<a name="M000203"></a>
|
122
122
|
|
123
123
|
<div class="method-heading">
|
124
|
-
<a href="#
|
124
|
+
<a href="#M000203" class="method-signature">
|
125
125
|
<span class="method-name">add_expr_debug</span><span class="method-args">(src, code)</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('
|
132
|
-
<div class="method-source-code" id="
|
131
|
+
onclick="toggleCode('M000203-source');return false;">[Source]</a></p>
|
132
|
+
<div class="method-source-code" id="M000203-source">
|
133
133
|
<pre>
|
134
|
-
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line
|
134
|
+
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line 68</span>
|
135
135
|
<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>)
|
136
136
|
<span class="ruby-identifier">code</span>.<span class="ruby-identifier">strip!</span>
|
137
137
|
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@indent</span> <span class="ruby-keyword kw">if</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>
|
@@ -142,21 +142,21 @@
|
|
142
142
|
</div>
|
143
143
|
</div>
|
144
144
|
|
145
|
-
<div id="method-
|
146
|
-
<a name="
|
145
|
+
<div id="method-M000202" class="method-detail">
|
146
|
+
<a name="M000202"></a>
|
147
147
|
|
148
148
|
<div class="method-heading">
|
149
|
-
<a href="#
|
149
|
+
<a href="#M000202" class="method-signature">
|
150
150
|
<span class="method-name">add_expr_escaped</span><span class="method-args">(src, code)</span>
|
151
151
|
</a>
|
152
152
|
</div>
|
153
153
|
|
154
154
|
<div class="method-description">
|
155
155
|
<p><a class="source-toggle" href="#"
|
156
|
-
onclick="toggleCode('
|
157
|
-
<div class="method-source-code" id="
|
156
|
+
onclick="toggleCode('M000202-source');return false;">[Source]</a></p>
|
157
|
+
<div class="method-source-code" id="M000202-source">
|
158
158
|
<pre>
|
159
|
-
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line
|
159
|
+
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line 64</span>
|
160
160
|
<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>)
|
161
161
|
<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>))
|
162
162
|
<span class="ruby-keyword kw">end</span>
|
@@ -165,94 +165,94 @@
|
|
165
165
|
</div>
|
166
166
|
</div>
|
167
167
|
|
168
|
-
<div id="method-
|
169
|
-
<a name="
|
168
|
+
<div id="method-M000201" class="method-detail">
|
169
|
+
<a name="M000201"></a>
|
170
170
|
|
171
171
|
<div class="method-heading">
|
172
|
-
<a href="#
|
172
|
+
<a href="#M000201" class="method-signature">
|
173
173
|
<span class="method-name">add_expr_literal</span><span class="method-args">(src, code)</span>
|
174
174
|
</a>
|
175
175
|
</div>
|
176
176
|
|
177
177
|
<div class="method-description">
|
178
178
|
<p><a class="source-toggle" href="#"
|
179
|
-
onclick="toggleCode('
|
180
|
-
<div class="method-source-code" id="
|
179
|
+
onclick="toggleCode('M000201-source');return false;">[Source]</a></p>
|
180
|
+
<div class="method-source-code" id="M000201-source">
|
181
181
|
<pre>
|
182
|
-
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line
|
182
|
+
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line 58</span>
|
183
183
|
<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>)
|
184
184
|
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@indent</span> <span class="ruby-keyword kw">if</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>
|
185
185
|
<span class="ruby-identifier">code</span>.<span class="ruby-identifier">strip!</span>
|
186
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" #{@
|
186
|
+
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" #{@bufvar}.append(#{code});"</span>
|
187
187
|
<span class="ruby-keyword kw">end</span>
|
188
188
|
</pre>
|
189
189
|
</div>
|
190
190
|
</div>
|
191
191
|
</div>
|
192
192
|
|
193
|
-
<div id="method-
|
194
|
-
<a name="
|
193
|
+
<div id="method-M000204" class="method-detail">
|
194
|
+
<a name="M000204"></a>
|
195
195
|
|
196
196
|
<div class="method-heading">
|
197
|
-
<a href="#
|
197
|
+
<a href="#M000204" class="method-signature">
|
198
198
|
<span class="method-name">add_postamble</span><span class="method-args">(src)</span>
|
199
199
|
</a>
|
200
200
|
</div>
|
201
201
|
|
202
202
|
<div class="method-description">
|
203
203
|
<p><a class="source-toggle" href="#"
|
204
|
-
onclick="toggleCode('
|
205
|
-
<div class="method-source-code" id="
|
204
|
+
onclick="toggleCode('M000204-source');return false;">[Source]</a></p>
|
205
|
+
<div class="method-source-code" id="M000204-source">
|
206
206
|
<pre>
|
207
|
-
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line
|
207
|
+
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line 74</span>
|
208
208
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_postamble</span>(<span class="ruby-identifier">src</span>)
|
209
209
|
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\n"</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>
|
210
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@indent</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"return "</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@
|
211
|
-
<span class="ruby-comment cmt">#src << @indent << "System.out.print(" << @
|
210
|
+
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@indent</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"return "</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@bufvar</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">".toString();\n"</span>
|
211
|
+
<span class="ruby-comment cmt">#src << @indent << "System.out.print(" << @bufvar << ".toString());\n"</span>
|
212
212
|
<span class="ruby-keyword kw">end</span>
|
213
213
|
</pre>
|
214
214
|
</div>
|
215
215
|
</div>
|
216
216
|
</div>
|
217
217
|
|
218
|
-
<div id="method-
|
219
|
-
<a name="
|
218
|
+
<div id="method-M000197" class="method-detail">
|
219
|
+
<a name="M000197"></a>
|
220
220
|
|
221
221
|
<div class="method-heading">
|
222
|
-
<a href="#
|
222
|
+
<a href="#M000197" class="method-signature">
|
223
223
|
<span class="method-name">add_preamble</span><span class="method-args">(src)</span>
|
224
224
|
</a>
|
225
225
|
</div>
|
226
226
|
|
227
227
|
<div class="method-description">
|
228
228
|
<p><a class="source-toggle" href="#"
|
229
|
-
onclick="toggleCode('
|
230
|
-
<div class="method-source-code" id="
|
229
|
+
onclick="toggleCode('M000197-source');return false;">[Source]</a></p>
|
230
|
+
<div class="method-source-code" id="M000197-source">
|
231
231
|
<pre>
|
232
|
-
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line
|
232
|
+
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line 32</span>
|
233
233
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_preamble</span>(<span class="ruby-identifier">src</span>)
|
234
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"#{@indent}#{@bufclass} #{@
|
234
|
+
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"#{@indent}#{@bufclass} #{@bufvar} = new #{@bufclass}();"</span>
|
235
235
|
<span class="ruby-keyword kw">end</span>
|
236
236
|
</pre>
|
237
237
|
</div>
|
238
238
|
</div>
|
239
239
|
</div>
|
240
240
|
|
241
|
-
<div id="method-
|
242
|
-
<a name="
|
241
|
+
<div id="method-M000200" class="method-detail">
|
242
|
+
<a name="M000200"></a>
|
243
243
|
|
244
244
|
<div class="method-heading">
|
245
|
-
<a href="#
|
245
|
+
<a href="#M000200" class="method-signature">
|
246
246
|
<span class="method-name">add_stmt</span><span class="method-args">(src, code)</span>
|
247
247
|
</a>
|
248
248
|
</div>
|
249
249
|
|
250
250
|
<div class="method-description">
|
251
251
|
<p><a class="source-toggle" href="#"
|
252
|
-
onclick="toggleCode('
|
253
|
-
<div class="method-source-code" id="
|
252
|
+
onclick="toggleCode('M000200-source');return false;">[Source]</a></p>
|
253
|
+
<div class="method-source-code" id="M000200-source">
|
254
254
|
<pre>
|
255
|
-
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line
|
255
|
+
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line 54</span>
|
256
256
|
<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>)
|
257
257
|
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">code</span>
|
258
258
|
<span class="ruby-keyword kw">end</span>
|
@@ -261,25 +261,25 @@
|
|
261
261
|
</div>
|
262
262
|
</div>
|
263
263
|
|
264
|
-
<div id="method-
|
265
|
-
<a name="
|
264
|
+
<div id="method-M000199" class="method-detail">
|
265
|
+
<a name="M000199"></a>
|
266
266
|
|
267
267
|
<div class="method-heading">
|
268
|
-
<a href="#
|
268
|
+
<a href="#M000199" class="method-signature">
|
269
269
|
<span class="method-name">add_text</span><span class="method-args">(src, text)</span>
|
270
270
|
</a>
|
271
271
|
</div>
|
272
272
|
|
273
273
|
<div class="method-description">
|
274
274
|
<p><a class="source-toggle" href="#"
|
275
|
-
onclick="toggleCode('
|
276
|
-
<div class="method-source-code" id="
|
275
|
+
onclick="toggleCode('M000199-source');return false;">[Source]</a></p>
|
276
|
+
<div class="method-source-code" id="M000199-source">
|
277
277
|
<pre>
|
278
|
-
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line
|
278
|
+
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line 41</span>
|
279
279
|
<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>)
|
280
280
|
<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>
|
281
281
|
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</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-ivar">@indent</span> <span class="ruby-operator">:</span> <span class="ruby-value str">' '</span>)
|
282
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@
|
282
|
+
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@bufvar</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">".append("</span>
|
283
283
|
<span class="ruby-identifier">i</span> = <span class="ruby-value">0</span>
|
284
284
|
<span class="ruby-identifier">text</span>.<span class="ruby-identifier">each_line</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
|
285
285
|
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\n"</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@indent</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">' + '</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">i</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
@@ -293,21 +293,21 @@
|
|
293
293
|
</div>
|
294
294
|
</div>
|
295
295
|
|
296
|
-
<div id="method-
|
297
|
-
<a name="
|
296
|
+
<div id="method-M000198" class="method-detail">
|
297
|
+
<a name="M000198"></a>
|
298
298
|
|
299
299
|
<div class="method-heading">
|
300
|
-
<a href="#
|
300
|
+
<a href="#M000198" class="method-signature">
|
301
301
|
<span class="method-name">escape_text</span><span class="method-args">(text)</span>
|
302
302
|
</a>
|
303
303
|
</div>
|
304
304
|
|
305
305
|
<div class="method-description">
|
306
306
|
<p><a class="source-toggle" href="#"
|
307
|
-
onclick="toggleCode('
|
308
|
-
<div class="method-source-code" id="
|
307
|
+
onclick="toggleCode('M000198-source');return false;">[Source]</a></p>
|
308
|
+
<div class="method-source-code" id="M000198-source">
|
309
309
|
<pre>
|
310
|
-
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line
|
310
|
+
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line 36</span>
|
311
311
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">escape_text</span>(<span class="ruby-identifier">text</span>)
|
312
312
|
<span class="ruby-ivar">@@table_</span> <span class="ruby-operator">||=</span> { <span class="ruby-value str">"\r"</span>=<span class="ruby-operator">></span><span class="ruby-value str">"\\r"</span>, <span class="ruby-value str">"\n"</span>=<span class="ruby-operator">></span><span class="ruby-value str">"\\n"</span>, <span class="ruby-value str">"\t"</span>=<span class="ruby-operator">></span><span class="ruby-value str">"\\t"</span>, <span class="ruby-value str">'"'</span>=<span class="ruby-operator">></span><span class="ruby-value str">'\\"'</span>, <span class="ruby-value str">"\\"</span>=<span class="ruby-operator">></span><span class="ruby-value str">"\\\\"</span> }
|
313
313
|
<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"\\]/</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>
|
@@ -317,26 +317,26 @@
|
|
317
317
|
</div>
|
318
318
|
</div>
|
319
319
|
|
320
|
-
<div id="method-
|
321
|
-
<a name="
|
320
|
+
<div id="method-M000196" class="method-detail">
|
321
|
+
<a name="M000196"></a>
|
322
322
|
|
323
323
|
<div class="method-heading">
|
324
|
-
<a href="#
|
324
|
+
<a href="#M000196" class="method-signature">
|
325
325
|
<span class="method-name">init_generator</span><span class="method-args">(properties={})</span>
|
326
326
|
</a>
|
327
327
|
</div>
|
328
328
|
|
329
329
|
<div class="method-description">
|
330
330
|
<p><a class="source-toggle" href="#"
|
331
|
-
onclick="toggleCode('
|
332
|
-
<div class="method-source-code" id="
|
331
|
+
onclick="toggleCode('M000196-source');return false;">[Source]</a></p>
|
332
|
+
<div class="method-source-code" id="M000196-source">
|
333
333
|
<pre>
|
334
|
-
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line
|
334
|
+
<span class="ruby-comment cmt"># File erubis/engine/ejava.rb, line 24</span>
|
335
335
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">init_generator</span>(<span class="ruby-identifier">properties</span>={})
|
336
336
|
<span class="ruby-keyword kw">super</span>
|
337
337
|
<span class="ruby-ivar">@escapefunc</span> <span class="ruby-operator">||=</span> <span class="ruby-value str">'escape'</span>
|
338
338
|
<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>
|
339
|
-
<span class="ruby-ivar">@
|
339
|
+
<span class="ruby-ivar">@bufvar</span> = <span class="ruby-identifier">properties</span>[<span class="ruby-identifier">:bufvar</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">'_buf'</span>
|
340
340
|
<span class="ruby-ivar">@bufclass</span> = <span class="ruby-identifier">properties</span>[<span class="ruby-identifier">:bufclass</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">'StringBuffer'</span>
|
341
341
|
<span class="ruby-keyword kw">end</span>
|
342
342
|
</pre>
|