This is a Ruby tree! It shows every object from the Ruby Programming Language in a tree format.

bind

        # UnboundMethod.bind

(from ruby core)
---
    umeth.bind(obj) -> method

---

Bind *umeth* to *obj*. If Klass was the class from which *umeth* was
obtained, `obj.kind_of?(Klass)` must be true.

    class A
      def test
        puts "In test, class = #{self.class}"
      end
    end
    class B < A
    end
    class C < B
    end

    um = B.instance_method(:test)
    bm = um.bind(C.new)
    bm.call
    bm = um.bind(B.new)
    bm.call
    bm = um.bind(A.new)
    bm.call

*produces:*

    In test, class = C
    In test, class = B
    prog.rb:16:in `bind': bind argument must be an instance of B (TypeError)
     from prog.rb:16



      

This is MURDOC! A Ruby documentation browser inspired by Smalltalk-80. It allows you to learn about Ruby by browsing through its class hierarchies, and see any of its methods.