From 60be3dc560d1bd61344c328ee6a939ec9cffa537 Mon Sep 17 00:00:00 2001 From: ko1 Date: Sun, 27 Jul 2008 05:59:32 +0000 Subject: * include/ruby/ruby.h: add a type T_DEFERRED. * gc.c: fix deferred finalizer system. finalize processes of T_DATA and T_FILE are executed after gc process. And fix to use BUILTIN_TYPE() instead of seeing flag. * thread.c, vm_core.h: add RUBY_VM_SET_FINALIZER_INTERRUPT() and check intterupt_flag at rb_thread_execute_interrupts(). * thread.c (mutex_mark): fix to mark next_mutex. * vm.c (rb_thread_mark): fix to mark keeping_mutexes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- include/ruby/ruby.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include') diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h index eb3d282917..db3253da42 100644 --- a/include/ruby/ruby.h +++ b/include/ruby/ruby.h @@ -302,6 +302,7 @@ enum ruby_value_type { RUBY_T_UNDEF = 0x1b, RUBY_T_NODE = 0x1c, RUBY_T_ICLASS = 0x1d, + RUBY_T_DEFERRED = 0x1e, RUBY_T_MASK = 0x1f }; @@ -330,6 +331,7 @@ enum ruby_value_type { #define T_COMPLEX RUBY_T_COMPLEX #define T_UNDEF RUBY_T_UNDEF #define T_NODE RUBY_T_NODE +#define T_DEFERRED RUBY_T_DEFERRED #define T_MASK RUBY_T_MASK #define BUILTIN_TYPE(x) (((struct RBasic*)(x))->flags & T_MASK) -- cgit v1.2.1