class ERB
def def_method(mod, methodname, fname='(ERB)')
erb.def_method(MyClass, 'render(arg1, arg2)', filename)
erb = ERB.new(File.read(filename))
filename = 'example.rhtml' # 'arg1' and 'arg2' are used in example.rhtml
example:
Define _methodname_ as instance method of _mod_ from compiled Ruby source.
def def_method(mod, methodname, fname='(ERB)') src = self.src.sub(/^(?!#|$)/) {"def #{methodname}\n"} << "\nend\n" mod.module_eval do eval(src, binding, fname, -1) end end