module Erubis::PerlGenerator

Public Instance Methods

add_expr_debug(src, code) click to toggle source
# File lib/erubis/engine/eperl.rb, line 49
def add_expr_debug(src, code)
  code.strip!
  s = code.gsub(/\/, "\\'")
  src << @func << "('*** debug: #{code}=', #{code}, \"\\n\");"
end
add_expr_escaped(src, code) click to toggle source
# File lib/erubis/engine/eperl.rb, line 45
def add_expr_escaped(src, code)
  add_expr_literal(src, escaped_expr(code))
end
add_expr_literal(src, code) click to toggle source
# File lib/erubis/engine/eperl.rb, line 40
def add_expr_literal(src, code)
  code.strip!
  src << @func << "(" << code << "); "
end
add_postamble(src) click to toggle source
# File lib/erubis/engine/eperl.rb, line 59
def add_postamble(src)
  src << "\n" unless src[-1] == ?\n
end
add_preamble(src) click to toggle source
# File lib/erubis/engine/eperl.rb, line 28
def add_preamble(src)
  src << "use HTML::Entities; ";
end
add_stmt(src, code) click to toggle source
# File lib/erubis/engine/eperl.rb, line 55
def add_stmt(src, code)
  src << code
end
add_text(src, text) click to toggle source
# File lib/erubis/engine/eperl.rb, line 36
def add_text(src, text)
  src << @func << "('" << escape_text(text) << "'); " unless text.empty?
end
escape_text(text) click to toggle source
# File lib/erubis/engine/eperl.rb, line 32
def escape_text(text)
  return text.gsub!(/['\]/, '\\\&') || text
end
init_generator(properties={}) click to toggle source
Calls superclass method Erubis::Generator#init_generator
# File lib/erubis/engine/eperl.rb, line 22
def init_generator(properties={})
  super
  @escapefunc ||= 'encode_entities'
  @func = properties[:func] || 'print'
end