Skip to main content

Crate rayforce_sys

Crate rayforce_sys 

Source
Expand description

Raw FFI bindings to the RayforceDB v2 core (librayforce).

Generated by bindgen from the core’s own headers: the public rayforce.h, plus the private ones declaring the handful of internal symbols the safe crate needs (INTERNAL_FNS in build.rs is the full list). This crate is unsafe and 1:1 with the C ABI; use the safe rayforce crate instead.

The header’s function-like macros (ray_type, ray_len, ray_data, RAY_IS_ERR, RAY_IS_NULL, …) are not emitted by bindgen — the safe crate reimplements them in Rust against the generated ray_t layout.

Structs§

__BindgenUnionField
__IncompleteArrayField
ray_aof_s
ray_file_map_s
ray_ipc_tx_info_t
ray_poll
ray_progress_t
ray_runtime_s
ray_sym_domain_s
ray_t
ray_t__bindgen_ty_1
ray_t__bindgen_ty_2
ray_t__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1
ray_t__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2
ray_t__bindgen_ty_1__bindgen_ty_1__bindgen_ty_3
ray_t__bindgen_ty_1__bindgen_ty_1__bindgen_ty_4
ray_t__bindgen_ty_1__bindgen_ty_1__bindgen_ty_5
ray_t__bindgen_ty_1__bindgen_ty_1__bindgen_ty_6
ray_t__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1

Constants§

Q_ERR_HANDSHAKE
Q_ERR_SOCKET
q_connect failure codes (mirrors q.h).
Q_ERR_TIMEOUT
RAY_ATTR_SLICE
RAY_BINARY
RAY_BOOL
RAY_DATE
RAY_DICT
RAY_ERROR
RAY_F32
RAY_F64
RAY_GUID
RAY_I16
RAY_I32
RAY_I64
RAY_INDEX
RAY_IPC_ERR_AUTH_FAILED
The server rejected the credentials.
RAY_IPC_ERR_AUTH_REQUIRED
The server demands credentials and the caller supplied no password.
RAY_IPC_ERR_OS
Some other OS error; the core leaves errno holding it.
RAY_IPC_ERR_REFUSED
ray_ipc_connect failure codes.
RAY_IPC_ERR_TIMEOUT
No answer within the connect/handshake budget. The core folds EAGAIN and EWOULDBLOCK in here too, so this also covers a live server that is busy inside a long evaluation.
RAY_IPC_ERR_WIRE_VERSION
The peer speaks a different serialization wire version.
RAY_LAMBDA
RAY_LIST
RAY_NULL
RAY_STR
RAY_SYM
RAY_SYM_W8
RAY_SYM_W16
RAY_SYM_W32
RAY_SYM_W64
RAY_TABLE
RAY_TIME
RAY_TIMESTAMP
RAY_U8
RAY_UNARY
RAY_VARY
RAY_VERSION_MAJOR
RAY_VERSION_MINOR
RAY_VERSION_NUMBER
RAY_VERSION_PATCH
ray_err_t_RAY_ERR_CANCEL
ray_err_t_RAY_ERR_CORRUPT
ray_err_t_RAY_ERR_DOMAIN
ray_err_t_RAY_ERR_IO
ray_err_t_RAY_ERR_LENGTH
ray_err_t_RAY_ERR_LIMIT
ray_err_t_RAY_ERR_NAME
ray_err_t_RAY_ERR_NYI
ray_err_t_RAY_ERR_OOM
ray_err_t_RAY_ERR_PARSE
ray_err_t_RAY_ERR_RANGE
ray_err_t_RAY_ERR_RANK
ray_err_t_RAY_ERR_RESERVED
ray_err_t_RAY_ERR_SCHEMA
ray_err_t_RAY_ERR_TYPE
ray_err_t_RAY_ERR_VERSION
ray_err_t_RAY_OK

Statics§

__ray_null⚠
__ray_oom⚠
ray_type_sizes⚠

Functions§

q_close⚠
Close a connection fd. Returns 0 on success, -1 on an invalid fd.
q_connect⚠
Open a TCP connection to a Q server and perform the login handshake. Returns a connection fd (>= 0), or a negative Q_ERR_* code.
q_decode⚠
Decompress (if needed) and deserialize a response body (wire header already stripped) into a freshly-owned object — possibly a RAY_ERROR carrying a Q server-side error. Touches the symbol table: engine thread only. Returns null on a decode failure with a short reason in err.
q_send⚠
Encode + exchange + decode: send msg and return the decoded response (possibly a RAY_ERROR), or null on a transport/serialization failure with a short reason written to err.
ray_alloc⚠
ray_alloc_raw⚠
ray_aof_append⚠
ray_aof_close⚠
ray_aof_commit⚠
ray_aof_next_lsn⚠
ray_aof_open⚠
ray_aof_scan⚠
ray_bool⚠
ray_calloc_raw⚠
ray_clear_interrupt⚠
ray_data_slice_path⚠
ray_date⚠
ray_de⚠
ray_delete⚠
ray_dict_get⚠
ray_dict_keys⚠
ray_dict_len⚠
ray_dict_new⚠
ray_dict_remove⚠
ray_dict_upsert⚠
ray_dict_vals⚠
ray_env_get⚠
ray_env_set⚠
ray_err_code⚠
ray_err_code_str⚠
ray_err_from_obj⚠
ray_error⚠
ray_error_free⚠
ray_error_msg⚠
ray_eval⚠
ray_eval_str⚠
ray_f32⚠
ray_f64⚠
ray_fmt⚠
ray_free⚠
ray_free_raw⚠
ray_get_parted_fn⚠
ray_get_splayed_fn⚠
ray_git_commit⚠
ray_guid⚠
ray_i16⚠
ray_i32⚠
ray_i64⚠
ray_insert⚠
ray_insert_fn⚠
ray_interrupted⚠
ray_ipc_close⚠
ray_ipc_connect⚠
ray_ipc_send⚠
ray_ipc_send_async⚠
ray_ipc_send_timeout⚠
ray_ipc_send_verbose⚠
ray_ipc_tx_info⚠
ray_lazy_materialize⚠
ray_list_append⚠
ray_list_get⚠
ray_list_insert_at⚠
ray_list_insert_many⚠
ray_list_new⚠
ray_list_set⚠
ray_obj_attrs⚠
ray_obj_type⚠
ray_poll_create⚠
ray_poll_destroy⚠
ray_poll_exit⚠
ray_poll_run⚠
ray_poll_run_for⚠
ray_poll_set_restricted⚠
ray_progress_active⚠
ray_progress_dispatch_begin⚠
ray_progress_end⚠
ray_progress_label⚠
ray_progress_pump⚠
ray_progress_set_callback⚠
ray_progress_span_begin⚠
ray_progress_span_end⚠
ray_progress_span_phase⚠
ray_progress_span_set⚠
ray_progress_update⚠
ray_read_csv_fn⚠
ray_realloc_raw⚠
ray_release⚠
ray_request_interrupt⚠
ray_retain⚠
ray_retained_bytes⚠
ray_runtime_create⚠
ray_runtime_create_with_sym⚠
ray_runtime_create_with_sym_err⚠
ray_runtime_destroy⚠
ray_runtime_get_poll⚠
ray_runtime_set_poll⚠
ray_select⚠
ray_ser⚠
ray_set_splayed_fn⚠
ray_shallow_bytes⚠
ray_str⚠
ray_str_cmp⚠
ray_str_len⚠
ray_str_ptr⚠
ray_str_vec_append⚠
ray_str_vec_compact⚠
ray_str_vec_from_parts⚠
ray_str_vec_get⚠
ray_str_vec_insert_at⚠
ray_str_vec_set⚠
ray_sym⚠
ray_sym_bytes⚠
ray_sym_count⚠
ray_sym_destroy⚠
ray_sym_domain_count⚠
ray_sym_domain_find⚠
ray_sym_domain_runtime_lut⚠
ray_sym_domain_str⚠
ray_sym_ensure_cap⚠
ray_sym_find⚠
ray_sym_init⚠
ray_sym_intern⚠
ray_sym_intern_runtime⚠
ray_sym_load⚠
ray_sym_runtime_domain⚠
ray_sym_save⚠
ray_sym_str⚠
ray_sym_strings_borrow⚠
ray_sym_vec_adopt_domain⚠
ray_sym_vec_new⚠
ray_sys_ram_limit⚠
ray_sys_total_ram⚠
ray_table_add_col⚠
ray_table_col_name⚠
ray_table_get_col⚠
ray_table_get_col_idx⚠
ray_table_ncols⚠
ray_table_new⚠
ray_table_nrows⚠
ray_table_schema⚠
ray_table_set_col_idx⚠
ray_table_set_col_name⚠
ray_table_validate_rectangular⚠
ray_time⚠
ray_timestamp⚠
ray_timestamp_now_ns⚠
ray_typed_null⚠
ray_u8⚠
ray_update⚠
ray_update_fn⚠
ray_upsert⚠
ray_upsert_fn⚠
ray_vec_append⚠
ray_vec_append_raw⚠
ray_vec_concat⚠
ray_vec_from_raw⚠
ray_vec_get⚠
ray_vec_get_f64⚠
ray_vec_get_i64⚠
ray_vec_get_sym_id⚠
ray_vec_insert_at⚠
ray_vec_insert_many⚠
ray_vec_insert_vec_at⚠
ray_vec_is_null⚠
ray_vec_new⚠
ray_vec_set⚠
ray_vec_set_null⚠
ray_vec_set_null_checked⚠
ray_vec_slice⚠
ray_version_major⚠
ray_version_minor⚠
ray_version_patch⚠
ray_version_string⚠
ray_write_csv_fn⚠

Type Aliases§

ray_aof_scan_cb_t
ray_aof_t
ray_err_t
ray_poll_t
ray_progress_cb
ray_runtime_t

Unions§

ray_t__bindgen_ty_1__bindgen_ty_1
ray_t__bindgen_ty_1__bindgen_ty_2