erubis 1.1.0 → 2.0.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.
Files changed (116) hide show
  1. data/ChangeLog +45 -18
  2. data/README.txt +80 -0
  3. data/benchmark/erubybench-lib.rb +189 -0
  4. data/benchmark/erubybench.rb +364 -0
  5. data/benchmark/erubybench.rhtml +61 -0
  6. data/benchmark/erubybench.yaml +61 -0
  7. data/bin/erubis +4 -180
  8. data/contrib/erubis +2297 -0
  9. data/contrib/inline-require +151 -0
  10. data/doc-api/classes/Erubis.html +236 -0
  11. data/doc-api/classes/Erubis/ArrayBufferEnhancer.html +175 -0
  12. data/doc-api/classes/Erubis/ArrayBufferEruby.html +120 -0
  13. data/doc-api/classes/Erubis/ArrayEnhancer.html +174 -0
  14. data/doc-api/classes/Erubis/ArrayEruby.html +120 -0
  15. data/doc-api/classes/Erubis/BiPatternEnhancer.html +212 -0
  16. data/doc-api/classes/Erubis/BiPatternEruby.html +120 -0
  17. data/doc-api/classes/Erubis/CommandOptionError.html +113 -0
  18. data/doc-api/classes/Erubis/Context.html +249 -0
  19. data/doc-api/classes/Erubis/Ec.html +399 -0
  20. data/doc-api/classes/Erubis/Ejava.html +366 -0
  21. data/doc-api/classes/Erubis/Ejavascript.html +390 -0
  22. data/doc-api/classes/Erubis/Engine.html +711 -0
  23. data/doc-api/classes/Erubis/Eperl.html +350 -0
  24. data/doc-api/classes/Erubis/Ephp.html +308 -0
  25. data/doc-api/classes/Erubis/ErubisError.html +117 -0
  26. data/doc-api/classes/Erubis/Eruby.html +310 -0
  27. data/doc-api/classes/Erubis/EscapeEnhancer.html +167 -0
  28. data/doc-api/classes/Erubis/EscapedEc.html +120 -0
  29. data/doc-api/classes/Erubis/EscapedEjava.html +120 -0
  30. data/doc-api/classes/Erubis/EscapedEjavascript.html +120 -0
  31. data/doc-api/classes/Erubis/EscapedEperl.html +120 -0
  32. data/doc-api/classes/Erubis/EscapedEphp.html +120 -0
  33. data/doc-api/classes/Erubis/EscapedEruby.html +127 -0
  34. data/doc-api/classes/Erubis/EscapedEscheme.html +120 -0
  35. data/doc-api/classes/Erubis/Escheme.html +389 -0
  36. data/doc-api/classes/Erubis/HeaderFooterEnhancer.html +264 -0
  37. data/doc-api/classes/Erubis/HeaderFooterEruby.html +120 -0
  38. data/doc-api/classes/Erubis/Main.html +318 -0
  39. data/doc-api/classes/Erubis/NoTextEnhancer.html +159 -0
  40. data/doc-api/classes/Erubis/NoTextEruby.html +120 -0
  41. data/doc-api/classes/Erubis/OptimizedEruby.html +445 -0
  42. data/doc-api/classes/Erubis/OptimizedXmlEruby.html +163 -0
  43. data/doc-api/classes/Erubis/PercentLineEnhancer.html +174 -0
  44. data/doc-api/classes/Erubis/PercentLineEruby.html +120 -0
  45. data/doc-api/classes/Erubis/PrintEnabledEnhancer.html +212 -0
  46. data/doc-api/classes/Erubis/PrintEnabledEruby.html +120 -0
  47. data/doc-api/classes/Erubis/PrintOutEnhancer.html +244 -0
  48. data/doc-api/classes/Erubis/PrintOutEruby.html +120 -0
  49. data/doc-api/classes/Erubis/PrintOutSimplifiedEruby.html +121 -0
  50. data/doc-api/classes/Erubis/SimplifiedEruby.html +120 -0
  51. data/doc-api/classes/Erubis/SimplifyEnhancer.html +185 -0
  52. data/doc-api/classes/Erubis/StdoutEnhancer.html +173 -0
  53. data/doc-api/classes/Erubis/StdoutEruby.html +120 -0
  54. data/doc-api/classes/Erubis/StdoutSimplifiedEruby.html +121 -0
  55. data/doc-api/classes/Erubis/StringBufferEnhancer.html +174 -0
  56. data/doc-api/classes/Erubis/StringBufferEruby.html +120 -0
  57. data/doc-api/classes/Erubis/StringIOEruby.html +120 -0
  58. data/doc-api/classes/Erubis/TinyEruby.html +305 -0
  59. data/doc-api/classes/Erubis/XmlEruby.html +130 -0
  60. data/doc-api/classes/Erubis/XmlHelper.html +193 -0
  61. data/doc-api/created.rid +1 -0
  62. data/doc-api/files/__/README_txt.html +214 -0
  63. data/doc-api/files/erubis/engine/ec_rb.html +115 -0
  64. data/doc-api/files/erubis/engine/ejava_rb.html +115 -0
  65. data/doc-api/files/erubis/engine/ejavascript_rb.html +115 -0
  66. data/doc-api/files/erubis/engine/enhanced_rb.html +115 -0
  67. data/doc-api/files/erubis/engine/eperl_rb.html +115 -0
  68. data/doc-api/files/erubis/engine/ephp_rb.html +115 -0
  69. data/doc-api/files/erubis/engine/eruby_rb.html +115 -0
  70. data/doc-api/files/erubis/engine/escheme_rb.html +115 -0
  71. data/doc-api/files/erubis/engine/optimized_rb.html +114 -0
  72. data/doc-api/files/erubis/engine_rb.html +114 -0
  73. data/doc-api/files/erubis/enhancer_rb.html +114 -0
  74. data/doc-api/files/erubis/helper_rb.html +107 -0
  75. data/doc-api/files/erubis/local-setting_rb.html +107 -0
  76. data/doc-api/files/erubis/main_rb.html +125 -0
  77. data/doc-api/files/erubis/tiny_rb.html +107 -0
  78. data/doc-api/files/erubis_rb.html +118 -0
  79. data/doc-api/fr_class_index.html +77 -0
  80. data/doc-api/fr_file_index.html +43 -0
  81. data/doc-api/fr_method_index.html +157 -0
  82. data/doc-api/index.html +24 -0
  83. data/doc-api/rdoc-style.css +208 -0
  84. data/doc/users-guide.html +1507 -375
  85. data/examples/Makefile +53 -0
  86. data/examples/example.ec +24 -0
  87. data/examples/example.ejava +41 -0
  88. data/examples/example.ejavascript +16 -0
  89. data/examples/example.eperl +16 -0
  90. data/examples/example.ephp +17 -0
  91. data/examples/example.eruby +15 -0
  92. data/examples/example.escheme +26 -0
  93. data/lib/erubis.rb +37 -269
  94. data/lib/erubis/engine.rb +260 -0
  95. data/lib/erubis/engine/ec.rb +106 -0
  96. data/lib/erubis/engine/ejava.rb +101 -0
  97. data/lib/erubis/engine/ejavascript.rb +104 -0
  98. data/lib/erubis/engine/enhanced.rb +102 -0
  99. data/lib/erubis/engine/eperl.rb +83 -0
  100. data/lib/erubis/engine/ephp.rb +84 -0
  101. data/lib/erubis/engine/eruby.rb +91 -0
  102. data/lib/erubis/engine/escheme.rb +96 -0
  103. data/lib/erubis/engine/optimized.rb +114 -0
  104. data/lib/erubis/enhancer.rb +487 -0
  105. data/lib/erubis/helper.rb +53 -0
  106. data/lib/erubis/local-setting.rb +10 -0
  107. data/lib/erubis/main.rb +368 -0
  108. data/lib/erubis/tiny.rb +65 -0
  109. data/test/assert-text-equal.rb +45 -0
  110. data/test/test-bin.rb +222 -45
  111. data/test/test-engines.rb +343 -0
  112. data/test/test-erubis.rb +836 -501
  113. data/test/test.rb +27 -0
  114. data/test/testutil.rb +86 -0
  115. metadata +131 -8
  116. data/README +0 -50
@@ -0,0 +1,151 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ ###
4
+ ### inline-require - expand 'require "foo"' into inline code
5
+ ###
6
+ ### usage: inline-require [-h] [-I path[,path2,..]] script
7
+ ###
8
+ ### copyright(c) 2006 kuwata-lab all rights reserved.
9
+ ### $Release: 2.0.0 $
10
+ ### $Rev: 2 $
11
+ ###
12
+
13
+
14
+ class InlineRequire
15
+
16
+ def expand(filename)
17
+ sbuf = ''
18
+ inlined = []
19
+ level = 0
20
+ expand_require(filename, sbuf, inlined, level)
21
+ return sbuf
22
+ end
23
+
24
+ private
25
+
26
+ def expand_require(filename, sbuf, inlined, level)
27
+ raise "*** assertion error" if inlined.include?(filename)
28
+ inlined << filename
29
+ prog = File.read(filename)
30
+ n = 0
31
+ flag_if_file = false
32
+ prog.each_line do |line|
33
+ n += 1
34
+
35
+ ## comment out from 'if __FILE__ == $0' to 'end'
36
+ if level > 0
37
+ if flag_if_file
38
+ sbuf << "#" << line
39
+ flag_if_file = false if line =~ /^end$/
40
+ next
41
+ end
42
+ if line =~ /^if\s+__FILE__\s*==\s*\$0(\s+then)?$/ || line =~ /^if\s+\$0\s*==\s*__FILE__(\s+then)?$/
43
+ flag_if_file = true
44
+ sbuf << "#" << line
45
+ next
46
+ end
47
+ end
48
+
49
+ ## find 'require "foo"' and expand it to inline code
50
+ flag_inline = false
51
+ if line =~ /^\s*require ['"](.*)["']\s*$/
52
+ libname = $1
53
+ libpath = find_library(libname)
54
+ $stderr.puts "*** debug: libpath=#{libpath.inspect}" if $debug_mode
55
+ unless libpath
56
+ raise "file '#{filename}'(line #{n}): library '#{libname}' not found."
57
+ end
58
+ flag_inline = true if libpath =~ /\.rb$/ && local_library?(libpath)
59
+ end
60
+ if !flag_inline
61
+ sbuf << line
62
+ elsif inlined.include?(libpath)
63
+ sbuf << "#--already included #{line}"
64
+ else
65
+ sbuf << "#--begin of #{line}"
66
+ expand_require(libpath, sbuf, inlined, level+1)
67
+ sbuf << "#--end of #{line}"
68
+ end
69
+ end
70
+ #sbuf << "\n" if sbuf[-1] != ?\n
71
+ end
72
+
73
+ def local_library?(libpath)
74
+ return libpath !~ /^\//
75
+ end
76
+
77
+ def find_library(libname)
78
+ if libname =~ /^\.rb$/
79
+ libname_rb = libname
80
+ libname_so = nil
81
+ elsif libname =~ /^\.so$/
82
+ libname_rb = nil
83
+ libname_so = libname
84
+ else
85
+ libname_rb = libname + ".rb"
86
+ libname_so = libname + ".so"
87
+ end
88
+ $LOAD_PATH.each do |path|
89
+ if libname_rb
90
+ libpath = path + "/" + libname_rb
91
+ return libpath if test(?f, libpath)
92
+ end
93
+ if libname_so
94
+ libpath = path + "/" + libname_so
95
+ return libpath if test(?f, libpath)
96
+ end
97
+ end
98
+ return nil
99
+ end
100
+
101
+ end
102
+
103
+ if __FILE__ == $0
104
+
105
+ begin
106
+ rubylib_paths = []
107
+ flag_help = false
108
+ while ARGV[0] && ARGV[0][0] == ?-
109
+ opt = ARGV.shift
110
+ case opt
111
+ when '-h', '--help'
112
+ flag_help = true
113
+ when '-I'
114
+ arg = ARGV.shift
115
+ raise "-I: library path required." unless arg
116
+ rubylib_paths.concat(arg.split(/,/))
117
+ when '-D'
118
+ $debug_mode = true
119
+ else
120
+ raise "#{opt}: invalid option."
121
+ end
122
+ end
123
+
124
+ if flag_help
125
+ command = File.basename($0)
126
+ puts "Usage: #{command} [-h] [-I path[,path2,..]] script"
127
+ puts " -h : help"
128
+ puts " -I path[,path2,...] : ruby library path"
129
+ exit(0)
130
+ end
131
+
132
+ $stderr.puts "*** debug: rubylib_paths=#{rubylib_paths.inspect}" if $debug_mode
133
+ $LOAD_PATH.concat(rubylib_paths)
134
+
135
+ filenames = ARGV
136
+
137
+ inline_require = InlineRequire.new
138
+ filenames.each do |filename|
139
+ print inline_require.expand(filename)
140
+ end
141
+
142
+ rescue => ex
143
+ if $debug_mode
144
+ raise ex
145
+ else
146
+ $stderr.puts ex.message
147
+ end
148
+
149
+ end
150
+
151
+ end
@@ -0,0 +1,236 @@
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</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</td>
54
+ </tr>
55
+ <tr class="top-aligned-row">
56
+ <td><strong>In:</strong></td>
57
+ <td>
58
+ <a href="../files/erubis/engine/ec_rb.html">
59
+ erubis/engine/ec.rb
60
+ </a>
61
+ <br />
62
+ <a href="../files/erubis/engine/ejava_rb.html">
63
+ erubis/engine/ejava.rb
64
+ </a>
65
+ <br />
66
+ <a href="../files/erubis/engine/ejavascript_rb.html">
67
+ erubis/engine/ejavascript.rb
68
+ </a>
69
+ <br />
70
+ <a href="../files/erubis/engine/enhanced_rb.html">
71
+ erubis/engine/enhanced.rb
72
+ </a>
73
+ <br />
74
+ <a href="../files/erubis/engine/eperl_rb.html">
75
+ erubis/engine/eperl.rb
76
+ </a>
77
+ <br />
78
+ <a href="../files/erubis/engine/ephp_rb.html">
79
+ erubis/engine/ephp.rb
80
+ </a>
81
+ <br />
82
+ <a href="../files/erubis/engine/eruby_rb.html">
83
+ erubis/engine/eruby.rb
84
+ </a>
85
+ <br />
86
+ <a href="../files/erubis/engine/escheme_rb.html">
87
+ erubis/engine/escheme.rb
88
+ </a>
89
+ <br />
90
+ <a href="../files/erubis/engine/optimized_rb.html">
91
+ erubis/engine/optimized.rb
92
+ </a>
93
+ <br />
94
+ <a href="../files/erubis/engine_rb.html">
95
+ erubis/engine.rb
96
+ </a>
97
+ <br />
98
+ <a href="../files/erubis/enhancer_rb.html">
99
+ erubis/enhancer.rb
100
+ </a>
101
+ <br />
102
+ <a href="../files/erubis/helper_rb.html">
103
+ erubis/helper.rb
104
+ </a>
105
+ <br />
106
+ <a href="../files/erubis/main_rb.html">
107
+ erubis/main.rb
108
+ </a>
109
+ <br />
110
+ <a href="../files/erubis/tiny_rb.html">
111
+ erubis/tiny.rb
112
+ </a>
113
+ <br />
114
+ </td>
115
+ </tr>
116
+
117
+ </table>
118
+ </div>
119
+ <!-- banner header -->
120
+
121
+ <div id="bodyContent">
122
+
123
+
124
+
125
+ <div id="contextContent">
126
+
127
+ <div id="description">
128
+ <p>
129
+ $Rev: 21 $ $Release: 2.0.0 $ copyright(c) 2006 kuwata-lab all rights reserved.
130
+ </p>
131
+
132
+ </div>
133
+
134
+
135
+ </div>
136
+
137
+
138
+ </div>
139
+
140
+
141
+ <!-- if includes -->
142
+
143
+ <div id="section">
144
+
145
+ <div id="class-list">
146
+ <h3 class="section-bar">Classes and Modules</h3>
147
+
148
+ Module <a href="Erubis/ArrayBufferEnhancer.html" class="link">Erubis::ArrayBufferEnhancer</a><br />
149
+ Module <a href="Erubis/ArrayEnhancer.html" class="link">Erubis::ArrayEnhancer</a><br />
150
+ Module <a href="Erubis/BiPatternEnhancer.html" class="link">Erubis::BiPatternEnhancer</a><br />
151
+ Module <a href="Erubis/EscapeEnhancer.html" class="link">Erubis::EscapeEnhancer</a><br />
152
+ Module <a href="Erubis/HeaderFooterEnhancer.html" class="link">Erubis::HeaderFooterEnhancer</a><br />
153
+ Module <a href="Erubis/NoTextEnhancer.html" class="link">Erubis::NoTextEnhancer</a><br />
154
+ Module <a href="Erubis/PercentLineEnhancer.html" class="link">Erubis::PercentLineEnhancer</a><br />
155
+ Module <a href="Erubis/PrintEnabledEnhancer.html" class="link">Erubis::PrintEnabledEnhancer</a><br />
156
+ Module <a href="Erubis/PrintOutEnhancer.html" class="link">Erubis::PrintOutEnhancer</a><br />
157
+ Module <a href="Erubis/SimplifyEnhancer.html" class="link">Erubis::SimplifyEnhancer</a><br />
158
+ Module <a href="Erubis/StdoutEnhancer.html" class="link">Erubis::StdoutEnhancer</a><br />
159
+ Module <a href="Erubis/StringBufferEnhancer.html" class="link">Erubis::StringBufferEnhancer</a><br />
160
+ Module <a href="Erubis/XmlHelper.html" class="link">Erubis::XmlHelper</a><br />
161
+ Class <a href="Erubis/ArrayBufferEruby.html" class="link">Erubis::ArrayBufferEruby</a><br />
162
+ Class <a href="Erubis/ArrayEruby.html" class="link">Erubis::ArrayEruby</a><br />
163
+ Class <a href="Erubis/BiPatternEruby.html" class="link">Erubis::BiPatternEruby</a><br />
164
+ Class <a href="Erubis/CommandOptionError.html" class="link">Erubis::CommandOptionError</a><br />
165
+ Class <a href="Erubis/Context.html" class="link">Erubis::Context</a><br />
166
+ Class <a href="Erubis/Ec.html" class="link">Erubis::Ec</a><br />
167
+ Class <a href="Erubis/Ejava.html" class="link">Erubis::Ejava</a><br />
168
+ Class <a href="Erubis/Ejavascript.html" class="link">Erubis::Ejavascript</a><br />
169
+ Class <a href="Erubis/Engine.html" class="link">Erubis::Engine</a><br />
170
+ Class <a href="Erubis/Eperl.html" class="link">Erubis::Eperl</a><br />
171
+ Class <a href="Erubis/Ephp.html" class="link">Erubis::Ephp</a><br />
172
+ Class <a href="Erubis/ErubisError.html" class="link">Erubis::ErubisError</a><br />
173
+ Class <a href="Erubis/Eruby.html" class="link">Erubis::Eruby</a><br />
174
+ Class <a href="Erubis/EscapedEc.html" class="link">Erubis::EscapedEc</a><br />
175
+ Class <a href="Erubis/EscapedEjava.html" class="link">Erubis::EscapedEjava</a><br />
176
+ Class <a href="Erubis/EscapedEjavascript.html" class="link">Erubis::EscapedEjavascript</a><br />
177
+ Class <a href="Erubis/EscapedEperl.html" class="link">Erubis::EscapedEperl</a><br />
178
+ Class <a href="Erubis/EscapedEphp.html" class="link">Erubis::EscapedEphp</a><br />
179
+ Class <a href="Erubis/EscapedEruby.html" class="link">Erubis::EscapedEruby</a><br />
180
+ Class <a href="Erubis/EscapedEscheme.html" class="link">Erubis::EscapedEscheme</a><br />
181
+ Class <a href="Erubis/Escheme.html" class="link">Erubis::Escheme</a><br />
182
+ Class <a href="Erubis/HeaderFooterEruby.html" class="link">Erubis::HeaderFooterEruby</a><br />
183
+ Class <a href="Erubis/Main.html" class="link">Erubis::Main</a><br />
184
+ Class <a href="Erubis/NoTextEruby.html" class="link">Erubis::NoTextEruby</a><br />
185
+ Class <a href="Erubis/OptimizedEruby.html" class="link">Erubis::OptimizedEruby</a><br />
186
+ Class <a href="Erubis/OptimizedXmlEruby.html" class="link">Erubis::OptimizedXmlEruby</a><br />
187
+ Class <a href="Erubis/PercentLineEruby.html" class="link">Erubis::PercentLineEruby</a><br />
188
+ Class <a href="Erubis/PrintEnabledEruby.html" class="link">Erubis::PrintEnabledEruby</a><br />
189
+ Class <a href="Erubis/PrintOutEruby.html" class="link">Erubis::PrintOutEruby</a><br />
190
+ Class <a href="Erubis/PrintOutSimplifiedEruby.html" class="link">Erubis::PrintOutSimplifiedEruby</a><br />
191
+ Class <a href="Erubis/SimplifiedEruby.html" class="link">Erubis::SimplifiedEruby</a><br />
192
+ Class <a href="Erubis/StdoutEruby.html" class="link">Erubis::StdoutEruby</a><br />
193
+ Class <a href="Erubis/StdoutSimplifiedEruby.html" class="link">Erubis::StdoutSimplifiedEruby</a><br />
194
+ Class <a href="Erubis/StringBufferEruby.html" class="link">Erubis::StringBufferEruby</a><br />
195
+ Class <a href="Erubis/StringIOEruby.html" class="link">Erubis::StringIOEruby</a><br />
196
+ Class <a href="Erubis/TinyEruby.html" class="link">Erubis::TinyEruby</a><br />
197
+ Class <a href="Erubis/XmlEruby.html" class="link">Erubis::XmlEruby</a><br />
198
+
199
+ </div>
200
+
201
+ <div id="constants-list">
202
+ <h3 class="section-bar">Constants</h3>
203
+
204
+ <div class="name-list">
205
+ <table summary="Constants">
206
+ <tr class="top-aligned-row context-row">
207
+ <td class="context-item-name">Ejs</td>
208
+ <td>=</td>
209
+ <td class="context-item-value">Ejavascript</td>
210
+ </tr>
211
+ <tr class="top-aligned-row context-row">
212
+ <td class="context-item-name">EscapedEjs</td>
213
+ <td>=</td>
214
+ <td class="context-item-value">EscapedEjavascript</td>
215
+ </tr>
216
+ </table>
217
+ </div>
218
+ </div>
219
+
220
+
221
+
222
+
223
+
224
+
225
+ <!-- if method_list -->
226
+
227
+
228
+ </div>
229
+
230
+
231
+ <div id="validator-badges">
232
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
233
+ </div>
234
+
235
+ </body>
236
+ </html>
@@ -0,0 +1,175 @@
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::ArrayBufferEnhancer</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::ArrayBufferEnhancer</td>
54
+ </tr>
55
+ <tr class="top-aligned-row">
56
+ <td><strong>In:</strong></td>
57
+ <td>
58
+ <a href="../../files/erubis/enhancer_rb.html">
59
+ erubis/enhancer.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
+ use an Array object as buffer (included in <a href="Eruby.html">Eruby</a>
78
+ by default)
79
+ </p>
80
+ <p>
81
+ this is only for <a href="Eruby.html">Eruby</a>.
82
+ </p>
83
+
84
+ </div>
85
+
86
+
87
+ </div>
88
+
89
+ <div id="method-list">
90
+ <h3 class="section-bar">Methods</h3>
91
+
92
+ <div class="name-list">
93
+ <a href="#M000002">add_postamble</a>&nbsp;&nbsp;
94
+ <a href="#M000001">add_preamble</a>&nbsp;&nbsp;
95
+ </div>
96
+ </div>
97
+
98
+ </div>
99
+
100
+
101
+ <!-- if includes -->
102
+
103
+ <div id="section">
104
+
105
+
106
+
107
+
108
+
109
+
110
+
111
+
112
+ <!-- if method_list -->
113
+ <div id="methods">
114
+ <h3 class="section-bar">Public Instance methods</h3>
115
+
116
+ <div id="method-M000002" class="method-detail">
117
+ <a name="M000002"></a>
118
+
119
+ <div class="method-heading">
120
+ <a href="#M000002" class="method-signature">
121
+ <span class="method-name">add_postamble</span><span class="method-args">(src)</span>
122
+ </a>
123
+ </div>
124
+
125
+ <div class="method-description">
126
+ <p><a class="source-toggle" href="#"
127
+ onclick="toggleCode('M000002-source');return false;">[Source]</a></p>
128
+ <div class="method-source-code" id="M000002-source">
129
+ <pre>
130
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 197</span>
131
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_postamble</span>(<span class="ruby-identifier">src</span>)
132
+ <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>
133
+ <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;_buf.join\n&quot;</span>
134
+ <span class="ruby-keyword kw">end</span>
135
+ </pre>
136
+ </div>
137
+ </div>
138
+ </div>
139
+
140
+ <div id="method-M000001" class="method-detail">
141
+ <a name="M000001"></a>
142
+
143
+ <div class="method-heading">
144
+ <a href="#M000001" class="method-signature">
145
+ <span class="method-name">add_preamble</span><span class="method-args">(src)</span>
146
+ </a>
147
+ </div>
148
+
149
+ <div class="method-description">
150
+ <p><a class="source-toggle" href="#"
151
+ onclick="toggleCode('M000001-source');return false;">[Source]</a></p>
152
+ <div class="method-source-code" id="M000001-source">
153
+ <pre>
154
+ <span class="ruby-comment cmt"># File erubis/enhancer.rb, line 193</span>
155
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_preamble</span>(<span class="ruby-identifier">src</span>)
156
+ <span class="ruby-identifier">src</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;_buf = [];&quot;</span>
157
+ <span class="ruby-keyword kw">end</span>
158
+ </pre>
159
+ </div>
160
+ </div>
161
+ </div>
162
+
163
+
164
+ </div>
165
+
166
+
167
+ </div>
168
+
169
+
170
+ <div id="validator-badges">
171
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
172
+ </div>
173
+
174
+ </body>
175
+ </html>