class Tilt::Template

def compile_template_method(locals)

def compile_template_method(locals)
  source, offset = precompiled(locals)
  offset += 5
  method_name = "__tilt_#{Thread.current.object_id.abs}"
  Object.class_eval <<-RUBY, eval_file, line - offset
    #{extract_magic_comment source}
    TOPOBJECT.class_eval do
      def #{method_name}(locals)
        Thread.current[:tilt_vars] = [self, locals]
        class << self
          this, locals = Thread.current[:tilt_vars]
          this.instance_eval do
           #{source}
          end
        end
      end
    end
  RUBY
  unbind_compiled_method(method_name)
end