Ruby 4.0.0dev (2025-12-14 revision 674c3d73e0f92d730bd2e544be344585a638ab37)
eval.h
1#ifndef INTERNAL_EVAL_H /*-*-C-*-vi:se ft=c:*/
2#define INTERNAL_EVAL_H
13#include "ruby/ruby.h" /* for ID */
14#include "vm_core.h" /* for ID */
15
16#define id_signo ruby_static_id_signo
17#define id_status ruby_static_id_status
18
19/* eval.c */
21 VALUE refinement;
22 VALUE refinements;
23};
24
25extern ID ruby_static_id_signo;
26extern ID ruby_static_id_status;
27VALUE rb_refinement_module_get_refined_class(VALUE module);
29NORETURN(VALUE rb_f_raise(int argc, VALUE *argv));
30VALUE rb_exception_setup(int argc, VALUE *argv);
31void rb_refinement_setup(struct rb_refinements_data *data, VALUE module, VALUE klass);
32void rb_vm_using_module(VALUE module);
33VALUE rb_top_main_class(const char *method);
34VALUE rb_ec_ensure(rb_execution_context_t *ec, VALUE (*b_proc)(VALUE), VALUE data1, VALUE (*e_proc)(VALUE), VALUE data2);
35
36/* eval_error.c */
37VALUE rb_get_backtrace(VALUE info);
38
39/* eval_jump.c */
40void rb_call_end_proc(VALUE data);
41void rb_mark_end_proc(void);
42
43#endif /* INTERNAL_EVAL_H */
void rb_class_modify_check(VALUE)
Asserts that klass is not a frozen class.
Definition eval.c:421
uintptr_t ID
Type that represents a Ruby identifier such as a variable name.
Definition value.h:52
uintptr_t VALUE
Type that represents a Ruby object.
Definition value.h:40