Sha256: 83ffcf9ba7276802247263f651dd5c72cb294f5bf7d26f351c4087fdcab52259

Contents?: true

Size: 1.73 KB

Versions: 13

Compression:

Stored size: 1.73 KB

Contents

##
## $Rev: 77 $
## $Release: 2.6.2 $
## copyright(c) 2006-2008 kuwata-lab.com all rights reserved.
##

require 'abstract'

module Erubis


  ##
  ## code generator, called by Converter module
  ##
  module Generator

    def self.supported_properties()  # :nodoc:
      return [
              [:escapefunc,    nil,    "escape function name"],
            ]
    end

    attr_accessor :escapefunc

    def init_generator(properties={})
      @escapefunc = properties[:escapefunc]
    end


    ## (abstract) escape text string
    ##
    ## ex.
    ##   def escape_text(text)
    ##     return text.dump
    ##     # or return "'" + text.gsub(/['\\]/, '\\\\\&') + "'"
    ##   end
    def escape_text(text)
      not_implemented
    end

    ## return escaped expression code (ex. 'h(...)' or 'htmlspecialchars(...)')
    def escaped_expr(code)
      code.strip!
      return "#{@escapefunc}(#{code})"
    end

    ## (abstract) add @preamble to src
    def add_preamble(src)
      not_implemented
    end

    ## (abstract) add text string to src
    def add_text(src, text)
      not_implemented
    end

    ## (abstract) add statement code to src
    def add_stmt(src, code)
      not_implemented
    end

    ## (abstract) add expression literal code to src. this is called by add_expr().
    def add_expr_literal(src, code)
      not_implemented
    end

    ## (abstract) add escaped expression code to src. this is called by add_expr().
    def add_expr_escaped(src, code)
      not_implemented
    end

    ## (abstract) add expression code to src for debug. this is called by add_expr().
    def add_expr_debug(src, code)
      not_implemented
    end

    ## (abstract) add @postamble to src
    def add_postamble(src)
      not_implemented
    end


  end


end

Version data entries

13 entries across 13 versions & 4 rubygems

Version Path
merb-core-1.1.3 spec10/public/webrat/test_app/gems/gems/erubis-2.6.2/lib/erubis/generator.rb
merb-core-1.1.2 spec10/public/webrat/test_app/gems/gems/erubis-2.6.2/lib/erubis/generator.rb
merb-core-1.1.1 spec10/public/webrat/test_app/gems/gems/erubis-2.6.2/lib/erubis/generator.rb
merb-core-1.1.0 spec10/public/webrat/test_app/gems/gems/erubis-2.6.2/lib/erubis/generator.rb
merb-core-1.1.0.rc1 spec10/public/webrat/test_app/gems/gems/erubis-2.6.2/lib/erubis/generator.rb
simple-templater-0.0.1.3 vendor/erubis/lib/erubis/generator.rb
simple-templater-0.0.1.2 vendor/erubis/lib/erubis/generator.rb
simple-templater-0.0.1.1 vendor/erubis/lib/erubis/generator.rb
rango-0.0.6 vendor/erubis/lib/erubis/generator.rb
rango-0.1.pre vendor/erubis/lib/erubis/generator.rb
simple-templater-0.0.1 vendor/erubis/lib/erubis/generator.rb
merb-core-1.1.0.pre spec10/public/webrat/test_app/gems/gems/erubis-2.6.2/lib/erubis/generator.rb
erubis-2.6.2 lib/erubis/generator.rb