Ruby: rb_execution_context_struct Struct Reference

Ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c52d4d35cc6a173c89eda98ceffa2dcf)

Public Member Functions | Data Fields
rb_execution_context_struct Struct Reference

`#include <vm_core.h>`

## Public Member Functions
| BITFIELD (enum method_missing_reason, method_missing_reason, 8)

## Data Fields
VALUE * | vm_stack
size_t | vm_stack_size
rb_control_frame_t * | cfp
struct rb_vm_tag * | tag
struct rb_vm_protect_tag * | protect_tag
rb_atomic_t | interrupt_flag
rb_atomic_t | interrupt_mask
rb_fiber_t * | fiber_ptr
struct rb_thread_struct * | thread_ptr
struct rb_id_table * | local_storage
VALUE | local_storage_recursive_hash
VALUE | local_storage_recursive_hash_for_trace
const VALUE * | root_lep
VALUE | root_svar
rb_ensure_list_t * | ensure_list
struct rb_trace_arg_struct * | trace_arg
VALUE | errinfo
VALUE | passed_block_handler
uint8_t | raised_flag
VALUE | private_const_reference
struct {
VALUE * stack_start
VALUE * stack_end
size_t stack_maxsize
} | machine

## Detailed Description

Definition at line 854 of file vm_core.h.

## Member Function Documentation

## ◆ BITFIELD()

rb_execution_context_struct::BITFIELD | ( | enum | method_missing_reason,
|  | method_missing_reason | ,
|  | 8 |
| ) |  |

## Field Documentation

## ◆ cfp

rb_control_frame_t* rb_execution_context_struct::cfp

Definition at line 858 of file vm_core.h.

Referenced by Init_VM(), rb_binding_add_dynavars(), rb_binding_new(), rb_block_arity(), rb_block_min_max_arity(), rb_block_pair_yield_optimizable(), rb_current_realfilepath(), rb_current_receiver(), rb_debug_inspector_open(), rb_ec_clear_vm_stack(), rb_ec_frame_method_id_and_class(), rb_ec_initialize_vm_stack(), rb_exec_event_hooks(), rb_execution_context_mark(), rb_execution_context_update(), rb_frame_last_func(), rb_method_definition_set(), rb_profile_frames(), rb_protect(), rb_raise_jump(), rb_source_location(), rb_sourcefile(), rb_sourceline(), rb_threadptr_execute_interrupts(), rb_vm_call_cfunc(), rb_vm_cbase(), rb_vm_cref_in_context(), rb_vm_cref_replace_with_duplicated_cref(), rb_vm_each_stack_value(), rb_vm_lvar_exposed(), rb_vm_pop_cfunc_frame(), rb_vm_pop_frame(), rb_vm_rewind_cfp(), rb_vm_stack_to_heap(), rb_vmdebug_debug_print_post(), rb_vmdebug_debug_print_register(), rb_vmdebug_stack_dump_raw_current(), rb_vmdebug_stack_dump_th(), rb_vmdebug_thread_dump_state(), rb_vrescue2(), and rb_yield_refine_block().

## ◆ ensure_list

rb_ensure_list_t* rb_execution_context_struct::ensure_list

Definition at line 883 of file vm_core.h.

Referenced by rb_ensure().

## ◆ errinfo

VALUE rb_execution_context_struct::errinfo

Definition at line 889 of file vm_core.h.

Referenced by rb_ec_error_print(), rb_ec_get_errinfo(), rb_ec_stack_overflow(), rb_ensure(), rb_exec_event_hooks(), rb_execution_context_mark(), rb_fiber_start(), rb_memerror(), rb_postponed_job_flush(), rb_ractor_atexit_exception(), rb_throw_obj(), rb_vrescue2(), and vm_exec().

## ◆ fiber_ptr

rb_fiber_t* rb_execution_context_struct::fiber_ptr

Definition at line 870 of file vm_core.h.

Referenced by rb_fiber_reset_root_local_storage(), rb_fiber_start(), rb_threadptr_root_fiber_release(), rb_threadptr_root_fiber_setup(), and rb_threadptr_root_fiber_terminate().

## ◆ interrupt_flag

rb_atomic_t rb_execution_context_struct::interrupt_flag

Definition at line 864 of file vm_core.h.

## ◆ interrupt_mask

rb_atomic_t rb_execution_context_struct::interrupt_mask

Definition at line 865 of file vm_core.h.

Referenced by rb_postponed_job_flush().

## ◆ local_storage

struct rb_id_table* rb_execution_context_struct::local_storage

Definition at line 874 of file vm_core.h.

Referenced by rb_execution_context_mark(), and rb_fiber_reset_root_local_storage().

## ◆ local_storage_recursive_hash

VALUE rb_execution_context_struct::local_storage_recursive_hash

Definition at line 875 of file vm_core.h.

Referenced by rb_exec_event_hooks(), and rb_execution_context_mark().

## ◆ local_storage_recursive_hash_for_trace

VALUE rb_execution_context_struct::local_storage_recursive_hash_for_trace

Definition at line 876 of file vm_core.h.

Referenced by rb_exec_event_hooks(), and rb_execution_context_mark().

## ◆

struct { ... } rb_execution_context_struct::machine

Referenced by Init_Cont(), and rb_execution_context_mark().

## ◆ passed_block_handler

VALUE rb_execution_context_struct::passed_block_handler

Definition at line 890 of file vm_core.h.

## ◆ private_const_reference

VALUE rb_execution_context_struct::private_const_reference

Definition at line 897 of file vm_core.h.

Referenced by rb_execution_context_mark().

## ◆ protect_tag

struct rb_vm_protect_tag* rb_execution_context_struct::protect_tag

Definition at line 861 of file vm_core.h.

Referenced by rb_protect().

## ◆ raised_flag

uint8_t rb_execution_context_struct::raised_flag

Definition at line 892 of file vm_core.h.

Referenced by rb_ec_error_print(), rb_ec_reset_raised(), rb_ec_set_raised(), rb_ec_stack_overflow(), and rb_threadptr_execute_interrupts().

## ◆ root_lep

const VALUE* rb_execution_context_struct::root_lep

Definition at line 879 of file vm_core.h.

Referenced by rb_fiber_start().

## ◆ root_svar

VALUE rb_execution_context_struct::root_svar

Definition at line 880 of file vm_core.h.

Referenced by rb_execution_context_mark(), and rb_fiber_start().

## ◆ stack_end

VALUE* rb_execution_context_struct::stack_end

Definition at line 902 of file vm_core.h.

Referenced by Init_Cont(), and rb_execution_context_mark().

## ◆ stack_maxsize

size_t rb_execution_context_struct::stack_maxsize

Definition at line 903 of file vm_core.h.

## ◆ stack_start

VALUE* rb_execution_context_struct::stack_start

Definition at line 901 of file vm_core.h.

Referenced by rb_execution_context_mark().

## ◆ tag

struct rb_vm_tag* rb_execution_context_struct::tag

Definition at line 860 of file vm_core.h.

Referenced by rb_exec_event_hooks(), rb_throw_obj(), and vm_exec().

## ◆ thread_ptr

struct rb_thread_struct* rb_execution_context_struct::thread_ptr

Definition at line 871 of file vm_core.h.

Referenced by rb_fiber_threadptr(), and rb_threadptr_root_fiber_setup().

## ◆ trace_arg

struct rb_trace_arg_struct* rb_execution_context_struct::trace_arg

Definition at line 886 of file vm_core.h.

Referenced by rb_exec_event_hooks(), and rb_suppress_tracing().

## ◆ vm_stack

VALUE* rb_execution_context_struct::vm_stack

Definition at line 856 of file vm_core.h.

Referenced by rb_ec_initialize_vm_stack(), rb_ec_set_vm_stack(), rb_execution_context_mark(), rb_execution_context_update(), rb_vm_each_stack_value(), rb_vm_set_progname(), rb_vmdebug_debug_print_pre(), rb_vmdebug_debug_print_register(), and rb_vmdebug_stack_dump_raw().

## ◆ vm_stack_size

size_t rb_execution_context_struct::vm_stack_size

Definition at line 857 of file vm_core.h.

Referenced by rb_ec_initialize_vm_stack(), rb_ec_set_vm_stack(), rb_execution_context_mark(), rb_execution_context_update(), rb_vm_set_progname(), rb_vmdebug_debug_print_register(), and rb_vmdebug_stack_dump_raw().

The documentation for this struct was generated from the following file:

- vm_core.h