Sha256: 3bbf45f7abced1991bdc0b00972eab00e956093ca8de0928d0229295dbe64a59

Contents?: true

Size: 412 Bytes

Versions: 8

Compression:

Stored size: 412 Bytes

Contents

module Packable
  module Extensions #:nodoc:
    module Proc
      # A bit of wizardry to return an +UnboundMethod+ which can be bound to any object
      def unbind
        Object.send(:define_method, :__temp_bound_method, &self)
        Object.instance_method(:__temp_bound_method)
      end

      # Shortcut for <tt>unbind.bind(to)</tt>
      def bind(to)
        unbind.bind(to)
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
packable-1.3.18 lib/packable/extensions/proc.rb
packable-1.3.17 lib/packable/extensions/proc.rb
packable-1.3.16 lib/packable/extensions/proc.rb
packable-1.3.15 lib/packable/extensions/proc.rb
packable-1.3.14 lib/packable/extensions/proc.rb
packable-1.3.13 lib/packable/extensions/proc.rb
packable-1.3.12 lib/packable/extensions/proc.rb
packable-1.3.10 lib/packable/extensions/proc.rb