# File lib/archivist/archive.rb, line 39 def build_proxy_method(method_name) class_eval def #{method_name}(*args,&block) instance = #{get_klass_name}.new(self.attributes.reject{|k,v| !#{get_klass.new.attribute_names.inspect}.include?(k.to_s)}) instance.#{method_name}(*args,&block) end end
# File lib/archivist/archive.rb, line 27 def get_klass @klass ||= Kernel.const_get(get_klass_name) end
# File lib/archivist/archive.rb, line 35 def get_klass_instance_methods @klass_instance_methods ||= get_klass.instance_methods(false) end
# File lib/archivist/archive.rb, line 31 def get_klass_name @klass_name ||= self.class.to_s.split("::").first end
# File lib/archivist/archive.rb, line 10 def method_missing(method,*args,&block) if get_klass_instance_methods.include?(method.to_s) build_proxy_method(method.to_s) self.method(method).call(*args,&block) else super(method,*args,&block) end end
Generated with the Darkfish Rdoc Generator 2.