|
Ruby
2.7.2p137(2020-10-01revision5445e0435260b449decf2ac16f9d09bae3cafe72)
|
#include "ruby/ruby.h"#include "vm_core.h"#include <stdio.h>#include <setjmp.h>#include <sys/types.h>#include <signal.h>#include <errno.h>#include <sys/stat.h>Go to the source code of this file.
Macros | |
| #define | PASS_PASSED_BLOCK_HANDLER_EC(ec) pass_passed_block_handler(ec) |
| #define | PASS_PASSED_BLOCK_HANDLER() pass_passed_block_handler(GET_EC()) |
| #define | EXIT_SUCCESS 0 |
| #define | EXIT_FAILURE 1 |
| #define | ruby_setjmp(env) RUBY_SETJMP(env) |
| #define | ruby_longjmp(env, val) RUBY_LONGJMP((env),(val)) |
| #define | SAVE_ROOT_JMPBUF_BEFORE_STMT |
| #define | SAVE_ROOT_JMPBUF_AFTER_STMT |
| #define | SAVE_ROOT_JMPBUF(th, stmt) |
| #define | EC_PUSH_TAG(ec) |
| #define | EC_POP_TAG() |
| #define | EC_TMPPOP_TAG() _ec->tag = _tag.prev |
| #define | EC_REPUSH_TAG() (void)(_ec->tag = &_tag) |
| #define | VAR_FROM_MEMORY(var) (var) |
| #define | VAR_INITIALIZED(var) ((void)&(var)) |
| #define | VAR_NOCLOBBERED(var) var |
| #define | EC_EXEC_TAG() (ruby_setjmp(_tag.buf) ? rb_ec_tag_state(VAR_FROM_MEMORY(_ec)) : (EC_REPUSH_TAG(), 0)) |
| #define | EC_JUMP_TAG(ec, st) rb_ec_tag_jump(ec, st) |
| #define | INTERNAL_EXCEPTION_P(exc) FIXNUM_P(exc) |
| #define | CREF_FL_PUSHED_BY_EVAL IMEMO_FL_USER1 |
| #define | CREF_FL_OMOD_SHARED IMEMO_FL_USER2 |
| #define | rb_ec_raised_set(ec, f) ((ec)->raised_flag |= (f)) |
| #define | rb_ec_raised_reset(ec, f) ((ec)->raised_flag &= ~(f)) |
| #define | rb_ec_raised_p(ec, f) (((ec)->raised_flag & (f)) != 0) |
| #define | rb_ec_raised_clear(ec) ((ec)->raised_flag = 0) |
| #define | CharNext(p) ((p) + 1) |
| #define CharNext | ( | p | ) | ((p) + 1) |
Definition at line 296 of file eval_intern.h.
| #define CREF_FL_OMOD_SHARED IMEMO_FL_USER2 |
Definition at line 191 of file eval_intern.h.
| #define CREF_FL_PUSHED_BY_EVAL IMEMO_FL_USER1 |
Definition at line 190 of file eval_intern.h.
| #define EC_EXEC_TAG | ( | ) | (ruby_setjmp(_tag.buf) ? rb_ec_tag_state(VAR_FROM_MEMORY(_ec)) : (EC_REPUSH_TAG(), 0)) |
Definition at line 181 of file eval_intern.h.
| #define EC_JUMP_TAG | ( | ec, | |
| st | |||
| ) | rb_ec_tag_jump(ec, st) |
Definition at line 184 of file eval_intern.h.
| #define EC_POP_TAG | ( | ) |
Definition at line 137 of file eval_intern.h.
| #define EC_PUSH_TAG | ( | ec | ) |
| #define EC_REPUSH_TAG | ( | ) | (void)(_ec->tag = &_tag) |
Definition at line 144 of file eval_intern.h.
| #define EC_TMPPOP_TAG | ( | ) | _ec->tag = _tag.prev |
Definition at line 141 of file eval_intern.h.
| #define EXIT_FAILURE 1 |
Definition at line 32 of file eval_intern.h.
| #define EXIT_SUCCESS 0 |
Definition at line 29 of file eval_intern.h.
| #define INTERNAL_EXCEPTION_P | ( | exc | ) | FIXNUM_P(exc) |
Definition at line 186 of file eval_intern.h.
| #define PASS_PASSED_BLOCK_HANDLER | ( | ) | pass_passed_block_handler(GET_EC()) |
Definition at line 23 of file eval_intern.h.
| #define PASS_PASSED_BLOCK_HANDLER_EC | ( | ec | ) | pass_passed_block_handler(ec) |
Definition at line 22 of file eval_intern.h.
| #define rb_ec_raised_clear | ( | ec | ) | ((ec)->raised_flag = 0) |
Definition at line 261 of file eval_intern.h.
Definition at line 260 of file eval_intern.h.
Definition at line 259 of file eval_intern.h.
Definition at line 258 of file eval_intern.h.
Definition at line 59 of file eval_intern.h.
Definition at line 58 of file eval_intern.h.
| #define SAVE_ROOT_JMPBUF | ( | th, | |
| stmt | |||
| ) |
Definition at line 120 of file eval_intern.h.
| #define SAVE_ROOT_JMPBUF_AFTER_STMT |
Definition at line 117 of file eval_intern.h.
| #define SAVE_ROOT_JMPBUF_BEFORE_STMT |
Definition at line 116 of file eval_intern.h.
| #define VAR_FROM_MEMORY | ( | var | ) | (var) |
Definition at line 155 of file eval_intern.h.
| #define VAR_INITIALIZED | ( | var | ) | ((void)&(var)) |
Definition at line 156 of file eval_intern.h.
| #define VAR_NOCLOBBERED | ( | var | ) | var |
Definition at line 157 of file eval_intern.h.
| anonymous enum |
Definition at line 253 of file eval_intern.h.
| NORETURN | ( | static inline void | rb_ec_tag_jumpconst rb_execution_context_t *ec, enum ruby_tag_type st | ) |
| NORETURN | ( | void | rb_fiber_startvoid | ) |
| NORETURN | ( | void | rb_method_name_errorVALUE, VALUE | ) |
| NORETURN | ( | void | rb_print_undefVALUE, ID, rb_method_visibility_t | ) |
| NORETURN | ( | void | rb_vm_localjump_errorconst char *, VALUE, int | ) |
| VALUE rb_ec_backtrace_location_ary | ( | const rb_execution_context_t * | ec, |
| long | lev, | ||
| long | n | ||
| ) |
Definition at line 720 of file vm_backtrace.c.
| VALUE rb_ec_backtrace_object | ( | const rb_execution_context_t * | ec | ) |
Definition at line 557 of file vm_backtrace.c.
References bt_iter_arg::prev_loc.
| VALUE rb_ec_backtrace_str_ary | ( | const rb_execution_context_t * | ec, |
| long | lev, | ||
| long | n | ||
| ) |
Definition at line 714 of file vm_backtrace.c.
Referenced by rb_make_backtrace().
| int rb_ec_reset_raised | ( | rb_execution_context_t * | ec | ) |
Definition at line 2354 of file thread.c.
References RAISED_EXCEPTION, and rb_execution_context_struct::raised_flag.
| int rb_ec_set_raised | ( | rb_execution_context_t * | ec | ) |
Definition at line 2344 of file thread.c.
References RAISED_EXCEPTION, and rb_execution_context_struct::raised_flag.
| int rb_ec_stack_check | ( | rb_execution_context_t * | ec | ) |
Definition at line 1670 of file vm_eval.c.
References argc, argv, NIL_P, NUM2INT, Qundef, rb_scan_args(), SafeStringValue, and StringValue.
Referenced by Init_vm_eval().
| void rb_thread_terminate_all | ( | void | ) |
Definition at line 559 of file thread.c.
References rb_thread_struct::ec, EC_EXEC_TAG, EC_PUSH_TAG, GET_THREAD, rb_vm_struct::main_thread, rb_bug(), rb_threadptr_unlock_all_locking_mutexes(), TAG_NONE, thread_debug, and rb_thread_struct::vm.
| VALUE rb_vm_call_cfunc | ( | VALUE | recv, |
| VALUE(*)(VALUE) | func, | ||
| VALUE | arg, | ||
| VALUE | block_handler, | ||
| VALUE | filename | ||
| ) |
Definition at line 2212 of file vm.c.
References rb_execution_context_struct::cfp, GET_EC, Qnil, and rb_iseq_new().
| VALUE rb_vm_cbase | ( | void | ) |
Definition at line 1425 of file vm.c.
References rb_execution_context_struct::cfp, GET_EC, rb_eRuntimeError, rb_raise(), and rb_vm_get_ruby_level_next_cfp().
| rb_cref_t* rb_vm_cref_replace_with_duplicated_cref | ( | void | ) |
Definition at line 1391 of file vm.c.
References rb_execution_context_struct::cfp, GET_EC, and rb_vm_get_ruby_level_next_cfp().
Definition at line 1478 of file vm.c.
References GET_EC, Qnil, Qundef, TAG_BREAK, TAG_NEXT, TAG_REDO, TAG_RETRY, and TAG_RETURN.
Referenced by rb_fiber_start(), and rb_vm_jump_tag_but_local_jump().
| void rb_vm_set_progname | ( | VALUE | filename | ) |
Definition at line 3289 of file vm.c.
References rb_thread_struct::ec, GET_VM, rb_control_frame_struct::iseq, rb_iseq_pathobj_set(), rb_iseq_realpath(), rb_str_dup(), rb_execution_context_struct::vm_stack, and rb_execution_context_struct::vm_stack_size.
Referenced by ruby_set_script_name().
Referenced by rb_feature_provided(), and ruby_init_loadpath().