Ruby  2.1.3p242(2014-09-19revision47630)
debug.h
Go to the documentation of this file.
1 /**********************************************************************
2 
3  ruby/debug.h -
4 
5  $Author: ko1 $
6  created at: Tue Nov 20 20:35:08 2012
7 
8  Copyright (C) 2012 Yukihiro Matsumoto
9 
10 **********************************************************************/
11 
12 #ifndef RB_DEBUG_H
13 #define RB_DEBUG_H 1
14 
15 #if defined(__cplusplus)
16 extern "C" {
17 #if 0
18 } /* satisfy cc-mode */
19 #endif
20 #endif
21 
23 
24 /* Note: This file contains experimental APIs. */
25 /* APIs can be replaced at Ruby 2.0.1 or later */
26 
27 
28 /* profile frames APIs */
29 int rb_profile_frames(int start, int limit, VALUE *buff, int *lines);
40 
41 /* debug inspector APIs */
44 
51 
52 /* Old style set_trace_func APIs */
53 
54 /* duplicated def of include/ruby/ruby.h */
57 
62 
63 /* TracePoint APIs */
64 
65 VALUE rb_tracepoint_new(VALUE target_thread_not_supported_yet, rb_event_flag_t events, void (*func)(VALUE, void *), void *data);
69 
72 
84 
85 /* Postponed Job API */
86 typedef void (*rb_postponed_job_func_t)(void *arg);
87 int rb_postponed_job_register(unsigned int flags, rb_postponed_job_func_t func, void *data);
88 int rb_postponed_job_register_one(unsigned int flags, rb_postponed_job_func_t func, void *data);
89 
90 /* undocumented advanced tracing APIs */
91 
92 typedef enum {
97 
100 
102 
103 #if defined(__cplusplus)
104 #if 0
105 { /* satisfy cc-mode */
106 #endif
107 } /* extern "C" { */
108 #endif
109 
110 #endif /* RUBY_DEBUG_H */
111