Ruby: include/ruby/internal/intern/eval.h Source File

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

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
23#include "ruby/internal/attr/noreturn.h"
24#include "ruby/internal/dllexport.h"
25#include "ruby/internal/value.h"
26
27 RBIMPL_SYMBOL_EXPORT_BEGIN()
28
29/* eval.c */
30 RBIMPL_ATTR_NORETURN()
31void rb_exc_raise(VALUE);
32
33 RBIMPL_ATTR_NORETURN()
34void rb_exc_fatal(VALUE);
35
36 RBIMPL_ATTR_NORETURN()
37 VALUE rb_f_exit(int, const VALUE*);
38
39 RBIMPL_ATTR_NORETURN()
40 VALUE rb_f_abort(int, const VALUE*);
41
42 RBIMPL_ATTR_NORETURN()
43void rb_interrupt(void);
44 ID rb_frame_this_func(void);
45
46 RBIMPL_ATTR_NORETURN()
47void rb_jump_tag(int);
48void rb_obj_call_init(VALUE, int, const VALUE*);
49void rb_obj_call_init_kw(VALUE, int, const VALUE*, int);
50 VALUE rb_protect(VALUE (*)(VALUE), VALUE, int*);
51 ID rb_frame_callee(void);
52 VALUE rb_make_exception(int, const VALUE*);
53
54/* eval_jump.c */
55void rb_set_end_proc(void (*)(VALUE), VALUE);
56
57 RBIMPL_SYMBOL_EXPORT_END()
58
59#endif /* RBIMPL_INTERN_EVAL_H */
dllexport.h
Tewaking visibility of C variables/functions.
RBIMPL_SYMBOL_EXPORT_END
#define RBIMPL_SYMBOL_EXPORT_END()
Counterpart of RBIMPL_SYMBOL_EXPORT_BEGIN.
Definition: dllexport.h:86
RBIMPL_SYMBOL_EXPORT_BEGIN
#define RBIMPL_SYMBOL_EXPORT_BEGIN()
Shortcut macro equivalent to RUBY_SYMBOL_EXPORT_BEGIN extern "C" {.
Definition: dllexport.h:77
rb_frame_callee
ID rb_frame_callee(void)
The name of the current method.
Definition: eval.c:1233
rb_frame_this_func
ID rb_frame_this_func(void)
The original name of the current method.
Definition: eval.c:1216
rb_exc_raise
void rb_exc_raise(VALUE)
Raises an exception in the current thread.
Definition: eval.c:712
rb_interrupt
void rb_interrupt(void)
Raises an Interrupt exception.
Definition: eval.c:741
rb_protect
VALUE rb_protect(VALUE(*)(VALUE), VALUE, int *)
Protects a function call from potential global escapes from the function.
Definition: eval.c:1105
rb_make_exception
VALUE rb_make_exception(int, const VALUE *)
Make an Exception object from the list of arguments in a manner similar to Kernel#raise.
Definition: eval.c:888
rb_exc_fatal
void rb_exc_fatal(VALUE)
Raises a fatal error in the current thread.
Definition: eval.c:728
rb_jump_tag
void rb_jump_tag(int)
Continues the exception caught by rb_protect() and rb_eval_string_protect().
Definition: eval.c:921
rb_obj_call_init
void rb_obj_call_init(VALUE, int, const VALUE *)
Calls initialize method of obj with the given arguments.
Definition: eval.c:1710
rb_f_abort
VALUE rb_f_abort(int, const VALUE *)
Definition: process.c:4494
rb_f_exit
VALUE rb_f_exit(int, const VALUE *)
Definition: process.c:4429
rb_set_end_proc
void rb_set_end_proc(void(*)(VALUE), VALUE)
Definition: eval_jump.c:59
rb_obj_call_init_kw
void rb_obj_call_init_kw(VALUE, int, const VALUE *, int)
Definition: eval.c:1717
noreturn.h
Defines RBIMPL_ATTR_NORETURN.
RBIMPL_ATTR_NORETURN
#define RBIMPL_ATTR_NORETURN()
Wraps (or simulates) [[noreturn]]
Definition: noreturn.h:38
const
#define const
Definition: strftime.c:108
value.h
Defines VALUE and ID.
VALUE
unsigned long VALUE
Definition: value.h:38
ID
unsigned long ID
Definition: value.h:39