instiki/vendor/rails/activesupport/lib/active_support/core_ext/proc.rb
2007-01-22 07:43:50 -06:00

13 lines
335 B
Ruby

class Proc #:nodoc:
def bind(object)
block, time = self, Time.now
(class << object; self end).class_eval do
method_name = "__bind_#{time.to_i}_#{time.usec}"
define_method(method_name, &block)
method = instance_method(method_name)
remove_method(method_name)
method
end.bind(object)
end
end