58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
# File 'lib/merb_markaby/template.rb', line 58
def def_method(object, name, filename=nil)
m = object.is_a?(Module) ? :module_eval : :instance_eval
setup = "@_engine = 'mab'"
method_body = <<-END_OF_METHOD
def #{name}(assigns={})
#{setup}
if $DEBUG
require 'ruby-debug'
debugger
end
assigns.merge!(@_merb_partial_locals) if @_merb_partial_locals
mab = Markaby::Builder.new(assigns, self) {#{@template}}.to_s
end
END_OF_METHOD
object.__send__(m, method_body, filename || @filename || 'merb_markaby/lib/merb_markaby/template.rb')
end
|