io<path> |
An IO containing the full path of the template. |
name<String> |
The name of the method that will be created. |
A list of locals to assign from the args passed into the compiled template. | |
mod<Module> |
The module that the compiled method will be placed into. |
:api: private
# File lib/merb-core/controller/template.rb, line 201 def self.compile_template(io, name, locals, mod) template = ::Erubis::BlockAwareEruby.new(io.read) _old_verbose, $VERBOSE = $VERBOSE, nil assigns = locals.inject([]) do |assigns, local| assigns << "#{local} = _locals[#{local.inspect}]" end.join(";") code = "def #{name}(_locals={}); #{assigns}; #{template.src}; end" mod.module_eval code, File.expand_path(io.path) $VERBOSE = _old_verbose name end
Generated with the Darkfish Rdoc Generator 2.