U:RDoc::AnyMethod[iI"defined_class:ETI"TracePoint#defined_class;TF: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"7Return class or module of the method being called.;To:RDoc::Markup::BlankLineo:RDoc::Markup::Verbatim; [ I" class C; def foo; end; end ;TI"+trace = TracePoint.new(:call) do |tp| ;TI" p tp.defined_class #=> C ;TI"end.enable do ;TI" C.new.foo ;TI" end ;T: @format0o; ; [I"DIf method is defined by a module, then that module is returned.;T@o; ; [ I"!module M; def foo; end; end ;TI"class C; include M; end; ;TI"+trace = TracePoint.new(:call) do |tp| ;TI" p tp.defined_class #=> M ;TI"end.enable do ;TI" C.new.foo ;TI" end ;T; 0o; ; [I"9Note: #defined_class returns singleton class.;T@o; ; [I"H6th block parameter of Kernel#set_trace_func passes original class ;TI"$of attached by singleton class.;T@o; ; [I"NThis is a difference between Kernel#set_trace_func and TracePoint.;T@o; ; [ I"%class C; def self.foo; end; end ;TI"+trace = TracePoint.new(:call) do |tp| ;TI") p tp.defined_class #=> # ;TI"end.enable do ;TI" C.foo ;TI"end;T; 0: @fileI"vm_trace.c;T:0@omit_headings_from_table_of_contents_below000[I"();T@5FI"TracePoint;TcRDoc::NormalClass00