def initialize(helper_module, constructor_method, output_buffer=nil)
@module = helper_module
@constructor = constructor_method
@instance_eval = method(:instance_eval)
@method = {}
meths = []
meths.concat public_methods
meths.concat protected_methods
meths.concat private_methods
meths.each do |m|
@method[m.to_sym] = method(m)
end
class << self
escape = ESCAPE
meths = []
meths.concat public_instance_methods
meths.concat protected_instance_methods
meths.concat private_instance_methods
meths.each do |m|
undef_method(m) unless m =~ /^__/ or escape.include?(m)
end
end
@stack = []
@out = output_buffer || ''
end