…e class, and :escape_html option, for conveniently specifying Erubis::EscapedEruby engine.
Removes the template_source and local_assignment_code methods and replaces them with #precompiled_template, #precompiled_preamble, and #precompiled_postamble methods. Template subclasses can hook in and provide template source generation at different levels. Line offset calculation is cleaned up a bit as well.
This should guarantee that method names never collide and also improves lookup performance, since the method name is generated once and then stored in a Hash. The downside is that generating the method name initially will be a bit slower since we bring in MD5 and sort the keys.
This branch adds support for fast, precompiled templates using a mixin module. Include the Tilt::CompileSite module in your scope objects to enable method based template compilation for source generating templates like ERB, Erubis, and Builder. Special thanks to Josh Peek, Magnus Holm, and Yehuda Katz for their input. See the following discussion for more info on this approach: http://tinyurl.com/yjj2z2x