1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/debug.h
nobu 2b592580bf * include/ruby: moved public headers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 03:06:15 +00:00

50 lines
1.3 KiB
C

/**********************************************************************
debug.h - YARV Debug function interface
$Author$
$Date$
created at: 04/08/25 02:33:49 JST
Copyright (C) 2004-2006 Koichi Sasada
**********************************************************************/
#ifndef _DEBUG_H_INCLUDED_
#define _DEBUG_H_INCLUDED_
#include "ruby/ruby.h"
#include "ruby/node.h"
#define dpv(h,v) ruby_debug_value(-1, 0, h, v)
#define dp(v) ruby_debug_value(-1, 0, "", v)
#define dpi(i) ruby_debug_id(-1, 0, "", i)
#define bp() ruby_debug_breakpoint()
#define dpn(n) ruby_debug_node(-1, 0, "", n)
VALUE ruby_debug_value(int level, int debug_level, char *header, VALUE v);
ID ruby_debug_id(int level, int debug_level, char *header, ID id);
NODE *ruby_debug_node(int level, int debug_level, char *header, NODE *node);
void ruby_debug_indent(int level, int debug_level, int indent_level);
void ruby_debug_breakpoint(void);
void ruby_debug_gc_check_func(void);
#if GCDEBUG == 1
#define GC_CHECK() \
gc_check_func()
#elif GCDEBUG == 2
#define GC_CHECK() \
(printf("** %s:%d gc start\n", __FILE__, __LINE__), \
ruby_debug_gc_check_func(), \
printf("** end\n"))
#else
#define GC_CHECK()
#endif
#endif /* _DEBUG_H_INCLUDED_ */