blob: 0c2071baf047b15d0c0125405e9151136b55699a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
##
## $Release:$
## $Copyright$
##
##
## an implementation of eRuby
##
## ex.
## input = <<'END'
## <ul>
## <% for item in @list %>
## <li><%= item %>
## <%== item %></li>
## <% end %>
## </ul>
## END
## list = ['<aaa>', 'b&b', '"ccc"']
## eruby = Erubis::Eruby.new(input)
## puts "--- code ---"
## puts eruby.src
## puts "--- result ---"
## context = Erubis::Context.new() # or new(:list=>list)
## context[:list] = list
## puts eruby.evaluate(context)
##
## result:
## --- source ---
## _buf = ''; _buf << '<ul>
## '; for item in @list
## _buf << ' <li>'; _buf << ( item ).to_s; _buf << '
## '; _buf << ' '; _buf << Erubis::XmlHelper.escape_xml( item ); _buf << '</li>
## '; end
## _buf << '</ul>
## ';
## _buf.to_s
## --- result ---
## <ul>
## <li><aaa>
## <aaa></li>
## <li>b&b
## b&b</li>
## <li>"ccc"
## "ccc"</li>
## </ul>
##
module Erubis
VERSION = ('$Release: 0.0.0 $' =~ /([.\d]+)/) && $1
end
require 'erubis/engine'
#require 'erubis/generator'
#require 'erubis/converter'
#require 'erubis/evaluator'
#require 'erubis/error'
#require 'erubis/context'
require 'erubis/helper'
require 'erubis/enhancer'
#require 'erubis/tiny'
require 'erubis/engine/eruby'
#require 'erubis/engine/enhanced' # enhanced eruby engines
#require 'erubis/engine/optimized' # generates optimized ruby code
#require 'erubis/engine/ephp'
#require 'erubis/engine/ec'
#require 'erubis/engine/ejava'
#require 'erubis/engine/escheme'
#require 'erubis/engine/eperl'
#require 'erubis/engine/ejavascript'
require 'erubis/local-setting'
|