00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef RUBY_DEBUG_H
00013 #define RUBY_DEBUG_H
00014
00015 #include "ruby/ruby.h"
00016 #include "node.h"
00017
00018 RUBY_SYMBOL_EXPORT_BEGIN
00019
00020 #define dpv(h,v) ruby_debug_print_value(-1, 0, (h), (v))
00021 #define dp(v) ruby_debug_print_value(-1, 0, "", (v))
00022 #define dpi(i) ruby_debug_print_id(-1, 0, "", (i))
00023 #define dpn(n) ruby_debug_print_node(-1, 0, "", (n))
00024
00025 #define bp() ruby_debug_breakpoint()
00026
00027 VALUE ruby_debug_print_value(int level, int debug_level, const char *header, VALUE v);
00028 ID ruby_debug_print_id(int level, int debug_level, const char *header, ID id);
00029 NODE *ruby_debug_print_node(int level, int debug_level, const char *header, const NODE *node);
00030 int ruby_debug_print_indent(int level, int debug_level, int indent_level);
00031 void ruby_debug_breakpoint(void);
00032 void ruby_debug_gc_check_func(void);
00033 void ruby_set_debug_option(const char *str);
00034
00035 RUBY_SYMBOL_EXPORT_END
00036
00037 #endif
00038