Vendor deps.
This commit is contained in:
1 parent
294527085e
commit
91e18fde3a
1714 files changed
+556667
-7
No files matched your search
+237
@@ -0,0 +1,237 @@
|
||||
/* --- PyStatus ----------------------------------------------- */
|
||||
|
||||
use crate::Py_ssize_t;
|
||||
use core::ffi::{c_char, c_int, c_ulong};
|
||||
use libc::wchar_t;
|
||||
|
||||
#[repr(C)]
|
||||
#[derive(Copy, Clone, Debug, PartialEq, Eq)]
|
||||
pub enum _PyStatus_TYPE {
|
||||
_PyStatus_TYPE_OK = 0,
|
||||
_PyStatus_TYPE_ERROR = 1,
|
||||
_PyStatus_TYPE_EXIT = 2,
|
||||
}
|
||||
|
||||
#[repr(C)]
|
||||
#[derive(Copy, Clone)]
|
||||
pub struct PyStatus {
|
||||
pub _type: _PyStatus_TYPE,
|
||||
pub func: *const c_char,
|
||||
pub err_msg: *const c_char,
|
||||
pub exitcode: c_int,
|
||||
}
|
||||
|
||||
extern_libpython! {
|
||||
pub fn PyStatus_Ok() -> PyStatus;
|
||||
pub fn PyStatus_Error(err_msg: *const c_char) -> PyStatus;
|
||||
pub fn PyStatus_NoMemory() -> PyStatus;
|
||||
pub fn PyStatus_Exit(exitcode: c_int) -> PyStatus;
|
||||
pub fn PyStatus_IsError(err: PyStatus) -> c_int;
|
||||
pub fn PyStatus_IsExit(err: PyStatus) -> c_int;
|
||||
pub fn PyStatus_Exception(err: PyStatus) -> c_int;
|
||||
}
|
||||
|
||||
/* --- PyWideStringList ------------------------------------------------ */
|
||||
|
||||
#[repr(C)]
|
||||
#[derive(Copy, Clone)]
|
||||
pub struct PyWideStringList {
|
||||
pub length: Py_ssize_t,
|
||||
pub items: *mut *mut wchar_t,
|
||||
}
|
||||
|
||||
extern_libpython! {
|
||||
pub fn PyWideStringList_Append(list: *mut PyWideStringList, item: *const wchar_t) -> PyStatus;
|
||||
pub fn PyWideStringList_Insert(
|
||||
list: *mut PyWideStringList,
|
||||
index: Py_ssize_t,
|
||||
item: *const wchar_t,
|
||||
) -> PyStatus;
|
||||
}
|
||||
|
||||
/* --- PyPreConfig ----------------------------------------------- */
|
||||
|
||||
#[repr(C)]
|
||||
#[derive(Copy, Clone)]
|
||||
pub struct PyPreConfig {
|
||||
pub _config_init: c_int,
|
||||
pub parse_argv: c_int,
|
||||
pub isolated: c_int,
|
||||
pub use_environment: c_int,
|
||||
pub configure_locale: c_int,
|
||||
pub coerce_c_locale: c_int,
|
||||
pub coerce_c_locale_warn: c_int,
|
||||
|
||||
#[cfg(windows)]
|
||||
pub legacy_windows_fs_encoding: c_int,
|
||||
|
||||
pub utf8_mode: c_int,
|
||||
pub dev_mode: c_int,
|
||||
pub allocator: c_int,
|
||||
}
|
||||
|
||||
extern_libpython! {
|
||||
pub fn PyPreConfig_InitPythonConfig(config: *mut PyPreConfig);
|
||||
pub fn PyPreConfig_InitIsolatedConfig(config: *mut PyPreConfig);
|
||||
}
|
||||
|
||||
/* --- PyConfig ---------------------------------------------- */
|
||||
|
||||
#[repr(C)]
|
||||
#[derive(Copy, Clone)]
|
||||
pub struct PyConfig {
|
||||
pub _config_init: c_int,
|
||||
pub isolated: c_int,
|
||||
pub use_environment: c_int,
|
||||
pub dev_mode: c_int,
|
||||
pub install_signal_handlers: c_int,
|
||||
pub use_hash_seed: c_int,
|
||||
pub hash_seed: c_ulong,
|
||||
pub faulthandler: c_int,
|
||||
#[cfg(all(Py_3_9, not(Py_3_10)))]
|
||||
pub _use_peg_parser: c_int,
|
||||
pub tracemalloc: c_int,
|
||||
#[cfg(Py_3_12)]
|
||||
pub perf_profiling: c_int,
|
||||
#[cfg(Py_3_14)]
|
||||
pub remote_debug: c_int,
|
||||
pub import_time: c_int,
|
||||
#[cfg(Py_3_11)]
|
||||
pub code_debug_ranges: c_int,
|
||||
pub show_ref_count: c_int,
|
||||
#[cfg(not(Py_3_9))]
|
||||
pub show_alloc_count: c_int,
|
||||
pub dump_refs: c_int,
|
||||
#[cfg(Py_3_11)]
|
||||
pub dump_refs_file: *mut wchar_t,
|
||||
pub malloc_stats: c_int,
|
||||
#[cfg(Py_3_15)]
|
||||
pub pymalloc_hugepages: c_int,
|
||||
pub filesystem_encoding: *mut wchar_t,
|
||||
pub filesystem_errors: *mut wchar_t,
|
||||
pub pycache_prefix: *mut wchar_t,
|
||||
pub parse_argv: c_int,
|
||||
#[cfg(Py_3_10)]
|
||||
pub orig_argv: PyWideStringList,
|
||||
pub argv: PyWideStringList,
|
||||
#[cfg(not(Py_3_10))]
|
||||
pub program_name: *mut wchar_t,
|
||||
pub xoptions: PyWideStringList,
|
||||
pub warnoptions: PyWideStringList,
|
||||
pub site_import: c_int,
|
||||
pub bytes_warning: c_int,
|
||||
#[cfg(Py_3_10)]
|
||||
pub warn_default_encoding: c_int,
|
||||
pub inspect: c_int,
|
||||
pub interactive: c_int,
|
||||
pub optimization_level: c_int,
|
||||
pub parser_debug: c_int,
|
||||
pub write_bytecode: c_int,
|
||||
pub verbose: c_int,
|
||||
pub quiet: c_int,
|
||||
pub user_site_directory: c_int,
|
||||
pub configure_c_stdio: c_int,
|
||||
pub buffered_stdio: c_int,
|
||||
pub stdio_encoding: *mut wchar_t,
|
||||
pub stdio_errors: *mut wchar_t,
|
||||
|
||||
#[cfg(windows)]
|
||||
pub legacy_windows_stdio: c_int,
|
||||
|
||||
pub check_hash_pycs_mode: *mut wchar_t,
|
||||
#[cfg(Py_3_11)]
|
||||
pub use_frozen_modules: c_int,
|
||||
#[cfg(Py_3_11)]
|
||||
pub safe_path: c_int,
|
||||
#[cfg(Py_3_12)]
|
||||
pub int_max_str_digits: c_int,
|
||||
#[cfg(Py_3_14)]
|
||||
pub thread_inherit_context: c_int,
|
||||
#[cfg(Py_3_14)]
|
||||
pub context_aware_warnings: c_int,
|
||||
#[cfg(all(Py_3_14, target_os = "macos"))]
|
||||
pub use_system_logger: c_int,
|
||||
#[cfg(Py_3_13)]
|
||||
pub cpu_count: c_int,
|
||||
#[cfg(Py_GIL_DISABLED)]
|
||||
pub enable_gil: c_int,
|
||||
#[cfg(all(Py_3_14, Py_GIL_DISABLED))]
|
||||
pub tlbc_enabled: c_int,
|
||||
#[cfg(Py_3_15)]
|
||||
pub lazy_imports: c_int,
|
||||
pub pathconfig_warnings: c_int,
|
||||
#[cfg(Py_3_10)]
|
||||
pub program_name: *mut wchar_t,
|
||||
pub pythonpath_env: *mut wchar_t,
|
||||
pub home: *mut wchar_t,
|
||||
#[cfg(Py_3_10)]
|
||||
pub platlibdir: *mut wchar_t,
|
||||
|
||||
pub module_search_paths_set: c_int,
|
||||
pub module_search_paths: PyWideStringList,
|
||||
#[cfg(Py_3_11)]
|
||||
pub stdlib_dir: *mut wchar_t,
|
||||
pub executable: *mut wchar_t,
|
||||
pub base_executable: *mut wchar_t,
|
||||
pub prefix: *mut wchar_t,
|
||||
pub base_prefix: *mut wchar_t,
|
||||
pub exec_prefix: *mut wchar_t,
|
||||
pub base_exec_prefix: *mut wchar_t,
|
||||
#[cfg(all(Py_3_9, not(Py_3_10)))]
|
||||
pub platlibdir: *mut wchar_t,
|
||||
pub skip_source_first_line: c_int,
|
||||
pub run_command: *mut wchar_t,
|
||||
pub run_module: *mut wchar_t,
|
||||
pub run_filename: *mut wchar_t,
|
||||
#[cfg(Py_3_13)]
|
||||
pub sys_path_0: *mut wchar_t,
|
||||
pub _install_importlib: c_int,
|
||||
pub _init_main: c_int,
|
||||
#[cfg(all(Py_3_9, not(Py_3_12)))]
|
||||
pub _isolated_interpreter: c_int,
|
||||
#[cfg(Py_3_11)]
|
||||
pub _is_python_build: c_int,
|
||||
#[cfg(all(Py_3_9, not(Py_3_10)))]
|
||||
pub _orig_argv: PyWideStringList,
|
||||
#[cfg(all(Py_3_13, py_sys_config = "Py_DEBUG"))]
|
||||
pub run_presite: *mut wchar_t,
|
||||
}
|
||||
|
||||
extern_libpython! {
|
||||
pub fn PyConfig_InitPythonConfig(config: *mut PyConfig);
|
||||
pub fn PyConfig_InitIsolatedConfig(config: *mut PyConfig);
|
||||
pub fn PyConfig_Clear(config: *mut PyConfig);
|
||||
pub fn PyConfig_SetString(
|
||||
config: *mut PyConfig,
|
||||
config_str: *mut *mut wchar_t,
|
||||
str: *const wchar_t,
|
||||
) -> PyStatus;
|
||||
pub fn PyConfig_SetBytesString(
|
||||
config: *mut PyConfig,
|
||||
config_str: *mut *mut wchar_t,
|
||||
str: *const c_char,
|
||||
) -> PyStatus;
|
||||
pub fn PyConfig_Read(config: *mut PyConfig) -> PyStatus;
|
||||
pub fn PyConfig_SetBytesArgv(
|
||||
config: *mut PyConfig,
|
||||
argc: Py_ssize_t,
|
||||
argv: *mut *const c_char,
|
||||
) -> PyStatus;
|
||||
pub fn PyConfig_SetArgv(
|
||||
config: *mut PyConfig,
|
||||
argc: Py_ssize_t,
|
||||
argv: *mut *const wchar_t,
|
||||
) -> PyStatus;
|
||||
pub fn PyConfig_SetWideStringList(
|
||||
config: *mut PyConfig,
|
||||
list: *mut PyWideStringList,
|
||||
length: Py_ssize_t,
|
||||
items: *mut *mut wchar_t,
|
||||
) -> PyStatus;
|
||||
}
|
||||
|
||||
/* --- Helper functions --------------------------------------- */
|
||||
|
||||
extern_libpython! {
|
||||
pub fn Py_GetArgcArgv(argc: *mut c_int, argv: *mut *mut *mut wchar_t);
|
||||
}
|
||||
Reference in new issue
Block a user