Ruby 3.5.0dev (2025-04-07 revision 4646ab89179aa3dac917a16aaa16533548ad33d9)
eval.h
Go to the documentation of this file.
1#ifndef RBIMPL_INTERN_EVAL_H /*-*-C++-*-vi:se ft=cpp:*/
2#define RBIMPL_INTERN_EVAL_H
25#include "ruby/internal/value.h"
26
28
29/* eval.c */
46void rb_exc_raise(VALUE exc);
47
63void rb_exc_fatal(VALUE exc);
64
65/* process.c */
66
80VALUE rb_f_exit(int argc, const VALUE *argv);
81
98VALUE rb_f_abort(int argc, const VALUE *argv);
99
100/* eval.c*/
101
109void rb_interrupt(void);
110
120
141void rb_jump_tag(int state);
142
152void rb_obj_call_init(VALUE obj, int argc, const VALUE *argv);
153
168void rb_obj_call_init_kw(VALUE, int, const VALUE*, int);
169
177ID rb_frame_callee(void);
178
206VALUE rb_make_exception(int argc, const VALUE *argv);
207
208/* eval_jump.c */
209
218void rb_set_end_proc(void (*func)(VALUE arg), VALUE arg);
219
221
222#endif /* RBIMPL_INTERN_EVAL_H */
Tweaking visibility of C variables/functions.
#define RBIMPL_SYMBOL_EXPORT_END()
Counterpart of RBIMPL_SYMBOL_EXPORT_BEGIN.
Definition dllexport.h:74
#define RBIMPL_SYMBOL_EXPORT_BEGIN()
Shortcut macro equivalent to RUBY_SYMBOL_EXPORT_BEGIN extern "C" {.
Definition dllexport.h:65
void rb_exc_raise(VALUE exc)
Identical to rb_raise(), except it raises the passed exception instance as- is instead of creating ne...
Definition eval.c:675
void rb_exc_fatal(VALUE exc)
Identical to rb_fatal(), except it raises the passed exception instance as- is instead of creating ne...
Definition eval.c:688
ID rb_frame_callee(void)
Identical to rb_frame_this_func(), except it returns the named used to call the method.
Definition eval.c:1120
ID rb_frame_this_func(void)
Queries the name of the Ruby level method that is calling this function.
Definition eval.c:1114
void rb_obj_call_init(VALUE obj, int argc, const VALUE *argv)
Calls initialize method of the passed object with the passed arguments.
Definition eval.c:1742
VALUE rb_f_abort(int argc, const VALUE *argv)
This is similar to rb_f_exit().
Definition process.c:4435
void rb_interrupt(void)
Raises an instance of rb_eInterrupt.
Definition eval.c:694
VALUE rb_f_exit(int argc, const VALUE *argv)
Identical to rb_exit(), except how arguments are passed.
Definition process.c:4366
void rb_jump_tag(int state)
This function is to re-throw global escapes.
Definition eval.c:927
void rb_obj_call_init_kw(VALUE, int, const VALUE *, int)
Identical to rb_obj_call_init(), except you can specify how to handle the last element of the given a...
Definition eval.c:1748
void rb_set_end_proc(void(*func)(VALUE arg), VALUE arg)
Registers a function that shall run on process exit.
Defines RBIMPL_ATTR_NORETURN.
#define RBIMPL_ATTR_NORETURN()
Wraps (or simulates) [[noreturn]]
Definition noreturn.h:38
Defines VALUE and ID.
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