# class ActionView::Template::Handlers::Erubis

### Constants

BLOCK_EXPR

### Public Instance Methods

add_expr(src, code, indicator) click to toggle source

Erubis toggles <%= and <%== behavior when escaping is enabled. We override to always treat <%== as escaped.

Calls superclass method

    # File lib/action_view/template/handlers/erb.rb, line 20
    def add_expr(src, code, indicator)
      case indicator
      when '=='
        add_expr_escaped(src, code)
      else
        super
      end
    end

add_expr_escaped(src, code) click to toggle source

    # File lib/action_view/template/handlers/erb.rb, line 39
    def add_expr_escaped(src, code)
      if code =~ BLOCK_EXPR
        src << "@output_buffer.safe_append= " << code
      else
        src << "@output_buffer.safe_concat((" << code << ").to_s);"
      end
    end

add_expr_literal(src, code) click to toggle source

    # File lib/action_view/template/handlers/erb.rb, line 31
    def add_expr_literal(src, code)
      if code =~ BLOCK_EXPR
        src << '@output_buffer.append= ' << code
      else
        src << '@output_buffer.append= (' << code << ');'
      end
    end

add_postamble(src) click to toggle source

    # File lib/action_view/template/handlers/erb.rb, line 47
    def add_postamble(src)
      src << '@output_buffer.to_s'
    end

add_preamble(src) click to toggle source

    # File lib/action_view/template/handlers/erb.rb, line 9
    def add_preamble(src)
      src << "@output_buffer = output_buffer || ActionView::OutputBuffer.new;"
    end

add_text(src, text) click to toggle source

    # File lib/action_view/template/handlers/erb.rb, line 13
    def add_text(src, text)
      return if text.empty?
      src << "@output_buffer.safe_concat('" << escape_text(text) << "');"
    end