# File lib/erubis/engine/optimized.rb, line 85
85: def add_expr_debug(src, code)
86: code.strip!
87: s = (code.dump =~ /\A"(.*)"\z/) && $1
88: src << ' $stderr.puts("*** debug: ' << s << '=#{(' << code << ').inspect}");'
89: end
# File lib/erubis/engine/optimized.rb, line 79
79: def add_expr_escaped(src, code)
80: unless @initialized; src << "_buf = ''"; @initialized = true; end
81: switch_to_expr(src)
82: src << " << " << escaped_expr(code)
83: end
# File lib/erubis/engine/optimized.rb, line 73
73: def add_expr_literal(src, code)
74: unless @initialized; src << "_buf = ''"; @initialized = true; end
75: switch_to_expr(src)
76: src << " << (" << code << ").to_s"
77: end
# File lib/erubis/engine/optimized.rb, line 91
91: def add_postamble(src)
92: #super if @initialized
93: src << "\n_buf\n" if @initialized
94: end
# File lib/erubis/engine/optimized.rb, line 50
50: def add_preamble(src)
51: #@initialized = false
52: #@prev_is_expr = false
53: end
# File lib/erubis/engine/optimized.rb, line 66
66: def add_stmt(src, code)
67: switch_to_stmt(src) if @initialized
68: #super
69: src << code
70: src << ';' unless code[1] == \n\
71: end
# File lib/erubis/engine/optimized.rb, line 55
55: def add_text(src, text)
56: return if text.empty?
57: if @initialized
58: switch_to_expr(src)
59: src << " << '" << escape_text(text) << "'"
60: else
61: src << "_buf = '" << escape_text(text) << "';"
62: @initialized = true
63: end
64: end
# File lib/erubis/engine/optimized.rb, line 29
29: def escape_text(text)
30: text.gsub(/['\\]/, '\\\&') # "'" => "\\'", '\\' => '\\\\'
31: end
# File lib/erubis/engine/optimized.rb, line 33
33: def escaped_expr(code)
34: @escapefunc ||= 'Erubis::XmlHelper.escape_xml'
35: return "#{@escapefunc}(#{code})"
36: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.