ext-php-rs/docsrs_bindings.rs
Niklas Mollenhauer 24d703d955
Add some standard zend interfaces (#164)
* Add some standard zend interfaces

The zend API also has some standard interfaces it exposes:
c8c09b4aae/Zend/zend_interfaces.h (L27-L33)
```
extern ZEND_API zend_class_entry *zend_ce_traversable;
extern ZEND_API zend_class_entry *zend_ce_aggregate;
extern ZEND_API zend_class_entry *zend_ce_iterator;
extern ZEND_API zend_class_entry *zend_ce_arrayaccess;
extern ZEND_API zend_class_entry *zend_ce_serializable;
extern ZEND_API zend_class_entry *zend_ce_countable;
extern ZEND_API zend_class_entry *zend_ce_stringable;
```

This surfaced in #163 and should make it possible to implement these interfaces.

* Add some links to the php documentation

* update docs.rs bindings

Co-authored-by: David Cole <david.cole1340@gmail.com>
2022-10-16 13:13:09 +13:00

1429 lines
47 KiB
Rust

/* automatically generated by rust-bindgen 0.60.1 */
pub const ZEND_DEBUG: u32 = 1;
pub const _ZEND_TYPE_NAME_BIT: u32 = 16777216;
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_PTR: u32 = 13;
pub const _IS_BOOL: u32 = 18;
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_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_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_NOT_SERIALIZABLE: u32 = 536870912;
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 = 25;
pub const _ZEND_IS_VARIADIC_BIT: u32 = 134217728;
pub const ZEND_MODULE_API_NO: u32 = 20210902;
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 __darwin_size_t = ::std::os::raw::c_ulong;
pub type size_t = __darwin_size_t;
pub type zend_long = i64;
pub type zend_ulong = u64;
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<unsafe extern "C" fn(pDest: *mut zval)>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct zend_type {
pub ptr: *mut ::std::os::raw::c_void,
pub type_mask: u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
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 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)]
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)]
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: zend_long,
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,
);
}
extern "C" {
pub fn __zend_malloc(len: size_t) -> *mut ::std::os::raw::c_void;
}
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);
}
extern "C" {
pub fn gc_possible_root(ref_: *mut zend_refcounted);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct zend_get_gc_buffer {
pub cur: *mut zval,
pub end: *mut zval,
pub start: *mut zval,
}
extern "C" {
pub fn zval_ptr_dtor(zval_ptr: *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<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
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<unsafe extern "C" fn(iter: *mut zend_object_iterator) -> *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<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
pub rewind: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
pub invalidate_current:
::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
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(Debug, Copy, Clone)]
pub struct _zend_class_mutable_data {
pub default_properties_table: *mut zval,
pub constants_table: *mut HashTable,
pub ce_flags: u32,
}
pub type zend_class_mutable_data = _zend_class_mutable_data;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_class_dependency {
pub name: *mut zend_string,
pub ce: *mut zend_class_entry,
}
pub type zend_class_dependency = _zend_class_dependency;
pub type zend_inheritance_cache_entry = _zend_inheritance_cache_entry;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_error_info {
pub type_: ::std::os::raw::c_int,
pub lineno: u32,
pub filename: *mut zend_string,
pub message: *mut zend_string,
}
pub type zend_error_info = _zend_error_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_inheritance_cache_entry {
pub next: *mut zend_inheritance_cache_entry,
pub ce: *mut zend_class_entry,
pub parent: *mut zend_class_entry,
pub dependencies: *mut zend_class_dependency,
pub dependencies_count: u32,
pub num_warnings: u32,
pub warnings: *mut *mut zend_error_info,
pub traits_and_interfaces: [*mut zend_class_entry; 1usize],
}
#[repr(C)]
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 mutable_data__ptr: *mut *mut zend_class_mutable_data,
pub inheritance_cache: *mut zend_inheritance_cache_entry,
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 enum_backing_type: u32,
pub backed_enum_table: *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,
}
extern "C" {
pub static mut zend_standard_class_def: *mut zend_class_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<unsafe extern "C" fn(object: *mut zend_object, offset: *mut zval)>;
pub type zend_object_get_properties_t =
::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *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<unsafe extern "C" fn(object: *mut zend_object) -> *mut zend_function>;
pub type zend_object_free_obj_t =
::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
pub type zend_object_dtor_obj_t =
::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
pub type zend_object_clone_obj_t =
::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut zend_object>;
pub type zend_object_get_class_name_t =
::std::option::Option<unsafe extern "C" fn(object: *const zend_object) -> *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: 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;
}
extern "C" {
pub fn zend_std_get_properties(object: *mut zend_object) -> *mut HashTable;
}
extern "C" {
pub fn zend_std_read_property(
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;
}
extern "C" {
pub fn zend_std_write_property(
object: *mut zend_object,
member: *mut zend_string,
value: *mut zval,
cache_slot: *mut *mut ::std::os::raw::c_void,
) -> *mut zval;
}
extern "C" {
pub fn zend_std_has_property(
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;
}
extern "C" {
pub fn zend_is_true(op: *mut zval) -> ::std::os::raw::c_int;
}
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 num_dynamic_func_defs: u32,
pub literals: *mut zval,
pub dynamic_func_defs: *mut *mut zend_op_array,
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 sigjmp_buf = [::std::os::raw::c_int; 49usize];
pub type zend_executor_globals = _zend_executor_globals;
extern "C" {
pub static mut 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_new(ce: *mut zend_class_entry) -> *mut zend_object;
}
extern "C" {
pub fn zend_objects_clone_members(new_object: *mut zend_object, old_object: *mut zend_object);
}
extern "C" {
pub fn zend_object_std_dtor(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;
extern "C" {
pub fn zend_objects_store_del(object: *mut zend_object);
}
pub type zend_vm_stack = *mut _zend_vm_stack;
pub type zend_ini_entry = _zend_ini_entry;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_fiber_context {
_unused: [u8; 0],
}
pub type zend_fiber_context = _zend_fiber_context;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_fiber {
_unused: [u8; 0],
}
pub type zend_fiber = _zend_fiber;
#[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 sigjmp_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: bool,
pub no_extensions: bool,
pub vm_interrupt: bool,
pub timed_out: 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 capture_warnings_during_sccp: ::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: 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: bool,
pub exception_string_param_max_len: zend_long,
pub get_gc_buffer: zend_get_gc_buffer,
pub main_fiber_context: *mut zend_fiber_context,
pub current_fiber_context: *mut zend_fiber_context,
pub active_fiber: *mut zend_fiber,
pub fiber_stack_size: zend_long,
pub record_errors: bool,
pub num_errors: u32,
pub errors: *mut *mut zend_error_info,
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<unsafe extern "C" fn(zend_module: *mut zend_module_entry)>,
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<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
pub globals_dtor:
::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
pub post_deactivate_func: ::std::option::Option<unsafe extern "C" fn() -> 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(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,
) -> 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;
}
extern "C" {
pub fn zend_call_known_function(
fn_: *mut zend_function,
object: *mut zend_object,
called_scope: *mut zend_class_entry,
retval_ptr: *mut zval,
param_count: u32,
params: *mut zval,
named_params: *mut HashTable,
);
}
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);
}
extern "C" {
pub fn php_printf(format: *const ::std::os::raw::c_char, ...) -> size_t;
}
#[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: 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 static mut zend_ce_traversable: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_aggregate: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_iterator: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_arrayaccess: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_serializable: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_countable: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_stringable: *mut zend_class_entry;
}