U:RDoc::AnyMethod[iI" bind:ETI"UnboundMethod#bind;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"JBind umeth to obj. If Klass
was the class ;TI"+from which umeth was obtained, ;TI"3obj.kind_of?(Klass)
must be true.;To:RDoc::Markup::BlankLine o:RDoc::Markup::Verbatim; [I"
class A
;TI" def test
;TI"/ puts "In test, class = #{self.class}"
;TI" end
;TI" end
;TI"class B < A
;TI" end
;TI"class C < B
;TI" end
;TI"
;TI"#um = B.instance_method(:test)
;TI"bm = um.bind(C.new)
;TI"
bm.call
;TI"bm = um.bind(B.new)
;TI"
bm.call
;TI"bm = um.bind(A.new)
;TI"
bm.call
;T:@format0o;
; [I"produces:;T@o;; [ I"In test, class = C
;TI"In test, class = B
;TI"Nprog.rb:16:in `bind': bind argument must be an instance of B (TypeError)
;TI" from prog.rb:16;T;
0:
@fileI"proc.c;T:0@omit_headings_from_table_of_contents_below0I"umeth.bind(obj) -> method
;T0[ I" (p1);T@-FI"UnboundMethod;TcRDoc::NormalClass00