Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals

Eval
[Ruby]


Defines

#define rb_disable_super(klass, name)   ((void)0)
#define rb_enable_super(klass, name)   ((void)0)
#define HAVE_RB_DEFINE_ALLOC_FUNC   1

Functions

void ruby_set_current_source (void)
void rb_exc_raise (VALUE)
void rb_exc_fatal (VALUE)
VALUE rb_f_exit (int, VALUE *)
VALUE rb_f_abort (int, VALUE *)
void rb_remove_method (VALUE, const char *)
void rb_define_alloc_func (VALUE, VALUE(*(VALUE)))
void rb_undef_alloc_func (VALUE)
void rb_clear_cache (void)
void rb_clear_cache_by_class (VALUE)
void rb_alias (VALUE, ID, ID)
void rb_attr (VALUE, ID, int, int, int)
int rb_method_boundp (VALUE, ID, int)
VALUE rb_dvar_defined (ID)
VALUE rb_dvar_curr (ID)
VALUE rb_dvar_ref (ID)
void rb_dvar_asgn (ID, VALUE)
void rb_dvar_push (ID, VALUE)
VALUErb_svar (int)
VALUE rb_eval_cmd (VALUE, VALUE, int)
int rb_respond_to (VALUE, ID)
void rb_interrupt (void)
VALUE rb_apply (VALUE, ID, VALUE)
void rb_backtrace (void)
ID rb_frame_last_func (void)
VALUE rb_obj_instance_eval (int, VALUE *, VALUE)
VALUE rb_mod_module_eval (int, VALUE *, VALUE)
void rb_load (VALUE, int)
void rb_load_protect (VALUE, int, int *)
void rb_jump_tag (int)
int rb_provided (const char *)
void rb_provide (const char *)
VALUE rb_f_require (VALUE, VALUE)
VALUE rb_require_safe (VALUE, int)
void rb_obj_call_init (VALUE, int, VALUE *)
VALUE rb_class_new_instance (int, VALUE *, VALUE)
VALUE rb_block_proc (void)
VALUE rb_f_lambda (void)
VALUE rb_proc_new (VALUE(*(ANYARGS), VALUE))
VALUE rb_protect (VALUE(*(VALUE), VALUE, int *))
void rb_set_end_proc (void(*(VALUE), VALUE))
void rb_mark_end_proc (void)
void rb_exec_end_proc (void)
void ruby_finalize (void)
void ruby_stop (int)
int ruby_cleanup (int)
int ruby_exec (void)
void rb_gc_mark_threads (void)
void rb_thread_start_timer (void)
void rb_thread_stop_timer (void)
void rb_thread_schedule (void)
void rb_thread_wait_fd (int)
int rb_thread_fd_writable (int)
void rb_thread_fd_close (int)
int rb_thread_alone (void)
void rb_thread_polling (void)
void rb_thread_sleep (int)
void rb_thread_sleep_forever (void)
VALUE rb_thread_stop (void)
VALUE rb_thread_wakeup (VALUE)
VALUE rb_thread_run (VALUE)
VALUE rb_thread_kill (VALUE)
VALUE rb_thread_create (VALUE(*(ANYARGS), void *))
void rb_thread_interrupt (void)
void rb_thread_trap_eval (VALUE, int)
void rb_thread_signal_raise (char *)
int rb_thread_select (ANYARGS)
void rb_thread_wait_for (ANYARGS)
VALUE rb_thread_current (void)
VALUE rb_thread_main (void)
VALUE rb_thread_local_aref (VALUE, ID)
VALUE rb_thread_local_aset (VALUE, ID, VALUE)
void rb_thread_atfork (void)

Variables

RUBY_EXTERN struct RNoderuby_current_node


Define Documentation

#define HAVE_RB_DEFINE_ALLOC_FUNC   1
 

Definition at line 164 of file intern.h.

#define rb_disable_super klass,
name   )     ((void)0)
 

Definition at line 162 of file intern.h.

#define rb_enable_super klass,
name   )     ((void)0)
 

Definition at line 163 of file intern.h.


Function Documentation

void rb_alias VALUE  ,
ID  ,
ID 
 

Definition at line 2065 of file eval.c.

References added, FL_SINGLETON, FL_TEST, ID, ID2SYM, name, nd_type, NEW_FBODY, NEW_METHOD, NODE, NODE_FBODY, print_undef(), rb_clear_cache_by_id(), rb_cObject, rb_frozen_class_p(), rb_funcall(), rb_id2name(), rb_iv_get(), rb_secure(), rb_warning(), RCLASS, RTEST, ruby_verbose, search_method(), singleton_added, st_data_t, st_insert(), st_lookup(), T_MODULE, TYPE, and VALUE.

Referenced by rb_define_alias(), rb_eval(), and rb_mod_alias_method().

VALUE rb_apply VALUE  ,
ID  ,
VALUE 
 

Definition at line 5935 of file eval.c.

References ALLOCA_N, args, CLASS_OF, ID, MEMCPY, RARRAY, rb_call(), and VALUE.

void rb_attr VALUE  ,
ID  ,
int  ,
int  ,
int 
 

Definition at line 652 of file eval.c.

References ALLOCA_N, ID, name, NEW_ATTRSET, NEW_IVAR, NOEX_PRIVATE, NOEX_PROTECTED, NOEX_PUBLIC, rb_add_method(), rb_eArgError, rb_id2name(), rb_id_attrset(), rb_intern(), rb_is_const_id(), rb_is_local_id(), rb_name_error(), rb_raise(), rb_warning(), SCOPE_MODFUNC, SCOPE_PRIVATE, SCOPE_PROTECTED, SCOPE_TEST, scope_vmode, snprintf(), and VALUE.

Referenced by rb_define_attr(), rb_mod_attr(), rb_mod_attr_accessor(), rb_mod_attr_reader(), and rb_mod_attr_writer().

void rb_backtrace void   ) 
 

Definition at line 6202 of file eval.c.

References backtrace(), RARRAY, RSTRING, and VALUE.

VALUE rb_block_proc void   ) 
 

Definition at line 8309 of file eval.c.

References proc_alloc(), Qfalse, and rb_cProc.

Referenced by define_final(), mproc(), rb_eval(), rb_f_at_exit(), rb_f_END(), rb_f_trace_var(), rb_hash_initialize(), rb_scan_args(), and sig_trap().

VALUE rb_class_new_instance int  ,
VALUE ,
VALUE 
 

Definition at line 1599 of file object.c.

References rb_obj_alloc(), rb_obj_call_init(), and VALUE.

Referenced by Init_Exception(), Init_Object(), Init_Regexp(), Init_Time(), io_new_instance(), make_struct(), process_sflag(), rb_io_s_new(), rb_io_s_open(), rb_method_missing(), rb_name_error(), rb_reg_s_union(), rb_struct_alloc(), rb_struct_new(), rb_sys_fail(), rb_thread_signal_exit(), and terminate_process().

void rb_clear_cache void   ) 
 

Definition at line 304 of file eval.c.

References cache, CACHE_SIZE, end, and ruby_running.

Referenced by rb_include_module().

void rb_clear_cache_by_class VALUE   ) 
 

Definition at line 350 of file eval.c.

References cache, CACHE_SIZE, end, ruby_running, and VALUE.

Referenced by obj_free(), and set_method_visibility().

void rb_define_alloc_func VALUE  ,
VALUE(*(VALUE)) 
 

Referenced by Init_Array(), Init_File(), Init_Hash(), Init_IO(), Init_Object(), Init_Regexp(), Init_String(), Init_Thread(), Init_Time(), and make_struct().

void rb_dvar_asgn ID  ,
VALUE 
 

VALUE rb_dvar_curr ID   ) 
 

Definition at line 833 of file eval.c.

References ID, Qfalse, Qtrue, and ruby_dyna_vars.

Referenced by assignable().

VALUE rb_dvar_defined ID   ) 
 

Definition at line 820 of file eval.c.

References ID, Qfalse, Qtrue, and ruby_dyna_vars.

Referenced by assignable(), and gettable().

void rb_dvar_push ID  ,
VALUE 
 

Definition at line 862 of file eval.c.

References ID, new_dvar(), ruby_dyna_vars, and VALUE.

Referenced by assignable(), dyna_push(), local_push(), and rb_thread_yield().

VALUE rb_dvar_ref ID   ) 
 

Definition at line 847 of file eval.c.

References ID, Qnil, ruby_dyna_vars, and RVarmap::val.

Referenced by rb_eval().

VALUE rb_eval_cmd VALUE  ,
VALUE  ,
int 
 

Definition at line 1752 of file eval.c.

References cmd, eval(), EXEC_TAG, SCOPE::flags, ITER_NOT, JUMP_TAG, jump_tag_but_local_jump(), FRAME::last_class, FRAME::last_func, OBJ_TAINTED, FRAME::orig_func, POP_FRAME, POP_ITER, POP_TAG, PROT_NONE, PUSH_CREF, PUSH_FRAME, PUSH_ITER, PUSH_TAG, Qnil, RARRAY, rb_cObject, rb_funcall2(), rb_intern(), ruby_frame, ruby_safe_level, ruby_scope, ruby_top_self, ruby_wrapper, safe, SCOPE_DONT_RECYCLE, scope_dup(), FRAME::self, T_STRING, top_scope, TYPE, and VALUE.

Referenced by rb_trace_eval(), rb_trap_exit(), run_single_final(), and run_trap_eval().

void rb_exc_fatal VALUE   ) 
 

This function does not return.

Definition at line 4533 of file eval.c.

References rb_longjmp(), TAG_FATAL, and VALUE.

Referenced by rb_fatal().

void rb_exc_raise VALUE   ) 
 

This function does not return.

Definition at line 4526 of file eval.c.

References rb_longjmp(), TAG_RAISE, and VALUE.

Referenced by compile_error(), eval(), localjump_error(), process_sflag(), rb_load(), rb_loaderror(), rb_memerror(), rb_method_missing(), rb_name_error(), rb_raise(), rb_sys_fail(), rb_thread_deadlock(), rb_thread_join(), rb_thread_switch(), stack_check(), and terminate_process().

void rb_exec_end_proc void   ) 
 

VALUE rb_f_abort int  ,
VALUE
 

Definition at line 4428 of file eval.c.

References error_print(), EXIT_FAILURE, NIL_P, Qnil, rb_exit(), rb_io_puts(), rb_scan_args(), rb_secure(), rb_stderr, ruby_errinfo, StringValue, terminate_process(), and VALUE.

Referenced by Init_eval(), and Init_process().

VALUE rb_f_exit int  ,
VALUE
 

Definition at line 4384 of file eval.c.

References EXIT_FAILURE, EXIT_SUCCESS, NUM2INT, Qfalse, Qnil, Qtrue, rb_exit(), rb_scan_args(), rb_secure(), and VALUE.

Referenced by Init_eval(), and Init_process().

VALUE rb_f_lambda void   ) 
 

Definition at line 8315 of file eval.c.

References proc_alloc(), Qtrue, rb_cProc, and rb_warn().

VALUE rb_f_require VALUE  ,
VALUE 
 

Definition at line 6927 of file eval.c.

References rb_require_safe(), ruby_safe_level, and VALUE.

Referenced by Init_load().

ID rb_frame_last_func void   ) 
 

Definition at line 6220 of file eval.c.

References FRAME::last_func, and ruby_frame.

Referenced by env_indexes(), rb_ary_indexes(), and rb_hash_indexes().

void rb_gc_mark_threads void   ) 
 

Definition at line 9987 of file eval.c.

References curr_thread, END_FOREACH_FROM, FOREACH_THREAD_FROM, main_thread, rb_gc_mark(), rb_thread_t, ruby_cref, thread::thread, and VALUE.

Referenced by garbage_collect().

void rb_interrupt void   ) 
 

Definition at line 4540 of file eval.c.

References rb_eInterrupt, and rb_raise().

Referenced by rb_thread_interrupt(), and rb_thread_switch().

void rb_jump_tag int   ) 
 

This function does not return.

Definition at line 4639 of file eval.c.

References JUMP_TAG.

Referenced by rb_io_s_pipe(), and require_libraries().

void rb_load VALUE  ,
int 
 

Definition at line 6654 of file eval.c.

References ALLOW_INTS, DEFER_INTS, eval_node(), EXEC_TAG, SCOPE::flags, free, ID, ITER_NOT, jump_tag_but_local_jump(), FRAME::last_class, FRAME::last_func, load_failed(), SCOPE::local_tbl, NEW_NEWLINE, NIL_P, NODE, POP_CLASS, POP_FRAME, POP_ITER, POP_SCOPE, POP_TAG, POP_VARS, PROT_NONE, PUSH_CLASS, PUSH_CREF, PUSH_FRAME, PUSH_ITER, PUSH_SCOPE, PUSH_TAG, PUSH_VARS, Qnil, Qtrue, Qundef, rb_cObject, rb_exc_raise(), rb_extend_object(), rb_find_file(), rb_load_file(), rb_module_new(), rb_obj_clone(), rb_prohibit_interrupt, rb_secure(), rb_str_new4(), rb_thread_critical, RSTRING, ruby_class, ruby_cref, ruby_current_node, ruby_errinfo, ruby_eval_tree, ruby_frame, ruby_in_eval, ruby_nerrs, ruby_safe_level, ruby_scope, ruby_set_current_source(), ruby_sourcefile, ruby_top_self, ruby_wrapper, SafeStringValue, SCOPE_ALLOCA, SCOPE_PRIVATE, SCOPE_SET, FRAME::self, StringValue, TMP_PROTECT, top_cref, and VALUE.

Referenced by rb_f_load(), rb_load_protect(), and rb_require_safe().

void rb_load_protect VALUE  ,
int  ,
int * 
 

Definition at line 6757 of file eval.c.

References EXEC_TAG, POP_TAG, PROT_NONE, PUSH_TAG, rb_load(), and VALUE.

void rb_mark_end_proc void   ) 
 

Definition at line 7632 of file eval.c.

References end_procs, ephemeral_end_procs, rb_gc_mark(), and tmp_end_procs.

Referenced by garbage_collect().

int rb_method_boundp VALUE  ,
ID  ,
int 
 

Definition at line 627 of file eval.c.

References cache, EXPR1, ID, NOEX_PRIVATE, Qfalse, Qtrue, rb_get_method_body(), and VALUE.

Referenced by is_defined(), obj_respond_to(), rb_mod_method_defined(), and rb_obj_respond_to().

VALUE rb_mod_module_eval int  ,
VALUE ,
VALUE 
 

Definition at line 6640 of file eval.c.

References specific_eval(), and VALUE.

Referenced by Init_eval(), rb_mod_initialize(), and rb_struct_s_def().

void rb_obj_call_init VALUE  ,
int  ,
VALUE
 

Definition at line 7407 of file eval.c.

References init, POP_ITER, PUSH_ITER, rb_block_given_p(), rb_funcall2(), and VALUE.

Referenced by proc_s_new(), rb_class_new_instance(), and rb_thread_s_new().

VALUE rb_obj_instance_eval int  ,
VALUE ,
VALUE 
 

Definition at line 6599 of file eval.c.

References FIXNUM_P, Qnil, rb_singleton_class(), specific_eval(), SYMBOL_P, and VALUE.

Referenced by Init_eval().

VALUE rb_proc_new VALUE(*(ANYARGS), VALUE  ) 
 

VALUE rb_protect VALUE(*(VALUE), VALUE, int *)   ) 
 

Referenced by name_err_mesg_to_str(), rb_eval_string_protect(), rb_f_fork(), rb_io_s_pipe(), rb_trap_eval(), require_libraries(), and run_final().

void rb_provide const char *   ) 
 

int rb_provided const char *   ) 
 

Referenced by autoload_file(), and rb_autoload_load().

void rb_remove_method VALUE  ,
const char * 
 

Definition at line 549 of file eval.c.

References name, rb_intern(), remove_method(), and VALUE.

VALUE rb_require_safe VALUE  ,
int 
 

Definition at line 7000 of file eval.c.

References curr_thread, dln_load(), EXEC_TAG, free, ID, JUMP_TAG, FRAME::last_func, load_failed(), load_wait(), loading_tbl, LONG2NUM, NIL_P, RNode::node, NODE, OBJ_TAINTED, POP_TAG, PROT_NONE, PUSH_TAG, Qfalse, Qnil, Qtrue, rb_ary_push(), rb_check_safe_obj(), rb_load(), rb_provide_feature(), rb_source_filename(), rb_str_new4(), RSTRING, ruby_current_node, ruby_dln_librefs, ruby_errinfo, ruby_frame, ruby_safe_level, ruby_set_current_source(), ruby_sourcefile, ruby_sourceline, ruby_strdup(), safe, SCOPE_PUBLIC, SCOPE_SET, scope_vmode, search_required(), st_data_t, st_delete(), st_init_strtable(), st_insert(), StringValue, and VALUE.

Referenced by rb_autoload_load(), rb_f_require(), and rb_require().

int rb_respond_to VALUE  ,
ID 
 

Definition at line 4131 of file eval.c.

References ID, Qfalse, rb_obj_respond_to(), and VALUE.

Referenced by add_final(), convert_type(), define_final(), hash_equal(), marshal_dump(), marshal_load(), must_respond_to(), r_object0(), range_each(), range_step(), rb_ary_equal(), rb_ary_to_ary(), rb_make_exception(), rb_str_cmp_m(), rb_str_equal(), and w_object().

void rb_set_end_proc void(*(VALUE), VALUE  ) 
 

Referenced by rb_f_at_exit(), and rb_f_END().

VALUE* rb_svar int   ) 
 

Definition at line 916 of file eval.c.

References ID, SCOPE::local_tbl, SCOPE::local_vars, NULL, ruby_dyna_vars, and ruby_scope.

Referenced by rb_backref_get(), rb_backref_set(), rb_eval(), rb_lastline_get(), and rb_lastline_set().

int rb_thread_alone void   ) 
 

Definition at line 10735 of file eval.c.

References curr_thread, and thread::next.

Referenced by io_fwrite(), rb_thread_atfork(), rb_thread_flock(), and rb_waitpid().

void rb_thread_atfork void   ) 
 

Definition at line 12368 of file eval.c.

References curr_thread, END_FOREACH, FOREACH_THREAD, main_thread, thread::next, thread::prev, rb_thread_alone(), rb_thread_die(), and rb_thread_t.

Referenced by rb_f_fork().

VALUE rb_thread_create VALUE(*(ANYARGS), void *)   ) 
 

Referenced by rb_detach_process().

VALUE rb_thread_current void   ) 
 

Definition at line 10944 of file eval.c.

References curr_thread, and thread::thread.

Referenced by block_orphan(), chdir_yield(), dir_s_chdir(), get_inspect_tbl(), Init_Thread(), proc_alloc(), and rb_f_binding().

void rb_thread_fd_close int   ) 
 

Definition at line 10280 of file eval.c.

References END_FOREACH, thread::exceptfds, thread::fd, FOREACH_THREAD, rb_eIOError, rb_exc_new2(), rb_thread_raise(), rb_thread_t, thread::readfds, VALUE, WAIT_FD, thread::wait_for, WAIT_SELECT, and thread::writefds.

Referenced by io_reopen(), and rb_io_close().

int rb_thread_fd_writable int   ) 
 

Definition at line 10660 of file eval.c.

References curr_thread, thread::exceptfds, thread::fd, thread::next, Qfalse, Qtrue, rb_thread_critical, rb_thread_schedule(), thread::readfds, thread::status, THREAD_STOPPED, THREAD_TO_KILL, thread::wait_for, WAIT_SELECT, and thread::writefds.

Referenced by io_fflush(), io_fwrite(), rb_io_syswrite(), and rb_io_wait_writable().

void rb_thread_interrupt void   ) 
 

Definition at line 12041 of file eval.c.

References curr_thread, main_thread, rb_interrupt(), rb_thread_critical, rb_thread_dead(), rb_thread_ready(), rb_thread_restore_context(), RESTORE_INTERRUPT, and THREAD_SAVE_CONTEXT.

Referenced by signal_exec().

VALUE rb_thread_kill VALUE   ) 
 

Definition at line 11081 of file eval.c.

References curr_thread, EXIT_SUCCESS, main_thread, thread::next, rb_exit(), rb_secure(), rb_thread_check(), rb_thread_critical, rb_thread_ready(), rb_thread_schedule(), rb_thread_t, thread::safe, thread::status, THREAD_KILLED, THREAD_TO_KILL, and VALUE.

Referenced by Init_Thread(), rb_thread_exit(), and rb_thread_s_kill().

VALUE rb_thread_local_aref VALUE  ,
ID 
 

Definition at line 12191 of file eval.c.

References curr_thread, ID, thread::locals, Qnil, rb_eSecurityError, rb_raise(), rb_thread_check(), rb_thread_t, ruby_safe_level, st_lookup(), and VALUE.

Referenced by get_inspect_tbl(), and rb_thread_aref().

VALUE rb_thread_local_aset VALUE  ,
ID  ,
VALUE 
 

Definition at line 12239 of file eval.c.

References curr_thread, ID, thread::locals, NIL_P, OBJ_FROZEN, Qnil, rb_error_frozen(), rb_eSecurityError, rb_raise(), rb_thread_check(), rb_thread_t, ruby_safe_level, st_data_t, st_delete(), st_init_numtable(), st_insert(), and VALUE.

Referenced by get_inspect_tbl(), and rb_thread_aset().

VALUE rb_thread_main void   ) 
 

Definition at line 10960 of file eval.c.

References main_thread, and thread::thread.

Referenced by Init_Thread().

void rb_thread_polling void   ) 
 

Definition at line 11207 of file eval.c.

References curr_thread, thread::delay, thread::next, rb_thread_schedule(), thread::status, THREAD_STOPPED, timeofday(), thread::wait_for, and WAIT_TIME.

Referenced by rb_thread_flock(), and rb_waitpid().

VALUE rb_thread_run VALUE   ) 
 

Definition at line 11058 of file eval.c.

References rb_thread_critical, rb_thread_schedule(), rb_thread_wakeup(), and VALUE.

Referenced by Init_Thread().

void rb_thread_schedule void   ) 
 

Definition at line 10397 of file eval.c.

int rb_thread_select ANYARGS   ) 
 

Referenced by rb_f_select(), rb_io_wait_readable(), and rb_io_wait_writable().

void rb_thread_signal_raise char *   ) 
 

Definition at line 12058 of file eval.c.

References curr_thread, main_thread, rb_eSignal, rb_raise(), rb_thread_critical, rb_thread_dead(), rb_thread_ready(), rb_thread_restore_context(), RESTORE_SIGNAL, th_signm, and THREAD_SAVE_CONTEXT.

Referenced by signal_exec().

void rb_thread_sleep int   ) 
 

Definition at line 11218 of file eval.c.

References curr_thread, INT2FIX, thread::next, rb_thread_wait_for(), rb_time_timeval(), TRAP_BEG, and TRAP_END.

Referenced by detach_process_watcher(), pipe_open(), and