Module: Nuggets::Proc::BindMixin
- Included in:
- Proc
- Defined in:
- lib/nuggets/proc/bind_mixin.rb
Instance Method Summary collapse
-
#bind(object) ⇒ Object
call-seq: proc.bind(object) => aMethod.
Instance Method Details
#bind(object) ⇒ Object
call-seq:
proc.bind(object) => aMethod
Straight from Rails’ ActiveSupport – effectively binds proc to object
.
35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/nuggets/proc/bind_mixin.rb', line 35 def bind(object) block, time = self, ::Time.now (class << object; self; end).class_eval { method_name = "__bind_#{time.to_i}_#{time.usec}" define_method(method_name, &block) method = instance_method(method_name) remove_method(method_name) method }.bind(object) end |