Skip to main content

bash_loadable/ffi/
common.rs

1
2pub mod ffi {
3    use core::ffi::{
4        c_void,
5        c_char,
6        c_int,
7    };
8    unsafe extern "C" {
9        // Current working directory
10        pub fn get_working_directory(for_whom: *const c_char) -> *const c_char;
11        pub fn set_working_directory(name: *const c_char);
12        // evalstring.c
13        pub fn parse_and_execute(source: *const c_char, from_file: *const c_char, flags: c_int) -> c_int;
14        pub fn eval_string(eval: *const c_char, from_file: *const c_char, flags: c_int) -> c_int;
15        pub fn parse_and_execute_cleanup(old_running_trap: c_int);
16        pub fn parse_string(source: *const c_char, from_file: *const c_char, flags: c_int, cmdp: *const *const c_void, endp: *const *const c_char) -> c_int;
17
18        // evalfile.c
19        pub fn maybe_execute_file(filename: *const c_char, force_noninteractive: c_int) -> c_int;
20        pub fn force_execute_file(filename: *const c_char, force_noninteractive: c_int) -> c_int;
21        pub fn source_file(filename: *const c_char, sflags: c_int) -> c_int;
22    }
23}