module Erubis
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>
$Release: 2.7.0 $ copyright© 2006-2011 kuwata-lab.com all rights reserved.
$Release: 2.7.0 $ copyright© 2006-2011 kuwata-lab.com all rights reserved.
$Release: 2.7.0 $ copyright© 2006-2011 kuwata-lab.com all rights reserved.
$Release: 2.7.0 $ copyright© 2006-2011 kuwata-lab.com all rights reserved.
$Release: 2.7.0 $ copyright© 2006-2011 kuwata-lab.com all rights reserved.
$Release: 2.7.0 $ copyright© 2006-2011 kuwata-lab.com all rights reserved.
Constants
- EMPTY_BINDING
- Ejs
engine for JavaScript
- EscapedEjs
- VERSION