diff options
author | zzak <zzak@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-02-09 04:14:09 +0000 |
---|---|---|
committer | zzak <zzak@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-02-09 04:14:09 +0000 |
commit | 810516ed20967a69b801b518ef2b2c0dc4184824 (patch) | |
tree | d804f6203f6cf69a741c4698fa94e3776b7305d5 /vm_trace.c | |
parent | d48f539cfbc174e92546eb790856e03ab2194f61 (diff) | |
download | ruby-810516ed20967a69b801b518ef2b2c0dc4184824.tar.gz |
* vm_trace.c: Note about TracePoint events set, and comment on
Kernel#set_trace_func to prefer new TracePoint API
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39168 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_trace.c')
-rw-r--r-- | vm_trace.c | 51 |
1 files changed, 32 insertions, 19 deletions
diff --git a/vm_trace.c b/vm_trace.c index 79d3731dc1..b212d41b21 100644 --- a/vm_trace.c +++ b/vm_trace.c @@ -391,6 +391,8 @@ static void call_trace_func(rb_event_flag_t, VALUE data, VALUE self, ID id, VALU * Establishes _proc_ as the handler for tracing, or disables * tracing if the parameter is +nil+. * + * *Note:* this method is obsolete, please use TracePoint instead. + * * _proc_ takes up to six parameters: * * * an event name @@ -474,7 +476,8 @@ thread_add_trace_func(rb_thread_t *th, VALUE trace) * thr.add_trace_func(proc) -> proc * * Adds _proc_ as a handler for tracing. - * See <code>Thread#set_trace_func</code> and +set_trace_func+. + * + * See Thread#set_trace_func and Kernel#set_trace_func. */ static VALUE @@ -495,7 +498,8 @@ thread_add_trace_func_m(VALUE obj, VALUE trace) * * Establishes _proc_ on _thr_ as the handler for tracing, or * disables tracing if the parameter is +nil+. - * See +set_trace_func+. + * + * See Kernel#set_trace_func. */ static VALUE @@ -812,7 +816,7 @@ rb_tracearg_raised_exception(rb_trace_arg_t *trace_arg) /* * Type of event * - * See TracePoint.new for events + * See TracePoint@Events for more information. */ static VALUE tracepoint_attr_event(VALUE tpval) @@ -1149,20 +1153,7 @@ rb_tracepoint_new(VALUE target_thval, rb_event_flag_t events, void (*func)(VALUE * * trace.disable * - * To filter what is traced, you can pass any of the following as +events+: - * - * +:line+:: execute code on a new line - * +:class+:: start a class or module definition - * +:end+:: finish a class or module definition - * +:call+:: call a Ruby method - * +:return+:: return from a Ruby method - * +:c_call+:: call a C-language routine - * +:c_return+:: return from a C-language routine - * +:raise+:: raise an exception - * +:b_call+:: event hook at block entry - * +:b_return+:: event hook at block ending - * +:thread_begin+:: event hook at thread beginning - * +:thread_end+:: event hook at thread ending + * See TracePoint@Events for possible events and more information. * * A block must be given, otherwise a ThreadError is raised. * @@ -1284,7 +1275,7 @@ Init_vm_trace(void) * A class that provides the functionality of Kernel#set_trace_func in a * nice Object-Oriented API. * - * = Example + * == Example * * We can use TracePoint to gather information specifically for exceptions: * @@ -1299,7 +1290,29 @@ Init_vm_trace(void) * 0 / 0 * #=> [5, :raise, #<ZeroDivisionError: divided by 0>] * - * See TracePoint.new for possible events. + * == Events + * + * If you don't specify the type of events you want to listen for, + * TracePoint will include all available events. + * + * *Note* do not depend on current event set, as this list is subject to + * change. Instead, it is recommended you specify the type of events you + * want to use. + * + * To filter what is traced, you can pass any of the following as +events+: + * + * +:line+:: execute code on a new line + * +:class+:: start a class or module definition + * +:end+:: finish a class or module definition + * +:call+:: call a Ruby method + * +:return+:: return from a Ruby method + * +:c_call+:: call a C-language routine + * +:c_return+:: return from a C-language routine + * +:raise+:: raise an exception + * +:b_call+:: event hook at block entry + * +:b_return+:: event hook at block ending + * +:thread_begin+:: event hook at thread beginning + * +:thread_end+:: event hook at thread ending * */ rb_cTracePoint = rb_define_class("TracePoint", rb_cObject); |