diff options
Diffstat (limited to 'trunk/debug.c')
-rw-r--r-- | trunk/debug.c | 159 |
1 files changed, 0 insertions, 159 deletions
diff --git a/trunk/debug.c b/trunk/debug.c deleted file mode 100644 index 265e864aec..0000000000 --- a/trunk/debug.c +++ /dev/null @@ -1,159 +0,0 @@ -/********************************************************************** - - debug.c - - - $Author$ - created at: 04/08/25 02:31:54 JST - - Copyright (C) 2004-2007 Koichi Sasada - -**********************************************************************/ - -#include "ruby/ruby.h" -#include "ruby/encoding.h" -#include "ruby/util.h" -#include "debug.h" -#include "eval_intern.h" -#include "vm_core.h" - -/* for gdb */ -static const union { - enum ruby_special_consts special_consts; - enum ruby_value_type value_type; - enum ruby_tag_type tag_type; - enum node_type node_type; - enum { - RUBY_ENCODING_INLINE_MAX = ENCODING_INLINE_MAX, - RUBY_ENCODING_SHIFT = ENCODING_SHIFT, - RUBY_ENCODING_MASK = ENCODING_MASK, - RUBY_ENC_CODERANGE_MASK = ENC_CODERANGE_MASK, - RUBY_ENC_CODERANGE_UNKNOWN = ENC_CODERANGE_UNKNOWN, - RUBY_ENC_CODERANGE_7BIT = ENC_CODERANGE_7BIT, - RUBY_ENC_CODERANGE_VALID = ENC_CODERANGE_VALID, - RUBY_ENC_CODERANGE_BROKEN = ENC_CODERANGE_BROKEN, - RUBY_FL_MARK = FL_MARK, - RUBY_FL_RESERVED = FL_RESERVED, - RUBY_FL_FINALIZE = FL_FINALIZE, - RUBY_FL_TAINT = FL_TAINT, - RUBY_FL_UNTRUSTED = FL_UNTRUSTED, - RUBY_FL_EXIVAR = FL_EXIVAR, - RUBY_FL_FREEZE = FL_FREEZE, - RUBY_FL_SINGLETON = FL_SINGLETON, - RUBY_FL_USER0 = FL_USER0, - RUBY_FL_USER1 = FL_USER1, - RUBY_FL_USER2 = FL_USER2, - RUBY_FL_USER3 = FL_USER3, - RUBY_FL_USER4 = FL_USER4, - RUBY_FL_USER5 = FL_USER5, - RUBY_FL_USER6 = FL_USER6, - RUBY_FL_USER7 = FL_USER7, - RUBY_FL_USER8 = FL_USER8, - RUBY_FL_USER9 = FL_USER9, - RUBY_FL_USER10 = FL_USER10, - RUBY_FL_USER11 = FL_USER11, - RUBY_FL_USER12 = FL_USER12, - RUBY_FL_USER13 = FL_USER13, - RUBY_FL_USER14 = FL_USER14, - RUBY_FL_USER15 = FL_USER15, - RUBY_FL_USER16 = FL_USER16, - RUBY_FL_USER17 = FL_USER17, - RUBY_FL_USER18 = FL_USER18, - RUBY_FL_USHIFT = FL_USHIFT, - RUBY_NODE_TYPESHIFT = NODE_TYPESHIFT, - RUBY_NODE_TYPEMASK = NODE_TYPEMASK, - RUBY_NODE_LSHIFT = NODE_LSHIFT, - RUBY_NODE_LMASK = NODE_LMASK, - RUBY_NODE_FL_NEWLINE = NODE_FL_NEWLINE - } various; -} dummy_gdb_enums; - -const VALUE RUBY_FL_USER19 = FL_USER19; - -int -ruby_debug_print_indent(int level, int debug_level, int indent_level) -{ - if (level < debug_level) { - fprintf(stderr, "%*s", indent_level, ""); - fflush(stderr); - return Qtrue; - } - return Qfalse; -} - -void -ruby_debug_printf(const char *format, ...) -{ - va_list ap; - va_start(ap, format); - vfprintf(stderr, format, ap); - va_end(ap); -} - -VALUE -ruby_debug_print_value(int level, int debug_level, const 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 -ruby_debug_print_v(VALUE v) -{ - ruby_debug_print_value(0, 1, "", v); -} - -ID -ruby_debug_print_id(int level, int debug_level, const char *header, ID id) -{ - if (level < debug_level) { - fprintf(stderr, "DBG> %s: %s\n", header, rb_id2name(id)); - fflush(stderr); - } - return id; -} - -NODE * -ruby_debug_print_node(int level, int debug_level, const char *header, const NODE *node) -{ - if (level < debug_level) { - fprintf(stderr, "DBG> %s: %s (%lu)\n", header, - ruby_node_name(nd_type(node)), nd_line(node)); - } - return (NODE *)node; -} - -void -ruby_debug_breakpoint(void) -{ - /* */ -} - -#ifdef RUBY_DEBUG_ENV -static void -set_debug_option(const char *str, int len, void *arg) -{ -#define SET_WHEN(name, var) do { \ - if (len == sizeof(name) - 1 && \ - strncmp(str, name, len) == 0) { \ - extern int var; \ - var = 1; \ - return; \ - } \ - } while (0) - SET_WHEN("gc_stress", *ruby_initial_gc_stress_ptr); - SET_WHEN("core", ruby_enable_coredump); - fprintf(stderr, "unexpected debug option: %.*s\n", len, str); -} - -void -ruby_set_debug_option(const char *str) -{ - ruby_each_words(str, set_debug_option, 0); -} -#endif |