/* automatically generated by rust-bindgen 0.58.0 */ /// This file is used to build the documentation for `ext-php-rs` when being built on docs.rs runners. /// As these runners do not have PHP 8.0 installed, they are unable to generate the bindings to the PHP /// APIs. /// This file was generated under the following conditions: /// /// PHP 8.0.10 (cli) (built: Sep 2 2021 13:52:33) ( NTS DEBUG ) /// Copyright (c) The PHP Group /// Zend Engine v4.0.10, Copyright (c) Zend Technologies /// /// Arch Linux 2021.09.01 - Linux 5.10.43.3-microsoft-standard-WSL2 x86_64 pub const ZEND_DEBUG: u32 = 1; pub const ZEND_MM_ALIGNMENT: u32 = 8; pub const _ZEND_TYPE_NAME_BIT: u32 = 8388608; pub const _ZEND_TYPE_NULLABLE_BIT: u32 = 2; pub const HT_MIN_SIZE: u32 = 8; pub const IS_UNDEF: u32 = 0; pub const IS_NULL: u32 = 1; pub const IS_FALSE: u32 = 2; pub const IS_TRUE: u32 = 3; pub const IS_LONG: u32 = 4; pub const IS_DOUBLE: u32 = 5; pub const IS_STRING: u32 = 6; pub const IS_ARRAY: u32 = 7; pub const IS_OBJECT: u32 = 8; pub const IS_RESOURCE: u32 = 9; pub const IS_REFERENCE: u32 = 10; pub const IS_CONSTANT_AST: u32 = 11; pub const IS_CALLABLE: u32 = 12; pub const IS_VOID: u32 = 14; pub const IS_MIXED: u32 = 16; pub const _IS_BOOL: u32 = 17; pub const Z_TYPE_FLAGS_SHIFT: u32 = 8; pub const IS_TYPE_REFCOUNTED: u32 = 1; pub const IS_TYPE_COLLECTABLE: u32 = 2; pub const IS_INTERNED_STRING_EX: u32 = 6; pub const IS_STRING_EX: u32 = 262; pub const IS_ARRAY_EX: u32 = 775; pub const IS_OBJECT_EX: u32 = 776; pub const IS_RESOURCE_EX: u32 = 265; pub const IS_REFERENCE_EX: u32 = 266; pub const IS_CONSTANT_AST_EX: u32 = 267; pub const ZEND_MM_ALIGNMENT_MASK: i32 = -8; pub const ZEND_PROPERTY_ISSET: u32 = 0; pub const ZEND_PROPERTY_EXISTS: u32 = 2; pub const ZEND_ACC_PUBLIC: u32 = 1; pub const ZEND_ACC_PROTECTED: u32 = 2; pub const ZEND_ACC_PRIVATE: u32 = 4; pub const ZEND_ACC_CHANGED: u32 = 8; pub const ZEND_ACC_STATIC: u32 = 16; pub const ZEND_ACC_PROMOTED: u32 = 32; pub const ZEND_ACC_FINAL: u32 = 32; pub const ZEND_ACC_ABSTRACT: u32 = 64; pub const ZEND_ACC_IMMUTABLE: u32 = 128; pub const ZEND_ACC_HAS_TYPE_HINTS: u32 = 256; pub const ZEND_ACC_TOP_LEVEL: u32 = 512; pub const ZEND_ACC_PRELOADED: u32 = 1024; pub const ZEND_ACC_INTERFACE: u32 = 1; pub const ZEND_ACC_TRAIT: u32 = 2; pub const ZEND_ACC_ANON_CLASS: u32 = 4; pub const ZEND_ACC_LINKED: u32 = 8; pub const ZEND_ACC_IMPLICIT_ABSTRACT_CLASS: u32 = 16; pub const ZEND_ACC_USE_GUARDS: u32 = 2048; pub const ZEND_ACC_CONSTANTS_UPDATED: u32 = 4096; pub const ZEND_ACC_NO_DYNAMIC_PROPERTIES: u32 = 8192; pub const ZEND_HAS_STATIC_IN_METHODS: u32 = 16384; pub const ZEND_ACC_PROPERTY_TYPES_RESOLVED: u32 = 32768; pub const ZEND_ACC_REUSE_GET_ITERATOR: u32 = 65536; pub const ZEND_ACC_RESOLVED_PARENT: u32 = 131072; pub const ZEND_ACC_RESOLVED_INTERFACES: u32 = 262144; pub const ZEND_ACC_UNRESOLVED_VARIANCE: u32 = 524288; pub const ZEND_ACC_NEARLY_LINKED: u32 = 1048576; pub const ZEND_ACC_HAS_UNLINKED_USES: u32 = 2097152; pub const ZEND_ACC_DEPRECATED: u32 = 2048; pub const ZEND_ACC_RETURN_REFERENCE: u32 = 4096; pub const ZEND_ACC_HAS_RETURN_TYPE: u32 = 8192; pub const ZEND_ACC_VARIADIC: u32 = 16384; pub const ZEND_ACC_HAS_FINALLY_BLOCK: u32 = 32768; pub const ZEND_ACC_EARLY_BINDING: u32 = 65536; pub const ZEND_ACC_USES_THIS: u32 = 131072; pub const ZEND_ACC_CALL_VIA_TRAMPOLINE: u32 = 262144; pub const ZEND_ACC_NEVER_CACHE: u32 = 524288; pub const ZEND_ACC_TRAIT_CLONE: u32 = 1048576; pub const ZEND_ACC_CTOR: u32 = 2097152; pub const ZEND_ACC_CLOSURE: u32 = 4194304; pub const ZEND_ACC_FAKE_CLOSURE: u32 = 8388608; pub const ZEND_ACC_GENERATOR: u32 = 16777216; pub const ZEND_ACC_DONE_PASS_TWO: u32 = 33554432; pub const ZEND_ACC_HEAP_RT_CACHE: u32 = 67108864; pub const ZEND_ACC_STRICT_TYPES: u32 = 2147483648; pub const ZEND_ISEMPTY: u32 = 1; pub const _ZEND_SEND_MODE_SHIFT: u32 = 24; pub const _ZEND_IS_VARIADIC_BIT: u32 = 67108864; pub const ZEND_MODULE_API_NO: u32 = 20200930; pub const USING_ZTS: u32 = 0; pub const MAY_BE_BOOL: u32 = 12; pub const MAY_BE_ANY: u32 = 1022; pub const CONST_CS: u32 = 0; pub const CONST_PERSISTENT: u32 = 1; pub const CONST_NO_FILE_CACHE: u32 = 2; pub const CONST_DEPRECATED: u32 = 4; pub type size_t = ::std::os::raw::c_ulong; pub type __uint8_t = ::std::os::raw::c_uchar; pub type __uint16_t = ::std::os::raw::c_ushort; pub type __uint32_t = ::std::os::raw::c_uint; pub type __int64_t = ::std::os::raw::c_long; pub type __uint64_t = ::std::os::raw::c_ulong; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __sigset_t { pub __val: [::std::os::raw::c_ulong; 16usize], } pub type zend_long = i64; pub type zend_ulong = u64; pub type zend_bool = bool; pub type zend_uchar = ::std::os::raw::c_uchar; pub const ZEND_RESULT_CODE_SUCCESS: ZEND_RESULT_CODE = 0; pub const ZEND_RESULT_CODE_FAILURE: ZEND_RESULT_CODE = -1; pub type ZEND_RESULT_CODE = ::std::os::raw::c_int; pub use self::ZEND_RESULT_CODE as zend_result; pub type zend_object_handlers = _zend_object_handlers; pub type zend_class_entry = _zend_class_entry; pub type zend_function = _zend_function; pub type zend_execute_data = _zend_execute_data; pub type zval = _zval_struct; pub type zend_refcounted = _zend_refcounted; pub type zend_string = _zend_string; pub type zend_array = _zend_array; pub type zend_object = _zend_object; pub type zend_resource = _zend_resource; pub type zend_reference = _zend_reference; pub type zend_ast_ref = _zend_ast_ref; pub type dtor_func_t = ::std::option::Option; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct zend_type { pub ptr: *mut ::std::os::raw::c_void, pub type_mask: u32, } #[repr(C)] pub union _zend_value { pub lval: zend_long, pub dval: f64, pub counted: *mut zend_refcounted, pub str_: *mut zend_string, pub arr: *mut zend_array, pub obj: *mut zend_object, pub res: *mut zend_resource, pub ref_: *mut zend_reference, pub ast: *mut zend_ast_ref, pub zv: *mut zval, pub ptr: *mut ::std::os::raw::c_void, pub ce: *mut zend_class_entry, pub func: *mut zend_function, pub ww: _zend_value__bindgen_ty_1, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_value__bindgen_ty_1 { pub w1: u32, pub w2: u32, } pub type zend_value = _zend_value; #[repr(C)] pub struct _zval_struct { pub value: zend_value, pub u1: _zval_struct__bindgen_ty_1, pub u2: _zval_struct__bindgen_ty_2, } #[repr(C)] #[derive(Copy, Clone)] pub union _zval_struct__bindgen_ty_1 { pub type_info: u32, pub v: _zval_struct__bindgen_ty_1__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] pub struct _zval_struct__bindgen_ty_1__bindgen_ty_1 { pub type_: zend_uchar, pub type_flags: zend_uchar, pub u: _zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] pub union _zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 { pub extra: u16, } #[repr(C)] #[derive(Copy, Clone)] pub union _zval_struct__bindgen_ty_2 { pub next: u32, pub cache_slot: u32, pub opline_num: u32, pub lineno: u32, pub num_args: u32, pub fe_pos: u32, pub fe_iter_idx: u32, pub access_flags: u32, pub property_guard: u32, pub constant_flags: u32, pub extra: u32, } #[repr(C)] #[derive(Copy, Clone)] pub struct _zend_refcounted_h { pub refcount: u32, pub u: _zend_refcounted_h__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] pub union _zend_refcounted_h__bindgen_ty_1 { pub type_info: u32, } pub type zend_refcounted_h = _zend_refcounted_h; #[repr(C)] #[derive(Copy, Clone)] pub struct _zend_refcounted { pub gc: zend_refcounted_h, } #[repr(C)] #[derive(Copy, Clone)] pub struct _zend_string { pub gc: zend_refcounted_h, pub h: zend_ulong, pub len: size_t, pub val: [::std::os::raw::c_char; 1usize], } #[repr(C)] pub struct _Bucket { pub val: zval, pub h: zend_ulong, pub key: *mut zend_string, } pub type Bucket = _Bucket; pub type HashTable = _zend_array; #[repr(C)] #[derive(Copy, Clone)] pub struct _zend_array { pub gc: zend_refcounted_h, pub u: _zend_array__bindgen_ty_1, pub nTableMask: u32, pub arData: *mut Bucket, pub nNumUsed: u32, pub nNumOfElements: u32, pub nTableSize: u32, pub nInternalPointer: u32, pub nNextFreeElement: zend_long, pub pDestructor: dtor_func_t, } #[repr(C)] #[derive(Copy, Clone)] pub union _zend_array__bindgen_ty_1 { pub v: _zend_array__bindgen_ty_1__bindgen_ty_1, pub flags: u32, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_array__bindgen_ty_1__bindgen_ty_1 { pub flags: zend_uchar, pub _unused: zend_uchar, pub nIteratorsCount: zend_uchar, pub _unused2: zend_uchar, } pub type HashPosition = u32; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _HashTableIterator { pub ht: *mut HashTable, pub pos: HashPosition, } pub type HashTableIterator = _HashTableIterator; #[repr(C)] pub struct _zend_object { pub gc: zend_refcounted_h, pub handle: u32, pub ce: *mut zend_class_entry, pub handlers: *const zend_object_handlers, pub properties: *mut HashTable, pub properties_table: [zval; 1usize], } #[repr(C)] #[derive(Copy, Clone)] pub struct _zend_resource { pub gc: zend_refcounted_h, pub handle: ::std::os::raw::c_int, pub type_: ::std::os::raw::c_int, pub ptr: *mut ::std::os::raw::c_void, } #[repr(C)] #[derive(Copy, Clone)] pub union zend_property_info_source_list { pub ptr: *mut _zend_property_info, pub list: usize, } #[repr(C)] pub struct _zend_reference { pub gc: zend_refcounted_h, pub val: zval, pub sources: zend_property_info_source_list, } #[repr(C)] #[derive(Copy, Clone)] pub struct _zend_ast_ref { pub gc: zend_refcounted_h, } extern "C" { pub fn _emalloc( size: size_t, __zend_filename: *const ::std::os::raw::c_char, __zend_lineno: u32, __zend_orig_filename: *const ::std::os::raw::c_char, __zend_orig_lineno: u32, ) -> *mut ::std::os::raw::c_void; } extern "C" { pub fn _efree( ptr: *mut ::std::os::raw::c_void, __zend_filename: *const ::std::os::raw::c_char, __zend_lineno: u32, __zend_orig_filename: *const ::std::os::raw::c_char, __zend_orig_lineno: u32, ); } pub type zend_string_init_interned_func_t = ::std::option::Option< unsafe extern "C" fn( str_: *const ::std::os::raw::c_char, size: size_t, permanent: bool, ) -> *mut zend_string, >; extern "C" { pub static mut zend_string_init_interned: zend_string_init_interned_func_t; } extern "C" { pub fn zend_hash_clean(ht: *mut HashTable); } extern "C" { pub fn zend_hash_str_update( ht: *mut HashTable, key: *const ::std::os::raw::c_char, len: size_t, pData: *mut zval, ) -> *mut zval; } extern "C" { pub fn zend_hash_index_update(ht: *mut HashTable, h: zend_ulong, pData: *mut zval) -> *mut zval; } extern "C" { pub fn zend_hash_next_index_insert(ht: *mut HashTable, pData: *mut zval) -> *mut zval; } extern "C" { pub fn zend_hash_str_del( ht: *mut HashTable, key: *const ::std::os::raw::c_char, len: size_t, ) -> zend_result; } extern "C" { pub fn zend_hash_index_del(ht: *mut HashTable, h: zend_ulong) -> zend_result; } extern "C" { pub fn zend_hash_str_find( ht: *const HashTable, key: *const ::std::os::raw::c_char, len: size_t, ) -> *mut zval; } extern "C" { pub fn zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval; } extern "C" { pub fn _zend_new_array(size: u32) -> *mut HashTable; } extern "C" { pub fn zend_array_dup(source: *mut HashTable) -> *mut HashTable; } extern "C" { pub fn zend_array_destroy(ht: *mut HashTable); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct zend_get_gc_buffer { pub cur: *mut zval, pub end: *mut zval, pub start: *mut zval, } pub type zend_object_iterator = _zend_object_iterator; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_object_iterator_funcs { pub dtor: ::std::option::Option, pub valid: ::std::option::Option< unsafe extern "C" fn(iter: *mut zend_object_iterator) -> ::std::os::raw::c_int, >, pub get_current_data: ::std::option::Option *mut zval>, pub get_current_key: ::std::option::Option< unsafe extern "C" fn(iter: *mut zend_object_iterator, key: *mut zval), >, pub move_forward: ::std::option::Option, pub rewind: ::std::option::Option, pub invalidate_current: ::std::option::Option, pub get_gc: ::std::option::Option< unsafe extern "C" fn( iter: *mut zend_object_iterator, table: *mut *mut zval, n: *mut ::std::os::raw::c_int, ) -> *mut HashTable, >, } pub type zend_object_iterator_funcs = _zend_object_iterator_funcs; #[repr(C)] pub struct _zend_object_iterator { pub std: zend_object, pub data: zval, pub funcs: *const zend_object_iterator_funcs, pub index: zend_ulong, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_class_iterator_funcs { pub zf_new_iterator: *mut zend_function, pub zf_valid: *mut zend_function, pub zf_current: *mut zend_function, pub zf_key: *mut zend_function, pub zf_next: *mut zend_function, pub zf_rewind: *mut zend_function, } pub type zend_class_iterator_funcs = _zend_class_iterator_funcs; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_serialize_data { _unused: [u8; 0], } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_unserialize_data { _unused: [u8; 0], } pub type zend_serialize_data = _zend_serialize_data; pub type zend_unserialize_data = _zend_unserialize_data; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_class_name { pub name: *mut zend_string, pub lc_name: *mut zend_string, } pub type zend_class_name = _zend_class_name; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_trait_method_reference { pub method_name: *mut zend_string, pub class_name: *mut zend_string, } pub type zend_trait_method_reference = _zend_trait_method_reference; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_trait_precedence { pub trait_method: zend_trait_method_reference, pub num_excludes: u32, pub exclude_class_names: [*mut zend_string; 1usize], } pub type zend_trait_precedence = _zend_trait_precedence; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_trait_alias { pub trait_method: zend_trait_method_reference, #[doc = " name for method to be added"] pub alias: *mut zend_string, #[doc = " modifiers to be set on trait method"] pub modifiers: u32, } pub type zend_trait_alias = _zend_trait_alias; #[repr(C)] #[derive(Copy, Clone)] pub struct _zend_class_entry { pub type_: ::std::os::raw::c_char, pub name: *mut zend_string, pub __bindgen_anon_1: _zend_class_entry__bindgen_ty_1, pub refcount: ::std::os::raw::c_int, pub ce_flags: u32, pub default_properties_count: ::std::os::raw::c_int, pub default_static_members_count: ::std::os::raw::c_int, pub default_properties_table: *mut zval, pub default_static_members_table: *mut zval, pub static_members_table__ptr: *mut *mut zval, pub function_table: HashTable, pub properties_info: HashTable, pub constants_table: HashTable, pub properties_info_table: *mut *mut _zend_property_info, pub constructor: *mut zend_function, pub destructor: *mut zend_function, pub clone: *mut zend_function, pub __get: *mut zend_function, pub __set: *mut zend_function, pub __unset: *mut zend_function, pub __isset: *mut zend_function, pub __call: *mut zend_function, pub __callstatic: *mut zend_function, pub __tostring: *mut zend_function, pub __debugInfo: *mut zend_function, pub __serialize: *mut zend_function, pub __unserialize: *mut zend_function, pub iterator_funcs_ptr: *mut zend_class_iterator_funcs, pub __bindgen_anon_2: _zend_class_entry__bindgen_ty_2, pub get_iterator: ::std::option::Option< unsafe extern "C" fn( ce: *mut zend_class_entry, object: *mut zval, by_ref: ::std::os::raw::c_int, ) -> *mut zend_object_iterator, >, pub get_static_method: ::std::option::Option< unsafe extern "C" fn( ce: *mut zend_class_entry, method: *mut zend_string, ) -> *mut zend_function, >, pub serialize: ::std::option::Option< unsafe extern "C" fn( object: *mut zval, buffer: *mut *mut ::std::os::raw::c_uchar, buf_len: *mut size_t, data: *mut zend_serialize_data, ) -> ::std::os::raw::c_int, >, pub unserialize: ::std::option::Option< unsafe extern "C" fn( object: *mut zval, ce: *mut zend_class_entry, buf: *const ::std::os::raw::c_uchar, buf_len: size_t, data: *mut zend_unserialize_data, ) -> ::std::os::raw::c_int, >, pub num_interfaces: u32, pub num_traits: u32, pub __bindgen_anon_3: _zend_class_entry__bindgen_ty_3, pub trait_names: *mut zend_class_name, pub trait_aliases: *mut *mut zend_trait_alias, pub trait_precedences: *mut *mut zend_trait_precedence, pub attributes: *mut HashTable, pub info: _zend_class_entry__bindgen_ty_4, } #[repr(C)] #[derive(Copy, Clone)] pub union _zend_class_entry__bindgen_ty_1 { pub parent: *mut zend_class_entry, pub parent_name: *mut zend_string, } #[repr(C)] #[derive(Copy, Clone)] pub union _zend_class_entry__bindgen_ty_2 { pub create_object: ::std::option::Option< unsafe extern "C" fn(class_type: *mut zend_class_entry) -> *mut zend_object, >, pub interface_gets_implemented: ::std::option::Option< unsafe extern "C" fn( iface: *mut zend_class_entry, class_type: *mut zend_class_entry, ) -> ::std::os::raw::c_int, >, } #[repr(C)] #[derive(Copy, Clone)] pub union _zend_class_entry__bindgen_ty_3 { pub interfaces: *mut *mut zend_class_entry, pub interface_names: *mut zend_class_name, } #[repr(C)] #[derive(Copy, Clone)] pub union _zend_class_entry__bindgen_ty_4 { pub user: _zend_class_entry__bindgen_ty_4__bindgen_ty_1, pub internal: _zend_class_entry__bindgen_ty_4__bindgen_ty_2, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_class_entry__bindgen_ty_4__bindgen_ty_1 { pub filename: *mut zend_string, pub line_start: u32, pub line_end: u32, pub doc_comment: *mut zend_string, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_class_entry__bindgen_ty_4__bindgen_ty_2 { pub builtin_functions: *const _zend_function_entry, pub module: *mut _zend_module_entry, } pub const zend_error_handling_t_EH_NORMAL: zend_error_handling_t = 0; pub const zend_error_handling_t_EH_THROW: zend_error_handling_t = 1; pub type zend_error_handling_t = ::std::os::raw::c_uint; pub type zend_object_read_property_t = ::std::option::Option< unsafe extern "C" fn( object: *mut zend_object, member: *mut zend_string, type_: ::std::os::raw::c_int, cache_slot: *mut *mut ::std::os::raw::c_void, rv: *mut zval, ) -> *mut zval, >; pub type zend_object_read_dimension_t = ::std::option::Option< unsafe extern "C" fn( object: *mut zend_object, offset: *mut zval, type_: ::std::os::raw::c_int, rv: *mut zval, ) -> *mut zval, >; pub type zend_object_write_property_t = ::std::option::Option< unsafe extern "C" fn( object: *mut zend_object, member: *mut zend_string, value: *mut zval, cache_slot: *mut *mut ::std::os::raw::c_void, ) -> *mut zval, >; pub type zend_object_write_dimension_t = ::std::option::Option< unsafe extern "C" fn(object: *mut zend_object, offset: *mut zval, value: *mut zval), >; pub type zend_object_get_property_ptr_ptr_t = ::std::option::Option< unsafe extern "C" fn( object: *mut zend_object, member: *mut zend_string, type_: ::std::os::raw::c_int, cache_slot: *mut *mut ::std::os::raw::c_void, ) -> *mut zval, >; pub type zend_object_has_property_t = ::std::option::Option< unsafe extern "C" fn( object: *mut zend_object, member: *mut zend_string, has_set_exists: ::std::os::raw::c_int, cache_slot: *mut *mut ::std::os::raw::c_void, ) -> ::std::os::raw::c_int, >; pub type zend_object_has_dimension_t = ::std::option::Option< unsafe extern "C" fn( object: *mut zend_object, member: *mut zval, check_empty: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int, >; pub type zend_object_unset_property_t = ::std::option::Option< unsafe extern "C" fn( object: *mut zend_object, member: *mut zend_string, cache_slot: *mut *mut ::std::os::raw::c_void, ), >; pub type zend_object_unset_dimension_t = ::std::option::Option; pub type zend_object_get_properties_t = ::std::option::Option *mut HashTable>; pub type zend_object_get_debug_info_t = ::std::option::Option< unsafe extern "C" fn( object: *mut zend_object, is_temp: *mut ::std::os::raw::c_int, ) -> *mut HashTable, >; pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_DEBUG: _zend_prop_purpose = 0; pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_ARRAY_CAST: _zend_prop_purpose = 1; pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_SERIALIZE: _zend_prop_purpose = 2; pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_VAR_EXPORT: _zend_prop_purpose = 3; pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_JSON: _zend_prop_purpose = 4; pub const _zend_prop_purpose__ZEND_PROP_PURPOSE_NON_EXHAUSTIVE_ENUM: _zend_prop_purpose = 5; pub type _zend_prop_purpose = ::std::os::raw::c_uint; pub use self::_zend_prop_purpose as zend_prop_purpose; pub type zend_object_get_properties_for_t = ::std::option::Option< unsafe extern "C" fn(object: *mut zend_object, purpose: zend_prop_purpose) -> *mut zend_array, >; pub type zend_object_get_method_t = ::std::option::Option< unsafe extern "C" fn( object: *mut *mut zend_object, method: *mut zend_string, key: *const zval, ) -> *mut zend_function, >; pub type zend_object_get_constructor_t = ::std::option::Option *mut zend_function>; pub type zend_object_dtor_obj_t = ::std::option::Option; pub type zend_object_free_obj_t = ::std::option::Option; pub type zend_object_clone_obj_t = ::std::option::Option *mut zend_object>; pub type zend_object_get_class_name_t = ::std::option::Option *mut zend_string>; pub type zend_object_compare_t = ::std::option::Option< unsafe extern "C" fn(object1: *mut zval, object2: *mut zval) -> ::std::os::raw::c_int, >; pub type zend_object_cast_t = ::std::option::Option< unsafe extern "C" fn( readobj: *mut zend_object, retval: *mut zval, type_: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int, >; pub type zend_object_count_elements_t = ::std::option::Option< unsafe extern "C" fn(object: *mut zend_object, count: *mut zend_long) -> ::std::os::raw::c_int, >; pub type zend_object_get_closure_t = ::std::option::Option< unsafe extern "C" fn( obj: *mut zend_object, ce_ptr: *mut *mut zend_class_entry, fptr_ptr: *mut *mut zend_function, obj_ptr: *mut *mut zend_object, check_only: zend_bool, ) -> ::std::os::raw::c_int, >; pub type zend_object_get_gc_t = ::std::option::Option< unsafe extern "C" fn( object: *mut zend_object, table: *mut *mut zval, n: *mut ::std::os::raw::c_int, ) -> *mut HashTable, >; pub type zend_object_do_operation_t = ::std::option::Option< unsafe extern "C" fn( opcode: zend_uchar, result: *mut zval, op1: *mut zval, op2: *mut zval, ) -> ::std::os::raw::c_int, >; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_object_handlers { pub offset: ::std::os::raw::c_int, pub free_obj: zend_object_free_obj_t, pub dtor_obj: zend_object_dtor_obj_t, pub clone_obj: zend_object_clone_obj_t, pub read_property: zend_object_read_property_t, pub write_property: zend_object_write_property_t, pub read_dimension: zend_object_read_dimension_t, pub write_dimension: zend_object_write_dimension_t, pub get_property_ptr_ptr: zend_object_get_property_ptr_ptr_t, pub has_property: zend_object_has_property_t, pub unset_property: zend_object_unset_property_t, pub has_dimension: zend_object_has_dimension_t, pub unset_dimension: zend_object_unset_dimension_t, pub get_properties: zend_object_get_properties_t, pub get_method: zend_object_get_method_t, pub get_constructor: zend_object_get_constructor_t, pub get_class_name: zend_object_get_class_name_t, pub cast_object: zend_object_cast_t, pub count_elements: zend_object_count_elements_t, pub get_debug_info: zend_object_get_debug_info_t, pub get_closure: zend_object_get_closure_t, pub get_gc: zend_object_get_gc_t, pub do_operation: zend_object_do_operation_t, pub compare: zend_object_compare_t, pub get_properties_for: zend_object_get_properties_for_t, } extern "C" { pub static std_object_handlers: zend_object_handlers; } pub type zend_op_array = _zend_op_array; pub type zend_op = _zend_op; #[repr(C)] #[derive(Copy, Clone)] pub union _znode_op { pub constant: u32, pub var: u32, pub num: u32, pub opline_num: u32, pub jmp_offset: u32, } pub type znode_op = _znode_op; #[repr(C)] #[derive(Copy, Clone)] pub struct _zend_op { pub handler: *const ::std::os::raw::c_void, pub op1: znode_op, pub op2: znode_op, pub result: znode_op, pub extended_value: u32, pub lineno: u32, pub opcode: zend_uchar, pub op1_type: zend_uchar, pub op2_type: zend_uchar, pub result_type: zend_uchar, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_try_catch_element { pub try_op: u32, pub catch_op: u32, pub finally_op: u32, pub finally_end: u32, } pub type zend_try_catch_element = _zend_try_catch_element; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_live_range { pub var: u32, pub start: u32, pub end: u32, } pub type zend_live_range = _zend_live_range; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_property_info { pub offset: u32, pub flags: u32, pub name: *mut zend_string, pub doc_comment: *mut zend_string, pub attributes: *mut HashTable, pub ce: *mut zend_class_entry, pub type_: zend_type, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_internal_arg_info { pub name: *const ::std::os::raw::c_char, pub type_: zend_type, pub default_value: *const ::std::os::raw::c_char, } pub type zend_internal_arg_info = _zend_internal_arg_info; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_arg_info { pub name: *mut zend_string, pub type_: zend_type, pub default_value: *mut zend_string, } pub type zend_arg_info = _zend_arg_info; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_op_array { pub type_: zend_uchar, pub arg_flags: [zend_uchar; 3usize], pub fn_flags: u32, pub function_name: *mut zend_string, pub scope: *mut zend_class_entry, pub prototype: *mut zend_function, pub num_args: u32, pub required_num_args: u32, pub arg_info: *mut zend_arg_info, pub attributes: *mut HashTable, pub cache_size: ::std::os::raw::c_int, pub last_var: ::std::os::raw::c_int, pub T: u32, pub last: u32, pub opcodes: *mut zend_op, pub run_time_cache__ptr: *mut *mut *mut ::std::os::raw::c_void, pub static_variables_ptr__ptr: *mut *mut HashTable, pub static_variables: *mut HashTable, pub vars: *mut *mut zend_string, pub refcount: *mut u32, pub last_live_range: ::std::os::raw::c_int, pub last_try_catch: ::std::os::raw::c_int, pub live_range: *mut zend_live_range, pub try_catch_array: *mut zend_try_catch_element, pub filename: *mut zend_string, pub line_start: u32, pub line_end: u32, pub doc_comment: *mut zend_string, pub last_literal: ::std::os::raw::c_int, pub literals: *mut zval, pub reserved: [*mut ::std::os::raw::c_void; 6usize], } pub type zif_handler = ::std::option::Option< unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval), >; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_internal_function { pub type_: zend_uchar, pub arg_flags: [zend_uchar; 3usize], pub fn_flags: u32, pub function_name: *mut zend_string, pub scope: *mut zend_class_entry, pub prototype: *mut zend_function, pub num_args: u32, pub required_num_args: u32, pub arg_info: *mut zend_internal_arg_info, pub attributes: *mut HashTable, pub handler: zif_handler, pub module: *mut _zend_module_entry, pub reserved: [*mut ::std::os::raw::c_void; 6usize], } pub type zend_internal_function = _zend_internal_function; #[repr(C)] #[derive(Copy, Clone)] pub union _zend_function { pub type_: zend_uchar, pub quick_arg_flags: u32, pub common: _zend_function__bindgen_ty_1, pub op_array: zend_op_array, pub internal_function: zend_internal_function, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_function__bindgen_ty_1 { pub type_: zend_uchar, pub arg_flags: [zend_uchar; 3usize], pub fn_flags: u32, pub function_name: *mut zend_string, pub scope: *mut zend_class_entry, pub prototype: *mut zend_function, pub num_args: u32, pub required_num_args: u32, pub arg_info: *mut zend_arg_info, pub attributes: *mut HashTable, } #[repr(C)] pub struct _zend_execute_data { pub opline: *const zend_op, pub call: *mut zend_execute_data, pub return_value: *mut zval, pub func: *mut zend_function, pub This: zval, pub prev_execute_data: *mut zend_execute_data, pub symbol_table: *mut zend_array, pub run_time_cache: *mut *mut ::std::os::raw::c_void, pub extra_named_params: *mut zend_array, } pub type __jmp_buf = [::std::os::raw::c_long; 8usize]; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __jmp_buf_tag { pub __jmpbuf: __jmp_buf, pub __mask_was_saved: ::std::os::raw::c_int, pub __saved_mask: __sigset_t, } pub type jmp_buf = [__jmp_buf_tag; 1usize]; pub type zend_executor_globals = _zend_executor_globals; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_stack { pub size: ::std::os::raw::c_int, pub top: ::std::os::raw::c_int, pub max: ::std::os::raw::c_int, pub elements: *mut ::std::os::raw::c_void, } pub type zend_stack = _zend_stack; extern "C" { pub fn zend_object_std_init(object: *mut zend_object, ce: *mut zend_class_entry); } extern "C" { pub fn zend_objects_clone_members(new_object: *mut zend_object, old_object: *mut zend_object); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_objects_store { pub object_buckets: *mut *mut zend_object, pub top: u32, pub size: u32, pub free_list_head: ::std::os::raw::c_int, } pub type zend_objects_store = _zend_objects_store; pub type zend_vm_stack = *mut _zend_vm_stack; pub type zend_ini_entry = _zend_ini_entry; #[repr(C)] pub struct _zend_executor_globals { pub uninitialized_zval: zval, pub error_zval: zval, pub symtable_cache: [*mut zend_array; 32usize], pub symtable_cache_limit: *mut *mut zend_array, pub symtable_cache_ptr: *mut *mut zend_array, pub symbol_table: zend_array, pub included_files: HashTable, pub bailout: *mut jmp_buf, pub error_reporting: ::std::os::raw::c_int, pub exit_status: ::std::os::raw::c_int, pub function_table: *mut HashTable, pub class_table: *mut HashTable, pub zend_constants: *mut HashTable, pub vm_stack_top: *mut zval, pub vm_stack_end: *mut zval, pub vm_stack: zend_vm_stack, pub vm_stack_page_size: size_t, pub current_execute_data: *mut _zend_execute_data, pub fake_scope: *mut zend_class_entry, pub jit_trace_num: u32, pub precision: zend_long, pub ticks_count: ::std::os::raw::c_int, pub persistent_constants_count: u32, pub persistent_functions_count: u32, pub persistent_classes_count: u32, pub in_autoload: *mut HashTable, pub full_tables_cleanup: zend_bool, pub no_extensions: zend_bool, pub vm_interrupt: zend_bool, pub timed_out: zend_bool, pub hard_timeout: zend_long, pub regular_list: HashTable, pub persistent_list: HashTable, pub user_error_handler_error_reporting: ::std::os::raw::c_int, pub user_error_handler: zval, pub user_exception_handler: zval, pub user_error_handlers_error_reporting: zend_stack, pub user_error_handlers: zend_stack, pub user_exception_handlers: zend_stack, pub error_handling: zend_error_handling_t, pub exception_class: *mut zend_class_entry, pub timeout_seconds: zend_long, pub lambda_count: ::std::os::raw::c_int, pub ini_directives: *mut HashTable, pub modified_ini_directives: *mut HashTable, pub error_reporting_ini_entry: *mut zend_ini_entry, pub objects_store: zend_objects_store, pub exception: *mut zend_object, pub prev_exception: *mut zend_object, pub opline_before_exception: *const zend_op, pub exception_op: [zend_op; 3usize], pub current_module: *mut _zend_module_entry, pub active: zend_bool, pub flags: zend_uchar, pub assertions: zend_long, pub ht_iterators_count: u32, pub ht_iterators_used: u32, pub ht_iterators: *mut HashTableIterator, pub ht_iterators_slots: [HashTableIterator; 16usize], pub saved_fpu_cw_ptr: *mut ::std::os::raw::c_void, pub trampoline: zend_function, pub call_trampoline_op: zend_op, pub weakrefs: HashTable, pub exception_ignore_args: zend_bool, pub exception_string_param_max_len: zend_long, pub get_gc_buffer: zend_get_gc_buffer, pub reserved: [*mut ::std::os::raw::c_void; 6usize], } pub type zend_module_entry = _zend_module_entry; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_module_entry { pub size: ::std::os::raw::c_ushort, pub zend_api: ::std::os::raw::c_uint, pub zend_debug: ::std::os::raw::c_uchar, pub zts: ::std::os::raw::c_uchar, pub ini_entry: *const _zend_ini_entry, pub deps: *const _zend_module_dep, pub name: *const ::std::os::raw::c_char, pub functions: *const _zend_function_entry, pub module_startup_func: ::std::option::Option< unsafe extern "C" fn( type_: ::std::os::raw::c_int, module_number: ::std::os::raw::c_int, ) -> zend_result, >, pub module_shutdown_func: ::std::option::Option< unsafe extern "C" fn( type_: ::std::os::raw::c_int, module_number: ::std::os::raw::c_int, ) -> zend_result, >, pub request_startup_func: ::std::option::Option< unsafe extern "C" fn( type_: ::std::os::raw::c_int, module_number: ::std::os::raw::c_int, ) -> zend_result, >, pub request_shutdown_func: ::std::option::Option< unsafe extern "C" fn( type_: ::std::os::raw::c_int, module_number: ::std::os::raw::c_int, ) -> zend_result, >, pub info_func: ::std::option::Option, pub version: *const ::std::os::raw::c_char, pub globals_size: size_t, pub globals_ptr: *mut ::std::os::raw::c_void, pub globals_ctor: ::std::option::Option, pub globals_dtor: ::std::option::Option, pub post_deactivate_func: ::std::option::Option zend_result>, pub module_started: ::std::os::raw::c_int, pub type_: ::std::os::raw::c_uchar, pub handle: *mut ::std::os::raw::c_void, pub module_number: ::std::os::raw::c_int, pub build_id: *const ::std::os::raw::c_char, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_module_dep { pub name: *const ::std::os::raw::c_char, pub rel: *const ::std::os::raw::c_char, pub version: *const ::std::os::raw::c_char, pub type_: ::std::os::raw::c_uchar, } extern "C" { pub fn zend_lookup_class_ex( name: *mut zend_string, lcname: *mut zend_string, flags: u32, ) -> *mut zend_class_entry; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_vm_stack { pub top: *mut zval, pub end: *mut zval, pub prev: zend_vm_stack, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_function_entry { pub fname: *const ::std::os::raw::c_char, pub handler: zif_handler, pub arg_info: *const _zend_internal_arg_info, pub num_args: u32, pub flags: u32, } pub type zend_function_entry = _zend_function_entry; extern "C" { pub fn zend_register_internal_class_ex( class_entry: *mut zend_class_entry, parent_ce: *mut zend_class_entry, ) -> *mut zend_class_entry; } extern "C" { pub fn zend_is_callable( callable: *mut zval, check_flags: u32, callable_name: *mut *mut zend_string, ) -> zend_bool; } extern "C" { pub fn zend_declare_property( ce: *mut zend_class_entry, name: *const ::std::os::raw::c_char, name_length: size_t, property: *mut zval, access_type: ::std::os::raw::c_int, ); } extern "C" { pub fn zend_declare_class_constant( ce: *mut zend_class_entry, name: *const ::std::os::raw::c_char, name_length: size_t, value: *mut zval, ); } extern "C" { pub fn object_properties_init(object: *mut zend_object, class_type: *mut zend_class_entry); } extern "C" { pub fn _call_user_function_impl( object: *mut zval, function_name: *mut zval, retval_ptr: *mut zval, param_count: u32, params: *mut zval, named_params: *mut HashTable, ) -> zend_result; } pub const _zend_expected_type_Z_EXPECTED_LONG: _zend_expected_type = 0; pub const _zend_expected_type_Z_EXPECTED_LONG_OR_NULL: _zend_expected_type = 1; pub const _zend_expected_type_Z_EXPECTED_BOOL: _zend_expected_type = 2; pub const _zend_expected_type_Z_EXPECTED_BOOL_OR_NULL: _zend_expected_type = 3; pub const _zend_expected_type_Z_EXPECTED_STRING: _zend_expected_type = 4; pub const _zend_expected_type_Z_EXPECTED_STRING_OR_NULL: _zend_expected_type = 5; pub const _zend_expected_type_Z_EXPECTED_ARRAY: _zend_expected_type = 6; pub const _zend_expected_type_Z_EXPECTED_ARRAY_OR_NULL: _zend_expected_type = 7; pub const _zend_expected_type_Z_EXPECTED_ARRAY_OR_LONG: _zend_expected_type = 8; pub const _zend_expected_type_Z_EXPECTED_ARRAY_OR_LONG_OR_NULL: _zend_expected_type = 9; pub const _zend_expected_type_Z_EXPECTED_ITERABLE: _zend_expected_type = 10; pub const _zend_expected_type_Z_EXPECTED_ITERABLE_OR_NULL: _zend_expected_type = 11; pub const _zend_expected_type_Z_EXPECTED_FUNC: _zend_expected_type = 12; pub const _zend_expected_type_Z_EXPECTED_FUNC_OR_NULL: _zend_expected_type = 13; pub const _zend_expected_type_Z_EXPECTED_RESOURCE: _zend_expected_type = 14; pub const _zend_expected_type_Z_EXPECTED_RESOURCE_OR_NULL: _zend_expected_type = 15; pub const _zend_expected_type_Z_EXPECTED_PATH: _zend_expected_type = 16; pub const _zend_expected_type_Z_EXPECTED_PATH_OR_NULL: _zend_expected_type = 17; pub const _zend_expected_type_Z_EXPECTED_OBJECT: _zend_expected_type = 18; pub const _zend_expected_type_Z_EXPECTED_OBJECT_OR_NULL: _zend_expected_type = 19; pub const _zend_expected_type_Z_EXPECTED_DOUBLE: _zend_expected_type = 20; pub const _zend_expected_type_Z_EXPECTED_DOUBLE_OR_NULL: _zend_expected_type = 21; pub const _zend_expected_type_Z_EXPECTED_NUMBER: _zend_expected_type = 22; pub const _zend_expected_type_Z_EXPECTED_NUMBER_OR_NULL: _zend_expected_type = 23; pub const _zend_expected_type_Z_EXPECTED_ARRAY_OR_STRING: _zend_expected_type = 24; pub const _zend_expected_type_Z_EXPECTED_ARRAY_OR_STRING_OR_NULL: _zend_expected_type = 25; pub const _zend_expected_type_Z_EXPECTED_STRING_OR_LONG: _zend_expected_type = 26; pub const _zend_expected_type_Z_EXPECTED_STRING_OR_LONG_OR_NULL: _zend_expected_type = 27; pub const _zend_expected_type_Z_EXPECTED_OBJECT_OR_CLASS_NAME: _zend_expected_type = 28; pub const _zend_expected_type_Z_EXPECTED_OBJECT_OR_CLASS_NAME_OR_NULL: _zend_expected_type = 29; pub const _zend_expected_type_Z_EXPECTED_OBJECT_OR_STRING: _zend_expected_type = 30; pub const _zend_expected_type_Z_EXPECTED_OBJECT_OR_STRING_OR_NULL: _zend_expected_type = 31; pub const _zend_expected_type_Z_EXPECTED_LAST: _zend_expected_type = 32; pub type _zend_expected_type = ::std::os::raw::c_uint; extern "C" { pub fn zend_wrong_parameters_count_error(min_num_args: u32, max_num_args: u32); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _zend_ini_entry { pub name: *mut zend_string, pub on_modify: ::std::option::Option< unsafe extern "C" fn( entry: *mut zend_ini_entry, new_value: *mut zend_string, mh_arg1: *mut ::std::os::raw::c_void, mh_arg2: *mut ::std::os::raw::c_void, mh_arg3: *mut ::std::os::raw::c_void, stage: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int, >, pub mh_arg1: *mut ::std::os::raw::c_void, pub mh_arg2: *mut ::std::os::raw::c_void, pub mh_arg3: *mut ::std::os::raw::c_void, pub value: *mut zend_string, pub orig_value: *mut zend_string, pub displayer: ::std::option::Option< unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int), >, pub module_number: ::std::os::raw::c_int, pub modifiable: u8, pub orig_modifiable: u8, pub modified: u8, } extern "C" { pub fn zend_register_bool_constant( name: *const ::std::os::raw::c_char, name_len: size_t, bval: zend_bool, flags: ::std::os::raw::c_int, module_number: ::std::os::raw::c_int, ); } extern "C" { pub fn zend_register_long_constant( name: *const ::std::os::raw::c_char, name_len: size_t, lval: zend_long, flags: ::std::os::raw::c_int, module_number: ::std::os::raw::c_int, ); } extern "C" { pub fn zend_register_double_constant( name: *const ::std::os::raw::c_char, name_len: size_t, dval: f64, flags: ::std::os::raw::c_int, module_number: ::std::os::raw::c_int, ); } extern "C" { pub fn zend_register_string_constant( name: *const ::std::os::raw::c_char, name_len: size_t, strval: *const ::std::os::raw::c_char, flags: ::std::os::raw::c_int, module_number: ::std::os::raw::c_int, ); } extern "C" { pub fn php_info_print_table_header(num_cols: ::std::os::raw::c_int, ...); } extern "C" { pub fn php_info_print_table_row(num_cols: ::std::os::raw::c_int, ...); } extern "C" { pub fn php_info_print_table_start(); } extern "C" { pub fn php_info_print_table_end(); } extern "C" { pub static mut zend_ce_throwable: *mut zend_class_entry; } extern "C" { pub static mut zend_ce_exception: *mut zend_class_entry; } extern "C" { pub static mut zend_ce_error_exception: *mut zend_class_entry; } extern "C" { pub static mut zend_ce_compile_error: *mut zend_class_entry; } extern "C" { pub static mut zend_ce_parse_error: *mut zend_class_entry; } extern "C" { pub static mut zend_ce_type_error: *mut zend_class_entry; } extern "C" { pub static mut zend_ce_argument_count_error: *mut zend_class_entry; } extern "C" { pub static mut zend_ce_value_error: *mut zend_class_entry; } extern "C" { pub static mut zend_ce_arithmetic_error: *mut zend_class_entry; } extern "C" { pub static mut zend_ce_division_by_zero_error: *mut zend_class_entry; } extern "C" { pub static mut zend_ce_unhandled_match_error: *mut zend_class_entry; } extern "C" { pub fn zend_throw_exception_ex( exception_ce: *mut zend_class_entry, code: zend_long, format: *const ::std::os::raw::c_char, ... ) -> *mut zend_object; } extern "C" { pub fn zend_do_implement_interface(ce: *mut zend_class_entry, iface: *mut zend_class_entry); } extern "C" { pub fn ext_php_rs_zend_string_init( str_: *const ::std::os::raw::c_char, len: size_t, persistent: bool, ) -> *mut zend_string; } extern "C" { pub fn ext_php_rs_zend_string_release(zs: *mut zend_string); } extern "C" { pub fn ext_php_rs_php_build_id() -> *const ::std::os::raw::c_char; } extern "C" { pub fn ext_php_rs_zend_object_alloc( obj_size: size_t, ce: *mut zend_class_entry, ) -> *mut ::std::os::raw::c_void; } extern "C" { pub fn ext_php_rs_zend_object_release(obj: *mut zend_object); } extern "C" { pub fn ext_php_rs_executor_globals() -> *mut zend_executor_globals; }