class Thread
Public Class Methods
new(*args)
click to toggle source
static VALUE bdb_thread_init(int argc, VALUE *argv, VALUE obj) { VALUE env; if ((env = rb_thread_local_aref(rb_thread_current(), bdb_id_current_env)) != Qnil) { rb_thread_local_aset(obj, bdb_id_current_env, env); } if (rb_block_given_p()) { #if HAVE_RB_BLOCK_CALL return rb_block_call(obj, rb_intern("__bdb_thread_init__"), argc, argv, rb_yield, obj); #else VALUE tmp[3]; tmp[0] = obj; tmp[1] = (VALUE)argc; tmp[2] = (VALUE)argv; return rb_iterate((VALUE (*)(VALUE))bdb_env_iterate, (VALUE)tmp, rb_yield, obj); #endif } return rb_funcall2(obj, rb_intern("__bdb_thread_init__"), argc, argv); }