Skip to main content

rsphp_sys/
bindings.rs

1/* automatically generated by rust-bindgen 0.73.2 */
2
3#[repr(C)]
4#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
5pub struct __BindgenBitfieldUnit<Storage> {
6    storage: Storage,
7}
8impl<Storage> __BindgenBitfieldUnit<Storage> {
9    #[inline]
10    pub const fn new(storage: Storage) -> Self {
11        Self { storage }
12    }
13}
14impl<Storage> __BindgenBitfieldUnit<Storage>
15where
16    Storage: AsRef<[u8]> + AsMut<[u8]>,
17{
18    #[inline]
19    fn extract_bit(byte: u8, index: usize) -> bool {
20        let bit_index = if cfg!(target_endian = "big") {
21            7 - (index % 8)
22        } else {
23            index % 8
24        };
25        let mask = 1 << bit_index;
26        byte & mask == mask
27    }
28    #[inline]
29    pub fn get_bit(&self, index: usize) -> bool {
30        debug_assert!(index / 8 < self.storage.as_ref().len());
31        let byte_index = index / 8;
32        let byte = self.storage.as_ref()[byte_index];
33        Self::extract_bit(byte, index)
34    }
35    #[inline]
36    pub unsafe fn raw_get_bit(this: *const Self, index: usize) -> bool {
37        debug_assert!(index / 8 < core::mem::size_of::<Storage>());
38        let byte_index = index / 8;
39        let byte = unsafe {
40            *(core::ptr::addr_of!((*this).storage) as *const u8).offset(byte_index as isize)
41        };
42        Self::extract_bit(byte, index)
43    }
44    #[inline]
45    fn change_bit(byte: u8, index: usize, val: bool) -> u8 {
46        let bit_index = if cfg!(target_endian = "big") {
47            7 - (index % 8)
48        } else {
49            index % 8
50        };
51        let mask = 1 << bit_index;
52        if val { byte | mask } else { byte & !mask }
53    }
54    #[inline]
55    pub fn set_bit(&mut self, index: usize, val: bool) {
56        debug_assert!(index / 8 < self.storage.as_ref().len());
57        let byte_index = index / 8;
58        let byte = &mut self.storage.as_mut()[byte_index];
59        *byte = Self::change_bit(*byte, index, val);
60    }
61    #[inline]
62    pub unsafe fn raw_set_bit(this: *mut Self, index: usize, val: bool) {
63        debug_assert!(index / 8 < core::mem::size_of::<Storage>());
64        let byte_index = index / 8;
65        let byte = unsafe {
66            (core::ptr::addr_of_mut!((*this).storage) as *mut u8).offset(byte_index as isize)
67        };
68        unsafe { *byte = Self::change_bit(*byte, index, val) };
69    }
70    #[inline]
71    pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
72        debug_assert!(bit_width <= 64);
73        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
74        debug_assert!((bit_offset + (bit_width as usize) + 7) / 8 <= self.storage.as_ref().len());
75        if bit_width == 0 {
76            return 0;
77        }
78        let mut val = 0u64;
79        let storage = self.storage.as_ref();
80        let start_byte = bit_offset / 8;
81        let bit_shift = bit_offset % 8;
82        let bytes_needed = (bit_width as usize + bit_shift + 7) / 8;
83        if cfg!(target_endian = "big") {
84            for i in 0..bytes_needed {
85                val |= (storage[start_byte + i].reverse_bits() as u64) << (i * 8);
86            }
87        } else {
88            for i in 0..bytes_needed {
89                val |= (storage[start_byte + i] as u64) << (i * 8);
90            }
91        }
92        val >>= bit_shift;
93        if bit_width < 64 {
94            val &= (1u64 << bit_width) - 1;
95        }
96        if cfg!(target_endian = "big") {
97            val = val.reverse_bits() >> (64 - bit_width as usize);
98        }
99        val
100    }
101    #[inline]
102    pub unsafe fn raw_get(this: *const Self, bit_offset: usize, bit_width: u8) -> u64 {
103        debug_assert!(bit_width <= 64);
104        debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
105        debug_assert!(
106            (bit_offset + (bit_width as usize) + 7) / 8 <= core::mem::size_of::<Storage>()
107        );
108        if bit_width == 0 {
109            return 0;
110        }
111        let mut val = 0u64;
112        let start_byte = bit_offset / 8;
113        let bit_shift = bit_offset % 8;
114        let bytes_needed = (bit_width as usize + bit_shift + 7) / 8;
115        let storage_ptr = unsafe { core::ptr::addr_of!((*this).storage) as *const u8 };
116        if cfg!(target_endian = "big") {
117            for i in 0..bytes_needed {
118                let byte = unsafe { *storage_ptr.add(start_byte + i) };
119                val |= (byte.reverse_bits() as u64) << (i * 8);
120            }
121        } else {
122            for i in 0..bytes_needed {
123                let byte = unsafe { *storage_ptr.add(start_byte + i) };
124                val |= (byte as u64) << (i * 8);
125            }
126        }
127        val >>= bit_shift;
128        if bit_width < 64 {
129            val &= (1u64 << bit_width) - 1;
130        }
131        if cfg!(target_endian = "big") {
132            val = val.reverse_bits() >> (64 - bit_width as usize);
133        }
134        val
135    }
136    #[inline]
137    pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
138        debug_assert!(bit_width <= 64);
139        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
140        debug_assert!((bit_offset + (bit_width as usize) + 7) / 8 <= self.storage.as_ref().len());
141        if bit_width == 0 {
142            return;
143        }
144        let mut val = val;
145        if bit_width < 64 {
146            val &= (1u64 << bit_width) - 1;
147        }
148        if cfg!(target_endian = "big") {
149            val = val.reverse_bits() >> (64 - bit_width as usize);
150        }
151        let storage = self.storage.as_mut();
152        let start_byte = bit_offset / 8;
153        let bit_shift = bit_offset % 8;
154        let bytes_needed = (bit_width as usize + bit_shift + 7) / 8;
155        val <<= bit_shift;
156        let field_mask = if bit_width as usize + bit_shift >= 64 {
157            !0u64 << bit_shift
158        } else {
159            ((1u64 << bit_width) - 1) << bit_shift
160        };
161        for i in 0..bytes_needed {
162            let byte_val = (val >> (i * 8)) as u8;
163            let byte_mask = (field_mask >> (i * 8)) as u8;
164            if cfg!(target_endian = "big") {
165                let byte = storage[start_byte + i].reverse_bits();
166                let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
167                storage[start_byte + i] = new_byte.reverse_bits();
168            } else {
169                storage[start_byte + i] =
170                    (storage[start_byte + i] & !byte_mask) | (byte_val & byte_mask);
171            }
172        }
173    }
174    #[inline]
175    pub unsafe fn raw_set(this: *mut Self, bit_offset: usize, bit_width: u8, val: u64) {
176        debug_assert!(bit_width <= 64);
177        debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
178        debug_assert!(
179            (bit_offset + (bit_width as usize) + 7) / 8 <= core::mem::size_of::<Storage>()
180        );
181        if bit_width == 0 {
182            return;
183        }
184        let mut val = val;
185        if bit_width < 64 {
186            val &= (1u64 << bit_width) - 1;
187        }
188        if cfg!(target_endian = "big") {
189            val = val.reverse_bits() >> (64 - bit_width as usize);
190        }
191        let start_byte = bit_offset / 8;
192        let bit_shift = bit_offset % 8;
193        let bytes_needed = (bit_width as usize + bit_shift + 7) / 8;
194        val <<= bit_shift;
195        let field_mask = if bit_width as usize + bit_shift >= 64 {
196            !0u64 << bit_shift
197        } else {
198            ((1u64 << bit_width) - 1) << bit_shift
199        };
200        let storage_ptr = unsafe { core::ptr::addr_of_mut!((*this).storage) as *mut u8 };
201        for i in 0..bytes_needed {
202            let byte_val = (val >> (i * 8)) as u8;
203            let byte_mask = (field_mask >> (i * 8)) as u8;
204            let byte_ptr = unsafe { storage_ptr.add(start_byte + i) };
205            if cfg!(target_endian = "big") {
206                let byte = unsafe { (*byte_ptr).reverse_bits() };
207                let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
208                unsafe { *byte_ptr = new_byte.reverse_bits() };
209            } else {
210                unsafe { *byte_ptr = (*byte_ptr & !byte_mask) | (byte_val & byte_mask) };
211            }
212        }
213    }
214}
215#[doc = " Const-generic methods for efficient bitfield access when offset and width"]
216#[doc = " are known at compile time."]
217impl<const N: usize> __BindgenBitfieldUnit<[u8; N]> {
218    #[doc = " Get a field using const generics for compile-time optimization."]
219    #[doc = " Uses native word size operations when the field fits in usize."]
220    #[inline]
221    pub const fn get_const<const BIT_OFFSET: usize, const BIT_WIDTH: u8>(&self) -> u64 {
222        debug_assert!(BIT_WIDTH <= 64);
223        debug_assert!(BIT_OFFSET / 8 < N);
224        debug_assert!((BIT_OFFSET + (BIT_WIDTH as usize) + 7) / 8 <= N);
225        if BIT_WIDTH == 0 {
226            return 0;
227        }
228        let start_byte = BIT_OFFSET / 8;
229        let bit_shift = BIT_OFFSET % 8;
230        let bytes_needed = (BIT_WIDTH as usize + bit_shift + 7) / 8;
231        if BIT_WIDTH as usize + bit_shift <= usize::BITS as usize {
232            let mut val = 0usize;
233            if cfg!(target_endian = "big") {
234                let mut i = 0;
235                while i < bytes_needed {
236                    val |= (self.storage[start_byte + i].reverse_bits() as usize) << (i * 8);
237                    i += 1;
238                }
239            } else {
240                let mut i = 0;
241                while i < bytes_needed {
242                    val |= (self.storage[start_byte + i] as usize) << (i * 8);
243                    i += 1;
244                }
245            }
246            val >>= bit_shift;
247            if (BIT_WIDTH as u32) < usize::BITS {
248                val &= (1usize << BIT_WIDTH) - 1;
249            }
250            if cfg!(target_endian = "big") {
251                val = val.reverse_bits() >> (usize::BITS as usize - BIT_WIDTH as usize);
252            }
253            val as u64
254        } else {
255            let mut val = 0u64;
256            if cfg!(target_endian = "big") {
257                let mut i = 0;
258                while i < bytes_needed {
259                    val |= (self.storage[start_byte + i].reverse_bits() as u64) << (i * 8);
260                    i += 1;
261                }
262            } else {
263                let mut i = 0;
264                while i < bytes_needed {
265                    val |= (self.storage[start_byte + i] as u64) << (i * 8);
266                    i += 1;
267                }
268            }
269            val >>= bit_shift;
270            if BIT_WIDTH < 64 {
271                val &= (1u64 << BIT_WIDTH) - 1;
272            }
273            if cfg!(target_endian = "big") {
274                val = val.reverse_bits() >> (64 - BIT_WIDTH as usize);
275            }
276            val
277        }
278    }
279    #[doc = " Set a field using const generics for compile-time optimization."]
280    #[doc = " Uses native word size operations when the field fits in usize."]
281    #[inline]
282    pub fn set_const<const BIT_OFFSET: usize, const BIT_WIDTH: u8>(&mut self, val: u64) {
283        debug_assert!(BIT_WIDTH <= 64);
284        debug_assert!(BIT_OFFSET / 8 < N);
285        debug_assert!((BIT_OFFSET + (BIT_WIDTH as usize) + 7) / 8 <= N);
286        if BIT_WIDTH == 0 {
287            return;
288        }
289        let start_byte = BIT_OFFSET / 8;
290        let bit_shift = BIT_OFFSET % 8;
291        let bytes_needed = (BIT_WIDTH as usize + bit_shift + 7) / 8;
292        if BIT_WIDTH as usize + bit_shift <= usize::BITS as usize {
293            let mut val = val as usize;
294            if (BIT_WIDTH as u32) < usize::BITS {
295                val &= (1usize << BIT_WIDTH) - 1;
296            }
297            if cfg!(target_endian = "big") {
298                val = val.reverse_bits() >> (usize::BITS as usize - BIT_WIDTH as usize);
299            }
300            val <<= bit_shift;
301            let field_mask = if BIT_WIDTH as usize + bit_shift >= usize::BITS as usize {
302                !0usize << bit_shift
303            } else {
304                ((1usize << BIT_WIDTH) - 1) << bit_shift
305            };
306            let mut i = 0;
307            while i < bytes_needed {
308                let byte_val = (val >> (i * 8)) as u8;
309                let byte_mask = (field_mask >> (i * 8)) as u8;
310                if cfg!(target_endian = "big") {
311                    let byte = self.storage[start_byte + i].reverse_bits();
312                    let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
313                    self.storage[start_byte + i] = new_byte.reverse_bits();
314                } else {
315                    self.storage[start_byte + i] =
316                        (self.storage[start_byte + i] & !byte_mask) | (byte_val & byte_mask);
317                }
318                i += 1;
319            }
320        } else {
321            let mut val = val;
322            if BIT_WIDTH < 64 {
323                val &= (1u64 << BIT_WIDTH) - 1;
324            }
325            if cfg!(target_endian = "big") {
326                val = val.reverse_bits() >> (64 - BIT_WIDTH as usize);
327            }
328            val <<= bit_shift;
329            let field_mask = if BIT_WIDTH as usize + bit_shift >= 64 {
330                !0u64 << bit_shift
331            } else {
332                ((1u64 << BIT_WIDTH) - 1) << bit_shift
333            };
334            let mut i = 0;
335            while i < bytes_needed {
336                let byte_val = (val >> (i * 8)) as u8;
337                let byte_mask = (field_mask >> (i * 8)) as u8;
338                if cfg!(target_endian = "big") {
339                    let byte = self.storage[start_byte + i].reverse_bits();
340                    let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
341                    self.storage[start_byte + i] = new_byte.reverse_bits();
342                } else {
343                    self.storage[start_byte + i] =
344                        (self.storage[start_byte + i] & !byte_mask) | (byte_val & byte_mask);
345                }
346                i += 1;
347            }
348        }
349    }
350    #[doc = " Raw pointer get using const generics for compile-time optimization."]
351    #[doc = " Uses native word size operations when the field fits in usize."]
352    #[inline]
353    pub const unsafe fn raw_get_const<const BIT_OFFSET: usize, const BIT_WIDTH: u8>(
354        this: *const Self,
355    ) -> u64 {
356        debug_assert!(BIT_WIDTH <= 64);
357        debug_assert!(BIT_OFFSET / 8 < N);
358        debug_assert!((BIT_OFFSET + (BIT_WIDTH as usize) + 7) / 8 <= N);
359        if BIT_WIDTH == 0 {
360            return 0;
361        }
362        let start_byte = BIT_OFFSET / 8;
363        let bit_shift = BIT_OFFSET % 8;
364        let bytes_needed = (BIT_WIDTH as usize + bit_shift + 7) / 8;
365        let storage_ptr = unsafe { core::ptr::addr_of!((*this).storage) as *const u8 };
366        if BIT_WIDTH as usize + bit_shift <= usize::BITS as usize {
367            let mut val = 0usize;
368            if cfg!(target_endian = "big") {
369                let mut i = 0;
370                while i < bytes_needed {
371                    let byte = unsafe { *storage_ptr.add(start_byte + i) };
372                    val |= (byte.reverse_bits() as usize) << (i * 8);
373                    i += 1;
374                }
375            } else {
376                let mut i = 0;
377                while i < bytes_needed {
378                    let byte = unsafe { *storage_ptr.add(start_byte + i) };
379                    val |= (byte as usize) << (i * 8);
380                    i += 1;
381                }
382            }
383            val >>= bit_shift;
384            if (BIT_WIDTH as u32) < usize::BITS {
385                val &= (1usize << BIT_WIDTH) - 1;
386            }
387            if cfg!(target_endian = "big") {
388                val = val.reverse_bits() >> (usize::BITS as usize - BIT_WIDTH as usize);
389            }
390            val as u64
391        } else {
392            let mut val = 0u64;
393            if cfg!(target_endian = "big") {
394                let mut i = 0;
395                while i < bytes_needed {
396                    let byte = unsafe { *storage_ptr.add(start_byte + i) };
397                    val |= (byte.reverse_bits() as u64) << (i * 8);
398                    i += 1;
399                }
400            } else {
401                let mut i = 0;
402                while i < bytes_needed {
403                    let byte = unsafe { *storage_ptr.add(start_byte + i) };
404                    val |= (byte as u64) << (i * 8);
405                    i += 1;
406                }
407            }
408            val >>= bit_shift;
409            if BIT_WIDTH < 64 {
410                val &= (1u64 << BIT_WIDTH) - 1;
411            }
412            if cfg!(target_endian = "big") {
413                val = val.reverse_bits() >> (64 - BIT_WIDTH as usize);
414            }
415            val
416        }
417    }
418    #[doc = " Raw pointer set using const generics for compile-time optimization."]
419    #[doc = " Uses native word size operations when the field fits in usize."]
420    #[inline]
421    pub unsafe fn raw_set_const<const BIT_OFFSET: usize, const BIT_WIDTH: u8>(
422        this: *mut Self,
423        val: u64,
424    ) {
425        debug_assert!(BIT_WIDTH <= 64);
426        debug_assert!(BIT_OFFSET / 8 < N);
427        debug_assert!((BIT_OFFSET + (BIT_WIDTH as usize) + 7) / 8 <= N);
428        if BIT_WIDTH == 0 {
429            return;
430        }
431        let start_byte = BIT_OFFSET / 8;
432        let bit_shift = BIT_OFFSET % 8;
433        let bytes_needed = (BIT_WIDTH as usize + bit_shift + 7) / 8;
434        let storage_ptr = this.cast::<[u8; N]>().cast::<u8>();
435        if BIT_WIDTH as usize + bit_shift <= usize::BITS as usize {
436            let mut val = val as usize;
437            if (BIT_WIDTH as u32) < usize::BITS {
438                val &= (1usize << BIT_WIDTH) - 1;
439            }
440            if cfg!(target_endian = "big") {
441                val = val.reverse_bits() >> (usize::BITS as usize - BIT_WIDTH as usize);
442            }
443            val <<= bit_shift;
444            let field_mask = if BIT_WIDTH as usize + bit_shift >= usize::BITS as usize {
445                !0usize << bit_shift
446            } else {
447                ((1usize << BIT_WIDTH) - 1) << bit_shift
448            };
449            let mut i = 0;
450            while i < bytes_needed {
451                let byte_val = (val >> (i * 8)) as u8;
452                let byte_mask = (field_mask >> (i * 8)) as u8;
453                let byte_ptr = unsafe { storage_ptr.add(start_byte + i) };
454                if cfg!(target_endian = "big") {
455                    let byte = unsafe { (*byte_ptr).reverse_bits() };
456                    let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
457                    unsafe { *byte_ptr = new_byte.reverse_bits() };
458                } else {
459                    unsafe { *byte_ptr = (*byte_ptr & !byte_mask) | (byte_val & byte_mask) };
460                }
461                i += 1;
462            }
463        } else {
464            let mut val = val;
465            if BIT_WIDTH < 64 {
466                val &= (1u64 << BIT_WIDTH) - 1;
467            }
468            if cfg!(target_endian = "big") {
469                val = val.reverse_bits() >> (64 - BIT_WIDTH as usize);
470            }
471            val <<= bit_shift;
472            let field_mask = if BIT_WIDTH as usize + bit_shift >= 64 {
473                !0u64 << bit_shift
474            } else {
475                ((1u64 << BIT_WIDTH) - 1) << bit_shift
476            };
477            let mut i = 0;
478            while i < bytes_needed {
479                let byte_val = (val >> (i * 8)) as u8;
480                let byte_mask = (field_mask >> (i * 8)) as u8;
481                let byte_ptr = unsafe { storage_ptr.add(start_byte + i) };
482                if cfg!(target_endian = "big") {
483                    let byte = unsafe { (*byte_ptr).reverse_bits() };
484                    let new_byte = (byte & !byte_mask) | (byte_val & byte_mask);
485                    unsafe { *byte_ptr = new_byte.reverse_bits() };
486                } else {
487                    unsafe { *byte_ptr = (*byte_ptr & !byte_mask) | (byte_val & byte_mask) };
488                }
489                i += 1;
490            }
491        }
492    }
493}
494pub const ZEND_VERSION: &[u8; 6] = b"4.5.9\0";
495pub const COOKIE_SEEKER_USES_OFF64_T: u32 = 1;
496pub const DEFAULT_SHORT_OPEN_TAG: &[u8; 2] = b"1\0";
497pub const ENABLE_CHROOT_FUNC: u32 = 1;
498pub const GWINSZ_IN_SYS_IOCTL: u32 = 1;
499pub const ICONV_BROKEN_IGNORE: u32 = 1;
500pub const MAJOR_IN_SYSMACROS: u32 = 1;
501pub const PCRE2_CODE_UNIT_WIDTH: u32 = 8;
502pub const PHP_BUILD_SYSTEM : & [u8 ; 106] = b"Linux 97cb8b99a76e 5.15.167.4-microsoft-standard-WSL2 #1 SMP Tue Nov 5 00:21:55 UTC 2024 x86_64 GNU/Linux\0" ;
503pub const PHP_CAN_SUPPORT_PROC_OPEN: u32 = 1;
504pub const PHP_ICONV_IMPL: &[u8; 6] = b"glibc\0";
505pub const PHP_OS: &[u8; 6] = b"Linux\0";
506pub const PHP_SIGCHILD: u32 = 0;
507pub const PHP_UNAME : & [u8 ; 106] = b"Linux 97cb8b99a76e 5.15.167.4-microsoft-standard-WSL2 #1 SMP Tue Nov 5 00:21:55 UTC 2024 x86_64 GNU/Linux\0" ;
508pub const PHP_USE_PHP_CRYPT_R: u32 = 1;
509pub const PHP_WRITE_STDOUT: u32 = 1;
510pub const SIZEOF_INT: u32 = 4;
511pub const SIZEOF_LONG: u32 = 8;
512pub const SIZEOF_LONG_LONG: u32 = 8;
513pub const SIZEOF_OFF_T: u32 = 8;
514pub const SIZEOF_SIZE_T: u32 = 8;
515pub const STDC_HEADERS: u32 = 1;
516pub const STRERROR_R_CHAR_P: u32 = 1;
517pub const URI_ENABLE_ANSI: u32 = 1;
518pub const URI_NO_UNICODE: u32 = 1;
519pub const _ALL_SOURCE: u32 = 1;
520pub const _DARWIN_C_SOURCE: u32 = 1;
521pub const __EXTENSIONS__: u32 = 1;
522pub const _GNU_SOURCE: u32 = 1;
523pub const _HPUX_ALT_XOPEN_SOCKET_API: u32 = 1;
524pub const _NETBSD_SOURCE: u32 = 1;
525pub const _OPENBSD_SOURCE: u32 = 1;
526pub const _POSIX_PTHREAD_SEMANTICS: u32 = 1;
527pub const __STDC_WANT_IEC_60559_ATTRIBS_EXT__: u32 = 1;
528pub const __STDC_WANT_IEC_60559_BFP_EXT__: u32 = 1;
529pub const __STDC_WANT_IEC_60559_DFP_EXT__: u32 = 1;
530pub const __STDC_WANT_IEC_60559_EXT__: u32 = 1;
531pub const __STDC_WANT_IEC_60559_FUNCS_EXT__: u32 = 1;
532pub const __STDC_WANT_IEC_60559_TYPES_EXT__: u32 = 1;
533pub const __STDC_WANT_LIB_EXT2__: u32 = 1;
534pub const __STDC_WANT_MATH_SPEC_FUNCS__: u32 = 1;
535pub const _TANDEM_SOURCE: u32 = 1;
536pub const ZEND_CHECK_STACK_LIMIT: u32 = 1;
537pub const ZEND_DEBUG: u8 = 1;
538pub const ZEND_MM_NEED_EIGHT_BYTE_REALIGNMENT: u32 = 0;
539pub const ZEND_SIGNALS: u32 = 1;
540pub const ZEND_PATHS_SEPARATOR: u8 = 58u8;
541pub const ZEND_ENABLE_ZVAL_LONG64: u32 = 1;
542pub const SIZEOF_ZEND_LONG: u32 = 8;
543pub const ZEND_LTOA_BUF_LEN: u32 = 65;
544pub const ZEND_LONG_FMT: &[u8; 4] = b"%ld\0";
545pub const ZEND_ULONG_FMT: &[u8; 4] = b"%lu\0";
546pub const ZEND_XLONG_FMT: &[u8; 4] = b"%lx\0";
547pub const ZEND_LONG_FMT_SPEC: &[u8; 3] = b"ld\0";
548pub const ZEND_ULONG_FMT_SPEC: &[u8; 3] = b"lu\0";
549pub const MAX_LENGTH_OF_LONG: u32 = 20;
550pub const LONG_MIN_DIGITS: &[u8; 20] = b"9223372036854775808\0";
551pub const ZEND_ADDR_FMT: &[u8; 9] = b"0x%016zx\0";
552pub const ZEND_LONG_CAN_OVFL_INT: u32 = 1;
553pub const ZEND_LONG_CAN_OVFL_UINT: u32 = 1;
554pub const ZEND_SIZE_T_CAN_OVFL_UINT: u32 = 1;
555pub const PHP_RTLD_MODE: u32 = 1;
556pub const ZEND_EXTENSIONS_SUPPORT: u32 = 1;
557pub const ZTS_V: u32 = 0;
558pub const MAX_LENGTH_OF_DOUBLE: u32 = 32;
559pub const ZEND_MAX_RESERVED_RESOURCES: u32 = 6;
560pub const ZEND_INTRIN_HAVE_IFUNC_TARGET: u32 = 1;
561pub const ZEND_INTRIN_SSSE3_RESOLVER: u32 = 1;
562pub const ZEND_INTRIN_SSSE3_FUNC_PROTO: u32 = 1;
563pub const ZEND_INTRIN_SSE4_2_RESOLVER: u32 = 1;
564pub const ZEND_INTRIN_SSE4_2_FUNC_PROTO: u32 = 1;
565pub const ZEND_INTRIN_PCLMUL_RESOLVER: u32 = 1;
566pub const ZEND_INTRIN_PCLMUL_FUNC_PTR: u32 = 1;
567pub const ZEND_INTRIN_SSE4_2_PCLMUL_RESOLVER: u32 = 1;
568pub const ZEND_INTRIN_SSE4_2_PCLMUL_FUNC_PTR: u32 = 1;
569pub const ZEND_INTRIN_AVX2_RESOLVER: u32 = 1;
570pub const ZEND_INTRIN_AVX2_FUNC_PROTO: u32 = 1;
571pub const ZEND_INTRIN_AVX512_RESOLVER: u32 = 1;
572pub const ZEND_INTRIN_AVX512_FUNC_PROTO: u32 = 1;
573pub const ZEND_INTRIN_AVX512_VBMI_RESOLVER: u32 = 1;
574pub const ZEND_INTRIN_AVX512_VBMI_FUNC_PROTO: u32 = 1;
575pub const ZEND_SIZE_MAX: i32 = -1;
576pub const _ZEND_TYPE_EXTRA_FLAGS_SHIFT: u32 = 25;
577pub const _ZEND_TYPE_MASK: u32 = 33554431;
578pub const _ZEND_TYPE_NAME_BIT: u32 = 16777216;
579pub const _ZEND_TYPE_LITERAL_NAME_BIT: u32 = 8388608;
580pub const _ZEND_TYPE_LIST_BIT: u32 = 4194304;
581pub const _ZEND_TYPE_KIND_MASK: u32 = 29360128;
582pub const _ZEND_TYPE_ITERABLE_BIT: u32 = 2097152;
583pub const _ZEND_TYPE_ARENA_BIT: u32 = 1048576;
584pub const _ZEND_TYPE_INTERSECTION_BIT: u32 = 524288;
585pub const _ZEND_TYPE_UNION_BIT: u32 = 262144;
586pub const _ZEND_TYPE_MAY_BE_MASK: u32 = 262143;
587pub const _ZEND_TYPE_NULLABLE_BIT: u32 = 2;
588pub const HT_INVALID_IDX: u32 = 4294967295;
589pub const HT_MIN_MASK: u32 = 4294967294;
590pub const HT_MIN_SIZE: u32 = 8;
591pub const HT_MAX_SIZE: u32 = 1073741824;
592pub const IS_UNDEF: u8 = 0;
593pub const IS_NULL: u8 = 1;
594pub const IS_FALSE: u8 = 2;
595pub const IS_TRUE: u8 = 3;
596pub const IS_LONG: u8 = 4;
597pub const IS_DOUBLE: u8 = 5;
598pub const IS_STRING: u8 = 6;
599pub const IS_ARRAY: u8 = 7;
600pub const IS_OBJECT: u8 = 8;
601pub const IS_RESOURCE: u8 = 9;
602pub const IS_REFERENCE: u8 = 10;
603pub const IS_CONSTANT_AST: u8 = 11;
604pub const IS_CALLABLE: u8 = 12;
605pub const IS_ITERABLE: u8 = 13;
606pub const IS_VOID: u8 = 14;
607pub const IS_STATIC: u8 = 15;
608pub const IS_MIXED: u8 = 16;
609pub const IS_NEVER: u8 = 17;
610pub const IS_INDIRECT: u8 = 12;
611pub const IS_PTR: u8 = 13;
612pub const IS_ALIAS_PTR: u8 = 14;
613pub const _IS_ERROR: u8 = 15;
614pub const _IS_BOOL: u8 = 18;
615pub const _IS_NUMBER: u8 = 19;
616pub const ZEND_GUARD_PROPERTY_GET: u32 = 1;
617pub const ZEND_GUARD_PROPERTY_SET: u32 = 2;
618pub const ZEND_GUARD_PROPERTY_UNSET: u32 = 4;
619pub const ZEND_GUARD_PROPERTY_ISSET: u32 = 8;
620pub const ZEND_GUARD_PROPERTY_HOOK: u32 = 16;
621pub const ZEND_GUARD_PROPERTY_MASK: u32 = 31;
622pub const ZEND_GUARD_RECURSION_DEBUG: u32 = 32;
623pub const ZEND_GUARD_RECURSION_EXPORT: u32 = 64;
624pub const ZEND_GUARD_RECURSION_JSON: u32 = 128;
625pub const Z_TYPE_MASK: u32 = 255;
626pub const Z_TYPE_FLAGS_MASK: u32 = 65280;
627pub const Z_TYPE_FLAGS_SHIFT: u32 = 8;
628pub const Z_TYPE_INFO_EXTRA_SHIFT: u32 = 16;
629pub const GC_TYPE_MASK: u32 = 15;
630pub const GC_FLAGS_MASK: u32 = 1008;
631pub const GC_INFO_MASK: u32 = 4294966272;
632pub const GC_FLAGS_SHIFT: u32 = 0;
633pub const GC_INFO_SHIFT: u32 = 10;
634pub const GC_NOT_COLLECTABLE: u32 = 16;
635pub const GC_PROTECTED: u32 = 32;
636pub const GC_IMMUTABLE: u32 = 64;
637pub const GC_PERSISTENT: u32 = 128;
638pub const GC_PERSISTENT_LOCAL: u32 = 256;
639pub const GC_NULL: u32 = 17;
640pub const GC_STRING: u32 = 22;
641pub const GC_ARRAY: u32 = 7;
642pub const GC_OBJECT: u32 = 8;
643pub const GC_RESOURCE: u32 = 25;
644pub const GC_REFERENCE: u32 = 26;
645pub const GC_CONSTANT_AST: u32 = 27;
646pub const IS_TYPE_REFCOUNTED: u32 = 1;
647pub const IS_TYPE_COLLECTABLE: u32 = 2;
648pub const IS_INTERNED_STRING_EX: u32 = 6;
649pub const IS_STRING_EX: u32 = 262;
650pub const IS_ARRAY_EX: u32 = 775;
651pub const IS_OBJECT_EX: u32 = 776;
652pub const IS_RESOURCE_EX: u32 = 265;
653pub const IS_REFERENCE_EX: u32 = 778;
654pub const IS_CONSTANT_AST_EX: u32 = 267;
655pub const IS_STR_CLASS_NAME_MAP_PTR: u32 = 32;
656pub const IS_STR_INTERNED: u32 = 64;
657pub const IS_STR_PERSISTENT: u32 = 128;
658pub const IS_STR_PERMANENT: u32 = 256;
659pub const IS_STR_VALID_UTF8: u32 = 512;
660pub const IS_ARRAY_IMMUTABLE: u32 = 64;
661pub const IS_ARRAY_PERSISTENT: u32 = 128;
662pub const IS_OBJ_WEAKLY_REFERENCED: u32 = 128;
663pub const IS_OBJ_DESTRUCTOR_CALLED: u32 = 256;
664pub const IS_OBJ_FREE_CALLED: u32 = 512;
665pub const IS_OBJ_LAZY_UNINITIALIZED: u32 = 2147483648;
666pub const IS_OBJ_LAZY_PROXY: u32 = 1073741824;
667pub const ZEND_RC_DEBUG: u32 = 0;
668pub const IS_PROP_UNINIT: u32 = 1;
669pub const IS_PROP_REINITABLE: u32 = 2;
670pub const IS_PROP_LAZY: u32 = 4;
671pub const ZEND_MAP_PTR_KIND_PTR: u32 = 0;
672pub const ZEND_MAP_PTR_KIND_PTR_OR_OFFSET: u32 = 1;
673pub const ZEND_MAP_PTR_KIND: u32 = 1;
674pub const E_ERROR: u32 = 1;
675pub const E_WARNING: u32 = 2;
676pub const E_PARSE: u32 = 4;
677pub const E_NOTICE: u32 = 8;
678pub const E_CORE_ERROR: u32 = 16;
679pub const E_CORE_WARNING: u32 = 32;
680pub const E_COMPILE_ERROR: u32 = 64;
681pub const E_COMPILE_WARNING: u32 = 128;
682pub const E_USER_ERROR: u32 = 256;
683pub const E_USER_WARNING: u32 = 512;
684pub const E_USER_NOTICE: u32 = 1024;
685pub const E_STRICT: u32 = 2048;
686pub const E_RECOVERABLE_ERROR: u32 = 4096;
687pub const E_DEPRECATED: u32 = 8192;
688pub const E_USER_DEPRECATED: u32 = 16384;
689pub const E_DONT_BAIL: u32 = 32768;
690pub const E_ALL: u32 = 30719;
691pub const E_CORE: u32 = 48;
692pub const E_FATAL_ERRORS: u32 = 4437;
693pub const ZEND_MM_PAGE_SIZE: u32 = 4096;
694pub const ZEND_MM_FIRST_PAGE: u32 = 1;
695pub const ZEND_MM_MIN_SMALL_SIZE: u32 = 8;
696pub const ZEND_MM_MAX_SMALL_SIZE: u32 = 3072;
697pub const ZEND_MM_CUSTOM_HEAP_NONE: u32 = 0;
698pub const ZEND_MM_CUSTOM_HEAP_STD: u32 = 1;
699pub const ZEND_MM_CUSTOM_HEAP_DEBUG: u32 = 2;
700pub const ZEND_HRTIME_PLATFORM_POSIX: u32 = 0;
701pub const ZEND_HRTIME_PLATFORM_WINDOWS: u32 = 0;
702pub const ZEND_HRTIME_PLATFORM_APPLE_MACH_ABSOLUTE: u32 = 0;
703pub const ZEND_HRTIME_PLATFORM_APPLE_GETTIME_NSEC: u32 = 0;
704pub const ZEND_HRTIME_PLATFORM_HPUX: u32 = 0;
705pub const ZEND_HRTIME_PLATFORM_AIX: u32 = 0;
706pub const GC_BENCH: u32 = 0;
707pub const ZSTR_COPYABLE_CONCAT_PROPERTIES: u32 = 512;
708pub const HASH_UPDATE: u32 = 1;
709pub const HASH_ADD: u32 = 2;
710pub const HASH_UPDATE_INDIRECT: u32 = 4;
711pub const HASH_ADD_NEW: u32 = 8;
712pub const HASH_ADD_NEXT: u32 = 16;
713pub const HASH_LOOKUP: u32 = 32;
714pub const HASH_FLAG_CONSISTENCY: u32 = 3;
715pub const HASH_FLAG_PACKED: u32 = 4;
716pub const HASH_FLAG_UNINITIALIZED: u32 = 8;
717pub const HASH_FLAG_STATIC_KEYS: u32 = 16;
718pub const HASH_FLAG_HAS_EMPTY_IND: u32 = 32;
719pub const HASH_FLAG_ALLOW_COW_VIOLATION: u32 = 64;
720pub const HASH_FLAG_MASK: u32 = 255;
721pub const ZEND_HASH_APPLY_KEEP: u32 = 0;
722pub const ZEND_HASH_APPLY_REMOVE: u32 = 1;
723pub const ZEND_HASH_APPLY_STOP: u32 = 2;
724pub const ZEND_AST_SPEC: u32 = 1;
725pub const ZEND_AST_SPECIAL_SHIFT: u32 = 6;
726pub const ZEND_AST_IS_LIST_SHIFT: u32 = 7;
727pub const ZEND_AST_NUM_CHILDREN_SHIFT: u32 = 8;
728pub const ZEND_MMAP_AHEAD: u32 = 32;
729pub const ZEND_SIGNAL_QUEUE_SIZE: u32 = 64;
730pub const ZMSG_FAILED_INCLUDE_FOPEN: u32 = 1;
731pub const ZMSG_FAILED_REQUIRE_FOPEN: u32 = 2;
732pub const ZMSG_FAILED_HIGHLIGHT_FOPEN: u32 = 3;
733pub const ZMSG_MEMORY_LEAK_DETECTED: u32 = 4;
734pub const ZMSG_MEMORY_LEAK_REPEATED: u32 = 5;
735pub const ZMSG_LOG_SCRIPT_NAME: u32 = 6;
736pub const ZMSG_MEMORY_LEAKS_GRAND_TOTAL: u32 = 7;
737pub const DEBUG_BACKTRACE_PROVIDE_OBJECT: u32 = 1;
738pub const DEBUG_BACKTRACE_IGNORE_ARGS: u32 = 2;
739pub const ZEND_LAZY_OBJECT_STRATEGY_PROXY: u32 = 1;
740pub const ZEND_LAZY_OBJECT_STRATEGY_GHOST: u32 = 2;
741pub const ZEND_LAZY_OBJECT_INITIALIZED: u32 = 4;
742pub const ZEND_LAZY_OBJECT_SKIP_INITIALIZATION_ON_SERIALIZE: u32 = 8;
743pub const ZEND_LAZY_OBJECT_SKIP_DESTRUCTOR: u32 = 16;
744pub const ZEND_FIRST_PROPERTY_OFFSET: u32 = 16;
745pub const ZEND_PROPERTY_HOOK_SIMPLE_READ_BIT: u32 = 2;
746pub const ZEND_PROPERTY_HOOK_SIMPLE_WRITE_BIT: u32 = 4;
747pub const ZEND_PROPERTY_HOOK_SIMPLE_GET_BIT: u32 = 8;
748pub const ZEND_PROPERTY_ISSET: ::std::os::raw::c_int = 0;
749pub const ZEND_PROPERTY_EXISTS: ::std::os::raw::c_int = 2;
750pub const ZEND_STRTOD_K_MAX: u32 = 7;
751pub const LP_SUFF: &[u8; 2] = b"q\0";
752pub const ZEND_UNCOMPARABLE: u32 = 1;
753pub const ZEND_USE_ASM_ARITHMETIC: u32 = 1;
754pub const ZEND_VM_SPEC: u32 = 1;
755pub const ZEND_VM_LINES: u32 = 0;
756pub const ZEND_VM_KIND_CALL: u32 = 1;
757pub const ZEND_VM_KIND_SWITCH: u32 = 2;
758pub const ZEND_VM_KIND_GOTO: u32 = 3;
759pub const ZEND_VM_KIND_HYBRID: u32 = 4;
760pub const ZEND_VM_KIND_TAILCALL: u32 = 5;
761pub const ZEND_VM_KIND: u32 = 4;
762pub const ZEND_VM_HYBRID_JIT_RED_ZONE_SIZE: u32 = 48;
763pub const ZEND_VM_OP_SPEC: u32 = 1;
764pub const ZEND_VM_OP_CONST: u32 = 2;
765pub const ZEND_VM_OP_TMPVAR: u32 = 4;
766pub const ZEND_VM_OP_TMPVARCV: u32 = 8;
767pub const ZEND_VM_OP_MASK: u32 = 240;
768pub const ZEND_VM_OP_NUM: u32 = 16;
769pub const ZEND_VM_OP_JMP_ADDR: u32 = 32;
770pub const ZEND_VM_OP_TRY_CATCH: u32 = 48;
771pub const ZEND_VM_OP_LOOP_END: u32 = 64;
772pub const ZEND_VM_OP_THIS: u32 = 80;
773pub const ZEND_VM_OP_NEXT: u32 = 96;
774pub const ZEND_VM_OP_CLASS_FETCH: u32 = 112;
775pub const ZEND_VM_OP_CONSTRUCTOR: u32 = 128;
776pub const ZEND_VM_OP_CONST_FETCH: u32 = 144;
777pub const ZEND_VM_OP_CACHE_SLOT: u32 = 160;
778pub const ZEND_VM_EXT_VAR_FETCH: u32 = 65536;
779pub const ZEND_VM_EXT_ISSET: u32 = 131072;
780pub const ZEND_VM_EXT_CACHE_SLOT: u32 = 262144;
781pub const ZEND_VM_EXT_ARRAY_INIT: u32 = 524288;
782pub const ZEND_VM_EXT_REF: u32 = 1048576;
783pub const ZEND_VM_EXT_FETCH_REF: u32 = 2097152;
784pub const ZEND_VM_EXT_DIM_WRITE: u32 = 4194304;
785pub const ZEND_VM_EXT_MASK: u32 = 251658240;
786pub const ZEND_VM_EXT_NUM: u32 = 16777216;
787pub const ZEND_VM_EXT_LAST_CATCH: u32 = 33554432;
788pub const ZEND_VM_EXT_JMP_ADDR: u32 = 50331648;
789pub const ZEND_VM_EXT_OP: u32 = 67108864;
790pub const ZEND_VM_EXT_TYPE: u32 = 117440512;
791pub const ZEND_VM_EXT_EVAL: u32 = 134217728;
792pub const ZEND_VM_EXT_TYPE_MASK: u32 = 150994944;
793pub const ZEND_VM_EXT_SRC: u32 = 184549376;
794pub const ZEND_VM_NO_CONST_CONST: u32 = 1073741824;
795pub const ZEND_VM_COMMUTATIVE: u32 = 2147483648;
796pub const ZEND_NOP: u8 = 0;
797pub const ZEND_ADD: u8 = 1;
798pub const ZEND_SUB: u8 = 2;
799pub const ZEND_MUL: u8 = 3;
800pub const ZEND_DIV: u8 = 4;
801pub const ZEND_MOD: u8 = 5;
802pub const ZEND_SL: u8 = 6;
803pub const ZEND_SR: u8 = 7;
804pub const ZEND_CONCAT: u8 = 8;
805pub const ZEND_BW_OR: u8 = 9;
806pub const ZEND_BW_AND: u8 = 10;
807pub const ZEND_BW_XOR: u8 = 11;
808pub const ZEND_POW: u8 = 12;
809pub const ZEND_BW_NOT: u8 = 13;
810pub const ZEND_BOOL_NOT: u8 = 14;
811pub const ZEND_BOOL_XOR: u8 = 15;
812pub const ZEND_IS_IDENTICAL: u8 = 16;
813pub const ZEND_IS_NOT_IDENTICAL: u8 = 17;
814pub const ZEND_IS_EQUAL: u8 = 18;
815pub const ZEND_IS_NOT_EQUAL: u8 = 19;
816pub const ZEND_IS_SMALLER: u8 = 20;
817pub const ZEND_IS_SMALLER_OR_EQUAL: u8 = 21;
818pub const ZEND_ASSIGN: u8 = 22;
819pub const ZEND_ASSIGN_DIM: u8 = 23;
820pub const ZEND_ASSIGN_OBJ: u8 = 24;
821pub const ZEND_ASSIGN_STATIC_PROP: u8 = 25;
822pub const ZEND_ASSIGN_OP: u8 = 26;
823pub const ZEND_ASSIGN_DIM_OP: u8 = 27;
824pub const ZEND_ASSIGN_OBJ_OP: u8 = 28;
825pub const ZEND_ASSIGN_STATIC_PROP_OP: u8 = 29;
826pub const ZEND_ASSIGN_REF: u8 = 30;
827pub const ZEND_QM_ASSIGN: u8 = 31;
828pub const ZEND_ASSIGN_OBJ_REF: u8 = 32;
829pub const ZEND_ASSIGN_STATIC_PROP_REF: u8 = 33;
830pub const ZEND_PRE_INC: u8 = 34;
831pub const ZEND_PRE_DEC: u8 = 35;
832pub const ZEND_POST_INC: u8 = 36;
833pub const ZEND_POST_DEC: u8 = 37;
834pub const ZEND_PRE_INC_STATIC_PROP: u8 = 38;
835pub const ZEND_PRE_DEC_STATIC_PROP: u8 = 39;
836pub const ZEND_POST_INC_STATIC_PROP: u8 = 40;
837pub const ZEND_POST_DEC_STATIC_PROP: u8 = 41;
838pub const ZEND_JMP: u8 = 42;
839pub const ZEND_JMPZ: u8 = 43;
840pub const ZEND_JMPNZ: u8 = 44;
841pub const ZEND_JMPZ_EX: u8 = 46;
842pub const ZEND_JMPNZ_EX: u8 = 47;
843pub const ZEND_CASE: u8 = 48;
844pub const ZEND_CHECK_VAR: u8 = 49;
845pub const ZEND_SEND_VAR_NO_REF_EX: u8 = 50;
846pub const ZEND_CAST: u8 = 51;
847pub const ZEND_BOOL: u8 = 52;
848pub const ZEND_FAST_CONCAT: u8 = 53;
849pub const ZEND_ROPE_INIT: u8 = 54;
850pub const ZEND_ROPE_ADD: u8 = 55;
851pub const ZEND_ROPE_END: u8 = 56;
852pub const ZEND_BEGIN_SILENCE: u8 = 57;
853pub const ZEND_END_SILENCE: u8 = 58;
854pub const ZEND_INIT_FCALL_BY_NAME: u8 = 59;
855pub const ZEND_DO_FCALL: u8 = 60;
856pub const ZEND_INIT_FCALL: u8 = 61;
857pub const ZEND_RETURN: u8 = 62;
858pub const ZEND_RECV: u8 = 63;
859pub const ZEND_RECV_INIT: u8 = 64;
860pub const ZEND_SEND_VAL: u8 = 65;
861pub const ZEND_SEND_VAR_EX: u8 = 66;
862pub const ZEND_SEND_REF: u8 = 67;
863pub const ZEND_NEW: u8 = 68;
864pub const ZEND_INIT_NS_FCALL_BY_NAME: u8 = 69;
865pub const ZEND_FREE: u8 = 70;
866pub const ZEND_INIT_ARRAY: u8 = 71;
867pub const ZEND_ADD_ARRAY_ELEMENT: u8 = 72;
868pub const ZEND_INCLUDE_OR_EVAL: u8 = 73;
869pub const ZEND_UNSET_VAR: u8 = 74;
870pub const ZEND_UNSET_DIM: u8 = 75;
871pub const ZEND_UNSET_OBJ: u8 = 76;
872pub const ZEND_FE_RESET_R: u8 = 77;
873pub const ZEND_FE_FETCH_R: u8 = 78;
874pub const ZEND_FETCH_R: u8 = 80;
875pub const ZEND_FETCH_DIM_R: u8 = 81;
876pub const ZEND_FETCH_OBJ_R: u8 = 82;
877pub const ZEND_FETCH_W: u8 = 83;
878pub const ZEND_FETCH_DIM_W: u8 = 84;
879pub const ZEND_FETCH_OBJ_W: u8 = 85;
880pub const ZEND_FETCH_RW: u8 = 86;
881pub const ZEND_FETCH_DIM_RW: u8 = 87;
882pub const ZEND_FETCH_OBJ_RW: u8 = 88;
883pub const ZEND_FETCH_IS: u8 = 89;
884pub const ZEND_FETCH_DIM_IS: u8 = 90;
885pub const ZEND_FETCH_OBJ_IS: u8 = 91;
886pub const ZEND_FETCH_FUNC_ARG: u8 = 92;
887pub const ZEND_FETCH_DIM_FUNC_ARG: u8 = 93;
888pub const ZEND_FETCH_OBJ_FUNC_ARG: u8 = 94;
889pub const ZEND_FETCH_UNSET: u8 = 95;
890pub const ZEND_FETCH_DIM_UNSET: u8 = 96;
891pub const ZEND_FETCH_OBJ_UNSET: u8 = 97;
892pub const ZEND_FETCH_LIST_R: u8 = 98;
893pub const ZEND_FETCH_CONSTANT: u8 = 99;
894pub const ZEND_CHECK_FUNC_ARG: u8 = 100;
895pub const ZEND_EXT_STMT: u8 = 101;
896pub const ZEND_EXT_FCALL_BEGIN: u8 = 102;
897pub const ZEND_EXT_FCALL_END: u8 = 103;
898pub const ZEND_EXT_NOP: u8 = 104;
899pub const ZEND_TICKS: u8 = 105;
900pub const ZEND_SEND_VAR_NO_REF: u8 = 106;
901pub const ZEND_CATCH: u8 = 107;
902pub const ZEND_THROW: u8 = 108;
903pub const ZEND_FETCH_CLASS: u8 = 109;
904pub const ZEND_CLONE: u8 = 110;
905pub const ZEND_RETURN_BY_REF: u8 = 111;
906pub const ZEND_INIT_METHOD_CALL: u8 = 112;
907pub const ZEND_INIT_STATIC_METHOD_CALL: u8 = 113;
908pub const ZEND_ISSET_ISEMPTY_VAR: u8 = 114;
909pub const ZEND_ISSET_ISEMPTY_DIM_OBJ: u8 = 115;
910pub const ZEND_SEND_VAL_EX: u8 = 116;
911pub const ZEND_SEND_VAR: u8 = 117;
912pub const ZEND_INIT_USER_CALL: u8 = 118;
913pub const ZEND_SEND_ARRAY: u8 = 119;
914pub const ZEND_SEND_USER: u8 = 120;
915pub const ZEND_STRLEN: u8 = 121;
916pub const ZEND_DEFINED: u8 = 122;
917pub const ZEND_TYPE_CHECK: u8 = 123;
918pub const ZEND_VERIFY_RETURN_TYPE: u8 = 124;
919pub const ZEND_FE_RESET_RW: u8 = 125;
920pub const ZEND_FE_FETCH_RW: u8 = 126;
921pub const ZEND_FE_FREE: u8 = 127;
922pub const ZEND_INIT_DYNAMIC_CALL: u8 = 128;
923pub const ZEND_DO_ICALL: u8 = 129;
924pub const ZEND_DO_UCALL: u8 = 130;
925pub const ZEND_DO_FCALL_BY_NAME: u8 = 131;
926pub const ZEND_PRE_INC_OBJ: u8 = 132;
927pub const ZEND_PRE_DEC_OBJ: u8 = 133;
928pub const ZEND_POST_INC_OBJ: u8 = 134;
929pub const ZEND_POST_DEC_OBJ: u8 = 135;
930pub const ZEND_ECHO: u8 = 136;
931pub const ZEND_OP_DATA: u8 = 137;
932pub const ZEND_INSTANCEOF: u8 = 138;
933pub const ZEND_GENERATOR_CREATE: u8 = 139;
934pub const ZEND_MAKE_REF: u8 = 140;
935pub const ZEND_DECLARE_FUNCTION: u8 = 141;
936pub const ZEND_DECLARE_LAMBDA_FUNCTION: u8 = 142;
937pub const ZEND_DECLARE_CONST: u8 = 143;
938pub const ZEND_DECLARE_CLASS: u8 = 144;
939pub const ZEND_DECLARE_CLASS_DELAYED: u8 = 145;
940pub const ZEND_DECLARE_ANON_CLASS: u8 = 146;
941pub const ZEND_ADD_ARRAY_UNPACK: u8 = 147;
942pub const ZEND_ISSET_ISEMPTY_PROP_OBJ: u8 = 148;
943pub const ZEND_HANDLE_EXCEPTION: u8 = 149;
944pub const ZEND_USER_OPCODE: u8 = 150;
945pub const ZEND_ASSERT_CHECK: u8 = 151;
946pub const ZEND_JMP_SET: u8 = 152;
947pub const ZEND_UNSET_CV: u8 = 153;
948pub const ZEND_ISSET_ISEMPTY_CV: u8 = 154;
949pub const ZEND_FETCH_LIST_W: u8 = 155;
950pub const ZEND_SEPARATE: u8 = 156;
951pub const ZEND_FETCH_CLASS_NAME: u8 = 157;
952pub const ZEND_CALL_TRAMPOLINE: u8 = 158;
953pub const ZEND_DISCARD_EXCEPTION: u8 = 159;
954pub const ZEND_YIELD: u8 = 160;
955pub const ZEND_GENERATOR_RETURN: u8 = 161;
956pub const ZEND_FAST_CALL: u8 = 162;
957pub const ZEND_FAST_RET: u8 = 163;
958pub const ZEND_RECV_VARIADIC: u8 = 164;
959pub const ZEND_SEND_UNPACK: u8 = 165;
960pub const ZEND_YIELD_FROM: u8 = 166;
961pub const ZEND_COPY_TMP: u8 = 167;
962pub const ZEND_BIND_GLOBAL: u8 = 168;
963pub const ZEND_COALESCE: u8 = 169;
964pub const ZEND_SPACESHIP: u8 = 170;
965pub const ZEND_FUNC_NUM_ARGS: u8 = 171;
966pub const ZEND_FUNC_GET_ARGS: u8 = 172;
967pub const ZEND_FETCH_STATIC_PROP_R: u8 = 173;
968pub const ZEND_FETCH_STATIC_PROP_W: u8 = 174;
969pub const ZEND_FETCH_STATIC_PROP_RW: u8 = 175;
970pub const ZEND_FETCH_STATIC_PROP_IS: u8 = 176;
971pub const ZEND_FETCH_STATIC_PROP_FUNC_ARG: u8 = 177;
972pub const ZEND_FETCH_STATIC_PROP_UNSET: u8 = 178;
973pub const ZEND_UNSET_STATIC_PROP: u8 = 179;
974pub const ZEND_ISSET_ISEMPTY_STATIC_PROP: u8 = 180;
975pub const ZEND_FETCH_CLASS_CONSTANT: u8 = 181;
976pub const ZEND_BIND_LEXICAL: u8 = 182;
977pub const ZEND_BIND_STATIC: u8 = 183;
978pub const ZEND_FETCH_THIS: u8 = 184;
979pub const ZEND_SEND_FUNC_ARG: u8 = 185;
980pub const ZEND_ISSET_ISEMPTY_THIS: u8 = 186;
981pub const ZEND_SWITCH_LONG: u8 = 187;
982pub const ZEND_SWITCH_STRING: u8 = 188;
983pub const ZEND_IN_ARRAY: u8 = 189;
984pub const ZEND_COUNT: u8 = 190;
985pub const ZEND_GET_CLASS: u8 = 191;
986pub const ZEND_GET_CALLED_CLASS: u8 = 192;
987pub const ZEND_GET_TYPE: u8 = 193;
988pub const ZEND_ARRAY_KEY_EXISTS: u8 = 194;
989pub const ZEND_MATCH: u8 = 195;
990pub const ZEND_CASE_STRICT: u8 = 196;
991pub const ZEND_MATCH_ERROR: u8 = 197;
992pub const ZEND_JMP_NULL: u8 = 198;
993pub const ZEND_CHECK_UNDEF_ARGS: u8 = 199;
994pub const ZEND_FETCH_GLOBALS: u8 = 200;
995pub const ZEND_VERIFY_NEVER_TYPE: u8 = 201;
996pub const ZEND_CALLABLE_CONVERT: u8 = 202;
997pub const ZEND_BIND_INIT_STATIC_OR_JMP: u8 = 203;
998pub const ZEND_FRAMELESS_ICALL_0: u8 = 204;
999pub const ZEND_FRAMELESS_ICALL_1: u8 = 205;
1000pub const ZEND_FRAMELESS_ICALL_2: u8 = 206;
1001pub const ZEND_FRAMELESS_ICALL_3: u8 = 207;
1002pub const ZEND_JMP_FRAMELESS: u8 = 208;
1003pub const ZEND_INIT_PARENT_PROPERTY_HOOK_CALL: u8 = 209;
1004pub const ZEND_DECLARE_ATTRIBUTED_CONST: u8 = 210;
1005pub const ZEND_VM_LAST_OPCODE: u8 = 210;
1006pub const ZEND_USE_ABS_JMP_ADDR: u32 = 0;
1007pub const ZEND_USE_ABS_CONST_ADDR: u32 = 0;
1008pub const ZEND_LIVE_TMPVAR: u32 = 0;
1009pub const ZEND_LIVE_LOOP: u32 = 1;
1010pub const ZEND_LIVE_SILENCE: u32 = 2;
1011pub const ZEND_LIVE_ROPE: u32 = 3;
1012pub const ZEND_LIVE_NEW: u32 = 4;
1013pub const ZEND_LIVE_MASK: u32 = 7;
1014pub const ZEND_ACC_PUBLIC: u32 = 1;
1015pub const ZEND_ACC_PROTECTED: u32 = 2;
1016pub const ZEND_ACC_PRIVATE: u32 = 4;
1017pub const ZEND_ACC_CHANGED: u32 = 8;
1018pub const ZEND_ACC_STATIC: u32 = 16;
1019pub const ZEND_ACC_FINAL: u32 = 32;
1020pub const ZEND_ACC_ABSTRACT: u32 = 64;
1021pub const ZEND_ACC_EXPLICIT_ABSTRACT_CLASS: u32 = 64;
1022pub const ZEND_ACC_READONLY: u32 = 128;
1023pub const ZEND_ACC_IMMUTABLE: u32 = 128;
1024pub const ZEND_ACC_HAS_TYPE_HINTS: u32 = 256;
1025pub const ZEND_ACC_TOP_LEVEL: u32 = 512;
1026pub const ZEND_ACC_PRELOADED: u32 = 1024;
1027pub const ZEND_CLASS_CONST_IS_CASE: u32 = 64;
1028pub const ZEND_ACC_DEPRECATED: u32 = 2048;
1029pub const ZEND_ACC_OVERRIDE: u32 = 268435456;
1030pub const ZEND_ACC_PROMOTED: u32 = 256;
1031pub const ZEND_ACC_VIRTUAL: u32 = 512;
1032pub const ZEND_ACC_PUBLIC_SET: u32 = 1024;
1033pub const ZEND_ACC_PROTECTED_SET: u32 = 2048;
1034pub const ZEND_ACC_PRIVATE_SET: u32 = 4096;
1035pub const ZEND_ACC_INTERFACE: u32 = 1;
1036pub const ZEND_ACC_TRAIT: u32 = 2;
1037pub const ZEND_ACC_ANON_CLASS: u32 = 4;
1038pub const ZEND_ACC_ENUM: u32 = 268435456;
1039pub const ZEND_ACC_LINKED: u32 = 8;
1040pub const ZEND_ACC_IMPLICIT_ABSTRACT_CLASS: u32 = 16;
1041pub const ZEND_ACC_USE_GUARDS: u32 = 1073741824;
1042pub const ZEND_ACC_CONSTANTS_UPDATED: u32 = 4096;
1043pub const ZEND_ACC_NO_DYNAMIC_PROPERTIES: u32 = 8192;
1044pub const ZEND_HAS_STATIC_IN_METHODS: u32 = 16384;
1045pub const ZEND_ACC_ALLOW_DYNAMIC_PROPERTIES: u32 = 32768;
1046pub const ZEND_ACC_READONLY_CLASS: u32 = 65536;
1047pub const ZEND_ACC_RESOLVED_PARENT: u32 = 131072;
1048pub const ZEND_ACC_RESOLVED_INTERFACES: u32 = 262144;
1049pub const ZEND_ACC_UNRESOLVED_VARIANCE: u32 = 524288;
1050pub const ZEND_ACC_NEARLY_LINKED: u32 = 1048576;
1051pub const ZEND_ACC_HAS_READONLY_PROPS: u32 = 2097152;
1052pub const ZEND_ACC_CACHED: u32 = 4194304;
1053pub const ZEND_ACC_CACHEABLE: u32 = 8388608;
1054pub const ZEND_ACC_HAS_AST_CONSTANTS: u32 = 16777216;
1055pub const ZEND_ACC_HAS_AST_PROPERTIES: u32 = 33554432;
1056pub const ZEND_ACC_HAS_AST_STATICS: u32 = 67108864;
1057pub const ZEND_ACC_FILE_CACHED: u32 = 134217728;
1058pub const ZEND_ACC_NOT_SERIALIZABLE: u32 = 536870912;
1059pub const ZEND_ACC_RETURN_REFERENCE: u32 = 4096;
1060pub const ZEND_ACC_HAS_RETURN_TYPE: u32 = 8192;
1061pub const ZEND_ACC_VARIADIC: u32 = 16384;
1062pub const ZEND_ACC_HAS_FINALLY_BLOCK: u32 = 32768;
1063pub const ZEND_ACC_EARLY_BINDING: u32 = 65536;
1064pub const ZEND_ACC_USES_THIS: u32 = 131072;
1065pub const ZEND_ACC_CALL_VIA_TRAMPOLINE: u32 = 262144;
1066pub const ZEND_ACC_NEVER_CACHE: u32 = 524288;
1067pub const ZEND_ACC_TRAIT_CLONE: u32 = 1048576;
1068pub const ZEND_ACC_CTOR: u32 = 2097152;
1069pub const ZEND_ACC_CLOSURE: u32 = 4194304;
1070pub const ZEND_ACC_FAKE_CLOSURE: u32 = 8388608;
1071pub const ZEND_ACC_GENERATOR: u32 = 16777216;
1072pub const ZEND_ACC_DONE_PASS_TWO: u32 = 33554432;
1073pub const ZEND_ACC_ARENA_ALLOCATED: u32 = 33554432;
1074pub const ZEND_ACC_HEAP_RT_CACHE: u32 = 67108864;
1075pub const ZEND_ACC_USER_ARG_INFO: u32 = 67108864;
1076pub const ZEND_ACC_COMPILE_TIME_EVAL: u32 = 134217728;
1077pub const ZEND_ACC_PTR_OPS: u32 = 268435456;
1078pub const ZEND_ACC_NODISCARD: u32 = 536870912;
1079pub const ZEND_ACC_STRICT_TYPES: u32 = 2147483648;
1080pub const ZEND_ACC_PPP_MASK: u32 = 7;
1081pub const ZEND_ACC_PPP_SET_MASK: u32 = 7168;
1082pub const ZEND_ACC_CALL_VIA_HANDLER: u32 = 262144;
1083pub const ZEND_SHORT_CIRCUITING_CHAIN_MASK: u32 = 3;
1084pub const ZEND_SHORT_CIRCUITING_CHAIN_EXPR: u32 = 0;
1085pub const ZEND_SHORT_CIRCUITING_CHAIN_ISSET: u32 = 1;
1086pub const ZEND_SHORT_CIRCUITING_CHAIN_EMPTY: u32 = 2;
1087pub const ZEND_JMP_NULL_BP_VAR_IS: u32 = 4;
1088pub const ZEND_PROPERTY_HOOK_COUNT: u32 = 2;
1089pub const ZEND_VIRTUAL_PROPERTY_OFFSET: u32 = 4294967295;
1090pub const ZEND_RETURN_VALUE: u32 = 0;
1091pub const ZEND_RETURN_REFERENCE: u32 = 1;
1092pub const ZEND_CALL_HAS_THIS: u32 = 776;
1093pub const ZEND_CALL_FUNCTION: u32 = 0;
1094pub const ZEND_CALL_CODE: u32 = 65536;
1095pub const ZEND_CALL_NESTED: u32 = 0;
1096pub const ZEND_CALL_TOP: u32 = 131072;
1097pub const ZEND_CALL_ALLOCATED: u32 = 262144;
1098pub const ZEND_CALL_FREE_EXTRA_ARGS: u32 = 524288;
1099pub const ZEND_CALL_HAS_SYMBOL_TABLE: u32 = 1048576;
1100pub const ZEND_CALL_RELEASE_THIS: u32 = 2097152;
1101pub const ZEND_CALL_CLOSURE: u32 = 4194304;
1102pub const ZEND_CALL_FAKE_CLOSURE: u32 = 8388608;
1103pub const ZEND_CALL_GENERATOR: u32 = 16777216;
1104pub const ZEND_CALL_DYNAMIC: u32 = 33554432;
1105pub const ZEND_CALL_MAY_HAVE_UNDEF: u32 = 67108864;
1106pub const ZEND_CALL_HAS_EXTRA_NAMED_PARAMS: u32 = 134217728;
1107pub const ZEND_CALL_OBSERVED: u32 = 268435456;
1108pub const ZEND_CALL_JIT_RESERVED: u32 = 536870912;
1109pub const ZEND_CALL_NEEDS_REATTACH: u32 = 1073741824;
1110pub const ZEND_CALL_SEND_ARG_BY_REF: u32 = 2147483648;
1111pub const ZEND_CALL_NESTED_FUNCTION: u32 = 0;
1112pub const ZEND_CALL_NESTED_CODE: u32 = 65536;
1113pub const ZEND_CALL_TOP_FUNCTION: u32 = 131072;
1114pub const ZEND_CALL_TOP_CODE: u32 = 196608;
1115pub const IS_UNUSED: u32 = 0;
1116pub const IS_CONST: u32 = 1;
1117pub const IS_TMP_VAR: u32 = 2;
1118pub const IS_VAR: u32 = 4;
1119pub const IS_CV: u32 = 8;
1120pub const IS_SMART_BRANCH_JMPZ: u32 = 16;
1121pub const IS_SMART_BRANCH_JMPNZ: u32 = 32;
1122pub const ZEND_EXTRA_VALUE: u32 = 1;
1123pub const STACK_BLOCK_SIZE: u32 = 16;
1124pub const PTR_STACK_BLOCK_SIZE: u32 = 64;
1125pub const ZEND_PTR_STACK_NUM_ARGS: u32 = 3;
1126pub const OBJ_BUCKET_INVALID: u32 = 1;
1127pub const XPFPA_HAVE_CW: u32 = 0;
1128pub const SYMTABLE_CACHE_SIZE: u32 = 32;
1129pub const ZEND_MAX_ALLOWED_STACK_SIZE_UNCHECKED: i32 = -1;
1130pub const ZEND_MAX_ALLOWED_STACK_SIZE_DETECT: u32 = 0;
1131pub const EG_FLAGS_INITIAL: u32 = 0;
1132pub const EG_FLAGS_IN_SHUTDOWN: u32 = 1;
1133pub const EG_FLAGS_OBJECT_STORE_NO_REUSE: u32 = 2;
1134pub const EG_FLAGS_IN_RESOURCE_SHUTDOWN: u32 = 4;
1135pub const INITIAL_OP_ARRAY_SIZE: u32 = 64;
1136pub const ZEND_FETCH_CLASS_DEFAULT: u32 = 0;
1137pub const ZEND_FETCH_CLASS_SELF: u32 = 1;
1138pub const ZEND_FETCH_CLASS_PARENT: u32 = 2;
1139pub const ZEND_FETCH_CLASS_STATIC: u32 = 3;
1140pub const ZEND_FETCH_CLASS_AUTO: u32 = 4;
1141pub const ZEND_FETCH_CLASS_INTERFACE: u32 = 5;
1142pub const ZEND_FETCH_CLASS_TRAIT: u32 = 6;
1143pub const ZEND_FETCH_CLASS_MASK: u32 = 15;
1144pub const ZEND_FETCH_CLASS_NO_AUTOLOAD: u32 = 128;
1145pub const ZEND_FETCH_CLASS_SILENT: u32 = 256;
1146pub const ZEND_FETCH_CLASS_EXCEPTION: u32 = 512;
1147pub const ZEND_FETCH_CLASS_ALLOW_UNLINKED: u32 = 1024;
1148pub const ZEND_FETCH_CLASS_ALLOW_NEARLY_LINKED: u32 = 2048;
1149pub const ZEND_PARAM_REF: u32 = 8;
1150pub const ZEND_PARAM_VARIADIC: u32 = 16;
1151pub const ZEND_NAME_FQ: u32 = 0;
1152pub const ZEND_NAME_NOT_FQ: u32 = 1;
1153pub const ZEND_NAME_RELATIVE: u32 = 2;
1154pub const ZEND_CONST_EXPR_NEW_FETCH_TYPE_SHIFT: u32 = 2;
1155pub const ZEND_TYPE_NULLABLE: u32 = 256;
1156pub const ZEND_ARRAY_SYNTAX_LIST: u32 = 1;
1157pub const ZEND_ARRAY_SYNTAX_LONG: u32 = 2;
1158pub const ZEND_ARRAY_SYNTAX_SHORT: u32 = 3;
1159pub const BP_VAR_R: u32 = 0;
1160pub const BP_VAR_W: u32 = 1;
1161pub const BP_VAR_RW: u32 = 2;
1162pub const BP_VAR_IS: u32 = 3;
1163pub const BP_VAR_FUNC_ARG: u32 = 4;
1164pub const BP_VAR_UNSET: u32 = 5;
1165pub const ZEND_INTERNAL_FUNCTION: u8 = 1;
1166pub const ZEND_USER_FUNCTION: u8 = 2;
1167pub const ZEND_EVAL_CODE: u32 = 4;
1168pub const ZEND_INTERNAL_CLASS: i8 = 1;
1169pub const ZEND_USER_CLASS: i8 = 2;
1170pub const ZEND_EVAL: u32 = 1;
1171pub const ZEND_INCLUDE: u32 = 2;
1172pub const ZEND_INCLUDE_ONCE: u32 = 4;
1173pub const ZEND_REQUIRE: u32 = 8;
1174pub const ZEND_REQUIRE_ONCE: u32 = 16;
1175pub const ZEND_FETCH_GLOBAL: u32 = 2;
1176pub const ZEND_FETCH_LOCAL: u32 = 4;
1177pub const ZEND_FETCH_GLOBAL_LOCK: u32 = 8;
1178pub const ZEND_FETCH_TYPE_MASK: u32 = 14;
1179pub const ZEND_FETCH_REF: u32 = 1;
1180pub const ZEND_FETCH_DIM_WRITE: u32 = 2;
1181pub const ZEND_FETCH_OBJ_FLAGS: u32 = 3;
1182pub const ZEND_FETCH_DIM_REF: u32 = 1;
1183pub const ZEND_FETCH_DIM_DIM: u32 = 2;
1184pub const ZEND_FETCH_DIM_OBJ: u32 = 3;
1185pub const ZEND_FETCH_DIM_INCDEC: u32 = 4;
1186pub const ZEND_ISEMPTY: u32 = 1;
1187pub const ZEND_LAST_CATCH: u32 = 1;
1188pub const ZEND_FREE_ON_RETURN: u32 = 1;
1189pub const ZEND_FREE_SWITCH: u32 = 2;
1190pub const ZEND_FREE_VOID_CAST: u32 = 4;
1191pub const ZEND_SEND_BY_VAL: u32 = 0;
1192pub const ZEND_SEND_BY_REF: u32 = 1;
1193pub const ZEND_SEND_PREFER_REF: u32 = 2;
1194pub const ZEND_THROW_IS_EXPR: u32 = 1;
1195pub const ZEND_FCALL_MAY_HAVE_EXTRA_NAMED_PARAMS: u32 = 1;
1196pub const _ZEND_SEND_MODE_SHIFT: u32 = 25;
1197pub const _ZEND_IS_VARIADIC_BIT: u32 = 134217728;
1198pub const _ZEND_IS_PROMOTED_BIT: u32 = 268435456;
1199pub const _ZEND_IS_TENTATIVE_BIT: u32 = 536870912;
1200pub const ZEND_DIM_IS: u32 = 1;
1201pub const ZEND_ALT_CASE_SYNTAX: u32 = 2;
1202pub const ZEND_ENCAPS_VAR_DOLLAR_CURLY: u32 = 1;
1203pub const ZEND_ENCAPS_VAR_DOLLAR_CURLY_VAR_VAR: u32 = 2;
1204pub const IS_CONSTANT_CLASS: u32 = 1024;
1205pub const IS_CONSTANT_UNQUALIFIED_IN_NAMESPACE: u32 = 2048;
1206pub const MAX_ARG_FLAG_NUM: u32 = 12;
1207pub const ZEND_RETURN_VAL: u32 = 0;
1208pub const ZEND_RETURN_REF: u32 = 1;
1209pub const ZEND_BIND_VAL: u32 = 0;
1210pub const ZEND_BIND_REF: u32 = 1;
1211pub const ZEND_BIND_IMPLICIT: u32 = 2;
1212pub const ZEND_BIND_EXPLICIT: u32 = 4;
1213pub const ZEND_RETURNS_FUNCTION: u32 = 1;
1214pub const ZEND_RETURNS_VALUE: u32 = 2;
1215pub const ZEND_ARRAY_ELEMENT_REF: u32 = 1;
1216pub const ZEND_ARRAY_NOT_PACKED: u32 = 2;
1217pub const ZEND_ARRAY_SIZE_SHIFT: u32 = 2;
1218pub const ZEND_PARENTHESIZED_CONDITIONAL: u32 = 1;
1219pub const ZEND_PARENTHESIZED_STATIC_PROP: u32 = 1;
1220pub const ZEND_PARENTHESIZED_ARROW_FUNC: u32 = 1;
1221pub const ZEND_SYMBOL_CLASS: u32 = 1;
1222pub const ZEND_SYMBOL_FUNCTION: u32 = 2;
1223pub const ZEND_SYMBOL_CONST: u32 = 4;
1224pub const ZEND_GOTO: u32 = 253;
1225pub const ZEND_BRK: u32 = 254;
1226pub const ZEND_CONT: u32 = 255;
1227pub const ZEND_CLONE_FUNC_NAME: &[u8; 8] = b"__clone\0";
1228pub const ZEND_CONSTRUCTOR_FUNC_NAME: &[u8; 12] = b"__construct\0";
1229pub const ZEND_DESTRUCTOR_FUNC_NAME: &[u8; 11] = b"__destruct\0";
1230pub const ZEND_GET_FUNC_NAME: &[u8; 6] = b"__get\0";
1231pub const ZEND_SET_FUNC_NAME: &[u8; 6] = b"__set\0";
1232pub const ZEND_UNSET_FUNC_NAME: &[u8; 8] = b"__unset\0";
1233pub const ZEND_ISSET_FUNC_NAME: &[u8; 8] = b"__isset\0";
1234pub const ZEND_CALL_FUNC_NAME: &[u8; 7] = b"__call\0";
1235pub const ZEND_CALLSTATIC_FUNC_NAME: &[u8; 13] = b"__callstatic\0";
1236pub const ZEND_TOSTRING_FUNC_NAME: &[u8; 11] = b"__tostring\0";
1237pub const ZEND_INVOKE_FUNC_NAME: &[u8; 9] = b"__invoke\0";
1238pub const ZEND_DEBUGINFO_FUNC_NAME: &[u8; 12] = b"__debuginfo\0";
1239pub const ZEND_COMPILE_EXTENDED_STMT: u32 = 1;
1240pub const ZEND_COMPILE_EXTENDED_FCALL: u32 = 2;
1241pub const ZEND_COMPILE_EXTENDED_INFO: u32 = 3;
1242pub const ZEND_COMPILE_HANDLE_OP_ARRAY: u32 = 4;
1243pub const ZEND_COMPILE_IGNORE_INTERNAL_FUNCTIONS: u32 = 8;
1244pub const ZEND_COMPILE_IGNORE_INTERNAL_CLASSES: u32 = 16;
1245pub const ZEND_COMPILE_DELAYED_BINDING: u32 = 32;
1246pub const ZEND_COMPILE_NO_CONSTANT_SUBSTITUTION: u32 = 64;
1247pub const ZEND_COMPILE_NO_PERSISTENT_CONSTANT_SUBSTITUTION: u32 = 256;
1248pub const ZEND_COMPILE_IGNORE_USER_FUNCTIONS: u32 = 512;
1249pub const ZEND_COMPILE_GUARDS: u32 = 1024;
1250pub const ZEND_COMPILE_NO_BUILTINS: u32 = 2048;
1251pub const ZEND_COMPILE_WITH_FILE_CACHE: u32 = 4096;
1252pub const ZEND_COMPILE_IGNORE_OTHER_FILES: u32 = 8192;
1253pub const ZEND_COMPILE_WITHOUT_EXECUTION: u32 = 16384;
1254pub const ZEND_COMPILE_PRELOAD: u32 = 32768;
1255pub const ZEND_COMPILE_NO_JUMPTABLES: u32 = 65536;
1256pub const ZEND_COMPILE_PRELOAD_IN_CHILD: u32 = 131072;
1257pub const ZEND_COMPILE_IGNORE_OBSERVER: u32 = 262144;
1258pub const ZEND_COMPILE_DEFAULT: u32 = 4;
1259pub const ZEND_COMPILE_DEFAULT_FOR_EVAL: u32 = 0;
1260pub const ZEND_BUILD_TS: &[u8; 5] = b",NTS\0";
1261pub const ZEND_BUILD_DEBUG: &[u8; 7] = b",debug\0";
1262pub const ZEND_MODULE_API_NO: u32 = 20250925;
1263pub const USING_ZTS: u8 = 0;
1264pub const ZEND_MODULE_BUILD_ID: &[u8; 22] = b"API20250925,NTS,debug\0";
1265pub const MODULE_PERSISTENT: u8 = 1;
1266pub const MODULE_TEMPORARY: u8 = 2;
1267pub const MODULE_DEP_REQUIRED: ::std::os::raw::c_uchar = 1;
1268pub const MODULE_DEP_CONFLICTS: ::std::os::raw::c_uchar = 2;
1269pub const MODULE_DEP_OPTIONAL: ::std::os::raw::c_uchar = 3;
1270pub const CONST_CS: u32 = 0;
1271pub const CONST_PERSISTENT: u32 = 1;
1272pub const CONST_NO_FILE_CACHE: u32 = 2;
1273pub const CONST_DEPRECATED: u32 = 4;
1274pub const CONST_OWNED: u32 = 8;
1275pub const CONST_RECURSIVE: u32 = 16;
1276pub const PHP_USER_CONSTANT: u32 = 8388607;
1277pub const ZEND_USER_OPCODE_CONTINUE: u32 = 0;
1278pub const ZEND_USER_OPCODE_RETURN: u32 = 1;
1279pub const ZEND_USER_OPCODE_DISPATCH: u32 = 2;
1280pub const ZEND_USER_OPCODE_ENTER: u32 = 3;
1281pub const ZEND_USER_OPCODE_LEAVE: u32 = 4;
1282pub const ZEND_USER_OPCODE_DISPATCH_TO: u32 = 256;
1283pub const CACHE_SPECIAL: u32 = 1;
1284pub const MAY_BE_UNDEF: u32 = 1;
1285pub const MAY_BE_NULL: u32 = 2;
1286pub const MAY_BE_FALSE: u32 = 4;
1287pub const MAY_BE_TRUE: u32 = 8;
1288pub const MAY_BE_BOOL: u32 = 12;
1289pub const MAY_BE_LONG: u32 = 16;
1290pub const MAY_BE_DOUBLE: u32 = 32;
1291pub const MAY_BE_STRING: u32 = 64;
1292pub const MAY_BE_ARRAY: u32 = 128;
1293pub const MAY_BE_OBJECT: u32 = 256;
1294pub const MAY_BE_RESOURCE: u32 = 512;
1295pub const MAY_BE_ANY: u32 = 1022;
1296pub const MAY_BE_REF: u32 = 1024;
1297pub const MAY_BE_CALLABLE: u32 = 4096;
1298pub const MAY_BE_VOID: u32 = 16384;
1299pub const MAY_BE_NEVER: u32 = 131072;
1300pub const MAY_BE_STATIC: u32 = 32768;
1301pub const MAY_BE_ARRAY_SHIFT: u32 = 10;
1302pub const MAY_BE_ARRAY_OF_NULL: u32 = 2048;
1303pub const MAY_BE_ARRAY_OF_FALSE: u32 = 4096;
1304pub const MAY_BE_ARRAY_OF_TRUE: u32 = 8192;
1305pub const MAY_BE_ARRAY_OF_LONG: u32 = 16384;
1306pub const MAY_BE_ARRAY_OF_DOUBLE: u32 = 32768;
1307pub const MAY_BE_ARRAY_OF_STRING: u32 = 65536;
1308pub const MAY_BE_ARRAY_OF_ARRAY: u32 = 131072;
1309pub const MAY_BE_ARRAY_OF_OBJECT: u32 = 262144;
1310pub const MAY_BE_ARRAY_OF_RESOURCE: u32 = 524288;
1311pub const MAY_BE_ARRAY_OF_ANY: u32 = 1046528;
1312pub const MAY_BE_ARRAY_OF_REF: u32 = 1048576;
1313pub const MAY_BE_ARRAY_PACKED: u32 = 2097152;
1314pub const MAY_BE_ARRAY_NUMERIC_HASH: u32 = 4194304;
1315pub const MAY_BE_ARRAY_STRING_HASH: u32 = 8388608;
1316pub const MAY_BE_ARRAY_EMPTY: u32 = 536870912;
1317pub const MAY_BE_ARRAY_KEY_LONG: u32 = 6291456;
1318pub const MAY_BE_ARRAY_KEY_STRING: u32 = 8388608;
1319pub const MAY_BE_ARRAY_KEY_ANY: u32 = 551550976;
1320pub const MAY_BE_CLASS: u32 = 16777216;
1321pub const MAY_BE_INDIRECT: u32 = 33554432;
1322pub const MAY_BE_RC1: u32 = 1073741824;
1323pub const MAY_BE_RCN: u32 = 2147483648;
1324pub const MAY_BE_ANY_ARRAY: u32 = 553646208;
1325pub const ZEND_PARSE_PARAMS_THROW: u32 = 0;
1326pub const ZEND_PARSE_PARAMS_QUIET: ::std::os::raw::c_int = 2;
1327pub const IS_CALLABLE_CHECK_SYNTAX_ONLY: u32 = 1;
1328pub const IS_CALLABLE_SUPPRESS_DEPRECATIONS: u32 = 2;
1329pub const FAST_ZPP: u32 = 1;
1330pub const ZPP_ERROR_OK: u32 = 0;
1331pub const ZPP_ERROR_FAILURE: u32 = 1;
1332pub const ZPP_ERROR_WRONG_CALLBACK: u32 = 2;
1333pub const ZPP_ERROR_WRONG_CLASS: u32 = 3;
1334pub const ZPP_ERROR_WRONG_CLASS_OR_NULL: u32 = 4;
1335pub const ZPP_ERROR_WRONG_CLASS_OR_STRING: u32 = 5;
1336pub const ZPP_ERROR_WRONG_CLASS_OR_STRING_OR_NULL: u32 = 6;
1337pub const ZPP_ERROR_WRONG_CLASS_OR_LONG: u32 = 7;
1338pub const ZPP_ERROR_WRONG_CLASS_OR_LONG_OR_NULL: u32 = 8;
1339pub const ZPP_ERROR_WRONG_ARG: u32 = 9;
1340pub const ZPP_ERROR_WRONG_COUNT: u32 = 10;
1341pub const ZPP_ERROR_UNEXPECTED_EXTRA_NAMED: u32 = 11;
1342pub const ZPP_ERROR_WRONG_CALLBACK_OR_NULL: u32 = 12;
1343pub const ZEND_ATTRIBUTE_TARGET_CLASS: u32 = 1;
1344pub const ZEND_ATTRIBUTE_TARGET_FUNCTION: u32 = 2;
1345pub const ZEND_ATTRIBUTE_TARGET_METHOD: u32 = 4;
1346pub const ZEND_ATTRIBUTE_TARGET_PROPERTY: u32 = 8;
1347pub const ZEND_ATTRIBUTE_TARGET_CLASS_CONST: u32 = 16;
1348pub const ZEND_ATTRIBUTE_TARGET_PARAMETER: u32 = 32;
1349pub const ZEND_ATTRIBUTE_TARGET_CONST: u32 = 64;
1350pub const ZEND_ATTRIBUTE_TARGET_ALL: u32 = 127;
1351pub const ZEND_ATTRIBUTE_IS_REPEATABLE: u32 = 128;
1352pub const ZEND_ATTRIBUTE_FLAGS: u32 = 255;
1353pub const ZEND_ATTRIBUTE_PERSISTENT: u32 = 1;
1354pub const ZEND_ATTRIBUTE_STRICT_TYPES: u32 = 2;
1355pub const ZEND_CPU_EBX_MASK: u32 = 1073741824;
1356pub const ZEND_CPU_EDX_MASK: u32 = 2147483648;
1357pub const ZEND_EXTENSION_API_NO: u32 = 420250925;
1358pub const ZEND_EXTMSG_NEW_EXTENSION: u32 = 1;
1359pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_CTOR: u32 = 1;
1360pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_DTOR: u32 = 2;
1361pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_HANDLER: u32 = 4;
1362pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_PERSIST_CALC: u32 = 8;
1363pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_PERSIST: u32 = 16;
1364pub const ZEND_FIBER_GUARD_PAGES: u32 = 1;
1365pub const HL_COMMENT_COLOR: &[u8; 8] = b"#FF8000\0";
1366pub const HL_DEFAULT_COLOR: &[u8; 8] = b"#0000BB\0";
1367pub const HL_HTML_COLOR: &[u8; 8] = b"#000000\0";
1368pub const HL_STRING_COLOR: &[u8; 8] = b"#DD0000\0";
1369pub const HL_KEYWORD_COLOR: &[u8; 8] = b"#007700\0";
1370pub const ZEND_INI_USER: u8 = 1;
1371pub const ZEND_INI_PERDIR: u8 = 2;
1372pub const ZEND_INI_SYSTEM: u8 = 4;
1373pub const ZEND_INI_ALL: u8 = 7;
1374pub const ZEND_INI_DISPLAY_ORIG: u32 = 1;
1375pub const ZEND_INI_DISPLAY_ACTIVE: u32 = 2;
1376pub const ZEND_INI_STAGE_STARTUP: u32 = 1;
1377pub const ZEND_INI_STAGE_SHUTDOWN: u32 = 2;
1378pub const ZEND_INI_STAGE_ACTIVATE: u32 = 4;
1379pub const ZEND_INI_STAGE_DEACTIVATE: u32 = 8;
1380pub const ZEND_INI_STAGE_RUNTIME: u32 = 16;
1381pub const ZEND_INI_STAGE_HTACCESS: u32 = 32;
1382pub const ZEND_INI_STAGE_IN_REQUEST: u32 = 60;
1383pub const ZEND_INI_PARSER_ENTRY: u32 = 1;
1384pub const ZEND_INI_PARSER_SECTION: u32 = 2;
1385pub const ZEND_INI_PARSER_POP_ENTRY: u32 = 3;
1386pub const ZEND_INI_SCANNER_NORMAL: u32 = 0;
1387pub const ZEND_INI_SCANNER_RAW: u32 = 1;
1388pub const ZEND_INI_SCANNER_TYPED: u32 = 2;
1389pub const XSSE_VERSION: u32 = 10000;
1390pub const Omit_Private_Memory: u32 = 1;
1391pub const NO_HEX_FP: u32 = 1;
1392pub const IEEE_LITTLE_ENDIAN: u32 = 1;
1393pub const IEEE_8087: u32 = 1;
1394pub const DEFAULT_SLASH: u8 = 47u8;
1395pub const DEFAULT_DIR_SEPARATOR: u8 = 58u8;
1396pub const CWD_EXPAND: u32 = 0;
1397pub const CWD_FILEPATH: u32 = 1;
1398pub const CWD_REALPATH: u32 = 2;
1399pub const REALPATH_CACHE_TTL: u32 = 120;
1400pub const REALPATH_CACHE_SIZE: u32 = 0;
1401pub const _S_IFDIR: u32 = 16384;
1402pub const _S_IFREG: u32 = 32768;
1403pub const S_IXROOT: u32 = 73;
1404pub const PHP_API_VERSION: u32 = 20250925;
1405pub const YYDEBUG: u32 = 0;
1406pub const PHP_DEFAULT_CHARSET: &[u8; 6] = b"UTF-8\0";
1407pub const PHP_MAJOR_VERSION: u32 = 8;
1408pub const PHP_MINOR_VERSION: u32 = 5;
1409pub const PHP_RELEASE_VERSION: u32 = 9;
1410pub const PHP_EXTRA_VERSION: &[u8; 1] = b"\0";
1411pub const PHP_VERSION: &[u8; 6] = b"8.5.9\0";
1412pub const PHP_VERSION_ID: u32 = 80509;
1413pub const XML_CONTEXT_BYTES: u32 = 1024;
1414pub const XML_DTD: u32 = 1;
1415pub const XML_NS: u32 = 1;
1416pub const PHP_OS_FAMILY: &[u8; 6] = b"Linux\0";
1417pub const PHP_DEBUG: u32 = 1;
1418pub const PHP_DIR_SEPARATOR: u8 = 47u8;
1419pub const PHP_EOL: &[u8; 2] = b"\n\0";
1420pub const CONFIGURE_COMMAND: &[u8; 54] = b" './configure'  '--enable-debug' '--enable-zend-test'\0";
1421pub const PHP_PROG_SENDMAIL: &[u8; 19] = b"/usr/sbin/sendmail\0";
1422pub const PEAR_INSTALLDIR: &[u8; 1] = b"\0";
1423pub const PHP_INCLUDE_PATH: &[u8; 3] = b".:\0";
1424pub const PHP_EXTENSION_DIR: &[u8; 53] = b"/usr/local/lib/php/extensions/debug-non-zts-20250925\0";
1425pub const PHP_PREFIX: &[u8; 11] = b"/usr/local\0";
1426pub const PHP_BINDIR: &[u8; 15] = b"/usr/local/bin\0";
1427pub const PHP_SBINDIR: &[u8; 16] = b"/usr/local/sbin\0";
1428pub const PHP_MANDIR: &[u8; 19] = b"/usr/local/php/man\0";
1429pub const PHP_LIBDIR: &[u8; 19] = b"/usr/local/lib/php\0";
1430pub const PHP_DATADIR: &[u8; 21] = b"/usr/local/share/php\0";
1431pub const PHP_SYSCONFDIR: &[u8; 15] = b"/usr/local/etc\0";
1432pub const PHP_LOCALSTATEDIR: &[u8; 15] = b"/usr/local/var\0";
1433pub const PHP_CONFIG_FILE_PATH: &[u8; 15] = b"/usr/local/lib\0";
1434pub const PHP_CONFIG_FILE_SCAN_DIR: &[u8; 1] = b"\0";
1435pub const PHP_SHLIB_SUFFIX: &[u8; 3] = b"so\0";
1436pub const PHP_SHLIB_EXT_PREFIX: &[u8; 1] = b"\0";
1437pub const EXEC_INPUT_BUF: u32 = 4096;
1438pub const PHP_MIME_TYPE: &[u8; 24] = b"application/x-httpd-php\0";
1439pub const PHP_SYSLOG_FILTER_ALL: u32 = 0;
1440pub const PHP_SYSLOG_FILTER_NO_CTRL: u32 = 1;
1441pub const PHP_SYSLOG_FILTER_ASCII: u32 = 2;
1442pub const PHP_SYSLOG_FILTER_RAW: u32 = 3;
1443pub const PHP_OUTPUT_NEWAPI: u32 = 1;
1444pub const PHP_OUTPUT_HANDLER_WRITE: u32 = 0;
1445pub const PHP_OUTPUT_HANDLER_START: u32 = 1;
1446pub const PHP_OUTPUT_HANDLER_CLEAN: u32 = 2;
1447pub const PHP_OUTPUT_HANDLER_FLUSH: u32 = 4;
1448pub const PHP_OUTPUT_HANDLER_FINAL: u32 = 8;
1449pub const PHP_OUTPUT_HANDLER_CONT: u32 = 0;
1450pub const PHP_OUTPUT_HANDLER_END: u32 = 8;
1451pub const PHP_OUTPUT_HANDLER_INTERNAL: u32 = 0;
1452pub const PHP_OUTPUT_HANDLER_USER: u32 = 1;
1453pub const PHP_OUTPUT_HANDLER_CLEANABLE: u32 = 16;
1454pub const PHP_OUTPUT_HANDLER_FLUSHABLE: u32 = 32;
1455pub const PHP_OUTPUT_HANDLER_REMOVABLE: u32 = 64;
1456pub const PHP_OUTPUT_HANDLER_STDFLAGS: u32 = 112;
1457pub const PHP_OUTPUT_HANDLER_STARTED: u32 = 4096;
1458pub const PHP_OUTPUT_HANDLER_DISABLED: u32 = 8192;
1459pub const PHP_OUTPUT_HANDLER_PROCESSED: u32 = 16384;
1460pub const PHP_OUTPUT_HANDLER_PRODUCED_OUTPUT: u32 = 32768;
1461pub const PHP_OUTPUT_POP_TRY: u32 = 0;
1462pub const PHP_OUTPUT_POP_FORCE: u32 = 1;
1463pub const PHP_OUTPUT_POP_DISCARD: u32 = 16;
1464pub const PHP_OUTPUT_POP_SILENT: u32 = 256;
1465pub const PHP_OUTPUT_IMPLICITFLUSH: u32 = 1;
1466pub const PHP_OUTPUT_DISABLED: u32 = 2;
1467pub const PHP_OUTPUT_WRITTEN: u32 = 4;
1468pub const PHP_OUTPUT_SENT: u32 = 8;
1469pub const PHP_OUTPUT_ACTIVE: u32 = 16;
1470pub const PHP_OUTPUT_LOCKED: u32 = 32;
1471pub const PHP_OUTPUT_ACTIVATED: u32 = 1048576;
1472pub const PHP_OUTPUT_HANDLER_ALIGNTO_SIZE: u32 = 4096;
1473pub const PHP_OUTPUT_HANDLER_DEFAULT_SIZE: u32 = 16384;
1474pub const PHP_STREAM_NOTIFIER_PROGRESS: u32 = 1;
1475pub const PHP_STREAM_NOTIFY_RESOLVE: u32 = 1;
1476pub const PHP_STREAM_NOTIFY_CONNECT: u32 = 2;
1477pub const PHP_STREAM_NOTIFY_AUTH_REQUIRED: u32 = 3;
1478pub const PHP_STREAM_NOTIFY_MIME_TYPE_IS: u32 = 4;
1479pub const PHP_STREAM_NOTIFY_FILE_SIZE_IS: u32 = 5;
1480pub const PHP_STREAM_NOTIFY_REDIRECTED: u32 = 6;
1481pub const PHP_STREAM_NOTIFY_PROGRESS: u32 = 7;
1482pub const PHP_STREAM_NOTIFY_COMPLETED: u32 = 8;
1483pub const PHP_STREAM_NOTIFY_FAILURE: u32 = 9;
1484pub const PHP_STREAM_NOTIFY_AUTH_RESULT: u32 = 10;
1485pub const PHP_STREAM_NOTIFY_SEVERITY_INFO: u32 = 0;
1486pub const PHP_STREAM_NOTIFY_SEVERITY_WARN: u32 = 1;
1487pub const PHP_STREAM_NOTIFY_SEVERITY_ERR: u32 = 2;
1488pub const PHP_STREAM_FILTER_READ: u32 = 1;
1489pub const PHP_STREAM_FILTER_WRITE: u32 = 2;
1490pub const PHP_STREAM_FILTER_ALL: u32 = 3;
1491pub const PSFS_FLAG_NORMAL: u32 = 0;
1492pub const PSFS_FLAG_FLUSH_INC: u32 = 1;
1493pub const PSFS_FLAG_FLUSH_CLOSE: u32 = 2;
1494pub const PHP_STREAM_FLAG_NO_SEEK: u32 = 1;
1495pub const PHP_STREAM_FLAG_NO_BUFFER: u32 = 2;
1496pub const PHP_STREAM_FLAG_EOL_UNIX: u32 = 0;
1497pub const PHP_STREAM_FLAG_DETECT_EOL: u32 = 4;
1498pub const PHP_STREAM_FLAG_EOL_MAC: u32 = 8;
1499pub const PHP_STREAM_FLAG_AVOID_BLOCKING: u32 = 16;
1500pub const PHP_STREAM_FLAG_NO_CLOSE: u32 = 32;
1501pub const PHP_STREAM_FLAG_IS_DIR: u32 = 64;
1502pub const PHP_STREAM_FLAG_NO_FCLOSE: u32 = 128;
1503pub const PHP_STREAM_FLAG_SUPPRESS_ERRORS: u32 = 256;
1504pub const PHP_STREAM_FLAG_NO_RSCR_DTOR_CLOSE: u32 = 512;
1505pub const PHP_STREAM_FLAG_NO_IO: u32 = 1024;
1506pub const PHP_STREAM_FLAG_WAS_WRITTEN: u32 = 2147483648;
1507pub const PHP_STREAM_FCLOSE_NONE: u32 = 0;
1508pub const PHP_STREAM_FCLOSE_FDOPEN: u32 = 1;
1509pub const PHP_STREAM_FCLOSE_FOPENCOOKIE: u32 = 2;
1510pub const PHP_STREAM_PERSISTENT_SUCCESS: u32 = 0;
1511pub const PHP_STREAM_PERSISTENT_FAILURE: u32 = 1;
1512pub const PHP_STREAM_PERSISTENT_NOT_EXIST: u32 = 2;
1513pub const PHP_STREAM_FREE_CALL_DTOR: u32 = 1;
1514pub const PHP_STREAM_FREE_RELEASE_STREAM: u32 = 2;
1515pub const PHP_STREAM_FREE_PRESERVE_HANDLE: u32 = 4;
1516pub const PHP_STREAM_FREE_RSRC_DTOR: u32 = 8;
1517pub const PHP_STREAM_FREE_PERSISTENT: u32 = 16;
1518pub const PHP_STREAM_FREE_IGNORE_ENCLOSING: u32 = 32;
1519pub const PHP_STREAM_FREE_KEEP_RSRC: u32 = 64;
1520pub const PHP_STREAM_FREE_CLOSE: u32 = 3;
1521pub const PHP_STREAM_FREE_CLOSE_CASTED: u32 = 7;
1522pub const PHP_STREAM_FREE_CLOSE_PERSISTENT: u32 = 19;
1523pub const PHP_STREAM_MKDIR_RECURSIVE: u32 = 1;
1524pub const PHP_STREAM_URL_STAT_LINK: u32 = 1;
1525pub const PHP_STREAM_URL_STAT_QUIET: u32 = 2;
1526pub const PHP_STREAM_URL_STAT_IGNORE_OPEN_BASEDIR: u32 = 4;
1527pub const PHP_STREAM_OPTION_BLOCKING: u32 = 1;
1528pub const PHP_STREAM_OPTION_READ_BUFFER: u32 = 2;
1529pub const PHP_STREAM_OPTION_WRITE_BUFFER: u32 = 3;
1530pub const PHP_STREAM_BUFFER_NONE: u32 = 0;
1531pub const PHP_STREAM_BUFFER_LINE: u32 = 1;
1532pub const PHP_STREAM_BUFFER_FULL: u32 = 2;
1533pub const PHP_STREAM_OPTION_READ_TIMEOUT: u32 = 4;
1534pub const PHP_STREAM_OPTION_SET_CHUNK_SIZE: u32 = 5;
1535pub const PHP_STREAM_OPTION_LOCKING: u32 = 6;
1536pub const PHP_STREAM_LOCK_SUPPORTED: u32 = 1;
1537pub const PHP_STREAM_OPTION_XPORT_API: u32 = 7;
1538pub const PHP_STREAM_OPTION_CRYPTO_API: u32 = 8;
1539pub const PHP_STREAM_OPTION_MMAP_API: u32 = 9;
1540pub const PHP_STREAM_OPTION_TRUNCATE_API: u32 = 10;
1541pub const PHP_STREAM_TRUNCATE_SUPPORTED: u32 = 0;
1542pub const PHP_STREAM_TRUNCATE_SET_SIZE: u32 = 1;
1543pub const PHP_STREAM_OPTION_META_DATA_API: u32 = 11;
1544pub const PHP_STREAM_OPTION_CHECK_LIVENESS: u32 = 12;
1545pub const PHP_STREAM_OPTION_PIPE_BLOCKING: u32 = 13;
1546pub const PHP_STREAM_OPTION_SYNC_API: u32 = 14;
1547pub const PHP_STREAM_SYNC_SUPPORTED: u32 = 0;
1548pub const PHP_STREAM_SYNC_FSYNC: u32 = 1;
1549pub const PHP_STREAM_SYNC_FDSYNC: u32 = 2;
1550pub const PHP_STREAM_OPTION_RETURN_OK: u32 = 0;
1551pub const PHP_STREAM_OPTION_RETURN_ERR: i32 = -1;
1552pub const PHP_STREAM_OPTION_RETURN_NOTIMPL: i32 = -2;
1553pub const STREAM_XPORT_CLIENT: u32 = 0;
1554pub const STREAM_XPORT_SERVER: u32 = 1;
1555pub const STREAM_XPORT_CONNECT: u32 = 2;
1556pub const STREAM_XPORT_BIND: u32 = 4;
1557pub const STREAM_XPORT_LISTEN: u32 = 8;
1558pub const STREAM_XPORT_CONNECT_ASYNC: u32 = 16;
1559pub const PHP_STREAM_MMAP_ALL: u32 = 0;
1560pub const PHP_STREAM_MMAP_MAX: u32 = 536870912;
1561pub const PHP_STREAM_AS_STDIO: u32 = 0;
1562pub const PHP_STREAM_AS_FD: u32 = 1;
1563pub const PHP_STREAM_AS_SOCKETD: u32 = 2;
1564pub const PHP_STREAM_AS_FD_FOR_SELECT: u32 = 3;
1565pub const PHP_STREAM_CAST_TRY_HARD: u32 = 2147483648;
1566pub const PHP_STREAM_CAST_RELEASE: u32 = 1073741824;
1567pub const PHP_STREAM_CAST_INTERNAL: u32 = 536870912;
1568pub const PHP_STREAM_CAST_MASK: u32 = 3758096384;
1569pub const IGNORE_PATH: u32 = 0;
1570pub const USE_PATH: u32 = 1;
1571pub const IGNORE_URL: u32 = 2;
1572pub const REPORT_ERRORS: u32 = 8;
1573pub const STREAM_MUST_SEEK: u32 = 16;
1574pub const STREAM_WILL_CAST: u32 = 32;
1575pub const STREAM_LOCATE_WRAPPERS_ONLY: u32 = 64;
1576pub const STREAM_OPEN_FOR_INCLUDE: u32 = 128;
1577pub const STREAM_USE_URL: u32 = 256;
1578pub const STREAM_ONLY_GET_HEADERS: u32 = 512;
1579pub const STREAM_DISABLE_OPEN_BASEDIR: u32 = 1024;
1580pub const STREAM_OPEN_PERSISTENT: u32 = 2048;
1581pub const STREAM_USE_GLOB_DIR_OPEN: u32 = 4096;
1582pub const STREAM_DISABLE_URL_PROTECTION: u32 = 8192;
1583pub const STREAM_ASSUME_REALPATH: u32 = 16384;
1584pub const STREAM_USE_BLOCKING_PIPE: u32 = 32768;
1585pub const STREAM_OPEN_FOR_ZEND_STREAM: u32 = 65536;
1586pub const PHP_STREAM_NO_PREFERENCE: u32 = 0;
1587pub const PHP_STREAM_PREFER_STDIO: u32 = 1;
1588pub const PHP_STREAM_FORCE_CONVERSION: u32 = 2;
1589pub const PHP_STREAM_IS_URL: u32 = 1;
1590pub const PHP_STREAM_META_TOUCH: u32 = 1;
1591pub const PHP_STREAM_META_OWNER_NAME: u32 = 2;
1592pub const PHP_STREAM_META_OWNER: u32 = 3;
1593pub const PHP_STREAM_META_GROUP_NAME: u32 = 4;
1594pub const PHP_STREAM_META_GROUP: u32 = 5;
1595pub const PHP_STREAM_META_ACCESS: u32 = 6;
1596pub const PHP_STREAM_MAX_MEM: u32 = 2097152;
1597pub const TEMP_STREAM_DEFAULT: u32 = 0;
1598pub const TEMP_STREAM_READONLY: u32 = 1;
1599pub const TEMP_STREAM_TAKE_BUFFER: u32 = 2;
1600pub const TEMP_STREAM_APPEND: u32 = 4;
1601pub const PHP_DISPLAY_ERRORS_STDOUT: u32 = 1;
1602pub const PHP_DISPLAY_ERRORS_STDERR: u32 = 2;
1603pub const TRACK_VARS_POST: u32 = 0;
1604pub const TRACK_VARS_GET: u32 = 1;
1605pub const TRACK_VARS_COOKIE: u32 = 2;
1606pub const TRACK_VARS_SERVER: u32 = 3;
1607pub const TRACK_VARS_ENV: u32 = 4;
1608pub const TRACK_VARS_FILES: u32 = 5;
1609pub const TRACK_VARS_REQUEST: u32 = 6;
1610pub const PHP_INI_USER: u8 = 1;
1611pub const PHP_INI_PERDIR: u8 = 2;
1612pub const PHP_INI_SYSTEM: u8 = 4;
1613pub const PHP_INI_ALL: u8 = 7;
1614pub const PHP_INI_DISPLAY_ORIG: u32 = 1;
1615pub const PHP_INI_DISPLAY_ACTIVE: u32 = 2;
1616pub const PHP_INI_STAGE_STARTUP: u32 = 1;
1617pub const PHP_INI_STAGE_SHUTDOWN: u32 = 2;
1618pub const PHP_INI_STAGE_ACTIVATE: u32 = 4;
1619pub const PHP_INI_STAGE_DEACTIVATE: u32 = 8;
1620pub const PHP_INI_STAGE_RUNTIME: u32 = 16;
1621pub const PHP_INI_STAGE_HTACCESS: u32 = 32;
1622pub const PHP_CONNECTION_NORMAL: u32 = 0;
1623pub const PHP_CONNECTION_ABORTED: u32 = 1;
1624pub const PHP_CONNECTION_TIMEOUT: u32 = 2;
1625pub const PHP_ENTRY_NAME_COLOR: &[u8; 5] = b"#ccf\0";
1626pub const PHP_CONTENTS_COLOR: &[u8; 5] = b"#ccc\0";
1627pub const PHP_HEADER_COLOR: &[u8; 5] = b"#99c\0";
1628pub const PHP_INFO_GENERAL: u32 = 1;
1629pub const PHP_INFO_CREDITS: u32 = 2;
1630pub const PHP_INFO_CONFIGURATION: u32 = 4;
1631pub const PHP_INFO_MODULES: u32 = 8;
1632pub const PHP_INFO_ENVIRONMENT: u32 = 16;
1633pub const PHP_INFO_VARIABLES: u32 = 32;
1634pub const PHP_INFO_LICENSE: u32 = 64;
1635pub const PHP_INFO_ALL: u32 = 4294967295;
1636pub const PHP_CREDITS_GROUP: u32 = 1;
1637pub const PHP_CREDITS_GENERAL: u32 = 2;
1638pub const PHP_CREDITS_SAPI: u32 = 4;
1639pub const PHP_CREDITS_MODULES: u32 = 8;
1640pub const PHP_CREDITS_DOCS: u32 = 16;
1641pub const PHP_CREDITS_FULLPAGE: u32 = 32;
1642pub const PHP_CREDITS_QA: u32 = 64;
1643pub const PHP_CREDITS_WEB: u32 = 128;
1644pub const PHP_CREDITS_ALL: u32 = 4294967295;
1645pub const PHP_LOGO_DATA_URI : & [u8 ; 5439] = b"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAABACAYAAAA+j9gsAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAD4BJREFUeNrsnXtwXFUdx8/dBGihmE21QCrQDY6oZZykon/gY5qizjgM2KQMfzFAOioOA5KEh+j4R9oZH7zT6MAMKrNphZFSQreKHRgZmspLHSCJ2Co6tBtJk7Zps7tJs5t95F5/33PvWU4293F29ybdlPzaM3df2XPv+Zzf4/zOuWc1tkjl+T0HQ3SQC6SBSlD6WKN4rusGm9F1ps/o5mPriOf8dd0YoNfi0nt4ntB1PT4zYwzQkf3kR9/sW4xtpS0CmE0SyPUFUJXFMIxZcM0jAZ4xrKMudQT7963HBF0n6EaUjkP0vI9K9OEHWqJLkNW1s8mC2WgVTwGAqWTafJzTWTKZmQuZ/k1MpAi2+eys6mpWfVaAPzcILu8EVKoCAaYFtPxrAXo8qyNwzZc7gSgzgN9Hx0Ecn3j8xr4lyHOhNrlpaJIgptM5DjCdzrJ0Jmce6bWFkOpqs0MErA4gXIBuAmY53gFmOPCcdaTXCbq+n16PPLXjewMfGcgEttECeouTpk5MplhyKsPBTiXNYyULtwIW7Cx1vlwuJyDLR9L0mQiVPb27fhA54yBbGttMpc1OWwF1cmKaH2FSF7vAjGezOZZJZ9j0dIZlMhnuRiToMO0c+N4X7oksasgEt9XS2KZCHzoem2Ixq5zpAuDTqTR14FMslZyepeEI4Ogj26n0vLj33uiigExgMWRpt+CGCsEePZqoePM738BPTaJzT7CpU0nu1yXpAXCC3VeRkCW4bfJYFZo6dmJyQTW2tvZc1nb719iyZWc5fmZ6Osu6H3uVzit52oBnMll2YizGxk8muFZLAshb/YKtzQdcaO3Y2CQ7eiy+YNGvLN+4+nJetm3bxhKJxJz316xZw1pbW9kLew+w1944XBEaPj6eYCeOx1gqNe07bK1MwIDbKcOFOR49GuePT5fcfOMX2drPXcQ0zf7y2tvbWVdXF/v1k2+yQ4dPVpQ5P0Um/NjoCX6UBMFZR6k+u7qMYVBYDIEqBW7eXAfPZX19zp2/oaGBHysNMGTFinPZik9fWggbI5Omb13zUDeB3lLsdwaK/YPeyAFU0i8Aw9/2Dwyx4SPjFQEYUlf3MTYw4Jx7CIVCbHR0oqIDNMD+FMG+ZE0dO/tsHlvAWnYS6H4qjfMC+Zld/wg92/tuv2WeeYT87j+H2aFDxysGLuSy+o/z49DQkONnmpqa2MjRyoYsZOXKGnb5Z+vZqlUrxUsAvI9At/oK+elnBpoNw+Dai9TekSMxDrgSh0KrSYshTprc2NhoRf1JtlikqirAVl98AddsSavDBDrsC+QdT7/TSoB344tzOZ39+70RbporVerqasyw1MEnC8iV6I9VTDi0uqbmfPFSq2W+gyUHXuEdb3WR5rab5jnD3i/BNMN8ChNaqsTiKa55KmBWX+Tuj0XQdQVF307nhTH0CPls+O0UPbaT5TQG/8qX68u6LpV67LQ6dNknaYgaYyPDx2TzvYGCsnhRkH8b/rsF2GDj1MCInkvxvRjOuCUlipWD/zrKx7ZOwBF0vfSSM2ShyaqAAOC1Nw+zt9/5YNbrN1zfwIdpfgnqebv/A6pnWAn4qlW1HPgHQ6OeoG3N9RO/+StMdDtmV2LxJPfBpQCGfwTgrVu38jFrKaW2tpZt2LCBdXR0sEgkwhv21u9cxQsyW3ZB1+DgoOM54btU6tu8eTPr6elhy5fr7IZNDey+e76e9/fCLcAllHpdKKinpaUlX8+111xB9VzNrYxqUAY/XVVVJYMOekLu2fFGM8VWYQRYiYkU9bD4vPlHFYnH4/zvkb1CgwACHgMoUpdyw3sFXcXUh4YHaNSHDqaxdL5jwVTXBpeXVY9oF3RcUQ+O09NT7Cayfld+4RJlP42gTIq8w66Qf/X4a6FTSSMMDcaE/NhYecMM+MdyG90OAhodWoAGkTUaSZByO5WdiA4GqwStrrM6k5vFKEXQserr63l7oR5V0NBojKctaSZtbneErOtGmFxwkGewjk0UzpCUlJSIRqMcjN8CkHLDqyRByq0PEGBBhDmdj7rQVujAaLfrrlk7xyW5gUaxpEtOmOQDr0e799NYmDVBi0+OT7FcbsaXxEQk8qprEBQMBm0vVKUBRcNjskFE8W71lSt79uzhda1d6w4ZGTUUp3NWAQ3TvW/fPvbVq+rZH/ceULOcF1/I06CY3QJohCCzNJnYdgEwwvpUKuNbUsLNpO3evZtfSGHp7+/nS2pw3LLFPVWLoA5yHQUtXvXFYjH+vU4F5yOibzsRUL38MTqC3XWh8GCWziMcDjt2BNEZUIfoUOpJkwvziT3S5ua8Jj/4yD5E0yERbPkhKv4RF4mhkN1wCMHN2rWfYZ2dnWz9+vXchNkJzBoaQ8Bxqg91wWo41YdO2dzczD+3bt06Rw0rBG4nOF8oi9M0Jsw9OgLqQ124BifLgeuHyVbN0NXUrODBmDWxgRR0pNrUYqMNgDOZGZbNzvgCuc4j0kX+GPJ2//CcMagQmKkbrm/knwVEp++SIXulM1+nhj9AY207QRDnpsnye24WA59DkuPlV/5j+z5eB2hE0W1tbTyQdNJmDpksRzFp2E9csFJAboRvDvz8gZdJgw2ek55KZphfAv+Inu8UdKnmkEUHQK93EjEZ4Rbkifq8JiactEpYAy9Nli2Gm6CjIZPn1qlKFWizleOG3BIwdKNZ+KRMxr9VHKvr1NKLXo2BhlAVFRPq1qlWW6MBr3NWyY2rTGXO5ySJlN9uDuiGsV7XTVPtl8CHYGizf/9+V5Om0hAwVV4ahuU8qia03HP26kyqFkMOTudDzjs/P/QKBUiBYa5ZNucfZJUkCG/0IhpCxYyqBF3lnLOII8q1GKqdStQ3rTh5MStwXX5O/nE1metGQzPHUH6JatA1OppQ8u1eUbpX44tO4GY5vM5Z9sduFgOfG1GwUOK6VFzaSAmrWCSfzGCuuT/O+bi6QwRdTtqXN2keJ4/ejgkJ5HedRARkbkGe6ARulgMWQ+Wc3cDAWohhoZdcue7ifJ7crfP6Me8dELd0Mv8U2begC2k9SHd3t+NnNm7cqKwRbiYUkykqvlZlmOYVLIq5bHRep46JzotOc9BhuFc0ZHGLph+CJIaXr1FZSIfxsdBiN1+LpALEK2By61Aqs0rwtV7DNBU3BMCYixYTLU6C8bM5hBwum0k1mesBpmPtlj+qXFenFsAgCVLon9DYeIxUnmh05HCdBIkCVRP6ussiepVZJZXIutCHwt2I0YGY2Kiz3AIyeG5aLNooVULQBbHy1/nAK2oEtEanheil+GO3aFg0FnwSilNC4q6OrXzywc0XCy1WMaFu/tgrCBLRuWpHuP+n1zqmRXFN0GAnwKgHeW1E1C/86UDJHFKptATZMPZTafbLXHtN3OPixKRC4ev4GwB2Gy6JxhQNEYul+KoKp79RMaGqKzy9ovzt27c7pidVZtYAGJMYOP7u6bdK1mLI1GQ+/ogSZBahwKuLO2jSZt0odw65xrUhAMNrZskLsGiIXz72F3bTjV+ixvtbWcMQr3NWCbog5VyXAIy63PLrqpJITIqHkcD9P7suSiYbG53wvTLKDbr8WBbjZqIF4F3PD3ItRn1eQd5CBF3lCM5RAIYfVp0/dgZ8SvbJ2/l8MmlvNw+8qJTjm+drWQwaAXO9KMuWncc1GBMXKkGeV/pU5ZxFIsTvzovOCu3HvDnOE7NTu3rLr+PE8fy6+IEX9947YM4n/+LbPT/88R8QqoYAuVSDrZLFKcYso2AcLBIeGDPu6h3M+yqvIE/4Y6w4LdUfi+jcr86L75KvC9+PcbVfd1hCi6U7Innwk1/+Q5rcoetsdyBg3s9aCmivBsNFifGfG9zCJUFiztmpEXAbqhMgr6SLWBPu9R1enRfm1ktrC6cVYWH+/Mqg43x6sYK1edaCex7vkRZHZkF+6P6NkXvvi/TpLNBUaqTtdcsoLtIrVTcem2EHDh7m2uq0ikMINBvafOmazzt+BkGMW9CF70DndPsOaJqb38Y1oXjdCYHOiqwbPofrKid6thMAlnxxPtMy6w4K0ubNhq73U5wd5PtVleCTd+50D2CEafLloqixyv0ufMcOGq64CVaMYN2119gfAdPpuscKOxWgCMDwxfm0pvzBhx9siRLoFt3ca7Ikf+x2yygaYzHdTSi7IT9y8fMJ2Lpdhg+ZCPA2+f05d1A88mBLHzQaoA1dL6ohVLJGi+1uQj8XQMyHIMgaGT6eDxuozMkD294LRaB7CPI27DLHQSskSFRvGa30O/zndF4fF0DMhwa//9//iZ2DcILqN7xBHn1oUweNn7eJ3WO9QHvdMlrMsphKEj8XQPgpuHVVMtGOgF0hC9CGTqbb2kHOzXx73aKiuiymEv2x22ICMYYeWSALBQ7RQ0fkoZIr4DnRtS3ohzf1dNzTG9d0PcwMLahZO8UyKTMm38wteratSVtkplq4oWj0PcfrEinPhYg14H+hvdIwCVs1bvb6O+UBMYFGl90d0LRGLRDgoHEUwYnXDniQStocTVUwfPLaKQGA/RoWOmkvtnsaG8unK+PWMKlH5e+Lznp03N27RdO0TkxmYNZKszYBlyfI3RpjsQkmMOo8ls4Wsx1EKcEVAEvayyNoeRzsO2RI+93PNRLesGYtNpBhL4l/prlgZz5ob0mbtZVFhWC301d0EuQgAHPgS7D9hssTHKyMbRfLptF213NBDRuoaqxNA2yh2VUBDnxJ1M1yRW6gOgt2x64gqXK7ht1yOWyW1+wl7bYXvhUygQXgit4KuVDuBGzSbA2bmmtayNzpRgJOGu7XosHFChZzvrGTiUKt5UMiVsmbmtsCb3+2lZmwm3hFNsA/CiYdKyfhYx3Aws8urp8nsJM72naGCG8zYwZMecjk/WHVVRbsMwU6tBVQsWJS2sNDlrgVTO0RE/vzKQtuN2+/85k5PxlUaL75D3BZwKss+JUqSFRAO/F7Eqlkmj+2gbrgYE8rZFluu+P3pOGsyWCG/Y9/GR8exC+vYfc5flxgzRdDGsDEz/8AJsxwQcBUKPCtmKOMFJO8OKMgF8r3b3sKkAm69TN+2OZCAm5ID/g9XPypwX29ufWgudq0urrKes/8nPkxgy1bdg6z/or/SFc2mzV/xs+6HwySTmdYJp2dpaWKEregYrVfn9/B0xkD2U6+e+sOaHqImTfLrycUOIZM1hJwC3oemPXbi/y5PnsrJ136bUa8pxu69BklmANWwDRkgR1wmwVaglyi3Nz6JLQ+ZG5NxQsgNdAhmIfJN7wxgoWg9fxzPQ+c/g9YAIXgeUKCyipJO4uR/wswAOIwB/5IgxvbAAAAAElFTkSuQmCC\0" ;
1646pub const PHP_EGG_LOGO_DATA_URI : & [u8 ; 8987] = b"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAABACAMAAAAJUSgeAAADAFBMVEVHcExweqyBiLNHS42mqtBgY5dbXpVjd7tMTotISotMTo+VmrutsNanq9CusdaYnL6Tmb+qrMZKTIx0eK1hY6BISotITY+Ok8JmbqdvcauorMp8f7R9gKx3gaxecK1ISouTlsVZXHx3e7MBAQBISoszSacgKYQ6UrAvQqM9VbIdJn4hLIo4T60mNpYtPqQfKYcmNJ4sPpgzRp8pOpQpOaMzRqYnNZs1TKowRacyRqOustYlMZsqOoslMIkiLYYlMpYnNIwxRZstPpUcJYIxRasnN5AyR68lMpEkMY0wQpYqOpsvQZkfKZUmNZEkMHwZIHUsPpsvQacuPpI6ULU+Vr0wQ60uPp8wQp8pOacdJXs2S68kL3YjLY8tQZ4zSaMiLIEpOpgoN580SKsfKWwZIXseKJB+g7Y3TrIhL5RCWrhAV7QZIG0pN4crOp+DiLgsP6t6f7QhK3InNIA6Uro5TaosPqgqOpEfLY0dJXU9VLdyebAeJ4wlMoQ2S6cfK5EgK3kiMJkgLZotPI9BWr0aI18jMJ4VG2Y4TqQaJolvda2LkrmTl8U0SLIZJJGZncYiNaJrb6k1S54NDAYbGhFHYMA/PjptfLxNZscZK58cMZFEW8NNZLlHX7s8U6s2SrZddsgWJplXaK8oPZ9DWKpqesZHXbVZb8BiaqaMkMGlqc5YXpgSGFIUGVtTaL1QVJOeosyGjL48QVNmanoKCxAOE0crKytUa8knJR40N0Jjcq4iObA+UqE4SJUMHI+qrtNudqZJSUNshMYVHoN7gJIsQbX9/f5NT1JMT2KFl9BYWV9aX20xQo0dMadietZrcpFHYMwmMWYtZccLF4NXbdZ3iLtgb7l+jMctTrAGCC4wR7wWL7FJWp9LUnRxh9J8g6JLYatNhdk8d9FcaJ1lbqB3e4RUXYMIDUF6kt8bNZmpteoLE3YSFB9GdcKutL6Lj5d1dnUZS6lPZKQwPHXDx8+PlqudreVja4m/yuyKptoZIkODne/U2us5Usedoa8oL1YtYLdNAseBAAAAInRSTlMAq2nohiAy/EfPEE/pZ8E5/SCegWV7wMHI4w/MHpjVr9eBwELx9AAAFs9JREFUWMOs1XtUkmkeB/Bmxt1mtkybdrY9OzuX42uEGS8oSCQqIiiCECqgyKqJi3JxBQsFSSWMUFPRSREIvGAKocVoetI0b5nHMrVmTDtHy9qZmtPk6TJdpman086+XpqZ3bmcZmd+f8HLOXze7/P7Pc+zatXPlUfTwdhk1uatLPO7yw/We7i7ua2Dam1g4MBAS0tLW1vF+xs3bnTb8KqHx6rfsNyJfbGKuILsCGWJm7vbIvf9WqTbILqirMzpdLZLpelvv7PB46+/ifyOX98/8imZcRrf4QffehBWtlRSqbQdIj09KxarrMyzFNKl6VmvbPj9r5bfDevb/TckXZSXqN430NJW5mxP9/qu0qWlpaXtp5sbHA6Hy9okkdhdDkdDQ0OzcVr69q/T11wJ6tuxf29aiRKPLznwrZgFic729mmjy+7DUkGg1VorwYGpLDnbYNCKtWz5iMxnZk/WK6//f+x697WB1N3jQcf+DkMS6PqpVijjUshp42qHy2AwiIVk8DCNsE2yVWIwGVIzM0GxSVwrlojFYonGZraZC3oG3/zluPs6qKUtyL27xjOOJQjo+JTrPZA447DWimuhstrrJPa6AAQBgYgjq8QGk0UYp06LU/moxLXQO/nAURqR2tbf3zT42lu/+wXsX9wWp3igQloSUpSxqyj4VPGdeYdDYq1NLi5usttr7XZJdoHEZBDj4BIxLlWrFRsMZIIaD+aUk8FUKDObhSOIRBqRpt/c+Kn3Swdfdtvavbz2LGTs8B5/2Hr9uvfVK/ZalxiRskkCyWKJisUDVSaTxWAy8Xy0FnkMCBJEBEyELEeHj4lgsyLIeDUWROlQ9P7CQW/vP73+su5A2dIMtxZ9uLrB1fpwfLKj+kizw+powrBrodXUqthalgZVX681aYWpKpXFwqWr+Xw8P4KL0qjpmbwITA5GRAC5GIyGMjzV+uHL2O5LbtbyDPc0nu7SSogPTF0VPdB2cTU11LLYKqh4qUIxD68r5JMxWJxQxS7n6tR4FAYD8vEoPB4LCstlGBGKr0NxUVgGcmH8hre393s/22+Pdd+5XqVGKHDXnW8+Od13ZbWkydQ12bXNZeel4kB4ADyAR84E+RoNXQOm8oQxdF1hmgiMwYCyCA6HQxbK61F6rowOPcajIkMWxrOg2K+99dOwG9TfihfutNVqtZvO3fn4m10fXdkcdtDQ1TXpkliT46IRiJS4ABxIw4pEeDWdjsfGkPm6QjWCBmJy6stlEeWccra8Mg3PLSyk69NElMjQqStZRyD7jZ84XdZDgVuky6502sfHas8m+zism7cFNFn9g6KgrdM1WSu2KhhoNJoWB4fHiQiZhLy8Er1tpDcHm5YmwoIcWbmMw+Fyy1X1XB2dXqjT6PV5SmV4eP8Brz2tUOw//uiBtXZgoGzlkCo9VVngI+EdJtBEyJBE+uYmYqxi+2Yxm21RaetCQ8P9/KKTaCm0GLgIqdSBrkkLV5Sn12tQHI6Mi9HhwfKICA6Gri/U0bmGnP4SiiJYD0X6AIr95o+MFnTlrQQubaxEoAsKaEmHaQxf5JYFQV0d0Q/tFw3HlcvlOJZ/fqhfVHwSmhEdAI+haXrnH9195ujPy1scLlQOB6XByuo5MhBaaZuNe/nM4JfGYUqkbxP0x4ux3/jD/7a4raVtucOle3CfK9H+2WgSMpJGYVAEx4qKtxOJYX7xAalyi0XIyd5HDYvyj0IrwrZv3xQAjtwarbo/b8tEYUB8oYafg8Lzc2QcLgqS6baZUaDq+TNJfyQVnb7490d+QLtBN98KfBADD96piI9GCnwTwxHRNMHRY0lhQVGKsORtPJXloqmeR42lUqPCqAridv/s5LiR5m5gbHJudmTCpibwKyt1ZjNXJsPgC9P09N5Pq4HqmoovVfSog4zrUukPafeKtpUWlxZ/zvCFwUIoeSTYbj9ENA4rKCrKDxfko/38cTgW+6JJLqQGxYZRicT4JBo2E4ybNXYDZ27PNDc3OybMfPmlxYPt0sXe/pI0un7iRjXwJPDuV/M5FGLfwlSSsdTrg/+i11RUOFfgukPBJBLSt4TJhKn3/xvcBE8UMJlFuTtDFGh0EnQPWiwxPGqQIgVBiCtuajzSeJ08e6AaOD5aU1Mz1HF5tvlxR8f5jidPnng12IZLhvuNNcDVS4HnJl16RF0Qc7jfPOOEUr/37XbyrHix1MWHFUjf4DTB1TPnH/om/GtfKkgQMLcwizL2hqETaalCiCYLicE7/Wd6Wj87Ozo0NHbh4oPqKmC5huYvn1j+VNV9c9I2PDxl6gCG2Iav/mkspPj35ebD8mwTq9O9vV+cKRvLXsD+iDAGBUEY/uzuo7sdu4f37zgMqklMgS/z2NGgaCQFi2PJtUI5EXnqwlhN97JXfeBIFXDy/thYN9AJXDtXDXSeGBrqhn640DVVohkZrOo2zt+6M2POrDuYm5sA883r7zXe8F4+UtY4l+8Hr6xTh/aFpyAoU97Pnt59eu+jhaP5WAqSxNyihGUUUcNJSgScJ2fxVLHKrpOLaHcN5ABjjwHg/u2Gr69Bb3KtrAqoabl8qwWKXmM0p6EmmmuAe08/vmM0q7eJdxQxE3IFSPPciPHPS/L7zpUm7xkOT0lKQqjzH3fcDHx27+HCLjQi0ReWwfQNYYZSQ0mRtCV5ayzFDsknOnpmWjsB4OTjTuCs1TZ3rgao8rwGAGO35uYunQE6qwdH6GrNxTHgwtdfTDfbYMrsfZCckQEj6Mxz7I3rV6161elcXmvpIUZYEhyeMtw6CnQ+f9QxnsZgUCKVJGYRk0Txj1bAlCk4HguHyw46ZIXkm82VMvFZSD7TCZx3VY5ALT5xG/o+2sClz3pCuylrli4yW58/+OSLxnMyUkIIMTYXGpncBAoWpZvodUFddrYvw9HYqCQ4Dp6JPA6c6Hx873g8BsFgKJFbcjMySMnJ8X5IZcp/uC7XoKbSM46z9kOnsx+2/dKZjvuJeJJDLoSckJOckpOTkxhzOZsQUidHmuQkAWQjJAjZLFBIQFIx1pbJBIYtdKVcK6uOrtFVClhXhh1QVJDBRddVC15GHXa9bLvrZWztE+xuse9k8iEzmd/7/N/n/1zQje+iuUR0lTwzbsI238mQebxre9//AgyUfgK/zy7ktyw8AE0ujf0N//zju8uPUh9/2Mcv5uuixYVlZZWVGom/tXXL+ay3j3z06pUf38NYglAoisgV+NuNswd2lBAWt1TP5wsLaxOERyY1SgZUJegmzLujHwjT48xARRrUzZDF+XNwiZn7EOqtF11Xn56G2C90jf7+6dLL7u4917soN1+krS8WCgsrC70mKq8luSVr3ZFXIZffY1iOQBWE032F1z4zM4sNKBELgDUmoQZLKQmDXkQNbEQt76aiecPHee3XaDRvQwePd3SG13FnU9fCDK99zx6gP3+xcP82ZN7shUXgXn50c2XmRJtQL5KZhDavpri+WKMxhlpb/VlvHFntE+WJXIyFjo8SdveuldMPJ8fvKQUKu1XPF0n1OlkMwUxSUSB3YygEhaQIimLnzT7laCbFbx/njRzO7+s9zRu5fxQusv/Gg4eQ5lN3J67Pzz+6N/F1e3pfm15vlJtPSndbvVFSpJWEClrystZXrYrdkExxBKtACSUhaaJvjia6UaVASfj4IJHWQCN+Ti6SBnI3WSwl6sIIKHv21PDsaSDMzoK9Du8Y+6CD99cnaYiVt+rzqcXe3vn5y55LExMj6d42oci4u6H61snugNVnNVpCeS0tWVWr5CoORThCQaB2VhlDizYN4GxEKRYrffzCXV6zgQhYMblb2hhSWfyIelfkGq/9+FRnBjFz97uVY6dH27afejgy+S2kd+fISEfH8ckzL/Z9tfwS7HR1qGN6oamYNEgy2jZ8WdfqM4Ry81sas8qrMp4avYfFCKdCgVokTAwhVAqWjQgArfLwixk5J9lNc1ZpYwD3SUKEbddgmreyWiI7jx7y/POne/7V35Y/9O2p+w0dvKn7H1RXf7p4dyxnYhnsNNE1d4P33ZylkG9MrGpbnf24O+B05geAnOmbVTKDjCBgwoH+Y/CII6oSJYso4SCsiLHLORnbgxnr3BROUShmK4TUPjY9PX3n1ui4xBM7dGivxFJ0fmzzHBhrauHqZ19Ax0x+PjS/9HL0vbEznZ1D2518fqD/+7WsYRzfEcKbXpEbuuVsLMOxezy18ogA4Tj4xBAE7bZiJh3NRlK1Jr5UMiCxKuiwFcjtN3orFBKr3EHbcdzv9DmdVHJutp03faIPJpO8/OSh68tLyz/+88TDqSd/Spq0mu6G/22EwE7mZ60Hcvm4hxOLBQJxhCEIuQETKzNcjEMUCh8mN6UYu0dndEv5EqeVUtBq+1/SvPa0R+eIq2FGMNOs04nCVNZyIZPaC0ncZ6Goll+fWVpa6t3/j8lfLo5J+AbSvnb/rW4YTGa9UQ3kgR5xRAwngnExQibDIkoOQSBmtATBSCYhk9UaTI0ik9Fnoohz53QfQpH8d8LsiMfVMJwwGMGyuXhu8sTXkw/2/6GFshgbm97pmnj6cn55aeLMYu4OkpRJxteSs4cPDGetqy7P/t32QUFELAC5OYYWY3ImFuNiXI6AUykjHkOC1ulMIpNGapIYSScWVBv2ATmdommzOm5maNCJtTvtTr9i6PnzEy2NVF5BU1NjwWeLTyd6v5q49H5AK9LIJI/XgrMPbPhR1tuQbv2bcnIEghwxghC6eCwhq01FkFjYJXhPKU7JsITawZikGr5I4jNZS3ThoHZw8uztG2pHKhWPm2mMxgjCY7cTCrzvfF+b203l4ZRRZEluH/po8VJ/axNJksJayWvg7MOZ8Xd9dvmgOAfQYF8E8xjUiZjB3BPhdMFn3/y2p9baA2Stxusl3bhcYyGCNpdNO/xB/8mgw2GGD4NhYEgIm0VZiyQQcFN+HPfVuWEBOb9lS/Ida1BLktDrXhMbhjGYDdZll8d6cioqlDGxOEYzDpujh9FFEtyvYisXt2EkCWLXCoUak6kOt5IenS3qKrUJy8qEUbM57qB1DItBIsYIBRQhRZG/AMdDOG5xS0JuqdFiIb2kVktqRXVfVr8e8k8yk8EvqlUZskDBRTiadgSbz40zHJfYvPPZXMKhrU3J5AaTnm+yBii+tSTuCttqaprDYZstGIfMdtAYRiCQiyoVolAVFRWFQn4/sHHKTcJt+SC1Br7q+v8v5NWl9s1PVRUVoDbiwTiM0ambS1MROpX4zc6Lf0zJZTQj15JGGIStFo0whAZrXOFmVzgYjAfrm9UOtQPEBhOUICUqVYacm5vrp4xuihKJRHy9FOZnDV+vJesa1oAbDm/4+asJ8PHlCghZICDkarMublZXusbpVCqy85u9tIxJMXITaZVLpSKjV5qU19SUuuCl1eDl+vpmEuyMYVDuYlB4UZYocoZCeX63yF1XJwWyUC8s9mo0GlJjrnotsf87Af4MEmxbRQ64WVZvUwfV8WBlOGU+GXl2cW9Kx9C1coNW7pOK3HphU766tKa01OYKg5PV4frKZgdthu2OVWQOiqKWAEUFmgJbpdDXjUY+gIu9Xq9Wa1zrqeEfpt63BsUV27bliGMI660sLd1Z6nLVgGmDV1w9CZ3cXGuAA9qRZWUBu81VU1oTDofhfvFotLk+6mBkMkLBEpEIbPMhitpK4QV51O6tdbvdbr6wrFioiXo1DNbwGvj7Sf+tHkHmncUlCCEj6yt3Hvzk4MGL6fTxdNVJzmBgakmtmoT09BbqcXhlm+vVK+vM2mA46g3ClsMpYrFMxCi0HBzPz4dCEigokEpN0ozYUY2u5+/la7Prh+3mTXAziK1UYoxMF6zfdfCTK8+OZZr7fwoz39g06jCO709mjb4yW8xmMhM7gfb4Uw6OfwLXA46DQgtcj6OFtlw5mNdyxQ4olLa01JU1xRCtydS02UjUbG/ghTpiNDNZYlLf+Gbv1sQlvpmNie/cSxPjc2y23dZtP17w8nPPv+/ze57fzkcOL+F0yuWE2+31IOIKmk0GchLZZpMS22YbKAccOr9fBmG29PTwkYyBxxJa68WVfqPRq5yXyBznneu9dNjig7EKyGnQEZPOOUyUK+ut5l5bAl94sPPNb+P24rAckRN6tTqampxJZoEcyOXKNvD28EDcWZ5xOvwjFl4y2szTtNnMa7RGKzRy77gSZm9E3jeuu/7j0eBjJyQFA7Qh5C4Hks12e/fRcPRwp7s2by/aEU6O6ye50rx7DEoKyLYA1BOMkwOfDjidRYcfDUX8OnOPgeZjPE9mrEY6YlTKoRj6ECgqj2nf109P7iegP8JRyUJ6ghurtnfvf9Y5O/90v7/ldrpdUBV2vNQ3mUtmpezKzUg224owRussfrvbPxTyo8sSlVcJAp/pNxoiHiVMpB653E54er7+H/zMtqJDVqlkI1A+XAXID3cenfe6Lw2oiSHc7h5SinKfLQlZL51yGSQE3O1HJ5b1nFKP+tH4nEKQhJ9hFAafz6ce8iKIl7BDVUTSHxwY/NSG5oQJGpXJEEH1xEwlW91rP9qUf/yxFJetIYLACbuITPyazI4lIdCBSiVQJop+v1/niCtQCATqdMZVUrdbEEwmki1giQTv88zbZ4qTRT3/OLuO2kqdJsFkQyQUQolKNlnd+/ewxN7e2vLAQJeKSBYnq9XqenZ9XRSjCFd0OHTx2ARO+FG9RF5gFlQyk0BR9UaDauTDtLrMXZ4wL+47+tlN3HlKJV0yR4BcAqFo31984vagm5ryoLpctdpqNlvNVgvAwSg0KzlEeEKPB5GiE9UtLyuWDWZ+IRxmGo1GvU4xYRoKyzuxzz1q+whkk0oGw4UerwSA/EettngYXvv9+o2fkq323l4TTBZLCAJgl3LKGCLKiBgkLl8m4qp4yNvPbG+vhWkNhVkzJBUzZ3oUitpjPx+9cT1+D4pZZohb9NFKAHL7ndPnagA/xP5y2iFK4OZ6EsDRVCq1AQ2Y5PUcUrKPFHN3hx3q/pVBJpxnNINGDK6eGEnxwo1rn3fXIK+eu+kFMswxMovFy5UD2Wrz1WOvddgH8Nq0fr3VaoliqcLhrmDQpdZo6BiJmWMjhHO4kgsM+SThwlg2swqyjY3OsmRMmP7+5h3J3Odv1o/f6+2dsyzP9eBRLgBJ1EnAM2c3O/AOfVHmDYqiWClzHA4RVoIzKYon6dha2JJttbM+OnFxaWlJS2PaVavVemWUrbNCb/qLrnelvHr+dvlsLA3uNsT10WhlLLlefZz6p86c29zcrG0C/Y4fh35X4nAYpYPR8QhJa+AOQJI8s72Q3d0dM2eUPy8NDmq1VuuHV8DVLJwO+eSLHxLeBg1QzI2g0WClkkyKdw++8RWwXDp39FHEjiO4y5WKuuYxMhajaZKEv9jC1eqFW2OkcWkVsPBbxQqfjM4WCmw91pu+2vWy5zAB6llhUAajHIiEePeJ571TZ46f65DlStwll7tcUxmSZAErSMt9Jhz++69bOcqopepsIZHAsAIICaZNkAzTO32t662XkaFV9RrmUymuFMg9Re7Qzw+4oOcoXYhyaQmrxyi2zuTzULphhsnf/mWXKGhImqLYRIZk2Ua+MVvACvBh6fTLyGchwxRCT/8GRLHEHfb2/jm54VF7lX2QRSssRYJAhbfX8gLDkEwY/e6H6Fc0VZA0M6EpsCAj7CxLCQtMerrrjReTIbfTCplZ4/P2caWKOHYE+c0/J/uVuNq6sTGoqQtMHsBreYaJCWvh0INvgxqKEmgsYUwUsNGChtZgbD5PUYrpm6+/APsfPpGyoTDU6NQAAAAASUVORK5CYII=\0" ;
1647pub const ZEND_LOGO_DATA_URI : & [u8 ; 6083] = b"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPoAAAAvCAYAAADKH9ehAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAEWJJREFUeNrsXQl0VNUZvjNJSAgEAxHCGsNitSBFxB1l0boUW1pp3VAUrKLWKgUPUlEB13K0Yq1alaXWuh5EadWK1F0s1gJaoaCgQDRKBBJDVhKSzPR+zPfg5vLevCUzmZnwvnP+k8ybN3fevfff73/vBAJTHxc+khL5kr6T1ODk5nAgTRTWloghFVtEg/zfh2PkSvq9pJGSKiX9SdKittbJoD/PSYkrJD0vKeB4IsNNotfuUtHk/CM+IvijpF9KGiDpGEkLJZ3lC7qPeKKTpD9IWiDpUOfWPCi61ZeLvD2VIhTwp9QlTjK5NsIXdB/xxHmSpvD/OucWPSAyQw2+LfeG1SbXVra1Tqb785xUaNdMel0g7Iu5V1zPv6dJqpD0kKR/+ILuI55o8oeg1bFT0kWSOkraQxK+oPvw0TZR3ZY758foyQXf//ZxUFh0Q/GEfNf9gHkaJ6m7pHJJSyTt9tnXhxtBR2EGlnHCMbZMaHuHzX19JZ0u6VRJh0k6hM+BpMjnklZIelPSNhff3V5StkNlEWBMFm+3LcC+BW3GuZP2GvfmiEiCCMUzxZIKRGSt9zeML/fdGAW9JB3O8c6SlMZ+b5f0qaQiF7EpnieXY1auvZfG7zhSUk8RSS428F7M5xfsh1eAV/vxOzoq16sklZBqbdpo5H2qDPRQXoP3Ki0+20FSFyrZUgt+Rt/7KH2vZb8/t/iMG2Sy/0dI6sbvgHGoV8a3xErQb5Q0iTfHCplkzlkW7w+VNF3ST7QJUzFK0pVkDFiw+yV95uC7r5Z0k3CW2ApwIkrJ9B9IelfSh2SIlqC/pDFUZAVk0rQoMhk2GYswx+AtWvMKPtcyEckW37pPwsIHNAuBniDpYhEpBMmJwvibJL0gIlVh39r0C8UlczkXQ/mM6OtEzuf3RfPVAxUY47f5PStcGKPxpOMldbbxiBptPMavJX1PuQ/P/olyz12S7rD4PLyqBTQ8gyXVSOot6VK+dxR53wyl7POjkv7pkpcwpleJSCHP4eQjM0BB/ZuG4Hl9EO8mQx4ZQ0FfL+k+k+t4wNlULpkO24IGnSzpQklzKPDRAMvZ1eXz9uXfH/Pvx5Ie44C5zYQXUgDPj6LEnMCQ3AFkjjupjGF9/kJmxPw1oiquz+6dalXcCRSmYxwK0kDSRI71azb3Y+6GiMi6P/5ey3F3YpExjxdQoG61uX8gBetkh2OWFkUIVGUT1pS9yosZNu1nkl8uZH+mikhxkx1wz7mkB0WkXsKJFw1ZuSWKotY9wjNJS6mUy41JK5P0c2qCnBgIeQWZvEK7Dnf6WUljTT5TS7d0KwezkJShdWIeGeuKKJo7FktUQylcl0i6RtL/HH4OjP+wB0UTLTGHfubRDWyi1g7SaoZQ495z9w7RpaHKqHEfLeklEyWzk+7dl3TTu1KQCpV7+pBB4IWstFFAgvOpJnTL6DoW0xPbw3k/nIYkW+kbmHeXhUEABklazrBDBdzTDfyuBo5DPq1eoUk7ZbSk70l6n3MZjUdCDpQvMF/rezn7/hX7Xs8wsj/7rsrWdQxnZtrwwENUosJkDDZxTjOUkEH1ds6lzJyDZzGScRsonGNcMCIG+WgRKTRQ8Su2p7uRi/mlKjZKekREChS2KIOcTvfqp3RZDlM+cxnfv8Thc75Pt8kqo92VzNTbxBqcQlceivAdByHDIxbvFTMOLovyHAGGK3qc/jJDoDc4hpjABzBm4UAglBFqEAOqt8mB29ss4uJnNCHfSK/tVZMYEfMykt7Bcco1eDLDHCT8gmzzRdLHZL6wRSgzg6GIgVl8Xj2uhPA+oQn53yTdK2mVMC8NzuJ8zaSyM/ApxyzWCFJRvUQ3eQ29BTNFcRgt+FTl2g30zDZZtD/ZRMifE5ES6Y9MxqAHQ7XZikI9nd97j5p1f83GZTPr6Crt2sOcOB1zTYT8HrqjVRZx4wbSAt47SXn/YsZV9zp4zuvJgNGQRaszmoN1rBY6IH4dHiVHcA5dZd2zeIbPv8ZBkghYTQFTx/h1WvSz6c3kM5ewGG8Prvxc5DZWS2u+dypnM5Y3sIJMXmbxfXW0misZN56oxITnWsyl2fg+6+C+zWTefMWr68RwaYF271htHBZqCsKqL28wB/ACjYShrE9nUjfWmEU33A7woqbR4k5UlNk4yoYOzOHvtGs30KO1QgnlZC2VohGOIGn7WEvW0ZdoMeCHfBgdo8X++m3V+s2wEHKzJMblJom92+ne2SHDwT1gknUispPpJLrrVZqwLxTmy5F5jOdVS72F/b6UwlbrcEytrD00+a8l/ZUM82jEZd8peu8uNYS8JxNWqis5IYqQCy1rPUULh8Y7fOYal3zzmPb6aJN7zlf+32bBV9ESclNE85WUX4j4oNbl/fM1b2eoxX3jyXNqiDTP4Xe8Rm9ItfSjvAr6DM0d+o5MXW/CuHO0a7eZTLYT3KF9LktYZ/WdCI+IkoV+lFZ6l3J9OF14HdM0F3MrhXxFjJmqhh5FBera24XqxaCqL0UosK97Z2ku+yJaEqf4D62ByoROcjZuN78Xaa9zTBSzKvxvC+vlrmgWVPU2h4j4FCO5lZ+vNBnpYHHfOOX/PfR83eApTaGM8CLop5l88WSLWAOu4AiNme5owcBO1xhlLGO/eGAFkyYqrtFe5zKzqU7KBE5o/BAIiv7VJSK7qV4GhEF1XtSk0YseWl6lWYI+cXj6pigJLkH3Vk0qfebxe4q0JGOGSDxCWn/Nchk9qJgMfGKS87LDes1IHeVW0LszgaC6sPMYE5lBt4CzRcuy4lVMLKlWfWwcJ+YpxtcGjtOYfzRjTgNIlv0rnpyCveeHNFSJ/jUlonH/3nNYqyOU28qYhHOLbzVPqFc81JQDKxnQ5twLdmjfmQzlxU6eoZ/mma3y8D3VonlhUr6bElhMwJ81RseSxW+jfOYULdYGAw5s4WBtpeU0ijKwxnp/HCfn70piCNlMFEUU8/WpmnZe1Bq80r96m5yMkIwx9nnNHTWFs114q0ArM1HsiUY7j5/rKFIThdrrzR7agHyoy9vd3Ag64uEfKa+xjIKlLqtTUBB7FWgJrQ9joFl1d2cQ2wzHaeDXa6/ztO9Wx+OT+FrzSAKuV12ptOZp+ljnaVawk8uxDpnMZXYCGB3PXqe5sl7QQ5ubhhQR9B4mQpvjIR+gJgrbOxV0rK/rVUyXmyRWdI2a2YLEhVP3BwmN9sJ9BtQpKkxiSDOrUeUhaeQaPevKzKQ3oIVTSGatcynoRl29sIkh440a8pURNoz00Ab4Ts1obxCps1FKl8k5IpKbcmsgu6nz6ETQC+iSqoKKOPmVJBmYnDjHX4EozB9s7TgwykkyYS13URAHpmstYIloOP/HEi6Wx5a4+DwSpH2V18tTyHUPm3iQeS1s09ai4/0ntVgNRQmzHTRulGwaQNnei3FgHqPcMBEJlXrNioAaE8AcupKBd7ElBu1uTxCzg+dmKB4TahiQNX/OxssAb00Uzdeci4S3FYhEQdfkWCrc1cI2K+2EDhsP1OUxZGUnOWTmcgphV0UgZ4jUR1hLlBiuJfqJpb61CXimOrq8RqiEeu6TU3iMwdzYgWhUnWHDDKr0ptLar6USqmOfYYiGMMTUN/KgziGVTo+pNJHBBfF0zVAQc6N2DUL+tcO2Yc1Rk2ss+yBmOko43yCSCljJXAWA7PD4eAt6MBy2yiNACRvVVN05t40pPLYPsT+zlRDpOLG/Jt8OSGKhmnBpivV7q/Y6JkucVgkyWKb52rVZwl0tvNDi+AzRvKjfK1Dnjvpd1FhPEc1LBVsbqENXN35cFaPY2BIVGdlWYZKqgPPj/RythNtpcNycpoOxwAae0bGwhAkAQg01cfiDWDRqZtHhCqFQ5FAtOXKXh/Yh6Ci2N5YMUDW2SHg/N3scn02N++cnMIZCBdwS9gtApRxqDc6OlzWtSrdc8cJGlzP5fzZDri1tQNixISWL/5fSQvcVzfe/wzXfSG8Kuw03pHB/t5KMik+EYJ1EC1d0zCw6fofqRI2ZJwpvyxN4uPs0q/6UR2szyESobxatf3aa7jvfrT0DGPNpYV3H3CI0BYLGllQdy7TX14rUP/zzDHpuRp0EPLnJvH68Qij/RXnyIyku5Ea+5S3NO7s01q77eMY1qqY8T7Qs+4qtq+o2UWhjZO6HuWhjJBlZXWbAHvbFSTAxqMW+RbuG3VfviAP36tshujINh6Tr3kE0BNMl5x8Qq6+mVTdwrMlzpRrGaGPzVpw9NDNFngjoFZZzRCS/FRPXHRZT31X2MgfYTQYX1WE1moaaQJfKEFTs/camkXnUwt9YtNWPiuc67VmRlb0yiRgS/cAe7is0QXuTAm9kikM2DNc5OkeGRaMU8tq0TJHbUCOtezMeRfITiSv1PLLbGE5gb/NOB/1AuR1KlLETDltidyR4XIPasyEnc6eIbRa9kfNifFeXJOAnVJBiKfFCvobcLKccLHWojHJpIPH3iXQlpoNLrdcH44sucvmQOHHjZ9rDrGdbixVmbk/XGy4mtiKuoQDjmQpFJLs6wuSZvqKmL0ky6zOZLry+420UKUaue5ooyeqy9+iopgM989cp1Dcp16bSU1tOJbyFyjedTID5wOk6OAUFFXUDKFRLkmBM3xH7fzIJwPLsxexDMWP2b8g38DqN45ywCuH0VNuv+XmjwOYCjtUakbg6AkGlNoQGBMB5A9g8hh2g7zFE2U4F35FxfHfmwwbxcz3Yl32C/oAwPwDAS6UXdpOhXPZ27Trc9R/SLTla0zzGoXl2QAexnLVZJB/CZMpV7HthfL4lJIrb54u+tdv3/rCiSbw+k88yM9ZxXgKwlHmZycq13iSr0KeMHmUZw6r1VICrLT4D5fy4wq/5DAvfjaWC9oAd9KxwTNUJynUjL+EqpwSTME1zOWMBuIxmZ7p9RCsNq+NmdxW09I1MdNkJeYZNHsIt0qKEO2Z4kvmHadS+Xqv2cqzc93rpuhdl54tg2DISuJljBW3uZjMHrAPqHOYK6zPIM23G2+14Rts4cyLbdxo3Y667UskOo/W/m/PwRhQBwZFkT2vXzDbTtLMZCyfP1155bbfDrpjKZoYH41bO+d97jmEgMPVxFMF0iHESIkiNtDhKuwV058cw0dBZNP+lFsSU/6VWf0E4P/x+IF2eJnokr4uW/2jAKPYjjRb7Cxef70c3qsCl0im1Gj/Uu2eF6sWo0rUiTQq7zS+pYjywnXYwcyOZfI4mKgHj9N2ttHqbRfSlQXhjw5XXy4S7ZbzOovkxVRsphHp8ia3HlyleZS1zHcvoVrdjuNFdEe7edGHzSbpSria/WZ3+cxYV5DCx/4w7FUfyfTW0WO+i7x2YrzKUXZFw/sut+OxJDGkHUxEZPwgCquQcIgxZR9oXekDQk8FF60bqwocupaIoEz6EmaC3C+0Ro6Wgp4eb2tpPJqN+4xXFXQ3TfUfCc5PDNnLZDpLIV1NADKyjZa87mHgmWX57bYdIfIY3pdCGf43xQUXI62kBn3fZxi4SPC8crIjDQ4yzFAaz/XcPJn7xf03VRzIB5Z7qCbBzPQi5jga2E9bCD+ELug8ficEZCk/Cmj8Ro3aLtLxDR1/QffhIHNRTUZCf+S5G7SJBp2b7G31B9+EjcVAFEInZQ2LU7jiN1zf4gu7DR+KwTvkfO9bGx6BNnEQ8XXmN5cT3fEH34SNxwN4A9dgknIEwyWNbeRTwV7WYHBVwFQfbwKb7vOUjiYAiKVT1PczXqCLD/n5UbuLcNxTKoCgExSFNmsFCHI6iJBQFnUbqqbWPHyFceDAOrC/oPpIN+FVaVLrNUa6dLPbvoEQdO4pd1OUylBVkCutsOkqosbNvwcE6qL6g+0hG3MY4ejots1pT3kE4P9QDdfuLKeDfHswD6gu6j2TF2yQcLoqEGurre9EdP1QTfmxJRdn0NlrvD+jmY69Egz+UQvxfgAEALJ4EcRDa/toAAAAASUVORK5CYII=\0" ;
1648pub const FS_PERMS: u32 = 0;
1649pub const FS_INODE: u32 = 1;
1650pub const FS_SIZE: u32 = 2;
1651pub const FS_OWNER: u32 = 3;
1652pub const FS_GROUP: u32 = 4;
1653pub const FS_ATIME: u32 = 5;
1654pub const FS_MTIME: u32 = 6;
1655pub const FS_CTIME: u32 = 7;
1656pub const FS_TYPE: u32 = 8;
1657pub const FS_IS_W: u32 = 9;
1658pub const FS_IS_R: u32 = 10;
1659pub const FS_IS_X: u32 = 11;
1660pub const FS_IS_FILE: u32 = 12;
1661pub const FS_IS_DIR: u32 = 13;
1662pub const FS_IS_LINK: u32 = 14;
1663pub const FS_EXISTS: u32 = 15;
1664pub const FS_LSTAT: u32 = 16;
1665pub const FS_STAT: u32 = 17;
1666pub const FS_LPERMS: u32 = 18;
1667pub type __uint32_t = ::std::os::raw::c_uint;
1668pub type __dev_t = ::std::os::raw::c_ulong;
1669pub type __uid_t = ::std::os::raw::c_uint;
1670pub type __gid_t = ::std::os::raw::c_uint;
1671pub type __ino_t = ::std::os::raw::c_ulong;
1672pub type __mode_t = ::std::os::raw::c_uint;
1673pub type __nlink_t = ::std::os::raw::c_ulong;
1674pub type __off_t = ::std::os::raw::c_long;
1675pub type __off64_t = ::std::os::raw::c_long;
1676pub type __pid_t = ::std::os::raw::c_int;
1677pub type __clock_t = ::std::os::raw::c_long;
1678pub type __time_t = ::std::os::raw::c_long;
1679pub type __suseconds_t = ::std::os::raw::c_long;
1680pub type __blksize_t = ::std::os::raw::c_long;
1681pub type __blkcnt_t = ::std::os::raw::c_long;
1682pub type __syscall_slong_t = ::std::os::raw::c_long;
1683pub type __socklen_t = ::std::os::raw::c_uint;
1684pub type gid_t = __gid_t;
1685pub type mode_t = __mode_t;
1686pub type uid_t = __uid_t;
1687pub type time_t = __time_t;
1688#[repr(C)]
1689#[derive(Debug, Copy, Clone)]
1690pub struct __sigset_t {
1691    pub __val: [::std::os::raw::c_ulong; 16usize],
1692}
1693#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1694const _: () = {
1695    ["Size of __sigset_t"][::std::mem::size_of::<__sigset_t>() - 128usize];
1696    ["Alignment of __sigset_t"][::std::mem::align_of::<__sigset_t>() - 8usize];
1697    ["Offset of field: __sigset_t::__val"][::std::mem::offset_of!(__sigset_t, __val) - 0usize];
1698};
1699#[repr(C)]
1700#[derive(Debug, Copy, Clone)]
1701pub struct timeval {
1702    pub tv_sec: __time_t,
1703    pub tv_usec: __suseconds_t,
1704}
1705#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1706const _: () = {
1707    ["Size of timeval"][::std::mem::size_of::<timeval>() - 16usize];
1708    ["Alignment of timeval"][::std::mem::align_of::<timeval>() - 8usize];
1709    ["Offset of field: timeval::tv_sec"][::std::mem::offset_of!(timeval, tv_sec) - 0usize];
1710    ["Offset of field: timeval::tv_usec"][::std::mem::offset_of!(timeval, tv_usec) - 8usize];
1711};
1712#[repr(C)]
1713#[derive(Debug, Copy, Clone)]
1714pub struct timespec {
1715    pub tv_sec: __time_t,
1716    pub tv_nsec: __syscall_slong_t,
1717}
1718#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1719const _: () = {
1720    ["Size of timespec"][::std::mem::size_of::<timespec>() - 16usize];
1721    ["Alignment of timespec"][::std::mem::align_of::<timespec>() - 8usize];
1722    ["Offset of field: timespec::tv_sec"][::std::mem::offset_of!(timespec, tv_sec) - 0usize];
1723    ["Offset of field: timespec::tv_nsec"][::std::mem::offset_of!(timespec, tv_nsec) - 8usize];
1724};
1725pub type tsrm_intptr_t = isize;
1726pub type tsrm_uintptr_t = usize;
1727pub type __gnuc_va_list = __builtin_va_list;
1728pub type FILE = _IO_FILE;
1729#[repr(C)]
1730#[derive(Debug)]
1731pub struct _IO_marker {
1732    _unused: [u8; 0],
1733}
1734#[repr(C)]
1735#[derive(Debug)]
1736pub struct _IO_codecvt {
1737    _unused: [u8; 0],
1738}
1739#[repr(C)]
1740#[derive(Debug)]
1741pub struct _IO_wide_data {
1742    _unused: [u8; 0],
1743}
1744pub type _IO_lock_t = ::std::os::raw::c_void;
1745#[repr(C)]
1746#[derive(Debug, Copy, Clone)]
1747pub struct _IO_FILE {
1748    pub _flags: ::std::os::raw::c_int,
1749    pub _IO_read_ptr: *mut ::std::os::raw::c_char,
1750    pub _IO_read_end: *mut ::std::os::raw::c_char,
1751    pub _IO_read_base: *mut ::std::os::raw::c_char,
1752    pub _IO_write_base: *mut ::std::os::raw::c_char,
1753    pub _IO_write_ptr: *mut ::std::os::raw::c_char,
1754    pub _IO_write_end: *mut ::std::os::raw::c_char,
1755    pub _IO_buf_base: *mut ::std::os::raw::c_char,
1756    pub _IO_buf_end: *mut ::std::os::raw::c_char,
1757    pub _IO_save_base: *mut ::std::os::raw::c_char,
1758    pub _IO_backup_base: *mut ::std::os::raw::c_char,
1759    pub _IO_save_end: *mut ::std::os::raw::c_char,
1760    pub _markers: *mut _IO_marker,
1761    pub _chain: *mut _IO_FILE,
1762    pub _fileno: ::std::os::raw::c_int,
1763    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 3usize]>,
1764    pub _short_backupbuf: [::std::os::raw::c_char; 1usize],
1765    pub _old_offset: __off_t,
1766    pub _cur_column: ::std::os::raw::c_ushort,
1767    pub _vtable_offset: ::std::os::raw::c_schar,
1768    pub _shortbuf: [::std::os::raw::c_char; 1usize],
1769    pub _lock: *mut _IO_lock_t,
1770    pub _offset: __off64_t,
1771    pub _codecvt: *mut _IO_codecvt,
1772    pub _wide_data: *mut _IO_wide_data,
1773    pub _freeres_list: *mut _IO_FILE,
1774    pub _freeres_buf: *mut ::std::os::raw::c_void,
1775    pub _prevchain: *mut *mut _IO_FILE,
1776    pub _mode: ::std::os::raw::c_int,
1777    pub _unused2: [::std::os::raw::c_char; 20usize],
1778}
1779#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1780const _: () = {
1781    ["Size of _IO_FILE"][::std::mem::size_of::<_IO_FILE>() - 216usize];
1782    ["Alignment of _IO_FILE"][::std::mem::align_of::<_IO_FILE>() - 8usize];
1783    ["Offset of field: _IO_FILE::_flags"][::std::mem::offset_of!(_IO_FILE, _flags) - 0usize];
1784    ["Offset of field: _IO_FILE::_IO_read_ptr"]
1785        [::std::mem::offset_of!(_IO_FILE, _IO_read_ptr) - 8usize];
1786    ["Offset of field: _IO_FILE::_IO_read_end"]
1787        [::std::mem::offset_of!(_IO_FILE, _IO_read_end) - 16usize];
1788    ["Offset of field: _IO_FILE::_IO_read_base"]
1789        [::std::mem::offset_of!(_IO_FILE, _IO_read_base) - 24usize];
1790    ["Offset of field: _IO_FILE::_IO_write_base"]
1791        [::std::mem::offset_of!(_IO_FILE, _IO_write_base) - 32usize];
1792    ["Offset of field: _IO_FILE::_IO_write_ptr"]
1793        [::std::mem::offset_of!(_IO_FILE, _IO_write_ptr) - 40usize];
1794    ["Offset of field: _IO_FILE::_IO_write_end"]
1795        [::std::mem::offset_of!(_IO_FILE, _IO_write_end) - 48usize];
1796    ["Offset of field: _IO_FILE::_IO_buf_base"]
1797        [::std::mem::offset_of!(_IO_FILE, _IO_buf_base) - 56usize];
1798    ["Offset of field: _IO_FILE::_IO_buf_end"]
1799        [::std::mem::offset_of!(_IO_FILE, _IO_buf_end) - 64usize];
1800    ["Offset of field: _IO_FILE::_IO_save_base"]
1801        [::std::mem::offset_of!(_IO_FILE, _IO_save_base) - 72usize];
1802    ["Offset of field: _IO_FILE::_IO_backup_base"]
1803        [::std::mem::offset_of!(_IO_FILE, _IO_backup_base) - 80usize];
1804    ["Offset of field: _IO_FILE::_IO_save_end"]
1805        [::std::mem::offset_of!(_IO_FILE, _IO_save_end) - 88usize];
1806    ["Offset of field: _IO_FILE::_markers"][::std::mem::offset_of!(_IO_FILE, _markers) - 96usize];
1807    ["Offset of field: _IO_FILE::_chain"][::std::mem::offset_of!(_IO_FILE, _chain) - 104usize];
1808    ["Offset of field: _IO_FILE::_fileno"][::std::mem::offset_of!(_IO_FILE, _fileno) - 112usize];
1809    ["Offset of field: _IO_FILE::_short_backupbuf"]
1810        [::std::mem::offset_of!(_IO_FILE, _short_backupbuf) - 119usize];
1811    ["Offset of field: _IO_FILE::_old_offset"]
1812        [::std::mem::offset_of!(_IO_FILE, _old_offset) - 120usize];
1813    ["Offset of field: _IO_FILE::_cur_column"]
1814        [::std::mem::offset_of!(_IO_FILE, _cur_column) - 128usize];
1815    ["Offset of field: _IO_FILE::_vtable_offset"]
1816        [::std::mem::offset_of!(_IO_FILE, _vtable_offset) - 130usize];
1817    ["Offset of field: _IO_FILE::_shortbuf"]
1818        [::std::mem::offset_of!(_IO_FILE, _shortbuf) - 131usize];
1819    ["Offset of field: _IO_FILE::_lock"][::std::mem::offset_of!(_IO_FILE, _lock) - 136usize];
1820    ["Offset of field: _IO_FILE::_offset"][::std::mem::offset_of!(_IO_FILE, _offset) - 144usize];
1821    ["Offset of field: _IO_FILE::_codecvt"][::std::mem::offset_of!(_IO_FILE, _codecvt) - 152usize];
1822    ["Offset of field: _IO_FILE::_wide_data"]
1823        [::std::mem::offset_of!(_IO_FILE, _wide_data) - 160usize];
1824    ["Offset of field: _IO_FILE::_freeres_list"]
1825        [::std::mem::offset_of!(_IO_FILE, _freeres_list) - 168usize];
1826    ["Offset of field: _IO_FILE::_freeres_buf"]
1827        [::std::mem::offset_of!(_IO_FILE, _freeres_buf) - 176usize];
1828    ["Offset of field: _IO_FILE::_prevchain"]
1829        [::std::mem::offset_of!(_IO_FILE, _prevchain) - 184usize];
1830    ["Offset of field: _IO_FILE::_mode"][::std::mem::offset_of!(_IO_FILE, _mode) - 192usize];
1831    ["Offset of field: _IO_FILE::_unused2"][::std::mem::offset_of!(_IO_FILE, _unused2) - 196usize];
1832};
1833impl _IO_FILE {
1834    #[inline]
1835    #[allow(unnecessary_transmutes)]
1836    pub fn _flags2(&self) -> ::std::os::raw::c_int {
1837        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 24u8>() as u32) }
1838    }
1839    #[inline]
1840    #[allow(unnecessary_transmutes)]
1841    pub fn set__flags2(&mut self, val: ::std::os::raw::c_int) {
1842        unsafe {
1843            let val: u32 = ::std::mem::transmute(val);
1844            self._bitfield_1.set_const::<0usize, 24u8>(val as u64)
1845        }
1846    }
1847    #[inline]
1848    #[allow(unnecessary_transmutes)]
1849    pub unsafe fn _flags2_raw(this: *const Self) -> ::std::os::raw::c_int {
1850        unsafe {
1851            ::std::mem::transmute(
1852                <__BindgenBitfieldUnit<[u8; 3usize]>>::raw_get_const::<0usize, 24u8>(
1853                    ::std::ptr::addr_of!((*this)._bitfield_1),
1854                ) as u32,
1855            )
1856        }
1857    }
1858    #[inline]
1859    #[allow(unnecessary_transmutes)]
1860    pub unsafe fn set__flags2_raw(this: *mut Self, val: ::std::os::raw::c_int) {
1861        unsafe {
1862            let val: u32 = ::std::mem::transmute(val);
1863            <__BindgenBitfieldUnit<[u8; 3usize]>>::raw_set_const::<0usize, 24u8>(
1864                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
1865                val as u64,
1866            )
1867        }
1868    }
1869    #[inline]
1870    #[allow(unnecessary_transmutes)]
1871    pub fn new_bitfield_1(_flags2: ::std::os::raw::c_int) -> __BindgenBitfieldUnit<[u8; 3usize]> {
1872        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 3usize]> = Default::default();
1873        __bindgen_bitfield_unit.set_const::<0usize, 24u8>({
1874            let _flags2: u32 = unsafe { ::std::mem::transmute(_flags2) };
1875            _flags2 as u64
1876        });
1877        __bindgen_bitfield_unit
1878    }
1879}
1880pub type va_list = __gnuc_va_list;
1881#[repr(C)]
1882#[repr(align(16))]
1883#[derive(Debug, Copy, Clone)]
1884pub struct max_align_t {
1885    pub __clang_max_align_nonce1: ::std::os::raw::c_longlong,
1886    pub __clang_max_align_nonce2: u128,
1887}
1888#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1889const _: () = {
1890    ["Size of max_align_t"][::std::mem::size_of::<max_align_t>() - 32usize];
1891    ["Alignment of max_align_t"][::std::mem::align_of::<max_align_t>() - 16usize];
1892    ["Offset of field: max_align_t::__clang_max_align_nonce1"]
1893        [::std::mem::offset_of!(max_align_t, __clang_max_align_nonce1) - 0usize];
1894    ["Offset of field: max_align_t::__clang_max_align_nonce2"]
1895        [::std::mem::offset_of!(max_align_t, __clang_max_align_nonce2) - 16usize];
1896};
1897pub type zend_long = i64;
1898pub type zend_ulong = u64;
1899pub type zend_off_t = i64;
1900pub const long_min_digits: &[u8; 20] = b"9223372036854775808\0";
1901pub type zend_max_align_t = max_align_t;
1902pub type zend_uchar = ::std::os::raw::c_uchar;
1903pub mod ZEND_RESULT_CODE {
1904    #[allow(unused_imports)]
1905    use super::*;
1906    pub type Type = ::std::os::raw::c_int;
1907    pub const SUCCESS: Type = 0;
1908    pub const FAILURE: Type = -1;
1909}
1910pub use self::ZEND_RESULT_CODE::Type as zend_result;
1911pub type zend_object_handlers = _zend_object_handlers;
1912pub type zend_class_entry = _zend_class_entry;
1913pub type zend_function = _zend_function;
1914pub type zend_execute_data = _zend_execute_data;
1915pub type zval = _zval_struct;
1916pub type zend_refcounted = _zend_refcounted;
1917pub type zend_string = _zend_string;
1918pub type zend_array = _zend_array;
1919pub type zend_object = _zend_object;
1920pub type zend_resource = _zend_resource;
1921pub type zend_reference = _zend_reference;
1922pub type zend_ast_ref = _zend_ast_ref;
1923pub type zend_ast = _zend_ast;
1924pub type compare_func_t = ::std::option::Option<
1925    unsafe extern "C" fn(
1926        arg1: *const ::std::os::raw::c_void,
1927        arg2: *const ::std::os::raw::c_void,
1928    ) -> ::std::os::raw::c_int,
1929>;
1930pub type swap_func_t = ::std::option::Option<
1931    unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void, arg2: *mut ::std::os::raw::c_void),
1932>;
1933pub type sort_func_t = ::std::option::Option<
1934    unsafe extern "C" fn(
1935        arg1: *mut ::std::os::raw::c_void,
1936        arg2: usize,
1937        arg3: usize,
1938        arg4: compare_func_t,
1939        arg5: swap_func_t,
1940    ),
1941>;
1942pub type dtor_func_t = ::std::option::Option<unsafe extern "C" fn(pDest: *mut zval)>;
1943pub type copy_ctor_func_t = ::std::option::Option<unsafe extern "C" fn(pElement: *mut zval)>;
1944#[repr(C)]
1945#[derive(Debug, Copy, Clone)]
1946pub struct zend_type {
1947    pub ptr: *mut ::std::os::raw::c_void,
1948    pub type_mask: u32,
1949}
1950#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1951const _: () = {
1952    ["Size of zend_type"][::std::mem::size_of::<zend_type>() - 16usize];
1953    ["Alignment of zend_type"][::std::mem::align_of::<zend_type>() - 8usize];
1954    ["Offset of field: zend_type::ptr"][::std::mem::offset_of!(zend_type, ptr) - 0usize];
1955    ["Offset of field: zend_type::type_mask"]
1956        [::std::mem::offset_of!(zend_type, type_mask) - 8usize];
1957};
1958#[repr(C)]
1959#[derive(Debug, Copy, Clone)]
1960pub struct zend_type_list {
1961    pub num_types: u32,
1962    pub types: [zend_type; 1usize],
1963}
1964#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1965const _: () = {
1966    ["Size of zend_type_list"][::std::mem::size_of::<zend_type_list>() - 24usize];
1967    ["Alignment of zend_type_list"][::std::mem::align_of::<zend_type_list>() - 8usize];
1968    ["Offset of field: zend_type_list::num_types"]
1969        [::std::mem::offset_of!(zend_type_list, num_types) - 0usize];
1970    ["Offset of field: zend_type_list::types"]
1971        [::std::mem::offset_of!(zend_type_list, types) - 8usize];
1972};
1973#[repr(C)]
1974#[derive(Copy, Clone)]
1975pub union _zend_value {
1976    pub lval: zend_long,
1977    pub dval: f64,
1978    pub counted: *mut zend_refcounted,
1979    pub str_: *mut zend_string,
1980    pub arr: *mut zend_array,
1981    pub obj: *mut zend_object,
1982    pub res: *mut zend_resource,
1983    pub ref_: *mut zend_reference,
1984    pub ast: *mut zend_ast_ref,
1985    pub zv: *mut zval,
1986    pub ptr: *mut ::std::os::raw::c_void,
1987    pub ce: *mut zend_class_entry,
1988    pub func: *mut zend_function,
1989    pub ww: _zend_value__bindgen_ty_1,
1990}
1991#[repr(C)]
1992#[derive(Debug, Copy, Clone)]
1993pub struct _zend_value__bindgen_ty_1 {
1994    pub w1: u32,
1995    pub w2: u32,
1996}
1997#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1998const _: () = {
1999    ["Size of _zend_value__bindgen_ty_1"]
2000        [::std::mem::size_of::<_zend_value__bindgen_ty_1>() - 8usize];
2001    ["Alignment of _zend_value__bindgen_ty_1"]
2002        [::std::mem::align_of::<_zend_value__bindgen_ty_1>() - 4usize];
2003    ["Offset of field: _zend_value__bindgen_ty_1::w1"]
2004        [::std::mem::offset_of!(_zend_value__bindgen_ty_1, w1) - 0usize];
2005    ["Offset of field: _zend_value__bindgen_ty_1::w2"]
2006        [::std::mem::offset_of!(_zend_value__bindgen_ty_1, w2) - 4usize];
2007};
2008#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2009const _: () = {
2010    ["Size of _zend_value"][::std::mem::size_of::<_zend_value>() - 8usize];
2011    ["Alignment of _zend_value"][::std::mem::align_of::<_zend_value>() - 8usize];
2012    ["Offset of field: _zend_value::lval"][::std::mem::offset_of!(_zend_value, lval) - 0usize];
2013    ["Offset of field: _zend_value::dval"][::std::mem::offset_of!(_zend_value, dval) - 0usize];
2014    ["Offset of field: _zend_value::counted"]
2015        [::std::mem::offset_of!(_zend_value, counted) - 0usize];
2016    ["Offset of field: _zend_value::str_"][::std::mem::offset_of!(_zend_value, str_) - 0usize];
2017    ["Offset of field: _zend_value::arr"][::std::mem::offset_of!(_zend_value, arr) - 0usize];
2018    ["Offset of field: _zend_value::obj"][::std::mem::offset_of!(_zend_value, obj) - 0usize];
2019    ["Offset of field: _zend_value::res"][::std::mem::offset_of!(_zend_value, res) - 0usize];
2020    ["Offset of field: _zend_value::ref_"][::std::mem::offset_of!(_zend_value, ref_) - 0usize];
2021    ["Offset of field: _zend_value::ast"][::std::mem::offset_of!(_zend_value, ast) - 0usize];
2022    ["Offset of field: _zend_value::zv"][::std::mem::offset_of!(_zend_value, zv) - 0usize];
2023    ["Offset of field: _zend_value::ptr"][::std::mem::offset_of!(_zend_value, ptr) - 0usize];
2024    ["Offset of field: _zend_value::ce"][::std::mem::offset_of!(_zend_value, ce) - 0usize];
2025    ["Offset of field: _zend_value::func"][::std::mem::offset_of!(_zend_value, func) - 0usize];
2026    ["Offset of field: _zend_value::ww"][::std::mem::offset_of!(_zend_value, ww) - 0usize];
2027};
2028pub type zend_value = _zend_value;
2029#[repr(C)]
2030#[derive(Copy, Clone)]
2031pub struct _zval_struct {
2032    pub value: zend_value,
2033    pub u1: _zval_u1,
2034    pub u2: _zval_u2,
2035}
2036#[repr(C)]
2037#[derive(Copy, Clone)]
2038pub union _zval_u1 {
2039    pub type_info: u32,
2040    pub v: _zval_u1_v,
2041}
2042#[repr(C)]
2043#[derive(Copy, Clone)]
2044pub struct _zval_u1_v {
2045    pub type_: u8,
2046    pub type_flags: u8,
2047    pub u: _zval_u1_v_u,
2048}
2049#[repr(C)]
2050#[derive(Copy, Clone)]
2051pub union _zval_u1_v_u {
2052    pub extra: u16,
2053}
2054#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2055const _: () = {
2056    ["Size of _zval_u1_v_u"][::std::mem::size_of::<_zval_u1_v_u>() - 2usize];
2057    ["Alignment of _zval_u1_v_u"][::std::mem::align_of::<_zval_u1_v_u>() - 2usize];
2058    ["Offset of field: _zval_u1_v_u::extra"][::std::mem::offset_of!(_zval_u1_v_u, extra) - 0usize];
2059};
2060#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2061const _: () = {
2062    ["Size of _zval_u1_v"][::std::mem::size_of::<_zval_u1_v>() - 4usize];
2063    ["Alignment of _zval_u1_v"][::std::mem::align_of::<_zval_u1_v>() - 2usize];
2064    ["Offset of field: _zval_u1_v::type_"][::std::mem::offset_of!(_zval_u1_v, type_) - 0usize];
2065    ["Offset of field: _zval_u1_v::type_flags"]
2066        [::std::mem::offset_of!(_zval_u1_v, type_flags) - 1usize];
2067    ["Offset of field: _zval_u1_v::u"][::std::mem::offset_of!(_zval_u1_v, u) - 2usize];
2068};
2069#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2070const _: () = {
2071    ["Size of _zval_u1"][::std::mem::size_of::<_zval_u1>() - 4usize];
2072    ["Alignment of _zval_u1"][::std::mem::align_of::<_zval_u1>() - 4usize];
2073    ["Offset of field: _zval_u1::type_info"][::std::mem::offset_of!(_zval_u1, type_info) - 0usize];
2074    ["Offset of field: _zval_u1::v"][::std::mem::offset_of!(_zval_u1, v) - 0usize];
2075};
2076#[repr(C)]
2077#[derive(Copy, Clone)]
2078pub union _zval_u2 {
2079    pub next: u32,
2080    pub cache_slot: u32,
2081    pub opline_num: u32,
2082    pub lineno: u32,
2083    pub num_args: u32,
2084    pub fe_pos: u32,
2085    pub fe_iter_idx: u32,
2086    pub guard: u32,
2087    pub constant_flags: u32,
2088    pub extra: u32,
2089}
2090#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2091const _: () = {
2092    ["Size of _zval_u2"][::std::mem::size_of::<_zval_u2>() - 4usize];
2093    ["Alignment of _zval_u2"][::std::mem::align_of::<_zval_u2>() - 4usize];
2094    ["Offset of field: _zval_u2::next"][::std::mem::offset_of!(_zval_u2, next) - 0usize];
2095    ["Offset of field: _zval_u2::cache_slot"]
2096        [::std::mem::offset_of!(_zval_u2, cache_slot) - 0usize];
2097    ["Offset of field: _zval_u2::opline_num"]
2098        [::std::mem::offset_of!(_zval_u2, opline_num) - 0usize];
2099    ["Offset of field: _zval_u2::lineno"][::std::mem::offset_of!(_zval_u2, lineno) - 0usize];
2100    ["Offset of field: _zval_u2::num_args"][::std::mem::offset_of!(_zval_u2, num_args) - 0usize];
2101    ["Offset of field: _zval_u2::fe_pos"][::std::mem::offset_of!(_zval_u2, fe_pos) - 0usize];
2102    ["Offset of field: _zval_u2::fe_iter_idx"]
2103        [::std::mem::offset_of!(_zval_u2, fe_iter_idx) - 0usize];
2104    ["Offset of field: _zval_u2::guard"][::std::mem::offset_of!(_zval_u2, guard) - 0usize];
2105    ["Offset of field: _zval_u2::constant_flags"]
2106        [::std::mem::offset_of!(_zval_u2, constant_flags) - 0usize];
2107    ["Offset of field: _zval_u2::extra"][::std::mem::offset_of!(_zval_u2, extra) - 0usize];
2108};
2109#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2110const _: () = {
2111    ["Size of _zval_struct"][::std::mem::size_of::<_zval_struct>() - 16usize];
2112    ["Alignment of _zval_struct"][::std::mem::align_of::<_zval_struct>() - 8usize];
2113    ["Offset of field: _zval_struct::value"][::std::mem::offset_of!(_zval_struct, value) - 0usize];
2114    ["Offset of field: _zval_struct::u1"][::std::mem::offset_of!(_zval_struct, u1) - 8usize];
2115    ["Offset of field: _zval_struct::u2"][::std::mem::offset_of!(_zval_struct, u2) - 12usize];
2116};
2117#[repr(C)]
2118#[derive(Copy, Clone)]
2119pub struct _zend_refcounted_h {
2120    pub refcount: u32,
2121    pub u: _zend_refcounted_h_u,
2122}
2123#[repr(C)]
2124#[derive(Copy, Clone)]
2125pub union _zend_refcounted_h_u {
2126    pub type_info: u32,
2127}
2128#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2129const _: () = {
2130    ["Size of _zend_refcounted_h_u"][::std::mem::size_of::<_zend_refcounted_h_u>() - 4usize];
2131    ["Alignment of _zend_refcounted_h_u"][::std::mem::align_of::<_zend_refcounted_h_u>() - 4usize];
2132    ["Offset of field: _zend_refcounted_h_u::type_info"]
2133        [::std::mem::offset_of!(_zend_refcounted_h_u, type_info) - 0usize];
2134};
2135#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2136const _: () = {
2137    ["Size of _zend_refcounted_h"][::std::mem::size_of::<_zend_refcounted_h>() - 8usize];
2138    ["Alignment of _zend_refcounted_h"][::std::mem::align_of::<_zend_refcounted_h>() - 4usize];
2139    ["Offset of field: _zend_refcounted_h::refcount"]
2140        [::std::mem::offset_of!(_zend_refcounted_h, refcount) - 0usize];
2141    ["Offset of field: _zend_refcounted_h::u"]
2142        [::std::mem::offset_of!(_zend_refcounted_h, u) - 4usize];
2143};
2144pub type zend_refcounted_h = _zend_refcounted_h;
2145#[repr(C)]
2146#[derive(Copy, Clone)]
2147pub struct _zend_refcounted {
2148    pub gc: zend_refcounted_h,
2149}
2150#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2151const _: () = {
2152    ["Size of _zend_refcounted"][::std::mem::size_of::<_zend_refcounted>() - 8usize];
2153    ["Alignment of _zend_refcounted"][::std::mem::align_of::<_zend_refcounted>() - 4usize];
2154    ["Offset of field: _zend_refcounted::gc"]
2155        [::std::mem::offset_of!(_zend_refcounted, gc) - 0usize];
2156};
2157#[repr(C)]
2158#[derive(Copy, Clone)]
2159pub struct _zend_string {
2160    pub gc: zend_refcounted_h,
2161    pub h: zend_ulong,
2162    pub len: usize,
2163    pub val: [::std::os::raw::c_char; 1usize],
2164}
2165#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2166const _: () = {
2167    ["Size of _zend_string"][::std::mem::size_of::<_zend_string>() - 32usize];
2168    ["Alignment of _zend_string"][::std::mem::align_of::<_zend_string>() - 8usize];
2169    ["Offset of field: _zend_string::gc"][::std::mem::offset_of!(_zend_string, gc) - 0usize];
2170    ["Offset of field: _zend_string::h"][::std::mem::offset_of!(_zend_string, h) - 8usize];
2171    ["Offset of field: _zend_string::len"][::std::mem::offset_of!(_zend_string, len) - 16usize];
2172    ["Offset of field: _zend_string::val"][::std::mem::offset_of!(_zend_string, val) - 24usize];
2173};
2174#[repr(C)]
2175#[derive(Copy, Clone)]
2176pub struct _Bucket {
2177    pub val: zval,
2178    pub h: zend_ulong,
2179    pub key: *mut zend_string,
2180}
2181#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2182const _: () = {
2183    ["Size of _Bucket"][::std::mem::size_of::<_Bucket>() - 32usize];
2184    ["Alignment of _Bucket"][::std::mem::align_of::<_Bucket>() - 8usize];
2185    ["Offset of field: _Bucket::val"][::std::mem::offset_of!(_Bucket, val) - 0usize];
2186    ["Offset of field: _Bucket::h"][::std::mem::offset_of!(_Bucket, h) - 16usize];
2187    ["Offset of field: _Bucket::key"][::std::mem::offset_of!(_Bucket, key) - 24usize];
2188};
2189pub type Bucket = _Bucket;
2190pub type HashTable = _zend_array;
2191#[repr(C)]
2192#[derive(Copy, Clone)]
2193pub struct _zend_array {
2194    pub gc: zend_refcounted_h,
2195    pub u: _zend_array__flags,
2196    pub nTableMask: u32,
2197    pub __bindgen_anon_1: _zend_array__data,
2198    pub nNumUsed: u32,
2199    pub nNumOfElements: u32,
2200    pub nTableSize: u32,
2201    pub nInternalPointer: u32,
2202    pub nNextFreeElement: zend_long,
2203    pub pDestructor: dtor_func_t,
2204}
2205#[repr(C)]
2206#[derive(Copy, Clone)]
2207pub union _zend_array__flags {
2208    pub v: _zend_array__bindgen_ty_1__bindgen_ty_1,
2209    pub flags: u32,
2210}
2211#[repr(C)]
2212#[derive(Debug, Copy, Clone)]
2213pub struct _zend_array__bindgen_ty_1__bindgen_ty_1 {
2214    pub flags: u8,
2215    pub _unused: u8,
2216    pub nIteratorsCount: u8,
2217    pub _unused2: u8,
2218}
2219#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2220const _: () = {
2221    ["Size of _zend_array__bindgen_ty_1__bindgen_ty_1"]
2222        [::std::mem::size_of::<_zend_array__bindgen_ty_1__bindgen_ty_1>() - 4usize];
2223    ["Alignment of _zend_array__bindgen_ty_1__bindgen_ty_1"]
2224        [::std::mem::align_of::<_zend_array__bindgen_ty_1__bindgen_ty_1>() - 1usize];
2225    ["Offset of field: _zend_array__bindgen_ty_1__bindgen_ty_1::flags"]
2226        [::std::mem::offset_of!(_zend_array__bindgen_ty_1__bindgen_ty_1, flags) - 0usize];
2227    ["Offset of field: _zend_array__bindgen_ty_1__bindgen_ty_1::_unused"]
2228        [::std::mem::offset_of!(_zend_array__bindgen_ty_1__bindgen_ty_1, _unused) - 1usize];
2229    ["Offset of field: _zend_array__bindgen_ty_1__bindgen_ty_1::nIteratorsCount"]
2230        [::std::mem::offset_of!(_zend_array__bindgen_ty_1__bindgen_ty_1, nIteratorsCount) - 2usize];
2231    ["Offset of field: _zend_array__bindgen_ty_1__bindgen_ty_1::_unused2"]
2232        [::std::mem::offset_of!(_zend_array__bindgen_ty_1__bindgen_ty_1, _unused2) - 3usize];
2233};
2234#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2235const _: () = {
2236    ["Size of _zend_array__flags"][::std::mem::size_of::<_zend_array__flags>() - 4usize];
2237    ["Alignment of _zend_array__flags"][::std::mem::align_of::<_zend_array__flags>() - 4usize];
2238    ["Offset of field: _zend_array__flags::v"]
2239        [::std::mem::offset_of!(_zend_array__flags, v) - 0usize];
2240    ["Offset of field: _zend_array__flags::flags"]
2241        [::std::mem::offset_of!(_zend_array__flags, flags) - 0usize];
2242};
2243#[repr(C)]
2244#[derive(Copy, Clone)]
2245pub union _zend_array__data {
2246    pub arHash: *mut u32,
2247    pub arData: *mut Bucket,
2248    pub arPacked: *mut zval,
2249}
2250#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2251const _: () = {
2252    ["Size of _zend_array__data"][::std::mem::size_of::<_zend_array__data>() - 8usize];
2253    ["Alignment of _zend_array__data"][::std::mem::align_of::<_zend_array__data>() - 8usize];
2254    ["Offset of field: _zend_array__data::arHash"]
2255        [::std::mem::offset_of!(_zend_array__data, arHash) - 0usize];
2256    ["Offset of field: _zend_array__data::arData"]
2257        [::std::mem::offset_of!(_zend_array__data, arData) - 0usize];
2258    ["Offset of field: _zend_array__data::arPacked"]
2259        [::std::mem::offset_of!(_zend_array__data, arPacked) - 0usize];
2260};
2261#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2262const _: () = {
2263    ["Size of _zend_array"][::std::mem::size_of::<_zend_array>() - 56usize];
2264    ["Alignment of _zend_array"][::std::mem::align_of::<_zend_array>() - 8usize];
2265    ["Offset of field: _zend_array::gc"][::std::mem::offset_of!(_zend_array, gc) - 0usize];
2266    ["Offset of field: _zend_array::u"][::std::mem::offset_of!(_zend_array, u) - 8usize];
2267    ["Offset of field: _zend_array::nTableMask"]
2268        [::std::mem::offset_of!(_zend_array, nTableMask) - 12usize];
2269    ["Offset of field: _zend_array::nNumUsed"]
2270        [::std::mem::offset_of!(_zend_array, nNumUsed) - 24usize];
2271    ["Offset of field: _zend_array::nNumOfElements"]
2272        [::std::mem::offset_of!(_zend_array, nNumOfElements) - 28usize];
2273    ["Offset of field: _zend_array::nTableSize"]
2274        [::std::mem::offset_of!(_zend_array, nTableSize) - 32usize];
2275    ["Offset of field: _zend_array::nInternalPointer"]
2276        [::std::mem::offset_of!(_zend_array, nInternalPointer) - 36usize];
2277    ["Offset of field: _zend_array::nNextFreeElement"]
2278        [::std::mem::offset_of!(_zend_array, nNextFreeElement) - 40usize];
2279    ["Offset of field: _zend_array::pDestructor"]
2280        [::std::mem::offset_of!(_zend_array, pDestructor) - 48usize];
2281};
2282pub type HashPosition = u32;
2283#[repr(C)]
2284#[derive(Debug, Copy, Clone)]
2285pub struct _HashTableIterator {
2286    pub ht: *mut HashTable,
2287    pub pos: HashPosition,
2288    pub next_copy: u32,
2289}
2290#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2291const _: () = {
2292    ["Size of _HashTableIterator"][::std::mem::size_of::<_HashTableIterator>() - 16usize];
2293    ["Alignment of _HashTableIterator"][::std::mem::align_of::<_HashTableIterator>() - 8usize];
2294    ["Offset of field: _HashTableIterator::ht"]
2295        [::std::mem::offset_of!(_HashTableIterator, ht) - 0usize];
2296    ["Offset of field: _HashTableIterator::pos"]
2297        [::std::mem::offset_of!(_HashTableIterator, pos) - 8usize];
2298    ["Offset of field: _HashTableIterator::next_copy"]
2299        [::std::mem::offset_of!(_HashTableIterator, next_copy) - 12usize];
2300};
2301pub type HashTableIterator = _HashTableIterator;
2302#[repr(C)]
2303#[derive(Copy, Clone)]
2304pub struct _zend_object {
2305    pub gc: zend_refcounted_h,
2306    pub handle: u32,
2307    pub extra_flags: u32,
2308    pub ce: *mut zend_class_entry,
2309    pub handlers: *const zend_object_handlers,
2310    pub properties: *mut HashTable,
2311    pub properties_table: [zval; 1usize],
2312}
2313#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2314const _: () = {
2315    ["Size of _zend_object"][::std::mem::size_of::<_zend_object>() - 56usize];
2316    ["Alignment of _zend_object"][::std::mem::align_of::<_zend_object>() - 8usize];
2317    ["Offset of field: _zend_object::gc"][::std::mem::offset_of!(_zend_object, gc) - 0usize];
2318    ["Offset of field: _zend_object::handle"]
2319        [::std::mem::offset_of!(_zend_object, handle) - 8usize];
2320    ["Offset of field: _zend_object::extra_flags"]
2321        [::std::mem::offset_of!(_zend_object, extra_flags) - 12usize];
2322    ["Offset of field: _zend_object::ce"][::std::mem::offset_of!(_zend_object, ce) - 16usize];
2323    ["Offset of field: _zend_object::handlers"]
2324        [::std::mem::offset_of!(_zend_object, handlers) - 24usize];
2325    ["Offset of field: _zend_object::properties"]
2326        [::std::mem::offset_of!(_zend_object, properties) - 32usize];
2327    ["Offset of field: _zend_object::properties_table"]
2328        [::std::mem::offset_of!(_zend_object, properties_table) - 40usize];
2329};
2330#[repr(C)]
2331#[derive(Copy, Clone)]
2332pub struct _zend_resource {
2333    pub gc: zend_refcounted_h,
2334    pub handle: zend_long,
2335    pub type_: ::std::os::raw::c_int,
2336    pub ptr: *mut ::std::os::raw::c_void,
2337}
2338#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2339const _: () = {
2340    ["Size of _zend_resource"][::std::mem::size_of::<_zend_resource>() - 32usize];
2341    ["Alignment of _zend_resource"][::std::mem::align_of::<_zend_resource>() - 8usize];
2342    ["Offset of field: _zend_resource::gc"][::std::mem::offset_of!(_zend_resource, gc) - 0usize];
2343    ["Offset of field: _zend_resource::handle"]
2344        [::std::mem::offset_of!(_zend_resource, handle) - 8usize];
2345    ["Offset of field: _zend_resource::type_"]
2346        [::std::mem::offset_of!(_zend_resource, type_) - 16usize];
2347    ["Offset of field: _zend_resource::ptr"][::std::mem::offset_of!(_zend_resource, ptr) - 24usize];
2348};
2349#[repr(C)]
2350#[derive(Debug, Copy, Clone)]
2351pub struct zend_property_info_list {
2352    pub num: usize,
2353    pub num_allocated: usize,
2354    pub ptr: [*mut _zend_property_info; 1usize],
2355}
2356#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2357const _: () = {
2358    ["Size of zend_property_info_list"][::std::mem::size_of::<zend_property_info_list>() - 24usize];
2359    ["Alignment of zend_property_info_list"]
2360        [::std::mem::align_of::<zend_property_info_list>() - 8usize];
2361    ["Offset of field: zend_property_info_list::num"]
2362        [::std::mem::offset_of!(zend_property_info_list, num) - 0usize];
2363    ["Offset of field: zend_property_info_list::num_allocated"]
2364        [::std::mem::offset_of!(zend_property_info_list, num_allocated) - 8usize];
2365    ["Offset of field: zend_property_info_list::ptr"]
2366        [::std::mem::offset_of!(zend_property_info_list, ptr) - 16usize];
2367};
2368#[repr(C)]
2369#[derive(Copy, Clone)]
2370pub union zend_property_info_source_list {
2371    pub ptr: *mut _zend_property_info,
2372    pub list: usize,
2373}
2374#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2375const _: () = {
2376    ["Size of zend_property_info_source_list"]
2377        [::std::mem::size_of::<zend_property_info_source_list>() - 8usize];
2378    ["Alignment of zend_property_info_source_list"]
2379        [::std::mem::align_of::<zend_property_info_source_list>() - 8usize];
2380    ["Offset of field: zend_property_info_source_list::ptr"]
2381        [::std::mem::offset_of!(zend_property_info_source_list, ptr) - 0usize];
2382    ["Offset of field: zend_property_info_source_list::list"]
2383        [::std::mem::offset_of!(zend_property_info_source_list, list) - 0usize];
2384};
2385#[repr(C)]
2386#[derive(Copy, Clone)]
2387pub struct _zend_reference {
2388    pub gc: zend_refcounted_h,
2389    pub val: zval,
2390    pub sources: zend_property_info_source_list,
2391}
2392#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2393const _: () = {
2394    ["Size of _zend_reference"][::std::mem::size_of::<_zend_reference>() - 32usize];
2395    ["Alignment of _zend_reference"][::std::mem::align_of::<_zend_reference>() - 8usize];
2396    ["Offset of field: _zend_reference::gc"][::std::mem::offset_of!(_zend_reference, gc) - 0usize];
2397    ["Offset of field: _zend_reference::val"]
2398        [::std::mem::offset_of!(_zend_reference, val) - 8usize];
2399    ["Offset of field: _zend_reference::sources"]
2400        [::std::mem::offset_of!(_zend_reference, sources) - 24usize];
2401};
2402#[repr(C)]
2403#[derive(Copy, Clone)]
2404pub struct _zend_ast_ref {
2405    pub gc: zend_refcounted_h,
2406}
2407#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2408const _: () = {
2409    ["Size of _zend_ast_ref"][::std::mem::size_of::<_zend_ast_ref>() - 8usize];
2410    ["Alignment of _zend_ast_ref"][::std::mem::align_of::<_zend_ast_ref>() - 4usize];
2411    ["Offset of field: _zend_ast_ref::gc"][::std::mem::offset_of!(_zend_ast_ref, gc) - 0usize];
2412};
2413#[repr(C)]
2414#[derive(Debug, Copy, Clone)]
2415pub struct _zend_leak_info {
2416    pub addr: *mut ::std::os::raw::c_void,
2417    pub size: usize,
2418    pub filename: *const ::std::os::raw::c_char,
2419    pub orig_filename: *const ::std::os::raw::c_char,
2420    pub lineno: u32,
2421    pub orig_lineno: u32,
2422}
2423#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2424const _: () = {
2425    ["Size of _zend_leak_info"][::std::mem::size_of::<_zend_leak_info>() - 40usize];
2426    ["Alignment of _zend_leak_info"][::std::mem::align_of::<_zend_leak_info>() - 8usize];
2427    ["Offset of field: _zend_leak_info::addr"]
2428        [::std::mem::offset_of!(_zend_leak_info, addr) - 0usize];
2429    ["Offset of field: _zend_leak_info::size"]
2430        [::std::mem::offset_of!(_zend_leak_info, size) - 8usize];
2431    ["Offset of field: _zend_leak_info::filename"]
2432        [::std::mem::offset_of!(_zend_leak_info, filename) - 16usize];
2433    ["Offset of field: _zend_leak_info::orig_filename"]
2434        [::std::mem::offset_of!(_zend_leak_info, orig_filename) - 24usize];
2435    ["Offset of field: _zend_leak_info::lineno"]
2436        [::std::mem::offset_of!(_zend_leak_info, lineno) - 32usize];
2437    ["Offset of field: _zend_leak_info::orig_lineno"]
2438        [::std::mem::offset_of!(_zend_leak_info, orig_lineno) - 36usize];
2439};
2440pub type zend_leak_info = _zend_leak_info;
2441#[repr(C)]
2442#[derive(Debug, Copy, Clone)]
2443pub struct _zend_mm_debug_info {
2444    pub size: usize,
2445    pub filename: *const ::std::os::raw::c_char,
2446    pub orig_filename: *const ::std::os::raw::c_char,
2447    pub lineno: u32,
2448    pub orig_lineno: u32,
2449}
2450#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2451const _: () = {
2452    ["Size of _zend_mm_debug_info"][::std::mem::size_of::<_zend_mm_debug_info>() - 32usize];
2453    ["Alignment of _zend_mm_debug_info"][::std::mem::align_of::<_zend_mm_debug_info>() - 8usize];
2454    ["Offset of field: _zend_mm_debug_info::size"]
2455        [::std::mem::offset_of!(_zend_mm_debug_info, size) - 0usize];
2456    ["Offset of field: _zend_mm_debug_info::filename"]
2457        [::std::mem::offset_of!(_zend_mm_debug_info, filename) - 8usize];
2458    ["Offset of field: _zend_mm_debug_info::orig_filename"]
2459        [::std::mem::offset_of!(_zend_mm_debug_info, orig_filename) - 16usize];
2460    ["Offset of field: _zend_mm_debug_info::lineno"]
2461        [::std::mem::offset_of!(_zend_mm_debug_info, lineno) - 24usize];
2462    ["Offset of field: _zend_mm_debug_info::orig_lineno"]
2463        [::std::mem::offset_of!(_zend_mm_debug_info, orig_lineno) - 28usize];
2464};
2465pub type zend_mm_debug_info = _zend_mm_debug_info;
2466#[repr(C)]
2467#[derive(Debug)]
2468pub struct _zend_mm_heap {
2469    _unused: [u8; 0],
2470}
2471pub type zend_mm_heap = _zend_mm_heap;
2472pub type zend_mm_storage = _zend_mm_storage;
2473pub type zend_mm_chunk_alloc_t = ::std::option::Option<
2474    unsafe extern "C" fn(
2475        storage: *mut zend_mm_storage,
2476        size: usize,
2477        alignment: usize,
2478    ) -> *mut ::std::os::raw::c_void,
2479>;
2480pub type zend_mm_chunk_free_t = ::std::option::Option<
2481    unsafe extern "C" fn(
2482        storage: *mut zend_mm_storage,
2483        chunk: *mut ::std::os::raw::c_void,
2484        size: usize,
2485    ),
2486>;
2487pub type zend_mm_chunk_truncate_t = ::std::option::Option<
2488    unsafe extern "C" fn(
2489        storage: *mut zend_mm_storage,
2490        chunk: *mut ::std::os::raw::c_void,
2491        old_size: usize,
2492        new_size: usize,
2493    ) -> bool,
2494>;
2495pub type zend_mm_chunk_extend_t = ::std::option::Option<
2496    unsafe extern "C" fn(
2497        storage: *mut zend_mm_storage,
2498        chunk: *mut ::std::os::raw::c_void,
2499        old_size: usize,
2500        new_size: usize,
2501    ) -> bool,
2502>;
2503#[repr(C)]
2504#[derive(Debug, Copy, Clone)]
2505pub struct _zend_mm_handlers {
2506    pub chunk_alloc: zend_mm_chunk_alloc_t,
2507    pub chunk_free: zend_mm_chunk_free_t,
2508    pub chunk_truncate: zend_mm_chunk_truncate_t,
2509    pub chunk_extend: zend_mm_chunk_extend_t,
2510}
2511#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2512const _: () = {
2513    ["Size of _zend_mm_handlers"][::std::mem::size_of::<_zend_mm_handlers>() - 32usize];
2514    ["Alignment of _zend_mm_handlers"][::std::mem::align_of::<_zend_mm_handlers>() - 8usize];
2515    ["Offset of field: _zend_mm_handlers::chunk_alloc"]
2516        [::std::mem::offset_of!(_zend_mm_handlers, chunk_alloc) - 0usize];
2517    ["Offset of field: _zend_mm_handlers::chunk_free"]
2518        [::std::mem::offset_of!(_zend_mm_handlers, chunk_free) - 8usize];
2519    ["Offset of field: _zend_mm_handlers::chunk_truncate"]
2520        [::std::mem::offset_of!(_zend_mm_handlers, chunk_truncate) - 16usize];
2521    ["Offset of field: _zend_mm_handlers::chunk_extend"]
2522        [::std::mem::offset_of!(_zend_mm_handlers, chunk_extend) - 24usize];
2523};
2524pub type zend_mm_handlers = _zend_mm_handlers;
2525#[repr(C)]
2526#[derive(Debug, Copy, Clone)]
2527pub struct _zend_mm_storage {
2528    pub handlers: zend_mm_handlers,
2529    pub data: *mut ::std::os::raw::c_void,
2530}
2531#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2532const _: () = {
2533    ["Size of _zend_mm_storage"][::std::mem::size_of::<_zend_mm_storage>() - 40usize];
2534    ["Alignment of _zend_mm_storage"][::std::mem::align_of::<_zend_mm_storage>() - 8usize];
2535    ["Offset of field: _zend_mm_storage::handlers"]
2536        [::std::mem::offset_of!(_zend_mm_storage, handlers) - 0usize];
2537    ["Offset of field: _zend_mm_storage::data"]
2538        [::std::mem::offset_of!(_zend_mm_storage, data) - 32usize];
2539};
2540#[repr(C)]
2541#[derive(Debug, Copy, Clone)]
2542pub struct _zend_llist_element {
2543    pub next: *mut _zend_llist_element,
2544    pub prev: *mut _zend_llist_element,
2545    pub data: [::std::os::raw::c_char; 1usize],
2546}
2547#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2548const _: () = {
2549    ["Size of _zend_llist_element"][::std::mem::size_of::<_zend_llist_element>() - 24usize];
2550    ["Alignment of _zend_llist_element"][::std::mem::align_of::<_zend_llist_element>() - 8usize];
2551    ["Offset of field: _zend_llist_element::next"]
2552        [::std::mem::offset_of!(_zend_llist_element, next) - 0usize];
2553    ["Offset of field: _zend_llist_element::prev"]
2554        [::std::mem::offset_of!(_zend_llist_element, prev) - 8usize];
2555    ["Offset of field: _zend_llist_element::data"]
2556        [::std::mem::offset_of!(_zend_llist_element, data) - 16usize];
2557};
2558pub type zend_llist_element = _zend_llist_element;
2559pub type llist_dtor_func_t =
2560    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
2561pub type llist_compare_func_t = ::std::option::Option<
2562    unsafe extern "C" fn(
2563        arg1: *mut *const zend_llist_element,
2564        arg2: *mut *const zend_llist_element,
2565    ) -> ::std::os::raw::c_int,
2566>;
2567pub type llist_apply_with_args_func_t = ::std::option::Option<
2568    unsafe extern "C" fn(
2569        data: *mut ::std::os::raw::c_void,
2570        num_args: ::std::os::raw::c_int,
2571        args: *mut __va_list_tag,
2572    ),
2573>;
2574pub type llist_apply_with_arg_func_t = ::std::option::Option<
2575    unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, arg: *mut ::std::os::raw::c_void),
2576>;
2577pub type llist_apply_func_t =
2578    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
2579#[repr(C)]
2580#[derive(Debug, Copy, Clone)]
2581pub struct _zend_llist {
2582    pub head: *mut zend_llist_element,
2583    pub tail: *mut zend_llist_element,
2584    pub count: usize,
2585    pub size: usize,
2586    pub dtor: llist_dtor_func_t,
2587    pub persistent: ::std::os::raw::c_uchar,
2588    pub traverse_ptr: *mut zend_llist_element,
2589}
2590#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2591const _: () = {
2592    ["Size of _zend_llist"][::std::mem::size_of::<_zend_llist>() - 56usize];
2593    ["Alignment of _zend_llist"][::std::mem::align_of::<_zend_llist>() - 8usize];
2594    ["Offset of field: _zend_llist::head"][::std::mem::offset_of!(_zend_llist, head) - 0usize];
2595    ["Offset of field: _zend_llist::tail"][::std::mem::offset_of!(_zend_llist, tail) - 8usize];
2596    ["Offset of field: _zend_llist::count"][::std::mem::offset_of!(_zend_llist, count) - 16usize];
2597    ["Offset of field: _zend_llist::size"][::std::mem::offset_of!(_zend_llist, size) - 24usize];
2598    ["Offset of field: _zend_llist::dtor"][::std::mem::offset_of!(_zend_llist, dtor) - 32usize];
2599    ["Offset of field: _zend_llist::persistent"]
2600        [::std::mem::offset_of!(_zend_llist, persistent) - 40usize];
2601    ["Offset of field: _zend_llist::traverse_ptr"]
2602        [::std::mem::offset_of!(_zend_llist, traverse_ptr) - 48usize];
2603};
2604pub type zend_llist = _zend_llist;
2605pub type zend_llist_position = *mut zend_llist_element;
2606pub type socklen_t = __socklen_t;
2607pub type zend_hrtime_t = u64;
2608#[repr(C)]
2609#[derive(Debug, Copy, Clone)]
2610pub struct _zend_gc_status {
2611    pub active: bool,
2612    pub gc_protected: bool,
2613    pub full: bool,
2614    pub runs: u32,
2615    pub collected: u32,
2616    pub threshold: u32,
2617    pub buf_size: u32,
2618    pub num_roots: u32,
2619    pub application_time: zend_hrtime_t,
2620    pub collector_time: zend_hrtime_t,
2621    pub dtor_time: zend_hrtime_t,
2622    pub free_time: zend_hrtime_t,
2623}
2624#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2625const _: () = {
2626    ["Size of _zend_gc_status"][::std::mem::size_of::<_zend_gc_status>() - 56usize];
2627    ["Alignment of _zend_gc_status"][::std::mem::align_of::<_zend_gc_status>() - 8usize];
2628    ["Offset of field: _zend_gc_status::active"]
2629        [::std::mem::offset_of!(_zend_gc_status, active) - 0usize];
2630    ["Offset of field: _zend_gc_status::gc_protected"]
2631        [::std::mem::offset_of!(_zend_gc_status, gc_protected) - 1usize];
2632    ["Offset of field: _zend_gc_status::full"]
2633        [::std::mem::offset_of!(_zend_gc_status, full) - 2usize];
2634    ["Offset of field: _zend_gc_status::runs"]
2635        [::std::mem::offset_of!(_zend_gc_status, runs) - 4usize];
2636    ["Offset of field: _zend_gc_status::collected"]
2637        [::std::mem::offset_of!(_zend_gc_status, collected) - 8usize];
2638    ["Offset of field: _zend_gc_status::threshold"]
2639        [::std::mem::offset_of!(_zend_gc_status, threshold) - 12usize];
2640    ["Offset of field: _zend_gc_status::buf_size"]
2641        [::std::mem::offset_of!(_zend_gc_status, buf_size) - 16usize];
2642    ["Offset of field: _zend_gc_status::num_roots"]
2643        [::std::mem::offset_of!(_zend_gc_status, num_roots) - 20usize];
2644    ["Offset of field: _zend_gc_status::application_time"]
2645        [::std::mem::offset_of!(_zend_gc_status, application_time) - 24usize];
2646    ["Offset of field: _zend_gc_status::collector_time"]
2647        [::std::mem::offset_of!(_zend_gc_status, collector_time) - 32usize];
2648    ["Offset of field: _zend_gc_status::dtor_time"]
2649        [::std::mem::offset_of!(_zend_gc_status, dtor_time) - 40usize];
2650    ["Offset of field: _zend_gc_status::free_time"]
2651        [::std::mem::offset_of!(_zend_gc_status, free_time) - 48usize];
2652};
2653pub type zend_gc_status = _zend_gc_status;
2654#[repr(C)]
2655#[derive(Debug, Copy, Clone)]
2656pub struct zend_get_gc_buffer {
2657    pub cur: *mut zval,
2658    pub end: *mut zval,
2659    pub start: *mut zval,
2660}
2661#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2662const _: () = {
2663    ["Size of zend_get_gc_buffer"][::std::mem::size_of::<zend_get_gc_buffer>() - 24usize];
2664    ["Alignment of zend_get_gc_buffer"][::std::mem::align_of::<zend_get_gc_buffer>() - 8usize];
2665    ["Offset of field: zend_get_gc_buffer::cur"]
2666        [::std::mem::offset_of!(zend_get_gc_buffer, cur) - 0usize];
2667    ["Offset of field: zend_get_gc_buffer::end"]
2668        [::std::mem::offset_of!(zend_get_gc_buffer, end) - 8usize];
2669    ["Offset of field: zend_get_gc_buffer::start"]
2670        [::std::mem::offset_of!(zend_get_gc_buffer, start) - 16usize];
2671};
2672pub type zend_string_copy_storage_func_t = ::std::option::Option<unsafe extern "C" fn()>;
2673pub type zend_new_interned_string_func_t =
2674    ::std::option::Option<unsafe extern "C" fn(str_: *mut zend_string) -> *mut zend_string>;
2675pub type zend_string_init_interned_func_t = ::std::option::Option<
2676    unsafe extern "C" fn(
2677        str_: *const ::std::os::raw::c_char,
2678        size: usize,
2679        permanent: bool,
2680    ) -> *mut zend_string,
2681>;
2682pub type zend_string_init_existing_interned_func_t = ::std::option::Option<
2683    unsafe extern "C" fn(
2684        str_: *const ::std::os::raw::c_char,
2685        size: usize,
2686        permanent: bool,
2687    ) -> *mut zend_string,
2688>;
2689pub mod _zend_known_string_id {
2690    #[allow(unused_imports)]
2691    use super::*;
2692    pub type Type = ::std::os::raw::c_uint;
2693    pub const ZEND_STR_FILE: Type = 0;
2694    pub const ZEND_STR_LINE: Type = 1;
2695    pub const ZEND_STR_FUNCTION: Type = 2;
2696    pub const ZEND_STR_CLASS: Type = 3;
2697    pub const ZEND_STR_OBJECT: Type = 4;
2698    pub const ZEND_STR_TYPE: Type = 5;
2699    pub const ZEND_STR_OBJECT_OPERATOR: Type = 6;
2700    pub const ZEND_STR_PAAMAYIM_NEKUDOTAYIM: Type = 7;
2701    pub const ZEND_STR_ARGS: Type = 8;
2702    pub const ZEND_STR_UNKNOWN: Type = 9;
2703    pub const ZEND_STR_UNKNOWN_CAPITALIZED: Type = 10;
2704    pub const ZEND_STR_EXIT: Type = 11;
2705    pub const ZEND_STR_CLONE: Type = 12;
2706    pub const ZEND_STR_EVAL: Type = 13;
2707    pub const ZEND_STR_INCLUDE: Type = 14;
2708    pub const ZEND_STR_REQUIRE: Type = 15;
2709    pub const ZEND_STR_INCLUDE_ONCE: Type = 16;
2710    pub const ZEND_STR_REQUIRE_ONCE: Type = 17;
2711    pub const ZEND_STR_SCALAR: Type = 18;
2712    pub const ZEND_STR_ERROR_REPORTING: Type = 19;
2713    pub const ZEND_STR_STATIC: Type = 20;
2714    pub const ZEND_STR_THIS: Type = 21;
2715    pub const ZEND_STR_VALUE: Type = 22;
2716    pub const ZEND_STR_KEY: Type = 23;
2717    pub const ZEND_STR_MAGIC_INVOKE: Type = 24;
2718    pub const ZEND_STR_PREVIOUS: Type = 25;
2719    pub const ZEND_STR_CODE: Type = 26;
2720    pub const ZEND_STR_MESSAGE: Type = 27;
2721    pub const ZEND_STR_SEVERITY: Type = 28;
2722    pub const ZEND_STR_STRING: Type = 29;
2723    pub const ZEND_STR_TRACE: Type = 30;
2724    pub const ZEND_STR_SCHEME: Type = 31;
2725    pub const ZEND_STR_HOST: Type = 32;
2726    pub const ZEND_STR_PORT: Type = 33;
2727    pub const ZEND_STR_USER: Type = 34;
2728    pub const ZEND_STR_USERNAME: Type = 35;
2729    pub const ZEND_STR_PASS: Type = 36;
2730    pub const ZEND_STR_PASSWORD: Type = 37;
2731    pub const ZEND_STR_PATH: Type = 38;
2732    pub const ZEND_STR_QUERY: Type = 39;
2733    pub const ZEND_STR_FRAGMENT: Type = 40;
2734    pub const ZEND_STR_NULL: Type = 41;
2735    pub const ZEND_STR_BOOLEAN: Type = 42;
2736    pub const ZEND_STR_INTEGER: Type = 43;
2737    pub const ZEND_STR_DOUBLE: Type = 44;
2738    pub const ZEND_STR_ARRAY: Type = 45;
2739    pub const ZEND_STR_RESOURCE: Type = 46;
2740    pub const ZEND_STR_CLOSED_RESOURCE: Type = 47;
2741    pub const ZEND_STR_NAME: Type = 48;
2742    pub const ZEND_STR_ARGV: Type = 49;
2743    pub const ZEND_STR_ARGC: Type = 50;
2744    pub const ZEND_STR_ARRAY_CAPITALIZED: Type = 51;
2745    pub const ZEND_STR_BOOL: Type = 52;
2746    pub const ZEND_STR_INT: Type = 53;
2747    pub const ZEND_STR_FLOAT: Type = 54;
2748    pub const ZEND_STR_CALLABLE: Type = 55;
2749    pub const ZEND_STR_ITERABLE: Type = 56;
2750    pub const ZEND_STR_VOID: Type = 57;
2751    pub const ZEND_STR_NEVER: Type = 58;
2752    pub const ZEND_STR_FALSE: Type = 59;
2753    pub const ZEND_STR_TRUE: Type = 60;
2754    pub const ZEND_STR_NULL_LOWERCASE: Type = 61;
2755    pub const ZEND_STR_MIXED: Type = 62;
2756    pub const ZEND_STR_TRAVERSABLE: Type = 63;
2757    pub const ZEND_STR_SELF: Type = 64;
2758    pub const ZEND_STR_PARENT: Type = 65;
2759    pub const ZEND_STR_SLEEP: Type = 66;
2760    pub const ZEND_STR_WAKEUP: Type = 67;
2761    pub const ZEND_STR_CASES: Type = 68;
2762    pub const ZEND_STR_FROM: Type = 69;
2763    pub const ZEND_STR_TRYFROM: Type = 70;
2764    pub const ZEND_STR_TRYFROM_LOWERCASE: Type = 71;
2765    pub const ZEND_STR_AUTOGLOBAL_SERVER: Type = 72;
2766    pub const ZEND_STR_AUTOGLOBAL_ENV: Type = 73;
2767    pub const ZEND_STR_AUTOGLOBAL_REQUEST: Type = 74;
2768    pub const ZEND_STR_COUNT: Type = 75;
2769    pub const ZEND_STR_SENSITIVEPARAMETER: Type = 76;
2770    pub const ZEND_STR_CONST_EXPR_PLACEHOLDER: Type = 77;
2771    pub const ZEND_STR_DEPRECATED_CAPITALIZED: Type = 78;
2772    pub const ZEND_STR_SINCE: Type = 79;
2773    pub const ZEND_STR_GET: Type = 80;
2774    pub const ZEND_STR_SET: Type = 81;
2775    pub const ZEND_STR_8_DOT_0: Type = 82;
2776    pub const ZEND_STR_8_DOT_1: Type = 83;
2777    pub const ZEND_STR_8_DOT_2: Type = 84;
2778    pub const ZEND_STR_8_DOT_3: Type = 85;
2779    pub const ZEND_STR_8_DOT_4: Type = 86;
2780    pub const ZEND_STR_8_DOT_5: Type = 87;
2781    pub const ZEND_STR_LAST_KNOWN: Type = 88;
2782}
2783pub use self::_zend_known_string_id::Type as zend_known_string_id;
2784pub mod zend_hash_key_type {
2785    #[allow(unused_imports)]
2786    use super::*;
2787    pub type Type = ::std::os::raw::c_uint;
2788    pub const HASH_KEY_IS_STRING: Type = 1;
2789    pub const HASH_KEY_IS_LONG: Type = 2;
2790    pub const HASH_KEY_NON_EXISTENT: Type = 3;
2791}
2792#[repr(C)]
2793#[derive(Debug, Copy, Clone)]
2794pub struct _zend_hash_key {
2795    pub h: zend_ulong,
2796    pub key: *mut zend_string,
2797}
2798#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2799const _: () = {
2800    ["Size of _zend_hash_key"][::std::mem::size_of::<_zend_hash_key>() - 16usize];
2801    ["Alignment of _zend_hash_key"][::std::mem::align_of::<_zend_hash_key>() - 8usize];
2802    ["Offset of field: _zend_hash_key::h"][::std::mem::offset_of!(_zend_hash_key, h) - 0usize];
2803    ["Offset of field: _zend_hash_key::key"][::std::mem::offset_of!(_zend_hash_key, key) - 8usize];
2804};
2805pub type zend_hash_key = _zend_hash_key;
2806pub type merge_checker_func_t = ::std::option::Option<
2807    unsafe extern "C" fn(
2808        target_ht: *mut HashTable,
2809        source_data: *mut zval,
2810        hash_key: *mut zend_hash_key,
2811        pParam: *mut ::std::os::raw::c_void,
2812    ) -> bool,
2813>;
2814pub type apply_func_t =
2815    ::std::option::Option<unsafe extern "C" fn(pDest: *mut zval) -> ::std::os::raw::c_int>;
2816pub type apply_func_arg_t = ::std::option::Option<
2817    unsafe extern "C" fn(
2818        pDest: *mut zval,
2819        argument: *mut ::std::os::raw::c_void,
2820    ) -> ::std::os::raw::c_int,
2821>;
2822pub type apply_func_args_t = ::std::option::Option<
2823    unsafe extern "C" fn(
2824        pDest: *mut zval,
2825        num_args: ::std::os::raw::c_int,
2826        args: *mut __va_list_tag,
2827        hash_key: *mut zend_hash_key,
2828    ) -> ::std::os::raw::c_int,
2829>;
2830pub type bucket_compare_func_t = ::std::option::Option<
2831    unsafe extern "C" fn(a: *mut Bucket, b: *mut Bucket) -> ::std::os::raw::c_int,
2832>;
2833pub mod _zend_ast_kind {
2834    #[allow(unused_imports)]
2835    use super::*;
2836    pub type Type = u16;
2837    pub const ZEND_AST_ZVAL: Type = 64;
2838    pub const ZEND_AST_CONSTANT: Type = 65;
2839    pub const ZEND_AST_OP_ARRAY: Type = 66;
2840    pub const ZEND_AST_ZNODE: Type = 67;
2841    pub const ZEND_AST_FUNC_DECL: Type = 68;
2842    pub const ZEND_AST_CLOSURE: Type = 69;
2843    pub const ZEND_AST_METHOD: Type = 70;
2844    pub const ZEND_AST_CLASS: Type = 71;
2845    pub const ZEND_AST_ARROW_FUNC: Type = 72;
2846    pub const ZEND_AST_PROPERTY_HOOK: Type = 73;
2847    pub const ZEND_AST_ARG_LIST: Type = 128;
2848    pub const ZEND_AST_ARRAY: Type = 129;
2849    pub const ZEND_AST_ENCAPS_LIST: Type = 130;
2850    pub const ZEND_AST_EXPR_LIST: Type = 131;
2851    pub const ZEND_AST_STMT_LIST: Type = 132;
2852    pub const ZEND_AST_IF: Type = 133;
2853    pub const ZEND_AST_SWITCH_LIST: Type = 134;
2854    pub const ZEND_AST_CATCH_LIST: Type = 135;
2855    pub const ZEND_AST_PARAM_LIST: Type = 136;
2856    pub const ZEND_AST_CLOSURE_USES: Type = 137;
2857    pub const ZEND_AST_PROP_DECL: Type = 138;
2858    pub const ZEND_AST_CONST_DECL: Type = 139;
2859    pub const ZEND_AST_CLASS_CONST_DECL: Type = 140;
2860    pub const ZEND_AST_NAME_LIST: Type = 141;
2861    pub const ZEND_AST_TRAIT_ADAPTATIONS: Type = 142;
2862    pub const ZEND_AST_USE: Type = 143;
2863    pub const ZEND_AST_TYPE_UNION: Type = 144;
2864    pub const ZEND_AST_TYPE_INTERSECTION: Type = 145;
2865    pub const ZEND_AST_ATTRIBUTE_LIST: Type = 146;
2866    pub const ZEND_AST_ATTRIBUTE_GROUP: Type = 147;
2867    pub const ZEND_AST_MATCH_ARM_LIST: Type = 148;
2868    pub const ZEND_AST_MODIFIER_LIST: Type = 149;
2869    pub const ZEND_AST_MAGIC_CONST: Type = 0;
2870    pub const ZEND_AST_TYPE: Type = 1;
2871    pub const ZEND_AST_CONSTANT_CLASS: Type = 2;
2872    pub const ZEND_AST_CALLABLE_CONVERT: Type = 3;
2873    pub const ZEND_AST_VAR: Type = 256;
2874    pub const ZEND_AST_CONST: Type = 257;
2875    pub const ZEND_AST_UNPACK: Type = 258;
2876    pub const ZEND_AST_UNARY_PLUS: Type = 259;
2877    pub const ZEND_AST_UNARY_MINUS: Type = 260;
2878    pub const ZEND_AST_CAST: Type = 261;
2879    pub const ZEND_AST_CAST_VOID: Type = 262;
2880    pub const ZEND_AST_EMPTY: Type = 263;
2881    pub const ZEND_AST_ISSET: Type = 264;
2882    pub const ZEND_AST_SILENCE: Type = 265;
2883    pub const ZEND_AST_SHELL_EXEC: Type = 266;
2884    pub const ZEND_AST_PRINT: Type = 267;
2885    pub const ZEND_AST_INCLUDE_OR_EVAL: Type = 268;
2886    pub const ZEND_AST_UNARY_OP: Type = 269;
2887    pub const ZEND_AST_PRE_INC: Type = 270;
2888    pub const ZEND_AST_PRE_DEC: Type = 271;
2889    pub const ZEND_AST_POST_INC: Type = 272;
2890    pub const ZEND_AST_POST_DEC: Type = 273;
2891    pub const ZEND_AST_YIELD_FROM: Type = 274;
2892    pub const ZEND_AST_CLASS_NAME: Type = 275;
2893    pub const ZEND_AST_GLOBAL: Type = 276;
2894    pub const ZEND_AST_UNSET: Type = 277;
2895    pub const ZEND_AST_RETURN: Type = 278;
2896    pub const ZEND_AST_LABEL: Type = 279;
2897    pub const ZEND_AST_REF: Type = 280;
2898    pub const ZEND_AST_HALT_COMPILER: Type = 281;
2899    pub const ZEND_AST_ECHO: Type = 282;
2900    pub const ZEND_AST_THROW: Type = 283;
2901    pub const ZEND_AST_GOTO: Type = 284;
2902    pub const ZEND_AST_BREAK: Type = 285;
2903    pub const ZEND_AST_CONTINUE: Type = 286;
2904    pub const ZEND_AST_PROPERTY_HOOK_SHORT_BODY: Type = 287;
2905    pub const ZEND_AST_DIM: Type = 512;
2906    pub const ZEND_AST_PROP: Type = 513;
2907    pub const ZEND_AST_NULLSAFE_PROP: Type = 514;
2908    pub const ZEND_AST_STATIC_PROP: Type = 515;
2909    pub const ZEND_AST_CALL: Type = 516;
2910    pub const ZEND_AST_CLASS_CONST: Type = 517;
2911    pub const ZEND_AST_ASSIGN: Type = 518;
2912    pub const ZEND_AST_ASSIGN_REF: Type = 519;
2913    pub const ZEND_AST_ASSIGN_OP: Type = 520;
2914    pub const ZEND_AST_BINARY_OP: Type = 521;
2915    pub const ZEND_AST_GREATER: Type = 522;
2916    pub const ZEND_AST_GREATER_EQUAL: Type = 523;
2917    pub const ZEND_AST_AND: Type = 524;
2918    pub const ZEND_AST_OR: Type = 525;
2919    pub const ZEND_AST_ARRAY_ELEM: Type = 526;
2920    pub const ZEND_AST_NEW: Type = 527;
2921    pub const ZEND_AST_INSTANCEOF: Type = 528;
2922    pub const ZEND_AST_YIELD: Type = 529;
2923    pub const ZEND_AST_COALESCE: Type = 530;
2924    pub const ZEND_AST_ASSIGN_COALESCE: Type = 531;
2925    pub const ZEND_AST_STATIC: Type = 532;
2926    pub const ZEND_AST_WHILE: Type = 533;
2927    pub const ZEND_AST_DO_WHILE: Type = 534;
2928    pub const ZEND_AST_IF_ELEM: Type = 535;
2929    pub const ZEND_AST_SWITCH: Type = 536;
2930    pub const ZEND_AST_SWITCH_CASE: Type = 537;
2931    pub const ZEND_AST_DECLARE: Type = 538;
2932    pub const ZEND_AST_USE_TRAIT: Type = 539;
2933    pub const ZEND_AST_TRAIT_PRECEDENCE: Type = 540;
2934    pub const ZEND_AST_METHOD_REFERENCE: Type = 541;
2935    pub const ZEND_AST_NAMESPACE: Type = 542;
2936    pub const ZEND_AST_USE_ELEM: Type = 543;
2937    pub const ZEND_AST_TRAIT_ALIAS: Type = 544;
2938    pub const ZEND_AST_GROUP_USE: Type = 545;
2939    pub const ZEND_AST_ATTRIBUTE: Type = 546;
2940    pub const ZEND_AST_MATCH: Type = 547;
2941    pub const ZEND_AST_MATCH_ARM: Type = 548;
2942    pub const ZEND_AST_NAMED_ARG: Type = 549;
2943    pub const ZEND_AST_PARENT_PROPERTY_HOOK_CALL: Type = 550;
2944    pub const ZEND_AST_PIPE: Type = 551;
2945    pub const ZEND_AST_METHOD_CALL: Type = 768;
2946    pub const ZEND_AST_NULLSAFE_METHOD_CALL: Type = 769;
2947    pub const ZEND_AST_STATIC_CALL: Type = 770;
2948    pub const ZEND_AST_CONDITIONAL: Type = 771;
2949    pub const ZEND_AST_TRY: Type = 772;
2950    pub const ZEND_AST_CATCH: Type = 773;
2951    pub const ZEND_AST_PROP_GROUP: Type = 774;
2952    pub const ZEND_AST_CONST_ELEM: Type = 775;
2953    pub const ZEND_AST_CLASS_CONST_GROUP: Type = 776;
2954    pub const ZEND_AST_CONST_ENUM_INIT: Type = 777;
2955    pub const ZEND_AST_FOR: Type = 1024;
2956    pub const ZEND_AST_FOREACH: Type = 1025;
2957    pub const ZEND_AST_ENUM_CASE: Type = 1026;
2958    pub const ZEND_AST_PROP_ELEM: Type = 1027;
2959    pub const ZEND_AST_PARAM: Type = 1536;
2960}
2961pub type zend_ast_kind = u16;
2962pub type zend_ast_attr = u16;
2963#[repr(C)]
2964#[derive(Debug, Copy, Clone)]
2965pub struct _zend_ast {
2966    pub kind: zend_ast_kind,
2967    pub attr: zend_ast_attr,
2968    pub lineno: u32,
2969    pub child: [*mut zend_ast; 1usize],
2970}
2971#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2972const _: () = {
2973    ["Size of _zend_ast"][::std::mem::size_of::<_zend_ast>() - 16usize];
2974    ["Alignment of _zend_ast"][::std::mem::align_of::<_zend_ast>() - 8usize];
2975    ["Offset of field: _zend_ast::kind"][::std::mem::offset_of!(_zend_ast, kind) - 0usize];
2976    ["Offset of field: _zend_ast::attr"][::std::mem::offset_of!(_zend_ast, attr) - 2usize];
2977    ["Offset of field: _zend_ast::lineno"][::std::mem::offset_of!(_zend_ast, lineno) - 4usize];
2978    ["Offset of field: _zend_ast::child"][::std::mem::offset_of!(_zend_ast, child) - 8usize];
2979};
2980#[repr(C)]
2981#[derive(Debug, Copy, Clone)]
2982pub struct _zend_ast_list {
2983    pub kind: zend_ast_kind,
2984    pub attr: zend_ast_attr,
2985    pub lineno: u32,
2986    pub children: u32,
2987    pub child: [*mut zend_ast; 1usize],
2988}
2989#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2990const _: () = {
2991    ["Size of _zend_ast_list"][::std::mem::size_of::<_zend_ast_list>() - 24usize];
2992    ["Alignment of _zend_ast_list"][::std::mem::align_of::<_zend_ast_list>() - 8usize];
2993    ["Offset of field: _zend_ast_list::kind"]
2994        [::std::mem::offset_of!(_zend_ast_list, kind) - 0usize];
2995    ["Offset of field: _zend_ast_list::attr"]
2996        [::std::mem::offset_of!(_zend_ast_list, attr) - 2usize];
2997    ["Offset of field: _zend_ast_list::lineno"]
2998        [::std::mem::offset_of!(_zend_ast_list, lineno) - 4usize];
2999    ["Offset of field: _zend_ast_list::children"]
3000        [::std::mem::offset_of!(_zend_ast_list, children) - 8usize];
3001    ["Offset of field: _zend_ast_list::child"]
3002        [::std::mem::offset_of!(_zend_ast_list, child) - 16usize];
3003};
3004pub type zend_ast_list = _zend_ast_list;
3005#[repr(C)]
3006#[derive(Copy, Clone)]
3007pub struct _zend_ast_zval {
3008    pub kind: zend_ast_kind,
3009    pub attr: zend_ast_attr,
3010    pub val: zval,
3011}
3012#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3013const _: () = {
3014    ["Size of _zend_ast_zval"][::std::mem::size_of::<_zend_ast_zval>() - 24usize];
3015    ["Alignment of _zend_ast_zval"][::std::mem::align_of::<_zend_ast_zval>() - 8usize];
3016    ["Offset of field: _zend_ast_zval::kind"]
3017        [::std::mem::offset_of!(_zend_ast_zval, kind) - 0usize];
3018    ["Offset of field: _zend_ast_zval::attr"]
3019        [::std::mem::offset_of!(_zend_ast_zval, attr) - 2usize];
3020    ["Offset of field: _zend_ast_zval::val"][::std::mem::offset_of!(_zend_ast_zval, val) - 8usize];
3021};
3022pub type zend_ast_zval = _zend_ast_zval;
3023pub type zend_op_array = _zend_op_array;
3024#[repr(C)]
3025#[derive(Debug, Copy, Clone)]
3026pub struct _zend_ast_op_array {
3027    pub kind: zend_ast_kind,
3028    pub attr: zend_ast_attr,
3029    pub lineno: u32,
3030    pub op_array: *mut zend_op_array,
3031}
3032#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3033const _: () = {
3034    ["Size of _zend_ast_op_array"][::std::mem::size_of::<_zend_ast_op_array>() - 16usize];
3035    ["Alignment of _zend_ast_op_array"][::std::mem::align_of::<_zend_ast_op_array>() - 8usize];
3036    ["Offset of field: _zend_ast_op_array::kind"]
3037        [::std::mem::offset_of!(_zend_ast_op_array, kind) - 0usize];
3038    ["Offset of field: _zend_ast_op_array::attr"]
3039        [::std::mem::offset_of!(_zend_ast_op_array, attr) - 2usize];
3040    ["Offset of field: _zend_ast_op_array::lineno"]
3041        [::std::mem::offset_of!(_zend_ast_op_array, lineno) - 4usize];
3042    ["Offset of field: _zend_ast_op_array::op_array"]
3043        [::std::mem::offset_of!(_zend_ast_op_array, op_array) - 8usize];
3044};
3045pub type zend_ast_op_array = _zend_ast_op_array;
3046#[repr(C)]
3047#[derive(Debug, Copy, Clone)]
3048pub struct _zend_ast_decl {
3049    pub kind: zend_ast_kind,
3050    pub attr: zend_ast_attr,
3051    pub start_lineno: u32,
3052    pub end_lineno: u32,
3053    pub flags: u32,
3054    pub doc_comment: *mut zend_string,
3055    pub name: *mut zend_string,
3056    pub child: [*mut zend_ast; 5usize],
3057}
3058#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3059const _: () = {
3060    ["Size of _zend_ast_decl"][::std::mem::size_of::<_zend_ast_decl>() - 72usize];
3061    ["Alignment of _zend_ast_decl"][::std::mem::align_of::<_zend_ast_decl>() - 8usize];
3062    ["Offset of field: _zend_ast_decl::kind"]
3063        [::std::mem::offset_of!(_zend_ast_decl, kind) - 0usize];
3064    ["Offset of field: _zend_ast_decl::attr"]
3065        [::std::mem::offset_of!(_zend_ast_decl, attr) - 2usize];
3066    ["Offset of field: _zend_ast_decl::start_lineno"]
3067        [::std::mem::offset_of!(_zend_ast_decl, start_lineno) - 4usize];
3068    ["Offset of field: _zend_ast_decl::end_lineno"]
3069        [::std::mem::offset_of!(_zend_ast_decl, end_lineno) - 8usize];
3070    ["Offset of field: _zend_ast_decl::flags"]
3071        [::std::mem::offset_of!(_zend_ast_decl, flags) - 12usize];
3072    ["Offset of field: _zend_ast_decl::doc_comment"]
3073        [::std::mem::offset_of!(_zend_ast_decl, doc_comment) - 16usize];
3074    ["Offset of field: _zend_ast_decl::name"]
3075        [::std::mem::offset_of!(_zend_ast_decl, name) - 24usize];
3076    ["Offset of field: _zend_ast_decl::child"]
3077        [::std::mem::offset_of!(_zend_ast_decl, child) - 32usize];
3078};
3079pub type zend_ast_decl = _zend_ast_decl;
3080#[repr(C)]
3081#[derive(Debug, Copy, Clone)]
3082pub struct _zend_ast_fcc {
3083    pub kind: zend_ast_kind,
3084    pub attr: zend_ast_attr,
3085    pub lineno: u32,
3086    pub fptr__ptr: *mut zend_function,
3087}
3088#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3089const _: () = {
3090    ["Size of _zend_ast_fcc"][::std::mem::size_of::<_zend_ast_fcc>() - 16usize];
3091    ["Alignment of _zend_ast_fcc"][::std::mem::align_of::<_zend_ast_fcc>() - 8usize];
3092    ["Offset of field: _zend_ast_fcc::kind"][::std::mem::offset_of!(_zend_ast_fcc, kind) - 0usize];
3093    ["Offset of field: _zend_ast_fcc::attr"][::std::mem::offset_of!(_zend_ast_fcc, attr) - 2usize];
3094    ["Offset of field: _zend_ast_fcc::lineno"]
3095        [::std::mem::offset_of!(_zend_ast_fcc, lineno) - 4usize];
3096    ["Offset of field: _zend_ast_fcc::fptr__ptr"]
3097        [::std::mem::offset_of!(_zend_ast_fcc, fptr__ptr) - 8usize];
3098};
3099pub type zend_ast_fcc = _zend_ast_fcc;
3100pub type zend_ast_process_t = ::std::option::Option<unsafe extern "C" fn(ast: *mut zend_ast)>;
3101#[repr(C)]
3102#[derive(Debug, Copy, Clone)]
3103pub struct zend_ast_evaluate_ctx {
3104    pub had_side_effects: bool,
3105}
3106#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3107const _: () = {
3108    ["Size of zend_ast_evaluate_ctx"][::std::mem::size_of::<zend_ast_evaluate_ctx>() - 1usize];
3109    ["Alignment of zend_ast_evaluate_ctx"]
3110        [::std::mem::align_of::<zend_ast_evaluate_ctx>() - 1usize];
3111    ["Offset of field: zend_ast_evaluate_ctx::had_side_effects"]
3112        [::std::mem::offset_of!(zend_ast_evaluate_ctx, had_side_effects) - 0usize];
3113};
3114pub type zend_ast_apply_func = ::std::option::Option<
3115    unsafe extern "C" fn(ast_ptr: *mut *mut zend_ast, context: *mut ::std::os::raw::c_void),
3116>;
3117pub type zend_object_iterator = _zend_object_iterator;
3118#[repr(C)]
3119#[derive(Debug, Copy, Clone)]
3120pub struct _zend_object_iterator_funcs {
3121    pub dtor: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
3122    pub valid:
3123        ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator) -> zend_result>,
3124    pub get_current_data:
3125        ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator) -> *mut zval>,
3126    pub get_current_key: ::std::option::Option<
3127        unsafe extern "C" fn(iter: *mut zend_object_iterator, key: *mut zval),
3128    >,
3129    pub move_forward: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
3130    pub rewind: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
3131    pub invalidate_current:
3132        ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
3133    pub get_gc: ::std::option::Option<
3134        unsafe extern "C" fn(
3135            iter: *mut zend_object_iterator,
3136            table: *mut *mut zval,
3137            n: *mut ::std::os::raw::c_int,
3138        ) -> *mut HashTable,
3139    >,
3140}
3141#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3142const _: () = {
3143    ["Size of _zend_object_iterator_funcs"]
3144        [::std::mem::size_of::<_zend_object_iterator_funcs>() - 64usize];
3145    ["Alignment of _zend_object_iterator_funcs"]
3146        [::std::mem::align_of::<_zend_object_iterator_funcs>() - 8usize];
3147    ["Offset of field: _zend_object_iterator_funcs::dtor"]
3148        [::std::mem::offset_of!(_zend_object_iterator_funcs, dtor) - 0usize];
3149    ["Offset of field: _zend_object_iterator_funcs::valid"]
3150        [::std::mem::offset_of!(_zend_object_iterator_funcs, valid) - 8usize];
3151    ["Offset of field: _zend_object_iterator_funcs::get_current_data"]
3152        [::std::mem::offset_of!(_zend_object_iterator_funcs, get_current_data) - 16usize];
3153    ["Offset of field: _zend_object_iterator_funcs::get_current_key"]
3154        [::std::mem::offset_of!(_zend_object_iterator_funcs, get_current_key) - 24usize];
3155    ["Offset of field: _zend_object_iterator_funcs::move_forward"]
3156        [::std::mem::offset_of!(_zend_object_iterator_funcs, move_forward) - 32usize];
3157    ["Offset of field: _zend_object_iterator_funcs::rewind"]
3158        [::std::mem::offset_of!(_zend_object_iterator_funcs, rewind) - 40usize];
3159    ["Offset of field: _zend_object_iterator_funcs::invalidate_current"]
3160        [::std::mem::offset_of!(_zend_object_iterator_funcs, invalidate_current) - 48usize];
3161    ["Offset of field: _zend_object_iterator_funcs::get_gc"]
3162        [::std::mem::offset_of!(_zend_object_iterator_funcs, get_gc) - 56usize];
3163};
3164pub type zend_object_iterator_funcs = _zend_object_iterator_funcs;
3165#[repr(C)]
3166#[derive(Copy, Clone)]
3167pub struct _zend_object_iterator {
3168    pub std: zend_object,
3169    pub data: zval,
3170    pub funcs: *const zend_object_iterator_funcs,
3171    pub index: zend_ulong,
3172}
3173#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3174const _: () = {
3175    ["Size of _zend_object_iterator"][::std::mem::size_of::<_zend_object_iterator>() - 88usize];
3176    ["Alignment of _zend_object_iterator"]
3177        [::std::mem::align_of::<_zend_object_iterator>() - 8usize];
3178    ["Offset of field: _zend_object_iterator::std"]
3179        [::std::mem::offset_of!(_zend_object_iterator, std) - 0usize];
3180    ["Offset of field: _zend_object_iterator::data"]
3181        [::std::mem::offset_of!(_zend_object_iterator, data) - 56usize];
3182    ["Offset of field: _zend_object_iterator::funcs"]
3183        [::std::mem::offset_of!(_zend_object_iterator, funcs) - 72usize];
3184    ["Offset of field: _zend_object_iterator::index"]
3185        [::std::mem::offset_of!(_zend_object_iterator, index) - 80usize];
3186};
3187#[repr(C)]
3188#[derive(Debug, Copy, Clone)]
3189pub struct _zend_class_iterator_funcs {
3190    pub zf_new_iterator: *mut zend_function,
3191    pub zf_valid: *mut zend_function,
3192    pub zf_current: *mut zend_function,
3193    pub zf_key: *mut zend_function,
3194    pub zf_next: *mut zend_function,
3195    pub zf_rewind: *mut zend_function,
3196}
3197#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3198const _: () = {
3199    ["Size of _zend_class_iterator_funcs"]
3200        [::std::mem::size_of::<_zend_class_iterator_funcs>() - 48usize];
3201    ["Alignment of _zend_class_iterator_funcs"]
3202        [::std::mem::align_of::<_zend_class_iterator_funcs>() - 8usize];
3203    ["Offset of field: _zend_class_iterator_funcs::zf_new_iterator"]
3204        [::std::mem::offset_of!(_zend_class_iterator_funcs, zf_new_iterator) - 0usize];
3205    ["Offset of field: _zend_class_iterator_funcs::zf_valid"]
3206        [::std::mem::offset_of!(_zend_class_iterator_funcs, zf_valid) - 8usize];
3207    ["Offset of field: _zend_class_iterator_funcs::zf_current"]
3208        [::std::mem::offset_of!(_zend_class_iterator_funcs, zf_current) - 16usize];
3209    ["Offset of field: _zend_class_iterator_funcs::zf_key"]
3210        [::std::mem::offset_of!(_zend_class_iterator_funcs, zf_key) - 24usize];
3211    ["Offset of field: _zend_class_iterator_funcs::zf_next"]
3212        [::std::mem::offset_of!(_zend_class_iterator_funcs, zf_next) - 32usize];
3213    ["Offset of field: _zend_class_iterator_funcs::zf_rewind"]
3214        [::std::mem::offset_of!(_zend_class_iterator_funcs, zf_rewind) - 40usize];
3215};
3216pub type zend_class_iterator_funcs = _zend_class_iterator_funcs;
3217#[repr(C)]
3218#[derive(Debug, Copy, Clone)]
3219pub struct _zend_class_arrayaccess_funcs {
3220    pub zf_offsetget: *mut zend_function,
3221    pub zf_offsetexists: *mut zend_function,
3222    pub zf_offsetset: *mut zend_function,
3223    pub zf_offsetunset: *mut zend_function,
3224}
3225#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3226const _: () = {
3227    ["Size of _zend_class_arrayaccess_funcs"]
3228        [::std::mem::size_of::<_zend_class_arrayaccess_funcs>() - 32usize];
3229    ["Alignment of _zend_class_arrayaccess_funcs"]
3230        [::std::mem::align_of::<_zend_class_arrayaccess_funcs>() - 8usize];
3231    ["Offset of field: _zend_class_arrayaccess_funcs::zf_offsetget"]
3232        [::std::mem::offset_of!(_zend_class_arrayaccess_funcs, zf_offsetget) - 0usize];
3233    ["Offset of field: _zend_class_arrayaccess_funcs::zf_offsetexists"]
3234        [::std::mem::offset_of!(_zend_class_arrayaccess_funcs, zf_offsetexists) - 8usize];
3235    ["Offset of field: _zend_class_arrayaccess_funcs::zf_offsetset"]
3236        [::std::mem::offset_of!(_zend_class_arrayaccess_funcs, zf_offsetset) - 16usize];
3237    ["Offset of field: _zend_class_arrayaccess_funcs::zf_offsetunset"]
3238        [::std::mem::offset_of!(_zend_class_arrayaccess_funcs, zf_offsetunset) - 24usize];
3239};
3240pub type zend_class_arrayaccess_funcs = _zend_class_arrayaccess_funcs;
3241#[repr(C)]
3242#[derive(Debug, Copy, Clone)]
3243pub struct stat {
3244    pub st_dev: __dev_t,
3245    pub st_ino: __ino_t,
3246    pub st_nlink: __nlink_t,
3247    pub st_mode: __mode_t,
3248    pub st_uid: __uid_t,
3249    pub st_gid: __gid_t,
3250    pub __pad0: ::std::os::raw::c_int,
3251    pub st_rdev: __dev_t,
3252    pub st_size: __off_t,
3253    pub st_blksize: __blksize_t,
3254    pub st_blocks: __blkcnt_t,
3255    pub st_atim: timespec,
3256    pub st_mtim: timespec,
3257    pub st_ctim: timespec,
3258    pub __glibc_reserved: [__syscall_slong_t; 3usize],
3259}
3260#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3261const _: () = {
3262    ["Size of stat"][::std::mem::size_of::<stat>() - 144usize];
3263    ["Alignment of stat"][::std::mem::align_of::<stat>() - 8usize];
3264    ["Offset of field: stat::st_dev"][::std::mem::offset_of!(stat, st_dev) - 0usize];
3265    ["Offset of field: stat::st_ino"][::std::mem::offset_of!(stat, st_ino) - 8usize];
3266    ["Offset of field: stat::st_nlink"][::std::mem::offset_of!(stat, st_nlink) - 16usize];
3267    ["Offset of field: stat::st_mode"][::std::mem::offset_of!(stat, st_mode) - 24usize];
3268    ["Offset of field: stat::st_uid"][::std::mem::offset_of!(stat, st_uid) - 28usize];
3269    ["Offset of field: stat::st_gid"][::std::mem::offset_of!(stat, st_gid) - 32usize];
3270    ["Offset of field: stat::__pad0"][::std::mem::offset_of!(stat, __pad0) - 36usize];
3271    ["Offset of field: stat::st_rdev"][::std::mem::offset_of!(stat, st_rdev) - 40usize];
3272    ["Offset of field: stat::st_size"][::std::mem::offset_of!(stat, st_size) - 48usize];
3273    ["Offset of field: stat::st_blksize"][::std::mem::offset_of!(stat, st_blksize) - 56usize];
3274    ["Offset of field: stat::st_blocks"][::std::mem::offset_of!(stat, st_blocks) - 64usize];
3275    ["Offset of field: stat::st_atim"][::std::mem::offset_of!(stat, st_atim) - 72usize];
3276    ["Offset of field: stat::st_mtim"][::std::mem::offset_of!(stat, st_mtim) - 88usize];
3277    ["Offset of field: stat::st_ctim"][::std::mem::offset_of!(stat, st_ctim) - 104usize];
3278    ["Offset of field: stat::__glibc_reserved"]
3279        [::std::mem::offset_of!(stat, __glibc_reserved) - 120usize];
3280};
3281pub type zend_stream_fsizer_t =
3282    ::std::option::Option<unsafe extern "C" fn(handle: *mut ::std::os::raw::c_void) -> usize>;
3283pub type zend_stream_reader_t = ::std::option::Option<
3284    unsafe extern "C" fn(
3285        handle: *mut ::std::os::raw::c_void,
3286        buf: *mut ::std::os::raw::c_char,
3287        len: usize,
3288    ) -> isize,
3289>;
3290pub type zend_stream_closer_t =
3291    ::std::option::Option<unsafe extern "C" fn(handle: *mut ::std::os::raw::c_void)>;
3292pub mod zend_stream_type {
3293    #[allow(unused_imports)]
3294    use super::*;
3295    pub type Type = ::std::os::raw::c_uint;
3296    pub const ZEND_HANDLE_FILENAME: Type = 0;
3297    pub const ZEND_HANDLE_FP: Type = 1;
3298    pub const ZEND_HANDLE_STREAM: Type = 2;
3299}
3300#[repr(C)]
3301#[derive(Debug, Copy, Clone)]
3302pub struct _zend_stream {
3303    pub handle: *mut ::std::os::raw::c_void,
3304    pub isatty: ::std::os::raw::c_int,
3305    pub reader: zend_stream_reader_t,
3306    pub fsizer: zend_stream_fsizer_t,
3307    pub closer: zend_stream_closer_t,
3308}
3309#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3310const _: () = {
3311    ["Size of _zend_stream"][::std::mem::size_of::<_zend_stream>() - 40usize];
3312    ["Alignment of _zend_stream"][::std::mem::align_of::<_zend_stream>() - 8usize];
3313    ["Offset of field: _zend_stream::handle"]
3314        [::std::mem::offset_of!(_zend_stream, handle) - 0usize];
3315    ["Offset of field: _zend_stream::isatty"]
3316        [::std::mem::offset_of!(_zend_stream, isatty) - 8usize];
3317    ["Offset of field: _zend_stream::reader"]
3318        [::std::mem::offset_of!(_zend_stream, reader) - 16usize];
3319    ["Offset of field: _zend_stream::fsizer"]
3320        [::std::mem::offset_of!(_zend_stream, fsizer) - 24usize];
3321    ["Offset of field: _zend_stream::closer"]
3322        [::std::mem::offset_of!(_zend_stream, closer) - 32usize];
3323};
3324pub type zend_stream = _zend_stream;
3325#[repr(C)]
3326#[derive(Copy, Clone)]
3327pub struct _zend_file_handle {
3328    pub handle: _zend_file_handle__bindgen_ty_1,
3329    pub filename: *mut zend_string,
3330    pub opened_path: *mut zend_string,
3331    pub type_: u8,
3332    pub primary_script: bool,
3333    pub in_list: bool,
3334    pub buf: *mut ::std::os::raw::c_char,
3335    pub len: usize,
3336}
3337#[repr(C)]
3338#[derive(Copy, Clone)]
3339pub union _zend_file_handle__bindgen_ty_1 {
3340    pub fp: *mut FILE,
3341    pub stream: zend_stream,
3342}
3343#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3344const _: () = {
3345    ["Size of _zend_file_handle__bindgen_ty_1"]
3346        [::std::mem::size_of::<_zend_file_handle__bindgen_ty_1>() - 40usize];
3347    ["Alignment of _zend_file_handle__bindgen_ty_1"]
3348        [::std::mem::align_of::<_zend_file_handle__bindgen_ty_1>() - 8usize];
3349    ["Offset of field: _zend_file_handle__bindgen_ty_1::fp"]
3350        [::std::mem::offset_of!(_zend_file_handle__bindgen_ty_1, fp) - 0usize];
3351    ["Offset of field: _zend_file_handle__bindgen_ty_1::stream"]
3352        [::std::mem::offset_of!(_zend_file_handle__bindgen_ty_1, stream) - 0usize];
3353};
3354#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3355const _: () = {
3356    ["Size of _zend_file_handle"][::std::mem::size_of::<_zend_file_handle>() - 80usize];
3357    ["Alignment of _zend_file_handle"][::std::mem::align_of::<_zend_file_handle>() - 8usize];
3358    ["Offset of field: _zend_file_handle::handle"]
3359        [::std::mem::offset_of!(_zend_file_handle, handle) - 0usize];
3360    ["Offset of field: _zend_file_handle::filename"]
3361        [::std::mem::offset_of!(_zend_file_handle, filename) - 40usize];
3362    ["Offset of field: _zend_file_handle::opened_path"]
3363        [::std::mem::offset_of!(_zend_file_handle, opened_path) - 48usize];
3364    ["Offset of field: _zend_file_handle::type_"]
3365        [::std::mem::offset_of!(_zend_file_handle, type_) - 56usize];
3366    ["Offset of field: _zend_file_handle::primary_script"]
3367        [::std::mem::offset_of!(_zend_file_handle, primary_script) - 57usize];
3368    ["Offset of field: _zend_file_handle::in_list"]
3369        [::std::mem::offset_of!(_zend_file_handle, in_list) - 58usize];
3370    ["Offset of field: _zend_file_handle::buf"]
3371        [::std::mem::offset_of!(_zend_file_handle, buf) - 64usize];
3372    ["Offset of field: _zend_file_handle::len"]
3373        [::std::mem::offset_of!(_zend_file_handle, len) - 72usize];
3374};
3375pub type zend_file_handle = _zend_file_handle;
3376pub type zend_stat_t = stat;
3377#[repr(C)]
3378#[derive(Debug, Copy, Clone)]
3379pub struct smart_str {
3380    #[doc = " See smart_str_extract()"]
3381    pub s: *mut zend_string,
3382    pub a: usize,
3383}
3384#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3385const _: () = {
3386    ["Size of smart_str"][::std::mem::size_of::<smart_str>() - 16usize];
3387    ["Alignment of smart_str"][::std::mem::align_of::<smart_str>() - 8usize];
3388    ["Offset of field: smart_str::s"][::std::mem::offset_of!(smart_str, s) - 0usize];
3389    ["Offset of field: smart_str::a"][::std::mem::offset_of!(smart_str, a) - 8usize];
3390};
3391#[repr(C)]
3392#[derive(Debug, Copy, Clone)]
3393pub struct smart_string {
3394    pub c: *mut ::std::os::raw::c_char,
3395    pub len: usize,
3396    pub a: usize,
3397}
3398#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3399const _: () = {
3400    ["Size of smart_string"][::std::mem::size_of::<smart_string>() - 24usize];
3401    ["Alignment of smart_string"][::std::mem::align_of::<smart_string>() - 8usize];
3402    ["Offset of field: smart_string::c"][::std::mem::offset_of!(smart_string, c) - 0usize];
3403    ["Offset of field: smart_string::len"][::std::mem::offset_of!(smart_string, len) - 8usize];
3404    ["Offset of field: smart_string::a"][::std::mem::offset_of!(smart_string, a) - 16usize];
3405};
3406#[repr(C)]
3407#[derive(Copy, Clone)]
3408pub union sigval {
3409    pub sival_int: ::std::os::raw::c_int,
3410    pub sival_ptr: *mut ::std::os::raw::c_void,
3411}
3412#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3413const _: () = {
3414    ["Size of sigval"][::std::mem::size_of::<sigval>() - 8usize];
3415    ["Alignment of sigval"][::std::mem::align_of::<sigval>() - 8usize];
3416    ["Offset of field: sigval::sival_int"][::std::mem::offset_of!(sigval, sival_int) - 0usize];
3417    ["Offset of field: sigval::sival_ptr"][::std::mem::offset_of!(sigval, sival_ptr) - 0usize];
3418};
3419pub type __sigval_t = sigval;
3420#[repr(C)]
3421#[derive(Copy, Clone)]
3422pub struct siginfo_t {
3423    pub si_signo: ::std::os::raw::c_int,
3424    pub si_errno: ::std::os::raw::c_int,
3425    pub si_code: ::std::os::raw::c_int,
3426    pub __pad0: ::std::os::raw::c_int,
3427    pub _sifields: siginfo_t__bindgen_ty_1,
3428}
3429#[repr(C)]
3430#[derive(Copy, Clone)]
3431pub union siginfo_t__bindgen_ty_1 {
3432    pub _pad: [::std::os::raw::c_int; 28usize],
3433    pub _kill: siginfo_t__bindgen_ty_1__bindgen_ty_1,
3434    pub _timer: siginfo_t__bindgen_ty_1__bindgen_ty_2,
3435    pub _rt: siginfo_t__bindgen_ty_1__bindgen_ty_3,
3436    pub _sigchld: siginfo_t__bindgen_ty_1__bindgen_ty_4,
3437    pub _sigfault: siginfo_t__bindgen_ty_1__bindgen_ty_5,
3438    pub _sigpoll: siginfo_t__bindgen_ty_1__bindgen_ty_6,
3439    pub _sigsys: siginfo_t__bindgen_ty_1__bindgen_ty_7,
3440}
3441#[repr(C)]
3442#[derive(Debug, Copy, Clone)]
3443pub struct siginfo_t__bindgen_ty_1__bindgen_ty_1 {
3444    pub si_pid: __pid_t,
3445    pub si_uid: __uid_t,
3446}
3447#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3448const _: () = {
3449    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_1"]
3450        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_1>() - 8usize];
3451    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_1"]
3452        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_1>() - 4usize];
3453    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_1::si_pid"]
3454        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_1, si_pid) - 0usize];
3455    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_1::si_uid"]
3456        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_1, si_uid) - 4usize];
3457};
3458#[repr(C)]
3459#[derive(Copy, Clone)]
3460pub struct siginfo_t__bindgen_ty_1__bindgen_ty_2 {
3461    pub si_tid: ::std::os::raw::c_int,
3462    pub si_overrun: ::std::os::raw::c_int,
3463    pub si_sigval: __sigval_t,
3464}
3465#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3466const _: () = {
3467    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_2"]
3468        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_2>() - 16usize];
3469    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_2"]
3470        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_2>() - 8usize];
3471    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_2::si_tid"]
3472        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_2, si_tid) - 0usize];
3473    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_2::si_overrun"]
3474        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_2, si_overrun) - 4usize];
3475    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_2::si_sigval"]
3476        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_2, si_sigval) - 8usize];
3477};
3478#[repr(C)]
3479#[derive(Copy, Clone)]
3480pub struct siginfo_t__bindgen_ty_1__bindgen_ty_3 {
3481    pub si_pid: __pid_t,
3482    pub si_uid: __uid_t,
3483    pub si_sigval: __sigval_t,
3484}
3485#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3486const _: () = {
3487    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_3"]
3488        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_3>() - 16usize];
3489    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_3"]
3490        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_3>() - 8usize];
3491    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_3::si_pid"]
3492        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_3, si_pid) - 0usize];
3493    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_3::si_uid"]
3494        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_3, si_uid) - 4usize];
3495    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_3::si_sigval"]
3496        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_3, si_sigval) - 8usize];
3497};
3498#[repr(C)]
3499#[derive(Debug, Copy, Clone)]
3500pub struct siginfo_t__bindgen_ty_1__bindgen_ty_4 {
3501    pub si_pid: __pid_t,
3502    pub si_uid: __uid_t,
3503    pub si_status: ::std::os::raw::c_int,
3504    pub si_utime: __clock_t,
3505    pub si_stime: __clock_t,
3506}
3507#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3508const _: () = {
3509    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_4"]
3510        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_4>() - 32usize];
3511    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_4"]
3512        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_4>() - 8usize];
3513    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_4::si_pid"]
3514        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_4, si_pid) - 0usize];
3515    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_4::si_uid"]
3516        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_4, si_uid) - 4usize];
3517    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_4::si_status"]
3518        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_4, si_status) - 8usize];
3519    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_4::si_utime"]
3520        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_4, si_utime) - 16usize];
3521    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_4::si_stime"]
3522        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_4, si_stime) - 24usize];
3523};
3524#[repr(C)]
3525#[derive(Copy, Clone)]
3526pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5 {
3527    pub si_addr: *mut ::std::os::raw::c_void,
3528    pub si_addr_lsb: ::std::os::raw::c_short,
3529    pub _bounds: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1,
3530}
3531#[repr(C)]
3532#[derive(Copy, Clone)]
3533pub union siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1 {
3534    pub _addr_bnd: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
3535    pub _pkey: __uint32_t,
3536}
3537#[repr(C)]
3538#[derive(Debug, Copy, Clone)]
3539pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
3540    pub _lower: *mut ::std::os::raw::c_void,
3541    pub _upper: *mut ::std::os::raw::c_void,
3542}
3543#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3544const _: () = {
3545    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1"]
3546        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1>(
3547        ) - 16usize];
3548    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1"]
3549        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1>(
3550        ) - 8usize];
3551    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1::_lower"]
3552        [::std::mem::offset_of!(
3553            siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
3554            _lower
3555        ) - 0usize];
3556    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1::_upper"]
3557        [::std::mem::offset_of!(
3558            siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
3559            _upper
3560        ) - 8usize];
3561};
3562#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3563const _: () = {
3564    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1"]
3565        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>() - 16usize];
3566    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1"]
3567        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>() - 8usize];
3568    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1::_addr_bnd"][::std::mem::offset_of!(
3569        siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1,
3570        _addr_bnd
3571    ) - 0usize];
3572    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1::_pkey"][::std::mem::offset_of!(
3573        siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1,
3574        _pkey
3575    ) - 0usize];
3576};
3577#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3578const _: () = {
3579    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_5"]
3580        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5>() - 32usize];
3581    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_5"]
3582        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5>() - 8usize];
3583    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5::si_addr"]
3584        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_5, si_addr) - 0usize];
3585    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5::si_addr_lsb"]
3586        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_5, si_addr_lsb) - 8usize];
3587    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5::_bounds"]
3588        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_5, _bounds) - 16usize];
3589};
3590#[repr(C)]
3591#[derive(Debug, Copy, Clone)]
3592pub struct siginfo_t__bindgen_ty_1__bindgen_ty_6 {
3593    pub si_band: ::std::os::raw::c_long,
3594    pub si_fd: ::std::os::raw::c_int,
3595}
3596#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3597const _: () = {
3598    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_6"]
3599        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_6>() - 16usize];
3600    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_6"]
3601        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_6>() - 8usize];
3602    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_6::si_band"]
3603        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_6, si_band) - 0usize];
3604    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_6::si_fd"]
3605        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_6, si_fd) - 8usize];
3606};
3607#[repr(C)]
3608#[derive(Debug, Copy, Clone)]
3609pub struct siginfo_t__bindgen_ty_1__bindgen_ty_7 {
3610    pub _call_addr: *mut ::std::os::raw::c_void,
3611    pub _syscall: ::std::os::raw::c_int,
3612    pub _arch: ::std::os::raw::c_uint,
3613}
3614#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3615const _: () = {
3616    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_7"]
3617        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_7>() - 16usize];
3618    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_7"]
3619        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_7>() - 8usize];
3620    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_7::_call_addr"]
3621        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_7, _call_addr) - 0usize];
3622    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_7::_syscall"]
3623        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_7, _syscall) - 8usize];
3624    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_7::_arch"]
3625        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_7, _arch) - 12usize];
3626};
3627#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3628const _: () = {
3629    ["Size of siginfo_t__bindgen_ty_1"]
3630        [::std::mem::size_of::<siginfo_t__bindgen_ty_1>() - 112usize];
3631    ["Alignment of siginfo_t__bindgen_ty_1"]
3632        [::std::mem::align_of::<siginfo_t__bindgen_ty_1>() - 8usize];
3633    ["Offset of field: siginfo_t__bindgen_ty_1::_pad"]
3634        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _pad) - 0usize];
3635    ["Offset of field: siginfo_t__bindgen_ty_1::_kill"]
3636        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _kill) - 0usize];
3637    ["Offset of field: siginfo_t__bindgen_ty_1::_timer"]
3638        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _timer) - 0usize];
3639    ["Offset of field: siginfo_t__bindgen_ty_1::_rt"]
3640        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _rt) - 0usize];
3641    ["Offset of field: siginfo_t__bindgen_ty_1::_sigchld"]
3642        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _sigchld) - 0usize];
3643    ["Offset of field: siginfo_t__bindgen_ty_1::_sigfault"]
3644        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _sigfault) - 0usize];
3645    ["Offset of field: siginfo_t__bindgen_ty_1::_sigpoll"]
3646        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _sigpoll) - 0usize];
3647    ["Offset of field: siginfo_t__bindgen_ty_1::_sigsys"]
3648        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _sigsys) - 0usize];
3649};
3650#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3651const _: () = {
3652    ["Size of siginfo_t"][::std::mem::size_of::<siginfo_t>() - 128usize];
3653    ["Alignment of siginfo_t"][::std::mem::align_of::<siginfo_t>() - 8usize];
3654    ["Offset of field: siginfo_t::si_signo"][::std::mem::offset_of!(siginfo_t, si_signo) - 0usize];
3655    ["Offset of field: siginfo_t::si_errno"][::std::mem::offset_of!(siginfo_t, si_errno) - 4usize];
3656    ["Offset of field: siginfo_t::si_code"][::std::mem::offset_of!(siginfo_t, si_code) - 8usize];
3657    ["Offset of field: siginfo_t::__pad0"][::std::mem::offset_of!(siginfo_t, __pad0) - 12usize];
3658    ["Offset of field: siginfo_t::_sifields"]
3659        [::std::mem::offset_of!(siginfo_t, _sifields) - 16usize];
3660};
3661pub type __sighandler_t = ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>;
3662#[repr(C)]
3663#[derive(Copy, Clone)]
3664pub struct sigaction {
3665    pub __sigaction_handler: sigaction__bindgen_ty_1,
3666    pub sa_mask: __sigset_t,
3667    pub sa_flags: ::std::os::raw::c_int,
3668    pub sa_restorer: ::std::option::Option<unsafe extern "C" fn()>,
3669}
3670#[repr(C)]
3671#[derive(Copy, Clone)]
3672pub union sigaction__bindgen_ty_1 {
3673    pub sa_handler: __sighandler_t,
3674    pub sa_sigaction: ::std::option::Option<
3675        unsafe extern "C" fn(
3676            arg1: ::std::os::raw::c_int,
3677            arg2: *mut siginfo_t,
3678            arg3: *mut ::std::os::raw::c_void,
3679        ),
3680    >,
3681}
3682#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3683const _: () = {
3684    ["Size of sigaction__bindgen_ty_1"][::std::mem::size_of::<sigaction__bindgen_ty_1>() - 8usize];
3685    ["Alignment of sigaction__bindgen_ty_1"]
3686        [::std::mem::align_of::<sigaction__bindgen_ty_1>() - 8usize];
3687    ["Offset of field: sigaction__bindgen_ty_1::sa_handler"]
3688        [::std::mem::offset_of!(sigaction__bindgen_ty_1, sa_handler) - 0usize];
3689    ["Offset of field: sigaction__bindgen_ty_1::sa_sigaction"]
3690        [::std::mem::offset_of!(sigaction__bindgen_ty_1, sa_sigaction) - 0usize];
3691};
3692#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3693const _: () = {
3694    ["Size of sigaction"][::std::mem::size_of::<sigaction>() - 152usize];
3695    ["Alignment of sigaction"][::std::mem::align_of::<sigaction>() - 8usize];
3696    ["Offset of field: sigaction::__sigaction_handler"]
3697        [::std::mem::offset_of!(sigaction, __sigaction_handler) - 0usize];
3698    ["Offset of field: sigaction::sa_mask"][::std::mem::offset_of!(sigaction, sa_mask) - 8usize];
3699    ["Offset of field: sigaction::sa_flags"]
3700        [::std::mem::offset_of!(sigaction, sa_flags) - 136usize];
3701    ["Offset of field: sigaction::sa_restorer"]
3702        [::std::mem::offset_of!(sigaction, sa_restorer) - 144usize];
3703};
3704#[repr(C)]
3705#[derive(Debug, Copy, Clone)]
3706pub struct _zend_signal_entry_t {
3707    pub flags: ::std::os::raw::c_int,
3708    pub handler: *mut ::std::os::raw::c_void,
3709}
3710#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3711const _: () = {
3712    ["Size of _zend_signal_entry_t"][::std::mem::size_of::<_zend_signal_entry_t>() - 16usize];
3713    ["Alignment of _zend_signal_entry_t"][::std::mem::align_of::<_zend_signal_entry_t>() - 8usize];
3714    ["Offset of field: _zend_signal_entry_t::flags"]
3715        [::std::mem::offset_of!(_zend_signal_entry_t, flags) - 0usize];
3716    ["Offset of field: _zend_signal_entry_t::handler"]
3717        [::std::mem::offset_of!(_zend_signal_entry_t, handler) - 8usize];
3718};
3719pub type zend_signal_entry_t = _zend_signal_entry_t;
3720#[repr(C)]
3721#[derive(Debug, Copy, Clone)]
3722pub struct _zend_signal_t {
3723    pub signo: ::std::os::raw::c_int,
3724    pub siginfo: *mut siginfo_t,
3725    pub context: *mut ::std::os::raw::c_void,
3726}
3727#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3728const _: () = {
3729    ["Size of _zend_signal_t"][::std::mem::size_of::<_zend_signal_t>() - 24usize];
3730    ["Alignment of _zend_signal_t"][::std::mem::align_of::<_zend_signal_t>() - 8usize];
3731    ["Offset of field: _zend_signal_t::signo"]
3732        [::std::mem::offset_of!(_zend_signal_t, signo) - 0usize];
3733    ["Offset of field: _zend_signal_t::siginfo"]
3734        [::std::mem::offset_of!(_zend_signal_t, siginfo) - 8usize];
3735    ["Offset of field: _zend_signal_t::context"]
3736        [::std::mem::offset_of!(_zend_signal_t, context) - 16usize];
3737};
3738pub type zend_signal_t = _zend_signal_t;
3739#[repr(C)]
3740#[derive(Debug, Copy, Clone)]
3741pub struct _zend_signal_queue_t {
3742    pub zend_signal: zend_signal_t,
3743    pub next: *mut _zend_signal_queue_t,
3744}
3745#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3746const _: () = {
3747    ["Size of _zend_signal_queue_t"][::std::mem::size_of::<_zend_signal_queue_t>() - 32usize];
3748    ["Alignment of _zend_signal_queue_t"][::std::mem::align_of::<_zend_signal_queue_t>() - 8usize];
3749    ["Offset of field: _zend_signal_queue_t::zend_signal"]
3750        [::std::mem::offset_of!(_zend_signal_queue_t, zend_signal) - 0usize];
3751    ["Offset of field: _zend_signal_queue_t::next"]
3752        [::std::mem::offset_of!(_zend_signal_queue_t, next) - 24usize];
3753};
3754pub type zend_signal_queue_t = _zend_signal_queue_t;
3755#[repr(C)]
3756#[derive(Debug, Copy, Clone)]
3757pub struct _zend_signal_globals_t {
3758    pub depth: ::std::os::raw::c_int,
3759    pub blocked: ::std::os::raw::c_int,
3760    pub running: ::std::os::raw::c_int,
3761    pub active: ::std::os::raw::c_int,
3762    pub check: bool,
3763    pub reset: bool,
3764    pub handlers: [zend_signal_entry_t; 65usize],
3765    pub pstorage: [zend_signal_queue_t; 64usize],
3766    pub phead: *mut zend_signal_queue_t,
3767    pub ptail: *mut zend_signal_queue_t,
3768    pub pavail: *mut zend_signal_queue_t,
3769}
3770#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3771const _: () = {
3772    ["Size of _zend_signal_globals_t"][::std::mem::size_of::<_zend_signal_globals_t>() - 3136usize];
3773    ["Alignment of _zend_signal_globals_t"]
3774        [::std::mem::align_of::<_zend_signal_globals_t>() - 8usize];
3775    ["Offset of field: _zend_signal_globals_t::depth"]
3776        [::std::mem::offset_of!(_zend_signal_globals_t, depth) - 0usize];
3777    ["Offset of field: _zend_signal_globals_t::blocked"]
3778        [::std::mem::offset_of!(_zend_signal_globals_t, blocked) - 4usize];
3779    ["Offset of field: _zend_signal_globals_t::running"]
3780        [::std::mem::offset_of!(_zend_signal_globals_t, running) - 8usize];
3781    ["Offset of field: _zend_signal_globals_t::active"]
3782        [::std::mem::offset_of!(_zend_signal_globals_t, active) - 12usize];
3783    ["Offset of field: _zend_signal_globals_t::check"]
3784        [::std::mem::offset_of!(_zend_signal_globals_t, check) - 16usize];
3785    ["Offset of field: _zend_signal_globals_t::reset"]
3786        [::std::mem::offset_of!(_zend_signal_globals_t, reset) - 17usize];
3787    ["Offset of field: _zend_signal_globals_t::handlers"]
3788        [::std::mem::offset_of!(_zend_signal_globals_t, handlers) - 24usize];
3789    ["Offset of field: _zend_signal_globals_t::pstorage"]
3790        [::std::mem::offset_of!(_zend_signal_globals_t, pstorage) - 1064usize];
3791    ["Offset of field: _zend_signal_globals_t::phead"]
3792        [::std::mem::offset_of!(_zend_signal_globals_t, phead) - 3112usize];
3793    ["Offset of field: _zend_signal_globals_t::ptail"]
3794        [::std::mem::offset_of!(_zend_signal_globals_t, ptail) - 3120usize];
3795    ["Offset of field: _zend_signal_globals_t::pavail"]
3796        [::std::mem::offset_of!(_zend_signal_globals_t, pavail) - 3128usize];
3797};
3798pub type zend_signal_globals_t = _zend_signal_globals_t;
3799#[repr(C)]
3800#[derive(Debug)]
3801pub struct _zend_serialize_data {
3802    _unused: [u8; 0],
3803}
3804#[repr(C)]
3805#[derive(Debug)]
3806pub struct _zend_unserialize_data {
3807    _unused: [u8; 0],
3808}
3809pub type zend_serialize_data = _zend_serialize_data;
3810pub type zend_unserialize_data = _zend_unserialize_data;
3811#[repr(C)]
3812#[derive(Debug, Copy, Clone)]
3813pub struct _zend_class_name {
3814    pub name: *mut zend_string,
3815    pub lc_name: *mut zend_string,
3816}
3817#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3818const _: () = {
3819    ["Size of _zend_class_name"][::std::mem::size_of::<_zend_class_name>() - 16usize];
3820    ["Alignment of _zend_class_name"][::std::mem::align_of::<_zend_class_name>() - 8usize];
3821    ["Offset of field: _zend_class_name::name"]
3822        [::std::mem::offset_of!(_zend_class_name, name) - 0usize];
3823    ["Offset of field: _zend_class_name::lc_name"]
3824        [::std::mem::offset_of!(_zend_class_name, lc_name) - 8usize];
3825};
3826pub type zend_class_name = _zend_class_name;
3827#[repr(C)]
3828#[derive(Debug, Copy, Clone)]
3829pub struct _zend_trait_method_reference {
3830    pub method_name: *mut zend_string,
3831    pub class_name: *mut zend_string,
3832}
3833#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3834const _: () = {
3835    ["Size of _zend_trait_method_reference"]
3836        [::std::mem::size_of::<_zend_trait_method_reference>() - 16usize];
3837    ["Alignment of _zend_trait_method_reference"]
3838        [::std::mem::align_of::<_zend_trait_method_reference>() - 8usize];
3839    ["Offset of field: _zend_trait_method_reference::method_name"]
3840        [::std::mem::offset_of!(_zend_trait_method_reference, method_name) - 0usize];
3841    ["Offset of field: _zend_trait_method_reference::class_name"]
3842        [::std::mem::offset_of!(_zend_trait_method_reference, class_name) - 8usize];
3843};
3844pub type zend_trait_method_reference = _zend_trait_method_reference;
3845#[repr(C)]
3846#[derive(Debug, Copy, Clone)]
3847pub struct _zend_trait_precedence {
3848    pub trait_method: zend_trait_method_reference,
3849    pub num_excludes: u32,
3850    pub exclude_class_names: [*mut zend_string; 1usize],
3851}
3852#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3853const _: () = {
3854    ["Size of _zend_trait_precedence"][::std::mem::size_of::<_zend_trait_precedence>() - 32usize];
3855    ["Alignment of _zend_trait_precedence"]
3856        [::std::mem::align_of::<_zend_trait_precedence>() - 8usize];
3857    ["Offset of field: _zend_trait_precedence::trait_method"]
3858        [::std::mem::offset_of!(_zend_trait_precedence, trait_method) - 0usize];
3859    ["Offset of field: _zend_trait_precedence::num_excludes"]
3860        [::std::mem::offset_of!(_zend_trait_precedence, num_excludes) - 16usize];
3861    ["Offset of field: _zend_trait_precedence::exclude_class_names"]
3862        [::std::mem::offset_of!(_zend_trait_precedence, exclude_class_names) - 24usize];
3863};
3864pub type zend_trait_precedence = _zend_trait_precedence;
3865#[repr(C)]
3866#[derive(Debug, Copy, Clone)]
3867pub struct _zend_trait_alias {
3868    pub trait_method: zend_trait_method_reference,
3869    #[doc = " name for method to be added"]
3870    pub alias: *mut zend_string,
3871    #[doc = " modifiers to be set on trait method"]
3872    pub modifiers: u32,
3873}
3874#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3875const _: () = {
3876    ["Size of _zend_trait_alias"][::std::mem::size_of::<_zend_trait_alias>() - 32usize];
3877    ["Alignment of _zend_trait_alias"][::std::mem::align_of::<_zend_trait_alias>() - 8usize];
3878    ["Offset of field: _zend_trait_alias::trait_method"]
3879        [::std::mem::offset_of!(_zend_trait_alias, trait_method) - 0usize];
3880    ["Offset of field: _zend_trait_alias::alias"]
3881        [::std::mem::offset_of!(_zend_trait_alias, alias) - 16usize];
3882    ["Offset of field: _zend_trait_alias::modifiers"]
3883        [::std::mem::offset_of!(_zend_trait_alias, modifiers) - 24usize];
3884};
3885pub type zend_trait_alias = _zend_trait_alias;
3886#[repr(C)]
3887#[derive(Debug, Copy, Clone)]
3888pub struct _zend_class_mutable_data {
3889    pub default_properties_table: *mut zval,
3890    pub constants_table: *mut HashTable,
3891    pub ce_flags: u32,
3892    pub backed_enum_table: *mut HashTable,
3893}
3894#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3895const _: () = {
3896    ["Size of _zend_class_mutable_data"]
3897        [::std::mem::size_of::<_zend_class_mutable_data>() - 32usize];
3898    ["Alignment of _zend_class_mutable_data"]
3899        [::std::mem::align_of::<_zend_class_mutable_data>() - 8usize];
3900    ["Offset of field: _zend_class_mutable_data::default_properties_table"]
3901        [::std::mem::offset_of!(_zend_class_mutable_data, default_properties_table) - 0usize];
3902    ["Offset of field: _zend_class_mutable_data::constants_table"]
3903        [::std::mem::offset_of!(_zend_class_mutable_data, constants_table) - 8usize];
3904    ["Offset of field: _zend_class_mutable_data::ce_flags"]
3905        [::std::mem::offset_of!(_zend_class_mutable_data, ce_flags) - 16usize];
3906    ["Offset of field: _zend_class_mutable_data::backed_enum_table"]
3907        [::std::mem::offset_of!(_zend_class_mutable_data, backed_enum_table) - 24usize];
3908};
3909pub type zend_class_mutable_data = _zend_class_mutable_data;
3910#[repr(C)]
3911#[derive(Debug, Copy, Clone)]
3912pub struct _zend_class_dependency {
3913    pub name: *mut zend_string,
3914    pub ce: *mut zend_class_entry,
3915}
3916#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3917const _: () = {
3918    ["Size of _zend_class_dependency"][::std::mem::size_of::<_zend_class_dependency>() - 16usize];
3919    ["Alignment of _zend_class_dependency"]
3920        [::std::mem::align_of::<_zend_class_dependency>() - 8usize];
3921    ["Offset of field: _zend_class_dependency::name"]
3922        [::std::mem::offset_of!(_zend_class_dependency, name) - 0usize];
3923    ["Offset of field: _zend_class_dependency::ce"]
3924        [::std::mem::offset_of!(_zend_class_dependency, ce) - 8usize];
3925};
3926pub type zend_class_dependency = _zend_class_dependency;
3927pub type zend_inheritance_cache_entry = _zend_inheritance_cache_entry;
3928#[repr(C)]
3929#[derive(Debug, Copy, Clone)]
3930pub struct _zend_error_info {
3931    pub type_: ::std::os::raw::c_int,
3932    pub lineno: u32,
3933    pub filename: *mut zend_string,
3934    pub message: *mut zend_string,
3935}
3936#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3937const _: () = {
3938    ["Size of _zend_error_info"][::std::mem::size_of::<_zend_error_info>() - 24usize];
3939    ["Alignment of _zend_error_info"][::std::mem::align_of::<_zend_error_info>() - 8usize];
3940    ["Offset of field: _zend_error_info::type_"]
3941        [::std::mem::offset_of!(_zend_error_info, type_) - 0usize];
3942    ["Offset of field: _zend_error_info::lineno"]
3943        [::std::mem::offset_of!(_zend_error_info, lineno) - 4usize];
3944    ["Offset of field: _zend_error_info::filename"]
3945        [::std::mem::offset_of!(_zend_error_info, filename) - 8usize];
3946    ["Offset of field: _zend_error_info::message"]
3947        [::std::mem::offset_of!(_zend_error_info, message) - 16usize];
3948};
3949pub type zend_error_info = _zend_error_info;
3950#[repr(C)]
3951#[derive(Debug, Copy, Clone)]
3952pub struct _zend_inheritance_cache_entry {
3953    pub next: *mut zend_inheritance_cache_entry,
3954    pub ce: *mut zend_class_entry,
3955    pub parent: *mut zend_class_entry,
3956    pub dependencies: *mut zend_class_dependency,
3957    pub dependencies_count: u32,
3958    pub num_warnings: u32,
3959    pub warnings: *mut *mut zend_error_info,
3960    pub traits_and_interfaces: [*mut zend_class_entry; 1usize],
3961}
3962#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3963const _: () = {
3964    ["Size of _zend_inheritance_cache_entry"]
3965        [::std::mem::size_of::<_zend_inheritance_cache_entry>() - 56usize];
3966    ["Alignment of _zend_inheritance_cache_entry"]
3967        [::std::mem::align_of::<_zend_inheritance_cache_entry>() - 8usize];
3968    ["Offset of field: _zend_inheritance_cache_entry::next"]
3969        [::std::mem::offset_of!(_zend_inheritance_cache_entry, next) - 0usize];
3970    ["Offset of field: _zend_inheritance_cache_entry::ce"]
3971        [::std::mem::offset_of!(_zend_inheritance_cache_entry, ce) - 8usize];
3972    ["Offset of field: _zend_inheritance_cache_entry::parent"]
3973        [::std::mem::offset_of!(_zend_inheritance_cache_entry, parent) - 16usize];
3974    ["Offset of field: _zend_inheritance_cache_entry::dependencies"]
3975        [::std::mem::offset_of!(_zend_inheritance_cache_entry, dependencies) - 24usize];
3976    ["Offset of field: _zend_inheritance_cache_entry::dependencies_count"]
3977        [::std::mem::offset_of!(_zend_inheritance_cache_entry, dependencies_count) - 32usize];
3978    ["Offset of field: _zend_inheritance_cache_entry::num_warnings"]
3979        [::std::mem::offset_of!(_zend_inheritance_cache_entry, num_warnings) - 36usize];
3980    ["Offset of field: _zend_inheritance_cache_entry::warnings"]
3981        [::std::mem::offset_of!(_zend_inheritance_cache_entry, warnings) - 40usize];
3982    ["Offset of field: _zend_inheritance_cache_entry::traits_and_interfaces"]
3983        [::std::mem::offset_of!(_zend_inheritance_cache_entry, traits_and_interfaces) - 48usize];
3984};
3985#[repr(C)]
3986#[derive(Copy, Clone)]
3987pub struct _zend_class_entry {
3988    pub type_: ::std::os::raw::c_char,
3989    pub name: *mut zend_string,
3990    pub __bindgen_anon_1: _zend_class_entry_parent_info,
3991    pub refcount: ::std::os::raw::c_int,
3992    pub ce_flags: u32,
3993    pub default_properties_count: ::std::os::raw::c_int,
3994    pub default_static_members_count: ::std::os::raw::c_int,
3995    pub default_properties_table: *mut zval,
3996    pub default_static_members_table: *mut zval,
3997    pub static_members_table__ptr: *mut zval,
3998    pub function_table: HashTable,
3999    pub properties_info: HashTable,
4000    pub constants_table: HashTable,
4001    pub mutable_data__ptr: *mut zend_class_mutable_data,
4002    pub inheritance_cache: *mut zend_inheritance_cache_entry,
4003    pub properties_info_table: *mut *mut _zend_property_info,
4004    pub constructor: *mut zend_function,
4005    pub destructor: *mut zend_function,
4006    pub clone: *mut zend_function,
4007    pub __get: *mut zend_function,
4008    pub __set: *mut zend_function,
4009    pub __unset: *mut zend_function,
4010    pub __isset: *mut zend_function,
4011    pub __call: *mut zend_function,
4012    pub __callstatic: *mut zend_function,
4013    pub __tostring: *mut zend_function,
4014    pub __debugInfo: *mut zend_function,
4015    pub __serialize: *mut zend_function,
4016    pub __unserialize: *mut zend_function,
4017    pub default_object_handlers: *const zend_object_handlers,
4018    pub iterator_funcs_ptr: *mut zend_class_iterator_funcs,
4019    pub arrayaccess_funcs_ptr: *mut zend_class_arrayaccess_funcs,
4020    pub __bindgen_anon_2: _zend_class_entry_hook,
4021    pub get_iterator: ::std::option::Option<
4022        unsafe extern "C" fn(
4023            ce: *mut zend_class_entry,
4024            object: *mut zval,
4025            by_ref: ::std::os::raw::c_int,
4026        ) -> *mut zend_object_iterator,
4027    >,
4028    pub get_static_method: ::std::option::Option<
4029        unsafe extern "C" fn(
4030            ce: *mut zend_class_entry,
4031            method: *mut zend_string,
4032        ) -> *mut zend_function,
4033    >,
4034    pub serialize: ::std::option::Option<
4035        unsafe extern "C" fn(
4036            object: *mut zval,
4037            buffer: *mut *mut ::std::os::raw::c_uchar,
4038            buf_len: *mut usize,
4039            data: *mut zend_serialize_data,
4040        ) -> ::std::os::raw::c_int,
4041    >,
4042    pub unserialize: ::std::option::Option<
4043        unsafe extern "C" fn(
4044            object: *mut zval,
4045            ce: *mut zend_class_entry,
4046            buf: *const ::std::os::raw::c_uchar,
4047            buf_len: usize,
4048            data: *mut zend_unserialize_data,
4049        ) -> ::std::os::raw::c_int,
4050    >,
4051    pub num_interfaces: u32,
4052    pub num_traits: u32,
4053    pub num_hooked_props: u32,
4054    pub num_hooked_prop_variance_checks: u32,
4055    pub __bindgen_anon_3: _zend_class_entry_interfaces_info,
4056    pub trait_names: *mut zend_class_name,
4057    pub trait_aliases: *mut *mut zend_trait_alias,
4058    pub trait_precedences: *mut *mut zend_trait_precedence,
4059    pub attributes: *mut HashTable,
4060    pub enum_backing_type: u32,
4061    pub backed_enum_table: *mut HashTable,
4062    pub doc_comment: *mut zend_string,
4063    pub info: _zend_class_entry_info,
4064}
4065#[repr(C)]
4066#[derive(Copy, Clone)]
4067pub union _zend_class_entry_parent_info {
4068    pub parent: *mut zend_class_entry,
4069    pub parent_name: *mut zend_string,
4070}
4071#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4072const _: () = {
4073    ["Size of _zend_class_entry_parent_info"]
4074        [::std::mem::size_of::<_zend_class_entry_parent_info>() - 8usize];
4075    ["Alignment of _zend_class_entry_parent_info"]
4076        [::std::mem::align_of::<_zend_class_entry_parent_info>() - 8usize];
4077    ["Offset of field: _zend_class_entry_parent_info::parent"]
4078        [::std::mem::offset_of!(_zend_class_entry_parent_info, parent) - 0usize];
4079    ["Offset of field: _zend_class_entry_parent_info::parent_name"]
4080        [::std::mem::offset_of!(_zend_class_entry_parent_info, parent_name) - 0usize];
4081};
4082#[repr(C)]
4083#[derive(Copy, Clone)]
4084pub union _zend_class_entry_hook {
4085    pub create_object: ::std::option::Option<
4086        unsafe extern "C" fn(class_type: *mut zend_class_entry) -> *mut zend_object,
4087    >,
4088    pub interface_gets_implemented: ::std::option::Option<
4089        unsafe extern "C" fn(
4090            iface: *mut zend_class_entry,
4091            class_type: *mut zend_class_entry,
4092        ) -> ::std::os::raw::c_int,
4093    >,
4094}
4095#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4096const _: () = {
4097    ["Size of _zend_class_entry_hook"][::std::mem::size_of::<_zend_class_entry_hook>() - 8usize];
4098    ["Alignment of _zend_class_entry_hook"]
4099        [::std::mem::align_of::<_zend_class_entry_hook>() - 8usize];
4100    ["Offset of field: _zend_class_entry_hook::create_object"]
4101        [::std::mem::offset_of!(_zend_class_entry_hook, create_object) - 0usize];
4102    ["Offset of field: _zend_class_entry_hook::interface_gets_implemented"]
4103        [::std::mem::offset_of!(_zend_class_entry_hook, interface_gets_implemented) - 0usize];
4104};
4105#[repr(C)]
4106#[derive(Copy, Clone)]
4107pub union _zend_class_entry_interfaces_info {
4108    pub interfaces: *mut *mut zend_class_entry,
4109    pub interface_names: *mut zend_class_name,
4110}
4111#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4112const _: () = {
4113    ["Size of _zend_class_entry_interfaces_info"]
4114        [::std::mem::size_of::<_zend_class_entry_interfaces_info>() - 8usize];
4115    ["Alignment of _zend_class_entry_interfaces_info"]
4116        [::std::mem::align_of::<_zend_class_entry_interfaces_info>() - 8usize];
4117    ["Offset of field: _zend_class_entry_interfaces_info::interfaces"]
4118        [::std::mem::offset_of!(_zend_class_entry_interfaces_info, interfaces) - 0usize];
4119    ["Offset of field: _zend_class_entry_interfaces_info::interface_names"]
4120        [::std::mem::offset_of!(_zend_class_entry_interfaces_info, interface_names) - 0usize];
4121};
4122#[repr(C)]
4123#[derive(Copy, Clone)]
4124pub union _zend_class_entry_info {
4125    pub user: _zend_class_entry__bindgen_ty_4__bindgen_ty_1,
4126    pub internal: _zend_class_entry__bindgen_ty_4__bindgen_ty_2,
4127}
4128#[repr(C)]
4129#[derive(Debug, Copy, Clone)]
4130pub struct _zend_class_entry__bindgen_ty_4__bindgen_ty_1 {
4131    pub filename: *mut zend_string,
4132    pub line_start: u32,
4133    pub line_end: u32,
4134}
4135#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4136const _: () = {
4137    ["Size of _zend_class_entry__bindgen_ty_4__bindgen_ty_1"]
4138        [::std::mem::size_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_1>() - 16usize];
4139    ["Alignment of _zend_class_entry__bindgen_ty_4__bindgen_ty_1"]
4140        [::std::mem::align_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_1>() - 8usize];
4141    ["Offset of field: _zend_class_entry__bindgen_ty_4__bindgen_ty_1::filename"]
4142        [::std::mem::offset_of!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1, filename) - 0usize];
4143    ["Offset of field: _zend_class_entry__bindgen_ty_4__bindgen_ty_1::line_start"][::std::mem::offset_of!(
4144        _zend_class_entry__bindgen_ty_4__bindgen_ty_1,
4145        line_start
4146    ) - 8usize];
4147    ["Offset of field: _zend_class_entry__bindgen_ty_4__bindgen_ty_1::line_end"]
4148        [::std::mem::offset_of!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1, line_end) - 12usize];
4149};
4150#[repr(C)]
4151#[derive(Debug, Copy, Clone)]
4152pub struct _zend_class_entry__bindgen_ty_4__bindgen_ty_2 {
4153    pub builtin_functions: *const _zend_function_entry,
4154    pub module: *mut _zend_module_entry,
4155}
4156#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4157const _: () = {
4158    ["Size of _zend_class_entry__bindgen_ty_4__bindgen_ty_2"]
4159        [::std::mem::size_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_2>() - 16usize];
4160    ["Alignment of _zend_class_entry__bindgen_ty_4__bindgen_ty_2"]
4161        [::std::mem::align_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_2>() - 8usize];
4162    ["Offset of field: _zend_class_entry__bindgen_ty_4__bindgen_ty_2::builtin_functions"][::std::mem::offset_of!(
4163        _zend_class_entry__bindgen_ty_4__bindgen_ty_2,
4164        builtin_functions
4165    )
4166        - 0usize];
4167    ["Offset of field: _zend_class_entry__bindgen_ty_4__bindgen_ty_2::module"]
4168        [::std::mem::offset_of!(_zend_class_entry__bindgen_ty_4__bindgen_ty_2, module) - 8usize];
4169};
4170#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4171const _: () = {
4172    ["Size of _zend_class_entry_info"][::std::mem::size_of::<_zend_class_entry_info>() - 16usize];
4173    ["Alignment of _zend_class_entry_info"]
4174        [::std::mem::align_of::<_zend_class_entry_info>() - 8usize];
4175    ["Offset of field: _zend_class_entry_info::user"]
4176        [::std::mem::offset_of!(_zend_class_entry_info, user) - 0usize];
4177    ["Offset of field: _zend_class_entry_info::internal"]
4178        [::std::mem::offset_of!(_zend_class_entry_info, internal) - 0usize];
4179};
4180#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4181const _: () = {
4182    ["Size of _zend_class_entry"][::std::mem::size_of::<_zend_class_entry>() - 520usize];
4183    ["Alignment of _zend_class_entry"][::std::mem::align_of::<_zend_class_entry>() - 8usize];
4184    ["Offset of field: _zend_class_entry::type_"]
4185        [::std::mem::offset_of!(_zend_class_entry, type_) - 0usize];
4186    ["Offset of field: _zend_class_entry::name"]
4187        [::std::mem::offset_of!(_zend_class_entry, name) - 8usize];
4188    ["Offset of field: _zend_class_entry::refcount"]
4189        [::std::mem::offset_of!(_zend_class_entry, refcount) - 24usize];
4190    ["Offset of field: _zend_class_entry::ce_flags"]
4191        [::std::mem::offset_of!(_zend_class_entry, ce_flags) - 28usize];
4192    ["Offset of field: _zend_class_entry::default_properties_count"]
4193        [::std::mem::offset_of!(_zend_class_entry, default_properties_count) - 32usize];
4194    ["Offset of field: _zend_class_entry::default_static_members_count"]
4195        [::std::mem::offset_of!(_zend_class_entry, default_static_members_count) - 36usize];
4196    ["Offset of field: _zend_class_entry::default_properties_table"]
4197        [::std::mem::offset_of!(_zend_class_entry, default_properties_table) - 40usize];
4198    ["Offset of field: _zend_class_entry::default_static_members_table"]
4199        [::std::mem::offset_of!(_zend_class_entry, default_static_members_table) - 48usize];
4200    ["Offset of field: _zend_class_entry::static_members_table__ptr"]
4201        [::std::mem::offset_of!(_zend_class_entry, static_members_table__ptr) - 56usize];
4202    ["Offset of field: _zend_class_entry::function_table"]
4203        [::std::mem::offset_of!(_zend_class_entry, function_table) - 64usize];
4204    ["Offset of field: _zend_class_entry::properties_info"]
4205        [::std::mem::offset_of!(_zend_class_entry, properties_info) - 120usize];
4206    ["Offset of field: _zend_class_entry::constants_table"]
4207        [::std::mem::offset_of!(_zend_class_entry, constants_table) - 176usize];
4208    ["Offset of field: _zend_class_entry::mutable_data__ptr"]
4209        [::std::mem::offset_of!(_zend_class_entry, mutable_data__ptr) - 232usize];
4210    ["Offset of field: _zend_class_entry::inheritance_cache"]
4211        [::std::mem::offset_of!(_zend_class_entry, inheritance_cache) - 240usize];
4212    ["Offset of field: _zend_class_entry::properties_info_table"]
4213        [::std::mem::offset_of!(_zend_class_entry, properties_info_table) - 248usize];
4214    ["Offset of field: _zend_class_entry::constructor"]
4215        [::std::mem::offset_of!(_zend_class_entry, constructor) - 256usize];
4216    ["Offset of field: _zend_class_entry::destructor"]
4217        [::std::mem::offset_of!(_zend_class_entry, destructor) - 264usize];
4218    ["Offset of field: _zend_class_entry::clone"]
4219        [::std::mem::offset_of!(_zend_class_entry, clone) - 272usize];
4220    ["Offset of field: _zend_class_entry::__get"]
4221        [::std::mem::offset_of!(_zend_class_entry, __get) - 280usize];
4222    ["Offset of field: _zend_class_entry::__set"]
4223        [::std::mem::offset_of!(_zend_class_entry, __set) - 288usize];
4224    ["Offset of field: _zend_class_entry::__unset"]
4225        [::std::mem::offset_of!(_zend_class_entry, __unset) - 296usize];
4226    ["Offset of field: _zend_class_entry::__isset"]
4227        [::std::mem::offset_of!(_zend_class_entry, __isset) - 304usize];
4228    ["Offset of field: _zend_class_entry::__call"]
4229        [::std::mem::offset_of!(_zend_class_entry, __call) - 312usize];
4230    ["Offset of field: _zend_class_entry::__callstatic"]
4231        [::std::mem::offset_of!(_zend_class_entry, __callstatic) - 320usize];
4232    ["Offset of field: _zend_class_entry::__tostring"]
4233        [::std::mem::offset_of!(_zend_class_entry, __tostring) - 328usize];
4234    ["Offset of field: _zend_class_entry::__debugInfo"]
4235        [::std::mem::offset_of!(_zend_class_entry, __debugInfo) - 336usize];
4236    ["Offset of field: _zend_class_entry::__serialize"]
4237        [::std::mem::offset_of!(_zend_class_entry, __serialize) - 344usize];
4238    ["Offset of field: _zend_class_entry::__unserialize"]
4239        [::std::mem::offset_of!(_zend_class_entry, __unserialize) - 352usize];
4240    ["Offset of field: _zend_class_entry::default_object_handlers"]
4241        [::std::mem::offset_of!(_zend_class_entry, default_object_handlers) - 360usize];
4242    ["Offset of field: _zend_class_entry::iterator_funcs_ptr"]
4243        [::std::mem::offset_of!(_zend_class_entry, iterator_funcs_ptr) - 368usize];
4244    ["Offset of field: _zend_class_entry::arrayaccess_funcs_ptr"]
4245        [::std::mem::offset_of!(_zend_class_entry, arrayaccess_funcs_ptr) - 376usize];
4246    ["Offset of field: _zend_class_entry::get_iterator"]
4247        [::std::mem::offset_of!(_zend_class_entry, get_iterator) - 392usize];
4248    ["Offset of field: _zend_class_entry::get_static_method"]
4249        [::std::mem::offset_of!(_zend_class_entry, get_static_method) - 400usize];
4250    ["Offset of field: _zend_class_entry::serialize"]
4251        [::std::mem::offset_of!(_zend_class_entry, serialize) - 408usize];
4252    ["Offset of field: _zend_class_entry::unserialize"]
4253        [::std::mem::offset_of!(_zend_class_entry, unserialize) - 416usize];
4254    ["Offset of field: _zend_class_entry::num_interfaces"]
4255        [::std::mem::offset_of!(_zend_class_entry, num_interfaces) - 424usize];
4256    ["Offset of field: _zend_class_entry::num_traits"]
4257        [::std::mem::offset_of!(_zend_class_entry, num_traits) - 428usize];
4258    ["Offset of field: _zend_class_entry::num_hooked_props"]
4259        [::std::mem::offset_of!(_zend_class_entry, num_hooked_props) - 432usize];
4260    ["Offset of field: _zend_class_entry::num_hooked_prop_variance_checks"]
4261        [::std::mem::offset_of!(_zend_class_entry, num_hooked_prop_variance_checks) - 436usize];
4262    ["Offset of field: _zend_class_entry::trait_names"]
4263        [::std::mem::offset_of!(_zend_class_entry, trait_names) - 448usize];
4264    ["Offset of field: _zend_class_entry::trait_aliases"]
4265        [::std::mem::offset_of!(_zend_class_entry, trait_aliases) - 456usize];
4266    ["Offset of field: _zend_class_entry::trait_precedences"]
4267        [::std::mem::offset_of!(_zend_class_entry, trait_precedences) - 464usize];
4268    ["Offset of field: _zend_class_entry::attributes"]
4269        [::std::mem::offset_of!(_zend_class_entry, attributes) - 472usize];
4270    ["Offset of field: _zend_class_entry::enum_backing_type"]
4271        [::std::mem::offset_of!(_zend_class_entry, enum_backing_type) - 480usize];
4272    ["Offset of field: _zend_class_entry::backed_enum_table"]
4273        [::std::mem::offset_of!(_zend_class_entry, backed_enum_table) - 488usize];
4274    ["Offset of field: _zend_class_entry::doc_comment"]
4275        [::std::mem::offset_of!(_zend_class_entry, doc_comment) - 496usize];
4276    ["Offset of field: _zend_class_entry::info"]
4277        [::std::mem::offset_of!(_zend_class_entry, info) - 504usize];
4278};
4279#[repr(C)]
4280#[repr(align(16))]
4281#[derive(Copy, Clone)]
4282pub union zend_random_bytes_insecure_state {
4283    pub align: zend_max_align_t,
4284    pub opaque: [u64; 5usize],
4285}
4286#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4287const _: () = {
4288    ["Size of zend_random_bytes_insecure_state"]
4289        [::std::mem::size_of::<zend_random_bytes_insecure_state>() - 48usize];
4290    ["Alignment of zend_random_bytes_insecure_state"]
4291        [::std::mem::align_of::<zend_random_bytes_insecure_state>() - 16usize];
4292    ["Offset of field: zend_random_bytes_insecure_state::align"]
4293        [::std::mem::offset_of!(zend_random_bytes_insecure_state, align) - 0usize];
4294    ["Offset of field: zend_random_bytes_insecure_state::opaque"]
4295        [::std::mem::offset_of!(zend_random_bytes_insecure_state, opaque) - 0usize];
4296};
4297#[repr(C)]
4298#[derive(Debug, Copy, Clone)]
4299pub struct _zend_utility_functions {
4300    pub error_function: ::std::option::Option<
4301        unsafe extern "C" fn(
4302            type_: ::std::os::raw::c_int,
4303            error_filename: *mut zend_string,
4304            error_lineno: u32,
4305            message: *mut zend_string,
4306        ),
4307    >,
4308    pub printf_function: ::std::option::Option<
4309        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> usize,
4310    >,
4311    pub write_function: ::std::option::Option<
4312        unsafe extern "C" fn(str_: *const ::std::os::raw::c_char, str_length: usize) -> usize,
4313    >,
4314    pub fopen_function: ::std::option::Option<
4315        unsafe extern "C" fn(
4316            filename: *mut zend_string,
4317            opened_path: *mut *mut zend_string,
4318        ) -> *mut FILE,
4319    >,
4320    pub message_handler: ::std::option::Option<
4321        unsafe extern "C" fn(message: zend_long, data: *const ::std::os::raw::c_void),
4322    >,
4323    pub get_configuration_directive:
4324        ::std::option::Option<unsafe extern "C" fn(name: *mut zend_string) -> *mut zval>,
4325    pub ticks_function: ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>,
4326    pub on_timeout: ::std::option::Option<unsafe extern "C" fn(seconds: ::std::os::raw::c_int)>,
4327    pub stream_open_function:
4328        ::std::option::Option<unsafe extern "C" fn(handle: *mut zend_file_handle) -> zend_result>,
4329    pub printf_to_smart_string_function: ::std::option::Option<
4330        unsafe extern "C" fn(
4331            buf: *mut smart_string,
4332            format: *const ::std::os::raw::c_char,
4333            ap: *mut __va_list_tag,
4334        ),
4335    >,
4336    pub printf_to_smart_str_function: ::std::option::Option<
4337        unsafe extern "C" fn(
4338            buf: *mut smart_str,
4339            format: *const ::std::os::raw::c_char,
4340            ap: *mut __va_list_tag,
4341        ),
4342    >,
4343    pub getenv_function: ::std::option::Option<
4344        unsafe extern "C" fn(
4345            name: *const ::std::os::raw::c_char,
4346            name_len: usize,
4347        ) -> *mut ::std::os::raw::c_char,
4348    >,
4349    pub resolve_path_function:
4350        ::std::option::Option<unsafe extern "C" fn(filename: *mut zend_string) -> *mut zend_string>,
4351    pub random_bytes_function: ::std::option::Option<
4352        unsafe extern "C" fn(
4353            bytes: *mut ::std::os::raw::c_void,
4354            size: usize,
4355            errstr: *mut ::std::os::raw::c_char,
4356            errstr_size: usize,
4357        ) -> zend_result,
4358    >,
4359    pub random_bytes_insecure_function: ::std::option::Option<
4360        unsafe extern "C" fn(
4361            state: *mut zend_random_bytes_insecure_state,
4362            bytes: *mut ::std::os::raw::c_void,
4363            size: usize,
4364        ),
4365    >,
4366}
4367#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4368const _: () = {
4369    ["Size of _zend_utility_functions"]
4370        [::std::mem::size_of::<_zend_utility_functions>() - 120usize];
4371    ["Alignment of _zend_utility_functions"]
4372        [::std::mem::align_of::<_zend_utility_functions>() - 8usize];
4373    ["Offset of field: _zend_utility_functions::error_function"]
4374        [::std::mem::offset_of!(_zend_utility_functions, error_function) - 0usize];
4375    ["Offset of field: _zend_utility_functions::printf_function"]
4376        [::std::mem::offset_of!(_zend_utility_functions, printf_function) - 8usize];
4377    ["Offset of field: _zend_utility_functions::write_function"]
4378        [::std::mem::offset_of!(_zend_utility_functions, write_function) - 16usize];
4379    ["Offset of field: _zend_utility_functions::fopen_function"]
4380        [::std::mem::offset_of!(_zend_utility_functions, fopen_function) - 24usize];
4381    ["Offset of field: _zend_utility_functions::message_handler"]
4382        [::std::mem::offset_of!(_zend_utility_functions, message_handler) - 32usize];
4383    ["Offset of field: _zend_utility_functions::get_configuration_directive"]
4384        [::std::mem::offset_of!(_zend_utility_functions, get_configuration_directive) - 40usize];
4385    ["Offset of field: _zend_utility_functions::ticks_function"]
4386        [::std::mem::offset_of!(_zend_utility_functions, ticks_function) - 48usize];
4387    ["Offset of field: _zend_utility_functions::on_timeout"]
4388        [::std::mem::offset_of!(_zend_utility_functions, on_timeout) - 56usize];
4389    ["Offset of field: _zend_utility_functions::stream_open_function"]
4390        [::std::mem::offset_of!(_zend_utility_functions, stream_open_function) - 64usize];
4391    ["Offset of field: _zend_utility_functions::printf_to_smart_string_function"][::std::mem::offset_of!(
4392        _zend_utility_functions,
4393        printf_to_smart_string_function
4394    ) - 72usize];
4395    ["Offset of field: _zend_utility_functions::printf_to_smart_str_function"]
4396        [::std::mem::offset_of!(_zend_utility_functions, printf_to_smart_str_function) - 80usize];
4397    ["Offset of field: _zend_utility_functions::getenv_function"]
4398        [::std::mem::offset_of!(_zend_utility_functions, getenv_function) - 88usize];
4399    ["Offset of field: _zend_utility_functions::resolve_path_function"]
4400        [::std::mem::offset_of!(_zend_utility_functions, resolve_path_function) - 96usize];
4401    ["Offset of field: _zend_utility_functions::random_bytes_function"]
4402        [::std::mem::offset_of!(_zend_utility_functions, random_bytes_function) - 104usize];
4403    ["Offset of field: _zend_utility_functions::random_bytes_insecure_function"][::std::mem::offset_of!(
4404        _zend_utility_functions,
4405        random_bytes_insecure_function
4406    ) - 112usize];
4407};
4408pub type zend_utility_functions = _zend_utility_functions;
4409#[repr(C)]
4410#[derive(Debug, Copy, Clone)]
4411pub struct _zend_utility_values {
4412    pub html_errors: bool,
4413}
4414#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4415const _: () = {
4416    ["Size of _zend_utility_values"][::std::mem::size_of::<_zend_utility_values>() - 1usize];
4417    ["Alignment of _zend_utility_values"][::std::mem::align_of::<_zend_utility_values>() - 1usize];
4418    ["Offset of field: _zend_utility_values::html_errors"]
4419        [::std::mem::offset_of!(_zend_utility_values, html_errors) - 0usize];
4420};
4421pub type zend_utility_values = _zend_utility_values;
4422pub type zend_write_func_t = ::std::option::Option<
4423    unsafe extern "C" fn(str_: *const ::std::os::raw::c_char, str_length: usize) -> usize,
4424>;
4425pub mod zend_error_handling_t {
4426    #[allow(unused_imports)]
4427    use super::*;
4428    pub type Type = ::std::os::raw::c_uint;
4429    pub const EH_NORMAL: Type = 0;
4430    pub const EH_THROW: Type = 1;
4431}
4432#[repr(C)]
4433#[derive(Debug, Copy, Clone)]
4434pub struct zend_error_handling {
4435    pub handling: zend_error_handling_t::Type,
4436    pub exception: *mut zend_class_entry,
4437}
4438#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4439const _: () = {
4440    ["Size of zend_error_handling"][::std::mem::size_of::<zend_error_handling>() - 16usize];
4441    ["Alignment of zend_error_handling"][::std::mem::align_of::<zend_error_handling>() - 8usize];
4442    ["Offset of field: zend_error_handling::handling"]
4443        [::std::mem::offset_of!(zend_error_handling, handling) - 0usize];
4444    ["Offset of field: zend_error_handling::exception"]
4445        [::std::mem::offset_of!(zend_error_handling, exception) - 8usize];
4446};
4447pub mod zend_property_hook_kind {
4448    #[allow(unused_imports)]
4449    use super::*;
4450    pub type Type = ::std::os::raw::c_uint;
4451    pub const ZEND_PROPERTY_HOOK_GET: Type = 0;
4452    pub const ZEND_PROPERTY_HOOK_SET: Type = 1;
4453}
4454pub type zend_lazy_object_flags_t = u8;
4455#[repr(C)]
4456#[derive(Copy, Clone)]
4457pub struct _zend_lazy_objects_store {
4458    pub infos: HashTable,
4459}
4460#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4461const _: () = {
4462    ["Size of _zend_lazy_objects_store"]
4463        [::std::mem::size_of::<_zend_lazy_objects_store>() - 56usize];
4464    ["Alignment of _zend_lazy_objects_store"]
4465        [::std::mem::align_of::<_zend_lazy_objects_store>() - 8usize];
4466    ["Offset of field: _zend_lazy_objects_store::infos"]
4467        [::std::mem::offset_of!(_zend_lazy_objects_store, infos) - 0usize];
4468};
4469pub type zend_lazy_objects_store = _zend_lazy_objects_store;
4470pub type zend_property_info = _zend_property_info;
4471pub type zend_fcall_info = _zend_fcall_info;
4472pub type zend_fcall_info_cache = _zend_fcall_info_cache;
4473pub type zend_object_read_property_t = ::std::option::Option<
4474    unsafe extern "C" fn(
4475        object: *mut zend_object,
4476        member: *mut zend_string,
4477        type_: ::std::os::raw::c_int,
4478        cache_slot: *mut *mut ::std::os::raw::c_void,
4479        rv: *mut zval,
4480    ) -> *mut zval,
4481>;
4482pub type zend_object_read_dimension_t = ::std::option::Option<
4483    unsafe extern "C" fn(
4484        object: *mut zend_object,
4485        offset: *mut zval,
4486        type_: ::std::os::raw::c_int,
4487        rv: *mut zval,
4488    ) -> *mut zval,
4489>;
4490pub type zend_object_write_property_t = ::std::option::Option<
4491    unsafe extern "C" fn(
4492        object: *mut zend_object,
4493        member: *mut zend_string,
4494        value: *mut zval,
4495        cache_slot: *mut *mut ::std::os::raw::c_void,
4496    ) -> *mut zval,
4497>;
4498pub type zend_object_write_dimension_t = ::std::option::Option<
4499    unsafe extern "C" fn(object: *mut zend_object, offset: *mut zval, value: *mut zval),
4500>;
4501pub type zend_object_get_property_ptr_ptr_t = ::std::option::Option<
4502    unsafe extern "C" fn(
4503        object: *mut zend_object,
4504        member: *mut zend_string,
4505        type_: ::std::os::raw::c_int,
4506        cache_slot: *mut *mut ::std::os::raw::c_void,
4507    ) -> *mut zval,
4508>;
4509pub type zend_object_has_property_t = ::std::option::Option<
4510    unsafe extern "C" fn(
4511        object: *mut zend_object,
4512        member: *mut zend_string,
4513        has_set_exists: ::std::os::raw::c_int,
4514        cache_slot: *mut *mut ::std::os::raw::c_void,
4515    ) -> ::std::os::raw::c_int,
4516>;
4517pub type zend_object_has_dimension_t = ::std::option::Option<
4518    unsafe extern "C" fn(
4519        object: *mut zend_object,
4520        member: *mut zval,
4521        check_empty: ::std::os::raw::c_int,
4522    ) -> ::std::os::raw::c_int,
4523>;
4524pub type zend_object_unset_property_t = ::std::option::Option<
4525    unsafe extern "C" fn(
4526        object: *mut zend_object,
4527        member: *mut zend_string,
4528        cache_slot: *mut *mut ::std::os::raw::c_void,
4529    ),
4530>;
4531pub type zend_object_unset_dimension_t =
4532    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object, offset: *mut zval)>;
4533pub type zend_object_get_properties_t =
4534    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut HashTable>;
4535pub type zend_object_get_debug_info_t = ::std::option::Option<
4536    unsafe extern "C" fn(
4537        object: *mut zend_object,
4538        is_temp: *mut ::std::os::raw::c_int,
4539    ) -> *mut HashTable,
4540>;
4541pub mod _zend_prop_purpose {
4542    #[allow(unused_imports)]
4543    use super::*;
4544    pub type Type = ::std::os::raw::c_uint;
4545    pub const ZEND_PROP_PURPOSE_DEBUG: Type = 0;
4546    pub const ZEND_PROP_PURPOSE_ARRAY_CAST: Type = 1;
4547    pub const ZEND_PROP_PURPOSE_SERIALIZE: Type = 2;
4548    pub const ZEND_PROP_PURPOSE_VAR_EXPORT: Type = 3;
4549    pub const ZEND_PROP_PURPOSE_JSON: Type = 4;
4550    pub const ZEND_PROP_PURPOSE_GET_OBJECT_VARS: Type = 5;
4551    pub const _ZEND_PROP_PURPOSE_NON_EXHAUSTIVE_ENUM: Type = 6;
4552}
4553pub use self::_zend_prop_purpose::Type as zend_prop_purpose;
4554pub type zend_object_get_properties_for_t = ::std::option::Option<
4555    unsafe extern "C" fn(object: *mut zend_object, purpose: zend_prop_purpose) -> *mut zend_array,
4556>;
4557pub type zend_object_get_method_t = ::std::option::Option<
4558    unsafe extern "C" fn(
4559        object: *mut *mut zend_object,
4560        method: *mut zend_string,
4561        key: *const zval,
4562    ) -> *mut zend_function,
4563>;
4564pub type zend_object_get_constructor_t =
4565    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut zend_function>;
4566pub type zend_object_free_obj_t =
4567    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
4568pub type zend_object_dtor_obj_t =
4569    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
4570pub type zend_object_clone_obj_t =
4571    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut zend_object>;
4572pub type zend_object_clone_obj_with_t = ::std::option::Option<
4573    unsafe extern "C" fn(
4574        object: *mut zend_object,
4575        scope: *const zend_class_entry,
4576        properties: *const HashTable,
4577    ) -> *mut zend_object,
4578>;
4579pub type zend_object_get_class_name_t =
4580    ::std::option::Option<unsafe extern "C" fn(object: *const zend_object) -> *mut zend_string>;
4581pub type zend_object_compare_t = ::std::option::Option<
4582    unsafe extern "C" fn(object1: *mut zval, object2: *mut zval) -> ::std::os::raw::c_int,
4583>;
4584pub type zend_object_cast_t = ::std::option::Option<
4585    unsafe extern "C" fn(
4586        readobj: *mut zend_object,
4587        retval: *mut zval,
4588        type_: ::std::os::raw::c_int,
4589    ) -> zend_result,
4590>;
4591pub type zend_object_count_elements_t = ::std::option::Option<
4592    unsafe extern "C" fn(object: *mut zend_object, count: *mut zend_long) -> zend_result,
4593>;
4594pub type zend_object_get_closure_t = ::std::option::Option<
4595    unsafe extern "C" fn(
4596        obj: *mut zend_object,
4597        ce_ptr: *mut *mut zend_class_entry,
4598        fptr_ptr: *mut *mut zend_function,
4599        obj_ptr: *mut *mut zend_object,
4600        check_only: bool,
4601    ) -> zend_result,
4602>;
4603pub type zend_object_get_gc_t = ::std::option::Option<
4604    unsafe extern "C" fn(
4605        object: *mut zend_object,
4606        table: *mut *mut zval,
4607        n: *mut ::std::os::raw::c_int,
4608    ) -> *mut HashTable,
4609>;
4610pub type zend_object_do_operation_t = ::std::option::Option<
4611    unsafe extern "C" fn(
4612        opcode: u8,
4613        result: *mut zval,
4614        op1: *mut zval,
4615        op2: *mut zval,
4616    ) -> zend_result,
4617>;
4618#[repr(C)]
4619#[derive(Debug, Copy, Clone)]
4620pub struct _zend_object_handlers {
4621    pub offset: ::std::os::raw::c_int,
4622    pub free_obj: zend_object_free_obj_t,
4623    pub dtor_obj: zend_object_dtor_obj_t,
4624    pub clone_obj: zend_object_clone_obj_t,
4625    pub clone_obj_with: zend_object_clone_obj_with_t,
4626    pub read_property: zend_object_read_property_t,
4627    pub write_property: zend_object_write_property_t,
4628    pub read_dimension: zend_object_read_dimension_t,
4629    pub write_dimension: zend_object_write_dimension_t,
4630    pub get_property_ptr_ptr: zend_object_get_property_ptr_ptr_t,
4631    pub has_property: zend_object_has_property_t,
4632    pub unset_property: zend_object_unset_property_t,
4633    pub has_dimension: zend_object_has_dimension_t,
4634    pub unset_dimension: zend_object_unset_dimension_t,
4635    pub get_properties: zend_object_get_properties_t,
4636    pub get_method: zend_object_get_method_t,
4637    pub get_constructor: zend_object_get_constructor_t,
4638    pub get_class_name: zend_object_get_class_name_t,
4639    pub cast_object: zend_object_cast_t,
4640    pub count_elements: zend_object_count_elements_t,
4641    pub get_debug_info: zend_object_get_debug_info_t,
4642    pub get_closure: zend_object_get_closure_t,
4643    pub get_gc: zend_object_get_gc_t,
4644    pub do_operation: zend_object_do_operation_t,
4645    pub compare: zend_object_compare_t,
4646    pub get_properties_for: zend_object_get_properties_for_t,
4647}
4648#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4649const _: () = {
4650    ["Size of _zend_object_handlers"][::std::mem::size_of::<_zend_object_handlers>() - 208usize];
4651    ["Alignment of _zend_object_handlers"]
4652        [::std::mem::align_of::<_zend_object_handlers>() - 8usize];
4653    ["Offset of field: _zend_object_handlers::offset"]
4654        [::std::mem::offset_of!(_zend_object_handlers, offset) - 0usize];
4655    ["Offset of field: _zend_object_handlers::free_obj"]
4656        [::std::mem::offset_of!(_zend_object_handlers, free_obj) - 8usize];
4657    ["Offset of field: _zend_object_handlers::dtor_obj"]
4658        [::std::mem::offset_of!(_zend_object_handlers, dtor_obj) - 16usize];
4659    ["Offset of field: _zend_object_handlers::clone_obj"]
4660        [::std::mem::offset_of!(_zend_object_handlers, clone_obj) - 24usize];
4661    ["Offset of field: _zend_object_handlers::clone_obj_with"]
4662        [::std::mem::offset_of!(_zend_object_handlers, clone_obj_with) - 32usize];
4663    ["Offset of field: _zend_object_handlers::read_property"]
4664        [::std::mem::offset_of!(_zend_object_handlers, read_property) - 40usize];
4665    ["Offset of field: _zend_object_handlers::write_property"]
4666        [::std::mem::offset_of!(_zend_object_handlers, write_property) - 48usize];
4667    ["Offset of field: _zend_object_handlers::read_dimension"]
4668        [::std::mem::offset_of!(_zend_object_handlers, read_dimension) - 56usize];
4669    ["Offset of field: _zend_object_handlers::write_dimension"]
4670        [::std::mem::offset_of!(_zend_object_handlers, write_dimension) - 64usize];
4671    ["Offset of field: _zend_object_handlers::get_property_ptr_ptr"]
4672        [::std::mem::offset_of!(_zend_object_handlers, get_property_ptr_ptr) - 72usize];
4673    ["Offset of field: _zend_object_handlers::has_property"]
4674        [::std::mem::offset_of!(_zend_object_handlers, has_property) - 80usize];
4675    ["Offset of field: _zend_object_handlers::unset_property"]
4676        [::std::mem::offset_of!(_zend_object_handlers, unset_property) - 88usize];
4677    ["Offset of field: _zend_object_handlers::has_dimension"]
4678        [::std::mem::offset_of!(_zend_object_handlers, has_dimension) - 96usize];
4679    ["Offset of field: _zend_object_handlers::unset_dimension"]
4680        [::std::mem::offset_of!(_zend_object_handlers, unset_dimension) - 104usize];
4681    ["Offset of field: _zend_object_handlers::get_properties"]
4682        [::std::mem::offset_of!(_zend_object_handlers, get_properties) - 112usize];
4683    ["Offset of field: _zend_object_handlers::get_method"]
4684        [::std::mem::offset_of!(_zend_object_handlers, get_method) - 120usize];
4685    ["Offset of field: _zend_object_handlers::get_constructor"]
4686        [::std::mem::offset_of!(_zend_object_handlers, get_constructor) - 128usize];
4687    ["Offset of field: _zend_object_handlers::get_class_name"]
4688        [::std::mem::offset_of!(_zend_object_handlers, get_class_name) - 136usize];
4689    ["Offset of field: _zend_object_handlers::cast_object"]
4690        [::std::mem::offset_of!(_zend_object_handlers, cast_object) - 144usize];
4691    ["Offset of field: _zend_object_handlers::count_elements"]
4692        [::std::mem::offset_of!(_zend_object_handlers, count_elements) - 152usize];
4693    ["Offset of field: _zend_object_handlers::get_debug_info"]
4694        [::std::mem::offset_of!(_zend_object_handlers, get_debug_info) - 160usize];
4695    ["Offset of field: _zend_object_handlers::get_closure"]
4696        [::std::mem::offset_of!(_zend_object_handlers, get_closure) - 168usize];
4697    ["Offset of field: _zend_object_handlers::get_gc"]
4698        [::std::mem::offset_of!(_zend_object_handlers, get_gc) - 176usize];
4699    ["Offset of field: _zend_object_handlers::do_operation"]
4700        [::std::mem::offset_of!(_zend_object_handlers, do_operation) - 184usize];
4701    ["Offset of field: _zend_object_handlers::compare"]
4702        [::std::mem::offset_of!(_zend_object_handlers, compare) - 192usize];
4703    ["Offset of field: _zend_object_handlers::get_properties_for"]
4704        [::std::mem::offset_of!(_zend_object_handlers, get_properties_for) - 200usize];
4705};
4706#[repr(C)]
4707#[derive(Debug)]
4708pub struct _zend_strtod_bigint {
4709    _unused: [u8; 0],
4710}
4711pub type zend_strtod_bigint = _zend_strtod_bigint;
4712#[repr(C)]
4713#[derive(Debug, Copy, Clone)]
4714pub struct _zend_strtod_state {
4715    pub freelist: [*mut zend_strtod_bigint; 8usize],
4716    pub p5s: *mut zend_strtod_bigint,
4717    pub result: *mut ::std::os::raw::c_char,
4718}
4719#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4720const _: () = {
4721    ["Size of _zend_strtod_state"][::std::mem::size_of::<_zend_strtod_state>() - 80usize];
4722    ["Alignment of _zend_strtod_state"][::std::mem::align_of::<_zend_strtod_state>() - 8usize];
4723    ["Offset of field: _zend_strtod_state::freelist"]
4724        [::std::mem::offset_of!(_zend_strtod_state, freelist) - 0usize];
4725    ["Offset of field: _zend_strtod_state::p5s"]
4726        [::std::mem::offset_of!(_zend_strtod_state, p5s) - 64usize];
4727    ["Offset of field: _zend_strtod_state::result"]
4728        [::std::mem::offset_of!(_zend_strtod_state, result) - 72usize];
4729};
4730pub type zend_strtod_state = _zend_strtod_state;
4731pub type zend_vm_opcode_handler_t = *const ::std::os::raw::c_void;
4732pub type zend_vm_opcode_handler_func_t = ::std::option::Option<unsafe extern "C" fn()>;
4733pub type zend_op = _zend_op;
4734pub type zend_frameless_function_0 =
4735    ::std::option::Option<unsafe extern "C" fn(return_value: *mut zval)>;
4736pub type zend_frameless_function_1 =
4737    ::std::option::Option<unsafe extern "C" fn(return_value: *mut zval, op1: *mut zval)>;
4738pub type zend_frameless_function_2 = ::std::option::Option<
4739    unsafe extern "C" fn(return_value: *mut zval, op1: *mut zval, op2: *mut zval),
4740>;
4741pub type zend_frameless_function_3 = ::std::option::Option<
4742    unsafe extern "C" fn(return_value: *mut zval, op1: *mut zval, op2: *mut zval, op3: *mut zval),
4743>;
4744#[repr(C)]
4745#[derive(Debug, Copy, Clone)]
4746pub struct zend_frameless_function_info {
4747    pub handler: *mut ::std::os::raw::c_void,
4748    pub num_args: u32,
4749}
4750#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4751const _: () = {
4752    ["Size of zend_frameless_function_info"]
4753        [::std::mem::size_of::<zend_frameless_function_info>() - 16usize];
4754    ["Alignment of zend_frameless_function_info"]
4755        [::std::mem::align_of::<zend_frameless_function_info>() - 8usize];
4756    ["Offset of field: zend_frameless_function_info::handler"]
4757        [::std::mem::offset_of!(zend_frameless_function_info, handler) - 0usize];
4758    ["Offset of field: zend_frameless_function_info::num_args"]
4759        [::std::mem::offset_of!(zend_frameless_function_info, num_args) - 8usize];
4760};
4761pub mod zend_jmp_fl_result {
4762    #[allow(unused_imports)]
4763    use super::*;
4764    pub type Type = ::std::os::raw::c_uint;
4765    pub const ZEND_JMP_FL_UNPRIMED: Type = 0;
4766    pub const ZEND_JMP_FL_MISS: Type = 1;
4767    pub const ZEND_JMP_FL_HIT: Type = 2;
4768}
4769#[repr(C)]
4770#[derive(Copy, Clone)]
4771pub union _znode_op {
4772    pub constant: u32,
4773    pub var: u32,
4774    pub num: u32,
4775    pub opline_num: u32,
4776    pub jmp_offset: u32,
4777}
4778#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4779const _: () = {
4780    ["Size of _znode_op"][::std::mem::size_of::<_znode_op>() - 4usize];
4781    ["Alignment of _znode_op"][::std::mem::align_of::<_znode_op>() - 4usize];
4782    ["Offset of field: _znode_op::constant"][::std::mem::offset_of!(_znode_op, constant) - 0usize];
4783    ["Offset of field: _znode_op::var"][::std::mem::offset_of!(_znode_op, var) - 0usize];
4784    ["Offset of field: _znode_op::num"][::std::mem::offset_of!(_znode_op, num) - 0usize];
4785    ["Offset of field: _znode_op::opline_num"]
4786        [::std::mem::offset_of!(_znode_op, opline_num) - 0usize];
4787    ["Offset of field: _znode_op::jmp_offset"]
4788        [::std::mem::offset_of!(_znode_op, jmp_offset) - 0usize];
4789};
4790pub type znode_op = _znode_op;
4791#[repr(C)]
4792#[derive(Copy, Clone)]
4793pub struct _znode {
4794    pub op_type: u8,
4795    pub flag: u8,
4796    pub u: _znode__bindgen_ty_1,
4797}
4798#[repr(C)]
4799#[derive(Copy, Clone)]
4800pub union _znode__bindgen_ty_1 {
4801    pub op: znode_op,
4802    pub constant: zval,
4803}
4804#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4805const _: () = {
4806    ["Size of _znode__bindgen_ty_1"][::std::mem::size_of::<_znode__bindgen_ty_1>() - 16usize];
4807    ["Alignment of _znode__bindgen_ty_1"][::std::mem::align_of::<_znode__bindgen_ty_1>() - 8usize];
4808    ["Offset of field: _znode__bindgen_ty_1::op"]
4809        [::std::mem::offset_of!(_znode__bindgen_ty_1, op) - 0usize];
4810    ["Offset of field: _znode__bindgen_ty_1::constant"]
4811        [::std::mem::offset_of!(_znode__bindgen_ty_1, constant) - 0usize];
4812};
4813#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4814const _: () = {
4815    ["Size of _znode"][::std::mem::size_of::<_znode>() - 24usize];
4816    ["Alignment of _znode"][::std::mem::align_of::<_znode>() - 8usize];
4817    ["Offset of field: _znode::op_type"][::std::mem::offset_of!(_znode, op_type) - 0usize];
4818    ["Offset of field: _znode::flag"][::std::mem::offset_of!(_znode, flag) - 1usize];
4819    ["Offset of field: _znode::u"][::std::mem::offset_of!(_znode, u) - 8usize];
4820};
4821pub type znode = _znode;
4822#[repr(C)]
4823#[derive(Copy, Clone)]
4824pub struct _zend_ast_znode {
4825    pub kind: zend_ast_kind,
4826    pub attr: zend_ast_attr,
4827    pub lineno: u32,
4828    pub node: znode,
4829}
4830#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4831const _: () = {
4832    ["Size of _zend_ast_znode"][::std::mem::size_of::<_zend_ast_znode>() - 32usize];
4833    ["Alignment of _zend_ast_znode"][::std::mem::align_of::<_zend_ast_znode>() - 8usize];
4834    ["Offset of field: _zend_ast_znode::kind"]
4835        [::std::mem::offset_of!(_zend_ast_znode, kind) - 0usize];
4836    ["Offset of field: _zend_ast_znode::attr"]
4837        [::std::mem::offset_of!(_zend_ast_znode, attr) - 2usize];
4838    ["Offset of field: _zend_ast_znode::lineno"]
4839        [::std::mem::offset_of!(_zend_ast_znode, lineno) - 4usize];
4840    ["Offset of field: _zend_ast_znode::node"]
4841        [::std::mem::offset_of!(_zend_ast_znode, node) - 8usize];
4842};
4843pub type zend_ast_znode = _zend_ast_znode;
4844#[repr(C)]
4845#[derive(Debug, Copy, Clone)]
4846pub struct _zend_declarables {
4847    pub ticks: zend_long,
4848}
4849#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4850const _: () = {
4851    ["Size of _zend_declarables"][::std::mem::size_of::<_zend_declarables>() - 8usize];
4852    ["Alignment of _zend_declarables"][::std::mem::align_of::<_zend_declarables>() - 8usize];
4853    ["Offset of field: _zend_declarables::ticks"]
4854        [::std::mem::offset_of!(_zend_declarables, ticks) - 0usize];
4855};
4856pub type zend_declarables = _zend_declarables;
4857#[repr(C)]
4858#[derive(Copy, Clone)]
4859pub struct _zend_file_context {
4860    pub declarables: zend_declarables,
4861    pub current_namespace: *mut zend_string,
4862    pub in_namespace: bool,
4863    pub has_bracketed_namespaces: bool,
4864    pub imports: *mut HashTable,
4865    pub imports_function: *mut HashTable,
4866    pub imports_const: *mut HashTable,
4867    pub seen_symbols: HashTable,
4868}
4869#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4870const _: () = {
4871    ["Size of _zend_file_context"][::std::mem::size_of::<_zend_file_context>() - 104usize];
4872    ["Alignment of _zend_file_context"][::std::mem::align_of::<_zend_file_context>() - 8usize];
4873    ["Offset of field: _zend_file_context::declarables"]
4874        [::std::mem::offset_of!(_zend_file_context, declarables) - 0usize];
4875    ["Offset of field: _zend_file_context::current_namespace"]
4876        [::std::mem::offset_of!(_zend_file_context, current_namespace) - 8usize];
4877    ["Offset of field: _zend_file_context::in_namespace"]
4878        [::std::mem::offset_of!(_zend_file_context, in_namespace) - 16usize];
4879    ["Offset of field: _zend_file_context::has_bracketed_namespaces"]
4880        [::std::mem::offset_of!(_zend_file_context, has_bracketed_namespaces) - 17usize];
4881    ["Offset of field: _zend_file_context::imports"]
4882        [::std::mem::offset_of!(_zend_file_context, imports) - 24usize];
4883    ["Offset of field: _zend_file_context::imports_function"]
4884        [::std::mem::offset_of!(_zend_file_context, imports_function) - 32usize];
4885    ["Offset of field: _zend_file_context::imports_const"]
4886        [::std::mem::offset_of!(_zend_file_context, imports_const) - 40usize];
4887    ["Offset of field: _zend_file_context::seen_symbols"]
4888        [::std::mem::offset_of!(_zend_file_context, seen_symbols) - 48usize];
4889};
4890pub type zend_file_context = _zend_file_context;
4891#[repr(C)]
4892#[derive(Copy, Clone)]
4893pub union _zend_parser_stack_elem {
4894    pub ast: *mut zend_ast,
4895    pub str_: *mut zend_string,
4896    pub num: zend_ulong,
4897    pub ptr: *mut ::std::os::raw::c_uchar,
4898    pub ident: *mut ::std::os::raw::c_uchar,
4899}
4900#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4901const _: () = {
4902    ["Size of _zend_parser_stack_elem"][::std::mem::size_of::<_zend_parser_stack_elem>() - 8usize];
4903    ["Alignment of _zend_parser_stack_elem"]
4904        [::std::mem::align_of::<_zend_parser_stack_elem>() - 8usize];
4905    ["Offset of field: _zend_parser_stack_elem::ast"]
4906        [::std::mem::offset_of!(_zend_parser_stack_elem, ast) - 0usize];
4907    ["Offset of field: _zend_parser_stack_elem::str_"]
4908        [::std::mem::offset_of!(_zend_parser_stack_elem, str_) - 0usize];
4909    ["Offset of field: _zend_parser_stack_elem::num"]
4910        [::std::mem::offset_of!(_zend_parser_stack_elem, num) - 0usize];
4911    ["Offset of field: _zend_parser_stack_elem::ptr"]
4912        [::std::mem::offset_of!(_zend_parser_stack_elem, ptr) - 0usize];
4913    ["Offset of field: _zend_parser_stack_elem::ident"]
4914        [::std::mem::offset_of!(_zend_parser_stack_elem, ident) - 0usize];
4915};
4916pub type zend_parser_stack_elem = _zend_parser_stack_elem;
4917pub type user_opcode_handler_t = ::std::option::Option<
4918    unsafe extern "C" fn(execute_data: *mut zend_execute_data) -> ::std::os::raw::c_int,
4919>;
4920#[repr(C)]
4921#[derive(Copy, Clone)]
4922pub struct _zend_op {
4923    pub handler: zend_vm_opcode_handler_t,
4924    pub op1: znode_op,
4925    pub op2: znode_op,
4926    pub result: znode_op,
4927    pub extended_value: u32,
4928    pub lineno: u32,
4929    pub opcode: u8,
4930    pub op1_type: u8,
4931    pub op2_type: u8,
4932    pub result_type: u8,
4933}
4934#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4935const _: () = {
4936    ["Size of _zend_op"][::std::mem::size_of::<_zend_op>() - 32usize];
4937    ["Alignment of _zend_op"][::std::mem::align_of::<_zend_op>() - 8usize];
4938    ["Offset of field: _zend_op::handler"][::std::mem::offset_of!(_zend_op, handler) - 0usize];
4939    ["Offset of field: _zend_op::op1"][::std::mem::offset_of!(_zend_op, op1) - 8usize];
4940    ["Offset of field: _zend_op::op2"][::std::mem::offset_of!(_zend_op, op2) - 12usize];
4941    ["Offset of field: _zend_op::result"][::std::mem::offset_of!(_zend_op, result) - 16usize];
4942    ["Offset of field: _zend_op::extended_value"]
4943        [::std::mem::offset_of!(_zend_op, extended_value) - 20usize];
4944    ["Offset of field: _zend_op::lineno"][::std::mem::offset_of!(_zend_op, lineno) - 24usize];
4945    ["Offset of field: _zend_op::opcode"][::std::mem::offset_of!(_zend_op, opcode) - 28usize];
4946    ["Offset of field: _zend_op::op1_type"][::std::mem::offset_of!(_zend_op, op1_type) - 29usize];
4947    ["Offset of field: _zend_op::op2_type"][::std::mem::offset_of!(_zend_op, op2_type) - 30usize];
4948    ["Offset of field: _zend_op::result_type"]
4949        [::std::mem::offset_of!(_zend_op, result_type) - 31usize];
4950};
4951#[repr(C)]
4952#[derive(Debug, Copy, Clone)]
4953pub struct _zend_brk_cont_element {
4954    pub start: ::std::os::raw::c_int,
4955    pub cont: ::std::os::raw::c_int,
4956    pub brk: ::std::os::raw::c_int,
4957    pub parent: ::std::os::raw::c_int,
4958    pub is_switch: bool,
4959}
4960#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4961const _: () = {
4962    ["Size of _zend_brk_cont_element"][::std::mem::size_of::<_zend_brk_cont_element>() - 20usize];
4963    ["Alignment of _zend_brk_cont_element"]
4964        [::std::mem::align_of::<_zend_brk_cont_element>() - 4usize];
4965    ["Offset of field: _zend_brk_cont_element::start"]
4966        [::std::mem::offset_of!(_zend_brk_cont_element, start) - 0usize];
4967    ["Offset of field: _zend_brk_cont_element::cont"]
4968        [::std::mem::offset_of!(_zend_brk_cont_element, cont) - 4usize];
4969    ["Offset of field: _zend_brk_cont_element::brk"]
4970        [::std::mem::offset_of!(_zend_brk_cont_element, brk) - 8usize];
4971    ["Offset of field: _zend_brk_cont_element::parent"]
4972        [::std::mem::offset_of!(_zend_brk_cont_element, parent) - 12usize];
4973    ["Offset of field: _zend_brk_cont_element::is_switch"]
4974        [::std::mem::offset_of!(_zend_brk_cont_element, is_switch) - 16usize];
4975};
4976pub type zend_brk_cont_element = _zend_brk_cont_element;
4977#[repr(C)]
4978#[derive(Debug, Copy, Clone)]
4979pub struct _zend_label {
4980    pub brk_cont: ::std::os::raw::c_int,
4981    pub opline_num: u32,
4982}
4983#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4984const _: () = {
4985    ["Size of _zend_label"][::std::mem::size_of::<_zend_label>() - 8usize];
4986    ["Alignment of _zend_label"][::std::mem::align_of::<_zend_label>() - 4usize];
4987    ["Offset of field: _zend_label::brk_cont"]
4988        [::std::mem::offset_of!(_zend_label, brk_cont) - 0usize];
4989    ["Offset of field: _zend_label::opline_num"]
4990        [::std::mem::offset_of!(_zend_label, opline_num) - 4usize];
4991};
4992pub type zend_label = _zend_label;
4993#[repr(C)]
4994#[derive(Debug, Copy, Clone)]
4995pub struct _zend_try_catch_element {
4996    pub try_op: u32,
4997    pub catch_op: u32,
4998    pub finally_op: u32,
4999    pub finally_end: u32,
5000}
5001#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5002const _: () = {
5003    ["Size of _zend_try_catch_element"][::std::mem::size_of::<_zend_try_catch_element>() - 16usize];
5004    ["Alignment of _zend_try_catch_element"]
5005        [::std::mem::align_of::<_zend_try_catch_element>() - 4usize];
5006    ["Offset of field: _zend_try_catch_element::try_op"]
5007        [::std::mem::offset_of!(_zend_try_catch_element, try_op) - 0usize];
5008    ["Offset of field: _zend_try_catch_element::catch_op"]
5009        [::std::mem::offset_of!(_zend_try_catch_element, catch_op) - 4usize];
5010    ["Offset of field: _zend_try_catch_element::finally_op"]
5011        [::std::mem::offset_of!(_zend_try_catch_element, finally_op) - 8usize];
5012    ["Offset of field: _zend_try_catch_element::finally_end"]
5013        [::std::mem::offset_of!(_zend_try_catch_element, finally_end) - 12usize];
5014};
5015pub type zend_try_catch_element = _zend_try_catch_element;
5016#[repr(C)]
5017#[derive(Debug, Copy, Clone)]
5018pub struct _zend_live_range {
5019    pub var: u32,
5020    pub start: u32,
5021    pub end: u32,
5022}
5023#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5024const _: () = {
5025    ["Size of _zend_live_range"][::std::mem::size_of::<_zend_live_range>() - 12usize];
5026    ["Alignment of _zend_live_range"][::std::mem::align_of::<_zend_live_range>() - 4usize];
5027    ["Offset of field: _zend_live_range::var"]
5028        [::std::mem::offset_of!(_zend_live_range, var) - 0usize];
5029    ["Offset of field: _zend_live_range::start"]
5030        [::std::mem::offset_of!(_zend_live_range, start) - 4usize];
5031    ["Offset of field: _zend_live_range::end"]
5032        [::std::mem::offset_of!(_zend_live_range, end) - 8usize];
5033};
5034pub type zend_live_range = _zend_live_range;
5035#[repr(C)]
5036#[derive(Debug, Copy, Clone)]
5037pub struct _zend_oparray_context {
5038    pub prev: *mut _zend_oparray_context,
5039    pub op_array: *mut zend_op_array,
5040    pub opcodes_size: u32,
5041    pub vars_size: ::std::os::raw::c_int,
5042    pub literals_size: ::std::os::raw::c_int,
5043    pub fast_call_var: u32,
5044    pub try_catch_offset: u32,
5045    pub current_brk_cont: ::std::os::raw::c_int,
5046    pub last_brk_cont: ::std::os::raw::c_int,
5047    pub brk_cont_array: *mut zend_brk_cont_element,
5048    pub labels: *mut HashTable,
5049    pub active_property_info_name: *mut zend_string,
5050    pub active_property_hook_kind: zend_property_hook_kind::Type,
5051    pub in_jmp_frameless_branch: bool,
5052    pub has_assigned_to_http_response_header: bool,
5053}
5054#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5055const _: () = {
5056    ["Size of _zend_oparray_context"][::std::mem::size_of::<_zend_oparray_context>() - 80usize];
5057    ["Alignment of _zend_oparray_context"]
5058        [::std::mem::align_of::<_zend_oparray_context>() - 8usize];
5059    ["Offset of field: _zend_oparray_context::prev"]
5060        [::std::mem::offset_of!(_zend_oparray_context, prev) - 0usize];
5061    ["Offset of field: _zend_oparray_context::op_array"]
5062        [::std::mem::offset_of!(_zend_oparray_context, op_array) - 8usize];
5063    ["Offset of field: _zend_oparray_context::opcodes_size"]
5064        [::std::mem::offset_of!(_zend_oparray_context, opcodes_size) - 16usize];
5065    ["Offset of field: _zend_oparray_context::vars_size"]
5066        [::std::mem::offset_of!(_zend_oparray_context, vars_size) - 20usize];
5067    ["Offset of field: _zend_oparray_context::literals_size"]
5068        [::std::mem::offset_of!(_zend_oparray_context, literals_size) - 24usize];
5069    ["Offset of field: _zend_oparray_context::fast_call_var"]
5070        [::std::mem::offset_of!(_zend_oparray_context, fast_call_var) - 28usize];
5071    ["Offset of field: _zend_oparray_context::try_catch_offset"]
5072        [::std::mem::offset_of!(_zend_oparray_context, try_catch_offset) - 32usize];
5073    ["Offset of field: _zend_oparray_context::current_brk_cont"]
5074        [::std::mem::offset_of!(_zend_oparray_context, current_brk_cont) - 36usize];
5075    ["Offset of field: _zend_oparray_context::last_brk_cont"]
5076        [::std::mem::offset_of!(_zend_oparray_context, last_brk_cont) - 40usize];
5077    ["Offset of field: _zend_oparray_context::brk_cont_array"]
5078        [::std::mem::offset_of!(_zend_oparray_context, brk_cont_array) - 48usize];
5079    ["Offset of field: _zend_oparray_context::labels"]
5080        [::std::mem::offset_of!(_zend_oparray_context, labels) - 56usize];
5081    ["Offset of field: _zend_oparray_context::active_property_info_name"]
5082        [::std::mem::offset_of!(_zend_oparray_context, active_property_info_name) - 64usize];
5083    ["Offset of field: _zend_oparray_context::active_property_hook_kind"]
5084        [::std::mem::offset_of!(_zend_oparray_context, active_property_hook_kind) - 72usize];
5085    ["Offset of field: _zend_oparray_context::in_jmp_frameless_branch"]
5086        [::std::mem::offset_of!(_zend_oparray_context, in_jmp_frameless_branch) - 76usize];
5087    ["Offset of field: _zend_oparray_context::has_assigned_to_http_response_header"][::std::mem::offset_of!(
5088        _zend_oparray_context,
5089        has_assigned_to_http_response_header
5090    ) - 77usize];
5091};
5092pub type zend_oparray_context = _zend_oparray_context;
5093#[repr(C)]
5094#[derive(Debug, Copy, Clone)]
5095pub struct _zend_property_info {
5096    pub offset: u32,
5097    pub flags: u32,
5098    pub name: *mut zend_string,
5099    pub doc_comment: *mut zend_string,
5100    pub attributes: *mut HashTable,
5101    pub ce: *mut zend_class_entry,
5102    pub type_: zend_type,
5103    pub prototype: *const zend_property_info,
5104    pub hooks: *mut *mut zend_function,
5105}
5106#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5107const _: () = {
5108    ["Size of _zend_property_info"][::std::mem::size_of::<_zend_property_info>() - 72usize];
5109    ["Alignment of _zend_property_info"][::std::mem::align_of::<_zend_property_info>() - 8usize];
5110    ["Offset of field: _zend_property_info::offset"]
5111        [::std::mem::offset_of!(_zend_property_info, offset) - 0usize];
5112    ["Offset of field: _zend_property_info::flags"]
5113        [::std::mem::offset_of!(_zend_property_info, flags) - 4usize];
5114    ["Offset of field: _zend_property_info::name"]
5115        [::std::mem::offset_of!(_zend_property_info, name) - 8usize];
5116    ["Offset of field: _zend_property_info::doc_comment"]
5117        [::std::mem::offset_of!(_zend_property_info, doc_comment) - 16usize];
5118    ["Offset of field: _zend_property_info::attributes"]
5119        [::std::mem::offset_of!(_zend_property_info, attributes) - 24usize];
5120    ["Offset of field: _zend_property_info::ce"]
5121        [::std::mem::offset_of!(_zend_property_info, ce) - 32usize];
5122    ["Offset of field: _zend_property_info::type_"]
5123        [::std::mem::offset_of!(_zend_property_info, type_) - 40usize];
5124    ["Offset of field: _zend_property_info::prototype"]
5125        [::std::mem::offset_of!(_zend_property_info, prototype) - 56usize];
5126    ["Offset of field: _zend_property_info::hooks"]
5127        [::std::mem::offset_of!(_zend_property_info, hooks) - 64usize];
5128};
5129#[repr(C)]
5130#[derive(Copy, Clone)]
5131pub struct _zend_class_constant {
5132    pub value: zval,
5133    pub doc_comment: *mut zend_string,
5134    pub attributes: *mut HashTable,
5135    pub ce: *mut zend_class_entry,
5136    pub type_: zend_type,
5137}
5138#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5139const _: () = {
5140    ["Size of _zend_class_constant"][::std::mem::size_of::<_zend_class_constant>() - 56usize];
5141    ["Alignment of _zend_class_constant"][::std::mem::align_of::<_zend_class_constant>() - 8usize];
5142    ["Offset of field: _zend_class_constant::value"]
5143        [::std::mem::offset_of!(_zend_class_constant, value) - 0usize];
5144    ["Offset of field: _zend_class_constant::doc_comment"]
5145        [::std::mem::offset_of!(_zend_class_constant, doc_comment) - 16usize];
5146    ["Offset of field: _zend_class_constant::attributes"]
5147        [::std::mem::offset_of!(_zend_class_constant, attributes) - 24usize];
5148    ["Offset of field: _zend_class_constant::ce"]
5149        [::std::mem::offset_of!(_zend_class_constant, ce) - 32usize];
5150    ["Offset of field: _zend_class_constant::type_"]
5151        [::std::mem::offset_of!(_zend_class_constant, type_) - 40usize];
5152};
5153pub type zend_class_constant = _zend_class_constant;
5154#[repr(C)]
5155#[derive(Debug, Copy, Clone)]
5156pub struct _zend_internal_arg_info {
5157    pub name: *const ::std::os::raw::c_char,
5158    pub type_: zend_type,
5159    pub default_value: *const ::std::os::raw::c_char,
5160}
5161#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5162const _: () = {
5163    ["Size of _zend_internal_arg_info"][::std::mem::size_of::<_zend_internal_arg_info>() - 32usize];
5164    ["Alignment of _zend_internal_arg_info"]
5165        [::std::mem::align_of::<_zend_internal_arg_info>() - 8usize];
5166    ["Offset of field: _zend_internal_arg_info::name"]
5167        [::std::mem::offset_of!(_zend_internal_arg_info, name) - 0usize];
5168    ["Offset of field: _zend_internal_arg_info::type_"]
5169        [::std::mem::offset_of!(_zend_internal_arg_info, type_) - 8usize];
5170    ["Offset of field: _zend_internal_arg_info::default_value"]
5171        [::std::mem::offset_of!(_zend_internal_arg_info, default_value) - 24usize];
5172};
5173pub type zend_internal_arg_info = _zend_internal_arg_info;
5174#[repr(C)]
5175#[derive(Debug, Copy, Clone)]
5176pub struct _zend_arg_info {
5177    pub name: *mut zend_string,
5178    pub type_: zend_type,
5179    pub default_value: *mut zend_string,
5180}
5181#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5182const _: () = {
5183    ["Size of _zend_arg_info"][::std::mem::size_of::<_zend_arg_info>() - 32usize];
5184    ["Alignment of _zend_arg_info"][::std::mem::align_of::<_zend_arg_info>() - 8usize];
5185    ["Offset of field: _zend_arg_info::name"]
5186        [::std::mem::offset_of!(_zend_arg_info, name) - 0usize];
5187    ["Offset of field: _zend_arg_info::type_"]
5188        [::std::mem::offset_of!(_zend_arg_info, type_) - 8usize];
5189    ["Offset of field: _zend_arg_info::default_value"]
5190        [::std::mem::offset_of!(_zend_arg_info, default_value) - 24usize];
5191};
5192pub type zend_arg_info = _zend_arg_info;
5193#[repr(C)]
5194#[derive(Debug, Copy, Clone)]
5195pub struct _zend_internal_function_info {
5196    pub required_num_args: usize,
5197    pub type_: zend_type,
5198    pub default_value: *const ::std::os::raw::c_char,
5199}
5200#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5201const _: () = {
5202    ["Size of _zend_internal_function_info"]
5203        [::std::mem::size_of::<_zend_internal_function_info>() - 32usize];
5204    ["Alignment of _zend_internal_function_info"]
5205        [::std::mem::align_of::<_zend_internal_function_info>() - 8usize];
5206    ["Offset of field: _zend_internal_function_info::required_num_args"]
5207        [::std::mem::offset_of!(_zend_internal_function_info, required_num_args) - 0usize];
5208    ["Offset of field: _zend_internal_function_info::type_"]
5209        [::std::mem::offset_of!(_zend_internal_function_info, type_) - 8usize];
5210    ["Offset of field: _zend_internal_function_info::default_value"]
5211        [::std::mem::offset_of!(_zend_internal_function_info, default_value) - 24usize];
5212};
5213pub type zend_internal_function_info = _zend_internal_function_info;
5214#[repr(C)]
5215#[derive(Debug, Copy, Clone)]
5216pub struct _zend_op_array {
5217    pub type_: u8,
5218    pub arg_flags: [u8; 3usize],
5219    pub fn_flags: u32,
5220    pub function_name: *mut zend_string,
5221    pub scope: *mut zend_class_entry,
5222    pub prototype: *mut zend_function,
5223    pub num_args: u32,
5224    pub required_num_args: u32,
5225    pub arg_info: *mut zend_arg_info,
5226    pub attributes: *mut HashTable,
5227    pub run_time_cache__ptr: *mut *mut ::std::os::raw::c_void,
5228    pub doc_comment: *mut zend_string,
5229    pub T: u32,
5230    pub prop_info: *const zend_property_info,
5231    pub cache_size: ::std::os::raw::c_int,
5232    pub last_var: ::std::os::raw::c_int,
5233    pub last: u32,
5234    pub opcodes: *mut zend_op,
5235    pub static_variables_ptr__ptr: *mut HashTable,
5236    pub static_variables: *mut HashTable,
5237    pub vars: *mut *mut zend_string,
5238    pub refcount: *mut u32,
5239    pub last_live_range: ::std::os::raw::c_int,
5240    pub last_try_catch: ::std::os::raw::c_int,
5241    pub live_range: *mut zend_live_range,
5242    pub try_catch_array: *mut zend_try_catch_element,
5243    pub filename: *mut zend_string,
5244    pub line_start: u32,
5245    pub line_end: u32,
5246    pub last_literal: ::std::os::raw::c_int,
5247    pub num_dynamic_func_defs: u32,
5248    pub literals: *mut zval,
5249    pub dynamic_func_defs: *mut *mut zend_op_array,
5250    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
5251}
5252#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5253const _: () = {
5254    ["Size of _zend_op_array"][::std::mem::size_of::<_zend_op_array>() - 256usize];
5255    ["Alignment of _zend_op_array"][::std::mem::align_of::<_zend_op_array>() - 8usize];
5256    ["Offset of field: _zend_op_array::type_"]
5257        [::std::mem::offset_of!(_zend_op_array, type_) - 0usize];
5258    ["Offset of field: _zend_op_array::arg_flags"]
5259        [::std::mem::offset_of!(_zend_op_array, arg_flags) - 1usize];
5260    ["Offset of field: _zend_op_array::fn_flags"]
5261        [::std::mem::offset_of!(_zend_op_array, fn_flags) - 4usize];
5262    ["Offset of field: _zend_op_array::function_name"]
5263        [::std::mem::offset_of!(_zend_op_array, function_name) - 8usize];
5264    ["Offset of field: _zend_op_array::scope"]
5265        [::std::mem::offset_of!(_zend_op_array, scope) - 16usize];
5266    ["Offset of field: _zend_op_array::prototype"]
5267        [::std::mem::offset_of!(_zend_op_array, prototype) - 24usize];
5268    ["Offset of field: _zend_op_array::num_args"]
5269        [::std::mem::offset_of!(_zend_op_array, num_args) - 32usize];
5270    ["Offset of field: _zend_op_array::required_num_args"]
5271        [::std::mem::offset_of!(_zend_op_array, required_num_args) - 36usize];
5272    ["Offset of field: _zend_op_array::arg_info"]
5273        [::std::mem::offset_of!(_zend_op_array, arg_info) - 40usize];
5274    ["Offset of field: _zend_op_array::attributes"]
5275        [::std::mem::offset_of!(_zend_op_array, attributes) - 48usize];
5276    ["Offset of field: _zend_op_array::run_time_cache__ptr"]
5277        [::std::mem::offset_of!(_zend_op_array, run_time_cache__ptr) - 56usize];
5278    ["Offset of field: _zend_op_array::doc_comment"]
5279        [::std::mem::offset_of!(_zend_op_array, doc_comment) - 64usize];
5280    ["Offset of field: _zend_op_array::T"][::std::mem::offset_of!(_zend_op_array, T) - 72usize];
5281    ["Offset of field: _zend_op_array::prop_info"]
5282        [::std::mem::offset_of!(_zend_op_array, prop_info) - 80usize];
5283    ["Offset of field: _zend_op_array::cache_size"]
5284        [::std::mem::offset_of!(_zend_op_array, cache_size) - 88usize];
5285    ["Offset of field: _zend_op_array::last_var"]
5286        [::std::mem::offset_of!(_zend_op_array, last_var) - 92usize];
5287    ["Offset of field: _zend_op_array::last"]
5288        [::std::mem::offset_of!(_zend_op_array, last) - 96usize];
5289    ["Offset of field: _zend_op_array::opcodes"]
5290        [::std::mem::offset_of!(_zend_op_array, opcodes) - 104usize];
5291    ["Offset of field: _zend_op_array::static_variables_ptr__ptr"]
5292        [::std::mem::offset_of!(_zend_op_array, static_variables_ptr__ptr) - 112usize];
5293    ["Offset of field: _zend_op_array::static_variables"]
5294        [::std::mem::offset_of!(_zend_op_array, static_variables) - 120usize];
5295    ["Offset of field: _zend_op_array::vars"]
5296        [::std::mem::offset_of!(_zend_op_array, vars) - 128usize];
5297    ["Offset of field: _zend_op_array::refcount"]
5298        [::std::mem::offset_of!(_zend_op_array, refcount) - 136usize];
5299    ["Offset of field: _zend_op_array::last_live_range"]
5300        [::std::mem::offset_of!(_zend_op_array, last_live_range) - 144usize];
5301    ["Offset of field: _zend_op_array::last_try_catch"]
5302        [::std::mem::offset_of!(_zend_op_array, last_try_catch) - 148usize];
5303    ["Offset of field: _zend_op_array::live_range"]
5304        [::std::mem::offset_of!(_zend_op_array, live_range) - 152usize];
5305    ["Offset of field: _zend_op_array::try_catch_array"]
5306        [::std::mem::offset_of!(_zend_op_array, try_catch_array) - 160usize];
5307    ["Offset of field: _zend_op_array::filename"]
5308        [::std::mem::offset_of!(_zend_op_array, filename) - 168usize];
5309    ["Offset of field: _zend_op_array::line_start"]
5310        [::std::mem::offset_of!(_zend_op_array, line_start) - 176usize];
5311    ["Offset of field: _zend_op_array::line_end"]
5312        [::std::mem::offset_of!(_zend_op_array, line_end) - 180usize];
5313    ["Offset of field: _zend_op_array::last_literal"]
5314        [::std::mem::offset_of!(_zend_op_array, last_literal) - 184usize];
5315    ["Offset of field: _zend_op_array::num_dynamic_func_defs"]
5316        [::std::mem::offset_of!(_zend_op_array, num_dynamic_func_defs) - 188usize];
5317    ["Offset of field: _zend_op_array::literals"]
5318        [::std::mem::offset_of!(_zend_op_array, literals) - 192usize];
5319    ["Offset of field: _zend_op_array::dynamic_func_defs"]
5320        [::std::mem::offset_of!(_zend_op_array, dynamic_func_defs) - 200usize];
5321    ["Offset of field: _zend_op_array::reserved"]
5322        [::std::mem::offset_of!(_zend_op_array, reserved) - 208usize];
5323};
5324pub type zif_handler = ::std::option::Option<
5325    unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval),
5326>;
5327#[repr(C)]
5328#[derive(Debug, Copy, Clone)]
5329pub struct _zend_internal_function {
5330    pub type_: u8,
5331    pub arg_flags: [u8; 3usize],
5332    pub fn_flags: u32,
5333    pub function_name: *mut zend_string,
5334    pub scope: *mut zend_class_entry,
5335    pub prototype: *mut zend_function,
5336    pub num_args: u32,
5337    pub required_num_args: u32,
5338    pub arg_info: *mut zend_internal_arg_info,
5339    pub attributes: *mut HashTable,
5340    pub run_time_cache__ptr: *mut *mut ::std::os::raw::c_void,
5341    pub doc_comment: *mut zend_string,
5342    pub T: u32,
5343    pub prop_info: *const zend_property_info,
5344    pub handler: zif_handler,
5345    pub module: *mut _zend_module_entry,
5346    pub frameless_function_infos: *const zend_frameless_function_info,
5347    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
5348}
5349#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5350const _: () = {
5351    ["Size of _zend_internal_function"]
5352        [::std::mem::size_of::<_zend_internal_function>() - 160usize];
5353    ["Alignment of _zend_internal_function"]
5354        [::std::mem::align_of::<_zend_internal_function>() - 8usize];
5355    ["Offset of field: _zend_internal_function::type_"]
5356        [::std::mem::offset_of!(_zend_internal_function, type_) - 0usize];
5357    ["Offset of field: _zend_internal_function::arg_flags"]
5358        [::std::mem::offset_of!(_zend_internal_function, arg_flags) - 1usize];
5359    ["Offset of field: _zend_internal_function::fn_flags"]
5360        [::std::mem::offset_of!(_zend_internal_function, fn_flags) - 4usize];
5361    ["Offset of field: _zend_internal_function::function_name"]
5362        [::std::mem::offset_of!(_zend_internal_function, function_name) - 8usize];
5363    ["Offset of field: _zend_internal_function::scope"]
5364        [::std::mem::offset_of!(_zend_internal_function, scope) - 16usize];
5365    ["Offset of field: _zend_internal_function::prototype"]
5366        [::std::mem::offset_of!(_zend_internal_function, prototype) - 24usize];
5367    ["Offset of field: _zend_internal_function::num_args"]
5368        [::std::mem::offset_of!(_zend_internal_function, num_args) - 32usize];
5369    ["Offset of field: _zend_internal_function::required_num_args"]
5370        [::std::mem::offset_of!(_zend_internal_function, required_num_args) - 36usize];
5371    ["Offset of field: _zend_internal_function::arg_info"]
5372        [::std::mem::offset_of!(_zend_internal_function, arg_info) - 40usize];
5373    ["Offset of field: _zend_internal_function::attributes"]
5374        [::std::mem::offset_of!(_zend_internal_function, attributes) - 48usize];
5375    ["Offset of field: _zend_internal_function::run_time_cache__ptr"]
5376        [::std::mem::offset_of!(_zend_internal_function, run_time_cache__ptr) - 56usize];
5377    ["Offset of field: _zend_internal_function::doc_comment"]
5378        [::std::mem::offset_of!(_zend_internal_function, doc_comment) - 64usize];
5379    ["Offset of field: _zend_internal_function::T"]
5380        [::std::mem::offset_of!(_zend_internal_function, T) - 72usize];
5381    ["Offset of field: _zend_internal_function::prop_info"]
5382        [::std::mem::offset_of!(_zend_internal_function, prop_info) - 80usize];
5383    ["Offset of field: _zend_internal_function::handler"]
5384        [::std::mem::offset_of!(_zend_internal_function, handler) - 88usize];
5385    ["Offset of field: _zend_internal_function::module"]
5386        [::std::mem::offset_of!(_zend_internal_function, module) - 96usize];
5387    ["Offset of field: _zend_internal_function::frameless_function_infos"]
5388        [::std::mem::offset_of!(_zend_internal_function, frameless_function_infos) - 104usize];
5389    ["Offset of field: _zend_internal_function::reserved"]
5390        [::std::mem::offset_of!(_zend_internal_function, reserved) - 112usize];
5391};
5392pub type zend_internal_function = _zend_internal_function;
5393#[repr(C)]
5394#[derive(Copy, Clone)]
5395pub union _zend_function {
5396    pub type_: u8,
5397    pub quick_arg_flags: u32,
5398    pub common: _zend_function__common,
5399    pub op_array: zend_op_array,
5400    pub internal_function: zend_internal_function,
5401}
5402#[repr(C)]
5403#[derive(Debug, Copy, Clone)]
5404pub struct _zend_function__common {
5405    pub type_: u8,
5406    pub arg_flags: [u8; 3usize],
5407    pub fn_flags: u32,
5408    pub function_name: *mut zend_string,
5409    pub scope: *mut zend_class_entry,
5410    pub prototype: *mut zend_function,
5411    pub num_args: u32,
5412    pub required_num_args: u32,
5413    pub arg_info: *mut zend_arg_info,
5414    pub attributes: *mut HashTable,
5415    pub run_time_cache__ptr: *mut *mut ::std::os::raw::c_void,
5416    pub doc_comment: *mut zend_string,
5417    pub T: u32,
5418    pub prop_info: *const zend_property_info,
5419}
5420#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5421const _: () = {
5422    ["Size of _zend_function__common"][::std::mem::size_of::<_zend_function__common>() - 88usize];
5423    ["Alignment of _zend_function__common"]
5424        [::std::mem::align_of::<_zend_function__common>() - 8usize];
5425    ["Offset of field: _zend_function__common::type_"]
5426        [::std::mem::offset_of!(_zend_function__common, type_) - 0usize];
5427    ["Offset of field: _zend_function__common::arg_flags"]
5428        [::std::mem::offset_of!(_zend_function__common, arg_flags) - 1usize];
5429    ["Offset of field: _zend_function__common::fn_flags"]
5430        [::std::mem::offset_of!(_zend_function__common, fn_flags) - 4usize];
5431    ["Offset of field: _zend_function__common::function_name"]
5432        [::std::mem::offset_of!(_zend_function__common, function_name) - 8usize];
5433    ["Offset of field: _zend_function__common::scope"]
5434        [::std::mem::offset_of!(_zend_function__common, scope) - 16usize];
5435    ["Offset of field: _zend_function__common::prototype"]
5436        [::std::mem::offset_of!(_zend_function__common, prototype) - 24usize];
5437    ["Offset of field: _zend_function__common::num_args"]
5438        [::std::mem::offset_of!(_zend_function__common, num_args) - 32usize];
5439    ["Offset of field: _zend_function__common::required_num_args"]
5440        [::std::mem::offset_of!(_zend_function__common, required_num_args) - 36usize];
5441    ["Offset of field: _zend_function__common::arg_info"]
5442        [::std::mem::offset_of!(_zend_function__common, arg_info) - 40usize];
5443    ["Offset of field: _zend_function__common::attributes"]
5444        [::std::mem::offset_of!(_zend_function__common, attributes) - 48usize];
5445    ["Offset of field: _zend_function__common::run_time_cache__ptr"]
5446        [::std::mem::offset_of!(_zend_function__common, run_time_cache__ptr) - 56usize];
5447    ["Offset of field: _zend_function__common::doc_comment"]
5448        [::std::mem::offset_of!(_zend_function__common, doc_comment) - 64usize];
5449    ["Offset of field: _zend_function__common::T"]
5450        [::std::mem::offset_of!(_zend_function__common, T) - 72usize];
5451    ["Offset of field: _zend_function__common::prop_info"]
5452        [::std::mem::offset_of!(_zend_function__common, prop_info) - 80usize];
5453};
5454#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5455const _: () = {
5456    ["Size of _zend_function"][::std::mem::size_of::<_zend_function>() - 256usize];
5457    ["Alignment of _zend_function"][::std::mem::align_of::<_zend_function>() - 8usize];
5458    ["Offset of field: _zend_function::type_"]
5459        [::std::mem::offset_of!(_zend_function, type_) - 0usize];
5460    ["Offset of field: _zend_function::quick_arg_flags"]
5461        [::std::mem::offset_of!(_zend_function, quick_arg_flags) - 0usize];
5462    ["Offset of field: _zend_function::common"]
5463        [::std::mem::offset_of!(_zend_function, common) - 0usize];
5464    ["Offset of field: _zend_function::op_array"]
5465        [::std::mem::offset_of!(_zend_function, op_array) - 0usize];
5466    ["Offset of field: _zend_function::internal_function"]
5467        [::std::mem::offset_of!(_zend_function, internal_function) - 0usize];
5468};
5469#[repr(C)]
5470#[derive(Copy, Clone)]
5471pub struct _zend_execute_data {
5472    pub opline: *const zend_op,
5473    pub call: *mut zend_execute_data,
5474    pub return_value: *mut zval,
5475    pub func: *mut zend_function,
5476    pub This: zval,
5477    pub prev_execute_data: *mut zend_execute_data,
5478    pub symbol_table: *mut zend_array,
5479    pub run_time_cache: *mut *mut ::std::os::raw::c_void,
5480    pub extra_named_params: *mut zend_array,
5481}
5482#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5483const _: () = {
5484    ["Size of _zend_execute_data"][::std::mem::size_of::<_zend_execute_data>() - 80usize];
5485    ["Alignment of _zend_execute_data"][::std::mem::align_of::<_zend_execute_data>() - 8usize];
5486    ["Offset of field: _zend_execute_data::opline"]
5487        [::std::mem::offset_of!(_zend_execute_data, opline) - 0usize];
5488    ["Offset of field: _zend_execute_data::call"]
5489        [::std::mem::offset_of!(_zend_execute_data, call) - 8usize];
5490    ["Offset of field: _zend_execute_data::return_value"]
5491        [::std::mem::offset_of!(_zend_execute_data, return_value) - 16usize];
5492    ["Offset of field: _zend_execute_data::func"]
5493        [::std::mem::offset_of!(_zend_execute_data, func) - 24usize];
5494    ["Offset of field: _zend_execute_data::This"]
5495        [::std::mem::offset_of!(_zend_execute_data, This) - 32usize];
5496    ["Offset of field: _zend_execute_data::prev_execute_data"]
5497        [::std::mem::offset_of!(_zend_execute_data, prev_execute_data) - 48usize];
5498    ["Offset of field: _zend_execute_data::symbol_table"]
5499        [::std::mem::offset_of!(_zend_execute_data, symbol_table) - 56usize];
5500    ["Offset of field: _zend_execute_data::run_time_cache"]
5501        [::std::mem::offset_of!(_zend_execute_data, run_time_cache) - 64usize];
5502    ["Offset of field: _zend_execute_data::extra_named_params"]
5503        [::std::mem::offset_of!(_zend_execute_data, extra_named_params) - 72usize];
5504};
5505pub type __jmp_buf = [::std::os::raw::c_long; 8usize];
5506#[repr(C)]
5507#[derive(Debug, Copy, Clone)]
5508pub struct __jmp_buf_tag {
5509    pub __jmpbuf: __jmp_buf,
5510    pub __mask_was_saved: ::std::os::raw::c_int,
5511    pub __saved_mask: __sigset_t,
5512}
5513#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5514const _: () = {
5515    ["Size of __jmp_buf_tag"][::std::mem::size_of::<__jmp_buf_tag>() - 200usize];
5516    ["Alignment of __jmp_buf_tag"][::std::mem::align_of::<__jmp_buf_tag>() - 8usize];
5517    ["Offset of field: __jmp_buf_tag::__jmpbuf"]
5518        [::std::mem::offset_of!(__jmp_buf_tag, __jmpbuf) - 0usize];
5519    ["Offset of field: __jmp_buf_tag::__mask_was_saved"]
5520        [::std::mem::offset_of!(__jmp_buf_tag, __mask_was_saved) - 64usize];
5521    ["Offset of field: __jmp_buf_tag::__saved_mask"]
5522        [::std::mem::offset_of!(__jmp_buf_tag, __saved_mask) - 72usize];
5523};
5524pub type sigjmp_buf = [__jmp_buf_tag; 1usize];
5525pub type zend_compiler_globals = _zend_compiler_globals;
5526pub type zend_executor_globals = _zend_executor_globals;
5527pub type zend_php_scanner_globals = _zend_php_scanner_globals;
5528pub type zend_ini_scanner_globals = _zend_ini_scanner_globals;
5529#[repr(C)]
5530#[derive(Copy, Clone)]
5531pub struct _zend_compiler_globals {
5532    pub loop_var_stack: zend_stack,
5533    pub active_class_entry: *mut zend_class_entry,
5534    pub compiled_filename: *mut zend_string,
5535    pub zend_lineno: ::std::os::raw::c_int,
5536    pub active_op_array: *mut zend_op_array,
5537    pub function_table: *mut HashTable,
5538    pub class_table: *mut HashTable,
5539    pub auto_globals: *mut HashTable,
5540    pub parse_error: u8,
5541    pub in_compilation: bool,
5542    pub short_tags: bool,
5543    pub unclean_shutdown: bool,
5544    pub ini_parser_unbuffered_errors: bool,
5545    pub open_files: zend_llist,
5546    pub ini_parser_param: *mut _zend_ini_parser_param,
5547    pub skip_shebang: bool,
5548    pub increment_lineno: bool,
5549    pub variable_width_locale: bool,
5550    pub ascii_compatible_locale: bool,
5551    pub doc_comment: *mut zend_string,
5552    pub extra_fn_flags: u32,
5553    pub compiler_options: u32,
5554    pub context: zend_oparray_context,
5555    pub file_context: zend_file_context,
5556    pub arena: *mut zend_arena,
5557    pub interned_strings: HashTable,
5558    pub script_encoding_list: *mut *const zend_encoding,
5559    pub script_encoding_list_size: usize,
5560    pub multibyte: bool,
5561    pub detect_unicode: bool,
5562    pub encoding_declared: bool,
5563    pub ast: *mut zend_ast,
5564    pub ast_arena: *mut zend_arena,
5565    pub delayed_oplines_stack: zend_stack,
5566    pub memoized_exprs: *mut HashTable,
5567    pub memoize_mode: zend_memoize_mode::Type,
5568    pub map_ptr_real_base: *mut ::std::os::raw::c_void,
5569    pub map_ptr_base: *mut ::std::os::raw::c_void,
5570    pub map_ptr_size: usize,
5571    pub map_ptr_last: usize,
5572    pub delayed_variance_obligations: *mut HashTable,
5573    pub delayed_autoloads: *mut HashTable,
5574    pub unlinked_uses: *mut HashTable,
5575    pub current_linking_class: *mut zend_class_entry,
5576    pub rtd_key_counter: u32,
5577    pub internal_run_time_cache: *mut ::std::os::raw::c_void,
5578    pub internal_run_time_cache_size: u32,
5579    pub short_circuiting_opnums: zend_stack,
5580}
5581#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5582const _: () = {
5583    ["Size of _zend_compiler_globals"][::std::mem::size_of::<_zend_compiler_globals>() - 616usize];
5584    ["Alignment of _zend_compiler_globals"]
5585        [::std::mem::align_of::<_zend_compiler_globals>() - 8usize];
5586    ["Offset of field: _zend_compiler_globals::loop_var_stack"]
5587        [::std::mem::offset_of!(_zend_compiler_globals, loop_var_stack) - 0usize];
5588    ["Offset of field: _zend_compiler_globals::active_class_entry"]
5589        [::std::mem::offset_of!(_zend_compiler_globals, active_class_entry) - 24usize];
5590    ["Offset of field: _zend_compiler_globals::compiled_filename"]
5591        [::std::mem::offset_of!(_zend_compiler_globals, compiled_filename) - 32usize];
5592    ["Offset of field: _zend_compiler_globals::zend_lineno"]
5593        [::std::mem::offset_of!(_zend_compiler_globals, zend_lineno) - 40usize];
5594    ["Offset of field: _zend_compiler_globals::active_op_array"]
5595        [::std::mem::offset_of!(_zend_compiler_globals, active_op_array) - 48usize];
5596    ["Offset of field: _zend_compiler_globals::function_table"]
5597        [::std::mem::offset_of!(_zend_compiler_globals, function_table) - 56usize];
5598    ["Offset of field: _zend_compiler_globals::class_table"]
5599        [::std::mem::offset_of!(_zend_compiler_globals, class_table) - 64usize];
5600    ["Offset of field: _zend_compiler_globals::auto_globals"]
5601        [::std::mem::offset_of!(_zend_compiler_globals, auto_globals) - 72usize];
5602    ["Offset of field: _zend_compiler_globals::parse_error"]
5603        [::std::mem::offset_of!(_zend_compiler_globals, parse_error) - 80usize];
5604    ["Offset of field: _zend_compiler_globals::in_compilation"]
5605        [::std::mem::offset_of!(_zend_compiler_globals, in_compilation) - 81usize];
5606    ["Offset of field: _zend_compiler_globals::short_tags"]
5607        [::std::mem::offset_of!(_zend_compiler_globals, short_tags) - 82usize];
5608    ["Offset of field: _zend_compiler_globals::unclean_shutdown"]
5609        [::std::mem::offset_of!(_zend_compiler_globals, unclean_shutdown) - 83usize];
5610    ["Offset of field: _zend_compiler_globals::ini_parser_unbuffered_errors"]
5611        [::std::mem::offset_of!(_zend_compiler_globals, ini_parser_unbuffered_errors) - 84usize];
5612    ["Offset of field: _zend_compiler_globals::open_files"]
5613        [::std::mem::offset_of!(_zend_compiler_globals, open_files) - 88usize];
5614    ["Offset of field: _zend_compiler_globals::ini_parser_param"]
5615        [::std::mem::offset_of!(_zend_compiler_globals, ini_parser_param) - 144usize];
5616    ["Offset of field: _zend_compiler_globals::skip_shebang"]
5617        [::std::mem::offset_of!(_zend_compiler_globals, skip_shebang) - 152usize];
5618    ["Offset of field: _zend_compiler_globals::increment_lineno"]
5619        [::std::mem::offset_of!(_zend_compiler_globals, increment_lineno) - 153usize];
5620    ["Offset of field: _zend_compiler_globals::variable_width_locale"]
5621        [::std::mem::offset_of!(_zend_compiler_globals, variable_width_locale) - 154usize];
5622    ["Offset of field: _zend_compiler_globals::ascii_compatible_locale"]
5623        [::std::mem::offset_of!(_zend_compiler_globals, ascii_compatible_locale) - 155usize];
5624    ["Offset of field: _zend_compiler_globals::doc_comment"]
5625        [::std::mem::offset_of!(_zend_compiler_globals, doc_comment) - 160usize];
5626    ["Offset of field: _zend_compiler_globals::extra_fn_flags"]
5627        [::std::mem::offset_of!(_zend_compiler_globals, extra_fn_flags) - 168usize];
5628    ["Offset of field: _zend_compiler_globals::compiler_options"]
5629        [::std::mem::offset_of!(_zend_compiler_globals, compiler_options) - 172usize];
5630    ["Offset of field: _zend_compiler_globals::context"]
5631        [::std::mem::offset_of!(_zend_compiler_globals, context) - 176usize];
5632    ["Offset of field: _zend_compiler_globals::file_context"]
5633        [::std::mem::offset_of!(_zend_compiler_globals, file_context) - 256usize];
5634    ["Offset of field: _zend_compiler_globals::arena"]
5635        [::std::mem::offset_of!(_zend_compiler_globals, arena) - 360usize];
5636    ["Offset of field: _zend_compiler_globals::interned_strings"]
5637        [::std::mem::offset_of!(_zend_compiler_globals, interned_strings) - 368usize];
5638    ["Offset of field: _zend_compiler_globals::script_encoding_list"]
5639        [::std::mem::offset_of!(_zend_compiler_globals, script_encoding_list) - 424usize];
5640    ["Offset of field: _zend_compiler_globals::script_encoding_list_size"]
5641        [::std::mem::offset_of!(_zend_compiler_globals, script_encoding_list_size) - 432usize];
5642    ["Offset of field: _zend_compiler_globals::multibyte"]
5643        [::std::mem::offset_of!(_zend_compiler_globals, multibyte) - 440usize];
5644    ["Offset of field: _zend_compiler_globals::detect_unicode"]
5645        [::std::mem::offset_of!(_zend_compiler_globals, detect_unicode) - 441usize];
5646    ["Offset of field: _zend_compiler_globals::encoding_declared"]
5647        [::std::mem::offset_of!(_zend_compiler_globals, encoding_declared) - 442usize];
5648    ["Offset of field: _zend_compiler_globals::ast"]
5649        [::std::mem::offset_of!(_zend_compiler_globals, ast) - 448usize];
5650    ["Offset of field: _zend_compiler_globals::ast_arena"]
5651        [::std::mem::offset_of!(_zend_compiler_globals, ast_arena) - 456usize];
5652    ["Offset of field: _zend_compiler_globals::delayed_oplines_stack"]
5653        [::std::mem::offset_of!(_zend_compiler_globals, delayed_oplines_stack) - 464usize];
5654    ["Offset of field: _zend_compiler_globals::memoized_exprs"]
5655        [::std::mem::offset_of!(_zend_compiler_globals, memoized_exprs) - 488usize];
5656    ["Offset of field: _zend_compiler_globals::memoize_mode"]
5657        [::std::mem::offset_of!(_zend_compiler_globals, memoize_mode) - 496usize];
5658    ["Offset of field: _zend_compiler_globals::map_ptr_real_base"]
5659        [::std::mem::offset_of!(_zend_compiler_globals, map_ptr_real_base) - 504usize];
5660    ["Offset of field: _zend_compiler_globals::map_ptr_base"]
5661        [::std::mem::offset_of!(_zend_compiler_globals, map_ptr_base) - 512usize];
5662    ["Offset of field: _zend_compiler_globals::map_ptr_size"]
5663        [::std::mem::offset_of!(_zend_compiler_globals, map_ptr_size) - 520usize];
5664    ["Offset of field: _zend_compiler_globals::map_ptr_last"]
5665        [::std::mem::offset_of!(_zend_compiler_globals, map_ptr_last) - 528usize];
5666    ["Offset of field: _zend_compiler_globals::delayed_variance_obligations"]
5667        [::std::mem::offset_of!(_zend_compiler_globals, delayed_variance_obligations) - 536usize];
5668    ["Offset of field: _zend_compiler_globals::delayed_autoloads"]
5669        [::std::mem::offset_of!(_zend_compiler_globals, delayed_autoloads) - 544usize];
5670    ["Offset of field: _zend_compiler_globals::unlinked_uses"]
5671        [::std::mem::offset_of!(_zend_compiler_globals, unlinked_uses) - 552usize];
5672    ["Offset of field: _zend_compiler_globals::current_linking_class"]
5673        [::std::mem::offset_of!(_zend_compiler_globals, current_linking_class) - 560usize];
5674    ["Offset of field: _zend_compiler_globals::rtd_key_counter"]
5675        [::std::mem::offset_of!(_zend_compiler_globals, rtd_key_counter) - 568usize];
5676    ["Offset of field: _zend_compiler_globals::internal_run_time_cache"]
5677        [::std::mem::offset_of!(_zend_compiler_globals, internal_run_time_cache) - 576usize];
5678    ["Offset of field: _zend_compiler_globals::internal_run_time_cache_size"]
5679        [::std::mem::offset_of!(_zend_compiler_globals, internal_run_time_cache_size) - 584usize];
5680    ["Offset of field: _zend_compiler_globals::short_circuiting_opnums"]
5681        [::std::mem::offset_of!(_zend_compiler_globals, short_circuiting_opnums) - 592usize];
5682};
5683#[repr(C)]
5684#[derive(Debug, Copy, Clone)]
5685pub struct zend_atomic_bool_s {
5686    pub value: bool,
5687}
5688#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5689const _: () = {
5690    ["Size of zend_atomic_bool_s"][::std::mem::size_of::<zend_atomic_bool_s>() - 1usize];
5691    ["Alignment of zend_atomic_bool_s"][::std::mem::align_of::<zend_atomic_bool_s>() - 1usize];
5692    ["Offset of field: zend_atomic_bool_s::value"]
5693        [::std::mem::offset_of!(zend_atomic_bool_s, value) - 0usize];
5694};
5695pub type zend_atomic_bool = zend_atomic_bool_s;
5696#[repr(C)]
5697#[derive(Debug, Copy, Clone)]
5698pub struct zend_atomic_int_s {
5699    pub value: ::std::os::raw::c_int,
5700}
5701#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5702const _: () = {
5703    ["Size of zend_atomic_int_s"][::std::mem::size_of::<zend_atomic_int_s>() - 4usize];
5704    ["Alignment of zend_atomic_int_s"][::std::mem::align_of::<zend_atomic_int_s>() - 4usize];
5705    ["Offset of field: zend_atomic_int_s::value"]
5706        [::std::mem::offset_of!(zend_atomic_int_s, value) - 0usize];
5707};
5708pub type zend_atomic_int = zend_atomic_int_s;
5709#[repr(C)]
5710#[derive(Debug, Copy, Clone)]
5711pub struct _zend_stack {
5712    pub size: ::std::os::raw::c_int,
5713    pub top: ::std::os::raw::c_int,
5714    pub max: ::std::os::raw::c_int,
5715    pub elements: *mut ::std::os::raw::c_void,
5716}
5717#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5718const _: () = {
5719    ["Size of _zend_stack"][::std::mem::size_of::<_zend_stack>() - 24usize];
5720    ["Alignment of _zend_stack"][::std::mem::align_of::<_zend_stack>() - 8usize];
5721    ["Offset of field: _zend_stack::size"][::std::mem::offset_of!(_zend_stack, size) - 0usize];
5722    ["Offset of field: _zend_stack::top"][::std::mem::offset_of!(_zend_stack, top) - 4usize];
5723    ["Offset of field: _zend_stack::max"][::std::mem::offset_of!(_zend_stack, max) - 8usize];
5724    ["Offset of field: _zend_stack::elements"]
5725        [::std::mem::offset_of!(_zend_stack, elements) - 16usize];
5726};
5727pub type zend_stack = _zend_stack;
5728pub mod zend_stack_apply_direction {
5729    #[allow(unused_imports)]
5730    use super::*;
5731    pub type Type = ::std::os::raw::c_uint;
5732    pub const ZEND_STACK_APPLY_TOPDOWN: Type = 0;
5733    pub const ZEND_STACK_APPLY_BOTTOMUP: Type = 1;
5734}
5735#[repr(C)]
5736#[derive(Debug, Copy, Clone)]
5737pub struct _zend_ptr_stack {
5738    pub top: ::std::os::raw::c_int,
5739    pub max: ::std::os::raw::c_int,
5740    pub elements: *mut *mut ::std::os::raw::c_void,
5741    pub top_element: *mut *mut ::std::os::raw::c_void,
5742    pub persistent: bool,
5743}
5744#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5745const _: () = {
5746    ["Size of _zend_ptr_stack"][::std::mem::size_of::<_zend_ptr_stack>() - 32usize];
5747    ["Alignment of _zend_ptr_stack"][::std::mem::align_of::<_zend_ptr_stack>() - 8usize];
5748    ["Offset of field: _zend_ptr_stack::top"]
5749        [::std::mem::offset_of!(_zend_ptr_stack, top) - 0usize];
5750    ["Offset of field: _zend_ptr_stack::max"]
5751        [::std::mem::offset_of!(_zend_ptr_stack, max) - 4usize];
5752    ["Offset of field: _zend_ptr_stack::elements"]
5753        [::std::mem::offset_of!(_zend_ptr_stack, elements) - 8usize];
5754    ["Offset of field: _zend_ptr_stack::top_element"]
5755        [::std::mem::offset_of!(_zend_ptr_stack, top_element) - 16usize];
5756    ["Offset of field: _zend_ptr_stack::persistent"]
5757        [::std::mem::offset_of!(_zend_ptr_stack, persistent) - 24usize];
5758};
5759pub type zend_ptr_stack = _zend_ptr_stack;
5760#[repr(C)]
5761#[derive(Debug, Copy, Clone)]
5762pub struct _zend_objects_store {
5763    pub object_buckets: *mut *mut zend_object,
5764    pub top: u32,
5765    pub size: u32,
5766    pub free_list_head: ::std::os::raw::c_int,
5767}
5768#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5769const _: () = {
5770    ["Size of _zend_objects_store"][::std::mem::size_of::<_zend_objects_store>() - 24usize];
5771    ["Alignment of _zend_objects_store"][::std::mem::align_of::<_zend_objects_store>() - 8usize];
5772    ["Offset of field: _zend_objects_store::object_buckets"]
5773        [::std::mem::offset_of!(_zend_objects_store, object_buckets) - 0usize];
5774    ["Offset of field: _zend_objects_store::top"]
5775        [::std::mem::offset_of!(_zend_objects_store, top) - 8usize];
5776    ["Offset of field: _zend_objects_store::size"]
5777        [::std::mem::offset_of!(_zend_objects_store, size) - 12usize];
5778    ["Offset of field: _zend_objects_store::free_list_head"]
5779        [::std::mem::offset_of!(_zend_objects_store, free_list_head) - 16usize];
5780};
5781pub type zend_objects_store = _zend_objects_store;
5782#[repr(C)]
5783#[derive(Debug)]
5784pub struct _zend_encoding {
5785    _unused: [u8; 0],
5786}
5787pub type zend_encoding = _zend_encoding;
5788pub type zend_encoding_filter = ::std::option::Option<
5789    unsafe extern "C" fn(
5790        str_: *mut *mut ::std::os::raw::c_uchar,
5791        str_length: *mut usize,
5792        buf: *const ::std::os::raw::c_uchar,
5793        length: usize,
5794    ) -> usize,
5795>;
5796pub type zend_encoding_fetcher = ::std::option::Option<
5797    unsafe extern "C" fn(encoding_name: *const ::std::os::raw::c_char) -> *const zend_encoding,
5798>;
5799pub type zend_encoding_name_getter = ::std::option::Option<
5800    unsafe extern "C" fn(encoding: *const zend_encoding) -> *const ::std::os::raw::c_char,
5801>;
5802pub type zend_encoding_lexer_compatibility_checker =
5803    ::std::option::Option<unsafe extern "C" fn(encoding: *const zend_encoding) -> bool>;
5804pub type zend_encoding_detector = ::std::option::Option<
5805    unsafe extern "C" fn(
5806        string: *const ::std::os::raw::c_uchar,
5807        length: usize,
5808        list: *mut *const zend_encoding,
5809        list_size: usize,
5810    ) -> *const zend_encoding,
5811>;
5812pub type zend_encoding_converter = ::std::option::Option<
5813    unsafe extern "C" fn(
5814        to: *mut *mut ::std::os::raw::c_uchar,
5815        to_length: *mut usize,
5816        from: *const ::std::os::raw::c_uchar,
5817        from_length: usize,
5818        encoding_to: *const zend_encoding,
5819        encoding_from: *const zend_encoding,
5820    ) -> usize,
5821>;
5822pub type zend_encoding_list_parser = ::std::option::Option<
5823    unsafe extern "C" fn(
5824        encoding_list: *const ::std::os::raw::c_char,
5825        encoding_list_len: usize,
5826        return_list: *mut *mut *const zend_encoding,
5827        return_size: *mut usize,
5828        persistent: bool,
5829    ) -> zend_result,
5830>;
5831pub type zend_encoding_internal_encoding_getter =
5832    ::std::option::Option<unsafe extern "C" fn() -> *const zend_encoding>;
5833pub type zend_encoding_internal_encoding_setter =
5834    ::std::option::Option<unsafe extern "C" fn(encoding: *const zend_encoding) -> zend_result>;
5835#[repr(C)]
5836#[derive(Debug, Copy, Clone)]
5837pub struct _zend_multibyte_functions {
5838    pub provider_name: *const ::std::os::raw::c_char,
5839    pub encoding_fetcher: zend_encoding_fetcher,
5840    pub encoding_name_getter: zend_encoding_name_getter,
5841    pub lexer_compatibility_checker: zend_encoding_lexer_compatibility_checker,
5842    pub encoding_detector: zend_encoding_detector,
5843    pub encoding_converter: zend_encoding_converter,
5844    pub encoding_list_parser: zend_encoding_list_parser,
5845    pub internal_encoding_getter: zend_encoding_internal_encoding_getter,
5846    pub internal_encoding_setter: zend_encoding_internal_encoding_setter,
5847}
5848#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5849const _: () = {
5850    ["Size of _zend_multibyte_functions"]
5851        [::std::mem::size_of::<_zend_multibyte_functions>() - 72usize];
5852    ["Alignment of _zend_multibyte_functions"]
5853        [::std::mem::align_of::<_zend_multibyte_functions>() - 8usize];
5854    ["Offset of field: _zend_multibyte_functions::provider_name"]
5855        [::std::mem::offset_of!(_zend_multibyte_functions, provider_name) - 0usize];
5856    ["Offset of field: _zend_multibyte_functions::encoding_fetcher"]
5857        [::std::mem::offset_of!(_zend_multibyte_functions, encoding_fetcher) - 8usize];
5858    ["Offset of field: _zend_multibyte_functions::encoding_name_getter"]
5859        [::std::mem::offset_of!(_zend_multibyte_functions, encoding_name_getter) - 16usize];
5860    ["Offset of field: _zend_multibyte_functions::lexer_compatibility_checker"]
5861        [::std::mem::offset_of!(_zend_multibyte_functions, lexer_compatibility_checker) - 24usize];
5862    ["Offset of field: _zend_multibyte_functions::encoding_detector"]
5863        [::std::mem::offset_of!(_zend_multibyte_functions, encoding_detector) - 32usize];
5864    ["Offset of field: _zend_multibyte_functions::encoding_converter"]
5865        [::std::mem::offset_of!(_zend_multibyte_functions, encoding_converter) - 40usize];
5866    ["Offset of field: _zend_multibyte_functions::encoding_list_parser"]
5867        [::std::mem::offset_of!(_zend_multibyte_functions, encoding_list_parser) - 48usize];
5868    ["Offset of field: _zend_multibyte_functions::internal_encoding_getter"]
5869        [::std::mem::offset_of!(_zend_multibyte_functions, internal_encoding_getter) - 56usize];
5870    ["Offset of field: _zend_multibyte_functions::internal_encoding_setter"]
5871        [::std::mem::offset_of!(_zend_multibyte_functions, internal_encoding_setter) - 64usize];
5872};
5873pub type zend_multibyte_functions = _zend_multibyte_functions;
5874pub type zend_arena = _zend_arena;
5875#[repr(C)]
5876#[derive(Debug, Copy, Clone)]
5877pub struct _zend_arena {
5878    pub ptr: *mut ::std::os::raw::c_char,
5879    pub end: *mut ::std::os::raw::c_char,
5880    pub prev: *mut zend_arena,
5881}
5882#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5883const _: () = {
5884    ["Size of _zend_arena"][::std::mem::size_of::<_zend_arena>() - 24usize];
5885    ["Alignment of _zend_arena"][::std::mem::align_of::<_zend_arena>() - 8usize];
5886    ["Offset of field: _zend_arena::ptr"][::std::mem::offset_of!(_zend_arena, ptr) - 0usize];
5887    ["Offset of field: _zend_arena::end"][::std::mem::offset_of!(_zend_arena, end) - 8usize];
5888    ["Offset of field: _zend_arena::prev"][::std::mem::offset_of!(_zend_arena, prev) - 16usize];
5889};
5890#[repr(C)]
5891#[derive(Debug, Copy, Clone)]
5892pub struct _zend_call_stack {
5893    pub base: *mut ::std::os::raw::c_void,
5894    pub max_size: usize,
5895}
5896#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5897const _: () = {
5898    ["Size of _zend_call_stack"][::std::mem::size_of::<_zend_call_stack>() - 16usize];
5899    ["Alignment of _zend_call_stack"][::std::mem::align_of::<_zend_call_stack>() - 8usize];
5900    ["Offset of field: _zend_call_stack::base"]
5901        [::std::mem::offset_of!(_zend_call_stack, base) - 0usize];
5902    ["Offset of field: _zend_call_stack::max_size"]
5903        [::std::mem::offset_of!(_zend_call_stack, max_size) - 8usize];
5904};
5905pub type zend_call_stack = _zend_call_stack;
5906pub type zend_vm_stack = *mut _zend_vm_stack;
5907pub type zend_ini_entry = _zend_ini_entry;
5908pub type zend_fiber_context = _zend_fiber_context;
5909pub type zend_fiber = _zend_fiber;
5910pub mod zend_memoize_mode {
5911    #[allow(unused_imports)]
5912    use super::*;
5913    pub type Type = ::std::os::raw::c_uint;
5914    pub const ZEND_MEMOIZE_NONE: Type = 0;
5915    pub const ZEND_MEMOIZE_COMPILE: Type = 1;
5916    pub const ZEND_MEMOIZE_FETCH: Type = 2;
5917}
5918#[repr(C)]
5919#[derive(Copy, Clone)]
5920pub struct _zend_executor_globals {
5921    pub uninitialized_zval: zval,
5922    pub error_zval: zval,
5923    pub symtable_cache: [*mut zend_array; 32usize],
5924    pub symtable_cache_limit: *mut *mut zend_array,
5925    pub symtable_cache_ptr: *mut *mut zend_array,
5926    pub symbol_table: zend_array,
5927    pub included_files: HashTable,
5928    pub bailout: *mut sigjmp_buf,
5929    pub error_reporting: ::std::os::raw::c_int,
5930    pub fatal_error_backtrace_on: bool,
5931    pub last_fatal_error_backtrace: zval,
5932    pub exit_status: ::std::os::raw::c_int,
5933    pub function_table: *mut HashTable,
5934    pub class_table: *mut HashTable,
5935    pub zend_constants: *mut HashTable,
5936    pub vm_stack_top: *mut zval,
5937    pub vm_stack_end: *mut zval,
5938    pub vm_stack: zend_vm_stack,
5939    pub vm_stack_page_size: usize,
5940    pub current_execute_data: *mut _zend_execute_data,
5941    pub fake_scope: *const zend_class_entry,
5942    pub jit_trace_num: u32,
5943    pub current_observed_frame: *mut zend_execute_data,
5944    pub ticks_count: ::std::os::raw::c_int,
5945    pub precision: zend_long,
5946    pub persistent_constants_count: u32,
5947    pub persistent_functions_count: u32,
5948    pub persistent_classes_count: u32,
5949    pub no_extensions: bool,
5950    pub full_tables_cleanup: bool,
5951    pub vm_interrupt: zend_atomic_bool,
5952    pub timed_out: zend_atomic_bool,
5953    pub in_autoload: *mut HashTable,
5954    pub hard_timeout: zend_long,
5955    pub stack_base: *mut ::std::os::raw::c_void,
5956    pub stack_limit: *mut ::std::os::raw::c_void,
5957    pub regular_list: HashTable,
5958    pub persistent_list: HashTable,
5959    pub user_error_handler_error_reporting: ::std::os::raw::c_int,
5960    pub exception_ignore_args: bool,
5961    pub user_error_handler: zval,
5962    pub user_exception_handler: zval,
5963    pub user_error_handlers_error_reporting: zend_stack,
5964    pub user_error_handlers: zend_stack,
5965    pub user_exception_handlers: zend_stack,
5966    pub exception_class: *mut zend_class_entry,
5967    pub error_handling: zend_error_handling_t::Type,
5968    pub capture_warnings_during_sccp: ::std::os::raw::c_int,
5969    pub timeout_seconds: zend_long,
5970    pub ini_directives: *mut HashTable,
5971    pub modified_ini_directives: *mut HashTable,
5972    pub error_reporting_ini_entry: *mut zend_ini_entry,
5973    pub objects_store: zend_objects_store,
5974    pub lazy_objects_store: zend_lazy_objects_store,
5975    pub exception: *mut zend_object,
5976    pub prev_exception: *mut zend_object,
5977    pub opline_before_exception: *const zend_op,
5978    pub exception_op: [zend_op; 3usize],
5979    pub current_module: *mut _zend_module_entry,
5980    pub active: bool,
5981    pub flags: u8,
5982    pub assertions: zend_long,
5983    pub ht_iterators_count: u32,
5984    pub ht_iterators_used: u32,
5985    pub ht_iterators: *mut HashTableIterator,
5986    pub ht_iterators_slots: [HashTableIterator; 16usize],
5987    pub saved_fpu_cw_ptr: *mut ::std::os::raw::c_void,
5988    pub trampoline: zend_function,
5989    pub call_trampoline_op: zend_op,
5990    pub weakrefs: HashTable,
5991    pub exception_string_param_max_len: zend_long,
5992    pub get_gc_buffer: zend_get_gc_buffer,
5993    pub main_fiber_context: *mut zend_fiber_context,
5994    pub current_fiber_context: *mut zend_fiber_context,
5995    pub active_fiber: *mut zend_fiber,
5996    pub fiber_stack_size: usize,
5997    pub record_errors: bool,
5998    pub num_errors: u32,
5999    pub errors: *mut *mut zend_error_info,
6000    pub filename_override: *mut zend_string,
6001    pub lineno_override: zend_long,
6002    pub call_stack: zend_call_stack,
6003    pub max_allowed_stack_size: zend_long,
6004    pub reserved_stack_size: zend_ulong,
6005    pub strtod_state: zend_strtod_state,
6006    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
6007}
6008#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6009const _: () = {
6010    ["Size of _zend_executor_globals"][::std::mem::size_of::<_zend_executor_globals>() - 1984usize];
6011    ["Alignment of _zend_executor_globals"]
6012        [::std::mem::align_of::<_zend_executor_globals>() - 8usize];
6013    ["Offset of field: _zend_executor_globals::uninitialized_zval"]
6014        [::std::mem::offset_of!(_zend_executor_globals, uninitialized_zval) - 0usize];
6015    ["Offset of field: _zend_executor_globals::error_zval"]
6016        [::std::mem::offset_of!(_zend_executor_globals, error_zval) - 16usize];
6017    ["Offset of field: _zend_executor_globals::symtable_cache"]
6018        [::std::mem::offset_of!(_zend_executor_globals, symtable_cache) - 32usize];
6019    ["Offset of field: _zend_executor_globals::symtable_cache_limit"]
6020        [::std::mem::offset_of!(_zend_executor_globals, symtable_cache_limit) - 288usize];
6021    ["Offset of field: _zend_executor_globals::symtable_cache_ptr"]
6022        [::std::mem::offset_of!(_zend_executor_globals, symtable_cache_ptr) - 296usize];
6023    ["Offset of field: _zend_executor_globals::symbol_table"]
6024        [::std::mem::offset_of!(_zend_executor_globals, symbol_table) - 304usize];
6025    ["Offset of field: _zend_executor_globals::included_files"]
6026        [::std::mem::offset_of!(_zend_executor_globals, included_files) - 360usize];
6027    ["Offset of field: _zend_executor_globals::bailout"]
6028        [::std::mem::offset_of!(_zend_executor_globals, bailout) - 416usize];
6029    ["Offset of field: _zend_executor_globals::error_reporting"]
6030        [::std::mem::offset_of!(_zend_executor_globals, error_reporting) - 424usize];
6031    ["Offset of field: _zend_executor_globals::fatal_error_backtrace_on"]
6032        [::std::mem::offset_of!(_zend_executor_globals, fatal_error_backtrace_on) - 428usize];
6033    ["Offset of field: _zend_executor_globals::last_fatal_error_backtrace"]
6034        [::std::mem::offset_of!(_zend_executor_globals, last_fatal_error_backtrace) - 432usize];
6035    ["Offset of field: _zend_executor_globals::exit_status"]
6036        [::std::mem::offset_of!(_zend_executor_globals, exit_status) - 448usize];
6037    ["Offset of field: _zend_executor_globals::function_table"]
6038        [::std::mem::offset_of!(_zend_executor_globals, function_table) - 456usize];
6039    ["Offset of field: _zend_executor_globals::class_table"]
6040        [::std::mem::offset_of!(_zend_executor_globals, class_table) - 464usize];
6041    ["Offset of field: _zend_executor_globals::zend_constants"]
6042        [::std::mem::offset_of!(_zend_executor_globals, zend_constants) - 472usize];
6043    ["Offset of field: _zend_executor_globals::vm_stack_top"]
6044        [::std::mem::offset_of!(_zend_executor_globals, vm_stack_top) - 480usize];
6045    ["Offset of field: _zend_executor_globals::vm_stack_end"]
6046        [::std::mem::offset_of!(_zend_executor_globals, vm_stack_end) - 488usize];
6047    ["Offset of field: _zend_executor_globals::vm_stack"]
6048        [::std::mem::offset_of!(_zend_executor_globals, vm_stack) - 496usize];
6049    ["Offset of field: _zend_executor_globals::vm_stack_page_size"]
6050        [::std::mem::offset_of!(_zend_executor_globals, vm_stack_page_size) - 504usize];
6051    ["Offset of field: _zend_executor_globals::current_execute_data"]
6052        [::std::mem::offset_of!(_zend_executor_globals, current_execute_data) - 512usize];
6053    ["Offset of field: _zend_executor_globals::fake_scope"]
6054        [::std::mem::offset_of!(_zend_executor_globals, fake_scope) - 520usize];
6055    ["Offset of field: _zend_executor_globals::jit_trace_num"]
6056        [::std::mem::offset_of!(_zend_executor_globals, jit_trace_num) - 528usize];
6057    ["Offset of field: _zend_executor_globals::current_observed_frame"]
6058        [::std::mem::offset_of!(_zend_executor_globals, current_observed_frame) - 536usize];
6059    ["Offset of field: _zend_executor_globals::ticks_count"]
6060        [::std::mem::offset_of!(_zend_executor_globals, ticks_count) - 544usize];
6061    ["Offset of field: _zend_executor_globals::precision"]
6062        [::std::mem::offset_of!(_zend_executor_globals, precision) - 552usize];
6063    ["Offset of field: _zend_executor_globals::persistent_constants_count"]
6064        [::std::mem::offset_of!(_zend_executor_globals, persistent_constants_count) - 560usize];
6065    ["Offset of field: _zend_executor_globals::persistent_functions_count"]
6066        [::std::mem::offset_of!(_zend_executor_globals, persistent_functions_count) - 564usize];
6067    ["Offset of field: _zend_executor_globals::persistent_classes_count"]
6068        [::std::mem::offset_of!(_zend_executor_globals, persistent_classes_count) - 568usize];
6069    ["Offset of field: _zend_executor_globals::no_extensions"]
6070        [::std::mem::offset_of!(_zend_executor_globals, no_extensions) - 572usize];
6071    ["Offset of field: _zend_executor_globals::full_tables_cleanup"]
6072        [::std::mem::offset_of!(_zend_executor_globals, full_tables_cleanup) - 573usize];
6073    ["Offset of field: _zend_executor_globals::vm_interrupt"]
6074        [::std::mem::offset_of!(_zend_executor_globals, vm_interrupt) - 574usize];
6075    ["Offset of field: _zend_executor_globals::timed_out"]
6076        [::std::mem::offset_of!(_zend_executor_globals, timed_out) - 575usize];
6077    ["Offset of field: _zend_executor_globals::in_autoload"]
6078        [::std::mem::offset_of!(_zend_executor_globals, in_autoload) - 576usize];
6079    ["Offset of field: _zend_executor_globals::hard_timeout"]
6080        [::std::mem::offset_of!(_zend_executor_globals, hard_timeout) - 584usize];
6081    ["Offset of field: _zend_executor_globals::stack_base"]
6082        [::std::mem::offset_of!(_zend_executor_globals, stack_base) - 592usize];
6083    ["Offset of field: _zend_executor_globals::stack_limit"]
6084        [::std::mem::offset_of!(_zend_executor_globals, stack_limit) - 600usize];
6085    ["Offset of field: _zend_executor_globals::regular_list"]
6086        [::std::mem::offset_of!(_zend_executor_globals, regular_list) - 608usize];
6087    ["Offset of field: _zend_executor_globals::persistent_list"]
6088        [::std::mem::offset_of!(_zend_executor_globals, persistent_list) - 664usize];
6089    ["Offset of field: _zend_executor_globals::user_error_handler_error_reporting"][::std::mem::offset_of!(
6090        _zend_executor_globals,
6091        user_error_handler_error_reporting
6092    ) - 720usize];
6093    ["Offset of field: _zend_executor_globals::exception_ignore_args"]
6094        [::std::mem::offset_of!(_zend_executor_globals, exception_ignore_args) - 724usize];
6095    ["Offset of field: _zend_executor_globals::user_error_handler"]
6096        [::std::mem::offset_of!(_zend_executor_globals, user_error_handler) - 728usize];
6097    ["Offset of field: _zend_executor_globals::user_exception_handler"]
6098        [::std::mem::offset_of!(_zend_executor_globals, user_exception_handler) - 744usize];
6099    ["Offset of field: _zend_executor_globals::user_error_handlers_error_reporting"][::std::mem::offset_of!(
6100        _zend_executor_globals,
6101        user_error_handlers_error_reporting
6102    ) - 760usize];
6103    ["Offset of field: _zend_executor_globals::user_error_handlers"]
6104        [::std::mem::offset_of!(_zend_executor_globals, user_error_handlers) - 784usize];
6105    ["Offset of field: _zend_executor_globals::user_exception_handlers"]
6106        [::std::mem::offset_of!(_zend_executor_globals, user_exception_handlers) - 808usize];
6107    ["Offset of field: _zend_executor_globals::exception_class"]
6108        [::std::mem::offset_of!(_zend_executor_globals, exception_class) - 832usize];
6109    ["Offset of field: _zend_executor_globals::error_handling"]
6110        [::std::mem::offset_of!(_zend_executor_globals, error_handling) - 840usize];
6111    ["Offset of field: _zend_executor_globals::capture_warnings_during_sccp"]
6112        [::std::mem::offset_of!(_zend_executor_globals, capture_warnings_during_sccp) - 844usize];
6113    ["Offset of field: _zend_executor_globals::timeout_seconds"]
6114        [::std::mem::offset_of!(_zend_executor_globals, timeout_seconds) - 848usize];
6115    ["Offset of field: _zend_executor_globals::ini_directives"]
6116        [::std::mem::offset_of!(_zend_executor_globals, ini_directives) - 856usize];
6117    ["Offset of field: _zend_executor_globals::modified_ini_directives"]
6118        [::std::mem::offset_of!(_zend_executor_globals, modified_ini_directives) - 864usize];
6119    ["Offset of field: _zend_executor_globals::error_reporting_ini_entry"]
6120        [::std::mem::offset_of!(_zend_executor_globals, error_reporting_ini_entry) - 872usize];
6121    ["Offset of field: _zend_executor_globals::objects_store"]
6122        [::std::mem::offset_of!(_zend_executor_globals, objects_store) - 880usize];
6123    ["Offset of field: _zend_executor_globals::lazy_objects_store"]
6124        [::std::mem::offset_of!(_zend_executor_globals, lazy_objects_store) - 904usize];
6125    ["Offset of field: _zend_executor_globals::exception"]
6126        [::std::mem::offset_of!(_zend_executor_globals, exception) - 960usize];
6127    ["Offset of field: _zend_executor_globals::prev_exception"]
6128        [::std::mem::offset_of!(_zend_executor_globals, prev_exception) - 968usize];
6129    ["Offset of field: _zend_executor_globals::opline_before_exception"]
6130        [::std::mem::offset_of!(_zend_executor_globals, opline_before_exception) - 976usize];
6131    ["Offset of field: _zend_executor_globals::exception_op"]
6132        [::std::mem::offset_of!(_zend_executor_globals, exception_op) - 984usize];
6133    ["Offset of field: _zend_executor_globals::current_module"]
6134        [::std::mem::offset_of!(_zend_executor_globals, current_module) - 1080usize];
6135    ["Offset of field: _zend_executor_globals::active"]
6136        [::std::mem::offset_of!(_zend_executor_globals, active) - 1088usize];
6137    ["Offset of field: _zend_executor_globals::flags"]
6138        [::std::mem::offset_of!(_zend_executor_globals, flags) - 1089usize];
6139    ["Offset of field: _zend_executor_globals::assertions"]
6140        [::std::mem::offset_of!(_zend_executor_globals, assertions) - 1096usize];
6141    ["Offset of field: _zend_executor_globals::ht_iterators_count"]
6142        [::std::mem::offset_of!(_zend_executor_globals, ht_iterators_count) - 1104usize];
6143    ["Offset of field: _zend_executor_globals::ht_iterators_used"]
6144        [::std::mem::offset_of!(_zend_executor_globals, ht_iterators_used) - 1108usize];
6145    ["Offset of field: _zend_executor_globals::ht_iterators"]
6146        [::std::mem::offset_of!(_zend_executor_globals, ht_iterators) - 1112usize];
6147    ["Offset of field: _zend_executor_globals::ht_iterators_slots"]
6148        [::std::mem::offset_of!(_zend_executor_globals, ht_iterators_slots) - 1120usize];
6149    ["Offset of field: _zend_executor_globals::saved_fpu_cw_ptr"]
6150        [::std::mem::offset_of!(_zend_executor_globals, saved_fpu_cw_ptr) - 1376usize];
6151    ["Offset of field: _zend_executor_globals::trampoline"]
6152        [::std::mem::offset_of!(_zend_executor_globals, trampoline) - 1384usize];
6153    ["Offset of field: _zend_executor_globals::call_trampoline_op"]
6154        [::std::mem::offset_of!(_zend_executor_globals, call_trampoline_op) - 1640usize];
6155    ["Offset of field: _zend_executor_globals::weakrefs"]
6156        [::std::mem::offset_of!(_zend_executor_globals, weakrefs) - 1672usize];
6157    ["Offset of field: _zend_executor_globals::exception_string_param_max_len"][::std::mem::offset_of!(
6158        _zend_executor_globals,
6159        exception_string_param_max_len
6160    ) - 1728usize];
6161    ["Offset of field: _zend_executor_globals::get_gc_buffer"]
6162        [::std::mem::offset_of!(_zend_executor_globals, get_gc_buffer) - 1736usize];
6163    ["Offset of field: _zend_executor_globals::main_fiber_context"]
6164        [::std::mem::offset_of!(_zend_executor_globals, main_fiber_context) - 1760usize];
6165    ["Offset of field: _zend_executor_globals::current_fiber_context"]
6166        [::std::mem::offset_of!(_zend_executor_globals, current_fiber_context) - 1768usize];
6167    ["Offset of field: _zend_executor_globals::active_fiber"]
6168        [::std::mem::offset_of!(_zend_executor_globals, active_fiber) - 1776usize];
6169    ["Offset of field: _zend_executor_globals::fiber_stack_size"]
6170        [::std::mem::offset_of!(_zend_executor_globals, fiber_stack_size) - 1784usize];
6171    ["Offset of field: _zend_executor_globals::record_errors"]
6172        [::std::mem::offset_of!(_zend_executor_globals, record_errors) - 1792usize];
6173    ["Offset of field: _zend_executor_globals::num_errors"]
6174        [::std::mem::offset_of!(_zend_executor_globals, num_errors) - 1796usize];
6175    ["Offset of field: _zend_executor_globals::errors"]
6176        [::std::mem::offset_of!(_zend_executor_globals, errors) - 1800usize];
6177    ["Offset of field: _zend_executor_globals::filename_override"]
6178        [::std::mem::offset_of!(_zend_executor_globals, filename_override) - 1808usize];
6179    ["Offset of field: _zend_executor_globals::lineno_override"]
6180        [::std::mem::offset_of!(_zend_executor_globals, lineno_override) - 1816usize];
6181    ["Offset of field: _zend_executor_globals::call_stack"]
6182        [::std::mem::offset_of!(_zend_executor_globals, call_stack) - 1824usize];
6183    ["Offset of field: _zend_executor_globals::max_allowed_stack_size"]
6184        [::std::mem::offset_of!(_zend_executor_globals, max_allowed_stack_size) - 1840usize];
6185    ["Offset of field: _zend_executor_globals::reserved_stack_size"]
6186        [::std::mem::offset_of!(_zend_executor_globals, reserved_stack_size) - 1848usize];
6187    ["Offset of field: _zend_executor_globals::strtod_state"]
6188        [::std::mem::offset_of!(_zend_executor_globals, strtod_state) - 1856usize];
6189    ["Offset of field: _zend_executor_globals::reserved"]
6190        [::std::mem::offset_of!(_zend_executor_globals, reserved) - 1936usize];
6191};
6192#[repr(C)]
6193#[derive(Debug, Copy, Clone)]
6194pub struct _zend_ini_scanner_globals {
6195    pub yy_in: *mut zend_file_handle,
6196    pub yy_out: *mut zend_file_handle,
6197    pub yy_leng: ::std::os::raw::c_uint,
6198    pub yy_start: *const ::std::os::raw::c_uchar,
6199    pub yy_text: *const ::std::os::raw::c_uchar,
6200    pub yy_cursor: *const ::std::os::raw::c_uchar,
6201    pub yy_marker: *const ::std::os::raw::c_uchar,
6202    pub yy_limit: *const ::std::os::raw::c_uchar,
6203    pub yy_state: ::std::os::raw::c_int,
6204    pub state_stack: zend_stack,
6205    pub filename: *mut zend_string,
6206    pub lineno: ::std::os::raw::c_int,
6207    pub scanner_mode: ::std::os::raw::c_int,
6208}
6209#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6210const _: () = {
6211    ["Size of _zend_ini_scanner_globals"]
6212        [::std::mem::size_of::<_zend_ini_scanner_globals>() - 112usize];
6213    ["Alignment of _zend_ini_scanner_globals"]
6214        [::std::mem::align_of::<_zend_ini_scanner_globals>() - 8usize];
6215    ["Offset of field: _zend_ini_scanner_globals::yy_in"]
6216        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_in) - 0usize];
6217    ["Offset of field: _zend_ini_scanner_globals::yy_out"]
6218        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_out) - 8usize];
6219    ["Offset of field: _zend_ini_scanner_globals::yy_leng"]
6220        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_leng) - 16usize];
6221    ["Offset of field: _zend_ini_scanner_globals::yy_start"]
6222        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_start) - 24usize];
6223    ["Offset of field: _zend_ini_scanner_globals::yy_text"]
6224        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_text) - 32usize];
6225    ["Offset of field: _zend_ini_scanner_globals::yy_cursor"]
6226        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_cursor) - 40usize];
6227    ["Offset of field: _zend_ini_scanner_globals::yy_marker"]
6228        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_marker) - 48usize];
6229    ["Offset of field: _zend_ini_scanner_globals::yy_limit"]
6230        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_limit) - 56usize];
6231    ["Offset of field: _zend_ini_scanner_globals::yy_state"]
6232        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_state) - 64usize];
6233    ["Offset of field: _zend_ini_scanner_globals::state_stack"]
6234        [::std::mem::offset_of!(_zend_ini_scanner_globals, state_stack) - 72usize];
6235    ["Offset of field: _zend_ini_scanner_globals::filename"]
6236        [::std::mem::offset_of!(_zend_ini_scanner_globals, filename) - 96usize];
6237    ["Offset of field: _zend_ini_scanner_globals::lineno"]
6238        [::std::mem::offset_of!(_zend_ini_scanner_globals, lineno) - 104usize];
6239    ["Offset of field: _zend_ini_scanner_globals::scanner_mode"]
6240        [::std::mem::offset_of!(_zend_ini_scanner_globals, scanner_mode) - 108usize];
6241};
6242pub mod zend_php_scanner_event {
6243    #[allow(unused_imports)]
6244    use super::*;
6245    pub type Type = ::std::os::raw::c_uint;
6246    pub const ON_TOKEN: Type = 0;
6247    pub const ON_FEEDBACK: Type = 1;
6248    pub const ON_STOP: Type = 2;
6249}
6250#[repr(C)]
6251#[derive(Debug, Copy, Clone)]
6252pub struct _zend_php_scanner_globals {
6253    pub yy_in: *mut zend_file_handle,
6254    pub yy_out: *mut zend_file_handle,
6255    pub yy_leng: ::std::os::raw::c_uint,
6256    pub yy_start: *mut ::std::os::raw::c_uchar,
6257    pub yy_text: *mut ::std::os::raw::c_uchar,
6258    pub yy_cursor: *mut ::std::os::raw::c_uchar,
6259    pub yy_marker: *mut ::std::os::raw::c_uchar,
6260    pub yy_limit: *mut ::std::os::raw::c_uchar,
6261    pub yy_state: ::std::os::raw::c_int,
6262    pub state_stack: zend_stack,
6263    pub heredoc_label_stack: zend_ptr_stack,
6264    pub nest_location_stack: zend_stack,
6265    pub heredoc_scan_ahead: bool,
6266    pub heredoc_indentation: ::std::os::raw::c_int,
6267    pub heredoc_indentation_uses_spaces: bool,
6268    pub script_org: *mut ::std::os::raw::c_uchar,
6269    pub script_org_size: usize,
6270    pub script_filtered: *mut ::std::os::raw::c_uchar,
6271    pub script_filtered_size: usize,
6272    pub input_filter: zend_encoding_filter,
6273    pub output_filter: zend_encoding_filter,
6274    pub script_encoding: *const zend_encoding,
6275    pub scanned_string_len: ::std::os::raw::c_int,
6276    pub on_event: ::std::option::Option<
6277        unsafe extern "C" fn(
6278            event: zend_php_scanner_event::Type,
6279            token: ::std::os::raw::c_int,
6280            line: ::std::os::raw::c_int,
6281            text: *const ::std::os::raw::c_char,
6282            length: usize,
6283            context: *mut ::std::os::raw::c_void,
6284        ),
6285    >,
6286    pub on_event_context: *mut ::std::os::raw::c_void,
6287}
6288#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6289const _: () = {
6290    ["Size of _zend_php_scanner_globals"]
6291        [::std::mem::size_of::<_zend_php_scanner_globals>() - 248usize];
6292    ["Alignment of _zend_php_scanner_globals"]
6293        [::std::mem::align_of::<_zend_php_scanner_globals>() - 8usize];
6294    ["Offset of field: _zend_php_scanner_globals::yy_in"]
6295        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_in) - 0usize];
6296    ["Offset of field: _zend_php_scanner_globals::yy_out"]
6297        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_out) - 8usize];
6298    ["Offset of field: _zend_php_scanner_globals::yy_leng"]
6299        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_leng) - 16usize];
6300    ["Offset of field: _zend_php_scanner_globals::yy_start"]
6301        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_start) - 24usize];
6302    ["Offset of field: _zend_php_scanner_globals::yy_text"]
6303        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_text) - 32usize];
6304    ["Offset of field: _zend_php_scanner_globals::yy_cursor"]
6305        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_cursor) - 40usize];
6306    ["Offset of field: _zend_php_scanner_globals::yy_marker"]
6307        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_marker) - 48usize];
6308    ["Offset of field: _zend_php_scanner_globals::yy_limit"]
6309        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_limit) - 56usize];
6310    ["Offset of field: _zend_php_scanner_globals::yy_state"]
6311        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_state) - 64usize];
6312    ["Offset of field: _zend_php_scanner_globals::state_stack"]
6313        [::std::mem::offset_of!(_zend_php_scanner_globals, state_stack) - 72usize];
6314    ["Offset of field: _zend_php_scanner_globals::heredoc_label_stack"]
6315        [::std::mem::offset_of!(_zend_php_scanner_globals, heredoc_label_stack) - 96usize];
6316    ["Offset of field: _zend_php_scanner_globals::nest_location_stack"]
6317        [::std::mem::offset_of!(_zend_php_scanner_globals, nest_location_stack) - 128usize];
6318    ["Offset of field: _zend_php_scanner_globals::heredoc_scan_ahead"]
6319        [::std::mem::offset_of!(_zend_php_scanner_globals, heredoc_scan_ahead) - 152usize];
6320    ["Offset of field: _zend_php_scanner_globals::heredoc_indentation"]
6321        [::std::mem::offset_of!(_zend_php_scanner_globals, heredoc_indentation) - 156usize];
6322    ["Offset of field: _zend_php_scanner_globals::heredoc_indentation_uses_spaces"][::std::mem::offset_of!(
6323        _zend_php_scanner_globals,
6324        heredoc_indentation_uses_spaces
6325    ) - 160usize];
6326    ["Offset of field: _zend_php_scanner_globals::script_org"]
6327        [::std::mem::offset_of!(_zend_php_scanner_globals, script_org) - 168usize];
6328    ["Offset of field: _zend_php_scanner_globals::script_org_size"]
6329        [::std::mem::offset_of!(_zend_php_scanner_globals, script_org_size) - 176usize];
6330    ["Offset of field: _zend_php_scanner_globals::script_filtered"]
6331        [::std::mem::offset_of!(_zend_php_scanner_globals, script_filtered) - 184usize];
6332    ["Offset of field: _zend_php_scanner_globals::script_filtered_size"]
6333        [::std::mem::offset_of!(_zend_php_scanner_globals, script_filtered_size) - 192usize];
6334    ["Offset of field: _zend_php_scanner_globals::input_filter"]
6335        [::std::mem::offset_of!(_zend_php_scanner_globals, input_filter) - 200usize];
6336    ["Offset of field: _zend_php_scanner_globals::output_filter"]
6337        [::std::mem::offset_of!(_zend_php_scanner_globals, output_filter) - 208usize];
6338    ["Offset of field: _zend_php_scanner_globals::script_encoding"]
6339        [::std::mem::offset_of!(_zend_php_scanner_globals, script_encoding) - 216usize];
6340    ["Offset of field: _zend_php_scanner_globals::scanned_string_len"]
6341        [::std::mem::offset_of!(_zend_php_scanner_globals, scanned_string_len) - 224usize];
6342    ["Offset of field: _zend_php_scanner_globals::on_event"]
6343        [::std::mem::offset_of!(_zend_php_scanner_globals, on_event) - 232usize];
6344    ["Offset of field: _zend_php_scanner_globals::on_event_context"]
6345        [::std::mem::offset_of!(_zend_php_scanner_globals, on_event_context) - 240usize];
6346};
6347pub mod _zend_compile_position {
6348    #[allow(unused_imports)]
6349    use super::*;
6350    pub type Type = ::std::os::raw::c_uint;
6351    pub const ZEND_COMPILE_POSITION_AT_SHEBANG: Type = 0;
6352    pub const ZEND_COMPILE_POSITION_AT_OPEN_TAG: Type = 1;
6353    pub const ZEND_COMPILE_POSITION_AFTER_OPEN_TAG: Type = 2;
6354}
6355pub use self::_zend_compile_position::Type as zend_compile_position;
6356pub type unary_op_type =
6357    ::std::option::Option<unsafe extern "C" fn(arg1: *mut zval, arg2: *mut zval) -> zend_result>;
6358pub type binary_op_type = ::std::option::Option<
6359    unsafe extern "C" fn(arg1: *mut zval, arg2: *mut zval, arg3: *mut zval) -> zend_result,
6360>;
6361pub mod zend_modifier_target {
6362    #[allow(unused_imports)]
6363    use super::*;
6364    pub type Type = ::std::os::raw::c_uint;
6365    pub const ZEND_MODIFIER_TARGET_PROPERTY: Type = 0;
6366    pub const ZEND_MODIFIER_TARGET_METHOD: Type = 1;
6367    pub const ZEND_MODIFIER_TARGET_CONSTANT: Type = 2;
6368    pub const ZEND_MODIFIER_TARGET_CPP: Type = 3;
6369    pub const ZEND_MODIFIER_TARGET_PROPERTY_HOOK: Type = 4;
6370}
6371pub type zend_needs_live_range_cb = ::std::option::Option<
6372    unsafe extern "C" fn(op_array: *mut zend_op_array, opline: *mut zend_op) -> bool,
6373>;
6374pub type zend_auto_global_callback =
6375    ::std::option::Option<unsafe extern "C" fn(name: *mut zend_string) -> bool>;
6376#[repr(C)]
6377#[derive(Debug, Copy, Clone)]
6378pub struct _zend_auto_global {
6379    pub name: *mut zend_string,
6380    pub auto_global_callback: zend_auto_global_callback,
6381    pub jit: bool,
6382    pub armed: bool,
6383}
6384#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6385const _: () = {
6386    ["Size of _zend_auto_global"][::std::mem::size_of::<_zend_auto_global>() - 24usize];
6387    ["Alignment of _zend_auto_global"][::std::mem::align_of::<_zend_auto_global>() - 8usize];
6388    ["Offset of field: _zend_auto_global::name"]
6389        [::std::mem::offset_of!(_zend_auto_global, name) - 0usize];
6390    ["Offset of field: _zend_auto_global::auto_global_callback"]
6391        [::std::mem::offset_of!(_zend_auto_global, auto_global_callback) - 8usize];
6392    ["Offset of field: _zend_auto_global::jit"]
6393        [::std::mem::offset_of!(_zend_auto_global, jit) - 16usize];
6394    ["Offset of field: _zend_auto_global::armed"]
6395        [::std::mem::offset_of!(_zend_auto_global, armed) - 17usize];
6396};
6397pub type zend_auto_global = _zend_auto_global;
6398pub type zend_module_entry = _zend_module_entry;
6399pub type zend_module_dep = _zend_module_dep;
6400#[repr(C)]
6401#[derive(Debug, Copy, Clone)]
6402pub struct _zend_module_entry {
6403    pub size: ::std::os::raw::c_ushort,
6404    pub zend_api: ::std::os::raw::c_uint,
6405    pub zend_debug: ::std::os::raw::c_uchar,
6406    pub zts: ::std::os::raw::c_uchar,
6407    pub ini_entry: *const _zend_ini_entry,
6408    pub deps: *const _zend_module_dep,
6409    pub name: *const ::std::os::raw::c_char,
6410    pub functions: *const _zend_function_entry,
6411    pub module_startup_func: ::std::option::Option<
6412        unsafe extern "C" fn(
6413            type_: ::std::os::raw::c_int,
6414            module_number: ::std::os::raw::c_int,
6415        ) -> zend_result,
6416    >,
6417    pub module_shutdown_func: ::std::option::Option<
6418        unsafe extern "C" fn(
6419            type_: ::std::os::raw::c_int,
6420            module_number: ::std::os::raw::c_int,
6421        ) -> zend_result,
6422    >,
6423    pub request_startup_func: ::std::option::Option<
6424        unsafe extern "C" fn(
6425            type_: ::std::os::raw::c_int,
6426            module_number: ::std::os::raw::c_int,
6427        ) -> zend_result,
6428    >,
6429    pub request_shutdown_func: ::std::option::Option<
6430        unsafe extern "C" fn(
6431            type_: ::std::os::raw::c_int,
6432            module_number: ::std::os::raw::c_int,
6433        ) -> zend_result,
6434    >,
6435    pub info_func: ::std::option::Option<unsafe extern "C" fn(zend_module: *mut zend_module_entry)>,
6436    pub version: *const ::std::os::raw::c_char,
6437    pub globals_size: usize,
6438    pub globals_ptr: *mut ::std::os::raw::c_void,
6439    pub globals_ctor:
6440        ::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
6441    pub globals_dtor:
6442        ::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
6443    pub post_deactivate_func: ::std::option::Option<unsafe extern "C" fn() -> zend_result>,
6444    pub module_started: ::std::os::raw::c_int,
6445    pub type_: ::std::os::raw::c_uchar,
6446    pub handle: *mut ::std::os::raw::c_void,
6447    pub module_number: ::std::os::raw::c_int,
6448    pub build_id: *const ::std::os::raw::c_char,
6449}
6450#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6451const _: () = {
6452    ["Size of _zend_module_entry"][::std::mem::size_of::<_zend_module_entry>() - 168usize];
6453    ["Alignment of _zend_module_entry"][::std::mem::align_of::<_zend_module_entry>() - 8usize];
6454    ["Offset of field: _zend_module_entry::size"]
6455        [::std::mem::offset_of!(_zend_module_entry, size) - 0usize];
6456    ["Offset of field: _zend_module_entry::zend_api"]
6457        [::std::mem::offset_of!(_zend_module_entry, zend_api) - 4usize];
6458    ["Offset of field: _zend_module_entry::zend_debug"]
6459        [::std::mem::offset_of!(_zend_module_entry, zend_debug) - 8usize];
6460    ["Offset of field: _zend_module_entry::zts"]
6461        [::std::mem::offset_of!(_zend_module_entry, zts) - 9usize];
6462    ["Offset of field: _zend_module_entry::ini_entry"]
6463        [::std::mem::offset_of!(_zend_module_entry, ini_entry) - 16usize];
6464    ["Offset of field: _zend_module_entry::deps"]
6465        [::std::mem::offset_of!(_zend_module_entry, deps) - 24usize];
6466    ["Offset of field: _zend_module_entry::name"]
6467        [::std::mem::offset_of!(_zend_module_entry, name) - 32usize];
6468    ["Offset of field: _zend_module_entry::functions"]
6469        [::std::mem::offset_of!(_zend_module_entry, functions) - 40usize];
6470    ["Offset of field: _zend_module_entry::module_startup_func"]
6471        [::std::mem::offset_of!(_zend_module_entry, module_startup_func) - 48usize];
6472    ["Offset of field: _zend_module_entry::module_shutdown_func"]
6473        [::std::mem::offset_of!(_zend_module_entry, module_shutdown_func) - 56usize];
6474    ["Offset of field: _zend_module_entry::request_startup_func"]
6475        [::std::mem::offset_of!(_zend_module_entry, request_startup_func) - 64usize];
6476    ["Offset of field: _zend_module_entry::request_shutdown_func"]
6477        [::std::mem::offset_of!(_zend_module_entry, request_shutdown_func) - 72usize];
6478    ["Offset of field: _zend_module_entry::info_func"]
6479        [::std::mem::offset_of!(_zend_module_entry, info_func) - 80usize];
6480    ["Offset of field: _zend_module_entry::version"]
6481        [::std::mem::offset_of!(_zend_module_entry, version) - 88usize];
6482    ["Offset of field: _zend_module_entry::globals_size"]
6483        [::std::mem::offset_of!(_zend_module_entry, globals_size) - 96usize];
6484    ["Offset of field: _zend_module_entry::globals_ptr"]
6485        [::std::mem::offset_of!(_zend_module_entry, globals_ptr) - 104usize];
6486    ["Offset of field: _zend_module_entry::globals_ctor"]
6487        [::std::mem::offset_of!(_zend_module_entry, globals_ctor) - 112usize];
6488    ["Offset of field: _zend_module_entry::globals_dtor"]
6489        [::std::mem::offset_of!(_zend_module_entry, globals_dtor) - 120usize];
6490    ["Offset of field: _zend_module_entry::post_deactivate_func"]
6491        [::std::mem::offset_of!(_zend_module_entry, post_deactivate_func) - 128usize];
6492    ["Offset of field: _zend_module_entry::module_started"]
6493        [::std::mem::offset_of!(_zend_module_entry, module_started) - 136usize];
6494    ["Offset of field: _zend_module_entry::type_"]
6495        [::std::mem::offset_of!(_zend_module_entry, type_) - 140usize];
6496    ["Offset of field: _zend_module_entry::handle"]
6497        [::std::mem::offset_of!(_zend_module_entry, handle) - 144usize];
6498    ["Offset of field: _zend_module_entry::module_number"]
6499        [::std::mem::offset_of!(_zend_module_entry, module_number) - 152usize];
6500    ["Offset of field: _zend_module_entry::build_id"]
6501        [::std::mem::offset_of!(_zend_module_entry, build_id) - 160usize];
6502};
6503#[repr(C)]
6504#[derive(Debug, Copy, Clone)]
6505pub struct _zend_module_dep {
6506    pub name: *const ::std::os::raw::c_char,
6507    pub rel: *const ::std::os::raw::c_char,
6508    pub version: *const ::std::os::raw::c_char,
6509    pub type_: ::std::os::raw::c_uchar,
6510}
6511#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6512const _: () = {
6513    ["Size of _zend_module_dep"][::std::mem::size_of::<_zend_module_dep>() - 32usize];
6514    ["Alignment of _zend_module_dep"][::std::mem::align_of::<_zend_module_dep>() - 8usize];
6515    ["Offset of field: _zend_module_dep::name"]
6516        [::std::mem::offset_of!(_zend_module_dep, name) - 0usize];
6517    ["Offset of field: _zend_module_dep::rel"]
6518        [::std::mem::offset_of!(_zend_module_dep, rel) - 8usize];
6519    ["Offset of field: _zend_module_dep::version"]
6520        [::std::mem::offset_of!(_zend_module_dep, version) - 16usize];
6521    ["Offset of field: _zend_module_dep::type_"]
6522        [::std::mem::offset_of!(_zend_module_dep, type_) - 24usize];
6523};
6524pub type rsrc_dtor_func_t = ::std::option::Option<unsafe extern "C" fn(res: *mut zend_resource)>;
6525#[repr(C)]
6526#[derive(Debug, Copy, Clone)]
6527pub struct _zend_rsrc_list_dtors_entry {
6528    pub list_dtor_ex: rsrc_dtor_func_t,
6529    pub plist_dtor_ex: rsrc_dtor_func_t,
6530    pub type_name: *const ::std::os::raw::c_char,
6531    pub module_number: ::std::os::raw::c_int,
6532    pub resource_id: ::std::os::raw::c_int,
6533}
6534#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6535const _: () = {
6536    ["Size of _zend_rsrc_list_dtors_entry"]
6537        [::std::mem::size_of::<_zend_rsrc_list_dtors_entry>() - 32usize];
6538    ["Alignment of _zend_rsrc_list_dtors_entry"]
6539        [::std::mem::align_of::<_zend_rsrc_list_dtors_entry>() - 8usize];
6540    ["Offset of field: _zend_rsrc_list_dtors_entry::list_dtor_ex"]
6541        [::std::mem::offset_of!(_zend_rsrc_list_dtors_entry, list_dtor_ex) - 0usize];
6542    ["Offset of field: _zend_rsrc_list_dtors_entry::plist_dtor_ex"]
6543        [::std::mem::offset_of!(_zend_rsrc_list_dtors_entry, plist_dtor_ex) - 8usize];
6544    ["Offset of field: _zend_rsrc_list_dtors_entry::type_name"]
6545        [::std::mem::offset_of!(_zend_rsrc_list_dtors_entry, type_name) - 16usize];
6546    ["Offset of field: _zend_rsrc_list_dtors_entry::module_number"]
6547        [::std::mem::offset_of!(_zend_rsrc_list_dtors_entry, module_number) - 24usize];
6548    ["Offset of field: _zend_rsrc_list_dtors_entry::resource_id"]
6549        [::std::mem::offset_of!(_zend_rsrc_list_dtors_entry, resource_id) - 28usize];
6550};
6551pub type zend_rsrc_list_dtors_entry = _zend_rsrc_list_dtors_entry;
6552#[repr(C)]
6553#[derive(Copy, Clone)]
6554pub struct _zend_constant {
6555    pub value: zval,
6556    pub name: *mut zend_string,
6557    pub filename: *mut zend_string,
6558    pub attributes: *mut HashTable,
6559}
6560#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6561const _: () = {
6562    ["Size of _zend_constant"][::std::mem::size_of::<_zend_constant>() - 40usize];
6563    ["Alignment of _zend_constant"][::std::mem::align_of::<_zend_constant>() - 8usize];
6564    ["Offset of field: _zend_constant::value"]
6565        [::std::mem::offset_of!(_zend_constant, value) - 0usize];
6566    ["Offset of field: _zend_constant::name"]
6567        [::std::mem::offset_of!(_zend_constant, name) - 16usize];
6568    ["Offset of field: _zend_constant::filename"]
6569        [::std::mem::offset_of!(_zend_constant, filename) - 24usize];
6570    ["Offset of field: _zend_constant::attributes"]
6571        [::std::mem::offset_of!(_zend_constant, attributes) - 32usize];
6572};
6573pub type zend_constant = _zend_constant;
6574pub mod zend_verify_prop_assignable_by_ref_context {
6575    #[allow(unused_imports)]
6576    use super::*;
6577    pub type Type = ::std::os::raw::c_uint;
6578    pub const ZEND_VERIFY_PROP_ASSIGNABLE_BY_REF_CONTEXT_ASSIGNMENT: Type = 0;
6579    pub const ZEND_VERIFY_PROP_ASSIGNABLE_BY_REF_CONTEXT_MAGIC_GET: Type = 1;
6580}
6581#[repr(C)]
6582#[derive(Debug, Copy, Clone)]
6583pub struct _zend_vm_stack {
6584    pub top: *mut zval,
6585    pub end: *mut zval,
6586    pub prev: zend_vm_stack,
6587}
6588#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6589const _: () = {
6590    ["Size of _zend_vm_stack"][::std::mem::size_of::<_zend_vm_stack>() - 24usize];
6591    ["Alignment of _zend_vm_stack"][::std::mem::align_of::<_zend_vm_stack>() - 8usize];
6592    ["Offset of field: _zend_vm_stack::top"][::std::mem::offset_of!(_zend_vm_stack, top) - 0usize];
6593    ["Offset of field: _zend_vm_stack::end"][::std::mem::offset_of!(_zend_vm_stack, end) - 8usize];
6594    ["Offset of field: _zend_vm_stack::prev"]
6595        [::std::mem::offset_of!(_zend_vm_stack, prev) - 16usize];
6596};
6597#[repr(C)]
6598#[derive(Debug, Copy, Clone)]
6599pub struct _zend_function_entry {
6600    pub fname: *const ::std::os::raw::c_char,
6601    pub handler: zif_handler,
6602    pub arg_info: *const _zend_internal_arg_info,
6603    pub num_args: u32,
6604    pub flags: u32,
6605    pub frameless_function_infos: *const zend_frameless_function_info,
6606    pub doc_comment: *const ::std::os::raw::c_char,
6607}
6608#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6609const _: () = {
6610    ["Size of _zend_function_entry"][::std::mem::size_of::<_zend_function_entry>() - 48usize];
6611    ["Alignment of _zend_function_entry"][::std::mem::align_of::<_zend_function_entry>() - 8usize];
6612    ["Offset of field: _zend_function_entry::fname"]
6613        [::std::mem::offset_of!(_zend_function_entry, fname) - 0usize];
6614    ["Offset of field: _zend_function_entry::handler"]
6615        [::std::mem::offset_of!(_zend_function_entry, handler) - 8usize];
6616    ["Offset of field: _zend_function_entry::arg_info"]
6617        [::std::mem::offset_of!(_zend_function_entry, arg_info) - 16usize];
6618    ["Offset of field: _zend_function_entry::num_args"]
6619        [::std::mem::offset_of!(_zend_function_entry, num_args) - 24usize];
6620    ["Offset of field: _zend_function_entry::flags"]
6621        [::std::mem::offset_of!(_zend_function_entry, flags) - 28usize];
6622    ["Offset of field: _zend_function_entry::frameless_function_infos"]
6623        [::std::mem::offset_of!(_zend_function_entry, frameless_function_infos) - 32usize];
6624    ["Offset of field: _zend_function_entry::doc_comment"]
6625        [::std::mem::offset_of!(_zend_function_entry, doc_comment) - 40usize];
6626};
6627pub type zend_function_entry = _zend_function_entry;
6628#[repr(C)]
6629#[derive(Copy, Clone)]
6630pub struct _zend_fcall_info {
6631    pub size: usize,
6632    pub function_name: zval,
6633    pub retval: *mut zval,
6634    pub params: *mut zval,
6635    pub object: *mut zend_object,
6636    pub param_count: u32,
6637    pub named_params: *mut HashTable,
6638}
6639#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6640const _: () = {
6641    ["Size of _zend_fcall_info"][::std::mem::size_of::<_zend_fcall_info>() - 64usize];
6642    ["Alignment of _zend_fcall_info"][::std::mem::align_of::<_zend_fcall_info>() - 8usize];
6643    ["Offset of field: _zend_fcall_info::size"]
6644        [::std::mem::offset_of!(_zend_fcall_info, size) - 0usize];
6645    ["Offset of field: _zend_fcall_info::function_name"]
6646        [::std::mem::offset_of!(_zend_fcall_info, function_name) - 8usize];
6647    ["Offset of field: _zend_fcall_info::retval"]
6648        [::std::mem::offset_of!(_zend_fcall_info, retval) - 24usize];
6649    ["Offset of field: _zend_fcall_info::params"]
6650        [::std::mem::offset_of!(_zend_fcall_info, params) - 32usize];
6651    ["Offset of field: _zend_fcall_info::object"]
6652        [::std::mem::offset_of!(_zend_fcall_info, object) - 40usize];
6653    ["Offset of field: _zend_fcall_info::param_count"]
6654        [::std::mem::offset_of!(_zend_fcall_info, param_count) - 48usize];
6655    ["Offset of field: _zend_fcall_info::named_params"]
6656        [::std::mem::offset_of!(_zend_fcall_info, named_params) - 56usize];
6657};
6658#[repr(C)]
6659#[derive(Debug, Copy, Clone)]
6660pub struct _zend_fcall_info_cache {
6661    pub function_handler: *mut zend_function,
6662    pub calling_scope: *mut zend_class_entry,
6663    pub called_scope: *mut zend_class_entry,
6664    pub object: *mut zend_object,
6665    pub closure: *mut zend_object,
6666}
6667#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6668const _: () = {
6669    ["Size of _zend_fcall_info_cache"][::std::mem::size_of::<_zend_fcall_info_cache>() - 40usize];
6670    ["Alignment of _zend_fcall_info_cache"]
6671        [::std::mem::align_of::<_zend_fcall_info_cache>() - 8usize];
6672    ["Offset of field: _zend_fcall_info_cache::function_handler"]
6673        [::std::mem::offset_of!(_zend_fcall_info_cache, function_handler) - 0usize];
6674    ["Offset of field: _zend_fcall_info_cache::calling_scope"]
6675        [::std::mem::offset_of!(_zend_fcall_info_cache, calling_scope) - 8usize];
6676    ["Offset of field: _zend_fcall_info_cache::called_scope"]
6677        [::std::mem::offset_of!(_zend_fcall_info_cache, called_scope) - 16usize];
6678    ["Offset of field: _zend_fcall_info_cache::object"]
6679        [::std::mem::offset_of!(_zend_fcall_info_cache, object) - 24usize];
6680    ["Offset of field: _zend_fcall_info_cache::closure"]
6681        [::std::mem::offset_of!(_zend_fcall_info_cache, closure) - 32usize];
6682};
6683pub mod _zend_expected_type {
6684    #[allow(unused_imports)]
6685    use super::*;
6686    pub type Type = ::std::os::raw::c_uint;
6687    pub const Z_EXPECTED_LONG: Type = 0;
6688    pub const Z_EXPECTED_LONG_OR_NULL: Type = 1;
6689    pub const Z_EXPECTED_BOOL: Type = 2;
6690    pub const Z_EXPECTED_BOOL_OR_NULL: Type = 3;
6691    pub const Z_EXPECTED_STRING: Type = 4;
6692    pub const Z_EXPECTED_STRING_OR_NULL: Type = 5;
6693    pub const Z_EXPECTED_ARRAY: Type = 6;
6694    pub const Z_EXPECTED_ARRAY_OR_NULL: Type = 7;
6695    pub const Z_EXPECTED_ARRAY_OR_LONG: Type = 8;
6696    pub const Z_EXPECTED_ARRAY_OR_LONG_OR_NULL: Type = 9;
6697    pub const Z_EXPECTED_ITERABLE: Type = 10;
6698    pub const Z_EXPECTED_ITERABLE_OR_NULL: Type = 11;
6699    pub const Z_EXPECTED_FUNC: Type = 12;
6700    pub const Z_EXPECTED_FUNC_OR_NULL: Type = 13;
6701    pub const Z_EXPECTED_RESOURCE: Type = 14;
6702    pub const Z_EXPECTED_RESOURCE_OR_NULL: Type = 15;
6703    pub const Z_EXPECTED_PATH: Type = 16;
6704    pub const Z_EXPECTED_PATH_OR_NULL: Type = 17;
6705    pub const Z_EXPECTED_OBJECT: Type = 18;
6706    pub const Z_EXPECTED_OBJECT_OR_NULL: Type = 19;
6707    pub const Z_EXPECTED_DOUBLE: Type = 20;
6708    pub const Z_EXPECTED_DOUBLE_OR_NULL: Type = 21;
6709    pub const Z_EXPECTED_NUMBER: Type = 22;
6710    pub const Z_EXPECTED_NUMBER_OR_NULL: Type = 23;
6711    pub const Z_EXPECTED_NUMBER_OR_STRING: Type = 24;
6712    pub const Z_EXPECTED_NUMBER_OR_STRING_OR_NULL: Type = 25;
6713    pub const Z_EXPECTED_ARRAY_OR_STRING: Type = 26;
6714    pub const Z_EXPECTED_ARRAY_OR_STRING_OR_NULL: Type = 27;
6715    pub const Z_EXPECTED_STRING_OR_LONG: Type = 28;
6716    pub const Z_EXPECTED_STRING_OR_LONG_OR_NULL: Type = 29;
6717    pub const Z_EXPECTED_OBJECT_OR_CLASS_NAME: Type = 30;
6718    pub const Z_EXPECTED_OBJECT_OR_CLASS_NAME_OR_NULL: Type = 31;
6719    pub const Z_EXPECTED_OBJECT_OR_STRING: Type = 32;
6720    pub const Z_EXPECTED_OBJECT_OR_STRING_OR_NULL: Type = 33;
6721    pub const Z_EXPECTED_LAST: Type = 34;
6722}
6723pub use self::_zend_expected_type::Type as zend_expected_type;
6724#[repr(C)]
6725#[derive(Copy, Clone)]
6726pub struct zend_attribute_arg {
6727    pub name: *mut zend_string,
6728    pub value: zval,
6729}
6730#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6731const _: () = {
6732    ["Size of zend_attribute_arg"][::std::mem::size_of::<zend_attribute_arg>() - 24usize];
6733    ["Alignment of zend_attribute_arg"][::std::mem::align_of::<zend_attribute_arg>() - 8usize];
6734    ["Offset of field: zend_attribute_arg::name"]
6735        [::std::mem::offset_of!(zend_attribute_arg, name) - 0usize];
6736    ["Offset of field: zend_attribute_arg::value"]
6737        [::std::mem::offset_of!(zend_attribute_arg, value) - 8usize];
6738};
6739#[repr(C)]
6740#[derive(Copy, Clone)]
6741pub struct _zend_attribute {
6742    pub name: *mut zend_string,
6743    pub lcname: *mut zend_string,
6744    pub validation_error: *mut zend_string,
6745    pub flags: u32,
6746    pub lineno: u32,
6747    pub offset: u32,
6748    pub argc: u32,
6749    pub args: [zend_attribute_arg; 1usize],
6750}
6751#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6752const _: () = {
6753    ["Size of _zend_attribute"][::std::mem::size_of::<_zend_attribute>() - 64usize];
6754    ["Alignment of _zend_attribute"][::std::mem::align_of::<_zend_attribute>() - 8usize];
6755    ["Offset of field: _zend_attribute::name"]
6756        [::std::mem::offset_of!(_zend_attribute, name) - 0usize];
6757    ["Offset of field: _zend_attribute::lcname"]
6758        [::std::mem::offset_of!(_zend_attribute, lcname) - 8usize];
6759    ["Offset of field: _zend_attribute::validation_error"]
6760        [::std::mem::offset_of!(_zend_attribute, validation_error) - 16usize];
6761    ["Offset of field: _zend_attribute::flags"]
6762        [::std::mem::offset_of!(_zend_attribute, flags) - 24usize];
6763    ["Offset of field: _zend_attribute::lineno"]
6764        [::std::mem::offset_of!(_zend_attribute, lineno) - 28usize];
6765    ["Offset of field: _zend_attribute::offset"]
6766        [::std::mem::offset_of!(_zend_attribute, offset) - 32usize];
6767    ["Offset of field: _zend_attribute::argc"]
6768        [::std::mem::offset_of!(_zend_attribute, argc) - 36usize];
6769    ["Offset of field: _zend_attribute::args"]
6770        [::std::mem::offset_of!(_zend_attribute, args) - 40usize];
6771};
6772pub type zend_attribute = _zend_attribute;
6773#[repr(C)]
6774#[derive(Debug, Copy, Clone)]
6775pub struct _zend_internal_attribute {
6776    pub ce: *mut zend_class_entry,
6777    pub flags: u32,
6778    pub validator: ::std::option::Option<
6779        unsafe extern "C" fn(
6780            attr: *mut zend_attribute,
6781            target: u32,
6782            scope: *mut zend_class_entry,
6783        ) -> *mut zend_string,
6784    >,
6785}
6786#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6787const _: () = {
6788    ["Size of _zend_internal_attribute"]
6789        [::std::mem::size_of::<_zend_internal_attribute>() - 24usize];
6790    ["Alignment of _zend_internal_attribute"]
6791        [::std::mem::align_of::<_zend_internal_attribute>() - 8usize];
6792    ["Offset of field: _zend_internal_attribute::ce"]
6793        [::std::mem::offset_of!(_zend_internal_attribute, ce) - 0usize];
6794    ["Offset of field: _zend_internal_attribute::flags"]
6795        [::std::mem::offset_of!(_zend_internal_attribute, flags) - 8usize];
6796    ["Offset of field: _zend_internal_attribute::validator"]
6797        [::std::mem::offset_of!(_zend_internal_attribute, validator) - 16usize];
6798};
6799pub type zend_internal_attribute = _zend_internal_attribute;
6800pub type zend_bitset = *mut zend_ulong;
6801pub mod _zend_cpu_feature {
6802    #[allow(unused_imports)]
6803    use super::*;
6804    pub type Type = ::std::os::raw::c_uint;
6805    pub const ZEND_CPU_FEATURE_SSE3: Type = 1;
6806    pub const ZEND_CPU_FEATURE_PCLMULQDQ: Type = 2;
6807    pub const ZEND_CPU_FEATURE_DTES64: Type = 4;
6808    pub const ZEND_CPU_FEATURE_MONITOR: Type = 8;
6809    pub const ZEND_CPU_FEATURE_DSCPL: Type = 16;
6810    pub const ZEND_CPU_FEATURE_VMX: Type = 32;
6811    pub const ZEND_CPU_FEATURE_SMX: Type = 64;
6812    pub const ZEND_CPU_FEATURE_EST: Type = 128;
6813    pub const ZEND_CPU_FEATURE_TM2: Type = 256;
6814    pub const ZEND_CPU_FEATURE_SSSE3: Type = 512;
6815    pub const ZEND_CPU_FEATURE_CID: Type = 1024;
6816    pub const ZEND_CPU_FEATURE_SDBG: Type = 2048;
6817    pub const ZEND_CPU_FEATURE_FMA: Type = 4096;
6818    pub const ZEND_CPU_FEATURE_CX16: Type = 8192;
6819    pub const ZEND_CPU_FEATURE_XTPR: Type = 16384;
6820    pub const ZEND_CPU_FEATURE_PDCM: Type = 32768;
6821    pub const ZEND_CPU_FEATURE_PCID: Type = 131072;
6822    pub const ZEND_CPU_FEATURE_DCA: Type = 262144;
6823    pub const ZEND_CPU_FEATURE_SSE41: Type = 524288;
6824    pub const ZEND_CPU_FEATURE_SSE42: Type = 1048576;
6825    pub const ZEND_CPU_FEATURE_X2APIC: Type = 2097152;
6826    pub const ZEND_CPU_FEATURE_MOVBE: Type = 4194304;
6827    pub const ZEND_CPU_FEATURE_POPCNT: Type = 8388608;
6828    pub const ZEND_CPU_FEATURE_TSC_DEADLINE: Type = 16777216;
6829    pub const ZEND_CPU_FEATURE_AES: Type = 33554432;
6830    pub const ZEND_CPU_FEATURE_XSAVE: Type = 67108864;
6831    pub const ZEND_CPU_FEATURE_OSXSAVE: Type = 134217728;
6832    pub const ZEND_CPU_FEATURE_AVX: Type = 268435456;
6833    pub const ZEND_CPU_FEATURE_F16C: Type = 536870912;
6834    pub const ZEND_CPU_FEATURE_AVX2: Type = 1073741856;
6835    pub const ZEND_CPU_FEATURE_AVX512F: Type = 1073807360;
6836    pub const ZEND_CPU_FEATURE_AVX512DQ: Type = 1073872896;
6837    pub const ZEND_CPU_FEATURE_AVX512CD: Type = 1342177280;
6838    pub const ZEND_CPU_FEATURE_SHA: Type = 1610612736;
6839    pub const ZEND_CPU_FEATURE_FPU: Type = 2147483649;
6840    pub const ZEND_CPU_FEATURE_VME: Type = 2147483650;
6841    pub const ZEND_CPU_FEATURE_DE: Type = 2147483652;
6842    pub const ZEND_CPU_FEATURE_PSE: Type = 2147483656;
6843    pub const ZEND_CPU_FEATURE_TSC: Type = 2147483664;
6844    pub const ZEND_CPU_FEATURE_MSR: Type = 2147483680;
6845    pub const ZEND_CPU_FEATURE_PAE: Type = 2147483712;
6846    pub const ZEND_CPU_FEATURE_MCE: Type = 2147483776;
6847    pub const ZEND_CPU_FEATURE_CX8: Type = 2147483904;
6848    pub const ZEND_CPU_FEATURE_APIC: Type = 2147484160;
6849    pub const ZEND_CPU_FEATURE_SEP: Type = 2147485696;
6850    pub const ZEND_CPU_FEATURE_MTRR: Type = 2147487744;
6851    pub const ZEND_CPU_FEATURE_PGE: Type = 2147491840;
6852    pub const ZEND_CPU_FEATURE_MCA: Type = 2147500032;
6853    pub const ZEND_CPU_FEATURE_CMOV: Type = 2147516416;
6854    pub const ZEND_CPU_FEATURE_PAT: Type = 2147549184;
6855    pub const ZEND_CPU_FEATURE_PSE36: Type = 2147614720;
6856    pub const ZEND_CPU_FEATURE_PN: Type = 2147745792;
6857    pub const ZEND_CPU_FEATURE_CLFLUSH: Type = 2148007936;
6858    pub const ZEND_CPU_FEATURE_DS: Type = 2149580800;
6859    pub const ZEND_CPU_FEATURE_ACPI: Type = 2151677952;
6860    pub const ZEND_CPU_FEATURE_MMX: Type = 2155872256;
6861    pub const ZEND_CPU_FEATURE_FXSR: Type = 2164260864;
6862    pub const ZEND_CPU_FEATURE_SSE: Type = 2181038080;
6863    pub const ZEND_CPU_FEATURE_SSE2: Type = 2214592512;
6864    pub const ZEND_CPU_FEATURE_SS: Type = 2281701376;
6865    pub const ZEND_CPU_FEATURE_HT: Type = 2415919104;
6866    pub const ZEND_CPU_FEATURE_TM: Type = 2684354560;
6867}
6868pub use self::_zend_cpu_feature::Type as zend_cpu_feature;
6869#[repr(C)]
6870#[derive(Debug, Copy, Clone)]
6871pub struct _zend_extension_version_info {
6872    pub zend_extension_api_no: ::std::os::raw::c_int,
6873    pub build_id: *const ::std::os::raw::c_char,
6874}
6875#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6876const _: () = {
6877    ["Size of _zend_extension_version_info"]
6878        [::std::mem::size_of::<_zend_extension_version_info>() - 16usize];
6879    ["Alignment of _zend_extension_version_info"]
6880        [::std::mem::align_of::<_zend_extension_version_info>() - 8usize];
6881    ["Offset of field: _zend_extension_version_info::zend_extension_api_no"]
6882        [::std::mem::offset_of!(_zend_extension_version_info, zend_extension_api_no) - 0usize];
6883    ["Offset of field: _zend_extension_version_info::build_id"]
6884        [::std::mem::offset_of!(_zend_extension_version_info, build_id) - 8usize];
6885};
6886pub type zend_extension_version_info = _zend_extension_version_info;
6887pub type zend_extension = _zend_extension;
6888pub type startup_func_t = ::std::option::Option<
6889    unsafe extern "C" fn(extension: *mut zend_extension) -> ::std::os::raw::c_int,
6890>;
6891pub type shutdown_func_t =
6892    ::std::option::Option<unsafe extern "C" fn(extension: *mut zend_extension)>;
6893pub type activate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
6894pub type deactivate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
6895pub type message_handler_func_t = ::std::option::Option<
6896    unsafe extern "C" fn(message: ::std::os::raw::c_int, arg: *mut ::std::os::raw::c_void),
6897>;
6898pub type op_array_handler_func_t =
6899    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
6900pub type statement_handler_func_t =
6901    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
6902pub type fcall_begin_handler_func_t =
6903    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
6904pub type fcall_end_handler_func_t =
6905    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
6906pub type op_array_ctor_func_t =
6907    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
6908pub type op_array_dtor_func_t =
6909    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
6910pub type op_array_persist_calc_func_t =
6911    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array) -> usize>;
6912pub type op_array_persist_func_t = ::std::option::Option<
6913    unsafe extern "C" fn(op_array: *mut zend_op_array, mem: *mut ::std::os::raw::c_void) -> usize,
6914>;
6915#[repr(C)]
6916#[derive(Debug, Copy, Clone)]
6917pub struct _zend_extension {
6918    pub name: *const ::std::os::raw::c_char,
6919    pub version: *const ::std::os::raw::c_char,
6920    pub author: *const ::std::os::raw::c_char,
6921    pub URL: *const ::std::os::raw::c_char,
6922    pub copyright: *const ::std::os::raw::c_char,
6923    pub startup: startup_func_t,
6924    pub shutdown: shutdown_func_t,
6925    pub activate: activate_func_t,
6926    pub deactivate: deactivate_func_t,
6927    pub message_handler: message_handler_func_t,
6928    pub op_array_handler: op_array_handler_func_t,
6929    pub statement_handler: statement_handler_func_t,
6930    pub fcall_begin_handler: fcall_begin_handler_func_t,
6931    pub fcall_end_handler: fcall_end_handler_func_t,
6932    pub op_array_ctor: op_array_ctor_func_t,
6933    pub op_array_dtor: op_array_dtor_func_t,
6934    pub api_no_check: ::std::option::Option<
6935        unsafe extern "C" fn(api_no: ::std::os::raw::c_int) -> ::std::os::raw::c_int,
6936    >,
6937    pub build_id_check: ::std::option::Option<
6938        unsafe extern "C" fn(build_id: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int,
6939    >,
6940    pub op_array_persist_calc: op_array_persist_calc_func_t,
6941    pub op_array_persist: op_array_persist_func_t,
6942    pub reserved5: *mut ::std::os::raw::c_void,
6943    pub reserved6: *mut ::std::os::raw::c_void,
6944    pub reserved7: *mut ::std::os::raw::c_void,
6945    pub reserved8: *mut ::std::os::raw::c_void,
6946    pub handle: *mut ::std::os::raw::c_void,
6947    pub resource_number: ::std::os::raw::c_int,
6948}
6949#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6950const _: () = {
6951    ["Size of _zend_extension"][::std::mem::size_of::<_zend_extension>() - 208usize];
6952    ["Alignment of _zend_extension"][::std::mem::align_of::<_zend_extension>() - 8usize];
6953    ["Offset of field: _zend_extension::name"]
6954        [::std::mem::offset_of!(_zend_extension, name) - 0usize];
6955    ["Offset of field: _zend_extension::version"]
6956        [::std::mem::offset_of!(_zend_extension, version) - 8usize];
6957    ["Offset of field: _zend_extension::author"]
6958        [::std::mem::offset_of!(_zend_extension, author) - 16usize];
6959    ["Offset of field: _zend_extension::URL"]
6960        [::std::mem::offset_of!(_zend_extension, URL) - 24usize];
6961    ["Offset of field: _zend_extension::copyright"]
6962        [::std::mem::offset_of!(_zend_extension, copyright) - 32usize];
6963    ["Offset of field: _zend_extension::startup"]
6964        [::std::mem::offset_of!(_zend_extension, startup) - 40usize];
6965    ["Offset of field: _zend_extension::shutdown"]
6966        [::std::mem::offset_of!(_zend_extension, shutdown) - 48usize];
6967    ["Offset of field: _zend_extension::activate"]
6968        [::std::mem::offset_of!(_zend_extension, activate) - 56usize];
6969    ["Offset of field: _zend_extension::deactivate"]
6970        [::std::mem::offset_of!(_zend_extension, deactivate) - 64usize];
6971    ["Offset of field: _zend_extension::message_handler"]
6972        [::std::mem::offset_of!(_zend_extension, message_handler) - 72usize];
6973    ["Offset of field: _zend_extension::op_array_handler"]
6974        [::std::mem::offset_of!(_zend_extension, op_array_handler) - 80usize];
6975    ["Offset of field: _zend_extension::statement_handler"]
6976        [::std::mem::offset_of!(_zend_extension, statement_handler) - 88usize];
6977    ["Offset of field: _zend_extension::fcall_begin_handler"]
6978        [::std::mem::offset_of!(_zend_extension, fcall_begin_handler) - 96usize];
6979    ["Offset of field: _zend_extension::fcall_end_handler"]
6980        [::std::mem::offset_of!(_zend_extension, fcall_end_handler) - 104usize];
6981    ["Offset of field: _zend_extension::op_array_ctor"]
6982        [::std::mem::offset_of!(_zend_extension, op_array_ctor) - 112usize];
6983    ["Offset of field: _zend_extension::op_array_dtor"]
6984        [::std::mem::offset_of!(_zend_extension, op_array_dtor) - 120usize];
6985    ["Offset of field: _zend_extension::api_no_check"]
6986        [::std::mem::offset_of!(_zend_extension, api_no_check) - 128usize];
6987    ["Offset of field: _zend_extension::build_id_check"]
6988        [::std::mem::offset_of!(_zend_extension, build_id_check) - 136usize];
6989    ["Offset of field: _zend_extension::op_array_persist_calc"]
6990        [::std::mem::offset_of!(_zend_extension, op_array_persist_calc) - 144usize];
6991    ["Offset of field: _zend_extension::op_array_persist"]
6992        [::std::mem::offset_of!(_zend_extension, op_array_persist) - 152usize];
6993    ["Offset of field: _zend_extension::reserved5"]
6994        [::std::mem::offset_of!(_zend_extension, reserved5) - 160usize];
6995    ["Offset of field: _zend_extension::reserved6"]
6996        [::std::mem::offset_of!(_zend_extension, reserved6) - 168usize];
6997    ["Offset of field: _zend_extension::reserved7"]
6998        [::std::mem::offset_of!(_zend_extension, reserved7) - 176usize];
6999    ["Offset of field: _zend_extension::reserved8"]
7000        [::std::mem::offset_of!(_zend_extension, reserved8) - 184usize];
7001    ["Offset of field: _zend_extension::handle"]
7002        [::std::mem::offset_of!(_zend_extension, handle) - 192usize];
7003    ["Offset of field: _zend_extension::resource_number"]
7004        [::std::mem::offset_of!(_zend_extension, resource_number) - 200usize];
7005};
7006pub mod zend_fiber_status {
7007    #[allow(unused_imports)]
7008    use super::*;
7009    pub type Type = ::std::os::raw::c_uint;
7010    pub const ZEND_FIBER_STATUS_INIT: Type = 0;
7011    pub const ZEND_FIBER_STATUS_RUNNING: Type = 1;
7012    pub const ZEND_FIBER_STATUS_SUSPENDED: Type = 2;
7013    pub const ZEND_FIBER_STATUS_DEAD: Type = 3;
7014}
7015pub mod zend_fiber_flag {
7016    #[allow(unused_imports)]
7017    use super::*;
7018    pub type Type = ::std::os::raw::c_uint;
7019    pub const ZEND_FIBER_FLAG_THREW: Type = 1;
7020    pub const ZEND_FIBER_FLAG_BAILOUT: Type = 2;
7021    pub const ZEND_FIBER_FLAG_DESTROYED: Type = 4;
7022}
7023pub mod zend_fiber_transfer_flag {
7024    #[allow(unused_imports)]
7025    use super::*;
7026    pub type Type = ::std::os::raw::c_uint;
7027    pub const ZEND_FIBER_TRANSFER_FLAG_ERROR: Type = 1;
7028    pub const ZEND_FIBER_TRANSFER_FLAG_BAILOUT: Type = 2;
7029}
7030#[repr(C)]
7031#[derive(Debug)]
7032pub struct _zend_fiber_stack {
7033    _unused: [u8; 0],
7034}
7035pub type zend_fiber_stack = _zend_fiber_stack;
7036#[repr(C)]
7037#[derive(Copy, Clone)]
7038pub struct _zend_fiber_transfer {
7039    pub context: *mut zend_fiber_context,
7040    pub value: zval,
7041    pub flags: u8,
7042}
7043#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7044const _: () = {
7045    ["Size of _zend_fiber_transfer"][::std::mem::size_of::<_zend_fiber_transfer>() - 32usize];
7046    ["Alignment of _zend_fiber_transfer"][::std::mem::align_of::<_zend_fiber_transfer>() - 8usize];
7047    ["Offset of field: _zend_fiber_transfer::context"]
7048        [::std::mem::offset_of!(_zend_fiber_transfer, context) - 0usize];
7049    ["Offset of field: _zend_fiber_transfer::value"]
7050        [::std::mem::offset_of!(_zend_fiber_transfer, value) - 8usize];
7051    ["Offset of field: _zend_fiber_transfer::flags"]
7052        [::std::mem::offset_of!(_zend_fiber_transfer, flags) - 24usize];
7053};
7054pub type zend_fiber_transfer = _zend_fiber_transfer;
7055pub type zend_fiber_coroutine =
7056    ::std::option::Option<unsafe extern "C" fn(transfer: *mut zend_fiber_transfer)>;
7057pub type zend_fiber_clean =
7058    ::std::option::Option<unsafe extern "C" fn(context: *mut zend_fiber_context)>;
7059#[repr(C)]
7060#[derive(Debug, Copy, Clone)]
7061pub struct _zend_fiber_context {
7062    pub handle: *mut ::std::os::raw::c_void,
7063    pub kind: *mut ::std::os::raw::c_void,
7064    pub function: zend_fiber_coroutine,
7065    pub cleanup: zend_fiber_clean,
7066    pub stack: *mut zend_fiber_stack,
7067    pub status: zend_fiber_status::Type,
7068    pub top_observed_frame: *mut zend_execute_data,
7069    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
7070}
7071#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7072const _: () = {
7073    ["Size of _zend_fiber_context"][::std::mem::size_of::<_zend_fiber_context>() - 104usize];
7074    ["Alignment of _zend_fiber_context"][::std::mem::align_of::<_zend_fiber_context>() - 8usize];
7075    ["Offset of field: _zend_fiber_context::handle"]
7076        [::std::mem::offset_of!(_zend_fiber_context, handle) - 0usize];
7077    ["Offset of field: _zend_fiber_context::kind"]
7078        [::std::mem::offset_of!(_zend_fiber_context, kind) - 8usize];
7079    ["Offset of field: _zend_fiber_context::function"]
7080        [::std::mem::offset_of!(_zend_fiber_context, function) - 16usize];
7081    ["Offset of field: _zend_fiber_context::cleanup"]
7082        [::std::mem::offset_of!(_zend_fiber_context, cleanup) - 24usize];
7083    ["Offset of field: _zend_fiber_context::stack"]
7084        [::std::mem::offset_of!(_zend_fiber_context, stack) - 32usize];
7085    ["Offset of field: _zend_fiber_context::status"]
7086        [::std::mem::offset_of!(_zend_fiber_context, status) - 40usize];
7087    ["Offset of field: _zend_fiber_context::top_observed_frame"]
7088        [::std::mem::offset_of!(_zend_fiber_context, top_observed_frame) - 48usize];
7089    ["Offset of field: _zend_fiber_context::reserved"]
7090        [::std::mem::offset_of!(_zend_fiber_context, reserved) - 56usize];
7091};
7092#[repr(C)]
7093#[derive(Copy, Clone)]
7094pub struct _zend_fiber {
7095    pub std: zend_object,
7096    pub flags: u8,
7097    pub context: zend_fiber_context,
7098    pub caller: *mut zend_fiber_context,
7099    pub previous: *mut zend_fiber_context,
7100    pub fci: zend_fcall_info,
7101    pub fci_cache: zend_fcall_info_cache,
7102    pub execute_data: *mut zend_execute_data,
7103    pub stack_bottom: *mut zend_execute_data,
7104    pub vm_stack: zend_vm_stack,
7105    pub result: zval,
7106}
7107#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7108const _: () = {
7109    ["Size of _zend_fiber"][::std::mem::size_of::<_zend_fiber>() - 328usize];
7110    ["Alignment of _zend_fiber"][::std::mem::align_of::<_zend_fiber>() - 8usize];
7111    ["Offset of field: _zend_fiber::std"][::std::mem::offset_of!(_zend_fiber, std) - 0usize];
7112    ["Offset of field: _zend_fiber::flags"][::std::mem::offset_of!(_zend_fiber, flags) - 56usize];
7113    ["Offset of field: _zend_fiber::context"]
7114        [::std::mem::offset_of!(_zend_fiber, context) - 64usize];
7115    ["Offset of field: _zend_fiber::caller"]
7116        [::std::mem::offset_of!(_zend_fiber, caller) - 168usize];
7117    ["Offset of field: _zend_fiber::previous"]
7118        [::std::mem::offset_of!(_zend_fiber, previous) - 176usize];
7119    ["Offset of field: _zend_fiber::fci"][::std::mem::offset_of!(_zend_fiber, fci) - 184usize];
7120    ["Offset of field: _zend_fiber::fci_cache"]
7121        [::std::mem::offset_of!(_zend_fiber, fci_cache) - 248usize];
7122    ["Offset of field: _zend_fiber::execute_data"]
7123        [::std::mem::offset_of!(_zend_fiber, execute_data) - 288usize];
7124    ["Offset of field: _zend_fiber::stack_bottom"]
7125        [::std::mem::offset_of!(_zend_fiber, stack_bottom) - 296usize];
7126    ["Offset of field: _zend_fiber::vm_stack"]
7127        [::std::mem::offset_of!(_zend_fiber, vm_stack) - 304usize];
7128    ["Offset of field: _zend_fiber::result"]
7129        [::std::mem::offset_of!(_zend_fiber, result) - 312usize];
7130};
7131pub type zend_generator_node = _zend_generator_node;
7132pub type zend_generator = _zend_generator;
7133#[repr(C)]
7134#[derive(Copy, Clone)]
7135pub struct _zend_generator_node {
7136    pub parent: *mut zend_generator,
7137    pub children: u32,
7138    pub child: _zend_generator_node__bindgen_ty_1,
7139    pub ptr: _zend_generator_node__bindgen_ty_2,
7140}
7141#[repr(C)]
7142#[derive(Copy, Clone)]
7143pub union _zend_generator_node__bindgen_ty_1 {
7144    pub ht: *mut HashTable,
7145    pub single: *mut zend_generator,
7146}
7147#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7148const _: () = {
7149    ["Size of _zend_generator_node__bindgen_ty_1"]
7150        [::std::mem::size_of::<_zend_generator_node__bindgen_ty_1>() - 8usize];
7151    ["Alignment of _zend_generator_node__bindgen_ty_1"]
7152        [::std::mem::align_of::<_zend_generator_node__bindgen_ty_1>() - 8usize];
7153    ["Offset of field: _zend_generator_node__bindgen_ty_1::ht"]
7154        [::std::mem::offset_of!(_zend_generator_node__bindgen_ty_1, ht) - 0usize];
7155    ["Offset of field: _zend_generator_node__bindgen_ty_1::single"]
7156        [::std::mem::offset_of!(_zend_generator_node__bindgen_ty_1, single) - 0usize];
7157};
7158#[repr(C)]
7159#[derive(Copy, Clone)]
7160pub union _zend_generator_node__bindgen_ty_2 {
7161    pub leaf: *mut zend_generator,
7162    pub root: *mut zend_generator,
7163}
7164#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7165const _: () = {
7166    ["Size of _zend_generator_node__bindgen_ty_2"]
7167        [::std::mem::size_of::<_zend_generator_node__bindgen_ty_2>() - 8usize];
7168    ["Alignment of _zend_generator_node__bindgen_ty_2"]
7169        [::std::mem::align_of::<_zend_generator_node__bindgen_ty_2>() - 8usize];
7170    ["Offset of field: _zend_generator_node__bindgen_ty_2::leaf"]
7171        [::std::mem::offset_of!(_zend_generator_node__bindgen_ty_2, leaf) - 0usize];
7172    ["Offset of field: _zend_generator_node__bindgen_ty_2::root"]
7173        [::std::mem::offset_of!(_zend_generator_node__bindgen_ty_2, root) - 0usize];
7174};
7175#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7176const _: () = {
7177    ["Size of _zend_generator_node"][::std::mem::size_of::<_zend_generator_node>() - 32usize];
7178    ["Alignment of _zend_generator_node"][::std::mem::align_of::<_zend_generator_node>() - 8usize];
7179    ["Offset of field: _zend_generator_node::parent"]
7180        [::std::mem::offset_of!(_zend_generator_node, parent) - 0usize];
7181    ["Offset of field: _zend_generator_node::children"]
7182        [::std::mem::offset_of!(_zend_generator_node, children) - 8usize];
7183    ["Offset of field: _zend_generator_node::child"]
7184        [::std::mem::offset_of!(_zend_generator_node, child) - 16usize];
7185    ["Offset of field: _zend_generator_node::ptr"]
7186        [::std::mem::offset_of!(_zend_generator_node, ptr) - 24usize];
7187};
7188#[repr(C)]
7189#[derive(Copy, Clone)]
7190pub struct _zend_generator {
7191    pub std: zend_object,
7192    pub execute_data: *mut zend_execute_data,
7193    pub frozen_call_stack: *mut zend_execute_data,
7194    pub value: zval,
7195    pub key: zval,
7196    pub retval: zval,
7197    pub send_target: *mut zval,
7198    pub largest_used_integer_key: zend_long,
7199    pub values: zval,
7200    pub node: zend_generator_node,
7201    pub execute_fake: zend_execute_data,
7202    pub func: *mut zend_function,
7203    pub flags: u8,
7204}
7205#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7206const _: () = {
7207    ["Size of _zend_generator"][::std::mem::size_of::<_zend_generator>() - 280usize];
7208    ["Alignment of _zend_generator"][::std::mem::align_of::<_zend_generator>() - 8usize];
7209    ["Offset of field: _zend_generator::std"]
7210        [::std::mem::offset_of!(_zend_generator, std) - 0usize];
7211    ["Offset of field: _zend_generator::execute_data"]
7212        [::std::mem::offset_of!(_zend_generator, execute_data) - 56usize];
7213    ["Offset of field: _zend_generator::frozen_call_stack"]
7214        [::std::mem::offset_of!(_zend_generator, frozen_call_stack) - 64usize];
7215    ["Offset of field: _zend_generator::value"]
7216        [::std::mem::offset_of!(_zend_generator, value) - 72usize];
7217    ["Offset of field: _zend_generator::key"]
7218        [::std::mem::offset_of!(_zend_generator, key) - 88usize];
7219    ["Offset of field: _zend_generator::retval"]
7220        [::std::mem::offset_of!(_zend_generator, retval) - 104usize];
7221    ["Offset of field: _zend_generator::send_target"]
7222        [::std::mem::offset_of!(_zend_generator, send_target) - 120usize];
7223    ["Offset of field: _zend_generator::largest_used_integer_key"]
7224        [::std::mem::offset_of!(_zend_generator, largest_used_integer_key) - 128usize];
7225    ["Offset of field: _zend_generator::values"]
7226        [::std::mem::offset_of!(_zend_generator, values) - 136usize];
7227    ["Offset of field: _zend_generator::node"]
7228        [::std::mem::offset_of!(_zend_generator, node) - 152usize];
7229    ["Offset of field: _zend_generator::execute_fake"]
7230        [::std::mem::offset_of!(_zend_generator, execute_fake) - 184usize];
7231    ["Offset of field: _zend_generator::func"]
7232        [::std::mem::offset_of!(_zend_generator, func) - 264usize];
7233    ["Offset of field: _zend_generator::flags"]
7234        [::std::mem::offset_of!(_zend_generator, flags) - 272usize];
7235};
7236pub const ZEND_GENERATOR_CURRENTLY_RUNNING: u8 = 1;
7237pub const ZEND_GENERATOR_FORCED_CLOSE: u8 = 2;
7238pub const ZEND_GENERATOR_AT_FIRST_YIELD: u8 = 4;
7239pub const ZEND_GENERATOR_DO_INIT: u8 = 8;
7240pub const ZEND_GENERATOR_IN_FIBER: u8 = 16;
7241#[repr(C)]
7242#[derive(Debug, Copy, Clone)]
7243pub struct _zend_syntax_highlighter_ini {
7244    pub highlight_html: *mut ::std::os::raw::c_char,
7245    pub highlight_comment: *mut ::std::os::raw::c_char,
7246    pub highlight_default: *mut ::std::os::raw::c_char,
7247    pub highlight_string: *mut ::std::os::raw::c_char,
7248    pub highlight_keyword: *mut ::std::os::raw::c_char,
7249}
7250#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7251const _: () = {
7252    ["Size of _zend_syntax_highlighter_ini"]
7253        [::std::mem::size_of::<_zend_syntax_highlighter_ini>() - 40usize];
7254    ["Alignment of _zend_syntax_highlighter_ini"]
7255        [::std::mem::align_of::<_zend_syntax_highlighter_ini>() - 8usize];
7256    ["Offset of field: _zend_syntax_highlighter_ini::highlight_html"]
7257        [::std::mem::offset_of!(_zend_syntax_highlighter_ini, highlight_html) - 0usize];
7258    ["Offset of field: _zend_syntax_highlighter_ini::highlight_comment"]
7259        [::std::mem::offset_of!(_zend_syntax_highlighter_ini, highlight_comment) - 8usize];
7260    ["Offset of field: _zend_syntax_highlighter_ini::highlight_default"]
7261        [::std::mem::offset_of!(_zend_syntax_highlighter_ini, highlight_default) - 16usize];
7262    ["Offset of field: _zend_syntax_highlighter_ini::highlight_string"]
7263        [::std::mem::offset_of!(_zend_syntax_highlighter_ini, highlight_string) - 24usize];
7264    ["Offset of field: _zend_syntax_highlighter_ini::highlight_keyword"]
7265        [::std::mem::offset_of!(_zend_syntax_highlighter_ini, highlight_keyword) - 32usize];
7266};
7267pub type zend_syntax_highlighter_ini = _zend_syntax_highlighter_ini;
7268pub mod zend_inheritance_status {
7269    #[allow(unused_imports)]
7270    use super::*;
7271    pub type Type = ::std::os::raw::c_int;
7272    pub const INHERITANCE_UNRESOLVED: Type = -1;
7273    pub const INHERITANCE_ERROR: Type = 0;
7274    pub const INHERITANCE_WARNING: Type = 1;
7275    pub const INHERITANCE_SUCCESS: Type = 2;
7276}
7277#[repr(C)]
7278#[derive(Debug, Copy, Clone)]
7279pub struct _zend_ini_entry_def {
7280    pub name: *const ::std::os::raw::c_char,
7281    pub on_modify: ::std::option::Option<
7282        unsafe extern "C" fn(
7283            entry: *mut zend_ini_entry,
7284            new_value: *mut zend_string,
7285            mh_arg1: *mut ::std::os::raw::c_void,
7286            mh_arg2: *mut ::std::os::raw::c_void,
7287            mh_arg3: *mut ::std::os::raw::c_void,
7288            stage: ::std::os::raw::c_int,
7289        ) -> ::std::os::raw::c_int,
7290    >,
7291    pub mh_arg1: *mut ::std::os::raw::c_void,
7292    pub mh_arg2: *mut ::std::os::raw::c_void,
7293    pub mh_arg3: *mut ::std::os::raw::c_void,
7294    pub value: *const ::std::os::raw::c_char,
7295    pub displayer: ::std::option::Option<
7296        unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
7297    >,
7298    pub value_length: u32,
7299    pub name_length: u16,
7300    pub modifiable: u8,
7301}
7302#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7303const _: () = {
7304    ["Size of _zend_ini_entry_def"][::std::mem::size_of::<_zend_ini_entry_def>() - 64usize];
7305    ["Alignment of _zend_ini_entry_def"][::std::mem::align_of::<_zend_ini_entry_def>() - 8usize];
7306    ["Offset of field: _zend_ini_entry_def::name"]
7307        [::std::mem::offset_of!(_zend_ini_entry_def, name) - 0usize];
7308    ["Offset of field: _zend_ini_entry_def::on_modify"]
7309        [::std::mem::offset_of!(_zend_ini_entry_def, on_modify) - 8usize];
7310    ["Offset of field: _zend_ini_entry_def::mh_arg1"]
7311        [::std::mem::offset_of!(_zend_ini_entry_def, mh_arg1) - 16usize];
7312    ["Offset of field: _zend_ini_entry_def::mh_arg2"]
7313        [::std::mem::offset_of!(_zend_ini_entry_def, mh_arg2) - 24usize];
7314    ["Offset of field: _zend_ini_entry_def::mh_arg3"]
7315        [::std::mem::offset_of!(_zend_ini_entry_def, mh_arg3) - 32usize];
7316    ["Offset of field: _zend_ini_entry_def::value"]
7317        [::std::mem::offset_of!(_zend_ini_entry_def, value) - 40usize];
7318    ["Offset of field: _zend_ini_entry_def::displayer"]
7319        [::std::mem::offset_of!(_zend_ini_entry_def, displayer) - 48usize];
7320    ["Offset of field: _zend_ini_entry_def::value_length"]
7321        [::std::mem::offset_of!(_zend_ini_entry_def, value_length) - 56usize];
7322    ["Offset of field: _zend_ini_entry_def::name_length"]
7323        [::std::mem::offset_of!(_zend_ini_entry_def, name_length) - 60usize];
7324    ["Offset of field: _zend_ini_entry_def::modifiable"]
7325        [::std::mem::offset_of!(_zend_ini_entry_def, modifiable) - 62usize];
7326};
7327pub type zend_ini_entry_def = _zend_ini_entry_def;
7328#[repr(C)]
7329#[derive(Debug, Copy, Clone)]
7330pub struct _zend_ini_entry {
7331    pub name: *mut zend_string,
7332    pub on_modify: ::std::option::Option<
7333        unsafe extern "C" fn(
7334            entry: *mut zend_ini_entry,
7335            new_value: *mut zend_string,
7336            mh_arg1: *mut ::std::os::raw::c_void,
7337            mh_arg2: *mut ::std::os::raw::c_void,
7338            mh_arg3: *mut ::std::os::raw::c_void,
7339            stage: ::std::os::raw::c_int,
7340        ) -> ::std::os::raw::c_int,
7341    >,
7342    pub mh_arg1: *mut ::std::os::raw::c_void,
7343    pub mh_arg2: *mut ::std::os::raw::c_void,
7344    pub mh_arg3: *mut ::std::os::raw::c_void,
7345    pub value: *mut zend_string,
7346    pub orig_value: *mut zend_string,
7347    pub displayer: ::std::option::Option<
7348        unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
7349    >,
7350    pub module_number: ::std::os::raw::c_int,
7351    pub modifiable: u8,
7352    pub orig_modifiable: u8,
7353    pub modified: u8,
7354    pub def: *const zend_ini_entry_def,
7355}
7356#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7357const _: () = {
7358    ["Size of _zend_ini_entry"][::std::mem::size_of::<_zend_ini_entry>() - 80usize];
7359    ["Alignment of _zend_ini_entry"][::std::mem::align_of::<_zend_ini_entry>() - 8usize];
7360    ["Offset of field: _zend_ini_entry::name"]
7361        [::std::mem::offset_of!(_zend_ini_entry, name) - 0usize];
7362    ["Offset of field: _zend_ini_entry::on_modify"]
7363        [::std::mem::offset_of!(_zend_ini_entry, on_modify) - 8usize];
7364    ["Offset of field: _zend_ini_entry::mh_arg1"]
7365        [::std::mem::offset_of!(_zend_ini_entry, mh_arg1) - 16usize];
7366    ["Offset of field: _zend_ini_entry::mh_arg2"]
7367        [::std::mem::offset_of!(_zend_ini_entry, mh_arg2) - 24usize];
7368    ["Offset of field: _zend_ini_entry::mh_arg3"]
7369        [::std::mem::offset_of!(_zend_ini_entry, mh_arg3) - 32usize];
7370    ["Offset of field: _zend_ini_entry::value"]
7371        [::std::mem::offset_of!(_zend_ini_entry, value) - 40usize];
7372    ["Offset of field: _zend_ini_entry::orig_value"]
7373        [::std::mem::offset_of!(_zend_ini_entry, orig_value) - 48usize];
7374    ["Offset of field: _zend_ini_entry::displayer"]
7375        [::std::mem::offset_of!(_zend_ini_entry, displayer) - 56usize];
7376    ["Offset of field: _zend_ini_entry::module_number"]
7377        [::std::mem::offset_of!(_zend_ini_entry, module_number) - 64usize];
7378    ["Offset of field: _zend_ini_entry::modifiable"]
7379        [::std::mem::offset_of!(_zend_ini_entry, modifiable) - 68usize];
7380    ["Offset of field: _zend_ini_entry::orig_modifiable"]
7381        [::std::mem::offset_of!(_zend_ini_entry, orig_modifiable) - 69usize];
7382    ["Offset of field: _zend_ini_entry::modified"]
7383        [::std::mem::offset_of!(_zend_ini_entry, modified) - 70usize];
7384    ["Offset of field: _zend_ini_entry::def"]
7385        [::std::mem::offset_of!(_zend_ini_entry, def) - 72usize];
7386};
7387pub type zend_ini_parser_cb_t = ::std::option::Option<
7388    unsafe extern "C" fn(
7389        arg1: *mut zval,
7390        arg2: *mut zval,
7391        arg3: *mut zval,
7392        callback_type: ::std::os::raw::c_int,
7393        arg: *mut ::std::os::raw::c_void,
7394    ),
7395>;
7396#[repr(C)]
7397#[derive(Debug, Copy, Clone)]
7398pub struct _zend_ini_parser_param {
7399    pub ini_parser_cb: zend_ini_parser_cb_t,
7400    pub arg: *mut ::std::os::raw::c_void,
7401}
7402#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7403const _: () = {
7404    ["Size of _zend_ini_parser_param"][::std::mem::size_of::<_zend_ini_parser_param>() - 16usize];
7405    ["Alignment of _zend_ini_parser_param"]
7406        [::std::mem::align_of::<_zend_ini_parser_param>() - 8usize];
7407    ["Offset of field: _zend_ini_parser_param::ini_parser_cb"]
7408        [::std::mem::offset_of!(_zend_ini_parser_param, ini_parser_cb) - 0usize];
7409    ["Offset of field: _zend_ini_parser_param::arg"]
7410        [::std::mem::offset_of!(_zend_ini_parser_param, arg) - 8usize];
7411};
7412pub type zend_ini_parser_param = _zend_ini_parser_param;
7413#[repr(C)]
7414#[derive(Copy, Clone)]
7415pub struct _zend_user_iterator {
7416    pub it: zend_object_iterator,
7417    pub ce: *mut zend_class_entry,
7418    pub value: zval,
7419}
7420#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7421const _: () = {
7422    ["Size of _zend_user_iterator"][::std::mem::size_of::<_zend_user_iterator>() - 112usize];
7423    ["Alignment of _zend_user_iterator"][::std::mem::align_of::<_zend_user_iterator>() - 8usize];
7424    ["Offset of field: _zend_user_iterator::it"]
7425        [::std::mem::offset_of!(_zend_user_iterator, it) - 0usize];
7426    ["Offset of field: _zend_user_iterator::ce"]
7427        [::std::mem::offset_of!(_zend_user_iterator, ce) - 88usize];
7428    ["Offset of field: _zend_user_iterator::value"]
7429        [::std::mem::offset_of!(_zend_user_iterator, value) - 96usize];
7430};
7431pub type zend_user_iterator = _zend_user_iterator;
7432#[repr(C)]
7433#[derive(Debug, Copy, Clone)]
7434pub struct _zend_lex_state {
7435    pub yy_leng: ::std::os::raw::c_uint,
7436    pub yy_start: *mut ::std::os::raw::c_uchar,
7437    pub yy_text: *mut ::std::os::raw::c_uchar,
7438    pub yy_cursor: *mut ::std::os::raw::c_uchar,
7439    pub yy_marker: *mut ::std::os::raw::c_uchar,
7440    pub yy_limit: *mut ::std::os::raw::c_uchar,
7441    pub yy_state: ::std::os::raw::c_int,
7442    pub state_stack: zend_stack,
7443    pub heredoc_label_stack: zend_ptr_stack,
7444    pub nest_location_stack: zend_stack,
7445    pub in_: *mut zend_file_handle,
7446    pub lineno: u32,
7447    pub filename: *mut zend_string,
7448    pub script_org: *mut ::std::os::raw::c_uchar,
7449    pub script_org_size: usize,
7450    pub script_filtered: *mut ::std::os::raw::c_uchar,
7451    pub script_filtered_size: usize,
7452    pub input_filter: zend_encoding_filter,
7453    pub output_filter: zend_encoding_filter,
7454    pub script_encoding: *const zend_encoding,
7455    pub on_event: ::std::option::Option<
7456        unsafe extern "C" fn(
7457            event: zend_php_scanner_event::Type,
7458            token: ::std::os::raw::c_int,
7459            line: ::std::os::raw::c_int,
7460            text: *const ::std::os::raw::c_char,
7461            length: usize,
7462            context: *mut ::std::os::raw::c_void,
7463        ),
7464    >,
7465    pub on_event_context: *mut ::std::os::raw::c_void,
7466    pub ast: *mut zend_ast,
7467    pub ast_arena: *mut zend_arena,
7468}
7469#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7470const _: () = {
7471    ["Size of _zend_lex_state"][::std::mem::size_of::<_zend_lex_state>() - 248usize];
7472    ["Alignment of _zend_lex_state"][::std::mem::align_of::<_zend_lex_state>() - 8usize];
7473    ["Offset of field: _zend_lex_state::yy_leng"]
7474        [::std::mem::offset_of!(_zend_lex_state, yy_leng) - 0usize];
7475    ["Offset of field: _zend_lex_state::yy_start"]
7476        [::std::mem::offset_of!(_zend_lex_state, yy_start) - 8usize];
7477    ["Offset of field: _zend_lex_state::yy_text"]
7478        [::std::mem::offset_of!(_zend_lex_state, yy_text) - 16usize];
7479    ["Offset of field: _zend_lex_state::yy_cursor"]
7480        [::std::mem::offset_of!(_zend_lex_state, yy_cursor) - 24usize];
7481    ["Offset of field: _zend_lex_state::yy_marker"]
7482        [::std::mem::offset_of!(_zend_lex_state, yy_marker) - 32usize];
7483    ["Offset of field: _zend_lex_state::yy_limit"]
7484        [::std::mem::offset_of!(_zend_lex_state, yy_limit) - 40usize];
7485    ["Offset of field: _zend_lex_state::yy_state"]
7486        [::std::mem::offset_of!(_zend_lex_state, yy_state) - 48usize];
7487    ["Offset of field: _zend_lex_state::state_stack"]
7488        [::std::mem::offset_of!(_zend_lex_state, state_stack) - 56usize];
7489    ["Offset of field: _zend_lex_state::heredoc_label_stack"]
7490        [::std::mem::offset_of!(_zend_lex_state, heredoc_label_stack) - 80usize];
7491    ["Offset of field: _zend_lex_state::nest_location_stack"]
7492        [::std::mem::offset_of!(_zend_lex_state, nest_location_stack) - 112usize];
7493    ["Offset of field: _zend_lex_state::in_"]
7494        [::std::mem::offset_of!(_zend_lex_state, in_) - 136usize];
7495    ["Offset of field: _zend_lex_state::lineno"]
7496        [::std::mem::offset_of!(_zend_lex_state, lineno) - 144usize];
7497    ["Offset of field: _zend_lex_state::filename"]
7498        [::std::mem::offset_of!(_zend_lex_state, filename) - 152usize];
7499    ["Offset of field: _zend_lex_state::script_org"]
7500        [::std::mem::offset_of!(_zend_lex_state, script_org) - 160usize];
7501    ["Offset of field: _zend_lex_state::script_org_size"]
7502        [::std::mem::offset_of!(_zend_lex_state, script_org_size) - 168usize];
7503    ["Offset of field: _zend_lex_state::script_filtered"]
7504        [::std::mem::offset_of!(_zend_lex_state, script_filtered) - 176usize];
7505    ["Offset of field: _zend_lex_state::script_filtered_size"]
7506        [::std::mem::offset_of!(_zend_lex_state, script_filtered_size) - 184usize];
7507    ["Offset of field: _zend_lex_state::input_filter"]
7508        [::std::mem::offset_of!(_zend_lex_state, input_filter) - 192usize];
7509    ["Offset of field: _zend_lex_state::output_filter"]
7510        [::std::mem::offset_of!(_zend_lex_state, output_filter) - 200usize];
7511    ["Offset of field: _zend_lex_state::script_encoding"]
7512        [::std::mem::offset_of!(_zend_lex_state, script_encoding) - 208usize];
7513    ["Offset of field: _zend_lex_state::on_event"]
7514        [::std::mem::offset_of!(_zend_lex_state, on_event) - 216usize];
7515    ["Offset of field: _zend_lex_state::on_event_context"]
7516        [::std::mem::offset_of!(_zend_lex_state, on_event_context) - 224usize];
7517    ["Offset of field: _zend_lex_state::ast"]
7518        [::std::mem::offset_of!(_zend_lex_state, ast) - 232usize];
7519    ["Offset of field: _zend_lex_state::ast_arena"]
7520        [::std::mem::offset_of!(_zend_lex_state, ast_arena) - 240usize];
7521};
7522pub type zend_lex_state = _zend_lex_state;
7523#[repr(C)]
7524#[derive(Debug, Copy, Clone)]
7525pub struct _zend_heredoc_label {
7526    pub label: *mut ::std::os::raw::c_char,
7527    pub length: ::std::os::raw::c_int,
7528    pub indentation: ::std::os::raw::c_int,
7529    pub indentation_uses_spaces: bool,
7530}
7531#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7532const _: () = {
7533    ["Size of _zend_heredoc_label"][::std::mem::size_of::<_zend_heredoc_label>() - 24usize];
7534    ["Alignment of _zend_heredoc_label"][::std::mem::align_of::<_zend_heredoc_label>() - 8usize];
7535    ["Offset of field: _zend_heredoc_label::label"]
7536        [::std::mem::offset_of!(_zend_heredoc_label, label) - 0usize];
7537    ["Offset of field: _zend_heredoc_label::length"]
7538        [::std::mem::offset_of!(_zend_heredoc_label, length) - 8usize];
7539    ["Offset of field: _zend_heredoc_label::indentation"]
7540        [::std::mem::offset_of!(_zend_heredoc_label, indentation) - 12usize];
7541    ["Offset of field: _zend_heredoc_label::indentation_uses_spaces"]
7542        [::std::mem::offset_of!(_zend_heredoc_label, indentation_uses_spaces) - 16usize];
7543};
7544pub type zend_heredoc_label = _zend_heredoc_label;
7545#[repr(C)]
7546#[derive(Debug, Copy, Clone)]
7547pub struct _zend_nest_location {
7548    pub text: ::std::os::raw::c_char,
7549    pub lineno: ::std::os::raw::c_int,
7550}
7551#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7552const _: () = {
7553    ["Size of _zend_nest_location"][::std::mem::size_of::<_zend_nest_location>() - 8usize];
7554    ["Alignment of _zend_nest_location"][::std::mem::align_of::<_zend_nest_location>() - 4usize];
7555    ["Offset of field: _zend_nest_location::text"]
7556        [::std::mem::offset_of!(_zend_nest_location, text) - 0usize];
7557    ["Offset of field: _zend_nest_location::lineno"]
7558        [::std::mem::offset_of!(_zend_nest_location, lineno) - 4usize];
7559};
7560pub type zend_nest_location = _zend_nest_location;
7561pub type zend_observer_fcall_begin_handler =
7562    ::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
7563pub type zend_observer_fcall_end_handler = ::std::option::Option<
7564    unsafe extern "C" fn(execute_data: *mut zend_execute_data, retval: *mut zval),
7565>;
7566#[repr(C)]
7567#[derive(Debug, Copy, Clone)]
7568pub struct _zend_observer_fcall_handlers {
7569    pub begin: zend_observer_fcall_begin_handler,
7570    pub end: zend_observer_fcall_end_handler,
7571}
7572#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7573const _: () = {
7574    ["Size of _zend_observer_fcall_handlers"]
7575        [::std::mem::size_of::<_zend_observer_fcall_handlers>() - 16usize];
7576    ["Alignment of _zend_observer_fcall_handlers"]
7577        [::std::mem::align_of::<_zend_observer_fcall_handlers>() - 8usize];
7578    ["Offset of field: _zend_observer_fcall_handlers::begin"]
7579        [::std::mem::offset_of!(_zend_observer_fcall_handlers, begin) - 0usize];
7580    ["Offset of field: _zend_observer_fcall_handlers::end"]
7581        [::std::mem::offset_of!(_zend_observer_fcall_handlers, end) - 8usize];
7582};
7583pub type zend_observer_fcall_handlers = _zend_observer_fcall_handlers;
7584pub type zend_observer_fcall_init = ::std::option::Option<
7585    unsafe extern "C" fn(execute_data: *mut zend_execute_data) -> zend_observer_fcall_handlers,
7586>;
7587pub type zend_observer_function_declared_cb = ::std::option::Option<
7588    unsafe extern "C" fn(op_array: *mut zend_op_array, name: *mut zend_string),
7589>;
7590pub type zend_observer_class_linked_cb =
7591    ::std::option::Option<unsafe extern "C" fn(ce: *mut zend_class_entry, name: *mut zend_string)>;
7592pub type zend_observer_error_cb = ::std::option::Option<
7593    unsafe extern "C" fn(
7594        type_: ::std::os::raw::c_int,
7595        error_filename: *mut zend_string,
7596        error_lineno: u32,
7597        message: *mut zend_string,
7598    ),
7599>;
7600pub type zend_observer_fiber_init_handler =
7601    ::std::option::Option<unsafe extern "C" fn(initializing: *mut zend_fiber_context)>;
7602pub type zend_observer_fiber_switch_handler = ::std::option::Option<
7603    unsafe extern "C" fn(from: *mut zend_fiber_context, to: *mut zend_fiber_context),
7604>;
7605pub type zend_observer_fiber_destroy_handler =
7606    ::std::option::Option<unsafe extern "C" fn(destroying: *mut zend_fiber_context)>;
7607#[repr(C)]
7608#[derive(Debug, Copy, Clone)]
7609pub struct utimbuf {
7610    pub actime: __time_t,
7611    pub modtime: __time_t,
7612}
7613#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7614const _: () = {
7615    ["Size of utimbuf"][::std::mem::size_of::<utimbuf>() - 16usize];
7616    ["Alignment of utimbuf"][::std::mem::align_of::<utimbuf>() - 8usize];
7617    ["Offset of field: utimbuf::actime"][::std::mem::offset_of!(utimbuf, actime) - 0usize];
7618    ["Offset of field: utimbuf::modtime"][::std::mem::offset_of!(utimbuf, modtime) - 8usize];
7619};
7620#[repr(C)]
7621#[derive(Debug)]
7622pub struct __dirstream {
7623    _unused: [u8; 0],
7624}
7625pub type DIR = __dirstream;
7626#[repr(C)]
7627#[derive(Debug, Copy, Clone)]
7628pub struct _cwd_state {
7629    pub cwd: *mut ::std::os::raw::c_char,
7630    pub cwd_length: usize,
7631}
7632#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7633const _: () = {
7634    ["Size of _cwd_state"][::std::mem::size_of::<_cwd_state>() - 16usize];
7635    ["Alignment of _cwd_state"][::std::mem::align_of::<_cwd_state>() - 8usize];
7636    ["Offset of field: _cwd_state::cwd"][::std::mem::offset_of!(_cwd_state, cwd) - 0usize];
7637    ["Offset of field: _cwd_state::cwd_length"]
7638        [::std::mem::offset_of!(_cwd_state, cwd_length) - 8usize];
7639};
7640pub type cwd_state = _cwd_state;
7641pub type verify_path_func =
7642    ::std::option::Option<unsafe extern "C" fn(arg1: *const cwd_state) -> ::std::os::raw::c_int>;
7643#[repr(C)]
7644#[derive(Debug, Copy, Clone)]
7645pub struct _realpath_cache_bucket {
7646    pub key: zend_ulong,
7647    pub path: *mut ::std::os::raw::c_char,
7648    pub realpath: *mut ::std::os::raw::c_char,
7649    pub next: *mut _realpath_cache_bucket,
7650    pub expires: time_t,
7651    pub path_len: u16,
7652    pub realpath_len: u16,
7653    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
7654    pub __bindgen_padding_0: [u8; 3usize],
7655}
7656#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7657const _: () = {
7658    ["Size of _realpath_cache_bucket"][::std::mem::size_of::<_realpath_cache_bucket>() - 48usize];
7659    ["Alignment of _realpath_cache_bucket"]
7660        [::std::mem::align_of::<_realpath_cache_bucket>() - 8usize];
7661    ["Offset of field: _realpath_cache_bucket::key"]
7662        [::std::mem::offset_of!(_realpath_cache_bucket, key) - 0usize];
7663    ["Offset of field: _realpath_cache_bucket::path"]
7664        [::std::mem::offset_of!(_realpath_cache_bucket, path) - 8usize];
7665    ["Offset of field: _realpath_cache_bucket::realpath"]
7666        [::std::mem::offset_of!(_realpath_cache_bucket, realpath) - 16usize];
7667    ["Offset of field: _realpath_cache_bucket::next"]
7668        [::std::mem::offset_of!(_realpath_cache_bucket, next) - 24usize];
7669    ["Offset of field: _realpath_cache_bucket::expires"]
7670        [::std::mem::offset_of!(_realpath_cache_bucket, expires) - 32usize];
7671    ["Offset of field: _realpath_cache_bucket::path_len"]
7672        [::std::mem::offset_of!(_realpath_cache_bucket, path_len) - 40usize];
7673    ["Offset of field: _realpath_cache_bucket::realpath_len"]
7674        [::std::mem::offset_of!(_realpath_cache_bucket, realpath_len) - 42usize];
7675};
7676impl _realpath_cache_bucket {
7677    #[inline]
7678    #[allow(unnecessary_transmutes)]
7679    pub fn is_dir(&self) -> u8 {
7680        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u8) }
7681    }
7682    #[inline]
7683    #[allow(unnecessary_transmutes)]
7684    pub fn set_is_dir(&mut self, val: u8) {
7685        unsafe {
7686            let val: u8 = ::std::mem::transmute(val);
7687            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
7688        }
7689    }
7690    #[inline]
7691    #[allow(unnecessary_transmutes)]
7692    pub unsafe fn is_dir_raw(this: *const Self) -> u8 {
7693        unsafe {
7694            ::std::mem::transmute(
7695                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 1u8>(
7696                    ::std::ptr::addr_of!((*this)._bitfield_1),
7697                ) as u8,
7698            )
7699        }
7700    }
7701    #[inline]
7702    #[allow(unnecessary_transmutes)]
7703    pub unsafe fn set_is_dir_raw(this: *mut Self, val: u8) {
7704        unsafe {
7705            let val: u8 = ::std::mem::transmute(val);
7706            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<0usize, 1u8>(
7707                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
7708                val as u64,
7709            )
7710        }
7711    }
7712    #[inline]
7713    #[allow(unnecessary_transmutes)]
7714    pub fn new_bitfield_1(is_dir: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
7715        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
7716        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
7717            let is_dir: u8 = unsafe { ::std::mem::transmute(is_dir) };
7718            is_dir as u64
7719        });
7720        __bindgen_bitfield_unit
7721    }
7722}
7723pub type realpath_cache_bucket = _realpath_cache_bucket;
7724#[repr(C)]
7725#[derive(Debug, Copy, Clone)]
7726pub struct _virtual_cwd_globals {
7727    pub cwd: cwd_state,
7728    pub realpath_cache_size: zend_long,
7729    pub realpath_cache_size_limit: zend_long,
7730    pub realpath_cache_ttl: zend_long,
7731    pub realpath_cache: [*mut realpath_cache_bucket; 1024usize],
7732}
7733#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7734const _: () = {
7735    ["Size of _virtual_cwd_globals"][::std::mem::size_of::<_virtual_cwd_globals>() - 8232usize];
7736    ["Alignment of _virtual_cwd_globals"][::std::mem::align_of::<_virtual_cwd_globals>() - 8usize];
7737    ["Offset of field: _virtual_cwd_globals::cwd"]
7738        [::std::mem::offset_of!(_virtual_cwd_globals, cwd) - 0usize];
7739    ["Offset of field: _virtual_cwd_globals::realpath_cache_size"]
7740        [::std::mem::offset_of!(_virtual_cwd_globals, realpath_cache_size) - 16usize];
7741    ["Offset of field: _virtual_cwd_globals::realpath_cache_size_limit"]
7742        [::std::mem::offset_of!(_virtual_cwd_globals, realpath_cache_size_limit) - 24usize];
7743    ["Offset of field: _virtual_cwd_globals::realpath_cache_ttl"]
7744        [::std::mem::offset_of!(_virtual_cwd_globals, realpath_cache_ttl) - 32usize];
7745    ["Offset of field: _virtual_cwd_globals::realpath_cache"]
7746        [::std::mem::offset_of!(_virtual_cwd_globals, realpath_cache) - 40usize];
7747};
7748pub type virtual_cwd_globals = _virtual_cwd_globals;
7749pub mod length_modifier_e {
7750    #[allow(unused_imports)]
7751    use super::*;
7752    pub type Type = ::std::os::raw::c_uint;
7753    pub const LM_STD: Type = 0;
7754    pub const LM_INTMAX_T: Type = 1;
7755    pub const LM_PTRDIFF_T: Type = 2;
7756    pub const LM_LONG_LONG: Type = 3;
7757    pub const LM_SIZE_T: Type = 4;
7758    pub const LM_LONG: Type = 5;
7759    pub const LM_LONG_DOUBLE: Type = 6;
7760}
7761pub mod _php_output_handler_status_t {
7762    #[allow(unused_imports)]
7763    use super::*;
7764    pub type Type = ::std::os::raw::c_uint;
7765    pub const PHP_OUTPUT_HANDLER_FAILURE: Type = 0;
7766    pub const PHP_OUTPUT_HANDLER_SUCCESS: Type = 1;
7767    pub const PHP_OUTPUT_HANDLER_NO_DATA: Type = 2;
7768}
7769pub use self::_php_output_handler_status_t::Type as php_output_handler_status_t;
7770pub mod _php_output_handler_hook_t {
7771    #[allow(unused_imports)]
7772    use super::*;
7773    pub type Type = ::std::os::raw::c_uint;
7774    pub const PHP_OUTPUT_HANDLER_HOOK_GET_OPAQ: Type = 0;
7775    pub const PHP_OUTPUT_HANDLER_HOOK_GET_FLAGS: Type = 1;
7776    pub const PHP_OUTPUT_HANDLER_HOOK_GET_LEVEL: Type = 2;
7777    pub const PHP_OUTPUT_HANDLER_HOOK_IMMUTABLE: Type = 3;
7778    pub const PHP_OUTPUT_HANDLER_HOOK_DISABLE: Type = 4;
7779    pub const PHP_OUTPUT_HANDLER_HOOK_LAST: Type = 5;
7780}
7781pub use self::_php_output_handler_hook_t::Type as php_output_handler_hook_t;
7782#[repr(C)]
7783#[derive(Debug, Copy, Clone)]
7784pub struct _php_output_buffer {
7785    pub data: *mut ::std::os::raw::c_char,
7786    pub size: usize,
7787    pub used: usize,
7788    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
7789    pub __bindgen_padding_0: u32,
7790}
7791#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7792const _: () = {
7793    ["Size of _php_output_buffer"][::std::mem::size_of::<_php_output_buffer>() - 32usize];
7794    ["Alignment of _php_output_buffer"][::std::mem::align_of::<_php_output_buffer>() - 8usize];
7795    ["Offset of field: _php_output_buffer::data"]
7796        [::std::mem::offset_of!(_php_output_buffer, data) - 0usize];
7797    ["Offset of field: _php_output_buffer::size"]
7798        [::std::mem::offset_of!(_php_output_buffer, size) - 8usize];
7799    ["Offset of field: _php_output_buffer::used"]
7800        [::std::mem::offset_of!(_php_output_buffer, used) - 16usize];
7801};
7802impl _php_output_buffer {
7803    #[inline]
7804    #[allow(unnecessary_transmutes)]
7805    pub fn free(&self) -> u32 {
7806        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u32) }
7807    }
7808    #[inline]
7809    #[allow(unnecessary_transmutes)]
7810    pub fn set_free(&mut self, val: u32) {
7811        unsafe {
7812            let val: u32 = ::std::mem::transmute(val);
7813            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
7814        }
7815    }
7816    #[inline]
7817    #[allow(unnecessary_transmutes)]
7818    pub unsafe fn free_raw(this: *const Self) -> u32 {
7819        unsafe {
7820            ::std::mem::transmute(
7821                <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get_const::<0usize, 1u8>(
7822                    ::std::ptr::addr_of!((*this)._bitfield_1),
7823                ) as u32,
7824            )
7825        }
7826    }
7827    #[inline]
7828    #[allow(unnecessary_transmutes)]
7829    pub unsafe fn set_free_raw(this: *mut Self, val: u32) {
7830        unsafe {
7831            let val: u32 = ::std::mem::transmute(val);
7832            <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set_const::<0usize, 1u8>(
7833                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
7834                val as u64,
7835            )
7836        }
7837    }
7838    #[inline]
7839    #[allow(unnecessary_transmutes)]
7840    pub fn _reserved(&self) -> u32 {
7841        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<1usize, 31u8>() as u32) }
7842    }
7843    #[inline]
7844    #[allow(unnecessary_transmutes)]
7845    pub fn set__reserved(&mut self, val: u32) {
7846        unsafe {
7847            let val: u32 = ::std::mem::transmute(val);
7848            self._bitfield_1.set_const::<1usize, 31u8>(val as u64)
7849        }
7850    }
7851    #[inline]
7852    #[allow(unnecessary_transmutes)]
7853    pub unsafe fn _reserved_raw(this: *const Self) -> u32 {
7854        unsafe {
7855            ::std::mem::transmute(
7856                <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get_const::<1usize, 31u8>(
7857                    ::std::ptr::addr_of!((*this)._bitfield_1),
7858                ) as u32,
7859            )
7860        }
7861    }
7862    #[inline]
7863    #[allow(unnecessary_transmutes)]
7864    pub unsafe fn set__reserved_raw(this: *mut Self, val: u32) {
7865        unsafe {
7866            let val: u32 = ::std::mem::transmute(val);
7867            <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set_const::<1usize, 31u8>(
7868                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
7869                val as u64,
7870            )
7871        }
7872    }
7873    #[inline]
7874    #[allow(unnecessary_transmutes)]
7875    pub fn new_bitfield_1(free: u32, _reserved: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
7876        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
7877        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
7878            let free: u32 = unsafe { ::std::mem::transmute(free) };
7879            free as u64
7880        });
7881        __bindgen_bitfield_unit.set_const::<1usize, 31u8>({
7882            let _reserved: u32 = unsafe { ::std::mem::transmute(_reserved) };
7883            _reserved as u64
7884        });
7885        __bindgen_bitfield_unit
7886    }
7887}
7888pub type php_output_buffer = _php_output_buffer;
7889#[repr(C)]
7890#[derive(Debug, Copy, Clone)]
7891pub struct _php_output_context {
7892    pub op: ::std::os::raw::c_int,
7893    pub in_: php_output_buffer,
7894    pub out: php_output_buffer,
7895}
7896#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7897const _: () = {
7898    ["Size of _php_output_context"][::std::mem::size_of::<_php_output_context>() - 72usize];
7899    ["Alignment of _php_output_context"][::std::mem::align_of::<_php_output_context>() - 8usize];
7900    ["Offset of field: _php_output_context::op"]
7901        [::std::mem::offset_of!(_php_output_context, op) - 0usize];
7902    ["Offset of field: _php_output_context::in_"]
7903        [::std::mem::offset_of!(_php_output_context, in_) - 8usize];
7904    ["Offset of field: _php_output_context::out"]
7905        [::std::mem::offset_of!(_php_output_context, out) - 40usize];
7906};
7907pub type php_output_context = _php_output_context;
7908pub type php_output_handler_func_t = ::std::option::Option<
7909    unsafe extern "C" fn(
7910        output: *mut ::std::os::raw::c_char,
7911        output_len: usize,
7912        handled_output: *mut *mut ::std::os::raw::c_char,
7913        handled_output_len: *mut usize,
7914        mode: ::std::os::raw::c_int,
7915    ),
7916>;
7917pub type php_output_handler_context_func_t = ::std::option::Option<
7918    unsafe extern "C" fn(
7919        handler_context: *mut *mut ::std::os::raw::c_void,
7920        output_context: *mut php_output_context,
7921    ) -> zend_result,
7922>;
7923pub type php_output_handler_context_dtor_t =
7924    ::std::option::Option<unsafe extern "C" fn(opaq: *mut ::std::os::raw::c_void)>;
7925pub type php_output_handler_conflict_check_t = ::std::option::Option<
7926    unsafe extern "C" fn(
7927        handler_name: *const ::std::os::raw::c_char,
7928        handler_name_len: usize,
7929    ) -> zend_result,
7930>;
7931pub type php_output_handler_alias_ctor_t = ::std::option::Option<
7932    unsafe extern "C" fn(
7933        handler_name: *const ::std::os::raw::c_char,
7934        handler_name_len: usize,
7935        chunk_size: usize,
7936        flags: ::std::os::raw::c_int,
7937    ) -> *mut _php_output_handler,
7938>;
7939#[repr(C)]
7940#[derive(Copy, Clone)]
7941pub struct _php_output_handler_user_func_t {
7942    pub fci: zend_fcall_info,
7943    pub fcc: zend_fcall_info_cache,
7944    pub zoh: zval,
7945}
7946#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7947const _: () = {
7948    ["Size of _php_output_handler_user_func_t"]
7949        [::std::mem::size_of::<_php_output_handler_user_func_t>() - 120usize];
7950    ["Alignment of _php_output_handler_user_func_t"]
7951        [::std::mem::align_of::<_php_output_handler_user_func_t>() - 8usize];
7952    ["Offset of field: _php_output_handler_user_func_t::fci"]
7953        [::std::mem::offset_of!(_php_output_handler_user_func_t, fci) - 0usize];
7954    ["Offset of field: _php_output_handler_user_func_t::fcc"]
7955        [::std::mem::offset_of!(_php_output_handler_user_func_t, fcc) - 64usize];
7956    ["Offset of field: _php_output_handler_user_func_t::zoh"]
7957        [::std::mem::offset_of!(_php_output_handler_user_func_t, zoh) - 104usize];
7958};
7959pub type php_output_handler_user_func_t = _php_output_handler_user_func_t;
7960#[repr(C)]
7961#[derive(Copy, Clone)]
7962pub struct _php_output_handler {
7963    pub name: *mut zend_string,
7964    pub flags: ::std::os::raw::c_int,
7965    pub level: ::std::os::raw::c_int,
7966    pub size: usize,
7967    pub buffer: php_output_buffer,
7968    pub opaq: *mut ::std::os::raw::c_void,
7969    pub dtor: ::std::option::Option<unsafe extern "C" fn(opaq: *mut ::std::os::raw::c_void)>,
7970    pub func: _php_output_handler__bindgen_ty_1,
7971}
7972#[repr(C)]
7973#[derive(Copy, Clone)]
7974pub union _php_output_handler__bindgen_ty_1 {
7975    pub user: *mut php_output_handler_user_func_t,
7976    pub internal: php_output_handler_context_func_t,
7977}
7978#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7979const _: () = {
7980    ["Size of _php_output_handler__bindgen_ty_1"]
7981        [::std::mem::size_of::<_php_output_handler__bindgen_ty_1>() - 8usize];
7982    ["Alignment of _php_output_handler__bindgen_ty_1"]
7983        [::std::mem::align_of::<_php_output_handler__bindgen_ty_1>() - 8usize];
7984    ["Offset of field: _php_output_handler__bindgen_ty_1::user"]
7985        [::std::mem::offset_of!(_php_output_handler__bindgen_ty_1, user) - 0usize];
7986    ["Offset of field: _php_output_handler__bindgen_ty_1::internal"]
7987        [::std::mem::offset_of!(_php_output_handler__bindgen_ty_1, internal) - 0usize];
7988};
7989#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7990const _: () = {
7991    ["Size of _php_output_handler"][::std::mem::size_of::<_php_output_handler>() - 80usize];
7992    ["Alignment of _php_output_handler"][::std::mem::align_of::<_php_output_handler>() - 8usize];
7993    ["Offset of field: _php_output_handler::name"]
7994        [::std::mem::offset_of!(_php_output_handler, name) - 0usize];
7995    ["Offset of field: _php_output_handler::flags"]
7996        [::std::mem::offset_of!(_php_output_handler, flags) - 8usize];
7997    ["Offset of field: _php_output_handler::level"]
7998        [::std::mem::offset_of!(_php_output_handler, level) - 12usize];
7999    ["Offset of field: _php_output_handler::size"]
8000        [::std::mem::offset_of!(_php_output_handler, size) - 16usize];
8001    ["Offset of field: _php_output_handler::buffer"]
8002        [::std::mem::offset_of!(_php_output_handler, buffer) - 24usize];
8003    ["Offset of field: _php_output_handler::opaq"]
8004        [::std::mem::offset_of!(_php_output_handler, opaq) - 56usize];
8005    ["Offset of field: _php_output_handler::dtor"]
8006        [::std::mem::offset_of!(_php_output_handler, dtor) - 64usize];
8007    ["Offset of field: _php_output_handler::func"]
8008        [::std::mem::offset_of!(_php_output_handler, func) - 72usize];
8009};
8010pub type php_output_handler = _php_output_handler;
8011#[repr(C)]
8012#[derive(Debug, Copy, Clone)]
8013pub struct _zend_output_globals {
8014    pub handlers: zend_stack,
8015    pub active: *mut php_output_handler,
8016    pub running: *mut php_output_handler,
8017    pub output_start_filename: *mut zend_string,
8018    pub output_start_lineno: ::std::os::raw::c_int,
8019    pub flags: ::std::os::raw::c_int,
8020}
8021#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8022const _: () = {
8023    ["Size of _zend_output_globals"][::std::mem::size_of::<_zend_output_globals>() - 56usize];
8024    ["Alignment of _zend_output_globals"][::std::mem::align_of::<_zend_output_globals>() - 8usize];
8025    ["Offset of field: _zend_output_globals::handlers"]
8026        [::std::mem::offset_of!(_zend_output_globals, handlers) - 0usize];
8027    ["Offset of field: _zend_output_globals::active"]
8028        [::std::mem::offset_of!(_zend_output_globals, active) - 24usize];
8029    ["Offset of field: _zend_output_globals::running"]
8030        [::std::mem::offset_of!(_zend_output_globals, running) - 32usize];
8031    ["Offset of field: _zend_output_globals::output_start_filename"]
8032        [::std::mem::offset_of!(_zend_output_globals, output_start_filename) - 40usize];
8033    ["Offset of field: _zend_output_globals::output_start_lineno"]
8034        [::std::mem::offset_of!(_zend_output_globals, output_start_lineno) - 48usize];
8035    ["Offset of field: _zend_output_globals::flags"]
8036        [::std::mem::offset_of!(_zend_output_globals, flags) - 52usize];
8037};
8038pub type zend_output_globals = _zend_output_globals;
8039pub type php_stream = _php_stream;
8040pub type php_stream_wrapper = _php_stream_wrapper;
8041pub type php_stream_context = _php_stream_context;
8042pub type php_stream_filter = _php_stream_filter;
8043pub type php_stream_notification_func = ::std::option::Option<
8044    unsafe extern "C" fn(
8045        context: *mut php_stream_context,
8046        notifycode: ::std::os::raw::c_int,
8047        severity: ::std::os::raw::c_int,
8048        xmsg: *mut ::std::os::raw::c_char,
8049        xcode: ::std::os::raw::c_int,
8050        bytes_sofar: usize,
8051        bytes_max: usize,
8052        ptr: *mut ::std::os::raw::c_void,
8053    ),
8054>;
8055pub type php_stream_notifier = _php_stream_notifier;
8056#[repr(C)]
8057#[derive(Debug, Copy, Clone)]
8058pub struct _php_stream_notifier {
8059    pub func: php_stream_notification_func,
8060    pub dtor: ::std::option::Option<unsafe extern "C" fn(notifier: *mut php_stream_notifier)>,
8061    pub ptr: *mut ::std::os::raw::c_void,
8062    pub mask: ::std::os::raw::c_int,
8063    pub progress: usize,
8064    pub progress_max: usize,
8065}
8066#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8067const _: () = {
8068    ["Size of _php_stream_notifier"][::std::mem::size_of::<_php_stream_notifier>() - 48usize];
8069    ["Alignment of _php_stream_notifier"][::std::mem::align_of::<_php_stream_notifier>() - 8usize];
8070    ["Offset of field: _php_stream_notifier::func"]
8071        [::std::mem::offset_of!(_php_stream_notifier, func) - 0usize];
8072    ["Offset of field: _php_stream_notifier::dtor"]
8073        [::std::mem::offset_of!(_php_stream_notifier, dtor) - 8usize];
8074    ["Offset of field: _php_stream_notifier::ptr"]
8075        [::std::mem::offset_of!(_php_stream_notifier, ptr) - 16usize];
8076    ["Offset of field: _php_stream_notifier::mask"]
8077        [::std::mem::offset_of!(_php_stream_notifier, mask) - 24usize];
8078    ["Offset of field: _php_stream_notifier::progress"]
8079        [::std::mem::offset_of!(_php_stream_notifier, progress) - 32usize];
8080    ["Offset of field: _php_stream_notifier::progress_max"]
8081        [::std::mem::offset_of!(_php_stream_notifier, progress_max) - 40usize];
8082};
8083#[repr(C)]
8084#[derive(Copy, Clone)]
8085pub struct _php_stream_context {
8086    pub notifier: *mut php_stream_notifier,
8087    pub options: zval,
8088    pub res: *mut zend_resource,
8089}
8090#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8091const _: () = {
8092    ["Size of _php_stream_context"][::std::mem::size_of::<_php_stream_context>() - 32usize];
8093    ["Alignment of _php_stream_context"][::std::mem::align_of::<_php_stream_context>() - 8usize];
8094    ["Offset of field: _php_stream_context::notifier"]
8095        [::std::mem::offset_of!(_php_stream_context, notifier) - 0usize];
8096    ["Offset of field: _php_stream_context::options"]
8097        [::std::mem::offset_of!(_php_stream_context, options) - 8usize];
8098    ["Offset of field: _php_stream_context::res"]
8099        [::std::mem::offset_of!(_php_stream_context, res) - 24usize];
8100};
8101#[repr(C)]
8102#[derive(Debug)]
8103pub struct php_uri_parser {
8104    _unused: [u8; 0],
8105}
8106pub type php_stream_bucket = _php_stream_bucket;
8107pub type php_stream_bucket_brigade = _php_stream_bucket_brigade;
8108#[repr(C)]
8109#[derive(Debug, Copy, Clone)]
8110pub struct _php_stream_bucket {
8111    pub next: *mut php_stream_bucket,
8112    pub prev: *mut php_stream_bucket,
8113    pub brigade: *mut php_stream_bucket_brigade,
8114    pub buf: *mut ::std::os::raw::c_char,
8115    pub buflen: usize,
8116    pub own_buf: bool,
8117    pub is_persistent: bool,
8118    pub refcount: ::std::os::raw::c_int,
8119}
8120#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8121const _: () = {
8122    ["Size of _php_stream_bucket"][::std::mem::size_of::<_php_stream_bucket>() - 48usize];
8123    ["Alignment of _php_stream_bucket"][::std::mem::align_of::<_php_stream_bucket>() - 8usize];
8124    ["Offset of field: _php_stream_bucket::next"]
8125        [::std::mem::offset_of!(_php_stream_bucket, next) - 0usize];
8126    ["Offset of field: _php_stream_bucket::prev"]
8127        [::std::mem::offset_of!(_php_stream_bucket, prev) - 8usize];
8128    ["Offset of field: _php_stream_bucket::brigade"]
8129        [::std::mem::offset_of!(_php_stream_bucket, brigade) - 16usize];
8130    ["Offset of field: _php_stream_bucket::buf"]
8131        [::std::mem::offset_of!(_php_stream_bucket, buf) - 24usize];
8132    ["Offset of field: _php_stream_bucket::buflen"]
8133        [::std::mem::offset_of!(_php_stream_bucket, buflen) - 32usize];
8134    ["Offset of field: _php_stream_bucket::own_buf"]
8135        [::std::mem::offset_of!(_php_stream_bucket, own_buf) - 40usize];
8136    ["Offset of field: _php_stream_bucket::is_persistent"]
8137        [::std::mem::offset_of!(_php_stream_bucket, is_persistent) - 41usize];
8138    ["Offset of field: _php_stream_bucket::refcount"]
8139        [::std::mem::offset_of!(_php_stream_bucket, refcount) - 44usize];
8140};
8141#[repr(C)]
8142#[derive(Debug, Copy, Clone)]
8143pub struct _php_stream_bucket_brigade {
8144    pub head: *mut php_stream_bucket,
8145    pub tail: *mut php_stream_bucket,
8146}
8147#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8148const _: () = {
8149    ["Size of _php_stream_bucket_brigade"]
8150        [::std::mem::size_of::<_php_stream_bucket_brigade>() - 16usize];
8151    ["Alignment of _php_stream_bucket_brigade"]
8152        [::std::mem::align_of::<_php_stream_bucket_brigade>() - 8usize];
8153    ["Offset of field: _php_stream_bucket_brigade::head"]
8154        [::std::mem::offset_of!(_php_stream_bucket_brigade, head) - 0usize];
8155    ["Offset of field: _php_stream_bucket_brigade::tail"]
8156        [::std::mem::offset_of!(_php_stream_bucket_brigade, tail) - 8usize];
8157};
8158pub mod php_stream_filter_status_t {
8159    #[allow(unused_imports)]
8160    use super::*;
8161    pub type Type = ::std::os::raw::c_uint;
8162    pub const PSFS_ERR_FATAL: Type = 0;
8163    pub const PSFS_FEED_ME: Type = 1;
8164    pub const PSFS_PASS_ON: Type = 2;
8165}
8166#[repr(C)]
8167#[derive(Debug, Copy, Clone)]
8168pub struct _php_stream_filter_ops {
8169    pub filter: ::std::option::Option<
8170        unsafe extern "C" fn(
8171            stream: *mut php_stream,
8172            thisfilter: *mut php_stream_filter,
8173            buckets_in: *mut php_stream_bucket_brigade,
8174            buckets_out: *mut php_stream_bucket_brigade,
8175            bytes_consumed: *mut usize,
8176            flags: ::std::os::raw::c_int,
8177        ) -> php_stream_filter_status_t::Type,
8178    >,
8179    pub dtor: ::std::option::Option<unsafe extern "C" fn(thisfilter: *mut php_stream_filter)>,
8180    pub label: *const ::std::os::raw::c_char,
8181}
8182#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8183const _: () = {
8184    ["Size of _php_stream_filter_ops"][::std::mem::size_of::<_php_stream_filter_ops>() - 24usize];
8185    ["Alignment of _php_stream_filter_ops"]
8186        [::std::mem::align_of::<_php_stream_filter_ops>() - 8usize];
8187    ["Offset of field: _php_stream_filter_ops::filter"]
8188        [::std::mem::offset_of!(_php_stream_filter_ops, filter) - 0usize];
8189    ["Offset of field: _php_stream_filter_ops::dtor"]
8190        [::std::mem::offset_of!(_php_stream_filter_ops, dtor) - 8usize];
8191    ["Offset of field: _php_stream_filter_ops::label"]
8192        [::std::mem::offset_of!(_php_stream_filter_ops, label) - 16usize];
8193};
8194pub type php_stream_filter_ops = _php_stream_filter_ops;
8195#[repr(C)]
8196#[derive(Debug, Copy, Clone)]
8197pub struct _php_stream_filter_chain {
8198    pub head: *mut php_stream_filter,
8199    pub tail: *mut php_stream_filter,
8200    pub stream: *mut php_stream,
8201}
8202#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8203const _: () = {
8204    ["Size of _php_stream_filter_chain"]
8205        [::std::mem::size_of::<_php_stream_filter_chain>() - 24usize];
8206    ["Alignment of _php_stream_filter_chain"]
8207        [::std::mem::align_of::<_php_stream_filter_chain>() - 8usize];
8208    ["Offset of field: _php_stream_filter_chain::head"]
8209        [::std::mem::offset_of!(_php_stream_filter_chain, head) - 0usize];
8210    ["Offset of field: _php_stream_filter_chain::tail"]
8211        [::std::mem::offset_of!(_php_stream_filter_chain, tail) - 8usize];
8212    ["Offset of field: _php_stream_filter_chain::stream"]
8213        [::std::mem::offset_of!(_php_stream_filter_chain, stream) - 16usize];
8214};
8215pub type php_stream_filter_chain = _php_stream_filter_chain;
8216#[repr(C)]
8217#[derive(Copy, Clone)]
8218pub struct _php_stream_filter {
8219    pub fops: *const php_stream_filter_ops,
8220    pub abstract_: zval,
8221    pub next: *mut php_stream_filter,
8222    pub prev: *mut php_stream_filter,
8223    pub is_persistent: ::std::os::raw::c_int,
8224    pub chain: *mut php_stream_filter_chain,
8225    pub buffer: php_stream_bucket_brigade,
8226    pub res: *mut zend_resource,
8227}
8228#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8229const _: () = {
8230    ["Size of _php_stream_filter"][::std::mem::size_of::<_php_stream_filter>() - 80usize];
8231    ["Alignment of _php_stream_filter"][::std::mem::align_of::<_php_stream_filter>() - 8usize];
8232    ["Offset of field: _php_stream_filter::fops"]
8233        [::std::mem::offset_of!(_php_stream_filter, fops) - 0usize];
8234    ["Offset of field: _php_stream_filter::abstract_"]
8235        [::std::mem::offset_of!(_php_stream_filter, abstract_) - 8usize];
8236    ["Offset of field: _php_stream_filter::next"]
8237        [::std::mem::offset_of!(_php_stream_filter, next) - 24usize];
8238    ["Offset of field: _php_stream_filter::prev"]
8239        [::std::mem::offset_of!(_php_stream_filter, prev) - 32usize];
8240    ["Offset of field: _php_stream_filter::is_persistent"]
8241        [::std::mem::offset_of!(_php_stream_filter, is_persistent) - 40usize];
8242    ["Offset of field: _php_stream_filter::chain"]
8243        [::std::mem::offset_of!(_php_stream_filter, chain) - 48usize];
8244    ["Offset of field: _php_stream_filter::buffer"]
8245        [::std::mem::offset_of!(_php_stream_filter, buffer) - 56usize];
8246    ["Offset of field: _php_stream_filter::res"]
8247        [::std::mem::offset_of!(_php_stream_filter, res) - 72usize];
8248};
8249#[repr(C)]
8250#[derive(Debug, Copy, Clone)]
8251pub struct _php_stream_filter_factory {
8252    pub create_filter: ::std::option::Option<
8253        unsafe extern "C" fn(
8254            filtername: *const ::std::os::raw::c_char,
8255            filterparams: *mut zval,
8256            persistent: u8,
8257        ) -> *mut php_stream_filter,
8258    >,
8259}
8260#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8261const _: () = {
8262    ["Size of _php_stream_filter_factory"]
8263        [::std::mem::size_of::<_php_stream_filter_factory>() - 8usize];
8264    ["Alignment of _php_stream_filter_factory"]
8265        [::std::mem::align_of::<_php_stream_filter_factory>() - 8usize];
8266    ["Offset of field: _php_stream_filter_factory::create_filter"]
8267        [::std::mem::offset_of!(_php_stream_filter_factory, create_filter) - 0usize];
8268};
8269pub type php_stream_filter_factory = _php_stream_filter_factory;
8270#[repr(C)]
8271#[derive(Debug, Copy, Clone)]
8272pub struct _php_stream_statbuf {
8273    pub sb: zend_stat_t,
8274}
8275#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8276const _: () = {
8277    ["Size of _php_stream_statbuf"][::std::mem::size_of::<_php_stream_statbuf>() - 144usize];
8278    ["Alignment of _php_stream_statbuf"][::std::mem::align_of::<_php_stream_statbuf>() - 8usize];
8279    ["Offset of field: _php_stream_statbuf::sb"]
8280        [::std::mem::offset_of!(_php_stream_statbuf, sb) - 0usize];
8281};
8282pub type php_stream_statbuf = _php_stream_statbuf;
8283#[repr(C)]
8284#[derive(Debug, Copy, Clone)]
8285pub struct _php_stream_dirent {
8286    pub d_name: [::std::os::raw::c_char; 4096usize],
8287    pub d_type: ::std::os::raw::c_uchar,
8288}
8289#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8290const _: () = {
8291    ["Size of _php_stream_dirent"][::std::mem::size_of::<_php_stream_dirent>() - 4097usize];
8292    ["Alignment of _php_stream_dirent"][::std::mem::align_of::<_php_stream_dirent>() - 1usize];
8293    ["Offset of field: _php_stream_dirent::d_name"]
8294        [::std::mem::offset_of!(_php_stream_dirent, d_name) - 0usize];
8295    ["Offset of field: _php_stream_dirent::d_type"]
8296        [::std::mem::offset_of!(_php_stream_dirent, d_type) - 4096usize];
8297};
8298pub type php_stream_dirent = _php_stream_dirent;
8299#[repr(C)]
8300#[derive(Debug, Copy, Clone)]
8301pub struct _php_stream_ops {
8302    pub write: ::std::option::Option<
8303        unsafe extern "C" fn(
8304            stream: *mut php_stream,
8305            buf: *const ::std::os::raw::c_char,
8306            count: usize,
8307        ) -> isize,
8308    >,
8309    pub read: ::std::option::Option<
8310        unsafe extern "C" fn(
8311            stream: *mut php_stream,
8312            buf: *mut ::std::os::raw::c_char,
8313            count: usize,
8314        ) -> isize,
8315    >,
8316    pub close: ::std::option::Option<
8317        unsafe extern "C" fn(
8318            stream: *mut php_stream,
8319            close_handle: ::std::os::raw::c_int,
8320        ) -> ::std::os::raw::c_int,
8321    >,
8322    pub flush: ::std::option::Option<
8323        unsafe extern "C" fn(stream: *mut php_stream) -> ::std::os::raw::c_int,
8324    >,
8325    pub label: *const ::std::os::raw::c_char,
8326    pub seek: ::std::option::Option<
8327        unsafe extern "C" fn(
8328            stream: *mut php_stream,
8329            offset: zend_off_t,
8330            whence: ::std::os::raw::c_int,
8331            newoffset: *mut zend_off_t,
8332        ) -> ::std::os::raw::c_int,
8333    >,
8334    pub cast: ::std::option::Option<
8335        unsafe extern "C" fn(
8336            stream: *mut php_stream,
8337            castas: ::std::os::raw::c_int,
8338            ret: *mut *mut ::std::os::raw::c_void,
8339        ) -> ::std::os::raw::c_int,
8340    >,
8341    pub stat: ::std::option::Option<
8342        unsafe extern "C" fn(
8343            stream: *mut php_stream,
8344            ssb: *mut php_stream_statbuf,
8345        ) -> ::std::os::raw::c_int,
8346    >,
8347    pub set_option: ::std::option::Option<
8348        unsafe extern "C" fn(
8349            stream: *mut php_stream,
8350            option: ::std::os::raw::c_int,
8351            value: ::std::os::raw::c_int,
8352            ptrparam: *mut ::std::os::raw::c_void,
8353        ) -> ::std::os::raw::c_int,
8354    >,
8355}
8356#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8357const _: () = {
8358    ["Size of _php_stream_ops"][::std::mem::size_of::<_php_stream_ops>() - 72usize];
8359    ["Alignment of _php_stream_ops"][::std::mem::align_of::<_php_stream_ops>() - 8usize];
8360    ["Offset of field: _php_stream_ops::write"]
8361        [::std::mem::offset_of!(_php_stream_ops, write) - 0usize];
8362    ["Offset of field: _php_stream_ops::read"]
8363        [::std::mem::offset_of!(_php_stream_ops, read) - 8usize];
8364    ["Offset of field: _php_stream_ops::close"]
8365        [::std::mem::offset_of!(_php_stream_ops, close) - 16usize];
8366    ["Offset of field: _php_stream_ops::flush"]
8367        [::std::mem::offset_of!(_php_stream_ops, flush) - 24usize];
8368    ["Offset of field: _php_stream_ops::label"]
8369        [::std::mem::offset_of!(_php_stream_ops, label) - 32usize];
8370    ["Offset of field: _php_stream_ops::seek"]
8371        [::std::mem::offset_of!(_php_stream_ops, seek) - 40usize];
8372    ["Offset of field: _php_stream_ops::cast"]
8373        [::std::mem::offset_of!(_php_stream_ops, cast) - 48usize];
8374    ["Offset of field: _php_stream_ops::stat"]
8375        [::std::mem::offset_of!(_php_stream_ops, stat) - 56usize];
8376    ["Offset of field: _php_stream_ops::set_option"]
8377        [::std::mem::offset_of!(_php_stream_ops, set_option) - 64usize];
8378};
8379pub type php_stream_ops = _php_stream_ops;
8380#[repr(C)]
8381#[derive(Debug, Copy, Clone)]
8382pub struct _php_stream_wrapper_ops {
8383    pub stream_opener: ::std::option::Option<
8384        unsafe extern "C" fn(
8385            wrapper: *mut php_stream_wrapper,
8386            filename: *const ::std::os::raw::c_char,
8387            mode: *const ::std::os::raw::c_char,
8388            options: ::std::os::raw::c_int,
8389            opened_path: *mut *mut zend_string,
8390            context: *mut php_stream_context,
8391            __php_stream_call_depth: ::std::os::raw::c_int,
8392            __zend_filename: *const ::std::os::raw::c_char,
8393            __zend_lineno: u32,
8394            __zend_orig_filename: *const ::std::os::raw::c_char,
8395            __zend_orig_lineno: u32,
8396        ) -> *mut php_stream,
8397    >,
8398    pub stream_closer: ::std::option::Option<
8399        unsafe extern "C" fn(
8400            wrapper: *mut php_stream_wrapper,
8401            stream: *mut php_stream,
8402        ) -> ::std::os::raw::c_int,
8403    >,
8404    pub stream_stat: ::std::option::Option<
8405        unsafe extern "C" fn(
8406            wrapper: *mut php_stream_wrapper,
8407            stream: *mut php_stream,
8408            ssb: *mut php_stream_statbuf,
8409        ) -> ::std::os::raw::c_int,
8410    >,
8411    pub url_stat: ::std::option::Option<
8412        unsafe extern "C" fn(
8413            wrapper: *mut php_stream_wrapper,
8414            url: *const ::std::os::raw::c_char,
8415            flags: ::std::os::raw::c_int,
8416            ssb: *mut php_stream_statbuf,
8417            context: *mut php_stream_context,
8418        ) -> ::std::os::raw::c_int,
8419    >,
8420    pub dir_opener: ::std::option::Option<
8421        unsafe extern "C" fn(
8422            wrapper: *mut php_stream_wrapper,
8423            filename: *const ::std::os::raw::c_char,
8424            mode: *const ::std::os::raw::c_char,
8425            options: ::std::os::raw::c_int,
8426            opened_path: *mut *mut zend_string,
8427            context: *mut php_stream_context,
8428            __php_stream_call_depth: ::std::os::raw::c_int,
8429            __zend_filename: *const ::std::os::raw::c_char,
8430            __zend_lineno: u32,
8431            __zend_orig_filename: *const ::std::os::raw::c_char,
8432            __zend_orig_lineno: u32,
8433        ) -> *mut php_stream,
8434    >,
8435    pub label: *const ::std::os::raw::c_char,
8436    pub unlink: ::std::option::Option<
8437        unsafe extern "C" fn(
8438            wrapper: *mut php_stream_wrapper,
8439            url: *const ::std::os::raw::c_char,
8440            options: ::std::os::raw::c_int,
8441            context: *mut php_stream_context,
8442        ) -> ::std::os::raw::c_int,
8443    >,
8444    pub rename: ::std::option::Option<
8445        unsafe extern "C" fn(
8446            wrapper: *mut php_stream_wrapper,
8447            url_from: *const ::std::os::raw::c_char,
8448            url_to: *const ::std::os::raw::c_char,
8449            options: ::std::os::raw::c_int,
8450            context: *mut php_stream_context,
8451        ) -> ::std::os::raw::c_int,
8452    >,
8453    pub stream_mkdir: ::std::option::Option<
8454        unsafe extern "C" fn(
8455            wrapper: *mut php_stream_wrapper,
8456            url: *const ::std::os::raw::c_char,
8457            mode: ::std::os::raw::c_int,
8458            options: ::std::os::raw::c_int,
8459            context: *mut php_stream_context,
8460        ) -> ::std::os::raw::c_int,
8461    >,
8462    pub stream_rmdir: ::std::option::Option<
8463        unsafe extern "C" fn(
8464            wrapper: *mut php_stream_wrapper,
8465            url: *const ::std::os::raw::c_char,
8466            options: ::std::os::raw::c_int,
8467            context: *mut php_stream_context,
8468        ) -> ::std::os::raw::c_int,
8469    >,
8470    pub stream_metadata: ::std::option::Option<
8471        unsafe extern "C" fn(
8472            wrapper: *mut php_stream_wrapper,
8473            url: *const ::std::os::raw::c_char,
8474            options: ::std::os::raw::c_int,
8475            value: *mut ::std::os::raw::c_void,
8476            context: *mut php_stream_context,
8477        ) -> ::std::os::raw::c_int,
8478    >,
8479}
8480#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8481const _: () = {
8482    ["Size of _php_stream_wrapper_ops"][::std::mem::size_of::<_php_stream_wrapper_ops>() - 88usize];
8483    ["Alignment of _php_stream_wrapper_ops"]
8484        [::std::mem::align_of::<_php_stream_wrapper_ops>() - 8usize];
8485    ["Offset of field: _php_stream_wrapper_ops::stream_opener"]
8486        [::std::mem::offset_of!(_php_stream_wrapper_ops, stream_opener) - 0usize];
8487    ["Offset of field: _php_stream_wrapper_ops::stream_closer"]
8488        [::std::mem::offset_of!(_php_stream_wrapper_ops, stream_closer) - 8usize];
8489    ["Offset of field: _php_stream_wrapper_ops::stream_stat"]
8490        [::std::mem::offset_of!(_php_stream_wrapper_ops, stream_stat) - 16usize];
8491    ["Offset of field: _php_stream_wrapper_ops::url_stat"]
8492        [::std::mem::offset_of!(_php_stream_wrapper_ops, url_stat) - 24usize];
8493    ["Offset of field: _php_stream_wrapper_ops::dir_opener"]
8494        [::std::mem::offset_of!(_php_stream_wrapper_ops, dir_opener) - 32usize];
8495    ["Offset of field: _php_stream_wrapper_ops::label"]
8496        [::std::mem::offset_of!(_php_stream_wrapper_ops, label) - 40usize];
8497    ["Offset of field: _php_stream_wrapper_ops::unlink"]
8498        [::std::mem::offset_of!(_php_stream_wrapper_ops, unlink) - 48usize];
8499    ["Offset of field: _php_stream_wrapper_ops::rename"]
8500        [::std::mem::offset_of!(_php_stream_wrapper_ops, rename) - 56usize];
8501    ["Offset of field: _php_stream_wrapper_ops::stream_mkdir"]
8502        [::std::mem::offset_of!(_php_stream_wrapper_ops, stream_mkdir) - 64usize];
8503    ["Offset of field: _php_stream_wrapper_ops::stream_rmdir"]
8504        [::std::mem::offset_of!(_php_stream_wrapper_ops, stream_rmdir) - 72usize];
8505    ["Offset of field: _php_stream_wrapper_ops::stream_metadata"]
8506        [::std::mem::offset_of!(_php_stream_wrapper_ops, stream_metadata) - 80usize];
8507};
8508pub type php_stream_wrapper_ops = _php_stream_wrapper_ops;
8509#[repr(C)]
8510#[derive(Debug, Copy, Clone)]
8511pub struct _php_stream_wrapper {
8512    pub wops: *const php_stream_wrapper_ops,
8513    pub abstract_: *mut ::std::os::raw::c_void,
8514    pub is_url: ::std::os::raw::c_int,
8515}
8516#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8517const _: () = {
8518    ["Size of _php_stream_wrapper"][::std::mem::size_of::<_php_stream_wrapper>() - 24usize];
8519    ["Alignment of _php_stream_wrapper"][::std::mem::align_of::<_php_stream_wrapper>() - 8usize];
8520    ["Offset of field: _php_stream_wrapper::wops"]
8521        [::std::mem::offset_of!(_php_stream_wrapper, wops) - 0usize];
8522    ["Offset of field: _php_stream_wrapper::abstract_"]
8523        [::std::mem::offset_of!(_php_stream_wrapper, abstract_) - 8usize];
8524    ["Offset of field: _php_stream_wrapper::is_url"]
8525        [::std::mem::offset_of!(_php_stream_wrapper, is_url) - 16usize];
8526};
8527#[repr(C)]
8528#[derive(Copy, Clone)]
8529pub struct _php_stream {
8530    pub ops: *const php_stream_ops,
8531    pub abstract_: *mut ::std::os::raw::c_void,
8532    pub readfilters: php_stream_filter_chain,
8533    pub writefilters: php_stream_filter_chain,
8534    pub wrapper: *mut php_stream_wrapper,
8535    pub wrapperthis: *mut ::std::os::raw::c_void,
8536    pub wrapperdata: zval,
8537    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
8538    pub mode: [::std::os::raw::c_char; 16usize],
8539    pub flags: u32,
8540    pub res: *mut zend_resource,
8541    pub stdiocast: *mut FILE,
8542    pub orig_path: *mut ::std::os::raw::c_char,
8543    pub ctx: *mut zend_resource,
8544    pub position: zend_off_t,
8545    pub readbuf: *mut ::std::os::raw::c_uchar,
8546    pub readbuflen: usize,
8547    pub readpos: zend_off_t,
8548    pub writepos: zend_off_t,
8549    pub chunk_size: usize,
8550    pub open_filename: *const ::std::os::raw::c_char,
8551    pub open_lineno: u32,
8552    pub enclosing_stream: *mut _php_stream,
8553}
8554#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8555const _: () = {
8556    ["Size of _php_stream"][::std::mem::size_of::<_php_stream>() - 224usize];
8557    ["Alignment of _php_stream"][::std::mem::align_of::<_php_stream>() - 8usize];
8558    ["Offset of field: _php_stream::ops"][::std::mem::offset_of!(_php_stream, ops) - 0usize];
8559    ["Offset of field: _php_stream::abstract_"]
8560        [::std::mem::offset_of!(_php_stream, abstract_) - 8usize];
8561    ["Offset of field: _php_stream::readfilters"]
8562        [::std::mem::offset_of!(_php_stream, readfilters) - 16usize];
8563    ["Offset of field: _php_stream::writefilters"]
8564        [::std::mem::offset_of!(_php_stream, writefilters) - 40usize];
8565    ["Offset of field: _php_stream::wrapper"]
8566        [::std::mem::offset_of!(_php_stream, wrapper) - 64usize];
8567    ["Offset of field: _php_stream::wrapperthis"]
8568        [::std::mem::offset_of!(_php_stream, wrapperthis) - 72usize];
8569    ["Offset of field: _php_stream::wrapperdata"]
8570        [::std::mem::offset_of!(_php_stream, wrapperdata) - 80usize];
8571    ["Offset of field: _php_stream::mode"][::std::mem::offset_of!(_php_stream, mode) - 98usize];
8572    ["Offset of field: _php_stream::flags"][::std::mem::offset_of!(_php_stream, flags) - 116usize];
8573    ["Offset of field: _php_stream::res"][::std::mem::offset_of!(_php_stream, res) - 120usize];
8574    ["Offset of field: _php_stream::stdiocast"]
8575        [::std::mem::offset_of!(_php_stream, stdiocast) - 128usize];
8576    ["Offset of field: _php_stream::orig_path"]
8577        [::std::mem::offset_of!(_php_stream, orig_path) - 136usize];
8578    ["Offset of field: _php_stream::ctx"][::std::mem::offset_of!(_php_stream, ctx) - 144usize];
8579    ["Offset of field: _php_stream::position"]
8580        [::std::mem::offset_of!(_php_stream, position) - 152usize];
8581    ["Offset of field: _php_stream::readbuf"]
8582        [::std::mem::offset_of!(_php_stream, readbuf) - 160usize];
8583    ["Offset of field: _php_stream::readbuflen"]
8584        [::std::mem::offset_of!(_php_stream, readbuflen) - 168usize];
8585    ["Offset of field: _php_stream::readpos"]
8586        [::std::mem::offset_of!(_php_stream, readpos) - 176usize];
8587    ["Offset of field: _php_stream::writepos"]
8588        [::std::mem::offset_of!(_php_stream, writepos) - 184usize];
8589    ["Offset of field: _php_stream::chunk_size"]
8590        [::std::mem::offset_of!(_php_stream, chunk_size) - 192usize];
8591    ["Offset of field: _php_stream::open_filename"]
8592        [::std::mem::offset_of!(_php_stream, open_filename) - 200usize];
8593    ["Offset of field: _php_stream::open_lineno"]
8594        [::std::mem::offset_of!(_php_stream, open_lineno) - 208usize];
8595    ["Offset of field: _php_stream::enclosing_stream"]
8596        [::std::mem::offset_of!(_php_stream, enclosing_stream) - 216usize];
8597};
8598impl _php_stream {
8599    #[inline]
8600    #[allow(unnecessary_transmutes)]
8601    pub fn is_persistent(&self) -> u16 {
8602        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u16) }
8603    }
8604    #[inline]
8605    #[allow(unnecessary_transmutes)]
8606    pub fn set_is_persistent(&mut self, val: u16) {
8607        unsafe {
8608            let val: u16 = ::std::mem::transmute(val);
8609            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
8610        }
8611    }
8612    #[inline]
8613    #[allow(unnecessary_transmutes)]
8614    pub unsafe fn is_persistent_raw(this: *const Self) -> u16 {
8615        unsafe {
8616            ::std::mem::transmute(
8617                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<0usize, 1u8>(
8618                    ::std::ptr::addr_of!((*this)._bitfield_1),
8619                ) as u16,
8620            )
8621        }
8622    }
8623    #[inline]
8624    #[allow(unnecessary_transmutes)]
8625    pub unsafe fn set_is_persistent_raw(this: *mut Self, val: u16) {
8626        unsafe {
8627            let val: u16 = ::std::mem::transmute(val);
8628            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<0usize, 1u8>(
8629                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
8630                val as u64,
8631            )
8632        }
8633    }
8634    #[inline]
8635    #[allow(unnecessary_transmutes)]
8636    pub fn in_free(&self) -> u16 {
8637        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<1usize, 2u8>() as u16) }
8638    }
8639    #[inline]
8640    #[allow(unnecessary_transmutes)]
8641    pub fn set_in_free(&mut self, val: u16) {
8642        unsafe {
8643            let val: u16 = ::std::mem::transmute(val);
8644            self._bitfield_1.set_const::<1usize, 2u8>(val as u64)
8645        }
8646    }
8647    #[inline]
8648    #[allow(unnecessary_transmutes)]
8649    pub unsafe fn in_free_raw(this: *const Self) -> u16 {
8650        unsafe {
8651            ::std::mem::transmute(
8652                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<1usize, 2u8>(
8653                    ::std::ptr::addr_of!((*this)._bitfield_1),
8654                ) as u16,
8655            )
8656        }
8657    }
8658    #[inline]
8659    #[allow(unnecessary_transmutes)]
8660    pub unsafe fn set_in_free_raw(this: *mut Self, val: u16) {
8661        unsafe {
8662            let val: u16 = ::std::mem::transmute(val);
8663            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<1usize, 2u8>(
8664                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
8665                val as u64,
8666            )
8667        }
8668    }
8669    #[inline]
8670    #[allow(unnecessary_transmutes)]
8671    pub fn eof(&self) -> u16 {
8672        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<3usize, 1u8>() as u16) }
8673    }
8674    #[inline]
8675    #[allow(unnecessary_transmutes)]
8676    pub fn set_eof(&mut self, val: u16) {
8677        unsafe {
8678            let val: u16 = ::std::mem::transmute(val);
8679            self._bitfield_1.set_const::<3usize, 1u8>(val as u64)
8680        }
8681    }
8682    #[inline]
8683    #[allow(unnecessary_transmutes)]
8684    pub unsafe fn eof_raw(this: *const Self) -> u16 {
8685        unsafe {
8686            ::std::mem::transmute(
8687                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<3usize, 1u8>(
8688                    ::std::ptr::addr_of!((*this)._bitfield_1),
8689                ) as u16,
8690            )
8691        }
8692    }
8693    #[inline]
8694    #[allow(unnecessary_transmutes)]
8695    pub unsafe fn set_eof_raw(this: *mut Self, val: u16) {
8696        unsafe {
8697            let val: u16 = ::std::mem::transmute(val);
8698            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<3usize, 1u8>(
8699                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
8700                val as u64,
8701            )
8702        }
8703    }
8704    #[inline]
8705    #[allow(unnecessary_transmutes)]
8706    pub fn __exposed(&self) -> u16 {
8707        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 1u8>() as u16) }
8708    }
8709    #[inline]
8710    #[allow(unnecessary_transmutes)]
8711    pub fn set___exposed(&mut self, val: u16) {
8712        unsafe {
8713            let val: u16 = ::std::mem::transmute(val);
8714            self._bitfield_1.set_const::<4usize, 1u8>(val as u64)
8715        }
8716    }
8717    #[inline]
8718    #[allow(unnecessary_transmutes)]
8719    pub unsafe fn __exposed_raw(this: *const Self) -> u16 {
8720        unsafe {
8721            ::std::mem::transmute(
8722                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<4usize, 1u8>(
8723                    ::std::ptr::addr_of!((*this)._bitfield_1),
8724                ) as u16,
8725            )
8726        }
8727    }
8728    #[inline]
8729    #[allow(unnecessary_transmutes)]
8730    pub unsafe fn set___exposed_raw(this: *mut Self, val: u16) {
8731        unsafe {
8732            let val: u16 = ::std::mem::transmute(val);
8733            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<4usize, 1u8>(
8734                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
8735                val as u64,
8736            )
8737        }
8738    }
8739    #[inline]
8740    #[allow(unnecessary_transmutes)]
8741    pub fn fclose_stdiocast(&self) -> u16 {
8742        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<5usize, 2u8>() as u16) }
8743    }
8744    #[inline]
8745    #[allow(unnecessary_transmutes)]
8746    pub fn set_fclose_stdiocast(&mut self, val: u16) {
8747        unsafe {
8748            let val: u16 = ::std::mem::transmute(val);
8749            self._bitfield_1.set_const::<5usize, 2u8>(val as u64)
8750        }
8751    }
8752    #[inline]
8753    #[allow(unnecessary_transmutes)]
8754    pub unsafe fn fclose_stdiocast_raw(this: *const Self) -> u16 {
8755        unsafe {
8756            ::std::mem::transmute(
8757                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<5usize, 2u8>(
8758                    ::std::ptr::addr_of!((*this)._bitfield_1),
8759                ) as u16,
8760            )
8761        }
8762    }
8763    #[inline]
8764    #[allow(unnecessary_transmutes)]
8765    pub unsafe fn set_fclose_stdiocast_raw(this: *mut Self, val: u16) {
8766        unsafe {
8767            let val: u16 = ::std::mem::transmute(val);
8768            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<5usize, 2u8>(
8769                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
8770                val as u64,
8771            )
8772        }
8773    }
8774    #[inline]
8775    #[allow(unnecessary_transmutes)]
8776    pub fn has_buffered_data(&self) -> u16 {
8777        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<7usize, 1u8>() as u16) }
8778    }
8779    #[inline]
8780    #[allow(unnecessary_transmutes)]
8781    pub fn set_has_buffered_data(&mut self, val: u16) {
8782        unsafe {
8783            let val: u16 = ::std::mem::transmute(val);
8784            self._bitfield_1.set_const::<7usize, 1u8>(val as u64)
8785        }
8786    }
8787    #[inline]
8788    #[allow(unnecessary_transmutes)]
8789    pub unsafe fn has_buffered_data_raw(this: *const Self) -> u16 {
8790        unsafe {
8791            ::std::mem::transmute(
8792                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<7usize, 1u8>(
8793                    ::std::ptr::addr_of!((*this)._bitfield_1),
8794                ) as u16,
8795            )
8796        }
8797    }
8798    #[inline]
8799    #[allow(unnecessary_transmutes)]
8800    pub unsafe fn set_has_buffered_data_raw(this: *mut Self, val: u16) {
8801        unsafe {
8802            let val: u16 = ::std::mem::transmute(val);
8803            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<7usize, 1u8>(
8804                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
8805                val as u64,
8806            )
8807        }
8808    }
8809    #[inline]
8810    #[allow(unnecessary_transmutes)]
8811    pub fn fclose_stdiocast_flush_in_progress(&self) -> u16 {
8812        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<8usize, 1u8>() as u16) }
8813    }
8814    #[inline]
8815    #[allow(unnecessary_transmutes)]
8816    pub fn set_fclose_stdiocast_flush_in_progress(&mut self, val: u16) {
8817        unsafe {
8818            let val: u16 = ::std::mem::transmute(val);
8819            self._bitfield_1.set_const::<8usize, 1u8>(val as u64)
8820        }
8821    }
8822    #[inline]
8823    #[allow(unnecessary_transmutes)]
8824    pub unsafe fn fclose_stdiocast_flush_in_progress_raw(this: *const Self) -> u16 {
8825        unsafe {
8826            ::std::mem::transmute(
8827                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<8usize, 1u8>(
8828                    ::std::ptr::addr_of!((*this)._bitfield_1),
8829                ) as u16,
8830            )
8831        }
8832    }
8833    #[inline]
8834    #[allow(unnecessary_transmutes)]
8835    pub unsafe fn set_fclose_stdiocast_flush_in_progress_raw(this: *mut Self, val: u16) {
8836        unsafe {
8837            let val: u16 = ::std::mem::transmute(val);
8838            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<8usize, 1u8>(
8839                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
8840                val as u64,
8841            )
8842        }
8843    }
8844    #[inline]
8845    #[allow(unnecessary_transmutes)]
8846    pub fn fatal_error(&self) -> u16 {
8847        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<9usize, 1u8>() as u16) }
8848    }
8849    #[inline]
8850    #[allow(unnecessary_transmutes)]
8851    pub fn set_fatal_error(&mut self, val: u16) {
8852        unsafe {
8853            let val: u16 = ::std::mem::transmute(val);
8854            self._bitfield_1.set_const::<9usize, 1u8>(val as u64)
8855        }
8856    }
8857    #[inline]
8858    #[allow(unnecessary_transmutes)]
8859    pub unsafe fn fatal_error_raw(this: *const Self) -> u16 {
8860        unsafe {
8861            ::std::mem::transmute(
8862                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<9usize, 1u8>(
8863                    ::std::ptr::addr_of!((*this)._bitfield_1),
8864                ) as u16,
8865            )
8866        }
8867    }
8868    #[inline]
8869    #[allow(unnecessary_transmutes)]
8870    pub unsafe fn set_fatal_error_raw(this: *mut Self, val: u16) {
8871        unsafe {
8872            let val: u16 = ::std::mem::transmute(val);
8873            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<9usize, 1u8>(
8874                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
8875                val as u64,
8876            )
8877        }
8878    }
8879    #[inline]
8880    #[allow(unnecessary_transmutes)]
8881    pub fn new_bitfield_1(
8882        is_persistent: u16,
8883        in_free: u16,
8884        eof: u16,
8885        __exposed: u16,
8886        fclose_stdiocast: u16,
8887        has_buffered_data: u16,
8888        fclose_stdiocast_flush_in_progress: u16,
8889        fatal_error: u16,
8890    ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
8891        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
8892        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
8893            let is_persistent: u16 = unsafe { ::std::mem::transmute(is_persistent) };
8894            is_persistent as u64
8895        });
8896        __bindgen_bitfield_unit.set_const::<1usize, 2u8>({
8897            let in_free: u16 = unsafe { ::std::mem::transmute(in_free) };
8898            in_free as u64
8899        });
8900        __bindgen_bitfield_unit.set_const::<3usize, 1u8>({
8901            let eof: u16 = unsafe { ::std::mem::transmute(eof) };
8902            eof as u64
8903        });
8904        __bindgen_bitfield_unit.set_const::<4usize, 1u8>({
8905            let __exposed: u16 = unsafe { ::std::mem::transmute(__exposed) };
8906            __exposed as u64
8907        });
8908        __bindgen_bitfield_unit.set_const::<5usize, 2u8>({
8909            let fclose_stdiocast: u16 = unsafe { ::std::mem::transmute(fclose_stdiocast) };
8910            fclose_stdiocast as u64
8911        });
8912        __bindgen_bitfield_unit.set_const::<7usize, 1u8>({
8913            let has_buffered_data: u16 = unsafe { ::std::mem::transmute(has_buffered_data) };
8914            has_buffered_data as u64
8915        });
8916        __bindgen_bitfield_unit.set_const::<8usize, 1u8>({
8917            let fclose_stdiocast_flush_in_progress: u16 =
8918                unsafe { ::std::mem::transmute(fclose_stdiocast_flush_in_progress) };
8919            fclose_stdiocast_flush_in_progress as u64
8920        });
8921        __bindgen_bitfield_unit.set_const::<9usize, 1u8>({
8922            let fatal_error: u16 = unsafe { ::std::mem::transmute(fatal_error) };
8923            fatal_error as u64
8924        });
8925        __bindgen_bitfield_unit
8926    }
8927}
8928pub type sa_family_t = ::std::os::raw::c_ushort;
8929#[repr(C)]
8930#[derive(Debug, Copy, Clone)]
8931pub struct sockaddr {
8932    pub sa_family: sa_family_t,
8933    pub sa_data: [::std::os::raw::c_char; 14usize],
8934}
8935#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8936const _: () = {
8937    ["Size of sockaddr"][::std::mem::size_of::<sockaddr>() - 16usize];
8938    ["Alignment of sockaddr"][::std::mem::align_of::<sockaddr>() - 2usize];
8939    ["Offset of field: sockaddr::sa_family"][::std::mem::offset_of!(sockaddr, sa_family) - 0usize];
8940    ["Offset of field: sockaddr::sa_data"][::std::mem::offset_of!(sockaddr, sa_data) - 2usize];
8941};
8942pub type php_stream_transport_factory_func = ::std::option::Option<
8943    unsafe extern "C" fn(
8944        proto: *const ::std::os::raw::c_char,
8945        protolen: usize,
8946        resourcename: *const ::std::os::raw::c_char,
8947        resourcenamelen: usize,
8948        persistent_id: *const ::std::os::raw::c_char,
8949        options: ::std::os::raw::c_int,
8950        flags: ::std::os::raw::c_int,
8951        timeout: *mut timeval,
8952        context: *mut php_stream_context,
8953        __php_stream_call_depth: ::std::os::raw::c_int,
8954        __zend_filename: *const ::std::os::raw::c_char,
8955        __zend_lineno: u32,
8956        __zend_orig_filename: *const ::std::os::raw::c_char,
8957        __zend_orig_lineno: u32,
8958    ) -> *mut php_stream,
8959>;
8960pub type php_stream_transport_factory = php_stream_transport_factory_func;
8961pub mod php_stream_xport_send_recv_flags {
8962    #[allow(unused_imports)]
8963    use super::*;
8964    pub type Type = ::std::os::raw::c_uint;
8965    pub const STREAM_OOB: Type = 1;
8966    pub const STREAM_PEEK: Type = 2;
8967}
8968pub mod stream_shutdown_t {
8969    #[allow(unused_imports)]
8970    use super::*;
8971    pub type Type = ::std::os::raw::c_uint;
8972    pub const STREAM_SHUT_RD: Type = 0;
8973    pub const STREAM_SHUT_WR: Type = 1;
8974    pub const STREAM_SHUT_RDWR: Type = 2;
8975}
8976#[repr(C)]
8977#[derive(Debug, Copy, Clone)]
8978pub struct _php_stream_xport_param {
8979    pub op: _php_stream_xport_param__bindgen_ty_3::Type,
8980    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
8981    pub inputs: _php_stream_xport_param__bindgen_ty_1,
8982    pub outputs: _php_stream_xport_param__bindgen_ty_2,
8983}
8984pub mod _php_stream_xport_param__bindgen_ty_3 {
8985    #[allow(unused_imports)]
8986    use super::*;
8987    pub type Type = ::std::os::raw::c_uint;
8988    pub const STREAM_XPORT_OP_BIND: Type = 0;
8989    pub const STREAM_XPORT_OP_CONNECT: Type = 1;
8990    pub const STREAM_XPORT_OP_LISTEN: Type = 2;
8991    pub const STREAM_XPORT_OP_ACCEPT: Type = 3;
8992    pub const STREAM_XPORT_OP_CONNECT_ASYNC: Type = 4;
8993    pub const STREAM_XPORT_OP_GET_NAME: Type = 5;
8994    pub const STREAM_XPORT_OP_GET_PEER_NAME: Type = 6;
8995    pub const STREAM_XPORT_OP_RECV: Type = 7;
8996    pub const STREAM_XPORT_OP_SEND: Type = 8;
8997    pub const STREAM_XPORT_OP_SHUTDOWN: Type = 9;
8998}
8999#[repr(C)]
9000#[derive(Debug, Copy, Clone)]
9001pub struct _php_stream_xport_param__bindgen_ty_1 {
9002    pub name: *mut ::std::os::raw::c_char,
9003    pub namelen: usize,
9004    pub timeout: *mut timeval,
9005    pub addr: *mut sockaddr,
9006    pub buf: *mut ::std::os::raw::c_char,
9007    pub buflen: usize,
9008    pub addrlen: socklen_t,
9009    pub backlog: ::std::os::raw::c_int,
9010    pub flags: ::std::os::raw::c_int,
9011}
9012#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9013const _: () = {
9014    ["Size of _php_stream_xport_param__bindgen_ty_1"]
9015        [::std::mem::size_of::<_php_stream_xport_param__bindgen_ty_1>() - 64usize];
9016    ["Alignment of _php_stream_xport_param__bindgen_ty_1"]
9017        [::std::mem::align_of::<_php_stream_xport_param__bindgen_ty_1>() - 8usize];
9018    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::name"]
9019        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, name) - 0usize];
9020    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::namelen"]
9021        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, namelen) - 8usize];
9022    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::timeout"]
9023        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, timeout) - 16usize];
9024    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::addr"]
9025        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, addr) - 24usize];
9026    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::buf"]
9027        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, buf) - 32usize];
9028    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::buflen"]
9029        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, buflen) - 40usize];
9030    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::addrlen"]
9031        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, addrlen) - 48usize];
9032    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::backlog"]
9033        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, backlog) - 52usize];
9034    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::flags"]
9035        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, flags) - 56usize];
9036};
9037#[repr(C)]
9038#[derive(Debug, Copy, Clone)]
9039pub struct _php_stream_xport_param__bindgen_ty_2 {
9040    pub client: *mut php_stream,
9041    pub addr: *mut sockaddr,
9042    pub addrlen: socklen_t,
9043    pub textaddr: *mut zend_string,
9044    pub error_text: *mut zend_string,
9045    pub returncode: ::std::os::raw::c_int,
9046    pub error_code: ::std::os::raw::c_int,
9047}
9048#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9049const _: () = {
9050    ["Size of _php_stream_xport_param__bindgen_ty_2"]
9051        [::std::mem::size_of::<_php_stream_xport_param__bindgen_ty_2>() - 48usize];
9052    ["Alignment of _php_stream_xport_param__bindgen_ty_2"]
9053        [::std::mem::align_of::<_php_stream_xport_param__bindgen_ty_2>() - 8usize];
9054    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::client"]
9055        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, client) - 0usize];
9056    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::addr"]
9057        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, addr) - 8usize];
9058    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::addrlen"]
9059        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, addrlen) - 16usize];
9060    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::textaddr"]
9061        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, textaddr) - 24usize];
9062    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::error_text"]
9063        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, error_text) - 32usize];
9064    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::returncode"]
9065        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, returncode) - 40usize];
9066    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::error_code"]
9067        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, error_code) - 44usize];
9068};
9069#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9070const _: () = {
9071    ["Size of _php_stream_xport_param"]
9072        [::std::mem::size_of::<_php_stream_xport_param>() - 120usize];
9073    ["Alignment of _php_stream_xport_param"]
9074        [::std::mem::align_of::<_php_stream_xport_param>() - 8usize];
9075    ["Offset of field: _php_stream_xport_param::op"]
9076        [::std::mem::offset_of!(_php_stream_xport_param, op) - 0usize];
9077    ["Offset of field: _php_stream_xport_param::inputs"]
9078        [::std::mem::offset_of!(_php_stream_xport_param, inputs) - 8usize];
9079    ["Offset of field: _php_stream_xport_param::outputs"]
9080        [::std::mem::offset_of!(_php_stream_xport_param, outputs) - 72usize];
9081};
9082impl _php_stream_xport_param {
9083    #[inline]
9084    #[allow(unnecessary_transmutes)]
9085    pub fn want_addr(&self) -> ::std::os::raw::c_uint {
9086        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u32) }
9087    }
9088    #[inline]
9089    #[allow(unnecessary_transmutes)]
9090    pub fn set_want_addr(&mut self, val: ::std::os::raw::c_uint) {
9091        unsafe {
9092            let val: u32 = ::std::mem::transmute(val);
9093            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
9094        }
9095    }
9096    #[inline]
9097    #[allow(unnecessary_transmutes)]
9098    pub unsafe fn want_addr_raw(this: *const Self) -> ::std::os::raw::c_uint {
9099        unsafe {
9100            ::std::mem::transmute(
9101                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 1u8>(
9102                    ::std::ptr::addr_of!((*this)._bitfield_1),
9103                ) as u32,
9104            )
9105        }
9106    }
9107    #[inline]
9108    #[allow(unnecessary_transmutes)]
9109    pub unsafe fn set_want_addr_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
9110        unsafe {
9111            let val: u32 = ::std::mem::transmute(val);
9112            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<0usize, 1u8>(
9113                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
9114                val as u64,
9115            )
9116        }
9117    }
9118    #[inline]
9119    #[allow(unnecessary_transmutes)]
9120    pub fn want_textaddr(&self) -> ::std::os::raw::c_uint {
9121        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<1usize, 1u8>() as u32) }
9122    }
9123    #[inline]
9124    #[allow(unnecessary_transmutes)]
9125    pub fn set_want_textaddr(&mut self, val: ::std::os::raw::c_uint) {
9126        unsafe {
9127            let val: u32 = ::std::mem::transmute(val);
9128            self._bitfield_1.set_const::<1usize, 1u8>(val as u64)
9129        }
9130    }
9131    #[inline]
9132    #[allow(unnecessary_transmutes)]
9133    pub unsafe fn want_textaddr_raw(this: *const Self) -> ::std::os::raw::c_uint {
9134        unsafe {
9135            ::std::mem::transmute(
9136                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<1usize, 1u8>(
9137                    ::std::ptr::addr_of!((*this)._bitfield_1),
9138                ) as u32,
9139            )
9140        }
9141    }
9142    #[inline]
9143    #[allow(unnecessary_transmutes)]
9144    pub unsafe fn set_want_textaddr_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
9145        unsafe {
9146            let val: u32 = ::std::mem::transmute(val);
9147            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<1usize, 1u8>(
9148                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
9149                val as u64,
9150            )
9151        }
9152    }
9153    #[inline]
9154    #[allow(unnecessary_transmutes)]
9155    pub fn want_errortext(&self) -> ::std::os::raw::c_uint {
9156        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<2usize, 1u8>() as u32) }
9157    }
9158    #[inline]
9159    #[allow(unnecessary_transmutes)]
9160    pub fn set_want_errortext(&mut self, val: ::std::os::raw::c_uint) {
9161        unsafe {
9162            let val: u32 = ::std::mem::transmute(val);
9163            self._bitfield_1.set_const::<2usize, 1u8>(val as u64)
9164        }
9165    }
9166    #[inline]
9167    #[allow(unnecessary_transmutes)]
9168    pub unsafe fn want_errortext_raw(this: *const Self) -> ::std::os::raw::c_uint {
9169        unsafe {
9170            ::std::mem::transmute(
9171                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<2usize, 1u8>(
9172                    ::std::ptr::addr_of!((*this)._bitfield_1),
9173                ) as u32,
9174            )
9175        }
9176    }
9177    #[inline]
9178    #[allow(unnecessary_transmutes)]
9179    pub unsafe fn set_want_errortext_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
9180        unsafe {
9181            let val: u32 = ::std::mem::transmute(val);
9182            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<2usize, 1u8>(
9183                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
9184                val as u64,
9185            )
9186        }
9187    }
9188    #[inline]
9189    #[allow(unnecessary_transmutes)]
9190    pub fn how(&self) -> ::std::os::raw::c_uint {
9191        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<3usize, 2u8>() as u32) }
9192    }
9193    #[inline]
9194    #[allow(unnecessary_transmutes)]
9195    pub fn set_how(&mut self, val: ::std::os::raw::c_uint) {
9196        unsafe {
9197            let val: u32 = ::std::mem::transmute(val);
9198            self._bitfield_1.set_const::<3usize, 2u8>(val as u64)
9199        }
9200    }
9201    #[inline]
9202    #[allow(unnecessary_transmutes)]
9203    pub unsafe fn how_raw(this: *const Self) -> ::std::os::raw::c_uint {
9204        unsafe {
9205            ::std::mem::transmute(
9206                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<3usize, 2u8>(
9207                    ::std::ptr::addr_of!((*this)._bitfield_1),
9208                ) as u32,
9209            )
9210        }
9211    }
9212    #[inline]
9213    #[allow(unnecessary_transmutes)]
9214    pub unsafe fn set_how_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
9215        unsafe {
9216            let val: u32 = ::std::mem::transmute(val);
9217            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<3usize, 2u8>(
9218                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
9219                val as u64,
9220            )
9221        }
9222    }
9223    #[inline]
9224    #[allow(unnecessary_transmutes)]
9225    pub fn new_bitfield_1(
9226        want_addr: ::std::os::raw::c_uint,
9227        want_textaddr: ::std::os::raw::c_uint,
9228        want_errortext: ::std::os::raw::c_uint,
9229        how: ::std::os::raw::c_uint,
9230    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
9231        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
9232        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
9233            let want_addr: u32 = unsafe { ::std::mem::transmute(want_addr) };
9234            want_addr as u64
9235        });
9236        __bindgen_bitfield_unit.set_const::<1usize, 1u8>({
9237            let want_textaddr: u32 = unsafe { ::std::mem::transmute(want_textaddr) };
9238            want_textaddr as u64
9239        });
9240        __bindgen_bitfield_unit.set_const::<2usize, 1u8>({
9241            let want_errortext: u32 = unsafe { ::std::mem::transmute(want_errortext) };
9242            want_errortext as u64
9243        });
9244        __bindgen_bitfield_unit.set_const::<3usize, 2u8>({
9245            let how: u32 = unsafe { ::std::mem::transmute(how) };
9246            how as u64
9247        });
9248        __bindgen_bitfield_unit
9249    }
9250}
9251pub type php_stream_xport_param = _php_stream_xport_param;
9252pub mod php_stream_xport_crypt_method_t {
9253    #[allow(unused_imports)]
9254    use super::*;
9255    pub type Type = ::std::os::raw::c_uint;
9256    pub const STREAM_CRYPTO_METHOD_SSLv2_CLIENT: Type = 3;
9257    pub const STREAM_CRYPTO_METHOD_SSLv3_CLIENT: Type = 5;
9258    pub const STREAM_CRYPTO_METHOD_SSLv23_CLIENT: Type = 57;
9259    pub const STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT: Type = 9;
9260    pub const STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT: Type = 17;
9261    pub const STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT: Type = 33;
9262    pub const STREAM_CRYPTO_METHOD_TLSv1_3_CLIENT: Type = 65;
9263    pub const STREAM_CRYPTO_METHOD_TLS_CLIENT: Type = 121;
9264    pub const STREAM_CRYPTO_METHOD_TLS_ANY_CLIENT: Type = 121;
9265    pub const STREAM_CRYPTO_METHOD_ANY_CLIENT: Type = 127;
9266    pub const STREAM_CRYPTO_METHOD_SSLv2_SERVER: Type = 2;
9267    pub const STREAM_CRYPTO_METHOD_SSLv3_SERVER: Type = 4;
9268    pub const STREAM_CRYPTO_METHOD_SSLv23_SERVER: Type = 120;
9269    pub const STREAM_CRYPTO_METHOD_TLSv1_0_SERVER: Type = 8;
9270    pub const STREAM_CRYPTO_METHOD_TLSv1_1_SERVER: Type = 16;
9271    pub const STREAM_CRYPTO_METHOD_TLSv1_2_SERVER: Type = 32;
9272    pub const STREAM_CRYPTO_METHOD_TLSv1_3_SERVER: Type = 64;
9273    pub const STREAM_CRYPTO_METHOD_TLS_SERVER: Type = 120;
9274    pub const STREAM_CRYPTO_METHOD_TLS_ANY_SERVER: Type = 120;
9275    pub const STREAM_CRYPTO_METHOD_ANY_SERVER: Type = 126;
9276}
9277#[repr(C)]
9278#[derive(Debug, Copy, Clone)]
9279pub struct _php_stream_xport_crypto_param {
9280    pub inputs: _php_stream_xport_crypto_param__bindgen_ty_1,
9281    pub outputs: _php_stream_xport_crypto_param__bindgen_ty_2,
9282    pub op: _php_stream_xport_crypto_param__bindgen_ty_3::Type,
9283}
9284#[repr(C)]
9285#[derive(Debug, Copy, Clone)]
9286pub struct _php_stream_xport_crypto_param__bindgen_ty_1 {
9287    pub session: *mut php_stream,
9288    pub activate: ::std::os::raw::c_int,
9289    pub method: php_stream_xport_crypt_method_t::Type,
9290}
9291#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9292const _: () = {
9293    ["Size of _php_stream_xport_crypto_param__bindgen_ty_1"]
9294        [::std::mem::size_of::<_php_stream_xport_crypto_param__bindgen_ty_1>() - 16usize];
9295    ["Alignment of _php_stream_xport_crypto_param__bindgen_ty_1"]
9296        [::std::mem::align_of::<_php_stream_xport_crypto_param__bindgen_ty_1>() - 8usize];
9297    ["Offset of field: _php_stream_xport_crypto_param__bindgen_ty_1::session"]
9298        [::std::mem::offset_of!(_php_stream_xport_crypto_param__bindgen_ty_1, session) - 0usize];
9299    ["Offset of field: _php_stream_xport_crypto_param__bindgen_ty_1::activate"]
9300        [::std::mem::offset_of!(_php_stream_xport_crypto_param__bindgen_ty_1, activate) - 8usize];
9301    ["Offset of field: _php_stream_xport_crypto_param__bindgen_ty_1::method"]
9302        [::std::mem::offset_of!(_php_stream_xport_crypto_param__bindgen_ty_1, method) - 12usize];
9303};
9304#[repr(C)]
9305#[derive(Debug, Copy, Clone)]
9306pub struct _php_stream_xport_crypto_param__bindgen_ty_2 {
9307    pub returncode: ::std::os::raw::c_int,
9308}
9309#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9310const _: () = {
9311    ["Size of _php_stream_xport_crypto_param__bindgen_ty_2"]
9312        [::std::mem::size_of::<_php_stream_xport_crypto_param__bindgen_ty_2>() - 4usize];
9313    ["Alignment of _php_stream_xport_crypto_param__bindgen_ty_2"]
9314        [::std::mem::align_of::<_php_stream_xport_crypto_param__bindgen_ty_2>() - 4usize];
9315    ["Offset of field: _php_stream_xport_crypto_param__bindgen_ty_2::returncode"]
9316        [::std::mem::offset_of!(_php_stream_xport_crypto_param__bindgen_ty_2, returncode) - 0usize];
9317};
9318pub mod _php_stream_xport_crypto_param__bindgen_ty_3 {
9319    #[allow(unused_imports)]
9320    use super::*;
9321    pub type Type = ::std::os::raw::c_uint;
9322    pub const STREAM_XPORT_CRYPTO_OP_SETUP: Type = 0;
9323    pub const STREAM_XPORT_CRYPTO_OP_ENABLE: Type = 1;
9324}
9325#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9326const _: () = {
9327    ["Size of _php_stream_xport_crypto_param"]
9328        [::std::mem::size_of::<_php_stream_xport_crypto_param>() - 24usize];
9329    ["Alignment of _php_stream_xport_crypto_param"]
9330        [::std::mem::align_of::<_php_stream_xport_crypto_param>() - 8usize];
9331    ["Offset of field: _php_stream_xport_crypto_param::inputs"]
9332        [::std::mem::offset_of!(_php_stream_xport_crypto_param, inputs) - 0usize];
9333    ["Offset of field: _php_stream_xport_crypto_param::outputs"]
9334        [::std::mem::offset_of!(_php_stream_xport_crypto_param, outputs) - 16usize];
9335    ["Offset of field: _php_stream_xport_crypto_param::op"]
9336        [::std::mem::offset_of!(_php_stream_xport_crypto_param, op) - 20usize];
9337};
9338pub type php_stream_xport_crypto_param = _php_stream_xport_crypto_param;
9339pub mod php_stream_mmap_operation_t {
9340    #[allow(unused_imports)]
9341    use super::*;
9342    pub type Type = ::std::os::raw::c_uint;
9343    pub const PHP_STREAM_MMAP_SUPPORTED: Type = 0;
9344    pub const PHP_STREAM_MMAP_MAP_RANGE: Type = 1;
9345    pub const PHP_STREAM_MMAP_UNMAP: Type = 2;
9346}
9347pub mod php_stream_mmap_access_t {
9348    #[allow(unused_imports)]
9349    use super::*;
9350    pub type Type = ::std::os::raw::c_uint;
9351    pub const PHP_STREAM_MAP_MODE_READONLY: Type = 0;
9352    pub const PHP_STREAM_MAP_MODE_READWRITE: Type = 1;
9353    pub const PHP_STREAM_MAP_MODE_SHARED_READONLY: Type = 2;
9354    pub const PHP_STREAM_MAP_MODE_SHARED_READWRITE: Type = 3;
9355}
9356#[repr(C)]
9357#[derive(Debug, Copy, Clone)]
9358pub struct php_stream_mmap_range {
9359    pub offset: usize,
9360    pub length: usize,
9361    pub mode: php_stream_mmap_access_t::Type,
9362    pub mapped: *mut ::std::os::raw::c_char,
9363}
9364#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9365const _: () = {
9366    ["Size of php_stream_mmap_range"][::std::mem::size_of::<php_stream_mmap_range>() - 32usize];
9367    ["Alignment of php_stream_mmap_range"]
9368        [::std::mem::align_of::<php_stream_mmap_range>() - 8usize];
9369    ["Offset of field: php_stream_mmap_range::offset"]
9370        [::std::mem::offset_of!(php_stream_mmap_range, offset) - 0usize];
9371    ["Offset of field: php_stream_mmap_range::length"]
9372        [::std::mem::offset_of!(php_stream_mmap_range, length) - 8usize];
9373    ["Offset of field: php_stream_mmap_range::mode"]
9374        [::std::mem::offset_of!(php_stream_mmap_range, mode) - 16usize];
9375    ["Offset of field: php_stream_mmap_range::mapped"]
9376        [::std::mem::offset_of!(php_stream_mmap_range, mapped) - 24usize];
9377};
9378pub mod php_stream_make_seekable_status {
9379    #[allow(unused_imports)]
9380    use super::*;
9381    pub type Type = ::std::os::raw::c_uint;
9382    pub const PHP_STREAM_UNCHANGED: Type = 0;
9383    pub const PHP_STREAM_RELEASED: Type = 1;
9384    pub const PHP_STREAM_FAILED: Type = 2;
9385    pub const PHP_STREAM_CRITICAL: Type = 3;
9386}
9387pub type php_core_globals = _php_core_globals;
9388#[repr(C)]
9389#[derive(Copy, Clone)]
9390pub struct _php_core_globals {
9391    pub output_buffering: zend_long,
9392    pub implicit_flush: bool,
9393    pub enable_dl: bool,
9394    pub display_errors: u8,
9395    pub display_startup_errors: bool,
9396    pub log_errors: bool,
9397    pub ignore_repeated_errors: bool,
9398    pub ignore_repeated_source: bool,
9399    pub report_memleaks: bool,
9400    pub output_handler: *mut ::std::os::raw::c_char,
9401    pub unserialize_callback_func: *mut ::std::os::raw::c_char,
9402    pub serialize_precision: zend_long,
9403    pub memory_limit: zend_long,
9404    pub max_memory_limit: zend_long,
9405    pub max_input_time: zend_long,
9406    pub error_log: *mut ::std::os::raw::c_char,
9407    pub doc_root: *mut ::std::os::raw::c_char,
9408    pub user_dir: *mut ::std::os::raw::c_char,
9409    pub include_path: *mut ::std::os::raw::c_char,
9410    pub open_basedir: *mut ::std::os::raw::c_char,
9411    pub open_basedir_modified: bool,
9412    pub extension_dir: *mut ::std::os::raw::c_char,
9413    pub php_binary: *mut ::std::os::raw::c_char,
9414    pub sys_temp_dir: *mut ::std::os::raw::c_char,
9415    pub upload_tmp_dir: *mut ::std::os::raw::c_char,
9416    pub upload_max_filesize: zend_long,
9417    pub error_append_string: *mut ::std::os::raw::c_char,
9418    pub error_prepend_string: *mut ::std::os::raw::c_char,
9419    pub auto_prepend_file: *mut ::std::os::raw::c_char,
9420    pub auto_append_file: *mut ::std::os::raw::c_char,
9421    pub input_encoding: *mut ::std::os::raw::c_char,
9422    pub internal_encoding: *mut ::std::os::raw::c_char,
9423    pub output_encoding: *mut ::std::os::raw::c_char,
9424    pub arg_separator: arg_separators,
9425    pub variables_order: *mut ::std::os::raw::c_char,
9426    pub rfc1867_protected_variables: HashTable,
9427    pub connection_status: ::std::os::raw::c_short,
9428    pub ignore_user_abort: bool,
9429    pub header_is_being_sent: ::std::os::raw::c_uchar,
9430    pub tick_functions: zend_llist,
9431    pub http_globals: [zval; 6usize],
9432    pub expose_php: bool,
9433    pub register_argc_argv: bool,
9434    pub auto_globals_jit: bool,
9435    pub html_errors: bool,
9436    pub xmlrpc_errors: bool,
9437    pub docref_root: *mut ::std::os::raw::c_char,
9438    pub docref_ext: *mut ::std::os::raw::c_char,
9439    pub xmlrpc_error_number: zend_long,
9440    pub activated_auto_globals: [bool; 8usize],
9441    pub modules_activated: bool,
9442    pub file_uploads: bool,
9443    pub during_request_startup: bool,
9444    pub allow_url_fopen: bool,
9445    pub enable_post_data_reading: bool,
9446    pub report_zend_debug: bool,
9447    pub last_error_type: ::std::os::raw::c_int,
9448    pub last_error_lineno: ::std::os::raw::c_int,
9449    pub last_error_message: *mut zend_string,
9450    pub last_error_file: *mut zend_string,
9451    pub php_sys_temp_dir: *mut ::std::os::raw::c_char,
9452    pub max_input_nesting_level: zend_long,
9453    pub max_input_vars: zend_long,
9454    pub user_ini_filename: *mut ::std::os::raw::c_char,
9455    pub user_ini_cache_ttl: zend_long,
9456    pub request_order: *mut ::std::os::raw::c_char,
9457    pub mail_log: *mut ::std::os::raw::c_char,
9458    pub mail_cr_lf_mode: *mut zend_string,
9459    pub mail_x_header: bool,
9460    pub mail_mixed_lf_and_crlf: bool,
9461    pub in_error_log: bool,
9462    pub allow_url_include: bool,
9463    pub in_user_include: bool,
9464    pub have_called_openlog: bool,
9465    pub syslog_facility: zend_long,
9466    pub syslog_ident: *mut ::std::os::raw::c_char,
9467    pub syslog_filter: zend_long,
9468    pub error_log_mode: zend_long,
9469}
9470#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9471const _: () = {
9472    ["Size of _php_core_globals"][::std::mem::size_of::<_php_core_globals>() - 624usize];
9473    ["Alignment of _php_core_globals"][::std::mem::align_of::<_php_core_globals>() - 8usize];
9474    ["Offset of field: _php_core_globals::output_buffering"]
9475        [::std::mem::offset_of!(_php_core_globals, output_buffering) - 0usize];
9476    ["Offset of field: _php_core_globals::implicit_flush"]
9477        [::std::mem::offset_of!(_php_core_globals, implicit_flush) - 8usize];
9478    ["Offset of field: _php_core_globals::enable_dl"]
9479        [::std::mem::offset_of!(_php_core_globals, enable_dl) - 9usize];
9480    ["Offset of field: _php_core_globals::display_errors"]
9481        [::std::mem::offset_of!(_php_core_globals, display_errors) - 10usize];
9482    ["Offset of field: _php_core_globals::display_startup_errors"]
9483        [::std::mem::offset_of!(_php_core_globals, display_startup_errors) - 11usize];
9484    ["Offset of field: _php_core_globals::log_errors"]
9485        [::std::mem::offset_of!(_php_core_globals, log_errors) - 12usize];
9486    ["Offset of field: _php_core_globals::ignore_repeated_errors"]
9487        [::std::mem::offset_of!(_php_core_globals, ignore_repeated_errors) - 13usize];
9488    ["Offset of field: _php_core_globals::ignore_repeated_source"]
9489        [::std::mem::offset_of!(_php_core_globals, ignore_repeated_source) - 14usize];
9490    ["Offset of field: _php_core_globals::report_memleaks"]
9491        [::std::mem::offset_of!(_php_core_globals, report_memleaks) - 15usize];
9492    ["Offset of field: _php_core_globals::output_handler"]
9493        [::std::mem::offset_of!(_php_core_globals, output_handler) - 16usize];
9494    ["Offset of field: _php_core_globals::unserialize_callback_func"]
9495        [::std::mem::offset_of!(_php_core_globals, unserialize_callback_func) - 24usize];
9496    ["Offset of field: _php_core_globals::serialize_precision"]
9497        [::std::mem::offset_of!(_php_core_globals, serialize_precision) - 32usize];
9498    ["Offset of field: _php_core_globals::memory_limit"]
9499        [::std::mem::offset_of!(_php_core_globals, memory_limit) - 40usize];
9500    ["Offset of field: _php_core_globals::max_memory_limit"]
9501        [::std::mem::offset_of!(_php_core_globals, max_memory_limit) - 48usize];
9502    ["Offset of field: _php_core_globals::max_input_time"]
9503        [::std::mem::offset_of!(_php_core_globals, max_input_time) - 56usize];
9504    ["Offset of field: _php_core_globals::error_log"]
9505        [::std::mem::offset_of!(_php_core_globals, error_log) - 64usize];
9506    ["Offset of field: _php_core_globals::doc_root"]
9507        [::std::mem::offset_of!(_php_core_globals, doc_root) - 72usize];
9508    ["Offset of field: _php_core_globals::user_dir"]
9509        [::std::mem::offset_of!(_php_core_globals, user_dir) - 80usize];
9510    ["Offset of field: _php_core_globals::include_path"]
9511        [::std::mem::offset_of!(_php_core_globals, include_path) - 88usize];
9512    ["Offset of field: _php_core_globals::open_basedir"]
9513        [::std::mem::offset_of!(_php_core_globals, open_basedir) - 96usize];
9514    ["Offset of field: _php_core_globals::open_basedir_modified"]
9515        [::std::mem::offset_of!(_php_core_globals, open_basedir_modified) - 104usize];
9516    ["Offset of field: _php_core_globals::extension_dir"]
9517        [::std::mem::offset_of!(_php_core_globals, extension_dir) - 112usize];
9518    ["Offset of field: _php_core_globals::php_binary"]
9519        [::std::mem::offset_of!(_php_core_globals, php_binary) - 120usize];
9520    ["Offset of field: _php_core_globals::sys_temp_dir"]
9521        [::std::mem::offset_of!(_php_core_globals, sys_temp_dir) - 128usize];
9522    ["Offset of field: _php_core_globals::upload_tmp_dir"]
9523        [::std::mem::offset_of!(_php_core_globals, upload_tmp_dir) - 136usize];
9524    ["Offset of field: _php_core_globals::upload_max_filesize"]
9525        [::std::mem::offset_of!(_php_core_globals, upload_max_filesize) - 144usize];
9526    ["Offset of field: _php_core_globals::error_append_string"]
9527        [::std::mem::offset_of!(_php_core_globals, error_append_string) - 152usize];
9528    ["Offset of field: _php_core_globals::error_prepend_string"]
9529        [::std::mem::offset_of!(_php_core_globals, error_prepend_string) - 160usize];
9530    ["Offset of field: _php_core_globals::auto_prepend_file"]
9531        [::std::mem::offset_of!(_php_core_globals, auto_prepend_file) - 168usize];
9532    ["Offset of field: _php_core_globals::auto_append_file"]
9533        [::std::mem::offset_of!(_php_core_globals, auto_append_file) - 176usize];
9534    ["Offset of field: _php_core_globals::input_encoding"]
9535        [::std::mem::offset_of!(_php_core_globals, input_encoding) - 184usize];
9536    ["Offset of field: _php_core_globals::internal_encoding"]
9537        [::std::mem::offset_of!(_php_core_globals, internal_encoding) - 192usize];
9538    ["Offset of field: _php_core_globals::output_encoding"]
9539        [::std::mem::offset_of!(_php_core_globals, output_encoding) - 200usize];
9540    ["Offset of field: _php_core_globals::arg_separator"]
9541        [::std::mem::offset_of!(_php_core_globals, arg_separator) - 208usize];
9542    ["Offset of field: _php_core_globals::variables_order"]
9543        [::std::mem::offset_of!(_php_core_globals, variables_order) - 224usize];
9544    ["Offset of field: _php_core_globals::rfc1867_protected_variables"]
9545        [::std::mem::offset_of!(_php_core_globals, rfc1867_protected_variables) - 232usize];
9546    ["Offset of field: _php_core_globals::connection_status"]
9547        [::std::mem::offset_of!(_php_core_globals, connection_status) - 288usize];
9548    ["Offset of field: _php_core_globals::ignore_user_abort"]
9549        [::std::mem::offset_of!(_php_core_globals, ignore_user_abort) - 290usize];
9550    ["Offset of field: _php_core_globals::header_is_being_sent"]
9551        [::std::mem::offset_of!(_php_core_globals, header_is_being_sent) - 291usize];
9552    ["Offset of field: _php_core_globals::tick_functions"]
9553        [::std::mem::offset_of!(_php_core_globals, tick_functions) - 296usize];
9554    ["Offset of field: _php_core_globals::http_globals"]
9555        [::std::mem::offset_of!(_php_core_globals, http_globals) - 352usize];
9556    ["Offset of field: _php_core_globals::expose_php"]
9557        [::std::mem::offset_of!(_php_core_globals, expose_php) - 448usize];
9558    ["Offset of field: _php_core_globals::register_argc_argv"]
9559        [::std::mem::offset_of!(_php_core_globals, register_argc_argv) - 449usize];
9560    ["Offset of field: _php_core_globals::auto_globals_jit"]
9561        [::std::mem::offset_of!(_php_core_globals, auto_globals_jit) - 450usize];
9562    ["Offset of field: _php_core_globals::html_errors"]
9563        [::std::mem::offset_of!(_php_core_globals, html_errors) - 451usize];
9564    ["Offset of field: _php_core_globals::xmlrpc_errors"]
9565        [::std::mem::offset_of!(_php_core_globals, xmlrpc_errors) - 452usize];
9566    ["Offset of field: _php_core_globals::docref_root"]
9567        [::std::mem::offset_of!(_php_core_globals, docref_root) - 456usize];
9568    ["Offset of field: _php_core_globals::docref_ext"]
9569        [::std::mem::offset_of!(_php_core_globals, docref_ext) - 464usize];
9570    ["Offset of field: _php_core_globals::xmlrpc_error_number"]
9571        [::std::mem::offset_of!(_php_core_globals, xmlrpc_error_number) - 472usize];
9572    ["Offset of field: _php_core_globals::activated_auto_globals"]
9573        [::std::mem::offset_of!(_php_core_globals, activated_auto_globals) - 480usize];
9574    ["Offset of field: _php_core_globals::modules_activated"]
9575        [::std::mem::offset_of!(_php_core_globals, modules_activated) - 488usize];
9576    ["Offset of field: _php_core_globals::file_uploads"]
9577        [::std::mem::offset_of!(_php_core_globals, file_uploads) - 489usize];
9578    ["Offset of field: _php_core_globals::during_request_startup"]
9579        [::std::mem::offset_of!(_php_core_globals, during_request_startup) - 490usize];
9580    ["Offset of field: _php_core_globals::allow_url_fopen"]
9581        [::std::mem::offset_of!(_php_core_globals, allow_url_fopen) - 491usize];
9582    ["Offset of field: _php_core_globals::enable_post_data_reading"]
9583        [::std::mem::offset_of!(_php_core_globals, enable_post_data_reading) - 492usize];
9584    ["Offset of field: _php_core_globals::report_zend_debug"]
9585        [::std::mem::offset_of!(_php_core_globals, report_zend_debug) - 493usize];
9586    ["Offset of field: _php_core_globals::last_error_type"]
9587        [::std::mem::offset_of!(_php_core_globals, last_error_type) - 496usize];
9588    ["Offset of field: _php_core_globals::last_error_lineno"]
9589        [::std::mem::offset_of!(_php_core_globals, last_error_lineno) - 500usize];
9590    ["Offset of field: _php_core_globals::last_error_message"]
9591        [::std::mem::offset_of!(_php_core_globals, last_error_message) - 504usize];
9592    ["Offset of field: _php_core_globals::last_error_file"]
9593        [::std::mem::offset_of!(_php_core_globals, last_error_file) - 512usize];
9594    ["Offset of field: _php_core_globals::php_sys_temp_dir"]
9595        [::std::mem::offset_of!(_php_core_globals, php_sys_temp_dir) - 520usize];
9596    ["Offset of field: _php_core_globals::max_input_nesting_level"]
9597        [::std::mem::offset_of!(_php_core_globals, max_input_nesting_level) - 528usize];
9598    ["Offset of field: _php_core_globals::max_input_vars"]
9599        [::std::mem::offset_of!(_php_core_globals, max_input_vars) - 536usize];
9600    ["Offset of field: _php_core_globals::user_ini_filename"]
9601        [::std::mem::offset_of!(_php_core_globals, user_ini_filename) - 544usize];
9602    ["Offset of field: _php_core_globals::user_ini_cache_ttl"]
9603        [::std::mem::offset_of!(_php_core_globals, user_ini_cache_ttl) - 552usize];
9604    ["Offset of field: _php_core_globals::request_order"]
9605        [::std::mem::offset_of!(_php_core_globals, request_order) - 560usize];
9606    ["Offset of field: _php_core_globals::mail_log"]
9607        [::std::mem::offset_of!(_php_core_globals, mail_log) - 568usize];
9608    ["Offset of field: _php_core_globals::mail_cr_lf_mode"]
9609        [::std::mem::offset_of!(_php_core_globals, mail_cr_lf_mode) - 576usize];
9610    ["Offset of field: _php_core_globals::mail_x_header"]
9611        [::std::mem::offset_of!(_php_core_globals, mail_x_header) - 584usize];
9612    ["Offset of field: _php_core_globals::mail_mixed_lf_and_crlf"]
9613        [::std::mem::offset_of!(_php_core_globals, mail_mixed_lf_and_crlf) - 585usize];
9614    ["Offset of field: _php_core_globals::in_error_log"]
9615        [::std::mem::offset_of!(_php_core_globals, in_error_log) - 586usize];
9616    ["Offset of field: _php_core_globals::allow_url_include"]
9617        [::std::mem::offset_of!(_php_core_globals, allow_url_include) - 587usize];
9618    ["Offset of field: _php_core_globals::in_user_include"]
9619        [::std::mem::offset_of!(_php_core_globals, in_user_include) - 588usize];
9620    ["Offset of field: _php_core_globals::have_called_openlog"]
9621        [::std::mem::offset_of!(_php_core_globals, have_called_openlog) - 589usize];
9622    ["Offset of field: _php_core_globals::syslog_facility"]
9623        [::std::mem::offset_of!(_php_core_globals, syslog_facility) - 592usize];
9624    ["Offset of field: _php_core_globals::syslog_ident"]
9625        [::std::mem::offset_of!(_php_core_globals, syslog_ident) - 600usize];
9626    ["Offset of field: _php_core_globals::syslog_filter"]
9627        [::std::mem::offset_of!(_php_core_globals, syslog_filter) - 608usize];
9628    ["Offset of field: _php_core_globals::error_log_mode"]
9629        [::std::mem::offset_of!(_php_core_globals, error_log_mode) - 616usize];
9630};
9631#[repr(C)]
9632#[derive(Debug)]
9633pub struct _php_tick_function_entry {
9634    _unused: [u8; 0],
9635}
9636#[repr(C)]
9637#[derive(Debug, Copy, Clone)]
9638pub struct _arg_separators {
9639    pub output: *mut zend_string,
9640    pub input: *mut zend_string,
9641}
9642#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9643const _: () = {
9644    ["Size of _arg_separators"][::std::mem::size_of::<_arg_separators>() - 16usize];
9645    ["Alignment of _arg_separators"][::std::mem::align_of::<_arg_separators>() - 8usize];
9646    ["Offset of field: _arg_separators::output"]
9647        [::std::mem::offset_of!(_arg_separators, output) - 0usize];
9648    ["Offset of field: _arg_separators::input"]
9649        [::std::mem::offset_of!(_arg_separators, input) - 8usize];
9650};
9651pub type arg_separators = _arg_separators;
9652pub type zend_bool = bool;
9653pub type zend_intptr_t = isize;
9654pub type zend_uintptr_t = usize;
9655pub type php_stat_len = usize;
9656#[repr(C)]
9657#[derive(Debug, Copy, Clone)]
9658pub struct url_adapt_state_ex_t {
9659    pub tag: smart_str,
9660    pub arg: smart_str,
9661    pub val: smart_str,
9662    pub buf: smart_str,
9663    pub result: smart_str,
9664    pub form_app: smart_str,
9665    pub url_app: smart_str,
9666    pub active: ::std::os::raw::c_int,
9667    pub lookup_data: *mut ::std::os::raw::c_char,
9668    pub state: ::std::os::raw::c_int,
9669    pub type_: ::std::os::raw::c_int,
9670    pub attr_val: smart_str,
9671    pub tag_type: ::std::os::raw::c_int,
9672    pub attr_type: ::std::os::raw::c_int,
9673    pub tags: *mut HashTable,
9674}
9675#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9676const _: () = {
9677    ["Size of url_adapt_state_ex_t"][::std::mem::size_of::<url_adapt_state_ex_t>() - 168usize];
9678    ["Alignment of url_adapt_state_ex_t"][::std::mem::align_of::<url_adapt_state_ex_t>() - 8usize];
9679    ["Offset of field: url_adapt_state_ex_t::tag"]
9680        [::std::mem::offset_of!(url_adapt_state_ex_t, tag) - 0usize];
9681    ["Offset of field: url_adapt_state_ex_t::arg"]
9682        [::std::mem::offset_of!(url_adapt_state_ex_t, arg) - 16usize];
9683    ["Offset of field: url_adapt_state_ex_t::val"]
9684        [::std::mem::offset_of!(url_adapt_state_ex_t, val) - 32usize];
9685    ["Offset of field: url_adapt_state_ex_t::buf"]
9686        [::std::mem::offset_of!(url_adapt_state_ex_t, buf) - 48usize];
9687    ["Offset of field: url_adapt_state_ex_t::result"]
9688        [::std::mem::offset_of!(url_adapt_state_ex_t, result) - 64usize];
9689    ["Offset of field: url_adapt_state_ex_t::form_app"]
9690        [::std::mem::offset_of!(url_adapt_state_ex_t, form_app) - 80usize];
9691    ["Offset of field: url_adapt_state_ex_t::url_app"]
9692        [::std::mem::offset_of!(url_adapt_state_ex_t, url_app) - 96usize];
9693    ["Offset of field: url_adapt_state_ex_t::active"]
9694        [::std::mem::offset_of!(url_adapt_state_ex_t, active) - 112usize];
9695    ["Offset of field: url_adapt_state_ex_t::lookup_data"]
9696        [::std::mem::offset_of!(url_adapt_state_ex_t, lookup_data) - 120usize];
9697    ["Offset of field: url_adapt_state_ex_t::state"]
9698        [::std::mem::offset_of!(url_adapt_state_ex_t, state) - 128usize];
9699    ["Offset of field: url_adapt_state_ex_t::type_"]
9700        [::std::mem::offset_of!(url_adapt_state_ex_t, type_) - 132usize];
9701    ["Offset of field: url_adapt_state_ex_t::attr_val"]
9702        [::std::mem::offset_of!(url_adapt_state_ex_t, attr_val) - 136usize];
9703    ["Offset of field: url_adapt_state_ex_t::tag_type"]
9704        [::std::mem::offset_of!(url_adapt_state_ex_t, tag_type) - 152usize];
9705    ["Offset of field: url_adapt_state_ex_t::attr_type"]
9706        [::std::mem::offset_of!(url_adapt_state_ex_t, attr_type) - 156usize];
9707    ["Offset of field: url_adapt_state_ex_t::tags"]
9708        [::std::mem::offset_of!(url_adapt_state_ex_t, tags) - 160usize];
9709};
9710#[repr(C)]
9711#[derive(Copy, Clone)]
9712pub struct _php_basic_globals {
9713    pub user_shutdown_function_names: *mut HashTable,
9714    pub putenv_ht: HashTable,
9715    pub strtok_string: *mut zend_string,
9716    pub ctype_string: *mut zend_string,
9717    pub locale_changed: bool,
9718    pub strtok_last: *mut ::std::os::raw::c_char,
9719    pub strtok_table: [::std::os::raw::c_char; 256usize],
9720    pub strtok_len: usize,
9721    pub user_compare_fci: zend_fcall_info,
9722    pub user_compare_fci_cache: zend_fcall_info_cache,
9723    pub user_tick_functions: *mut zend_llist,
9724    pub active_ini_file_section: zval,
9725    pub last_http_headers: zval,
9726    pub page_uid: zend_long,
9727    pub page_gid: zend_long,
9728    pub page_inode: zend_long,
9729    pub page_mtime: time_t,
9730    pub CurrentStatFile: *mut zend_string,
9731    pub CurrentLStatFile: *mut zend_string,
9732    pub ssb: php_stream_statbuf,
9733    pub lssb: php_stream_statbuf,
9734    pub syslog_device: *mut ::std::os::raw::c_char,
9735    pub serialize_lock: ::std::os::raw::c_uint,
9736    pub serialize: _php_basic_globals__bindgen_ty_1,
9737    pub unserialize: _php_basic_globals__bindgen_ty_2,
9738    pub url_adapt_session_ex: url_adapt_state_ex_t,
9739    pub url_adapt_session_hosts_ht: HashTable,
9740    pub url_adapt_output_ex: url_adapt_state_ex_t,
9741    pub url_adapt_output_hosts_ht: HashTable,
9742    pub user_filter_map: *mut HashTable,
9743    pub umask: ::std::os::raw::c_int,
9744    pub unserialize_max_depth: zend_long,
9745}
9746#[repr(C)]
9747#[derive(Debug, Copy, Clone)]
9748pub struct _php_basic_globals__bindgen_ty_1 {
9749    pub data: *mut php_serialize_data,
9750    pub level: ::std::os::raw::c_uint,
9751}
9752#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9753const _: () = {
9754    ["Size of _php_basic_globals__bindgen_ty_1"]
9755        [::std::mem::size_of::<_php_basic_globals__bindgen_ty_1>() - 16usize];
9756    ["Alignment of _php_basic_globals__bindgen_ty_1"]
9757        [::std::mem::align_of::<_php_basic_globals__bindgen_ty_1>() - 8usize];
9758    ["Offset of field: _php_basic_globals__bindgen_ty_1::data"]
9759        [::std::mem::offset_of!(_php_basic_globals__bindgen_ty_1, data) - 0usize];
9760    ["Offset of field: _php_basic_globals__bindgen_ty_1::level"]
9761        [::std::mem::offset_of!(_php_basic_globals__bindgen_ty_1, level) - 8usize];
9762};
9763#[repr(C)]
9764#[derive(Debug, Copy, Clone)]
9765pub struct _php_basic_globals__bindgen_ty_2 {
9766    pub data: *mut php_unserialize_data,
9767    pub level: ::std::os::raw::c_uint,
9768}
9769#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9770const _: () = {
9771    ["Size of _php_basic_globals__bindgen_ty_2"]
9772        [::std::mem::size_of::<_php_basic_globals__bindgen_ty_2>() - 16usize];
9773    ["Alignment of _php_basic_globals__bindgen_ty_2"]
9774        [::std::mem::align_of::<_php_basic_globals__bindgen_ty_2>() - 8usize];
9775    ["Offset of field: _php_basic_globals__bindgen_ty_2::data"]
9776        [::std::mem::offset_of!(_php_basic_globals__bindgen_ty_2, data) - 0usize];
9777    ["Offset of field: _php_basic_globals__bindgen_ty_2::level"]
9778        [::std::mem::offset_of!(_php_basic_globals__bindgen_ty_2, level) - 8usize];
9779};
9780#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9781const _: () = {
9782    ["Size of _php_basic_globals"][::std::mem::size_of::<_php_basic_globals>() - 1360usize];
9783    ["Alignment of _php_basic_globals"][::std::mem::align_of::<_php_basic_globals>() - 8usize];
9784    ["Offset of field: _php_basic_globals::user_shutdown_function_names"]
9785        [::std::mem::offset_of!(_php_basic_globals, user_shutdown_function_names) - 0usize];
9786    ["Offset of field: _php_basic_globals::putenv_ht"]
9787        [::std::mem::offset_of!(_php_basic_globals, putenv_ht) - 8usize];
9788    ["Offset of field: _php_basic_globals::strtok_string"]
9789        [::std::mem::offset_of!(_php_basic_globals, strtok_string) - 64usize];
9790    ["Offset of field: _php_basic_globals::ctype_string"]
9791        [::std::mem::offset_of!(_php_basic_globals, ctype_string) - 72usize];
9792    ["Offset of field: _php_basic_globals::locale_changed"]
9793        [::std::mem::offset_of!(_php_basic_globals, locale_changed) - 80usize];
9794    ["Offset of field: _php_basic_globals::strtok_last"]
9795        [::std::mem::offset_of!(_php_basic_globals, strtok_last) - 88usize];
9796    ["Offset of field: _php_basic_globals::strtok_table"]
9797        [::std::mem::offset_of!(_php_basic_globals, strtok_table) - 96usize];
9798    ["Offset of field: _php_basic_globals::strtok_len"]
9799        [::std::mem::offset_of!(_php_basic_globals, strtok_len) - 352usize];
9800    ["Offset of field: _php_basic_globals::user_compare_fci"]
9801        [::std::mem::offset_of!(_php_basic_globals, user_compare_fci) - 360usize];
9802    ["Offset of field: _php_basic_globals::user_compare_fci_cache"]
9803        [::std::mem::offset_of!(_php_basic_globals, user_compare_fci_cache) - 424usize];
9804    ["Offset of field: _php_basic_globals::user_tick_functions"]
9805        [::std::mem::offset_of!(_php_basic_globals, user_tick_functions) - 464usize];
9806    ["Offset of field: _php_basic_globals::active_ini_file_section"]
9807        [::std::mem::offset_of!(_php_basic_globals, active_ini_file_section) - 472usize];
9808    ["Offset of field: _php_basic_globals::last_http_headers"]
9809        [::std::mem::offset_of!(_php_basic_globals, last_http_headers) - 488usize];
9810    ["Offset of field: _php_basic_globals::page_uid"]
9811        [::std::mem::offset_of!(_php_basic_globals, page_uid) - 504usize];
9812    ["Offset of field: _php_basic_globals::page_gid"]
9813        [::std::mem::offset_of!(_php_basic_globals, page_gid) - 512usize];
9814    ["Offset of field: _php_basic_globals::page_inode"]
9815        [::std::mem::offset_of!(_php_basic_globals, page_inode) - 520usize];
9816    ["Offset of field: _php_basic_globals::page_mtime"]
9817        [::std::mem::offset_of!(_php_basic_globals, page_mtime) - 528usize];
9818    ["Offset of field: _php_basic_globals::CurrentStatFile"]
9819        [::std::mem::offset_of!(_php_basic_globals, CurrentStatFile) - 536usize];
9820    ["Offset of field: _php_basic_globals::CurrentLStatFile"]
9821        [::std::mem::offset_of!(_php_basic_globals, CurrentLStatFile) - 544usize];
9822    ["Offset of field: _php_basic_globals::ssb"]
9823        [::std::mem::offset_of!(_php_basic_globals, ssb) - 552usize];
9824    ["Offset of field: _php_basic_globals::lssb"]
9825        [::std::mem::offset_of!(_php_basic_globals, lssb) - 696usize];
9826    ["Offset of field: _php_basic_globals::syslog_device"]
9827        [::std::mem::offset_of!(_php_basic_globals, syslog_device) - 840usize];
9828    ["Offset of field: _php_basic_globals::serialize_lock"]
9829        [::std::mem::offset_of!(_php_basic_globals, serialize_lock) - 848usize];
9830    ["Offset of field: _php_basic_globals::serialize"]
9831        [::std::mem::offset_of!(_php_basic_globals, serialize) - 856usize];
9832    ["Offset of field: _php_basic_globals::unserialize"]
9833        [::std::mem::offset_of!(_php_basic_globals, unserialize) - 872usize];
9834    ["Offset of field: _php_basic_globals::url_adapt_session_ex"]
9835        [::std::mem::offset_of!(_php_basic_globals, url_adapt_session_ex) - 888usize];
9836    ["Offset of field: _php_basic_globals::url_adapt_session_hosts_ht"]
9837        [::std::mem::offset_of!(_php_basic_globals, url_adapt_session_hosts_ht) - 1056usize];
9838    ["Offset of field: _php_basic_globals::url_adapt_output_ex"]
9839        [::std::mem::offset_of!(_php_basic_globals, url_adapt_output_ex) - 1112usize];
9840    ["Offset of field: _php_basic_globals::url_adapt_output_hosts_ht"]
9841        [::std::mem::offset_of!(_php_basic_globals, url_adapt_output_hosts_ht) - 1280usize];
9842    ["Offset of field: _php_basic_globals::user_filter_map"]
9843        [::std::mem::offset_of!(_php_basic_globals, user_filter_map) - 1336usize];
9844    ["Offset of field: _php_basic_globals::umask"]
9845        [::std::mem::offset_of!(_php_basic_globals, umask) - 1344usize];
9846    ["Offset of field: _php_basic_globals::unserialize_max_depth"]
9847        [::std::mem::offset_of!(_php_basic_globals, unserialize_max_depth) - 1352usize];
9848};
9849pub type php_basic_globals = _php_basic_globals;
9850#[repr(C)]
9851#[derive(Debug, Copy, Clone)]
9852pub struct _php_shutdown_function_entry {
9853    pub fci_cache: zend_fcall_info_cache,
9854    pub params: *mut zval,
9855    pub param_count: u32,
9856}
9857#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9858const _: () = {
9859    ["Size of _php_shutdown_function_entry"]
9860        [::std::mem::size_of::<_php_shutdown_function_entry>() - 56usize];
9861    ["Alignment of _php_shutdown_function_entry"]
9862        [::std::mem::align_of::<_php_shutdown_function_entry>() - 8usize];
9863    ["Offset of field: _php_shutdown_function_entry::fci_cache"]
9864        [::std::mem::offset_of!(_php_shutdown_function_entry, fci_cache) - 0usize];
9865    ["Offset of field: _php_shutdown_function_entry::params"]
9866        [::std::mem::offset_of!(_php_shutdown_function_entry, params) - 40usize];
9867    ["Offset of field: _php_shutdown_function_entry::param_count"]
9868        [::std::mem::offset_of!(_php_shutdown_function_entry, param_count) - 48usize];
9869};
9870pub type php_shutdown_function_entry = _php_shutdown_function_entry;
9871pub type php_serialize_data_t = *mut php_serialize_data;
9872pub type php_unserialize_data_t = *mut php_unserialize_data;
9873pub type __builtin_va_list = [__va_list_tag; 1usize];
9874#[repr(C)]
9875#[derive(Debug, Copy, Clone)]
9876pub struct __va_list_tag {
9877    pub gp_offset: ::std::os::raw::c_uint,
9878    pub fp_offset: ::std::os::raw::c_uint,
9879    pub overflow_arg_area: *mut ::std::os::raw::c_void,
9880    pub reg_save_area: *mut ::std::os::raw::c_void,
9881}
9882#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9883const _: () = {
9884    ["Size of __va_list_tag"][::std::mem::size_of::<__va_list_tag>() - 24usize];
9885    ["Alignment of __va_list_tag"][::std::mem::align_of::<__va_list_tag>() - 8usize];
9886    ["Offset of field: __va_list_tag::gp_offset"]
9887        [::std::mem::offset_of!(__va_list_tag, gp_offset) - 0usize];
9888    ["Offset of field: __va_list_tag::fp_offset"]
9889        [::std::mem::offset_of!(__va_list_tag, fp_offset) - 4usize];
9890    ["Offset of field: __va_list_tag::overflow_arg_area"]
9891        [::std::mem::offset_of!(__va_list_tag, overflow_arg_area) - 8usize];
9892    ["Offset of field: __va_list_tag::reg_save_area"]
9893        [::std::mem::offset_of!(__va_list_tag, reg_save_area) - 16usize];
9894};
9895#[repr(C)]
9896#[derive(Debug, Copy, Clone)]
9897pub struct php_serialize_data {
9898    pub _address: u8,
9899}
9900#[repr(C)]
9901#[derive(Debug, Copy, Clone)]
9902pub struct php_unserialize_data {
9903    pub _address: u8,
9904}
9905unsafe extern "C" {
9906    pub static mut zend_dl_use_deepbind: bool;
9907    #[link_name = "zval_get_type__extern"]
9908    pub fn zval_get_type(pz: *const zval) -> u8;
9909    #[link_name = "zval_gc_type__extern"]
9910    pub fn zval_gc_type(gc_type_info: u32) -> u8;
9911    #[link_name = "zval_gc_flags__extern"]
9912    pub fn zval_gc_flags(gc_type_info: u32) -> u32;
9913    #[link_name = "zval_gc_info__extern"]
9914    pub fn zval_gc_info(gc_type_info: u32) -> u32;
9915    #[link_name = "zend_gc_refcount__extern"]
9916    pub fn zend_gc_refcount(p: *const zend_refcounted_h) -> u32;
9917    #[link_name = "zend_gc_set_refcount__extern"]
9918    pub fn zend_gc_set_refcount(p: *mut zend_refcounted_h, rc: u32) -> u32;
9919    #[link_name = "zend_gc_addref__extern"]
9920    pub fn zend_gc_addref(p: *mut zend_refcounted_h) -> u32;
9921    #[link_name = "zend_gc_try_addref__extern"]
9922    pub fn zend_gc_try_addref(p: *mut zend_refcounted_h);
9923    #[link_name = "zend_gc_try_delref__extern"]
9924    pub fn zend_gc_try_delref(p: *mut zend_refcounted_h);
9925    #[link_name = "zend_gc_delref__extern"]
9926    pub fn zend_gc_delref(p: *mut zend_refcounted_h) -> u32;
9927    #[link_name = "zend_gc_addref_ex__extern"]
9928    pub fn zend_gc_addref_ex(p: *mut zend_refcounted_h, rc: u32) -> u32;
9929    #[link_name = "zend_gc_delref_ex__extern"]
9930    pub fn zend_gc_delref_ex(p: *mut zend_refcounted_h, rc: u32) -> u32;
9931    #[link_name = "zval_refcount_p__extern"]
9932    pub fn zval_refcount_p(pz: *const zval) -> u32;
9933    #[link_name = "zval_set_refcount_p__extern"]
9934    pub fn zval_set_refcount_p(pz: *mut zval, rc: u32) -> u32;
9935    #[link_name = "zval_addref_p__extern"]
9936    pub fn zval_addref_p(pz: *mut zval) -> u32;
9937    #[link_name = "zval_delref_p__extern"]
9938    pub fn zval_delref_p(pz: *mut zval) -> u32;
9939    #[link_name = "zend_may_modify_arg_in_place__extern"]
9940    pub fn zend_may_modify_arg_in_place(arg: *const zval) -> bool;
9941    pub fn zend_map_ptr_reset();
9942    pub fn zend_map_ptr_new() -> *mut ::std::os::raw::c_void;
9943    pub fn zend_map_ptr_new_static() -> *mut ::std::os::raw::c_void;
9944    pub fn zend_map_ptr_extend(last: usize);
9945    pub fn zend_alloc_ce_cache(type_name: *mut zend_string);
9946    pub static mut zend_map_ptr_static_last: usize;
9947    pub static mut zend_map_ptr_static_size: usize;
9948    pub fn zend_strndup(
9949        s: *const ::std::os::raw::c_char,
9950        length: usize,
9951    ) -> *mut ::std::os::raw::c_char;
9952    pub fn _emalloc(
9953        size: usize,
9954        __zend_filename: *const ::std::os::raw::c_char,
9955        __zend_lineno: u32,
9956        __zend_orig_filename: *const ::std::os::raw::c_char,
9957        __zend_orig_lineno: u32,
9958    ) -> *mut ::std::os::raw::c_void;
9959    pub fn _safe_emalloc(
9960        nmemb: usize,
9961        size: usize,
9962        offset: usize,
9963        __zend_filename: *const ::std::os::raw::c_char,
9964        __zend_lineno: u32,
9965        __zend_orig_filename: *const ::std::os::raw::c_char,
9966        __zend_orig_lineno: u32,
9967    ) -> *mut ::std::os::raw::c_void;
9968    pub fn _safe_malloc(nmemb: usize, size: usize, offset: usize) -> *mut ::std::os::raw::c_void;
9969    pub fn _efree(
9970        ptr: *mut ::std::os::raw::c_void,
9971        __zend_filename: *const ::std::os::raw::c_char,
9972        __zend_lineno: u32,
9973        __zend_orig_filename: *const ::std::os::raw::c_char,
9974        __zend_orig_lineno: u32,
9975    );
9976    pub fn _ecalloc(
9977        nmemb: usize,
9978        size: usize,
9979        __zend_filename: *const ::std::os::raw::c_char,
9980        __zend_lineno: u32,
9981        __zend_orig_filename: *const ::std::os::raw::c_char,
9982        __zend_orig_lineno: u32,
9983    ) -> *mut ::std::os::raw::c_void;
9984    pub fn _erealloc(
9985        ptr: *mut ::std::os::raw::c_void,
9986        size: usize,
9987        __zend_filename: *const ::std::os::raw::c_char,
9988        __zend_lineno: u32,
9989        __zend_orig_filename: *const ::std::os::raw::c_char,
9990        __zend_orig_lineno: u32,
9991    ) -> *mut ::std::os::raw::c_void;
9992    pub fn _erealloc2(
9993        ptr: *mut ::std::os::raw::c_void,
9994        size: usize,
9995        copy_size: usize,
9996        __zend_filename: *const ::std::os::raw::c_char,
9997        __zend_lineno: u32,
9998        __zend_orig_filename: *const ::std::os::raw::c_char,
9999        __zend_orig_lineno: u32,
10000    ) -> *mut ::std::os::raw::c_void;
10001    pub fn _safe_erealloc(
10002        ptr: *mut ::std::os::raw::c_void,
10003        nmemb: usize,
10004        size: usize,
10005        offset: usize,
10006        __zend_filename: *const ::std::os::raw::c_char,
10007        __zend_lineno: u32,
10008        __zend_orig_filename: *const ::std::os::raw::c_char,
10009        __zend_orig_lineno: u32,
10010    ) -> *mut ::std::os::raw::c_void;
10011    pub fn _safe_realloc(
10012        ptr: *mut ::std::os::raw::c_void,
10013        nmemb: usize,
10014        size: usize,
10015        offset: usize,
10016    ) -> *mut ::std::os::raw::c_void;
10017    pub fn _estrdup(
10018        s: *const ::std::os::raw::c_char,
10019        __zend_filename: *const ::std::os::raw::c_char,
10020        __zend_lineno: u32,
10021        __zend_orig_filename: *const ::std::os::raw::c_char,
10022        __zend_orig_lineno: u32,
10023    ) -> *mut ::std::os::raw::c_char;
10024    pub fn _estrndup(
10025        s: *const ::std::os::raw::c_char,
10026        length: usize,
10027        __zend_filename: *const ::std::os::raw::c_char,
10028        __zend_lineno: u32,
10029        __zend_orig_filename: *const ::std::os::raw::c_char,
10030        __zend_orig_lineno: u32,
10031    ) -> *mut ::std::os::raw::c_char;
10032    pub fn _zend_mem_block_size(
10033        ptr: *mut ::std::os::raw::c_void,
10034        __zend_filename: *const ::std::os::raw::c_char,
10035        __zend_lineno: u32,
10036        __zend_orig_filename: *const ::std::os::raw::c_char,
10037        __zend_orig_lineno: u32,
10038    ) -> usize;
10039    pub fn __zend_malloc(
10040        len: usize,
10041        __zend_filename: *const ::std::os::raw::c_char,
10042        __zend_lineno: u32,
10043        __zend_orig_filename: *const ::std::os::raw::c_char,
10044        __zend_orig_lineno: u32,
10045    ) -> *mut ::std::os::raw::c_void;
10046    pub fn __zend_calloc(
10047        nmemb: usize,
10048        len: usize,
10049        __zend_filename: *const ::std::os::raw::c_char,
10050        __zend_lineno: u32,
10051        __zend_orig_filename: *const ::std::os::raw::c_char,
10052        __zend_orig_lineno: u32,
10053    ) -> *mut ::std::os::raw::c_void;
10054    pub fn __zend_realloc(
10055        p: *mut ::std::os::raw::c_void,
10056        len: usize,
10057        __zend_filename: *const ::std::os::raw::c_char,
10058        __zend_lineno: u32,
10059        __zend_orig_filename: *const ::std::os::raw::c_char,
10060        __zend_orig_lineno: u32,
10061    ) -> *mut ::std::os::raw::c_void;
10062    pub fn __zend_free(
10063        p: *mut ::std::os::raw::c_void,
10064        __zend_filename: *const ::std::os::raw::c_char,
10065        __zend_lineno: u32,
10066        __zend_orig_filename: *const ::std::os::raw::c_char,
10067        __zend_orig_lineno: u32,
10068    );
10069    pub fn __zend_strdup(s: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
10070    pub fn zend_set_memory_limit(memory_limit: usize) -> zend_result;
10071    pub fn zend_alloc_in_memory_limit_error_reporting() -> bool;
10072    pub fn start_memory_manager();
10073    pub fn shutdown_memory_manager(silent: bool, full_shutdown: bool);
10074    pub fn refresh_memory_manager();
10075    pub fn is_zend_mm() -> bool;
10076    pub fn is_zend_ptr(ptr: *const ::std::os::raw::c_void) -> bool;
10077    pub fn zend_memory_usage(real_usage: bool) -> usize;
10078    pub fn zend_memory_peak_usage(real_usage: bool) -> usize;
10079    pub fn zend_memory_reset_peak_usage();
10080    pub fn zend_mm_startup() -> *mut zend_mm_heap;
10081    pub fn zend_mm_shutdown(heap: *mut zend_mm_heap, full_shutdown: bool, silent: bool);
10082    pub fn _zend_mm_alloc(
10083        heap: *mut zend_mm_heap,
10084        size: usize,
10085        __zend_filename: *const ::std::os::raw::c_char,
10086        __zend_lineno: u32,
10087        __zend_orig_filename: *const ::std::os::raw::c_char,
10088        __zend_orig_lineno: u32,
10089    ) -> *mut ::std::os::raw::c_void;
10090    pub fn _zend_mm_free(
10091        heap: *mut zend_mm_heap,
10092        p: *mut ::std::os::raw::c_void,
10093        __zend_filename: *const ::std::os::raw::c_char,
10094        __zend_lineno: u32,
10095        __zend_orig_filename: *const ::std::os::raw::c_char,
10096        __zend_orig_lineno: u32,
10097    );
10098    pub fn _zend_mm_realloc(
10099        heap: *mut zend_mm_heap,
10100        p: *mut ::std::os::raw::c_void,
10101        size: usize,
10102        __zend_filename: *const ::std::os::raw::c_char,
10103        __zend_lineno: u32,
10104        __zend_orig_filename: *const ::std::os::raw::c_char,
10105        __zend_orig_lineno: u32,
10106    ) -> *mut ::std::os::raw::c_void;
10107    pub fn _zend_mm_realloc2(
10108        heap: *mut zend_mm_heap,
10109        p: *mut ::std::os::raw::c_void,
10110        size: usize,
10111        copy_size: usize,
10112        __zend_filename: *const ::std::os::raw::c_char,
10113        __zend_lineno: u32,
10114        __zend_orig_filename: *const ::std::os::raw::c_char,
10115        __zend_orig_lineno: u32,
10116    ) -> *mut ::std::os::raw::c_void;
10117    pub fn _zend_mm_block_size(
10118        heap: *mut zend_mm_heap,
10119        p: *mut ::std::os::raw::c_void,
10120        __zend_filename: *const ::std::os::raw::c_char,
10121        __zend_lineno: u32,
10122        __zend_orig_filename: *const ::std::os::raw::c_char,
10123        __zend_orig_lineno: u32,
10124    ) -> usize;
10125    pub fn zend_mm_set_heap(new_heap: *mut zend_mm_heap) -> *mut zend_mm_heap;
10126    pub fn zend_mm_get_heap() -> *mut zend_mm_heap;
10127    pub fn zend_mm_gc(heap: *mut zend_mm_heap) -> usize;
10128    pub fn zend_mm_is_custom_heap(new_heap: *mut zend_mm_heap) -> bool;
10129    pub fn zend_mm_set_custom_handlers(
10130        heap: *mut zend_mm_heap,
10131        _malloc: ::std::option::Option<
10132            unsafe extern "C" fn(
10133                arg1: usize,
10134                __zend_filename: *const ::std::os::raw::c_char,
10135                __zend_lineno: u32,
10136                __zend_orig_filename: *const ::std::os::raw::c_char,
10137                __zend_orig_lineno: u32,
10138            ) -> *mut ::std::os::raw::c_void,
10139        >,
10140        _free: ::std::option::Option<
10141            unsafe extern "C" fn(
10142                arg1: *mut ::std::os::raw::c_void,
10143                __zend_filename: *const ::std::os::raw::c_char,
10144                __zend_lineno: u32,
10145                __zend_orig_filename: *const ::std::os::raw::c_char,
10146                __zend_orig_lineno: u32,
10147            ),
10148        >,
10149        _realloc: ::std::option::Option<
10150            unsafe extern "C" fn(
10151                arg1: *mut ::std::os::raw::c_void,
10152                arg2: usize,
10153                __zend_filename: *const ::std::os::raw::c_char,
10154                __zend_lineno: u32,
10155                __zend_orig_filename: *const ::std::os::raw::c_char,
10156                __zend_orig_lineno: u32,
10157            ) -> *mut ::std::os::raw::c_void,
10158        >,
10159    );
10160    pub fn zend_mm_set_custom_handlers_ex(
10161        heap: *mut zend_mm_heap,
10162        _malloc: ::std::option::Option<
10163            unsafe extern "C" fn(
10164                arg1: usize,
10165                __zend_filename: *const ::std::os::raw::c_char,
10166                __zend_lineno: u32,
10167                __zend_orig_filename: *const ::std::os::raw::c_char,
10168                __zend_orig_lineno: u32,
10169            ) -> *mut ::std::os::raw::c_void,
10170        >,
10171        _free: ::std::option::Option<
10172            unsafe extern "C" fn(
10173                arg1: *mut ::std::os::raw::c_void,
10174                __zend_filename: *const ::std::os::raw::c_char,
10175                __zend_lineno: u32,
10176                __zend_orig_filename: *const ::std::os::raw::c_char,
10177                __zend_orig_lineno: u32,
10178            ),
10179        >,
10180        _realloc: ::std::option::Option<
10181            unsafe extern "C" fn(
10182                arg1: *mut ::std::os::raw::c_void,
10183                arg2: usize,
10184                __zend_filename: *const ::std::os::raw::c_char,
10185                __zend_lineno: u32,
10186                __zend_orig_filename: *const ::std::os::raw::c_char,
10187                __zend_orig_lineno: u32,
10188            ) -> *mut ::std::os::raw::c_void,
10189        >,
10190        _gc: ::std::option::Option<unsafe extern "C" fn() -> usize>,
10191        _shutdown: ::std::option::Option<unsafe extern "C" fn(arg1: bool, arg2: bool)>,
10192    );
10193    pub fn zend_mm_get_custom_handlers(
10194        heap: *mut zend_mm_heap,
10195        _malloc: *mut ::std::option::Option<
10196            unsafe extern "C" fn(
10197                arg1: usize,
10198                __zend_filename: *const ::std::os::raw::c_char,
10199                __zend_lineno: u32,
10200                __zend_orig_filename: *const ::std::os::raw::c_char,
10201                __zend_orig_lineno: u32,
10202            ) -> *mut ::std::os::raw::c_void,
10203        >,
10204        _free: *mut ::std::option::Option<
10205            unsafe extern "C" fn(
10206                arg1: *mut ::std::os::raw::c_void,
10207                __zend_filename: *const ::std::os::raw::c_char,
10208                __zend_lineno: u32,
10209                __zend_orig_filename: *const ::std::os::raw::c_char,
10210                __zend_orig_lineno: u32,
10211            ),
10212        >,
10213        _realloc: *mut ::std::option::Option<
10214            unsafe extern "C" fn(
10215                arg1: *mut ::std::os::raw::c_void,
10216                arg2: usize,
10217                __zend_filename: *const ::std::os::raw::c_char,
10218                __zend_lineno: u32,
10219                __zend_orig_filename: *const ::std::os::raw::c_char,
10220                __zend_orig_lineno: u32,
10221            ) -> *mut ::std::os::raw::c_void,
10222        >,
10223    );
10224    pub fn zend_mm_get_custom_handlers_ex(
10225        heap: *mut zend_mm_heap,
10226        _malloc: *mut ::std::option::Option<
10227            unsafe extern "C" fn(
10228                arg1: usize,
10229                __zend_filename: *const ::std::os::raw::c_char,
10230                __zend_lineno: u32,
10231                __zend_orig_filename: *const ::std::os::raw::c_char,
10232                __zend_orig_lineno: u32,
10233            ) -> *mut ::std::os::raw::c_void,
10234        >,
10235        _free: *mut ::std::option::Option<
10236            unsafe extern "C" fn(
10237                arg1: *mut ::std::os::raw::c_void,
10238                __zend_filename: *const ::std::os::raw::c_char,
10239                __zend_lineno: u32,
10240                __zend_orig_filename: *const ::std::os::raw::c_char,
10241                __zend_orig_lineno: u32,
10242            ),
10243        >,
10244        _realloc: *mut ::std::option::Option<
10245            unsafe extern "C" fn(
10246                arg1: *mut ::std::os::raw::c_void,
10247                arg2: usize,
10248                __zend_filename: *const ::std::os::raw::c_char,
10249                __zend_lineno: u32,
10250                __zend_orig_filename: *const ::std::os::raw::c_char,
10251                __zend_orig_lineno: u32,
10252            ) -> *mut ::std::os::raw::c_void,
10253        >,
10254        _gc: *mut ::std::option::Option<unsafe extern "C" fn() -> usize>,
10255        _shutdown: *mut ::std::option::Option<unsafe extern "C" fn(arg1: bool, arg2: bool)>,
10256    );
10257    pub fn zend_mm_get_storage(heap: *mut zend_mm_heap) -> *mut zend_mm_storage;
10258    pub fn zend_mm_startup_ex(
10259        handlers: *const zend_mm_handlers,
10260        data: *mut ::std::os::raw::c_void,
10261        data_size: usize,
10262    ) -> *mut zend_mm_heap;
10263    pub fn zend_mm_refresh_key_child(heap: *mut zend_mm_heap);
10264    pub fn zend_llist_init(
10265        l: *mut zend_llist,
10266        size: usize,
10267        dtor: llist_dtor_func_t,
10268        persistent: ::std::os::raw::c_uchar,
10269    );
10270    pub fn zend_llist_add_element(l: *mut zend_llist, element: *const ::std::os::raw::c_void);
10271    pub fn zend_llist_prepend_element(l: *mut zend_llist, element: *const ::std::os::raw::c_void);
10272    pub fn zend_llist_del_element(
10273        l: *mut zend_llist,
10274        element: *mut ::std::os::raw::c_void,
10275        compare: ::std::option::Option<
10276            unsafe extern "C" fn(
10277                element1: *mut ::std::os::raw::c_void,
10278                element2: *mut ::std::os::raw::c_void,
10279            ) -> ::std::os::raw::c_int,
10280        >,
10281    );
10282    pub fn zend_llist_destroy(l: *mut zend_llist);
10283    pub fn zend_llist_clean(l: *mut zend_llist);
10284    pub fn zend_llist_remove_tail(l: *mut zend_llist);
10285    pub fn zend_llist_copy(dst: *mut zend_llist, src: *mut zend_llist);
10286    pub fn zend_llist_apply(l: *mut zend_llist, func: llist_apply_func_t);
10287    pub fn zend_llist_apply_with_del(
10288        l: *mut zend_llist,
10289        func: ::std::option::Option<
10290            unsafe extern "C" fn(data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
10291        >,
10292    );
10293    pub fn zend_llist_apply_with_argument(
10294        l: *mut zend_llist,
10295        func: llist_apply_with_arg_func_t,
10296        arg: *mut ::std::os::raw::c_void,
10297    );
10298    pub fn zend_llist_apply_with_arguments(
10299        l: *mut zend_llist,
10300        func: llist_apply_with_args_func_t,
10301        num_args: ::std::os::raw::c_int,
10302        ...
10303    );
10304    pub fn zend_llist_count(l: *mut zend_llist) -> usize;
10305    pub fn zend_llist_sort(l: *mut zend_llist, comp_func: llist_compare_func_t);
10306    pub fn zend_llist_get_first_ex(
10307        l: *mut zend_llist,
10308        pos: *mut zend_llist_position,
10309    ) -> *mut ::std::os::raw::c_void;
10310    pub fn zend_llist_get_last_ex(
10311        l: *mut zend_llist,
10312        pos: *mut zend_llist_position,
10313    ) -> *mut ::std::os::raw::c_void;
10314    pub fn zend_llist_get_next_ex(
10315        l: *mut zend_llist,
10316        pos: *mut zend_llist_position,
10317    ) -> *mut ::std::os::raw::c_void;
10318    pub fn zend_llist_get_prev_ex(
10319        l: *mut zend_llist,
10320        pos: *mut zend_llist_position,
10321    ) -> *mut ::std::os::raw::c_void;
10322    #[link_name = "zend_llist_get_first__extern"]
10323    pub fn zend_llist_get_first(l: *mut zend_llist) -> *mut ::std::os::raw::c_void;
10324    #[link_name = "zend_llist_get_last__extern"]
10325    pub fn zend_llist_get_last(l: *mut zend_llist) -> *mut ::std::os::raw::c_void;
10326    #[link_name = "zend_llist_get_next__extern"]
10327    pub fn zend_llist_get_next(l: *mut zend_llist) -> *mut ::std::os::raw::c_void;
10328    #[link_name = "zend_llist_get_prev__extern"]
10329    pub fn zend_llist_get_prev(l: *mut zend_llist) -> *mut ::std::os::raw::c_void;
10330    pub fn zend_startup_hrtime();
10331    #[link_name = "zend_hrtime__extern"]
10332    pub fn zend_hrtime() -> zend_hrtime_t;
10333    pub static mut gc_collect_cycles:
10334        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
10335    pub fn gc_possible_root(ref_: *mut zend_refcounted);
10336    pub fn gc_remove_from_buffer(ref_: *mut zend_refcounted);
10337    pub fn gc_enable(enable: bool) -> bool;
10338    pub fn gc_enabled() -> bool;
10339    pub fn gc_protect(protect: bool) -> bool;
10340    pub fn gc_protected() -> bool;
10341    pub fn zend_gc_collect_cycles() -> ::std::os::raw::c_int;
10342    pub fn zend_gc_get_status(status: *mut zend_gc_status);
10343    pub fn gc_init();
10344    pub fn gc_globals_ctor();
10345    pub fn gc_globals_dtor();
10346    pub fn gc_reset();
10347    #[link_name = "gc_check_possible_root__extern"]
10348    pub fn gc_check_possible_root(ref_: *mut zend_refcounted);
10349    #[link_name = "gc_check_possible_root_no_ref__extern"]
10350    pub fn gc_check_possible_root_no_ref(ref_: *mut zend_refcounted);
10351    pub fn zend_get_gc_buffer_create() -> *mut zend_get_gc_buffer;
10352    pub fn zend_get_gc_buffer_grow(gc_buffer: *mut zend_get_gc_buffer);
10353    #[link_name = "zend_get_gc_buffer_add_zval__extern"]
10354    pub fn zend_get_gc_buffer_add_zval(gc_buffer: *mut zend_get_gc_buffer, zv: *mut zval);
10355    #[link_name = "zend_get_gc_buffer_add_obj__extern"]
10356    pub fn zend_get_gc_buffer_add_obj(gc_buffer: *mut zend_get_gc_buffer, obj: *mut zend_object);
10357    #[link_name = "zend_get_gc_buffer_add_ht__extern"]
10358    pub fn zend_get_gc_buffer_add_ht(gc_buffer: *mut zend_get_gc_buffer, ht: *mut HashTable);
10359    #[link_name = "zend_get_gc_buffer_add_ptr__extern"]
10360    pub fn zend_get_gc_buffer_add_ptr(
10361        gc_buffer: *mut zend_get_gc_buffer,
10362        ptr: *mut ::std::os::raw::c_void,
10363    );
10364    #[link_name = "zend_get_gc_buffer_use__extern"]
10365    pub fn zend_get_gc_buffer_use(
10366        gc_buffer: *mut zend_get_gc_buffer,
10367        table: *mut *mut zval,
10368        n: *mut ::std::os::raw::c_int,
10369    );
10370    pub static mut zend_new_interned_string: zend_new_interned_string_func_t;
10371    pub static mut zend_string_init_interned: zend_string_init_interned_func_t;
10372    pub static mut zend_string_init_existing_interned: zend_string_init_existing_interned_func_t;
10373    pub fn zend_string_hash_func(str_: *mut zend_string) -> zend_ulong;
10374    pub fn zend_hash_func(str_: *const ::std::os::raw::c_char, len: usize) -> zend_ulong;
10375    pub fn zend_interned_string_find_permanent(str_: *mut zend_string) -> *mut zend_string;
10376    pub fn zend_string_concat2(
10377        str1: *const ::std::os::raw::c_char,
10378        str1_len: usize,
10379        str2: *const ::std::os::raw::c_char,
10380        str2_len: usize,
10381    ) -> *mut zend_string;
10382    pub fn zend_string_concat3(
10383        str1: *const ::std::os::raw::c_char,
10384        str1_len: usize,
10385        str2: *const ::std::os::raw::c_char,
10386        str2_len: usize,
10387        str3: *const ::std::os::raw::c_char,
10388        str3_len: usize,
10389    ) -> *mut zend_string;
10390    pub fn zend_interned_strings_init();
10391    pub fn zend_interned_strings_dtor();
10392    pub fn zend_interned_strings_activate();
10393    pub fn zend_interned_strings_deactivate();
10394    pub fn zend_interned_strings_set_request_storage_handlers(
10395        handler: zend_new_interned_string_func_t,
10396        init_handler: zend_string_init_interned_func_t,
10397        init_existing_handler: zend_string_init_existing_interned_func_t,
10398    );
10399    pub fn zend_interned_strings_switch_storage(request: bool);
10400    pub static mut zend_empty_string: *mut zend_string;
10401    pub static mut zend_one_char_string: [*mut zend_string; 256usize];
10402    pub static mut zend_known_strings: *mut *mut zend_string;
10403    #[link_name = "zend_string_hash_val__extern"]
10404    pub fn zend_string_hash_val(s: *mut zend_string) -> zend_ulong;
10405    #[link_name = "zend_string_forget_hash_val__extern"]
10406    pub fn zend_string_forget_hash_val(s: *mut zend_string);
10407    #[link_name = "zend_string_refcount__extern"]
10408    pub fn zend_string_refcount(s: *const zend_string) -> u32;
10409    #[link_name = "zend_string_addref__extern"]
10410    pub fn zend_string_addref(s: *mut zend_string) -> u32;
10411    #[link_name = "zend_string_delref__extern"]
10412    pub fn zend_string_delref(s: *mut zend_string) -> u32;
10413    #[link_name = "zend_string_alloc__extern"]
10414    pub fn zend_string_alloc(len: usize, persistent: bool) -> *mut zend_string;
10415    #[link_name = "zend_string_safe_alloc__extern"]
10416    pub fn zend_string_safe_alloc(
10417        n: usize,
10418        m: usize,
10419        l: usize,
10420        persistent: bool,
10421    ) -> *mut zend_string;
10422    #[link_name = "zend_string_init__extern"]
10423    pub fn zend_string_init(
10424        str_: *const ::std::os::raw::c_char,
10425        len: usize,
10426        persistent: bool,
10427    ) -> *mut zend_string;
10428    #[link_name = "zend_string_init_fast__extern"]
10429    pub fn zend_string_init_fast(
10430        str_: *const ::std::os::raw::c_char,
10431        len: usize,
10432    ) -> *mut zend_string;
10433    #[link_name = "zend_string_copy__extern"]
10434    pub fn zend_string_copy(s: *mut zend_string) -> *mut zend_string;
10435    #[link_name = "zend_string_dup__extern"]
10436    pub fn zend_string_dup(s: *mut zend_string, persistent: bool) -> *mut zend_string;
10437    #[link_name = "zend_string_separate__extern"]
10438    pub fn zend_string_separate(s: *mut zend_string, persistent: bool) -> *mut zend_string;
10439    #[link_name = "zend_string_realloc__extern"]
10440    pub fn zend_string_realloc(
10441        s: *mut zend_string,
10442        len: usize,
10443        persistent: bool,
10444    ) -> *mut zend_string;
10445    #[link_name = "zend_string_extend__extern"]
10446    pub fn zend_string_extend(
10447        s: *mut zend_string,
10448        len: usize,
10449        persistent: bool,
10450    ) -> *mut zend_string;
10451    #[link_name = "zend_string_truncate__extern"]
10452    pub fn zend_string_truncate(
10453        s: *mut zend_string,
10454        len: usize,
10455        persistent: bool,
10456    ) -> *mut zend_string;
10457    #[link_name = "zend_string_safe_realloc__extern"]
10458    pub fn zend_string_safe_realloc(
10459        s: *mut zend_string,
10460        n: usize,
10461        m: usize,
10462        l: usize,
10463        persistent: bool,
10464    ) -> *mut zend_string;
10465    #[link_name = "zend_string_free__extern"]
10466    pub fn zend_string_free(s: *mut zend_string);
10467    #[link_name = "zend_string_efree__extern"]
10468    pub fn zend_string_efree(s: *mut zend_string);
10469    #[link_name = "zend_string_release__extern"]
10470    pub fn zend_string_release(s: *mut zend_string);
10471    #[link_name = "zend_string_release_ex__extern"]
10472    pub fn zend_string_release_ex(s: *mut zend_string, persistent: bool);
10473    #[link_name = "zend_string_equals_cstr__extern"]
10474    pub fn zend_string_equals_cstr(
10475        s1: *const zend_string,
10476        s2: *const ::std::os::raw::c_char,
10477        s2_length: usize,
10478    ) -> bool;
10479    pub fn zend_string_equal_val(s1: *const zend_string, s2: *const zend_string) -> bool;
10480    #[link_name = "zend_string_equal_content__extern"]
10481    pub fn zend_string_equal_content(s1: *const zend_string, s2: *const zend_string) -> bool;
10482    #[link_name = "zend_string_equals__extern"]
10483    pub fn zend_string_equals(s1: *const zend_string, s2: *const zend_string) -> bool;
10484    #[link_name = "zend_string_starts_with_cstr__extern"]
10485    pub fn zend_string_starts_with_cstr(
10486        str_: *const zend_string,
10487        prefix: *const ::std::os::raw::c_char,
10488        prefix_length: usize,
10489    ) -> bool;
10490    #[link_name = "zend_string_starts_with__extern"]
10491    pub fn zend_string_starts_with(str_: *const zend_string, prefix: *const zend_string) -> bool;
10492    #[link_name = "zend_string_starts_with_cstr_ci__extern"]
10493    pub fn zend_string_starts_with_cstr_ci(
10494        str_: *const zend_string,
10495        prefix: *const ::std::os::raw::c_char,
10496        prefix_length: usize,
10497    ) -> bool;
10498    #[link_name = "zend_string_starts_with_ci__extern"]
10499    pub fn zend_string_starts_with_ci(str_: *const zend_string, prefix: *const zend_string)
10500    -> bool;
10501    #[link_name = "zend_inline_hash_func__extern"]
10502    pub fn zend_inline_hash_func(str_: *const ::std::os::raw::c_char, len: usize) -> zend_ulong;
10503    pub fn zend_sort(
10504        base: *mut ::std::os::raw::c_void,
10505        nmemb: usize,
10506        siz: usize,
10507        cmp: compare_func_t,
10508        swp: swap_func_t,
10509    );
10510    pub fn zend_insert_sort(
10511        base: *mut ::std::os::raw::c_void,
10512        nmemb: usize,
10513        siz: usize,
10514        cmp: compare_func_t,
10515        swp: swap_func_t,
10516    );
10517    pub static zend_empty_array: HashTable;
10518    pub fn _zend_hash_init(
10519        ht: *mut HashTable,
10520        nSize: u32,
10521        pDestructor: dtor_func_t,
10522        persistent: bool,
10523    );
10524    pub fn zend_hash_destroy(ht: *mut HashTable);
10525    pub fn zend_hash_clean(ht: *mut HashTable);
10526    pub fn zend_hash_real_init(ht: *mut HashTable, packed: bool);
10527    pub fn zend_hash_real_init_packed(ht: *mut HashTable);
10528    pub fn zend_hash_real_init_mixed(ht: *mut HashTable);
10529    pub fn zend_hash_packed_to_hash(ht: *mut HashTable);
10530    pub fn zend_hash_to_packed(ht: *mut HashTable);
10531    pub fn zend_hash_extend(ht: *mut HashTable, nSize: u32, packed: bool);
10532    pub fn zend_hash_discard(ht: *mut HashTable, nNumUsed: u32);
10533    pub fn zend_hash_packed_grow(ht: *mut HashTable);
10534    pub fn zend_hash_add_or_update(
10535        ht: *mut HashTable,
10536        key: *mut zend_string,
10537        pData: *mut zval,
10538        flag: u32,
10539    ) -> *mut zval;
10540    pub fn zend_hash_update(
10541        ht: *mut HashTable,
10542        key: *mut zend_string,
10543        pData: *mut zval,
10544    ) -> *mut zval;
10545    pub fn zend_hash_update_ind(
10546        ht: *mut HashTable,
10547        key: *mut zend_string,
10548        pData: *mut zval,
10549    ) -> *mut zval;
10550    pub fn zend_hash_add(ht: *mut HashTable, key: *mut zend_string, pData: *mut zval) -> *mut zval;
10551    pub fn zend_hash_add_new(
10552        ht: *mut HashTable,
10553        key: *mut zend_string,
10554        pData: *mut zval,
10555    ) -> *mut zval;
10556    pub fn zend_hash_str_add_or_update(
10557        ht: *mut HashTable,
10558        key: *const ::std::os::raw::c_char,
10559        len: usize,
10560        pData: *mut zval,
10561        flag: u32,
10562    ) -> *mut zval;
10563    pub fn zend_hash_str_update(
10564        ht: *mut HashTable,
10565        key: *const ::std::os::raw::c_char,
10566        len: usize,
10567        pData: *mut zval,
10568    ) -> *mut zval;
10569    pub fn zend_hash_str_update_ind(
10570        ht: *mut HashTable,
10571        key: *const ::std::os::raw::c_char,
10572        len: usize,
10573        pData: *mut zval,
10574    ) -> *mut zval;
10575    pub fn zend_hash_str_add(
10576        ht: *mut HashTable,
10577        key: *const ::std::os::raw::c_char,
10578        len: usize,
10579        pData: *mut zval,
10580    ) -> *mut zval;
10581    pub fn zend_hash_str_add_new(
10582        ht: *mut HashTable,
10583        key: *const ::std::os::raw::c_char,
10584        len: usize,
10585        pData: *mut zval,
10586    ) -> *mut zval;
10587    pub fn zend_hash_index_add_or_update(
10588        ht: *mut HashTable,
10589        h: zend_ulong,
10590        pData: *mut zval,
10591        flag: u32,
10592    ) -> *mut zval;
10593    pub fn zend_hash_index_add(ht: *mut HashTable, h: zend_ulong, pData: *mut zval) -> *mut zval;
10594    pub fn zend_hash_index_add_new(
10595        ht: *mut HashTable,
10596        h: zend_ulong,
10597        pData: *mut zval,
10598    ) -> *mut zval;
10599    pub fn zend_hash_index_update(ht: *mut HashTable, h: zend_ulong, pData: *mut zval)
10600    -> *mut zval;
10601    pub fn zend_hash_next_index_insert(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
10602    pub fn zend_hash_next_index_insert_new(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
10603    pub fn zend_hash_index_add_empty_element(ht: *mut HashTable, h: zend_ulong) -> *mut zval;
10604    pub fn zend_hash_add_empty_element(ht: *mut HashTable, key: *mut zend_string) -> *mut zval;
10605    pub fn zend_hash_str_add_empty_element(
10606        ht: *mut HashTable,
10607        key: *const ::std::os::raw::c_char,
10608        len: usize,
10609    ) -> *mut zval;
10610    pub fn zend_hash_set_bucket_key(
10611        ht: *mut HashTable,
10612        p: *mut Bucket,
10613        key: *mut zend_string,
10614    ) -> *mut zval;
10615    pub fn zend_hash_graceful_destroy(ht: *mut HashTable);
10616    pub fn zend_hash_graceful_reverse_destroy(ht: *mut HashTable);
10617    pub fn zend_hash_apply(ht: *mut HashTable, apply_func: apply_func_t);
10618    pub fn zend_hash_apply_with_argument(
10619        ht: *mut HashTable,
10620        apply_func: apply_func_arg_t,
10621        arg1: *mut ::std::os::raw::c_void,
10622    );
10623    pub fn zend_hash_apply_with_arguments(
10624        ht: *mut HashTable,
10625        apply_func: apply_func_args_t,
10626        arg1: ::std::os::raw::c_int,
10627        ...
10628    );
10629    pub fn zend_hash_reverse_apply(ht: *mut HashTable, apply_func: apply_func_t);
10630    pub fn zend_hash_del(ht: *mut HashTable, key: *mut zend_string) -> zend_result;
10631    pub fn zend_hash_del_ind(ht: *mut HashTable, key: *mut zend_string) -> zend_result;
10632    pub fn zend_hash_str_del(
10633        ht: *mut HashTable,
10634        key: *const ::std::os::raw::c_char,
10635        len: usize,
10636    ) -> zend_result;
10637    pub fn zend_hash_str_del_ind(
10638        ht: *mut HashTable,
10639        key: *const ::std::os::raw::c_char,
10640        len: usize,
10641    ) -> zend_result;
10642    pub fn zend_hash_index_del(ht: *mut HashTable, h: zend_ulong) -> zend_result;
10643    pub fn zend_hash_del_bucket(ht: *mut HashTable, p: *mut Bucket);
10644    pub fn zend_hash_packed_del_val(ht: *mut HashTable, zv: *mut zval);
10645    pub fn zend_hash_find(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
10646    pub fn zend_hash_str_find(
10647        ht: *const HashTable,
10648        key: *const ::std::os::raw::c_char,
10649        len: usize,
10650    ) -> *mut zval;
10651    pub fn zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
10652    pub fn _zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
10653    pub fn zend_hash_find_known_hash(ht: *const HashTable, key: *const zend_string) -> *mut zval;
10654    #[link_name = "zend_hash_find_ex__extern"]
10655    pub fn zend_hash_find_ex(
10656        ht: *const HashTable,
10657        key: *mut zend_string,
10658        known_hash: bool,
10659    ) -> *mut zval;
10660    pub fn zend_hash_lookup(ht: *mut HashTable, key: *mut zend_string) -> *mut zval;
10661    pub fn zend_hash_index_lookup(ht: *mut HashTable, h: zend_ulong) -> *mut zval;
10662    #[link_name = "zend_hash_exists__extern"]
10663    pub fn zend_hash_exists(ht: *const HashTable, key: *mut zend_string) -> bool;
10664    #[link_name = "zend_hash_str_exists__extern"]
10665    pub fn zend_hash_str_exists(
10666        ht: *const HashTable,
10667        str_: *const ::std::os::raw::c_char,
10668        len: usize,
10669    ) -> bool;
10670    #[link_name = "zend_hash_index_exists__extern"]
10671    pub fn zend_hash_index_exists(ht: *const HashTable, h: zend_ulong) -> bool;
10672    pub fn zend_hash_get_current_pos_ex(ht: *const HashTable, pos: HashPosition) -> HashPosition;
10673    pub fn zend_hash_get_current_pos(ht: *const HashTable) -> HashPosition;
10674    pub fn zend_hash_move_forward_ex(ht: *const HashTable, pos: *mut HashPosition) -> zend_result;
10675    pub fn zend_hash_move_backwards_ex(ht: *const HashTable, pos: *mut HashPosition)
10676    -> zend_result;
10677    pub fn zend_hash_get_current_key_ex(
10678        ht: *const HashTable,
10679        str_index: *mut *mut zend_string,
10680        num_index: *mut zend_ulong,
10681        pos: *const HashPosition,
10682    ) -> zend_hash_key_type::Type;
10683    pub fn zend_hash_get_current_key_zval_ex(
10684        ht: *const HashTable,
10685        key: *mut zval,
10686        pos: *const HashPosition,
10687    );
10688    pub fn zend_hash_get_current_key_type_ex(
10689        ht: *const HashTable,
10690        pos: *const HashPosition,
10691    ) -> zend_hash_key_type::Type;
10692    pub fn zend_hash_get_current_data_ex(
10693        ht: *const HashTable,
10694        pos: *const HashPosition,
10695    ) -> *mut zval;
10696    pub fn zend_hash_internal_pointer_reset_ex(ht: *const HashTable, pos: *mut HashPosition);
10697    pub fn zend_hash_internal_pointer_end_ex(ht: *const HashTable, pos: *mut HashPosition);
10698    #[link_name = "zend_hash_has_more_elements_ex__extern"]
10699    pub fn zend_hash_has_more_elements_ex(
10700        ht: *const HashTable,
10701        pos: *const HashPosition,
10702    ) -> zend_result;
10703    #[link_name = "zend_hash_has_more_elements__extern"]
10704    pub fn zend_hash_has_more_elements(ht: *const HashTable) -> zend_result;
10705    #[link_name = "zend_hash_move_forward__extern"]
10706    pub fn zend_hash_move_forward(ht: *mut HashTable) -> zend_result;
10707    #[link_name = "zend_hash_move_backwards__extern"]
10708    pub fn zend_hash_move_backwards(ht: *mut HashTable) -> zend_result;
10709    #[link_name = "zend_hash_get_current_key__extern"]
10710    pub fn zend_hash_get_current_key(
10711        ht: *const HashTable,
10712        str_index: *mut *mut zend_string,
10713        num_index: *mut zend_ulong,
10714    ) -> zend_hash_key_type::Type;
10715    #[link_name = "zend_hash_get_current_key_zval__extern"]
10716    pub fn zend_hash_get_current_key_zval(ht: *const HashTable, key: *mut zval);
10717    #[link_name = "zend_hash_get_current_key_type__extern"]
10718    pub fn zend_hash_get_current_key_type(ht: *const HashTable) -> zend_hash_key_type::Type;
10719    #[link_name = "zend_hash_get_current_data__extern"]
10720    pub fn zend_hash_get_current_data(ht: *const HashTable) -> *mut zval;
10721    #[link_name = "zend_hash_internal_pointer_reset__extern"]
10722    pub fn zend_hash_internal_pointer_reset(ht: *mut HashTable);
10723    #[link_name = "zend_hash_internal_pointer_end__extern"]
10724    pub fn zend_hash_internal_pointer_end(ht: *mut HashTable);
10725    pub fn zend_hash_copy(
10726        target: *mut HashTable,
10727        source: *const HashTable,
10728        pCopyConstructor: copy_ctor_func_t,
10729    );
10730    pub fn zend_hash_merge(
10731        target: *mut HashTable,
10732        source: *const HashTable,
10733        pCopyConstructor: copy_ctor_func_t,
10734        overwrite: bool,
10735    );
10736    pub fn zend_hash_merge_ex(
10737        target: *mut HashTable,
10738        source: *const HashTable,
10739        pCopyConstructor: copy_ctor_func_t,
10740        pMergeSource: merge_checker_func_t,
10741        pParam: *mut ::std::os::raw::c_void,
10742    );
10743    pub fn zend_hash_bucket_swap(p: *mut Bucket, q: *mut Bucket);
10744    pub fn zend_hash_bucket_renum_swap(p: *mut Bucket, q: *mut Bucket);
10745    pub fn zend_hash_bucket_packed_swap(p: *mut Bucket, q: *mut Bucket);
10746    pub fn zend_hash_compare(
10747        ht1: *mut HashTable,
10748        ht2: *mut HashTable,
10749        compar: compare_func_t,
10750        ordered: bool,
10751    ) -> ::std::os::raw::c_int;
10752    pub fn zend_hash_sort_ex(
10753        ht: *mut HashTable,
10754        sort_func: sort_func_t,
10755        compare_func: bucket_compare_func_t,
10756        renumber: bool,
10757    );
10758    pub fn zend_array_sort_ex(
10759        ht: *mut HashTable,
10760        sort_func: sort_func_t,
10761        compare_func: bucket_compare_func_t,
10762        renumber: bool,
10763    );
10764    pub fn zend_hash_minmax(ht: *const HashTable, compar: compare_func_t, flag: u32) -> *mut zval;
10765    #[link_name = "zend_hash_sort__extern"]
10766    pub fn zend_hash_sort(ht: *mut HashTable, compare_func: bucket_compare_func_t, renumber: bool);
10767    #[link_name = "zend_array_sort__extern"]
10768    pub fn zend_array_sort(ht: *mut HashTable, compare_func: bucket_compare_func_t, renumber: bool);
10769    #[link_name = "zend_hash_num_elements__extern"]
10770    pub fn zend_hash_num_elements(ht: *const HashTable) -> u32;
10771    #[link_name = "zend_hash_next_free_element__extern"]
10772    pub fn zend_hash_next_free_element(ht: *const HashTable) -> zend_long;
10773    pub fn zend_hash_rehash(ht: *mut HashTable);
10774    pub fn _zend_new_array_0() -> *mut HashTable;
10775    pub fn _zend_new_array(size: u32) -> *mut HashTable;
10776    pub fn zend_new_pair(val1: *const zval, val2: *const zval) -> *mut HashTable;
10777    pub fn zend_array_count(ht: *mut HashTable) -> u32;
10778    pub fn zend_array_dup(source: *const HashTable) -> *mut HashTable;
10779    pub fn zend_array_destroy(ht: *mut HashTable);
10780    pub fn zend_array_to_list(source: *const HashTable) -> *mut HashTable;
10781    pub fn zend_symtable_clean(ht: *mut HashTable);
10782    pub fn zend_symtable_to_proptable(ht: *mut HashTable) -> *mut HashTable;
10783    pub fn zend_proptable_to_symtable(ht: *mut HashTable, always_duplicate: bool)
10784    -> *mut HashTable;
10785    pub fn _zend_handle_numeric_str_ex(
10786        key: *const ::std::os::raw::c_char,
10787        length: usize,
10788        idx: *mut zend_ulong,
10789    ) -> bool;
10790    pub fn zend_hash_iterator_add(ht: *mut HashTable, pos: HashPosition) -> u32;
10791    pub fn zend_hash_iterator_pos(idx: u32, ht: *mut HashTable) -> HashPosition;
10792    pub fn zend_hash_iterator_pos_ex(idx: u32, array: *mut zval) -> HashPosition;
10793    pub fn zend_hash_iterator_del(idx: u32);
10794    pub fn zend_hash_iterators_lower_pos(ht: *const HashTable, start: HashPosition)
10795    -> HashPosition;
10796    pub fn _zend_hash_iterators_update(ht: *const HashTable, from: HashPosition, to: HashPosition);
10797    pub fn zend_hash_iterators_advance(ht: *const HashTable, step: HashPosition);
10798    #[link_name = "zend_hash_iterators_update__extern"]
10799    pub fn zend_hash_iterators_update(ht: *const HashTable, from: HashPosition, to: HashPosition);
10800    #[link_name = "zend_array_release__extern"]
10801    pub fn zend_array_release(array: *mut zend_array);
10802    #[link_name = "zend_hash_release__extern"]
10803    pub fn zend_hash_release(array: *mut zend_array);
10804    #[link_name = "_zend_handle_numeric_str__extern"]
10805    pub fn _zend_handle_numeric_str(
10806        key: *const ::std::os::raw::c_char,
10807        length: usize,
10808        idx: *mut zend_ulong,
10809    ) -> bool;
10810    #[link_name = "zend_hash_find_ind__extern"]
10811    pub fn zend_hash_find_ind(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
10812    #[link_name = "zend_hash_find_ex_ind__extern"]
10813    pub fn zend_hash_find_ex_ind(
10814        ht: *const HashTable,
10815        key: *mut zend_string,
10816        known_hash: bool,
10817    ) -> *mut zval;
10818    #[link_name = "zend_hash_exists_ind__extern"]
10819    pub fn zend_hash_exists_ind(ht: *const HashTable, key: *mut zend_string) -> bool;
10820    #[link_name = "zend_hash_str_find_ind__extern"]
10821    pub fn zend_hash_str_find_ind(
10822        ht: *const HashTable,
10823        str_: *const ::std::os::raw::c_char,
10824        len: usize,
10825    ) -> *mut zval;
10826    #[link_name = "zend_hash_str_exists_ind__extern"]
10827    pub fn zend_hash_str_exists_ind(
10828        ht: *const HashTable,
10829        str_: *const ::std::os::raw::c_char,
10830        len: usize,
10831    ) -> bool;
10832    #[link_name = "zend_symtable_add_new__extern"]
10833    pub fn zend_symtable_add_new(
10834        ht: *mut HashTable,
10835        key: *mut zend_string,
10836        pData: *mut zval,
10837    ) -> *mut zval;
10838    #[link_name = "zend_symtable_update__extern"]
10839    pub fn zend_symtable_update(
10840        ht: *mut HashTable,
10841        key: *mut zend_string,
10842        pData: *mut zval,
10843    ) -> *mut zval;
10844    #[link_name = "zend_symtable_update_ind__extern"]
10845    pub fn zend_symtable_update_ind(
10846        ht: *mut HashTable,
10847        key: *mut zend_string,
10848        pData: *mut zval,
10849    ) -> *mut zval;
10850    #[link_name = "zend_symtable_del__extern"]
10851    pub fn zend_symtable_del(ht: *mut HashTable, key: *mut zend_string) -> zend_result;
10852    #[link_name = "zend_symtable_del_ind__extern"]
10853    pub fn zend_symtable_del_ind(ht: *mut HashTable, key: *mut zend_string) -> zend_result;
10854    #[link_name = "zend_symtable_find__extern"]
10855    pub fn zend_symtable_find(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
10856    #[link_name = "zend_symtable_find_ind__extern"]
10857    pub fn zend_symtable_find_ind(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
10858    #[link_name = "zend_symtable_exists__extern"]
10859    pub fn zend_symtable_exists(ht: *const HashTable, key: *mut zend_string) -> bool;
10860    #[link_name = "zend_symtable_exists_ind__extern"]
10861    pub fn zend_symtable_exists_ind(ht: *const HashTable, key: *mut zend_string) -> bool;
10862    #[link_name = "zend_symtable_str_update__extern"]
10863    pub fn zend_symtable_str_update(
10864        ht: *mut HashTable,
10865        str_: *const ::std::os::raw::c_char,
10866        len: usize,
10867        pData: *mut zval,
10868    ) -> *mut zval;
10869    #[link_name = "zend_symtable_str_update_ind__extern"]
10870    pub fn zend_symtable_str_update_ind(
10871        ht: *mut HashTable,
10872        str_: *const ::std::os::raw::c_char,
10873        len: usize,
10874        pData: *mut zval,
10875    ) -> *mut zval;
10876    #[link_name = "zend_symtable_str_del__extern"]
10877    pub fn zend_symtable_str_del(
10878        ht: *mut HashTable,
10879        str_: *const ::std::os::raw::c_char,
10880        len: usize,
10881    ) -> zend_result;
10882    #[link_name = "zend_symtable_str_del_ind__extern"]
10883    pub fn zend_symtable_str_del_ind(
10884        ht: *mut HashTable,
10885        str_: *const ::std::os::raw::c_char,
10886        len: usize,
10887    ) -> zend_result;
10888    #[link_name = "zend_symtable_str_find__extern"]
10889    pub fn zend_symtable_str_find(
10890        ht: *mut HashTable,
10891        str_: *const ::std::os::raw::c_char,
10892        len: usize,
10893    ) -> *mut zval;
10894    #[link_name = "zend_symtable_str_exists__extern"]
10895    pub fn zend_symtable_str_exists(
10896        ht: *mut HashTable,
10897        str_: *const ::std::os::raw::c_char,
10898        len: usize,
10899    ) -> bool;
10900    #[link_name = "zend_hash_add_ptr__extern"]
10901    pub fn zend_hash_add_ptr(
10902        ht: *mut HashTable,
10903        key: *mut zend_string,
10904        pData: *mut ::std::os::raw::c_void,
10905    ) -> *mut ::std::os::raw::c_void;
10906    #[link_name = "zend_hash_add_new_ptr__extern"]
10907    pub fn zend_hash_add_new_ptr(
10908        ht: *mut HashTable,
10909        key: *mut zend_string,
10910        pData: *mut ::std::os::raw::c_void,
10911    ) -> *mut ::std::os::raw::c_void;
10912    #[link_name = "zend_hash_str_add_ptr__extern"]
10913    pub fn zend_hash_str_add_ptr(
10914        ht: *mut HashTable,
10915        str_: *const ::std::os::raw::c_char,
10916        len: usize,
10917        pData: *mut ::std::os::raw::c_void,
10918    ) -> *mut ::std::os::raw::c_void;
10919    #[link_name = "zend_hash_str_add_new_ptr__extern"]
10920    pub fn zend_hash_str_add_new_ptr(
10921        ht: *mut HashTable,
10922        str_: *const ::std::os::raw::c_char,
10923        len: usize,
10924        pData: *mut ::std::os::raw::c_void,
10925    ) -> *mut ::std::os::raw::c_void;
10926    #[link_name = "zend_hash_update_ptr__extern"]
10927    pub fn zend_hash_update_ptr(
10928        ht: *mut HashTable,
10929        key: *mut zend_string,
10930        pData: *mut ::std::os::raw::c_void,
10931    ) -> *mut ::std::os::raw::c_void;
10932    #[link_name = "zend_hash_str_update_ptr__extern"]
10933    pub fn zend_hash_str_update_ptr(
10934        ht: *mut HashTable,
10935        str_: *const ::std::os::raw::c_char,
10936        len: usize,
10937        pData: *mut ::std::os::raw::c_void,
10938    ) -> *mut ::std::os::raw::c_void;
10939    #[link_name = "zend_hash_add_mem__extern"]
10940    pub fn zend_hash_add_mem(
10941        ht: *mut HashTable,
10942        key: *mut zend_string,
10943        pData: *mut ::std::os::raw::c_void,
10944        size: usize,
10945    ) -> *mut ::std::os::raw::c_void;
10946    #[link_name = "zend_hash_add_new_mem__extern"]
10947    pub fn zend_hash_add_new_mem(
10948        ht: *mut HashTable,
10949        key: *mut zend_string,
10950        pData: *mut ::std::os::raw::c_void,
10951        size: usize,
10952    ) -> *mut ::std::os::raw::c_void;
10953    #[link_name = "zend_hash_str_add_mem__extern"]
10954    pub fn zend_hash_str_add_mem(
10955        ht: *mut HashTable,
10956        str_: *const ::std::os::raw::c_char,
10957        len: usize,
10958        pData: *mut ::std::os::raw::c_void,
10959        size: usize,
10960    ) -> *mut ::std::os::raw::c_void;
10961    #[link_name = "zend_hash_str_add_new_mem__extern"]
10962    pub fn zend_hash_str_add_new_mem(
10963        ht: *mut HashTable,
10964        str_: *const ::std::os::raw::c_char,
10965        len: usize,
10966        pData: *mut ::std::os::raw::c_void,
10967        size: usize,
10968    ) -> *mut ::std::os::raw::c_void;
10969    #[link_name = "zend_hash_update_mem__extern"]
10970    pub fn zend_hash_update_mem(
10971        ht: *mut HashTable,
10972        key: *mut zend_string,
10973        pData: *mut ::std::os::raw::c_void,
10974        size: usize,
10975    ) -> *mut ::std::os::raw::c_void;
10976    #[link_name = "zend_hash_str_update_mem__extern"]
10977    pub fn zend_hash_str_update_mem(
10978        ht: *mut HashTable,
10979        str_: *const ::std::os::raw::c_char,
10980        len: usize,
10981        pData: *mut ::std::os::raw::c_void,
10982        size: usize,
10983    ) -> *mut ::std::os::raw::c_void;
10984    #[link_name = "zend_hash_index_add_ptr__extern"]
10985    pub fn zend_hash_index_add_ptr(
10986        ht: *mut HashTable,
10987        h: zend_ulong,
10988        pData: *mut ::std::os::raw::c_void,
10989    ) -> *mut ::std::os::raw::c_void;
10990    #[link_name = "zend_hash_index_add_new_ptr__extern"]
10991    pub fn zend_hash_index_add_new_ptr(
10992        ht: *mut HashTable,
10993        h: zend_ulong,
10994        pData: *mut ::std::os::raw::c_void,
10995    ) -> *mut ::std::os::raw::c_void;
10996    #[link_name = "zend_hash_index_update_ptr__extern"]
10997    pub fn zend_hash_index_update_ptr(
10998        ht: *mut HashTable,
10999        h: zend_ulong,
11000        pData: *mut ::std::os::raw::c_void,
11001    ) -> *mut ::std::os::raw::c_void;
11002    #[link_name = "zend_hash_index_add_mem__extern"]
11003    pub fn zend_hash_index_add_mem(
11004        ht: *mut HashTable,
11005        h: zend_ulong,
11006        pData: *mut ::std::os::raw::c_void,
11007        size: usize,
11008    ) -> *mut ::std::os::raw::c_void;
11009    #[link_name = "zend_hash_next_index_insert_ptr__extern"]
11010    pub fn zend_hash_next_index_insert_ptr(
11011        ht: *mut HashTable,
11012        pData: *mut ::std::os::raw::c_void,
11013    ) -> *mut ::std::os::raw::c_void;
11014    #[link_name = "zend_hash_index_update_mem__extern"]
11015    pub fn zend_hash_index_update_mem(
11016        ht: *mut HashTable,
11017        h: zend_ulong,
11018        pData: *mut ::std::os::raw::c_void,
11019        size: usize,
11020    ) -> *mut ::std::os::raw::c_void;
11021    #[link_name = "zend_hash_next_index_insert_mem__extern"]
11022    pub fn zend_hash_next_index_insert_mem(
11023        ht: *mut HashTable,
11024        pData: *mut ::std::os::raw::c_void,
11025        size: usize,
11026    ) -> *mut ::std::os::raw::c_void;
11027    #[link_name = "zend_hash_find_ptr__extern"]
11028    pub fn zend_hash_find_ptr(
11029        ht: *const HashTable,
11030        key: *mut zend_string,
11031    ) -> *mut ::std::os::raw::c_void;
11032    #[link_name = "zend_hash_find_ex_ptr__extern"]
11033    pub fn zend_hash_find_ex_ptr(
11034        ht: *const HashTable,
11035        key: *mut zend_string,
11036        known_hash: bool,
11037    ) -> *mut ::std::os::raw::c_void;
11038    #[link_name = "zend_hash_str_find_ptr__extern"]
11039    pub fn zend_hash_str_find_ptr(
11040        ht: *const HashTable,
11041        str_: *const ::std::os::raw::c_char,
11042        len: usize,
11043    ) -> *mut ::std::os::raw::c_void;
11044    pub fn zend_hash_str_find_ptr_lc(
11045        ht: *const HashTable,
11046        str_: *const ::std::os::raw::c_char,
11047        len: usize,
11048    ) -> *mut ::std::os::raw::c_void;
11049    pub fn zend_hash_find_ptr_lc(
11050        ht: *const HashTable,
11051        key: *mut zend_string,
11052    ) -> *mut ::std::os::raw::c_void;
11053    #[link_name = "zend_hash_index_find_ptr__extern"]
11054    pub fn zend_hash_index_find_ptr(
11055        ht: *const HashTable,
11056        h: zend_ulong,
11057    ) -> *mut ::std::os::raw::c_void;
11058    #[link_name = "zend_hash_index_find_deref__extern"]
11059    pub fn zend_hash_index_find_deref(ht: *const HashTable, h: zend_ulong) -> *mut zval;
11060    #[link_name = "zend_hash_find_deref__extern"]
11061    pub fn zend_hash_find_deref(ht: *const HashTable, str_: *mut zend_string) -> *mut zval;
11062    #[link_name = "zend_hash_str_find_deref__extern"]
11063    pub fn zend_hash_str_find_deref(
11064        ht: *const HashTable,
11065        str_: *const ::std::os::raw::c_char,
11066        len: usize,
11067    ) -> *mut zval;
11068    #[link_name = "zend_symtable_str_find_ptr__extern"]
11069    pub fn zend_symtable_str_find_ptr(
11070        ht: *const HashTable,
11071        str_: *const ::std::os::raw::c_char,
11072        len: usize,
11073    ) -> *mut ::std::os::raw::c_void;
11074    #[link_name = "zend_hash_get_current_data_ptr_ex__extern"]
11075    pub fn zend_hash_get_current_data_ptr_ex(
11076        ht: *const HashTable,
11077        pos: *const HashPosition,
11078    ) -> *mut ::std::os::raw::c_void;
11079    #[link_name = "zend_array_is_list__extern"]
11080    pub fn zend_array_is_list(array: *const zend_array) -> bool;
11081    #[link_name = "_zend_hash_append_ex__extern"]
11082    pub fn _zend_hash_append_ex(
11083        ht: *mut HashTable,
11084        key: *mut zend_string,
11085        zv: *mut zval,
11086        key_guaranteed_interned: bool,
11087    ) -> *mut zval;
11088    #[link_name = "_zend_hash_append__extern"]
11089    pub fn _zend_hash_append(ht: *mut HashTable, key: *mut zend_string, zv: *mut zval)
11090    -> *mut zval;
11091    #[link_name = "_zend_hash_append_ptr_ex__extern"]
11092    pub fn _zend_hash_append_ptr_ex(
11093        ht: *mut HashTable,
11094        key: *mut zend_string,
11095        ptr: *mut ::std::os::raw::c_void,
11096        key_guaranteed_interned: bool,
11097    ) -> *mut zval;
11098    #[link_name = "_zend_hash_append_ptr__extern"]
11099    pub fn _zend_hash_append_ptr(
11100        ht: *mut HashTable,
11101        key: *mut zend_string,
11102        ptr: *mut ::std::os::raw::c_void,
11103    ) -> *mut zval;
11104    #[link_name = "_zend_hash_append_ind__extern"]
11105    pub fn _zend_hash_append_ind(ht: *mut HashTable, key: *mut zend_string, ptr: *mut zval);
11106    pub static mut zend_ast_process: zend_ast_process_t;
11107    pub fn zend_ast_create_zval_with_lineno(zv: *const zval, lineno: u32) -> *mut zend_ast;
11108    pub fn zend_ast_create_zval_ex(zv: *const zval, attr: zend_ast_attr) -> *mut zend_ast;
11109    pub fn zend_ast_create_zval(zv: *const zval) -> *mut zend_ast;
11110    pub fn zend_ast_create_zval_from_str(str_: *mut zend_string) -> *mut zend_ast;
11111    pub fn zend_ast_create_zval_from_long(lval: zend_long) -> *mut zend_ast;
11112    pub fn zend_ast_create_constant(name: *mut zend_string, attr: zend_ast_attr) -> *mut zend_ast;
11113    pub fn zend_ast_create_class_const_or_name(
11114        class_name: *mut zend_ast,
11115        name: *mut zend_ast,
11116    ) -> *mut zend_ast;
11117    pub fn zend_ast_create_op_array(op_array: *mut zend_op_array) -> *mut zend_ast;
11118    pub fn zend_ast_create_0(kind: zend_ast_kind) -> *mut zend_ast;
11119    pub fn zend_ast_create_1(kind: zend_ast_kind, child: *mut zend_ast) -> *mut zend_ast;
11120    pub fn zend_ast_create_2(
11121        kind: zend_ast_kind,
11122        child1: *mut zend_ast,
11123        child2: *mut zend_ast,
11124    ) -> *mut zend_ast;
11125    pub fn zend_ast_create_3(
11126        kind: zend_ast_kind,
11127        child1: *mut zend_ast,
11128        child2: *mut zend_ast,
11129        child3: *mut zend_ast,
11130    ) -> *mut zend_ast;
11131    pub fn zend_ast_create_4(
11132        kind: zend_ast_kind,
11133        child1: *mut zend_ast,
11134        child2: *mut zend_ast,
11135        child3: *mut zend_ast,
11136        child4: *mut zend_ast,
11137    ) -> *mut zend_ast;
11138    pub fn zend_ast_create_5(
11139        kind: zend_ast_kind,
11140        child1: *mut zend_ast,
11141        child2: *mut zend_ast,
11142        child3: *mut zend_ast,
11143        child4: *mut zend_ast,
11144        child5: *mut zend_ast,
11145    ) -> *mut zend_ast;
11146    pub fn zend_ast_create_va(
11147        kind: zend_ast_kind,
11148        attr: zend_ast_attr,
11149        va: *mut va_list,
11150    ) -> *mut zend_ast;
11151    pub fn zend_ast_create_n(kind: ::std::os::raw::c_uint, ...) -> *mut zend_ast;
11152    pub fn zend_ast_create_ex_n(
11153        kind: zend_ast_kind,
11154        attr: ::std::os::raw::c_uint,
11155        ...
11156    ) -> *mut zend_ast;
11157    #[link_name = "zend_ast_create_ex_0__extern"]
11158    pub fn zend_ast_create_ex_0(kind: zend_ast_kind, attr: zend_ast_attr) -> *mut zend_ast;
11159    #[link_name = "zend_ast_create_ex_1__extern"]
11160    pub fn zend_ast_create_ex_1(
11161        kind: zend_ast_kind,
11162        attr: zend_ast_attr,
11163        child: *mut zend_ast,
11164    ) -> *mut zend_ast;
11165    #[link_name = "zend_ast_create_ex_2__extern"]
11166    pub fn zend_ast_create_ex_2(
11167        kind: zend_ast_kind,
11168        attr: zend_ast_attr,
11169        child1: *mut zend_ast,
11170        child2: *mut zend_ast,
11171    ) -> *mut zend_ast;
11172    #[link_name = "zend_ast_create_ex_3__extern"]
11173    pub fn zend_ast_create_ex_3(
11174        kind: zend_ast_kind,
11175        attr: zend_ast_attr,
11176        child1: *mut zend_ast,
11177        child2: *mut zend_ast,
11178        child3: *mut zend_ast,
11179    ) -> *mut zend_ast;
11180    #[link_name = "zend_ast_create_ex_4__extern"]
11181    pub fn zend_ast_create_ex_4(
11182        kind: zend_ast_kind,
11183        attr: zend_ast_attr,
11184        child1: *mut zend_ast,
11185        child2: *mut zend_ast,
11186        child3: *mut zend_ast,
11187        child4: *mut zend_ast,
11188    ) -> *mut zend_ast;
11189    #[link_name = "zend_ast_create_ex_5__extern"]
11190    pub fn zend_ast_create_ex_5(
11191        kind: zend_ast_kind,
11192        attr: zend_ast_attr,
11193        child1: *mut zend_ast,
11194        child2: *mut zend_ast,
11195        child3: *mut zend_ast,
11196        child4: *mut zend_ast,
11197        child5: *mut zend_ast,
11198    ) -> *mut zend_ast;
11199    pub fn zend_ast_create_list_0(kind: zend_ast_kind) -> *mut zend_ast;
11200    pub fn zend_ast_create_list_1(kind: zend_ast_kind, child: *mut zend_ast) -> *mut zend_ast;
11201    pub fn zend_ast_create_list_2(
11202        kind: zend_ast_kind,
11203        child1: *mut zend_ast,
11204        child2: *mut zend_ast,
11205    ) -> *mut zend_ast;
11206    pub fn zend_ast_list_add(list: *mut zend_ast, op: *mut zend_ast) -> *mut zend_ast;
11207    pub fn zend_ast_create_decl(
11208        kind: zend_ast_kind,
11209        flags: u32,
11210        start_lineno: u32,
11211        doc_comment: *mut zend_string,
11212        name: *mut zend_string,
11213        child0: *mut zend_ast,
11214        child1: *mut zend_ast,
11215        child2: *mut zend_ast,
11216        child3: *mut zend_ast,
11217        child4: *mut zend_ast,
11218    ) -> *mut zend_ast;
11219    pub fn zend_ast_create_fcc() -> *mut zend_ast;
11220    pub fn zend_ast_evaluate(
11221        result: *mut zval,
11222        ast: *mut zend_ast,
11223        scope: *mut zend_class_entry,
11224    ) -> zend_result;
11225    pub fn zend_ast_evaluate_ex(
11226        result: *mut zval,
11227        ast: *mut zend_ast,
11228        scope: *mut zend_class_entry,
11229        short_circuited_ptr: *mut bool,
11230        ctx: *mut zend_ast_evaluate_ctx,
11231    ) -> zend_result;
11232    pub fn zend_ast_export(
11233        prefix: *const ::std::os::raw::c_char,
11234        ast: *mut zend_ast,
11235        suffix: *const ::std::os::raw::c_char,
11236    ) -> *mut zend_string;
11237    pub fn zend_ast_copy(ast: *mut zend_ast) -> *mut zend_ast_ref;
11238    pub fn zend_ast_destroy(ast: *mut zend_ast);
11239    pub fn zend_ast_ref_destroy(ast: *mut zend_ast_ref);
11240    pub fn zend_ast_apply(
11241        ast: *mut zend_ast,
11242        fn_: zend_ast_apply_func,
11243        context: *mut ::std::os::raw::c_void,
11244    );
11245    #[link_name = "zend_ast_size__extern"]
11246    pub fn zend_ast_size(children: u32) -> usize;
11247    #[link_name = "zend_ast_is_special__extern"]
11248    pub fn zend_ast_is_special(ast: *const zend_ast) -> bool;
11249    #[link_name = "zend_ast_is_decl__extern"]
11250    pub fn zend_ast_is_decl(ast: *const zend_ast) -> bool;
11251    #[link_name = "zend_ast_is_list__extern"]
11252    pub fn zend_ast_is_list(ast: *const zend_ast) -> bool;
11253    #[link_name = "zend_ast_get_list__extern"]
11254    pub fn zend_ast_get_list(ast: *mut zend_ast) -> *mut zend_ast_list;
11255    #[link_name = "zend_ast_get_zval__extern"]
11256    pub fn zend_ast_get_zval(ast: *mut zend_ast) -> *mut zval;
11257    #[link_name = "zend_ast_get_str__extern"]
11258    pub fn zend_ast_get_str(ast: *mut zend_ast) -> *mut zend_string;
11259    #[link_name = "zend_ast_get_op_array__extern"]
11260    pub fn zend_ast_get_op_array(ast: *mut zend_ast) -> *mut zend_ast_op_array;
11261    #[link_name = "zend_ast_get_constant_name__extern"]
11262    pub fn zend_ast_get_constant_name(ast: *mut zend_ast) -> *mut zend_string;
11263    #[link_name = "zend_ast_get_num_children__extern"]
11264    pub fn zend_ast_get_num_children(ast: *const zend_ast) -> u32;
11265    #[link_name = "zend_ast_get_lineno__extern"]
11266    pub fn zend_ast_get_lineno(ast: *mut zend_ast) -> u32;
11267    #[link_name = "zend_ast_create_binary_op__extern"]
11268    pub fn zend_ast_create_binary_op(
11269        opcode: u32,
11270        op0: *mut zend_ast,
11271        op1: *mut zend_ast,
11272    ) -> *mut zend_ast;
11273    pub fn zend_ast_create_concat_op(op0: *mut zend_ast, op1: *mut zend_ast) -> *mut zend_ast;
11274    #[link_name = "zend_ast_create_assign_op__extern"]
11275    pub fn zend_ast_create_assign_op(
11276        opcode: u32,
11277        op0: *mut zend_ast,
11278        op1: *mut zend_ast,
11279    ) -> *mut zend_ast;
11280    #[link_name = "zend_ast_create_cast__extern"]
11281    pub fn zend_ast_create_cast(type_: u32, op0: *mut zend_ast) -> *mut zend_ast;
11282    #[link_name = "zend_ast_list_rtrim__extern"]
11283    pub fn zend_ast_list_rtrim(ast: *mut zend_ast) -> *mut zend_ast;
11284    pub fn zend_ast_with_attributes(ast: *mut zend_ast, attr: *mut zend_ast) -> *mut zend_ast;
11285    pub fn rc_dtor_func(p: *mut zend_refcounted);
11286    pub fn zval_copy_ctor_func(zvalue: *mut zval);
11287    #[link_name = "zval_ptr_dtor_nogc__extern"]
11288    pub fn zval_ptr_dtor_nogc(zval_ptr: *mut zval);
11289    #[link_name = "i_zval_ptr_dtor__extern"]
11290    pub fn i_zval_ptr_dtor(zval_ptr: *mut zval);
11291    #[link_name = "zval_copy_ctor__extern"]
11292    pub fn zval_copy_ctor(zvalue: *mut zval);
11293    #[link_name = "zval_opt_copy_ctor__extern"]
11294    pub fn zval_opt_copy_ctor(zvalue: *mut zval);
11295    #[link_name = "zval_ptr_dtor_str__extern"]
11296    pub fn zval_ptr_dtor_str(zval_ptr: *mut zval);
11297    pub fn zval_ptr_dtor(zval_ptr: *mut zval);
11298    pub fn zval_ptr_safe_dtor(zval_ptr: *mut zval);
11299    pub fn zval_internal_ptr_dtor(zvalue: *mut zval);
11300    pub fn zval_add_ref(p: *mut zval);
11301    pub fn zend_iterator_unwrap(array_ptr: *mut zval) -> *mut zend_object_iterator;
11302    pub fn zend_iterator_init(iter: *mut zend_object_iterator);
11303    pub fn zend_iterator_dtor(iter: *mut zend_object_iterator);
11304    pub fn zend_register_iterator_wrapper();
11305    pub fn zend_stream_init_fp(
11306        handle: *mut zend_file_handle,
11307        fp: *mut FILE,
11308        filename: *const ::std::os::raw::c_char,
11309    );
11310    pub fn zend_stream_init_filename(
11311        handle: *mut zend_file_handle,
11312        filename: *const ::std::os::raw::c_char,
11313    );
11314    pub fn zend_stream_init_filename_ex(handle: *mut zend_file_handle, filename: *mut zend_string);
11315    pub fn zend_stream_open(handle: *mut zend_file_handle) -> zend_result;
11316    pub fn zend_stream_fixup(
11317        file_handle: *mut zend_file_handle,
11318        buf: *mut *mut ::std::os::raw::c_char,
11319        len: *mut usize,
11320    ) -> zend_result;
11321    pub fn zend_destroy_file_handle(file_handle: *mut zend_file_handle);
11322    pub fn zend_stream_init();
11323    pub fn zend_stream_shutdown();
11324    pub static mut zend_signal_globals: zend_signal_globals_t;
11325    pub fn zend_signal_handler_unblock();
11326    pub fn zend_signal_activate();
11327    pub fn zend_signal_deactivate();
11328    pub fn zend_signal_startup();
11329    pub fn zend_signal_init();
11330    pub fn zend_signal(
11331        signo: ::std::os::raw::c_int,
11332        handler: ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>,
11333    );
11334    pub fn zend_sigaction(
11335        signo: ::std::os::raw::c_int,
11336        act: *const sigaction,
11337        oldact: *mut sigaction,
11338    );
11339    pub fn zend_startup(utility_functions: *mut zend_utility_functions);
11340    pub fn zend_shutdown();
11341    pub fn zend_register_standard_ini_entries();
11342    pub fn zend_post_startup() -> zend_result;
11343    pub fn zend_set_utility_values(utility_values: *mut zend_utility_values);
11344    pub fn zend_unload_modules();
11345    pub fn _zend_bailout(filename: *const ::std::os::raw::c_char, lineno: u32) -> !;
11346    pub fn zend_get_page_size() -> usize;
11347    pub fn zend_vspprintf(
11348        pbuf: *mut *mut ::std::os::raw::c_char,
11349        max_len: usize,
11350        format: *const ::std::os::raw::c_char,
11351        ap: *mut __va_list_tag,
11352    ) -> usize;
11353    pub fn zend_spprintf(
11354        message: *mut *mut ::std::os::raw::c_char,
11355        max_len: usize,
11356        format: *const ::std::os::raw::c_char,
11357        ...
11358    ) -> usize;
11359    pub fn zend_vstrpprintf(
11360        max_len: usize,
11361        format: *const ::std::os::raw::c_char,
11362        ap: *mut __va_list_tag,
11363    ) -> *mut zend_string;
11364    pub fn zend_strpprintf(
11365        max_len: usize,
11366        format: *const ::std::os::raw::c_char,
11367        ...
11368    ) -> *mut zend_string;
11369    pub fn zend_spprintf_unchecked(
11370        message: *mut *mut ::std::os::raw::c_char,
11371        max_len: usize,
11372        format: *const ::std::os::raw::c_char,
11373        ...
11374    ) -> usize;
11375    pub fn zend_strpprintf_unchecked(
11376        max_len: usize,
11377        format: *const ::std::os::raw::c_char,
11378        ...
11379    ) -> *mut zend_string;
11380    pub fn get_zend_version() -> *const ::std::os::raw::c_char;
11381    pub fn zend_make_printable_zval(expr: *mut zval, expr_copy: *mut zval) -> bool;
11382    pub fn zend_print_zval(expr: *mut zval, indent: ::std::os::raw::c_int) -> usize;
11383    pub fn zend_print_zval_r(expr: *mut zval, indent: ::std::os::raw::c_int);
11384    pub fn zend_print_zval_r_to_str(
11385        expr: *mut zval,
11386        indent: ::std::os::raw::c_int,
11387    ) -> *mut zend_string;
11388    pub fn zend_print_flat_zval_r(expr: *mut zval);
11389    pub fn zend_print_flat_zval_r_to_buf(str_: *mut smart_str, expr: *mut zval);
11390    #[link_name = "zend_print_variable__extern"]
11391    pub fn zend_print_variable(var: *mut zval) -> usize;
11392    pub fn zend_output_debug_string(
11393        trigger_break: bool,
11394        format: *const ::std::os::raw::c_char,
11395        ...
11396    );
11397    pub fn zend_activate();
11398    pub fn zend_deactivate();
11399    pub fn zend_call_destructors();
11400    pub fn zend_activate_modules();
11401    pub fn zend_deactivate_modules();
11402    pub fn zend_post_deactivate_modules();
11403    pub fn free_estring(str_p: *mut *mut ::std::os::raw::c_char);
11404    pub static mut zend_printf: ::std::option::Option<
11405        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> usize,
11406    >;
11407    pub static mut zend_write: zend_write_func_t;
11408    pub static mut zend_fopen: ::std::option::Option<
11409        unsafe extern "C" fn(
11410            filename: *mut zend_string,
11411            opened_path: *mut *mut zend_string,
11412        ) -> *mut FILE,
11413    >;
11414    pub static mut zend_ticks_function:
11415        ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>;
11416    pub static mut zend_interrupt_function:
11417        ::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
11418    pub static mut zend_error_cb: ::std::option::Option<
11419        unsafe extern "C" fn(
11420            type_: ::std::os::raw::c_int,
11421            error_filename: *mut zend_string,
11422            error_lineno: u32,
11423            message: *mut zend_string,
11424        ),
11425    >;
11426    pub static mut zend_on_timeout:
11427        ::std::option::Option<unsafe extern "C" fn(seconds: ::std::os::raw::c_int)>;
11428    pub static mut zend_stream_open_function:
11429        ::std::option::Option<unsafe extern "C" fn(handle: *mut zend_file_handle) -> zend_result>;
11430    pub static mut zend_printf_to_smart_string: ::std::option::Option<
11431        unsafe extern "C" fn(
11432            buf: *mut smart_string,
11433            format: *const ::std::os::raw::c_char,
11434            ap: *mut __va_list_tag,
11435        ),
11436    >;
11437    pub static mut zend_printf_to_smart_str: ::std::option::Option<
11438        unsafe extern "C" fn(
11439            buf: *mut smart_str,
11440            format: *const ::std::os::raw::c_char,
11441            ap: *mut __va_list_tag,
11442        ),
11443    >;
11444    pub static mut zend_getenv: ::std::option::Option<
11445        unsafe extern "C" fn(
11446            name: *const ::std::os::raw::c_char,
11447            name_len: usize,
11448        ) -> *mut ::std::os::raw::c_char,
11449    >;
11450    pub static mut zend_resolve_path:
11451        ::std::option::Option<unsafe extern "C" fn(filename: *mut zend_string) -> *mut zend_string>;
11452    pub static mut zend_random_bytes: ::std::option::Option<
11453        unsafe extern "C" fn(
11454            bytes: *mut ::std::os::raw::c_void,
11455            size: usize,
11456            errstr: *mut ::std::os::raw::c_char,
11457            errstr_size: usize,
11458        ) -> zend_result,
11459    >;
11460    pub static mut zend_random_bytes_insecure: ::std::option::Option<
11461        unsafe extern "C" fn(
11462            state: *mut zend_random_bytes_insecure_state,
11463            bytes: *mut ::std::os::raw::c_void,
11464            size: usize,
11465        ),
11466    >;
11467    pub static mut zend_post_startup_cb:
11468        ::std::option::Option<unsafe extern "C" fn() -> zend_result>;
11469    pub static mut zend_post_shutdown_cb: ::std::option::Option<unsafe extern "C" fn()>;
11470    pub static mut zend_accel_schedule_restart_hook:
11471        ::std::option::Option<unsafe extern "C" fn(reason: ::std::os::raw::c_int)>;
11472    pub fn zend_error(type_: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
11473    pub fn zend_error_noreturn(
11474        type_: ::std::os::raw::c_int,
11475        format: *const ::std::os::raw::c_char,
11476        ...
11477    ) -> !;
11478    pub fn zend_error_noreturn_unchecked(
11479        type_: ::std::os::raw::c_int,
11480        format: *const ::std::os::raw::c_char,
11481        ...
11482    ) -> !;
11483    pub fn zend_error_unchecked(
11484        type_: ::std::os::raw::c_int,
11485        format: *const ::std::os::raw::c_char,
11486        ...
11487    );
11488    pub fn zend_error_at(
11489        type_: ::std::os::raw::c_int,
11490        filename: *mut zend_string,
11491        lineno: u32,
11492        format: *const ::std::os::raw::c_char,
11493        ...
11494    );
11495    pub fn zend_error_at_noreturn(
11496        type_: ::std::os::raw::c_int,
11497        filename: *mut zend_string,
11498        lineno: u32,
11499        format: *const ::std::os::raw::c_char,
11500        ...
11501    ) -> !;
11502    pub fn zend_error_zstr(type_: ::std::os::raw::c_int, message: *mut zend_string);
11503    pub fn zend_error_zstr_at(
11504        type_: ::std::os::raw::c_int,
11505        filename: *mut zend_string,
11506        lineno: u32,
11507        message: *mut zend_string,
11508    );
11509    pub fn zend_throw_error(
11510        exception_ce: *mut zend_class_entry,
11511        format: *const ::std::os::raw::c_char,
11512        ...
11513    );
11514    pub fn zend_type_error(format: *const ::std::os::raw::c_char, ...);
11515    pub fn zend_argument_count_error(format: *const ::std::os::raw::c_char, ...);
11516    pub fn zend_value_error(format: *const ::std::os::raw::c_char, ...);
11517    pub fn zend_illegal_container_offset(
11518        container: *const zend_string,
11519        offset: *const zval,
11520        type_: ::std::os::raw::c_int,
11521    );
11522    pub fn zenderror(error: *const ::std::os::raw::c_char);
11523    pub fn zend_strerror_noreturn(
11524        type_: ::std::os::raw::c_int,
11525        errn: ::std::os::raw::c_int,
11526        message: *const ::std::os::raw::c_char,
11527    ) -> !;
11528    pub static mut zend_standard_class_def: *mut zend_class_entry;
11529    pub static mut zend_uv: zend_utility_values;
11530    pub static mut zend_dtrace_enabled: bool;
11531    pub fn zend_message_dispatcher(message: zend_long, data: *const ::std::os::raw::c_void);
11532    pub fn zend_get_configuration_directive(name: *mut zend_string) -> *mut zval;
11533    pub fn zend_save_error_handling(current: *mut zend_error_handling);
11534    pub fn zend_replace_error_handling(
11535        error_handling: zend_error_handling_t::Type,
11536        exception_class: *mut zend_class_entry,
11537        current: *mut zend_error_handling,
11538    );
11539    pub fn zend_restore_error_handling(saved: *mut zend_error_handling);
11540    pub fn zend_begin_record_errors();
11541    pub fn zend_emit_recorded_errors();
11542    pub fn zend_emit_recorded_errors_ex(num_errors: u32, errors: *mut *mut zend_error_info);
11543    pub fn zend_free_recorded_errors();
11544    pub fn zend_hooked_object_get_iterator(
11545        ce: *mut zend_class_entry,
11546        object: *mut zval,
11547        by_ref: ::std::os::raw::c_int,
11548    ) -> *mut zend_object_iterator;
11549    pub fn zend_hooked_object_build_properties(zobj: *mut zend_object) -> *mut zend_array;
11550    pub fn zend_class_can_be_lazy(ce: *const zend_class_entry) -> bool;
11551    pub fn zend_object_make_lazy(
11552        obj: *mut zend_object,
11553        class_type: *mut zend_class_entry,
11554        initializer_zv: *mut zval,
11555        initializer_fcc: *mut zend_fcall_info_cache,
11556        flags: zend_lazy_object_flags_t,
11557    ) -> *mut zend_object;
11558    pub fn zend_lazy_object_init(obj: *mut zend_object) -> *mut zend_object;
11559    pub fn zend_lazy_object_mark_as_initialized(obj: *mut zend_object) -> *mut zend_object;
11560    pub fn zend_lazy_objects_init(store: *mut zend_lazy_objects_store);
11561    pub fn zend_lazy_objects_destroy(store: *mut zend_lazy_objects_store);
11562    pub fn zend_lazy_object_get_initializer_zv(obj: *mut zend_object) -> *mut zval;
11563    pub fn zend_lazy_object_get_flags(obj: *const zend_object) -> zend_lazy_object_flags_t;
11564    pub fn zend_lazy_object_del_info(obj: *const zend_object);
11565    pub fn zend_lazy_object_get_properties(object: *mut zend_object) -> *mut HashTable;
11566    pub fn zend_lazy_object_clone(old_obj: *mut zend_object) -> *mut zend_object;
11567    pub fn zend_lazy_object_debug_info(
11568        object: *mut zend_object,
11569        is_temp: *mut ::std::os::raw::c_int,
11570    ) -> *mut HashTable;
11571    pub fn zend_lazy_object_get_gc(
11572        zobj: *mut zend_object,
11573        table: *mut *mut zval,
11574        n: *mut ::std::os::raw::c_int,
11575    ) -> *mut HashTable;
11576    pub fn zend_lazy_object_decr_lazy_props(obj: *const zend_object) -> bool;
11577    pub fn zend_lazy_object_realize(obj: *mut zend_object);
11578    pub fn zend_lazy_object_get_property_info_for_slot(
11579        obj: *mut zend_object,
11580        slot: *mut zval,
11581    ) -> *mut zend_property_info;
11582    #[link_name = "zend_object_is_lazy__extern"]
11583    pub fn zend_object_is_lazy(obj: *const zend_object) -> bool;
11584    #[link_name = "zend_object_is_lazy_proxy__extern"]
11585    pub fn zend_object_is_lazy_proxy(obj: *const zend_object) -> bool;
11586    #[link_name = "zend_lazy_object_initialized__extern"]
11587    pub fn zend_lazy_object_initialized(obj: *const zend_object) -> bool;
11588    #[link_name = "zend_lazy_object_must_init__extern"]
11589    pub fn zend_lazy_object_must_init(obj: *const zend_object) -> bool;
11590    #[link_name = "zend_lazy_object_initialize_on_serialize__extern"]
11591    pub fn zend_lazy_object_initialize_on_serialize(obj: *const zend_object) -> bool;
11592    pub static std_object_handlers: zend_object_handlers;
11593    pub fn zend_class_init_statics(ce: *mut zend_class_entry);
11594    pub fn zend_std_get_static_method(
11595        ce: *mut zend_class_entry,
11596        function_name_strval: *mut zend_string,
11597        key: *const zval,
11598    ) -> *mut zend_function;
11599    pub fn zend_std_get_static_property_with_info(
11600        ce: *mut zend_class_entry,
11601        property_name: *mut zend_string,
11602        type_: ::std::os::raw::c_int,
11603        prop_info: *mut *mut _zend_property_info,
11604    ) -> *mut zval;
11605    pub fn zend_std_get_static_property(
11606        ce: *mut zend_class_entry,
11607        property_name: *mut zend_string,
11608        type_: ::std::os::raw::c_int,
11609    ) -> *mut zval;
11610    pub fn zend_std_unset_static_property(
11611        ce: *const zend_class_entry,
11612        property_name: *const zend_string,
11613    ) -> bool;
11614    pub fn zend_std_get_constructor(object: *mut zend_object) -> *mut zend_function;
11615    pub fn zend_get_property_info(
11616        ce: *const zend_class_entry,
11617        member: *mut zend_string,
11618        silent: ::std::os::raw::c_int,
11619    ) -> *mut _zend_property_info;
11620    pub fn zend_std_get_properties(object: *mut zend_object) -> *mut HashTable;
11621    pub fn zend_get_properties_no_lazy_init(zobj: *mut zend_object) -> *mut HashTable;
11622    pub fn zend_std_get_gc(
11623        object: *mut zend_object,
11624        table: *mut *mut zval,
11625        n: *mut ::std::os::raw::c_int,
11626    ) -> *mut HashTable;
11627    pub fn zend_std_get_debug_info(
11628        object: *mut zend_object,
11629        is_temp: *mut ::std::os::raw::c_int,
11630    ) -> *mut HashTable;
11631    pub fn zend_std_cast_object_tostring(
11632        object: *mut zend_object,
11633        writeobj: *mut zval,
11634        type_: ::std::os::raw::c_int,
11635    ) -> zend_result;
11636    pub fn zend_std_get_property_ptr_ptr(
11637        object: *mut zend_object,
11638        member: *mut zend_string,
11639        type_: ::std::os::raw::c_int,
11640        cache_slot: *mut *mut ::std::os::raw::c_void,
11641    ) -> *mut zval;
11642    pub fn zend_std_read_property(
11643        object: *mut zend_object,
11644        member: *mut zend_string,
11645        type_: ::std::os::raw::c_int,
11646        cache_slot: *mut *mut ::std::os::raw::c_void,
11647        rv: *mut zval,
11648    ) -> *mut zval;
11649    pub fn zend_std_write_property(
11650        object: *mut zend_object,
11651        member: *mut zend_string,
11652        value: *mut zval,
11653        cache_slot: *mut *mut ::std::os::raw::c_void,
11654    ) -> *mut zval;
11655    pub fn zend_std_has_property(
11656        object: *mut zend_object,
11657        member: *mut zend_string,
11658        has_set_exists: ::std::os::raw::c_int,
11659        cache_slot: *mut *mut ::std::os::raw::c_void,
11660    ) -> ::std::os::raw::c_int;
11661    pub fn zend_std_unset_property(
11662        object: *mut zend_object,
11663        member: *mut zend_string,
11664        cache_slot: *mut *mut ::std::os::raw::c_void,
11665    );
11666    pub fn zend_std_read_dimension(
11667        object: *mut zend_object,
11668        offset: *mut zval,
11669        type_: ::std::os::raw::c_int,
11670        rv: *mut zval,
11671    ) -> *mut zval;
11672    pub fn zend_std_write_dimension(object: *mut zend_object, offset: *mut zval, value: *mut zval);
11673    pub fn zend_std_has_dimension(
11674        object: *mut zend_object,
11675        offset: *mut zval,
11676        check_empty: ::std::os::raw::c_int,
11677    ) -> ::std::os::raw::c_int;
11678    pub fn zend_std_unset_dimension(object: *mut zend_object, offset: *mut zval);
11679    pub fn zend_std_get_method(
11680        obj_ptr: *mut *mut zend_object,
11681        method_name: *mut zend_string,
11682        key: *const zval,
11683    ) -> *mut zend_function;
11684    pub fn zend_std_get_class_name(zobj: *const zend_object) -> *mut zend_string;
11685    pub fn zend_std_compare_objects(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
11686    pub fn zend_std_get_closure(
11687        obj: *mut zend_object,
11688        ce_ptr: *mut *mut zend_class_entry,
11689        fptr_ptr: *mut *mut zend_function,
11690        obj_ptr: *mut *mut zend_object,
11691        check_only: bool,
11692    ) -> zend_result;
11693    pub fn rebuild_object_properties_internal(zobj: *mut zend_object) -> *mut HashTable;
11694    pub fn zend_bad_method_call(
11695        fbc: *const zend_function,
11696        method_name: *const zend_string,
11697        scope: *const zend_class_entry,
11698    );
11699    pub fn zend_abstract_method_call(fbc: *const zend_function);
11700    #[link_name = "zend_std_get_properties_ex__extern"]
11701    pub fn zend_std_get_properties_ex(object: *mut zend_object) -> *mut HashTable;
11702    pub fn zend_std_build_object_properties_array(zobj: *mut zend_object) -> *mut HashTable;
11703    pub fn zend_objects_not_comparable(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
11704    pub fn zend_check_protected(
11705        ce: *const zend_class_entry,
11706        scope: *const zend_class_entry,
11707    ) -> bool;
11708    pub fn zend_check_property_access(
11709        zobj: *const zend_object,
11710        prop_info_name: *mut zend_string,
11711        is_dynamic: bool,
11712    ) -> zend_result;
11713    pub fn zend_get_call_trampoline_func(
11714        ce: *const zend_class_entry,
11715        method_name: *mut zend_string,
11716        is_static: bool,
11717    ) -> *mut zend_function;
11718    pub fn zend_get_property_guard(zobj: *mut zend_object, member: *mut zend_string) -> *mut u32;
11719    pub fn zend_get_recursion_guard(zobj: *mut zend_object) -> *mut u32;
11720    pub fn zend_std_get_properties_for(
11721        obj: *mut zend_object,
11722        purpose: zend_prop_purpose,
11723    ) -> *mut HashTable;
11724    pub fn zend_get_properties_for(obj: *mut zval, purpose: zend_prop_purpose) -> *mut HashTable;
11725    pub fn zend_get_property_hook_trampoline(
11726        prop_info: *const zend_property_info,
11727        kind: zend_property_hook_kind::Type,
11728        prop_name: *mut zend_string,
11729    ) -> *mut zend_function;
11730    pub fn zend_asymmetric_property_has_set_access(prop_info: *const zend_property_info) -> bool;
11731    pub fn zend_freedtoa(s: *mut ::std::os::raw::c_char);
11732    pub fn zend_dtoa(
11733        _d: f64,
11734        mode: ::std::os::raw::c_int,
11735        ndigits: ::std::os::raw::c_int,
11736        decpt: *mut ::std::os::raw::c_int,
11737        sign: *mut bool,
11738        rve: *mut *mut ::std::os::raw::c_char,
11739    ) -> *mut ::std::os::raw::c_char;
11740    pub fn zend_gcvt(
11741        value: f64,
11742        ndigit: ::std::os::raw::c_int,
11743        dec_point: ::std::os::raw::c_char,
11744        exponent: ::std::os::raw::c_char,
11745        buf: *mut ::std::os::raw::c_char,
11746    ) -> *mut ::std::os::raw::c_char;
11747    pub fn zend_strtod(
11748        s00: *const ::std::os::raw::c_char,
11749        se: *mut *const ::std::os::raw::c_char,
11750    ) -> f64;
11751    pub fn zend_hex_strtod(
11752        str_: *const ::std::os::raw::c_char,
11753        endptr: *mut *const ::std::os::raw::c_char,
11754    ) -> f64;
11755    pub fn zend_oct_strtod(
11756        str_: *const ::std::os::raw::c_char,
11757        endptr: *mut *const ::std::os::raw::c_char,
11758    ) -> f64;
11759    pub fn zend_bin_strtod(
11760        str_: *const ::std::os::raw::c_char,
11761        endptr: *mut *const ::std::os::raw::c_char,
11762    ) -> f64;
11763    pub fn zend_shutdown_strtod() -> ::std::os::raw::c_int;
11764    #[link_name = "zend_safe_address__extern"]
11765    pub fn zend_safe_address(
11766        nmemb: usize,
11767        size: usize,
11768        offset: usize,
11769        overflow: *mut bool,
11770    ) -> usize;
11771    #[link_name = "zend_safe_address_guarded__extern"]
11772    pub fn zend_safe_address_guarded(nmemb: usize, size: usize, offset: usize) -> usize;
11773    #[link_name = "zend_safe_addmult__extern"]
11774    pub fn zend_safe_addmult(
11775        nmemb: usize,
11776        size: usize,
11777        offset: usize,
11778        message: *const ::std::os::raw::c_char,
11779    ) -> usize;
11780    pub fn add_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11781    pub fn sub_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11782    pub fn mul_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11783    pub fn pow_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11784    pub fn div_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11785    pub fn mod_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11786    pub fn boolean_xor_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11787    pub fn boolean_not_function(result: *mut zval, op1: *mut zval) -> zend_result;
11788    pub fn bitwise_not_function(result: *mut zval, op1: *mut zval) -> zend_result;
11789    pub fn bitwise_or_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11790    pub fn bitwise_and_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11791    pub fn bitwise_xor_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11792    pub fn shift_left_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11793    pub fn shift_right_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11794    pub fn concat_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11795    pub fn zend_is_identical(op1: *const zval, op2: *const zval) -> bool;
11796    pub fn is_equal_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11797    pub fn is_identical_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11798    pub fn is_not_identical_function(
11799        result: *mut zval,
11800        op1: *mut zval,
11801        op2: *mut zval,
11802    ) -> zend_result;
11803    pub fn is_not_equal_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11804    pub fn is_smaller_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11805    pub fn is_smaller_or_equal_function(
11806        result: *mut zval,
11807        op1: *mut zval,
11808        op2: *mut zval,
11809    ) -> zend_result;
11810    pub fn zend_class_implements_interface(
11811        class_ce: *const zend_class_entry,
11812        interface_ce: *const zend_class_entry,
11813    ) -> bool;
11814    pub fn instanceof_function_slow(
11815        instance_ce: *const zend_class_entry,
11816        ce: *const zend_class_entry,
11817    ) -> bool;
11818    #[link_name = "instanceof_function__extern"]
11819    pub fn instanceof_function(
11820        instance_ce: *const zend_class_entry,
11821        ce: *const zend_class_entry,
11822    ) -> bool;
11823    pub fn zend_string_only_has_ascii_alphanumeric(str_: *const zend_string) -> bool;
11824    #[doc = " Checks whether the string \"str\" with length \"length\" is numeric. The value\n of allow_errors determines whether it's required to be entirely numeric, or\n just its prefix. Leading whitespace is allowed.\n\n The function returns 0 if the string did not contain a valid number; IS_LONG\n if it contained a number that fits within the range of a long; or IS_DOUBLE\n if the number was out of long range or contained a decimal point/exponent.\n The number's value is returned into the respective pointer, *lval or *dval,\n if that pointer is not NULL.\n\n This variant also gives information if a string that represents an integer\n could not be represented as such due to overflow. It writes 1 to oflow_info\n if the integer is larger than ZEND_LONG_MAX and -1 if it's smaller than ZEND_LONG_MIN."]
11825    pub fn _is_numeric_string_ex(
11826        str_: *const ::std::os::raw::c_char,
11827        length: usize,
11828        lval: *mut zend_long,
11829        dval: *mut f64,
11830        allow_errors: bool,
11831        oflow_info: *mut ::std::os::raw::c_int,
11832        trailing_data: *mut bool,
11833    ) -> u8;
11834    pub fn zend_memnstr_ex(
11835        haystack: *const ::std::os::raw::c_char,
11836        needle: *const ::std::os::raw::c_char,
11837        needle_len: usize,
11838        end: *const ::std::os::raw::c_char,
11839    ) -> *const ::std::os::raw::c_char;
11840    pub fn zend_memnrstr_ex(
11841        haystack: *const ::std::os::raw::c_char,
11842        needle: *const ::std::os::raw::c_char,
11843        needle_len: usize,
11844        end: *const ::std::os::raw::c_char,
11845    ) -> *const ::std::os::raw::c_char;
11846    pub fn zend_incompatible_double_to_long_error(d: f64);
11847    pub fn zend_incompatible_string_to_long_error(s: *const zend_string);
11848    pub fn zend_oob_double_to_long_error(d: f64);
11849    pub fn zend_oob_string_to_long_error(s: *const zend_string);
11850    pub fn zend_nan_coerced_to_type_warning(type_: u8);
11851    pub fn zend_dval_to_lval_slow(d: f64) -> zend_long;
11852    #[link_name = "zend_dval_to_lval__extern"]
11853    pub fn zend_dval_to_lval(d: f64) -> zend_long;
11854    #[link_name = "zend_dval_to_lval_silent__extern"]
11855    pub fn zend_dval_to_lval_silent(d: f64) -> zend_long;
11856    #[link_name = "zend_dval_to_lval_cap__extern"]
11857    pub fn zend_dval_to_lval_cap(d: f64, s: *const zend_string) -> zend_long;
11858    #[link_name = "zend_is_long_compatible__extern"]
11859    pub fn zend_is_long_compatible(d: f64, l: zend_long) -> bool;
11860    #[link_name = "zend_dval_to_lval_safe__extern"]
11861    pub fn zend_dval_to_lval_safe(d: f64) -> zend_long;
11862    #[link_name = "is_numeric_string_ex__extern"]
11863    pub fn is_numeric_string_ex(
11864        str_: *const ::std::os::raw::c_char,
11865        length: usize,
11866        lval: *mut zend_long,
11867        dval: *mut f64,
11868        allow_errors: bool,
11869        oflow_info: *mut ::std::os::raw::c_int,
11870        trailing_data: *mut bool,
11871    ) -> u8;
11872    #[link_name = "is_numeric_string__extern"]
11873    pub fn is_numeric_string(
11874        str_: *const ::std::os::raw::c_char,
11875        length: usize,
11876        lval: *mut zend_long,
11877        dval: *mut f64,
11878        allow_errors: bool,
11879    ) -> u8;
11880    pub fn is_numeric_str_function(
11881        str_: *const zend_string,
11882        lval: *mut zend_long,
11883        dval: *mut f64,
11884    ) -> u8;
11885    #[link_name = "zend_memnstr__extern"]
11886    pub fn zend_memnstr(
11887        haystack: *const ::std::os::raw::c_char,
11888        needle: *const ::std::os::raw::c_char,
11889        needle_len: usize,
11890        end: *const ::std::os::raw::c_char,
11891    ) -> *const ::std::os::raw::c_char;
11892    #[link_name = "zend_memrchr__extern"]
11893    pub fn zend_memrchr(
11894        s: *const ::std::os::raw::c_void,
11895        c: ::std::os::raw::c_int,
11896        n: usize,
11897    ) -> *const ::std::os::raw::c_void;
11898    #[link_name = "zend_memnrstr__extern"]
11899    pub fn zend_memnrstr(
11900        haystack: *const ::std::os::raw::c_char,
11901        needle: *const ::std::os::raw::c_char,
11902        needle_len: usize,
11903        end: *const ::std::os::raw::c_char,
11904    ) -> *const ::std::os::raw::c_char;
11905    #[link_name = "zend_strnlen__extern"]
11906    pub fn zend_strnlen(s: *const ::std::os::raw::c_char, maxlen: usize) -> usize;
11907    #[link_name = "zend_mempcpy__extern"]
11908    pub fn zend_mempcpy(
11909        dest: *mut ::std::os::raw::c_void,
11910        src: *const ::std::os::raw::c_void,
11911        n: usize,
11912    ) -> *mut ::std::os::raw::c_void;
11913    pub fn increment_function(op1: *mut zval) -> zend_result;
11914    pub fn decrement_function(op2: *mut zval) -> zend_result;
11915    pub fn convert_scalar_to_number(op: *mut zval);
11916    pub fn _convert_to_string(op: *mut zval);
11917    pub fn convert_to_long(op: *mut zval);
11918    pub fn convert_to_double(op: *mut zval);
11919    pub fn convert_to_null(op: *mut zval);
11920    pub fn convert_to_boolean(op: *mut zval);
11921    pub fn convert_to_array(op: *mut zval);
11922    pub fn convert_to_object(op: *mut zval);
11923    pub fn zval_get_long_func(op: *const zval, is_strict: bool) -> zend_long;
11924    pub fn zval_try_get_long(op: *const zval, failed: *mut bool) -> zend_long;
11925    pub fn zval_get_double_func(op: *const zval) -> f64;
11926    pub fn zval_get_string_func(op: *mut zval) -> *mut zend_string;
11927    pub fn zval_try_get_string_func(op: *mut zval) -> *mut zend_string;
11928    #[link_name = "zval_get_long__extern"]
11929    pub fn zval_get_long(op: *const zval) -> zend_long;
11930    #[link_name = "zval_get_long_ex__extern"]
11931    pub fn zval_get_long_ex(op: *const zval, is_strict: bool) -> zend_long;
11932    #[link_name = "zval_get_double__extern"]
11933    pub fn zval_get_double(op: *const zval) -> f64;
11934    #[link_name = "zval_get_string__extern"]
11935    pub fn zval_get_string(op: *mut zval) -> *mut zend_string;
11936    #[link_name = "zval_get_tmp_string__extern"]
11937    pub fn zval_get_tmp_string(op: *mut zval, tmp: *mut *mut zend_string) -> *mut zend_string;
11938    #[link_name = "zend_tmp_string_release__extern"]
11939    pub fn zend_tmp_string_release(tmp: *mut zend_string);
11940    #[link_name = "zval_try_get_string__extern"]
11941    pub fn zval_try_get_string(op: *mut zval) -> *mut zend_string;
11942    #[link_name = "zval_try_get_tmp_string__extern"]
11943    pub fn zval_try_get_tmp_string(op: *mut zval, tmp: *mut *mut zend_string) -> *mut zend_string;
11944    pub fn _try_convert_to_string(op: *mut zval) -> bool;
11945    #[link_name = "try_convert_to_string__extern"]
11946    pub fn try_convert_to_string(op: *mut zval) -> bool;
11947    pub fn zend_is_true(op: *const zval) -> bool;
11948    pub fn zend_object_is_true(op: *const zval) -> bool;
11949    #[link_name = "i_zend_is_true__extern"]
11950    pub fn i_zend_is_true(op: *const zval) -> bool;
11951    pub fn zend_compare(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
11952    pub fn compare_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11953    pub fn numeric_compare_function(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
11954    pub fn string_compare_function_ex(
11955        op1: *mut zval,
11956        op2: *mut zval,
11957        case_insensitive: bool,
11958    ) -> ::std::os::raw::c_int;
11959    pub fn string_compare_function(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
11960    pub fn string_case_compare_function(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
11961    pub fn string_locale_compare_function(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
11962    pub static zend_tolower_map: [::std::os::raw::c_uchar; 256usize];
11963    pub static zend_toupper_map: [::std::os::raw::c_uchar; 256usize];
11964    pub fn zend_str_tolower(str_: *mut ::std::os::raw::c_char, length: usize);
11965    pub fn zend_str_toupper(str_: *mut ::std::os::raw::c_char, length: usize);
11966    pub fn zend_str_tolower_copy(
11967        dest: *mut ::std::os::raw::c_char,
11968        source: *const ::std::os::raw::c_char,
11969        length: usize,
11970    ) -> *mut ::std::os::raw::c_char;
11971    pub fn zend_str_toupper_copy(
11972        dest: *mut ::std::os::raw::c_char,
11973        source: *const ::std::os::raw::c_char,
11974        length: usize,
11975    ) -> *mut ::std::os::raw::c_char;
11976    pub fn zend_str_tolower_dup(
11977        source: *const ::std::os::raw::c_char,
11978        length: usize,
11979    ) -> *mut ::std::os::raw::c_char;
11980    pub fn zend_str_toupper_dup(
11981        source: *const ::std::os::raw::c_char,
11982        length: usize,
11983    ) -> *mut ::std::os::raw::c_char;
11984    pub fn zend_str_tolower_dup_ex(
11985        source: *const ::std::os::raw::c_char,
11986        length: usize,
11987    ) -> *mut ::std::os::raw::c_char;
11988    pub fn zend_str_toupper_dup_ex(
11989        source: *const ::std::os::raw::c_char,
11990        length: usize,
11991    ) -> *mut ::std::os::raw::c_char;
11992    pub fn zend_string_tolower_ex(str_: *mut zend_string, persistent: bool) -> *mut zend_string;
11993    pub fn zend_string_toupper_ex(str_: *mut zend_string, persistent: bool) -> *mut zend_string;
11994    #[link_name = "zend_string_tolower__extern"]
11995    pub fn zend_string_tolower(str_: *mut zend_string) -> *mut zend_string;
11996    #[link_name = "zend_string_toupper__extern"]
11997    pub fn zend_string_toupper(str_: *mut zend_string) -> *mut zend_string;
11998    pub fn zend_binary_zval_strcmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
11999    pub fn zend_binary_zval_strncmp(
12000        s1: *mut zval,
12001        s2: *mut zval,
12002        s3: *mut zval,
12003    ) -> ::std::os::raw::c_int;
12004    pub fn zend_binary_strcmp(
12005        s1: *const ::std::os::raw::c_char,
12006        len1: usize,
12007        s2: *const ::std::os::raw::c_char,
12008        len2: usize,
12009    ) -> ::std::os::raw::c_int;
12010    pub fn zend_binary_strncmp(
12011        s1: *const ::std::os::raw::c_char,
12012        len1: usize,
12013        s2: *const ::std::os::raw::c_char,
12014        len2: usize,
12015        length: usize,
12016    ) -> ::std::os::raw::c_int;
12017    pub fn zend_binary_strcasecmp(
12018        s1: *const ::std::os::raw::c_char,
12019        len1: usize,
12020        s2: *const ::std::os::raw::c_char,
12021        len2: usize,
12022    ) -> ::std::os::raw::c_int;
12023    pub fn zend_binary_strncasecmp(
12024        s1: *const ::std::os::raw::c_char,
12025        len1: usize,
12026        s2: *const ::std::os::raw::c_char,
12027        len2: usize,
12028        length: usize,
12029    ) -> ::std::os::raw::c_int;
12030    pub fn zend_binary_strcasecmp_l(
12031        s1: *const ::std::os::raw::c_char,
12032        len1: usize,
12033        s2: *const ::std::os::raw::c_char,
12034        len2: usize,
12035    ) -> ::std::os::raw::c_int;
12036    pub fn zend_binary_strncasecmp_l(
12037        s1: *const ::std::os::raw::c_char,
12038        len1: usize,
12039        s2: *const ::std::os::raw::c_char,
12040        len2: usize,
12041        length: usize,
12042    ) -> ::std::os::raw::c_int;
12043    pub fn zendi_smart_streq(s1: *mut zend_string, s2: *mut zend_string) -> bool;
12044    pub fn zendi_smart_strcmp(s1: *mut zend_string, s2: *mut zend_string) -> ::std::os::raw::c_int;
12045    pub fn zend_compare_symbol_tables(
12046        ht1: *mut HashTable,
12047        ht2: *mut HashTable,
12048    ) -> ::std::os::raw::c_int;
12049    pub fn zend_compare_arrays(a1: *mut zval, a2: *mut zval) -> ::std::os::raw::c_int;
12050    pub fn zend_compare_objects(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
12051    #[doc = " Deprecated in favor of ZEND_STRTOL()"]
12052    pub fn zend_atoi(str_: *const ::std::os::raw::c_char, str_len: usize) -> ::std::os::raw::c_int;
12053    #[doc = " Deprecated in favor of ZEND_STRTOL()"]
12054    pub fn zend_atol(str_: *const ::std::os::raw::c_char, str_len: usize) -> zend_long;
12055    pub fn zend_update_current_locale();
12056    pub fn zend_reset_lc_ctype_locale();
12057    #[link_name = "fast_long_increment_function__extern"]
12058    pub fn fast_long_increment_function(op1: *mut zval);
12059    #[link_name = "fast_long_decrement_function__extern"]
12060    pub fn fast_long_decrement_function(op1: *mut zval);
12061    #[link_name = "fast_long_add_function__extern"]
12062    pub fn fast_long_add_function(result: *mut zval, op1: *mut zval, op2: *mut zval);
12063    #[link_name = "fast_long_sub_function__extern"]
12064    pub fn fast_long_sub_function(result: *mut zval, op1: *mut zval, op2: *mut zval);
12065    #[link_name = "zend_fast_equal_strings__extern"]
12066    pub fn zend_fast_equal_strings(s1: *mut zend_string, s2: *mut zend_string) -> bool;
12067    #[link_name = "fast_equal_check_function__extern"]
12068    pub fn fast_equal_check_function(op1: *mut zval, op2: *mut zval) -> bool;
12069    #[link_name = "fast_equal_check_long__extern"]
12070    pub fn fast_equal_check_long(op1: *mut zval, op2: *mut zval) -> bool;
12071    #[link_name = "fast_equal_check_string__extern"]
12072    pub fn fast_equal_check_string(op1: *mut zval, op2: *mut zval) -> bool;
12073    #[link_name = "fast_is_identical_function__extern"]
12074    pub fn fast_is_identical_function(op1: *mut zval, op2: *mut zval) -> bool;
12075    #[link_name = "fast_is_not_identical_function__extern"]
12076    pub fn fast_is_not_identical_function(op1: *mut zval, op2: *mut zval) -> bool;
12077    #[link_name = "zend_print_ulong_to_buf__extern"]
12078    pub fn zend_print_ulong_to_buf(
12079        buf: *mut ::std::os::raw::c_char,
12080        num: zend_ulong,
12081    ) -> *mut ::std::os::raw::c_char;
12082    #[link_name = "zend_print_long_to_buf__extern"]
12083    pub fn zend_print_long_to_buf(
12084        buf: *mut ::std::os::raw::c_char,
12085        num: zend_long,
12086    ) -> *mut ::std::os::raw::c_char;
12087    pub fn zend_long_to_str(num: zend_long) -> *mut zend_string;
12088    pub fn zend_ulong_to_str(num: zend_ulong) -> *mut zend_string;
12089    pub fn zend_u64_to_str(num: u64) -> *mut zend_string;
12090    pub fn zend_i64_to_str(num: i64) -> *mut zend_string;
12091    pub fn zend_double_to_str(num: f64) -> *mut zend_string;
12092    #[link_name = "zend_unwrap_reference__extern"]
12093    pub fn zend_unwrap_reference(op: *mut zval);
12094    #[link_name = "zend_strnieq__extern"]
12095    pub fn zend_strnieq(
12096        ptr1: *const ::std::os::raw::c_char,
12097        ptr2: *const ::std::os::raw::c_char,
12098        num: usize,
12099    ) -> bool;
12100    #[link_name = "zend_memnistr__extern"]
12101    pub fn zend_memnistr(
12102        haystack: *const ::std::os::raw::c_char,
12103        needle: *const ::std::os::raw::c_char,
12104        needle_len: usize,
12105        end: *const ::std::os::raw::c_char,
12106    ) -> *const ::std::os::raw::c_char;
12107    pub static zend_vm_kind_name: [*const ::std::os::raw::c_char; 6usize];
12108    pub fn zend_get_opcode_name(opcode: u8) -> *const ::std::os::raw::c_char;
12109    pub fn zend_get_opcode_flags(opcode: u8) -> u32;
12110    pub fn zend_get_opcode_id(name: *const ::std::os::raw::c_char, length: usize) -> u8;
12111    pub static mut zend_flf_count: usize;
12112    pub static mut zend_flf_capacity: usize;
12113    pub static mut zend_flf_handlers: *mut *mut ::std::os::raw::c_void;
12114    pub static mut zend_flf_functions: *mut *mut zend_function;
12115    pub fn zend_ast_create_znode(node: *const znode) -> *mut zend_ast;
12116    #[link_name = "zend_ast_get_znode__extern"]
12117    pub fn zend_ast_get_znode(ast: *mut zend_ast) -> *mut znode;
12118    pub fn zend_compile_top_stmt(ast: *mut zend_ast);
12119    pub fn zend_const_expr_to_zval(
12120        result: *mut zval,
12121        ast_ptr: *mut *mut zend_ast,
12122        allow_dynamic: bool,
12123    );
12124    #[link_name = "zend_visibility_to_set_visibility__extern"]
12125    pub fn zend_visibility_to_set_visibility(visibility: u32) -> u32;
12126    pub fn zend_get_property_hook_kind_from_name(
12127        name: *mut zend_string,
12128    ) -> zend_property_hook_kind::Type;
12129    pub static mut compiler_globals: _zend_compiler_globals;
12130    pub fn zendparse() -> ::std::os::raw::c_int;
12131    pub static mut executor_globals: zend_executor_globals;
12132    pub static mut language_scanner_globals: zend_php_scanner_globals;
12133    pub static mut ini_scanner_globals: zend_ini_scanner_globals;
12134    #[link_name = "zend_atomic_bool_exchange_ex__extern"]
12135    pub fn zend_atomic_bool_exchange_ex(obj: *mut zend_atomic_bool, desired: bool) -> bool;
12136    #[link_name = "zend_atomic_int_exchange_ex__extern"]
12137    pub fn zend_atomic_int_exchange_ex(
12138        obj: *mut zend_atomic_int,
12139        desired: ::std::os::raw::c_int,
12140    ) -> ::std::os::raw::c_int;
12141    #[link_name = "zend_atomic_bool_compare_exchange_ex__extern"]
12142    pub fn zend_atomic_bool_compare_exchange_ex(
12143        obj: *mut zend_atomic_bool,
12144        expected: *mut bool,
12145        desired: bool,
12146    ) -> bool;
12147    #[link_name = "zend_atomic_int_compare_exchange_ex__extern"]
12148    pub fn zend_atomic_int_compare_exchange_ex(
12149        obj: *mut zend_atomic_int,
12150        expected: *mut ::std::os::raw::c_int,
12151        desired: ::std::os::raw::c_int,
12152    ) -> bool;
12153    #[link_name = "zend_atomic_bool_load_ex__extern"]
12154    pub fn zend_atomic_bool_load_ex(obj: *const zend_atomic_bool) -> bool;
12155    #[link_name = "zend_atomic_int_load_ex__extern"]
12156    pub fn zend_atomic_int_load_ex(obj: *const zend_atomic_int) -> ::std::os::raw::c_int;
12157    #[link_name = "zend_atomic_bool_store_ex__extern"]
12158    pub fn zend_atomic_bool_store_ex(obj: *mut zend_atomic_bool, desired: bool);
12159    #[link_name = "zend_atomic_int_store_ex__extern"]
12160    pub fn zend_atomic_int_store_ex(obj: *mut zend_atomic_int, desired: ::std::os::raw::c_int);
12161    pub fn zend_atomic_bool_init(obj: *mut zend_atomic_bool, desired: bool);
12162    pub fn zend_atomic_int_init(obj: *mut zend_atomic_int, desired: ::std::os::raw::c_int);
12163    pub fn zend_atomic_bool_exchange(obj: *mut zend_atomic_bool, desired: bool) -> bool;
12164    pub fn zend_atomic_int_exchange(
12165        obj: *mut zend_atomic_int,
12166        desired: ::std::os::raw::c_int,
12167    ) -> ::std::os::raw::c_int;
12168    pub fn zend_atomic_bool_compare_exchange(
12169        obj: *mut zend_atomic_bool,
12170        expected: *mut bool,
12171        desired: bool,
12172    ) -> bool;
12173    pub fn zend_atomic_int_compare_exchange(
12174        obj: *mut zend_atomic_int,
12175        expected: *mut ::std::os::raw::c_int,
12176        desired: ::std::os::raw::c_int,
12177    ) -> bool;
12178    pub fn zend_atomic_bool_store(obj: *mut zend_atomic_bool, desired: bool);
12179    pub fn zend_atomic_int_store(obj: *mut zend_atomic_int, desired: ::std::os::raw::c_int);
12180    pub fn zend_atomic_bool_load(obj: *const zend_atomic_bool) -> bool;
12181    pub fn zend_atomic_int_load(obj: *const zend_atomic_int) -> ::std::os::raw::c_int;
12182    pub fn zend_stack_init(stack: *mut zend_stack, size: ::std::os::raw::c_int);
12183    pub fn zend_stack_push(
12184        stack: *mut zend_stack,
12185        element: *const ::std::os::raw::c_void,
12186    ) -> ::std::os::raw::c_int;
12187    pub fn zend_stack_top(stack: *const zend_stack) -> *mut ::std::os::raw::c_void;
12188    pub fn zend_stack_del_top(stack: *mut zend_stack);
12189    pub fn zend_stack_int_top(stack: *const zend_stack) -> ::std::os::raw::c_int;
12190    pub fn zend_stack_is_empty(stack: *const zend_stack) -> bool;
12191    pub fn zend_stack_destroy(stack: *mut zend_stack);
12192    pub fn zend_stack_base(stack: *const zend_stack) -> *mut ::std::os::raw::c_void;
12193    pub fn zend_stack_count(stack: *const zend_stack) -> ::std::os::raw::c_int;
12194    pub fn zend_stack_apply(
12195        stack: *mut zend_stack,
12196        type_: ::std::os::raw::c_int,
12197        apply_function: ::std::option::Option<
12198            unsafe extern "C" fn(element: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
12199        >,
12200    );
12201    pub fn zend_stack_apply_with_argument(
12202        stack: *mut zend_stack,
12203        type_: zend_stack_apply_direction::Type,
12204        apply_function: ::std::option::Option<
12205            unsafe extern "C" fn(
12206                element: *mut ::std::os::raw::c_void,
12207                arg: *mut ::std::os::raw::c_void,
12208            ) -> ::std::os::raw::c_int,
12209        >,
12210        arg: *mut ::std::os::raw::c_void,
12211    );
12212    pub fn zend_stack_clean(
12213        stack: *mut zend_stack,
12214        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
12215        free_elements: bool,
12216    );
12217    pub fn zend_ptr_stack_init(stack: *mut zend_ptr_stack);
12218    pub fn zend_ptr_stack_init_ex(stack: *mut zend_ptr_stack, persistent: bool);
12219    pub fn zend_ptr_stack_n_push(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
12220    pub fn zend_ptr_stack_n_pop(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
12221    pub fn zend_ptr_stack_destroy(stack: *mut zend_ptr_stack);
12222    pub fn zend_ptr_stack_apply(
12223        stack: *mut zend_ptr_stack,
12224        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
12225    );
12226    pub fn zend_ptr_stack_reverse_apply(
12227        stack: *mut zend_ptr_stack,
12228        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
12229    );
12230    pub fn zend_ptr_stack_clean(
12231        stack: *mut zend_ptr_stack,
12232        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
12233        free_elements: bool,
12234    );
12235    pub fn zend_ptr_stack_num_elements(stack: *mut zend_ptr_stack) -> ::std::os::raw::c_int;
12236    #[link_name = "zend_ptr_stack_3_push__extern"]
12237    pub fn zend_ptr_stack_3_push(
12238        stack: *mut zend_ptr_stack,
12239        a: *mut ::std::os::raw::c_void,
12240        b: *mut ::std::os::raw::c_void,
12241        c: *mut ::std::os::raw::c_void,
12242    );
12243    #[link_name = "zend_ptr_stack_2_push__extern"]
12244    pub fn zend_ptr_stack_2_push(
12245        stack: *mut zend_ptr_stack,
12246        a: *mut ::std::os::raw::c_void,
12247        b: *mut ::std::os::raw::c_void,
12248    );
12249    #[link_name = "zend_ptr_stack_3_pop__extern"]
12250    pub fn zend_ptr_stack_3_pop(
12251        stack: *mut zend_ptr_stack,
12252        a: *mut *mut ::std::os::raw::c_void,
12253        b: *mut *mut ::std::os::raw::c_void,
12254        c: *mut *mut ::std::os::raw::c_void,
12255    );
12256    #[link_name = "zend_ptr_stack_2_pop__extern"]
12257    pub fn zend_ptr_stack_2_pop(
12258        stack: *mut zend_ptr_stack,
12259        a: *mut *mut ::std::os::raw::c_void,
12260        b: *mut *mut ::std::os::raw::c_void,
12261    );
12262    #[link_name = "zend_ptr_stack_push__extern"]
12263    pub fn zend_ptr_stack_push(stack: *mut zend_ptr_stack, ptr: *mut ::std::os::raw::c_void);
12264    #[link_name = "zend_ptr_stack_pop__extern"]
12265    pub fn zend_ptr_stack_pop(stack: *mut zend_ptr_stack) -> *mut ::std::os::raw::c_void;
12266    #[link_name = "zend_ptr_stack_top__extern"]
12267    pub fn zend_ptr_stack_top(stack: *mut zend_ptr_stack) -> *mut ::std::os::raw::c_void;
12268    pub fn zend_object_std_init(object: *mut zend_object, ce: *mut zend_class_entry);
12269    pub fn zend_objects_new(ce: *mut zend_class_entry) -> *mut zend_object;
12270    pub fn zend_objects_clone_members(new_object: *mut zend_object, old_object: *mut zend_object);
12271    pub fn zend_object_std_dtor(object: *mut zend_object);
12272    pub fn zend_objects_destroy_object(object: *mut zend_object);
12273    pub fn zend_objects_clone_obj(object: *mut zend_object) -> *mut zend_object;
12274    pub fn zend_objects_clone_obj_with(
12275        object: *mut zend_object,
12276        scope: *const zend_class_entry,
12277        properties: *const HashTable,
12278    ) -> *mut zend_object;
12279    pub fn zend_object_dtor_dynamic_properties(object: *mut zend_object);
12280    pub fn zend_object_dtor_property(object: *mut zend_object, p: *mut zval);
12281    pub fn zend_objects_store_init(objects: *mut zend_objects_store, init_size: u32);
12282    pub fn zend_objects_store_call_destructors(objects: *mut zend_objects_store);
12283    pub fn zend_objects_store_mark_destructed(objects: *mut zend_objects_store);
12284    pub fn zend_objects_store_free_object_storage(
12285        objects: *mut zend_objects_store,
12286        fast_shutdown: bool,
12287    );
12288    pub fn zend_objects_store_destroy(objects: *mut zend_objects_store);
12289    pub fn zend_objects_store_put(object: *mut zend_object);
12290    pub fn zend_objects_store_del(object: *mut zend_object);
12291    #[link_name = "zend_object_store_ctor_failed__extern"]
12292    pub fn zend_object_store_ctor_failed(obj: *mut zend_object);
12293    #[link_name = "zend_object_release__extern"]
12294    pub fn zend_object_release(obj: *mut zend_object);
12295    #[link_name = "zend_object_properties_size__extern"]
12296    pub fn zend_object_properties_size(ce: *mut zend_class_entry) -> usize;
12297    #[link_name = "zend_object_alloc__extern"]
12298    pub fn zend_object_alloc(
12299        obj_size: usize,
12300        ce: *mut zend_class_entry,
12301    ) -> *mut ::std::os::raw::c_void;
12302    pub fn zend_get_property_info_for_slot_slow(
12303        obj: *mut zend_object,
12304        slot: *mut zval,
12305    ) -> *mut zend_property_info;
12306    #[link_name = "zend_get_property_info_for_slot_self__extern"]
12307    pub fn zend_get_property_info_for_slot_self(
12308        obj: *mut zend_object,
12309        slot: *mut zval,
12310    ) -> *mut zend_property_info;
12311    #[link_name = "zend_get_property_info_for_slot__extern"]
12312    pub fn zend_get_property_info_for_slot(
12313        obj: *mut zend_object,
12314        slot: *mut zval,
12315    ) -> *mut zend_property_info;
12316    #[link_name = "zend_get_typed_property_info_for_slot__extern"]
12317    pub fn zend_get_typed_property_info_for_slot(
12318        obj: *mut zend_object,
12319        slot: *mut zval,
12320    ) -> *mut zend_property_info;
12321    #[link_name = "zend_check_method_accessible__extern"]
12322    pub fn zend_check_method_accessible(
12323        fn_: *const zend_function,
12324        scope: *const zend_class_entry,
12325    ) -> bool;
12326    pub fn zend_init_fpu();
12327    pub fn zend_shutdown_fpu();
12328    pub fn zend_ensure_fpu_mode();
12329    pub static mut zend_multibyte_encoding_utf32be: *const zend_encoding;
12330    pub static mut zend_multibyte_encoding_utf32le: *const zend_encoding;
12331    pub static mut zend_multibyte_encoding_utf16be: *const zend_encoding;
12332    pub static mut zend_multibyte_encoding_utf16le: *const zend_encoding;
12333    pub static mut zend_multibyte_encoding_utf8: *const zend_encoding;
12334    pub fn zend_multibyte_set_functions(functions: *const zend_multibyte_functions) -> zend_result;
12335    pub fn zend_multibyte_restore_functions();
12336    pub fn zend_multibyte_get_functions() -> *const zend_multibyte_functions;
12337    pub fn zend_multibyte_fetch_encoding(
12338        name: *const ::std::os::raw::c_char,
12339    ) -> *const zend_encoding;
12340    pub fn zend_multibyte_get_encoding_name(
12341        encoding: *const zend_encoding,
12342    ) -> *const ::std::os::raw::c_char;
12343    pub fn zend_multibyte_check_lexer_compatibility(
12344        encoding: *const zend_encoding,
12345    ) -> ::std::os::raw::c_int;
12346    pub fn zend_multibyte_encoding_detector(
12347        string: *const ::std::os::raw::c_uchar,
12348        length: usize,
12349        list: *mut *const zend_encoding,
12350        list_size: usize,
12351    ) -> *const zend_encoding;
12352    pub fn zend_multibyte_encoding_converter(
12353        to: *mut *mut ::std::os::raw::c_uchar,
12354        to_length: *mut usize,
12355        from: *const ::std::os::raw::c_uchar,
12356        from_length: usize,
12357        encoding_to: *const zend_encoding,
12358        encoding_from: *const zend_encoding,
12359    ) -> usize;
12360    pub fn zend_multibyte_parse_encoding_list(
12361        encoding_list: *const ::std::os::raw::c_char,
12362        encoding_list_len: usize,
12363        return_list: *mut *mut *const zend_encoding,
12364        return_size: *mut usize,
12365        persistent: bool,
12366    ) -> zend_result;
12367    pub fn zend_multibyte_get_internal_encoding() -> *const zend_encoding;
12368    pub fn zend_multibyte_get_script_encoding() -> *const zend_encoding;
12369    pub fn zend_multibyte_set_script_encoding(
12370        encoding_list: *mut *const zend_encoding,
12371        encoding_list_size: usize,
12372    ) -> zend_result;
12373    pub fn zend_multibyte_set_internal_encoding(encoding: *const zend_encoding) -> zend_result;
12374    pub fn zend_multibyte_set_script_encoding_by_string(
12375        new_value: *const ::std::os::raw::c_char,
12376        new_value_length: usize,
12377    ) -> zend_result;
12378    #[link_name = "zend_arena_create__extern"]
12379    pub fn zend_arena_create(size: usize) -> *mut zend_arena;
12380    #[link_name = "zend_arena_destroy__extern"]
12381    pub fn zend_arena_destroy(arena: *mut zend_arena);
12382    #[link_name = "zend_arena_alloc__extern"]
12383    pub fn zend_arena_alloc(
12384        arena_ptr: *mut *mut zend_arena,
12385        size: usize,
12386    ) -> *mut ::std::os::raw::c_void;
12387    #[link_name = "zend_arena_calloc__extern"]
12388    pub fn zend_arena_calloc(
12389        arena_ptr: *mut *mut zend_arena,
12390        count: usize,
12391        unit_size: usize,
12392    ) -> *mut ::std::os::raw::c_void;
12393    #[link_name = "zend_arena_checkpoint__extern"]
12394    pub fn zend_arena_checkpoint(arena: *mut zend_arena) -> *mut ::std::os::raw::c_void;
12395    #[link_name = "zend_arena_release__extern"]
12396    pub fn zend_arena_release(
12397        arena_ptr: *mut *mut zend_arena,
12398        checkpoint: *mut ::std::os::raw::c_void,
12399    );
12400    #[link_name = "zend_arena_contains__extern"]
12401    pub fn zend_arena_contains(arena: *mut zend_arena, ptr: *mut ::std::os::raw::c_void) -> bool;
12402    pub fn zend_call_stack_init();
12403    pub fn zend_call_stack_get(stack: *mut zend_call_stack) -> bool;
12404    #[doc = " Returns an approximation of the current stack position"]
12405    #[link_name = "zend_call_stack_position__extern"]
12406    pub fn zend_call_stack_position() -> *mut ::std::os::raw::c_void;
12407    #[link_name = "zend_call_stack_overflowed__extern"]
12408    pub fn zend_call_stack_overflowed(stack_limit: *mut ::std::os::raw::c_void) -> bool;
12409    #[link_name = "zend_call_stack_limit__extern"]
12410    pub fn zend_call_stack_limit(
12411        base: *mut ::std::os::raw::c_void,
12412        size: usize,
12413        reserved_size: usize,
12414    ) -> *mut ::std::os::raw::c_void;
12415    #[link_name = "zend_call_stack_default_size__extern"]
12416    pub fn zend_call_stack_default_size() -> usize;
12417    pub fn init_compiler();
12418    pub fn shutdown_compiler();
12419    pub fn zend_init_compiler_data_structures();
12420    pub fn zend_oparray_context_begin(
12421        prev_context: *mut zend_oparray_context,
12422        op_array: *mut zend_op_array,
12423    );
12424    pub fn zend_oparray_context_end(prev_context: *mut zend_oparray_context);
12425    pub fn zend_file_context_begin(prev_context: *mut zend_file_context);
12426    pub fn zend_file_context_end(prev_context: *mut zend_file_context);
12427    pub static mut zend_compile_file: ::std::option::Option<
12428        unsafe extern "C" fn(
12429            file_handle: *mut zend_file_handle,
12430            type_: ::std::os::raw::c_int,
12431        ) -> *mut zend_op_array,
12432    >;
12433    pub static mut zend_compile_string: ::std::option::Option<
12434        unsafe extern "C" fn(
12435            source_string: *mut zend_string,
12436            filename: *const ::std::os::raw::c_char,
12437            position: zend_compile_position,
12438        ) -> *mut zend_op_array,
12439    >;
12440    pub fn lex_scan(
12441        zendlval: *mut zval,
12442        elem: *mut zend_parser_stack_elem,
12443    ) -> ::std::os::raw::c_int;
12444    pub fn startup_scanner();
12445    pub fn shutdown_scanner();
12446    pub fn zend_set_compiled_filename(new_compiled_filename: *mut zend_string) -> *mut zend_string;
12447    pub fn zend_restore_compiled_filename(original_compiled_filename: *mut zend_string);
12448    pub fn zend_get_compiled_filename() -> *mut zend_string;
12449    pub fn zend_get_compiled_lineno() -> ::std::os::raw::c_int;
12450    pub fn zend_get_scanned_file_offset() -> usize;
12451    pub fn zend_get_compiled_variable_name(
12452        op_array: *const zend_op_array,
12453        var: u32,
12454    ) -> *mut zend_string;
12455    pub fn get_unary_op(opcode: ::std::os::raw::c_int) -> unary_op_type;
12456    pub fn get_binary_op(opcode: ::std::os::raw::c_int) -> binary_op_type;
12457    pub fn zend_stop_lexing();
12458    pub fn zend_emit_final_return(return_one: bool);
12459    pub fn zend_ast_append_str(left: *mut zend_ast, right: *mut zend_ast) -> *mut zend_ast;
12460    pub fn zend_negate_num_string(ast: *mut zend_ast) -> *mut zend_ast;
12461    pub fn zend_add_class_modifier(flags: u32, new_flag: u32) -> u32;
12462    pub fn zend_add_anonymous_class_modifier(flags: u32, new_flag: u32) -> u32;
12463    pub fn zend_add_member_modifier(
12464        flags: u32,
12465        new_flag: u32,
12466        target: zend_modifier_target::Type,
12467    ) -> u32;
12468    pub fn zend_modifier_token_to_flag(target: zend_modifier_target::Type, flags: u32) -> u32;
12469    pub fn zend_modifier_list_to_flags(
12470        target: zend_modifier_target::Type,
12471        modifiers: *mut zend_ast,
12472    ) -> u32;
12473    pub fn zend_handle_encoding_declaration(ast: *mut zend_ast) -> bool;
12474    pub fn zend_bind_class_in_slot(
12475        class_table_slot: *mut zval,
12476        lcname: *mut zval,
12477        lc_parent_name: *mut zend_string,
12478    ) -> *mut zend_class_entry;
12479    pub fn do_bind_function(func: *mut zend_function, lcname: *mut zval) -> zend_result;
12480    pub fn do_bind_class(lcname: *mut zval, lc_parent_name: *mut zend_string) -> zend_result;
12481    pub fn zend_resolve_goto_label(op_array: *mut zend_op_array, opline: *mut zend_op);
12482    pub fn function_add_ref(function: *mut zend_function);
12483    pub fn zval_make_interned_string(zv: *mut zval) -> *mut zend_string;
12484    pub fn compile_file(
12485        file_handle: *mut zend_file_handle,
12486        type_: ::std::os::raw::c_int,
12487    ) -> *mut zend_op_array;
12488    pub fn compile_string(
12489        source_string: *mut zend_string,
12490        filename: *const ::std::os::raw::c_char,
12491        position: zend_compile_position,
12492    ) -> *mut zend_op_array;
12493    pub fn compile_filename(
12494        type_: ::std::os::raw::c_int,
12495        filename: *mut zend_string,
12496    ) -> *mut zend_op_array;
12497    pub fn zend_compile_string_to_ast(
12498        code: *mut zend_string,
12499        ast_arena: *mut *mut _zend_arena,
12500        filename: *mut zend_string,
12501    ) -> *mut zend_ast;
12502    pub fn zend_execute_scripts(
12503        type_: ::std::os::raw::c_int,
12504        retval: *mut zval,
12505        file_count: ::std::os::raw::c_int,
12506        ...
12507    ) -> zend_result;
12508    pub fn zend_execute_script(
12509        type_: ::std::os::raw::c_int,
12510        retval: *mut zval,
12511        file_handle: *mut zend_file_handle,
12512    ) -> zend_result;
12513    pub fn open_file_for_scanning(file_handle: *mut zend_file_handle) -> zend_result;
12514    pub fn init_op_array(
12515        op_array: *mut zend_op_array,
12516        type_: u8,
12517        initial_ops_size: ::std::os::raw::c_int,
12518    );
12519    pub fn destroy_op_array(op_array: *mut zend_op_array);
12520    pub fn zend_destroy_static_vars(op_array: *mut zend_op_array);
12521    pub fn zend_cleanup_mutable_class_data(ce: *mut zend_class_entry);
12522    pub fn zend_cleanup_internal_class_data(ce: *mut zend_class_entry);
12523    pub fn zend_type_release(type_: zend_type, persistent: bool);
12524    pub fn zend_create_member_string(
12525        class_name: *mut zend_string,
12526        member_name: *mut zend_string,
12527    ) -> *mut zend_string;
12528    pub fn zend_user_exception_handler();
12529    pub fn zend_free_internal_arg_info(function: *mut zend_internal_function);
12530    pub fn destroy_zend_function(function: *mut zend_function);
12531    pub fn zend_function_dtor(zv: *mut zval);
12532    pub fn destroy_zend_class(zv: *mut zval);
12533    pub fn zend_class_add_ref(zv: *mut zval);
12534    pub fn zend_mangle_property_name(
12535        src1: *const ::std::os::raw::c_char,
12536        src1_length: usize,
12537        src2: *const ::std::os::raw::c_char,
12538        src2_length: usize,
12539        internal: bool,
12540    ) -> *mut zend_string;
12541    pub fn zend_unmangle_property_name_ex(
12542        name: *const zend_string,
12543        class_name: *mut *const ::std::os::raw::c_char,
12544        prop_name: *mut *const ::std::os::raw::c_char,
12545        prop_len: *mut usize,
12546    ) -> zend_result;
12547    #[link_name = "zend_get_unmangled_property_name__extern"]
12548    pub fn zend_get_unmangled_property_name(
12549        mangled_prop: *const zend_string,
12550    ) -> *const ::std::os::raw::c_char;
12551    pub fn zend_recalc_live_ranges(
12552        op_array: *mut zend_op_array,
12553        needs_live_range: zend_needs_live_range_cb,
12554    );
12555    pub fn pass_two(op_array: *mut zend_op_array);
12556    pub fn zend_is_compiling() -> bool;
12557    pub fn zend_make_compiled_string_description(
12558        name: *const ::std::os::raw::c_char,
12559    ) -> *mut ::std::os::raw::c_char;
12560    pub fn zend_initialize_class_data(ce: *mut zend_class_entry, nullify_handlers: bool);
12561    pub fn zend_get_class_fetch_type(name: *const zend_string) -> u32;
12562    pub fn zend_get_call_op(
12563        init_op: *const zend_op,
12564        fbc: *mut zend_function,
12565        result_used: bool,
12566    ) -> u8;
12567    pub fn zend_is_smart_branch(opline: *const zend_op) -> bool;
12568    pub fn zend_register_auto_global(
12569        name: *mut zend_string,
12570        jit: bool,
12571        auto_global_callback: zend_auto_global_callback,
12572    ) -> zend_result;
12573    pub fn zend_activate_auto_globals();
12574    pub fn zend_is_auto_global(name: *mut zend_string) -> bool;
12575    pub fn zend_is_auto_global_str(name: *const ::std::os::raw::c_char, len: usize) -> bool;
12576    pub fn zend_dirname(path: *mut ::std::os::raw::c_char, len: usize) -> usize;
12577    pub fn zend_set_function_arg_flags(func: *mut zend_function);
12578    pub fn zendlex(elem: *mut zend_parser_stack_elem) -> ::std::os::raw::c_int;
12579    pub fn zend_assert_valid_class_name(
12580        const_name: *const zend_string,
12581        type_: *const ::std::os::raw::c_char,
12582    );
12583    pub fn zend_type_to_string_resolved(
12584        type_: zend_type,
12585        scope: *mut zend_class_entry,
12586    ) -> *mut zend_string;
12587    pub fn zend_type_to_string(type_: zend_type) -> *mut zend_string;
12588    #[link_name = "zend_check_arg_send_type__extern"]
12589    pub fn zend_check_arg_send_type(zf: *const zend_function, arg_num: u32, mask: u32) -> bool;
12590    pub fn zend_is_op_long_compatible(op: *const zval) -> bool;
12591    pub fn zend_binary_op_produces_error(opcode: u32, op1: *const zval, op2: *const zval) -> bool;
12592    pub fn zend_unary_op_produces_error(opcode: u32, op: *const zval) -> bool;
12593    pub fn zend_try_ct_eval_cast(result: *mut zval, type_: u32, op1: *mut zval) -> bool;
12594    pub static mut module_registry: HashTable;
12595    pub fn module_destructor(module: *mut zend_module_entry);
12596    pub fn module_registry_request_startup(module: *mut zend_module_entry)
12597    -> ::std::os::raw::c_int;
12598    pub fn module_registry_unload(module: *const zend_module_entry);
12599    pub fn zend_register_list_destructors_ex(
12600        ld: rsrc_dtor_func_t,
12601        pld: rsrc_dtor_func_t,
12602        type_name: *const ::std::os::raw::c_char,
12603        module_number: ::std::os::raw::c_int,
12604    ) -> ::std::os::raw::c_int;
12605    pub fn list_entry_destructor(ptr: *mut zval);
12606    pub fn plist_entry_destructor(ptr: *mut zval);
12607    pub fn zend_clean_module_rsrc_dtors(module_number: ::std::os::raw::c_int);
12608    pub fn zend_init_rsrc_list();
12609    pub fn zend_init_rsrc_plist();
12610    pub fn zend_close_rsrc_list(ht: *mut HashTable);
12611    pub fn zend_destroy_rsrc_list(ht: *mut HashTable);
12612    pub fn zend_init_rsrc_list_dtors();
12613    pub fn zend_destroy_rsrc_list_dtors();
12614    pub fn zend_list_insert(
12615        ptr: *mut ::std::os::raw::c_void,
12616        type_: ::std::os::raw::c_int,
12617    ) -> *mut zval;
12618    pub fn zend_list_free(res: *mut zend_resource);
12619    pub fn zend_list_delete(res: *mut zend_resource) -> zend_result;
12620    pub fn zend_list_close(res: *mut zend_resource);
12621    pub fn zend_register_resource(
12622        rsrc_pointer: *mut ::std::os::raw::c_void,
12623        rsrc_type: ::std::os::raw::c_int,
12624    ) -> *mut zend_resource;
12625    pub fn zend_fetch_resource(
12626        res: *mut zend_resource,
12627        resource_type_name: *const ::std::os::raw::c_char,
12628        resource_type: ::std::os::raw::c_int,
12629    ) -> *mut ::std::os::raw::c_void;
12630    pub fn zend_fetch_resource2(
12631        res: *mut zend_resource,
12632        resource_type_name: *const ::std::os::raw::c_char,
12633        resource_type: ::std::os::raw::c_int,
12634        resource_type2: ::std::os::raw::c_int,
12635    ) -> *mut ::std::os::raw::c_void;
12636    pub fn zend_fetch_resource_ex(
12637        res: *mut zval,
12638        resource_type_name: *const ::std::os::raw::c_char,
12639        resource_type: ::std::os::raw::c_int,
12640    ) -> *mut ::std::os::raw::c_void;
12641    pub fn zend_fetch_resource2_ex(
12642        res: *mut zval,
12643        resource_type_name: *const ::std::os::raw::c_char,
12644        resource_type: ::std::os::raw::c_int,
12645        resource_type2: ::std::os::raw::c_int,
12646    ) -> *mut ::std::os::raw::c_void;
12647    pub fn zend_rsrc_list_get_rsrc_type(res: *mut zend_resource) -> *const ::std::os::raw::c_char;
12648    pub fn zend_fetch_list_dtor_id(
12649        type_name: *const ::std::os::raw::c_char,
12650    ) -> ::std::os::raw::c_int;
12651    pub fn zend_register_persistent_resource(
12652        key: *const ::std::os::raw::c_char,
12653        key_len: usize,
12654        rsrc_pointer: *mut ::std::os::raw::c_void,
12655        rsrc_type: ::std::os::raw::c_int,
12656    ) -> *mut zend_resource;
12657    pub fn zend_register_persistent_resource_ex(
12658        key: *mut zend_string,
12659        rsrc_pointer: *mut ::std::os::raw::c_void,
12660        rsrc_type: ::std::os::raw::c_int,
12661    ) -> *mut zend_resource;
12662    pub static mut le_index_ptr: ::std::os::raw::c_int;
12663    pub fn clean_module_constants(module_number: ::std::os::raw::c_int);
12664    pub fn free_zend_constant(zv: *mut zval);
12665    pub fn zend_startup_constants();
12666    pub fn zend_register_standard_constants();
12667    pub fn zend_verify_const_access(c: *mut zend_class_constant, ce: *mut zend_class_entry)
12668    -> bool;
12669    pub fn zend_get_constant(name: *mut zend_string) -> *mut zval;
12670    pub fn zend_get_constant_ptr(name: *mut zend_string) -> *mut zend_constant;
12671    pub fn zend_get_constant_str(name: *const ::std::os::raw::c_char, name_len: usize)
12672    -> *mut zval;
12673    pub fn zend_get_constant_ex(
12674        name: *mut zend_string,
12675        scope: *mut zend_class_entry,
12676        flags: u32,
12677    ) -> *mut zval;
12678    pub fn zend_get_class_constant_ex(
12679        class_name: *mut zend_string,
12680        constant_name: *mut zend_string,
12681        scope: *mut zend_class_entry,
12682        flags: u32,
12683    ) -> *mut zval;
12684    pub fn zend_register_bool_constant(
12685        name: *const ::std::os::raw::c_char,
12686        name_len: usize,
12687        bval: bool,
12688        flags: ::std::os::raw::c_int,
12689        module_number: ::std::os::raw::c_int,
12690    ) -> *mut zend_constant;
12691    pub fn zend_register_null_constant(
12692        name: *const ::std::os::raw::c_char,
12693        name_len: usize,
12694        flags: ::std::os::raw::c_int,
12695        module_number: ::std::os::raw::c_int,
12696    ) -> *mut zend_constant;
12697    pub fn zend_register_long_constant(
12698        name: *const ::std::os::raw::c_char,
12699        name_len: usize,
12700        lval: zend_long,
12701        flags: ::std::os::raw::c_int,
12702        module_number: ::std::os::raw::c_int,
12703    ) -> *mut zend_constant;
12704    pub fn zend_register_double_constant(
12705        name: *const ::std::os::raw::c_char,
12706        name_len: usize,
12707        dval: f64,
12708        flags: ::std::os::raw::c_int,
12709        module_number: ::std::os::raw::c_int,
12710    ) -> *mut zend_constant;
12711    pub fn zend_register_string_constant(
12712        name: *const ::std::os::raw::c_char,
12713        name_len: usize,
12714        strval: *const ::std::os::raw::c_char,
12715        flags: ::std::os::raw::c_int,
12716        module_number: ::std::os::raw::c_int,
12717    ) -> *mut zend_constant;
12718    pub fn zend_register_stringl_constant(
12719        name: *const ::std::os::raw::c_char,
12720        name_len: usize,
12721        strval: *const ::std::os::raw::c_char,
12722        strlen: usize,
12723        flags: ::std::os::raw::c_int,
12724        module_number: ::std::os::raw::c_int,
12725    ) -> *mut zend_constant;
12726    pub fn zend_register_constant(c: *mut zend_constant) -> *mut zend_constant;
12727    pub fn zend_constant_add_attributes(c: *mut zend_constant, attributes: *mut HashTable);
12728    pub fn _zend_get_special_const(
12729        name: *const ::std::os::raw::c_char,
12730        name_len: usize,
12731    ) -> *mut zend_constant;
12732    #[link_name = "zend_get_special_const__extern"]
12733    pub fn zend_get_special_const(
12734        name: *const ::std::os::raw::c_char,
12735        name_len: usize,
12736    ) -> *mut zend_constant;
12737    pub static mut zend_execute_ex:
12738        ::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
12739    pub static mut zend_execute_internal: ::std::option::Option<
12740        unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval),
12741    >;
12742    pub static mut zend_autoload: ::std::option::Option<
12743        unsafe extern "C" fn(
12744            name: *mut zend_string,
12745            lc_name: *mut zend_string,
12746        ) -> *mut zend_class_entry,
12747    >;
12748    pub fn init_executor();
12749    pub fn shutdown_executor();
12750    pub fn shutdown_destructors();
12751    pub fn zend_shutdown_executor_values(fast_shutdown: bool);
12752    pub fn zend_init_execute_data(
12753        execute_data: *mut zend_execute_data,
12754        op_array: *mut zend_op_array,
12755        return_value: *mut zval,
12756    );
12757    pub fn zend_init_func_execute_data(
12758        execute_data: *mut zend_execute_data,
12759        op_array: *mut zend_op_array,
12760        return_value: *mut zval,
12761    );
12762    pub fn zend_init_code_execute_data(
12763        execute_data: *mut zend_execute_data,
12764        op_array: *mut zend_op_array,
12765        return_value: *mut zval,
12766    );
12767    pub fn zend_execute(op_array: *mut zend_op_array, return_value: *mut zval);
12768    pub fn execute_ex(execute_data: *mut zend_execute_data);
12769    pub fn execute_internal(execute_data: *mut zend_execute_data, return_value: *mut zval);
12770    pub fn zend_is_valid_class_name(name: *mut zend_string) -> bool;
12771    pub fn zend_lookup_class(name: *mut zend_string) -> *mut zend_class_entry;
12772    pub fn zend_lookup_class_ex(
12773        name: *mut zend_string,
12774        lcname: *mut zend_string,
12775        flags: u32,
12776    ) -> *mut zend_class_entry;
12777    pub fn zend_get_called_scope(ex: *mut zend_execute_data) -> *mut zend_class_entry;
12778    pub fn zend_get_this_object(ex: *mut zend_execute_data) -> *mut zend_object;
12779    pub fn zend_eval_string(
12780        str_: *const ::std::os::raw::c_char,
12781        retval_ptr: *mut zval,
12782        string_name: *const ::std::os::raw::c_char,
12783    ) -> zend_result;
12784    pub fn zend_eval_stringl(
12785        str_: *const ::std::os::raw::c_char,
12786        str_len: usize,
12787        retval_ptr: *mut zval,
12788        string_name: *const ::std::os::raw::c_char,
12789    ) -> zend_result;
12790    pub fn zend_eval_string_ex(
12791        str_: *const ::std::os::raw::c_char,
12792        retval_ptr: *mut zval,
12793        string_name: *const ::std::os::raw::c_char,
12794        handle_exceptions: bool,
12795    ) -> zend_result;
12796    pub fn zend_eval_stringl_ex(
12797        str_: *const ::std::os::raw::c_char,
12798        str_len: usize,
12799        retval_ptr: *mut zval,
12800        string_name: *const ::std::os::raw::c_char,
12801        handle_exceptions: bool,
12802    ) -> zend_result;
12803    pub static zend_pass_function: zend_internal_function;
12804    pub fn zend_missing_arg_error(execute_data: *const zend_execute_data);
12805    pub fn zend_deprecated_function(fbc: *const zend_function);
12806    pub fn zend_nodiscard_function(fbc: *const zend_function);
12807    pub fn zend_deprecated_class_constant(
12808        c: *const zend_class_constant,
12809        constant_name: *const zend_string,
12810    );
12811    pub fn zend_deprecated_constant(c: *const zend_constant, constant_name: *const zend_string);
12812    pub fn zend_use_of_deprecated_trait(trait_: *mut zend_class_entry, used_by: *const zend_string);
12813    pub fn zend_false_to_array_deprecated();
12814    pub fn zend_param_must_be_ref(func: *const zend_function, arg_num: u32);
12815    pub fn zend_use_resource_as_offset(dim: *const zval);
12816    pub fn zend_call_stack_size_error();
12817    pub fn zend_verify_ref_assignable_zval(
12818        ref_: *mut zend_reference,
12819        zv: *mut zval,
12820        strict: bool,
12821    ) -> bool;
12822    pub fn zend_verify_prop_assignable_by_ref_ex(
12823        prop_info: *const zend_property_info,
12824        orig_val: *mut zval,
12825        strict: bool,
12826        context: zend_verify_prop_assignable_by_ref_context::Type,
12827    ) -> bool;
12828    pub fn zend_verify_prop_assignable_by_ref(
12829        prop_info: *const zend_property_info,
12830        orig_val: *mut zval,
12831        strict: bool,
12832    ) -> bool;
12833    pub fn zend_throw_ref_type_error_zval(prop: *const zend_property_info, zv: *const zval);
12834    pub fn zend_throw_ref_type_error_type(
12835        prop1: *const zend_property_info,
12836        prop2: *const zend_property_info,
12837        zv: *const zval,
12838    );
12839    pub fn zend_undefined_offset_write(ht: *mut HashTable, lval: zend_long) -> *mut zval;
12840    pub fn zend_undefined_index_write(ht: *mut HashTable, offset: *mut zend_string) -> *mut zval;
12841    pub fn zend_wrong_string_offset_error();
12842    pub fn zend_readonly_property_modification_error(info: *const zend_property_info);
12843    pub fn zend_readonly_property_modification_error_ex(
12844        class_name: *const ::std::os::raw::c_char,
12845        prop_name: *const ::std::os::raw::c_char,
12846    );
12847    pub fn zend_readonly_property_indirect_modification_error(info: *const zend_property_info);
12848    pub fn zend_invalid_class_constant_type_error(type_: u8);
12849    pub fn zend_object_released_while_assigning_to_property_error(info: *const zend_property_info);
12850    pub fn zend_cannot_add_element();
12851    pub fn zend_asymmetric_visibility_property_modification_error(
12852        prop_info: *const zend_property_info,
12853        operation: *const ::std::os::raw::c_char,
12854    );
12855    pub fn zend_verify_scalar_type_hint(
12856        type_mask: u32,
12857        arg: *mut zval,
12858        strict: bool,
12859        is_internal_arg: bool,
12860    ) -> bool;
12861    pub fn zend_verify_arg_error(
12862        zf: *const zend_function,
12863        arg_info: *const zend_arg_info,
12864        arg_num: u32,
12865        value: *const zval,
12866    );
12867    pub fn zend_verify_return_error(zf: *const zend_function, value: *const zval);
12868    pub fn zend_verify_never_error(zf: *const zend_function);
12869    pub fn zend_verify_ref_array_assignable(ref_: *mut zend_reference) -> bool;
12870    pub fn zend_check_user_type_slow(
12871        type_: *const zend_type,
12872        arg: *mut zval,
12873        ref_: *const zend_reference,
12874        is_return_type: bool,
12875    ) -> bool;
12876    pub fn zend_internal_call_should_throw(
12877        fbc: *const zend_function,
12878        call: *mut zend_execute_data,
12879    ) -> bool;
12880    pub fn zend_internal_call_arginfo_violation(fbc: *const zend_function);
12881    pub fn zend_verify_internal_return_type(zf: *const zend_function, ret: *mut zval) -> bool;
12882    pub fn zend_ref_add_type_source(
12883        source_list: *mut zend_property_info_source_list,
12884        prop: *mut zend_property_info,
12885    );
12886    pub fn zend_ref_del_type_source(
12887        source_list: *mut zend_property_info_source_list,
12888        prop: *const zend_property_info,
12889    );
12890    pub fn zend_assign_to_typed_ref(
12891        variable_ptr: *mut zval,
12892        value: *mut zval,
12893        value_type: u8,
12894        strict: bool,
12895    ) -> *mut zval;
12896    pub fn zend_assign_to_typed_ref_ex(
12897        variable_ptr: *mut zval,
12898        value: *mut zval,
12899        value_type: u8,
12900        strict: bool,
12901        garbage_ptr: *mut *mut zend_refcounted,
12902    ) -> *mut zval;
12903    #[link_name = "zend_copy_to_variable__extern"]
12904    pub fn zend_copy_to_variable(variable_ptr: *mut zval, value: *mut zval, value_type: u8);
12905    #[link_name = "zend_assign_to_variable__extern"]
12906    pub fn zend_assign_to_variable(
12907        variable_ptr: *mut zval,
12908        value: *mut zval,
12909        value_type: u8,
12910        strict: bool,
12911    ) -> *mut zval;
12912    #[link_name = "zend_assign_to_variable_ex__extern"]
12913    pub fn zend_assign_to_variable_ex(
12914        variable_ptr: *mut zval,
12915        value: *mut zval,
12916        value_type: zend_uchar,
12917        strict: bool,
12918        garbage_ptr: *mut *mut zend_refcounted,
12919    ) -> *mut zval;
12920    #[link_name = "zend_safe_assign_to_variable_noref__extern"]
12921    pub fn zend_safe_assign_to_variable_noref(variable_ptr: *mut zval, value: *mut zval);
12922    #[link_name = "zend_cast_zval_to_object__extern"]
12923    pub fn zend_cast_zval_to_object(result: *mut zval, expr: *mut zval, op1_type: u8);
12924    #[link_name = "zend_cast_zval_to_array__extern"]
12925    pub fn zend_cast_zval_to_array(result: *mut zval, expr: *mut zval, op1_type: u8);
12926    pub fn zval_update_constant(pp: *mut zval) -> zend_result;
12927    pub fn zval_update_constant_ex(pp: *mut zval, scope: *mut zend_class_entry) -> zend_result;
12928    pub fn zval_update_constant_with_ctx(
12929        pp: *mut zval,
12930        scope: *mut zend_class_entry,
12931        ctx: *mut zend_ast_evaluate_ctx,
12932    ) -> zend_result;
12933    pub fn zend_vm_stack_init();
12934    pub fn zend_vm_stack_init_ex(page_size: usize);
12935    pub fn zend_vm_stack_destroy();
12936    pub fn zend_vm_stack_extend(size: usize) -> *mut ::std::os::raw::c_void;
12937    #[link_name = "zend_vm_stack_new_page__extern"]
12938    pub fn zend_vm_stack_new_page(size: usize, prev: zend_vm_stack) -> zend_vm_stack;
12939    #[link_name = "zend_vm_init_call_frame__extern"]
12940    pub fn zend_vm_init_call_frame(
12941        call: *mut zend_execute_data,
12942        call_info: u32,
12943        func: *mut zend_function,
12944        num_args: u32,
12945        object_or_called_scope: *mut ::std::os::raw::c_void,
12946    );
12947    #[link_name = "zend_vm_stack_push_call_frame_ex__extern"]
12948    pub fn zend_vm_stack_push_call_frame_ex(
12949        used_stack: u32,
12950        call_info: u32,
12951        func: *mut zend_function,
12952        num_args: u32,
12953        object_or_called_scope: *mut ::std::os::raw::c_void,
12954    ) -> *mut zend_execute_data;
12955    #[link_name = "zend_vm_calc_used_stack__extern"]
12956    pub fn zend_vm_calc_used_stack(num_args: u32, func: *mut zend_function) -> u32;
12957    #[link_name = "zend_vm_stack_push_call_frame__extern"]
12958    pub fn zend_vm_stack_push_call_frame(
12959        call_info: u32,
12960        func: *mut zend_function,
12961        num_args: u32,
12962        object_or_called_scope: *mut ::std::os::raw::c_void,
12963    ) -> *mut zend_execute_data;
12964    #[link_name = "zend_vm_stack_free_extra_args_ex__extern"]
12965    pub fn zend_vm_stack_free_extra_args_ex(call_info: u32, call: *mut zend_execute_data);
12966    #[link_name = "zend_vm_stack_free_extra_args__extern"]
12967    pub fn zend_vm_stack_free_extra_args(call: *mut zend_execute_data);
12968    #[link_name = "zend_vm_stack_free_args__extern"]
12969    pub fn zend_vm_stack_free_args(call: *mut zend_execute_data);
12970    #[link_name = "zend_vm_stack_free_call_frame_ex__extern"]
12971    pub fn zend_vm_stack_free_call_frame_ex(call_info: u32, call: *mut zend_execute_data);
12972    #[link_name = "zend_vm_stack_free_call_frame__extern"]
12973    pub fn zend_vm_stack_free_call_frame(call: *mut zend_execute_data);
12974    pub fn zend_vm_stack_copy_call_frame(
12975        call: *mut zend_execute_data,
12976        passed_args: u32,
12977        additional_args: u32,
12978    ) -> *mut zend_execute_data;
12979    #[link_name = "zend_vm_stack_extend_call_frame__extern"]
12980    pub fn zend_vm_stack_extend_call_frame(
12981        call: *mut *mut zend_execute_data,
12982        passed_args: u32,
12983        additional_args: u32,
12984    );
12985    pub fn zend_free_extra_named_params(extra_named_params: *mut zend_array);
12986    pub fn get_active_class_name(
12987        space: *mut *const ::std::os::raw::c_char,
12988    ) -> *const ::std::os::raw::c_char;
12989    pub fn get_active_function_name() -> *const ::std::os::raw::c_char;
12990    pub fn get_active_function_arg_name(arg_num: u32) -> *const ::std::os::raw::c_char;
12991    pub fn get_function_arg_name(
12992        func: *const zend_function,
12993        arg_num: u32,
12994    ) -> *const ::std::os::raw::c_char;
12995    pub fn zend_active_function_ex(execute_data: *mut zend_execute_data) -> *mut zend_function;
12996    #[link_name = "zend_active_function__extern"]
12997    pub fn zend_active_function() -> *mut zend_function;
12998    pub fn get_active_function_or_method_name() -> *mut zend_string;
12999    pub fn get_function_or_method_name(func: *const zend_function) -> *mut zend_string;
13000    pub fn zend_get_executed_filename() -> *const ::std::os::raw::c_char;
13001    pub fn zend_get_executed_filename_ex() -> *mut zend_string;
13002    pub fn zend_get_executed_lineno() -> u32;
13003    pub fn zend_get_executed_scope() -> *mut zend_class_entry;
13004    pub fn zend_is_executing() -> bool;
13005    pub fn zend_cannot_pass_by_reference(arg_num: u32);
13006    pub fn zend_set_timeout(seconds: zend_long, reset_signals: bool);
13007    pub fn zend_unset_timeout();
13008    pub fn zend_timeout() -> !;
13009    pub fn zend_fetch_class(class_name: *mut zend_string, fetch_type: u32)
13010    -> *mut zend_class_entry;
13011    pub fn zend_fetch_class_with_scope(
13012        class_name: *mut zend_string,
13013        fetch_type: u32,
13014        scope: *mut zend_class_entry,
13015    ) -> *mut zend_class_entry;
13016    pub fn zend_fetch_class_by_name(
13017        class_name: *mut zend_string,
13018        lcname: *mut zend_string,
13019        fetch_type: u32,
13020    ) -> *mut zend_class_entry;
13021    pub fn zend_fetch_function(name: *mut zend_string) -> *mut zend_function;
13022    pub fn zend_fetch_function_str(
13023        name: *const ::std::os::raw::c_char,
13024        len: usize,
13025    ) -> *mut zend_function;
13026    pub fn zend_init_func_run_time_cache(op_array: *mut zend_op_array);
13027    pub fn zend_fetch_dimension_const(
13028        result: *mut zval,
13029        container: *mut zval,
13030        dim: *mut zval,
13031        type_: ::std::os::raw::c_int,
13032    );
13033    pub fn zend_get_compiled_variable_value(
13034        execute_data_ptr: *const zend_execute_data,
13035        var: u32,
13036    ) -> *mut zval;
13037    pub fn zend_gcc_global_regs() -> bool;
13038    pub fn zend_set_user_opcode_handler(opcode: u8, handler: user_opcode_handler_t) -> zend_result;
13039    pub fn zend_get_user_opcode_handler(opcode: u8) -> user_opcode_handler_t;
13040    pub fn zend_get_zval_ptr(
13041        opline: *const zend_op,
13042        op_type: ::std::os::raw::c_int,
13043        node: *const znode_op,
13044        execute_data: *const zend_execute_data,
13045    ) -> *mut zval;
13046    pub fn zend_clean_and_cache_symbol_table(symbol_table: *mut zend_array);
13047    pub fn zend_free_compiled_variables(execute_data: *mut zend_execute_data);
13048    pub fn zend_unfinished_calls_gc(
13049        execute_data: *mut zend_execute_data,
13050        call: *mut zend_execute_data,
13051        op_num: u32,
13052        buf: *mut zend_get_gc_buffer,
13053    );
13054    pub fn zend_cleanup_unfinished_execution(
13055        execute_data: *mut zend_execute_data,
13056        op_num: u32,
13057        catch_op_num: u32,
13058    );
13059    pub fn zend_unfinished_execution_gc(
13060        execute_data: *mut zend_execute_data,
13061        call: *mut zend_execute_data,
13062        gc_buffer: *mut zend_get_gc_buffer,
13063    ) -> *mut HashTable;
13064    pub fn zend_unfinished_execution_gc_ex(
13065        execute_data: *mut zend_execute_data,
13066        call: *mut zend_execute_data,
13067        gc_buffer: *mut zend_get_gc_buffer,
13068        suspended_by_yield: bool,
13069    ) -> *mut HashTable;
13070    pub fn zend_fetch_static_property(
13071        ex: *mut zend_execute_data,
13072        fetch_type: ::std::os::raw::c_int,
13073    ) -> *mut zval;
13074    pub fn zend_undefined_method(ce: *const zend_class_entry, method: *const zend_string);
13075    pub fn zend_non_static_method_call(fbc: *const zend_function);
13076    pub fn zend_frameless_observed_call(execute_data: *mut zend_execute_data);
13077    pub fn zend_handle_named_arg(
13078        call_ptr: *mut *mut zend_execute_data,
13079        arg_name: *mut zend_string,
13080        arg_num_ptr: *mut u32,
13081        cache_slot: *mut *mut ::std::os::raw::c_void,
13082    ) -> *mut zval;
13083    pub fn zend_handle_undef_args(call: *mut zend_execute_data) -> zend_result;
13084    pub fn zend_verify_class_constant_type(
13085        c: *const zend_class_constant,
13086        name: *const zend_string,
13087        constant: *mut zval,
13088    ) -> bool;
13089    pub fn zend_verify_class_constant_type_error(
13090        c: *const zend_class_constant,
13091        name: *const zend_string,
13092        constant: *const zval,
13093    );
13094    pub fn zend_verify_property_type(
13095        info: *const zend_property_info,
13096        property: *mut zval,
13097        strict: bool,
13098    ) -> bool;
13099    pub fn zend_verify_property_type_error(info: *const zend_property_info, property: *const zval);
13100    pub fn zend_magic_get_property_type_inconsistency_error(
13101        info: *const zend_property_info,
13102        property: *const zval,
13103    );
13104    pub fn zend_match_unhandled_error(value: *const zval);
13105    pub fn zend_fcall_interrupt(call: *mut zend_execute_data);
13106    #[link_name = "zend_get_bad_ptr__extern"]
13107    pub fn zend_get_bad_ptr() -> *mut ::std::os::raw::c_void;
13108    pub fn zend_next_free_module() -> ::std::os::raw::c_int;
13109    pub fn zend_set_dl_use_deepbind(use_deepbind: bool);
13110    pub fn zend_get_parameters_array_ex(param_count: u32, argument_array: *mut zval)
13111    -> zend_result;
13112    pub fn zend_copy_parameters_array(param_count: u32, argument_array: *mut zval) -> zend_result;
13113    pub fn zend_parse_parameters(
13114        num_args: u32,
13115        type_spec: *const ::std::os::raw::c_char,
13116        ...
13117    ) -> zend_result;
13118    pub fn zend_parse_parameters_ex(
13119        flags: ::std::os::raw::c_int,
13120        num_args: u32,
13121        type_spec: *const ::std::os::raw::c_char,
13122        ...
13123    ) -> zend_result;
13124    pub fn zend_zval_type_name(arg: *const zval) -> *const ::std::os::raw::c_char;
13125    pub fn zend_zval_value_name(arg: *const zval) -> *const ::std::os::raw::c_char;
13126    pub fn zend_zval_get_legacy_type(arg: *const zval) -> *mut zend_string;
13127    pub fn zend_parse_method_parameters(
13128        num_args: u32,
13129        this_ptr: *mut zval,
13130        type_spec: *const ::std::os::raw::c_char,
13131        ...
13132    ) -> zend_result;
13133    pub fn zend_parse_method_parameters_ex(
13134        flags: ::std::os::raw::c_int,
13135        num_args: u32,
13136        this_ptr: *mut zval,
13137        type_spec: *const ::std::os::raw::c_char,
13138        ...
13139    ) -> zend_result;
13140    pub fn zend_parse_parameter(
13141        flags: ::std::os::raw::c_int,
13142        arg_num: u32,
13143        arg: *mut zval,
13144        spec: *const ::std::os::raw::c_char,
13145        ...
13146    ) -> zend_result;
13147    pub fn zend_register_functions(
13148        scope: *mut zend_class_entry,
13149        functions: *const zend_function_entry,
13150        function_table: *mut HashTable,
13151        type_: ::std::os::raw::c_int,
13152    ) -> zend_result;
13153    pub fn zend_unregister_functions(
13154        functions: *const zend_function_entry,
13155        count: ::std::os::raw::c_int,
13156        function_table: *mut HashTable,
13157    );
13158    pub fn zend_startup_module(module_entry: *mut zend_module_entry) -> zend_result;
13159    pub fn zend_register_internal_module(
13160        module_entry: *mut zend_module_entry,
13161    ) -> *mut zend_module_entry;
13162    pub fn zend_register_module_ex(
13163        module: *mut zend_module_entry,
13164        module_type: ::std::os::raw::c_int,
13165    ) -> *mut zend_module_entry;
13166    pub fn zend_startup_module_ex(module: *mut zend_module_entry) -> zend_result;
13167    pub fn zend_startup_modules();
13168    pub fn zend_collect_module_handlers();
13169    pub fn zend_destroy_modules();
13170    pub fn zend_check_magic_method_implementation(
13171        ce: *const zend_class_entry,
13172        fptr: *const zend_function,
13173        lcname: *mut zend_string,
13174        error_type: ::std::os::raw::c_int,
13175    );
13176    pub fn zend_add_magic_method(
13177        ce: *mut zend_class_entry,
13178        fptr: *mut zend_function,
13179        lcname: *mut zend_string,
13180    );
13181    pub fn zend_register_internal_class(
13182        class_entry: *mut zend_class_entry,
13183    ) -> *mut zend_class_entry;
13184    pub fn zend_register_internal_class_ex(
13185        class_entry: *mut zend_class_entry,
13186        parent_ce: *mut zend_class_entry,
13187    ) -> *mut zend_class_entry;
13188    pub fn zend_register_internal_class_with_flags(
13189        class_entry: *mut zend_class_entry,
13190        parent_ce: *mut zend_class_entry,
13191        flags: u32,
13192    ) -> *mut zend_class_entry;
13193    pub fn zend_register_internal_interface(
13194        orig_class_entry: *mut zend_class_entry,
13195    ) -> *mut zend_class_entry;
13196    pub fn zend_class_implements(
13197        class_entry: *mut zend_class_entry,
13198        num_interfaces: ::std::os::raw::c_int,
13199        ...
13200    );
13201    pub fn zend_register_class_alias_ex(
13202        name: *const ::std::os::raw::c_char,
13203        name_len: usize,
13204        ce: *mut zend_class_entry,
13205        persistent: bool,
13206    ) -> zend_result;
13207    #[link_name = "zend_register_class_alias__extern"]
13208    pub fn zend_register_class_alias(
13209        name: *const ::std::os::raw::c_char,
13210        ce: *mut zend_class_entry,
13211    ) -> zend_result;
13212    pub fn zend_disable_functions(function_list: *const ::std::os::raw::c_char);
13213    pub fn zend_wrong_param_count();
13214    pub fn zend_wrong_property_read(object: *mut zval, property: *mut zval);
13215    pub fn zend_release_fcall_info_cache(fcc: *mut zend_fcall_info_cache);
13216    pub fn zend_get_callable_name_ex(
13217        callable: *mut zval,
13218        object: *mut zend_object,
13219    ) -> *mut zend_string;
13220    pub fn zend_get_callable_name(callable: *mut zval) -> *mut zend_string;
13221    pub fn zend_is_callable_at_frame(
13222        callable: *mut zval,
13223        object: *mut zend_object,
13224        frame: *mut zend_execute_data,
13225        check_flags: u32,
13226        fcc: *mut zend_fcall_info_cache,
13227        error: *mut *mut ::std::os::raw::c_char,
13228    ) -> bool;
13229    pub fn zend_is_callable_ex(
13230        callable: *mut zval,
13231        object: *mut zend_object,
13232        check_flags: u32,
13233        callable_name: *mut *mut zend_string,
13234        fcc: *mut zend_fcall_info_cache,
13235        error: *mut *mut ::std::os::raw::c_char,
13236    ) -> bool;
13237    pub fn zend_is_callable(
13238        callable: *mut zval,
13239        check_flags: u32,
13240        callable_name: *mut *mut zend_string,
13241    ) -> bool;
13242    pub fn zend_make_callable(callable: *mut zval, callable_name: *mut *mut zend_string) -> bool;
13243    pub fn zend_get_module_version(
13244        module_name: *const ::std::os::raw::c_char,
13245    ) -> *const ::std::os::raw::c_char;
13246    pub fn zend_get_module_started(module_name: *const ::std::os::raw::c_char) -> zend_result;
13247    pub fn zend_declare_typed_property(
13248        ce: *mut zend_class_entry,
13249        name: *mut zend_string,
13250        property: *mut zval,
13251        access_type: ::std::os::raw::c_int,
13252        doc_comment: *mut zend_string,
13253        type_: zend_type,
13254    ) -> *mut zend_property_info;
13255    pub fn zend_declare_property_ex(
13256        ce: *mut zend_class_entry,
13257        name: *mut zend_string,
13258        property: *mut zval,
13259        access_type: ::std::os::raw::c_int,
13260        doc_comment: *mut zend_string,
13261    );
13262    pub fn zend_declare_property(
13263        ce: *mut zend_class_entry,
13264        name: *const ::std::os::raw::c_char,
13265        name_length: usize,
13266        property: *mut zval,
13267        access_type: ::std::os::raw::c_int,
13268    );
13269    pub fn zend_declare_property_null(
13270        ce: *mut zend_class_entry,
13271        name: *const ::std::os::raw::c_char,
13272        name_length: usize,
13273        access_type: ::std::os::raw::c_int,
13274    );
13275    pub fn zend_declare_property_bool(
13276        ce: *mut zend_class_entry,
13277        name: *const ::std::os::raw::c_char,
13278        name_length: usize,
13279        value: zend_long,
13280        access_type: ::std::os::raw::c_int,
13281    );
13282    pub fn zend_declare_property_long(
13283        ce: *mut zend_class_entry,
13284        name: *const ::std::os::raw::c_char,
13285        name_length: usize,
13286        value: zend_long,
13287        access_type: ::std::os::raw::c_int,
13288    );
13289    pub fn zend_declare_property_double(
13290        ce: *mut zend_class_entry,
13291        name: *const ::std::os::raw::c_char,
13292        name_length: usize,
13293        value: f64,
13294        access_type: ::std::os::raw::c_int,
13295    );
13296    pub fn zend_declare_property_string(
13297        ce: *mut zend_class_entry,
13298        name: *const ::std::os::raw::c_char,
13299        name_length: usize,
13300        value: *const ::std::os::raw::c_char,
13301        access_type: ::std::os::raw::c_int,
13302    );
13303    pub fn zend_declare_property_stringl(
13304        ce: *mut zend_class_entry,
13305        name: *const ::std::os::raw::c_char,
13306        name_length: usize,
13307        value: *const ::std::os::raw::c_char,
13308        value_len: usize,
13309        access_type: ::std::os::raw::c_int,
13310    );
13311    pub fn zend_declare_typed_class_constant(
13312        ce: *mut zend_class_entry,
13313        name: *mut zend_string,
13314        value: *mut zval,
13315        access_type: ::std::os::raw::c_int,
13316        doc_comment: *mut zend_string,
13317        type_: zend_type,
13318    ) -> *mut zend_class_constant;
13319    pub fn zend_declare_class_constant_ex(
13320        ce: *mut zend_class_entry,
13321        name: *mut zend_string,
13322        value: *mut zval,
13323        access_type: ::std::os::raw::c_int,
13324        doc_comment: *mut zend_string,
13325    ) -> *mut zend_class_constant;
13326    pub fn zend_declare_class_constant(
13327        ce: *mut zend_class_entry,
13328        name: *const ::std::os::raw::c_char,
13329        name_length: usize,
13330        value: *mut zval,
13331    );
13332    pub fn zend_declare_class_constant_null(
13333        ce: *mut zend_class_entry,
13334        name: *const ::std::os::raw::c_char,
13335        name_length: usize,
13336    );
13337    pub fn zend_declare_class_constant_long(
13338        ce: *mut zend_class_entry,
13339        name: *const ::std::os::raw::c_char,
13340        name_length: usize,
13341        value: zend_long,
13342    );
13343    pub fn zend_declare_class_constant_bool(
13344        ce: *mut zend_class_entry,
13345        name: *const ::std::os::raw::c_char,
13346        name_length: usize,
13347        value: bool,
13348    );
13349    pub fn zend_declare_class_constant_double(
13350        ce: *mut zend_class_entry,
13351        name: *const ::std::os::raw::c_char,
13352        name_length: usize,
13353        value: f64,
13354    );
13355    pub fn zend_declare_class_constant_stringl(
13356        ce: *mut zend_class_entry,
13357        name: *const ::std::os::raw::c_char,
13358        name_length: usize,
13359        value: *const ::std::os::raw::c_char,
13360        value_length: usize,
13361    );
13362    pub fn zend_declare_class_constant_string(
13363        ce: *mut zend_class_entry,
13364        name: *const ::std::os::raw::c_char,
13365        name_length: usize,
13366        value: *const ::std::os::raw::c_char,
13367    );
13368    pub fn zend_update_class_constant(
13369        c: *mut zend_class_constant,
13370        name: *const zend_string,
13371        scope: *mut zend_class_entry,
13372    ) -> zend_result;
13373    pub fn zend_update_class_constants(class_type: *mut zend_class_entry) -> zend_result;
13374    pub fn zend_separate_class_constants_table(class_type: *mut zend_class_entry)
13375    -> *mut HashTable;
13376    #[link_name = "zend_class_constants_table__extern"]
13377    pub fn zend_class_constants_table(ce: *mut zend_class_entry) -> *mut HashTable;
13378    #[link_name = "zend_class_default_properties_table__extern"]
13379    pub fn zend_class_default_properties_table(ce: *mut zend_class_entry) -> *mut zval;
13380    #[link_name = "zend_class_set_backed_enum_table__extern"]
13381    pub fn zend_class_set_backed_enum_table(
13382        ce: *mut zend_class_entry,
13383        backed_enum_table: *mut HashTable,
13384    );
13385    #[link_name = "zend_class_backed_enum_table__extern"]
13386    pub fn zend_class_backed_enum_table(ce: *mut zend_class_entry) -> *mut HashTable;
13387    pub fn zend_update_property_ex(
13388        scope: *const zend_class_entry,
13389        object: *mut zend_object,
13390        name: *mut zend_string,
13391        value: *mut zval,
13392    );
13393    pub fn zend_update_property(
13394        scope: *const zend_class_entry,
13395        object: *mut zend_object,
13396        name: *const ::std::os::raw::c_char,
13397        name_length: usize,
13398        value: *mut zval,
13399    );
13400    pub fn zend_update_property_null(
13401        scope: *const zend_class_entry,
13402        object: *mut zend_object,
13403        name: *const ::std::os::raw::c_char,
13404        name_length: usize,
13405    );
13406    pub fn zend_update_property_bool(
13407        scope: *const zend_class_entry,
13408        object: *mut zend_object,
13409        name: *const ::std::os::raw::c_char,
13410        name_length: usize,
13411        value: zend_long,
13412    );
13413    pub fn zend_update_property_long(
13414        scope: *const zend_class_entry,
13415        object: *mut zend_object,
13416        name: *const ::std::os::raw::c_char,
13417        name_length: usize,
13418        value: zend_long,
13419    );
13420    pub fn zend_update_property_double(
13421        scope: *const zend_class_entry,
13422        object: *mut zend_object,
13423        name: *const ::std::os::raw::c_char,
13424        name_length: usize,
13425        value: f64,
13426    );
13427    pub fn zend_update_property_str(
13428        scope: *const zend_class_entry,
13429        object: *mut zend_object,
13430        name: *const ::std::os::raw::c_char,
13431        name_length: usize,
13432        value: *mut zend_string,
13433    );
13434    pub fn zend_update_property_string(
13435        scope: *const zend_class_entry,
13436        object: *mut zend_object,
13437        name: *const ::std::os::raw::c_char,
13438        name_length: usize,
13439        value: *const ::std::os::raw::c_char,
13440    );
13441    pub fn zend_update_property_stringl(
13442        scope: *const zend_class_entry,
13443        object: *mut zend_object,
13444        name: *const ::std::os::raw::c_char,
13445        name_length: usize,
13446        value: *const ::std::os::raw::c_char,
13447        value_length: usize,
13448    );
13449    pub fn zend_unset_property(
13450        scope: *const zend_class_entry,
13451        object: *mut zend_object,
13452        name: *const ::std::os::raw::c_char,
13453        name_length: usize,
13454    );
13455    pub fn zend_update_static_property_ex(
13456        scope: *mut zend_class_entry,
13457        name: *mut zend_string,
13458        value: *mut zval,
13459    ) -> zend_result;
13460    pub fn zend_update_static_property(
13461        scope: *mut zend_class_entry,
13462        name: *const ::std::os::raw::c_char,
13463        name_length: usize,
13464        value: *mut zval,
13465    ) -> zend_result;
13466    pub fn zend_update_static_property_null(
13467        scope: *mut zend_class_entry,
13468        name: *const ::std::os::raw::c_char,
13469        name_length: usize,
13470    ) -> zend_result;
13471    pub fn zend_update_static_property_bool(
13472        scope: *mut zend_class_entry,
13473        name: *const ::std::os::raw::c_char,
13474        name_length: usize,
13475        value: zend_long,
13476    ) -> zend_result;
13477    pub fn zend_update_static_property_long(
13478        scope: *mut zend_class_entry,
13479        name: *const ::std::os::raw::c_char,
13480        name_length: usize,
13481        value: zend_long,
13482    ) -> zend_result;
13483    pub fn zend_update_static_property_double(
13484        scope: *mut zend_class_entry,
13485        name: *const ::std::os::raw::c_char,
13486        name_length: usize,
13487        value: f64,
13488    ) -> zend_result;
13489    pub fn zend_update_static_property_string(
13490        scope: *mut zend_class_entry,
13491        name: *const ::std::os::raw::c_char,
13492        name_length: usize,
13493        value: *const ::std::os::raw::c_char,
13494    ) -> zend_result;
13495    pub fn zend_update_static_property_stringl(
13496        scope: *mut zend_class_entry,
13497        name: *const ::std::os::raw::c_char,
13498        name_length: usize,
13499        value: *const ::std::os::raw::c_char,
13500        value_length: usize,
13501    ) -> zend_result;
13502    pub fn zend_read_property_ex(
13503        scope: *mut zend_class_entry,
13504        object: *mut zend_object,
13505        name: *mut zend_string,
13506        silent: bool,
13507        rv: *mut zval,
13508    ) -> *mut zval;
13509    pub fn zend_read_property(
13510        scope: *mut zend_class_entry,
13511        object: *mut zend_object,
13512        name: *const ::std::os::raw::c_char,
13513        name_length: usize,
13514        silent: bool,
13515        rv: *mut zval,
13516    ) -> *mut zval;
13517    pub fn zend_read_static_property_ex(
13518        scope: *mut zend_class_entry,
13519        name: *mut zend_string,
13520        silent: bool,
13521    ) -> *mut zval;
13522    pub fn zend_read_static_property(
13523        scope: *mut zend_class_entry,
13524        name: *const ::std::os::raw::c_char,
13525        name_length: usize,
13526        silent: bool,
13527    ) -> *mut zval;
13528    pub fn zend_get_type_by_const(type_: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
13529    pub fn object_init(arg: *mut zval);
13530    pub fn object_init_ex(arg: *mut zval, ce: *mut zend_class_entry) -> zend_result;
13531    pub fn object_init_with_constructor(
13532        arg: *mut zval,
13533        class_type: *mut zend_class_entry,
13534        param_count: u32,
13535        params: *mut zval,
13536        named_params: *mut HashTable,
13537    ) -> zend_result;
13538    pub fn object_and_properties_init(
13539        arg: *mut zval,
13540        ce: *mut zend_class_entry,
13541        properties: *mut HashTable,
13542    ) -> zend_result;
13543    pub fn object_properties_init(object: *mut zend_object, class_type: *mut zend_class_entry);
13544    pub fn object_properties_init_ex(object: *mut zend_object, properties: *mut HashTable);
13545    pub fn object_properties_load(object: *mut zend_object, properties: *mut HashTable);
13546    pub fn zend_merge_properties(obj: *mut zval, properties: *mut HashTable);
13547    pub fn add_assoc_long_ex(
13548        arg: *mut zval,
13549        key: *const ::std::os::raw::c_char,
13550        key_len: usize,
13551        n: zend_long,
13552    );
13553    pub fn add_assoc_null_ex(arg: *mut zval, key: *const ::std::os::raw::c_char, key_len: usize);
13554    pub fn add_assoc_bool_ex(
13555        arg: *mut zval,
13556        key: *const ::std::os::raw::c_char,
13557        key_len: usize,
13558        b: bool,
13559    );
13560    pub fn add_assoc_resource_ex(
13561        arg: *mut zval,
13562        key: *const ::std::os::raw::c_char,
13563        key_len: usize,
13564        r: *mut zend_resource,
13565    );
13566    pub fn add_assoc_double_ex(
13567        arg: *mut zval,
13568        key: *const ::std::os::raw::c_char,
13569        key_len: usize,
13570        d: f64,
13571    );
13572    pub fn add_assoc_str_ex(
13573        arg: *mut zval,
13574        key: *const ::std::os::raw::c_char,
13575        key_len: usize,
13576        str_: *mut zend_string,
13577    );
13578    pub fn add_assoc_string_ex(
13579        arg: *mut zval,
13580        key: *const ::std::os::raw::c_char,
13581        key_len: usize,
13582        str_: *const ::std::os::raw::c_char,
13583    );
13584    pub fn add_assoc_stringl_ex(
13585        arg: *mut zval,
13586        key: *const ::std::os::raw::c_char,
13587        key_len: usize,
13588        str_: *const ::std::os::raw::c_char,
13589        length: usize,
13590    );
13591    pub fn add_assoc_array_ex(
13592        arg: *mut zval,
13593        key: *const ::std::os::raw::c_char,
13594        key_len: usize,
13595        arr: *mut zend_array,
13596    );
13597    pub fn add_assoc_object_ex(
13598        arg: *mut zval,
13599        key: *const ::std::os::raw::c_char,
13600        key_len: usize,
13601        obj: *mut zend_object,
13602    );
13603    pub fn add_assoc_reference_ex(
13604        arg: *mut zval,
13605        key: *const ::std::os::raw::c_char,
13606        key_len: usize,
13607        ref_: *mut zend_reference,
13608    );
13609    pub fn add_assoc_zval_ex(
13610        arg: *mut zval,
13611        key: *const ::std::os::raw::c_char,
13612        key_len: usize,
13613        value: *mut zval,
13614    );
13615    #[link_name = "add_assoc_long__extern"]
13616    pub fn add_assoc_long(arg: *mut zval, key: *const ::std::os::raw::c_char, n: zend_long);
13617    #[link_name = "add_assoc_null__extern"]
13618    pub fn add_assoc_null(arg: *mut zval, key: *const ::std::os::raw::c_char);
13619    #[link_name = "add_assoc_bool__extern"]
13620    pub fn add_assoc_bool(arg: *mut zval, key: *const ::std::os::raw::c_char, b: bool);
13621    #[link_name = "add_assoc_resource__extern"]
13622    pub fn add_assoc_resource(
13623        arg: *mut zval,
13624        key: *const ::std::os::raw::c_char,
13625        r: *mut zend_resource,
13626    );
13627    #[link_name = "add_assoc_double__extern"]
13628    pub fn add_assoc_double(arg: *mut zval, key: *const ::std::os::raw::c_char, d: f64);
13629    #[link_name = "add_assoc_str__extern"]
13630    pub fn add_assoc_str(
13631        arg: *mut zval,
13632        key: *const ::std::os::raw::c_char,
13633        str_: *mut zend_string,
13634    );
13635    #[link_name = "add_assoc_string__extern"]
13636    pub fn add_assoc_string(
13637        arg: *mut zval,
13638        key: *const ::std::os::raw::c_char,
13639        str_: *const ::std::os::raw::c_char,
13640    );
13641    #[link_name = "add_assoc_stringl__extern"]
13642    pub fn add_assoc_stringl(
13643        arg: *mut zval,
13644        key: *const ::std::os::raw::c_char,
13645        str_: *const ::std::os::raw::c_char,
13646        length: usize,
13647    );
13648    #[link_name = "add_assoc_array__extern"]
13649    pub fn add_assoc_array(
13650        arg: *mut zval,
13651        key: *const ::std::os::raw::c_char,
13652        arr: *mut zend_array,
13653    );
13654    #[link_name = "add_assoc_object__extern"]
13655    pub fn add_assoc_object(
13656        arg: *mut zval,
13657        key: *const ::std::os::raw::c_char,
13658        obj: *mut zend_object,
13659    );
13660    #[link_name = "add_assoc_reference__extern"]
13661    pub fn add_assoc_reference(
13662        arg: *mut zval,
13663        key: *const ::std::os::raw::c_char,
13664        ref_: *mut zend_reference,
13665    );
13666    #[link_name = "add_assoc_zval__extern"]
13667    pub fn add_assoc_zval(arg: *mut zval, key: *const ::std::os::raw::c_char, value: *mut zval);
13668    pub fn add_index_long(arg: *mut zval, index: zend_ulong, n: zend_long);
13669    pub fn add_index_null(arg: *mut zval, index: zend_ulong);
13670    pub fn add_index_bool(arg: *mut zval, index: zend_ulong, b: bool);
13671    pub fn add_index_resource(arg: *mut zval, index: zend_ulong, r: *mut zend_resource);
13672    pub fn add_index_double(arg: *mut zval, index: zend_ulong, d: f64);
13673    pub fn add_index_str(arg: *mut zval, index: zend_ulong, str_: *mut zend_string);
13674    pub fn add_index_string(arg: *mut zval, index: zend_ulong, str_: *const ::std::os::raw::c_char);
13675    pub fn add_index_stringl(
13676        arg: *mut zval,
13677        index: zend_ulong,
13678        str_: *const ::std::os::raw::c_char,
13679        length: usize,
13680    );
13681    pub fn add_index_array(arg: *mut zval, index: zend_ulong, arr: *mut zend_array);
13682    pub fn add_index_object(arg: *mut zval, index: zend_ulong, obj: *mut zend_object);
13683    pub fn add_index_reference(arg: *mut zval, index: zend_ulong, ref_: *mut zend_reference);
13684    #[link_name = "add_index_zval__extern"]
13685    pub fn add_index_zval(arg: *mut zval, index: zend_ulong, value: *mut zval) -> zend_result;
13686    pub fn add_next_index_long(arg: *mut zval, n: zend_long) -> zend_result;
13687    pub fn add_next_index_null(arg: *mut zval) -> zend_result;
13688    pub fn add_next_index_bool(arg: *mut zval, b: bool) -> zend_result;
13689    pub fn add_next_index_resource(arg: *mut zval, r: *mut zend_resource) -> zend_result;
13690    pub fn add_next_index_double(arg: *mut zval, d: f64) -> zend_result;
13691    pub fn add_next_index_str(arg: *mut zval, str_: *mut zend_string) -> zend_result;
13692    pub fn add_next_index_string(
13693        arg: *mut zval,
13694        str_: *const ::std::os::raw::c_char,
13695    ) -> zend_result;
13696    pub fn add_next_index_stringl(
13697        arg: *mut zval,
13698        str_: *const ::std::os::raw::c_char,
13699        length: usize,
13700    ) -> zend_result;
13701    pub fn add_next_index_array(arg: *mut zval, arr: *mut zend_array) -> zend_result;
13702    pub fn add_next_index_object(arg: *mut zval, obj: *mut zend_object) -> zend_result;
13703    pub fn add_next_index_reference(arg: *mut zval, ref_: *mut zend_reference) -> zend_result;
13704    #[link_name = "add_next_index_zval__extern"]
13705    pub fn add_next_index_zval(arg: *mut zval, value: *mut zval) -> zend_result;
13706    pub fn array_set_zval_key(ht: *mut HashTable, key: *mut zval, value: *mut zval) -> zend_result;
13707    pub fn add_property_long_ex(
13708        arg: *mut zval,
13709        key: *const ::std::os::raw::c_char,
13710        key_len: usize,
13711        l: zend_long,
13712    );
13713    pub fn add_property_null_ex(arg: *mut zval, key: *const ::std::os::raw::c_char, key_len: usize);
13714    pub fn add_property_bool_ex(
13715        arg: *mut zval,
13716        key: *const ::std::os::raw::c_char,
13717        key_len: usize,
13718        b: zend_long,
13719    );
13720    pub fn add_property_resource_ex(
13721        arg: *mut zval,
13722        key: *const ::std::os::raw::c_char,
13723        key_len: usize,
13724        r: *mut zend_resource,
13725    );
13726    pub fn add_property_double_ex(
13727        arg: *mut zval,
13728        key: *const ::std::os::raw::c_char,
13729        key_len: usize,
13730        d: f64,
13731    );
13732    pub fn add_property_str_ex(
13733        arg: *mut zval,
13734        key: *const ::std::os::raw::c_char,
13735        key_len: usize,
13736        str_: *mut zend_string,
13737    );
13738    pub fn add_property_string_ex(
13739        arg: *mut zval,
13740        key: *const ::std::os::raw::c_char,
13741        key_len: usize,
13742        str_: *const ::std::os::raw::c_char,
13743    );
13744    pub fn add_property_stringl_ex(
13745        arg: *mut zval,
13746        key: *const ::std::os::raw::c_char,
13747        key_len: usize,
13748        str_: *const ::std::os::raw::c_char,
13749        length: usize,
13750    );
13751    pub fn add_property_array_ex(
13752        arg: *mut zval,
13753        key: *const ::std::os::raw::c_char,
13754        key_len: usize,
13755        arr: *mut zend_array,
13756    );
13757    pub fn add_property_object_ex(
13758        arg: *mut zval,
13759        key: *const ::std::os::raw::c_char,
13760        key_len: usize,
13761        obj: *mut zend_object,
13762    );
13763    pub fn add_property_reference_ex(
13764        arg: *mut zval,
13765        key: *const ::std::os::raw::c_char,
13766        key_len: usize,
13767        ref_: *mut zend_reference,
13768    );
13769    pub fn add_property_zval_ex(
13770        arg: *mut zval,
13771        key: *const ::std::os::raw::c_char,
13772        key_len: usize,
13773        value: *mut zval,
13774    );
13775    #[link_name = "add_property_long__extern"]
13776    pub fn add_property_long(arg: *mut zval, key: *const ::std::os::raw::c_char, n: zend_long);
13777    #[link_name = "add_property_null__extern"]
13778    pub fn add_property_null(arg: *mut zval, key: *const ::std::os::raw::c_char);
13779    #[link_name = "add_property_bool__extern"]
13780    pub fn add_property_bool(arg: *mut zval, key: *const ::std::os::raw::c_char, b: bool);
13781    #[link_name = "add_property_resource__extern"]
13782    pub fn add_property_resource(
13783        arg: *mut zval,
13784        key: *const ::std::os::raw::c_char,
13785        r: *mut zend_resource,
13786    );
13787    #[link_name = "add_property_double__extern"]
13788    pub fn add_property_double(arg: *mut zval, key: *const ::std::os::raw::c_char, d: f64);
13789    #[link_name = "add_property_str__extern"]
13790    pub fn add_property_str(
13791        arg: *mut zval,
13792        key: *const ::std::os::raw::c_char,
13793        str_: *mut zend_string,
13794    );
13795    #[link_name = "add_property_string__extern"]
13796    pub fn add_property_string(
13797        arg: *mut zval,
13798        key: *const ::std::os::raw::c_char,
13799        str_: *const ::std::os::raw::c_char,
13800    );
13801    #[link_name = "add_property_stringl__extern"]
13802    pub fn add_property_stringl(
13803        arg: *mut zval,
13804        key: *const ::std::os::raw::c_char,
13805        str_: *const ::std::os::raw::c_char,
13806        length: usize,
13807    );
13808    #[link_name = "add_property_array__extern"]
13809    pub fn add_property_array(
13810        arg: *mut zval,
13811        key: *const ::std::os::raw::c_char,
13812        arr: *mut zend_array,
13813    );
13814    #[link_name = "add_property_object__extern"]
13815    pub fn add_property_object(
13816        arg: *mut zval,
13817        key: *const ::std::os::raw::c_char,
13818        obj: *mut zend_object,
13819    );
13820    #[link_name = "add_property_reference__extern"]
13821    pub fn add_property_reference(
13822        arg: *mut zval,
13823        key: *const ::std::os::raw::c_char,
13824        ref_: *mut zend_reference,
13825    );
13826    #[link_name = "add_property_zval__extern"]
13827    pub fn add_property_zval(arg: *mut zval, key: *const ::std::os::raw::c_char, value: *mut zval);
13828    pub fn _call_user_function_impl(
13829        object: *mut zval,
13830        function_name: *mut zval,
13831        retval_ptr: *mut zval,
13832        param_count: u32,
13833        params: *mut zval,
13834        named_params: *mut HashTable,
13835    ) -> zend_result;
13836    #[doc = " Build zend_call_info/cache from a zval*\n\n Caller is responsible to provide a return value (fci->retval), otherwise the we will crash.\n In order to pass parameters the following members need to be set:\n fci->param_count = 0;\n fci->params = NULL;\n The callable_name argument may be NULL."]
13837    pub fn zend_fcall_info_init(
13838        callable: *mut zval,
13839        check_flags: u32,
13840        fci: *mut zend_fcall_info,
13841        fcc: *mut zend_fcall_info_cache,
13842        callable_name: *mut *mut zend_string,
13843        error: *mut *mut ::std::os::raw::c_char,
13844    ) -> zend_result;
13845    #[doc = " Clear arguments connected with zend_fcall_info *fci\n If free_mem is not zero then the params array gets free'd as well"]
13846    pub fn zend_fcall_info_args_clear(fci: *mut zend_fcall_info, free_mem: bool);
13847    #[doc = " Save current arguments from zend_fcall_info *fci\n params array will be set to NULL"]
13848    pub fn zend_fcall_info_args_save(
13849        fci: *mut zend_fcall_info,
13850        param_count: *mut u32,
13851        params: *mut *mut zval,
13852    );
13853    #[doc = " Free arguments connected with zend_fcall_info *fci and set back saved ones."]
13854    pub fn zend_fcall_info_args_restore(
13855        fci: *mut zend_fcall_info,
13856        param_count: u32,
13857        params: *mut zval,
13858    );
13859    #[doc = " Set or clear the arguments in the zend_call_info struct taking care of\n refcount. If args is NULL and arguments are set then those are cleared."]
13860    pub fn zend_fcall_info_args(fci: *mut zend_fcall_info, args: *mut zval) -> zend_result;
13861    pub fn zend_fcall_info_args_ex(
13862        fci: *mut zend_fcall_info,
13863        func: *mut zend_function,
13864        args: *mut zval,
13865    ) -> zend_result;
13866    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount.\n If argc is 0 the arguments which are set will be cleared, else pass\n a variable amount of zval** arguments."]
13867    pub fn zend_fcall_info_argp(fci: *mut zend_fcall_info, argc: u32, argv: *mut zval);
13868    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount.\n If argc is 0 the arguments which are set will be cleared, else pass\n a variable amount of zval** arguments."]
13869    pub fn zend_fcall_info_argv(fci: *mut zend_fcall_info, argc: u32, argv: *mut va_list);
13870    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount.\n If argc is 0 the arguments which are set will be cleared, else pass\n a variable amount of zval** arguments."]
13871    pub fn zend_fcall_info_argn(fci: *mut zend_fcall_info, argc: u32, ...);
13872    #[doc = " Call a function using information created by zend_fcall_info_init()/args().\n If args is given then those replace the argument info in fci is temporarily."]
13873    pub fn zend_fcall_info_call(
13874        fci: *mut zend_fcall_info,
13875        fcc: *mut zend_fcall_info_cache,
13876        retval: *mut zval,
13877        args: *mut zval,
13878    ) -> zend_result;
13879    #[link_name = "zend_fcc_equals__extern"]
13880    pub fn zend_fcc_equals(
13881        a: *const zend_fcall_info_cache,
13882        b: *const zend_fcall_info_cache,
13883    ) -> bool;
13884    #[link_name = "zend_fcc_addref__extern"]
13885    pub fn zend_fcc_addref(fcc: *mut zend_fcall_info_cache);
13886    #[link_name = "zend_fcc_dup__extern"]
13887    pub fn zend_fcc_dup(dest: *mut zend_fcall_info_cache, src: *const zend_fcall_info_cache);
13888    #[link_name = "zend_fcc_dtor__extern"]
13889    pub fn zend_fcc_dtor(fcc: *mut zend_fcall_info_cache);
13890    pub fn zend_get_callable_zval_from_fcc(fcc: *const zend_fcall_info_cache, callable: *mut zval);
13891    #[link_name = "zend_get_gc_buffer_add_fcc__extern"]
13892    pub fn zend_get_gc_buffer_add_fcc(
13893        gc_buffer: *mut zend_get_gc_buffer,
13894        fcc: *mut zend_fcall_info_cache,
13895    );
13896    pub fn zend_call_function(
13897        fci: *mut zend_fcall_info,
13898        fci_cache: *mut zend_fcall_info_cache,
13899    ) -> zend_result;
13900    #[link_name = "zend_call_function_with_return_value__extern"]
13901    pub fn zend_call_function_with_return_value(
13902        fci: *mut zend_fcall_info,
13903        fci_cache: *mut zend_fcall_info_cache,
13904        retval: *mut zval,
13905    ) -> zend_result;
13906    pub fn zend_call_known_function(
13907        fn_: *mut zend_function,
13908        object: *mut zend_object,
13909        called_scope: *mut zend_class_entry,
13910        retval_ptr: *mut zval,
13911        param_count: u32,
13912        params: *mut zval,
13913        named_params: *mut HashTable,
13914    );
13915    #[link_name = "zend_call_known_fcc__extern"]
13916    pub fn zend_call_known_fcc(
13917        fcc: *const zend_fcall_info_cache,
13918        retval_ptr: *mut zval,
13919        param_count: u32,
13920        params: *mut zval,
13921        named_params: *mut HashTable,
13922    );
13923    #[link_name = "zend_call_known_instance_method__extern"]
13924    pub fn zend_call_known_instance_method(
13925        fn_: *mut zend_function,
13926        object: *mut zend_object,
13927        retval_ptr: *mut zval,
13928        param_count: u32,
13929        params: *mut zval,
13930    );
13931    #[link_name = "zend_call_known_instance_method_with_0_params__extern"]
13932    pub fn zend_call_known_instance_method_with_0_params(
13933        fn_: *mut zend_function,
13934        object: *mut zend_object,
13935        retval_ptr: *mut zval,
13936    );
13937    #[link_name = "zend_call_known_instance_method_with_1_params__extern"]
13938    pub fn zend_call_known_instance_method_with_1_params(
13939        fn_: *mut zend_function,
13940        object: *mut zend_object,
13941        retval_ptr: *mut zval,
13942        param: *mut zval,
13943    );
13944    pub fn zend_call_known_instance_method_with_2_params(
13945        fn_: *mut zend_function,
13946        object: *mut zend_object,
13947        retval_ptr: *mut zval,
13948        param1: *mut zval,
13949        param2: *mut zval,
13950    );
13951    pub fn zend_call_method_if_exists(
13952        object: *mut zend_object,
13953        method_name: *mut zend_string,
13954        retval: *mut zval,
13955        param_count: u32,
13956        params: *mut zval,
13957    ) -> zend_result;
13958    pub fn zend_set_hash_symbol(
13959        symbol: *mut zval,
13960        name: *const ::std::os::raw::c_char,
13961        name_length: usize,
13962        is_ref: bool,
13963        num_symbol_tables: ::std::os::raw::c_int,
13964        ...
13965    ) -> zend_result;
13966    pub fn zend_delete_global_variable(name: *mut zend_string) -> zend_result;
13967    pub fn zend_rebuild_symbol_table() -> *mut zend_array;
13968    pub fn zend_attach_symbol_table(execute_data: *mut zend_execute_data);
13969    pub fn zend_detach_symbol_table(execute_data: *mut zend_execute_data);
13970    pub fn zend_set_local_var(name: *mut zend_string, value: *mut zval, force: bool)
13971    -> zend_result;
13972    pub fn zend_set_local_var_str(
13973        name: *const ::std::os::raw::c_char,
13974        len: usize,
13975        value: *mut zval,
13976        force: bool,
13977    ) -> zend_result;
13978    #[link_name = "zend_forbid_dynamic_call__extern"]
13979    pub fn zend_forbid_dynamic_call() -> zend_result;
13980    pub fn zend_get_object_type_case(
13981        ce: *const zend_class_entry,
13982        upper_case: bool,
13983    ) -> *const ::std::os::raw::c_char;
13984    #[link_name = "zend_get_object_type__extern"]
13985    pub fn zend_get_object_type(ce: *const zend_class_entry) -> *const ::std::os::raw::c_char;
13986    #[link_name = "zend_get_object_type_uc__extern"]
13987    pub fn zend_get_object_type_uc(ce: *const zend_class_entry) -> *const ::std::os::raw::c_char;
13988    pub fn zend_is_iterable(iterable: *const zval) -> bool;
13989    pub fn zend_is_countable(countable: *const zval) -> bool;
13990    pub fn zend_get_default_from_internal_arg_info(
13991        default_value_zval: *mut zval,
13992        arg_info: *mut zend_internal_arg_info,
13993    ) -> zend_result;
13994    #[link_name = "zend_str_has_nul_byte__extern"]
13995    pub fn zend_str_has_nul_byte(str_: *const zend_string) -> bool;
13996    #[link_name = "zend_char_has_nul_byte__extern"]
13997    pub fn zend_char_has_nul_byte(s: *const ::std::os::raw::c_char, known_length: usize) -> bool;
13998    pub fn zend_try_assign_typed_ref_ex(
13999        ref_: *mut zend_reference,
14000        zv: *mut zval,
14001        strict: bool,
14002    ) -> zend_result;
14003    pub fn zend_try_assign_typed_ref(ref_: *mut zend_reference, zv: *mut zval) -> zend_result;
14004    pub fn zend_try_assign_typed_ref_null(ref_: *mut zend_reference) -> zend_result;
14005    pub fn zend_try_assign_typed_ref_bool(ref_: *mut zend_reference, val: bool) -> zend_result;
14006    pub fn zend_try_assign_typed_ref_long(
14007        ref_: *mut zend_reference,
14008        lval: zend_long,
14009    ) -> zend_result;
14010    pub fn zend_try_assign_typed_ref_double(ref_: *mut zend_reference, dval: f64) -> zend_result;
14011    pub fn zend_try_assign_typed_ref_empty_string(ref_: *mut zend_reference) -> zend_result;
14012    pub fn zend_try_assign_typed_ref_str(
14013        ref_: *mut zend_reference,
14014        str_: *mut zend_string,
14015    ) -> zend_result;
14016    pub fn zend_try_assign_typed_ref_string(
14017        ref_: *mut zend_reference,
14018        string: *const ::std::os::raw::c_char,
14019    ) -> zend_result;
14020    pub fn zend_try_assign_typed_ref_stringl(
14021        ref_: *mut zend_reference,
14022        string: *const ::std::os::raw::c_char,
14023        len: usize,
14024    ) -> zend_result;
14025    pub fn zend_try_assign_typed_ref_arr(
14026        ref_: *mut zend_reference,
14027        arr: *mut zend_array,
14028    ) -> zend_result;
14029    pub fn zend_try_assign_typed_ref_res(
14030        ref_: *mut zend_reference,
14031        res: *mut zend_resource,
14032    ) -> zend_result;
14033    pub fn zend_try_assign_typed_ref_zval(ref_: *mut zend_reference, zv: *mut zval) -> zend_result;
14034    pub fn zend_try_assign_typed_ref_zval_ex(
14035        ref_: *mut zend_reference,
14036        zv: *mut zval,
14037        strict: bool,
14038    ) -> zend_result;
14039    #[link_name = "zend_try_array_init_size__extern"]
14040    pub fn zend_try_array_init_size(zv: *mut zval, size: u32) -> *mut zval;
14041    #[link_name = "zend_try_array_init__extern"]
14042    pub fn zend_try_array_init(zv: *mut zval) -> *mut zval;
14043    pub fn zend_wrong_parameters_none_error();
14044    pub fn zend_wrong_parameters_count_error(min_num_args: u32, max_num_args: u32);
14045    pub fn zend_wrong_parameter_error(
14046        error_code: ::std::os::raw::c_int,
14047        num: u32,
14048        name: *mut ::std::os::raw::c_char,
14049        expected_type: zend_expected_type,
14050        arg: *mut zval,
14051    );
14052    pub fn zend_wrong_parameter_type_error(
14053        num: u32,
14054        expected_type: zend_expected_type,
14055        arg: *mut zval,
14056    );
14057    pub fn zend_wrong_parameter_class_error(
14058        num: u32,
14059        name: *const ::std::os::raw::c_char,
14060        arg: *mut zval,
14061    );
14062    pub fn zend_wrong_parameter_class_or_null_error(
14063        num: u32,
14064        name: *const ::std::os::raw::c_char,
14065        arg: *mut zval,
14066    );
14067    pub fn zend_wrong_parameter_class_or_long_error(
14068        num: u32,
14069        name: *const ::std::os::raw::c_char,
14070        arg: *mut zval,
14071    );
14072    pub fn zend_wrong_parameter_class_or_long_or_null_error(
14073        num: u32,
14074        name: *const ::std::os::raw::c_char,
14075        arg: *mut zval,
14076    );
14077    pub fn zend_wrong_parameter_class_or_string_error(
14078        num: u32,
14079        name: *const ::std::os::raw::c_char,
14080        arg: *mut zval,
14081    );
14082    pub fn zend_wrong_parameter_class_or_string_or_null_error(
14083        num: u32,
14084        name: *const ::std::os::raw::c_char,
14085        arg: *mut zval,
14086    );
14087    pub fn zend_wrong_callback_error(num: u32, error: *mut ::std::os::raw::c_char);
14088    pub fn zend_wrong_callback_or_null_error(num: u32, error: *mut ::std::os::raw::c_char);
14089    pub fn zend_unexpected_extra_named_error();
14090    pub fn zend_argument_error_variadic(
14091        error_ce: *mut zend_class_entry,
14092        arg_num: u32,
14093        format: *const ::std::os::raw::c_char,
14094        va: *mut __va_list_tag,
14095    );
14096    pub fn zend_argument_error(
14097        error_ce: *mut zend_class_entry,
14098        arg_num: u32,
14099        format: *const ::std::os::raw::c_char,
14100        ...
14101    );
14102    pub fn zend_argument_type_error(arg_num: u32, format: *const ::std::os::raw::c_char, ...);
14103    pub fn zend_argument_value_error(arg_num: u32, format: *const ::std::os::raw::c_char, ...);
14104    pub fn zend_argument_must_not_be_empty_error(arg_num: u32);
14105    pub fn zend_class_redeclaration_error(
14106        type_: ::std::os::raw::c_int,
14107        old_ce: *mut zend_class_entry,
14108    );
14109    pub fn zend_class_redeclaration_error_ex(
14110        type_: ::std::os::raw::c_int,
14111        new_name: *mut zend_string,
14112        old_ce: *mut zend_class_entry,
14113    );
14114    pub fn zend_parse_arg_class(
14115        arg: *mut zval,
14116        pce: *mut *mut zend_class_entry,
14117        num: u32,
14118        check_null: bool,
14119    ) -> bool;
14120    pub fn zend_parse_arg_bool_slow(arg: *const zval, dest: *mut bool, arg_num: u32) -> bool;
14121    pub fn zend_parse_arg_bool_weak(arg: *const zval, dest: *mut bool, arg_num: u32) -> bool;
14122    pub fn zend_parse_arg_long_slow(arg: *const zval, dest: *mut zend_long, arg_num: u32) -> bool;
14123    pub fn zend_parse_arg_long_weak(arg: *const zval, dest: *mut zend_long, arg_num: u32) -> bool;
14124    pub fn zend_parse_arg_double_slow(arg: *const zval, dest: *mut f64, arg_num: u32) -> bool;
14125    pub fn zend_parse_arg_double_weak(arg: *const zval, dest: *mut f64, arg_num: u32) -> bool;
14126    pub fn zend_parse_arg_str_slow(
14127        arg: *mut zval,
14128        dest: *mut *mut zend_string,
14129        arg_num: u32,
14130    ) -> bool;
14131    pub fn zend_parse_arg_str_weak(
14132        arg: *mut zval,
14133        dest: *mut *mut zend_string,
14134        arg_num: u32,
14135    ) -> bool;
14136    pub fn zend_parse_arg_number_slow(arg: *mut zval, dest: *mut *mut zval, arg_num: u32) -> bool;
14137    pub fn zend_parse_arg_number_or_str_slow(
14138        arg: *mut zval,
14139        dest: *mut *mut zval,
14140        arg_num: u32,
14141    ) -> bool;
14142    pub fn zend_parse_arg_str_or_long_slow(
14143        arg: *mut zval,
14144        dest_str: *mut *mut zend_string,
14145        dest_long: *mut zend_long,
14146        arg_num: u32,
14147    ) -> bool;
14148    pub fn zend_flf_parse_arg_bool_slow(arg: *const zval, dest: *mut bool, arg_num: u32) -> bool;
14149    pub fn zend_flf_parse_arg_str_slow(
14150        arg: *mut zval,
14151        dest: *mut *mut zend_string,
14152        arg_num: u32,
14153    ) -> bool;
14154    pub fn zend_flf_parse_arg_long_slow(
14155        arg: *const zval,
14156        dest: *mut zend_long,
14157        arg_num: u32,
14158    ) -> bool;
14159    #[link_name = "zend_parse_arg_bool_ex__extern"]
14160    pub fn zend_parse_arg_bool_ex(
14161        arg: *const zval,
14162        dest: *mut bool,
14163        is_null: *mut bool,
14164        check_null: bool,
14165        arg_num: u32,
14166        frameless: bool,
14167    ) -> bool;
14168    #[link_name = "zend_parse_arg_bool__extern"]
14169    pub fn zend_parse_arg_bool(
14170        arg: *const zval,
14171        dest: *mut bool,
14172        is_null: *mut bool,
14173        check_null: bool,
14174        arg_num: u32,
14175    ) -> bool;
14176    #[link_name = "zend_parse_arg_long_ex__extern"]
14177    pub fn zend_parse_arg_long_ex(
14178        arg: *mut zval,
14179        dest: *mut zend_long,
14180        is_null: *mut bool,
14181        check_null: bool,
14182        arg_num: u32,
14183        frameless: bool,
14184    ) -> bool;
14185    #[link_name = "zend_parse_arg_long__extern"]
14186    pub fn zend_parse_arg_long(
14187        arg: *mut zval,
14188        dest: *mut zend_long,
14189        is_null: *mut bool,
14190        check_null: bool,
14191        arg_num: u32,
14192    ) -> bool;
14193    #[link_name = "zend_parse_arg_double__extern"]
14194    pub fn zend_parse_arg_double(
14195        arg: *const zval,
14196        dest: *mut f64,
14197        is_null: *mut bool,
14198        check_null: bool,
14199        arg_num: u32,
14200    ) -> bool;
14201    #[link_name = "zend_parse_arg_number__extern"]
14202    pub fn zend_parse_arg_number(
14203        arg: *mut zval,
14204        dest: *mut *mut zval,
14205        check_null: bool,
14206        arg_num: u32,
14207    ) -> bool;
14208    #[link_name = "zend_parse_arg_number_or_str__extern"]
14209    pub fn zend_parse_arg_number_or_str(
14210        arg: *mut zval,
14211        dest: *mut *mut zval,
14212        check_null: bool,
14213        arg_num: u32,
14214    ) -> bool;
14215    #[link_name = "zend_parse_arg_str_ex__extern"]
14216    pub fn zend_parse_arg_str_ex(
14217        arg: *mut zval,
14218        dest: *mut *mut zend_string,
14219        check_null: bool,
14220        arg_num: u32,
14221        frameless: bool,
14222    ) -> bool;
14223    #[link_name = "zend_parse_arg_str__extern"]
14224    pub fn zend_parse_arg_str(
14225        arg: *mut zval,
14226        dest: *mut *mut zend_string,
14227        check_null: bool,
14228        arg_num: u32,
14229    ) -> bool;
14230    #[link_name = "zend_parse_arg_string__extern"]
14231    pub fn zend_parse_arg_string(
14232        arg: *mut zval,
14233        dest: *mut *mut ::std::os::raw::c_char,
14234        dest_len: *mut usize,
14235        check_null: bool,
14236        arg_num: u32,
14237    ) -> bool;
14238    #[link_name = "zend_parse_arg_path_str__extern"]
14239    pub fn zend_parse_arg_path_str(
14240        arg: *mut zval,
14241        dest: *mut *mut zend_string,
14242        check_null: bool,
14243        arg_num: u32,
14244    ) -> bool;
14245    #[link_name = "zend_parse_arg_path__extern"]
14246    pub fn zend_parse_arg_path(
14247        arg: *mut zval,
14248        dest: *mut *mut ::std::os::raw::c_char,
14249        dest_len: *mut usize,
14250        check_null: bool,
14251        arg_num: u32,
14252    ) -> bool;
14253    #[link_name = "zend_parse_arg_iterable__extern"]
14254    pub fn zend_parse_arg_iterable(arg: *mut zval, dest: *mut *mut zval, check_null: bool) -> bool;
14255    #[link_name = "zend_parse_arg_array__extern"]
14256    pub fn zend_parse_arg_array(
14257        arg: *mut zval,
14258        dest: *mut *mut zval,
14259        check_null: bool,
14260        or_object: bool,
14261    ) -> bool;
14262    #[link_name = "zend_parse_arg_array_ht__extern"]
14263    pub fn zend_parse_arg_array_ht(
14264        arg: *const zval,
14265        dest: *mut *mut HashTable,
14266        check_null: bool,
14267        or_object: bool,
14268        separate: bool,
14269    ) -> bool;
14270    #[link_name = "zend_parse_arg_array_ht_or_long__extern"]
14271    pub fn zend_parse_arg_array_ht_or_long(
14272        arg: *mut zval,
14273        dest_ht: *mut *mut HashTable,
14274        dest_long: *mut zend_long,
14275        is_null: *mut bool,
14276        allow_null: bool,
14277        arg_num: u32,
14278    ) -> bool;
14279    #[link_name = "zend_parse_arg_object__extern"]
14280    pub fn zend_parse_arg_object(
14281        arg: *mut zval,
14282        dest: *mut *mut zval,
14283        ce: *mut zend_class_entry,
14284        check_null: bool,
14285    ) -> bool;
14286    #[link_name = "zend_parse_arg_obj__extern"]
14287    pub fn zend_parse_arg_obj(
14288        arg: *const zval,
14289        dest: *mut *mut zend_object,
14290        ce: *mut zend_class_entry,
14291        check_null: bool,
14292    ) -> bool;
14293    #[link_name = "zend_parse_arg_obj_or_long__extern"]
14294    pub fn zend_parse_arg_obj_or_long(
14295        arg: *mut zval,
14296        dest_obj: *mut *mut zend_object,
14297        ce: *mut zend_class_entry,
14298        dest_long: *mut zend_long,
14299        is_null: *mut bool,
14300        allow_null: bool,
14301        arg_num: u32,
14302    ) -> bool;
14303    #[link_name = "zend_parse_arg_resource__extern"]
14304    pub fn zend_parse_arg_resource(arg: *mut zval, dest: *mut *mut zval, check_null: bool) -> bool;
14305    #[link_name = "zend_parse_arg_func__extern"]
14306    pub fn zend_parse_arg_func(
14307        arg: *mut zval,
14308        dest_fci: *mut zend_fcall_info,
14309        dest_fcc: *mut zend_fcall_info_cache,
14310        check_null: bool,
14311        error: *mut *mut ::std::os::raw::c_char,
14312        free_trampoline: bool,
14313    ) -> bool;
14314    #[link_name = "zend_parse_arg_zval__extern"]
14315    pub fn zend_parse_arg_zval(arg: *mut zval, dest: *mut *mut zval, check_null: bool);
14316    #[link_name = "zend_parse_arg_zval_deref__extern"]
14317    pub fn zend_parse_arg_zval_deref(arg: *mut zval, dest: *mut *mut zval, check_null: bool);
14318    #[link_name = "zend_parse_arg_array_ht_or_str__extern"]
14319    pub fn zend_parse_arg_array_ht_or_str(
14320        arg: *mut zval,
14321        dest_ht: *mut *mut HashTable,
14322        dest_str: *mut *mut zend_string,
14323        allow_null: bool,
14324        arg_num: u32,
14325    ) -> bool;
14326    #[link_name = "zend_parse_arg_str_or_long__extern"]
14327    pub fn zend_parse_arg_str_or_long(
14328        arg: *mut zval,
14329        dest_str: *mut *mut zend_string,
14330        dest_long: *mut zend_long,
14331        is_null: *mut bool,
14332        allow_null: bool,
14333        arg_num: u32,
14334    ) -> bool;
14335    #[link_name = "zend_parse_arg_obj_or_class_name__extern"]
14336    pub fn zend_parse_arg_obj_or_class_name(
14337        arg: *mut zval,
14338        destination: *mut *mut zend_class_entry,
14339        allow_null: bool,
14340    ) -> bool;
14341    #[link_name = "zend_parse_arg_obj_or_str__extern"]
14342    pub fn zend_parse_arg_obj_or_str(
14343        arg: *mut zval,
14344        destination_object: *mut *mut zend_object,
14345        base_ce: *mut zend_class_entry,
14346        destination_string: *mut *mut zend_string,
14347        allow_null: bool,
14348        arg_num: u32,
14349    ) -> bool;
14350    pub static mut zend_ce_attribute: *mut zend_class_entry;
14351    pub static mut zend_ce_allow_dynamic_properties: *mut zend_class_entry;
14352    pub static mut zend_ce_sensitive_parameter: *mut zend_class_entry;
14353    pub static mut zend_ce_sensitive_parameter_value: *mut zend_class_entry;
14354    pub static mut zend_ce_override: *mut zend_class_entry;
14355    pub static mut zend_ce_deprecated: *mut zend_class_entry;
14356    pub static mut zend_ce_nodiscard: *mut zend_class_entry;
14357    pub static mut zend_ce_delayed_target_validation: *mut zend_class_entry;
14358    pub fn zend_get_attribute(
14359        attributes: *mut HashTable,
14360        lcname: *mut zend_string,
14361    ) -> *mut zend_attribute;
14362    pub fn zend_get_attribute_str(
14363        attributes: *mut HashTable,
14364        str_: *const ::std::os::raw::c_char,
14365        len: usize,
14366    ) -> *mut zend_attribute;
14367    pub fn zend_get_parameter_attribute(
14368        attributes: *mut HashTable,
14369        lcname: *mut zend_string,
14370        offset: u32,
14371    ) -> *mut zend_attribute;
14372    pub fn zend_get_parameter_attribute_str(
14373        attributes: *mut HashTable,
14374        str_: *const ::std::os::raw::c_char,
14375        len: usize,
14376        offset: u32,
14377    ) -> *mut zend_attribute;
14378    pub fn zend_get_attribute_value(
14379        ret: *mut zval,
14380        attr: *mut zend_attribute,
14381        i: u32,
14382        scope: *mut zend_class_entry,
14383    ) -> zend_result;
14384    pub fn zend_get_attribute_object(
14385        out: *mut zval,
14386        attribute_ce: *mut zend_class_entry,
14387        attribute_data: *mut zend_attribute,
14388        scope: *mut zend_class_entry,
14389        filename: *mut zend_string,
14390    ) -> zend_result;
14391    pub fn zend_get_attribute_target_names(targets: u32) -> *mut zend_string;
14392    pub fn zend_is_attribute_repeated(
14393        attributes: *mut HashTable,
14394        attr: *mut zend_attribute,
14395    ) -> bool;
14396    pub fn zend_mark_internal_attribute(ce: *mut zend_class_entry) -> *mut zend_internal_attribute;
14397    pub fn zend_internal_attribute_register(
14398        ce: *mut zend_class_entry,
14399        flags: u32,
14400    ) -> *mut zend_internal_attribute;
14401    pub fn zend_internal_attribute_get(lcname: *mut zend_string) -> *mut zend_internal_attribute;
14402    pub fn zend_add_attribute(
14403        attributes: *mut *mut HashTable,
14404        name: *mut zend_string,
14405        argc: u32,
14406        flags: u32,
14407        offset: u32,
14408        lineno: u32,
14409    ) -> *mut zend_attribute;
14410    #[link_name = "zend_add_class_attribute__extern"]
14411    pub fn zend_add_class_attribute(
14412        ce: *mut zend_class_entry,
14413        name: *mut zend_string,
14414        argc: u32,
14415    ) -> *mut zend_attribute;
14416    #[link_name = "zend_add_function_attribute__extern"]
14417    pub fn zend_add_function_attribute(
14418        func: *mut zend_function,
14419        name: *mut zend_string,
14420        argc: u32,
14421    ) -> *mut zend_attribute;
14422    #[link_name = "zend_add_parameter_attribute__extern"]
14423    pub fn zend_add_parameter_attribute(
14424        func: *mut zend_function,
14425        offset: u32,
14426        name: *mut zend_string,
14427        argc: u32,
14428    ) -> *mut zend_attribute;
14429    #[link_name = "zend_add_property_attribute__extern"]
14430    pub fn zend_add_property_attribute(
14431        ce: *mut zend_class_entry,
14432        info: *mut zend_property_info,
14433        name: *mut zend_string,
14434        argc: u32,
14435    ) -> *mut zend_attribute;
14436    #[link_name = "zend_add_class_constant_attribute__extern"]
14437    pub fn zend_add_class_constant_attribute(
14438        ce: *mut zend_class_entry,
14439        c: *mut zend_class_constant,
14440        name: *mut zend_string,
14441        argc: u32,
14442    ) -> *mut zend_attribute;
14443    #[link_name = "zend_add_global_constant_attribute__extern"]
14444    pub fn zend_add_global_constant_attribute(
14445        c: *mut zend_constant,
14446        name: *mut zend_string,
14447        argc: u32,
14448    ) -> *mut zend_attribute;
14449    pub fn zend_register_attribute_ce();
14450    pub fn zend_attributes_shutdown();
14451    #[link_name = "zend_ulong_ntz__extern"]
14452    pub fn zend_ulong_ntz(num: zend_ulong) -> ::std::os::raw::c_int;
14453    #[link_name = "zend_ulong_nlz__extern"]
14454    pub fn zend_ulong_nlz(num: zend_ulong) -> ::std::os::raw::c_int;
14455    #[link_name = "zend_bitset_len__extern"]
14456    pub fn zend_bitset_len(n: u32) -> u32;
14457    #[link_name = "zend_bitset_in__extern"]
14458    pub fn zend_bitset_in(set: zend_bitset, n: u32) -> bool;
14459    #[link_name = "zend_bitset_incl__extern"]
14460    pub fn zend_bitset_incl(set: zend_bitset, n: u32);
14461    #[link_name = "zend_bitset_excl__extern"]
14462    pub fn zend_bitset_excl(set: zend_bitset, n: u32);
14463    #[link_name = "zend_bitset_clear__extern"]
14464    pub fn zend_bitset_clear(set: zend_bitset, len: u32);
14465    #[link_name = "zend_bitset_empty__extern"]
14466    pub fn zend_bitset_empty(set: zend_bitset, len: u32) -> bool;
14467    #[link_name = "zend_bitset_fill__extern"]
14468    pub fn zend_bitset_fill(set: zend_bitset, len: u32);
14469    #[link_name = "zend_bitset_equal__extern"]
14470    pub fn zend_bitset_equal(set1: zend_bitset, set2: zend_bitset, len: u32) -> bool;
14471    #[link_name = "zend_bitset_copy__extern"]
14472    pub fn zend_bitset_copy(set1: zend_bitset, set2: zend_bitset, len: u32);
14473    #[link_name = "zend_bitset_intersection__extern"]
14474    pub fn zend_bitset_intersection(set1: zend_bitset, set2: zend_bitset, len: u32);
14475    #[link_name = "zend_bitset_union__extern"]
14476    pub fn zend_bitset_union(set1: zend_bitset, set2: zend_bitset, len: u32);
14477    #[link_name = "zend_bitset_difference__extern"]
14478    pub fn zend_bitset_difference(set1: zend_bitset, set2: zend_bitset, len: u32);
14479    #[link_name = "zend_bitset_union_with_intersection__extern"]
14480    pub fn zend_bitset_union_with_intersection(
14481        set1: zend_bitset,
14482        set2: zend_bitset,
14483        set3: zend_bitset,
14484        set4: zend_bitset,
14485        len: u32,
14486    );
14487    #[link_name = "zend_bitset_union_with_difference__extern"]
14488    pub fn zend_bitset_union_with_difference(
14489        set1: zend_bitset,
14490        set2: zend_bitset,
14491        set3: zend_bitset,
14492        set4: zend_bitset,
14493        len: u32,
14494    );
14495    #[link_name = "zend_bitset_subset__extern"]
14496    pub fn zend_bitset_subset(set1: zend_bitset, set2: zend_bitset, len: u32) -> bool;
14497    #[link_name = "zend_bitset_first__extern"]
14498    pub fn zend_bitset_first(set: zend_bitset, len: u32) -> ::std::os::raw::c_int;
14499    #[link_name = "zend_bitset_last__extern"]
14500    pub fn zend_bitset_last(set: zend_bitset, len: u32) -> ::std::os::raw::c_int;
14501    #[link_name = "zend_bitset_pop_first__extern"]
14502    pub fn zend_bitset_pop_first(set: zend_bitset, len: u32) -> ::std::os::raw::c_int;
14503    pub fn zend_startup_builtin_functions() -> zend_result;
14504    pub fn zend_fetch_debug_backtrace(
14505        return_value: *mut zval,
14506        skip_last: ::std::os::raw::c_int,
14507        options: ::std::os::raw::c_int,
14508        limit: ::std::os::raw::c_int,
14509    );
14510    pub fn zend_register_closure_ce();
14511    pub fn zend_closure_bind_var(closure_zv: *mut zval, var_name: *mut zend_string, var: *mut zval);
14512    pub fn zend_closure_bind_var_ex(closure_zv: *mut zval, offset: u32, val: *mut zval);
14513    pub fn zend_closure_from_frame(closure_zv: *mut zval, frame: *mut zend_execute_data);
14514    pub static mut zend_ce_closure: *mut zend_class_entry;
14515    pub fn zend_create_closure(
14516        res: *mut zval,
14517        op_array: *mut zend_function,
14518        scope: *mut zend_class_entry,
14519        called_scope: *mut zend_class_entry,
14520        this_ptr: *mut zval,
14521    );
14522    pub fn zend_create_fake_closure(
14523        res: *mut zval,
14524        op_array: *mut zend_function,
14525        scope: *mut zend_class_entry,
14526        called_scope: *mut zend_class_entry,
14527        this_ptr: *mut zval,
14528    );
14529    pub fn zend_get_closure_invoke_method(obj: *mut zend_object) -> *mut zend_function;
14530    pub fn zend_get_closure_method_def(obj: *mut zend_object) -> *const zend_function;
14531    pub fn zend_get_closure_this_ptr(obj: *mut zval) -> *mut zval;
14532    pub fn zend_cpu_startup();
14533    pub fn zend_cpu_supports(feature: zend_cpu_feature) -> ::std::os::raw::c_int;
14534    #[link_name = "zend_cpu_supports_sse2__extern"]
14535    pub fn zend_cpu_supports_sse2() -> ::std::os::raw::c_int;
14536    #[link_name = "zend_cpu_supports_sse3__extern"]
14537    pub fn zend_cpu_supports_sse3() -> ::std::os::raw::c_int;
14538    #[link_name = "zend_cpu_supports_ssse3__extern"]
14539    pub fn zend_cpu_supports_ssse3() -> ::std::os::raw::c_int;
14540    #[link_name = "zend_cpu_supports_sse41__extern"]
14541    pub fn zend_cpu_supports_sse41() -> ::std::os::raw::c_int;
14542    #[link_name = "zend_cpu_supports_sse42__extern"]
14543    pub fn zend_cpu_supports_sse42() -> ::std::os::raw::c_int;
14544    #[link_name = "zend_cpu_supports_avx__extern"]
14545    pub fn zend_cpu_supports_avx() -> ::std::os::raw::c_int;
14546    #[link_name = "zend_cpu_supports_avx2__extern"]
14547    pub fn zend_cpu_supports_avx2() -> ::std::os::raw::c_int;
14548    #[link_name = "zend_cpu_supports_avx512__extern"]
14549    pub fn zend_cpu_supports_avx512() -> ::std::os::raw::c_int;
14550    #[link_name = "zend_cpu_supports_avx512_vbmi__extern"]
14551    pub fn zend_cpu_supports_avx512_vbmi() -> ::std::os::raw::c_int;
14552    #[link_name = "zend_cpu_supports_pclmul__extern"]
14553    pub fn zend_cpu_supports_pclmul() -> ::std::os::raw::c_int;
14554    pub static mut zend_ce_unit_enum: *mut zend_class_entry;
14555    pub static mut zend_ce_backed_enum: *mut zend_class_entry;
14556    pub static mut zend_enum_object_handlers: zend_object_handlers;
14557    pub fn zend_register_enum_ce();
14558    pub fn zend_enum_add_interfaces(ce: *mut zend_class_entry);
14559    pub fn zend_enum_build_backed_enum_table(ce: *mut zend_class_entry) -> zend_result;
14560    pub fn zend_enum_new(
14561        result: *mut zval,
14562        ce: *mut zend_class_entry,
14563        case_name: *mut zend_string,
14564        backing_value_zv: *mut zval,
14565    ) -> *mut zend_object;
14566    pub fn zend_verify_enum(ce: *const zend_class_entry);
14567    pub fn zend_enum_register_funcs(ce: *mut zend_class_entry);
14568    pub fn zend_enum_register_props(ce: *mut zend_class_entry);
14569    pub fn zend_register_internal_enum(
14570        name: *const ::std::os::raw::c_char,
14571        type_: u8,
14572        functions: *const zend_function_entry,
14573    ) -> *mut zend_class_entry;
14574    pub fn zend_enum_add_case(
14575        ce: *mut zend_class_entry,
14576        case_name: *mut zend_string,
14577        value: *mut zval,
14578    );
14579    pub fn zend_enum_add_case_cstr(
14580        ce: *mut zend_class_entry,
14581        name: *const ::std::os::raw::c_char,
14582        value: *mut zval,
14583    );
14584    pub fn zend_enum_get_case(
14585        ce: *mut zend_class_entry,
14586        name: *mut zend_string,
14587    ) -> *mut zend_object;
14588    pub fn zend_enum_get_case_cstr(
14589        ce: *mut zend_class_entry,
14590        name: *const ::std::os::raw::c_char,
14591    ) -> *mut zend_object;
14592    pub fn zend_enum_get_case_by_value(
14593        result: *mut *mut zend_object,
14594        ce: *mut zend_class_entry,
14595        long_key: zend_long,
14596        string_key: *mut zend_string,
14597        try_from: bool,
14598    ) -> zend_result;
14599    #[link_name = "zend_enum_fetch_case_name__extern"]
14600    pub fn zend_enum_fetch_case_name(zobj: *mut zend_object) -> *mut zval;
14601    #[link_name = "zend_enum_fetch_case_value__extern"]
14602    pub fn zend_enum_fetch_case_value(zobj: *mut zend_object) -> *mut zval;
14603    pub static mut zend_ce_throwable: *mut zend_class_entry;
14604    pub static mut zend_ce_exception: *mut zend_class_entry;
14605    pub static mut zend_ce_error_exception: *mut zend_class_entry;
14606    pub static mut zend_ce_error: *mut zend_class_entry;
14607    pub static mut zend_ce_compile_error: *mut zend_class_entry;
14608    pub static mut zend_ce_parse_error: *mut zend_class_entry;
14609    pub static mut zend_ce_type_error: *mut zend_class_entry;
14610    pub static mut zend_ce_argument_count_error: *mut zend_class_entry;
14611    pub static mut zend_ce_value_error: *mut zend_class_entry;
14612    pub static mut zend_ce_arithmetic_error: *mut zend_class_entry;
14613    pub static mut zend_ce_division_by_zero_error: *mut zend_class_entry;
14614    pub static mut zend_ce_unhandled_match_error: *mut zend_class_entry;
14615    pub static mut zend_ce_request_parse_body_exception: *mut zend_class_entry;
14616    pub fn zend_exception_set_previous(exception: *mut zend_object, add_previous: *mut zend_object);
14617    pub fn zend_exception_save();
14618    pub fn zend_exception_restore();
14619    pub fn zend_throw_exception_internal(exception: *mut zend_object);
14620    pub fn zend_register_default_exception();
14621    pub fn zend_get_exception_base(object: *const zend_object) -> *mut zend_class_entry;
14622    pub fn zend_register_default_classes();
14623    pub fn zend_throw_exception(
14624        exception_ce: *mut zend_class_entry,
14625        message: *const ::std::os::raw::c_char,
14626        code: zend_long,
14627    ) -> *mut zend_object;
14628    pub fn zend_throw_exception_ex(
14629        exception_ce: *mut zend_class_entry,
14630        code: zend_long,
14631        format: *const ::std::os::raw::c_char,
14632        ...
14633    ) -> *mut zend_object;
14634    pub fn zend_throw_exception_object(exception: *mut zval);
14635    pub fn zend_clear_exception();
14636    pub fn zend_throw_error_exception(
14637        exception_ce: *mut zend_class_entry,
14638        message: *mut zend_string,
14639        code: zend_long,
14640        severity: ::std::os::raw::c_int,
14641    ) -> *mut zend_object;
14642    pub static mut zend_throw_exception_hook:
14643        ::std::option::Option<unsafe extern "C" fn(ex: *mut zend_object)>;
14644    pub fn zend_update_exception_properties(
14645        execute_data: *mut zend_execute_data,
14646        return_value: *mut zval,
14647        message: *mut zend_string,
14648        code: zend_long,
14649        previous: *mut zval,
14650    ) -> zend_result;
14651    pub fn zend_exception_error(
14652        exception: *mut zend_object,
14653        severity: ::std::os::raw::c_int,
14654    ) -> zend_result;
14655    pub fn zend_exception_uncaught_error(prefix: *const ::std::os::raw::c_char, ...) -> !;
14656    pub fn zend_trace_to_string(trace: *const HashTable, include_main: bool) -> *mut zend_string;
14657    pub fn zend_create_unwind_exit() -> *mut zend_object;
14658    pub fn zend_create_graceful_exit() -> *mut zend_object;
14659    pub fn zend_throw_unwind_exit();
14660    pub fn zend_throw_graceful_exit();
14661    pub fn zend_is_unwind_exit(ex: *const zend_object) -> bool;
14662    pub fn zend_is_graceful_exit(ex: *const zend_object) -> bool;
14663    #[link_name = "zend_rethrow_exception__extern"]
14664    pub fn zend_rethrow_exception(execute_data: *mut zend_execute_data);
14665    pub static mut zend_op_array_extension_handles: ::std::os::raw::c_int;
14666    pub fn zend_get_resource_handle(
14667        module_name: *const ::std::os::raw::c_char,
14668    ) -> ::std::os::raw::c_int;
14669    pub fn zend_get_op_array_extension_handle(
14670        module_name: *const ::std::os::raw::c_char,
14671    ) -> ::std::os::raw::c_int;
14672    pub fn zend_get_op_array_extension_handles(
14673        module_name: *const ::std::os::raw::c_char,
14674        handles: ::std::os::raw::c_int,
14675    ) -> ::std::os::raw::c_int;
14676    pub fn zend_get_internal_function_extension_handle(
14677        module_name: *const ::std::os::raw::c_char,
14678    ) -> ::std::os::raw::c_int;
14679    pub fn zend_get_internal_function_extension_handles(
14680        module_name: *const ::std::os::raw::c_char,
14681        handles: ::std::os::raw::c_int,
14682    ) -> ::std::os::raw::c_int;
14683    pub fn zend_extension_dispatch_message(
14684        message: ::std::os::raw::c_int,
14685        arg: *mut ::std::os::raw::c_void,
14686    );
14687    pub static mut zend_extensions: zend_llist;
14688    pub static mut zend_extension_flags: u32;
14689    pub fn zend_extension_dtor(extension: *mut zend_extension);
14690    pub fn zend_append_version_info(extension: *const zend_extension);
14691    pub fn zend_startup_extensions_mechanism();
14692    pub fn zend_startup_extensions();
14693    pub fn zend_shutdown_extensions();
14694    pub fn zend_internal_run_time_cache_reserved_size() -> usize;
14695    pub fn zend_init_internal_run_time_cache();
14696    pub fn zend_reset_internal_run_time_cache();
14697    pub fn zend_load_extension(path: *const ::std::os::raw::c_char) -> zend_result;
14698    pub fn zend_load_extension_handle(
14699        handle: *mut ::std::os::raw::c_void,
14700        path: *const ::std::os::raw::c_char,
14701    ) -> zend_result;
14702    pub fn zend_register_extension(
14703        new_extension: *mut zend_extension,
14704        handle: *mut ::std::os::raw::c_void,
14705    );
14706    pub fn zend_get_extension(extension_name: *const ::std::os::raw::c_char)
14707    -> *mut zend_extension;
14708    pub fn zend_extensions_op_array_persist_calc(op_array: *mut zend_op_array) -> usize;
14709    pub fn zend_extensions_op_array_persist(
14710        op_array: *mut zend_op_array,
14711        mem: *mut ::std::os::raw::c_void,
14712    ) -> usize;
14713    pub fn zend_register_fiber_ce();
14714    pub fn zend_fiber_init();
14715    pub fn zend_fiber_shutdown();
14716    pub static mut zend_ce_fiber: *mut zend_class_entry;
14717    pub fn zend_fiber_start(fiber: *mut zend_fiber, return_value: *mut zval) -> zend_result;
14718    pub fn zend_fiber_resume(fiber: *mut zend_fiber, value: *mut zval, return_value: *mut zval);
14719    pub fn zend_fiber_suspend(fiber: *mut zend_fiber, value: *mut zval, return_value: *mut zval);
14720    pub fn zend_fiber_init_context(
14721        context: *mut zend_fiber_context,
14722        kind: *mut ::std::os::raw::c_void,
14723        coroutine: zend_fiber_coroutine,
14724        stack_size: usize,
14725    ) -> zend_result;
14726    pub fn zend_fiber_destroy_context(context: *mut zend_fiber_context);
14727    pub fn zend_fiber_switch_context(transfer: *mut zend_fiber_transfer);
14728    pub fn zend_fiber_stack_limit(stack: *mut zend_fiber_stack) -> *mut ::std::os::raw::c_void;
14729    pub fn zend_fiber_stack_base(stack: *mut zend_fiber_stack) -> *mut ::std::os::raw::c_void;
14730    pub fn zend_fiber_switch_block();
14731    pub fn zend_fiber_switch_unblock();
14732    pub fn zend_fiber_switch_blocked() -> bool;
14733    #[link_name = "zend_fiber_from_context__extern"]
14734    pub fn zend_fiber_from_context(context: *mut zend_fiber_context) -> *mut zend_fiber;
14735    #[link_name = "zend_fiber_get_context__extern"]
14736    pub fn zend_fiber_get_context(fiber: *mut zend_fiber) -> *mut zend_fiber_context;
14737    pub fn zend_gdb_register_code(object: *const ::std::os::raw::c_void, size: usize) -> bool;
14738    pub fn zend_gdb_unregister_all();
14739    pub fn zend_gdb_present() -> bool;
14740    pub static mut zend_ce_generator: *mut zend_class_entry;
14741    pub static mut zend_ce_ClosedGeneratorException: *mut zend_class_entry;
14742    pub fn zend_register_generator_ce();
14743    pub fn zend_generator_close(generator: *mut zend_generator, finished_execution: bool);
14744    pub fn zend_generator_resume(generator: *mut zend_generator);
14745    pub fn zend_generator_restore_call_stack(generator: *mut zend_generator);
14746    pub fn zend_generator_freeze_call_stack(
14747        execute_data: *mut zend_execute_data,
14748    ) -> *mut zend_execute_data;
14749    pub fn zend_generator_yield_from(generator: *mut zend_generator, from: *mut zend_generator);
14750    pub fn zend_generator_check_placeholder_frame(
14751        ptr: *mut zend_execute_data,
14752    ) -> *mut zend_execute_data;
14753    pub fn zend_generator_update_current(generator: *mut zend_generator) -> *mut zend_generator;
14754    pub fn zend_generator_update_root(generator: *mut zend_generator) -> *mut zend_generator;
14755    #[link_name = "zend_generator_get_current__extern"]
14756    pub fn zend_generator_get_current(generator: *mut zend_generator) -> *mut zend_generator;
14757    pub fn zend_generator_frame_gc(
14758        gc_buffer: *mut zend_get_gc_buffer,
14759        generator: *mut zend_generator,
14760    ) -> *mut HashTable;
14761    pub fn zend_highlight(syntax_highlighter_ini: *mut zend_syntax_highlighter_ini);
14762    pub fn zend_strip();
14763    pub fn highlight_file(
14764        filename: *const ::std::os::raw::c_char,
14765        syntax_highlighter_ini: *mut zend_syntax_highlighter_ini,
14766    ) -> zend_result;
14767    pub fn highlight_string(
14768        str_: *mut zend_string,
14769        syntax_highlighter_ini: *mut zend_syntax_highlighter_ini,
14770        str_name: *const ::std::os::raw::c_char,
14771    );
14772    pub fn zend_html_putc(c: ::std::os::raw::c_char);
14773    pub fn zend_html_puts(s: *const ::std::os::raw::c_char, len: usize);
14774    pub static mut syntax_highlighter_ini: zend_syntax_highlighter_ini;
14775    pub fn zend_do_implement_interface(ce: *mut zend_class_entry, iface: *mut zend_class_entry);
14776    pub fn zend_do_inheritance_ex(
14777        ce: *mut zend_class_entry,
14778        parent_ce: *mut zend_class_entry,
14779        checked: bool,
14780    );
14781    #[link_name = "zend_do_inheritance__extern"]
14782    pub fn zend_do_inheritance(ce: *mut zend_class_entry, parent_ce: *mut zend_class_entry);
14783    pub fn zend_do_link_class(
14784        ce: *mut zend_class_entry,
14785        lc_parent_name: *mut zend_string,
14786        key: *const zend_string,
14787    ) -> *mut zend_class_entry;
14788    pub fn zend_verify_abstract_class(ce: *mut zend_class_entry);
14789    pub fn zend_build_properties_info_table(ce: *mut zend_class_entry);
14790    pub fn zend_try_early_bind(
14791        ce: *mut zend_class_entry,
14792        parent_ce: *mut zend_class_entry,
14793        lcname: *mut zend_string,
14794        delayed_early_binding: *mut zval,
14795    ) -> *mut zend_class_entry;
14796    pub fn zend_inheritance_check_override(ce: *const zend_class_entry);
14797    pub static mut zend_inheritance_cache_get: ::std::option::Option<
14798        unsafe extern "C" fn(
14799            ce: *mut zend_class_entry,
14800            parent: *mut zend_class_entry,
14801            traits_and_interfaces: *mut *mut zend_class_entry,
14802        ) -> *mut zend_class_entry,
14803    >;
14804    pub static mut zend_inheritance_cache_add: ::std::option::Option<
14805        unsafe extern "C" fn(
14806            ce: *mut zend_class_entry,
14807            proto: *mut zend_class_entry,
14808            parent: *mut zend_class_entry,
14809            traits_and_interfaces: *mut *mut zend_class_entry,
14810            dependencies: *mut HashTable,
14811        ) -> *mut zend_class_entry,
14812    >;
14813    pub fn zend_verify_property_hook_variance(
14814        prop_info: *const zend_property_info,
14815        func: *const zend_function,
14816    ) -> zend_inheritance_status::Type;
14817    pub fn zend_hooked_property_variance_error(prop_info: *const zend_property_info) -> !;
14818    pub fn zend_hooked_property_variance_error_ex(
14819        value_param_name: *mut zend_string,
14820        class_name: *mut zend_string,
14821        prop_name: *mut zend_string,
14822    ) -> !;
14823    pub fn zend_verify_hooked_property(
14824        ce: *const zend_class_entry,
14825        prop_info: *mut zend_property_info,
14826        prop_name: *mut zend_string,
14827    );
14828    pub fn zend_ini_startup();
14829    pub fn zend_ini_shutdown();
14830    pub fn zend_ini_global_shutdown();
14831    pub fn zend_ini_deactivate();
14832    pub fn zend_ini_dtor(ini_directives: *mut HashTable);
14833    pub fn zend_copy_ini_directives();
14834    pub fn zend_ini_sort_entries();
14835    pub fn zend_register_ini_entries(
14836        ini_entry: *const zend_ini_entry_def,
14837        module_number: ::std::os::raw::c_int,
14838    ) -> zend_result;
14839    pub fn zend_register_ini_entries_ex(
14840        ini_entry: *const zend_ini_entry_def,
14841        module_number: ::std::os::raw::c_int,
14842        module_type: ::std::os::raw::c_int,
14843    ) -> zend_result;
14844    pub fn zend_unregister_ini_entries(module_number: ::std::os::raw::c_int);
14845    pub fn zend_unregister_ini_entries_ex(
14846        module_number: ::std::os::raw::c_int,
14847        module_type: ::std::os::raw::c_int,
14848    );
14849    pub fn zend_ini_refresh_caches(stage: ::std::os::raw::c_int);
14850    pub fn zend_alter_ini_entry(
14851        name: *mut zend_string,
14852        new_value: *mut zend_string,
14853        modify_type: ::std::os::raw::c_int,
14854        stage: ::std::os::raw::c_int,
14855    ) -> zend_result;
14856    pub fn zend_alter_ini_entry_ex(
14857        name: *mut zend_string,
14858        new_value: *mut zend_string,
14859        modify_type: ::std::os::raw::c_int,
14860        stage: ::std::os::raw::c_int,
14861        force_change: bool,
14862    ) -> zend_result;
14863    pub fn zend_alter_ini_entry_chars(
14864        name: *mut zend_string,
14865        value: *const ::std::os::raw::c_char,
14866        value_length: usize,
14867        modify_type: ::std::os::raw::c_int,
14868        stage: ::std::os::raw::c_int,
14869    ) -> zend_result;
14870    pub fn zend_alter_ini_entry_chars_ex(
14871        name: *mut zend_string,
14872        value: *const ::std::os::raw::c_char,
14873        value_length: usize,
14874        modify_type: ::std::os::raw::c_int,
14875        stage: ::std::os::raw::c_int,
14876        force_change: ::std::os::raw::c_int,
14877    ) -> zend_result;
14878    pub fn zend_restore_ini_entry(
14879        name: *mut zend_string,
14880        stage: ::std::os::raw::c_int,
14881    ) -> zend_result;
14882    pub fn display_ini_entries(module: *mut zend_module_entry);
14883    pub fn zend_ini_long(
14884        name: *const ::std::os::raw::c_char,
14885        name_length: usize,
14886        orig: ::std::os::raw::c_int,
14887    ) -> zend_long;
14888    pub fn zend_ini_double(
14889        name: *const ::std::os::raw::c_char,
14890        name_length: usize,
14891        orig: ::std::os::raw::c_int,
14892    ) -> f64;
14893    pub fn zend_ini_string(
14894        name: *const ::std::os::raw::c_char,
14895        name_length: usize,
14896        orig: ::std::os::raw::c_int,
14897    ) -> *mut ::std::os::raw::c_char;
14898    pub fn zend_ini_string_ex(
14899        name: *const ::std::os::raw::c_char,
14900        name_length: usize,
14901        orig: ::std::os::raw::c_int,
14902        exists: *mut bool,
14903    ) -> *mut ::std::os::raw::c_char;
14904    pub fn zend_ini_str(
14905        name: *const ::std::os::raw::c_char,
14906        name_length: usize,
14907        orig: bool,
14908    ) -> *mut zend_string;
14909    pub fn zend_ini_str_ex(
14910        name: *const ::std::os::raw::c_char,
14911        name_length: usize,
14912        orig: bool,
14913        exists: *mut bool,
14914    ) -> *mut zend_string;
14915    pub fn zend_ini_get_value(name: *mut zend_string) -> *mut zend_string;
14916    pub fn zend_ini_parse_bool(str_: *mut zend_string) -> bool;
14917    #[doc = " Parses an ini quantity\n\n The value parameter must be a string in the form\n\n```text\n     sign? digits ws* multiplier?\n```\n\n with\n\n```text\n     sign: [+-]\n     digit: [0-9]\n     digits: digit+\n     ws: [ \\t\\n\\r\\v\\f]\n     multiplier: [KMG]\n```\n\n Leading and trailing whitespaces are ignored.\n\n If the string is empty or consists only of only whitespaces, 0 is returned.\n\n Digits is parsed as decimal unless the first digit is '0', in which case\n digits is parsed as octal.\n\n The multiplier is case-insensitive. K, M, and G multiply the quantity by\n 2**10, 2**20, and 2**30, respectively.\n\n For backwards compatibility, ill-formatted values are handled as follows:\n - No leading digits: value is treated as '0'\n - Invalid multiplier: multiplier is ignored\n - Invalid characters between digits and multiplier: invalid characters are\n```text\n   ignored\n```\n - Integer overflow: The result of the overflow is returned\n\n In any of these cases an error string is stored in *errstr (caller must\n release it), otherwise *errstr is set to NULL.\n"]
14918    pub fn zend_ini_parse_quantity(
14919        value: *mut zend_string,
14920        errstr: *mut *mut zend_string,
14921    ) -> zend_long;
14922    #[doc = " Unsigned variant of zend_ini_parse_quantity"]
14923    pub fn zend_ini_parse_uquantity(
14924        value: *mut zend_string,
14925        errstr: *mut *mut zend_string,
14926    ) -> zend_ulong;
14927    pub fn zend_ini_parse_quantity_warn(
14928        value: *mut zend_string,
14929        setting: *mut zend_string,
14930    ) -> zend_long;
14931    pub fn zend_ini_parse_uquantity_warn(
14932        value: *mut zend_string,
14933        setting: *mut zend_string,
14934    ) -> zend_ulong;
14935    pub fn zend_ini_register_displayer(
14936        name: *const ::std::os::raw::c_char,
14937        name_length: u32,
14938        displayer: ::std::option::Option<
14939            unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
14940        >,
14941    ) -> zend_result;
14942    pub fn zend_ini_boolean_displayer_cb(
14943        ini_entry: *mut zend_ini_entry,
14944        type_: ::std::os::raw::c_int,
14945    );
14946    pub fn zend_ini_color_displayer_cb(
14947        ini_entry: *mut zend_ini_entry,
14948        type_: ::std::os::raw::c_int,
14949    );
14950    pub fn display_link_numbers(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int);
14951    pub fn OnUpdateBool(
14952        entry: *mut zend_ini_entry,
14953        new_value: *mut zend_string,
14954        mh_arg1: *mut ::std::os::raw::c_void,
14955        mh_arg2: *mut ::std::os::raw::c_void,
14956        mh_arg3: *mut ::std::os::raw::c_void,
14957        stage: ::std::os::raw::c_int,
14958    ) -> ::std::os::raw::c_int;
14959    pub fn OnUpdateLong(
14960        entry: *mut zend_ini_entry,
14961        new_value: *mut zend_string,
14962        mh_arg1: *mut ::std::os::raw::c_void,
14963        mh_arg2: *mut ::std::os::raw::c_void,
14964        mh_arg3: *mut ::std::os::raw::c_void,
14965        stage: ::std::os::raw::c_int,
14966    ) -> ::std::os::raw::c_int;
14967    pub fn OnUpdateLongGEZero(
14968        entry: *mut zend_ini_entry,
14969        new_value: *mut zend_string,
14970        mh_arg1: *mut ::std::os::raw::c_void,
14971        mh_arg2: *mut ::std::os::raw::c_void,
14972        mh_arg3: *mut ::std::os::raw::c_void,
14973        stage: ::std::os::raw::c_int,
14974    ) -> ::std::os::raw::c_int;
14975    pub fn OnUpdateReal(
14976        entry: *mut zend_ini_entry,
14977        new_value: *mut zend_string,
14978        mh_arg1: *mut ::std::os::raw::c_void,
14979        mh_arg2: *mut ::std::os::raw::c_void,
14980        mh_arg3: *mut ::std::os::raw::c_void,
14981        stage: ::std::os::raw::c_int,
14982    ) -> ::std::os::raw::c_int;
14983    pub fn OnUpdateString(
14984        entry: *mut zend_ini_entry,
14985        new_value: *mut zend_string,
14986        mh_arg1: *mut ::std::os::raw::c_void,
14987        mh_arg2: *mut ::std::os::raw::c_void,
14988        mh_arg3: *mut ::std::os::raw::c_void,
14989        stage: ::std::os::raw::c_int,
14990    ) -> ::std::os::raw::c_int;
14991    pub fn OnUpdateStringUnempty(
14992        entry: *mut zend_ini_entry,
14993        new_value: *mut zend_string,
14994        mh_arg1: *mut ::std::os::raw::c_void,
14995        mh_arg2: *mut ::std::os::raw::c_void,
14996        mh_arg3: *mut ::std::os::raw::c_void,
14997        stage: ::std::os::raw::c_int,
14998    ) -> ::std::os::raw::c_int;
14999    pub fn OnUpdateStr(
15000        entry: *mut zend_ini_entry,
15001        new_value: *mut zend_string,
15002        mh_arg1: *mut ::std::os::raw::c_void,
15003        mh_arg2: *mut ::std::os::raw::c_void,
15004        mh_arg3: *mut ::std::os::raw::c_void,
15005        stage: ::std::os::raw::c_int,
15006    ) -> ::std::os::raw::c_int;
15007    pub fn OnUpdateStrNotEmpty(
15008        entry: *mut zend_ini_entry,
15009        new_value: *mut zend_string,
15010        mh_arg1: *mut ::std::os::raw::c_void,
15011        mh_arg2: *mut ::std::os::raw::c_void,
15012        mh_arg3: *mut ::std::os::raw::c_void,
15013        stage: ::std::os::raw::c_int,
15014    ) -> ::std::os::raw::c_int;
15015    pub fn zend_parse_ini_file(
15016        fh: *mut zend_file_handle,
15017        unbuffered_errors: bool,
15018        scanner_mode: ::std::os::raw::c_int,
15019        ini_parser_cb: zend_ini_parser_cb_t,
15020        arg: *mut ::std::os::raw::c_void,
15021    ) -> zend_result;
15022    pub fn zend_parse_ini_string(
15023        str_: *const ::std::os::raw::c_char,
15024        unbuffered_errors: bool,
15025        scanner_mode: ::std::os::raw::c_int,
15026        ini_parser_cb: zend_ini_parser_cb_t,
15027        arg: *mut ::std::os::raw::c_void,
15028    ) -> zend_result;
15029    pub fn zend_ini_scanner_get_lineno() -> ::std::os::raw::c_int;
15030    pub fn zend_ini_scanner_get_filename() -> *const ::std::os::raw::c_char;
15031    pub fn zend_ini_open_file_for_scanning(
15032        fh: *mut zend_file_handle,
15033        scanner_mode: ::std::os::raw::c_int,
15034    ) -> zend_result;
15035    pub fn zend_ini_prepare_string_for_scanning(
15036        str_: *const ::std::os::raw::c_char,
15037        scanner_mode: ::std::os::raw::c_int,
15038    ) -> zend_result;
15039    pub fn ini_lex(ini_lval: *mut zval) -> ::std::os::raw::c_int;
15040    pub fn shutdown_ini_scanner();
15041    pub static mut zend_ce_traversable: *mut zend_class_entry;
15042    pub static mut zend_ce_aggregate: *mut zend_class_entry;
15043    pub static mut zend_ce_iterator: *mut zend_class_entry;
15044    pub static mut zend_ce_arrayaccess: *mut zend_class_entry;
15045    pub static mut zend_ce_serializable: *mut zend_class_entry;
15046    pub static mut zend_ce_countable: *mut zend_class_entry;
15047    pub static mut zend_ce_stringable: *mut zend_class_entry;
15048    pub fn zend_call_method(
15049        object: *mut zend_object,
15050        obj_ce: *mut zend_class_entry,
15051        fn_proxy: *mut *mut zend_function,
15052        function_name: *const ::std::os::raw::c_char,
15053        function_name_len: usize,
15054        retval: *mut zval,
15055        param_count: u32,
15056        arg1: *mut zval,
15057        arg2: *mut zval,
15058    ) -> *mut zval;
15059    #[link_name = "zend_call_method_with_0_params__extern"]
15060    pub fn zend_call_method_with_0_params(
15061        object: *mut zend_object,
15062        obj_ce: *mut zend_class_entry,
15063        fn_proxy: *mut *mut zend_function,
15064        function_name: *const ::std::os::raw::c_char,
15065        retval: *mut zval,
15066    ) -> *mut zval;
15067    #[link_name = "zend_call_method_with_1_params__extern"]
15068    pub fn zend_call_method_with_1_params(
15069        object: *mut zend_object,
15070        obj_ce: *mut zend_class_entry,
15071        fn_proxy: *mut *mut zend_function,
15072        function_name: *const ::std::os::raw::c_char,
15073        retval: *mut zval,
15074        arg1: *mut zval,
15075    ) -> *mut zval;
15076    #[link_name = "zend_call_method_with_2_params__extern"]
15077    pub fn zend_call_method_with_2_params(
15078        object: *mut zend_object,
15079        obj_ce: *mut zend_class_entry,
15080        fn_proxy: *mut *mut zend_function,
15081        function_name: *const ::std::os::raw::c_char,
15082        retval: *mut zval,
15083        arg1: *mut zval,
15084        arg2: *mut zval,
15085    ) -> *mut zval;
15086    pub fn zend_user_it_rewind(_iter: *mut zend_object_iterator);
15087    pub fn zend_user_it_valid(_iter: *mut zend_object_iterator) -> zend_result;
15088    pub fn zend_user_it_get_current_key(_iter: *mut zend_object_iterator, key: *mut zval);
15089    pub fn zend_user_it_get_current_data(_iter: *mut zend_object_iterator) -> *mut zval;
15090    pub fn zend_user_it_move_forward(_iter: *mut zend_object_iterator);
15091    pub fn zend_user_it_invalidate_current(_iter: *mut zend_object_iterator);
15092    pub fn zend_user_it_get_gc(
15093        _iter: *mut zend_object_iterator,
15094        table: *mut *mut zval,
15095        n: *mut ::std::os::raw::c_int,
15096    ) -> *mut HashTable;
15097    pub fn zend_user_it_new_iterator(
15098        ce: *mut zend_class_entry,
15099        object: *mut zval,
15100        iterator: *mut zval,
15101    );
15102    pub fn zend_user_it_get_new_iterator(
15103        ce: *mut zend_class_entry,
15104        object: *mut zval,
15105        by_ref: ::std::os::raw::c_int,
15106    ) -> *mut zend_object_iterator;
15107    pub fn zend_register_interfaces();
15108    pub fn zend_user_serialize(
15109        object: *mut zval,
15110        buffer: *mut *mut ::std::os::raw::c_uchar,
15111        buf_len: *mut usize,
15112        data: *mut zend_serialize_data,
15113    ) -> ::std::os::raw::c_int;
15114    pub fn zend_user_unserialize(
15115        object: *mut zval,
15116        ce: *mut zend_class_entry,
15117        buf: *const ::std::os::raw::c_uchar,
15118        buf_len: usize,
15119        data: *mut zend_unserialize_data,
15120    ) -> ::std::os::raw::c_int;
15121    pub fn zend_create_internal_iterator_zval(
15122        return_value: *mut zval,
15123        obj: *mut zval,
15124    ) -> zend_result;
15125    pub fn zend_save_lexical_state(lex_state: *mut zend_lex_state);
15126    pub fn zend_restore_lexical_state(lex_state: *mut zend_lex_state);
15127    pub fn zend_prepare_string_for_scanning(str_: *mut zval, filename: *mut zend_string);
15128    pub fn zend_multibyte_yyinput_again(
15129        old_input_filter: zend_encoding_filter,
15130        old_encoding: *const zend_encoding,
15131    );
15132    pub fn zend_multibyte_set_filter(onetime_encoding: *const zend_encoding) -> zend_result;
15133    pub fn zend_lex_tstring(zv: *mut zval, ident: *mut ::std::os::raw::c_uchar) -> zend_result;
15134    #[doc = " Set a name for the specified memory area.\n\n This feature requires Linux 5.17."]
15135    #[link_name = "zend_mmap_set_name__extern"]
15136    pub fn zend_mmap_set_name(
15137        start: *const ::std::os::raw::c_void,
15138        len: usize,
15139        name: *const ::std::os::raw::c_char,
15140    );
15141    pub static mut zend_observer_fcall_op_array_extension: ::std::os::raw::c_int;
15142    pub static mut zend_observer_fcall_internal_function_extension: ::std::os::raw::c_int;
15143    pub static mut zend_observer_errors_observed: bool;
15144    pub static mut zend_observer_function_declared_observed: bool;
15145    pub static mut zend_observer_class_linked_observed: bool;
15146    pub fn zend_observer_fcall_register(arg1: zend_observer_fcall_init);
15147    pub fn zend_observer_add_begin_handler(
15148        function: *mut zend_function,
15149        begin: zend_observer_fcall_begin_handler,
15150    );
15151    pub fn zend_observer_remove_begin_handler(
15152        function: *mut zend_function,
15153        begin: zend_observer_fcall_begin_handler,
15154        next: *mut zend_observer_fcall_begin_handler,
15155    ) -> bool;
15156    pub fn zend_observer_add_end_handler(
15157        function: *mut zend_function,
15158        end: zend_observer_fcall_end_handler,
15159    );
15160    pub fn zend_observer_remove_end_handler(
15161        function: *mut zend_function,
15162        end: zend_observer_fcall_end_handler,
15163        next: *mut zend_observer_fcall_end_handler,
15164    ) -> bool;
15165    pub fn zend_observer_startup();
15166    pub fn zend_observer_post_startup();
15167    pub fn zend_observer_activate();
15168    pub fn zend_observer_shutdown();
15169    pub fn zend_observer_fcall_begin(execute_data: *mut zend_execute_data);
15170    pub fn zend_observer_fcall_begin_prechecked(
15171        execute_data: *mut zend_execute_data,
15172        observer_data: *mut zend_observer_fcall_begin_handler,
15173    );
15174    #[link_name = "zend_observer_handler_is_unobserved__extern"]
15175    pub fn zend_observer_handler_is_unobserved(
15176        handler: *mut zend_observer_fcall_begin_handler,
15177    ) -> bool;
15178    #[link_name = "zend_observer_fcall_has_no_observers__extern"]
15179    pub fn zend_observer_fcall_has_no_observers(
15180        execute_data: *mut zend_execute_data,
15181        allow_generator: bool,
15182        handler: *mut *mut zend_observer_fcall_begin_handler,
15183    ) -> bool;
15184    #[link_name = "zend_observer_fcall_begin_specialized__extern"]
15185    pub fn zend_observer_fcall_begin_specialized(
15186        execute_data: *mut zend_execute_data,
15187        allow_generator: bool,
15188    );
15189    pub fn zend_observer_generator_resume(execute_data: *mut zend_execute_data);
15190    pub fn zend_observer_fcall_end_prechecked(
15191        execute_data: *mut zend_execute_data,
15192        return_value: *mut zval,
15193    );
15194    #[link_name = "zend_observer_fcall_end__extern"]
15195    pub fn zend_observer_fcall_end(execute_data: *mut zend_execute_data, return_value: *mut zval);
15196    pub fn zend_observer_fcall_end_all();
15197    pub fn zend_observer_function_declared_register(cb: zend_observer_function_declared_cb);
15198    pub fn _zend_observer_function_declared_notify(
15199        op_array: *mut zend_op_array,
15200        name: *mut zend_string,
15201    );
15202    #[link_name = "zend_observer_function_declared_notify__extern"]
15203    pub fn zend_observer_function_declared_notify(
15204        op_array: *mut zend_op_array,
15205        name: *mut zend_string,
15206    );
15207    pub fn zend_observer_class_linked_register(cb: zend_observer_class_linked_cb);
15208    pub fn _zend_observer_class_linked_notify(ce: *mut zend_class_entry, name: *mut zend_string);
15209    #[link_name = "zend_observer_class_linked_notify__extern"]
15210    pub fn zend_observer_class_linked_notify(ce: *mut zend_class_entry, name: *mut zend_string);
15211    pub fn zend_observer_error_register(callback: zend_observer_error_cb);
15212    pub fn _zend_observer_error_notify(
15213        type_: ::std::os::raw::c_int,
15214        error_filename: *mut zend_string,
15215        error_lineno: u32,
15216        message: *mut zend_string,
15217    );
15218    #[link_name = "zend_observer_error_notify__extern"]
15219    pub fn zend_observer_error_notify(
15220        type_: ::std::os::raw::c_int,
15221        error_filename: *mut zend_string,
15222        error_lineno: u32,
15223        message: *mut zend_string,
15224    );
15225    pub fn zend_observer_fiber_init_register(handler: zend_observer_fiber_init_handler);
15226    pub fn zend_observer_fiber_switch_register(handler: zend_observer_fiber_switch_handler);
15227    pub fn zend_observer_fiber_destroy_register(handler: zend_observer_fiber_destroy_handler);
15228    pub fn zend_observer_fiber_init_notify(initializing: *mut zend_fiber_context);
15229    pub fn zend_observer_fiber_switch_notify(
15230        from: *mut zend_fiber_context,
15231        to: *mut zend_fiber_context,
15232    );
15233    pub fn zend_observer_fiber_destroy_notify(destroying: *mut zend_fiber_context);
15234    pub fn smart_str_erealloc(str_: *mut smart_str, len: usize);
15235    pub fn smart_str_realloc(str_: *mut smart_str, len: usize);
15236    pub fn smart_str_append_escaped(
15237        str_: *mut smart_str,
15238        s: *const ::std::os::raw::c_char,
15239        l: usize,
15240    );
15241    pub fn smart_str_append_double(
15242        str_: *mut smart_str,
15243        num: f64,
15244        precision: ::std::os::raw::c_int,
15245        zero_fraction: bool,
15246    );
15247    pub fn smart_str_append_printf(
15248        dest: *mut smart_str,
15249        format: *const ::std::os::raw::c_char,
15250        ...
15251    );
15252    pub fn smart_str_append_escaped_truncated(
15253        str_: *mut smart_str,
15254        value: *const zend_string,
15255        length: usize,
15256    );
15257    pub fn smart_str_append_scalar(str_: *mut smart_str, value: *const zval, truncate: usize);
15258    pub fn smart_str_append_zval(
15259        dest: *mut smart_str,
15260        value: *const zval,
15261        truncate: usize,
15262    ) -> zend_result;
15263    #[link_name = "smart_str_alloc__extern"]
15264    pub fn smart_str_alloc(str_: *mut smart_str, len: usize, persistent: bool) -> usize;
15265    #[link_name = "smart_str_extend_ex__extern"]
15266    pub fn smart_str_extend_ex(
15267        dest: *mut smart_str,
15268        len: usize,
15269        persistent: bool,
15270    ) -> *mut ::std::os::raw::c_char;
15271    #[link_name = "smart_str_extend__extern"]
15272    pub fn smart_str_extend(dest: *mut smart_str, length: usize) -> *mut ::std::os::raw::c_char;
15273    #[link_name = "smart_str_free_ex__extern"]
15274    pub fn smart_str_free_ex(str_: *mut smart_str, persistent: bool);
15275    #[link_name = "smart_str_free__extern"]
15276    pub fn smart_str_free(str_: *mut smart_str);
15277    #[link_name = "smart_str_0__extern"]
15278    pub fn smart_str_0(str_: *mut smart_str);
15279    #[link_name = "smart_str_get_len__extern"]
15280    pub fn smart_str_get_len(str_: *mut smart_str) -> usize;
15281    #[link_name = "smart_str_trim_to_size_ex__extern"]
15282    pub fn smart_str_trim_to_size_ex(str_: *mut smart_str, persistent: bool);
15283    #[link_name = "smart_str_trim_to_size__extern"]
15284    pub fn smart_str_trim_to_size(dest: *mut smart_str);
15285    #[link_name = "smart_str_extract_ex__extern"]
15286    pub fn smart_str_extract_ex(str_: *mut smart_str, persistent: bool) -> *mut zend_string;
15287    #[link_name = "smart_str_extract__extern"]
15288    pub fn smart_str_extract(dest: *mut smart_str) -> *mut zend_string;
15289    #[link_name = "smart_str_appendc_ex__extern"]
15290    pub fn smart_str_appendc_ex(dest: *mut smart_str, ch: ::std::os::raw::c_char, persistent: bool);
15291    #[link_name = "smart_str_appendl_ex__extern"]
15292    pub fn smart_str_appendl_ex(
15293        dest: *mut smart_str,
15294        str_: *const ::std::os::raw::c_char,
15295        len: usize,
15296        persistent: bool,
15297    );
15298    #[link_name = "smart_str_append_ex__extern"]
15299    pub fn smart_str_append_ex(dest: *mut smart_str, src: *const zend_string, persistent: bool);
15300    #[link_name = "smart_str_append_smart_str_ex__extern"]
15301    pub fn smart_str_append_smart_str_ex(
15302        dest: *mut smart_str,
15303        src: *const smart_str,
15304        persistent: bool,
15305    );
15306    #[link_name = "smart_str_append_long_ex__extern"]
15307    pub fn smart_str_append_long_ex(dest: *mut smart_str, num: zend_long, persistent: bool);
15308    #[link_name = "smart_str_append_long__extern"]
15309    pub fn smart_str_append_long(dest: *mut smart_str, num: zend_long);
15310    #[link_name = "smart_str_append_unsigned_ex__extern"]
15311    pub fn smart_str_append_unsigned_ex(dest: *mut smart_str, num: zend_ulong, persistent: bool);
15312    #[link_name = "smart_str_append_unsigned__extern"]
15313    pub fn smart_str_append_unsigned(dest: *mut smart_str, num: zend_ulong);
15314    #[link_name = "smart_str_appendl__extern"]
15315    pub fn smart_str_appendl(
15316        dest: *mut smart_str,
15317        src: *const ::std::os::raw::c_char,
15318        length: usize,
15319    );
15320    #[link_name = "smart_str_appends_ex__extern"]
15321    pub fn smart_str_appends_ex(
15322        dest: *mut smart_str,
15323        src: *const ::std::os::raw::c_char,
15324        persistent: bool,
15325    );
15326    #[link_name = "smart_str_appends__extern"]
15327    pub fn smart_str_appends(dest: *mut smart_str, src: *const ::std::os::raw::c_char);
15328    #[link_name = "smart_str_append__extern"]
15329    pub fn smart_str_append(dest: *mut smart_str, src: *const zend_string);
15330    #[link_name = "smart_str_appendc__extern"]
15331    pub fn smart_str_appendc(dest: *mut smart_str, ch: ::std::os::raw::c_char);
15332    #[link_name = "smart_str_append_smart_str__extern"]
15333    pub fn smart_str_append_smart_str(dest: *mut smart_str, src: *const smart_str);
15334    #[link_name = "smart_str_setl__extern"]
15335    pub fn smart_str_setl(dest: *mut smart_str, src: *const ::std::os::raw::c_char, len: usize);
15336    #[link_name = "smart_str_sets__extern"]
15337    pub fn smart_str_sets(dest: *mut smart_str, src: *const ::std::os::raw::c_char);
15338    pub fn smart_string_append_printf(
15339        dest: *mut smart_string,
15340        format: *const ::std::os::raw::c_char,
15341        ...
15342    );
15343    pub fn _smart_string_alloc_persistent(str_: *mut smart_string, len: usize);
15344    pub fn _smart_string_alloc(str_: *mut smart_string, len: usize);
15345    #[link_name = "smart_string_alloc__extern"]
15346    pub fn smart_string_alloc(str_: *mut smart_string, len: usize, persistent: bool) -> usize;
15347    #[link_name = "smart_string_free_ex__extern"]
15348    pub fn smart_string_free_ex(str_: *mut smart_string, persistent: bool);
15349    #[link_name = "smart_string_0__extern"]
15350    pub fn smart_string_0(str_: *mut smart_string);
15351    #[link_name = "smart_string_appendc_ex__extern"]
15352    pub fn smart_string_appendc_ex(
15353        dest: *mut smart_string,
15354        ch: ::std::os::raw::c_char,
15355        persistent: bool,
15356    );
15357    #[link_name = "smart_string_appendl_ex__extern"]
15358    pub fn smart_string_appendl_ex(
15359        dest: *mut smart_string,
15360        str_: *const ::std::os::raw::c_char,
15361        len: usize,
15362        persistent: bool,
15363    );
15364    #[link_name = "smart_string_append_long_ex__extern"]
15365    pub fn smart_string_append_long_ex(dest: *mut smart_string, num: zend_long, persistent: bool);
15366    #[link_name = "smart_string_append_unsigned_ex__extern"]
15367    pub fn smart_string_append_unsigned_ex(
15368        dest: *mut smart_string,
15369        num: zend_ulong,
15370        persistent: bool,
15371    );
15372    #[link_name = "smart_string_setl__extern"]
15373    pub fn smart_string_setl(dest: *mut smart_string, src: *mut ::std::os::raw::c_char, len: usize);
15374    #[link_name = "smart_string_reset__extern"]
15375    pub fn smart_string_reset(str_: *mut smart_string);
15376    pub static mut zend_system_id: [::std::os::raw::c_char; 32usize];
15377    pub fn zend_add_system_entropy(
15378        module_name: *const ::std::os::raw::c_char,
15379        hook_name: *const ::std::os::raw::c_char,
15380        data: *const ::std::os::raw::c_void,
15381        size: usize,
15382    ) -> zend_result;
15383    pub fn zend_startup_system_id();
15384    pub fn zend_finalize_system_id();
15385    pub fn virtual_cwd_startup();
15386    pub fn virtual_cwd_shutdown();
15387    pub fn virtual_cwd_activate();
15388    pub fn virtual_cwd_deactivate();
15389    pub fn virtual_getcwd_ex(length: *mut usize) -> *mut ::std::os::raw::c_char;
15390    pub fn virtual_getcwd(
15391        buf: *mut ::std::os::raw::c_char,
15392        size: usize,
15393    ) -> *mut ::std::os::raw::c_char;
15394    pub fn virtual_chdir(path: *const ::std::os::raw::c_char) -> zend_result;
15395    pub fn virtual_chdir_file(
15396        path: *const ::std::os::raw::c_char,
15397        p_chdir: ::std::option::Option<
15398            unsafe extern "C" fn(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int,
15399        >,
15400    ) -> ::std::os::raw::c_int;
15401    pub fn virtual_filepath(
15402        path: *const ::std::os::raw::c_char,
15403        filepath: *mut *mut ::std::os::raw::c_char,
15404    ) -> ::std::os::raw::c_int;
15405    pub fn virtual_filepath_ex(
15406        path: *const ::std::os::raw::c_char,
15407        filepath: *mut *mut ::std::os::raw::c_char,
15408        verify_path: verify_path_func,
15409    ) -> ::std::os::raw::c_int;
15410    pub fn virtual_realpath(
15411        path: *const ::std::os::raw::c_char,
15412        real_path: *mut ::std::os::raw::c_char,
15413    ) -> *mut ::std::os::raw::c_char;
15414    pub fn virtual_fopen(
15415        path: *const ::std::os::raw::c_char,
15416        mode: *const ::std::os::raw::c_char,
15417    ) -> *mut FILE;
15418    pub fn virtual_open(
15419        path: *const ::std::os::raw::c_char,
15420        flags: ::std::os::raw::c_int,
15421        ...
15422    ) -> ::std::os::raw::c_int;
15423    pub fn virtual_creat(
15424        path: *const ::std::os::raw::c_char,
15425        mode: mode_t,
15426    ) -> ::std::os::raw::c_int;
15427    pub fn virtual_rename(
15428        oldname: *const ::std::os::raw::c_char,
15429        newname: *const ::std::os::raw::c_char,
15430    ) -> ::std::os::raw::c_int;
15431    pub fn virtual_stat(
15432        path: *const ::std::os::raw::c_char,
15433        buf: *mut zend_stat_t,
15434    ) -> ::std::os::raw::c_int;
15435    pub fn virtual_lstat(
15436        path: *const ::std::os::raw::c_char,
15437        buf: *mut zend_stat_t,
15438    ) -> ::std::os::raw::c_int;
15439    pub fn virtual_unlink(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
15440    pub fn virtual_mkdir(
15441        pathname: *const ::std::os::raw::c_char,
15442        mode: mode_t,
15443    ) -> ::std::os::raw::c_int;
15444    pub fn virtual_rmdir(pathname: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
15445    pub fn virtual_opendir(pathname: *const ::std::os::raw::c_char) -> *mut DIR;
15446    pub fn virtual_popen(
15447        command: *const ::std::os::raw::c_char,
15448        type_: *const ::std::os::raw::c_char,
15449    ) -> *mut FILE;
15450    pub fn virtual_access(
15451        pathname: *const ::std::os::raw::c_char,
15452        mode: ::std::os::raw::c_int,
15453    ) -> ::std::os::raw::c_int;
15454    pub fn virtual_utime(
15455        filename: *const ::std::os::raw::c_char,
15456        buf: *mut utimbuf,
15457    ) -> ::std::os::raw::c_int;
15458    pub fn virtual_chmod(
15459        filename: *const ::std::os::raw::c_char,
15460        mode: mode_t,
15461    ) -> ::std::os::raw::c_int;
15462    pub fn virtual_chown(
15463        filename: *const ::std::os::raw::c_char,
15464        owner: uid_t,
15465        group: gid_t,
15466        link: ::std::os::raw::c_int,
15467    ) -> ::std::os::raw::c_int;
15468    pub fn virtual_file_ex(
15469        state: *mut cwd_state,
15470        path: *const ::std::os::raw::c_char,
15471        verify_path: verify_path_func,
15472        use_realpath: ::std::os::raw::c_int,
15473    ) -> ::std::os::raw::c_int;
15474    pub fn tsrm_realpath(
15475        path: *const ::std::os::raw::c_char,
15476        real_path: *mut ::std::os::raw::c_char,
15477    ) -> *mut ::std::os::raw::c_char;
15478    pub static mut cwd_globals: virtual_cwd_globals;
15479    pub fn realpath_cache_clean();
15480    pub fn realpath_cache_del(path: *const ::std::os::raw::c_char, path_len: usize);
15481    pub fn realpath_cache_lookup(
15482        path: *const ::std::os::raw::c_char,
15483        path_len: usize,
15484        t: time_t,
15485    ) -> *mut realpath_cache_bucket;
15486    pub fn realpath_cache_size() -> zend_long;
15487    pub fn realpath_cache_max_buckets() -> zend_long;
15488    pub fn realpath_cache_get_buckets() -> *mut *mut realpath_cache_bucket;
15489    pub fn zend_vm_set_opcode_handler(opcode: *mut zend_op);
15490    pub fn zend_vm_set_opcode_handler_ex(
15491        opcode: *mut zend_op,
15492        op1_info: u32,
15493        op2_info: u32,
15494        res_info: u32,
15495    );
15496    pub fn zend_serialize_opcode_handler(op: *mut zend_op);
15497    pub fn zend_deserialize_opcode_handler(op: *mut zend_op);
15498    pub fn zend_get_opcode_handler_func(op: *const zend_op) -> *const ::std::os::raw::c_void;
15499    pub fn zend_get_halt_op() -> *const zend_op;
15500    pub fn zend_get_interrupt_op() -> *const zend_op;
15501    pub fn zend_vm_call_opcode_handler(ex: *mut zend_execute_data) -> ::std::os::raw::c_int;
15502    pub fn zend_vm_kind() -> ::std::os::raw::c_int;
15503    pub fn zend_vm_init();
15504    pub fn zend_vm_dtor();
15505    pub static mut zend_ce_weakref: *mut zend_class_entry;
15506    pub fn zend_register_weakref_ce();
15507    pub fn zend_weakrefs_init();
15508    pub fn zend_weakrefs_shutdown();
15509    pub fn zend_weakrefs_notify(object: *mut zend_object);
15510    pub fn zend_weakrefs_hash_add(
15511        ht: *mut HashTable,
15512        key: *mut zend_object,
15513        pData: *mut zval,
15514    ) -> *mut zval;
15515    pub fn zend_weakrefs_hash_del(ht: *mut HashTable, key: *mut zend_object) -> zend_result;
15516    #[link_name = "zend_weakrefs_hash_add_ptr__extern"]
15517    pub fn zend_weakrefs_hash_add_ptr(
15518        ht: *mut HashTable,
15519        key: *mut zend_object,
15520        ptr: *mut ::std::os::raw::c_void,
15521    ) -> *mut ::std::os::raw::c_void;
15522    pub fn zend_weakrefs_hash_clean(ht: *mut HashTable);
15523    #[link_name = "zend_weakrefs_hash_destroy__extern"]
15524    pub fn zend_weakrefs_hash_destroy(ht: *mut HashTable);
15525    #[link_name = "zend_object_to_weakref_key__extern"]
15526    pub fn zend_object_to_weakref_key(object: *const zend_object) -> zend_ulong;
15527    #[link_name = "zend_weakref_key_to_object__extern"]
15528    pub fn zend_weakref_key_to_object(key: zend_ulong) -> *mut zend_object;
15529    pub fn zend_weakmap_get_gc(
15530        object: *mut zend_object,
15531        table: *mut *mut zval,
15532        n: *mut ::std::os::raw::c_int,
15533    ) -> *mut HashTable;
15534    pub fn zend_weakmap_get_key_entry_gc(
15535        object: *mut zend_object,
15536        table: *mut *mut zval,
15537        n: *mut ::std::os::raw::c_int,
15538    ) -> *mut HashTable;
15539    pub fn zend_weakmap_get_entry_gc(
15540        object: *mut zend_object,
15541        table: *mut *mut zval,
15542        n: *mut ::std::os::raw::c_int,
15543    ) -> *mut HashTable;
15544    pub fn zend_weakmap_get_object_key_entry_gc(
15545        object: *mut zend_object,
15546        table: *mut *mut zval,
15547        n: *mut ::std::os::raw::c_int,
15548    ) -> *mut HashTable;
15549    pub fn zend_weakmap_get_object_entry_gc(
15550        object: *mut zend_object,
15551        table: *mut *mut zval,
15552        n: *mut ::std::os::raw::c_int,
15553    ) -> *mut HashTable;
15554    pub fn php_safe_bcmp(a: *const zend_string, b: *const zend_string) -> ::std::os::raw::c_int;
15555    pub fn ap_php_slprintf(
15556        buf: *mut ::std::os::raw::c_char,
15557        len: usize,
15558        format: *const ::std::os::raw::c_char,
15559        ...
15560    ) -> ::std::os::raw::c_int;
15561    pub fn ap_php_vslprintf(
15562        buf: *mut ::std::os::raw::c_char,
15563        len: usize,
15564        format: *const ::std::os::raw::c_char,
15565        ap: *mut __va_list_tag,
15566    ) -> ::std::os::raw::c_int;
15567    pub fn ap_php_snprintf(
15568        arg1: *mut ::std::os::raw::c_char,
15569        arg2: usize,
15570        arg3: *const ::std::os::raw::c_char,
15571        ...
15572    ) -> ::std::os::raw::c_int;
15573    pub fn ap_php_vsnprintf(
15574        arg1: *mut ::std::os::raw::c_char,
15575        arg2: usize,
15576        arg3: *const ::std::os::raw::c_char,
15577        ap: *mut __va_list_tag,
15578    ) -> ::std::os::raw::c_int;
15579    pub fn ap_php_vasprintf(
15580        buf: *mut *mut ::std::os::raw::c_char,
15581        format: *const ::std::os::raw::c_char,
15582        ap: *mut __va_list_tag,
15583    ) -> ::std::os::raw::c_int;
15584    pub fn ap_php_asprintf(
15585        buf: *mut *mut ::std::os::raw::c_char,
15586        format: *const ::std::os::raw::c_char,
15587        ...
15588    ) -> ::std::os::raw::c_int;
15589    pub fn php_0cvt(
15590        value: f64,
15591        ndigit: ::std::os::raw::c_int,
15592        dec_point: ::std::os::raw::c_char,
15593        exponent: ::std::os::raw::c_char,
15594        buf: *mut ::std::os::raw::c_char,
15595    ) -> *mut ::std::os::raw::c_char;
15596    pub fn php_conv_fp(
15597        format: ::std::os::raw::c_char,
15598        num: f64,
15599        add_dp: bool,
15600        precision: ::std::os::raw::c_int,
15601        dec_point: ::std::os::raw::c_char,
15602        is_negative: *mut bool,
15603        buf: *mut ::std::os::raw::c_char,
15604        len: *mut usize,
15605    ) -> *mut ::std::os::raw::c_char;
15606    pub fn ap_php_conv_10(
15607        num: i64,
15608        is_unsigned: bool,
15609        is_negative: *mut bool,
15610        buf_end: *mut ::std::os::raw::c_char,
15611        len: *mut usize,
15612    ) -> *mut ::std::os::raw::c_char;
15613    pub fn ap_php_conv_p2(
15614        num: u64,
15615        nbits: ::std::os::raw::c_int,
15616        format: ::std::os::raw::c_char,
15617        buf_end: *mut ::std::os::raw::c_char,
15618        len: *mut usize,
15619    ) -> *mut ::std::os::raw::c_char;
15620    pub fn php_printf_to_smart_string(
15621        buf: *mut smart_string,
15622        format: *const ::std::os::raw::c_char,
15623        ap: *mut __va_list_tag,
15624    );
15625    pub fn php_printf_to_smart_str(
15626        buf: *mut smart_str,
15627        format: *const ::std::os::raw::c_char,
15628        ap: *mut __va_list_tag,
15629    );
15630    pub static mut environ: *mut *mut ::std::os::raw::c_char;
15631    pub static php_build_date: [::std::os::raw::c_char; 0usize];
15632    pub fn phperror(error: *mut ::std::os::raw::c_char);
15633    pub fn php_write(buf: *mut ::std::os::raw::c_void, size: usize) -> usize;
15634    pub fn php_printf(format: *const ::std::os::raw::c_char, ...) -> usize;
15635    pub fn php_printf_unchecked(format: *const ::std::os::raw::c_char, ...) -> usize;
15636    pub fn php_during_module_startup() -> bool;
15637    pub fn php_during_module_shutdown() -> bool;
15638    pub fn php_get_module_initialized() -> bool;
15639    pub fn php_syslog_str(priority: ::std::os::raw::c_int, message: *const zend_string);
15640    pub fn php_syslog(arg1: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
15641    pub fn php_openlog(
15642        arg1: *const ::std::os::raw::c_char,
15643        arg2: ::std::os::raw::c_int,
15644        arg3: ::std::os::raw::c_int,
15645    );
15646    pub fn php_closelog();
15647    pub fn php_log_err_with_severity(
15648        log_message: *const ::std::os::raw::c_char,
15649        syslog_type_int: ::std::os::raw::c_int,
15650    );
15651    pub fn Debug(format: *mut ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
15652    pub fn cfgparse() -> ::std::os::raw::c_int;
15653    #[link_name = "php_set_error_handling__extern"]
15654    pub fn php_set_error_handling(
15655        error_handling: zend_error_handling_t::Type,
15656        exception_class: *mut zend_class_entry,
15657    );
15658    #[link_name = "php_std_error_handling__extern"]
15659    pub fn php_std_error_handling();
15660    pub fn php_verror(
15661        docref: *const ::std::os::raw::c_char,
15662        params: *const ::std::os::raw::c_char,
15663        type_: ::std::os::raw::c_int,
15664        format: *const ::std::os::raw::c_char,
15665        args: *mut __va_list_tag,
15666    );
15667    pub fn php_error_docref(
15668        docref: *const ::std::os::raw::c_char,
15669        type_: ::std::os::raw::c_int,
15670        format: *const ::std::os::raw::c_char,
15671        ...
15672    );
15673    pub fn php_error_docref_unchecked(
15674        docref: *const ::std::os::raw::c_char,
15675        type_: ::std::os::raw::c_int,
15676        format: *const ::std::os::raw::c_char,
15677        ...
15678    );
15679    pub fn php_error_docref1(
15680        docref: *const ::std::os::raw::c_char,
15681        param1: *const ::std::os::raw::c_char,
15682        type_: ::std::os::raw::c_int,
15683        format: *const ::std::os::raw::c_char,
15684        ...
15685    );
15686    pub fn php_error_docref2(
15687        docref: *const ::std::os::raw::c_char,
15688        param1: *const ::std::os::raw::c_char,
15689        param2: *const ::std::os::raw::c_char,
15690        type_: ::std::os::raw::c_int,
15691        format: *const ::std::os::raw::c_char,
15692        ...
15693    );
15694    pub static mut php_register_internal_extensions_func:
15695        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
15696    pub fn php_register_internal_extensions() -> ::std::os::raw::c_int;
15697    pub fn php_register_pre_request_shutdown(
15698        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
15699        userdata: *mut ::std::os::raw::c_void,
15700    );
15701    pub fn php_com_initialize();
15702    pub fn php_get_current_user() -> *mut ::std::os::raw::c_char;
15703    pub fn php_get_internal_encoding() -> *const ::std::os::raw::c_char;
15704    pub fn php_get_input_encoding() -> *const ::std::os::raw::c_char;
15705    pub fn php_get_output_encoding() -> *const ::std::os::raw::c_char;
15706    pub static mut php_internal_encoding_changed: ::std::option::Option<unsafe extern "C" fn()>;
15707    pub static mut output_globals: zend_output_globals;
15708    pub static php_output_default_handler_name: [::std::os::raw::c_char; 23usize];
15709    pub static php_output_devnull_handler_name: [::std::os::raw::c_char; 20usize];
15710    pub fn php_output_startup();
15711    pub fn php_output_shutdown();
15712    pub fn php_output_activate() -> ::std::os::raw::c_int;
15713    pub fn php_output_deactivate();
15714    pub fn php_output_set_status(status: ::std::os::raw::c_int);
15715    pub fn php_output_get_status() -> ::std::os::raw::c_int;
15716    pub fn php_output_set_implicit_flush(flush: ::std::os::raw::c_int);
15717    pub fn php_output_get_start_filename() -> *const ::std::os::raw::c_char;
15718    pub fn php_output_get_start_lineno() -> ::std::os::raw::c_int;
15719    pub fn php_output_write_unbuffered(str_: *const ::std::os::raw::c_char, len: usize) -> usize;
15720    pub fn php_output_write(str_: *const ::std::os::raw::c_char, len: usize) -> usize;
15721    pub fn php_output_flush() -> zend_result;
15722    pub fn php_output_flush_all();
15723    pub fn php_output_clean() -> zend_result;
15724    pub fn php_output_clean_all();
15725    pub fn php_output_end() -> zend_result;
15726    pub fn php_output_end_all();
15727    pub fn php_output_discard() -> zend_result;
15728    pub fn php_output_discard_all();
15729    pub fn php_output_get_contents(p: *mut zval) -> zend_result;
15730    pub fn php_output_get_length(p: *mut zval) -> zend_result;
15731    pub fn php_output_get_level() -> ::std::os::raw::c_int;
15732    pub fn php_output_get_active_handler() -> *mut php_output_handler;
15733    pub fn php_output_start_default() -> zend_result;
15734    pub fn php_output_start_devnull() -> zend_result;
15735    pub fn php_output_start_user(
15736        output_handler: *mut zval,
15737        chunk_size: usize,
15738        flags: ::std::os::raw::c_int,
15739    ) -> zend_result;
15740    pub fn php_output_start_internal(
15741        name: *const ::std::os::raw::c_char,
15742        name_len: usize,
15743        output_handler: php_output_handler_func_t,
15744        chunk_size: usize,
15745        flags: ::std::os::raw::c_int,
15746    ) -> zend_result;
15747    pub fn php_output_handler_create_user(
15748        handler: *mut zval,
15749        chunk_size: usize,
15750        flags: ::std::os::raw::c_int,
15751    ) -> *mut php_output_handler;
15752    pub fn php_output_handler_create_internal(
15753        name: *const ::std::os::raw::c_char,
15754        name_len: usize,
15755        handler: php_output_handler_context_func_t,
15756        chunk_size: usize,
15757        flags: ::std::os::raw::c_int,
15758    ) -> *mut php_output_handler;
15759    pub fn php_output_handler_set_context(
15760        handler: *mut php_output_handler,
15761        opaq: *mut ::std::os::raw::c_void,
15762        dtor: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
15763    );
15764    pub fn php_output_handler_start(handler: *mut php_output_handler) -> zend_result;
15765    pub fn php_output_handler_started(name: *const ::std::os::raw::c_char, name_len: usize)
15766    -> bool;
15767    pub fn php_output_handler_hook(
15768        type_: php_output_handler_hook_t,
15769        arg: *mut ::std::os::raw::c_void,
15770    ) -> zend_result;
15771    pub fn php_output_handler_dtor(handler: *mut php_output_handler);
15772    pub fn php_output_handler_free(handler: *mut *mut php_output_handler);
15773    pub fn php_output_handler_conflict(
15774        handler_new: *const ::std::os::raw::c_char,
15775        handler_new_len: usize,
15776        handler_set: *const ::std::os::raw::c_char,
15777        handler_set_len: usize,
15778    ) -> bool;
15779    pub fn php_output_handler_conflict_register(
15780        handler_name: *const ::std::os::raw::c_char,
15781        handler_name_len: usize,
15782        check_func: php_output_handler_conflict_check_t,
15783    ) -> zend_result;
15784    pub fn php_output_handler_reverse_conflict_register(
15785        handler_name: *const ::std::os::raw::c_char,
15786        handler_name_len: usize,
15787        check_func: php_output_handler_conflict_check_t,
15788    ) -> zend_result;
15789    pub fn php_output_handler_alias(
15790        handler_name: *const ::std::os::raw::c_char,
15791        handler_name_len: usize,
15792    ) -> php_output_handler_alias_ctor_t;
15793    pub fn php_output_handler_alias_register(
15794        handler_name: *const ::std::os::raw::c_char,
15795        handler_name_len: usize,
15796        func: php_output_handler_alias_ctor_t,
15797    ) -> zend_result;
15798    pub fn php_file_le_stream() -> ::std::os::raw::c_int;
15799    pub fn php_file_le_pstream() -> ::std::os::raw::c_int;
15800    pub fn php_file_le_stream_filter() -> ::std::os::raw::c_int;
15801    pub fn php_le_stream_context() -> ::std::os::raw::c_int;
15802    pub fn php_stream_context_free(context: *mut php_stream_context);
15803    pub fn php_stream_context_alloc() -> *mut php_stream_context;
15804    pub fn php_stream_context_get_option(
15805        context: *const php_stream_context,
15806        wrappername: *const ::std::os::raw::c_char,
15807        optionname: *const ::std::os::raw::c_char,
15808    ) -> *mut zval;
15809    pub fn php_stream_context_set_option(
15810        context: *mut php_stream_context,
15811        wrappername: *const ::std::os::raw::c_char,
15812        optionname: *const ::std::os::raw::c_char,
15813        optionvalue: *mut zval,
15814    );
15815    pub fn php_stream_context_unset_option(
15816        context: *mut php_stream_context,
15817        wrappername: *const ::std::os::raw::c_char,
15818        optionname: *const ::std::os::raw::c_char,
15819    );
15820    pub fn php_stream_context_get_uri_parser(
15821        wrappername: *const ::std::os::raw::c_char,
15822        context: *mut php_stream_context,
15823    ) -> *const php_uri_parser;
15824    pub fn php_stream_notification_alloc() -> *mut php_stream_notifier;
15825    pub fn php_stream_notification_free(notifier: *mut php_stream_notifier);
15826    pub fn php_stream_notification_notify(
15827        context: *mut php_stream_context,
15828        notifycode: ::std::os::raw::c_int,
15829        severity: ::std::os::raw::c_int,
15830        xmsg: *mut ::std::os::raw::c_char,
15831        xcode: ::std::os::raw::c_int,
15832        bytes_sofar: usize,
15833        bytes_max: usize,
15834        ptr: *mut ::std::os::raw::c_void,
15835    );
15836    pub fn php_stream_context_set(
15837        stream: *mut php_stream,
15838        context: *mut php_stream_context,
15839    ) -> *mut php_stream_context;
15840    pub fn php_stream_bucket_new(
15841        stream: *const php_stream,
15842        buf: *mut ::std::os::raw::c_char,
15843        buflen: usize,
15844        own_buf: u8,
15845        buf_persistent: u8,
15846    ) -> *mut php_stream_bucket;
15847    pub fn php_stream_bucket_split(
15848        in_: *mut php_stream_bucket,
15849        left: *mut *mut php_stream_bucket,
15850        right: *mut *mut php_stream_bucket,
15851        length: usize,
15852    ) -> ::std::os::raw::c_int;
15853    pub fn php_stream_bucket_delref(bucket: *mut php_stream_bucket);
15854    pub fn php_stream_bucket_prepend(
15855        brigade: *mut php_stream_bucket_brigade,
15856        bucket: *mut php_stream_bucket,
15857    );
15858    pub fn php_stream_bucket_append(
15859        brigade: *mut php_stream_bucket_brigade,
15860        bucket: *mut php_stream_bucket,
15861    );
15862    pub fn php_stream_bucket_unlink(bucket: *mut php_stream_bucket);
15863    pub fn php_stream_bucket_make_writeable(
15864        bucket: *mut php_stream_bucket,
15865    ) -> *mut php_stream_bucket;
15866    pub fn _php_stream_filter_prepend(
15867        chain: *mut php_stream_filter_chain,
15868        filter: *mut php_stream_filter,
15869    );
15870    pub fn php_stream_filter_prepend_ex(
15871        chain: *mut php_stream_filter_chain,
15872        filter: *mut php_stream_filter,
15873    );
15874    pub fn _php_stream_filter_append(
15875        chain: *mut php_stream_filter_chain,
15876        filter: *mut php_stream_filter,
15877    );
15878    pub fn php_stream_filter_append_ex(
15879        chain: *mut php_stream_filter_chain,
15880        filter: *mut php_stream_filter,
15881    ) -> zend_result;
15882    pub fn _php_stream_filter_flush(filter: *mut php_stream_filter, finish: bool) -> zend_result;
15883    pub fn php_stream_filter_remove(
15884        filter: *mut php_stream_filter,
15885        call_dtor: bool,
15886    ) -> *mut php_stream_filter;
15887    pub fn php_stream_filter_free(filter: *mut php_stream_filter);
15888    pub fn _php_stream_filter_alloc(
15889        fops: *const php_stream_filter_ops,
15890        abstract_: *mut ::std::os::raw::c_void,
15891        persistent: u8,
15892        __php_stream_call_depth: ::std::os::raw::c_int,
15893        __zend_filename: *const ::std::os::raw::c_char,
15894        __zend_lineno: u32,
15895        __zend_orig_filename: *const ::std::os::raw::c_char,
15896        __zend_orig_lineno: u32,
15897    ) -> *mut php_stream_filter;
15898    pub fn php_stream_filter_register_factory(
15899        filterpattern: *const ::std::os::raw::c_char,
15900        factory: *const php_stream_filter_factory,
15901    ) -> zend_result;
15902    pub fn php_stream_filter_unregister_factory(
15903        filterpattern: *const ::std::os::raw::c_char,
15904    ) -> zend_result;
15905    pub fn php_stream_filter_register_factory_volatile(
15906        filterpattern: *mut zend_string,
15907        factory: *const php_stream_filter_factory,
15908    ) -> zend_result;
15909    pub fn php_stream_filter_create(
15910        filtername: *const ::std::os::raw::c_char,
15911        filterparams: *mut zval,
15912        persistent: u8,
15913    ) -> *mut php_stream_filter;
15914    pub fn _php_stream_alloc(
15915        ops: *const php_stream_ops,
15916        abstract_: *mut ::std::os::raw::c_void,
15917        persistent_id: *const ::std::os::raw::c_char,
15918        mode: *const ::std::os::raw::c_char,
15919        __php_stream_call_depth: ::std::os::raw::c_int,
15920        __zend_filename: *const ::std::os::raw::c_char,
15921        __zend_lineno: u32,
15922        __zend_orig_filename: *const ::std::os::raw::c_char,
15923        __zend_orig_lineno: u32,
15924    ) -> *mut php_stream;
15925    #[link_name = "php_stream_from_zval_no_verify_no_error__extern"]
15926    pub fn php_stream_from_zval_no_verify_no_error(zval: *mut zval) -> *mut php_stream;
15927    #[link_name = "php_stream_zend_parse_arg_into_stream__extern"]
15928    pub fn php_stream_zend_parse_arg_into_stream(
15929        arg: *mut zval,
15930        destination_stream_ptr: *mut *mut php_stream,
15931        check_null: bool,
15932        arg_num: u32,
15933    ) -> bool;
15934    pub fn php_stream_encloses(
15935        enclosing: *mut php_stream,
15936        enclosed: *mut php_stream,
15937    ) -> *mut php_stream;
15938    pub fn _php_stream_free_enclosed(
15939        stream_enclosed: *mut php_stream,
15940        close_options: ::std::os::raw::c_int,
15941    ) -> ::std::os::raw::c_int;
15942    pub fn php_stream_from_persistent_id(
15943        persistent_id: *const ::std::os::raw::c_char,
15944        stream: *mut *mut php_stream,
15945    ) -> ::std::os::raw::c_int;
15946    pub fn _php_stream_free(
15947        stream: *mut php_stream,
15948        close_options: ::std::os::raw::c_int,
15949    ) -> ::std::os::raw::c_int;
15950    pub fn _php_stream_seek(
15951        stream: *mut php_stream,
15952        offset: zend_off_t,
15953        whence: ::std::os::raw::c_int,
15954    ) -> ::std::os::raw::c_int;
15955    pub fn _php_stream_tell(stream: *const php_stream) -> zend_off_t;
15956    pub fn _php_stream_read(
15957        stream: *mut php_stream,
15958        buf: *mut ::std::os::raw::c_char,
15959        count: usize,
15960    ) -> isize;
15961    pub fn php_stream_read_to_str(stream: *mut php_stream, len: usize) -> *mut zend_string;
15962    pub fn _php_stream_write(
15963        stream: *mut php_stream,
15964        buf: *const ::std::os::raw::c_char,
15965        count: usize,
15966    ) -> isize;
15967    pub fn _php_stream_fill_read_buffer(stream: *mut php_stream, size: usize) -> zend_result;
15968    pub fn _php_stream_printf(
15969        stream: *mut php_stream,
15970        fmt: *const ::std::os::raw::c_char,
15971        ...
15972    ) -> isize;
15973    pub fn _php_stream_eof(stream: *mut php_stream) -> bool;
15974    pub fn _php_stream_getc(stream: *mut php_stream) -> ::std::os::raw::c_int;
15975    pub fn _php_stream_putc(
15976        stream: *mut php_stream,
15977        c: ::std::os::raw::c_int,
15978    ) -> ::std::os::raw::c_int;
15979    pub fn _php_stream_flush(
15980        stream: *mut php_stream,
15981        closing: ::std::os::raw::c_int,
15982    ) -> ::std::os::raw::c_int;
15983    pub fn _php_stream_sync(stream: *mut php_stream, data_only: bool) -> ::std::os::raw::c_int;
15984    pub fn _php_stream_get_line(
15985        stream: *mut php_stream,
15986        buf: *mut ::std::os::raw::c_char,
15987        maxlen: usize,
15988        returned_len: *mut usize,
15989    ) -> *mut ::std::os::raw::c_char;
15990    pub fn php_stream_get_record(
15991        stream: *mut php_stream,
15992        maxlen: usize,
15993        delim: *const ::std::os::raw::c_char,
15994        delim_len: usize,
15995    ) -> *mut zend_string;
15996    pub fn _php_stream_puts(stream: *mut php_stream, buf: *const ::std::os::raw::c_char) -> bool;
15997    pub fn _php_stream_stat(
15998        stream: *mut php_stream,
15999        ssb: *mut php_stream_statbuf,
16000    ) -> ::std::os::raw::c_int;
16001    pub fn _php_stream_stat_path(
16002        path: *const ::std::os::raw::c_char,
16003        flags: ::std::os::raw::c_int,
16004        ssb: *mut php_stream_statbuf,
16005        context: *mut php_stream_context,
16006    ) -> ::std::os::raw::c_int;
16007    pub fn _php_stream_mkdir(
16008        path: *const ::std::os::raw::c_char,
16009        mode: ::std::os::raw::c_int,
16010        options: ::std::os::raw::c_int,
16011        context: *mut php_stream_context,
16012    ) -> ::std::os::raw::c_int;
16013    pub fn _php_stream_rmdir(
16014        path: *const ::std::os::raw::c_char,
16015        options: ::std::os::raw::c_int,
16016        context: *mut php_stream_context,
16017    ) -> ::std::os::raw::c_int;
16018    pub fn _php_stream_opendir(
16019        path: *const ::std::os::raw::c_char,
16020        options: ::std::os::raw::c_int,
16021        context: *mut php_stream_context,
16022        __php_stream_call_depth: ::std::os::raw::c_int,
16023        __zend_filename: *const ::std::os::raw::c_char,
16024        __zend_lineno: u32,
16025        __zend_orig_filename: *const ::std::os::raw::c_char,
16026        __zend_orig_lineno: u32,
16027    ) -> *mut php_stream;
16028    pub fn _php_stream_readdir(
16029        dirstream: *mut php_stream,
16030        ent: *mut php_stream_dirent,
16031    ) -> *mut php_stream_dirent;
16032    pub fn php_stream_dirent_alphasort(
16033        a: *mut *const zend_string,
16034        b: *mut *const zend_string,
16035    ) -> ::std::os::raw::c_int;
16036    pub fn php_stream_dirent_alphasortr(
16037        a: *mut *const zend_string,
16038        b: *mut *const zend_string,
16039    ) -> ::std::os::raw::c_int;
16040    pub fn _php_stream_scandir(
16041        dirname: *const ::std::os::raw::c_char,
16042        namelist: *mut *mut *mut zend_string,
16043        flags: ::std::os::raw::c_int,
16044        context: *mut php_stream_context,
16045        compare: ::std::option::Option<
16046            unsafe extern "C" fn(
16047                a: *mut *const zend_string,
16048                b: *mut *const zend_string,
16049            ) -> ::std::os::raw::c_int,
16050        >,
16051    ) -> ::std::os::raw::c_int;
16052    pub fn _php_stream_set_option(
16053        stream: *mut php_stream,
16054        option: ::std::os::raw::c_int,
16055        value: ::std::os::raw::c_int,
16056        ptrparam: *mut ::std::os::raw::c_void,
16057    ) -> ::std::os::raw::c_int;
16058    pub fn _php_stream_truncate_set_size(
16059        stream: *mut php_stream,
16060        newsize: usize,
16061    ) -> ::std::os::raw::c_int;
16062    pub fn _php_stream_copy_to_stream(
16063        src: *mut php_stream,
16064        dest: *mut php_stream,
16065        maxlen: usize,
16066        __php_stream_call_depth: ::std::os::raw::c_int,
16067        __zend_filename: *const ::std::os::raw::c_char,
16068        __zend_lineno: u32,
16069        __zend_orig_filename: *const ::std::os::raw::c_char,
16070        __zend_orig_lineno: u32,
16071    ) -> usize;
16072    pub fn _php_stream_copy_to_stream_ex(
16073        src: *mut php_stream,
16074        dest: *mut php_stream,
16075        maxlen: usize,
16076        len: *mut usize,
16077        __php_stream_call_depth: ::std::os::raw::c_int,
16078        __zend_filename: *const ::std::os::raw::c_char,
16079        __zend_lineno: u32,
16080        __zend_orig_filename: *const ::std::os::raw::c_char,
16081        __zend_orig_lineno: u32,
16082    ) -> zend_result;
16083    pub fn _php_stream_copy_to_mem(
16084        src: *mut php_stream,
16085        maxlen: usize,
16086        persistent: bool,
16087        __php_stream_call_depth: ::std::os::raw::c_int,
16088        __zend_filename: *const ::std::os::raw::c_char,
16089        __zend_lineno: u32,
16090        __zend_orig_filename: *const ::std::os::raw::c_char,
16091        __zend_orig_lineno: u32,
16092    ) -> *mut zend_string;
16093    pub fn _php_stream_passthru(
16094        src: *mut php_stream,
16095        __php_stream_call_depth: ::std::os::raw::c_int,
16096        __zend_filename: *const ::std::os::raw::c_char,
16097        __zend_lineno: u32,
16098        __zend_orig_filename: *const ::std::os::raw::c_char,
16099        __zend_orig_lineno: u32,
16100    ) -> isize;
16101    pub fn php_stream_xport_register(
16102        protocol: *const ::std::os::raw::c_char,
16103        factory: php_stream_transport_factory,
16104    ) -> ::std::os::raw::c_int;
16105    pub fn php_stream_xport_unregister(
16106        protocol: *const ::std::os::raw::c_char,
16107    ) -> ::std::os::raw::c_int;
16108    pub fn _php_stream_xport_create(
16109        name: *const ::std::os::raw::c_char,
16110        namelen: usize,
16111        options: ::std::os::raw::c_int,
16112        flags: ::std::os::raw::c_int,
16113        persistent_id: *const ::std::os::raw::c_char,
16114        timeout: *mut timeval,
16115        context: *mut php_stream_context,
16116        error_string: *mut *mut zend_string,
16117        error_code: *mut ::std::os::raw::c_int,
16118        __php_stream_call_depth: ::std::os::raw::c_int,
16119        __zend_filename: *const ::std::os::raw::c_char,
16120        __zend_lineno: u32,
16121        __zend_orig_filename: *const ::std::os::raw::c_char,
16122        __zend_orig_lineno: u32,
16123    ) -> *mut php_stream;
16124    pub fn php_stream_xport_bind(
16125        stream: *mut php_stream,
16126        name: *const ::std::os::raw::c_char,
16127        namelen: usize,
16128        error_text: *mut *mut zend_string,
16129    ) -> ::std::os::raw::c_int;
16130    pub fn php_stream_xport_connect(
16131        stream: *mut php_stream,
16132        name: *const ::std::os::raw::c_char,
16133        namelen: usize,
16134        asynchronous: ::std::os::raw::c_int,
16135        timeout: *mut timeval,
16136        error_text: *mut *mut zend_string,
16137        error_code: *mut ::std::os::raw::c_int,
16138    ) -> ::std::os::raw::c_int;
16139    pub fn php_stream_xport_listen(
16140        stream: *mut php_stream,
16141        backlog: ::std::os::raw::c_int,
16142        error_text: *mut *mut zend_string,
16143    ) -> ::std::os::raw::c_int;
16144    pub fn php_stream_xport_accept(
16145        stream: *mut php_stream,
16146        client: *mut *mut php_stream,
16147        textaddr: *mut *mut zend_string,
16148        addr: *mut *mut ::std::os::raw::c_void,
16149        addrlen: *mut socklen_t,
16150        timeout: *mut timeval,
16151        error_text: *mut *mut zend_string,
16152    ) -> ::std::os::raw::c_int;
16153    pub fn php_stream_xport_get_name(
16154        stream: *mut php_stream,
16155        want_peer: ::std::os::raw::c_int,
16156        textaddr: *mut *mut zend_string,
16157        addr: *mut *mut ::std::os::raw::c_void,
16158        addrlen: *mut socklen_t,
16159    ) -> ::std::os::raw::c_int;
16160    pub fn php_stream_xport_recvfrom(
16161        stream: *mut php_stream,
16162        buf: *mut ::std::os::raw::c_char,
16163        buflen: usize,
16164        flags: ::std::os::raw::c_int,
16165        addr: *mut *mut ::std::os::raw::c_void,
16166        addrlen: *mut socklen_t,
16167        textaddr: *mut *mut zend_string,
16168    ) -> ::std::os::raw::c_int;
16169    pub fn php_stream_xport_sendto(
16170        stream: *mut php_stream,
16171        buf: *const ::std::os::raw::c_char,
16172        buflen: usize,
16173        flags: ::std::os::raw::c_int,
16174        addr: *mut ::std::os::raw::c_void,
16175        addrlen: socklen_t,
16176    ) -> ::std::os::raw::c_int;
16177    pub fn php_stream_xport_shutdown(
16178        stream: *mut php_stream,
16179        how: stream_shutdown_t::Type,
16180    ) -> ::std::os::raw::c_int;
16181    pub fn php_stream_xport_crypto_setup(
16182        stream: *mut php_stream,
16183        crypto_method: php_stream_xport_crypt_method_t::Type,
16184        session_stream: *mut php_stream,
16185    ) -> ::std::os::raw::c_int;
16186    pub fn php_stream_xport_crypto_enable(
16187        stream: *mut php_stream,
16188        activate: ::std::os::raw::c_int,
16189    ) -> ::std::os::raw::c_int;
16190    pub fn php_stream_xport_get_hash() -> *mut HashTable;
16191    pub fn php_stream_generic_socket_factory(
16192        proto: *const ::std::os::raw::c_char,
16193        protolen: usize,
16194        resourcename: *const ::std::os::raw::c_char,
16195        resourcenamelen: usize,
16196        persistent_id: *const ::std::os::raw::c_char,
16197        options: ::std::os::raw::c_int,
16198        flags: ::std::os::raw::c_int,
16199        timeout: *mut timeval,
16200        context: *mut php_stream_context,
16201        __php_stream_call_depth: ::std::os::raw::c_int,
16202        __zend_filename: *const ::std::os::raw::c_char,
16203        __zend_lineno: u32,
16204        __zend_orig_filename: *const ::std::os::raw::c_char,
16205        __zend_orig_lineno: u32,
16206    ) -> *mut php_stream;
16207    pub static mut php_stream_stdio_ops: php_stream_ops;
16208    pub static mut php_plain_files_wrapper: php_stream_wrapper;
16209    pub fn _php_stream_fopen(
16210        filename: *const ::std::os::raw::c_char,
16211        mode: *const ::std::os::raw::c_char,
16212        opened_path: *mut *mut zend_string,
16213        options: ::std::os::raw::c_int,
16214        __php_stream_call_depth: ::std::os::raw::c_int,
16215        __zend_filename: *const ::std::os::raw::c_char,
16216        __zend_lineno: u32,
16217        __zend_orig_filename: *const ::std::os::raw::c_char,
16218        __zend_orig_lineno: u32,
16219    ) -> *mut php_stream;
16220    pub fn _php_stream_fopen_with_path(
16221        filename: *const ::std::os::raw::c_char,
16222        mode: *const ::std::os::raw::c_char,
16223        path: *const ::std::os::raw::c_char,
16224        opened_path: *mut *mut zend_string,
16225        options: ::std::os::raw::c_int,
16226        __php_stream_call_depth: ::std::os::raw::c_int,
16227        __zend_filename: *const ::std::os::raw::c_char,
16228        __zend_lineno: u32,
16229        __zend_orig_filename: *const ::std::os::raw::c_char,
16230        __zend_orig_lineno: u32,
16231    ) -> *mut php_stream;
16232    pub fn _php_stream_fopen_from_file(
16233        file: *mut FILE,
16234        mode: *const ::std::os::raw::c_char,
16235        __php_stream_call_depth: ::std::os::raw::c_int,
16236        __zend_filename: *const ::std::os::raw::c_char,
16237        __zend_lineno: u32,
16238        __zend_orig_filename: *const ::std::os::raw::c_char,
16239        __zend_orig_lineno: u32,
16240    ) -> *mut php_stream;
16241    pub fn _php_stream_fopen_from_fd(
16242        fd: ::std::os::raw::c_int,
16243        mode: *const ::std::os::raw::c_char,
16244        persistent_id: *const ::std::os::raw::c_char,
16245        zero_position: bool,
16246        __php_stream_call_depth: ::std::os::raw::c_int,
16247        __zend_filename: *const ::std::os::raw::c_char,
16248        __zend_lineno: u32,
16249        __zend_orig_filename: *const ::std::os::raw::c_char,
16250        __zend_orig_lineno: u32,
16251    ) -> *mut php_stream;
16252    pub fn _php_stream_fopen_from_pipe(
16253        file: *mut FILE,
16254        mode: *const ::std::os::raw::c_char,
16255        __php_stream_call_depth: ::std::os::raw::c_int,
16256        __zend_filename: *const ::std::os::raw::c_char,
16257        __zend_lineno: u32,
16258        __zend_orig_filename: *const ::std::os::raw::c_char,
16259        __zend_orig_lineno: u32,
16260    ) -> *mut php_stream;
16261    pub fn _php_stream_fopen_tmpfile(
16262        dummy: ::std::os::raw::c_int,
16263        __php_stream_call_depth: ::std::os::raw::c_int,
16264        __zend_filename: *const ::std::os::raw::c_char,
16265        __zend_lineno: u32,
16266        __zend_orig_filename: *const ::std::os::raw::c_char,
16267        __zend_orig_lineno: u32,
16268    ) -> *mut php_stream;
16269    pub fn _php_stream_fopen_temporary_file(
16270        dir: *const ::std::os::raw::c_char,
16271        pfx: *const ::std::os::raw::c_char,
16272        opened_path: *mut *mut zend_string,
16273        __php_stream_call_depth: ::std::os::raw::c_int,
16274        __zend_filename: *const ::std::os::raw::c_char,
16275        __zend_lineno: u32,
16276        __zend_orig_filename: *const ::std::os::raw::c_char,
16277        __zend_orig_lineno: u32,
16278    ) -> *mut php_stream;
16279    pub fn _php_stream_open_wrapper_as_file(
16280        path: *mut ::std::os::raw::c_char,
16281        mode: *mut ::std::os::raw::c_char,
16282        options: ::std::os::raw::c_int,
16283        opened_path: *mut *mut zend_string,
16284        __php_stream_call_depth: ::std::os::raw::c_int,
16285        __zend_filename: *const ::std::os::raw::c_char,
16286        __zend_lineno: u32,
16287        __zend_orig_filename: *const ::std::os::raw::c_char,
16288        __zend_orig_lineno: u32,
16289    ) -> *mut FILE;
16290    pub fn php_stream_parse_fopen_modes(
16291        mode: *const ::std::os::raw::c_char,
16292        open_flags: *mut ::std::os::raw::c_int,
16293    ) -> ::std::os::raw::c_int;
16294    pub static php_glob_stream_wrapper: php_stream_wrapper;
16295    pub static php_glob_stream_ops: php_stream_ops;
16296    pub fn _php_glob_stream_get_path(
16297        stream: *mut php_stream,
16298        plen: *mut usize,
16299        __php_stream_call_depth: ::std::os::raw::c_int,
16300        __zend_filename: *const ::std::os::raw::c_char,
16301        __zend_lineno: u32,
16302        __zend_orig_filename: *const ::std::os::raw::c_char,
16303        __zend_orig_lineno: u32,
16304    ) -> *mut ::std::os::raw::c_char;
16305    pub fn _php_glob_stream_get_pattern(
16306        stream: *mut php_stream,
16307        plen: *mut usize,
16308        __php_stream_call_depth: ::std::os::raw::c_int,
16309        __zend_filename: *const ::std::os::raw::c_char,
16310        __zend_lineno: u32,
16311        __zend_orig_filename: *const ::std::os::raw::c_char,
16312        __zend_orig_lineno: u32,
16313    ) -> *mut ::std::os::raw::c_char;
16314    pub fn _php_glob_stream_get_count(
16315        stream: *mut php_stream,
16316        pflags: *mut ::std::os::raw::c_int,
16317        __php_stream_call_depth: ::std::os::raw::c_int,
16318        __zend_filename: *const ::std::os::raw::c_char,
16319        __zend_lineno: u32,
16320        __zend_orig_filename: *const ::std::os::raw::c_char,
16321        __zend_orig_lineno: u32,
16322    ) -> ::std::os::raw::c_int;
16323    pub static php_stream_userspace_ops: php_stream_ops;
16324    pub static php_stream_userspace_dir_ops: php_stream_ops;
16325    pub fn _php_stream_mmap_range(
16326        stream: *mut php_stream,
16327        offset: usize,
16328        length: usize,
16329        mode: php_stream_mmap_access_t::Type,
16330        mapped_len: *mut usize,
16331    ) -> *mut ::std::os::raw::c_char;
16332    pub fn _php_stream_mmap_unmap(stream: *mut php_stream) -> ::std::os::raw::c_int;
16333    pub fn _php_stream_mmap_unmap_ex(
16334        stream: *mut php_stream,
16335        readden: zend_off_t,
16336    ) -> ::std::os::raw::c_int;
16337    pub fn _php_stream_cast(
16338        stream: *mut php_stream,
16339        castas: ::std::os::raw::c_int,
16340        ret: *mut *mut ::std::os::raw::c_void,
16341        show_err: ::std::os::raw::c_int,
16342    ) -> zend_result;
16343    pub fn php_init_stream_wrappers(module_number: ::std::os::raw::c_int) -> zend_result;
16344    pub fn php_shutdown_stream_wrappers(module_number: ::std::os::raw::c_int);
16345    pub fn php_shutdown_stream_hashes();
16346    pub fn zm_deactivate_streams(
16347        type_: ::std::os::raw::c_int,
16348        module_number: ::std::os::raw::c_int,
16349    ) -> zend_result;
16350    pub fn php_register_url_stream_wrapper(
16351        protocol: *const ::std::os::raw::c_char,
16352        wrapper: *const php_stream_wrapper,
16353    ) -> zend_result;
16354    pub fn php_unregister_url_stream_wrapper(
16355        protocol: *const ::std::os::raw::c_char,
16356    ) -> zend_result;
16357    pub fn php_register_url_stream_wrapper_volatile(
16358        protocol: *mut zend_string,
16359        wrapper: *mut php_stream_wrapper,
16360    ) -> zend_result;
16361    pub fn php_unregister_url_stream_wrapper_volatile(protocol: *mut zend_string) -> zend_result;
16362    pub fn _php_stream_open_wrapper_ex(
16363        path: *const ::std::os::raw::c_char,
16364        mode: *const ::std::os::raw::c_char,
16365        options: ::std::os::raw::c_int,
16366        opened_path: *mut *mut zend_string,
16367        context: *mut php_stream_context,
16368        __php_stream_call_depth: ::std::os::raw::c_int,
16369        __zend_filename: *const ::std::os::raw::c_char,
16370        __zend_lineno: u32,
16371        __zend_orig_filename: *const ::std::os::raw::c_char,
16372        __zend_orig_lineno: u32,
16373    ) -> *mut php_stream;
16374    pub fn php_stream_locate_url_wrapper(
16375        path: *const ::std::os::raw::c_char,
16376        path_for_open: *mut *const ::std::os::raw::c_char,
16377        options: ::std::os::raw::c_int,
16378    ) -> *mut php_stream_wrapper;
16379    pub fn php_stream_locate_eol(
16380        stream: *mut php_stream,
16381        buf: *mut zend_string,
16382    ) -> *const ::std::os::raw::c_char;
16383    pub fn php_stream_wrapper_log_error(
16384        wrapper: *const php_stream_wrapper,
16385        options: ::std::os::raw::c_int,
16386        fmt: *const ::std::os::raw::c_char,
16387        ...
16388    );
16389    pub fn _php_stream_make_seekable(
16390        origstream: *mut php_stream,
16391        newstream: *mut *mut php_stream,
16392        flags: ::std::os::raw::c_int,
16393        __php_stream_call_depth: ::std::os::raw::c_int,
16394        __zend_filename: *const ::std::os::raw::c_char,
16395        __zend_lineno: u32,
16396        __zend_orig_filename: *const ::std::os::raw::c_char,
16397        __zend_orig_lineno: u32,
16398    ) -> php_stream_make_seekable_status::Type;
16399    pub fn _php_stream_get_url_stream_wrappers_hash() -> *mut HashTable;
16400    pub fn php_stream_get_url_stream_wrappers_hash_global() -> *mut HashTable;
16401    pub fn _php_get_stream_filters_hash() -> *mut HashTable;
16402    pub fn php_get_stream_filters_hash_global() -> *mut HashTable;
16403    pub static mut php_stream_user_wrapper_ops: *const php_stream_wrapper_ops;
16404    #[link_name = "php_is_stream_path__extern"]
16405    pub fn php_is_stream_path(filename: *const ::std::os::raw::c_char) -> bool;
16406    pub fn _php_stream_memory_create(
16407        mode: ::std::os::raw::c_int,
16408        __php_stream_call_depth: ::std::os::raw::c_int,
16409        __zend_filename: *const ::std::os::raw::c_char,
16410        __zend_lineno: u32,
16411        __zend_orig_filename: *const ::std::os::raw::c_char,
16412        __zend_orig_lineno: u32,
16413    ) -> *mut php_stream;
16414    pub fn _php_stream_memory_open(
16415        mode: ::std::os::raw::c_int,
16416        buf: *mut zend_string,
16417        __php_stream_call_depth: ::std::os::raw::c_int,
16418        __zend_filename: *const ::std::os::raw::c_char,
16419        __zend_lineno: u32,
16420        __zend_orig_filename: *const ::std::os::raw::c_char,
16421        __zend_orig_lineno: u32,
16422    ) -> *mut php_stream;
16423    pub fn _php_stream_memory_get_buffer(
16424        stream: *mut php_stream,
16425        __php_stream_call_depth: ::std::os::raw::c_int,
16426        __zend_filename: *const ::std::os::raw::c_char,
16427        __zend_lineno: u32,
16428        __zend_orig_filename: *const ::std::os::raw::c_char,
16429        __zend_orig_lineno: u32,
16430    ) -> *mut zend_string;
16431    pub fn _php_stream_temp_create(
16432        mode: ::std::os::raw::c_int,
16433        max_memory_usage: usize,
16434        __php_stream_call_depth: ::std::os::raw::c_int,
16435        __zend_filename: *const ::std::os::raw::c_char,
16436        __zend_lineno: u32,
16437        __zend_orig_filename: *const ::std::os::raw::c_char,
16438        __zend_orig_lineno: u32,
16439    ) -> *mut php_stream;
16440    pub fn _php_stream_temp_create_ex(
16441        mode: ::std::os::raw::c_int,
16442        max_memory_usage: usize,
16443        tmpdir: *const ::std::os::raw::c_char,
16444        __php_stream_call_depth: ::std::os::raw::c_int,
16445        __zend_filename: *const ::std::os::raw::c_char,
16446        __zend_lineno: u32,
16447        __zend_orig_filename: *const ::std::os::raw::c_char,
16448        __zend_orig_lineno: u32,
16449    ) -> *mut php_stream;
16450    pub fn _php_stream_temp_open(
16451        mode: ::std::os::raw::c_int,
16452        max_memory_usage: usize,
16453        buf: *const ::std::os::raw::c_char,
16454        length: usize,
16455        __php_stream_call_depth: ::std::os::raw::c_int,
16456        __zend_filename: *const ::std::os::raw::c_char,
16457        __zend_lineno: u32,
16458        __zend_orig_filename: *const ::std::os::raw::c_char,
16459        __zend_orig_lineno: u32,
16460    ) -> *mut php_stream;
16461    pub fn php_stream_mode_from_str(mode: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
16462    pub fn _php_stream_mode_to_str(mode: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
16463    pub static php_stream_memory_ops: php_stream_ops;
16464    pub static php_stream_temp_ops: php_stream_ops;
16465    pub static php_stream_rfc2397_ops: php_stream_ops;
16466    pub static php_stream_rfc2397_wrapper: php_stream_wrapper;
16467    pub static mut core_globals: _php_core_globals;
16468    pub fn config_zval_dtor(zvalue: *mut zval);
16469    pub fn php_init_config();
16470    pub fn php_shutdown_config();
16471    pub fn php_ini_register_extensions();
16472    pub fn cfg_get_entry_ex(name: *mut zend_string) -> *mut zval;
16473    pub fn cfg_get_entry(name: *const ::std::os::raw::c_char, name_length: usize) -> *mut zval;
16474    pub fn cfg_get_long(
16475        varname: *const ::std::os::raw::c_char,
16476        result: *mut zend_long,
16477    ) -> zend_result;
16478    pub fn cfg_get_double(varname: *const ::std::os::raw::c_char, result: *mut f64) -> zend_result;
16479    pub fn cfg_get_string(
16480        varname: *const ::std::os::raw::c_char,
16481        result: *mut *mut ::std::os::raw::c_char,
16482    ) -> zend_result;
16483    pub fn php_parse_user_ini_file(
16484        dirname: *const ::std::os::raw::c_char,
16485        ini_filename: *const ::std::os::raw::c_char,
16486        target_hash: *mut HashTable,
16487    ) -> zend_result;
16488    pub fn php_ini_activate_config(
16489        source_hash: *const HashTable,
16490        modify_type: ::std::os::raw::c_int,
16491        stage: ::std::os::raw::c_int,
16492    );
16493    pub fn php_ini_has_per_dir_config() -> bool;
16494    pub fn php_ini_has_per_host_config() -> bool;
16495    pub fn php_ini_activate_per_dir_config(path: *mut ::std::os::raw::c_char, path_len: usize);
16496    pub fn php_ini_activate_per_host_config(host: *const ::std::os::raw::c_char, host_len: usize);
16497    pub fn php_ini_get_configuration_hash() -> *mut HashTable;
16498    pub fn php_fopen_primary_script(file_handle: *mut zend_file_handle) -> ::std::os::raw::c_int;
16499    pub fn expand_filepath(
16500        filepath: *const ::std::os::raw::c_char,
16501        real_path: *mut ::std::os::raw::c_char,
16502    ) -> *mut ::std::os::raw::c_char;
16503    pub fn expand_filepath_ex(
16504        filepath: *const ::std::os::raw::c_char,
16505        real_path: *mut ::std::os::raw::c_char,
16506        relative_to: *const ::std::os::raw::c_char,
16507        relative_to_len: usize,
16508    ) -> *mut ::std::os::raw::c_char;
16509    pub fn expand_filepath_with_mode(
16510        filepath: *const ::std::os::raw::c_char,
16511        real_path: *mut ::std::os::raw::c_char,
16512        relative_to: *const ::std::os::raw::c_char,
16513        relative_to_len: usize,
16514        use_realpath: ::std::os::raw::c_int,
16515    ) -> *mut ::std::os::raw::c_char;
16516    pub fn php_check_open_basedir(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
16517    pub fn php_check_open_basedir_ex(
16518        path: *const ::std::os::raw::c_char,
16519        warn: ::std::os::raw::c_int,
16520    ) -> ::std::os::raw::c_int;
16521    pub fn php_check_specific_open_basedir(
16522        basedir: *const ::std::os::raw::c_char,
16523        path: *const ::std::os::raw::c_char,
16524    ) -> ::std::os::raw::c_int;
16525    pub fn php_resolve_path(
16526        filename: *const ::std::os::raw::c_char,
16527        filename_len: usize,
16528        path: *const ::std::os::raw::c_char,
16529    ) -> *mut zend_string;
16530    pub fn php_fopen_with_path(
16531        filename: *const ::std::os::raw::c_char,
16532        mode: *const ::std::os::raw::c_char,
16533        path: *const ::std::os::raw::c_char,
16534        opened_path: *mut *mut zend_string,
16535    ) -> *mut FILE;
16536    pub fn php_strip_url_passwd(path: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
16537    pub fn OnUpdateBaseDir(
16538        entry: *mut zend_ini_entry,
16539        new_value: *mut zend_string,
16540        mh_arg1: *mut ::std::os::raw::c_void,
16541        mh_arg2: *mut ::std::os::raw::c_void,
16542        mh_arg3: *mut ::std::os::raw::c_void,
16543        stage: ::std::os::raw::c_int,
16544    ) -> ::std::os::raw::c_int;
16545    pub fn php_print_info_htmlhead();
16546    pub fn php_print_info(flag: ::std::os::raw::c_int);
16547    pub fn php_print_style();
16548    pub fn php_info_print_style();
16549    pub fn php_info_print_table_colspan_header(
16550        num_cols: ::std::os::raw::c_int,
16551        header: *const ::std::os::raw::c_char,
16552    );
16553    pub fn php_info_print_table_header(num_cols: ::std::os::raw::c_int, ...);
16554    pub fn php_info_print_table_row(num_cols: ::std::os::raw::c_int, ...);
16555    pub fn php_info_print_table_row_ex(
16556        num_cols: ::std::os::raw::c_int,
16557        arg1: *const ::std::os::raw::c_char,
16558        ...
16559    );
16560    pub fn php_info_print_table_start();
16561    pub fn php_info_print_table_end();
16562    pub fn php_info_print_box_start(bg: ::std::os::raw::c_int);
16563    pub fn php_info_print_box_end();
16564    pub fn php_info_print_hr();
16565    pub fn php_info_print_module(module: *mut zend_module_entry);
16566    pub fn php_get_uname(mode: ::std::os::raw::c_char) -> *mut zend_string;
16567    pub fn register_phpinfo_constants(
16568        type_: ::std::os::raw::c_int,
16569        module_number: ::std::os::raw::c_int,
16570    );
16571    pub fn zm_activate_filestat(
16572        type_: ::std::os::raw::c_int,
16573        module_number: ::std::os::raw::c_int,
16574    ) -> zend_result;
16575    pub fn zm_deactivate_filestat(
16576        type_: ::std::os::raw::c_int,
16577        module_number: ::std::os::raw::c_int,
16578    ) -> zend_result;
16579    pub fn php_clear_stat_cache(
16580        clear_realpath_cache: bool,
16581        filename: *const ::std::os::raw::c_char,
16582        filename_len: usize,
16583    );
16584    pub fn php_stat(
16585        filename: *mut zend_string,
16586        type_: ::std::os::raw::c_int,
16587        return_value: *mut zval,
16588    );
16589    pub fn zm_startup_url_scanner_ex(
16590        type_: ::std::os::raw::c_int,
16591        module_number: ::std::os::raw::c_int,
16592    ) -> zend_result;
16593    pub fn zm_shutdown_url_scanner_ex(
16594        type_: ::std::os::raw::c_int,
16595        module_number: ::std::os::raw::c_int,
16596    ) -> zend_result;
16597    pub fn zm_activate_url_scanner_ex(
16598        type_: ::std::os::raw::c_int,
16599        module_number: ::std::os::raw::c_int,
16600    ) -> zend_result;
16601    pub fn zm_deactivate_url_scanner_ex(
16602        type_: ::std::os::raw::c_int,
16603        module_number: ::std::os::raw::c_int,
16604    ) -> zend_result;
16605    pub fn php_url_scanner_adapt_single_url(
16606        url: *const ::std::os::raw::c_char,
16607        urllen: usize,
16608        name: *const ::std::os::raw::c_char,
16609        value: *const ::std::os::raw::c_char,
16610        newlen: *mut usize,
16611        encode: bool,
16612    ) -> *mut ::std::os::raw::c_char;
16613    pub fn php_url_scanner_add_session_var(
16614        name: *const ::std::os::raw::c_char,
16615        name_len: usize,
16616        value: *const ::std::os::raw::c_char,
16617        value_len: usize,
16618        encode: bool,
16619    ) -> zend_result;
16620    pub fn php_url_scanner_reset_session_var(
16621        name: *mut zend_string,
16622        encode: ::std::os::raw::c_int,
16623    ) -> zend_result;
16624    pub fn php_url_scanner_reset_session_vars() -> zend_result;
16625    pub fn php_url_scanner_add_var(
16626        name: *const ::std::os::raw::c_char,
16627        name_len: usize,
16628        value: *const ::std::os::raw::c_char,
16629        value_len: usize,
16630        encode: bool,
16631    ) -> zend_result;
16632    pub fn php_url_scanner_reset_var(
16633        name: *mut zend_string,
16634        encode: ::std::os::raw::c_int,
16635    ) -> zend_result;
16636    pub fn php_url_scanner_reset_vars() -> zend_result;
16637    pub static mut basic_functions_module: zend_module_entry;
16638    pub fn zm_startup_basic(
16639        type_: ::std::os::raw::c_int,
16640        module_number: ::std::os::raw::c_int,
16641    ) -> zend_result;
16642    pub fn zm_shutdown_basic(
16643        type_: ::std::os::raw::c_int,
16644        module_number: ::std::os::raw::c_int,
16645    ) -> zend_result;
16646    pub fn zm_activate_basic(
16647        type_: ::std::os::raw::c_int,
16648        module_number: ::std::os::raw::c_int,
16649    ) -> zend_result;
16650    pub fn zm_deactivate_basic(
16651        type_: ::std::os::raw::c_int,
16652        module_number: ::std::os::raw::c_int,
16653    ) -> zend_result;
16654    pub fn zm_info_basic(zend_module: *mut zend_module_entry);
16655    pub fn php_get_highlight_struct(syntax_highlighter_ini: *mut zend_syntax_highlighter_ini);
16656    pub fn zm_startup_user_filters(
16657        type_: ::std::os::raw::c_int,
16658        module_number: ::std::os::raw::c_int,
16659    ) -> zend_result;
16660    pub fn zm_deactivate_user_filters(
16661        type_: ::std::os::raw::c_int,
16662        module_number: ::std::os::raw::c_int,
16663    ) -> zend_result;
16664    pub fn zm_deactivate_browscap(
16665        type_: ::std::os::raw::c_int,
16666        module_number: ::std::os::raw::c_int,
16667    ) -> zend_result;
16668    pub fn _php_error_log(
16669        opt_err: ::std::os::raw::c_int,
16670        message: *const ::std::os::raw::c_char,
16671        opt: *const ::std::os::raw::c_char,
16672        headers: *const ::std::os::raw::c_char,
16673    ) -> ::std::os::raw::c_int;
16674    pub fn _php_error_log_ex(
16675        opt_err: ::std::os::raw::c_int,
16676        message: *const ::std::os::raw::c_char,
16677        message_len: usize,
16678        opt: *const ::std::os::raw::c_char,
16679        headers: *const ::std::os::raw::c_char,
16680    ) -> ::std::os::raw::c_int;
16681    pub fn php_prefix_varname(
16682        result: *mut zval,
16683        prefix: *mut zend_string,
16684        var_name: *const ::std::os::raw::c_char,
16685        var_name_len: usize,
16686        add_underscore: bool,
16687    ) -> ::std::os::raw::c_int;
16688    pub static mut basic_globals: php_basic_globals;
16689    pub fn php_getenv(str_: *const ::std::os::raw::c_char, str_len: usize) -> *mut zend_string;
16690    pub fn php_get_nan() -> f64;
16691    pub fn php_get_inf() -> f64;
16692    pub fn register_user_shutdown_function(
16693        function_name: *const ::std::os::raw::c_char,
16694        function_len: usize,
16695        shutdown_function_entry: *mut php_shutdown_function_entry,
16696    ) -> bool;
16697    pub fn remove_user_shutdown_function(
16698        function_name: *const ::std::os::raw::c_char,
16699        function_len: usize,
16700    ) -> bool;
16701    pub fn append_user_shutdown_function(
16702        shutdown_function_entry: *mut php_shutdown_function_entry,
16703    ) -> bool;
16704    pub fn php_call_shutdown_functions();
16705    pub fn php_free_shutdown_functions();
16706    pub fn zm_startup_var(
16707        type_: ::std::os::raw::c_int,
16708        module_number: ::std::os::raw::c_int,
16709    ) -> zend_result;
16710    pub fn php_var_dump(struc: *mut zval, level: ::std::os::raw::c_int);
16711    pub fn php_var_export(struc: *mut zval, level: ::std::os::raw::c_int);
16712    pub fn php_var_export_ex(
16713        struc: *mut zval,
16714        level: ::std::os::raw::c_int,
16715        buf: *mut smart_str,
16716    ) -> zend_result;
16717    pub fn php_debug_zval_dump(struc: *mut zval, level: ::std::os::raw::c_int);
16718    pub fn php_var_serialize(
16719        buf: *mut smart_str,
16720        struc: *mut zval,
16721        data: *mut php_serialize_data_t,
16722    );
16723    pub fn php_var_unserialize(
16724        rval: *mut zval,
16725        p: *mut *const ::std::os::raw::c_uchar,
16726        max: *const ::std::os::raw::c_uchar,
16727        var_hash: *mut php_unserialize_data_t,
16728    ) -> ::std::os::raw::c_int;
16729    pub fn php_var_unserialize_ref(
16730        rval: *mut zval,
16731        p: *mut *const ::std::os::raw::c_uchar,
16732        max: *const ::std::os::raw::c_uchar,
16733        var_hash: *mut php_unserialize_data_t,
16734    ) -> ::std::os::raw::c_int;
16735    pub fn php_var_unserialize_intern(
16736        rval: *mut zval,
16737        p: *mut *const ::std::os::raw::c_uchar,
16738        max: *const ::std::os::raw::c_uchar,
16739        var_hash: *mut php_unserialize_data_t,
16740    ) -> ::std::os::raw::c_int;
16741    pub fn php_var_serialize_init() -> php_serialize_data_t;
16742    pub fn php_var_serialize_destroy(d: php_serialize_data_t);
16743    pub fn php_var_unserialize_init() -> php_unserialize_data_t;
16744    pub fn php_var_unserialize_destroy(d: php_unserialize_data_t);
16745    pub fn php_var_unserialize_get_allowed_classes(d: php_unserialize_data_t) -> *mut HashTable;
16746    pub fn php_var_unserialize_set_allowed_classes(
16747        d: php_unserialize_data_t,
16748        classes: *mut HashTable,
16749    );
16750    pub fn php_var_unserialize_set_max_depth(d: php_unserialize_data_t, max_depth: zend_long);
16751    pub fn php_var_unserialize_get_max_depth(d: php_unserialize_data_t) -> zend_long;
16752    pub fn php_var_unserialize_set_cur_depth(d: php_unserialize_data_t, cur_depth: zend_long);
16753    pub fn php_var_unserialize_get_cur_depth(d: php_unserialize_data_t) -> zend_long;
16754    pub fn php_unserialize_with_options(
16755        return_value: *mut zval,
16756        buf: *const ::std::os::raw::c_char,
16757        buf_len: usize,
16758        options: *mut HashTable,
16759        function_name: *const ::std::os::raw::c_char,
16760    );
16761    pub fn var_replace(var_hash: *mut php_unserialize_data_t, ozval: *mut zval, nzval: *mut zval);
16762    pub fn var_push_dtor(var_hash: *mut php_unserialize_data_t, val: *mut zval);
16763    pub fn var_tmp_var(var_hashx: *mut php_unserialize_data_t) -> *mut zval;
16764    pub fn var_destroy(var_hash: *mut php_unserialize_data_t);
16765}