U:RDoc::NormalClass[iI"TracePoint:ET@I" Object;To:RDoc::Markup::Document: @parts[o;;[o:RDoc::Markup::Paragraph;[I"KA class that provides the functionality of Kernel#set_trace_func in a ;TI"nice Object-Oriented API.;To:RDoc::Markup::BlankLineS:RDoc::Markup::Heading: leveli: textI" Example;T@o; ;[I"MWe can use TracePoint to gather information specifically for exceptions:;T@o:RDoc::Markup::Verbatim;[I",trace = TracePoint.new(:raise) do |tp| ;TI"6 p [tp.lineno, tp.event, tp.raised_exception] ;TI" end ;TI" #=> # ;TI" ;TI"trace.enable ;TI"#=> false ;TI" ;TI" 0 / 0 ;TI"9#=> [5, :raise, #] ;T: @format0S; ; i; I" Events;T@o; ;[I"EIf you don't specify the type of events you want to listen for, ;TI"2TracePoint will include all available events.;T@o; ;[I"K*Note* do not depend on current event set, as this list is subject to ;TI"Kchange. Instead, it is recommended you specify the type of events you ;TI"want to use.;T@o; ;[I"MTo filter what is traced, you can pass any of the following as +events+:;T@o:RDoc::Markup::List: @type: NOTE: @items[o:RDoc::Markup::ListItem: @label[I" +:line+;T;[o; ;[I"execute code on a new line;To;;[I" +:class+;T;[o; ;[I"'start a class or module definition;To;;[I" +:end+;T;[o; ;[I"(finish a class or module definition;To;;[I" +:call+;T;[o; ;[I"call a Ruby method;To;;[I"+:return+;T;[o; ;[I"return from a Ruby method;To;;[I"+:c_call+;T;[o; ;[I"call a C-language routine;To;;[I"+:c_return+;T;[o; ;[I"%return from a C-language routine;To;;[I" +:raise+;T;[o; ;[I"raise an exception;To;;[I"+:b_call+;T;[o; ;[I"event hook at block entry;To;;[I"+:b_return+;T;[o; ;[I"event hook at block ending;To;;[I"+:thread_begin+;T;[o; ;[I"#event hook at thread beginning;To;;[I"+:thread_end+;T;[o; ;[I" event hook at thread ending;To;;[I"+:fiber_switch+;T;[o; ;[I"event hook at fiber switch;T: @fileI"vm_trace.c;T:0@omit_headings_from_table_of_contents_below0;0;0[[[[[I" class;T[[: public[[I"new;TI"vm_trace.c;T[I" stat;T@•[I" trace;T@•[:protected[[: private[[I" instance;T[[;[[I" binding;T@•[I"callee_id;T@•[I"defined_class;T@•[I" disable;T@•[I" enable;T@•[I" enabled?;T@•[I" event;T@•[I" inspect;T@•[I" lineno;T@•[I"method_id;T@•[I" path;T@•[I"raised_exception;T@•[I"return_value;T@•[I" self;T@•[;[[;[[[U:RDoc::Context::Section[i0o;;[;0;0[@‰@‰cRDoc::TopLevel