Permalink
Browse files

* 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
  • Loading branch information...
1 parent d48f539 commit 810516ed20967a69b801b518ef2b2c0dc4184824 @zzak zzak committed Feb 9, 2013
Showing with 37 additions and 19 deletions.
  1. +5 −0 ChangeLog
  2. +32 −19 vm_trace.c
View
@@ -1,3 +1,8 @@
+Sat Feb 9 13:13:00 2013 Zachary Scott <zachary@zacharyscott.net>
+
+ * vm_trace.c: Note about TracePoint events set, and comment on
+ Kernel#set_trace_func to prefer new TracePoint API
+
Sat Feb 9 10:07:47 2013 Kazuki Tsujimoto <kazuki@callcc.net>
* BSDL: update copyright notice for 2013.
View
@@ -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);

0 comments on commit 810516e

Please sign in to comment.