Included Modules

Class Index [+]

Quicksearch

Erubis::SchemeGenerator

Public Instance Methods

add_expr_debug(src, code) click to toggle source
    # File lib/erubis/engine/escheme.rb, line 71
71:     def add_expr_debug(src, code)
72:       s = (code.strip! || code).gsub(/\"/, '\"')
73:       src << "(display \"*** debug: #{s}=\")(display #{code.strip})(display \"\\n\")"
74:     end
add_expr_escaped(src, code) click to toggle source
    # File lib/erubis/engine/escheme.rb, line 67
67:     def add_expr_escaped(src, code)
68:       add_expr_literal(src, escaped_expr(code))
69:     end
add_expr_literal(src, code) click to toggle source
    # File lib/erubis/engine/escheme.rb, line 62
62:     def add_expr_literal(src, code)
63:       code.strip!
64:       src << "(#{@func} #{code})"
65:     end
add_postamble(src) click to toggle source
    # File lib/erubis/engine/escheme.rb, line 76
76:     def add_postamble(src)
77:       return unless @func == '_add'
78:       src << "\n" unless src[1] == \n\
79:       src << "  (reverse _buf))\n"
80:     end
add_preamble(src) click to toggle source
    # File lib/erubis/engine/escheme.rb, line 28
28:     def add_preamble(src)
29:       return unless @func == '_add'
30:       src << "(let ((_buf '())) " +                 "(define (_add x) (set! _buf (cons x _buf))) "
31:       #src << "(let* ((_buf '())" + \
32:       #             " (_add (lambda (x) (set! _buf (cons x _buf))))) "
33:     end
add_stmt(src, code) click to toggle source
    # File lib/erubis/engine/escheme.rb, line 58
58:     def add_stmt(src, code)
59:       src << code
60:     end
add_text(src, text) click to toggle source
    # File lib/erubis/engine/escheme.rb, line 47
47:     def add_text(src, text)
48:       return if text.empty?
49:       t = escape_text(text)
50:       if t[1] == \n\
51:         t[1, 1] = ''
52:         src << "(#{@func} \"" << t << "\\n\")\n"
53:       else
54:         src << "(#{@func} \"" << t << '")'
55:       end
56:     end
escape_text(text) click to toggle source
    # File lib/erubis/engine/escheme.rb, line 36
36:     def escape_text(text)
37:       @table_ ||= { '"'=>'\"', '\'=>'\\' }
38:       text.gsub!(/["\\]/) { |m| @table_[m] }
39:       return text
40:     end
escaped_expr(code) click to toggle source
    # File lib/erubis/engine/escheme.rb, line 42
42:     def escaped_expr(code)
43:       code.strip!
44:       return "(#{@escapefunc} #{code})"
45:     end
init_generator(properties={}) click to toggle source
    # File lib/erubis/engine/escheme.rb, line 22
22:     def init_generator(properties={})
23:       super
24:       @escapefunc ||= 'escape'
25:       @func = properties[:func] || '_add'   # or 'display'
26:     end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.