kwartz 3.0.0 → 3.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +36 -1
- data/LGPL +504 -0
- data/README.txt +16 -2
- data/bin/kwartz +1 -1
- data/doc-api/classes/Kwartz.html +47 -1
- data/doc-api/classes/Kwartz/Assertion.html +6 -6
- data/doc-api/classes/Kwartz/AssertionError.html +6 -6
- data/doc-api/classes/Kwartz/AttrInfo.html +42 -42
- data/doc-api/classes/Kwartz/BaseError.html +12 -12
- data/doc-api/classes/Kwartz/BaseTranslator.html +210 -43
- data/doc-api/classes/Kwartz/CharacterType.html +24 -24
- data/doc-api/classes/Kwartz/CommandOptionError.html +7 -7
- data/doc-api/classes/Kwartz/CommandOptions.html +49 -49
- data/doc-api/classes/Kwartz/Config.html +6 -1
- data/doc-api/classes/Kwartz/ConvertError.html +14 -14
- data/doc-api/classes/Kwartz/Converter.html +31 -30
- data/doc-api/classes/Kwartz/CssStyleParser.html +79 -57
- data/doc-api/classes/Kwartz/Defun.html +313 -0
- data/doc-api/classes/Kwartz/DocumentRuleset.html +58 -58
- data/doc-api/classes/Kwartz/ElementExpander.html +32 -32
- data/doc-api/classes/Kwartz/ElementInfo.html +29 -29
- data/doc-api/classes/Kwartz/ElementRuleset.html +126 -96
- data/doc-api/classes/Kwartz/EperlHandler.html +108 -84
- data/doc-api/classes/Kwartz/EperlTranslator.html +7 -7
- data/doc-api/classes/Kwartz/ErubisHandler.html +2 -2
- data/doc-api/classes/Kwartz/ErubisTranslator.html +8 -8
- data/doc-api/classes/Kwartz/ErubyHandler.html +2 -220
- data/doc-api/classes/Kwartz/ErubyTranslator.html +7 -7
- data/doc-api/classes/Kwartz/ExpandStatement.html +20 -20
- data/doc-api/classes/Kwartz/Handler.html +122 -117
- data/doc-api/classes/Kwartz/HandlerArgument.html +215 -0
- data/doc-api/classes/Kwartz/Helper.html +112 -0
- data/doc-api/classes/Kwartz/Helper/ActionViewHelper.html +221 -0
- data/doc-api/classes/Kwartz/Helper/RailsTemplate.html +630 -0
- data/doc-api/classes/Kwartz/JstlHandler.html +208 -193
- data/doc-api/classes/Kwartz/JstlTranslator.html +15 -15
- data/doc-api/classes/Kwartz/KwartzError.html +6 -6
- data/doc-api/classes/Kwartz/Main.html +39 -23
- data/doc-api/classes/Kwartz/NativeExpression.html +18 -18
- data/doc-api/classes/Kwartz/NativeStatement.html +25 -25
- data/doc-api/classes/Kwartz/Node.html +6 -6
- data/doc-api/classes/Kwartz/PIErubisHandler.html +113 -0
- data/doc-api/classes/Kwartz/PIErubisTranslator.html +200 -0
- data/doc-api/classes/Kwartz/ParseError.html +6 -6
- data/doc-api/classes/Kwartz/PhpHandler.html +102 -83
- data/doc-api/classes/Kwartz/PhpTranslator.html +14 -14
- data/doc-api/classes/Kwartz/PresentationLogicParser.html +136 -128
- data/doc-api/classes/Kwartz/PrintStatement.html +19 -19
- data/doc-api/classes/Kwartz/RailsHandler.html +121 -118
- data/doc-api/classes/Kwartz/RailsTranslator.html +7 -7
- data/doc-api/classes/Kwartz/RubyHandler.html +349 -0
- data/doc-api/classes/Kwartz/RubyStyleParser.html +85 -85
- data/doc-api/classes/Kwartz/RubyTranslator.html +218 -0
- data/doc-api/classes/Kwartz/StatementHelper.html +479 -0
- data/doc-api/classes/Kwartz/StrutsTranslator.html +12 -12
- data/doc-api/classes/Kwartz/TagInfo.html +28 -28
- data/doc-api/classes/Kwartz/TextConverter.html +28 -28
- data/doc-api/classes/Kwartz/Translator.html +42 -42
- data/doc-api/classes/Kwartz/Util.html +284 -0
- data/doc-api/created.rid +1 -1
- data/doc-api/files/__/README_txt.html +30 -3
- data/doc-api/files/kwartz/assert_rb.html +1 -1
- data/doc-api/files/kwartz/binding/eperl_rb.html +2 -2
- data/doc-api/files/kwartz/binding/erubis_rb.html +3 -3
- data/doc-api/files/kwartz/binding/eruby_rb.html +3 -2
- data/doc-api/files/kwartz/binding/jstl_rb.html +2 -2
- data/doc-api/files/kwartz/binding/php_rb.html +2 -2
- data/doc-api/files/kwartz/binding/pierubis_rb.html +116 -0
- data/doc-api/files/kwartz/binding/rails_rb.html +2 -2
- data/doc-api/files/kwartz/binding/ruby_rb.html +115 -0
- data/doc-api/files/kwartz/binding/struts_rb.html +1 -1
- data/doc-api/files/kwartz/config_rb.html +2 -2
- data/doc-api/files/kwartz/converter_rb.html +3 -2
- data/doc-api/files/kwartz/defun_rb.html +116 -0
- data/doc-api/files/kwartz/error_rb.html +1 -1
- data/doc-api/files/kwartz/helper/rails_rb.html +123 -0
- data/doc-api/files/kwartz/main_rb.html +5 -2
- data/doc-api/files/kwartz/node_rb.html +2 -2
- data/doc-api/files/kwartz/parser_rb.html +2 -2
- data/doc-api/files/kwartz/translator_rb.html +2 -2
- data/doc-api/files/kwartz/util/assert-text-equal_rb.html +1 -1
- data/doc-api/files/kwartz/util/testcase-helper_rb.html +2 -2
- data/doc-api/files/kwartz/util_rb.html +107 -0
- data/doc-api/files/kwartz_rb.html +3 -2
- data/doc-api/fr_class_index.html +11 -0
- data/doc-api/fr_file_index.html +5 -0
- data/doc-api/fr_method_index.html +242 -190
- data/doc/p-pattern.html +94 -94
- data/doc/reference.html +847 -612
- data/doc/users-guide.html +744 -241
- data/examples/rails1/README +2 -2
- data/examples/rails1/application_helper.rb +2 -27
- data/examples/rails1/link_to.plogic +5 -5
- data/examples/rails1/list.plogic +2 -2
- data/examples/rails2/app/controllers/application.rb +14 -0
- data/examples/rails2/app/controllers/groups_controller.rb +47 -0
- data/examples/rails2/app/controllers/members_controller.rb +56 -0
- data/examples/rails2/app/helpers/application_helper.rb +6 -0
- data/examples/rails2/app/helpers/groups_helper.rb +2 -0
- data/examples/rails2/app/helpers/members_helper.rb +2 -0
- data/examples/rails2/app/models/group.rb +2 -0
- data/examples/rails2/app/models/member.rb +3 -0
- data/examples/rails2/app/views/groups/_form.html +30 -0
- data/examples/rails2/app/views/groups/_form.plogic +11 -0
- data/examples/rails2/app/views/groups/_link.plogic +19 -0
- data/examples/rails2/app/views/groups/_read.plogic +7 -0
- data/examples/rails2/app/views/groups/edit.cfg.yaml +2 -0
- data/examples/rails2/app/views/groups/edit.html +26 -0
- data/examples/rails2/app/views/groups/edit.plogic +9 -0
- data/examples/rails2/app/views/groups/list.html +48 -0
- data/examples/rails2/app/views/groups/list.plogic +32 -0
- data/examples/rails2/app/views/groups/new.cfg.yaml +2 -0
- data/examples/rails2/app/views/groups/new.html +27 -0
- data/examples/rails2/app/views/groups/new.plogic +9 -0
- data/examples/rails2/app/views/groups/show.html +27 -0
- data/examples/rails2/app/views/groups/show.plogic +2 -0
- data/examples/rails2/app/views/layouts/groups.html +23 -0
- data/examples/rails2/app/views/layouts/groups.plogic +11 -0
- data/examples/rails2/app/views/layouts/members.html +23 -0
- data/examples/rails2/app/views/layouts/members.plogic +11 -0
- data/examples/rails2/app/views/layouts/members2.html +24 -0
- data/examples/rails2/app/views/layouts/members2.plogic +11 -0
- data/examples/rails2/app/views/members/_form.plogic +27 -0
- data/examples/rails2/app/views/members/_link.plogic +19 -0
- data/examples/rails2/app/views/members/_read.plogic +29 -0
- data/examples/rails2/app/views/members/edit.cfg.yaml +6 -0
- data/examples/rails2/app/views/members/edit.html +27 -0
- data/examples/rails2/app/views/members/edit.plogic +10 -0
- data/examples/rails2/app/views/members/list.html +53 -0
- data/examples/rails2/app/views/members/list.plogic +32 -0
- data/examples/rails2/app/views/members/new.html +61 -0
- data/examples/rails2/app/views/members/new.plogic +17 -0
- data/examples/rails2/app/views/members/show.html +41 -0
- data/examples/rails2/app/views/members/show.plogic +3 -0
- data/examples/rails2/db/create-tables.mysql.sql +27 -0
- data/examples/rails2/db/create-tables.pgsql.sql +27 -0
- data/examples/rails2/db/insert-data.sql +21 -0
- data/examples/rails2/db/tabledef.yaml +51 -0
- data/kwartz.gemspec +4 -4
- data/lib/kwartz.rb +10 -2
- data/lib/kwartz/assert.rb +1 -1
- data/lib/kwartz/binding/eperl.rb +85 -61
- data/lib/kwartz/binding/erubis.rb +6 -8
- data/lib/kwartz/binding/eruby.rb +5 -120
- data/lib/kwartz/binding/jstl.rb +116 -101
- data/lib/kwartz/binding/php.rb +79 -60
- data/lib/kwartz/binding/pierubis.rb +58 -0
- data/lib/kwartz/binding/rails.rb +45 -42
- data/lib/kwartz/binding/ruby.rb +193 -0
- data/lib/kwartz/binding/struts.rb +1 -1
- data/lib/kwartz/config.rb +4 -3
- data/lib/kwartz/converter.rb +231 -68
- data/lib/kwartz/defun.rb +126 -0
- data/lib/kwartz/error.rb +1 -1
- data/lib/kwartz/helper/rails.rb +437 -0
- data/lib/kwartz/main.rb +30 -38
- data/lib/kwartz/node.rb +46 -31
- data/lib/kwartz/parser.rb +43 -15
- data/lib/kwartz/translator.rb +104 -6
- data/lib/kwartz/util.rb +113 -0
- data/lib/kwartz/util/assert-text-equal.rb +1 -1
- data/lib/kwartz/util/testcase-helper.rb +26 -8
- data/test/test-compile.rb +3 -3
- data/test/test-compile.yaml +135 -5
- data/test/test-converter.rb +16 -8
- data/test/test-converter.yaml +307 -76
- data/test/test-directives.rb +1 -1
- data/test/test-directives.yaml +964 -979
- data/test/test-main.rb +61 -146
- data/test/test-main.yaml +235 -0
- data/test/test-parser.rb +10 -12
- data/test/test-parser.yaml +484 -326
- data/test/test-rails.rb +1 -1
- data/test/test-rails.yaml +37 -37
- data/test/test-ruleset.rb +1 -1
- data/test/test-ruleset.yaml +34 -40
- data/test/test.rb +1 -1
- metadata +82 -3
- data/COPYING +0 -340
@@ -94,19 +94,20 @@ represents ‘name { … }’ entry in presentation logic file
|
|
94
94
|
<h3 class="section-bar">Methods</h3>
|
95
95
|
|
96
96
|
<div class="name-list">
|
97
|
-
<a href="#
|
98
|
-
<a href="#
|
99
|
-
<a href="#
|
100
|
-
<a href="#
|
101
|
-
<a href="#
|
102
|
-
<a href="#
|
103
|
-
<a href="#
|
104
|
-
<a href="#
|
105
|
-
<a href="#
|
106
|
-
<a href="#
|
107
|
-
<a href="#
|
108
|
-
<a href="#
|
109
|
-
<a href="#
|
97
|
+
<a href="#M000111">_inspect</a>
|
98
|
+
<a href="#M000110">duplicate</a>
|
99
|
+
<a href="#M000099">new</a>
|
100
|
+
<a href="#M000112">parse_error</a>
|
101
|
+
<a href="#M000106">set_append</a>
|
102
|
+
<a href="#M000105">set_attrs</a>
|
103
|
+
<a href="#M000101">set_cont</a>
|
104
|
+
<a href="#M000103">set_elem</a>
|
105
|
+
<a href="#M000102">set_etag</a>
|
106
|
+
<a href="#M000109">set_logic</a>
|
107
|
+
<a href="#M000107">set_remove</a>
|
108
|
+
<a href="#M000100">set_stag</a>
|
109
|
+
<a href="#M000108">set_tagname</a>
|
110
|
+
<a href="#M000104">set_value</a>
|
110
111
|
</div>
|
111
112
|
</div>
|
112
113
|
|
@@ -191,19 +192,19 @@ represents ‘name { … }’ entry in presentation logic file
|
|
191
192
|
<div id="methods">
|
192
193
|
<h3 class="section-bar">Public Class methods</h3>
|
193
194
|
|
194
|
-
<div id="method-
|
195
|
-
<a name="
|
195
|
+
<div id="method-M000099" class="method-detail">
|
196
|
+
<a name="M000099"></a>
|
196
197
|
|
197
198
|
<div class="method-heading">
|
198
|
-
<a href="#
|
199
|
+
<a href="#M000099" class="method-signature">
|
199
200
|
<span class="method-name">new</span><span class="method-args">(name)</span>
|
200
201
|
</a>
|
201
202
|
</div>
|
202
203
|
|
203
204
|
<div class="method-description">
|
204
205
|
<p><a class="source-toggle" href="#"
|
205
|
-
onclick="toggleCode('
|
206
|
-
<div class="method-source-code" id="
|
206
|
+
onclick="toggleCode('M000099-source');return false;">[Source]</a></p>
|
207
|
+
<div class="method-source-code" id="M000099-source">
|
207
208
|
<pre>
|
208
209
|
<span class="ruby-comment cmt"># File kwartz/node.rb, line 216</span>
|
209
210
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">name</span>)
|
@@ -216,53 +217,53 @@ represents ‘name { … }’ entry in presentation logic file
|
|
216
217
|
|
217
218
|
<h3 class="section-bar">Public Instance methods</h3>
|
218
219
|
|
219
|
-
<div id="method-
|
220
|
-
<a name="
|
220
|
+
<div id="method-M000111" class="method-detail">
|
221
|
+
<a name="M000111"></a>
|
221
222
|
|
222
223
|
<div class="method-heading">
|
223
|
-
<a href="#
|
224
|
+
<a href="#M000111" class="method-signature">
|
224
225
|
<span class="method-name">_inspect</span><span class="method-args">(indent=0)</span>
|
225
226
|
</a>
|
226
227
|
</div>
|
227
228
|
|
228
229
|
<div class="method-description">
|
229
230
|
<p><a class="source-toggle" href="#"
|
230
|
-
onclick="toggleCode('
|
231
|
-
<div class="method-source-code" id="
|
231
|
+
onclick="toggleCode('M000111-source');return false;">[Source]</a></p>
|
232
|
+
<div class="method-source-code" id="M000111-source">
|
232
233
|
<pre>
|
233
|
-
<span class="ruby-comment cmt"># File kwartz/node.rb, line
|
234
|
+
<span class="ruby-comment cmt"># File kwartz/node.rb, line 326</span>
|
234
235
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">_inspect</span>(<span class="ruby-identifier">indent</span>=<span class="ruby-value">0</span>)
|
235
236
|
<span class="ruby-identifier">space</span> = <span class="ruby-value str">' '</span> <span class="ruby-operator">*</span> <span class="ruby-identifier">indent</span>
|
236
237
|
<span class="ruby-identifier">sb</span> = []
|
237
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"
|
238
|
-
<span class="ruby-comment cmt">#sb << space << "value: #{@value == nil ? '' : @value
|
239
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"stag: #{@stag.code
|
240
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"cont: #{@cont.code
|
241
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"etag: #{@etag.code
|
242
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"elem: #{@elem.code
|
238
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"- name: #{@name}\n"</span>
|
239
|
+
<span class="ruby-comment cmt">#sb << space << " value: #{@value == nil ? '' : @value}\n"</span>
|
240
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" stag: #{@stag.code}\n"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@stag</span>.<span class="ruby-identifier">nil?</span>
|
241
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" cont: #{@cont.code}\n"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@cont</span>.<span class="ruby-identifier">nil?</span>
|
242
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" etag: #{@etag.code}\n"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@etag</span>.<span class="ruby-identifier">nil?</span>
|
243
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" elem: #{@elem.code}\n"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@elem</span>.<span class="ruby-identifier">nil?</span>
|
243
244
|
<span class="ruby-comment cmt">#</span>
|
244
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"attrs:\n"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@attrs</span>
|
245
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">" attrs:\n"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@attrs</span>
|
245
246
|
<span class="ruby-ivar">@attrs</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">sort</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span>
|
246
247
|
<span class="ruby-identifier">val</span> = <span class="ruby-ivar">@attrs</span>[<span class="ruby-identifier">key</span>]
|
247
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"
|
248
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"
|
248
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" - name: #{key}\n"</span>
|
249
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" value: #{val.code}\n"</span>
|
249
250
|
<span class="ruby-keyword kw">end</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@attrs</span>
|
250
251
|
<span class="ruby-comment cmt">#</span>
|
251
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"append:\n"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@append</span>
|
252
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">" append:\n"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@append</span>
|
252
253
|
<span class="ruby-ivar">@append</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">expr</span><span class="ruby-operator">|</span>
|
253
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"
|
254
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" - #{expr.code}\n"</span>
|
254
255
|
<span class="ruby-keyword kw">end</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@append</span>
|
255
256
|
<span class="ruby-comment cmt">#</span>
|
256
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"remove:\n"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@remove</span>
|
257
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">" remove:\n"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@remove</span>
|
257
258
|
<span class="ruby-ivar">@remove</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span>
|
258
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"
|
259
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" - #{name}\n"</span>
|
259
260
|
<span class="ruby-keyword kw">end</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@remove</span>
|
260
261
|
<span class="ruby-comment cmt">#</span>
|
261
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"tagname: #{@tagname
|
262
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" tagname: #{@tagname}\n"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@tagname</span>.<span class="ruby-identifier">nil?</span>
|
262
263
|
<span class="ruby-comment cmt">#</span>
|
263
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"logic:\n"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@logic</span>
|
264
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">" logic:\n"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@logic</span>
|
264
265
|
<span class="ruby-ivar">@logic</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">stmt</span><span class="ruby-operator">|</span>
|
265
|
-
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"
|
266
|
+
<span class="ruby-identifier">sb</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">space</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">" - "</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">stmt</span>.<span class="ruby-identifier">_inspect</span>()
|
266
267
|
<span class="ruby-keyword kw">end</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@logic</span>
|
267
268
|
<span class="ruby-comment cmt">#</span>
|
268
269
|
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">sb</span>.<span class="ruby-identifier">join</span>
|
@@ -272,19 +273,48 @@ represents ‘name { … }’ entry in presentation logic file
|
|
272
273
|
</div>
|
273
274
|
</div>
|
274
275
|
|
275
|
-
<div id="method-
|
276
|
-
<a name="
|
276
|
+
<div id="method-M000110" class="method-detail">
|
277
|
+
<a name="M000110"></a>
|
278
|
+
|
279
|
+
<div class="method-heading">
|
280
|
+
<a href="#M000110" class="method-signature">
|
281
|
+
<span class="method-name">duplicate</span><span class="method-args">(name)</span>
|
282
|
+
</a>
|
283
|
+
</div>
|
284
|
+
|
285
|
+
<div class="method-description">
|
286
|
+
<p><a class="source-toggle" href="#"
|
287
|
+
onclick="toggleCode('M000110-source');return false;">[Source]</a></p>
|
288
|
+
<div class="method-source-code" id="M000110-source">
|
289
|
+
<pre>
|
290
|
+
<span class="ruby-comment cmt"># File kwartz/node.rb, line 315</span>
|
291
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">duplicate</span>(<span class="ruby-identifier">name</span>)
|
292
|
+
<span class="ruby-identifier">ruleset</span> = <span class="ruby-identifier">dup</span>()
|
293
|
+
<span class="ruby-identifier">ruleset</span>.<span class="ruby-identifier">name</span> = <span class="ruby-identifier">name</span>
|
294
|
+
<span class="ruby-identifier">ruleset</span>.<span class="ruby-identifier">attrs</span> = <span class="ruby-ivar">@attrs</span>.<span class="ruby-identifier">dup</span>() <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@attrs</span>
|
295
|
+
<span class="ruby-identifier">ruleset</span>.<span class="ruby-identifier">append</span> = <span class="ruby-ivar">@append</span>.<span class="ruby-identifier">dup</span>() <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@append</span>
|
296
|
+
<span class="ruby-identifier">ruleset</span>.<span class="ruby-identifier">remove</span> = <span class="ruby-ivar">@remove</span>.<span class="ruby-identifier">dup</span>() <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@remove</span>
|
297
|
+
<span class="ruby-identifier">ruleset</span>.<span class="ruby-identifier">logic</span> = <span class="ruby-ivar">@logic</span>.<span class="ruby-identifier">dup</span>() <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@logic</span>
|
298
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">ruleset</span>
|
299
|
+
<span class="ruby-keyword kw">end</span>
|
300
|
+
</pre>
|
301
|
+
</div>
|
302
|
+
</div>
|
303
|
+
</div>
|
304
|
+
|
305
|
+
<div id="method-M000106" class="method-detail">
|
306
|
+
<a name="M000106"></a>
|
277
307
|
|
278
308
|
<div class="method-heading">
|
279
|
-
<a href="#
|
309
|
+
<a href="#M000106" class="method-signature">
|
280
310
|
<span class="method-name">set_append</span><span class="method-args">(list, escape_flag=nil)</span>
|
281
311
|
</a>
|
282
312
|
</div>
|
283
313
|
|
284
314
|
<div class="method-description">
|
285
315
|
<p><a class="source-toggle" href="#"
|
286
|
-
onclick="toggleCode('
|
287
|
-
<div class="method-source-code" id="
|
316
|
+
onclick="toggleCode('M000106-source');return false;">[Source]</a></p>
|
317
|
+
<div class="method-source-code" id="M000106-source">
|
288
318
|
<pre>
|
289
319
|
<span class="ruby-comment cmt"># File kwartz/node.rb, line 259</span>
|
290
320
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_append</span>(<span class="ruby-identifier">list</span>, <span class="ruby-identifier">escape_flag</span>=<span class="ruby-keyword kw">nil</span>)
|
@@ -299,19 +329,19 @@ represents ‘name { … }’ entry in presentation logic file
|
|
299
329
|
</div>
|
300
330
|
</div>
|
301
331
|
|
302
|
-
<div id="method-
|
303
|
-
<a name="
|
332
|
+
<div id="method-M000105" class="method-detail">
|
333
|
+
<a name="M000105"></a>
|
304
334
|
|
305
335
|
<div class="method-heading">
|
306
|
-
<a href="#
|
336
|
+
<a href="#M000105" class="method-signature">
|
307
337
|
<span class="method-name">set_attrs</span><span class="method-args">(hash, escape_flag=nil)</span>
|
308
338
|
</a>
|
309
339
|
</div>
|
310
340
|
|
311
341
|
<div class="method-description">
|
312
342
|
<p><a class="source-toggle" href="#"
|
313
|
-
onclick="toggleCode('
|
314
|
-
<div class="method-source-code" id="
|
343
|
+
onclick="toggleCode('M000105-source');return false;">[Source]</a></p>
|
344
|
+
<div class="method-source-code" id="M000105-source">
|
315
345
|
<pre>
|
316
346
|
<span class="ruby-comment cmt"># File kwartz/node.rb, line 250</span>
|
317
347
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_attrs</span>(<span class="ruby-identifier">hash</span>, <span class="ruby-identifier">escape_flag</span>=<span class="ruby-keyword kw">nil</span>)
|
@@ -326,19 +356,19 @@ represents ‘name { … }’ entry in presentation logic file
|
|
326
356
|
</div>
|
327
357
|
</div>
|
328
358
|
|
329
|
-
<div id="method-
|
330
|
-
<a name="
|
359
|
+
<div id="method-M000101" class="method-detail">
|
360
|
+
<a name="M000101"></a>
|
331
361
|
|
332
362
|
<div class="method-heading">
|
333
|
-
<a href="#
|
363
|
+
<a href="#M000101" class="method-signature">
|
334
364
|
<span class="method-name">set_cont</span><span class="method-args">(str, escape_flag=nil)</span>
|
335
365
|
</a>
|
336
366
|
</div>
|
337
367
|
|
338
368
|
<div class="method-description">
|
339
369
|
<p><a class="source-toggle" href="#"
|
340
|
-
onclick="toggleCode('
|
341
|
-
<div class="method-source-code" id="
|
370
|
+
onclick="toggleCode('M000101-source');return false;">[Source]</a></p>
|
371
|
+
<div class="method-source-code" id="M000101-source">
|
342
372
|
<pre>
|
343
373
|
<span class="ruby-comment cmt"># File kwartz/node.rb, line 230</span>
|
344
374
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_cont</span>(<span class="ruby-identifier">str</span>, <span class="ruby-identifier">escape_flag</span>=<span class="ruby-keyword kw">nil</span>)
|
@@ -349,19 +379,19 @@ represents ‘name { … }’ entry in presentation logic file
|
|
349
379
|
</div>
|
350
380
|
</div>
|
351
381
|
|
352
|
-
<div id="method-
|
353
|
-
<a name="
|
382
|
+
<div id="method-M000103" class="method-detail">
|
383
|
+
<a name="M000103"></a>
|
354
384
|
|
355
385
|
<div class="method-heading">
|
356
|
-
<a href="#
|
386
|
+
<a href="#M000103" class="method-signature">
|
357
387
|
<span class="method-name">set_elem</span><span class="method-args">(str, escape_flag=nil)</span>
|
358
388
|
</a>
|
359
389
|
</div>
|
360
390
|
|
361
391
|
<div class="method-description">
|
362
392
|
<p><a class="source-toggle" href="#"
|
363
|
-
onclick="toggleCode('
|
364
|
-
<div class="method-source-code" id="
|
393
|
+
onclick="toggleCode('M000103-source');return false;">[Source]</a></p>
|
394
|
+
<div class="method-source-code" id="M000103-source">
|
365
395
|
<pre>
|
366
396
|
<span class="ruby-comment cmt"># File kwartz/node.rb, line 240</span>
|
367
397
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_elem</span>(<span class="ruby-identifier">str</span>, <span class="ruby-identifier">escape_flag</span>=<span class="ruby-keyword kw">nil</span>)
|
@@ -372,19 +402,19 @@ represents ‘name { … }’ entry in presentation logic file
|
|
372
402
|
</div>
|
373
403
|
</div>
|
374
404
|
|
375
|
-
<div id="method-
|
376
|
-
<a name="
|
405
|
+
<div id="method-M000102" class="method-detail">
|
406
|
+
<a name="M000102"></a>
|
377
407
|
|
378
408
|
<div class="method-heading">
|
379
|
-
<a href="#
|
409
|
+
<a href="#M000102" class="method-signature">
|
380
410
|
<span class="method-name">set_etag</span><span class="method-args">(str, escape_flag=nil)</span>
|
381
411
|
</a>
|
382
412
|
</div>
|
383
413
|
|
384
414
|
<div class="method-description">
|
385
415
|
<p><a class="source-toggle" href="#"
|
386
|
-
onclick="toggleCode('
|
387
|
-
<div class="method-source-code" id="
|
416
|
+
onclick="toggleCode('M000102-source');return false;">[Source]</a></p>
|
417
|
+
<div class="method-source-code" id="M000102-source">
|
388
418
|
<pre>
|
389
419
|
<span class="ruby-comment cmt"># File kwartz/node.rb, line 235</span>
|
390
420
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_etag</span>(<span class="ruby-identifier">str</span>, <span class="ruby-identifier">escape_flag</span>=<span class="ruby-keyword kw">nil</span>)
|
@@ -395,19 +425,19 @@ represents ‘name { … }’ entry in presentation logic file
|
|
395
425
|
</div>
|
396
426
|
</div>
|
397
427
|
|
398
|
-
<div id="method-
|
399
|
-
<a name="
|
428
|
+
<div id="method-M000109" class="method-detail">
|
429
|
+
<a name="M000109"></a>
|
400
430
|
|
401
431
|
<div class="method-heading">
|
402
|
-
<a href="#
|
432
|
+
<a href="#M000109" class="method-signature">
|
403
433
|
<span class="method-name">set_logic</span><span class="method-args">(logic_str)</span>
|
404
434
|
</a>
|
405
435
|
</div>
|
406
436
|
|
407
437
|
<div class="method-description">
|
408
438
|
<p><a class="source-toggle" href="#"
|
409
|
-
onclick="toggleCode('
|
410
|
-
<div class="method-source-code" id="
|
439
|
+
onclick="toggleCode('M000109-source');return false;">[Source]</a></p>
|
440
|
+
<div class="method-source-code" id="M000109-source">
|
411
441
|
<pre>
|
412
442
|
<span class="ruby-comment cmt"># File kwartz/node.rb, line 278</span>
|
413
443
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_logic</span>(<span class="ruby-identifier">logic_str</span>)
|
@@ -450,19 +480,19 @@ represents ‘name { … }’ entry in presentation logic file
|
|
450
480
|
</div>
|
451
481
|
</div>
|
452
482
|
|
453
|
-
<div id="method-
|
454
|
-
<a name="
|
483
|
+
<div id="method-M000107" class="method-detail">
|
484
|
+
<a name="M000107"></a>
|
455
485
|
|
456
486
|
<div class="method-heading">
|
457
|
-
<a href="#
|
487
|
+
<a href="#M000107" class="method-signature">
|
458
488
|
<span class="method-name">set_remove</span><span class="method-args">(list)</span>
|
459
489
|
</a>
|
460
490
|
</div>
|
461
491
|
|
462
492
|
<div class="method-description">
|
463
493
|
<p><a class="source-toggle" href="#"
|
464
|
-
onclick="toggleCode('
|
465
|
-
<div class="method-source-code" id="
|
494
|
+
onclick="toggleCode('M000107-source');return false;">[Source]</a></p>
|
495
|
+
<div class="method-source-code" id="M000107-source">
|
466
496
|
<pre>
|
467
497
|
<span class="ruby-comment cmt"># File kwartz/node.rb, line 268</span>
|
468
498
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_remove</span>(<span class="ruby-identifier">list</span>)
|
@@ -473,19 +503,19 @@ represents ‘name { … }’ entry in presentation logic file
|
|
473
503
|
</div>
|
474
504
|
</div>
|
475
505
|
|
476
|
-
<div id="method-
|
477
|
-
<a name="
|
506
|
+
<div id="method-M000100" class="method-detail">
|
507
|
+
<a name="M000100"></a>
|
478
508
|
|
479
509
|
<div class="method-heading">
|
480
|
-
<a href="#
|
510
|
+
<a href="#M000100" class="method-signature">
|
481
511
|
<span class="method-name">set_stag</span><span class="method-args">(str, escape_flag=nil)</span>
|
482
512
|
</a>
|
483
513
|
</div>
|
484
514
|
|
485
515
|
<div class="method-description">
|
486
516
|
<p><a class="source-toggle" href="#"
|
487
|
-
onclick="toggleCode('
|
488
|
-
<div class="method-source-code" id="
|
517
|
+
onclick="toggleCode('M000100-source');return false;">[Source]</a></p>
|
518
|
+
<div class="method-source-code" id="M000100-source">
|
489
519
|
<pre>
|
490
520
|
<span class="ruby-comment cmt"># File kwartz/node.rb, line 225</span>
|
491
521
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_stag</span>(<span class="ruby-identifier">str</span>, <span class="ruby-identifier">escape_flag</span>=<span class="ruby-keyword kw">nil</span>)
|
@@ -496,19 +526,19 @@ represents ‘name { … }’ entry in presentation logic file
|
|
496
526
|
</div>
|
497
527
|
</div>
|
498
528
|
|
499
|
-
<div id="method-
|
500
|
-
<a name="
|
529
|
+
<div id="method-M000108" class="method-detail">
|
530
|
+
<a name="M000108"></a>
|
501
531
|
|
502
532
|
<div class="method-heading">
|
503
|
-
<a href="#
|
533
|
+
<a href="#M000108" class="method-signature">
|
504
534
|
<span class="method-name">set_tagname</span><span class="method-args">(str)</span>
|
505
535
|
</a>
|
506
536
|
</div>
|
507
537
|
|
508
538
|
<div class="method-description">
|
509
539
|
<p><a class="source-toggle" href="#"
|
510
|
-
onclick="toggleCode('
|
511
|
-
<div class="method-source-code" id="
|
540
|
+
onclick="toggleCode('M000108-source');return false;">[Source]</a></p>
|
541
|
+
<div class="method-source-code" id="M000108-source">
|
512
542
|
<pre>
|
513
543
|
<span class="ruby-comment cmt"># File kwartz/node.rb, line 273</span>
|
514
544
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_tagname</span>(<span class="ruby-identifier">str</span>)
|
@@ -519,19 +549,19 @@ represents ‘name { … }’ entry in presentation logic file
|
|
519
549
|
</div>
|
520
550
|
</div>
|
521
551
|
|
522
|
-
<div id="method-
|
523
|
-
<a name="
|
552
|
+
<div id="method-M000104" class="method-detail">
|
553
|
+
<a name="M000104"></a>
|
524
554
|
|
525
555
|
<div class="method-heading">
|
526
|
-
<a href="#
|
556
|
+
<a href="#M000104" class="method-signature">
|
527
557
|
<span class="method-name">set_value</span><span class="method-args">(str, escape_flag=nil)</span>
|
528
558
|
</a>
|
529
559
|
</div>
|
530
560
|
|
531
561
|
<div class="method-description">
|
532
562
|
<p><a class="source-toggle" href="#"
|
533
|
-
onclick="toggleCode('
|
534
|
-
<div class="method-source-code" id="
|
563
|
+
onclick="toggleCode('M000104-source');return false;">[Source]</a></p>
|
564
|
+
<div class="method-source-code" id="M000104-source">
|
535
565
|
<pre>
|
536
566
|
<span class="ruby-comment cmt"># File kwartz/node.rb, line 245</span>
|
537
567
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_value</span>(<span class="ruby-identifier">str</span>, <span class="ruby-identifier">escape_flag</span>=<span class="ruby-keyword kw">nil</span>)
|
@@ -544,21 +574,21 @@ represents ‘name { … }’ entry in presentation logic file
|
|
544
574
|
|
545
575
|
<h3 class="section-bar">Protected Instance methods</h3>
|
546
576
|
|
547
|
-
<div id="method-
|
548
|
-
<a name="
|
577
|
+
<div id="method-M000112" class="method-detail">
|
578
|
+
<a name="M000112"></a>
|
549
579
|
|
550
580
|
<div class="method-heading">
|
551
|
-
<a href="#
|
581
|
+
<a href="#M000112" class="method-signature">
|
552
582
|
<span class="method-name">parse_error</span><span class="method-args">(message, linenum)</span>
|
553
583
|
</a>
|
554
584
|
</div>
|
555
585
|
|
556
586
|
<div class="method-description">
|
557
587
|
<p><a class="source-toggle" href="#"
|
558
|
-
onclick="toggleCode('
|
559
|
-
<div class="method-source-code" id="
|
588
|
+
onclick="toggleCode('M000112-source');return false;">[Source]</a></p>
|
589
|
+
<div class="method-source-code" id="M000112-source">
|
560
590
|
<pre>
|
561
|
-
<span class="ruby-comment cmt"># File kwartz/node.rb, line
|
591
|
+
<span class="ruby-comment cmt"># File kwartz/node.rb, line 367</span>
|
562
592
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">parse_error</span>(<span class="ruby-identifier">message</span>, <span class="ruby-identifier">linenum</span>)
|
563
593
|
<span class="ruby-keyword kw">return</span> <span class="ruby-constant">ParseError</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">message</span>, <span class="ruby-identifier">linenum</span>, <span class="ruby-keyword kw">nil</span>)
|
564
594
|
<span class="ruby-keyword kw">end</span>
|
@@ -94,10 +94,10 @@ directive handler for ePerl
|
|
94
94
|
<h3 class="section-bar">Methods</h3>
|
95
95
|
|
96
96
|
<div class="name-list">
|
97
|
-
<a href="#
|
98
|
-
<a href="#
|
99
|
-
<a href="#
|
100
|
-
<a href="#
|
97
|
+
<a href="#M000065">directive_format</a>
|
98
|
+
<a href="#M000063">directive_pattern</a>
|
99
|
+
<a href="#M000066">handle</a>
|
100
|
+
<a href="#M000064">mapping_pattern</a>
|
101
101
|
</div>
|
102
102
|
</div>
|
103
103
|
|
@@ -142,19 +142,19 @@ directive handler for ePerl
|
|
142
142
|
<div id="methods">
|
143
143
|
<h3 class="section-bar">Public Instance methods</h3>
|
144
144
|
|
145
|
-
<div id="method-
|
146
|
-
<a name="
|
145
|
+
<div id="method-M000065" class="method-detail">
|
146
|
+
<a name="M000065"></a>
|
147
147
|
|
148
148
|
<div class="method-heading">
|
149
|
-
<a href="#
|
149
|
+
<a href="#M000065" class="method-signature">
|
150
150
|
<span class="method-name">directive_format</span><span class="method-args">()</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('M000065-source');return false;">[Source]</a></p>
|
157
|
+
<div class="method-source-code" id="M000065-source">
|
158
158
|
<pre>
|
159
159
|
<span class="ruby-comment cmt"># File kwartz/binding/eperl.rb, line 39</span>
|
160
160
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">directive_format</span>
|
@@ -165,19 +165,19 @@ directive handler for ePerl
|
|
165
165
|
</div>
|
166
166
|
</div>
|
167
167
|
|
168
|
-
<div id="method-
|
169
|
-
<a name="
|
168
|
+
<div id="method-M000063" class="method-detail">
|
169
|
+
<a name="M000063"></a>
|
170
170
|
|
171
171
|
<div class="method-heading">
|
172
|
-
<a href="#
|
172
|
+
<a href="#M000063" class="method-signature">
|
173
173
|
<span class="method-name">directive_pattern</span><span class="method-args">()</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('M000063-source');return false;">[Source]</a></p>
|
180
|
+
<div class="method-source-code" id="M000063-source">
|
181
181
|
<pre>
|
182
182
|
<span class="ruby-comment cmt"># File kwartz/binding/eperl.rb, line 25</span>
|
183
183
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">directive_pattern</span>
|
@@ -188,30 +188,31 @@ directive handler for ePerl
|
|
188
188
|
</div>
|
189
189
|
</div>
|
190
190
|
|
191
|
-
<div id="method-
|
192
|
-
<a name="
|
191
|
+
<div id="method-M000066" class="method-detail">
|
192
|
+
<a name="M000066"></a>
|
193
193
|
|
194
194
|
<div class="method-heading">
|
195
|
-
<a href="#
|
196
|
-
<span class="method-name">handle</span><span class="method-args">(
|
195
|
+
<a href="#M000066" class="method-signature">
|
196
|
+
<span class="method-name">handle</span><span class="method-args">(stmt_list, handler_arg)</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('
|
203
|
-
<div class="method-source-code" id="
|
202
|
+
onclick="toggleCode('M000066-source');return false;">[Source]</a></p>
|
203
|
+
<div class="method-source-code" id="M000066-source">
|
204
204
|
<pre>
|
205
205
|
<span class="ruby-comment cmt"># File kwartz/binding/eperl.rb, line 44</span>
|
206
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">handle</span>(<span class="ruby-identifier">
|
206
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">handle</span>(<span class="ruby-identifier">stmt_list</span>, <span class="ruby-identifier">handler_arg</span>)
|
207
207
|
<span class="ruby-identifier">ret</span> = <span class="ruby-keyword kw">super</span>
|
208
208
|
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">ret</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">ret</span>
|
209
209
|
|
210
|
-
<span class="ruby-identifier">
|
211
|
-
<span class="ruby-identifier">
|
212
|
-
<span class="ruby-identifier">
|
210
|
+
<span class="ruby-identifier">arg</span> = <span class="ruby-identifier">handler_arg</span>
|
211
|
+
<span class="ruby-identifier">d_name</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">directive_name</span>
|
212
|
+
<span class="ruby-identifier">d_arg</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">directive_arg</span>
|
213
|
+
<span class="ruby-identifier">d_str</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">directive_str</span>
|
213
214
|
|
214
|
-
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">
|
215
|
+
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">d_name</span>
|
215
216
|
|
216
217
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:foreach</span>, <span class="ruby-identifier">:Foreach</span>, <span class="ruby-identifier">:FOREACH</span>, <span class="ruby-identifier">:list</span>, <span class="ruby-identifier">:List</span>, <span class="ruby-identifier">:LIST</span>
|
217
218
|
<span class="ruby-identifier">is_foreach</span> = <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:foreach</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:Foreach</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:FOREACH</span>
|
@@ -221,72 +222,95 @@ directive handler for ePerl
|
|
221
222
|
<span class="ruby-identifier">loopvar</span> = <span class="ruby-identifier">$1</span> ; <span class="ruby-identifier">loopval</span> = <span class="ruby-identifier">$2</span> ; <span class="ruby-identifier">looplist</span> = <span class="ruby-identifier">$3</span>
|
222
223
|
<span class="ruby-identifier">counter</span> = <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:foreach</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:list</span> <span class="ruby-operator">?</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-operator">:</span> <span class="ruby-node">"#{loopvar}_ctr"</span>
|
223
224
|
<span class="ruby-identifier">toggle</span> = <span class="ruby-identifier">d_name</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">:FOREACH</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">d_name</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">:LIST</span> <span class="ruby-operator">?</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-operator">:</span> <span class="ruby-node">"#{loopvar}_tgl"</span>
|
224
|
-
<span class="ruby-identifier">
|
225
|
-
<span class="ruby-identifier">
|
225
|
+
<span class="ruby-identifier">code</span> = []
|
226
|
+
<span class="ruby-identifier">code</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"my #{counter} = 0;"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">counter</span>
|
226
227
|
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">loopval</span>
|
227
|
-
<span class="ruby-identifier">
|
228
|
-
<span class="ruby-identifier">
|
228
|
+
<span class="ruby-identifier">code</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"foreach my #{loopvar} (keys #{looplist}) {"</span>
|
229
|
+
<span class="ruby-identifier">code</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" my #{loopval} = #{looplist.sub(/\A%/,'$')}{#{loopvar}};"</span>
|
229
230
|
<span class="ruby-keyword kw">else</span>
|
230
|
-
<span class="ruby-identifier">
|
231
|
+
<span class="ruby-identifier">code</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"foreach my #{loopvar} (#{looplist}) {"</span>
|
231
232
|
<span class="ruby-keyword kw">end</span>
|
232
|
-
<span class="ruby-identifier">
|
233
|
-
<span class="ruby-identifier">
|
234
|
-
<span class="ruby-
|
235
|
-
|
236
|
-
<span class="ruby-
|
237
|
-
|
238
|
-
<span class="ruby-
|
239
|
-
|
240
|
-
|
241
|
-
<span class="ruby-
|
242
|
-
<span class="ruby-
|
243
|
-
<span class="ruby-
|
244
|
-
<span class="ruby-
|
245
|
-
<span class="ruby-
|
246
|
-
<span class="ruby-
|
247
|
-
<span class="ruby-
|
248
|
-
<span class="ruby-
|
233
|
+
<span class="ruby-identifier">code</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" #{counter}++;"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">counter</span>
|
234
|
+
<span class="ruby-identifier">code</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" my #{toggle} = #{counter}%2==0 ? #{self.even} : #{self.odd};"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">toggle</span>
|
235
|
+
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">is_foreach</span>
|
236
|
+
<span class="ruby-identifier">wrap_element_with_native_stmt</span>(<span class="ruby-identifier">stmt_list</span>, <span class="ruby-identifier">arg</span>, <span class="ruby-identifier">code</span>, <span class="ruby-value str">"}"</span>, <span class="ruby-identifier">:foreach</span>)
|
237
|
+
<span class="ruby-keyword kw">else</span>
|
238
|
+
<span class="ruby-identifier">wrap_content_with_native_stmt</span>(<span class="ruby-identifier">stmt_list</span>, <span class="ruby-identifier">arg</span>, <span class="ruby-identifier">code</span>, <span class="ruby-value str">"}"</span>, <span class="ruby-identifier">:foreach</span>)
|
239
|
+
<span class="ruby-keyword kw">end</span>
|
240
|
+
<span class="ruby-comment cmt">#stmt_list << stag_stmt(arg) if !is_foreach</span>
|
241
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new("my #{counter} = 0;") if counter</span>
|
242
|
+
<span class="ruby-comment cmt">#if loopval</span>
|
243
|
+
<span class="ruby-comment cmt"># stmt_list << NativeStatement.new("foreach my #{loopvar} (keys #{looplist}) {", :foreach)</span>
|
244
|
+
<span class="ruby-comment cmt"># stmt_list << NativeStatement.new(" my #{loopval} = #{looplist.sub(/\A%/,'$')}{#{loopvar}};")</span>
|
245
|
+
<span class="ruby-comment cmt">#else</span>
|
246
|
+
<span class="ruby-comment cmt"># stmt_list << NativeStatement.new("foreach my #{loopvar} (#{looplist}) {", :foreach)</span>
|
247
|
+
<span class="ruby-comment cmt">#end</span>
|
248
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new(" #{counter}++;") if counter</span>
|
249
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new(" my #{toggle} = #{counter}%2==0 ? #{self.even} : #{self.odd};") if toggle</span>
|
250
|
+
<span class="ruby-comment cmt">#stmt_list << stag_stmt(arg) if is_foreach</span>
|
251
|
+
<span class="ruby-comment cmt">#stmt_list.concat(arg.cont_stmts)</span>
|
252
|
+
<span class="ruby-comment cmt">#stmt_list << etag_stmt(arg) if is_foreach</span>
|
253
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new("}", :foreach)</span>
|
254
|
+
<span class="ruby-comment cmt">#stmt_list << etag_stmt(arg) if !is_foreach</span>
|
255
|
+
|
256
|
+
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:while</span>
|
257
|
+
<span class="ruby-identifier">wrap_element_with_native_stmt</span>(<span class="ruby-identifier">stmt_list</span>, <span class="ruby-identifier">arg</span>, <span class="ruby-node">"while (#{d_arg}) {"</span>, <span class="ruby-value str">"}"</span>, <span class="ruby-identifier">:while</span>)
|
258
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new("while (#{d_arg}) {", :while)</span>
|
259
|
+
<span class="ruby-comment cmt">#stmt_list << stag_stmt(arg)</span>
|
260
|
+
<span class="ruby-comment cmt">#stmt_list.concat(cont_stmts)</span>
|
261
|
+
<span class="ruby-comment cmt">#stmt_list << etag_stmt(arg)</span>
|
262
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new("}", :while)</span>
|
263
|
+
|
264
|
+
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:loop</span>
|
265
|
+
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">arg</span>)
|
266
|
+
<span class="ruby-identifier">wrap_content_with_native_stmt</span>(<span class="ruby-identifier">stmt_list</span>, <span class="ruby-identifier">arg</span>, <span class="ruby-node">"while (#{d_arg}) {"</span>, <span class="ruby-value str">"}"</span>, <span class="ruby-identifier">:while</span>)
|
267
|
+
<span class="ruby-comment cmt">#stmt_list << stag_stmt</span>
|
268
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new("while (#{d_arg}) {", :while)</span>
|
269
|
+
<span class="ruby-comment cmt">#stmt_list.concat(cont_stmts)</span>
|
270
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new("}", :while)</span>
|
271
|
+
<span class="ruby-comment cmt">#stmt_list << etag_stmt</span>
|
249
272
|
|
250
273
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:set</span>
|
251
|
-
<span class="ruby-identifier">
|
252
|
-
<span class="ruby-
|
253
|
-
<span class="ruby-
|
254
|
-
<span class="ruby-
|
274
|
+
<span class="ruby-identifier">wrap_element_with_native_stmt</span>(<span class="ruby-identifier">stmt_list</span>, <span class="ruby-identifier">arg</span>, <span class="ruby-node">"#{d_arg};"</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">:set</span>)
|
275
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new("#{d_arg};", :set)</span>
|
276
|
+
<span class="ruby-comment cmt">#stmt_list << stag_stmt</span>
|
277
|
+
<span class="ruby-comment cmt">#stmt_list.concat(cont_stmts)</span>
|
278
|
+
<span class="ruby-comment cmt">#stmt_list << etag_stmt</span>
|
255
279
|
|
256
280
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:if</span>
|
257
|
-
<span class="ruby-identifier">
|
258
|
-
<span class="ruby-
|
259
|
-
<span class="ruby-
|
260
|
-
<span class="ruby-
|
261
|
-
<span class="ruby-
|
281
|
+
<span class="ruby-identifier">wrap_element_with_native_stmt</span>(<span class="ruby-identifier">stmt_list</span>, <span class="ruby-identifier">arg</span>, <span class="ruby-node">"if (#{d_arg}) {"</span>, <span class="ruby-value str">"}"</span>, <span class="ruby-identifier">:if</span>)
|
282
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new("if (#{d_arg}) {", :if)</span>
|
283
|
+
<span class="ruby-comment cmt">#stmt_list << stag_stmt</span>
|
284
|
+
<span class="ruby-comment cmt">#stmt_list.concat(cont_stmts)</span>
|
285
|
+
<span class="ruby-comment cmt">#stmt_list << etag_stmt</span>
|
286
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new("}", :if)</span>
|
262
287
|
|
263
288
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:elsif</span>, <span class="ruby-identifier">:else</span>
|
264
|
-
<span class="ruby-
|
265
|
-
|
266
|
-
<span class="ruby-
|
267
|
-
<span class="ruby-identifier">
|
268
|
-
<span class="ruby-
|
269
|
-
|
270
|
-
|
271
|
-
<span class="ruby-
|
272
|
-
|
273
|
-
|
274
|
-
<span class="ruby-keyword kw">end</span>
|
275
|
-
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">build_print_stmt</span>(<span class="ruby-identifier">stag_info</span>, <span class="ruby-identifier">attr_info</span>, <span class="ruby-identifier">append_exprs</span>)
|
276
|
-
<span class="ruby-identifier">stmt_list</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-identifier">cont_stmts</span>)
|
277
|
-
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">build_print_stmt</span>(<span class="ruby-identifier">etag_info</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-keyword kw">nil</span>)
|
278
|
-
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">NativeStatement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"}"</span>, <span class="ruby-identifier">kind</span>)
|
289
|
+
<span class="ruby-identifier">error_when_last_stmt_is_not_if</span>(<span class="ruby-identifier">stmt_list</span>, <span class="ruby-identifier">arg</span>)
|
290
|
+
<span class="ruby-identifier">stmt_list</span>.<span class="ruby-identifier">pop</span> <span class="ruby-comment cmt"># delete '}'</span>
|
291
|
+
<span class="ruby-identifier">kind</span> = <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:else</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">:else</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">:elseif</span>
|
292
|
+
<span class="ruby-identifier">code</span> = <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:else</span> <span class="ruby-operator">?</span> <span class="ruby-value str">"} else {"</span> <span class="ruby-operator">:</span> <span class="ruby-node">"} elsif (#{d_arg}) {"</span>
|
293
|
+
<span class="ruby-identifier">wrap_element_with_native_stmt</span>(<span class="ruby-identifier">stmt_list</span>, <span class="ruby-identifier">arg</span>, <span class="ruby-identifier">code</span>, <span class="ruby-value str">"}"</span>, <span class="ruby-identifier">kind</span>)
|
294
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new(code, kind)</span>
|
295
|
+
<span class="ruby-comment cmt">#stmt_list << stag_stmt</span>
|
296
|
+
<span class="ruby-comment cmt">#stmt_list.concat(cont_stmts)</span>
|
297
|
+
<span class="ruby-comment cmt">#stmt_list << etag_stmt</span>
|
298
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new("}", kind)</span>
|
279
299
|
|
280
300
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:default</span>, <span class="ruby-identifier">:Default</span>, <span class="ruby-identifier">:DEFAULT</span>
|
281
|
-
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">
|
282
|
-
<span class="ruby-identifier">
|
283
|
-
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">NativeStatement</span>.<span class="ruby-identifier">new_without_newline</span>(<span class="ruby-node">"if (#{d_arg}) {"</span>, <span class="ruby-identifier">:if</span>)
|
301
|
+
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">arg</span>)
|
302
|
+
<span class="ruby-identifier">expr_code</span> = <span class="ruby-identifier">d_arg</span>
|
284
303
|
<span class="ruby-identifier">flag_escape</span> = <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:default</span> <span class="ruby-operator">?</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-operator">:</span> (<span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:Default</span>)
|
285
|
-
<span class="ruby-identifier">
|
286
|
-
|
287
|
-
<span class="ruby-
|
288
|
-
<span class="ruby-
|
289
|
-
<span class="ruby-
|
304
|
+
<span class="ruby-identifier">add_native_expr_with_default</span>(<span class="ruby-identifier">stmt_list</span>, <span class="ruby-identifier">arg</span>, <span class="ruby-identifier">expr_code</span>, <span class="ruby-identifier">flag_escape</span>,
|
305
|
+
<span class="ruby-node">"if (#{d_arg}) {"</span>, <span class="ruby-value str">"} else {"</span>, <span class="ruby-value str">"}"</span>)
|
306
|
+
<span class="ruby-comment cmt">#stmt_list << stag_stmt(arg)</span>
|
307
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new_without_newline("if (#{d_arg}) {", :if)</span>
|
308
|
+
<span class="ruby-comment cmt">#flag_escape = d_name == :default ? nil : (d_name == :Default)</span>
|
309
|
+
<span class="ruby-comment cmt">#stmt_list << PrintStatement.new([ NativeExpression.new(d_arg, flag_escape) ])</span>
|
310
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new_without_newline("} else {", :else)</span>
|
311
|
+
<span class="ruby-comment cmt">#stmt_list.concat(arg.cont_stmts)</span>
|
312
|
+
<span class="ruby-comment cmt">#stmt_list << NativeStatement.new_without_newline("}", :else)</span>
|
313
|
+
<span class="ruby-comment cmt">#stmt_list << etag_stmt(arg)</span>
|
290
314
|
|
291
315
|
<span class="ruby-keyword kw">else</span>
|
292
316
|
<span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span>
|
@@ -300,19 +324,19 @@ directive handler for ePerl
|
|
300
324
|
</div>
|
301
325
|
</div>
|
302
326
|
|
303
|
-
<div id="method-
|
304
|
-
<a name="
|
327
|
+
<div id="method-M000064" class="method-detail">
|
328
|
+
<a name="M000064"></a>
|
305
329
|
|
306
330
|
<div class="method-heading">
|
307
|
-
<a href="#
|
331
|
+
<a href="#M000064" class="method-signature">
|
308
332
|
<span class="method-name">mapping_pattern</span><span class="method-args">()</span>
|
309
333
|
</a>
|
310
334
|
</div>
|
311
335
|
|
312
336
|
<div class="method-description">
|
313
337
|
<p><a class="source-toggle" href="#"
|
314
|
-
onclick="toggleCode('
|
315
|
-
<div class="method-source-code" id="
|
338
|
+
onclick="toggleCode('M000064-source');return false;">[Source]</a></p>
|
339
|
+
<div class="method-source-code" id="M000064-source">
|
316
340
|
<pre>
|
317
341
|
<span class="ruby-comment cmt"># File kwartz/binding/eperl.rb, line 32</span>
|
318
342
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">mapping_pattern</span>
|