postgres_extension/
setjmp.rs1use libc::*;
2
3#[repr(C)]
4pub struct jmp_buf {
5 __jmpbuf: [i64; 8],
6 __mask_was_saved: c_int,
7 __saved_mask: sigset_t,
8}
9
10#[repr(C)]
11pub struct sigjmp_buf {
12 __jmpbuf: [i64; 9],
13 __mask_was_saved: c_int,
14 __saved_mask: sigset_t,
15}
16
17extern "C" {
18 #[link_name="setjmp"]
19 pub fn setjmp(env: *mut jmp_buf) -> c_int;
20 #[link_name="__sigsetjmp"]
21 pub fn sigsetjmp(env: *mut sigjmp_buf, savesigs: c_int) -> c_int;
22 pub fn longjmp(env: *mut jmp_buf, val: c_int) -> c_void;
23 pub fn siglongjmp(env: *mut sigjmp_buf, val: c_int) -> c_void;
24}