rosy/ruby_bindings/
vm.rs

1use super::prelude::*;
2
3extern "C" {
4    // int ruby_cleanup(volatile int ex)
5    pub fn ruby_cleanup(ex: c_int) -> c_int;
6    // void ruby_init_loadpath(void)
7    pub fn ruby_init_loadpath();
8    // int ruby_setup(void)
9    pub fn ruby_setup() -> c_int;
10
11    // int rb_safe_level(void)
12    pub fn rb_safe_level() -> c_int;
13    // void rb_set_safe_level(int level)
14    pub fn rb_set_safe_level(level: c_int);
15
16    // VALUE rb_require_safe(VALUE fname, int safe)
17    pub fn rb_require_safe(fname: VALUE, safe: c_int) -> VALUE;
18
19    // void rb_load(VALUE fname, int wrap)
20    pub fn rb_load(fname: VALUE, wrap: c_int);
21    // void rb_load_protect(VALUE fname, int wrap, int *pstate)
22    pub fn rb_load_protect(fname: VALUE, wrap: c_int, pstate: *mut c_int);
23
24    // VALUE rb_eval_string(const char *str)
25    pub fn rb_eval_string(str: *const c_char) -> VALUE;
26    // VALUE rb_eval_string_protect(const char *str, int *pstate)
27    pub fn rb_eval_string_protect(str: *const c_char, pstate: *mut c_int) -> VALUE;
28    // VALUE rb_eval_string_wrap(const char *str, int *pstate)
29    pub fn rb_eval_string_wrap(str: *const c_char, pstate: *mut c_int) -> VALUE;
30
31    // VALUE rb_make_backtrace(void)
32    pub fn rb_make_backtrace() -> VALUE;
33}