diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-12-31 15:02:22 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-12-31 15:02:22 +0000 |
commit | a3e1b1ce7ed7e7ffac23015fc2fde56511b30681 (patch) | |
tree | 7b725552a9a4ded93849ca2faab1b257f7761790 /debug.c | |
parent | 3e7566d8fb5138bb9cd647e5fdefc54fc9803509 (diff) | |
download | ruby-a3e1b1ce7ed7e7ffac23015fc2fde56511b30681.tar.gz |
* Merge YARV
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'debug.c')
-rw-r--r-- | debug.c | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/debug.c b/debug.c new file mode 100644 index 0000000000..c143046fe7 --- /dev/null +++ b/debug.c @@ -0,0 +1,71 @@ +/********************************************************************** + + debug.c - + + $Author$ + $Date$ + created at: 04/08/25 02:31:54 JST + + Copyright (C) 2004-2006 Koichi Sasada + +**********************************************************************/ + +#include "ruby.h" + +void +debug_indent(int level, int debug_level, int indent_level) +{ + if (level < debug_level) { + int i; + for (i = 0; i < indent_level; i++) { + fprintf(stderr, " "); + } + fflush(stderr); + } +} + +VALUE +debug_value(int level, int debug_level, char *header, VALUE obj) +{ + if (level < debug_level) { + VALUE str; + str = rb_inspect(obj); + fprintf(stderr, "DBG> %s: %s\n", header, + obj == -1 ? "" : StringValueCStr(str)); + fflush(stderr); + } + return obj; +} + +void +debug_v(VALUE v) +{ + debug_value(0, 1, "", v); +} + +ID +debug_id(int level, int debug_level, char *header, ID id) +{ + if (level < debug_level) { + fprintf(stderr, "DBG> %s: %s\n", header, rb_id2name(id)); + fflush(stderr); + } + return id; +} + +void +gc_check_func(void) +{ + int i; +#define GCMKMAX 0x10 + for (i = 0; i < GCMKMAX; i++) { + rb_ary_new2(1000); + } + rb_gc(); +} + +void +debug_breakpoint(void) +{ + /* */ +} |