~ubuntu-branches/ubuntu/saucy/ruby-erubis/saucy

« back to all changes in this revision

Viewing changes to doc-api/classes/Erubis/SchemeGenerator.html

  • Committer: Package Import Robot
  • Author(s): Laurent Bigonville
  • Date: 2012-01-26 15:15:58 UTC
  • Revision ID: package-import@ubuntu.com-20120126151558-9u7mnf9ooqnw3bwz
Tags: upstream-2.7.0
ImportĀ upstreamĀ versionĀ 2.7.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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::SchemeGenerator</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::SchemeGenerator</td>
 
54
        </tr>
 
55
        <tr class="top-aligned-row">
 
56
            <td><strong>In:</strong></td>
 
57
            <td>
 
58
                <a href="../../files/erubis/engine/escheme_rb.html">
 
59
                erubis/engine/escheme.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
 
 
76
 
 
77
   </div>
 
78
 
 
79
    <div id="method-list">
 
80
      <h3 class="section-bar">Methods</h3>
 
81
 
 
82
      <div class="name-list">
 
83
      <a href="#M000045">add_expr_debug</a>&nbsp;&nbsp;
 
84
      <a href="#M000044">add_expr_escaped</a>&nbsp;&nbsp;
 
85
      <a href="#M000043">add_expr_literal</a>&nbsp;&nbsp;
 
86
      <a href="#M000046">add_postamble</a>&nbsp;&nbsp;
 
87
      <a href="#M000038">add_preamble</a>&nbsp;&nbsp;
 
88
      <a href="#M000042">add_stmt</a>&nbsp;&nbsp;
 
89
      <a href="#M000041">add_text</a>&nbsp;&nbsp;
 
90
      <a href="#M000039">escape_text</a>&nbsp;&nbsp;
 
91
      <a href="#M000040">escaped_expr</a>&nbsp;&nbsp;
 
92
      <a href="#M000037">init_generator</a>&nbsp;&nbsp;
 
93
      </div>
 
94
    </div>
 
95
 
 
96
  </div>
 
97
 
 
98
 
 
99
    <!-- if includes -->
 
100
    <div id="includes">
 
101
      <h3 class="section-bar">Included Modules</h3>
 
102
 
 
103
      <div id="includes-list">
 
104
        <span class="include-name"><a href="Generator.html">Generator</a></span>
 
105
      </div>
 
106
    </div>
 
107
 
 
108
    <div id="section">
 
109
 
 
110
 
 
111
 
 
112
 
 
113
 
 
114
      
 
115
 
 
116
 
 
117
    <!-- if method_list -->
 
118
    <div id="methods">
 
119
      <h3 class="section-bar">Public Instance methods</h3>
 
120
 
 
121
      <div id="method-M000045" class="method-detail">
 
122
        <a name="M000045"></a>
 
123
 
 
124
        <div class="method-heading">
 
125
          <a href="#M000045" class="method-signature">
 
126
          <span class="method-name">add_expr_debug</span><span class="method-args">(src, code)</span>
 
127
          </a>
 
128
        </div>
 
129
      
 
130
        <div class="method-description">
 
131
          <p><a class="source-toggle" href="#"
 
132
            onclick="toggleCode('M000045-source');return false;">[Source]</a></p>
 
133
          <div class="method-source-code" id="M000045-source">
 
134
<pre>
 
135
<span class="ruby-comment cmt"># File erubis/engine/escheme.rb, line 71</span>
 
136
    <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>)
 
137
      <span class="ruby-identifier">s</span> = (<span class="ruby-identifier">code</span>.<span class="ruby-identifier">strip!</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">code</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/\&quot;/</span>, <span class="ruby-value str">'\\&quot;'</span>)
 
138
      <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;(display \&quot;*** debug: #{s}=\&quot;)(display #{code.strip})(display \&quot;\\n\&quot;)&quot;</span>
 
139
    <span class="ruby-keyword kw">end</span>
 
140
</pre>
 
141
          </div>
 
142
        </div>
 
143
      </div>
 
144
 
 
145
      <div id="method-M000044" class="method-detail">
 
146
        <a name="M000044"></a>
 
147
 
 
148
        <div class="method-heading">
 
149
          <a href="#M000044" class="method-signature">
 
150
          <span class="method-name">add_expr_escaped</span><span class="method-args">(src, code)</span>
 
151
          </a>
 
152
        </div>
 
153
      
 
154
        <div class="method-description">
 
155
          <p><a class="source-toggle" href="#"
 
156
            onclick="toggleCode('M000044-source');return false;">[Source]</a></p>
 
157
          <div class="method-source-code" id="M000044-source">
 
158
<pre>
 
159
<span class="ruby-comment cmt"># File erubis/engine/escheme.rb, line 67</span>
 
160
    <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_expr_escaped</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">code</span>)
 
161
      <span class="ruby-identifier">add_expr_literal</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">escaped_expr</span>(<span class="ruby-identifier">code</span>))
 
162
    <span class="ruby-keyword kw">end</span>
 
163
</pre>
 
164
          </div>
 
165
        </div>
 
166
      </div>
 
167
 
 
168
      <div id="method-M000043" class="method-detail">
 
169
        <a name="M000043"></a>
 
170
 
 
171
        <div class="method-heading">
 
172
          <a href="#M000043" class="method-signature">
 
173
          <span class="method-name">add_expr_literal</span><span class="method-args">(src, code)</span>
 
174
          </a>
 
175
        </div>
 
176
      
 
177
        <div class="method-description">
 
178
          <p><a class="source-toggle" href="#"
 
179
            onclick="toggleCode('M000043-source');return false;">[Source]</a></p>
 
180
          <div class="method-source-code" id="M000043-source">
 
181
<pre>
 
182
<span class="ruby-comment cmt"># File erubis/engine/escheme.rb, line 62</span>
 
183
    <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_expr_literal</span>(<span class="ruby-identifier">src</span>, <span class="ruby-identifier">code</span>)
 
184
      <span class="ruby-identifier">code</span>.<span class="ruby-identifier">strip!</span>
 
185
      <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;(#{@func} #{code})&quot;</span>
 
186
    <span class="ruby-keyword kw">end</span>
 
187
</pre>
 
188
          </div>
 
189
        </div>
 
190
      </div>
 
191
 
 
192
      <div id="method-M000046" class="method-detail">
 
193
        <a name="M000046"></a>
 
194
 
 
195
        <div class="method-heading">
 
196
          <a href="#M000046" class="method-signature">
 
197
          <span class="method-name">add_postamble</span><span class="method-args">(src)</span>
 
198
          </a>
 
199
        </div>
 
200
      
 
201
        <div class="method-description">
 
202
          <p><a class="source-toggle" href="#"
 
203
            onclick="toggleCode('M000046-source');return false;">[Source]</a></p>
 
204
          <div class="method-source-code" id="M000046-source">
 
205
<pre>
 
206
<span class="ruby-comment cmt"># File erubis/engine/escheme.rb, line 76</span>
 
207
    <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_postamble</span>(<span class="ruby-identifier">src</span>)
 
208
      <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@func</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'_add'</span>
 
209
      <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;\n&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">src</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?\n</span>
 
210
      <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;  (reverse _buf))\n&quot;</span>
 
211
    <span class="ruby-keyword kw">end</span>
 
212
</pre>
 
213
          </div>
 
214
        </div>
 
215
      </div>
 
216
 
 
217
      <div id="method-M000038" class="method-detail">
 
218
        <a name="M000038"></a>
 
219
 
 
220
        <div class="method-heading">
 
221
          <a href="#M000038" class="method-signature">
 
222
          <span class="method-name">add_preamble</span><span class="method-args">(src)</span>
 
223
          </a>
 
224
        </div>
 
225
      
 
226
        <div class="method-description">
 
227
          <p><a class="source-toggle" href="#"
 
228
            onclick="toggleCode('M000038-source');return false;">[Source]</a></p>
 
229
          <div class="method-source-code" id="M000038-source">
 
230
<pre>
 
231
<span class="ruby-comment cmt"># File erubis/engine/escheme.rb, line 28</span>
 
232
    <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_preamble</span>(<span class="ruby-identifier">src</span>)
 
233
      <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@func</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'_add'</span>
 
234
      <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;(let ((_buf '())) &quot;</span> <span class="ruby-operator">+</span> \
 
235
               <span class="ruby-value str">&quot;(define (_add x) (set! _buf (cons x _buf))) &quot;</span>
 
236
      <span class="ruby-comment cmt">#src &lt;&lt; &quot;(let* ((_buf '())&quot; +        #             &quot; (_add (lambda (x) (set! _buf (cons x _buf))))) &quot;</span>
 
237
    <span class="ruby-keyword kw">end</span>
 
238
</pre>
 
239
          </div>
 
240
        </div>
 
241
      </div>
 
242
 
 
243
      <div id="method-M000042" class="method-detail">
 
244
        <a name="M000042"></a>
 
245
 
 
246
        <div class="method-heading">
 
247
          <a href="#M000042" class="method-signature">
 
248
          <span class="method-name">add_stmt</span><span class="method-args">(src, code)</span>
 
249
          </a>
 
250
        </div>
 
251
      
 
252
        <div class="method-description">
 
253
          <p><a class="source-toggle" href="#"
 
254
            onclick="toggleCode('M000042-source');return false;">[Source]</a></p>
 
255
          <div class="method-source-code" id="M000042-source">
 
256
<pre>
 
257
<span class="ruby-comment cmt"># File erubis/engine/escheme.rb, line 58</span>
 
258
    <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>)
 
259
      <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">code</span>
 
260
    <span class="ruby-keyword kw">end</span>
 
261
</pre>
 
262
          </div>
 
263
        </div>
 
264
      </div>
 
265
 
 
266
      <div id="method-M000041" class="method-detail">
 
267
        <a name="M000041"></a>
 
268
 
 
269
        <div class="method-heading">
 
270
          <a href="#M000041" class="method-signature">
 
271
          <span class="method-name">add_text</span><span class="method-args">(src, text)</span>
 
272
          </a>
 
273
        </div>
 
274
      
 
275
        <div class="method-description">
 
276
          <p><a class="source-toggle" href="#"
 
277
            onclick="toggleCode('M000041-source');return false;">[Source]</a></p>
 
278
          <div class="method-source-code" id="M000041-source">
 
279
<pre>
 
280
<span class="ruby-comment cmt"># File erubis/engine/escheme.rb, line 47</span>
 
281
    <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>)
 
282
      <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>
 
283
      <span class="ruby-identifier">t</span> = <span class="ruby-identifier">escape_text</span>(<span class="ruby-identifier">text</span>)
 
284
      <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">t</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">?\n</span>
 
285
        <span class="ruby-identifier">t</span>[<span class="ruby-value">-1</span>, <span class="ruby-value">1</span>] = <span class="ruby-value str">''</span>
 
286
        <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;(#{@func} \&quot;&quot;</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">t</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;\\n\&quot;)\n&quot;</span>
 
287
      <span class="ruby-keyword kw">else</span>
 
288
        <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;(#{@func} \&quot;&quot;</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">t</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">'&quot;)'</span>
 
289
      <span class="ruby-keyword kw">end</span>
 
290
    <span class="ruby-keyword kw">end</span>
 
291
</pre>
 
292
          </div>
 
293
        </div>
 
294
      </div>
 
295
 
 
296
      <div id="method-M000039" class="method-detail">
 
297
        <a name="M000039"></a>
 
298
 
 
299
        <div class="method-heading">
 
300
          <a href="#M000039" class="method-signature">
 
301
          <span class="method-name">escape_text</span><span class="method-args">(text)</span>
 
302
          </a>
 
303
        </div>
 
304
      
 
305
        <div class="method-description">
 
306
          <p><a class="source-toggle" href="#"
 
307
            onclick="toggleCode('M000039-source');return false;">[Source]</a></p>
 
308
          <div class="method-source-code" id="M000039-source">
 
309
<pre>
 
310
<span class="ruby-comment cmt"># File erubis/engine/escheme.rb, line 36</span>
 
311
    <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">escape_text</span>(<span class="ruby-identifier">text</span>)
 
312
      <span class="ruby-ivar">@table_</span> <span class="ruby-operator">||=</span> { <span class="ruby-value str">'&quot;'</span>=<span class="ruby-operator">&gt;</span><span class="ruby-value str">'\\&quot;'</span>, <span class="ruby-value str">'\\'</span>=<span class="ruby-operator">&gt;</span><span class="ruby-value str">'\\\\'</span> }
 
313
      <span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-regexp re">/[&quot;\\]/</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>] }
 
314
      <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">text</span>
 
315
    <span class="ruby-keyword kw">end</span>
 
316
</pre>
 
317
          </div>
 
318
        </div>
 
319
      </div>
 
320
 
 
321
      <div id="method-M000040" class="method-detail">
 
322
        <a name="M000040"></a>
 
323
 
 
324
        <div class="method-heading">
 
325
          <a href="#M000040" class="method-signature">
 
326
          <span class="method-name">escaped_expr</span><span class="method-args">(code)</span>
 
327
          </a>
 
328
        </div>
 
329
      
 
330
        <div class="method-description">
 
331
          <p><a class="source-toggle" href="#"
 
332
            onclick="toggleCode('M000040-source');return false;">[Source]</a></p>
 
333
          <div class="method-source-code" id="M000040-source">
 
334
<pre>
 
335
<span class="ruby-comment cmt"># File erubis/engine/escheme.rb, line 42</span>
 
336
    <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">escaped_expr</span>(<span class="ruby-identifier">code</span>)
 
337
      <span class="ruby-identifier">code</span>.<span class="ruby-identifier">strip!</span>
 
338
      <span class="ruby-keyword kw">return</span> <span class="ruby-node">&quot;(#{@escapefunc} #{code})&quot;</span>
 
339
    <span class="ruby-keyword kw">end</span>
 
340
</pre>
 
341
          </div>
 
342
        </div>
 
343
      </div>
 
344
 
 
345
      <div id="method-M000037" class="method-detail">
 
346
        <a name="M000037"></a>
 
347
 
 
348
        <div class="method-heading">
 
349
          <a href="#M000037" class="method-signature">
 
350
          <span class="method-name">init_generator</span><span class="method-args">(properties={})</span>
 
351
          </a>
 
352
        </div>
 
353
      
 
354
        <div class="method-description">
 
355
          <p><a class="source-toggle" href="#"
 
356
            onclick="toggleCode('M000037-source');return false;">[Source]</a></p>
 
357
          <div class="method-source-code" id="M000037-source">
 
358
<pre>
 
359
<span class="ruby-comment cmt"># File erubis/engine/escheme.rb, line 22</span>
 
360
    <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">init_generator</span>(<span class="ruby-identifier">properties</span>={})
 
361
      <span class="ruby-keyword kw">super</span>
 
362
      <span class="ruby-ivar">@escapefunc</span> <span class="ruby-operator">||=</span> <span class="ruby-value str">'escape'</span>
 
363
      <span class="ruby-ivar">@func</span> = <span class="ruby-identifier">properties</span>[<span class="ruby-identifier">:func</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">'_add'</span>   <span class="ruby-comment cmt"># or 'display'</span>
 
364
    <span class="ruby-keyword kw">end</span>
 
365
</pre>
 
366
          </div>
 
367
        </div>
 
368
      </div>
 
369
 
 
370
 
 
371
    </div>
 
372
 
 
373
 
 
374
  </div>
 
375
 
 
376
 
 
377
<div id="validator-badges">
 
378
  <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
 
379
</div>
 
380
 
 
381
</body>
 
382
</html>
 
 
b'\\ No newline at end of file'