Ruby  3.4.0dev (2024-12-06 revision 892c46283a5ea4179500d951c9d4866c0051f27b)
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 */
46 void rb_exc_raise(VALUE exc);
47 
63 void rb_exc_fatal(VALUE exc);
64 
65 /* process.c */
66 
80 VALUE rb_f_exit(int argc, const VALUE *argv);
81 
98 VALUE rb_f_abort(int argc, const VALUE *argv);
99 
100 /* eval.c*/
101 
109 void rb_interrupt(void);
110 
119 ID rb_frame_this_func(void);
120 
141 void rb_jump_tag(int state);
142 
152 void rb_obj_call_init(VALUE obj, int argc, const VALUE *argv);
153 
168 void rb_obj_call_init_kw(VALUE, int, const VALUE*, int);
169 
177 ID rb_frame_callee(void);
178 
206 VALUE rb_make_exception(int argc, const VALUE *argv);
207 
208 /* eval_jump.c */
209 
218 void 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:676
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:689
ID rb_frame_callee(void)
Identical to rb_frame_this_func(), except it returns the named used to call the method.
Definition: eval.c:1100
ID rb_frame_this_func(void)
Queries the name of the Ruby level method that is calling this function.
Definition: eval.c:1094
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:1722
VALUE rb_f_abort(int argc, const VALUE *argv)
This is similar to rb_f_exit().
Definition: process.c:4536
void rb_interrupt(void)
Raises an instance of rb_eInterrupt.
Definition: eval.c:695
VALUE rb_f_exit(int argc, const VALUE *argv)
Identical to rb_exit(), except how arguments are passed.
Definition: process.c:4467
VALUE rb_make_exception(int argc, const VALUE *argv)
Constructs an exception object from the list of arguments, in a manner similar to Ruby's raise.
Definition: eval.c:883
void rb_jump_tag(int state)
This function is to re-throw global escapes.
Definition: eval.c:907
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:1728
void rb_set_end_proc(void(*func)(VALUE arg), VALUE arg)
Registers a function that shall run on process exit.
RBIMPL_ATTR_NORETURN() void rb_eof_error(void)
Utility function to raise rb_eEOFError.
Defines RBIMPL_ATTR_NORETURN.
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