class Tilt::Template

def compile_template_method(method_name, locals)

def compile_template_method(method_name, locals)
  source, offset = precompiled(locals)
  offset += 1
  CompileSite.module_eval <<-RUBY, eval_file, line - offset
    def #{method_name}(locals)
      #{source}
    end
  RUBY
  ObjectSpace.define_finalizer self,
    Template.compiled_template_method_remover(CompileSite, method_name)
end