erubis 2.0.1 → 2.1.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/ChangeLog +150 -2
- data/LGPL +504 -0
- data/README.txt +14 -8
- data/benchmark/erubybench.rb +1 -1
- data/benchmark/erubybench.rhtml +3 -3
- data/bin/erubis +1 -1
- data/bin/notext +154 -0
- data/contrib/erubis +1036 -374
- data/contrib/inline-require +5 -3
- data/doc-api/classes/Erubis.html +43 -1
- data/doc-api/classes/Erubis/ArrayBufferEnhancer.html +14 -14
- data/doc-api/classes/Erubis/ArrayEnhancer.html +14 -14
- data/doc-api/classes/Erubis/Basic.html +112 -0
- data/doc-api/classes/Erubis/Basic/Converter.html +318 -0
- data/doc-api/classes/Erubis/Basic/Engine.html +130 -0
- data/doc-api/classes/Erubis/BiPatternEnhancer.html +14 -14
- data/doc-api/classes/Erubis/CGenerator.html +386 -0
- data/doc-api/classes/Erubis/Context.html +31 -32
- data/doc-api/classes/Erubis/Converter.html +231 -0
- data/doc-api/classes/Erubis/Ec.html +9 -283
- data/doc-api/classes/Erubis/Ejava.html +9 -274
- data/doc-api/classes/Erubis/Ejavascript.html +9 -298
- data/doc-api/classes/Erubis/Engine.html +68 -508
- data/doc-api/classes/Erubis/Eperl.html +9 -259
- data/doc-api/classes/Erubis/Ephp.html +9 -239
- data/doc-api/classes/Erubis/ErubisError.html +2 -2
- data/doc-api/classes/Erubis/Eruby.html +4 -187
- data/doc-api/classes/Erubis/EscapeEnhancer.html +9 -11
- data/doc-api/classes/Erubis/Escheme.html +9 -272
- data/doc-api/classes/Erubis/Evaluator.html +212 -0
- data/doc-api/classes/Erubis/Generator.html +410 -0
- data/doc-api/classes/Erubis/HeaderFooterEnhancer.html +16 -16
- data/doc-api/classes/Erubis/Helper.html +112 -0
- data/doc-api/classes/Erubis/Helper/CachedRailsTemplate.html +198 -0
- data/doc-api/classes/Erubis/Helper/RailsTemplate.html +366 -0
- data/doc-api/classes/Erubis/JavaGenerator.html +359 -0
- data/doc-api/classes/Erubis/JavascriptGenerator.html +381 -0
- data/doc-api/classes/Erubis/Main.html +27 -25
- data/doc-api/classes/Erubis/NoCodeEnhancer.html +249 -0
- data/doc-api/classes/Erubis/NoCodeEruby.html +120 -0
- data/doc-api/classes/Erubis/NoTextEnhancer.html +8 -8
- data/doc-api/classes/Erubis/NotSupportedError.html +119 -0
- data/doc-api/classes/Erubis/OptimizedEruby.html +22 -304
- data/doc-api/classes/Erubis/OptimizedGenerator.html +439 -0
- data/doc-api/classes/Erubis/OptimizedXmlEruby.html +7 -7
- data/doc-api/classes/Erubis/PI.html +124 -0
- data/doc-api/classes/Erubis/PI/Converter.html +318 -0
- data/doc-api/classes/Erubis/PI/Ec.html +166 -0
- data/doc-api/classes/Erubis/PI/Ejava.html +166 -0
- data/doc-api/classes/Erubis/PI/Ejavascript.html +166 -0
- data/doc-api/classes/Erubis/PI/Engine.html +122 -0
- data/doc-api/classes/Erubis/PI/Eperl.html +166 -0
- data/doc-api/classes/Erubis/PI/Ephp.html +166 -0
- data/doc-api/classes/Erubis/PI/Eruby.html +155 -0
- data/doc-api/classes/Erubis/PI/Escheme.html +166 -0
- data/doc-api/classes/Erubis/PI/TinyEruby.html +305 -0
- data/doc-api/classes/Erubis/PercentLineEnhancer.html +7 -7
- data/doc-api/classes/Erubis/PerlGenerator.html +344 -0
- data/doc-api/classes/Erubis/PhpGenerator.html +350 -0
- data/doc-api/classes/Erubis/PrintEnabledEnhancer.html +24 -24
- data/doc-api/classes/Erubis/PrintOutEnhancer.html +35 -35
- data/doc-api/classes/Erubis/RubyEvaluator.html +190 -0
- data/doc-api/classes/Erubis/RubyGenerator.html +327 -0
- data/doc-api/classes/Erubis/SchemeGenerator.html +382 -0
- data/doc-api/classes/Erubis/SimplifyEnhancer.html +17 -13
- data/doc-api/classes/Erubis/StdoutEnhancer.html +14 -14
- data/doc-api/classes/Erubis/StringBufferEnhancer.html +14 -14
- data/doc-api/classes/Erubis/TinyEruby.html +45 -40
- data/doc-api/classes/Erubis/XmlHelper.html +14 -14
- data/doc-api/created.rid +1 -1
- data/doc-api/files/__/README_txt.html +27 -9
- data/doc-api/files/erubis/context_rb.html +107 -0
- data/doc-api/files/erubis/converter_rb.html +114 -0
- data/doc-api/files/erubis/engine/ec_rb.html +2 -2
- data/doc-api/files/erubis/engine/ejava_rb.html +2 -2
- data/doc-api/files/erubis/engine/ejavascript_rb.html +2 -2
- data/doc-api/files/erubis/engine/enhanced_rb.html +2 -2
- data/doc-api/files/erubis/engine/eperl_rb.html +2 -2
- data/doc-api/files/erubis/engine/ephp_rb.html +2 -2
- data/doc-api/files/erubis/engine/eruby_rb.html +3 -2
- data/doc-api/files/erubis/engine/escheme_rb.html +2 -2
- data/doc-api/files/erubis/engine/optimized_rb.html +2 -2
- data/doc-api/files/erubis/engine_rb.html +6 -3
- data/doc-api/files/erubis/enhancer_rb.html +2 -9
- data/doc-api/files/erubis/error_rb.html +107 -0
- data/doc-api/files/erubis/evaluator_rb.html +115 -0
- data/doc-api/files/erubis/generator_rb.html +114 -0
- data/doc-api/files/erubis/helper/rails_rb.html +140 -0
- data/doc-api/files/erubis/helper_rb.html +1 -1
- data/doc-api/files/erubis/local-setting_rb.html +1 -1
- data/doc-api/files/erubis/main_rb.html +2 -2
- data/doc-api/files/erubis/tiny_rb.html +2 -2
- data/doc-api/files/erubis_rb.html +2 -2
- data/doc-api/fr_class_index.html +32 -0
- data/doc-api/fr_file_index.html +6 -0
- data/doc-api/fr_method_index.html +178 -136
- data/doc/users-guide.html +538 -199
- data/examples/{Makefile → basic/Makefile} +11 -11
- data/examples/basic/example.ec +42 -0
- data/examples/{example.ejava → basic/example.ejava} +5 -1
- data/examples/{example.ejavascript → basic/example.ejs} +0 -0
- data/examples/{example.eperl → basic/example.eperl} +2 -2
- data/examples/{example.ephp → basic/example.ephp} +0 -0
- data/examples/{example.eruby → basic/example.eruby} +0 -0
- data/examples/{example.escheme → basic/example.escheme} +0 -0
- data/examples/pi/Makefile +54 -0
- data/examples/pi/example.ec +42 -0
- data/examples/pi/example.ejava +45 -0
- data/examples/pi/example.ejs +16 -0
- data/examples/pi/example.eperl +16 -0
- data/examples/pi/example.ephp +17 -0
- data/examples/pi/example.eruby +15 -0
- data/examples/pi/example.escheme +26 -0
- data/lib/erubis.rb +15 -8
- data/lib/erubis/context.rb +54 -0
- data/lib/erubis/converter.rb +307 -0
- data/lib/erubis/engine.rb +57 -227
- data/lib/erubis/engine/ec.rb +31 -20
- data/lib/erubis/engine/ejava.rb +33 -21
- data/lib/erubis/engine/ejavascript.rb +30 -18
- data/lib/erubis/engine/enhanced.rb +7 -2
- data/lib/erubis/engine/eperl.rb +33 -19
- data/lib/erubis/engine/ephp.rb +32 -14
- data/lib/erubis/engine/eruby.rb +34 -7
- data/lib/erubis/engine/escheme.rb +34 -15
- data/lib/erubis/engine/optimized.rb +25 -11
- data/lib/erubis/enhancer.rb +53 -19
- data/lib/erubis/error.rb +24 -0
- data/lib/erubis/evaluator.rb +71 -0
- data/lib/erubis/generator.rb +83 -0
- data/lib/erubis/helper.rb +1 -1
- data/lib/erubis/helper/rails.rb +159 -0
- data/lib/erubis/local-setting.rb +1 -1
- data/lib/erubis/main.rb +87 -46
- data/lib/erubis/tiny.rb +81 -7
- data/test/assert-text-equal.rb +1 -1
- data/test/test-engines.rb +8 -9
- data/test/test-erubis.rb +196 -18
- data/test/{test-bin.rb → test-main.rb} +123 -21
- data/test/test-notext.rb +27 -0
- data/test/test.rb +5 -3
- data/test/testutil.rb +25 -36
- metadata +75 -13
- data/COPYING +0 -340
- data/examples/example.ec +0 -24
|
@@ -55,8 +55,8 @@
|
|
|
55
55
|
<tr class="top-aligned-row">
|
|
56
56
|
<td><strong>In:</strong></td>
|
|
57
57
|
<td>
|
|
58
|
-
<a href="../../files/erubis/
|
|
59
|
-
erubis/
|
|
58
|
+
<a href="../../files/erubis/context_rb.html">
|
|
59
|
+
erubis/context.rb
|
|
60
60
|
</a>
|
|
61
61
|
<br />
|
|
62
62
|
</td>
|
|
@@ -80,8 +80,7 @@
|
|
|
80
80
|
|
|
81
81
|
<div id="description">
|
|
82
82
|
<p>
|
|
83
|
-
|
|
84
|
-
href="Engine.html#M000066">Engine#evaluate</a>
|
|
83
|
+
context object for Engine#evaluate
|
|
85
84
|
</p>
|
|
86
85
|
<p>
|
|
87
86
|
ex.
|
|
@@ -113,10 +112,10 @@ ex.
|
|
|
113
112
|
<h3 class="section-bar">Methods</h3>
|
|
114
113
|
|
|
115
114
|
<div class="name-list">
|
|
116
|
-
<a href="#
|
|
117
|
-
<a href="#
|
|
118
|
-
<a href="#
|
|
119
|
-
<a href="#
|
|
115
|
+
<a href="#M000175">[]</a>
|
|
116
|
+
<a href="#M000176">[]=</a>
|
|
117
|
+
<a href="#M000177">keys</a>
|
|
118
|
+
<a href="#M000174">new</a>
|
|
120
119
|
</div>
|
|
121
120
|
</div>
|
|
122
121
|
|
|
@@ -138,21 +137,21 @@ ex.
|
|
|
138
137
|
<div id="methods">
|
|
139
138
|
<h3 class="section-bar">Public Class methods</h3>
|
|
140
139
|
|
|
141
|
-
<div id="method-
|
|
142
|
-
<a name="
|
|
140
|
+
<div id="method-M000174" class="method-detail">
|
|
141
|
+
<a name="M000174"></a>
|
|
143
142
|
|
|
144
143
|
<div class="method-heading">
|
|
145
|
-
<a href="#
|
|
144
|
+
<a href="#M000174" class="method-signature">
|
|
146
145
|
<span class="method-name">new</span><span class="method-args">(hash=nil)</span>
|
|
147
146
|
</a>
|
|
148
147
|
</div>
|
|
149
148
|
|
|
150
149
|
<div class="method-description">
|
|
151
150
|
<p><a class="source-toggle" href="#"
|
|
152
|
-
onclick="toggleCode('
|
|
153
|
-
<div class="method-source-code" id="
|
|
151
|
+
onclick="toggleCode('M000174-source');return false;">[Source]</a></p>
|
|
152
|
+
<div class="method-source-code" id="M000174-source">
|
|
154
153
|
<pre>
|
|
155
|
-
<span class="ruby-comment cmt"># File erubis/
|
|
154
|
+
<span class="ruby-comment cmt"># File erubis/context.rb, line 33</span>
|
|
156
155
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">hash</span>=<span class="ruby-keyword kw">nil</span>)
|
|
157
156
|
<span class="ruby-identifier">hash</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-identifier">value</span><span class="ruby-operator">|</span>
|
|
158
157
|
<span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">name</span>] = <span class="ruby-identifier">value</span>
|
|
@@ -165,21 +164,21 @@ ex.
|
|
|
165
164
|
|
|
166
165
|
<h3 class="section-bar">Public Instance methods</h3>
|
|
167
166
|
|
|
168
|
-
<div id="method-
|
|
169
|
-
<a name="
|
|
167
|
+
<div id="method-M000175" class="method-detail">
|
|
168
|
+
<a name="M000175"></a>
|
|
170
169
|
|
|
171
170
|
<div class="method-heading">
|
|
172
|
-
<a href="#
|
|
171
|
+
<a href="#M000175" class="method-signature">
|
|
173
172
|
<span class="method-name">[]</span><span class="method-args">(key)</span>
|
|
174
173
|
</a>
|
|
175
174
|
</div>
|
|
176
175
|
|
|
177
176
|
<div class="method-description">
|
|
178
177
|
<p><a class="source-toggle" href="#"
|
|
179
|
-
onclick="toggleCode('
|
|
180
|
-
<div class="method-source-code" id="
|
|
178
|
+
onclick="toggleCode('M000175-source');return false;">[Source]</a></p>
|
|
179
|
+
<div class="method-source-code" id="M000175-source">
|
|
181
180
|
<pre>
|
|
182
|
-
<span class="ruby-comment cmt"># File erubis/
|
|
181
|
+
<span class="ruby-comment cmt"># File erubis/context.rb, line 39</span>
|
|
183
182
|
<span class="ruby-keyword kw">def</span> <span class="ruby-operator">[]</span>(<span class="ruby-identifier">key</span>)
|
|
184
183
|
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">instance_variable_get</span>(<span class="ruby-node">"@#{key}"</span>)
|
|
185
184
|
<span class="ruby-keyword kw">end</span>
|
|
@@ -188,21 +187,21 @@ ex.
|
|
|
188
187
|
</div>
|
|
189
188
|
</div>
|
|
190
189
|
|
|
191
|
-
<div id="method-
|
|
192
|
-
<a name="
|
|
190
|
+
<div id="method-M000176" class="method-detail">
|
|
191
|
+
<a name="M000176"></a>
|
|
193
192
|
|
|
194
193
|
<div class="method-heading">
|
|
195
|
-
<a href="#
|
|
194
|
+
<a href="#M000176" class="method-signature">
|
|
196
195
|
<span class="method-name">[]=</span><span class="method-args">(key, value)</span>
|
|
197
196
|
</a>
|
|
198
197
|
</div>
|
|
199
198
|
|
|
200
199
|
<div class="method-description">
|
|
201
200
|
<p><a class="source-toggle" href="#"
|
|
202
|
-
onclick="toggleCode('
|
|
203
|
-
<div class="method-source-code" id="
|
|
201
|
+
onclick="toggleCode('M000176-source');return false;">[Source]</a></p>
|
|
202
|
+
<div class="method-source-code" id="M000176-source">
|
|
204
203
|
<pre>
|
|
205
|
-
<span class="ruby-comment cmt"># File erubis/
|
|
204
|
+
<span class="ruby-comment cmt"># File erubis/context.rb, line 43</span>
|
|
206
205
|
<span class="ruby-keyword kw">def</span> <span class="ruby-operator">[]=</span>(<span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span>)
|
|
207
206
|
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">instance_variable_set</span>(<span class="ruby-node">"@#{key}"</span>, <span class="ruby-identifier">value</span>)
|
|
208
207
|
<span class="ruby-keyword kw">end</span>
|
|
@@ -211,21 +210,21 @@ ex.
|
|
|
211
210
|
</div>
|
|
212
211
|
</div>
|
|
213
212
|
|
|
214
|
-
<div id="method-
|
|
215
|
-
<a name="
|
|
213
|
+
<div id="method-M000177" class="method-detail">
|
|
214
|
+
<a name="M000177"></a>
|
|
216
215
|
|
|
217
216
|
<div class="method-heading">
|
|
218
|
-
<a href="#
|
|
217
|
+
<a href="#M000177" class="method-signature">
|
|
219
218
|
<span class="method-name">keys</span><span class="method-args">()</span>
|
|
220
219
|
</a>
|
|
221
220
|
</div>
|
|
222
221
|
|
|
223
222
|
<div class="method-description">
|
|
224
223
|
<p><a class="source-toggle" href="#"
|
|
225
|
-
onclick="toggleCode('
|
|
226
|
-
<div class="method-source-code" id="
|
|
224
|
+
onclick="toggleCode('M000177-source');return false;">[Source]</a></p>
|
|
225
|
+
<div class="method-source-code" id="M000177-source">
|
|
227
226
|
<pre>
|
|
228
|
-
<span class="ruby-comment cmt"># File erubis/
|
|
227
|
+
<span class="ruby-comment cmt"># File erubis/context.rb, line 47</span>
|
|
229
228
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">keys</span>
|
|
230
229
|
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">instance_variables</span>.<span class="ruby-identifier">collect</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span> <span class="ruby-identifier">name</span>[<span class="ruby-value">1</span>,<span class="ruby-identifier">name</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>] }
|
|
231
230
|
<span class="ruby-keyword kw">end</span>
|
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
7
|
+
<head>
|
|
8
|
+
<title>Module: Erubis::Converter</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|
11
|
+
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
12
|
+
<script type="text/javascript">
|
|
13
|
+
// <![CDATA[
|
|
14
|
+
|
|
15
|
+
function popupCode( url ) {
|
|
16
|
+
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function toggleCode( id ) {
|
|
20
|
+
if ( document.getElementById )
|
|
21
|
+
elem = document.getElementById( id );
|
|
22
|
+
else if ( document.all )
|
|
23
|
+
elem = eval( "document.all." + id );
|
|
24
|
+
else
|
|
25
|
+
return false;
|
|
26
|
+
|
|
27
|
+
elemStyle = elem.style;
|
|
28
|
+
|
|
29
|
+
if ( elemStyle.display != "block" ) {
|
|
30
|
+
elemStyle.display = "block"
|
|
31
|
+
} else {
|
|
32
|
+
elemStyle.display = "none"
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// Make codeblocks hidden by default
|
|
39
|
+
document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
|
|
40
|
+
|
|
41
|
+
// ]]>
|
|
42
|
+
</script>
|
|
43
|
+
|
|
44
|
+
</head>
|
|
45
|
+
<body>
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
<div id="classHeader">
|
|
50
|
+
<table class="header-table">
|
|
51
|
+
<tr class="top-aligned-row">
|
|
52
|
+
<td><strong>Module</strong></td>
|
|
53
|
+
<td class="class-name-in-header">Erubis::Converter</td>
|
|
54
|
+
</tr>
|
|
55
|
+
<tr class="top-aligned-row">
|
|
56
|
+
<td><strong>In:</strong></td>
|
|
57
|
+
<td>
|
|
58
|
+
<a href="../../files/erubis/converter_rb.html">
|
|
59
|
+
erubis/converter.rb
|
|
60
|
+
</a>
|
|
61
|
+
<br />
|
|
62
|
+
</td>
|
|
63
|
+
</tr>
|
|
64
|
+
|
|
65
|
+
</table>
|
|
66
|
+
</div>
|
|
67
|
+
<!-- banner header -->
|
|
68
|
+
|
|
69
|
+
<div id="bodyContent">
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
<div id="contextContent">
|
|
74
|
+
|
|
75
|
+
<div id="description">
|
|
76
|
+
<p>
|
|
77
|
+
convert
|
|
78
|
+
</p>
|
|
79
|
+
|
|
80
|
+
</div>
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
</div>
|
|
84
|
+
|
|
85
|
+
<div id="method-list">
|
|
86
|
+
<h3 class="section-bar">Methods</h3>
|
|
87
|
+
|
|
88
|
+
<div class="name-list">
|
|
89
|
+
<a href="#M000073">convert</a>
|
|
90
|
+
<a href="#M000074">convert_input</a>
|
|
91
|
+
<a href="#M000072">init_converter</a>
|
|
92
|
+
</div>
|
|
93
|
+
</div>
|
|
94
|
+
|
|
95
|
+
</div>
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
<!-- if includes -->
|
|
99
|
+
|
|
100
|
+
<div id="section">
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
<div id="attribute-list">
|
|
107
|
+
<h3 class="section-bar">Attributes</h3>
|
|
108
|
+
|
|
109
|
+
<div class="name-list">
|
|
110
|
+
<table>
|
|
111
|
+
<tr class="top-aligned-row context-row">
|
|
112
|
+
<td class="context-item-name">escape</td>
|
|
113
|
+
<td class="context-item-value"> [RW] </td>
|
|
114
|
+
<td class="context-item-desc"></td>
|
|
115
|
+
</tr>
|
|
116
|
+
<tr class="top-aligned-row context-row">
|
|
117
|
+
<td class="context-item-name">postamble</td>
|
|
118
|
+
<td class="context-item-value"> [RW] </td>
|
|
119
|
+
<td class="context-item-desc"></td>
|
|
120
|
+
</tr>
|
|
121
|
+
<tr class="top-aligned-row context-row">
|
|
122
|
+
<td class="context-item-name">preamble</td>
|
|
123
|
+
<td class="context-item-value"> [RW] </td>
|
|
124
|
+
<td class="context-item-desc"></td>
|
|
125
|
+
</tr>
|
|
126
|
+
</table>
|
|
127
|
+
</div>
|
|
128
|
+
</div>
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
<!-- if method_list -->
|
|
133
|
+
<div id="methods">
|
|
134
|
+
<h3 class="section-bar">Public Instance methods</h3>
|
|
135
|
+
|
|
136
|
+
<div id="method-M000073" class="method-detail">
|
|
137
|
+
<a name="M000073"></a>
|
|
138
|
+
|
|
139
|
+
<div class="method-heading">
|
|
140
|
+
<a href="#M000073" class="method-signature">
|
|
141
|
+
<span class="method-name">convert</span><span class="method-args">(input)</span>
|
|
142
|
+
</a>
|
|
143
|
+
</div>
|
|
144
|
+
|
|
145
|
+
<div class="method-description">
|
|
146
|
+
<p>
|
|
147
|
+
convert input string into target language
|
|
148
|
+
</p>
|
|
149
|
+
<p><a class="source-toggle" href="#"
|
|
150
|
+
onclick="toggleCode('M000073-source');return false;">[Source]</a></p>
|
|
151
|
+
<div class="method-source-code" id="M000073-source">
|
|
152
|
+
<pre>
|
|
153
|
+
<span class="ruby-comment cmt"># File erubis/converter.rb, line 34</span>
|
|
154
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">convert</span>(<span class="ruby-identifier">input</span>)
|
|
155
|
+
<span class="ruby-identifier">codebuf</span> = <span class="ruby-value str">""</span> <span class="ruby-comment cmt"># or []</span>
|
|
156
|
+
<span class="ruby-ivar">@preamble</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-value">? </span><span class="ruby-identifier">add_preamble</span>(<span class="ruby-identifier">codebuf</span>) <span class="ruby-operator">:</span> (<span class="ruby-ivar">@preamble</span> <span class="ruby-operator">&&</span> (<span class="ruby-identifier">codebuf</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@preamble</span>))
|
|
157
|
+
<span class="ruby-identifier">convert_input</span>(<span class="ruby-identifier">codebuf</span>, <span class="ruby-identifier">input</span>)
|
|
158
|
+
<span class="ruby-ivar">@postamble</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-value">? </span><span class="ruby-identifier">add_postamble</span>(<span class="ruby-identifier">codebuf</span>) <span class="ruby-operator">:</span> (<span class="ruby-ivar">@postamble</span> <span class="ruby-operator">&&</span> (<span class="ruby-identifier">codebuf</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@postamble</span>))
|
|
159
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">codebuf</span> <span class="ruby-comment cmt"># or codebuf.join()</span>
|
|
160
|
+
<span class="ruby-keyword kw">end</span>
|
|
161
|
+
</pre>
|
|
162
|
+
</div>
|
|
163
|
+
</div>
|
|
164
|
+
</div>
|
|
165
|
+
|
|
166
|
+
<div id="method-M000072" class="method-detail">
|
|
167
|
+
<a name="M000072"></a>
|
|
168
|
+
|
|
169
|
+
<div class="method-heading">
|
|
170
|
+
<a href="#M000072" class="method-signature">
|
|
171
|
+
<span class="method-name">init_converter</span><span class="method-args">(properties={})</span>
|
|
172
|
+
</a>
|
|
173
|
+
</div>
|
|
174
|
+
|
|
175
|
+
<div class="method-description">
|
|
176
|
+
<p><a class="source-toggle" href="#"
|
|
177
|
+
onclick="toggleCode('M000072-source');return false;">[Source]</a></p>
|
|
178
|
+
<div class="method-source-code" id="M000072-source">
|
|
179
|
+
<pre>
|
|
180
|
+
<span class="ruby-comment cmt"># File erubis/converter.rb, line 27</span>
|
|
181
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">init_converter</span>(<span class="ruby-identifier">properties</span>={})
|
|
182
|
+
<span class="ruby-ivar">@preamble</span> = <span class="ruby-identifier">properties</span>[<span class="ruby-identifier">:preamble</span>]
|
|
183
|
+
<span class="ruby-ivar">@postamble</span> = <span class="ruby-identifier">properties</span>[<span class="ruby-identifier">:postamble</span>]
|
|
184
|
+
<span class="ruby-ivar">@escape</span> = <span class="ruby-identifier">properties</span>[<span class="ruby-identifier">:escape</span>]
|
|
185
|
+
<span class="ruby-keyword kw">end</span>
|
|
186
|
+
</pre>
|
|
187
|
+
</div>
|
|
188
|
+
</div>
|
|
189
|
+
</div>
|
|
190
|
+
|
|
191
|
+
<h3 class="section-bar">Protected Instance methods</h3>
|
|
192
|
+
|
|
193
|
+
<div id="method-M000074" class="method-detail">
|
|
194
|
+
<a name="M000074"></a>
|
|
195
|
+
|
|
196
|
+
<div class="method-heading">
|
|
197
|
+
<a href="#M000074" class="method-signature">
|
|
198
|
+
<span class="method-name">convert_input</span><span class="method-args">(codebuf, input)</span>
|
|
199
|
+
</a>
|
|
200
|
+
</div>
|
|
201
|
+
|
|
202
|
+
<div class="method-description">
|
|
203
|
+
<p>
|
|
204
|
+
(abstract) convert input to code
|
|
205
|
+
</p>
|
|
206
|
+
<p><a class="source-toggle" href="#"
|
|
207
|
+
onclick="toggleCode('M000074-source');return false;">[Source]</a></p>
|
|
208
|
+
<div class="method-source-code" id="M000074-source">
|
|
209
|
+
<pre>
|
|
210
|
+
<span class="ruby-comment cmt"># File erubis/converter.rb, line 47</span>
|
|
211
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">convert_input</span>(<span class="ruby-identifier">codebuf</span>, <span class="ruby-identifier">input</span>)
|
|
212
|
+
<span class="ruby-identifier">not_implemented</span>
|
|
213
|
+
<span class="ruby-keyword kw">end</span>
|
|
214
|
+
</pre>
|
|
215
|
+
</div>
|
|
216
|
+
</div>
|
|
217
|
+
</div>
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
</div>
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
</div>
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
<div id="validator-badges">
|
|
227
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
228
|
+
</div>
|
|
229
|
+
|
|
230
|
+
</body>
|
|
231
|
+
</html>
|
|
@@ -65,8 +65,8 @@
|
|
|
65
65
|
<tr class="top-aligned-row">
|
|
66
66
|
<td><strong>Parent:</strong></td>
|
|
67
67
|
<td>
|
|
68
|
-
<a href="Engine.html">
|
|
69
|
-
Engine
|
|
68
|
+
<a href="Basic/Engine.html">
|
|
69
|
+
Basic::Engine
|
|
70
70
|
</a>
|
|
71
71
|
</td>
|
|
72
72
|
</tr>
|
|
@@ -90,303 +90,29 @@ engine for C
|
|
|
90
90
|
|
|
91
91
|
</div>
|
|
92
92
|
|
|
93
|
-
<div id="method-list">
|
|
94
|
-
<h3 class="section-bar">Methods</h3>
|
|
95
|
-
|
|
96
|
-
<div class="name-list">
|
|
97
|
-
<a href="#M000118">add_expr_debug</a>
|
|
98
|
-
<a href="#M000117">add_expr_escaped</a>
|
|
99
|
-
<a href="#M000116">add_expr_literal</a>
|
|
100
|
-
<a href="#M000119">add_postamble</a>
|
|
101
|
-
<a href="#M000111">add_preamble</a>
|
|
102
|
-
<a href="#M000115">add_stmt</a>
|
|
103
|
-
<a href="#M000114">add_text</a>
|
|
104
|
-
<a href="#M000112">escape_text</a>
|
|
105
|
-
<a href="#M000113">escaped_expr</a>
|
|
106
|
-
<a href="#M000110">new</a>
|
|
107
|
-
</div>
|
|
108
|
-
</div>
|
|
109
93
|
|
|
110
94
|
</div>
|
|
111
95
|
|
|
112
96
|
|
|
113
97
|
<!-- if includes -->
|
|
98
|
+
<div id="includes">
|
|
99
|
+
<h3 class="section-bar">Included Modules</h3>
|
|
114
100
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
<!-- if method_list -->
|
|
125
|
-
<div id="methods">
|
|
126
|
-
<h3 class="section-bar">Public Class methods</h3>
|
|
127
|
-
|
|
128
|
-
<div id="method-M000110" class="method-detail">
|
|
129
|
-
<a name="M000110"></a>
|
|
130
|
-
|
|
131
|
-
<div class="method-heading">
|
|
132
|
-
<a href="#M000110" class="method-signature">
|
|
133
|
-
<span class="method-name">new</span><span class="method-args">(input, properties={})</span>
|
|
134
|
-
</a>
|
|
135
|
-
</div>
|
|
136
|
-
|
|
137
|
-
<div class="method-description">
|
|
138
|
-
<p><a class="source-toggle" href="#"
|
|
139
|
-
onclick="toggleCode('M000110-source');return false;">[Source]</a></p>
|
|
140
|
-
<div class="method-source-code" id="M000110-source">
|
|
141
|
-
<pre>
|
|
142
|
-
<span class="ruby-comment cmt"># File erubis/engine/ec.rb, line 26</span>
|
|
143
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">input</span>, <span class="ruby-identifier">properties</span>={})
|
|
144
|
-
<span class="ruby-ivar">@indent</span> = <span class="ruby-identifier">properties</span>[<span class="ruby-identifier">:indent</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>
|
|
145
|
-
<span class="ruby-ivar">@out</span> = <span class="ruby-identifier">properties</span>[<span class="ruby-identifier">:out</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">'stdout'</span>
|
|
146
|
-
<span class="ruby-keyword kw">super</span>
|
|
147
|
-
<span class="ruby-keyword kw">end</span>
|
|
148
|
-
</pre>
|
|
149
|
-
</div>
|
|
150
|
-
</div>
|
|
151
|
-
</div>
|
|
152
|
-
|
|
153
|
-
<h3 class="section-bar">Public Instance methods</h3>
|
|
154
|
-
|
|
155
|
-
<div id="method-M000118" class="method-detail">
|
|
156
|
-
<a name="M000118"></a>
|
|
157
|
-
|
|
158
|
-
<div class="method-heading">
|
|
159
|
-
<a href="#M000118" class="method-signature">
|
|
160
|
-
<span class="method-name">add_expr_debug</span><span class="method-args">(src, code)</span>
|
|
161
|
-
</a>
|
|
162
|
-
</div>
|
|
163
|
-
|
|
164
|
-
<div class="method-description">
|
|
165
|
-
<p><a class="source-toggle" href="#"
|
|
166
|
-
onclick="toggleCode('M000118-source');return false;">[Source]</a></p>
|
|
167
|
-
<div class="method-source-code" id="M000118-source">
|
|
168
|
-
<pre>
|
|
169
|
-
<span class="ruby-comment cmt"># File erubis/engine/ec.rb, line 80</span>
|
|
170
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_expr_debug</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">code</span>)
|
|
171
|
-
<span class="ruby-identifier">code</span>.<span class="ruby-identifier">strip!</span>
|
|
172
|
-
<span class="ruby-identifier">s</span> = <span class="ruby-keyword kw">nil</span>
|
|
173
|
-
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">code</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/\A\".*?\"\s*,\s*(.*)/</span>
|
|
174
|
-
<span class="ruby-identifier">s</span> = <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/[%"]/</span>, <span class="ruby-value str">'\\\1'</span>) <span class="ruby-operator">+</span> <span class="ruby-value str">'='</span>
|
|
175
|
-
<span class="ruby-keyword kw">end</span>
|
|
176
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@indent</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">src</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">src</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?\n</span>
|
|
177
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" fprintf(stderr, \"*** debug: #{s}\" #{code});"</span>
|
|
178
|
-
<span class="ruby-keyword kw">end</span>
|
|
179
|
-
</pre>
|
|
180
|
-
</div>
|
|
181
|
-
</div>
|
|
182
|
-
</div>
|
|
183
|
-
|
|
184
|
-
<div id="method-M000117" class="method-detail">
|
|
185
|
-
<a name="M000117"></a>
|
|
186
|
-
|
|
187
|
-
<div class="method-heading">
|
|
188
|
-
<a href="#M000117" class="method-signature">
|
|
189
|
-
<span class="method-name">add_expr_escaped</span><span class="method-args">(src, code)</span>
|
|
190
|
-
</a>
|
|
191
|
-
</div>
|
|
192
|
-
|
|
193
|
-
<div class="method-description">
|
|
194
|
-
<p><a class="source-toggle" href="#"
|
|
195
|
-
onclick="toggleCode('M000117-source');return false;">[Source]</a></p>
|
|
196
|
-
<div class="method-source-code" id="M000117-source">
|
|
197
|
-
<pre>
|
|
198
|
-
<span class="ruby-comment cmt"># File erubis/engine/ec.rb, line 75</span>
|
|
199
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_expr_escaped</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">code</span>)
|
|
200
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@indent</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">src</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">src</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?\n</span>
|
|
201
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" fprintf(#{@out}, "</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">escaped_expr</span>(<span class="ruby-identifier">code</span>) <span class="ruby-operator"><<</span> <span class="ruby-value str">');'</span>
|
|
202
|
-
<span class="ruby-keyword kw">end</span>
|
|
203
|
-
</pre>
|
|
204
|
-
</div>
|
|
205
|
-
</div>
|
|
206
|
-
</div>
|
|
207
|
-
|
|
208
|
-
<div id="method-M000116" class="method-detail">
|
|
209
|
-
<a name="M000116"></a>
|
|
210
|
-
|
|
211
|
-
<div class="method-heading">
|
|
212
|
-
<a href="#M000116" class="method-signature">
|
|
213
|
-
<span class="method-name">add_expr_literal</span><span class="method-args">(src, code)</span>
|
|
214
|
-
</a>
|
|
215
|
-
</div>
|
|
216
|
-
|
|
217
|
-
<div class="method-description">
|
|
218
|
-
<p><a class="source-toggle" href="#"
|
|
219
|
-
onclick="toggleCode('M000116-source');return false;">[Source]</a></p>
|
|
220
|
-
<div class="method-source-code" id="M000116-source">
|
|
221
|
-
<pre>
|
|
222
|
-
<span class="ruby-comment cmt"># File erubis/engine/ec.rb, line 70</span>
|
|
223
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_expr_literal</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">code</span>)
|
|
224
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@indent</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">src</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">src</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?\n</span>
|
|
225
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" fprintf(#{@out}, "</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">strip</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">');'</span>
|
|
226
|
-
<span class="ruby-keyword kw">end</span>
|
|
227
|
-
</pre>
|
|
228
|
-
</div>
|
|
229
|
-
</div>
|
|
230
|
-
</div>
|
|
231
|
-
|
|
232
|
-
<div id="method-M000119" class="method-detail">
|
|
233
|
-
<a name="M000119"></a>
|
|
234
|
-
|
|
235
|
-
<div class="method-heading">
|
|
236
|
-
<a href="#M000119" class="method-signature">
|
|
237
|
-
<span class="method-name">add_postamble</span><span class="method-args">(src)</span>
|
|
238
|
-
</a>
|
|
239
|
-
</div>
|
|
240
|
-
|
|
241
|
-
<div class="method-description">
|
|
242
|
-
<p><a class="source-toggle" href="#"
|
|
243
|
-
onclick="toggleCode('M000119-source');return false;">[Source]</a></p>
|
|
244
|
-
<div class="method-source-code" id="M000119-source">
|
|
245
|
-
<pre>
|
|
246
|
-
<span class="ruby-comment cmt"># File erubis/engine/ec.rb, line 90</span>
|
|
247
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_postamble</span>(<span class="ruby-identifier">src</span>)
|
|
248
|
-
<span class="ruby-comment cmt"># empty</span>
|
|
249
|
-
<span class="ruby-keyword kw">end</span>
|
|
250
|
-
</pre>
|
|
251
|
-
</div>
|
|
252
|
-
</div>
|
|
253
|
-
</div>
|
|
254
|
-
|
|
255
|
-
<div id="method-M000111" class="method-detail">
|
|
256
|
-
<a name="M000111"></a>
|
|
257
|
-
|
|
258
|
-
<div class="method-heading">
|
|
259
|
-
<a href="#M000111" class="method-signature">
|
|
260
|
-
<span class="method-name">add_preamble</span><span class="method-args">(src)</span>
|
|
261
|
-
</a>
|
|
262
|
-
</div>
|
|
263
|
-
|
|
264
|
-
<div class="method-description">
|
|
265
|
-
<p><a class="source-toggle" href="#"
|
|
266
|
-
onclick="toggleCode('M000111-source');return false;">[Source]</a></p>
|
|
267
|
-
<div class="method-source-code" id="M000111-source">
|
|
268
|
-
<pre>
|
|
269
|
-
<span class="ruby-comment cmt"># File erubis/engine/ec.rb, line 32</span>
|
|
270
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_preamble</span>(<span class="ruby-identifier">src</span>)
|
|
271
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"#line 1 \"#{self.filename}\"\n"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">filename</span>
|
|
272
|
-
<span class="ruby-keyword kw">end</span>
|
|
273
|
-
</pre>
|
|
274
|
-
</div>
|
|
275
|
-
</div>
|
|
276
|
-
</div>
|
|
277
|
-
|
|
278
|
-
<div id="method-M000115" class="method-detail">
|
|
279
|
-
<a name="M000115"></a>
|
|
280
|
-
|
|
281
|
-
<div class="method-heading">
|
|
282
|
-
<a href="#M000115" class="method-signature">
|
|
283
|
-
<span class="method-name">add_stmt</span><span class="method-args">(src, code)</span>
|
|
284
|
-
</a>
|
|
285
|
-
</div>
|
|
286
|
-
|
|
287
|
-
<div class="method-description">
|
|
288
|
-
<p><a class="source-toggle" href="#"
|
|
289
|
-
onclick="toggleCode('M000115-source');return false;">[Source]</a></p>
|
|
290
|
-
<div class="method-source-code" id="M000115-source">
|
|
291
|
-
<pre>
|
|
292
|
-
<span class="ruby-comment cmt"># File erubis/engine/ec.rb, line 66</span>
|
|
293
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_stmt</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">code</span>)
|
|
294
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">code</span>
|
|
295
|
-
<span class="ruby-keyword kw">end</span>
|
|
296
|
-
</pre>
|
|
297
|
-
</div>
|
|
298
|
-
</div>
|
|
101
|
+
<div id="includes-list">
|
|
102
|
+
<span class="include-name"><a href="CGenerator.html">CGenerator</a></span>
|
|
299
103
|
</div>
|
|
104
|
+
</div>
|
|
300
105
|
|
|
301
|
-
|
|
302
|
-
<a name="M000114"></a>
|
|
106
|
+
<div id="section">
|
|
303
107
|
|
|
304
|
-
<div class="method-heading">
|
|
305
|
-
<a href="#M000114" class="method-signature">
|
|
306
|
-
<span class="method-name">add_text</span><span class="method-args">(src, text)</span>
|
|
307
|
-
</a>
|
|
308
|
-
</div>
|
|
309
|
-
|
|
310
|
-
<div class="method-description">
|
|
311
|
-
<p><a class="source-toggle" href="#"
|
|
312
|
-
onclick="toggleCode('M000114-source');return false;">[Source]</a></p>
|
|
313
|
-
<div class="method-source-code" id="M000114-source">
|
|
314
|
-
<pre>
|
|
315
|
-
<span class="ruby-comment cmt"># File erubis/engine/ec.rb, line 52</span>
|
|
316
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_text</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">text</span>)
|
|
317
|
-
<span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">text</span>.<span class="ruby-identifier">empty?</span>
|
|
318
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">src</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">src</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?\n</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@indent</span> <span class="ruby-operator">:</span> <span class="ruby-value str">' '</span>)
|
|
319
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"fputs("</span>
|
|
320
|
-
<span class="ruby-identifier">i</span> = <span class="ruby-value">0</span>
|
|
321
|
-
<span class="ruby-identifier">text</span>.<span class="ruby-identifier">each_line</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
|
|
322
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\n"</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@indent</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">' '</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">i</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
323
|
-
<span class="ruby-identifier">i</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
|
324
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">'"'</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">escape_text</span>(<span class="ruby-identifier">line</span>) <span class="ruby-operator"><<</span> <span class="ruby-value str">'"'</span>
|
|
325
|
-
<span class="ruby-keyword kw">end</span>
|
|
326
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-node">", #{@out});"</span> <span class="ruby-comment cmt">#<< (text[-1] == ?\n ? "\n" : "")</span>
|
|
327
|
-
<span class="ruby-identifier">src</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\n"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">text</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?\n</span>
|
|
328
|
-
<span class="ruby-keyword kw">end</span>
|
|
329
|
-
</pre>
|
|
330
|
-
</div>
|
|
331
|
-
</div>
|
|
332
|
-
</div>
|
|
333
108
|
|
|
334
|
-
<div id="method-M000112" class="method-detail">
|
|
335
|
-
<a name="M000112"></a>
|
|
336
109
|
|
|
337
|
-
<div class="method-heading">
|
|
338
|
-
<a href="#M000112" class="method-signature">
|
|
339
|
-
<span class="method-name">escape_text</span><span class="method-args">(text)</span>
|
|
340
|
-
</a>
|
|
341
|
-
</div>
|
|
342
|
-
|
|
343
|
-
<div class="method-description">
|
|
344
|
-
<p><a class="source-toggle" href="#"
|
|
345
|
-
onclick="toggleCode('M000112-source');return false;">[Source]</a></p>
|
|
346
|
-
<div class="method-source-code" id="M000112-source">
|
|
347
|
-
<pre>
|
|
348
|
-
<span class="ruby-comment cmt"># File erubis/engine/ec.rb, line 36</span>
|
|
349
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">escape_text</span>(<span class="ruby-identifier">text</span>)
|
|
350
|
-
<span class="ruby-ivar">@@table_</span> <span class="ruby-operator">||=</span> { <span class="ruby-value str">"\r"</span>=<span class="ruby-operator">></span><span class="ruby-value str">"\\r"</span>, <span class="ruby-value str">"\n"</span>=<span class="ruby-operator">></span><span class="ruby-value str">"\\n"</span>, <span class="ruby-value str">"\t"</span>=<span class="ruby-operator">></span><span class="ruby-value str">"\\t"</span>, <span class="ruby-value str">'"'</span>=<span class="ruby-operator">></span><span class="ruby-value str">'\\"'</span>, <span class="ruby-value str">"\\"</span>=<span class="ruby-operator">></span><span class="ruby-value str">"\\\\"</span> }
|
|
351
|
-
<span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-regexp re">/[\r\n\t"\\]/</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span> <span class="ruby-ivar">@@table_</span>[<span class="ruby-identifier">m</span>] }
|
|
352
|
-
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">text</span>
|
|
353
|
-
<span class="ruby-keyword kw">end</span>
|
|
354
|
-
</pre>
|
|
355
|
-
</div>
|
|
356
|
-
</div>
|
|
357
|
-
</div>
|
|
358
110
|
|
|
359
|
-
<div id="method-M000113" class="method-detail">
|
|
360
|
-
<a name="M000113"></a>
|
|
361
111
|
|
|
362
|
-
<div class="method-heading">
|
|
363
|
-
<a href="#M000113" class="method-signature">
|
|
364
|
-
<span class="method-name">escaped_expr</span><span class="method-args">(code)</span>
|
|
365
|
-
</a>
|
|
366
|
-
</div>
|
|
367
112
|
|
|
368
|
-
<div class="method-description">
|
|
369
|
-
<p><a class="source-toggle" href="#"
|
|
370
|
-
onclick="toggleCode('M000113-source');return false;">[Source]</a></p>
|
|
371
|
-
<div class="method-source-code" id="M000113-source">
|
|
372
|
-
<pre>
|
|
373
|
-
<span class="ruby-comment cmt"># File erubis/engine/ec.rb, line 42</span>
|
|
374
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">escaped_expr</span>(<span class="ruby-identifier">code</span>)
|
|
375
|
-
<span class="ruby-ivar">@escape</span> <span class="ruby-operator">||=</span> <span class="ruby-value str">"escape"</span>
|
|
376
|
-
<span class="ruby-identifier">code</span>.<span class="ruby-identifier">strip!</span>
|
|
377
|
-
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">code</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/\A(\".*?\")\s*,\s*(.*)/</span>
|
|
378
|
-
<span class="ruby-keyword kw">return</span> <span class="ruby-node">"#{$1}, #{@escape}(#{$2})"</span>
|
|
379
|
-
<span class="ruby-keyword kw">else</span>
|
|
380
|
-
<span class="ruby-keyword kw">return</span> <span class="ruby-node">"#{@escape}(#{code})"</span>
|
|
381
|
-
<span class="ruby-keyword kw">end</span>
|
|
382
|
-
<span class="ruby-keyword kw">end</span>
|
|
383
|
-
</pre>
|
|
384
|
-
</div>
|
|
385
|
-
</div>
|
|
386
|
-
</div>
|
|
387
113
|
|
|
388
114
|
|
|
389
|
-
|
|
115
|
+
<!-- if method_list -->
|
|
390
116
|
|
|
391
117
|
|
|
392
118
|
</div>
|