kwartz 3.1.2 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGES +444 -0
- data/README.txt +4 -1
- data/bin/kwartz +2 -2
- data/doc-api/classes/Kwartz.html +16 -7
- 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 +71 -61
- data/doc-api/classes/Kwartz/BaseError.html +12 -12
- data/doc-api/classes/Kwartz/BaseTranslator.html +104 -74
- 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 +50 -50
- data/doc-api/classes/Kwartz/Config.html +5 -0
- data/doc-api/classes/Kwartz/ConvertError.html +12 -12
- data/doc-api/classes/Kwartz/Converter.html +31 -33
- data/doc-api/classes/Kwartz/CssStyleParser.html +207 -168
- data/doc-api/classes/Kwartz/Defun.html +32 -31
- data/doc-api/classes/Kwartz/{HandlerArgument.html → Directive.html} +27 -53
- data/doc-api/classes/Kwartz/ElementInfo.html +68 -53
- data/doc-api/classes/Kwartz/EperlExpressionParser.html +185 -0
- data/doc-api/classes/Kwartz/EperlHandler.html +65 -58
- data/doc-api/classes/Kwartz/EperlTranslator.html +14 -7
- data/doc-api/classes/Kwartz/ErubisTranslator.html +14 -7
- data/doc-api/classes/Kwartz/ErubyTranslator.html +14 -7
- data/doc-api/classes/Kwartz/ExpandStatement.html +20 -20
- data/doc-api/classes/Kwartz/Expander.html +358 -0
- data/doc-api/classes/Kwartz/Handler.html +287 -157
- data/doc-api/classes/Kwartz/{StatementHelper.html → HandlerHelper.html} +307 -112
- data/doc-api/classes/Kwartz/Helper/ActionViewHelper.html +23 -23
- data/doc-api/classes/Kwartz/Helper/RailsTemplate.html +96 -96
- data/doc-api/classes/Kwartz/JstlExpressionParser.html +181 -0
- data/doc-api/classes/Kwartz/JstlHandler.html +134 -126
- data/doc-api/classes/Kwartz/JstlTranslator.html +21 -14
- data/doc-api/classes/Kwartz/KwartzError.html +6 -6
- data/doc-api/classes/Kwartz/Main.html +4 -4
- data/doc-api/classes/Kwartz/NativeExpression.html +19 -19
- data/doc-api/classes/Kwartz/NativeStatement.html +24 -24
- data/doc-api/classes/Kwartz/Node.html +7 -7
- data/doc-api/classes/Kwartz/PIErubisTranslator.html +21 -14
- data/doc-api/classes/Kwartz/ParseError.html +6 -6
- data/doc-api/classes/Kwartz/PerlExpressionParser.html +185 -0
- data/doc-api/classes/Kwartz/PerlHandler.html +353 -0
- data/doc-api/classes/Kwartz/PerlTranslator.html +226 -0
- data/doc-api/classes/Kwartz/PhpExpressionParser.html +185 -0
- data/doc-api/classes/Kwartz/PhpHandler.html +63 -56
- data/doc-api/classes/Kwartz/PhpTranslator.html +21 -14
- data/doc-api/classes/Kwartz/PresentationLogicParser.html +126 -123
- data/doc-api/classes/Kwartz/PrintStatement.html +18 -18
- data/doc-api/classes/Kwartz/RailsHandler.html +84 -85
- data/doc-api/classes/Kwartz/RailsTranslator.html +13 -6
- data/doc-api/classes/Kwartz/RubyExpressionParser.html +180 -0
- data/doc-api/classes/Kwartz/RubyHandler.html +73 -69
- data/doc-api/classes/Kwartz/RubyStyleParser.html +86 -86
- data/doc-api/classes/Kwartz/RubyTranslator.html +28 -21
- data/doc-api/classes/Kwartz/Ruleset.html +622 -1
- data/doc-api/classes/Kwartz/StrutsTranslator.html +14 -14
- data/doc-api/classes/Kwartz/TagInfo.html +52 -27
- data/doc-api/classes/Kwartz/TextConverter.html +75 -37
- data/doc-api/classes/Kwartz/Translator.html +54 -53
- data/doc-api/classes/Kwartz/Util.html +25 -25
- data/doc-api/created.rid +1 -1
- data/doc-api/files/__/README_txt.html +7 -2
- data/doc-api/files/kwartz/assert_rb.html +2 -2
- data/doc-api/files/kwartz/binding/eperl_rb.html +2 -2
- data/doc-api/files/kwartz/binding/erubis_rb.html +2 -2
- data/doc-api/files/kwartz/binding/eruby_rb.html +2 -2
- data/doc-api/files/kwartz/binding/jstl_rb.html +2 -2
- data/doc-api/files/kwartz/binding/perl_rb.html +115 -0
- data/doc-api/files/kwartz/binding/php_rb.html +2 -2
- data/doc-api/files/kwartz/binding/pierubis_rb.html +2 -2
- data/doc-api/files/kwartz/binding/rails_rb.html +2 -2
- data/doc-api/files/kwartz/binding/ruby_rb.html +2 -2
- data/doc-api/files/kwartz/binding/struts_rb.html +2 -2
- data/doc-api/files/kwartz/config_rb.html +2 -2
- data/doc-api/files/kwartz/converter_rb.html +2 -2
- data/doc-api/files/kwartz/defun_rb.html +2 -2
- data/doc-api/files/kwartz/error_rb.html +2 -2
- data/doc-api/files/kwartz/helper/rails_rb.html +2 -2
- data/doc-api/files/kwartz/main_rb.html +3 -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 +2 -2
- data/doc-api/files/kwartz/util/testcase-helper_rb.html +2 -2
- data/doc-api/files/kwartz/util_rb.html +2 -2
- data/doc-api/files/kwartz_rb.html +2 -2
- data/doc-api/fr_class_index.html +10 -5
- data/doc-api/fr_file_index.html +1 -0
- data/doc-api/fr_method_index.html +268 -239
- data/doc/docstyle.css +9 -3
- data/doc/img/fig05.png +0 -0
- data/doc/introduction-to-kwartz.html +3040 -0
- data/doc/pattern-catalog.html +5 -3
- data/doc/reference.html +680 -26
- data/doc/users-guide.html +222 -67
- data/kwartz.gemspec +4 -4
- data/lib/kwartz.rb +3 -3
- data/lib/kwartz/assert.rb +2 -2
- data/lib/kwartz/binding/eperl.rb +71 -31
- data/lib/kwartz/binding/erubis.rb +3 -2
- data/lib/kwartz/binding/eruby.rb +3 -2
- data/lib/kwartz/binding/jstl.rb +66 -29
- data/lib/kwartz/binding/perl.rb +230 -0
- data/lib/kwartz/binding/php.rb +69 -29
- data/lib/kwartz/binding/pierubis.rb +3 -2
- data/lib/kwartz/binding/rails.rb +18 -18
- data/lib/kwartz/binding/ruby.rb +74 -42
- data/lib/kwartz/binding/struts.rb +22 -21
- data/lib/kwartz/config.rb +4 -4
- data/lib/kwartz/converter.rb +465 -345
- data/lib/kwartz/defun.rb +2 -2
- data/lib/kwartz/error.rb +2 -2
- data/lib/kwartz/helper/rails.rb +2 -2
- data/lib/kwartz/main.rb +5 -4
- data/lib/kwartz/node.rb +92 -144
- data/lib/kwartz/parser.rb +112 -103
- data/lib/kwartz/translator.rb +14 -6
- data/lib/kwartz/util.rb +2 -2
- data/lib/kwartz/util/assert-text-equal.rb +2 -2
- data/lib/kwartz/util/testcase-helper.rb +1 -1
- data/test/test-compile.rb +2 -2
- data/test/test-compile.yaml +81 -0
- data/test/test-converter.rb +4 -8
- data/test/test-converter.yaml +152 -3
- data/test/test-directives.rb +2 -2
- data/test/test-directives.yaml +222 -0
- data/test/test-main.rb +6 -4
- data/test/test-main.yaml +66 -1
- data/test/test-parser.rb +12 -3
- data/test/test-parser.yaml +64 -51
- data/test/test-rails.rb +2 -2
- data/test/test-ruleset.rb +2 -2
- data/test/test-ruleset.yaml +465 -4
- data/test/test.log +6 -0
- data/test/test.rb +2 -2
- metadata +116 -106
- data/ChangeLog +0 -156
- data/doc-api/classes/Kwartz/DocumentRuleset.html +0 -369
- data/doc-api/classes/Kwartz/ElementExpander.html +0 -325
- data/doc-api/classes/Kwartz/ElementRuleset.html +0 -612
@@ -80,7 +80,7 @@
|
|
80
80
|
|
81
81
|
<div id="description">
|
82
82
|
<p>
|
83
|
-
(abstract) handle directives
|
83
|
+
(abstract) <a href="Handler.html#M000261">handle</a> directives
|
84
84
|
</p>
|
85
85
|
|
86
86
|
</div>
|
@@ -92,16 +92,19 @@
|
|
92
92
|
<h3 class="section-bar">Methods</h3>
|
93
93
|
|
94
94
|
<div class="name-list">
|
95
|
-
<a href="#
|
96
|
-
<a href="#
|
97
|
-
<a href="#
|
98
|
-
<a href="#
|
99
|
-
<a href="#
|
100
|
-
<a href="#
|
101
|
-
<a href="#
|
102
|
-
<a href="#
|
103
|
-
<a href="#
|
104
|
-
<a href="#
|
95
|
+
<a href="#M000262">apply_rulesets</a>
|
96
|
+
<a href="#M000257">directive_pattern</a>
|
97
|
+
<a href="#M000263">extract</a>
|
98
|
+
<a href="#M000265">get_class</a>
|
99
|
+
<a href="#M000255">get_element_info</a>
|
100
|
+
<a href="#M000254">get_ruleset</a>
|
101
|
+
<a href="#M000261">handle</a>
|
102
|
+
<a href="#M000260">handle_directives</a>
|
103
|
+
<a href="#M000258">mapping_pattern</a>
|
104
|
+
<a href="#M000253">new</a>
|
105
|
+
<a href="#M000259">parse_expr_str</a>
|
106
|
+
<a href="#M000264">register_class</a>
|
107
|
+
<a href="#M000256">register_element_info</a>
|
105
108
|
</div>
|
106
109
|
</div>
|
107
110
|
|
@@ -114,9 +117,9 @@
|
|
114
117
|
|
115
118
|
<div id="includes-list">
|
116
119
|
<span class="include-name"><a href="Assertion.html">Assertion</a></span>
|
117
|
-
<span class="include-name">
|
118
|
-
<span class="include-name"><a href="
|
119
|
-
<span class="include-name"><a href="
|
120
|
+
<span class="include-name">ConvertErrorHelper</span>
|
121
|
+
<span class="include-name"><a href="HandlerHelper.html">HandlerHelper</a></span>
|
122
|
+
<span class="include-name"><a href="Expander.html">Expander</a></span>
|
120
123
|
</div>
|
121
124
|
</div>
|
122
125
|
|
@@ -131,11 +134,6 @@
|
|
131
134
|
|
132
135
|
<div class="name-list">
|
133
136
|
<table>
|
134
|
-
<tr class="top-aligned-row context-row">
|
135
|
-
<td class="context-item-name">converter</td>
|
136
|
-
<td class="context-item-value"> [RW] </td>
|
137
|
-
<td class="context-item-desc"></td>
|
138
|
-
</tr>
|
139
137
|
<tr class="top-aligned-row context-row">
|
140
138
|
<td class="context-item-name">even</td>
|
141
139
|
<td class="context-item-value"> [R] </td>
|
@@ -161,21 +159,21 @@
|
|
161
159
|
<div id="methods">
|
162
160
|
<h3 class="section-bar">Public Class methods</h3>
|
163
161
|
|
164
|
-
<div id="method-
|
165
|
-
<a name="
|
162
|
+
<div id="method-M000265" class="method-detail">
|
163
|
+
<a name="M000265"></a>
|
166
164
|
|
167
165
|
<div class="method-heading">
|
168
|
-
<a href="#
|
166
|
+
<a href="#M000265" class="method-signature">
|
169
167
|
<span class="method-name">get_class</span><span class="method-args">(lang)</span>
|
170
168
|
</a>
|
171
169
|
</div>
|
172
170
|
|
173
171
|
<div class="method-description">
|
174
172
|
<p><a class="source-toggle" href="#"
|
175
|
-
onclick="toggleCode('
|
176
|
-
<div class="method-source-code" id="
|
173
|
+
onclick="toggleCode('M000265-source');return false;">[Source]</a></p>
|
174
|
+
<div class="method-source-code" id="M000265-source">
|
177
175
|
<pre>
|
178
|
-
<span class="ruby-comment cmt"># File kwartz/converter.rb, line
|
176
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 931</span>
|
179
177
|
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">get_class</span>(<span class="ruby-identifier">lang</span>)
|
180
178
|
<span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@@class_table</span>[<span class="ruby-identifier">lang</span>]
|
181
179
|
<span class="ruby-keyword kw">end</span>
|
@@ -184,51 +182,49 @@
|
|
184
182
|
</div>
|
185
183
|
</div>
|
186
184
|
|
187
|
-
<div id="method-
|
188
|
-
<a name="
|
185
|
+
<div id="method-M000253" class="method-detail">
|
186
|
+
<a name="M000253"></a>
|
189
187
|
|
190
188
|
<div class="method-heading">
|
191
|
-
<a href="#
|
192
|
-
<span class="method-name">new</span><span class="method-args">(
|
189
|
+
<a href="#M000253" class="method-signature">
|
190
|
+
<span class="method-name">new</span><span class="method-args">(rulesets=[], properties={})</span>
|
193
191
|
</a>
|
194
192
|
</div>
|
195
193
|
|
196
194
|
<div class="method-description">
|
197
195
|
<p><a class="source-toggle" href="#"
|
198
|
-
onclick="toggleCode('
|
199
|
-
<div class="method-source-code" id="
|
196
|
+
onclick="toggleCode('M000253-source');return false;">[Source]</a></p>
|
197
|
+
<div class="method-source-code" id="M000253-source">
|
200
198
|
<pre>
|
201
|
-
<span class="ruby-comment cmt"># File kwartz/converter.rb, line
|
202
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">
|
203
|
-
<span class="ruby-ivar">@
|
204
|
-
<span class="ruby-
|
205
|
-
<span class="ruby-ivar">@elem_ruleset_table</span> = {} ; <span class="ruby-identifier">elem_rulesets</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">ruleset</span><span class="ruby-operator">|</span> <span class="ruby-ivar">@elem_ruleset_table</span>[<span class="ruby-identifier">ruleset</span>.<span class="ruby-identifier">name</span>] = <span class="ruby-identifier">ruleset</span> }
|
199
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 629</span>
|
200
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">rulesets</span>=[], <span class="ruby-identifier">properties</span>={})
|
201
|
+
<span class="ruby-ivar">@ruleset_table</span> = {}
|
202
|
+
<span class="ruby-identifier">rulesets</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">ruleset</span><span class="ruby-operator">|</span> <span class="ruby-identifier">_register_ruleset</span>(<span class="ruby-identifier">ruleset</span>) }
|
206
203
|
<span class="ruby-ivar">@elem_info_table</span> = {}
|
207
|
-
<span class="ruby-identifier">
|
208
|
-
<span class="ruby-ivar">@odd</span>
|
209
|
-
<span class="ruby-ivar">@even</span>
|
210
|
-
<span class="ruby-ivar">@filename</span> = <span class="ruby-keyword kw">nil</span>
|
204
|
+
<span class="ruby-ivar">@delspan</span> = <span class="ruby-identifier">properties</span>.<span class="ruby-identifier">fetch</span>(<span class="ruby-identifier">:delspan</span>, <span class="ruby-constant">Config</span><span class="ruby-operator">::</span><span class="ruby-constant">PROPERTY_DELSPAN</span>) <span class="ruby-comment cmt"># delete dummy <span> tag or not</span>
|
205
|
+
<span class="ruby-ivar">@odd</span> = <span class="ruby-identifier">properties</span>.<span class="ruby-identifier">fetch</span>(<span class="ruby-identifier">:odd</span>, <span class="ruby-constant">Config</span><span class="ruby-operator">::</span><span class="ruby-constant">PROPERTY_ODD</span>) <span class="ruby-comment cmt"># "'odd'"</span>
|
206
|
+
<span class="ruby-ivar">@even</span> = <span class="ruby-identifier">properties</span>.<span class="ruby-identifier">fetch</span>(<span class="ruby-identifier">:even</span>, <span class="ruby-constant">Config</span><span class="ruby-operator">::</span><span class="ruby-constant">PROPERTY_EVEN</span>) <span class="ruby-comment cmt"># "'even'"</span>
|
211
207
|
<span class="ruby-keyword kw">end</span>
|
212
208
|
</pre>
|
213
209
|
</div>
|
214
210
|
</div>
|
215
211
|
</div>
|
216
212
|
|
217
|
-
<div id="method-
|
218
|
-
<a name="
|
213
|
+
<div id="method-M000264" class="method-detail">
|
214
|
+
<a name="M000264"></a>
|
219
215
|
|
220
216
|
<div class="method-heading">
|
221
|
-
<a href="#
|
217
|
+
<a href="#M000264" class="method-signature">
|
222
218
|
<span class="method-name">register_class</span><span class="method-args">(lang, klass)</span>
|
223
219
|
</a>
|
224
220
|
</div>
|
225
221
|
|
226
222
|
<div class="method-description">
|
227
223
|
<p><a class="source-toggle" href="#"
|
228
|
-
onclick="toggleCode('
|
229
|
-
<div class="method-source-code" id="
|
224
|
+
onclick="toggleCode('M000264-source');return false;">[Source]</a></p>
|
225
|
+
<div class="method-source-code" id="M000264-source">
|
230
226
|
<pre>
|
231
|
-
<span class="ruby-comment cmt"># File kwartz/converter.rb, line
|
227
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 926</span>
|
232
228
|
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">register_class</span>(<span class="ruby-identifier">lang</span>, <span class="ruby-identifier">klass</span>)
|
233
229
|
<span class="ruby-ivar">@@class_table</span>[<span class="ruby-identifier">lang</span>] = <span class="ruby-identifier">klass</span>
|
234
230
|
<span class="ruby-keyword kw">end</span>
|
@@ -239,21 +235,52 @@
|
|
239
235
|
|
240
236
|
<h3 class="section-bar">Public Instance methods</h3>
|
241
237
|
|
242
|
-
<div id="method-
|
243
|
-
<a name="
|
238
|
+
<div id="method-M000262" class="method-detail">
|
239
|
+
<a name="M000262"></a>
|
244
240
|
|
245
241
|
<div class="method-heading">
|
246
|
-
<a href="#
|
242
|
+
<a href="#M000262" class="method-signature">
|
243
|
+
<span class="method-name">apply_rulesets</span><span class="method-args">(elem_info)</span>
|
244
|
+
</a>
|
245
|
+
</div>
|
246
|
+
|
247
|
+
<div class="method-description">
|
248
|
+
<p><a class="source-toggle" href="#"
|
249
|
+
onclick="toggleCode('M000262-source');return false;">[Source]</a></p>
|
250
|
+
<div class="method-source-code" id="M000262-source">
|
251
|
+
<pre>
|
252
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 900</span>
|
253
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">apply_rulesets</span>(<span class="ruby-identifier">elem_info</span>)
|
254
|
+
<span class="ruby-identifier">assert</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-operator">!</span><span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">applied</span>
|
255
|
+
<span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">applied</span> = <span class="ruby-keyword kw">true</span>
|
256
|
+
<span class="ruby-identifier">tagname</span> = <span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">stag_info</span>.<span class="ruby-identifier">tagname</span>
|
257
|
+
<span class="ruby-identifier">classname</span> = <span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">attr_info</span>[<span class="ruby-value str">'class'</span>]
|
258
|
+
<span class="ruby-comment cmt">#idname = elem_info.name || elem_info.attr_info['id']</span>
|
259
|
+
<span class="ruby-identifier">ruleset</span> = <span class="ruby-keyword kw">nil</span>
|
260
|
+
<span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">apply</span>(<span class="ruby-identifier">ruleset</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">ruleset</span> = <span class="ruby-identifier">get_ruleset</span>(<span class="ruby-identifier">tagname</span>)
|
261
|
+
<span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">apply</span>(<span class="ruby-identifier">ruleset</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">classname</span> <span class="ruby-operator">&&</span> (<span class="ruby-identifier">ruleset</span> = <span class="ruby-identifier">get_ruleset</span>(<span class="ruby-value str">'.'</span><span class="ruby-operator">+</span><span class="ruby-identifier">classname</span>))
|
262
|
+
<span class="ruby-comment cmt">#elem_info.apply(ruleset) if idname && (ruleset = get_ruleset('#'+idname))</span>
|
263
|
+
<span class="ruby-keyword kw">end</span>
|
264
|
+
</pre>
|
265
|
+
</div>
|
266
|
+
</div>
|
267
|
+
</div>
|
268
|
+
|
269
|
+
<div id="method-M000263" class="method-detail">
|
270
|
+
<a name="M000263"></a>
|
271
|
+
|
272
|
+
<div class="method-heading">
|
273
|
+
<a href="#M000263" class="method-signature">
|
247
274
|
<span class="method-name">extract</span><span class="method-args">(elem_name, content_only=false)</span>
|
248
275
|
</a>
|
249
276
|
</div>
|
250
277
|
|
251
278
|
<div class="method-description">
|
252
279
|
<p><a class="source-toggle" href="#"
|
253
|
-
onclick="toggleCode('
|
254
|
-
<div class="method-source-code" id="
|
280
|
+
onclick="toggleCode('M000263-source');return false;">[Source]</a></p>
|
281
|
+
<div class="method-source-code" id="M000263-source">
|
255
282
|
<pre>
|
256
|
-
<span class="ruby-comment cmt"># File kwartz/converter.rb, line
|
283
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 913</span>
|
257
284
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">extract</span>(<span class="ruby-identifier">elem_name</span>, <span class="ruby-identifier">content_only</span>=<span class="ruby-keyword kw">false</span>)
|
258
285
|
<span class="ruby-identifier">elem_info</span> = <span class="ruby-ivar">@elem_info_table</span>[<span class="ruby-identifier">elem_name</span>]
|
259
286
|
<span class="ruby-identifier">elem_info</span> <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-node">"element '#{elem_name}' not found."</span>, <span class="ruby-keyword kw">nil</span>)
|
@@ -267,22 +294,22 @@
|
|
267
294
|
</div>
|
268
295
|
</div>
|
269
296
|
|
270
|
-
<div id="method-
|
271
|
-
<a name="
|
297
|
+
<div id="method-M000255" class="method-detail">
|
298
|
+
<a name="M000255"></a>
|
272
299
|
|
273
300
|
<div class="method-heading">
|
274
|
-
<a href="#
|
301
|
+
<a href="#M000255" class="method-signature">
|
275
302
|
<span class="method-name">get_element_info</span><span class="method-args">(name)</span>
|
276
303
|
</a>
|
277
304
|
</div>
|
278
305
|
|
279
306
|
<div class="method-description">
|
280
307
|
<p><a class="source-toggle" href="#"
|
281
|
-
onclick="toggleCode('
|
282
|
-
<div class="method-source-code" id="
|
308
|
+
onclick="toggleCode('M000255-source');return false;">[Source]</a></p>
|
309
|
+
<div class="method-source-code" id="M000255-source">
|
283
310
|
<pre>
|
284
|
-
<span class="ruby-comment cmt"># File kwartz/converter.rb, line
|
285
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_element_info</span>(<span class="ruby-identifier">name</span>) <span class="ruby-comment cmt"># for
|
311
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 655</span>
|
312
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_element_info</span>(<span class="ruby-identifier">name</span>) <span class="ruby-comment cmt"># for Expander module</span>
|
286
313
|
<span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@elem_info_table</span>[<span class="ruby-identifier">name</span>]
|
287
314
|
<span class="ruby-keyword kw">end</span>
|
288
315
|
</pre>
|
@@ -290,42 +317,43 @@
|
|
290
317
|
</div>
|
291
318
|
</div>
|
292
319
|
|
293
|
-
<div id="method-
|
294
|
-
<a name="
|
320
|
+
<div id="method-M000254" class="method-detail">
|
321
|
+
<a name="M000254"></a>
|
295
322
|
|
296
323
|
<div class="method-heading">
|
297
|
-
<a href="#
|
298
|
-
<span class="method-name">
|
324
|
+
<a href="#M000254" class="method-signature">
|
325
|
+
<span class="method-name">get_ruleset</span><span class="method-args">(selector)</span>
|
299
326
|
</a>
|
300
327
|
</div>
|
301
328
|
|
302
329
|
<div class="method-description">
|
303
330
|
<p><a class="source-toggle" href="#"
|
304
|
-
onclick="toggleCode('
|
305
|
-
<div class="method-source-code" id="
|
331
|
+
onclick="toggleCode('M000254-source');return false;">[Source]</a></p>
|
332
|
+
<div class="method-source-code" id="M000254-source">
|
306
333
|
<pre>
|
307
|
-
<span class="ruby-comment cmt"># File kwartz/converter.rb, line
|
308
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">
|
309
|
-
<span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@
|
334
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 650</span>
|
335
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_ruleset</span>(<span class="ruby-identifier">selector</span>) <span class="ruby-comment cmt"># for Expander module and Converter class</span>
|
336
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@ruleset_table</span>[<span class="ruby-identifier">selector</span>]
|
310
337
|
<span class="ruby-keyword kw">end</span>
|
311
338
|
</pre>
|
312
339
|
</div>
|
313
340
|
</div>
|
314
341
|
</div>
|
315
342
|
|
316
|
-
<div id="method-
|
317
|
-
<a name="
|
343
|
+
<div id="method-M000261" class="method-detail">
|
344
|
+
<a name="M000261"></a>
|
318
345
|
|
319
346
|
<div class="method-heading">
|
320
|
-
<a href="#
|
321
|
-
<span class="method-name">handle</span><span class="method-args">(
|
347
|
+
<a href="#M000261" class="method-signature">
|
348
|
+
<span class="method-name">handle</span><span class="method-args">(directive, elem_info, stmt_list)</span>
|
322
349
|
</a>
|
323
350
|
</div>
|
324
351
|
|
325
352
|
<div class="method-description">
|
326
353
|
<p>
|
327
|
-
handle directives (‘stag’,
|
328
|
-
‘
|
354
|
+
<a href="Handler.html#M000261">handle</a> directives (‘stag’,
|
355
|
+
‘etag’, ‘elem’,
|
356
|
+
‘cont’(=’value’))
|
329
357
|
</p>
|
330
358
|
<p>
|
331
359
|
return true if directive name is one of ‘stag’,
|
@@ -333,87 +361,91 @@ return true if directive name is one of ‘stag’,
|
|
333
361
|
‘value’, else return false.
|
334
362
|
</p>
|
335
363
|
<p><a class="source-toggle" href="#"
|
336
|
-
onclick="toggleCode('
|
337
|
-
<div class="method-source-code" id="
|
364
|
+
onclick="toggleCode('M000261-source');return false;">[Source]</a></p>
|
365
|
+
<div class="method-source-code" id="M000261-source">
|
338
366
|
<pre>
|
339
|
-
<span class="ruby-comment cmt"># File kwartz/converter.rb, line
|
340
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">handle</span>(<span class="ruby-identifier">
|
341
|
-
<span class="ruby-identifier">
|
342
|
-
<span class="ruby-identifier">
|
343
|
-
<span class="ruby-identifier">
|
344
|
-
<span class="ruby-identifier">
|
367
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 772</span>
|
368
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">handle</span>(<span class="ruby-identifier">directive</span>, <span class="ruby-identifier">elem_info</span>, <span class="ruby-identifier">stmt_list</span>)
|
369
|
+
<span class="ruby-identifier">d_name</span> = <span class="ruby-identifier">directive</span>.<span class="ruby-identifier">name</span>
|
370
|
+
<span class="ruby-identifier">d_arg</span> = <span class="ruby-identifier">directive</span>.<span class="ruby-identifier">arg</span>
|
371
|
+
<span class="ruby-identifier">d_str</span> = <span class="ruby-identifier">directive</span>.<span class="ruby-identifier">str</span>
|
372
|
+
<span class="ruby-identifier">d_attr</span> = <span class="ruby-identifier">directive</span>.<span class="ruby-identifier">dattr</span>
|
373
|
+
<span class="ruby-identifier">e</span> = <span class="ruby-identifier">elem_info</span>
|
374
|
+
<span class="ruby-identifier">linenum</span> = <span class="ruby-identifier">e</span>.<span class="ruby-identifier">stag_info</span>.<span class="ruby-identifier">linenum</span>
|
345
375
|
|
346
376
|
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">d_name</span>
|
347
377
|
|
348
378
|
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>
|
349
|
-
<span class="ruby-identifier">assert</span> <span class="ruby-keyword kw">
|
350
|
-
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">stag_stmt</span>(<span class="ruby-identifier">arg</span>)
|
351
|
-
<span class="ruby-identifier">stmt_list</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-identifier">arg</span>.<span class="ruby-identifier">cont_stmts</span>)
|
352
|
-
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">etag_stmt</span>(<span class="ruby-identifier">arg</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">etag_info</span> <span class="ruby-comment cmt"># when empty-tag</span>
|
379
|
+
<span class="ruby-identifier">assert</span> <span class="ruby-keyword kw">false</span>
|
353
380
|
|
354
381
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:dummy</span>
|
355
382
|
<span class="ruby-comment cmt"># nothing</span>
|
356
383
|
|
357
384
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:id</span>, <span class="ruby-identifier">:mark</span>
|
358
|
-
<span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">d_arg</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/\A(
|
359
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-node">"'#{d_str}': invalid marking name."</span>, <span class="ruby-identifier">
|
385
|
+
<span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">d_arg</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/\A([-\w]+)\z/</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">d_arg</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/\A'([-\w]+)'\z/</span>
|
386
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-node">"'#{d_str}': invalid marking name."</span>, <span class="ruby-identifier">linenum</span>)
|
360
387
|
<span class="ruby-keyword kw">end</span>
|
361
388
|
<span class="ruby-identifier">name</span> = <span class="ruby-identifier">$1</span>
|
362
|
-
<span class="ruby-
|
363
|
-
|
364
|
-
|
365
|
-
<span class="ruby-comment cmt">#unless Config::ALLOW_DUPLICATE_ID</span>
|
366
|
-
<span class="ruby-identifier">previous_linenum</span> = <span class="ruby-ivar">@elem_info_table</span>[<span class="ruby-identifier">name</span>].<span class="ruby-identifier">stag_info</span>.<span class="ruby-identifier">linenum</span>
|
389
|
+
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">get_element_info</span>(<span class="ruby-identifier">name</span>)
|
390
|
+
<span class="ruby-keyword kw">unless</span> <span class="ruby-constant">Config</span><span class="ruby-operator">::</span><span class="ruby-constant">ALLOW_DUPLICATE_ID</span>
|
391
|
+
<span class="ruby-identifier">previous_linenum</span> = <span class="ruby-identifier">get_element_info</span>(<span class="ruby-identifier">name</span>).<span class="ruby-identifier">stag_info</span>.<span class="ruby-identifier">linenum</span>
|
367
392
|
<span class="ruby-identifier">msg</span> = <span class="ruby-node">"'#{d_str}': id '#{name}' is already used at line #{previous_linenum}."</span>
|
368
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-identifier">msg</span>, <span class="ruby-identifier">
|
369
|
-
<span class="ruby-
|
370
|
-
<span class="ruby-keyword kw">else</span>
|
371
|
-
<span class="ruby-ivar">@elem_info_table</span>[<span class="ruby-identifier">name</span>] = <span class="ruby-identifier">elem_info</span>
|
393
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-identifier">msg</span>, <span class="ruby-identifier">linenum</span>)
|
394
|
+
<span class="ruby-keyword kw">end</span>
|
372
395
|
<span class="ruby-keyword kw">end</span>
|
396
|
+
<span class="ruby-identifier">ruleset</span> = <span class="ruby-identifier">get_ruleset</span>(<span class="ruby-value str">'#'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">name</span>)
|
397
|
+
<span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">apply</span>(<span class="ruby-identifier">ruleset</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">ruleset</span>
|
398
|
+
<span class="ruby-identifier">register_element_info</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">elem_info</span>)
|
373
399
|
<span class="ruby-comment cmt">#stmt_list << ExpandStatement.new(:element, name) # lazy expantion</span>
|
374
400
|
<span class="ruby-identifier">expand_element_info</span>(<span class="ruby-identifier">elem_info</span>, <span class="ruby-identifier">stmt_list</span>)
|
375
401
|
|
376
402
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:stag</span>, <span class="ruby-identifier">:Stag</span>, <span class="ruby-identifier">:STAG</span>
|
377
|
-
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">
|
403
|
+
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">elem_info</span>, <span class="ruby-identifier">d_str</span>)
|
378
404
|
<span class="ruby-identifier">flag_escape</span> = <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:stag</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">:Stag</span>)
|
379
|
-
<span class="ruby-identifier">
|
380
|
-
<span class="ruby-identifier">
|
381
|
-
<span class="ruby-identifier">stmt_list</span
|
382
|
-
<span class="ruby-identifier">stmt_list</span
|
405
|
+
<span class="ruby-identifier">expr_str</span> = <span class="ruby-identifier">d_attr</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'id'</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">parse_expr_str</span>(<span class="ruby-identifier">d_arg</span>, <span class="ruby-identifier">linenum</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">d_arg</span>
|
406
|
+
<span class="ruby-identifier">expr</span> = <span class="ruby-constant">NativeExpression</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">expr_str</span>, <span class="ruby-identifier">flag_escape</span>)
|
407
|
+
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">build_print_expr_stmt</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">e</span>.<span class="ruby-identifier">stag_info</span>, <span class="ruby-keyword kw">nil</span>)
|
408
|
+
<span class="ruby-identifier">stmt_list</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-identifier">e</span>.<span class="ruby-identifier">cont_stmts</span>)
|
409
|
+
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">etag_stmt</span>(<span class="ruby-identifier">elem_info</span>)
|
383
410
|
|
384
411
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:etag</span>, <span class="ruby-identifier">:Etag</span>, <span class="ruby-identifier">:ETAG</span>
|
385
|
-
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">
|
412
|
+
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">elem_info</span>, <span class="ruby-identifier">d_str</span>)
|
386
413
|
<span class="ruby-identifier">flag_escape</span> = <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:etag</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">:Etag</span>)
|
387
|
-
<span class="ruby-identifier">
|
388
|
-
<span class="ruby-identifier">
|
389
|
-
<span class="ruby-identifier">stmt_list</span
|
390
|
-
<span class="ruby-identifier">stmt_list</span
|
414
|
+
<span class="ruby-identifier">expr_str</span> = <span class="ruby-identifier">d_attr</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'id'</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">parse_expr_str</span>(<span class="ruby-identifier">d_arg</span>, <span class="ruby-identifier">linenum</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">d_arg</span>
|
415
|
+
<span class="ruby-identifier">expr</span> = <span class="ruby-constant">NativeExpression</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">expr_str</span>, <span class="ruby-identifier">flag_escape</span>)
|
416
|
+
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">stag_stmt</span>(<span class="ruby-identifier">elem_info</span>)
|
417
|
+
<span class="ruby-identifier">stmt_list</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-identifier">e</span>.<span class="ruby-identifier">cont_stmts</span>)
|
418
|
+
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">build_print_expr_stmt</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">e</span>.<span class="ruby-identifier">etag_info</span>)
|
391
419
|
|
392
420
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:elem</span>, <span class="ruby-identifier">:Elem</span>, <span class="ruby-identifier">:ELEM</span>
|
393
421
|
<span class="ruby-identifier">flag_escape</span> = <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:elem</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">:Elem</span>)
|
394
|
-
<span class="ruby-identifier">
|
395
|
-
<span class="ruby-identifier">
|
422
|
+
<span class="ruby-identifier">expr_str</span> = <span class="ruby-identifier">d_attr</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'id'</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">parse_expr_str</span>(<span class="ruby-identifier">d_arg</span>, <span class="ruby-identifier">linenum</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">d_arg</span>
|
423
|
+
<span class="ruby-identifier">expr</span> = <span class="ruby-constant">NativeExpression</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">expr_str</span>, <span class="ruby-identifier">flag_escape</span>)
|
424
|
+
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">build_print_expr_stmt</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">e</span>.<span class="ruby-identifier">stag_info</span>, <span class="ruby-identifier">e</span>.<span class="ruby-identifier">etag_info</span>)
|
396
425
|
|
397
426
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:cont</span>, <span class="ruby-identifier">:Cont</span>, <span class="ruby-identifier">:CONT</span>, <span class="ruby-identifier">:value</span>, <span class="ruby-identifier">:Value</span>, <span class="ruby-identifier">:VALUE</span>
|
398
|
-
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">
|
399
|
-
<span class="ruby-identifier">
|
400
|
-
<span class="ruby-identifier">pargs</span> = <span class="ruby-identifier">build_print_args</span>(<span class="ruby-identifier">
|
427
|
+
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">elem_info</span>, <span class="ruby-identifier">directive</span>.<span class="ruby-identifier">str</span>)
|
428
|
+
<span class="ruby-identifier">e</span>.<span class="ruby-identifier">stag_info</span>.<span class="ruby-identifier">tail_space</span> = <span class="ruby-identifier">e</span>.<span class="ruby-identifier">etag_info</span>.<span class="ruby-identifier">head_space</span> = <span class="ruby-keyword kw">nil</span> <span class="ruby-comment cmt"># delete spaces</span>
|
429
|
+
<span class="ruby-identifier">pargs</span> = <span class="ruby-identifier">build_print_args</span>(<span class="ruby-identifier">e</span>.<span class="ruby-identifier">stag_info</span>, <span class="ruby-identifier">e</span>.<span class="ruby-identifier">attr_info</span>, <span class="ruby-identifier">e</span>.<span class="ruby-identifier">append_exprs</span>)
|
401
430
|
<span class="ruby-identifier">flag_escape</span> = (<span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:cont</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:value</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">:Cont</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:Value</span>)
|
402
|
-
<span class="ruby-identifier">
|
403
|
-
<span class="ruby-identifier">pargs</span> <span class="ruby-operator"><<</span> <span class="ruby-
|
431
|
+
<span class="ruby-identifier">expr_str</span> = <span class="ruby-identifier">d_attr</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'id'</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">parse_expr_str</span>(<span class="ruby-identifier">d_arg</span>, <span class="ruby-identifier">linenum</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">d_arg</span>
|
432
|
+
<span class="ruby-identifier">pargs</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">NativeExpression</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">expr_str</span>, <span class="ruby-identifier">flag_escape</span>)
|
433
|
+
<span class="ruby-identifier">pargs</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">etag_info</span>.<span class="ruby-identifier">tag_text</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">etag_info</span>.<span class="ruby-identifier">tagname</span>
|
404
434
|
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">PrintStatement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">pargs</span>)
|
405
435
|
|
406
436
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:attr</span>, <span class="ruby-identifier">:Attr</span>, <span class="ruby-identifier">:ATTR</span>
|
407
437
|
<span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">d_arg</span> <span class="ruby-operator">=~</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">mapping_pattern</span>() <span class="ruby-comment cmt"># ex. /\A'([-:\w]+)'\s+(.*)\z/</span>
|
408
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-node">"'#{d_str}': invalid attr pattern."</span>, <span class="ruby-identifier">
|
438
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-node">"'#{d_str}': invalid attr pattern."</span>, <span class="ruby-identifier">linenum</span>)
|
409
439
|
<span class="ruby-keyword kw">end</span>
|
410
440
|
<span class="ruby-identifier">aname</span> = <span class="ruby-identifier">$1</span>; <span class="ruby-identifier">avalue</span> = <span class="ruby-identifier">$2</span>
|
411
441
|
<span class="ruby-identifier">flag_escape</span> = <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:attr</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">:Attr</span>)
|
412
|
-
<span class="ruby-identifier">
|
442
|
+
<span class="ruby-identifier">expr_str</span> = <span class="ruby-identifier">d_attr</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'id'</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">parse_expr_str</span>(<span class="ruby-identifier">avalue</span>, <span class="ruby-identifier">linenum</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">avalue</span>
|
443
|
+
<span class="ruby-identifier">e</span>.<span class="ruby-identifier">attr_info</span>[<span class="ruby-identifier">aname</span>] = <span class="ruby-constant">NativeExpression</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">expr_str</span>, <span class="ruby-identifier">flag_escape</span>)
|
413
444
|
|
414
445
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:append</span>, <span class="ruby-identifier">:Append</span>, <span class="ruby-identifier">:APPEND</span>
|
415
446
|
<span class="ruby-identifier">flag_escape</span> = <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:append</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">:Append</span>)
|
416
|
-
<span class="ruby-identifier">
|
447
|
+
<span class="ruby-identifier">expr_str</span> = <span class="ruby-identifier">d_attr</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'id'</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">parse_expr_str</span>(<span class="ruby-identifier">d_arg</span>, <span class="ruby-identifier">linenum</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">d_arg</span>
|
448
|
+
<span class="ruby-identifier">e</span>.<span class="ruby-identifier">append_exprs</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">NativeExpression</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">expr_str</span>, <span class="ruby-identifier">flag_escape</span>)
|
417
449
|
|
418
450
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:replace_element_with_element</span>, <span class="ruby-identifier">:replace_element_with_content</span>,
|
419
451
|
<span class="ruby-identifier">:replace_content_with_element</span>, <span class="ruby-identifier">:replace_content_with_content</span>
|
@@ -422,35 +454,35 @@ return true if directive name is one of ‘stag’,
|
|
422
454
|
<span class="ruby-identifier">with_content</span> = <span class="ruby-identifier">arr</span>[<span class="ruby-value">3</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">'content'</span>
|
423
455
|
<span class="ruby-identifier">name</span> = <span class="ruby-identifier">d_arg</span>
|
424
456
|
<span class="ruby-comment cmt">#</span>
|
425
|
-
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">
|
426
|
-
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">stag_stmt</span>(<span class="ruby-identifier">
|
457
|
+
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">elem_info</span>, <span class="ruby-identifier">d_str</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">replace_cont</span>
|
458
|
+
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">stag_stmt</span>(<span class="ruby-identifier">elem_info</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">replace_cont</span>
|
427
459
|
<span class="ruby-comment cmt">#stmt_list << ExpandStatement.new(:element, name)</span>
|
428
|
-
<span class="ruby-identifier">
|
460
|
+
<span class="ruby-identifier">elem_info2</span> = <span class="ruby-ivar">@elem_info_table</span>[<span class="ruby-identifier">name</span>]
|
429
461
|
<span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">elem_info</span>
|
430
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-node">"'#{d_str}': element '#{name}' not found."</span>, <span class="ruby-identifier">
|
462
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-node">"'#{d_str}': element '#{name}' not found."</span>, <span class="ruby-identifier">linenum</span>)
|
431
463
|
<span class="ruby-keyword kw">end</span>
|
432
|
-
<span class="ruby-identifier">expand_element_info</span>(<span class="ruby-identifier">
|
433
|
-
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">etag_stmt</span>(<span class="ruby-identifier">
|
464
|
+
<span class="ruby-identifier">expand_element_info</span>(<span class="ruby-identifier">elem_info2</span>, <span class="ruby-identifier">stmt_list</span>, <span class="ruby-identifier">with_content</span>)
|
465
|
+
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">etag_stmt</span>(<span class="ruby-identifier">elem_info</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">replace_cont</span>
|
434
466
|
|
435
467
|
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:replace_element_with</span>, <span class="ruby-identifier">:replace_content_with</span>, <span class="ruby-identifier">:replace</span>, <span class="ruby-identifier">:placeholder</span>
|
436
468
|
<span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">d_arg</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/\A_?(element|content)\(["']?(\w+)["']?\)\z/</span>
|
437
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-node">"'#{d_str}': invalid #{d_name} format."</span>, <span class="ruby-identifier">
|
469
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-node">"'#{d_str}': invalid #{d_name} format."</span>, <span class="ruby-identifier">linenum</span>)
|
438
470
|
<span class="ruby-keyword kw">end</span>
|
439
471
|
<span class="ruby-identifier">kind</span> = <span class="ruby-identifier">$1</span>
|
440
472
|
<span class="ruby-identifier">name</span> = <span class="ruby-identifier">$2</span>
|
441
473
|
<span class="ruby-identifier">replace_cont</span> = <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:replace_content_with</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">d_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:placeholder</span>
|
442
474
|
<span class="ruby-identifier">with_content</span> = <span class="ruby-identifier">kind</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'content'</span>
|
443
475
|
<span class="ruby-comment cmt">#</span>
|
444
|
-
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">
|
445
|
-
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">stag_stmt</span>(<span class="ruby-identifier">
|
476
|
+
<span class="ruby-identifier">error_if_empty_tag</span>(<span class="ruby-identifier">elem_info</span>, <span class="ruby-identifier">d_str</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">replace_cont</span>
|
477
|
+
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">stag_stmt</span>(<span class="ruby-identifier">elem_info</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">replace_cont</span>
|
446
478
|
<span class="ruby-comment cmt">#stmt_list << ExpandStatement.new(:element, name)</span>
|
447
|
-
<span class="ruby-identifier">
|
448
|
-
<span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">
|
479
|
+
<span class="ruby-identifier">elem_info2</span> = <span class="ruby-ivar">@elem_info_table</span>[<span class="ruby-identifier">name</span>]
|
480
|
+
<span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">elem_info2</span>
|
449
481
|
<span class="ruby-identifier">msg</span> = <span class="ruby-node">"'#{d_str}': element '#{name}' not found."</span>
|
450
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-identifier">msg</span>, <span class="ruby-identifier">
|
482
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-identifier">msg</span>, <span class="ruby-identifier">linenum</span>)
|
451
483
|
<span class="ruby-keyword kw">end</span>
|
452
|
-
<span class="ruby-identifier">expand_element_info</span>(<span class="ruby-identifier">
|
453
|
-
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">etag_stmt</span>(<span class="ruby-identifier">
|
484
|
+
<span class="ruby-identifier">expand_element_info</span>(<span class="ruby-identifier">elem_info2</span>, <span class="ruby-identifier">stmt_list</span>, <span class="ruby-identifier">with_content</span>)
|
485
|
+
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">etag_stmt</span>(<span class="ruby-identifier">elem_info</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">replace_cont</span>
|
454
486
|
|
455
487
|
<span class="ruby-keyword kw">else</span>
|
456
488
|
<span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span>
|
@@ -464,40 +496,112 @@ return true if directive name is one of ‘stag’,
|
|
464
496
|
</div>
|
465
497
|
</div>
|
466
498
|
|
467
|
-
<
|
499
|
+
<div id="method-M000260" class="method-detail">
|
500
|
+
<a name="M000260"></a>
|
501
|
+
|
502
|
+
<div class="method-heading">
|
503
|
+
<a href="#M000260" class="method-signature">
|
504
|
+
<span class="method-name">handle_directives</span><span class="method-args">(directive, elem_info, stmt_list)</span>
|
505
|
+
</a>
|
506
|
+
</div>
|
507
|
+
|
508
|
+
<div class="method-description">
|
509
|
+
<p><a class="source-toggle" href="#"
|
510
|
+
onclick="toggleCode('M000260-source');return false;">[Source]</a></p>
|
511
|
+
<div class="method-source-code" id="M000260-source">
|
512
|
+
<pre>
|
513
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 710</span>
|
514
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">handle_directives</span>(<span class="ruby-identifier">directive</span>, <span class="ruby-identifier">elem_info</span>, <span class="ruby-identifier">stmt_list</span>)
|
515
|
+
<span class="ruby-identifier">e</span> = <span class="ruby-identifier">elem_info</span>
|
516
|
+
<span class="ruby-identifier">linenum</span> = <span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">stag_info</span>.<span class="ruby-identifier">linenum</span>
|
517
|
+
<span class="ruby-identifier">append_exprs</span> = <span class="ruby-keyword kw">nil</span>
|
518
|
+
|
519
|
+
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directive</span>.<span class="ruby-identifier">dattr</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'id'</span>
|
520
|
+
<span class="ruby-comment cmt">## nothing</span>
|
521
|
+
<span class="ruby-keyword kw">else</span>
|
522
|
+
<span class="ruby-comment cmt">## handle 'attr:' and 'append:' directives</span>
|
523
|
+
<span class="ruby-identifier">d_str</span> = <span class="ruby-keyword kw">nil</span>
|
524
|
+
<span class="ruby-identifier">directive</span>.<span class="ruby-identifier">str</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/;/</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">d_str</span><span class="ruby-operator">|</span>
|
525
|
+
<span class="ruby-identifier">d_str</span>.<span class="ruby-identifier">strip!</span>
|
526
|
+
<span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">d_str</span> <span class="ruby-operator">=~</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">directive_pattern</span> <span class="ruby-comment cmt"># ex. /\A(\w+):\s*(.*)\z/</span>
|
527
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-node">"'#{d_str}': invalid directive pattern"</span>, <span class="ruby-identifier">linenum</span>)
|
528
|
+
<span class="ruby-keyword kw">end</span>
|
529
|
+
<span class="ruby-identifier">d_name</span> = <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">intern</span> <span class="ruby-comment cmt"># directive name</span>
|
530
|
+
<span class="ruby-identifier">d_arg</span> = <span class="ruby-identifier">$2</span> <span class="ruby-operator">||</span> <span class="ruby-value str">''</span> <span class="ruby-comment cmt"># directive arg</span>
|
531
|
+
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">d_name</span>
|
532
|
+
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:attr</span>, <span class="ruby-identifier">:Attr</span>, <span class="ruby-identifier">:ATTR</span>
|
533
|
+
<span class="ruby-identifier">directive2</span> = <span class="ruby-constant">Directive</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:name=</span><span class="ruby-operator">></span><span class="ruby-identifier">d_name</span>, <span class="ruby-identifier">:arg=</span><span class="ruby-operator">></span><span class="ruby-identifier">d_arg</span>, <span class="ruby-identifier">:sr=</span><span class="ruby-operator">></span><span class="ruby-identifier">d_str</span>)
|
534
|
+
<span class="ruby-identifier">handle</span>(<span class="ruby-identifier">directive2</span>, <span class="ruby-identifier">elem_info</span>, <span class="ruby-identifier">stmt_list</span>)
|
535
|
+
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:append</span>, <span class="ruby-identifier">:Append</span>, <span class="ruby-identifier">:APPEND</span>
|
536
|
+
<span class="ruby-identifier">append_exprs</span> <span class="ruby-operator">||=</span> []
|
537
|
+
<span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">append_exprs</span> = <span class="ruby-identifier">append_exprs</span>
|
538
|
+
<span class="ruby-identifier">directive2</span> = <span class="ruby-constant">Directive</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:name=</span><span class="ruby-operator">></span><span class="ruby-identifier">d_name</span>, <span class="ruby-identifier">:arg=</span><span class="ruby-operator">></span><span class="ruby-identifier">d_arg</span>, <span class="ruby-identifier">:sr=</span><span class="ruby-operator">></span><span class="ruby-identifier">d_str</span>)
|
539
|
+
<span class="ruby-identifier">handle</span>(<span class="ruby-identifier">directive2</span>, <span class="ruby-identifier">elem_info</span>, <span class="ruby-identifier">stmt_list</span>)
|
540
|
+
<span class="ruby-keyword kw">else</span>
|
541
|
+
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directive</span>.<span class="ruby-identifier">name</span>
|
542
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-node">"'#{d_str}': not available with '#{directive.name}' directive."</span>, <span class="ruby-identifier">linenum</span>)
|
543
|
+
<span class="ruby-keyword kw">end</span>
|
544
|
+
<span class="ruby-identifier">directive</span>.<span class="ruby-identifier">name</span> = <span class="ruby-identifier">d_name</span>
|
545
|
+
<span class="ruby-identifier">directive</span>.<span class="ruby-identifier">arg</span> = <span class="ruby-identifier">d_arg</span>
|
546
|
+
<span class="ruby-identifier">directive</span>.<span class="ruby-identifier">str</span> = <span class="ruby-identifier">d_str</span>
|
547
|
+
<span class="ruby-keyword kw">end</span> <span class="ruby-comment cmt">#case</span>
|
548
|
+
<span class="ruby-keyword kw">end</span>
|
549
|
+
<span class="ruby-keyword kw">end</span>
|
550
|
+
|
551
|
+
<span class="ruby-comment cmt">## remove dummy <span> tag</span>
|
552
|
+
<span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@delspan</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">dummy_span_tag?</span>(<span class="ruby-value str">'span'</span>)
|
553
|
+
<span class="ruby-comment cmt">#e.stag_info.tagname = e.etag_info.tagname = nil</span>
|
554
|
+
<span class="ruby-identifier">e</span>.<span class="ruby-identifier">stag_info</span>.<span class="ruby-identifier">clear_as_dummy_tag</span>()
|
555
|
+
<span class="ruby-identifier">e</span>.<span class="ruby-identifier">etag_info</span>.<span class="ruby-identifier">clear_as_dummy_tag</span>()
|
556
|
+
<span class="ruby-keyword kw">end</span>
|
557
|
+
|
558
|
+
<span class="ruby-comment cmt">## handle other directives</span>
|
559
|
+
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directive</span>.<span class="ruby-identifier">name</span>
|
560
|
+
<span class="ruby-identifier">handled</span> = <span class="ruby-identifier">handle</span>(<span class="ruby-identifier">directive</span>, <span class="ruby-identifier">elem_info</span>, <span class="ruby-identifier">stmt_list</span>)
|
561
|
+
<span class="ruby-identifier">handled</span> <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">raise</span> <span class="ruby-identifier">convert_error</span>(<span class="ruby-node">"'#{directive.str}': unknown directive."</span>, <span class="ruby-identifier">linenum</span>)
|
562
|
+
<span class="ruby-keyword kw">else</span> <span class="ruby-comment cmt"># for 'attr' and 'append' directive</span>
|
563
|
+
<span class="ruby-identifier">assert</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-operator">!</span><span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">attr_info</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">||</span> <span class="ruby-operator">!</span><span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">append_exprs</span>.<span class="ruby-identifier">empty?</span>
|
564
|
+
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">stag_stmt</span>(<span class="ruby-identifier">elem_info</span>)
|
565
|
+
<span class="ruby-identifier">stmt_list</span>.<span class="ruby-identifier">concat</span>(<span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">cont_stmts</span>)
|
566
|
+
<span class="ruby-identifier">stmt_list</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">etag_stmt</span>(<span class="ruby-identifier">elem_info</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">elem_info</span>.<span class="ruby-identifier">etag_info</span> <span class="ruby-comment cmt"># when empty-tag</span>
|
567
|
+
<span class="ruby-keyword kw">end</span>
|
568
|
+
|
569
|
+
<span class="ruby-keyword kw">end</span>
|
570
|
+
</pre>
|
571
|
+
</div>
|
572
|
+
</div>
|
573
|
+
</div>
|
468
574
|
|
469
|
-
<div id="method-
|
470
|
-
<a name="
|
575
|
+
<div id="method-M000256" class="method-detail">
|
576
|
+
<a name="M000256"></a>
|
471
577
|
|
472
578
|
<div class="method-heading">
|
473
|
-
<a href="#
|
474
|
-
<span class="method-name">
|
579
|
+
<a href="#M000256" class="method-signature">
|
580
|
+
<span class="method-name">register_element_info</span><span class="method-args">(name, elem_info)</span>
|
475
581
|
</a>
|
476
582
|
</div>
|
477
583
|
|
478
584
|
<div class="method-description">
|
479
|
-
<p>
|
480
|
-
(abstract) directive format, which is used at has_directive?() method
|
481
|
-
</p>
|
482
585
|
<p><a class="source-toggle" href="#"
|
483
|
-
onclick="toggleCode('
|
484
|
-
<div class="method-source-code" id="
|
586
|
+
onclick="toggleCode('M000256-source');return false;">[Source]</a></p>
|
587
|
+
<div class="method-source-code" id="M000256-source">
|
485
588
|
<pre>
|
486
|
-
<span class="ruby-comment cmt"># File kwartz/converter.rb, line
|
487
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">
|
488
|
-
<span class="ruby-identifier">
|
489
|
-
<span class="ruby-comment cmt">#return '%s: %s'</span>
|
589
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 660</span>
|
590
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">register_element_info</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">elem_info</span>)
|
591
|
+
<span class="ruby-ivar">@elem_info_table</span>[<span class="ruby-identifier">name</span>] = <span class="ruby-identifier">elem_info</span>
|
490
592
|
<span class="ruby-keyword kw">end</span>
|
491
593
|
</pre>
|
492
594
|
</div>
|
493
595
|
</div>
|
494
596
|
</div>
|
495
597
|
|
496
|
-
<
|
497
|
-
|
598
|
+
<h3 class="section-bar">Protected Instance methods</h3>
|
599
|
+
|
600
|
+
<div id="method-M000257" class="method-detail">
|
601
|
+
<a name="M000257"></a>
|
498
602
|
|
499
603
|
<div class="method-heading">
|
500
|
-
<a href="#
|
604
|
+
<a href="#M000257" class="method-signature">
|
501
605
|
<span class="method-name">directive_pattern</span><span class="method-args">()</span>
|
502
606
|
</a>
|
503
607
|
</div>
|
@@ -507,10 +611,10 @@ return true if directive name is one of ‘stag’,
|
|
507
611
|
(abstract) directive pattern, which is used to detect directives.
|
508
612
|
</p>
|
509
613
|
<p><a class="source-toggle" href="#"
|
510
|
-
onclick="toggleCode('
|
511
|
-
<div class="method-source-code" id="
|
614
|
+
onclick="toggleCode('M000257-source');return false;">[Source]</a></p>
|
615
|
+
<div class="method-source-code" id="M000257-source">
|
512
616
|
<pre>
|
513
|
-
<span class="ruby-comment cmt"># File kwartz/converter.rb, line
|
617
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 688</span>
|
514
618
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">directive_pattern</span>
|
515
619
|
<span class="ruby-identifier">not_implemented</span>
|
516
620
|
<span class="ruby-comment cmt">#return /\A(\w+):\s*(.*)/</span>
|
@@ -520,11 +624,11 @@ return true if directive name is one of ‘stag’,
|
|
520
624
|
</div>
|
521
625
|
</div>
|
522
626
|
|
523
|
-
<div id="method-
|
524
|
-
<a name="
|
627
|
+
<div id="method-M000258" class="method-detail">
|
628
|
+
<a name="M000258"></a>
|
525
629
|
|
526
630
|
<div class="method-heading">
|
527
|
-
<a href="#
|
631
|
+
<a href="#M000258" class="method-signature">
|
528
632
|
<span class="method-name">mapping_pattern</span><span class="method-args">()</span>
|
529
633
|
</a>
|
530
634
|
</div>
|
@@ -535,10 +639,10 @@ return true if directive name is one of ‘stag’,
|
|
535
639
|
directive.
|
536
640
|
</p>
|
537
641
|
<p><a class="source-toggle" href="#"
|
538
|
-
onclick="toggleCode('
|
539
|
-
<div class="method-source-code" id="
|
642
|
+
onclick="toggleCode('M000258-source');return false;">[Source]</a></p>
|
643
|
+
<div class="method-source-code" id="M000258-source">
|
540
644
|
<pre>
|
541
|
-
<span class="ruby-comment cmt"># File kwartz/converter.rb, line
|
645
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 695</span>
|
542
646
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">mapping_pattern</span>
|
543
647
|
<span class="ruby-identifier">not_implemented</span>
|
544
648
|
<span class="ruby-comment cmt">#return /\A'([-:\w]+)'\s+(.*)/</span>
|
@@ -548,6 +652,32 @@ directive.
|
|
548
652
|
</div>
|
549
653
|
</div>
|
550
654
|
|
655
|
+
<div id="method-M000259" class="method-detail">
|
656
|
+
<a name="M000259"></a>
|
657
|
+
|
658
|
+
<div class="method-heading">
|
659
|
+
<a href="#M000259" class="method-signature">
|
660
|
+
<span class="method-name">parse_expr_str</span><span class="method-args">(expr_str, linenum)</span>
|
661
|
+
</a>
|
662
|
+
</div>
|
663
|
+
|
664
|
+
<div class="method-description">
|
665
|
+
<p>
|
666
|
+
(abstract) convert universal expression string to native expression string
|
667
|
+
</p>
|
668
|
+
<p><a class="source-toggle" href="#"
|
669
|
+
onclick="toggleCode('M000259-source');return false;">[Source]</a></p>
|
670
|
+
<div class="method-source-code" id="M000259-source">
|
671
|
+
<pre>
|
672
|
+
<span class="ruby-comment cmt"># File kwartz/converter.rb, line 702</span>
|
673
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">parse_expr_str</span>(<span class="ruby-identifier">expr_str</span>, <span class="ruby-identifier">linenum</span>)
|
674
|
+
<span class="ruby-identifier">not_implemented</span>
|
675
|
+
<span class="ruby-keyword kw">end</span>
|
676
|
+
</pre>
|
677
|
+
</div>
|
678
|
+
</div>
|
679
|
+
</div>
|
680
|
+
|
551
681
|
|
552
682
|
</div>
|
553
683
|
|