#![allow(non_upper_case_globals)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(dead_code)]
#![allow(clippy::all)]
include!(concat!(env!("OUT_DIR"), "/bindings.rs"));
extern "C" {
pub fn q_connect(
host: *const ::std::os::raw::c_char,
port: ::std::os::raw::c_int,
user: *const ::std::os::raw::c_char,
password: *const ::std::os::raw::c_char,
timeout_ms: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
pub fn q_close(fd: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
pub fn q_send(
fd: ::std::os::raw::c_int,
msg: *mut ray_t,
err: *mut ::std::os::raw::c_char,
errlen: usize,
) -> *mut ray_t;
pub fn q_decode(
resp: *mut u8,
resp_len: i64,
compressed: ::std::os::raw::c_int,
err: *mut ::std::os::raw::c_char,
errlen: usize,
) -> *mut ray_t;
pub fn q_encode(
msg: *mut ray_t,
req: *mut *mut u8,
req_len: *mut i64,
err: *mut ::std::os::raw::c_char,
errlen: usize,
) -> ::std::os::raw::c_int;
pub fn q_exchange(
fd: ::std::os::raw::c_int,
req: *const u8,
req_len: i64,
resp: *mut *mut u8,
resp_len: *mut i64,
compressed: *mut ::std::os::raw::c_int,
err: *mut ::std::os::raw::c_char,
errlen: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn q_serve(poll: *mut ray_poll_t, port: ::std::os::raw::c_int) -> i64;
pub fn q_conn_attach(poll: *mut ray_poll_t, fd: ::std::os::raw::c_int) -> i64;
pub fn q_conn_send(poll: *mut ray_poll_t, id: i64, msg: *mut ray_t) -> *mut ray_t;
pub fn q_conn_close(poll: *mut ray_poll_t, id: i64);
}
pub const Q_ERR_SOCKET: ::std::os::raw::c_int = -1;
pub const Q_ERR_HANDSHAKE: ::std::os::raw::c_int = -2;
pub const Q_ERR_TIMEOUT: ::std::os::raw::c_int = -3;
pub const RAY_IPC_ERR_REFUSED: i64 = -1;
pub const RAY_IPC_ERR_AUTH_REQUIRED: i64 = -2;
pub const RAY_IPC_ERR_AUTH_FAILED: i64 = -3;
pub const RAY_IPC_ERR_WIRE_VERSION: i64 = -4;
pub const RAY_IPC_ERR_TIMEOUT: i64 = -5;
pub const RAY_IPC_ERR_OS: i64 = -6;
pub const RAY_FN_NONE: u8 = 0x00;
pub const RAY_FN_LEFT_ATOMIC: u8 = 0x01;
pub const RAY_FN_RIGHT_ATOMIC: u8 = 0x02;
pub const RAY_FN_ATOMIC: u8 = 0x04;
pub const RAY_FN_AGGR: u8 = 0x08;
pub const RAY_FN_SPECIAL_FORM: u8 = 0x10;
pub const RAY_FN_RESTRICTED: u8 = 0x20;
pub const RAY_FN_LAZY_AWARE: u8 = 0x80;