Ruby 2.0.0p247(2013-06-27revision41674)

- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

Data Structures | Macros | Functions | Variables
tcltklib.c File Reference
`#include "ruby.h"`
`#include "ruby/encoding.h"`
`#include <stdio.h>`
`#include <varargs.h>`
`#include <string.h>`
`#include <tcl.h>`
`#include <tk.h>`
`#include "stubs.h"`
Include dependency graph for tcltklib.c:

Go to the source code of this file.

## Data Structures
struct | invoke_queue
struct | eval_queue
struct | call_queue
struct | cmd_body_arg
struct | tcltkip
struct | evloop_params
struct | thread_call_proc_arg
struct | th_update_param
struct | th_vwait_param
struct | invoke_info

## Macros
#define | TCLTKLIB_RELEASE_DATE "2010-08-25"
#define | RUBY_VERSION "(unknown version)"
#define | RUBY_RELEASE_DATE "unknown release-date"
#define | RbTk_OBJ_UNTRUST(x) do {OBJ_TAINT(x); OBJ_UNTRUST(x);} while (0)
#define | RbTk_ALLOC_N(type, n) (type *)ckalloc((int)(sizeof(type) * (n)))
#define | va_init_list(a, b) va_start(a)
#define | ruby_native_thread_p() is_ruby_native_thread()
#define | rb_errinfo() (ruby_errinfo+0) /* cannot be l-value */
#define | rb_safe_level() (ruby_safe_level+0)
#define | rb_sourcefile() (ruby_sourcefile+0)
#define | TCL_ALPHA_RELEASE 0 /* "alpha" */
#define | TCL_BETA_RELEASE 1 /* "beta" */
#define | TCL_FINAL_RELEASE 2 /* "final" */
#define | CONST
#define | CONST84
#define | CONST86 CONST84
#define | TAG_RETURN 0x1
#define | TAG_BREAK 0x2
#define | TAG_NEXT 0x3
#define | TAG_RETRY 0x4
#define | TAG_REDO 0x5
#define | TAG_RAISE 0x6
#define | TAG_THROW 0x7
#define | TAG_FATAL 0x8
#define | DUMP1(ARG1) if (ruby_debug) { fprintf(stderr, "tcltklib: %s\n", ARG1); fflush(stderr); }
#define | DUMP2(ARG1, ARG2)
#define | DUMP3(ARG1, ARG2, ARG3)
#define | rb_hash_lookup rb_hash_aref
#define | Tcl_Eval tcl_eval
#define | Tcl_GlobalEval tcl_global_eval
#define | Tcl_IncrRefCount(obj) (1)
#define | Tcl_DecrRefCount(obj) (1)
#define | Tcl_GetStringResult(interp) ((interp)->result)
#define | CONTROL_BY_STATUS_OF_RB_THREAD_WAITING_FOR_VALUE 1
#define | USE_TOGGLE_WINDOW_MODE_FOR_IDLE 0
#define | DO_THREAD_SCHEDULE_AT_CALLBACK_DONE 0
#define | DEFAULT_EVENT_LOOP_MAX 800/*counts*/
#define | DEFAULT_NO_EVENT_TICK 10/*counts*/
#define | DEFAULT_NO_EVENT_WAIT 20/*milliseconds ( 1 -- 999 ) */
#define | WATCHDOG_INTERVAL 10/*milliseconds ( 1 -- 999 ) */
#define | DEFAULT_TIMER_TICK 0/*milliseconds ( 0 -- 999 ) */
#define | NO_THREAD_INTERRUPT_TIME 100/*milliseconds ( 1 -- 999 ) */
#define | EVENT_HANDLER_TIMEOUT 100/*milliseconds*/
#define | TCL_NAMESPACE_DEBUG 0
#define | USE_RUBY_ALLOC 0
#define | USE_EVLOOP_THREAD_ALONE_CHECK_FLAG 0
#define | TRAP_CHECK()
#define | EVLOOP_WAKEUP_CHANCE 3
#define | SUPPORT_NESTED_CONST_AS_IP_RUBY_CMD_RECEIVER 1
#define | TKWAIT_MODE_VISIBILITY 1
#define | TKWAIT_MODE_DESTROY 2
#define | TCL_CANCEL_UNWIND 0x100000
#define | TK_WINDOWING_SYSTEM "x11"
#define | DEFAULT_EVENTLOOP_DEPTH 7

## Functions
int | rb_thread_check_trap_pending ()
static void | set_tcltk_version ()
static void ip_finalize | _ ((Tcl_Interp *))
static VALUE create_dummy_encoding_for_tk_core | _ ((VALUE, VALUE, VALUE))
static VALUE create_dummy_encoding_for_tk | _ ((VALUE, VALUE))
static VALUE create_encoding_table | _ ((VALUE))
static VALUE ip_invoke_real | _ ((int, VALUE *, VALUE))
static VALUE ip_invoke_with_position | _ ((int, VALUE *, VALUE, Tcl_QueuePosition))
static VALUE tk_funcall | _ ((VALUE(), int, VALUE *, VALUE))
static int | tcl_eval (Tcl_Interp *interp, const char *cmd)
static int | tcl_global_eval (Tcl_Interp *interp, const char *cmd)
int | matherr ()
void | invoke_queue_mark (struct invoke_queue *q)
void | eval_queue_mark (struct eval_queue *q)
void | call_queue_mark (struct call_queue *q)
static int ip_ruby_eval | _ ((ClientData, Tcl_Interp *, int, char **))
static struct tcltkip * | get_ip (VALUE self)
static int | deleted_ip (struct tcltkip *ptr)
static int | rbtk_preserve_ip (struct tcltkip *ptr)
static int | rbtk_release_ip (struct tcltkip *ptr)
static VALUE | create_ip_exc (interp, VALUE interp:VALUE exc, const char *fmt, va_alist)
static void | tcl_stubs_check ()
static VALUE | tcltkip_init_tk (VALUE interp)
static int | pending_exception_check0 ()
static int | pending_exception_check1 (int thr_crit_bup, struct tcltkip *ptr)
static void | call_original_exit (struct tcltkip *ptr, int state)
static void _timer_for_tcl | _ ((ClientData))
static void | _timer_for_tcl (ClientData clientData)
static VALUE | set_eventloop_window_mode (VALUE self, VALUE mode)
static VALUE | get_eventloop_window_mode (VALUE self)
static VALUE | set_eventloop_tick (VALUE self, VALUE tick)
static VALUE | get_eventloop_tick (VALUE self)
static VALUE | ip_set_eventloop_tick (VALUE self, VALUE tick)
static VALUE | ip_get_eventloop_tick (VALUE self)
static VALUE | set_no_event_wait (VALUE self, VALUE wait)
static VALUE | get_no_event_wait (VALUE self)
static VALUE | ip_set_no_event_wait (VALUE self, VALUE wait)
static VALUE | ip_get_no_event_wait (VALUE self)
static VALUE | set_eventloop_weight (VALUE self, VALUE loop_max, VALUE no_event)
static VALUE | get_eventloop_weight (VALUE self)
static VALUE | ip_set_eventloop_weight (VALUE self, VALUE loop_max, VALUE no_event)
static VALUE | ip_get_eventloop_weight (VALUE self)
static VALUE | set_max_block_time (VALUE self, VALUE time)
static VALUE | lib_evloop_thread_p (VALUE self)
static VALUE | lib_evloop_abort_on_exc (VALUE self)
static VALUE | ip_evloop_abort_on_exc (VALUE self)
static VALUE | lib_evloop_abort_on_exc_set (VALUE self, VALUE val)
static VALUE | ip_evloop_abort_on_exc_set (VALUE self, VALUE val)
static VALUE | lib_num_of_mainwindows_core (VALUE self, int argc, VALUE *argv)
static VALUE | lib_num_of_mainwindows (VALUE self)
void | rbtk_EventSetupProc (ClientData clientData, int flag)
void | rbtk_EventCheckProc (ClientData clientData, int flag)
static VALUE | call_DoOneEvent (VALUE flag_val)
static int | trap_check (int *check_var)
static int | check_eventloop_interp ()
static int | lib_eventloop_core (int check_root, int update_flag, int *check_var, Tcl_Interp *interp)
VALUE | lib_eventloop_main_core (VALUE args)
VALUE | lib_eventloop_main (VALUE args)
VALUE | lib_eventloop_ensure (VALUE args)
static VALUE | lib_eventloop_launcher (int check_root, int update_flag, int *check_var, Tcl_Interp *interp)
static VALUE | lib_mainloop (int argc, VALUE *argv, VALUE self)
static VALUE | ip_mainloop (int argc, VALUE *argv, VALUE self)
static VALUE | watchdog_evloop_launcher (VALUE check_rootwidget)
static VALUE | lib_watchdog_core (VALUE check_rootwidget)
VALUE | lib_watchdog_ensure (VALUE arg)
static VALUE | lib_mainloop_watchdog (int argc, VALUE *argv, VALUE self)
static VALUE | ip_mainloop_watchdog (int argc, VALUE *argv, VALUE self)
void | _thread_call_proc_arg_mark (struct thread_call_proc_arg *q)
static VALUE | _thread_call_proc_core (VALUE arg)
static VALUE | _thread_call_proc_ensure (VALUE arg)
static VALUE | _thread_call_proc (VALUE arg)
static VALUE | _thread_call_proc_value (VALUE th)
static VALUE | lib_thread_callback (int argc, VALUE *argv, VALUE self)
static VALUE | lib_do_one_event_core (int argc, VALUE *argv, VALUE self, int is_ip)
static VALUE | lib_do_one_event (int argc, VALUE *argv, VALUE self)
static VALUE | ip_do_one_event (int argc, VALUE *argv, VALUE self)
static void | ip_set_exc_message (Tcl_Interp *interp, VALUE exc)
static VALUE | TkStringValue (VALUE obj)
static int | tcl_protect_core (Tcl_Interp *interp, VALUE(*proc)(), VALUE data)
static int | tcl_protect (Tcl_Interp *interp, VALUE(*proc)(), VALUE data)
static int | ip_ruby_eval (ClientData clientData, Tcl_Interp *interp, int argc, argv)
static VALUE | ip_ruby_cmd_core (struct cmd_body_arg *arg)
static VALUE | ip_ruby_cmd_receiver_const_get (char *name)
static VALUE | ip_ruby_cmd_receiver_get (char *str)
static int | ip_ruby_cmd (ClientData clientData, Tcl_Interp *interp, int argc, argv)
static int | ip_InterpExitCommand (ClientData clientData, Tcl_Interp *interp, int argc, argv)
static int | ip_RubyExitCommand (ClientData clientData, Tcl_Interp *interp, int argc, argv)
static int ip_rbUpdateCommand | _ ((ClientData, Tcl_Interp *, int, char *[]))
static int | ip_rbUpdateCommand (ClientData clientData, Tcl_Interp *interp, int objc, objv)
static void | rb_threadUpdateProc (ClientData clientData)
static int | ip_rb_threadUpdateCommand (ClientData clientData, Tcl_Interp *interp, int objc, objv)
static char *VwaitVarProc | _ ((ClientData, Tcl_Interp *, char *, char *, int))
static char * | VwaitVarProc (ClientData clientData, Tcl_Interp *interp, char *name1, char *name2, int flags)
static int | ip_rbVwaitCommand (ClientData clientData, Tcl_Interp *interp, int objc, objv)
static char * | WaitVariableProc (ClientData clientData, Tcl_Interp *interp, char *name1, char *name2, int flags)
static void WaitVisibilityProc | _ ((ClientData, XEvent *))
static void | WaitVisibilityProc (ClientData clientData, XEvent *eventPtr)
static void | WaitWindowProc (ClientData clientData, XEvent *eventPtr)
static int | ip_rbTkWaitCommand (ClientData clientData, Tcl_Interp *interp, int objc, objv)
static char * | rb_threadVwaitProc (ClientData clientData, Tcl_Interp *interp, char *name1, char *name2, int flags)
static void | rb_threadWaitVisibilityProc (ClientData clientData, XEvent *eventPtr)
static void | rb_threadWaitWindowProc (ClientData clientData, XEvent *eventPtr)
static int | ip_rb_threadVwaitCommand (ClientData clientData, Tcl_Interp *interp, int objc, objv)
static int | ip_rb_threadTkWaitCommand (ClientData clientData, Tcl_Interp *interp, int objc, objv)
static VALUE | ip_thread_vwait (VALUE self, VALUE var)
static VALUE | ip_thread_tkwait (VALUE self, VALUE mode, VALUE target)
static void | delete_slaves (Tcl_Interp *ip)
static void | lib_mark_at_exit (VALUE self)
static int | ip_null_proc (ClientData clientData, Tcl_Interp *interp, int argc, argv)
static void | ip_finalize (Tcl_Interp *ip)
static void | ip_free (struct tcltkip *ptr)
static VALUE | ip_alloc (VALUE self)
static void | ip_replace_wait_commands (Tcl_Interp *interp, Tk_Window mainWin)
static int | ip_rb_replaceSlaveTkCmdsCommand (ClientData clientData, Tcl_Interp *interp, int objc, objv)
static void | ip_wrap_namespace_command (Tcl_Interp *interp)
static void | ip_CallWhenDeleted (ClientData clientData, Tcl_Interp *ip)
static VALUE | ip_init (int argc, VALUE *argv, VALUE self)
static VALUE | ip_create_slave_core (VALUE interp, int argc, VALUE *argv)
static VALUE | ip_create_slave (int argc, VALUE *argv, VALUE self)
static VALUE | ip_is_slave_of_p (VALUE self, VALUE master)
static VALUE | ip_create_console_core (VALUE interp, int argc, VALUE *argv)
static VALUE | ip_create_console (VALUE self)
static VALUE | ip_make_safe_core (VALUE interp, int argc, VALUE *argv)
static VALUE | ip_make_safe (VALUE self)
static VALUE | ip_is_safe_p (VALUE self)
static VALUE | ip_allow_ruby_exit_p (VALUE self)
static VALUE | ip_allow_ruby_exit_set (VALUE self, VALUE val)
static VALUE | ip_delete (VALUE self)
static VALUE | ip_has_invalid_namespace_p (VALUE self)
static VALUE | ip_is_deleted_p (VALUE self)
static VALUE | ip_has_mainwindow_p_core (VALUE self, int argc, VALUE *argv)
static VALUE | ip_has_mainwindow_p (VALUE self)
static VALUE | ip_get_result_string_obj (Tcl_Interp *interp)
static VALUE | callq_safelevel_handler (VALUE arg, VALUE callq)
static int call_queue_handler | _ ((Tcl_Event *, int))
static int | call_queue_handler (Tcl_Event *evPtr, int flags)
static VALUE | tk_funcall (VALUE(*func)(), int argc, VALUE *argv, VALUE obj)
static VALUE | ip_eval_real (VALUE self, char *cmd_str, int cmd_len)
static VALUE | evq_safelevel_handler (VALUE arg, VALUE evq)
int | eval_queue_handler (Tcl_Event *evPtr, int flags)
static VALUE | ip_eval (VALUE self, VALUE str)
static int | ip_cancel_eval_core (Tcl_Interp *interp, VALUE msg, int flag)
static VALUE | ip_cancel_eval (int argc, VALUE *argv, VALUE self)
static VALUE | ip_cancel_eval_unwind (int argc, VALUE *argv, VALUE self)
static VALUE | lib_restart_core (VALUE interp, int argc, VALUE *argv)
static VALUE | lib_restart (VALUE self)
static VALUE | ip_restart (VALUE self)
static VALUE | lib_toUTF8_core (VALUE ip_obj, VALUE src, VALUE encodename)
static VALUE | lib_toUTF8 (int argc, VALUE *argv, VALUE self)
static VALUE | ip_toUTF8 (int argc, VALUE *argv, VALUE self)
static VALUE | lib_fromUTF8_core (VALUE ip_obj, VALUE src, VALUE encodename)
static VALUE | lib_fromUTF8 (int argc, VALUE *argv, VALUE self)
static VALUE | ip_fromUTF8 (int argc, VALUE *argv, VALUE self)
static VALUE | lib_UTF_backslash_core (VALUE self, VALUE str, int all_bs)
static VALUE | lib_UTF_backslash (VALUE self, VALUE str)
static VALUE | lib_Tcl_backslash (VALUE self, VALUE str)
static VALUE | lib_get_system_encoding (VALUE self)
static VALUE | lib_set_system_encoding (VALUE self, VALUE enc_name)
static VALUE | invoke_tcl_proc (VALUE arg)
static VALUE | ip_invoke_core (VALUE interp, int argc, char **argv)
static char ** | alloc_invoke_arguments (int argc, VALUE *argv)
static void | free_invoke_arguments (int argc, char **av)
static VALUE | ip_invoke_real (int argc, VALUE *argv, VALUE interp)
VALUE | ivq_safelevel_handler (VALUE arg, VALUE ivq)
int | invoke_queue_handler (Tcl_Event *evPtr, int flags)
static VALUE | ip_invoke_with_position (int argc, VALUE *argv, VALUE obj, Tcl_QueuePosition position)
static VALUE | ip_retval (VALUE self)
static VALUE | ip_invoke (int argc, VALUE *argv, VALUE obj)
static VALUE | ip_invoke_immediate (int argc, VALUE *argv, VALUE obj)
static VALUE | ip_get_variable2_core (VALUE interp, int argc, VALUE *argv)
static VALUE | ip_get_variable2 (VALUE self, VALUE varname, VALUE index, VALUE flag)
static VALUE | ip_get_variable (VALUE self, VALUE varname, VALUE flag)
static VALUE | ip_set_variable2_core (VALUE interp, int argc, VALUE *argv)
static VALUE | ip_set_variable2 (VALUE self, VALUE varname, VALUE index, VALUE value, VALUE flag)
static VALUE | ip_set_variable (VALUE self, VALUE varname, VALUE value, VALUE flag)
static VALUE | ip_unset_variable2_core (VALUE interp, int argc, VALUE *argv)
static VALUE | ip_unset_variable2 (VALUE self, VALUE varname, VALUE index, VALUE flag)
static VALUE | ip_unset_variable (VALUE self, VALUE varname, VALUE flag)
static VALUE | ip_get_global_var (VALUE self, VALUE varname)
static VALUE | ip_get_global_var2 (VALUE self, VALUE varname, VALUE index)
static VALUE | ip_set_global_var (VALUE self, VALUE varname, VALUE value)
static VALUE | ip_set_global_var2 (VALUE self, VALUE varname, VALUE index, VALUE value)
static VALUE | ip_unset_global_var (VALUE self, VALUE varname)
static VALUE | ip_unset_global_var2 (VALUE self, VALUE varname, VALUE index)
static VALUE | lib_split_tklist_core (VALUE ip_obj, VALUE list_str)
static VALUE | lib_split_tklist (VALUE self, VALUE list_str)
static VALUE | ip_split_tklist (VALUE self, VALUE list_str)
static VALUE | lib_merge_tklist (int argc, VALUE *argv, VALUE obj)
static VALUE | lib_conv_listelement (VALUE self, VALUE src)
static VALUE | lib_getversion (VALUE self)
static VALUE | lib_get_reltype_name (VALUE self)
static VALUE | tcltklib_compile_info ()
static VALUE | create_dummy_encoding_for_tk_core (VALUE interp, VALUE name, VALUE error_mode)
static VALUE | create_dummy_encoding_for_tk (VALUE interp, VALUE name)
static int | update_encoding_table (VALUE table, VALUE interp, VALUE error_mode)
static VALUE | encoding_table_get_name_core (VALUE table, VALUE enc_arg, VALUE error_mode)
static VALUE | encoding_table_get_obj_core (VALUE table, VALUE enc, VALUE error_mode)
static VALUE | encoding_table_get_name (VALUE table, VALUE enc)
static VALUE | encoding_table_get_obj (VALUE table, VALUE enc)
static VALUE | create_encoding_table_core (VALUE arg, VALUE interp)
static VALUE | create_encoding_table (VALUE interp)
static VALUE | ip_get_encoding_table (VALUE interp)
static VALUE | ip_make_menu_embeddable_core (VALUE interp, int argc, VALUE *argv)
static VALUE | ip_make_menu_embeddable (VALUE interp, VALUE menu_path)
void | Init_tcltklib ()

## Variables
static int | rb_thread_critical
struct {
int major
int minor
int type
int patchlevel
} | tcltk_version = {0, 0, 0, 0}
static const char | tcltklib_release_date [] = TCLTKLIB_RELEASE_DATE
static const char | finalize_hook_name [] = "INTERP_FINALIZE_HOOK"
static int | at_exit = 0
static VALUE | cRubyEncoding
static int | ENCODING_INDEX_UTF8
static int | ENCODING_INDEX_BINARY
static VALUE | ENCODING_NAME_UTF8
static VALUE | ENCODING_NAME_BINARY
static VALUE | eTkCallbackReturn
static VALUE | eTkCallbackBreak
static VALUE | eTkCallbackContinue
static VALUE | eLocalJumpError
static VALUE | eTkLocalJumpError
static VALUE | eTkCallbackRetry
static VALUE | eTkCallbackRedo
static VALUE | eTkCallbackThrow
static VALUE | tcltkip_class
static ID | ID_at_enc
static ID | ID_at_interp
static ID | ID_encoding_name
static ID | ID_encoding_table
static ID | ID_stop_p
static ID | ID_alive_p
static ID | ID_kill
static ID | ID_join
static ID | ID_value
static ID | ID_call
static ID | ID_backtrace
static ID | ID_message
static ID | ID_at_reason
static ID | ID_return
static ID | ID_break
static ID | ID_next
static ID | ID_to_s
static ID | ID_inspect
int * | tclDummyMathPtr = (int *) matherr
static VALUE | eventloop_thread
static Tcl_Interp * | eventloop_interp
static VALUE | eventloop_stack
static int | window_event_mode = ~0
static VALUE | watchdog_thread
Tcl_Interp * | current_interp
static int | have_rb_thread_waiting_for_value = 0
static int | event_loop_max = DEFAULT_EVENT_LOOP_MAX
static int | no_event_tick = DEFAULT_NO_EVENT_TICK
static int | no_event_wait = DEFAULT_NO_EVENT_WAIT
static int | timer_tick = DEFAULT_TIMER_TICK
static int | req_timer_tick = DEFAULT_TIMER_TICK
static int | run_timer_flag = 0
static int | event_loop_wait_event = 0
static int | event_loop_abort_on_exc = 1
static int | loop_counter = 0
static int | check_rootwidget_flag = 0
static VALUE | rbtk_pending_exception
static int | rbtk_eventloop_depth = 0
static int | rbtk_internal_eventloop_handler = 0
static Tcl_TimerToken | timer_token = (Tcl_TimerToken)NULL

## Macro Definition Documentation

#define CONST

Definition at line 142 of file tcltklib.c.

Referenced by ip_rb_threadUpdateCommand(), and ip_rbUpdateCommand().

#define CONST84

Definition at line 143 of file tcltklib.c.

Referenced by call_original_exit(), invoke_tcl_proc(), ip_invoke_core(), ip_rb_threadTkWaitCommand(), ip_rb_threadUpdateCommand(), ip_rbTkWaitCommand(), ip_rbUpdateCommand(), and ip_rbVwaitCommand().

#define CONST86 CONST84

Definition at line 151 of file tcltklib.c.

#define CONTROL_BY_STATUS_OF_RB_THREAD_WAITING_FOR_VALUE 1

Definition at line 493 of file tcltklib.c.

#define DEFAULT_EVENT_LOOP_MAX 800/*counts*/

Definition at line 517 of file tcltklib.c.

#define DEFAULT_EVENTLOOP_DEPTH 7

Referenced by Init_tcltklib().

#define DEFAULT_NO_EVENT_TICK 10/*counts*/

Definition at line 518 of file tcltklib.c.

#define DEFAULT_NO_EVENT_WAIT 20/*milliseconds ( 1 -- 999 ) */

Definition at line 519 of file tcltklib.c.

#define DEFAULT_TIMER_TICK 0/*milliseconds ( 0 -- 999 ) */

Definition at line 521 of file tcltklib.c.

#define DO_THREAD_SCHEDULE_AT_CALLBACK_DONE 0

Definition at line 495 of file tcltklib.c.

#define DUMP1 | ( |  | ARG1) |  | if (ruby_debug) { fprintf(stderr, "tcltklib: %s\n", ARG1); fflush(stderr); }

Definition at line 166 of file tcltklib.c.

Referenced by _timer_for_tcl(), call_original_exit(), call_queue_handler(), check_eventloop_interp(), delete_slaves(), deleted_ip(), eval_queue_handler(), invoke_queue_handler(), ip_allow_ruby_exit_set(), ip_CallWhenDeleted(), ip_create_slave_core(), ip_delete(), ip_eval(), ip_finalize(), ip_free(), ip_init(), ip_InterpExitCommand(), ip_invoke_core(), ip_invoke_with_position(), ip_make_safe_core(), ip_rb_replaceSlaveTkCmdsCommand(), ip_rb_threadTkWaitCommand(), ip_rb_threadUpdateCommand(), ip_rb_threadVwaitCommand(), ip_rbTkWaitCommand(), ip_rbUpdateCommand(), ip_rbVwaitCommand(), ip_replace_wait_commands(), ip_ruby_cmd_core(), ip_RubyExitCommand(), lib_eventloop_core(), lib_eventloop_launcher(), pending_exception_check0(), pending_exception_check1(), rb_threadUpdateProc(), tcl_protect_core(), tcltkip_init_tk(), tk_funcall(), and trap_check().

#define DUMP2 | ( |  | ARG1,
|  |  | ARG2
| ) |  |

Value:
if (ruby_debug) { fprintf(stderr, "tcltklib: ");\
fprintf(stderr, ARG1, ARG2); fprintf(stderr, "\n"); fflush(stderr); }

Definition at line 167 of file tcltklib.c.

Referenced by call_queue_handler(), callq_safelevel_handler(), check_eventloop_interp(), create_encoding_table_core(), delete_slaves(), eval_queue_handler(), evq_safelevel_handler(), invoke_queue_handler(), ip_eval(), ip_eval_real(), ip_finalize(), ip_free(), ip_init(), ip_invoke_core(), ip_invoke_real(), ip_invoke_with_position(), ip_rb_threadTkWaitCommand(), ip_rbUpdateCommand(), ip_ruby_cmd(), ip_ruby_cmd_core(), ip_ruby_eval(), ip_set_exc_message(), ivq_safelevel_handler(), lib_eventloop_core(), lib_eventloop_ensure(), lib_eventloop_launcher(), lib_restart_core(), lib_watchdog_core(), tcl_protect_core(), and tk_funcall().

#define DUMP3 | ( |  | ARG1,
|  |  | ARG2,
|  |  | ARG3
| ) |  |

Value:
if (ruby_debug) { fprintf(stderr, "tcltklib: ");\
fprintf(stderr, ARG1, ARG2, ARG3); fprintf(stderr, "\n"); fflush(stderr); }

Definition at line 169 of file tcltklib.c.

Referenced by lib_eventloop_launcher().

#define EVENT_HANDLER_TIMEOUT 100/*milliseconds*/

Definition at line 525 of file tcltklib.c.

Referenced by ip_eval(), ip_invoke_with_position(), ip_rb_threadTkWaitCommand(), ip_rb_threadUpdateCommand(), ip_rb_threadVwaitCommand(), and tk_funcall().

#define EVLOOP_WAKEUP_CHANCE 3

Definition at line 2788 of file tcltklib.c.

Referenced by lib_watchdog_core().

#define NO_THREAD_INTERRUPT_TIME 100/*milliseconds ( 1 -- 999 ) */

Definition at line 522 of file tcltklib.c.

Referenced by lib_eventloop_core(), and lib_watchdog_core().

#define rb_errinfo | ( |  | void) |  | (ruby_errinfo+0) /* cannot be l-value */

Definition at line 89 of file tcltklib.c.

Referenced by gzfile_read_raw_rescue(), init_libraries(), ip_eval_real(), ip_invoke_core(), lib_eventloop_core(), lib_eventloop_main(), lib_thread_callback(), reg_compile_gen(), rescue_callback(), and tcl_protect_core().

#define rb_hash_lookup rb_hash_aref

Definition at line 268 of file tcltklib.c.

Referenced by add_activated_refinement(), check_exec_fds(), check_exec_fds_1(), code_page(), encoding_table_get_name_core(), encoding_table_get_obj_core(), find_refinement(), ossl_asn1_default_tag(), prepare_iseq_build(), rb_mod_refine(), rb_using_refinement(), recursive_check(), tr_find(), tr_trans(), update_encoding_table(), and when_vals().

#define rb_safe_level | ( |  | void) |  | (ruby_safe_level+0)

Definition at line 94 of file tcltklib.c.

Referenced by argf_inplace_mode_set(), bsock_close_read(), bsock_close_write(), bsock_shutdown(), call_queue_handler(), check_autoload_required(), check_before_mod_set(), define_final0(), dir_check(), dir_rewind(), env_aset(), ev_advise(), eval_queue_handler(), eval_under(), fole_initialize(), fole_s_connect(), function_call(), invoke_queue_handler(), io_reopen(), ip_eval(), ip_init(), ip_invoke_with_position(), ip_RubyExitCommand(), lib_do_one_event_core(), load_transcoder_entry(), rb_alias_variable(), rb_ary_modify_check(), rb_autoload(), rb_autoload_load(), rb_check_copyable(), rb_check_safe_obj(), rb_const_remove(), rb_construct_expanded_load_path(), rb_error_untrusted(), rb_eval_cmd(), rb_exec_end_proc(), rb_f_eval(), rb_f_require(), rb_f_require_relative(), rb_find_file(), rb_find_file_ext(), rb_gc_set_params(), rb_get_path(), rb_gvar_set(), rb_hash_modify_check(), rb_io_close_m(), rb_io_close_read(), rb_io_close_write(), rb_io_taint_check(), rb_ivar_set(), rb_memerror(), rb_method_call_with_block(), rb_method_entry_make(), rb_mod_remove_cvar(), rb_obj_freeze(), rb_obj_remove_instance_variable(), rb_reg_initialize(), rb_reg_search(), rb_require(), rb_require_safe(), rb_secure(), rb_set_end_proc(), rb_thread_local_aref(), rb_thread_local_aset(), rb_thread_variable_get(), rb_thread_variable_set(), rb_undef(), remove_method(), require_enc(), run_finalizer(), safe_getter(), secure_visibility(), security(), set_const_visibility(), specific_eval(), str_modifiable(), tk_funcall(), trap(), vm_setivar(), and yycompile0().

#define rb_sourcefile | ( |  | void) |  | (ruby_sourcefile+0)

Definition at line 97 of file tcltklib.c.

Referenced by ary_new(), call_trace_func(), empty_ary_alloc(), empty_hash_alloc(), empty_str_alloc(), error_pos(), error_print(), eval_string_with_cref(), m_core_hash_from_ary(), newobj(), rb_autoload_load(), rb_bug(), rb_exec(), rb_f_load(), rb_obj_alloc(), rb_require_safe(), rb_str_resurrect(), setup_exception(), and str_new().

#define RbTk_ALLOC_N | ( |  | type,
|  |  | n
| ) |  | (type *)ckalloc((int)(sizeof(type) * (n)))

Definition at line 47 of file tcltklib.c.

Referenced by alloc_invoke_arguments(), call_original_exit(), invoke_tcl_proc(), ip_eval(), ip_invoke_core(), ip_invoke_with_position(), ip_rb_threadTkWaitCommand(), ip_rb_threadUpdateCommand(), ip_rb_threadVwaitCommand(), lib_merge_tklist(), and tk_funcall().

#define RbTk_OBJ_UNTRUST | ( |  | x) |  | do {OBJ_TAINT(x); OBJ_UNTRUST(x);} while (0)

Definition at line 43 of file tcltklib.c.

Referenced by Init_tcltklib(), ip_get_result_string_obj(), ip_get_variable2_core(), ip_set_variable2_core(), lib_conv_listelement(), lib_fromUTF8_core(), lib_merge_tklist(), lib_split_tklist_core(), lib_toUTF8_core(), and lib_UTF_backslash_core().

#define ruby_native_thread_p | ( |  | void) |  | is_ruby_native_thread()

Definition at line 82 of file tcltklib.c.

Referenced by eval_queue_handler(), garbage_collect_with_gvl(), Init_tcltklib(), ip_rb_threadUpdateCommand(), ip_rbUpdateCommand(), ip_rbVwaitCommand(), negative_size_allocation_error(), ruby_memerror(), and tcl_protect().

#define RUBY_RELEASE_DATE "unknown release-date"

Definition at line 19 of file tcltklib.c.

Referenced by tcltklib_compile_info().

#define RUBY_VERSION "(unknown version)"

Definition at line 16 of file tcltklib.c.

Referenced by Init_dl(), and tcltklib_compile_info().

#define SUPPORT_NESTED_CONST_AS_IP_RUBY_CMD_RECEIVER 1

Definition at line 3491 of file tcltklib.c.

#define TAG_BREAK 0x2

Definition at line 157 of file tcltklib.c.

Referenced by tcl_protect_core().

#define TAG_FATAL 0x8

Definition at line 163 of file tcltklib.c.

Referenced by ip_eval_real(), ip_invoke_core(), lib_eventloop_core(), lib_eventloop_main(), and tcl_protect_core().

#define TAG_NEXT 0x3

Definition at line 158 of file tcltklib.c.

Referenced by tcl_protect_core().

#define TAG_RAISE 0x6

Definition at line 161 of file tcltklib.c.

Referenced by ip_eval_real(), ip_invoke_core(), lib_eventloop_core(), lib_eventloop_main(), and tcl_protect_core().

#define TAG_REDO 0x5

Definition at line 160 of file tcltklib.c.

Referenced by pending_exception_check0(), pending_exception_check1(), and tcl_protect_core().

#define TAG_RETRY 0x4

Definition at line 159 of file tcltklib.c.

Referenced by pending_exception_check0(), pending_exception_check1(), and tcl_protect_core().

#define TAG_RETURN 0x1

Definition at line 156 of file tcltklib.c.

Referenced by tcl_protect_core().

#define TAG_THROW 0x7

Definition at line 162 of file tcltklib.c.

Referenced by pending_exception_check0(), pending_exception_check1(), and tcl_protect_core().

#define TCL_ALPHA_RELEASE 0 /* "alpha" */

Definition at line 103 of file tcltklib.c.

Referenced by Init_tcltklib(), and lib_get_reltype_name().

#define TCL_BETA_RELEASE 1 /* "beta" */

Definition at line 104 of file tcltklib.c.

Referenced by Init_tcltklib(), and lib_get_reltype_name().

#define TCL_CANCEL_UNWIND 0x100000

Definition at line 7823 of file tcltklib.c.

Referenced by ip_cancel_eval_unwind().

#define Tcl_DecrRefCount | ( |  | obj) |  | (1)

Definition at line 317 of file tcltklib.c.

Referenced by call_original_exit(), create_encoding_table_core(), free_invoke_arguments(), ip_eval_real(), ip_get_result_string_obj(), ip_get_variable2_core(), ip_invoke_core(), ip_rb_threadTkWaitCommand(), ip_rb_threadVwaitCommand(), ip_rbTkWaitCommand(), ip_rbVwaitCommand(), ip_set_variable2_core(), lib_fromUTF8_core(), lib_split_tklist_core(), and update_encoding_table().

#define Tcl_Eval tcl_eval

Definition at line 291 of file tcltklib.c.

Referenced by delete_slaves(), ip_eval_real(), ip_init(), lib_restart_core(), and tcl_eval().

#define TCL_FINAL_RELEASE 2 /* "final" */

Definition at line 105 of file tcltklib.c.

Referenced by Init_tcltklib(), and lib_get_reltype_name().

#define Tcl_GetStringResult | ( |  | interp) |  | ((interp)->result)

Definition at line 322 of file tcltklib.c.

Referenced by ip_eval_real(), ip_get_variable2_core(), ip_init(), ip_invoke_core(), ip_make_safe_core(), ip_rbUpdateCommand(), ip_ruby_cmd(), ip_ruby_eval(), ip_RubyExitCommand(), ip_set_variable2_core(), ip_unset_variable2_core(), lib_split_tklist_core(), and tcltkip_init_tk().

#define Tcl_GlobalEval tcl_global_eval

Definition at line 312 of file tcltklib.c.

Referenced by ip_finalize(), and tcl_global_eval().

#define Tcl_IncrRefCount | ( |  | obj) |  | (1)

Definition at line 316 of file tcltklib.c.

Referenced by alloc_invoke_arguments(), call_original_exit(), create_encoding_table_core(), ip_cancel_eval_core(), ip_eval_real(), ip_get_result_string_obj(), ip_get_variable2_core(), ip_invoke_core(), ip_rb_threadTkWaitCommand(), ip_rb_threadVwaitCommand(), ip_rbTkWaitCommand(), ip_rbVwaitCommand(), ip_set_variable2_core(), lib_fromUTF8_core(), lib_split_tklist_core(), and update_encoding_table().

#define TCL_NAMESPACE_DEBUG 0

Definition at line 560 of file tcltklib.c.

Referenced by deleted_ip(), and ip_InterpExitCommand().

#define TCLTKLIB_RELEASE_DATE "2010-08-25"

Definition at line 7 of file tcltklib.c.

Referenced by tcltklib_compile_info().

#define TK_WINDOWING_SYSTEM "x11"

Referenced by Init_tcltklib().

#define TKWAIT_MODE_DESTROY 2

Definition at line 4883 of file tcltklib.c.

Referenced by ip_rb_threadTkWaitCommand(), rb_threadWaitVisibilityProc(), and rb_threadWaitWindowProc().

#define TKWAIT_MODE_VISIBILITY 1

Definition at line 4882 of file tcltklib.c.

Referenced by ip_rb_threadTkWaitCommand(), and rb_threadWaitVisibilityProc().

#define TRAP_CHECK | ( | ) |  |

Value:
do { \
if (trap_check(check_var) == 0) return 0; \
} while (0)

Definition at line 2138 of file tcltklib.c.

Referenced by lib_eventloop_core().

#define USE_EVLOOP_THREAD_ALONE_CHECK_FLAG 0

Definition at line 2100 of file tcltklib.c.

#define USE_RUBY_ALLOC 0

#define USE_TOGGLE_WINDOW_MODE_FOR_IDLE 0

Definition at line 494 of file tcltklib.c.

#define va_init_list | ( |  | a,
|  |  | b
| ) |  | va_start(a)

Definition at line 61 of file tcltklib.c.

Referenced by create_ip_exc(), new_insn_body(), rb_funcall(), rb_rescue2(), rb_yield_values(), and warn_printf().

#define WATCHDOG_INTERVAL 10/*milliseconds ( 1 -- 999 ) */

Definition at line 520 of file tcltklib.c.

Referenced by lib_watchdog_core().

## Function Documentation

static void ip_finalize _ | ( | (Tcl_Interp *) | ) |  |
| static

static VALUE encoding_table_get_obj_core _ | ( | (VALUE, VALUE, VALUE) | ) |  |
| static

static VALUE callq_safelevel_handler _ | ( | (VALUE, VALUE) | ) |  |
| static

static VALUE ip_alloc _ | ( | (VALUE) | ) |  |
| static

static VALUE ip_invoke _ | ( | (int, VALUE *, VALUE) | ) |  |
| static

static VALUE ip_invoke_with_position _ | ( | (int, VALUE *, VALUE, Tcl_QueuePosition) | ) |  |
| static

static VALUE tk_funcall _ | ( | (VALUE(), int, VALUE *, VALUE) | ) |  |
| static

static int ip_ruby_cmd _ | ( | (ClientData, Tcl_Interp *, int, char **) | ) |  |
| static

static void rb_threadUpdateProc _ | ( | (ClientData) | ) |  |
| static

static int ip_rb_threadTkWaitCommand _ | ( | (ClientData, Tcl_Interp *, int, char *[]) | ) |  |
| static

static char *rb_threadVwaitProc _ | ( | (ClientData, Tcl_Interp *, char *, char *, int) | ) |  |
| static

static void rb_threadWaitWindowProc _ | ( | (ClientData, XEvent *) | ) |  |
| static

int invoke_queue_handler _ | ( | (Tcl_Event *, int) | ) |  |
| static

static VALUE _thread_call_proc | ( | VALUE | arg) |  |
| static

Definition at line 2934 of file tcltklib.c.

References _thread_call_proc_core(), _thread_call_proc_ensure(), and rb_ensure().

Referenced by lib_thread_callback().

void _thread_call_proc_arg_mark | ( | struct thread_call_proc_arg * | q) |  |

Definition at line 2911 of file tcltklib.c.

References thread_call_proc_arg::proc, and rb_gc_mark().

static VALUE _thread_call_proc_core | ( | VALUE | arg) |  |
| static

Definition at line 2917 of file tcltklib.c.

References thread_call_proc_arg::proc, and rb_funcall().

Referenced by _thread_call_proc().

static VALUE _thread_call_proc_ensure | ( | VALUE | arg) |  |
| static

Definition at line 2925 of file tcltklib.c.

References thread_call_proc_arg::done, and Qnil.

Referenced by _thread_call_proc().

static VALUE _thread_call_proc_value | ( | VALUE | th) |  |
| static

Definition at line 2947 of file tcltklib.c.

References rb_funcall().

Referenced by lib_thread_callback().

static void _timer_for_tcl | ( | ClientData | clientData) |  |
| static

Definition at line 1611 of file tcltklib.c.

References DUMP1, NULL, Qtrue, rb_thread_critical, and timer_token.

Referenced by lib_eventloop_core(), and set_eventloop_tick().

static char** alloc_invoke_arguments | ( | int | argc,
|  | VALUE * | argv
| ) |  |
| static

Definition at line 8842 of file tcltklib.c.

References argc, i, NULL, Qtrue, rb_thread_critical, RbTk_ALLOC_N, strdup, StringValuePtr, and Tcl_IncrRefCount.

Referenced by ip_invoke_real(), and ip_invoke_with_position().

static VALUE call_DoOneEvent | ( | VALUE | flag_val) |  |
| static

Definition at line 2042 of file tcltklib.c.

References FIX2INT, Qfalse, and Qtrue.

Referenced by lib_eventloop_core().

static void call_original_exit | ( | struct tcltkip * | ptr,
|  | int | state
| ) |  |
| static

Definition at line 1460 of file tcltklib.c.

References ALLOC_N, argv, CONST84, DUMP1, INT2NUM, NULL, Qtrue, rb_fix2str(), rb_thread_critical, RbTk_ALLOC_N, RSTRING_PTR, Tcl_DecrRefCount, Tcl_IncrRefCount, and xfree.

Referenced by Init_tcltklib().

static int call_queue_handler | ( | Tcl_Event * | evPtr,
|  | int | flags
| ) |  |
| static

Definition at line 6998 of file tcltklib.c.

References call_queue::argc, call_queue::argv, call_queue_mark(), callq_safelevel_handler(), Data_Wrap_Struct, deleted_ip(), call_queue::done, DUMP1, DUMP2, call_queue::func, get_ip(), call_queue::interp, RARRAY_PTR, rb_cData, rb_funcall(), rb_gc_force_recycle(), rb_proc_new(), rb_safe_level, rb_thread_alive_p(), rb_thread_current(), rb_thread_run(), rb_thread_schedule(), rb_thread_wakeup(), rbtk_internal_eventloop_handler, call_queue::result, RTEST, call_queue::safe_level, and call_queue::thread.

Referenced by tk_funcall().

void call_queue_mark | ( | struct call_queue * | q) |  |

Definition at line 456 of file tcltklib.c.

References call_queue::argc, call_queue::argv, i, call_queue::interp, rb_gc_mark(), call_queue::result, and call_queue::thread.

Referenced by call_queue_handler().

static VALUE callq_safelevel_handler | ( | VALUE | arg,
|  | VALUE | callq
| ) |  |
| static

Definition at line 6984 of file tcltklib.c.

References call_queue::argc, call_queue::argv, Data_Get_Struct, DUMP2, call_queue::func, call_queue::interp, rb_set_safe_level(), and call_queue::safe_level.

Referenced by call_queue_handler().

static int check_eventloop_interp | ( | ) |  |
| static

Definition at line 2173 of file tcltklib.c.

References DUMP1, DUMP2, and NULL.

Referenced by lib_eventloop_core().

static VALUE create_dummy_encoding_for_tk | ( | VALUE | interp,
|  | VALUE | name
| ) |  |
| static

Definition at line 10135 of file tcltklib.c.

References create_dummy_encoding_for_tk_core(), and Qtrue.

Referenced by create_encoding_table_core(), and Init_tcltklib().

static VALUE create_dummy_encoding_for_tk_core | ( | VALUE | interp,
|  | VALUE | name,
|  | VALUE | error_mode
| ) |  |
| static

Definition at line 10094 of file tcltklib.c.

References get_ip(), name, Qnil, rb_define_dummy_encoding(), rb_eArgError, rb_enc_find_index(), rb_enc_from_encoding(), rb_enc_from_index(), rb_eRuntimeError, rb_raise(), rb_secure(), RSTRING_PTR, RTEST, StringValue, StringValueCStr, and UNREACHABLE.

Referenced by create_dummy_encoding_for_tk(), and update_encoding_table().

static VALUE create_encoding_table | ( | VALUE | interp) |  |
| static

Definition at line 10603 of file tcltklib.c.

References create_encoding_table_core(), rb_funcall(), and rb_proc_new().

Referenced by ip_get_encoding_table().

static VALUE create_encoding_table_core | ( | VALUE | arg,
|  | VALUE | interp
| ) |  |
| static

Definition at line 10452 of file tcltklib.c.

References create_dummy_encoding_for_tk(), DUMP2, enc_list(), ENCODING_INDEX_BINARY, ENCODING_INDEX_UTF8, get_ip(), i, tcltkip::ip, Qnil, rb_enc_find_index(), rb_enc_from_encoding(), rb_enc_from_index(), rb_eRuntimeError, rb_hash_aset(), rb_hash_new(), rb_ivar_set(), rb_obj_freeze(), rb_raise(), rb_set_safe_level(), rb_set_safe_level_force(), rb_str_new2, RSTRING_PTR, StringValueCStr, Tcl_DecrRefCount, Tcl_IncrRefCount, and tcl_stubs_check().

Referenced by create_encoding_table().

static VALUE create_ip_exc | ( | interp | ,
|  | VALUE interp: VALUE | exc,
|  | const char * | fmt,
|  | va_alist |
| ) |  |
| static

Definition at line 838 of file tcltklib.c.

References args, buf, get_ip(), tcltkip::ip, rb_exc_new2(), rb_ivar_set(), va_init_list, and vsnprintf.

Referenced by ip_eval_real(), ip_get_variable2_core(), ip_invoke_core(), ip_make_safe_core(), ip_set_variable2_core(), ip_unset_variable2_core(), and tcltkip_init_tk().

static void delete_slaves | ( | Tcl_Interp * | ip) |  |
| static

Definition at line 5600 of file tcltklib.c.

References argc, argv, DUMP1, DUMP2, i, ip_finalize(), Qtrue, rb_thread_critical, and Tcl_Eval.

Referenced by ip_finalize().

static int deleted_ip | ( | struct tcltkip * | ptr) |  |
| static

Definition at line 788 of file tcltklib.c.

References DUMP1, and TCL_NAMESPACE_DEBUG.

Referenced by call_queue_handler(), encoding_table_get_name_core(), eval_queue_handler(), invoke_queue_handler(), ip_allow_ruby_exit_p(), ip_allow_ruby_exit_set(), ip_create_console(), ip_create_slave(), ip_create_slave_core(), ip_delete(), ip_eval_real(), ip_evloop_abort_on_exc_set(), ip_get_variable2_core(), ip_has_mainwindow_p_core(), ip_invoke_core(), ip_invoke_real(), ip_is_deleted_p(), ip_is_safe_p(), ip_mainloop(), ip_mainloop_watchdog(), ip_make_safe(), ip_make_safe_core(), ip_restart(), ip_retval(), ip_set_eventloop_tick(), ip_set_eventloop_weight(), ip_set_no_event_wait(), ip_set_variable2_core(), ip_unset_variable2_core(), lib_do_one_event_core(), lib_restart(), lib_restart_core(), lib_toUTF8_core(), tk_funcall(), and update_encoding_table().

static VALUE encoding_table_get_name | ( | VALUE | table,
|  | VALUE | enc
| ) |  |
| static

Definition at line 10436 of file tcltklib.c.

References encoding_table_get_name_core(), and Qtrue.

Referenced by ip_get_encoding_table().

static VALUE encoding_table_get_name_core | ( | VALUE | table,
|  | VALUE | enc_arg,
|  | VALUE | error_mode
| ) |  |
| static

Definition at line 10202 of file tcltklib.c.

References deleted_ip(), enc_arg(), get_ip(), name, NIL_P, Qnil, rb_cEncoding, rb_eArgError, rb_enc_default_external(), rb_enc_default_internal(), rb_enc_find_index(), rb_enc_from_encoding(), rb_enc_from_index(), rb_funcall(), rb_hash_lookup, rb_ivar_get(), rb_locale_charmap(), rb_obj_is_kind_of(), rb_raise(), rb_respond_to(), rb_str_new2, RSTRING_PTR, RTEST, StringValueCStr, and update_encoding_table().

Referenced by encoding_table_get_name(), and encoding_table_get_obj_core().

static VALUE encoding_table_get_obj | ( | VALUE | table,
|  | VALUE | enc
| ) |  |
| static

Definition at line 10443 of file tcltklib.c.

References encoding_table_get_obj_core(), and Qtrue.

Referenced by ip_get_encoding_table(), and lib_fromUTF8_core().

static VALUE encoding_table_get_obj_core | ( | VALUE | table,
|  | VALUE | enc,
|  | VALUE | error_mode
| ) |  |
| static

Definition at line 10309 of file tcltklib.c.

References encoding_table_get_name_core(), Qnil, rb_hash_lookup, rb_obj_is_kind_of(), and RTEST.

Referenced by encoding_table_get_obj().

int eval_queue_handler | ( | Tcl_Event * | evPtr,
|  | int | flags
| ) |  |

Definition at line 7494 of file tcltklib.c.

References Data_Wrap_Struct, deleted_ip(), eval_queue::done, DUMP1, DUMP2, eval_queue_mark(), evq_safelevel_handler(), get_ip(), eval_queue::interp, ip_eval_real(), eval_queue::len, RARRAY_PTR, rb_bug(), rb_cData, rb_funcall(), rb_gc_force_recycle(), rb_proc_new(), rb_safe_level, rb_thread_alive_p(), rb_thread_current(), rb_thread_run(), rb_thread_schedule(), rb_thread_wakeup(), rbtk_internal_eventloop_handler, eval_queue::result, RTEST, ruby_native_thread_p, eval_queue::safe_level, eval_queue::str, and eval_queue::thread.

Referenced by ip_eval().

void eval_queue_mark | ( | struct eval_queue * | q) |  |

Definition at line 448 of file tcltklib.c.

References eval_queue::interp, rb_gc_mark(), eval_queue::result, and eval_queue::thread.

Referenced by eval_queue_handler().

static VALUE evq_safelevel_handler | ( | VALUE | arg,
|  | VALUE | evq
| ) |  |
| static

Definition at line 7480 of file tcltklib.c.

References Data_Get_Struct, DUMP2, eval_queue::interp, ip_eval_real(), eval_queue::len, rb_set_safe_level(), eval_queue::safe_level, and eval_queue::str.

Referenced by eval_queue_handler().

static void free_invoke_arguments | ( | int | argc,
|  | char ** | av
| ) |  |
| static

Definition at line 8890 of file tcltklib.c.

References argc, free(), i, and Tcl_DecrRefCount.

Referenced by ip_invoke_real(), and ip_invoke_with_position().

static VALUE get_eventloop_tick | ( | VALUE | self) |  |
| static

Definition at line 1724 of file tcltklib.c.

References INT2NUM.

Referenced by Init_tcltklib(), ip_get_eventloop_tick(), and ip_set_eventloop_tick().

static VALUE get_eventloop_weight | ( | VALUE | self) |  |
| static

Definition at line 1830 of file tcltklib.c.

References INT2NUM, and rb_ary_new3().

Referenced by Init_tcltklib(), ip_get_eventloop_weight(), and ip_set_eventloop_weight().

static VALUE get_eventloop_window_mode | ( | VALUE | self) |  |
| static

Definition at line 1678 of file tcltklib.c.

References Qfalse, and Qtrue.

Referenced by Init_tcltklib().

static struct tcltkip* get_ip | ( | VALUE | self) |  |
| static

Definition at line 770 of file tcltklib.c.

References Data_Get_Struct, tcltkip::ip, and NULL.

Referenced by call_queue_handler(), create_dummy_encoding_for_tk_core(), create_encoding_table_core(), create_ip_exc(), encoding_table_get_name_core(), eval_queue_handler(), invoke_queue_handler(), ip_allow_ruby_exit_p(), ip_allow_ruby_exit_set(), ip_cancel_eval(), ip_cancel_eval_unwind(), ip_create_console(), ip_create_console_core(), ip_create_slave(), ip_create_slave_core(), ip_delete(), ip_eval(), ip_eval_real(), ip_evloop_abort_on_exc_set(), ip_get_variable2_core(), ip_has_invalid_namespace_p(), ip_has_mainwindow_p_core(), ip_invoke_core(), ip_invoke_real(), ip_invoke_with_position(), ip_is_deleted_p(), ip_is_safe_p(), ip_is_slave_of_p(), ip_mainloop(), ip_mainloop_watchdog(), ip_make_menu_embeddable_core(), ip_make_safe(), ip_make_safe_core(), ip_restart(), ip_retval(), ip_set_eventloop_tick(), ip_set_eventloop_weight(), ip_set_no_event_wait(), ip_set_variable2_core(), ip_unset_variable2_core(), lib_do_one_event_core(), lib_fromUTF8_core(), lib_restart(), lib_restart_core(), lib_split_tklist_core(), lib_toUTF8_core(), tcltkip_init_tk(), tk_funcall(), and update_encoding_table().

static VALUE get_no_event_wait | ( | VALUE | self) |  |
| static

Definition at line 1776 of file tcltklib.c.

References INT2NUM.

Referenced by Init_tcltklib(), ip_get_no_event_wait(), and ip_set_no_event_wait().

void Init_tcltklib | ( | ) |  |

Definition at line 10771 of file tcltklib.c.

References call_original_exit(), create_dummy_encoding_for_tk(), DEFAULT_EVENTLOOP_DEPTH, get_eventloop_tick(), get_eventloop_weight(), get_eventloop_window_mode(), get_no_event_wait(), INT2FIX, ip_alloc(), ip_allow_ruby_exit_p(), ip_allow_ruby_exit_set(), ip_cancel_eval(), ip_cancel_eval_unwind(), ip_create_console(), ip_create_slave(), ip_delete(), ip_do_one_event(), ip_eval(), ip_evloop_abort_on_exc(), ip_evloop_abort_on_exc_set(), ip_fromUTF8(), ip_get_encoding_table(), ip_get_eventloop_tick(), ip_get_eventloop_weight(), ip_get_global_var(), ip_get_global_var2(), ip_get_no_event_wait(), ip_get_variable(), ip_get_variable2(), ip_has_invalid_namespace_p(), ip_has_mainwindow_p(), ip_init(), ip_invoke(), ip_invoke_immediate(), ip_is_deleted_p(), ip_is_safe_p(), ip_is_slave_of_p(), ip_mainloop(), ip_mainloop_watchdog(), ip_make_menu_embeddable(), ip_make_safe(), ip_restart(), ip_retval(), ip_set_eventloop_tick(), ip_set_eventloop_weight(), ip_set_global_var(), ip_set_global_var2(), ip_set_no_event_wait(), ip_set_variable(), ip_set_variable2(), ip_split_tklist(), ip_thread_tkwait(), ip_thread_vwait(), ip_toUTF8(), ip_unset_global_var(), ip_unset_global_var2(), ip_unset_variable(), ip_unset_variable2(), lib_conv_listelement(), lib_do_one_event(), lib_evloop_abort_on_exc(), lib_evloop_abort_on_exc_set(), lib_evloop_thread_p(), lib_fromUTF8(), lib_get_reltype_name(), lib_get_system_encoding(), lib_getversion(), lib_mainloop(), lib_mainloop_watchdog(), lib_mark_at_exit(), lib_merge_tklist(), lib_num_of_mainwindows(), lib_set_system_encoding(), lib_split_tklist(), lib_Tcl_backslash(), lib_thread_callback(), lib_toUTF8(), lib_UTF_backslash(), NO_FindExecutable, NO_TCL_DLL, Qnil, rb_argv0, rb_ary_new2(), rb_cObject, rb_const_get(), rb_define_alloc_func(), rb_define_class(), rb_define_const(), rb_define_method(), rb_define_module(), rb_define_module_function(), rb_define_module_under(), rb_eLoadError, rb_enc_find_index(), rb_enc_to_index, rb_eStandardError, rb_global_variable(), rb_intern, rb_obj_freeze(), rb_path2class(), rb_raise(), rb_set_end_proc(), rb_str_new2, rb_utf8_encoding(), RbTk_OBJ_UNTRUST, rbtk_pending_exception, RSTRING_PTR, ruby_native_thread_p, ruby_open_tcl_dll(), set_eventloop_tick(), set_eventloop_weight(), set_eventloop_window_mode(), set_max_block_time(), set_no_event_wait(), TCL_ALPHA_RELEASE, TCL_BETA_RELEASE, TCL_FINAL_RELEASE, tcl_stubs_check(), TCLTK_STUBS_OK, tcltklib_compile_info(), and TK_WINDOWING_SYSTEM.

int invoke_queue_handler | ( | Tcl_Event * | evPtr,
|  | int | flags
| ) |  |

Definition at line 8986 of file tcltklib.c.

References invoke_queue::argc, invoke_queue::argv, Data_Wrap_Struct, deleted_ip(), invoke_queue::done, DUMP1, DUMP2, get_ip(), invoke_queue::interp, invoke_queue_mark(), ip_invoke_core(), ivq_safelevel_handler(), RARRAY_PTR, rb_cData, rb_funcall(), rb_gc_force_recycle(), rb_proc_new(), rb_safe_level, rb_thread_alive_p(), rb_thread_current(), rb_thread_run(), rb_thread_schedule(), rb_thread_wakeup(), rbtk_internal_eventloop_handler, invoke_queue::result, RTEST, invoke_queue::safe_level, and invoke_queue::thread.

Referenced by ip_invoke_with_position().

void invoke_queue_mark | ( | struct invoke_queue * | q) |  |

Definition at line 440 of file tcltklib.c.

References invoke_queue::interp, rb_gc_mark(), invoke_queue::result, and invoke_queue::thread.

Referenced by invoke_queue_handler().

static VALUE invoke_tcl_proc | ( | VALUE | arg) |  |
| static

Definition at line 8486 of file tcltklib.c.

References argc, invoke_info::argc, invoke_info::argv, invoke_info::cmdinfo, CONST84, i, inf(), tcltkip::ip, invoke_info::ptr, Qnil, RbTk_ALLOC_N, and tcltkip::return_value.

Referenced by ip_invoke_core().

static VALUE ip_alloc | ( | VALUE | self) |  |
| static

Definition at line 5878 of file tcltklib.c.

References Data_Wrap_Struct, and ip_free().

Referenced by Init_tcltklib().

static VALUE ip_allow_ruby_exit_p | ( | VALUE | self) |  |
| static

Definition at line 6710 of file tcltklib.c.

References tcltkip::allow_ruby_exit, deleted_ip(), get_ip(), Qfalse, Qtrue, rb_eRuntimeError, and rb_raise().

Referenced by Init_tcltklib().

static VALUE ip_allow_ruby_exit_set | ( | VALUE | self,
|  | VALUE | val
| ) |  |
| static

Definition at line 6729 of file tcltklib.c.

References tcltkip::allow_ruby_exit, deleted_ip(), DUMP1, get_ip(), tcltkip::ip, ip_InterpExitCommand(), ip_RubyExitCommand(), Qfalse, Qtrue, rb_eRuntimeError, rb_eSecurityError, rb_raise(), rb_secure(), RTEST, and tk_stubs_init_p().

Referenced by Init_tcltklib().

static void ip_CallWhenDeleted | ( | ClientData | clientData,
|  | Tcl_Interp * | ip
| ) |  |
| static

Definition at line 6120 of file tcltklib.c.

References DUMP1, ip_finalize(), Qtrue, and rb_thread_critical.

Referenced by ip_create_slave_core(), and ip_init().

static VALUE ip_cancel_eval | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 7805 of file tcltklib.c.

References get_ip(), ip_cancel_eval_core(), Qfalse, Qnil, Qtrue, and rb_scan_args().

Referenced by Init_tcltklib().

static int ip_cancel_eval_core | ( | Tcl_Interp * | interp,
|  | VALUE | msg,
|  | int | flag
| ) |  |
| static

Definition at line 7780 of file tcltklib.c.

References NIL_P, NULL, rb_eNotImpError, rb_raise(), RSTRING_LEN, RSTRING_PTR, Tcl_IncrRefCount, and UNREACHABLE.

Referenced by ip_cancel_eval(), and ip_cancel_eval_unwind().

static VALUE ip_cancel_eval_unwind | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 7826 of file tcltklib.c.

References get_ip(), ip_cancel_eval_core(), Qfalse, Qnil, Qtrue, rb_scan_args(), and TCL_CANCEL_UNWIND.

Referenced by Init_tcltklib().

static VALUE ip_create_console | ( | VALUE | self) |  |
| static

Definition at line 6623 of file tcltklib.c.

References deleted_ip(), get_ip(), ip_create_console_core(), rb_eRuntimeError, rb_raise(), and tk_funcall().

Referenced by Init_tcltklib().

static VALUE ip_create_console_core | ( | VALUE | interp,
|  | int | argc,
|  | VALUE * | argv
| ) |  |
| static

Definition at line 6575 of file tcltklib.c.

References get_ip(), tcltkip::ip, rb_eRuntimeError, rb_notimplement(), rb_raise(), tcltkip_init_tk(), and tk_stubs_init_p().

Referenced by ip_create_console().

static VALUE ip_create_slave | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 6506 of file tcltklib.c.

References deleted_ip(), get_ip(), tcltkip::ip, ip_create_slave_core(), name, NIL_P, Qfalse, rb_eRuntimeError, rb_raise(), rb_scan_args(), rb_secure(), StringValue, and tk_funcall().

Referenced by Init_tcltklib().

static VALUE ip_create_slave_core | ( | VALUE | interp,
|  | int | argc,
|  | VALUE * | argv
| ) |  |
| static

Definition at line 6394 of file tcltklib.c.

References ALLOC, tcltkip::allow_ruby_exit, CLASS_OF, Data_Wrap_Struct, deleted_ip(), DUMP1, get_ip(), tcltkip::has_orig_exit, tcltkip::ip, ip_CallWhenDeleted(), ip_free(), ip_InterpExitCommand(), ip_rb_replaceSlaveTkCmdsCommand(), ip_replace_wait_commands(), ip_wrap_namespace_command(), name, NIL_P, tcltkip::orig_exit_info, Qfalse, Qtrue, rb_eRuntimeError, rb_exc_new2(), rb_thread_critical, rbtk_preserve_ip(), tcltkip::ref_count, tcltkip::return_value, RTEST, StringValuePtr, tcltkip_init_tk(), and tk_stubs_init_p().

Referenced by ip_create_slave().

static VALUE ip_delete | ( | VALUE | self) |  |
| static

Definition at line 6785 of file tcltklib.c.

References deleted_ip(), DUMP1, get_ip(), tcltkip::ip, ip_finalize(), Qnil, Qtrue, and rb_thread_critical.

Referenced by Init_tcltklib().

static VALUE ip_do_one_event | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 3084 of file tcltklib.c.

References lib_do_one_event_core().

Referenced by Init_tcltklib().

static VALUE ip_eval | ( | VALUE | self,
|  | VALUE | str
| ) |  |
| static

Definition at line 7601 of file tcltklib.c.

References eval_queue::done, DUMP1, DUMP2, eval_queue::ev, eval_queue_handler(), EVENT_HANDLER_TIMEOUT, get_ip(), eval_queue::interp, ip_eval_real(), eval_queue::len, NIL_P, Qnil, Qtrue, RARRAY_PTR, rb_ary_new3(), rb_eException, rb_exc_new3(), rb_exc_raise(), rb_funcall(), rb_obj_class(), rb_obj_is_kind_of(), rb_safe_level, rb_thread_critical, rb_thread_current(), rb_thread_wait_for(), RbTk_ALLOC_N, result, eval_queue::result, RSTRING_LEN, RSTRING_LENINT, RSTRING_PTR, eval_queue::safe_level, eval_queue::str, StringValue, eval_queue::thread, timeval::tv_sec, and timeval::tv_usec.

Referenced by Init_tcltklib().

static VALUE ip_eval_real | ( | VALUE | self,
|  | char * | cmd_str,
|  | int | cmd_len
| ) |  |
| static

Definition at line 7319 of file tcltklib.c.

References create_ip_exc(), deleted_ip(), DUMP2, get_ip(), tcltkip::ip, ip_get_result_string_obj(), NIL_P, pending_exception_check1(), Qtrue, rb_eException, rb_eFatal, rb_errinfo, rb_eRuntimeError, rb_exc_new2(), rb_protect(), rb_tainted_str_new2, rb_thread_critical, rb_warn(), rb_warning(), rbtk_pending_exception, rbtk_preserve_ip(), rbtk_release_ip(), tcltkip::return_value, TAG_FATAL, TAG_RAISE, Tcl_DecrRefCount, Tcl_Eval, Tcl_GetStringResult, and Tcl_IncrRefCount.

Referenced by eval_queue_handler(), evq_safelevel_handler(), and ip_eval().

static VALUE ip_evloop_abort_on_exc | ( | VALUE | self) |  |
| static

Definition at line 1926 of file tcltklib.c.

References lib_evloop_abort_on_exc().

Referenced by Init_tcltklib().

static VALUE ip_evloop_abort_on_exc_set | ( | VALUE | self,
|  | VALUE | val
| ) |  |
| static

Definition at line 1948 of file tcltklib.c.

References deleted_ip(), get_ip(), tcltkip::ip, lib_evloop_abort_on_exc(), lib_evloop_abort_on_exc_set(), NULL, and rb_secure().

Referenced by Init_tcltklib().

static void ip_finalize | ( | Tcl_Interp * | ip) |  |
| static

Definition at line 5683 of file tcltklib.c.

References delete_slaves(), DUMP1, DUMP2, ip_null_proc(), Qfalse, Qnil, Qtrue, rb_thread_critical, ruby_debug, ruby_verbose, Tcl_GlobalEval, and tk_stubs_init_p().

Referenced by delete_slaves(), ip_CallWhenDeleted(), ip_delete(), ip_free(), ip_InterpExitCommand(), and ip_RubyExitCommand().

static void ip_free | ( | struct tcltkip * | ptr) |  |
| static

Definition at line 5825 of file tcltklib.c.

References DUMP1, DUMP2, ip_finalize(), Qtrue, rb_thread_critical, and xfree.

Referenced by ip_alloc(), and ip_create_slave_core().

static VALUE ip_fromUTF8 | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 8321 of file tcltklib.c.

References lib_fromUTF8_core(), Qnil, and rb_scan_args().

Referenced by Init_tcltklib().

static VALUE ip_get_encoding_table | ( | VALUE | interp) |  |
| static

Definition at line 10611 of file tcltklib.c.

References create_encoding_table(), encoding_table_get_name(), encoding_table_get_obj(), NIL_P, Qnil, rb_define_singleton_method(), and rb_ivar_get().

Referenced by Init_tcltklib(), and lib_fromUTF8_core().

static VALUE ip_get_eventloop_tick | ( | VALUE | self) |  |
| static

Definition at line 1750 of file tcltklib.c.

References get_eventloop_tick().

Referenced by Init_tcltklib().

static VALUE ip_get_eventloop_weight | ( | VALUE | self) |  |
| static

Definition at line 1857 of file tcltklib.c.

References get_eventloop_weight().

Referenced by Init_tcltklib().

static VALUE ip_get_global_var | ( | VALUE | self,
|  | VALUE | varname
| ) |  |
| static

Definition at line 9649 of file tcltklib.c.

References INT2FIX, and ip_get_variable().

Referenced by Init_tcltklib().

static VALUE ip_get_global_var2 | ( | VALUE | self,
|  | VALUE | varname,
|  | VALUE | index
| ) |  |
| static

Definition at line 9658 of file tcltklib.c.

References INT2FIX, and ip_get_variable2().

Referenced by Init_tcltklib().

static VALUE ip_get_no_event_wait | ( | VALUE | self) |  |
| static

Definition at line 1802 of file tcltklib.c.

References get_no_event_wait().

Referenced by Init_tcltklib().

static VALUE ip_get_result_string_obj | ( | Tcl_Interp * | interp) |  |
| static

Definition at line 6963 of file tcltklib.c.

References rb_tainted_str_new2, RbTk_OBJ_UNTRUST, Tcl_DecrRefCount, and Tcl_IncrRefCount.

Referenced by ip_eval_real(), and ip_invoke_core().

static VALUE ip_get_variable | ( | VALUE | self,
|  | VALUE | varname,
|  | VALUE | flag
| ) |  |
| static

Definition at line 9426 of file tcltklib.c.

References ip_get_variable2(), and Qnil.

Referenced by Init_tcltklib(), and ip_get_global_var().

static VALUE ip_get_variable2 | ( | VALUE | self,
|  | VALUE | varname,
|  | VALUE | index,
|  | VALUE | flag
| ) |  |
| static

Definition at line 9400 of file tcltklib.c.

References ip_get_variable2_core(), NIL_P, rb_tainted_str_new2, StringValue, and tk_funcall().

Referenced by Init_tcltklib(), ip_get_global_var2(), and ip_get_variable().

static VALUE ip_get_variable2_core | ( | VALUE | interp,
|  | int | argc,
|  | VALUE * | argv
| ) |  |
| static

Definition at line 9304 of file tcltklib.c.

References create_ip_exc(), deleted_ip(), FIX2INT, get_ip(), tcltkip::ip, NIL_P, Qtrue, rb_eRuntimeError, rb_exc_new2(), rb_tainted_str_new2, rb_thread_critical, RbTk_OBJ_UNTRUST, rbtk_preserve_ip(), rbtk_release_ip(), RSTRING_PTR, Tcl_DecrRefCount, Tcl_GetStringResult, and Tcl_IncrRefCount.

Referenced by ip_get_variable2().

static VALUE ip_has_invalid_namespace_p | ( | VALUE | self) |  |
| static

Definition at line 6817 of file tcltklib.c.

References get_ip(), tcltkip::ip, Qfalse, and Qtrue.

Referenced by Init_tcltklib().

static VALUE ip_has_mainwindow_p | ( | VALUE | self) |  |
| static

Definition at line 6869 of file tcltklib.c.

References ip_has_mainwindow_p_core(), and tk_funcall().

Referenced by Init_tcltklib().

static VALUE ip_has_mainwindow_p_core | ( | VALUE | self,
|  | int | argc,
|  | VALUE * | argv
| ) |  |
| static

Definition at line 6852 of file tcltklib.c.

References deleted_ip(), get_ip(), tcltkip::ip, Qfalse, Qnil, Qtrue, and tk_stubs_init_p().

Referenced by ip_has_mainwindow_p().

static VALUE ip_init | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 6142 of file tcltklib.c.

References ALLOC, tcltkip::allow_ruby_exit, cnt, Data_Get_Struct, DATA_PTR, DUMP1, DUMP2, FAIL_CreateInterp, FAIL_Tcl_InitStubs, FAIL_Tk_Init, FAIL_Tk_InitStubs, tcltkip::has_orig_exit, tcltkip::ip, ip_CallWhenDeleted(), ip_InterpExitCommand(), ip_rb_replaceSlaveTkCmdsCommand(), ip_replace_wait_commands(), ip_ruby_cmd(), ip_ruby_eval(), ip_RubyExitCommand(), ip_wrap_namespace_command(), NIL_P, NO_CreateInterp, NO_DeleteInterp, NO_FindExecutable, NO_TCL_DLL, NO_Tk_Init, tcltkip::orig_exit_info, Qfalse, rb_eLoadError, rb_eRuntimeError, rb_eSecurityError, rb_raise(), rb_safe_level, rb_scan_args(), rbtk_preserve_ip(), tcltkip::ref_count, tcltkip::return_value, ruby_tcl_create_ip_and_stubs_init(), ruby_tcl_stubs_init(), ruby_tk_stubs_init(), StringValuePtr, Tcl_Eval, Tcl_GetStringResult, and TCLTK_STUBS_OK.

Referenced by Init_tcltklib().

static int ip_InterpExitCommand | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | int | argc,
|  | argv |
| ) |  |
| static

Definition at line 3726 of file tcltklib.c.

References DUMP1, ip_finalize(), NULL, and TCL_NAMESPACE_DEBUG.

Referenced by ip_allow_ruby_exit_set(), ip_create_slave_core(), ip_init(), ip_make_safe_core(), and ip_rb_replaceSlaveTkCmdsCommand().

static VALUE ip_invoke | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | obj
| ) |  |
| static

Definition at line 9282 of file tcltklib.c.

References ip_invoke_with_position().

Referenced by Init_tcltklib().

static VALUE ip_invoke_core | ( | VALUE | interp,
|  | int | argc,
|  | char ** | argv
| ) |  |
| static

Definition at line 8560 of file tcltklib.c.

References argc, invoke_info::argc, argv, invoke_info::argv, invoke_info::cmdinfo, CONST84, create_ip_exc(), deleted_ip(), DUMP1, DUMP2, free(), get_ip(), i, invoke_tcl_proc(), tcltkip::ip, ip_get_result_string_obj(), NIL_P, pending_exception_check1(), invoke_info::ptr, Qtrue, rb_eException, rb_eFatal, rb_eNameError, rb_errinfo, rb_eRuntimeError, rb_exc_new2(), rb_protect(), rb_tainted_str_new2, rb_thread_critical, rb_warn(), rb_warning(), RbTk_ALLOC_N, rbtk_pending_exception, rbtk_preserve_ip(), rbtk_release_ip(), tcltkip::return_value, strdup, TAG_FATAL, TAG_RAISE, Tcl_DecrRefCount, Tcl_GetStringResult, and Tcl_IncrRefCount.

Referenced by invoke_queue_handler(), ip_invoke_real(), and ivq_safelevel_handler().

static VALUE ip_invoke_immediate | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | obj
| ) |  |
| static

Definition at line 9291 of file tcltklib.c.

References ip_invoke_with_position(), and rb_secure().

Referenced by Init_tcltklib().

static VALUE ip_invoke_real | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | interp
| ) |  |
| static

Definition at line 8934 of file tcltklib.c.

References alloc_invoke_arguments(), deleted_ip(), DUMP2, free_invoke_arguments(), get_ip(), tcltkip::ip, ip_invoke_core(), rb_tainted_str_new2, rb_thread_current(), and v.

Referenced by ip_invoke_with_position().

static VALUE ip_invoke_with_position | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | obj,
|  | Tcl_QueuePosition | position
| ) |  |
| static

Definition at line 9088 of file tcltklib.c.

References alloc_invoke_arguments(), argc, DUMP1, DUMP2, EVENT_HANDLER_TIMEOUT, free_invoke_arguments(), get_ip(), invoke_queue_handler(), ip_invoke_real(), NIL_P, Qnil, Qtrue, RARRAY_PTR, rb_ary_new3(), rb_eArgError, rb_eException, rb_exc_new3(), rb_exc_raise(), rb_funcall(), rb_obj_class(), rb_obj_is_kind_of(), rb_raise(), rb_safe_level, rb_thread_critical, rb_thread_current(), rb_thread_wait_for(), RbTk_ALLOC_N, result, timeval::tv_sec, and timeval::tv_usec.

Referenced by ip_invoke(), ip_invoke_immediate(), ip_thread_tkwait(), and ip_thread_vwait().

static VALUE ip_is_deleted_p | ( | VALUE | self) |  |
| static

Definition at line 6839 of file tcltklib.c.

References deleted_ip(), get_ip(), Qfalse, and Qtrue.

Referenced by Init_tcltklib().

static VALUE ip_is_safe_p | ( | VALUE | self) |  |
| static

Definition at line 6691 of file tcltklib.c.

References deleted_ip(), get_ip(), tcltkip::ip, Qfalse, Qtrue, rb_eRuntimeError, and rb_raise().

Referenced by Init_tcltklib().

static VALUE ip_is_slave_of_p | ( | VALUE | self,
|  | VALUE | master
| ) |  |
| static

Definition at line 6541 of file tcltklib.c.

References get_ip(), Qfalse, Qtrue, rb_eArgError, rb_obj_is_kind_of(), and rb_raise().

Referenced by Init_tcltklib().

static VALUE ip_mainloop | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 2755 of file tcltklib.c.

References deleted_ip(), get_ip(), tcltkip::ip, lib_mainloop(), NULL, and Qnil.

Referenced by Init_tcltklib().

static VALUE ip_mainloop_watchdog | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 2884 of file tcltklib.c.

References deleted_ip(), get_ip(), tcltkip::ip, lib_mainloop_watchdog(), NULL, and Qnil.

Referenced by Init_tcltklib().

static VALUE ip_make_menu_embeddable | ( | VALUE | interp,
|  | VALUE | menu_path
| ) |  |
| static

Definition at line 10756 of file tcltklib.c.

References ip_make_menu_embeddable_core(), and tk_funcall().

Referenced by Init_tcltklib().

static VALUE ip_make_menu_embeddable_core | ( | VALUE | interp,
|  | int | argc,
|  | VALUE * | argv
| ) |  |
| static

Definition at line 10676 of file tcltklib.c.

References get_ip(), tcltkip::ip, NULL, rb_eArgError, rb_eRuntimeError, rb_notimplement(), rb_raise(), RSTRING_PTR, StringValue, and strlen().

Referenced by ip_make_menu_embeddable().

static VALUE ip_make_safe | ( | VALUE | self) |  |
| static

Definition at line 6676 of file tcltklib.c.

References deleted_ip(), get_ip(), ip_make_safe_core(), rb_eRuntimeError, rb_raise(), and tk_funcall().

Referenced by Init_tcltklib().

static VALUE ip_make_safe_core | ( | VALUE | interp,
|  | int | argc,
|  | VALUE * | argv
| ) |  |
| static

Definition at line 6638 of file tcltklib.c.

References tcltkip::allow_ruby_exit, create_ip_exc(), deleted_ip(), DUMP1, get_ip(), tcltkip::ip, ip_InterpExitCommand(), rb_eRuntimeError, rb_exc_new2(), Tcl_GetStringResult, and tk_stubs_init_p().

Referenced by ip_make_safe().

static int ip_null_proc | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | int | argc,
|  | argv |
| ) |  |
| static

Definition at line 5670 of file tcltklib.c.

Referenced by ip_finalize().

static int ip_rb_replaceSlaveTkCmdsCommand | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | int | objc,
|  | objv |
| ) |  |
| static

Definition at line 5966 of file tcltklib.c.

References DUMP1, ip_InterpExitCommand(), and ip_replace_wait_commands().

Referenced by ip_create_slave_core(), and ip_init().

static int ip_rb_threadTkWaitCommand | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | int | objc,
|  | objv |
| ) |  |
| static

Definition at line 5082 of file tcltklib.c.

References c, CONST84, DUMP1, DUMP2, EVENT_HANDLER_TIMEOUT, ip_rbTkWaitCommand(), NIL_P, NULL, options(), param, Qtrue, rb_eRuntimeError, rb_exc_new2(), rb_thread_alone(), rb_thread_critical, rb_thread_current(), rb_thread_wait_for(), rb_threadVwaitProc(), rb_threadWaitVisibilityProc(), rb_threadWaitWindowProc(), RbTk_ALLOC_N, rbtk_pending_exception, strlen(), Tcl_DecrRefCount, Tcl_IncrRefCount, tk_stubs_init_p(), TKWAIT_MODE_DESTROY, TKWAIT_MODE_VISIBILITY, timeval::tv_sec, and timeval::tv_usec.

Referenced by ip_rb_threadUpdateCommand(), and ip_replace_wait_commands().

static int ip_rb_threadUpdateCommand | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | int | objc,
|  | objv |
| ) |  |
| static

Definition at line 4038 of file tcltklib.c.

References _, CONST, CONST84, DUMP1, EVENT_HANDLER_TIMEOUT, ip_rb_threadTkWaitCommand(), ip_rb_threadVwaitCommand(), ip_rbTkWaitCommand(), ip_rbUpdateCommand(), ip_rbVwaitCommand(), NIL_P, NULL, param, rb_bug(), rb_eRuntimeError, rb_exc_new2(), rb_thread_alone(), rb_thread_current(), rb_thread_wait_for(), rb_threadUpdateProc(), RbTk_ALLOC_N, rbtk_pending_exception, ruby_native_thread_p, strlen(), timeval::tv_sec, timeval::tv_usec, and VwaitVarProc().

Referenced by ip_replace_wait_commands().

static int ip_rb_threadVwaitCommand | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | int | objc,
|  | objv |
| ) |  |
| static

Definition at line 4925 of file tcltklib.c.

References DUMP1, EVENT_HANDLER_TIMEOUT, ip_rbVwaitCommand(), NIL_P, param, Qtrue, rb_eRuntimeError, rb_exc_new2(), rb_thread_alone(), rb_thread_critical, rb_thread_current(), rb_thread_wait_for(), rb_threadVwaitProc(), RbTk_ALLOC_N, rbtk_pending_exception, Tcl_DecrRefCount, Tcl_IncrRefCount, timeval::tv_sec, and timeval::tv_usec.

Referenced by ip_rb_threadUpdateCommand(), ip_rbVwaitCommand(), and ip_replace_wait_commands().

static int ip_rbTkWaitCommand | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | int | objc,
|  | objv |
| ) |  |
| static

Definition at line 4469 of file tcltklib.c.

References c, CONST84, DUMP1, lib_eventloop_launcher(), NIL_P, NULL, options(), Qnil, Qtrue, rb_eInterrupt, rb_eRuntimeError, rb_eSystemExit, rb_exc_new2(), rb_obj_is_kind_of(), rb_thread_alone(), rb_thread_check_trap_pending(), rb_thread_critical, rb_thread_current(), rbtk_pending_exception, strlen(), Tcl_DecrRefCount, Tcl_IncrRefCount, tk_stubs_init_p(), WaitVariableProc(), WaitVisibilityProc(), and WaitWindowProc().

Referenced by ip_rb_threadTkWaitCommand(), ip_rb_threadUpdateCommand(), and ip_replace_wait_commands().

static int ip_rbUpdateCommand | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | int | objc,
|  | objv |
| ) |  |
| static

Definition at line 3884 of file tcltklib.c.

References CONST, CONST84, DUMP1, DUMP2, lib_eventloop_launcher(), NIL_P, NULL, rb_bug(), rb_eInterrupt, rb_eRuntimeError, rb_eSystemExit, rb_exc_new2(), rb_obj_is_kind_of(), rb_thread_check_trap_pending(), rbtk_pending_exception, RTEST, ruby_native_thread_p, strlen(), and Tcl_GetStringResult.

Referenced by ip_rb_threadUpdateCommand(), and ip_replace_wait_commands().

static int ip_rbVwaitCommand | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | int | objc,
|  | objv |
| ) |  |
| static

Definition at line 4225 of file tcltklib.c.

References _, CONST84, DUMP1, ip_rb_threadVwaitCommand(), lib_eventloop_launcher(), NIL_P, NULL, Qnil, Qtrue, rb_bug(), rb_eInterrupt, rb_eRuntimeError, rb_eSystemExit, rb_exc_new2(), rb_obj_is_kind_of(), rb_thread_alone(), rb_thread_check_trap_pending(), rb_thread_critical, rb_thread_current(), rbtk_pending_exception, RTEST, ruby_native_thread_p, Tcl_DecrRefCount, Tcl_IncrRefCount, VwaitVarProc(), and WaitVariableProc().

Referenced by ip_rb_threadUpdateCommand(), ip_rb_threadVwaitCommand(), and ip_replace_wait_commands().

static void ip_replace_wait_commands | ( | Tcl_Interp * | interp,
|  | Tk_Window | mainWin
| ) |  |
| static

Definition at line 5885 of file tcltklib.c.

References DUMP1, ip_rb_threadTkWaitCommand(), ip_rb_threadUpdateCommand(), ip_rb_threadVwaitCommand(), ip_rbTkWaitCommand(), ip_rbUpdateCommand(), and ip_rbVwaitCommand().

Referenced by ip_create_slave_core(), ip_init(), and ip_rb_replaceSlaveTkCmdsCommand().

static VALUE ip_restart | ( | VALUE | self) |  |
| static

Definition at line 7929 of file tcltklib.c.

References deleted_ip(), get_ip(), tcltkip::ip, lib_restart(), Qnil, rb_eRuntimeError, rb_raise(), rb_secure(), and tcl_stubs_check().

Referenced by Init_tcltklib().

static VALUE ip_retval | ( | VALUE | self) |  |
| static

Definition at line 9265 of file tcltklib.c.

References deleted_ip(), get_ip(), INT2FIX, rb_tainted_str_new2, and tcltkip::return_value.

Referenced by Init_tcltklib().

static int ip_ruby_cmd | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | int | argc,
|  | argv |
| ) |  |
| static

Definition at line 3593 of file tcltklib.c.

References ALLOC, arg, argc, cmd_body_arg::args, args, DUMP2, i, ip_ruby_cmd_core(), ip_ruby_cmd_receiver_get(), cmd_body_arg::method, NIL_P, NULL, Qfalse, Qtrue, RARRAY, rb_ary_new2(), rb_ary_push(), rb_eArgError, rb_eRuntimeError, rb_exc_new2(), rb_gc_disable(), rb_gc_enable(), rb_intern, rb_raise(), rb_tainted_str_new(), rb_tainted_str_new2, rb_thread_critical, rbtk_pending_exception, cmd_body_arg::receiver, Tcl_GetStringResult, tcl_protect(), and xfree.

Referenced by ip_init().

static VALUE ip_ruby_cmd_core | ( | struct cmd_body_arg * | arg) |  |
| static

Definition at line 3474 of file tcltklib.c.

References DUMP1, DUMP2, Qfalse, rb_apply(), and rb_thread_critical.

Referenced by ip_ruby_cmd().

static VALUE ip_ruby_cmd_receiver_const_get | ( | char * | name) |  |
| static

Definition at line 3494 of file tcltklib.c.

References free(), head, Qnil, rb_cObject, rb_const_get(), rb_eval_string_protect(), rb_intern, strdup, and tail.

Referenced by ip_ruby_cmd_receiver_get().

static VALUE ip_ruby_cmd_receiver_get | ( | char * | str) |  |
| static

Definition at line 3546 of file tcltklib.c.

References ALLOC_N, buf, ip_ruby_cmd_receiver_const_get(), Qnil, rb_gv_get(), rb_protect(), strlen(), and xfree.

Referenced by ip_ruby_cmd().

static int ip_ruby_eval | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | int | argc,
|  | argv |
| ) |  |
| static

Definition at line 3402 of file tcltklib.c.

References ALLOC_N, arg, buf, DUMP2, NULL, Qtrue, rb_eArgError, rb_eRuntimeError, rb_eval_string(), rb_exc_new2(), rb_raise(), rb_thread_critical, rbtk_pending_exception, Tcl_GetStringResult, tcl_protect(), and xfree.

Referenced by ip_init().

static int ip_RubyExitCommand | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | int | argc,
|  | argv |
| ) |  |
| static

Definition at line 3771 of file tcltklib.c.

References DUMP1, INT2FIX, ip_finalize(), NULL, param, rb_eSystemExit, rb_exc_new2(), rb_iv_set(), rb_safe_level, rbtk_pending_exception, strtol(), and Tcl_GetStringResult.

Referenced by ip_allow_ruby_exit_set(), and ip_init().

static VALUE ip_set_eventloop_tick | ( | VALUE | self,
|  | VALUE | tick
| ) |  |
| static

Definition at line 1731 of file tcltklib.c.

References deleted_ip(), get_eventloop_tick(), get_ip(), tcltkip::ip, NULL, and set_eventloop_tick().

Referenced by Init_tcltklib().

static VALUE ip_set_eventloop_weight | ( | VALUE | self,
|  | VALUE | loop_max,
|  | VALUE | no_event
| ) |  |
| static

Definition at line 1837 of file tcltklib.c.

References deleted_ip(), get_eventloop_weight(), get_ip(), tcltkip::ip, NULL, and set_eventloop_weight().

Referenced by Init_tcltklib().

static void ip_set_exc_message | ( | Tcl_Interp * | interp,
|  | VALUE | exc
| ) |  |
| static

Definition at line 3094 of file tcltklib.c.

References ALLOC_N, buf, DUMP2, msg, NIL_P, NULL, Qtrue, rb_attr_get(), rb_funcall(), rb_thread_critical, RSTRING_LEN, RSTRING_LENINT, RSTRING_PTR, StringValue, T_STRING, TYPE, and xfree.

Referenced by tcl_protect_core().

static VALUE ip_set_global_var | ( | VALUE | self,
|  | VALUE | varname,
|  | VALUE | value
| ) |  |
| static

Definition at line 9668 of file tcltklib.c.

References INT2FIX, and ip_set_variable().

Referenced by Init_tcltklib().

static VALUE ip_set_global_var2 | ( | VALUE | self,
|  | VALUE | varname,
|  | VALUE | index,
|  | VALUE | value
| ) |  |
| static

Definition at line 9678 of file tcltklib.c.

References INT2FIX, and ip_set_variable2().

Referenced by Init_tcltklib().

static VALUE ip_set_no_event_wait | ( | VALUE | self,
|  | VALUE | wait
| ) |  |
| static

Definition at line 1783 of file tcltklib.c.

References deleted_ip(), get_ip(), get_no_event_wait(), tcltkip::ip, NULL, and set_no_event_wait().

Referenced by Init_tcltklib().

static VALUE ip_set_variable | ( | VALUE | self,
|  | VALUE | varname,
|  | VALUE | value,
|  | VALUE | flag
| ) |  |
| static

Definition at line 9565 of file tcltklib.c.

References ip_set_variable2(), and Qnil.

Referenced by Init_tcltklib(), and ip_set_global_var().

static VALUE ip_set_variable2 | ( | VALUE | self,
|  | VALUE | varname,
|  | VALUE | index,
|  | VALUE | value,
|  | VALUE | flag
| ) |  |
| static

Definition at line 9536 of file tcltklib.c.

References ip_set_variable2_core(), NIL_P, rb_tainted_str_new2, StringValue, and tk_funcall().

Referenced by Init_tcltklib(), ip_set_global_var2(), and ip_set_variable().

static VALUE ip_set_variable2_core | ( | VALUE | interp,
|  | int | argc,
|  | VALUE * | argv
| ) |  |
| static

Definition at line 9435 of file tcltklib.c.

References create_ip_exc(), deleted_ip(), FIX2INT, get_ip(), tcltkip::ip, NIL_P, Qtrue, rb_eRuntimeError, rb_exc_new2(), rb_tainted_str_new2, rb_thread_critical, RbTk_OBJ_UNTRUST, rbtk_preserve_ip(), rbtk_release_ip(), RSTRING_PTR, Tcl_DecrRefCount, Tcl_GetStringResult, and Tcl_IncrRefCount.

Referenced by ip_set_variable2().

static VALUE ip_split_tklist | ( | VALUE | self,
|  | VALUE | list_str
| ) |  |
| static

Definition at line 9853 of file tcltklib.c.

References lib_split_tklist_core().

Referenced by Init_tcltklib().

static VALUE ip_thread_tkwait | ( | VALUE | self,
|  | VALUE | mode,
|  | VALUE | target
| ) |  |
| static

Definition at line 5529 of file tcltklib.c.

References ip_invoke_with_position(), and rb_str_new2.

Referenced by Init_tcltklib().

static VALUE ip_thread_vwait | ( | VALUE | self,
|  | VALUE | var
| ) |  |
| static

Definition at line 5515 of file tcltklib.c.

References ip_invoke_with_position(), and rb_str_new2.

Referenced by Init_tcltklib().

static VALUE ip_toUTF8 | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 8119 of file tcltklib.c.

References lib_toUTF8_core(), Qnil, and rb_scan_args().

Referenced by Init_tcltklib().

static VALUE ip_unset_global_var | ( | VALUE | self,
|  | VALUE | varname
| ) |  |
| static

Definition at line 9689 of file tcltklib.c.

References INT2FIX, and ip_unset_variable().

Referenced by Init_tcltklib().

static VALUE ip_unset_global_var2 | ( | VALUE | self,
|  | VALUE | varname,
|  | VALUE | index
| ) |  |
| static

Definition at line 9698 of file tcltklib.c.

References INT2FIX, and ip_unset_variable2().

Referenced by Init_tcltklib().

static VALUE ip_unset_variable | ( | VALUE | self,
|  | VALUE | varname,
|  | VALUE | flag
| ) |  |
| static

Definition at line 9640 of file tcltklib.c.

References ip_unset_variable2(), and Qnil.

Referenced by Init_tcltklib(), and ip_unset_global_var().

static VALUE ip_unset_variable2 | ( | VALUE | self,
|  | VALUE | varname,
|  | VALUE | index,
|  | VALUE | flag
| ) |  |
| static

Definition at line 9614 of file tcltklib.c.

References ip_unset_variable2_core(), NIL_P, rb_tainted_str_new2, StringValue, and tk_funcall().

Referenced by Init_tcltklib(), ip_unset_global_var2(), and ip_unset_variable().

static VALUE ip_unset_variable2_core | ( | VALUE | interp,
|  | int | argc,
|  | VALUE * | argv
| ) |  |
| static

Definition at line 9575 of file tcltklib.c.

References create_ip_exc(), deleted_ip(), FIX2INT, get_ip(), tcltkip::ip, NIL_P, Qfalse, Qtrue, rb_eRuntimeError, tcltkip::return_value, RSTRING_PTR, and Tcl_GetStringResult.

Referenced by ip_unset_variable2().

static void ip_wrap_namespace_command | ( | Tcl_Interp * | interp) |  |
| static

Definition at line 6089 of file tcltklib.c.

Referenced by ip_create_slave_core(), and ip_init().

VALUE ivq_safelevel_handler | ( | VALUE | arg,
|  | VALUE | ivq
| ) |  |

Definition at line 8972 of file tcltklib.c.

References invoke_queue::argc, invoke_queue::argv, Data_Get_Struct, DUMP2, invoke_queue::interp, ip_invoke_core(), rb_set_safe_level(), and invoke_queue::safe_level.

Referenced by invoke_queue_handler().

static VALUE lib_conv_listelement | ( | VALUE | self,
|  | VALUE | src
| ) |  |
| static

Definition at line 9959 of file tcltklib.c.

References OBJ_TAINTED, Qtrue, rb_str_new(), rb_str_resize(), rb_thread_critical, RbTk_OBJ_UNTRUST, RSTRING_LENINT, RSTRING_PTR, StringValue, and tcl_stubs_check().

Referenced by Init_tcltklib().

static VALUE lib_do_one_event | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 3075 of file tcltklib.c.

References lib_do_one_event_core().

Referenced by Init_tcltklib().

static VALUE lib_do_one_event_core | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self,
|  | int | is_ip
| ) |  |
| static

Definition at line 3018 of file tcltklib.c.

References Check_Type, deleted_ip(), FIX2INT, get_ip(), tcltkip::ip, NIL_P, NULL, OBJ_TAINTED, pending_exception_check0(), Qfalse, Qtrue, rb_eRuntimeError, rb_raise(), rb_safe_level, rb_scan_args(), T_FIXNUM, and tcl_stubs_check().

Referenced by ip_do_one_event(), and lib_do_one_event().

static int lib_eventloop_core | ( | int | check_root,
|  | int | update_flag,
|  | int * | check_var,
|  | Tcl_Interp * | interp
| ) |  |
| static

Definition at line 2186 of file tcltklib.c.

References _timer_for_tcl(), call_DoOneEvent(), check_eventloop_interp(), CHECK_INTS, DUMP1, DUMP2, event_loop_max, eventloop_thread, INT2FIX, NIL_P, no_event_tick, no_event_wait, NO_THREAD_INTERRUPT_TIME, NULL, pending_exception_check0(), Qnil, Qtrue, rb_eException, rb_eFatal, rb_errinfo, rb_exc_new2(), rb_exc_raise(), rb_protect(), rb_thread_alone(), rb_thread_check_ints(), rb_thread_critical, rb_thread_schedule(), rb_thread_sleep_forever(), rbtk_eventloop_depth, rbtk_pending_exception, req_timer_tick, RTEST, TAG_FATAL, TAG_RAISE, timer_token, tk_stubs_init_p(), TRAP_CHECK, timeval::tv_sec, and timeval::tv_usec.

Referenced by lib_eventloop_main_core().

VALUE lib_eventloop_ensure | ( | VALUE | args) |  |

Definition at line 2615 of file tcltklib.c.

References DUMP2, NIL_P, NULL, Qnil, rb_ary_pop(), rb_funcall(), rb_thread_alive_p(), rb_thread_critical, rb_thread_current(), rb_thread_wakeup(), rbtk_EventCheckProc(), rbtk_eventloop_depth, rbtk_EventSetupProc(), RTEST, evloop_params::thr_crit_bup, timer_token, and xfree.

Referenced by lib_eventloop_launcher().

static VALUE lib_eventloop_launcher | ( | int | check_root,
|  | int | update_flag,
|  | int * | check_var,
|  | Tcl_Interp * | interp
| ) |  |
| static

Definition at line 2681 of file tcltklib.c.

References ALLOC, evloop_params::check_root, evloop_params::check_var, DUMP1, DUMP2, DUMP3, eventloop_thread, evloop_params::interp, lib_eventloop_ensure(), lib_eventloop_main(), lib_eventloop_main_core(), NIL_P, Qfalse, rb_ary_push(), rb_ensure(), rb_funcall(), rb_thread_critical, rb_thread_current(), rb_thread_run(), rbtk_eventloop_depth, RTEST, tcl_stubs_check(), evloop_params::thr_crit_bup, and evloop_params::update_flag.

Referenced by ip_rbTkWaitCommand(), ip_rbUpdateCommand(), ip_rbVwaitCommand(), lib_mainloop(), lib_thread_callback(), and watchdog_evloop_launcher().

VALUE lib_eventloop_main | ( | VALUE | args) |  |

Definition at line 2580 of file tcltklib.c.

References lib_eventloop_main_core(), NIL_P, Qnil, rb_eException, rb_eFatal, rb_errinfo, rb_exc_new2(), rb_protect(), rbtk_pending_exception, TAG_FATAL, and TAG_RAISE.

Referenced by lib_eventloop_launcher().

VALUE lib_eventloop_main_core | ( | VALUE | args) |  |

Definition at line 2560 of file tcltklib.c.

References evloop_params::check_root, evloop_params::check_var, evloop_params::interp, lib_eventloop_core(), Qfalse, Qtrue, rbtk_EventCheckProc(), rbtk_EventSetupProc(), and evloop_params::update_flag.

Referenced by lib_eventloop_launcher(), and lib_eventloop_main().

static VALUE lib_evloop_abort_on_exc | ( | VALUE | self) |  |
| static

Definition at line 1913 of file tcltklib.c.

References Qfalse, Qnil, and Qtrue.

Referenced by Init_tcltklib(), ip_evloop_abort_on_exc(), ip_evloop_abort_on_exc_set(), and lib_evloop_abort_on_exc_set().

static VALUE lib_evloop_abort_on_exc_set | ( | VALUE | self,
|  | VALUE | val
| ) |  |
| static

Definition at line 1933 of file tcltklib.c.

References lib_evloop_abort_on_exc(), NIL_P, rb_secure(), and RTEST.

Referenced by Init_tcltklib(), and ip_evloop_abort_on_exc_set().

static VALUE lib_evloop_thread_p | ( | VALUE | self) |  |
| static

Definition at line 1900 of file tcltklib.c.

References NIL_P, Qfalse, Qnil, Qtrue, and rb_thread_current().

Referenced by Init_tcltklib().

static VALUE lib_fromUTF8 | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 8307 of file tcltklib.c.

References lib_fromUTF8_core(), Qnil, and rb_scan_args().

Referenced by Init_tcltklib().

static VALUE lib_fromUTF8_core | ( | VALUE | ip_obj,
|  | VALUE | src,
|  | VALUE | encodename
| ) |  |
| static

Definition at line 8133 of file tcltklib.c.

References ALLOC_N, buf, encoding_table_get_obj(), get_ip(), tcltkip::ip, ip_get_encoding_table(), NIL_P, OBJ_TAINTED, Qtrue, rb_attr_get(), rb_eArgError, rb_enc_associate_index(), rb_enc_find_index(), rb_enc_get_index(), rb_funcall(), rb_ivar_set(), rb_obj_dup(), rb_raise(), rb_str_new(), rb_str_new2, rb_tainted_str_new(), rb_tainted_str_new2, rb_thread_critical, rb_to_encoding_index(), rb_warning(), RbTk_OBJ_UNTRUST, RSTRING_LEN, RSTRING_LENINT, RSTRING_PTR, StringValue, T_STRING, Tcl_DecrRefCount, Tcl_IncrRefCount, tcl_stubs_check(), TYPE, and xfree.

Referenced by ip_fromUTF8(), and lib_fromUTF8().

static VALUE lib_get_reltype_name | ( | VALUE | self) |  |
| static

Definition at line 10008 of file tcltklib.c.

References rb_eRuntimeError, rb_raise(), rb_str_new2, set_tcltk_version(), TCL_ALPHA_RELEASE, TCL_BETA_RELEASE, TCL_FINAL_RELEASE, tcltk_version, and UNREACHABLE.

Referenced by Init_tcltklib().

static VALUE lib_get_system_encoding | ( | VALUE | self) |  |
| static

Definition at line 8431 of file tcltklib.c.

References Qnil, rb_str_new2, and tcl_stubs_check().

Referenced by Init_tcltklib(), and lib_set_system_encoding().

static VALUE lib_getversion | ( | VALUE | self) |  |
| static

Definition at line 9996 of file tcltklib.c.

References INT2NUM, rb_ary_new3(), set_tcltk_version(), and tcltk_version.

Referenced by Init_tcltklib().

static VALUE lib_mainloop | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 2735 of file tcltklib.c.

References lib_eventloop_launcher(), NULL, Qfalse, Qtrue, rb_scan_args(), and RTEST.

Referenced by Init_tcltklib(), and ip_mainloop().

static VALUE lib_mainloop_watchdog | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 2859 of file tcltklib.c.

References lib_watchdog_core(), lib_watchdog_ensure(), Qfalse, Qnil, Qtrue, rb_eNotImpError, rb_ensure(), rb_raise(), rb_scan_args(), and RTEST.

Referenced by Init_tcltklib(), and ip_mainloop_watchdog().

static void lib_mark_at_exit | ( | VALUE | self) |  |
| static

Definition at line 5647 of file tcltklib.c.

Referenced by Init_tcltklib().

static VALUE lib_merge_tklist | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | obj
| ) |  |
| static

Definition at line 9861 of file tcltklib.c.

References argc, OBJ_TAINTED, Qfalse, Qtrue, rb_gc_disable(), rb_gc_enable(), rb_str_new(), rb_str_new2, rb_thread_critical, RbTk_ALLOC_N, RbTk_OBJ_UNTRUST, result, RSTRING_LENINT, RSTRING_PTR, StringValuePtr, and tcl_stubs_check().

Referenced by Init_tcltklib().

static VALUE lib_num_of_mainwindows | ( | VALUE | self) |  |
| static

Definition at line 1981 of file tcltklib.c.

References lib_num_of_mainwindows_core(), NULL, and tk_funcall().

Referenced by Init_tcltklib().

static VALUE lib_num_of_mainwindows_core | ( | VALUE | self,
|  | int | argc,
|  | VALUE * | argv
| ) |  |
| static

Definition at line 1968 of file tcltklib.c.

References INT2FIX, and tk_stubs_init_p().

Referenced by lib_num_of_mainwindows().

static VALUE lib_restart | ( | VALUE | self) |  |
| static

Definition at line 7910 of file tcltklib.c.

References deleted_ip(), get_ip(), lib_restart_core(), rb_eRuntimeError, rb_raise(), rb_secure(), tcl_stubs_check(), and tk_funcall().

Referenced by ip_restart().

static VALUE lib_restart_core | ( | VALUE | interp,
|  | int | argc,
|  | VALUE * | argv
| ) |  |
| static

Definition at line 7848 of file tcltklib.c.

References deleted_ip(), DUMP2, get_ip(), tcltkip::ip, NIL_P, Qtrue, rb_eRuntimeError, rb_exc_new2(), rb_thread_critical, rbtk_preserve_ip(), rbtk_release_ip(), tcltkip::return_value, Tcl_Eval, and tcltkip_init_tk().

Referenced by lib_restart().

static VALUE lib_set_system_encoding | ( | VALUE | self,
|  | VALUE | enc_name
| ) |  |
| static

Definition at line 8443 of file tcltklib.c.

References enc_name(), lib_get_system_encoding(), NIL_P, Qnil, rb_eArgError, rb_funcall(), rb_raise(), RSTRING_PTR, StringValuePtr, and tcl_stubs_check().

Referenced by Init_tcltklib().

static VALUE lib_split_tklist | ( | VALUE | self,
|  | VALUE | list_str
| ) |  |
| static

Definition at line 9844 of file tcltklib.c.

References lib_split_tklist_core(), and Qnil.

Referenced by Init_tcltklib().

static VALUE lib_split_tklist_core | ( | VALUE | ip_obj,
|  | VALUE | list_str
| ) |  |
| static

Definition at line 9710 of file tcltklib.c.

References argc, argv, get_ip(), tcltkip::ip, NIL_P, OBJ_TAINTED, Qfalse, Qtrue, rb_ary_new2(), rb_ary_push(), rb_enc_associate_index(), rb_enc_get_index(), rb_eRuntimeError, rb_gc_disable(), rb_gc_enable(), rb_ivar_get(), rb_ivar_set(), rb_raise(), rb_str_new2, rb_tainted_str_new2, rb_thread_critical, RbTk_OBJ_UNTRUST, result, RSTRING_PTR, StringValue, Tcl_DecrRefCount, Tcl_GetStringResult, Tcl_IncrRefCount, and tcl_stubs_check().

Referenced by ip_split_tklist(), and lib_split_tklist().

static VALUE lib_Tcl_backslash | ( | VALUE | self,
|  | VALUE | str
| ) |  |
| static

Definition at line 8423 of file tcltklib.c.

References lib_UTF_backslash_core().

Referenced by Init_tcltklib().

static VALUE lib_thread_callback | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 2955 of file tcltklib.c.

References _thread_call_proc(), _thread_call_proc_value(), ALLOC, thread_call_proc_arg::done, lib_eventloop_launcher(), NIL_P, NULL, thread_call_proc_arg::proc, Qnil, rb_block_proc(), rb_errinfo, rb_exc_raise(), rb_funcall(), rb_protect(), rb_scan_args(), rb_thread_alive_p(), rb_thread_create(), rb_thread_schedule(), rbtk_pending_exception, RTEST, and xfree.

Referenced by Init_tcltklib().

static VALUE lib_toUTF8 | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | self
| ) |  |
| static

Definition at line 8105 of file tcltklib.c.

References lib_toUTF8_core(), Qnil, and rb_scan_args().

Referenced by Init_tcltklib().

static VALUE lib_toUTF8_core | ( | VALUE | ip_obj,
|  | VALUE | src,
|  | VALUE | encodename
| ) |  |
| static

Definition at line 7951 of file tcltklib.c.

References ALLOC_N, buf, deleted_ip(), get_ip(), tcltkip::ip, NIL_P, OBJ_TAINTED, Qtrue, rb_attr_get(), rb_eArgError, rb_enc_associate_index(), rb_funcall(), rb_ivar_set(), rb_obj_encoding(), rb_raise(), rb_str_new(), rb_str_new2, rb_thread_critical, rb_warning(), RbTk_OBJ_UNTRUST, RSTRING_LEN, RSTRING_LENINT, RSTRING_PTR, StringValue, T_STRING, tcl_stubs_check(), TYPE, and xfree.

Referenced by ip_toUTF8(), and lib_toUTF8().

static VALUE lib_UTF_backslash | ( | VALUE | self,
|  | VALUE | str
| ) |  |
| static

Definition at line 8415 of file tcltklib.c.

References lib_UTF_backslash_core().

Referenced by Init_tcltklib().

static VALUE lib_UTF_backslash_core | ( | VALUE | self,
|  | VALUE | str,
|  | int | all_bs
| ) |  |
| static

Definition at line 8335 of file tcltklib.c.

References OBJ_TAINTED, Qtrue, rb_enc_associate_index(), rb_ivar_set(), rb_str_new(), rb_thread_critical, RbTk_OBJ_UNTRUST, RSTRING_LEN, RSTRING_LENINT, RSTRING_PTR, StringValue, and tcl_stubs_check().

Referenced by lib_Tcl_backslash(), and lib_UTF_backslash().

static VALUE lib_watchdog_core | ( | VALUE | check_rootwidget) |  |
| static

Definition at line 2791 of file tcltklib.c.

References DUMP2, EVLOOP_WAKEUP_CHANCE, loop_counter, NIL_P, NO_THREAD_INTERRUPT_TIME, Qnil, rb_funcall(), rb_thread_create(), rb_thread_current(), rb_thread_run(), rb_thread_wait_for(), RTEST, tk_stubs_init_p(), timeval::tv_sec, timeval::tv_usec, watchdog_evloop_launcher(), and WATCHDOG_INTERVAL.

Referenced by lib_mainloop_watchdog().

VALUE lib_watchdog_ensure | ( | VALUE | arg) |  |

Definition at line 2848 of file tcltklib.c.

References Qnil.

Referenced by lib_mainloop_watchdog().

int matherr | ( | ) |  |

static int pending_exception_check0 | ( | ) |  |
| static

Definition at line 1381 of file tcltklib.c.

References DUMP1, NIL_P, Qnil, rb_eException, rb_exc_raise(), rb_jump_tag(), rb_obj_is_kind_of(), rbtk_eventloop_depth, rbtk_internal_eventloop_handler, rbtk_pending_exception, TAG_REDO, TAG_RETRY, TAG_THROW, and UNREACHABLE.

Referenced by lib_do_one_event_core(), and lib_eventloop_core().

static int pending_exception_check1 | ( | int | thr_crit_bup,
|  | struct tcltkip * | ptr
| ) |  |
| static

Definition at line 1415 of file tcltklib.c.

References DUMP1, NIL_P, NULL, Qnil, rb_eException, rb_exc_raise(), rb_jump_tag(), rb_obj_is_kind_of(), rb_thread_critical, rbtk_eventloop_depth, rbtk_internal_eventloop_handler, rbtk_pending_exception, rbtk_release_ip(), TAG_REDO, TAG_RETRY, TAG_THROW, and UNREACHABLE.

Referenced by ip_eval_real(), and ip_invoke_core().

int rb_thread_check_trap_pending | ( | ) |  |

Definition at line 1100 of file thread.c.

Referenced by ip_rbTkWaitCommand(), ip_rbUpdateCommand(), ip_rbVwaitCommand(), and trap_check().

static void rb_threadUpdateProc | ( | ClientData | clientData) |  |
| static

Definition at line 4013 of file tcltklib.c.

References th_update_param::done, DUMP1, param, rb_thread_wakeup(), and th_update_param::thread.

Referenced by ip_rb_threadUpdateCommand().

static char* rb_threadVwaitProc | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | char * | name1,
|  | char * | name2,
|  | int | flags
| ) |  |
| static

Definition at line 4862 of file tcltklib.c.

References th_vwait_param::done, NULL, rb_thread_wakeup(), and th_vwait_param::thread.

Referenced by ip_rb_threadTkWaitCommand(), and ip_rb_threadVwaitCommand().

static void rb_threadWaitVisibilityProc | ( | ClientData | clientData,
|  | XEvent * | eventPtr
| ) |  |
| static

Definition at line 4887 of file tcltklib.c.

References th_vwait_param::done, rb_thread_wakeup(), th_vwait_param::thread, TKWAIT_MODE_DESTROY, and TKWAIT_MODE_VISIBILITY.

Referenced by ip_rb_threadTkWaitCommand().

static void rb_threadWaitWindowProc | ( | ClientData | clientData,
|  | XEvent * | eventPtr
| ) |  |
| static

Definition at line 4904 of file tcltklib.c.

References th_vwait_param::done, rb_thread_wakeup(), th_vwait_param::thread, and TKWAIT_MODE_DESTROY.

Referenced by ip_rb_threadTkWaitCommand().

void rbtk_EventCheckProc | ( | ClientData | clientData,
|  | int | flag
| ) |  |

Definition at line 2001 of file tcltklib.c.

References rb_thread_schedule().

Referenced by lib_eventloop_ensure(), and lib_eventloop_main_core().

void rbtk_EventSetupProc | ( | ClientData | clientData,
|  | int | flag
| ) |  |

Definition at line 1992 of file tcltklib.c.

Referenced by lib_eventloop_ensure(), and lib_eventloop_main_core().

static int rbtk_preserve_ip | ( | struct tcltkip * | ptr) |  |
| static

Definition at line 804 of file tcltklib.c.

References NULL, and tcltkip::ref_count.

Referenced by ip_create_slave_core(), ip_eval_real(), ip_get_variable2_core(), ip_init(), ip_invoke_core(), ip_set_variable2_core(), and lib_restart_core().

static int rbtk_release_ip | ( | struct tcltkip * | ptr) |  |
| static

Definition at line 818 of file tcltklib.c.

References NULL, and tcltkip::ref_count.

Referenced by ip_eval_real(), ip_get_variable2_core(), ip_invoke_core(), ip_set_variable2_core(), lib_restart_core(), and pending_exception_check1().

static VALUE set_eventloop_tick | ( | VALUE | self,
|  | VALUE | tick
| ) |  |
| static

Definition at line 1689 of file tcltklib.c.

References _timer_for_tcl(), NULL, NUM2INT, Qtrue, rb_eArgError, rb_raise(), rb_secure(), rb_thread_critical, and timer_token.

Referenced by Init_tcltklib(), and ip_set_eventloop_tick().

static VALUE set_eventloop_weight | ( | VALUE | self,
|  | VALUE | loop_max,
|  | VALUE | no_event
| ) |  |
| static

Definition at line 1809 of file tcltklib.c.

References NUM2INT, rb_ary_new3(), rb_eArgError, rb_raise(), and rb_secure().

Referenced by Init_tcltklib(), and ip_set_eventloop_weight().

static VALUE set_eventloop_window_mode | ( | VALUE | self,
|  | VALUE | mode
| ) |  |
| static

Definition at line 1662 of file tcltklib.c.

References rb_secure(), and RTEST.

Referenced by Init_tcltklib().

static VALUE set_max_block_time | ( | VALUE | self,
|  | VALUE | time
| ) |  |
| static

Definition at line 1864 of file tcltklib.c.

References INT2FIX, LONG2NUM, NUM2DBL, NUM2LONG, Qnil, RARRAY_PTR, rb_eArgError, rb_funcall(), rb_intern, rb_raise(), StringValuePtr, T_BIGNUM, T_FIXNUM, T_FLOAT, and TYPE.

Referenced by Init_tcltklib().

static VALUE set_no_event_wait | ( | VALUE | self,
|  | VALUE | wait
| ) |  |
| static

Definition at line 1757 of file tcltklib.c.

References NUM2INT, rb_eArgError, rb_raise(), rb_secure(), and wait().

Referenced by Init_tcltklib(), and ip_set_no_event_wait().

static void set_tcltk_version | ( | ) |  |
| static

Definition at line 116 of file tcltklib.c.

References tcltk_version.

Referenced by lib_get_reltype_name(), and lib_getversion().

static int tcl_eval | ( | Tcl_Interp * | interp,
|  | const char * | cmd
| ) |  |
| static

Definition at line 276 of file tcltklib.c.

References buf, free(), strdup, and Tcl_Eval.

static int tcl_global_eval | ( | Tcl_Interp * | interp,
|  | const char * | cmd
| ) |  |
| static

Definition at line 297 of file tcltklib.c.

References buf, free(), strdup, and Tcl_GlobalEval.

static int tcl_protect | ( | Tcl_Interp * | interp,
|  | VALUE (*)() | proc,
|  | VALUE | data
| ) |  |
| static

Definition at line 3365 of file tcltklib.c.

References rb_bug(), ruby_native_thread_p, and tcl_protect_core().

Referenced by ip_ruby_cmd(), and ip_ruby_eval().

static int tcl_protect_core | ( | Tcl_Interp * | interp,
|  | VALUE (*)() | proc,
|  | VALUE | data
| ) |  |
| static

Definition at line 3189 of file tcltklib.c.

References ALLOC_N, buf, DUMP1, DUMP2, eTkCallbackBreak, eTkCallbackContinue, eTkCallbackReturn, ip_set_exc_message(), NIL_P, NULL, Qfalse, Qnil, Qtrue, rb_ary_join(), rb_eException, rb_eFatal, rb_eInterrupt, rb_errinfo, rb_eSystemExit, rb_exc_new2(), rb_exc_new3(), rb_funcall(), rb_gc_disable(), rb_gc_enable(), rb_ivar_get(), rb_obj_as_string(), rb_obj_class(), rb_obj_is_kind_of(), rb_protect(), rb_str_append(), rb_str_new2, rb_thread_critical, rbtk_pending_exception, RSTRING_PTR, StringValuePtr, SYM2ID, T_SYMBOL, TAG_BREAK, TAG_FATAL, TAG_NEXT, TAG_RAISE, TAG_REDO, TAG_RETRY, TAG_RETURN, TAG_THROW, TkStringValue(), type, TYPE, and xfree.

Referenced by tcl_protect().

static void tcl_stubs_check | ( | ) |  |
| static

Definition at line 1280 of file tcltklib.c.

References FAIL_CreateInterp, FAIL_Tcl_InitStubs, NO_CreateInterp, NO_DeleteInterp, NO_FindExecutable, NO_TCL_DLL, rb_eLoadError, rb_eRuntimeError, rb_raise(), ruby_tcl_stubs_init(), tcl_stubs_init_p(), and TCLTK_STUBS_OK.

Referenced by create_encoding_table_core(), Init_tcltklib(), ip_restart(), lib_conv_listelement(), lib_do_one_event_core(), lib_eventloop_launcher(), lib_fromUTF8_core(), lib_get_system_encoding(), lib_merge_tklist(), lib_restart(), lib_set_system_encoding(), lib_split_tklist_core(), lib_toUTF8_core(), and lib_UTF_backslash_core().

static VALUE tcltkip_init_tk | ( | VALUE | interp) |  |
| static

Definition at line 1307 of file tcltklib.c.

References create_ip_exc(), DUMP1, FAIL_Tk_Init, FAIL_Tk_InitStubs, get_ip(), tcltkip::ip, NO_Tk_Init, Qnil, rb_eLoadError, rb_eRuntimeError, rb_exc_new2(), ruby_tk_stubs_init(), ruby_tk_stubs_safeinit(), Tcl_GetStringResult, and TCLTK_STUBS_OK.

Referenced by ip_create_console_core(), ip_create_slave_core(), and lib_restart_core().

static VALUE tcltklib_compile_info | ( | ) |  |
| static

Definition at line 10029 of file tcltklib.c.

References ALLOC_N, HAVE_NATIVETHREAD, rb_obj_freeze(), rb_str_new2, RUBY_RELEASE_DATE, RUBY_VERSION, size, strlen(), TCLTKLIB_RELEASE_DATE, and xfree.

Referenced by Init_tcltklib().

static VALUE tk_funcall | ( | VALUE (*)() | func,
|  | int | argc,
|  | VALUE * | argv,
|  | VALUE | obj
| ) |  |
| static

Definition at line 7101 of file tcltklib.c.

References argc, call_queue::argc, argv, call_queue::argv, call_queue_handler(), deleted_ip(), call_queue::done, DUMP1, DUMP2, call_queue::ev, EVENT_HANDLER_TIMEOUT, eventloop_thread, func, call_queue::func, get_ip(), i, call_queue::interp, MEMCPY, NIL_P, Qnil, Qtrue, RARRAY_PTR, rb_ary_new3(), rb_eException, rb_exc_new3(), rb_exc_raise(), rb_funcall(), rb_obj_class(), rb_obj_is_kind_of(), rb_safe_level, rb_thread_critical, rb_thread_current(), rb_thread_wait_for(), RbTk_ALLOC_N, result, call_queue::result, call_queue::safe_level, call_queue::thread, timeval::tv_sec, and timeval::tv_usec.

Referenced by ip_create_console(), ip_create_slave(), ip_get_variable2(), ip_has_mainwindow_p(), ip_make_menu_embeddable(), ip_make_safe(), ip_set_variable2(), ip_unset_variable2(), lib_num_of_mainwindows(), and lib_restart().

static VALUE TkStringValue | ( | VALUE | obj) |  |
| static

Definition at line 3157 of file tcltklib.c.

References rb_funcall(), rb_respond_to(), rb_str_new2, T_ARRAY, T_FALSE, T_NIL, T_STRING, T_TRUE, and TYPE.

Referenced by tcl_protect_core().

static int trap_check | ( | int * | check_var) |  |
| static

Definition at line 2143 of file tcltklib.c.

References DUMP1, NULL, rb_thread_check_ints(), rb_thread_check_trap_pending(), and rb_trap_exec().

static int update_encoding_table | ( | VALUE | table,
|  | VALUE | interp,
|  | VALUE | error_mode
| ) |  |
| static

Definition at line 10145 of file tcltklib.c.

References create_dummy_encoding_for_tk_core(), deleted_ip(), enc_list(), get_ip(), i, tcltkip::ip, NIL_P, Qnil, rb_enc_find_index(), rb_enc_from_encoding(), rb_enc_from_index(), rb_hash_aset(), rb_hash_lookup, rb_obj_freeze(), rb_str_new2, StringValueCStr, Tcl_DecrRefCount, and Tcl_IncrRefCount.

Referenced by encoding_table_get_name_core().

static char* VwaitVarProc | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | char * | name1,
|  | char * | name2,
|  | int | flags
| ) |  |
| static

Definition at line 4202 of file tcltklib.c.

References NULL.

Referenced by ip_rb_threadUpdateCommand(), and ip_rbVwaitCommand().

static char* WaitVariableProc | ( | ClientData | clientData,
|  | Tcl_Interp * | interp,
|  | char * | name1,
|  | char * | name2,
|  | int | flags
| ) |  |
| static

Definition at line 4417 of file tcltklib.c.

References NULL.

Referenced by ip_rbTkWaitCommand(), and ip_rbVwaitCommand().

static void WaitVisibilityProc | ( | ClientData | clientData,
|  | XEvent * | eventPtr
| ) |  |
| static

Definition at line 4433 of file tcltklib.c.

Referenced by ip_rbTkWaitCommand().

static void WaitWindowProc | ( | ClientData | clientData,
|  | XEvent * | eventPtr
| ) |  |
| static

Definition at line 4449 of file tcltklib.c.

Referenced by ip_rbTkWaitCommand().

static VALUE watchdog_evloop_launcher | ( | VALUE | check_rootwidget) |  |
| static

Definition at line 2781 of file tcltklib.c.

References lib_eventloop_launcher(), NULL, and RTEST.

Referenced by lib_watchdog_core().

## Variable Documentation

int at_exit = 0
| static

Definition at line 185 of file tcltklib.c.

Referenced by ruby_vm_at_exit().

int check_rootwidget_flag = 0
| static

Definition at line 538 of file tcltklib.c.

VALUE cRubyEncoding
| static

Definition at line 188 of file tcltklib.c.

Tcl_Interp* current_interp

Definition at line 480 of file tcltklib.c.

VALUE eLocalJumpError
| static

Definition at line 213 of file tcltklib.c.

int ENCODING_INDEX_BINARY
| static

Definition at line 192 of file tcltklib.c.

Referenced by create_encoding_table_core().

int ENCODING_INDEX_UTF8
| static

Definition at line 191 of file tcltklib.c.

Referenced by create_encoding_table_core().

VALUE ENCODING_NAME_BINARY
| static

Definition at line 195 of file tcltklib.c.

VALUE ENCODING_NAME_UTF8
| static

Definition at line 194 of file tcltklib.c.

VALUE eTkCallbackBreak
| static

Definition at line 210 of file tcltklib.c.

Referenced by tcl_protect_core().

VALUE eTkCallbackContinue
| static

Definition at line 211 of file tcltklib.c.

Referenced by tcl_protect_core().

VALUE eTkCallbackRedo
| static

Definition at line 217 of file tcltklib.c.

VALUE eTkCallbackRetry
| static

Definition at line 216 of file tcltklib.c.

VALUE eTkCallbackReturn
| static

Definition at line 209 of file tcltklib.c.

Referenced by tcl_protect_core().

VALUE eTkCallbackThrow
| static

Definition at line 218 of file tcltklib.c.

VALUE eTkLocalJumpError
| static

Definition at line 215 of file tcltklib.c.

int event_loop_abort_on_exc = 1
| static

Definition at line 535 of file tcltklib.c.

int event_loop_max = DEFAULT_EVENT_LOOP_MAX
| static

Definition at line 527 of file tcltklib.c.

Referenced by lib_eventloop_core().

int event_loop_wait_event = 0
| static

Definition at line 534 of file tcltklib.c.

Tcl_Interp* eventloop_interp
| static

Definition at line 471 of file tcltklib.c.

VALUE eventloop_stack
| static

Definition at line 475 of file tcltklib.c.

VALUE eventloop_thread
| static

Definition at line 470 of file tcltklib.c.

Referenced by lib_eventloop_core(), lib_eventloop_launcher(), and tk_funcall().

const char finalize_hook_name[] = "INTERP_FINALIZE_HOOK"
| static

Definition at line 181 of file tcltklib.c.

int have_rb_thread_waiting_for_value = 0
| static

Definition at line 499 of file tcltklib.c.

ID ID_alive_p
| static

Definition at line 229 of file tcltklib.c.

ID ID_at_enc
| static

Definition at line 222 of file tcltklib.c.

ID ID_at_interp
| static

Definition at line 223 of file tcltklib.c.

ID ID_at_reason
| static

Definition at line 238 of file tcltklib.c.

ID ID_backtrace
| static

Definition at line 235 of file tcltklib.c.

ID ID_break
| static

Definition at line 240 of file tcltklib.c.

ID ID_call
| static

Definition at line 234 of file tcltklib.c.

ID ID_encoding_name
| static

Definition at line 225 of file tcltklib.c.

ID ID_encoding_table
| static

Definition at line 226 of file tcltklib.c.

ID ID_inspect
| static

Definition at line 244 of file tcltklib.c.

ID ID_join
| static

Definition at line 231 of file tcltklib.c.

ID ID_kill
| static

Definition at line 230 of file tcltklib.c.

ID ID_message
| static

Definition at line 236 of file tcltklib.c.

ID ID_next
| static

Definition at line 241 of file tcltklib.c.

ID ID_return
| static

Definition at line 239 of file tcltklib.c.

ID ID_stop_p
| static

Definition at line 228 of file tcltklib.c.

ID ID_to_s
| static

Definition at line 243 of file tcltklib.c.

ID ID_value
| static

Definition at line 232 of file tcltklib.c.

int loop_counter = 0
| static

Definition at line 536 of file tcltklib.c.

Referenced by lib_watchdog_core().

int major

Definition at line 109 of file tcltklib.c.

Referenced by foletypelib_major_version(), foletypelib_version(), libyaml_version(), marshal_load(), rb_stat_dev_major(), rb_stat_rdev_major(), start_document(), and yaml_parser_scan_directive().

int minor

Definition at line 110 of file tcltklib.c.

Referenced by foletypelib_minor_version(), foletypelib_version(), libyaml_version(), marshal_load(), rb_stat_dev_minor(), rb_stat_rdev_minor(), start_document(), and yaml_parser_scan_directive().

int no_event_tick = DEFAULT_NO_EVENT_TICK
| static

Definition at line 528 of file tcltklib.c.

Referenced by lib_eventloop_core().

int no_event_wait = DEFAULT_NO_EVENT_WAIT
| static

Definition at line 529 of file tcltklib.c.

Referenced by lib_eventloop_core().

int patchlevel

Definition at line 112 of file tcltklib.c.

int rb_thread_critical
| static

Definition at line 23 of file tcltklib.c.

Referenced by _timer_for_tcl(), alloc_invoke_arguments(), call_original_exit(), delete_slaves(), ip_CallWhenDeleted(), ip_create_slave_core(), ip_delete(), ip_eval(), ip_eval_real(), ip_finalize(), ip_free(), ip_get_variable2_core(), ip_invoke_core(), ip_invoke_with_position(), ip_rb_threadTkWaitCommand(), ip_rb_threadVwaitCommand(), ip_rbTkWaitCommand(), ip_rbVwaitCommand(), ip_ruby_cmd(), ip_ruby_cmd_core(), ip_ruby_eval(), ip_set_exc_message(), ip_set_variable2_core(), lib_conv_listelement(), lib_eventloop_core(), lib_eventloop_ensure(), lib_eventloop_launcher(), lib_fromUTF8_core(), lib_merge_tklist(), lib_restart_core(), lib_split_tklist_core(), lib_toUTF8_core(), lib_UTF_backslash_core(), pending_exception_check1(), set_eventloop_tick(), tcl_protect_core(), and tk_funcall().

int rbtk_eventloop_depth = 0
| static

Definition at line 1376 of file tcltklib.c.

Referenced by lib_eventloop_core(), lib_eventloop_ensure(), lib_eventloop_launcher(), pending_exception_check0(), and pending_exception_check1().

int rbtk_internal_eventloop_handler = 0
| static

Definition at line 1377 of file tcltklib.c.

Referenced by call_queue_handler(), eval_queue_handler(), invoke_queue_handler(), pending_exception_check0(), and pending_exception_check1().

VALUE rbtk_pending_exception
| static

Definition at line 1375 of file tcltklib.c.

Referenced by Init_tcltklib(), ip_eval_real(), ip_invoke_core(), ip_rb_threadTkWaitCommand(), ip_rb_threadUpdateCommand(), ip_rb_threadVwaitCommand(), ip_rbTkWaitCommand(), ip_rbUpdateCommand(), ip_rbVwaitCommand(), ip_ruby_cmd(), ip_ruby_eval(), ip_RubyExitCommand(), lib_eventloop_core(), lib_eventloop_main(), lib_thread_callback(), pending_exception_check0(), pending_exception_check1(), and tcl_protect_core().

int req_timer_tick = DEFAULT_TIMER_TICK
| static

Definition at line 531 of file tcltklib.c.

Referenced by lib_eventloop_core().

int run_timer_flag = 0
| static

Definition at line 532 of file tcltklib.c.

int* tclDummyMathPtr = (int *) matherr

Definition at line 395 of file tcltklib.c.

struct { ... } tcltk_version

Referenced by lib_get_reltype_name(), lib_getversion(), and set_tcltk_version().

VALUE tcltkip_class
| static

Definition at line 220 of file tcltklib.c.

const char tcltklib_release_date[] = TCLTKLIB_RELEASE_DATE
| static

Definition at line 178 of file tcltklib.c.

int timer_tick = DEFAULT_TIMER_TICK
| static

Definition at line 530 of file tcltklib.c.

Tcl_TimerToken timer_token = (Tcl_TimerToken)NULL
| static

Definition at line 1606 of file tcltklib.c.

Referenced by _timer_for_tcl(), lib_eventloop_core(), lib_eventloop_ensure(), and set_eventloop_tick().

int type

Definition at line 111 of file tcltklib.c.

Referenced by callback(), check_type_tree(), compile_length_tree(), compile_tree(), count_objects(), count_objects_size(), defined_expr(), find_iid(), fixup_nodes(), fole_type(), function_call(), generic_to_value(), get_head_value_node(), init_inetsock_internal(), initialize(), insn_data_to_s_detail(), insn_operand_intern(), int_to_ffi_type(), invoke_block_from_c(), iow_inspect(), iseq_build_from_ary_exception(), iseq_compile_each(), iseq_data_to_ary(), iseq_load(), iseq_set_sequence(), method_entry_i(), next_setup(), node_new_ctype(), node_new_enclose(), ole_method_invoke_kind(), ole_method_return_type(), ole_method_return_type_detail(), ole_ole_type(), ole_param_ole_type(), ole_ptrtype2val(), ole_type_from_itypeinfo(), ole_type_impl_ole_types(), ole_types_from_typelib(), ole_usertype2val(), ole_variable_ole_type(), ole_variable_ole_type_detail(), onig_node_new_anchor(), optimize_node_left(), ossl_digest_initialize(), ossl_pkcs7_set_type(), ossl_x509name_add_entry(), pack_pack(), pack_unpack(), prepare_iseq_build(), r_object0(), r_symbol(), range_op(), rb_add_method(), rb_data_typed_object_alloc(), rb_dlcfunc_initialize(), rb_dlcfunc_new(), rb_enc_symname_type(), rb_feature_p(), rb_method_entry_set(), rb_search_method_entry(), rb_str_symname_type(), rsock_init_inetsock(), search_required(), set_relation(), setup_subexp_call(), setup_tree(), singleton_class_of(), sock_initialize(), st_init_table_with_size(), subexp_inf_recursive_check(), subexp_inf_recursive_check_trav(), subexp_recursive_check_trav(), tcl_protect_core(), type2sym(), typeinfo_from_ole(), vm_exec(), vm_invoke_block(), and vm_push_frame().

VALUE watchdog_thread
| static

Definition at line 478 of file tcltklib.c.

int window_event_mode = ~0
| static

Definition at line 476 of file tcltklib.c.