module Erubis::PhpGenerator

def self.supported_properties() # :nodoc:

:nodoc:
def self.supported_properties()  # :nodoc:
  return []
end

def add_expr_debug(src, code)

def add_expr_debug(src, code)
  code.strip!
  s = code.gsub(/\'/, "\\'")
  src << "<?php error_log('*** debug: #{s}='.(#{code}), 0); ?>"
end

def add_expr_escaped(src, code)

def add_expr_escaped(src, code)
  add_expr_literal(src, escaped_expr(code))
end

def add_expr_literal(src, code)

def add_expr_literal(src, code)
  code.strip!
  src << "<?php echo #{code}; ?>"
end

def add_postamble(src)

def add_postamble(src)
  # empty
end

def add_preamble(src)

def add_preamble(src)
  # empty
end

def add_stmt(src, code)

def add_stmt(src, code)
  src << "<?php"
  src << " " if code[0] != ?\ #
  if code[-1] == ?\n
    code.chomp!
    src << code << "?>\n"
  else
    src << code << "?>"
  end
end

def add_text(src, text)

def add_text(src, text)
  src << escape_text(text)
end

def escape_text(text)

def escape_text(text)
  return text.gsub!(/<\?xml\b/, '<<?php ?>?xml') || text
end

def init_generator(properties={})

def init_generator(properties={})
  super
  @escapefunc ||= 'htmlspecialchars'
end