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; 7] = b"4.5.12\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 MAJOR_IN_SYSMACROS: u32 = 1;
500pub const PCRE2_CODE_UNIT_WIDTH: u32 = 8;
501pub const PHP_BUILD_SYSTEM : & [u8 ; 106] = b"Linux 77050b0d8e26 5.15.167.4-microsoft-standard-WSL2 #1 SMP Tue Nov 5 00:21:55 UTC 2024 x86_64 GNU/Linux\0" ;
502pub const PHP_CAN_SUPPORT_PROC_OPEN: u32 = 1;
503pub const PHP_OS: &[u8; 6] = b"Linux\0";
504pub const PHP_SIGCHILD: u32 = 0;
505pub const PHP_UNAME : & [u8 ; 106] = b"Linux 77050b0d8e26 5.15.167.4-microsoft-standard-WSL2 #1 SMP Tue Nov 5 00:21:55 UTC 2024 x86_64 GNU/Linux\0" ;
506pub const PHP_USE_PHP_CRYPT_R: u32 = 1;
507pub const PHP_WRITE_STDOUT: u32 = 1;
508pub const SIZEOF_INT: u32 = 4;
509pub const SIZEOF_LONG: u32 = 8;
510pub const SIZEOF_LONG_LONG: u32 = 8;
511pub const SIZEOF_OFF_T: u32 = 8;
512pub const SIZEOF_SIZE_T: u32 = 8;
513pub const STDC_HEADERS: u32 = 1;
514pub const STRERROR_R_CHAR_P: u32 = 1;
515pub const URI_ENABLE_ANSI: u32 = 1;
516pub const URI_NO_UNICODE: u32 = 1;
517pub const _ALL_SOURCE: u32 = 1;
518pub const _DARWIN_C_SOURCE: u32 = 1;
519pub const __EXTENSIONS__: u32 = 1;
520pub const _GNU_SOURCE: u32 = 1;
521pub const _HPUX_ALT_XOPEN_SOCKET_API: u32 = 1;
522pub const _NETBSD_SOURCE: u32 = 1;
523pub const _OPENBSD_SOURCE: u32 = 1;
524pub const _POSIX_PTHREAD_SEMANTICS: u32 = 1;
525pub const __STDC_WANT_IEC_60559_ATTRIBS_EXT__: u32 = 1;
526pub const __STDC_WANT_IEC_60559_BFP_EXT__: u32 = 1;
527pub const __STDC_WANT_IEC_60559_DFP_EXT__: u32 = 1;
528pub const __STDC_WANT_IEC_60559_EXT__: u32 = 1;
529pub const __STDC_WANT_IEC_60559_FUNCS_EXT__: u32 = 1;
530pub const __STDC_WANT_IEC_60559_TYPES_EXT__: u32 = 1;
531pub const __STDC_WANT_LIB_EXT2__: u32 = 1;
532pub const __STDC_WANT_MATH_SPEC_FUNCS__: u32 = 1;
533pub const _TANDEM_SOURCE: u32 = 1;
534pub const ZEND_CHECK_STACK_LIMIT: u32 = 1;
535pub const ZEND_DEBUG: u8 = 1;
536pub const ZEND_MM_NEED_EIGHT_BYTE_REALIGNMENT: u32 = 0;
537pub const ZEND_SIGNALS: u32 = 1;
538pub const ZEND_PATHS_SEPARATOR: u8 = 58u8;
539pub const ZEND_ENABLE_ZVAL_LONG64: u32 = 1;
540pub const SIZEOF_ZEND_LONG: u32 = 8;
541pub const ZEND_LTOA_BUF_LEN: u32 = 65;
542pub const ZEND_LONG_FMT: &[u8; 4] = b"%ld\0";
543pub const ZEND_ULONG_FMT: &[u8; 4] = b"%lu\0";
544pub const ZEND_XLONG_FMT: &[u8; 4] = b"%lx\0";
545pub const ZEND_LONG_FMT_SPEC: &[u8; 3] = b"ld\0";
546pub const ZEND_ULONG_FMT_SPEC: &[u8; 3] = b"lu\0";
547pub const MAX_LENGTH_OF_LONG: u32 = 20;
548pub const LONG_MIN_DIGITS: &[u8; 20] = b"9223372036854775808\0";
549pub const ZEND_ADDR_FMT: &[u8; 9] = b"0x%016zx\0";
550pub const ZEND_LONG_CAN_OVFL_INT: u32 = 1;
551pub const ZEND_LONG_CAN_OVFL_UINT: u32 = 1;
552pub const ZEND_SIZE_T_CAN_OVFL_UINT: u32 = 1;
553pub const PHP_RTLD_MODE: u32 = 1;
554pub const ZEND_EXTENSIONS_SUPPORT: u32 = 1;
555pub const ZTS_V: u32 = 0;
556pub const MAX_LENGTH_OF_DOUBLE: u32 = 32;
557pub const ZEND_MAX_RESERVED_RESOURCES: u32 = 6;
558pub const ZEND_INTRIN_HAVE_IFUNC_TARGET: u32 = 1;
559pub const ZEND_INTRIN_SSSE3_RESOLVER: u32 = 1;
560pub const ZEND_INTRIN_SSSE3_FUNC_PROTO: u32 = 1;
561pub const ZEND_INTRIN_SSE4_2_RESOLVER: u32 = 1;
562pub const ZEND_INTRIN_SSE4_2_FUNC_PROTO: u32 = 1;
563pub const ZEND_INTRIN_PCLMUL_RESOLVER: u32 = 1;
564pub const ZEND_INTRIN_PCLMUL_FUNC_PTR: u32 = 1;
565pub const ZEND_INTRIN_SSE4_2_PCLMUL_RESOLVER: u32 = 1;
566pub const ZEND_INTRIN_SSE4_2_PCLMUL_FUNC_PTR: u32 = 1;
567pub const ZEND_INTRIN_AVX2_RESOLVER: u32 = 1;
568pub const ZEND_INTRIN_AVX2_FUNC_PROTO: u32 = 1;
569pub const ZEND_INTRIN_AVX512_RESOLVER: u32 = 1;
570pub const ZEND_INTRIN_AVX512_FUNC_PROTO: u32 = 1;
571pub const ZEND_INTRIN_AVX512_VBMI_RESOLVER: u32 = 1;
572pub const ZEND_INTRIN_AVX512_VBMI_FUNC_PROTO: u32 = 1;
573pub const ZEND_SIZE_MAX: i32 = -1;
574pub const _ZEND_TYPE_EXTRA_FLAGS_SHIFT: u32 = 25;
575pub const _ZEND_TYPE_MASK: u32 = 33554431;
576pub const _ZEND_TYPE_NAME_BIT: u32 = 16777216;
577pub const _ZEND_TYPE_LITERAL_NAME_BIT: u32 = 8388608;
578pub const _ZEND_TYPE_LIST_BIT: u32 = 4194304;
579pub const _ZEND_TYPE_KIND_MASK: u32 = 29360128;
580pub const _ZEND_TYPE_ITERABLE_BIT: u32 = 2097152;
581pub const _ZEND_TYPE_ARENA_BIT: u32 = 1048576;
582pub const _ZEND_TYPE_INTERSECTION_BIT: u32 = 524288;
583pub const _ZEND_TYPE_UNION_BIT: u32 = 262144;
584pub const _ZEND_TYPE_MAY_BE_MASK: u32 = 262143;
585pub const _ZEND_TYPE_NULLABLE_BIT: u32 = 2;
586pub const HT_INVALID_IDX: u32 = 4294967295;
587pub const HT_MIN_MASK: u32 = 4294967294;
588pub const HT_MIN_SIZE: u32 = 8;
589pub const HT_MAX_SIZE: u32 = 1073741824;
590pub const IS_UNDEF: u8 = 0;
591pub const IS_NULL: u8 = 1;
592pub const IS_FALSE: u8 = 2;
593pub const IS_TRUE: u8 = 3;
594pub const IS_LONG: u8 = 4;
595pub const IS_DOUBLE: u8 = 5;
596pub const IS_STRING: u8 = 6;
597pub const IS_ARRAY: u8 = 7;
598pub const IS_OBJECT: u8 = 8;
599pub const IS_RESOURCE: u8 = 9;
600pub const IS_REFERENCE: u8 = 10;
601pub const IS_CONSTANT_AST: u8 = 11;
602pub const IS_CALLABLE: u8 = 12;
603pub const IS_ITERABLE: u8 = 13;
604pub const IS_VOID: u8 = 14;
605pub const IS_STATIC: u8 = 15;
606pub const IS_MIXED: u8 = 16;
607pub const IS_NEVER: u8 = 17;
608pub const IS_INDIRECT: u8 = 12;
609pub const IS_PTR: u8 = 13;
610pub const IS_ALIAS_PTR: u8 = 14;
611pub const _IS_ERROR: u8 = 15;
612pub const _IS_BOOL: u8 = 18;
613pub const _IS_NUMBER: u8 = 19;
614pub const ZEND_GUARD_PROPERTY_GET: u32 = 1;
615pub const ZEND_GUARD_PROPERTY_SET: u32 = 2;
616pub const ZEND_GUARD_PROPERTY_UNSET: u32 = 4;
617pub const ZEND_GUARD_PROPERTY_ISSET: u32 = 8;
618pub const ZEND_GUARD_PROPERTY_HOOK: u32 = 16;
619pub const ZEND_GUARD_PROPERTY_MASK: u32 = 31;
620pub const ZEND_GUARD_RECURSION_DEBUG: u32 = 32;
621pub const ZEND_GUARD_RECURSION_EXPORT: u32 = 64;
622pub const ZEND_GUARD_RECURSION_JSON: u32 = 128;
623pub const Z_TYPE_MASK: u32 = 255;
624pub const Z_TYPE_FLAGS_MASK: u32 = 65280;
625pub const Z_TYPE_FLAGS_SHIFT: u32 = 8;
626pub const Z_TYPE_INFO_EXTRA_SHIFT: u32 = 16;
627pub const GC_TYPE_MASK: u32 = 15;
628pub const GC_FLAGS_MASK: u32 = 1008;
629pub const GC_INFO_MASK: u32 = 4294966272;
630pub const GC_FLAGS_SHIFT: u32 = 0;
631pub const GC_INFO_SHIFT: u32 = 10;
632pub const GC_NOT_COLLECTABLE: u32 = 16;
633pub const GC_PROTECTED: u32 = 32;
634pub const GC_IMMUTABLE: u32 = 64;
635pub const GC_PERSISTENT: u32 = 128;
636pub const GC_PERSISTENT_LOCAL: u32 = 256;
637pub const GC_NULL: u32 = 17;
638pub const GC_STRING: u32 = 22;
639pub const GC_ARRAY: u32 = 7;
640pub const GC_OBJECT: u32 = 8;
641pub const GC_RESOURCE: u32 = 25;
642pub const GC_REFERENCE: u32 = 26;
643pub const GC_CONSTANT_AST: u32 = 27;
644pub const IS_TYPE_REFCOUNTED: u32 = 1;
645pub const IS_TYPE_COLLECTABLE: u32 = 2;
646pub const IS_INTERNED_STRING_EX: u32 = 6;
647pub const IS_STRING_EX: u32 = 262;
648pub const IS_ARRAY_EX: u32 = 775;
649pub const IS_OBJECT_EX: u32 = 776;
650pub const IS_RESOURCE_EX: u32 = 265;
651pub const IS_REFERENCE_EX: u32 = 778;
652pub const IS_CONSTANT_AST_EX: u32 = 267;
653pub const IS_STR_CLASS_NAME_MAP_PTR: u32 = 32;
654pub const IS_STR_INTERNED: u32 = 64;
655pub const IS_STR_PERSISTENT: u32 = 128;
656pub const IS_STR_PERMANENT: u32 = 256;
657pub const IS_STR_VALID_UTF8: u32 = 512;
658pub const IS_ARRAY_IMMUTABLE: u32 = 64;
659pub const IS_ARRAY_PERSISTENT: u32 = 128;
660pub const IS_OBJ_WEAKLY_REFERENCED: u32 = 128;
661pub const IS_OBJ_DESTRUCTOR_CALLED: u32 = 256;
662pub const IS_OBJ_FREE_CALLED: u32 = 512;
663pub const IS_OBJ_LAZY_UNINITIALIZED: u32 = 2147483648;
664pub const IS_OBJ_LAZY_PROXY: u32 = 1073741824;
665pub const ZEND_RC_DEBUG: u32 = 0;
666pub const IS_PROP_UNINIT: u32 = 1;
667pub const IS_PROP_REINITABLE: u32 = 2;
668pub const IS_PROP_LAZY: u32 = 4;
669pub const ZEND_MAP_PTR_KIND_PTR: u32 = 0;
670pub const ZEND_MAP_PTR_KIND_PTR_OR_OFFSET: u32 = 1;
671pub const ZEND_MAP_PTR_KIND: u32 = 1;
672pub const E_ERROR: u32 = 1;
673pub const E_WARNING: u32 = 2;
674pub const E_PARSE: u32 = 4;
675pub const E_NOTICE: u32 = 8;
676pub const E_CORE_ERROR: u32 = 16;
677pub const E_CORE_WARNING: u32 = 32;
678pub const E_COMPILE_ERROR: u32 = 64;
679pub const E_COMPILE_WARNING: u32 = 128;
680pub const E_USER_ERROR: u32 = 256;
681pub const E_USER_WARNING: u32 = 512;
682pub const E_USER_NOTICE: u32 = 1024;
683pub const E_STRICT: u32 = 2048;
684pub const E_RECOVERABLE_ERROR: u32 = 4096;
685pub const E_DEPRECATED: u32 = 8192;
686pub const E_USER_DEPRECATED: u32 = 16384;
687pub const E_DONT_BAIL: u32 = 32768;
688pub const E_ALL: u32 = 30719;
689pub const E_CORE: u32 = 48;
690pub const E_FATAL_ERRORS: u32 = 4437;
691pub const ZEND_MM_PAGE_SIZE: u32 = 4096;
692pub const ZEND_MM_FIRST_PAGE: u32 = 1;
693pub const ZEND_MM_MIN_SMALL_SIZE: u32 = 8;
694pub const ZEND_MM_MAX_SMALL_SIZE: u32 = 3072;
695pub const ZEND_MM_CUSTOM_HEAP_NONE: u32 = 0;
696pub const ZEND_MM_CUSTOM_HEAP_STD: u32 = 1;
697pub const ZEND_MM_CUSTOM_HEAP_DEBUG: u32 = 2;
698pub const ZEND_MM_MAX_ALLOCS_EXIT_STATUS: u32 = 121;
699pub const ZEND_HRTIME_PLATFORM_POSIX: u32 = 0;
700pub const ZEND_HRTIME_PLATFORM_WINDOWS: u32 = 0;
701pub const ZEND_HRTIME_PLATFORM_APPLE_MACH_ABSOLUTE: u32 = 0;
702pub const ZEND_HRTIME_PLATFORM_APPLE_GETTIME_NSEC: u32 = 0;
703pub const ZEND_HRTIME_PLATFORM_HPUX: u32 = 0;
704pub const ZEND_HRTIME_PLATFORM_AIX: u32 = 0;
705pub const GC_BENCH: u32 = 0;
706pub const ZSTR_COPYABLE_CONCAT_PROPERTIES: u32 = 512;
707pub const HASH_UPDATE: u32 = 1;
708pub const HASH_ADD: u32 = 2;
709pub const HASH_UPDATE_INDIRECT: u32 = 4;
710pub const HASH_ADD_NEW: u32 = 8;
711pub const HASH_ADD_NEXT: u32 = 16;
712pub const HASH_LOOKUP: u32 = 32;
713pub const HASH_FALLIBLE: u32 = 64;
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 = 12;
1410pub const PHP_EXTRA_VERSION: &[u8; 1] = b"\0";
1411pub const PHP_VERSION: &[u8; 7] = b"8.5.12\0";
1412pub const PHP_VERSION_ID: u32 = 80512;
1413pub const PHP_OS_FAMILY: &[u8; 6] = b"Linux\0";
1414pub const PHP_DEBUG: u32 = 1;
1415pub const PHP_DIR_SEPARATOR: u8 = 47u8;
1416pub const PHP_EOL: &[u8; 2] = b"\n\0";
1417pub const CONFIGURE_COMMAND : & [u8 ; 101] = b" './configure'  '--disable-all' '--enable-cli' '--enable-tokenizer' '--enable-debug' '--enable-phar'\0" ;
1418pub const PHP_PROG_SENDMAIL: &[u8; 19] = b"/usr/sbin/sendmail\0";
1419pub const PEAR_INSTALLDIR: &[u8; 1] = b"\0";
1420pub const PHP_INCLUDE_PATH: &[u8; 3] = b".:\0";
1421pub const PHP_EXTENSION_DIR: &[u8; 53] = b"/usr/local/lib/php/extensions/debug-non-zts-20250925\0";
1422pub const PHP_PREFIX: &[u8; 11] = b"/usr/local\0";
1423pub const PHP_BINDIR: &[u8; 15] = b"/usr/local/bin\0";
1424pub const PHP_SBINDIR: &[u8; 16] = b"/usr/local/sbin\0";
1425pub const PHP_MANDIR: &[u8; 19] = b"/usr/local/php/man\0";
1426pub const PHP_LIBDIR: &[u8; 19] = b"/usr/local/lib/php\0";
1427pub const PHP_DATADIR: &[u8; 21] = b"/usr/local/share/php\0";
1428pub const PHP_SYSCONFDIR: &[u8; 15] = b"/usr/local/etc\0";
1429pub const PHP_LOCALSTATEDIR: &[u8; 15] = b"/usr/local/var\0";
1430pub const PHP_CONFIG_FILE_PATH: &[u8; 15] = b"/usr/local/lib\0";
1431pub const PHP_CONFIG_FILE_SCAN_DIR: &[u8; 1] = b"\0";
1432pub const PHP_SHLIB_SUFFIX: &[u8; 3] = b"so\0";
1433pub const PHP_SHLIB_EXT_PREFIX: &[u8; 1] = b"\0";
1434pub const EXEC_INPUT_BUF: u32 = 4096;
1435pub const PHP_MIME_TYPE: &[u8; 24] = b"application/x-httpd-php\0";
1436pub const PHP_SYSLOG_FILTER_ALL: u32 = 0;
1437pub const PHP_SYSLOG_FILTER_NO_CTRL: u32 = 1;
1438pub const PHP_SYSLOG_FILTER_ASCII: u32 = 2;
1439pub const PHP_SYSLOG_FILTER_RAW: u32 = 3;
1440pub const PHP_OUTPUT_NEWAPI: u32 = 1;
1441pub const PHP_OUTPUT_HANDLER_WRITE: u32 = 0;
1442pub const PHP_OUTPUT_HANDLER_START: u32 = 1;
1443pub const PHP_OUTPUT_HANDLER_CLEAN: u32 = 2;
1444pub const PHP_OUTPUT_HANDLER_FLUSH: u32 = 4;
1445pub const PHP_OUTPUT_HANDLER_FINAL: u32 = 8;
1446pub const PHP_OUTPUT_HANDLER_CONT: u32 = 0;
1447pub const PHP_OUTPUT_HANDLER_END: u32 = 8;
1448pub const PHP_OUTPUT_HANDLER_INTERNAL: u32 = 0;
1449pub const PHP_OUTPUT_HANDLER_USER: u32 = 1;
1450pub const PHP_OUTPUT_HANDLER_CLEANABLE: u32 = 16;
1451pub const PHP_OUTPUT_HANDLER_FLUSHABLE: u32 = 32;
1452pub const PHP_OUTPUT_HANDLER_REMOVABLE: u32 = 64;
1453pub const PHP_OUTPUT_HANDLER_STDFLAGS: u32 = 112;
1454pub const PHP_OUTPUT_HANDLER_STARTED: u32 = 4096;
1455pub const PHP_OUTPUT_HANDLER_DISABLED: u32 = 8192;
1456pub const PHP_OUTPUT_HANDLER_PROCESSED: u32 = 16384;
1457pub const PHP_OUTPUT_HANDLER_PRODUCED_OUTPUT: u32 = 32768;
1458pub const PHP_OUTPUT_POP_TRY: u32 = 0;
1459pub const PHP_OUTPUT_POP_FORCE: u32 = 1;
1460pub const PHP_OUTPUT_POP_DISCARD: u32 = 16;
1461pub const PHP_OUTPUT_POP_SILENT: u32 = 256;
1462pub const PHP_OUTPUT_IMPLICITFLUSH: u32 = 1;
1463pub const PHP_OUTPUT_DISABLED: u32 = 2;
1464pub const PHP_OUTPUT_WRITTEN: u32 = 4;
1465pub const PHP_OUTPUT_SENT: u32 = 8;
1466pub const PHP_OUTPUT_ACTIVE: u32 = 16;
1467pub const PHP_OUTPUT_LOCKED: u32 = 32;
1468pub const PHP_OUTPUT_ACTIVATED: u32 = 1048576;
1469pub const PHP_OUTPUT_HANDLER_ALIGNTO_SIZE: u32 = 4096;
1470pub const PHP_OUTPUT_HANDLER_DEFAULT_SIZE: u32 = 16384;
1471pub const PHP_STREAM_NOTIFIER_PROGRESS: u32 = 1;
1472pub const PHP_STREAM_NOTIFY_RESOLVE: u32 = 1;
1473pub const PHP_STREAM_NOTIFY_CONNECT: u32 = 2;
1474pub const PHP_STREAM_NOTIFY_AUTH_REQUIRED: u32 = 3;
1475pub const PHP_STREAM_NOTIFY_MIME_TYPE_IS: u32 = 4;
1476pub const PHP_STREAM_NOTIFY_FILE_SIZE_IS: u32 = 5;
1477pub const PHP_STREAM_NOTIFY_REDIRECTED: u32 = 6;
1478pub const PHP_STREAM_NOTIFY_PROGRESS: u32 = 7;
1479pub const PHP_STREAM_NOTIFY_COMPLETED: u32 = 8;
1480pub const PHP_STREAM_NOTIFY_FAILURE: u32 = 9;
1481pub const PHP_STREAM_NOTIFY_AUTH_RESULT: u32 = 10;
1482pub const PHP_STREAM_NOTIFY_SEVERITY_INFO: u32 = 0;
1483pub const PHP_STREAM_NOTIFY_SEVERITY_WARN: u32 = 1;
1484pub const PHP_STREAM_NOTIFY_SEVERITY_ERR: u32 = 2;
1485pub const PHP_STREAM_FILTER_READ: u32 = 1;
1486pub const PHP_STREAM_FILTER_WRITE: u32 = 2;
1487pub const PHP_STREAM_FILTER_ALL: u32 = 3;
1488pub const PSFS_FLAG_NORMAL: u32 = 0;
1489pub const PSFS_FLAG_FLUSH_INC: u32 = 1;
1490pub const PSFS_FLAG_FLUSH_CLOSE: u32 = 2;
1491pub const PHP_STREAM_FLAG_NO_SEEK: u32 = 1;
1492pub const PHP_STREAM_FLAG_NO_BUFFER: u32 = 2;
1493pub const PHP_STREAM_FLAG_EOL_UNIX: u32 = 0;
1494pub const PHP_STREAM_FLAG_DETECT_EOL: u32 = 4;
1495pub const PHP_STREAM_FLAG_EOL_MAC: u32 = 8;
1496pub const PHP_STREAM_FLAG_AVOID_BLOCKING: u32 = 16;
1497pub const PHP_STREAM_FLAG_NO_CLOSE: u32 = 32;
1498pub const PHP_STREAM_FLAG_IS_DIR: u32 = 64;
1499pub const PHP_STREAM_FLAG_NO_FCLOSE: u32 = 128;
1500pub const PHP_STREAM_FLAG_SUPPRESS_ERRORS: u32 = 256;
1501pub const PHP_STREAM_FLAG_NO_RSCR_DTOR_CLOSE: u32 = 512;
1502pub const PHP_STREAM_FLAG_NO_IO: u32 = 1024;
1503pub const PHP_STREAM_FLAG_WAS_WRITTEN: u32 = 2147483648;
1504pub const PHP_STREAM_FCLOSE_NONE: u32 = 0;
1505pub const PHP_STREAM_FCLOSE_FDOPEN: u32 = 1;
1506pub const PHP_STREAM_FCLOSE_FOPENCOOKIE: u32 = 2;
1507pub const PHP_STREAM_PERSISTENT_SUCCESS: u32 = 0;
1508pub const PHP_STREAM_PERSISTENT_FAILURE: u32 = 1;
1509pub const PHP_STREAM_PERSISTENT_NOT_EXIST: u32 = 2;
1510pub const PHP_STREAM_FREE_CALL_DTOR: u32 = 1;
1511pub const PHP_STREAM_FREE_RELEASE_STREAM: u32 = 2;
1512pub const PHP_STREAM_FREE_PRESERVE_HANDLE: u32 = 4;
1513pub const PHP_STREAM_FREE_RSRC_DTOR: u32 = 8;
1514pub const PHP_STREAM_FREE_PERSISTENT: u32 = 16;
1515pub const PHP_STREAM_FREE_IGNORE_ENCLOSING: u32 = 32;
1516pub const PHP_STREAM_FREE_KEEP_RSRC: u32 = 64;
1517pub const PHP_STREAM_FREE_CLOSE: u32 = 3;
1518pub const PHP_STREAM_FREE_CLOSE_CASTED: u32 = 7;
1519pub const PHP_STREAM_FREE_CLOSE_PERSISTENT: u32 = 19;
1520pub const PHP_STREAM_MKDIR_RECURSIVE: u32 = 1;
1521pub const PHP_STREAM_URL_STAT_LINK: u32 = 1;
1522pub const PHP_STREAM_URL_STAT_QUIET: u32 = 2;
1523pub const PHP_STREAM_URL_STAT_IGNORE_OPEN_BASEDIR: u32 = 4;
1524pub const PHP_STREAM_OPTION_BLOCKING: u32 = 1;
1525pub const PHP_STREAM_OPTION_READ_BUFFER: u32 = 2;
1526pub const PHP_STREAM_OPTION_WRITE_BUFFER: u32 = 3;
1527pub const PHP_STREAM_BUFFER_NONE: u32 = 0;
1528pub const PHP_STREAM_BUFFER_LINE: u32 = 1;
1529pub const PHP_STREAM_BUFFER_FULL: u32 = 2;
1530pub const PHP_STREAM_OPTION_READ_TIMEOUT: u32 = 4;
1531pub const PHP_STREAM_OPTION_SET_CHUNK_SIZE: u32 = 5;
1532pub const PHP_STREAM_OPTION_LOCKING: u32 = 6;
1533pub const PHP_STREAM_LOCK_SUPPORTED: u32 = 1;
1534pub const PHP_STREAM_OPTION_XPORT_API: u32 = 7;
1535pub const PHP_STREAM_OPTION_CRYPTO_API: u32 = 8;
1536pub const PHP_STREAM_OPTION_MMAP_API: u32 = 9;
1537pub const PHP_STREAM_OPTION_TRUNCATE_API: u32 = 10;
1538pub const PHP_STREAM_TRUNCATE_SUPPORTED: u32 = 0;
1539pub const PHP_STREAM_TRUNCATE_SET_SIZE: u32 = 1;
1540pub const PHP_STREAM_OPTION_META_DATA_API: u32 = 11;
1541pub const PHP_STREAM_OPTION_CHECK_LIVENESS: u32 = 12;
1542pub const PHP_STREAM_OPTION_PIPE_BLOCKING: u32 = 13;
1543pub const PHP_STREAM_OPTION_SYNC_API: u32 = 14;
1544pub const PHP_STREAM_SYNC_SUPPORTED: u32 = 0;
1545pub const PHP_STREAM_SYNC_FSYNC: u32 = 1;
1546pub const PHP_STREAM_SYNC_FDSYNC: u32 = 2;
1547pub const PHP_STREAM_OPTION_RETURN_OK: u32 = 0;
1548pub const PHP_STREAM_OPTION_RETURN_ERR: i32 = -1;
1549pub const PHP_STREAM_OPTION_RETURN_NOTIMPL: i32 = -2;
1550pub const STREAM_XPORT_CLIENT: u32 = 0;
1551pub const STREAM_XPORT_SERVER: u32 = 1;
1552pub const STREAM_XPORT_CONNECT: u32 = 2;
1553pub const STREAM_XPORT_BIND: u32 = 4;
1554pub const STREAM_XPORT_LISTEN: u32 = 8;
1555pub const STREAM_XPORT_CONNECT_ASYNC: u32 = 16;
1556pub const PHP_STREAM_MMAP_ALL: u32 = 0;
1557pub const PHP_STREAM_MMAP_MAX: u32 = 536870912;
1558pub const PHP_STREAM_AS_STDIO: u32 = 0;
1559pub const PHP_STREAM_AS_FD: u32 = 1;
1560pub const PHP_STREAM_AS_SOCKETD: u32 = 2;
1561pub const PHP_STREAM_AS_FD_FOR_SELECT: u32 = 3;
1562pub const PHP_STREAM_CAST_TRY_HARD: u32 = 2147483648;
1563pub const PHP_STREAM_CAST_RELEASE: u32 = 1073741824;
1564pub const PHP_STREAM_CAST_INTERNAL: u32 = 536870912;
1565pub const PHP_STREAM_CAST_MASK: u32 = 3758096384;
1566pub const IGNORE_PATH: u32 = 0;
1567pub const USE_PATH: u32 = 1;
1568pub const IGNORE_URL: u32 = 2;
1569pub const REPORT_ERRORS: u32 = 8;
1570pub const STREAM_MUST_SEEK: u32 = 16;
1571pub const STREAM_WILL_CAST: u32 = 32;
1572pub const STREAM_LOCATE_WRAPPERS_ONLY: u32 = 64;
1573pub const STREAM_OPEN_FOR_INCLUDE: u32 = 128;
1574pub const STREAM_USE_URL: u32 = 256;
1575pub const STREAM_ONLY_GET_HEADERS: u32 = 512;
1576pub const STREAM_DISABLE_OPEN_BASEDIR: u32 = 1024;
1577pub const STREAM_OPEN_PERSISTENT: u32 = 2048;
1578pub const STREAM_USE_GLOB_DIR_OPEN: u32 = 4096;
1579pub const STREAM_DISABLE_URL_PROTECTION: u32 = 8192;
1580pub const STREAM_ASSUME_REALPATH: u32 = 16384;
1581pub const STREAM_USE_BLOCKING_PIPE: u32 = 32768;
1582pub const STREAM_OPEN_FOR_ZEND_STREAM: u32 = 65536;
1583pub const PHP_STREAM_NO_PREFERENCE: u32 = 0;
1584pub const PHP_STREAM_PREFER_STDIO: u32 = 1;
1585pub const PHP_STREAM_FORCE_CONVERSION: u32 = 2;
1586pub const PHP_STREAM_IS_URL: u32 = 1;
1587pub const PHP_STREAM_META_TOUCH: u32 = 1;
1588pub const PHP_STREAM_META_OWNER_NAME: u32 = 2;
1589pub const PHP_STREAM_META_OWNER: u32 = 3;
1590pub const PHP_STREAM_META_GROUP_NAME: u32 = 4;
1591pub const PHP_STREAM_META_GROUP: u32 = 5;
1592pub const PHP_STREAM_META_ACCESS: u32 = 6;
1593pub const PHP_STREAM_MAX_MEM: u32 = 2097152;
1594pub const TEMP_STREAM_DEFAULT: u32 = 0;
1595pub const TEMP_STREAM_READONLY: u32 = 1;
1596pub const TEMP_STREAM_TAKE_BUFFER: u32 = 2;
1597pub const TEMP_STREAM_APPEND: u32 = 4;
1598pub const PHP_DISPLAY_ERRORS_STDOUT: u32 = 1;
1599pub const PHP_DISPLAY_ERRORS_STDERR: u32 = 2;
1600pub const TRACK_VARS_POST: u32 = 0;
1601pub const TRACK_VARS_GET: u32 = 1;
1602pub const TRACK_VARS_COOKIE: u32 = 2;
1603pub const TRACK_VARS_SERVER: u32 = 3;
1604pub const TRACK_VARS_ENV: u32 = 4;
1605pub const TRACK_VARS_FILES: u32 = 5;
1606pub const TRACK_VARS_REQUEST: u32 = 6;
1607pub const PHP_INI_USER: u8 = 1;
1608pub const PHP_INI_PERDIR: u8 = 2;
1609pub const PHP_INI_SYSTEM: u8 = 4;
1610pub const PHP_INI_ALL: u8 = 7;
1611pub const PHP_INI_DISPLAY_ORIG: u32 = 1;
1612pub const PHP_INI_DISPLAY_ACTIVE: u32 = 2;
1613pub const PHP_INI_STAGE_STARTUP: u32 = 1;
1614pub const PHP_INI_STAGE_SHUTDOWN: u32 = 2;
1615pub const PHP_INI_STAGE_ACTIVATE: u32 = 4;
1616pub const PHP_INI_STAGE_DEACTIVATE: u32 = 8;
1617pub const PHP_INI_STAGE_RUNTIME: u32 = 16;
1618pub const PHP_INI_STAGE_HTACCESS: u32 = 32;
1619pub const PHP_CONNECTION_NORMAL: u32 = 0;
1620pub const PHP_CONNECTION_ABORTED: u32 = 1;
1621pub const PHP_CONNECTION_TIMEOUT: u32 = 2;
1622pub const PHP_ENTRY_NAME_COLOR: &[u8; 5] = b"#ccf\0";
1623pub const PHP_CONTENTS_COLOR: &[u8; 5] = b"#ccc\0";
1624pub const PHP_HEADER_COLOR: &[u8; 5] = b"#99c\0";
1625pub const PHP_INFO_GENERAL: u32 = 1;
1626pub const PHP_INFO_CREDITS: u32 = 2;
1627pub const PHP_INFO_CONFIGURATION: u32 = 4;
1628pub const PHP_INFO_MODULES: u32 = 8;
1629pub const PHP_INFO_ENVIRONMENT: u32 = 16;
1630pub const PHP_INFO_VARIABLES: u32 = 32;
1631pub const PHP_INFO_LICENSE: u32 = 64;
1632pub const PHP_INFO_ALL: u32 = 4294967295;
1633pub const PHP_CREDITS_GROUP: u32 = 1;
1634pub const PHP_CREDITS_GENERAL: u32 = 2;
1635pub const PHP_CREDITS_SAPI: u32 = 4;
1636pub const PHP_CREDITS_MODULES: u32 = 8;
1637pub const PHP_CREDITS_DOCS: u32 = 16;
1638pub const PHP_CREDITS_FULLPAGE: u32 = 32;
1639pub const PHP_CREDITS_QA: u32 = 64;
1640pub const PHP_CREDITS_WEB: u32 = 128;
1641pub const PHP_CREDITS_ALL: u32 = 4294967295;
1642pub 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" ;
1643pub 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" ;
1644pub 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" ;
1645pub const FS_PERMS: u32 = 0;
1646pub const FS_INODE: u32 = 1;
1647pub const FS_SIZE: u32 = 2;
1648pub const FS_OWNER: u32 = 3;
1649pub const FS_GROUP: u32 = 4;
1650pub const FS_ATIME: u32 = 5;
1651pub const FS_MTIME: u32 = 6;
1652pub const FS_CTIME: u32 = 7;
1653pub const FS_TYPE: u32 = 8;
1654pub const FS_IS_W: u32 = 9;
1655pub const FS_IS_R: u32 = 10;
1656pub const FS_IS_X: u32 = 11;
1657pub const FS_IS_FILE: u32 = 12;
1658pub const FS_IS_DIR: u32 = 13;
1659pub const FS_IS_LINK: u32 = 14;
1660pub const FS_EXISTS: u32 = 15;
1661pub const FS_LSTAT: u32 = 16;
1662pub const FS_STAT: u32 = 17;
1663pub const FS_LPERMS: u32 = 18;
1664pub type __uint32_t = ::std::os::raw::c_uint;
1665pub type __dev_t = ::std::os::raw::c_ulong;
1666pub type __uid_t = ::std::os::raw::c_uint;
1667pub type __gid_t = ::std::os::raw::c_uint;
1668pub type __ino_t = ::std::os::raw::c_ulong;
1669pub type __mode_t = ::std::os::raw::c_uint;
1670pub type __nlink_t = ::std::os::raw::c_ulong;
1671pub type __off_t = ::std::os::raw::c_long;
1672pub type __off64_t = ::std::os::raw::c_long;
1673pub type __pid_t = ::std::os::raw::c_int;
1674pub type __clock_t = ::std::os::raw::c_long;
1675pub type __time_t = ::std::os::raw::c_long;
1676pub type __suseconds_t = ::std::os::raw::c_long;
1677pub type __blksize_t = ::std::os::raw::c_long;
1678pub type __blkcnt_t = ::std::os::raw::c_long;
1679pub type __syscall_slong_t = ::std::os::raw::c_long;
1680pub type __socklen_t = ::std::os::raw::c_uint;
1681pub type gid_t = __gid_t;
1682pub type mode_t = __mode_t;
1683pub type uid_t = __uid_t;
1684pub type time_t = __time_t;
1685#[repr(C)]
1686#[derive(Debug, Copy, Clone)]
1687pub struct __sigset_t {
1688    pub __val: [::std::os::raw::c_ulong; 16usize],
1689}
1690#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1691const _: () = {
1692    ["Size of __sigset_t"][::std::mem::size_of::<__sigset_t>() - 128usize];
1693    ["Alignment of __sigset_t"][::std::mem::align_of::<__sigset_t>() - 8usize];
1694    ["Offset of field: __sigset_t::__val"][::std::mem::offset_of!(__sigset_t, __val) - 0usize];
1695};
1696#[repr(C)]
1697#[derive(Debug, Copy, Clone)]
1698pub struct timeval {
1699    pub tv_sec: __time_t,
1700    pub tv_usec: __suseconds_t,
1701}
1702#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1703const _: () = {
1704    ["Size of timeval"][::std::mem::size_of::<timeval>() - 16usize];
1705    ["Alignment of timeval"][::std::mem::align_of::<timeval>() - 8usize];
1706    ["Offset of field: timeval::tv_sec"][::std::mem::offset_of!(timeval, tv_sec) - 0usize];
1707    ["Offset of field: timeval::tv_usec"][::std::mem::offset_of!(timeval, tv_usec) - 8usize];
1708};
1709#[repr(C)]
1710#[derive(Debug, Copy, Clone)]
1711pub struct timespec {
1712    pub tv_sec: __time_t,
1713    pub tv_nsec: __syscall_slong_t,
1714}
1715#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1716const _: () = {
1717    ["Size of timespec"][::std::mem::size_of::<timespec>() - 16usize];
1718    ["Alignment of timespec"][::std::mem::align_of::<timespec>() - 8usize];
1719    ["Offset of field: timespec::tv_sec"][::std::mem::offset_of!(timespec, tv_sec) - 0usize];
1720    ["Offset of field: timespec::tv_nsec"][::std::mem::offset_of!(timespec, tv_nsec) - 8usize];
1721};
1722pub type tsrm_intptr_t = isize;
1723pub type tsrm_uintptr_t = usize;
1724pub type __gnuc_va_list = __builtin_va_list;
1725pub type FILE = _IO_FILE;
1726#[repr(C)]
1727#[derive(Debug)]
1728pub struct _IO_marker {
1729    _unused: [u8; 0],
1730}
1731#[repr(C)]
1732#[derive(Debug)]
1733pub struct _IO_codecvt {
1734    _unused: [u8; 0],
1735}
1736#[repr(C)]
1737#[derive(Debug)]
1738pub struct _IO_wide_data {
1739    _unused: [u8; 0],
1740}
1741pub type _IO_lock_t = ::std::os::raw::c_void;
1742#[repr(C)]
1743#[derive(Debug, Copy, Clone)]
1744pub struct _IO_FILE {
1745    pub _flags: ::std::os::raw::c_int,
1746    pub _IO_read_ptr: *mut ::std::os::raw::c_char,
1747    pub _IO_read_end: *mut ::std::os::raw::c_char,
1748    pub _IO_read_base: *mut ::std::os::raw::c_char,
1749    pub _IO_write_base: *mut ::std::os::raw::c_char,
1750    pub _IO_write_ptr: *mut ::std::os::raw::c_char,
1751    pub _IO_write_end: *mut ::std::os::raw::c_char,
1752    pub _IO_buf_base: *mut ::std::os::raw::c_char,
1753    pub _IO_buf_end: *mut ::std::os::raw::c_char,
1754    pub _IO_save_base: *mut ::std::os::raw::c_char,
1755    pub _IO_backup_base: *mut ::std::os::raw::c_char,
1756    pub _IO_save_end: *mut ::std::os::raw::c_char,
1757    pub _markers: *mut _IO_marker,
1758    pub _chain: *mut _IO_FILE,
1759    pub _fileno: ::std::os::raw::c_int,
1760    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 3usize]>,
1761    pub _short_backupbuf: [::std::os::raw::c_char; 1usize],
1762    pub _old_offset: __off_t,
1763    pub _cur_column: ::std::os::raw::c_ushort,
1764    pub _vtable_offset: ::std::os::raw::c_schar,
1765    pub _shortbuf: [::std::os::raw::c_char; 1usize],
1766    pub _lock: *mut _IO_lock_t,
1767    pub _offset: __off64_t,
1768    pub _codecvt: *mut _IO_codecvt,
1769    pub _wide_data: *mut _IO_wide_data,
1770    pub _freeres_list: *mut _IO_FILE,
1771    pub _freeres_buf: *mut ::std::os::raw::c_void,
1772    pub _prevchain: *mut *mut _IO_FILE,
1773    pub _mode: ::std::os::raw::c_int,
1774    pub _unused2: [::std::os::raw::c_char; 20usize],
1775}
1776#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1777const _: () = {
1778    ["Size of _IO_FILE"][::std::mem::size_of::<_IO_FILE>() - 216usize];
1779    ["Alignment of _IO_FILE"][::std::mem::align_of::<_IO_FILE>() - 8usize];
1780    ["Offset of field: _IO_FILE::_flags"][::std::mem::offset_of!(_IO_FILE, _flags) - 0usize];
1781    ["Offset of field: _IO_FILE::_IO_read_ptr"]
1782        [::std::mem::offset_of!(_IO_FILE, _IO_read_ptr) - 8usize];
1783    ["Offset of field: _IO_FILE::_IO_read_end"]
1784        [::std::mem::offset_of!(_IO_FILE, _IO_read_end) - 16usize];
1785    ["Offset of field: _IO_FILE::_IO_read_base"]
1786        [::std::mem::offset_of!(_IO_FILE, _IO_read_base) - 24usize];
1787    ["Offset of field: _IO_FILE::_IO_write_base"]
1788        [::std::mem::offset_of!(_IO_FILE, _IO_write_base) - 32usize];
1789    ["Offset of field: _IO_FILE::_IO_write_ptr"]
1790        [::std::mem::offset_of!(_IO_FILE, _IO_write_ptr) - 40usize];
1791    ["Offset of field: _IO_FILE::_IO_write_end"]
1792        [::std::mem::offset_of!(_IO_FILE, _IO_write_end) - 48usize];
1793    ["Offset of field: _IO_FILE::_IO_buf_base"]
1794        [::std::mem::offset_of!(_IO_FILE, _IO_buf_base) - 56usize];
1795    ["Offset of field: _IO_FILE::_IO_buf_end"]
1796        [::std::mem::offset_of!(_IO_FILE, _IO_buf_end) - 64usize];
1797    ["Offset of field: _IO_FILE::_IO_save_base"]
1798        [::std::mem::offset_of!(_IO_FILE, _IO_save_base) - 72usize];
1799    ["Offset of field: _IO_FILE::_IO_backup_base"]
1800        [::std::mem::offset_of!(_IO_FILE, _IO_backup_base) - 80usize];
1801    ["Offset of field: _IO_FILE::_IO_save_end"]
1802        [::std::mem::offset_of!(_IO_FILE, _IO_save_end) - 88usize];
1803    ["Offset of field: _IO_FILE::_markers"][::std::mem::offset_of!(_IO_FILE, _markers) - 96usize];
1804    ["Offset of field: _IO_FILE::_chain"][::std::mem::offset_of!(_IO_FILE, _chain) - 104usize];
1805    ["Offset of field: _IO_FILE::_fileno"][::std::mem::offset_of!(_IO_FILE, _fileno) - 112usize];
1806    ["Offset of field: _IO_FILE::_short_backupbuf"]
1807        [::std::mem::offset_of!(_IO_FILE, _short_backupbuf) - 119usize];
1808    ["Offset of field: _IO_FILE::_old_offset"]
1809        [::std::mem::offset_of!(_IO_FILE, _old_offset) - 120usize];
1810    ["Offset of field: _IO_FILE::_cur_column"]
1811        [::std::mem::offset_of!(_IO_FILE, _cur_column) - 128usize];
1812    ["Offset of field: _IO_FILE::_vtable_offset"]
1813        [::std::mem::offset_of!(_IO_FILE, _vtable_offset) - 130usize];
1814    ["Offset of field: _IO_FILE::_shortbuf"]
1815        [::std::mem::offset_of!(_IO_FILE, _shortbuf) - 131usize];
1816    ["Offset of field: _IO_FILE::_lock"][::std::mem::offset_of!(_IO_FILE, _lock) - 136usize];
1817    ["Offset of field: _IO_FILE::_offset"][::std::mem::offset_of!(_IO_FILE, _offset) - 144usize];
1818    ["Offset of field: _IO_FILE::_codecvt"][::std::mem::offset_of!(_IO_FILE, _codecvt) - 152usize];
1819    ["Offset of field: _IO_FILE::_wide_data"]
1820        [::std::mem::offset_of!(_IO_FILE, _wide_data) - 160usize];
1821    ["Offset of field: _IO_FILE::_freeres_list"]
1822        [::std::mem::offset_of!(_IO_FILE, _freeres_list) - 168usize];
1823    ["Offset of field: _IO_FILE::_freeres_buf"]
1824        [::std::mem::offset_of!(_IO_FILE, _freeres_buf) - 176usize];
1825    ["Offset of field: _IO_FILE::_prevchain"]
1826        [::std::mem::offset_of!(_IO_FILE, _prevchain) - 184usize];
1827    ["Offset of field: _IO_FILE::_mode"][::std::mem::offset_of!(_IO_FILE, _mode) - 192usize];
1828    ["Offset of field: _IO_FILE::_unused2"][::std::mem::offset_of!(_IO_FILE, _unused2) - 196usize];
1829};
1830impl _IO_FILE {
1831    #[inline]
1832    #[allow(unnecessary_transmutes)]
1833    pub fn _flags2(&self) -> ::std::os::raw::c_int {
1834        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 24u8>() as u32) }
1835    }
1836    #[inline]
1837    #[allow(unnecessary_transmutes)]
1838    pub fn set__flags2(&mut self, val: ::std::os::raw::c_int) {
1839        unsafe {
1840            let val: u32 = ::std::mem::transmute(val);
1841            self._bitfield_1.set_const::<0usize, 24u8>(val as u64)
1842        }
1843    }
1844    #[inline]
1845    #[allow(unnecessary_transmutes)]
1846    pub unsafe fn _flags2_raw(this: *const Self) -> ::std::os::raw::c_int {
1847        unsafe {
1848            ::std::mem::transmute(
1849                <__BindgenBitfieldUnit<[u8; 3usize]>>::raw_get_const::<0usize, 24u8>(
1850                    ::std::ptr::addr_of!((*this)._bitfield_1),
1851                ) as u32,
1852            )
1853        }
1854    }
1855    #[inline]
1856    #[allow(unnecessary_transmutes)]
1857    pub unsafe fn set__flags2_raw(this: *mut Self, val: ::std::os::raw::c_int) {
1858        unsafe {
1859            let val: u32 = ::std::mem::transmute(val);
1860            <__BindgenBitfieldUnit<[u8; 3usize]>>::raw_set_const::<0usize, 24u8>(
1861                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
1862                val as u64,
1863            )
1864        }
1865    }
1866    #[inline]
1867    #[allow(unnecessary_transmutes)]
1868    pub fn new_bitfield_1(_flags2: ::std::os::raw::c_int) -> __BindgenBitfieldUnit<[u8; 3usize]> {
1869        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 3usize]> = Default::default();
1870        __bindgen_bitfield_unit.set_const::<0usize, 24u8>({
1871            let _flags2: u32 = unsafe { ::std::mem::transmute(_flags2) };
1872            _flags2 as u64
1873        });
1874        __bindgen_bitfield_unit
1875    }
1876}
1877pub type va_list = __gnuc_va_list;
1878#[repr(C)]
1879#[repr(align(16))]
1880#[derive(Debug, Copy, Clone)]
1881pub struct max_align_t {
1882    pub __clang_max_align_nonce1: ::std::os::raw::c_longlong,
1883    pub __clang_max_align_nonce2: u128,
1884}
1885#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1886const _: () = {
1887    ["Size of max_align_t"][::std::mem::size_of::<max_align_t>() - 32usize];
1888    ["Alignment of max_align_t"][::std::mem::align_of::<max_align_t>() - 16usize];
1889    ["Offset of field: max_align_t::__clang_max_align_nonce1"]
1890        [::std::mem::offset_of!(max_align_t, __clang_max_align_nonce1) - 0usize];
1891    ["Offset of field: max_align_t::__clang_max_align_nonce2"]
1892        [::std::mem::offset_of!(max_align_t, __clang_max_align_nonce2) - 16usize];
1893};
1894pub type zend_long = i64;
1895pub type zend_ulong = u64;
1896pub type zend_off_t = i64;
1897pub const long_min_digits: &[u8; 20] = b"9223372036854775808\0";
1898pub type zend_max_align_t = max_align_t;
1899pub type zend_uchar = ::std::os::raw::c_uchar;
1900pub mod ZEND_RESULT_CODE {
1901    #[allow(unused_imports)]
1902    use super::*;
1903    pub type Type = ::std::os::raw::c_int;
1904    pub const SUCCESS: Type = 0;
1905    pub const FAILURE: Type = -1;
1906}
1907pub use self::ZEND_RESULT_CODE::Type as zend_result;
1908pub type zend_object_handlers = _zend_object_handlers;
1909pub type zend_class_entry = _zend_class_entry;
1910pub type zend_function = _zend_function;
1911pub type zend_execute_data = _zend_execute_data;
1912pub type zval = _zval_struct;
1913pub type zend_refcounted = _zend_refcounted;
1914pub type zend_string = _zend_string;
1915pub type zend_array = _zend_array;
1916pub type zend_object = _zend_object;
1917pub type zend_resource = _zend_resource;
1918pub type zend_reference = _zend_reference;
1919pub type zend_ast_ref = _zend_ast_ref;
1920pub type zend_ast = _zend_ast;
1921pub type compare_func_t = ::std::option::Option<
1922    unsafe extern "C" fn(
1923        arg1: *const ::std::os::raw::c_void,
1924        arg2: *const ::std::os::raw::c_void,
1925    ) -> ::std::os::raw::c_int,
1926>;
1927pub type swap_func_t = ::std::option::Option<
1928    unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void, arg2: *mut ::std::os::raw::c_void),
1929>;
1930pub type sort_func_t = ::std::option::Option<
1931    unsafe extern "C" fn(
1932        arg1: *mut ::std::os::raw::c_void,
1933        arg2: usize,
1934        arg3: usize,
1935        arg4: compare_func_t,
1936        arg5: swap_func_t,
1937    ),
1938>;
1939pub type dtor_func_t = ::std::option::Option<unsafe extern "C" fn(pDest: *mut zval)>;
1940pub type copy_ctor_func_t = ::std::option::Option<unsafe extern "C" fn(pElement: *mut zval)>;
1941#[repr(C)]
1942#[derive(Debug, Copy, Clone)]
1943pub struct zend_type {
1944    pub ptr: *mut ::std::os::raw::c_void,
1945    pub type_mask: u32,
1946}
1947#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1948const _: () = {
1949    ["Size of zend_type"][::std::mem::size_of::<zend_type>() - 16usize];
1950    ["Alignment of zend_type"][::std::mem::align_of::<zend_type>() - 8usize];
1951    ["Offset of field: zend_type::ptr"][::std::mem::offset_of!(zend_type, ptr) - 0usize];
1952    ["Offset of field: zend_type::type_mask"]
1953        [::std::mem::offset_of!(zend_type, type_mask) - 8usize];
1954};
1955#[repr(C)]
1956#[derive(Debug, Copy, Clone)]
1957pub struct zend_type_list {
1958    pub num_types: u32,
1959    pub types: [zend_type; 1usize],
1960}
1961#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1962const _: () = {
1963    ["Size of zend_type_list"][::std::mem::size_of::<zend_type_list>() - 24usize];
1964    ["Alignment of zend_type_list"][::std::mem::align_of::<zend_type_list>() - 8usize];
1965    ["Offset of field: zend_type_list::num_types"]
1966        [::std::mem::offset_of!(zend_type_list, num_types) - 0usize];
1967    ["Offset of field: zend_type_list::types"]
1968        [::std::mem::offset_of!(zend_type_list, types) - 8usize];
1969};
1970#[repr(C)]
1971#[derive(Copy, Clone)]
1972pub union _zend_value {
1973    pub lval: zend_long,
1974    pub dval: f64,
1975    pub counted: *mut zend_refcounted,
1976    pub str_: *mut zend_string,
1977    pub arr: *mut zend_array,
1978    pub obj: *mut zend_object,
1979    pub res: *mut zend_resource,
1980    pub ref_: *mut zend_reference,
1981    pub ast: *mut zend_ast_ref,
1982    pub zv: *mut zval,
1983    pub ptr: *mut ::std::os::raw::c_void,
1984    pub ce: *mut zend_class_entry,
1985    pub func: *mut zend_function,
1986    pub ww: _zend_value__bindgen_ty_1,
1987}
1988#[repr(C)]
1989#[derive(Debug, Copy, Clone)]
1990pub struct _zend_value__bindgen_ty_1 {
1991    pub w1: u32,
1992    pub w2: u32,
1993}
1994#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1995const _: () = {
1996    ["Size of _zend_value__bindgen_ty_1"]
1997        [::std::mem::size_of::<_zend_value__bindgen_ty_1>() - 8usize];
1998    ["Alignment of _zend_value__bindgen_ty_1"]
1999        [::std::mem::align_of::<_zend_value__bindgen_ty_1>() - 4usize];
2000    ["Offset of field: _zend_value__bindgen_ty_1::w1"]
2001        [::std::mem::offset_of!(_zend_value__bindgen_ty_1, w1) - 0usize];
2002    ["Offset of field: _zend_value__bindgen_ty_1::w2"]
2003        [::std::mem::offset_of!(_zend_value__bindgen_ty_1, w2) - 4usize];
2004};
2005#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2006const _: () = {
2007    ["Size of _zend_value"][::std::mem::size_of::<_zend_value>() - 8usize];
2008    ["Alignment of _zend_value"][::std::mem::align_of::<_zend_value>() - 8usize];
2009    ["Offset of field: _zend_value::lval"][::std::mem::offset_of!(_zend_value, lval) - 0usize];
2010    ["Offset of field: _zend_value::dval"][::std::mem::offset_of!(_zend_value, dval) - 0usize];
2011    ["Offset of field: _zend_value::counted"]
2012        [::std::mem::offset_of!(_zend_value, counted) - 0usize];
2013    ["Offset of field: _zend_value::str_"][::std::mem::offset_of!(_zend_value, str_) - 0usize];
2014    ["Offset of field: _zend_value::arr"][::std::mem::offset_of!(_zend_value, arr) - 0usize];
2015    ["Offset of field: _zend_value::obj"][::std::mem::offset_of!(_zend_value, obj) - 0usize];
2016    ["Offset of field: _zend_value::res"][::std::mem::offset_of!(_zend_value, res) - 0usize];
2017    ["Offset of field: _zend_value::ref_"][::std::mem::offset_of!(_zend_value, ref_) - 0usize];
2018    ["Offset of field: _zend_value::ast"][::std::mem::offset_of!(_zend_value, ast) - 0usize];
2019    ["Offset of field: _zend_value::zv"][::std::mem::offset_of!(_zend_value, zv) - 0usize];
2020    ["Offset of field: _zend_value::ptr"][::std::mem::offset_of!(_zend_value, ptr) - 0usize];
2021    ["Offset of field: _zend_value::ce"][::std::mem::offset_of!(_zend_value, ce) - 0usize];
2022    ["Offset of field: _zend_value::func"][::std::mem::offset_of!(_zend_value, func) - 0usize];
2023    ["Offset of field: _zend_value::ww"][::std::mem::offset_of!(_zend_value, ww) - 0usize];
2024};
2025pub type zend_value = _zend_value;
2026#[repr(C)]
2027#[derive(Copy, Clone)]
2028pub struct _zval_struct {
2029    pub value: zend_value,
2030    pub u1: _zval_u1,
2031    pub u2: _zval_u2,
2032}
2033#[repr(C)]
2034#[derive(Copy, Clone)]
2035pub union _zval_u1 {
2036    pub type_info: u32,
2037    pub v: _zval_u1_v,
2038}
2039#[repr(C)]
2040#[derive(Copy, Clone)]
2041pub struct _zval_u1_v {
2042    pub type_: u8,
2043    pub type_flags: u8,
2044    pub u: _zval_u1_v_u,
2045}
2046#[repr(C)]
2047#[derive(Copy, Clone)]
2048pub union _zval_u1_v_u {
2049    pub extra: u16,
2050}
2051#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2052const _: () = {
2053    ["Size of _zval_u1_v_u"][::std::mem::size_of::<_zval_u1_v_u>() - 2usize];
2054    ["Alignment of _zval_u1_v_u"][::std::mem::align_of::<_zval_u1_v_u>() - 2usize];
2055    ["Offset of field: _zval_u1_v_u::extra"][::std::mem::offset_of!(_zval_u1_v_u, extra) - 0usize];
2056};
2057#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2058const _: () = {
2059    ["Size of _zval_u1_v"][::std::mem::size_of::<_zval_u1_v>() - 4usize];
2060    ["Alignment of _zval_u1_v"][::std::mem::align_of::<_zval_u1_v>() - 2usize];
2061    ["Offset of field: _zval_u1_v::type_"][::std::mem::offset_of!(_zval_u1_v, type_) - 0usize];
2062    ["Offset of field: _zval_u1_v::type_flags"]
2063        [::std::mem::offset_of!(_zval_u1_v, type_flags) - 1usize];
2064    ["Offset of field: _zval_u1_v::u"][::std::mem::offset_of!(_zval_u1_v, u) - 2usize];
2065};
2066#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2067const _: () = {
2068    ["Size of _zval_u1"][::std::mem::size_of::<_zval_u1>() - 4usize];
2069    ["Alignment of _zval_u1"][::std::mem::align_of::<_zval_u1>() - 4usize];
2070    ["Offset of field: _zval_u1::type_info"][::std::mem::offset_of!(_zval_u1, type_info) - 0usize];
2071    ["Offset of field: _zval_u1::v"][::std::mem::offset_of!(_zval_u1, v) - 0usize];
2072};
2073#[repr(C)]
2074#[derive(Copy, Clone)]
2075pub union _zval_u2 {
2076    pub next: u32,
2077    pub cache_slot: u32,
2078    pub opline_num: u32,
2079    pub lineno: u32,
2080    pub num_args: u32,
2081    pub fe_pos: u32,
2082    pub fe_iter_idx: u32,
2083    pub guard: u32,
2084    pub constant_flags: u32,
2085    pub extra: u32,
2086}
2087#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2088const _: () = {
2089    ["Size of _zval_u2"][::std::mem::size_of::<_zval_u2>() - 4usize];
2090    ["Alignment of _zval_u2"][::std::mem::align_of::<_zval_u2>() - 4usize];
2091    ["Offset of field: _zval_u2::next"][::std::mem::offset_of!(_zval_u2, next) - 0usize];
2092    ["Offset of field: _zval_u2::cache_slot"]
2093        [::std::mem::offset_of!(_zval_u2, cache_slot) - 0usize];
2094    ["Offset of field: _zval_u2::opline_num"]
2095        [::std::mem::offset_of!(_zval_u2, opline_num) - 0usize];
2096    ["Offset of field: _zval_u2::lineno"][::std::mem::offset_of!(_zval_u2, lineno) - 0usize];
2097    ["Offset of field: _zval_u2::num_args"][::std::mem::offset_of!(_zval_u2, num_args) - 0usize];
2098    ["Offset of field: _zval_u2::fe_pos"][::std::mem::offset_of!(_zval_u2, fe_pos) - 0usize];
2099    ["Offset of field: _zval_u2::fe_iter_idx"]
2100        [::std::mem::offset_of!(_zval_u2, fe_iter_idx) - 0usize];
2101    ["Offset of field: _zval_u2::guard"][::std::mem::offset_of!(_zval_u2, guard) - 0usize];
2102    ["Offset of field: _zval_u2::constant_flags"]
2103        [::std::mem::offset_of!(_zval_u2, constant_flags) - 0usize];
2104    ["Offset of field: _zval_u2::extra"][::std::mem::offset_of!(_zval_u2, extra) - 0usize];
2105};
2106#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2107const _: () = {
2108    ["Size of _zval_struct"][::std::mem::size_of::<_zval_struct>() - 16usize];
2109    ["Alignment of _zval_struct"][::std::mem::align_of::<_zval_struct>() - 8usize];
2110    ["Offset of field: _zval_struct::value"][::std::mem::offset_of!(_zval_struct, value) - 0usize];
2111    ["Offset of field: _zval_struct::u1"][::std::mem::offset_of!(_zval_struct, u1) - 8usize];
2112    ["Offset of field: _zval_struct::u2"][::std::mem::offset_of!(_zval_struct, u2) - 12usize];
2113};
2114#[repr(C)]
2115#[derive(Copy, Clone)]
2116pub struct _zend_refcounted_h {
2117    pub refcount: u32,
2118    pub u: _zend_refcounted_h_u,
2119}
2120#[repr(C)]
2121#[derive(Copy, Clone)]
2122pub union _zend_refcounted_h_u {
2123    pub type_info: u32,
2124}
2125#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2126const _: () = {
2127    ["Size of _zend_refcounted_h_u"][::std::mem::size_of::<_zend_refcounted_h_u>() - 4usize];
2128    ["Alignment of _zend_refcounted_h_u"][::std::mem::align_of::<_zend_refcounted_h_u>() - 4usize];
2129    ["Offset of field: _zend_refcounted_h_u::type_info"]
2130        [::std::mem::offset_of!(_zend_refcounted_h_u, type_info) - 0usize];
2131};
2132#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2133const _: () = {
2134    ["Size of _zend_refcounted_h"][::std::mem::size_of::<_zend_refcounted_h>() - 8usize];
2135    ["Alignment of _zend_refcounted_h"][::std::mem::align_of::<_zend_refcounted_h>() - 4usize];
2136    ["Offset of field: _zend_refcounted_h::refcount"]
2137        [::std::mem::offset_of!(_zend_refcounted_h, refcount) - 0usize];
2138    ["Offset of field: _zend_refcounted_h::u"]
2139        [::std::mem::offset_of!(_zend_refcounted_h, u) - 4usize];
2140};
2141pub type zend_refcounted_h = _zend_refcounted_h;
2142#[repr(C)]
2143#[derive(Copy, Clone)]
2144pub struct _zend_refcounted {
2145    pub gc: zend_refcounted_h,
2146}
2147#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2148const _: () = {
2149    ["Size of _zend_refcounted"][::std::mem::size_of::<_zend_refcounted>() - 8usize];
2150    ["Alignment of _zend_refcounted"][::std::mem::align_of::<_zend_refcounted>() - 4usize];
2151    ["Offset of field: _zend_refcounted::gc"]
2152        [::std::mem::offset_of!(_zend_refcounted, gc) - 0usize];
2153};
2154#[repr(C)]
2155#[derive(Copy, Clone)]
2156pub struct _zend_string {
2157    pub gc: zend_refcounted_h,
2158    pub h: zend_ulong,
2159    pub len: usize,
2160    pub val: [::std::os::raw::c_char; 1usize],
2161}
2162#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2163const _: () = {
2164    ["Size of _zend_string"][::std::mem::size_of::<_zend_string>() - 32usize];
2165    ["Alignment of _zend_string"][::std::mem::align_of::<_zend_string>() - 8usize];
2166    ["Offset of field: _zend_string::gc"][::std::mem::offset_of!(_zend_string, gc) - 0usize];
2167    ["Offset of field: _zend_string::h"][::std::mem::offset_of!(_zend_string, h) - 8usize];
2168    ["Offset of field: _zend_string::len"][::std::mem::offset_of!(_zend_string, len) - 16usize];
2169    ["Offset of field: _zend_string::val"][::std::mem::offset_of!(_zend_string, val) - 24usize];
2170};
2171#[repr(C)]
2172#[derive(Copy, Clone)]
2173pub struct _Bucket {
2174    pub val: zval,
2175    pub h: zend_ulong,
2176    pub key: *mut zend_string,
2177}
2178#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2179const _: () = {
2180    ["Size of _Bucket"][::std::mem::size_of::<_Bucket>() - 32usize];
2181    ["Alignment of _Bucket"][::std::mem::align_of::<_Bucket>() - 8usize];
2182    ["Offset of field: _Bucket::val"][::std::mem::offset_of!(_Bucket, val) - 0usize];
2183    ["Offset of field: _Bucket::h"][::std::mem::offset_of!(_Bucket, h) - 16usize];
2184    ["Offset of field: _Bucket::key"][::std::mem::offset_of!(_Bucket, key) - 24usize];
2185};
2186pub type Bucket = _Bucket;
2187pub type HashTable = _zend_array;
2188#[repr(C)]
2189#[derive(Copy, Clone)]
2190pub struct _zend_array {
2191    pub gc: zend_refcounted_h,
2192    pub u: _zend_array__flags,
2193    pub nTableMask: u32,
2194    pub __bindgen_anon_1: _zend_array__data,
2195    pub nNumUsed: u32,
2196    pub nNumOfElements: u32,
2197    pub nTableSize: u32,
2198    pub nInternalPointer: u32,
2199    pub nNextFreeElement: zend_long,
2200    pub pDestructor: dtor_func_t,
2201}
2202#[repr(C)]
2203#[derive(Copy, Clone)]
2204pub union _zend_array__flags {
2205    pub v: _zend_array__bindgen_ty_1__bindgen_ty_1,
2206    pub flags: u32,
2207}
2208#[repr(C)]
2209#[derive(Debug, Copy, Clone)]
2210pub struct _zend_array__bindgen_ty_1__bindgen_ty_1 {
2211    pub flags: u8,
2212    pub _unused: u8,
2213    pub nIteratorsCount: u8,
2214    pub _unused2: u8,
2215}
2216#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2217const _: () = {
2218    ["Size of _zend_array__bindgen_ty_1__bindgen_ty_1"]
2219        [::std::mem::size_of::<_zend_array__bindgen_ty_1__bindgen_ty_1>() - 4usize];
2220    ["Alignment of _zend_array__bindgen_ty_1__bindgen_ty_1"]
2221        [::std::mem::align_of::<_zend_array__bindgen_ty_1__bindgen_ty_1>() - 1usize];
2222    ["Offset of field: _zend_array__bindgen_ty_1__bindgen_ty_1::flags"]
2223        [::std::mem::offset_of!(_zend_array__bindgen_ty_1__bindgen_ty_1, flags) - 0usize];
2224    ["Offset of field: _zend_array__bindgen_ty_1__bindgen_ty_1::_unused"]
2225        [::std::mem::offset_of!(_zend_array__bindgen_ty_1__bindgen_ty_1, _unused) - 1usize];
2226    ["Offset of field: _zend_array__bindgen_ty_1__bindgen_ty_1::nIteratorsCount"]
2227        [::std::mem::offset_of!(_zend_array__bindgen_ty_1__bindgen_ty_1, nIteratorsCount) - 2usize];
2228    ["Offset of field: _zend_array__bindgen_ty_1__bindgen_ty_1::_unused2"]
2229        [::std::mem::offset_of!(_zend_array__bindgen_ty_1__bindgen_ty_1, _unused2) - 3usize];
2230};
2231#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2232const _: () = {
2233    ["Size of _zend_array__flags"][::std::mem::size_of::<_zend_array__flags>() - 4usize];
2234    ["Alignment of _zend_array__flags"][::std::mem::align_of::<_zend_array__flags>() - 4usize];
2235    ["Offset of field: _zend_array__flags::v"]
2236        [::std::mem::offset_of!(_zend_array__flags, v) - 0usize];
2237    ["Offset of field: _zend_array__flags::flags"]
2238        [::std::mem::offset_of!(_zend_array__flags, flags) - 0usize];
2239};
2240#[repr(C)]
2241#[derive(Copy, Clone)]
2242pub union _zend_array__data {
2243    pub arHash: *mut u32,
2244    pub arData: *mut Bucket,
2245    pub arPacked: *mut zval,
2246}
2247#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2248const _: () = {
2249    ["Size of _zend_array__data"][::std::mem::size_of::<_zend_array__data>() - 8usize];
2250    ["Alignment of _zend_array__data"][::std::mem::align_of::<_zend_array__data>() - 8usize];
2251    ["Offset of field: _zend_array__data::arHash"]
2252        [::std::mem::offset_of!(_zend_array__data, arHash) - 0usize];
2253    ["Offset of field: _zend_array__data::arData"]
2254        [::std::mem::offset_of!(_zend_array__data, arData) - 0usize];
2255    ["Offset of field: _zend_array__data::arPacked"]
2256        [::std::mem::offset_of!(_zend_array__data, arPacked) - 0usize];
2257};
2258#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2259const _: () = {
2260    ["Size of _zend_array"][::std::mem::size_of::<_zend_array>() - 56usize];
2261    ["Alignment of _zend_array"][::std::mem::align_of::<_zend_array>() - 8usize];
2262    ["Offset of field: _zend_array::gc"][::std::mem::offset_of!(_zend_array, gc) - 0usize];
2263    ["Offset of field: _zend_array::u"][::std::mem::offset_of!(_zend_array, u) - 8usize];
2264    ["Offset of field: _zend_array::nTableMask"]
2265        [::std::mem::offset_of!(_zend_array, nTableMask) - 12usize];
2266    ["Offset of field: _zend_array::nNumUsed"]
2267        [::std::mem::offset_of!(_zend_array, nNumUsed) - 24usize];
2268    ["Offset of field: _zend_array::nNumOfElements"]
2269        [::std::mem::offset_of!(_zend_array, nNumOfElements) - 28usize];
2270    ["Offset of field: _zend_array::nTableSize"]
2271        [::std::mem::offset_of!(_zend_array, nTableSize) - 32usize];
2272    ["Offset of field: _zend_array::nInternalPointer"]
2273        [::std::mem::offset_of!(_zend_array, nInternalPointer) - 36usize];
2274    ["Offset of field: _zend_array::nNextFreeElement"]
2275        [::std::mem::offset_of!(_zend_array, nNextFreeElement) - 40usize];
2276    ["Offset of field: _zend_array::pDestructor"]
2277        [::std::mem::offset_of!(_zend_array, pDestructor) - 48usize];
2278};
2279pub type HashPosition = u32;
2280#[repr(C)]
2281#[derive(Debug, Copy, Clone)]
2282pub struct _HashTableIterator {
2283    pub ht: *mut HashTable,
2284    pub pos: HashPosition,
2285    pub next_copy: u32,
2286}
2287#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2288const _: () = {
2289    ["Size of _HashTableIterator"][::std::mem::size_of::<_HashTableIterator>() - 16usize];
2290    ["Alignment of _HashTableIterator"][::std::mem::align_of::<_HashTableIterator>() - 8usize];
2291    ["Offset of field: _HashTableIterator::ht"]
2292        [::std::mem::offset_of!(_HashTableIterator, ht) - 0usize];
2293    ["Offset of field: _HashTableIterator::pos"]
2294        [::std::mem::offset_of!(_HashTableIterator, pos) - 8usize];
2295    ["Offset of field: _HashTableIterator::next_copy"]
2296        [::std::mem::offset_of!(_HashTableIterator, next_copy) - 12usize];
2297};
2298pub type HashTableIterator = _HashTableIterator;
2299#[repr(C)]
2300#[derive(Copy, Clone)]
2301pub struct _zend_object {
2302    pub gc: zend_refcounted_h,
2303    pub handle: u32,
2304    pub extra_flags: u32,
2305    pub ce: *mut zend_class_entry,
2306    pub handlers: *const zend_object_handlers,
2307    pub properties: *mut HashTable,
2308    pub properties_table: [zval; 1usize],
2309}
2310#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2311const _: () = {
2312    ["Size of _zend_object"][::std::mem::size_of::<_zend_object>() - 56usize];
2313    ["Alignment of _zend_object"][::std::mem::align_of::<_zend_object>() - 8usize];
2314    ["Offset of field: _zend_object::gc"][::std::mem::offset_of!(_zend_object, gc) - 0usize];
2315    ["Offset of field: _zend_object::handle"]
2316        [::std::mem::offset_of!(_zend_object, handle) - 8usize];
2317    ["Offset of field: _zend_object::extra_flags"]
2318        [::std::mem::offset_of!(_zend_object, extra_flags) - 12usize];
2319    ["Offset of field: _zend_object::ce"][::std::mem::offset_of!(_zend_object, ce) - 16usize];
2320    ["Offset of field: _zend_object::handlers"]
2321        [::std::mem::offset_of!(_zend_object, handlers) - 24usize];
2322    ["Offset of field: _zend_object::properties"]
2323        [::std::mem::offset_of!(_zend_object, properties) - 32usize];
2324    ["Offset of field: _zend_object::properties_table"]
2325        [::std::mem::offset_of!(_zend_object, properties_table) - 40usize];
2326};
2327#[repr(C)]
2328#[derive(Copy, Clone)]
2329pub struct _zend_resource {
2330    pub gc: zend_refcounted_h,
2331    pub handle: zend_long,
2332    pub type_: ::std::os::raw::c_int,
2333    pub ptr: *mut ::std::os::raw::c_void,
2334}
2335#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2336const _: () = {
2337    ["Size of _zend_resource"][::std::mem::size_of::<_zend_resource>() - 32usize];
2338    ["Alignment of _zend_resource"][::std::mem::align_of::<_zend_resource>() - 8usize];
2339    ["Offset of field: _zend_resource::gc"][::std::mem::offset_of!(_zend_resource, gc) - 0usize];
2340    ["Offset of field: _zend_resource::handle"]
2341        [::std::mem::offset_of!(_zend_resource, handle) - 8usize];
2342    ["Offset of field: _zend_resource::type_"]
2343        [::std::mem::offset_of!(_zend_resource, type_) - 16usize];
2344    ["Offset of field: _zend_resource::ptr"][::std::mem::offset_of!(_zend_resource, ptr) - 24usize];
2345};
2346#[repr(C)]
2347#[derive(Debug, Copy, Clone)]
2348pub struct zend_property_info_list {
2349    pub num: usize,
2350    pub num_allocated: usize,
2351    pub ptr: [*mut _zend_property_info; 1usize],
2352}
2353#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2354const _: () = {
2355    ["Size of zend_property_info_list"][::std::mem::size_of::<zend_property_info_list>() - 24usize];
2356    ["Alignment of zend_property_info_list"]
2357        [::std::mem::align_of::<zend_property_info_list>() - 8usize];
2358    ["Offset of field: zend_property_info_list::num"]
2359        [::std::mem::offset_of!(zend_property_info_list, num) - 0usize];
2360    ["Offset of field: zend_property_info_list::num_allocated"]
2361        [::std::mem::offset_of!(zend_property_info_list, num_allocated) - 8usize];
2362    ["Offset of field: zend_property_info_list::ptr"]
2363        [::std::mem::offset_of!(zend_property_info_list, ptr) - 16usize];
2364};
2365#[repr(C)]
2366#[derive(Copy, Clone)]
2367pub union zend_property_info_source_list {
2368    pub ptr: *mut _zend_property_info,
2369    pub list: usize,
2370}
2371#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2372const _: () = {
2373    ["Size of zend_property_info_source_list"]
2374        [::std::mem::size_of::<zend_property_info_source_list>() - 8usize];
2375    ["Alignment of zend_property_info_source_list"]
2376        [::std::mem::align_of::<zend_property_info_source_list>() - 8usize];
2377    ["Offset of field: zend_property_info_source_list::ptr"]
2378        [::std::mem::offset_of!(zend_property_info_source_list, ptr) - 0usize];
2379    ["Offset of field: zend_property_info_source_list::list"]
2380        [::std::mem::offset_of!(zend_property_info_source_list, list) - 0usize];
2381};
2382#[repr(C)]
2383#[derive(Copy, Clone)]
2384pub struct _zend_reference {
2385    pub gc: zend_refcounted_h,
2386    pub val: zval,
2387    pub sources: zend_property_info_source_list,
2388}
2389#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2390const _: () = {
2391    ["Size of _zend_reference"][::std::mem::size_of::<_zend_reference>() - 32usize];
2392    ["Alignment of _zend_reference"][::std::mem::align_of::<_zend_reference>() - 8usize];
2393    ["Offset of field: _zend_reference::gc"][::std::mem::offset_of!(_zend_reference, gc) - 0usize];
2394    ["Offset of field: _zend_reference::val"]
2395        [::std::mem::offset_of!(_zend_reference, val) - 8usize];
2396    ["Offset of field: _zend_reference::sources"]
2397        [::std::mem::offset_of!(_zend_reference, sources) - 24usize];
2398};
2399#[repr(C)]
2400#[derive(Copy, Clone)]
2401pub struct _zend_ast_ref {
2402    pub gc: zend_refcounted_h,
2403}
2404#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2405const _: () = {
2406    ["Size of _zend_ast_ref"][::std::mem::size_of::<_zend_ast_ref>() - 8usize];
2407    ["Alignment of _zend_ast_ref"][::std::mem::align_of::<_zend_ast_ref>() - 4usize];
2408    ["Offset of field: _zend_ast_ref::gc"][::std::mem::offset_of!(_zend_ast_ref, gc) - 0usize];
2409};
2410pub mod _zend_oom_state {
2411    #[allow(unused_imports)]
2412    use super::*;
2413    pub type Type = ::std::os::raw::c_uint;
2414    pub const ZEND_OOM_STATE_NONE: Type = 0;
2415    pub const ZEND_OOM_STATE_PENDING: Type = 1;
2416    pub const ZEND_OOM_STATE_HANDLING: Type = 2;
2417    pub const ZEND_OOM_STATE_HANDLED: Type = 3;
2418}
2419pub use self::_zend_oom_state::Type as zend_oom_state;
2420#[repr(C)]
2421#[derive(Debug, Copy, Clone)]
2422pub struct _zend_oom_info {
2423    pub state: zend_oom_state,
2424    pub lineno: u32,
2425    pub message: *mut zend_string,
2426    pub filename: *mut zend_string,
2427}
2428#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2429const _: () = {
2430    ["Size of _zend_oom_info"][::std::mem::size_of::<_zend_oom_info>() - 24usize];
2431    ["Alignment of _zend_oom_info"][::std::mem::align_of::<_zend_oom_info>() - 8usize];
2432    ["Offset of field: _zend_oom_info::state"]
2433        [::std::mem::offset_of!(_zend_oom_info, state) - 0usize];
2434    ["Offset of field: _zend_oom_info::lineno"]
2435        [::std::mem::offset_of!(_zend_oom_info, lineno) - 4usize];
2436    ["Offset of field: _zend_oom_info::message"]
2437        [::std::mem::offset_of!(_zend_oom_info, message) - 8usize];
2438    ["Offset of field: _zend_oom_info::filename"]
2439        [::std::mem::offset_of!(_zend_oom_info, filename) - 16usize];
2440};
2441pub type zend_oom_info = _zend_oom_info;
2442#[repr(C)]
2443#[derive(Debug, Copy, Clone)]
2444pub struct _zend_leak_info {
2445    pub addr: *mut ::std::os::raw::c_void,
2446    pub size: usize,
2447    pub filename: *const ::std::os::raw::c_char,
2448    pub orig_filename: *const ::std::os::raw::c_char,
2449    pub lineno: u32,
2450    pub orig_lineno: u32,
2451}
2452#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2453const _: () = {
2454    ["Size of _zend_leak_info"][::std::mem::size_of::<_zend_leak_info>() - 40usize];
2455    ["Alignment of _zend_leak_info"][::std::mem::align_of::<_zend_leak_info>() - 8usize];
2456    ["Offset of field: _zend_leak_info::addr"]
2457        [::std::mem::offset_of!(_zend_leak_info, addr) - 0usize];
2458    ["Offset of field: _zend_leak_info::size"]
2459        [::std::mem::offset_of!(_zend_leak_info, size) - 8usize];
2460    ["Offset of field: _zend_leak_info::filename"]
2461        [::std::mem::offset_of!(_zend_leak_info, filename) - 16usize];
2462    ["Offset of field: _zend_leak_info::orig_filename"]
2463        [::std::mem::offset_of!(_zend_leak_info, orig_filename) - 24usize];
2464    ["Offset of field: _zend_leak_info::lineno"]
2465        [::std::mem::offset_of!(_zend_leak_info, lineno) - 32usize];
2466    ["Offset of field: _zend_leak_info::orig_lineno"]
2467        [::std::mem::offset_of!(_zend_leak_info, orig_lineno) - 36usize];
2468};
2469pub type zend_leak_info = _zend_leak_info;
2470#[repr(C)]
2471#[derive(Debug, Copy, Clone)]
2472pub struct _zend_mm_debug_info {
2473    pub size: usize,
2474    pub filename: *const ::std::os::raw::c_char,
2475    pub orig_filename: *const ::std::os::raw::c_char,
2476    pub lineno: u32,
2477    pub orig_lineno: u32,
2478}
2479#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2480const _: () = {
2481    ["Size of _zend_mm_debug_info"][::std::mem::size_of::<_zend_mm_debug_info>() - 32usize];
2482    ["Alignment of _zend_mm_debug_info"][::std::mem::align_of::<_zend_mm_debug_info>() - 8usize];
2483    ["Offset of field: _zend_mm_debug_info::size"]
2484        [::std::mem::offset_of!(_zend_mm_debug_info, size) - 0usize];
2485    ["Offset of field: _zend_mm_debug_info::filename"]
2486        [::std::mem::offset_of!(_zend_mm_debug_info, filename) - 8usize];
2487    ["Offset of field: _zend_mm_debug_info::orig_filename"]
2488        [::std::mem::offset_of!(_zend_mm_debug_info, orig_filename) - 16usize];
2489    ["Offset of field: _zend_mm_debug_info::lineno"]
2490        [::std::mem::offset_of!(_zend_mm_debug_info, lineno) - 24usize];
2491    ["Offset of field: _zend_mm_debug_info::orig_lineno"]
2492        [::std::mem::offset_of!(_zend_mm_debug_info, orig_lineno) - 28usize];
2493};
2494pub type zend_mm_debug_info = _zend_mm_debug_info;
2495#[repr(C)]
2496#[derive(Debug)]
2497pub struct _zend_mm_heap {
2498    _unused: [u8; 0],
2499}
2500pub type zend_mm_heap = _zend_mm_heap;
2501pub type zend_mm_storage = _zend_mm_storage;
2502pub type zend_mm_chunk_alloc_t = ::std::option::Option<
2503    unsafe extern "C" fn(
2504        storage: *mut zend_mm_storage,
2505        size: usize,
2506        alignment: usize,
2507    ) -> *mut ::std::os::raw::c_void,
2508>;
2509pub type zend_mm_chunk_free_t = ::std::option::Option<
2510    unsafe extern "C" fn(
2511        storage: *mut zend_mm_storage,
2512        chunk: *mut ::std::os::raw::c_void,
2513        size: usize,
2514    ),
2515>;
2516pub type zend_mm_chunk_truncate_t = ::std::option::Option<
2517    unsafe extern "C" fn(
2518        storage: *mut zend_mm_storage,
2519        chunk: *mut ::std::os::raw::c_void,
2520        old_size: usize,
2521        new_size: usize,
2522    ) -> bool,
2523>;
2524pub type zend_mm_chunk_extend_t = ::std::option::Option<
2525    unsafe extern "C" fn(
2526        storage: *mut zend_mm_storage,
2527        chunk: *mut ::std::os::raw::c_void,
2528        old_size: usize,
2529        new_size: usize,
2530    ) -> bool,
2531>;
2532#[repr(C)]
2533#[derive(Debug, Copy, Clone)]
2534pub struct _zend_mm_handlers {
2535    pub chunk_alloc: zend_mm_chunk_alloc_t,
2536    pub chunk_free: zend_mm_chunk_free_t,
2537    pub chunk_truncate: zend_mm_chunk_truncate_t,
2538    pub chunk_extend: zend_mm_chunk_extend_t,
2539}
2540#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2541const _: () = {
2542    ["Size of _zend_mm_handlers"][::std::mem::size_of::<_zend_mm_handlers>() - 32usize];
2543    ["Alignment of _zend_mm_handlers"][::std::mem::align_of::<_zend_mm_handlers>() - 8usize];
2544    ["Offset of field: _zend_mm_handlers::chunk_alloc"]
2545        [::std::mem::offset_of!(_zend_mm_handlers, chunk_alloc) - 0usize];
2546    ["Offset of field: _zend_mm_handlers::chunk_free"]
2547        [::std::mem::offset_of!(_zend_mm_handlers, chunk_free) - 8usize];
2548    ["Offset of field: _zend_mm_handlers::chunk_truncate"]
2549        [::std::mem::offset_of!(_zend_mm_handlers, chunk_truncate) - 16usize];
2550    ["Offset of field: _zend_mm_handlers::chunk_extend"]
2551        [::std::mem::offset_of!(_zend_mm_handlers, chunk_extend) - 24usize];
2552};
2553pub type zend_mm_handlers = _zend_mm_handlers;
2554#[repr(C)]
2555#[derive(Debug, Copy, Clone)]
2556pub struct _zend_mm_storage {
2557    pub handlers: zend_mm_handlers,
2558    pub data: *mut ::std::os::raw::c_void,
2559}
2560#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2561const _: () = {
2562    ["Size of _zend_mm_storage"][::std::mem::size_of::<_zend_mm_storage>() - 40usize];
2563    ["Alignment of _zend_mm_storage"][::std::mem::align_of::<_zend_mm_storage>() - 8usize];
2564    ["Offset of field: _zend_mm_storage::handlers"]
2565        [::std::mem::offset_of!(_zend_mm_storage, handlers) - 0usize];
2566    ["Offset of field: _zend_mm_storage::data"]
2567        [::std::mem::offset_of!(_zend_mm_storage, data) - 32usize];
2568};
2569#[repr(C)]
2570#[derive(Debug, Copy, Clone)]
2571pub struct _zend_llist_element {
2572    pub next: *mut _zend_llist_element,
2573    pub prev: *mut _zend_llist_element,
2574    pub data: [::std::os::raw::c_char; 1usize],
2575}
2576#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2577const _: () = {
2578    ["Size of _zend_llist_element"][::std::mem::size_of::<_zend_llist_element>() - 24usize];
2579    ["Alignment of _zend_llist_element"][::std::mem::align_of::<_zend_llist_element>() - 8usize];
2580    ["Offset of field: _zend_llist_element::next"]
2581        [::std::mem::offset_of!(_zend_llist_element, next) - 0usize];
2582    ["Offset of field: _zend_llist_element::prev"]
2583        [::std::mem::offset_of!(_zend_llist_element, prev) - 8usize];
2584    ["Offset of field: _zend_llist_element::data"]
2585        [::std::mem::offset_of!(_zend_llist_element, data) - 16usize];
2586};
2587pub type zend_llist_element = _zend_llist_element;
2588pub type llist_dtor_func_t =
2589    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
2590pub type llist_compare_func_t = ::std::option::Option<
2591    unsafe extern "C" fn(
2592        arg1: *mut *const zend_llist_element,
2593        arg2: *mut *const zend_llist_element,
2594    ) -> ::std::os::raw::c_int,
2595>;
2596pub type llist_apply_with_args_func_t = ::std::option::Option<
2597    unsafe extern "C" fn(
2598        data: *mut ::std::os::raw::c_void,
2599        num_args: ::std::os::raw::c_int,
2600        args: *mut __va_list_tag,
2601    ),
2602>;
2603pub type llist_apply_with_arg_func_t = ::std::option::Option<
2604    unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, arg: *mut ::std::os::raw::c_void),
2605>;
2606pub type llist_apply_func_t =
2607    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
2608#[repr(C)]
2609#[derive(Debug, Copy, Clone)]
2610pub struct _zend_llist {
2611    pub head: *mut zend_llist_element,
2612    pub tail: *mut zend_llist_element,
2613    pub count: usize,
2614    pub size: usize,
2615    pub dtor: llist_dtor_func_t,
2616    pub persistent: ::std::os::raw::c_uchar,
2617    pub traverse_ptr: *mut zend_llist_element,
2618}
2619#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2620const _: () = {
2621    ["Size of _zend_llist"][::std::mem::size_of::<_zend_llist>() - 56usize];
2622    ["Alignment of _zend_llist"][::std::mem::align_of::<_zend_llist>() - 8usize];
2623    ["Offset of field: _zend_llist::head"][::std::mem::offset_of!(_zend_llist, head) - 0usize];
2624    ["Offset of field: _zend_llist::tail"][::std::mem::offset_of!(_zend_llist, tail) - 8usize];
2625    ["Offset of field: _zend_llist::count"][::std::mem::offset_of!(_zend_llist, count) - 16usize];
2626    ["Offset of field: _zend_llist::size"][::std::mem::offset_of!(_zend_llist, size) - 24usize];
2627    ["Offset of field: _zend_llist::dtor"][::std::mem::offset_of!(_zend_llist, dtor) - 32usize];
2628    ["Offset of field: _zend_llist::persistent"]
2629        [::std::mem::offset_of!(_zend_llist, persistent) - 40usize];
2630    ["Offset of field: _zend_llist::traverse_ptr"]
2631        [::std::mem::offset_of!(_zend_llist, traverse_ptr) - 48usize];
2632};
2633pub type zend_llist = _zend_llist;
2634pub type zend_llist_position = *mut zend_llist_element;
2635pub type socklen_t = __socklen_t;
2636pub type zend_hrtime_t = u64;
2637#[repr(C)]
2638#[derive(Debug, Copy, Clone)]
2639pub struct _zend_gc_status {
2640    pub active: bool,
2641    pub gc_protected: bool,
2642    pub full: bool,
2643    pub runs: u32,
2644    pub collected: u32,
2645    pub threshold: u32,
2646    pub buf_size: u32,
2647    pub num_roots: u32,
2648    pub application_time: zend_hrtime_t,
2649    pub collector_time: zend_hrtime_t,
2650    pub dtor_time: zend_hrtime_t,
2651    pub free_time: zend_hrtime_t,
2652}
2653#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2654const _: () = {
2655    ["Size of _zend_gc_status"][::std::mem::size_of::<_zend_gc_status>() - 56usize];
2656    ["Alignment of _zend_gc_status"][::std::mem::align_of::<_zend_gc_status>() - 8usize];
2657    ["Offset of field: _zend_gc_status::active"]
2658        [::std::mem::offset_of!(_zend_gc_status, active) - 0usize];
2659    ["Offset of field: _zend_gc_status::gc_protected"]
2660        [::std::mem::offset_of!(_zend_gc_status, gc_protected) - 1usize];
2661    ["Offset of field: _zend_gc_status::full"]
2662        [::std::mem::offset_of!(_zend_gc_status, full) - 2usize];
2663    ["Offset of field: _zend_gc_status::runs"]
2664        [::std::mem::offset_of!(_zend_gc_status, runs) - 4usize];
2665    ["Offset of field: _zend_gc_status::collected"]
2666        [::std::mem::offset_of!(_zend_gc_status, collected) - 8usize];
2667    ["Offset of field: _zend_gc_status::threshold"]
2668        [::std::mem::offset_of!(_zend_gc_status, threshold) - 12usize];
2669    ["Offset of field: _zend_gc_status::buf_size"]
2670        [::std::mem::offset_of!(_zend_gc_status, buf_size) - 16usize];
2671    ["Offset of field: _zend_gc_status::num_roots"]
2672        [::std::mem::offset_of!(_zend_gc_status, num_roots) - 20usize];
2673    ["Offset of field: _zend_gc_status::application_time"]
2674        [::std::mem::offset_of!(_zend_gc_status, application_time) - 24usize];
2675    ["Offset of field: _zend_gc_status::collector_time"]
2676        [::std::mem::offset_of!(_zend_gc_status, collector_time) - 32usize];
2677    ["Offset of field: _zend_gc_status::dtor_time"]
2678        [::std::mem::offset_of!(_zend_gc_status, dtor_time) - 40usize];
2679    ["Offset of field: _zend_gc_status::free_time"]
2680        [::std::mem::offset_of!(_zend_gc_status, free_time) - 48usize];
2681};
2682pub type zend_gc_status = _zend_gc_status;
2683#[repr(C)]
2684#[derive(Debug, Copy, Clone)]
2685pub struct zend_get_gc_buffer {
2686    pub cur: *mut zval,
2687    pub end: *mut zval,
2688    pub start: *mut zval,
2689}
2690#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2691const _: () = {
2692    ["Size of zend_get_gc_buffer"][::std::mem::size_of::<zend_get_gc_buffer>() - 24usize];
2693    ["Alignment of zend_get_gc_buffer"][::std::mem::align_of::<zend_get_gc_buffer>() - 8usize];
2694    ["Offset of field: zend_get_gc_buffer::cur"]
2695        [::std::mem::offset_of!(zend_get_gc_buffer, cur) - 0usize];
2696    ["Offset of field: zend_get_gc_buffer::end"]
2697        [::std::mem::offset_of!(zend_get_gc_buffer, end) - 8usize];
2698    ["Offset of field: zend_get_gc_buffer::start"]
2699        [::std::mem::offset_of!(zend_get_gc_buffer, start) - 16usize];
2700};
2701pub type zend_string_copy_storage_func_t = ::std::option::Option<unsafe extern "C" fn()>;
2702pub type zend_new_interned_string_func_t =
2703    ::std::option::Option<unsafe extern "C" fn(str_: *mut zend_string) -> *mut zend_string>;
2704pub type zend_string_init_interned_func_t = ::std::option::Option<
2705    unsafe extern "C" fn(
2706        str_: *const ::std::os::raw::c_char,
2707        size: usize,
2708        permanent: bool,
2709    ) -> *mut zend_string,
2710>;
2711pub type zend_string_init_existing_interned_func_t = ::std::option::Option<
2712    unsafe extern "C" fn(
2713        str_: *const ::std::os::raw::c_char,
2714        size: usize,
2715        permanent: bool,
2716    ) -> *mut zend_string,
2717>;
2718pub mod _zend_known_string_id {
2719    #[allow(unused_imports)]
2720    use super::*;
2721    pub type Type = ::std::os::raw::c_uint;
2722    pub const ZEND_STR_FILE: Type = 0;
2723    pub const ZEND_STR_LINE: Type = 1;
2724    pub const ZEND_STR_FUNCTION: Type = 2;
2725    pub const ZEND_STR_CLASS: Type = 3;
2726    pub const ZEND_STR_OBJECT: Type = 4;
2727    pub const ZEND_STR_TYPE: Type = 5;
2728    pub const ZEND_STR_OBJECT_OPERATOR: Type = 6;
2729    pub const ZEND_STR_PAAMAYIM_NEKUDOTAYIM: Type = 7;
2730    pub const ZEND_STR_ARGS: Type = 8;
2731    pub const ZEND_STR_UNKNOWN: Type = 9;
2732    pub const ZEND_STR_UNKNOWN_CAPITALIZED: Type = 10;
2733    pub const ZEND_STR_EXIT: Type = 11;
2734    pub const ZEND_STR_CLONE: Type = 12;
2735    pub const ZEND_STR_EVAL: Type = 13;
2736    pub const ZEND_STR_INCLUDE: Type = 14;
2737    pub const ZEND_STR_REQUIRE: Type = 15;
2738    pub const ZEND_STR_INCLUDE_ONCE: Type = 16;
2739    pub const ZEND_STR_REQUIRE_ONCE: Type = 17;
2740    pub const ZEND_STR_SCALAR: Type = 18;
2741    pub const ZEND_STR_ERROR_REPORTING: Type = 19;
2742    pub const ZEND_STR_STATIC: Type = 20;
2743    pub const ZEND_STR_THIS: Type = 21;
2744    pub const ZEND_STR_VALUE: Type = 22;
2745    pub const ZEND_STR_KEY: Type = 23;
2746    pub const ZEND_STR_MAGIC_INVOKE: Type = 24;
2747    pub const ZEND_STR_PREVIOUS: Type = 25;
2748    pub const ZEND_STR_CODE: Type = 26;
2749    pub const ZEND_STR_MESSAGE: Type = 27;
2750    pub const ZEND_STR_SEVERITY: Type = 28;
2751    pub const ZEND_STR_STRING: Type = 29;
2752    pub const ZEND_STR_TRACE: Type = 30;
2753    pub const ZEND_STR_SCHEME: Type = 31;
2754    pub const ZEND_STR_HOST: Type = 32;
2755    pub const ZEND_STR_PORT: Type = 33;
2756    pub const ZEND_STR_USER: Type = 34;
2757    pub const ZEND_STR_USERNAME: Type = 35;
2758    pub const ZEND_STR_PASS: Type = 36;
2759    pub const ZEND_STR_PASSWORD: Type = 37;
2760    pub const ZEND_STR_PATH: Type = 38;
2761    pub const ZEND_STR_QUERY: Type = 39;
2762    pub const ZEND_STR_FRAGMENT: Type = 40;
2763    pub const ZEND_STR_NULL: Type = 41;
2764    pub const ZEND_STR_BOOLEAN: Type = 42;
2765    pub const ZEND_STR_INTEGER: Type = 43;
2766    pub const ZEND_STR_DOUBLE: Type = 44;
2767    pub const ZEND_STR_ARRAY: Type = 45;
2768    pub const ZEND_STR_RESOURCE: Type = 46;
2769    pub const ZEND_STR_CLOSED_RESOURCE: Type = 47;
2770    pub const ZEND_STR_NAME: Type = 48;
2771    pub const ZEND_STR_ARGV: Type = 49;
2772    pub const ZEND_STR_ARGC: Type = 50;
2773    pub const ZEND_STR_ARRAY_CAPITALIZED: Type = 51;
2774    pub const ZEND_STR_BOOL: Type = 52;
2775    pub const ZEND_STR_INT: Type = 53;
2776    pub const ZEND_STR_FLOAT: Type = 54;
2777    pub const ZEND_STR_CALLABLE: Type = 55;
2778    pub const ZEND_STR_ITERABLE: Type = 56;
2779    pub const ZEND_STR_VOID: Type = 57;
2780    pub const ZEND_STR_NEVER: Type = 58;
2781    pub const ZEND_STR_FALSE: Type = 59;
2782    pub const ZEND_STR_TRUE: Type = 60;
2783    pub const ZEND_STR_NULL_LOWERCASE: Type = 61;
2784    pub const ZEND_STR_MIXED: Type = 62;
2785    pub const ZEND_STR_TRAVERSABLE: Type = 63;
2786    pub const ZEND_STR_SELF: Type = 64;
2787    pub const ZEND_STR_PARENT: Type = 65;
2788    pub const ZEND_STR_SLEEP: Type = 66;
2789    pub const ZEND_STR_WAKEUP: Type = 67;
2790    pub const ZEND_STR_CASES: Type = 68;
2791    pub const ZEND_STR_FROM: Type = 69;
2792    pub const ZEND_STR_TRYFROM: Type = 70;
2793    pub const ZEND_STR_TRYFROM_LOWERCASE: Type = 71;
2794    pub const ZEND_STR_AUTOGLOBAL_SERVER: Type = 72;
2795    pub const ZEND_STR_AUTOGLOBAL_ENV: Type = 73;
2796    pub const ZEND_STR_AUTOGLOBAL_REQUEST: Type = 74;
2797    pub const ZEND_STR_COUNT: Type = 75;
2798    pub const ZEND_STR_SENSITIVEPARAMETER: Type = 76;
2799    pub const ZEND_STR_CONST_EXPR_PLACEHOLDER: Type = 77;
2800    pub const ZEND_STR_DEPRECATED_CAPITALIZED: Type = 78;
2801    pub const ZEND_STR_SINCE: Type = 79;
2802    pub const ZEND_STR_GET: Type = 80;
2803    pub const ZEND_STR_SET: Type = 81;
2804    pub const ZEND_STR_8_DOT_0: Type = 82;
2805    pub const ZEND_STR_8_DOT_1: Type = 83;
2806    pub const ZEND_STR_8_DOT_2: Type = 84;
2807    pub const ZEND_STR_8_DOT_3: Type = 85;
2808    pub const ZEND_STR_8_DOT_4: Type = 86;
2809    pub const ZEND_STR_8_DOT_5: Type = 87;
2810    pub const ZEND_STR_LAST_KNOWN: Type = 88;
2811}
2812pub use self::_zend_known_string_id::Type as zend_known_string_id;
2813pub mod zend_hash_key_type {
2814    #[allow(unused_imports)]
2815    use super::*;
2816    pub type Type = ::std::os::raw::c_uint;
2817    pub const HASH_KEY_IS_STRING: Type = 1;
2818    pub const HASH_KEY_IS_LONG: Type = 2;
2819    pub const HASH_KEY_NON_EXISTENT: Type = 3;
2820}
2821#[repr(C)]
2822#[derive(Debug, Copy, Clone)]
2823pub struct _zend_hash_key {
2824    pub h: zend_ulong,
2825    pub key: *mut zend_string,
2826}
2827#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2828const _: () = {
2829    ["Size of _zend_hash_key"][::std::mem::size_of::<_zend_hash_key>() - 16usize];
2830    ["Alignment of _zend_hash_key"][::std::mem::align_of::<_zend_hash_key>() - 8usize];
2831    ["Offset of field: _zend_hash_key::h"][::std::mem::offset_of!(_zend_hash_key, h) - 0usize];
2832    ["Offset of field: _zend_hash_key::key"][::std::mem::offset_of!(_zend_hash_key, key) - 8usize];
2833};
2834pub type zend_hash_key = _zend_hash_key;
2835pub type merge_checker_func_t = ::std::option::Option<
2836    unsafe extern "C" fn(
2837        target_ht: *mut HashTable,
2838        source_data: *mut zval,
2839        hash_key: *mut zend_hash_key,
2840        pParam: *mut ::std::os::raw::c_void,
2841    ) -> bool,
2842>;
2843pub type apply_func_t =
2844    ::std::option::Option<unsafe extern "C" fn(pDest: *mut zval) -> ::std::os::raw::c_int>;
2845pub type apply_func_arg_t = ::std::option::Option<
2846    unsafe extern "C" fn(
2847        pDest: *mut zval,
2848        argument: *mut ::std::os::raw::c_void,
2849    ) -> ::std::os::raw::c_int,
2850>;
2851pub type apply_func_args_t = ::std::option::Option<
2852    unsafe extern "C" fn(
2853        pDest: *mut zval,
2854        num_args: ::std::os::raw::c_int,
2855        args: *mut __va_list_tag,
2856        hash_key: *mut zend_hash_key,
2857    ) -> ::std::os::raw::c_int,
2858>;
2859pub type bucket_compare_func_t = ::std::option::Option<
2860    unsafe extern "C" fn(a: *mut Bucket, b: *mut Bucket) -> ::std::os::raw::c_int,
2861>;
2862pub mod _zend_ast_kind {
2863    #[allow(unused_imports)]
2864    use super::*;
2865    pub type Type = u16;
2866    pub const ZEND_AST_ZVAL: Type = 64;
2867    pub const ZEND_AST_CONSTANT: Type = 65;
2868    pub const ZEND_AST_OP_ARRAY: Type = 66;
2869    pub const ZEND_AST_ZNODE: Type = 67;
2870    pub const ZEND_AST_FUNC_DECL: Type = 68;
2871    pub const ZEND_AST_CLOSURE: Type = 69;
2872    pub const ZEND_AST_METHOD: Type = 70;
2873    pub const ZEND_AST_CLASS: Type = 71;
2874    pub const ZEND_AST_ARROW_FUNC: Type = 72;
2875    pub const ZEND_AST_PROPERTY_HOOK: Type = 73;
2876    pub const ZEND_AST_ARG_LIST: Type = 128;
2877    pub const ZEND_AST_ARRAY: Type = 129;
2878    pub const ZEND_AST_ENCAPS_LIST: Type = 130;
2879    pub const ZEND_AST_EXPR_LIST: Type = 131;
2880    pub const ZEND_AST_STMT_LIST: Type = 132;
2881    pub const ZEND_AST_IF: Type = 133;
2882    pub const ZEND_AST_SWITCH_LIST: Type = 134;
2883    pub const ZEND_AST_CATCH_LIST: Type = 135;
2884    pub const ZEND_AST_PARAM_LIST: Type = 136;
2885    pub const ZEND_AST_CLOSURE_USES: Type = 137;
2886    pub const ZEND_AST_PROP_DECL: Type = 138;
2887    pub const ZEND_AST_CONST_DECL: Type = 139;
2888    pub const ZEND_AST_CLASS_CONST_DECL: Type = 140;
2889    pub const ZEND_AST_NAME_LIST: Type = 141;
2890    pub const ZEND_AST_TRAIT_ADAPTATIONS: Type = 142;
2891    pub const ZEND_AST_USE: Type = 143;
2892    pub const ZEND_AST_TYPE_UNION: Type = 144;
2893    pub const ZEND_AST_TYPE_INTERSECTION: Type = 145;
2894    pub const ZEND_AST_ATTRIBUTE_LIST: Type = 146;
2895    pub const ZEND_AST_ATTRIBUTE_GROUP: Type = 147;
2896    pub const ZEND_AST_MATCH_ARM_LIST: Type = 148;
2897    pub const ZEND_AST_MODIFIER_LIST: Type = 149;
2898    pub const ZEND_AST_MAGIC_CONST: Type = 0;
2899    pub const ZEND_AST_TYPE: Type = 1;
2900    pub const ZEND_AST_CONSTANT_CLASS: Type = 2;
2901    pub const ZEND_AST_CALLABLE_CONVERT: Type = 3;
2902    pub const ZEND_AST_VAR: Type = 256;
2903    pub const ZEND_AST_CONST: Type = 257;
2904    pub const ZEND_AST_UNPACK: Type = 258;
2905    pub const ZEND_AST_UNARY_PLUS: Type = 259;
2906    pub const ZEND_AST_UNARY_MINUS: Type = 260;
2907    pub const ZEND_AST_CAST: Type = 261;
2908    pub const ZEND_AST_CAST_VOID: Type = 262;
2909    pub const ZEND_AST_EMPTY: Type = 263;
2910    pub const ZEND_AST_ISSET: Type = 264;
2911    pub const ZEND_AST_SILENCE: Type = 265;
2912    pub const ZEND_AST_SHELL_EXEC: Type = 266;
2913    pub const ZEND_AST_PRINT: Type = 267;
2914    pub const ZEND_AST_INCLUDE_OR_EVAL: Type = 268;
2915    pub const ZEND_AST_UNARY_OP: Type = 269;
2916    pub const ZEND_AST_PRE_INC: Type = 270;
2917    pub const ZEND_AST_PRE_DEC: Type = 271;
2918    pub const ZEND_AST_POST_INC: Type = 272;
2919    pub const ZEND_AST_POST_DEC: Type = 273;
2920    pub const ZEND_AST_YIELD_FROM: Type = 274;
2921    pub const ZEND_AST_CLASS_NAME: Type = 275;
2922    pub const ZEND_AST_GLOBAL: Type = 276;
2923    pub const ZEND_AST_UNSET: Type = 277;
2924    pub const ZEND_AST_RETURN: Type = 278;
2925    pub const ZEND_AST_LABEL: Type = 279;
2926    pub const ZEND_AST_REF: Type = 280;
2927    pub const ZEND_AST_HALT_COMPILER: Type = 281;
2928    pub const ZEND_AST_ECHO: Type = 282;
2929    pub const ZEND_AST_THROW: Type = 283;
2930    pub const ZEND_AST_GOTO: Type = 284;
2931    pub const ZEND_AST_BREAK: Type = 285;
2932    pub const ZEND_AST_CONTINUE: Type = 286;
2933    pub const ZEND_AST_PROPERTY_HOOK_SHORT_BODY: Type = 287;
2934    pub const ZEND_AST_DIM: Type = 512;
2935    pub const ZEND_AST_PROP: Type = 513;
2936    pub const ZEND_AST_NULLSAFE_PROP: Type = 514;
2937    pub const ZEND_AST_STATIC_PROP: Type = 515;
2938    pub const ZEND_AST_CALL: Type = 516;
2939    pub const ZEND_AST_CLASS_CONST: Type = 517;
2940    pub const ZEND_AST_ASSIGN: Type = 518;
2941    pub const ZEND_AST_ASSIGN_REF: Type = 519;
2942    pub const ZEND_AST_ASSIGN_OP: Type = 520;
2943    pub const ZEND_AST_BINARY_OP: Type = 521;
2944    pub const ZEND_AST_GREATER: Type = 522;
2945    pub const ZEND_AST_GREATER_EQUAL: Type = 523;
2946    pub const ZEND_AST_AND: Type = 524;
2947    pub const ZEND_AST_OR: Type = 525;
2948    pub const ZEND_AST_ARRAY_ELEM: Type = 526;
2949    pub const ZEND_AST_NEW: Type = 527;
2950    pub const ZEND_AST_INSTANCEOF: Type = 528;
2951    pub const ZEND_AST_YIELD: Type = 529;
2952    pub const ZEND_AST_COALESCE: Type = 530;
2953    pub const ZEND_AST_ASSIGN_COALESCE: Type = 531;
2954    pub const ZEND_AST_STATIC: Type = 532;
2955    pub const ZEND_AST_WHILE: Type = 533;
2956    pub const ZEND_AST_DO_WHILE: Type = 534;
2957    pub const ZEND_AST_IF_ELEM: Type = 535;
2958    pub const ZEND_AST_SWITCH: Type = 536;
2959    pub const ZEND_AST_SWITCH_CASE: Type = 537;
2960    pub const ZEND_AST_DECLARE: Type = 538;
2961    pub const ZEND_AST_USE_TRAIT: Type = 539;
2962    pub const ZEND_AST_TRAIT_PRECEDENCE: Type = 540;
2963    pub const ZEND_AST_METHOD_REFERENCE: Type = 541;
2964    pub const ZEND_AST_NAMESPACE: Type = 542;
2965    pub const ZEND_AST_USE_ELEM: Type = 543;
2966    pub const ZEND_AST_TRAIT_ALIAS: Type = 544;
2967    pub const ZEND_AST_GROUP_USE: Type = 545;
2968    pub const ZEND_AST_ATTRIBUTE: Type = 546;
2969    pub const ZEND_AST_MATCH: Type = 547;
2970    pub const ZEND_AST_MATCH_ARM: Type = 548;
2971    pub const ZEND_AST_NAMED_ARG: Type = 549;
2972    pub const ZEND_AST_PARENT_PROPERTY_HOOK_CALL: Type = 550;
2973    pub const ZEND_AST_PIPE: Type = 551;
2974    pub const ZEND_AST_METHOD_CALL: Type = 768;
2975    pub const ZEND_AST_NULLSAFE_METHOD_CALL: Type = 769;
2976    pub const ZEND_AST_STATIC_CALL: Type = 770;
2977    pub const ZEND_AST_CONDITIONAL: Type = 771;
2978    pub const ZEND_AST_TRY: Type = 772;
2979    pub const ZEND_AST_CATCH: Type = 773;
2980    pub const ZEND_AST_PROP_GROUP: Type = 774;
2981    pub const ZEND_AST_CONST_ELEM: Type = 775;
2982    pub const ZEND_AST_CLASS_CONST_GROUP: Type = 776;
2983    pub const ZEND_AST_CONST_ENUM_INIT: Type = 777;
2984    pub const ZEND_AST_FOR: Type = 1024;
2985    pub const ZEND_AST_FOREACH: Type = 1025;
2986    pub const ZEND_AST_ENUM_CASE: Type = 1026;
2987    pub const ZEND_AST_PROP_ELEM: Type = 1027;
2988    pub const ZEND_AST_PARAM: Type = 1536;
2989}
2990pub type zend_ast_kind = u16;
2991pub type zend_ast_attr = u16;
2992#[repr(C)]
2993#[derive(Debug, Copy, Clone)]
2994pub struct _zend_ast {
2995    pub kind: zend_ast_kind,
2996    pub attr: zend_ast_attr,
2997    pub lineno: u32,
2998    pub child: [*mut zend_ast; 1usize],
2999}
3000#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3001const _: () = {
3002    ["Size of _zend_ast"][::std::mem::size_of::<_zend_ast>() - 16usize];
3003    ["Alignment of _zend_ast"][::std::mem::align_of::<_zend_ast>() - 8usize];
3004    ["Offset of field: _zend_ast::kind"][::std::mem::offset_of!(_zend_ast, kind) - 0usize];
3005    ["Offset of field: _zend_ast::attr"][::std::mem::offset_of!(_zend_ast, attr) - 2usize];
3006    ["Offset of field: _zend_ast::lineno"][::std::mem::offset_of!(_zend_ast, lineno) - 4usize];
3007    ["Offset of field: _zend_ast::child"][::std::mem::offset_of!(_zend_ast, child) - 8usize];
3008};
3009#[repr(C)]
3010#[derive(Debug, Copy, Clone)]
3011pub struct _zend_ast_list {
3012    pub kind: zend_ast_kind,
3013    pub attr: zend_ast_attr,
3014    pub lineno: u32,
3015    pub children: u32,
3016    pub child: [*mut zend_ast; 1usize],
3017}
3018#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3019const _: () = {
3020    ["Size of _zend_ast_list"][::std::mem::size_of::<_zend_ast_list>() - 24usize];
3021    ["Alignment of _zend_ast_list"][::std::mem::align_of::<_zend_ast_list>() - 8usize];
3022    ["Offset of field: _zend_ast_list::kind"]
3023        [::std::mem::offset_of!(_zend_ast_list, kind) - 0usize];
3024    ["Offset of field: _zend_ast_list::attr"]
3025        [::std::mem::offset_of!(_zend_ast_list, attr) - 2usize];
3026    ["Offset of field: _zend_ast_list::lineno"]
3027        [::std::mem::offset_of!(_zend_ast_list, lineno) - 4usize];
3028    ["Offset of field: _zend_ast_list::children"]
3029        [::std::mem::offset_of!(_zend_ast_list, children) - 8usize];
3030    ["Offset of field: _zend_ast_list::child"]
3031        [::std::mem::offset_of!(_zend_ast_list, child) - 16usize];
3032};
3033pub type zend_ast_list = _zend_ast_list;
3034#[repr(C)]
3035#[derive(Copy, Clone)]
3036pub struct _zend_ast_zval {
3037    pub kind: zend_ast_kind,
3038    pub attr: zend_ast_attr,
3039    pub val: zval,
3040}
3041#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3042const _: () = {
3043    ["Size of _zend_ast_zval"][::std::mem::size_of::<_zend_ast_zval>() - 24usize];
3044    ["Alignment of _zend_ast_zval"][::std::mem::align_of::<_zend_ast_zval>() - 8usize];
3045    ["Offset of field: _zend_ast_zval::kind"]
3046        [::std::mem::offset_of!(_zend_ast_zval, kind) - 0usize];
3047    ["Offset of field: _zend_ast_zval::attr"]
3048        [::std::mem::offset_of!(_zend_ast_zval, attr) - 2usize];
3049    ["Offset of field: _zend_ast_zval::val"][::std::mem::offset_of!(_zend_ast_zval, val) - 8usize];
3050};
3051pub type zend_ast_zval = _zend_ast_zval;
3052pub type zend_op_array = _zend_op_array;
3053#[repr(C)]
3054#[derive(Debug, Copy, Clone)]
3055pub struct _zend_ast_op_array {
3056    pub kind: zend_ast_kind,
3057    pub attr: zend_ast_attr,
3058    pub lineno: u32,
3059    pub op_array: *mut zend_op_array,
3060}
3061#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3062const _: () = {
3063    ["Size of _zend_ast_op_array"][::std::mem::size_of::<_zend_ast_op_array>() - 16usize];
3064    ["Alignment of _zend_ast_op_array"][::std::mem::align_of::<_zend_ast_op_array>() - 8usize];
3065    ["Offset of field: _zend_ast_op_array::kind"]
3066        [::std::mem::offset_of!(_zend_ast_op_array, kind) - 0usize];
3067    ["Offset of field: _zend_ast_op_array::attr"]
3068        [::std::mem::offset_of!(_zend_ast_op_array, attr) - 2usize];
3069    ["Offset of field: _zend_ast_op_array::lineno"]
3070        [::std::mem::offset_of!(_zend_ast_op_array, lineno) - 4usize];
3071    ["Offset of field: _zend_ast_op_array::op_array"]
3072        [::std::mem::offset_of!(_zend_ast_op_array, op_array) - 8usize];
3073};
3074pub type zend_ast_op_array = _zend_ast_op_array;
3075#[repr(C)]
3076#[derive(Debug, Copy, Clone)]
3077pub struct _zend_ast_decl {
3078    pub kind: zend_ast_kind,
3079    pub attr: zend_ast_attr,
3080    pub start_lineno: u32,
3081    pub end_lineno: u32,
3082    pub flags: u32,
3083    pub doc_comment: *mut zend_string,
3084    pub name: *mut zend_string,
3085    pub child: [*mut zend_ast; 5usize],
3086}
3087#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3088const _: () = {
3089    ["Size of _zend_ast_decl"][::std::mem::size_of::<_zend_ast_decl>() - 72usize];
3090    ["Alignment of _zend_ast_decl"][::std::mem::align_of::<_zend_ast_decl>() - 8usize];
3091    ["Offset of field: _zend_ast_decl::kind"]
3092        [::std::mem::offset_of!(_zend_ast_decl, kind) - 0usize];
3093    ["Offset of field: _zend_ast_decl::attr"]
3094        [::std::mem::offset_of!(_zend_ast_decl, attr) - 2usize];
3095    ["Offset of field: _zend_ast_decl::start_lineno"]
3096        [::std::mem::offset_of!(_zend_ast_decl, start_lineno) - 4usize];
3097    ["Offset of field: _zend_ast_decl::end_lineno"]
3098        [::std::mem::offset_of!(_zend_ast_decl, end_lineno) - 8usize];
3099    ["Offset of field: _zend_ast_decl::flags"]
3100        [::std::mem::offset_of!(_zend_ast_decl, flags) - 12usize];
3101    ["Offset of field: _zend_ast_decl::doc_comment"]
3102        [::std::mem::offset_of!(_zend_ast_decl, doc_comment) - 16usize];
3103    ["Offset of field: _zend_ast_decl::name"]
3104        [::std::mem::offset_of!(_zend_ast_decl, name) - 24usize];
3105    ["Offset of field: _zend_ast_decl::child"]
3106        [::std::mem::offset_of!(_zend_ast_decl, child) - 32usize];
3107};
3108pub type zend_ast_decl = _zend_ast_decl;
3109#[repr(C)]
3110#[derive(Debug, Copy, Clone)]
3111pub struct _zend_ast_fcc {
3112    pub kind: zend_ast_kind,
3113    pub attr: zend_ast_attr,
3114    pub lineno: u32,
3115    pub fptr__ptr: *mut zend_function,
3116}
3117#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3118const _: () = {
3119    ["Size of _zend_ast_fcc"][::std::mem::size_of::<_zend_ast_fcc>() - 16usize];
3120    ["Alignment of _zend_ast_fcc"][::std::mem::align_of::<_zend_ast_fcc>() - 8usize];
3121    ["Offset of field: _zend_ast_fcc::kind"][::std::mem::offset_of!(_zend_ast_fcc, kind) - 0usize];
3122    ["Offset of field: _zend_ast_fcc::attr"][::std::mem::offset_of!(_zend_ast_fcc, attr) - 2usize];
3123    ["Offset of field: _zend_ast_fcc::lineno"]
3124        [::std::mem::offset_of!(_zend_ast_fcc, lineno) - 4usize];
3125    ["Offset of field: _zend_ast_fcc::fptr__ptr"]
3126        [::std::mem::offset_of!(_zend_ast_fcc, fptr__ptr) - 8usize];
3127};
3128pub type zend_ast_fcc = _zend_ast_fcc;
3129pub type zend_ast_process_t = ::std::option::Option<unsafe extern "C" fn(ast: *mut zend_ast)>;
3130#[repr(C)]
3131#[derive(Debug, Copy, Clone)]
3132pub struct zend_ast_evaluate_ctx {
3133    pub had_side_effects: bool,
3134}
3135#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3136const _: () = {
3137    ["Size of zend_ast_evaluate_ctx"][::std::mem::size_of::<zend_ast_evaluate_ctx>() - 1usize];
3138    ["Alignment of zend_ast_evaluate_ctx"]
3139        [::std::mem::align_of::<zend_ast_evaluate_ctx>() - 1usize];
3140    ["Offset of field: zend_ast_evaluate_ctx::had_side_effects"]
3141        [::std::mem::offset_of!(zend_ast_evaluate_ctx, had_side_effects) - 0usize];
3142};
3143pub type zend_ast_apply_func = ::std::option::Option<
3144    unsafe extern "C" fn(ast_ptr: *mut *mut zend_ast, context: *mut ::std::os::raw::c_void),
3145>;
3146pub type zend_object_iterator = _zend_object_iterator;
3147#[repr(C)]
3148#[derive(Debug, Copy, Clone)]
3149pub struct _zend_object_iterator_funcs {
3150    pub dtor: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
3151    pub valid:
3152        ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator) -> zend_result>,
3153    pub get_current_data:
3154        ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator) -> *mut zval>,
3155    pub get_current_key: ::std::option::Option<
3156        unsafe extern "C" fn(iter: *mut zend_object_iterator, key: *mut zval),
3157    >,
3158    pub move_forward: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
3159    pub rewind: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
3160    pub invalidate_current:
3161        ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
3162    pub get_gc: ::std::option::Option<
3163        unsafe extern "C" fn(
3164            iter: *mut zend_object_iterator,
3165            table: *mut *mut zval,
3166            n: *mut ::std::os::raw::c_int,
3167        ) -> *mut HashTable,
3168    >,
3169}
3170#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3171const _: () = {
3172    ["Size of _zend_object_iterator_funcs"]
3173        [::std::mem::size_of::<_zend_object_iterator_funcs>() - 64usize];
3174    ["Alignment of _zend_object_iterator_funcs"]
3175        [::std::mem::align_of::<_zend_object_iterator_funcs>() - 8usize];
3176    ["Offset of field: _zend_object_iterator_funcs::dtor"]
3177        [::std::mem::offset_of!(_zend_object_iterator_funcs, dtor) - 0usize];
3178    ["Offset of field: _zend_object_iterator_funcs::valid"]
3179        [::std::mem::offset_of!(_zend_object_iterator_funcs, valid) - 8usize];
3180    ["Offset of field: _zend_object_iterator_funcs::get_current_data"]
3181        [::std::mem::offset_of!(_zend_object_iterator_funcs, get_current_data) - 16usize];
3182    ["Offset of field: _zend_object_iterator_funcs::get_current_key"]
3183        [::std::mem::offset_of!(_zend_object_iterator_funcs, get_current_key) - 24usize];
3184    ["Offset of field: _zend_object_iterator_funcs::move_forward"]
3185        [::std::mem::offset_of!(_zend_object_iterator_funcs, move_forward) - 32usize];
3186    ["Offset of field: _zend_object_iterator_funcs::rewind"]
3187        [::std::mem::offset_of!(_zend_object_iterator_funcs, rewind) - 40usize];
3188    ["Offset of field: _zend_object_iterator_funcs::invalidate_current"]
3189        [::std::mem::offset_of!(_zend_object_iterator_funcs, invalidate_current) - 48usize];
3190    ["Offset of field: _zend_object_iterator_funcs::get_gc"]
3191        [::std::mem::offset_of!(_zend_object_iterator_funcs, get_gc) - 56usize];
3192};
3193pub type zend_object_iterator_funcs = _zend_object_iterator_funcs;
3194#[repr(C)]
3195#[derive(Copy, Clone)]
3196pub struct _zend_object_iterator {
3197    pub std: zend_object,
3198    pub data: zval,
3199    pub funcs: *const zend_object_iterator_funcs,
3200    pub index: zend_ulong,
3201}
3202#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3203const _: () = {
3204    ["Size of _zend_object_iterator"][::std::mem::size_of::<_zend_object_iterator>() - 88usize];
3205    ["Alignment of _zend_object_iterator"]
3206        [::std::mem::align_of::<_zend_object_iterator>() - 8usize];
3207    ["Offset of field: _zend_object_iterator::std"]
3208        [::std::mem::offset_of!(_zend_object_iterator, std) - 0usize];
3209    ["Offset of field: _zend_object_iterator::data"]
3210        [::std::mem::offset_of!(_zend_object_iterator, data) - 56usize];
3211    ["Offset of field: _zend_object_iterator::funcs"]
3212        [::std::mem::offset_of!(_zend_object_iterator, funcs) - 72usize];
3213    ["Offset of field: _zend_object_iterator::index"]
3214        [::std::mem::offset_of!(_zend_object_iterator, index) - 80usize];
3215};
3216#[repr(C)]
3217#[derive(Debug, Copy, Clone)]
3218pub struct _zend_class_iterator_funcs {
3219    pub zf_new_iterator: *mut zend_function,
3220    pub zf_valid: *mut zend_function,
3221    pub zf_current: *mut zend_function,
3222    pub zf_key: *mut zend_function,
3223    pub zf_next: *mut zend_function,
3224    pub zf_rewind: *mut zend_function,
3225}
3226#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3227const _: () = {
3228    ["Size of _zend_class_iterator_funcs"]
3229        [::std::mem::size_of::<_zend_class_iterator_funcs>() - 48usize];
3230    ["Alignment of _zend_class_iterator_funcs"]
3231        [::std::mem::align_of::<_zend_class_iterator_funcs>() - 8usize];
3232    ["Offset of field: _zend_class_iterator_funcs::zf_new_iterator"]
3233        [::std::mem::offset_of!(_zend_class_iterator_funcs, zf_new_iterator) - 0usize];
3234    ["Offset of field: _zend_class_iterator_funcs::zf_valid"]
3235        [::std::mem::offset_of!(_zend_class_iterator_funcs, zf_valid) - 8usize];
3236    ["Offset of field: _zend_class_iterator_funcs::zf_current"]
3237        [::std::mem::offset_of!(_zend_class_iterator_funcs, zf_current) - 16usize];
3238    ["Offset of field: _zend_class_iterator_funcs::zf_key"]
3239        [::std::mem::offset_of!(_zend_class_iterator_funcs, zf_key) - 24usize];
3240    ["Offset of field: _zend_class_iterator_funcs::zf_next"]
3241        [::std::mem::offset_of!(_zend_class_iterator_funcs, zf_next) - 32usize];
3242    ["Offset of field: _zend_class_iterator_funcs::zf_rewind"]
3243        [::std::mem::offset_of!(_zend_class_iterator_funcs, zf_rewind) - 40usize];
3244};
3245pub type zend_class_iterator_funcs = _zend_class_iterator_funcs;
3246#[repr(C)]
3247#[derive(Debug, Copy, Clone)]
3248pub struct _zend_class_arrayaccess_funcs {
3249    pub zf_offsetget: *mut zend_function,
3250    pub zf_offsetexists: *mut zend_function,
3251    pub zf_offsetset: *mut zend_function,
3252    pub zf_offsetunset: *mut zend_function,
3253}
3254#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3255const _: () = {
3256    ["Size of _zend_class_arrayaccess_funcs"]
3257        [::std::mem::size_of::<_zend_class_arrayaccess_funcs>() - 32usize];
3258    ["Alignment of _zend_class_arrayaccess_funcs"]
3259        [::std::mem::align_of::<_zend_class_arrayaccess_funcs>() - 8usize];
3260    ["Offset of field: _zend_class_arrayaccess_funcs::zf_offsetget"]
3261        [::std::mem::offset_of!(_zend_class_arrayaccess_funcs, zf_offsetget) - 0usize];
3262    ["Offset of field: _zend_class_arrayaccess_funcs::zf_offsetexists"]
3263        [::std::mem::offset_of!(_zend_class_arrayaccess_funcs, zf_offsetexists) - 8usize];
3264    ["Offset of field: _zend_class_arrayaccess_funcs::zf_offsetset"]
3265        [::std::mem::offset_of!(_zend_class_arrayaccess_funcs, zf_offsetset) - 16usize];
3266    ["Offset of field: _zend_class_arrayaccess_funcs::zf_offsetunset"]
3267        [::std::mem::offset_of!(_zend_class_arrayaccess_funcs, zf_offsetunset) - 24usize];
3268};
3269pub type zend_class_arrayaccess_funcs = _zend_class_arrayaccess_funcs;
3270#[repr(C)]
3271#[derive(Debug, Copy, Clone)]
3272pub struct stat {
3273    pub st_dev: __dev_t,
3274    pub st_ino: __ino_t,
3275    pub st_nlink: __nlink_t,
3276    pub st_mode: __mode_t,
3277    pub st_uid: __uid_t,
3278    pub st_gid: __gid_t,
3279    pub __pad0: ::std::os::raw::c_int,
3280    pub st_rdev: __dev_t,
3281    pub st_size: __off_t,
3282    pub st_blksize: __blksize_t,
3283    pub st_blocks: __blkcnt_t,
3284    pub st_atim: timespec,
3285    pub st_mtim: timespec,
3286    pub st_ctim: timespec,
3287    pub __glibc_reserved: [__syscall_slong_t; 3usize],
3288}
3289#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3290const _: () = {
3291    ["Size of stat"][::std::mem::size_of::<stat>() - 144usize];
3292    ["Alignment of stat"][::std::mem::align_of::<stat>() - 8usize];
3293    ["Offset of field: stat::st_dev"][::std::mem::offset_of!(stat, st_dev) - 0usize];
3294    ["Offset of field: stat::st_ino"][::std::mem::offset_of!(stat, st_ino) - 8usize];
3295    ["Offset of field: stat::st_nlink"][::std::mem::offset_of!(stat, st_nlink) - 16usize];
3296    ["Offset of field: stat::st_mode"][::std::mem::offset_of!(stat, st_mode) - 24usize];
3297    ["Offset of field: stat::st_uid"][::std::mem::offset_of!(stat, st_uid) - 28usize];
3298    ["Offset of field: stat::st_gid"][::std::mem::offset_of!(stat, st_gid) - 32usize];
3299    ["Offset of field: stat::__pad0"][::std::mem::offset_of!(stat, __pad0) - 36usize];
3300    ["Offset of field: stat::st_rdev"][::std::mem::offset_of!(stat, st_rdev) - 40usize];
3301    ["Offset of field: stat::st_size"][::std::mem::offset_of!(stat, st_size) - 48usize];
3302    ["Offset of field: stat::st_blksize"][::std::mem::offset_of!(stat, st_blksize) - 56usize];
3303    ["Offset of field: stat::st_blocks"][::std::mem::offset_of!(stat, st_blocks) - 64usize];
3304    ["Offset of field: stat::st_atim"][::std::mem::offset_of!(stat, st_atim) - 72usize];
3305    ["Offset of field: stat::st_mtim"][::std::mem::offset_of!(stat, st_mtim) - 88usize];
3306    ["Offset of field: stat::st_ctim"][::std::mem::offset_of!(stat, st_ctim) - 104usize];
3307    ["Offset of field: stat::__glibc_reserved"]
3308        [::std::mem::offset_of!(stat, __glibc_reserved) - 120usize];
3309};
3310pub type zend_stream_fsizer_t =
3311    ::std::option::Option<unsafe extern "C" fn(handle: *mut ::std::os::raw::c_void) -> usize>;
3312pub type zend_stream_reader_t = ::std::option::Option<
3313    unsafe extern "C" fn(
3314        handle: *mut ::std::os::raw::c_void,
3315        buf: *mut ::std::os::raw::c_char,
3316        len: usize,
3317    ) -> isize,
3318>;
3319pub type zend_stream_closer_t =
3320    ::std::option::Option<unsafe extern "C" fn(handle: *mut ::std::os::raw::c_void)>;
3321pub mod zend_stream_type {
3322    #[allow(unused_imports)]
3323    use super::*;
3324    pub type Type = ::std::os::raw::c_uint;
3325    pub const ZEND_HANDLE_FILENAME: Type = 0;
3326    pub const ZEND_HANDLE_FP: Type = 1;
3327    pub const ZEND_HANDLE_STREAM: Type = 2;
3328}
3329#[repr(C)]
3330#[derive(Debug, Copy, Clone)]
3331pub struct _zend_stream {
3332    pub handle: *mut ::std::os::raw::c_void,
3333    pub isatty: ::std::os::raw::c_int,
3334    pub reader: zend_stream_reader_t,
3335    pub fsizer: zend_stream_fsizer_t,
3336    pub closer: zend_stream_closer_t,
3337}
3338#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3339const _: () = {
3340    ["Size of _zend_stream"][::std::mem::size_of::<_zend_stream>() - 40usize];
3341    ["Alignment of _zend_stream"][::std::mem::align_of::<_zend_stream>() - 8usize];
3342    ["Offset of field: _zend_stream::handle"]
3343        [::std::mem::offset_of!(_zend_stream, handle) - 0usize];
3344    ["Offset of field: _zend_stream::isatty"]
3345        [::std::mem::offset_of!(_zend_stream, isatty) - 8usize];
3346    ["Offset of field: _zend_stream::reader"]
3347        [::std::mem::offset_of!(_zend_stream, reader) - 16usize];
3348    ["Offset of field: _zend_stream::fsizer"]
3349        [::std::mem::offset_of!(_zend_stream, fsizer) - 24usize];
3350    ["Offset of field: _zend_stream::closer"]
3351        [::std::mem::offset_of!(_zend_stream, closer) - 32usize];
3352};
3353pub type zend_stream = _zend_stream;
3354#[repr(C)]
3355#[derive(Copy, Clone)]
3356pub struct _zend_file_handle {
3357    pub handle: _zend_file_handle__bindgen_ty_1,
3358    pub filename: *mut zend_string,
3359    pub opened_path: *mut zend_string,
3360    pub type_: u8,
3361    pub primary_script: bool,
3362    pub in_list: bool,
3363    pub buf: *mut ::std::os::raw::c_char,
3364    pub len: usize,
3365}
3366#[repr(C)]
3367#[derive(Copy, Clone)]
3368pub union _zend_file_handle__bindgen_ty_1 {
3369    pub fp: *mut FILE,
3370    pub stream: zend_stream,
3371}
3372#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3373const _: () = {
3374    ["Size of _zend_file_handle__bindgen_ty_1"]
3375        [::std::mem::size_of::<_zend_file_handle__bindgen_ty_1>() - 40usize];
3376    ["Alignment of _zend_file_handle__bindgen_ty_1"]
3377        [::std::mem::align_of::<_zend_file_handle__bindgen_ty_1>() - 8usize];
3378    ["Offset of field: _zend_file_handle__bindgen_ty_1::fp"]
3379        [::std::mem::offset_of!(_zend_file_handle__bindgen_ty_1, fp) - 0usize];
3380    ["Offset of field: _zend_file_handle__bindgen_ty_1::stream"]
3381        [::std::mem::offset_of!(_zend_file_handle__bindgen_ty_1, stream) - 0usize];
3382};
3383#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3384const _: () = {
3385    ["Size of _zend_file_handle"][::std::mem::size_of::<_zend_file_handle>() - 80usize];
3386    ["Alignment of _zend_file_handle"][::std::mem::align_of::<_zend_file_handle>() - 8usize];
3387    ["Offset of field: _zend_file_handle::handle"]
3388        [::std::mem::offset_of!(_zend_file_handle, handle) - 0usize];
3389    ["Offset of field: _zend_file_handle::filename"]
3390        [::std::mem::offset_of!(_zend_file_handle, filename) - 40usize];
3391    ["Offset of field: _zend_file_handle::opened_path"]
3392        [::std::mem::offset_of!(_zend_file_handle, opened_path) - 48usize];
3393    ["Offset of field: _zend_file_handle::type_"]
3394        [::std::mem::offset_of!(_zend_file_handle, type_) - 56usize];
3395    ["Offset of field: _zend_file_handle::primary_script"]
3396        [::std::mem::offset_of!(_zend_file_handle, primary_script) - 57usize];
3397    ["Offset of field: _zend_file_handle::in_list"]
3398        [::std::mem::offset_of!(_zend_file_handle, in_list) - 58usize];
3399    ["Offset of field: _zend_file_handle::buf"]
3400        [::std::mem::offset_of!(_zend_file_handle, buf) - 64usize];
3401    ["Offset of field: _zend_file_handle::len"]
3402        [::std::mem::offset_of!(_zend_file_handle, len) - 72usize];
3403};
3404pub type zend_file_handle = _zend_file_handle;
3405pub type zend_stat_t = stat;
3406#[repr(C)]
3407#[derive(Debug, Copy, Clone)]
3408pub struct smart_str {
3409    #[doc = " See smart_str_extract()"]
3410    pub s: *mut zend_string,
3411    pub a: usize,
3412}
3413#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3414const _: () = {
3415    ["Size of smart_str"][::std::mem::size_of::<smart_str>() - 16usize];
3416    ["Alignment of smart_str"][::std::mem::align_of::<smart_str>() - 8usize];
3417    ["Offset of field: smart_str::s"][::std::mem::offset_of!(smart_str, s) - 0usize];
3418    ["Offset of field: smart_str::a"][::std::mem::offset_of!(smart_str, a) - 8usize];
3419};
3420#[repr(C)]
3421#[derive(Debug, Copy, Clone)]
3422pub struct smart_string {
3423    pub c: *mut ::std::os::raw::c_char,
3424    pub len: usize,
3425    pub a: usize,
3426}
3427#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3428const _: () = {
3429    ["Size of smart_string"][::std::mem::size_of::<smart_string>() - 24usize];
3430    ["Alignment of smart_string"][::std::mem::align_of::<smart_string>() - 8usize];
3431    ["Offset of field: smart_string::c"][::std::mem::offset_of!(smart_string, c) - 0usize];
3432    ["Offset of field: smart_string::len"][::std::mem::offset_of!(smart_string, len) - 8usize];
3433    ["Offset of field: smart_string::a"][::std::mem::offset_of!(smart_string, a) - 16usize];
3434};
3435#[repr(C)]
3436#[derive(Copy, Clone)]
3437pub union sigval {
3438    pub sival_int: ::std::os::raw::c_int,
3439    pub sival_ptr: *mut ::std::os::raw::c_void,
3440}
3441#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3442const _: () = {
3443    ["Size of sigval"][::std::mem::size_of::<sigval>() - 8usize];
3444    ["Alignment of sigval"][::std::mem::align_of::<sigval>() - 8usize];
3445    ["Offset of field: sigval::sival_int"][::std::mem::offset_of!(sigval, sival_int) - 0usize];
3446    ["Offset of field: sigval::sival_ptr"][::std::mem::offset_of!(sigval, sival_ptr) - 0usize];
3447};
3448pub type __sigval_t = sigval;
3449#[repr(C)]
3450#[derive(Copy, Clone)]
3451pub struct siginfo_t {
3452    pub si_signo: ::std::os::raw::c_int,
3453    pub si_errno: ::std::os::raw::c_int,
3454    pub si_code: ::std::os::raw::c_int,
3455    pub __pad0: ::std::os::raw::c_int,
3456    pub _sifields: siginfo_t__bindgen_ty_1,
3457}
3458#[repr(C)]
3459#[derive(Copy, Clone)]
3460pub union siginfo_t__bindgen_ty_1 {
3461    pub _pad: [::std::os::raw::c_int; 28usize],
3462    pub _kill: siginfo_t__bindgen_ty_1__bindgen_ty_1,
3463    pub _timer: siginfo_t__bindgen_ty_1__bindgen_ty_2,
3464    pub _rt: siginfo_t__bindgen_ty_1__bindgen_ty_3,
3465    pub _sigchld: siginfo_t__bindgen_ty_1__bindgen_ty_4,
3466    pub _sigfault: siginfo_t__bindgen_ty_1__bindgen_ty_5,
3467    pub _sigpoll: siginfo_t__bindgen_ty_1__bindgen_ty_6,
3468    pub _sigsys: siginfo_t__bindgen_ty_1__bindgen_ty_7,
3469}
3470#[repr(C)]
3471#[derive(Debug, Copy, Clone)]
3472pub struct siginfo_t__bindgen_ty_1__bindgen_ty_1 {
3473    pub si_pid: __pid_t,
3474    pub si_uid: __uid_t,
3475}
3476#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3477const _: () = {
3478    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_1"]
3479        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_1>() - 8usize];
3480    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_1"]
3481        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_1>() - 4usize];
3482    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_1::si_pid"]
3483        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_1, si_pid) - 0usize];
3484    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_1::si_uid"]
3485        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_1, si_uid) - 4usize];
3486};
3487#[repr(C)]
3488#[derive(Copy, Clone)]
3489pub struct siginfo_t__bindgen_ty_1__bindgen_ty_2 {
3490    pub si_tid: ::std::os::raw::c_int,
3491    pub si_overrun: ::std::os::raw::c_int,
3492    pub si_sigval: __sigval_t,
3493}
3494#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3495const _: () = {
3496    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_2"]
3497        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_2>() - 16usize];
3498    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_2"]
3499        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_2>() - 8usize];
3500    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_2::si_tid"]
3501        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_2, si_tid) - 0usize];
3502    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_2::si_overrun"]
3503        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_2, si_overrun) - 4usize];
3504    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_2::si_sigval"]
3505        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_2, si_sigval) - 8usize];
3506};
3507#[repr(C)]
3508#[derive(Copy, Clone)]
3509pub struct siginfo_t__bindgen_ty_1__bindgen_ty_3 {
3510    pub si_pid: __pid_t,
3511    pub si_uid: __uid_t,
3512    pub si_sigval: __sigval_t,
3513}
3514#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3515const _: () = {
3516    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_3"]
3517        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_3>() - 16usize];
3518    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_3"]
3519        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_3>() - 8usize];
3520    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_3::si_pid"]
3521        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_3, si_pid) - 0usize];
3522    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_3::si_uid"]
3523        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_3, si_uid) - 4usize];
3524    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_3::si_sigval"]
3525        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_3, si_sigval) - 8usize];
3526};
3527#[repr(C)]
3528#[derive(Debug, Copy, Clone)]
3529pub struct siginfo_t__bindgen_ty_1__bindgen_ty_4 {
3530    pub si_pid: __pid_t,
3531    pub si_uid: __uid_t,
3532    pub si_status: ::std::os::raw::c_int,
3533    pub si_utime: __clock_t,
3534    pub si_stime: __clock_t,
3535}
3536#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3537const _: () = {
3538    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_4"]
3539        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_4>() - 32usize];
3540    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_4"]
3541        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_4>() - 8usize];
3542    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_4::si_pid"]
3543        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_4, si_pid) - 0usize];
3544    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_4::si_uid"]
3545        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_4, si_uid) - 4usize];
3546    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_4::si_status"]
3547        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_4, si_status) - 8usize];
3548    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_4::si_utime"]
3549        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_4, si_utime) - 16usize];
3550    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_4::si_stime"]
3551        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_4, si_stime) - 24usize];
3552};
3553#[repr(C)]
3554#[derive(Copy, Clone)]
3555pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5 {
3556    pub si_addr: *mut ::std::os::raw::c_void,
3557    pub si_addr_lsb: ::std::os::raw::c_short,
3558    pub _bounds: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1,
3559}
3560#[repr(C)]
3561#[derive(Copy, Clone)]
3562pub union siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1 {
3563    pub _addr_bnd: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
3564    pub _pkey: __uint32_t,
3565}
3566#[repr(C)]
3567#[derive(Debug, Copy, Clone)]
3568pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
3569    pub _lower: *mut ::std::os::raw::c_void,
3570    pub _upper: *mut ::std::os::raw::c_void,
3571}
3572#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3573const _: () = {
3574    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1"]
3575        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1>(
3576        ) - 16usize];
3577    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1"]
3578        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1>(
3579        ) - 8usize];
3580    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1::_lower"]
3581        [::std::mem::offset_of!(
3582            siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
3583            _lower
3584        ) - 0usize];
3585    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1::_upper"]
3586        [::std::mem::offset_of!(
3587            siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
3588            _upper
3589        ) - 8usize];
3590};
3591#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3592const _: () = {
3593    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1"]
3594        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>() - 16usize];
3595    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1"]
3596        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>() - 8usize];
3597    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1::_addr_bnd"][::std::mem::offset_of!(
3598        siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1,
3599        _addr_bnd
3600    ) - 0usize];
3601    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1::_pkey"][::std::mem::offset_of!(
3602        siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1,
3603        _pkey
3604    ) - 0usize];
3605};
3606#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3607const _: () = {
3608    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_5"]
3609        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5>() - 32usize];
3610    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_5"]
3611        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5>() - 8usize];
3612    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5::si_addr"]
3613        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_5, si_addr) - 0usize];
3614    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5::si_addr_lsb"]
3615        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_5, si_addr_lsb) - 8usize];
3616    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_5::_bounds"]
3617        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_5, _bounds) - 16usize];
3618};
3619#[repr(C)]
3620#[derive(Debug, Copy, Clone)]
3621pub struct siginfo_t__bindgen_ty_1__bindgen_ty_6 {
3622    pub si_band: ::std::os::raw::c_long,
3623    pub si_fd: ::std::os::raw::c_int,
3624}
3625#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3626const _: () = {
3627    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_6"]
3628        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_6>() - 16usize];
3629    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_6"]
3630        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_6>() - 8usize];
3631    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_6::si_band"]
3632        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_6, si_band) - 0usize];
3633    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_6::si_fd"]
3634        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_6, si_fd) - 8usize];
3635};
3636#[repr(C)]
3637#[derive(Debug, Copy, Clone)]
3638pub struct siginfo_t__bindgen_ty_1__bindgen_ty_7 {
3639    pub _call_addr: *mut ::std::os::raw::c_void,
3640    pub _syscall: ::std::os::raw::c_int,
3641    pub _arch: ::std::os::raw::c_uint,
3642}
3643#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3644const _: () = {
3645    ["Size of siginfo_t__bindgen_ty_1__bindgen_ty_7"]
3646        [::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_7>() - 16usize];
3647    ["Alignment of siginfo_t__bindgen_ty_1__bindgen_ty_7"]
3648        [::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_7>() - 8usize];
3649    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_7::_call_addr"]
3650        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_7, _call_addr) - 0usize];
3651    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_7::_syscall"]
3652        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_7, _syscall) - 8usize];
3653    ["Offset of field: siginfo_t__bindgen_ty_1__bindgen_ty_7::_arch"]
3654        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1__bindgen_ty_7, _arch) - 12usize];
3655};
3656#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3657const _: () = {
3658    ["Size of siginfo_t__bindgen_ty_1"]
3659        [::std::mem::size_of::<siginfo_t__bindgen_ty_1>() - 112usize];
3660    ["Alignment of siginfo_t__bindgen_ty_1"]
3661        [::std::mem::align_of::<siginfo_t__bindgen_ty_1>() - 8usize];
3662    ["Offset of field: siginfo_t__bindgen_ty_1::_pad"]
3663        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _pad) - 0usize];
3664    ["Offset of field: siginfo_t__bindgen_ty_1::_kill"]
3665        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _kill) - 0usize];
3666    ["Offset of field: siginfo_t__bindgen_ty_1::_timer"]
3667        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _timer) - 0usize];
3668    ["Offset of field: siginfo_t__bindgen_ty_1::_rt"]
3669        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _rt) - 0usize];
3670    ["Offset of field: siginfo_t__bindgen_ty_1::_sigchld"]
3671        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _sigchld) - 0usize];
3672    ["Offset of field: siginfo_t__bindgen_ty_1::_sigfault"]
3673        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _sigfault) - 0usize];
3674    ["Offset of field: siginfo_t__bindgen_ty_1::_sigpoll"]
3675        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _sigpoll) - 0usize];
3676    ["Offset of field: siginfo_t__bindgen_ty_1::_sigsys"]
3677        [::std::mem::offset_of!(siginfo_t__bindgen_ty_1, _sigsys) - 0usize];
3678};
3679#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3680const _: () = {
3681    ["Size of siginfo_t"][::std::mem::size_of::<siginfo_t>() - 128usize];
3682    ["Alignment of siginfo_t"][::std::mem::align_of::<siginfo_t>() - 8usize];
3683    ["Offset of field: siginfo_t::si_signo"][::std::mem::offset_of!(siginfo_t, si_signo) - 0usize];
3684    ["Offset of field: siginfo_t::si_errno"][::std::mem::offset_of!(siginfo_t, si_errno) - 4usize];
3685    ["Offset of field: siginfo_t::si_code"][::std::mem::offset_of!(siginfo_t, si_code) - 8usize];
3686    ["Offset of field: siginfo_t::__pad0"][::std::mem::offset_of!(siginfo_t, __pad0) - 12usize];
3687    ["Offset of field: siginfo_t::_sifields"]
3688        [::std::mem::offset_of!(siginfo_t, _sifields) - 16usize];
3689};
3690pub type __sighandler_t = ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>;
3691#[repr(C)]
3692#[derive(Copy, Clone)]
3693pub struct sigaction {
3694    pub __sigaction_handler: sigaction__bindgen_ty_1,
3695    pub sa_mask: __sigset_t,
3696    pub sa_flags: ::std::os::raw::c_int,
3697    pub sa_restorer: ::std::option::Option<unsafe extern "C" fn()>,
3698}
3699#[repr(C)]
3700#[derive(Copy, Clone)]
3701pub union sigaction__bindgen_ty_1 {
3702    pub sa_handler: __sighandler_t,
3703    pub sa_sigaction: ::std::option::Option<
3704        unsafe extern "C" fn(
3705            arg1: ::std::os::raw::c_int,
3706            arg2: *mut siginfo_t,
3707            arg3: *mut ::std::os::raw::c_void,
3708        ),
3709    >,
3710}
3711#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3712const _: () = {
3713    ["Size of sigaction__bindgen_ty_1"][::std::mem::size_of::<sigaction__bindgen_ty_1>() - 8usize];
3714    ["Alignment of sigaction__bindgen_ty_1"]
3715        [::std::mem::align_of::<sigaction__bindgen_ty_1>() - 8usize];
3716    ["Offset of field: sigaction__bindgen_ty_1::sa_handler"]
3717        [::std::mem::offset_of!(sigaction__bindgen_ty_1, sa_handler) - 0usize];
3718    ["Offset of field: sigaction__bindgen_ty_1::sa_sigaction"]
3719        [::std::mem::offset_of!(sigaction__bindgen_ty_1, sa_sigaction) - 0usize];
3720};
3721#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3722const _: () = {
3723    ["Size of sigaction"][::std::mem::size_of::<sigaction>() - 152usize];
3724    ["Alignment of sigaction"][::std::mem::align_of::<sigaction>() - 8usize];
3725    ["Offset of field: sigaction::__sigaction_handler"]
3726        [::std::mem::offset_of!(sigaction, __sigaction_handler) - 0usize];
3727    ["Offset of field: sigaction::sa_mask"][::std::mem::offset_of!(sigaction, sa_mask) - 8usize];
3728    ["Offset of field: sigaction::sa_flags"]
3729        [::std::mem::offset_of!(sigaction, sa_flags) - 136usize];
3730    ["Offset of field: sigaction::sa_restorer"]
3731        [::std::mem::offset_of!(sigaction, sa_restorer) - 144usize];
3732};
3733#[repr(C)]
3734#[derive(Debug, Copy, Clone)]
3735pub struct _zend_signal_entry_t {
3736    pub flags: ::std::os::raw::c_int,
3737    pub handler: *mut ::std::os::raw::c_void,
3738}
3739#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3740const _: () = {
3741    ["Size of _zend_signal_entry_t"][::std::mem::size_of::<_zend_signal_entry_t>() - 16usize];
3742    ["Alignment of _zend_signal_entry_t"][::std::mem::align_of::<_zend_signal_entry_t>() - 8usize];
3743    ["Offset of field: _zend_signal_entry_t::flags"]
3744        [::std::mem::offset_of!(_zend_signal_entry_t, flags) - 0usize];
3745    ["Offset of field: _zend_signal_entry_t::handler"]
3746        [::std::mem::offset_of!(_zend_signal_entry_t, handler) - 8usize];
3747};
3748pub type zend_signal_entry_t = _zend_signal_entry_t;
3749#[repr(C)]
3750#[derive(Debug, Copy, Clone)]
3751pub struct _zend_signal_t {
3752    pub signo: ::std::os::raw::c_int,
3753    pub siginfo: *mut siginfo_t,
3754    pub context: *mut ::std::os::raw::c_void,
3755}
3756#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3757const _: () = {
3758    ["Size of _zend_signal_t"][::std::mem::size_of::<_zend_signal_t>() - 24usize];
3759    ["Alignment of _zend_signal_t"][::std::mem::align_of::<_zend_signal_t>() - 8usize];
3760    ["Offset of field: _zend_signal_t::signo"]
3761        [::std::mem::offset_of!(_zend_signal_t, signo) - 0usize];
3762    ["Offset of field: _zend_signal_t::siginfo"]
3763        [::std::mem::offset_of!(_zend_signal_t, siginfo) - 8usize];
3764    ["Offset of field: _zend_signal_t::context"]
3765        [::std::mem::offset_of!(_zend_signal_t, context) - 16usize];
3766};
3767pub type zend_signal_t = _zend_signal_t;
3768#[repr(C)]
3769#[derive(Debug, Copy, Clone)]
3770pub struct _zend_signal_queue_t {
3771    pub zend_signal: zend_signal_t,
3772    pub next: *mut _zend_signal_queue_t,
3773}
3774#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3775const _: () = {
3776    ["Size of _zend_signal_queue_t"][::std::mem::size_of::<_zend_signal_queue_t>() - 32usize];
3777    ["Alignment of _zend_signal_queue_t"][::std::mem::align_of::<_zend_signal_queue_t>() - 8usize];
3778    ["Offset of field: _zend_signal_queue_t::zend_signal"]
3779        [::std::mem::offset_of!(_zend_signal_queue_t, zend_signal) - 0usize];
3780    ["Offset of field: _zend_signal_queue_t::next"]
3781        [::std::mem::offset_of!(_zend_signal_queue_t, next) - 24usize];
3782};
3783pub type zend_signal_queue_t = _zend_signal_queue_t;
3784#[repr(C)]
3785#[derive(Debug, Copy, Clone)]
3786pub struct _zend_signal_globals_t {
3787    pub depth: ::std::os::raw::c_int,
3788    pub blocked: ::std::os::raw::c_int,
3789    pub running: ::std::os::raw::c_int,
3790    pub active: ::std::os::raw::c_int,
3791    pub check: bool,
3792    pub reset: bool,
3793    pub handlers: [zend_signal_entry_t; 65usize],
3794    pub pstorage: [zend_signal_queue_t; 64usize],
3795    pub phead: *mut zend_signal_queue_t,
3796    pub ptail: *mut zend_signal_queue_t,
3797    pub pavail: *mut zend_signal_queue_t,
3798}
3799#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3800const _: () = {
3801    ["Size of _zend_signal_globals_t"][::std::mem::size_of::<_zend_signal_globals_t>() - 3136usize];
3802    ["Alignment of _zend_signal_globals_t"]
3803        [::std::mem::align_of::<_zend_signal_globals_t>() - 8usize];
3804    ["Offset of field: _zend_signal_globals_t::depth"]
3805        [::std::mem::offset_of!(_zend_signal_globals_t, depth) - 0usize];
3806    ["Offset of field: _zend_signal_globals_t::blocked"]
3807        [::std::mem::offset_of!(_zend_signal_globals_t, blocked) - 4usize];
3808    ["Offset of field: _zend_signal_globals_t::running"]
3809        [::std::mem::offset_of!(_zend_signal_globals_t, running) - 8usize];
3810    ["Offset of field: _zend_signal_globals_t::active"]
3811        [::std::mem::offset_of!(_zend_signal_globals_t, active) - 12usize];
3812    ["Offset of field: _zend_signal_globals_t::check"]
3813        [::std::mem::offset_of!(_zend_signal_globals_t, check) - 16usize];
3814    ["Offset of field: _zend_signal_globals_t::reset"]
3815        [::std::mem::offset_of!(_zend_signal_globals_t, reset) - 17usize];
3816    ["Offset of field: _zend_signal_globals_t::handlers"]
3817        [::std::mem::offset_of!(_zend_signal_globals_t, handlers) - 24usize];
3818    ["Offset of field: _zend_signal_globals_t::pstorage"]
3819        [::std::mem::offset_of!(_zend_signal_globals_t, pstorage) - 1064usize];
3820    ["Offset of field: _zend_signal_globals_t::phead"]
3821        [::std::mem::offset_of!(_zend_signal_globals_t, phead) - 3112usize];
3822    ["Offset of field: _zend_signal_globals_t::ptail"]
3823        [::std::mem::offset_of!(_zend_signal_globals_t, ptail) - 3120usize];
3824    ["Offset of field: _zend_signal_globals_t::pavail"]
3825        [::std::mem::offset_of!(_zend_signal_globals_t, pavail) - 3128usize];
3826};
3827pub type zend_signal_globals_t = _zend_signal_globals_t;
3828#[repr(C)]
3829#[derive(Debug)]
3830pub struct _zend_serialize_data {
3831    _unused: [u8; 0],
3832}
3833#[repr(C)]
3834#[derive(Debug)]
3835pub struct _zend_unserialize_data {
3836    _unused: [u8; 0],
3837}
3838pub type zend_serialize_data = _zend_serialize_data;
3839pub type zend_unserialize_data = _zend_unserialize_data;
3840#[repr(C)]
3841#[derive(Debug, Copy, Clone)]
3842pub struct _zend_class_name {
3843    pub name: *mut zend_string,
3844    pub lc_name: *mut zend_string,
3845}
3846#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3847const _: () = {
3848    ["Size of _zend_class_name"][::std::mem::size_of::<_zend_class_name>() - 16usize];
3849    ["Alignment of _zend_class_name"][::std::mem::align_of::<_zend_class_name>() - 8usize];
3850    ["Offset of field: _zend_class_name::name"]
3851        [::std::mem::offset_of!(_zend_class_name, name) - 0usize];
3852    ["Offset of field: _zend_class_name::lc_name"]
3853        [::std::mem::offset_of!(_zend_class_name, lc_name) - 8usize];
3854};
3855pub type zend_class_name = _zend_class_name;
3856#[repr(C)]
3857#[derive(Debug, Copy, Clone)]
3858pub struct _zend_trait_method_reference {
3859    pub method_name: *mut zend_string,
3860    pub class_name: *mut zend_string,
3861}
3862#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3863const _: () = {
3864    ["Size of _zend_trait_method_reference"]
3865        [::std::mem::size_of::<_zend_trait_method_reference>() - 16usize];
3866    ["Alignment of _zend_trait_method_reference"]
3867        [::std::mem::align_of::<_zend_trait_method_reference>() - 8usize];
3868    ["Offset of field: _zend_trait_method_reference::method_name"]
3869        [::std::mem::offset_of!(_zend_trait_method_reference, method_name) - 0usize];
3870    ["Offset of field: _zend_trait_method_reference::class_name"]
3871        [::std::mem::offset_of!(_zend_trait_method_reference, class_name) - 8usize];
3872};
3873pub type zend_trait_method_reference = _zend_trait_method_reference;
3874#[repr(C)]
3875#[derive(Debug, Copy, Clone)]
3876pub struct _zend_trait_precedence {
3877    pub trait_method: zend_trait_method_reference,
3878    pub num_excludes: u32,
3879    pub exclude_class_names: [*mut zend_string; 1usize],
3880}
3881#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3882const _: () = {
3883    ["Size of _zend_trait_precedence"][::std::mem::size_of::<_zend_trait_precedence>() - 32usize];
3884    ["Alignment of _zend_trait_precedence"]
3885        [::std::mem::align_of::<_zend_trait_precedence>() - 8usize];
3886    ["Offset of field: _zend_trait_precedence::trait_method"]
3887        [::std::mem::offset_of!(_zend_trait_precedence, trait_method) - 0usize];
3888    ["Offset of field: _zend_trait_precedence::num_excludes"]
3889        [::std::mem::offset_of!(_zend_trait_precedence, num_excludes) - 16usize];
3890    ["Offset of field: _zend_trait_precedence::exclude_class_names"]
3891        [::std::mem::offset_of!(_zend_trait_precedence, exclude_class_names) - 24usize];
3892};
3893pub type zend_trait_precedence = _zend_trait_precedence;
3894#[repr(C)]
3895#[derive(Debug, Copy, Clone)]
3896pub struct _zend_trait_alias {
3897    pub trait_method: zend_trait_method_reference,
3898    #[doc = " name for method to be added"]
3899    pub alias: *mut zend_string,
3900    #[doc = " modifiers to be set on trait method"]
3901    pub modifiers: u32,
3902}
3903#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3904const _: () = {
3905    ["Size of _zend_trait_alias"][::std::mem::size_of::<_zend_trait_alias>() - 32usize];
3906    ["Alignment of _zend_trait_alias"][::std::mem::align_of::<_zend_trait_alias>() - 8usize];
3907    ["Offset of field: _zend_trait_alias::trait_method"]
3908        [::std::mem::offset_of!(_zend_trait_alias, trait_method) - 0usize];
3909    ["Offset of field: _zend_trait_alias::alias"]
3910        [::std::mem::offset_of!(_zend_trait_alias, alias) - 16usize];
3911    ["Offset of field: _zend_trait_alias::modifiers"]
3912        [::std::mem::offset_of!(_zend_trait_alias, modifiers) - 24usize];
3913};
3914pub type zend_trait_alias = _zend_trait_alias;
3915#[repr(C)]
3916#[derive(Debug, Copy, Clone)]
3917pub struct _zend_class_mutable_data {
3918    pub default_properties_table: *mut zval,
3919    pub constants_table: *mut HashTable,
3920    pub ce_flags: u32,
3921    pub backed_enum_table: *mut HashTable,
3922}
3923#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3924const _: () = {
3925    ["Size of _zend_class_mutable_data"]
3926        [::std::mem::size_of::<_zend_class_mutable_data>() - 32usize];
3927    ["Alignment of _zend_class_mutable_data"]
3928        [::std::mem::align_of::<_zend_class_mutable_data>() - 8usize];
3929    ["Offset of field: _zend_class_mutable_data::default_properties_table"]
3930        [::std::mem::offset_of!(_zend_class_mutable_data, default_properties_table) - 0usize];
3931    ["Offset of field: _zend_class_mutable_data::constants_table"]
3932        [::std::mem::offset_of!(_zend_class_mutable_data, constants_table) - 8usize];
3933    ["Offset of field: _zend_class_mutable_data::ce_flags"]
3934        [::std::mem::offset_of!(_zend_class_mutable_data, ce_flags) - 16usize];
3935    ["Offset of field: _zend_class_mutable_data::backed_enum_table"]
3936        [::std::mem::offset_of!(_zend_class_mutable_data, backed_enum_table) - 24usize];
3937};
3938pub type zend_class_mutable_data = _zend_class_mutable_data;
3939#[repr(C)]
3940#[derive(Debug, Copy, Clone)]
3941pub struct _zend_class_dependency {
3942    pub name: *mut zend_string,
3943    pub ce: *mut zend_class_entry,
3944}
3945#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3946const _: () = {
3947    ["Size of _zend_class_dependency"][::std::mem::size_of::<_zend_class_dependency>() - 16usize];
3948    ["Alignment of _zend_class_dependency"]
3949        [::std::mem::align_of::<_zend_class_dependency>() - 8usize];
3950    ["Offset of field: _zend_class_dependency::name"]
3951        [::std::mem::offset_of!(_zend_class_dependency, name) - 0usize];
3952    ["Offset of field: _zend_class_dependency::ce"]
3953        [::std::mem::offset_of!(_zend_class_dependency, ce) - 8usize];
3954};
3955pub type zend_class_dependency = _zend_class_dependency;
3956pub type zend_inheritance_cache_entry = _zend_inheritance_cache_entry;
3957#[repr(C)]
3958#[derive(Debug, Copy, Clone)]
3959pub struct _zend_error_info {
3960    pub type_: ::std::os::raw::c_int,
3961    pub lineno: u32,
3962    pub filename: *mut zend_string,
3963    pub message: *mut zend_string,
3964}
3965#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3966const _: () = {
3967    ["Size of _zend_error_info"][::std::mem::size_of::<_zend_error_info>() - 24usize];
3968    ["Alignment of _zend_error_info"][::std::mem::align_of::<_zend_error_info>() - 8usize];
3969    ["Offset of field: _zend_error_info::type_"]
3970        [::std::mem::offset_of!(_zend_error_info, type_) - 0usize];
3971    ["Offset of field: _zend_error_info::lineno"]
3972        [::std::mem::offset_of!(_zend_error_info, lineno) - 4usize];
3973    ["Offset of field: _zend_error_info::filename"]
3974        [::std::mem::offset_of!(_zend_error_info, filename) - 8usize];
3975    ["Offset of field: _zend_error_info::message"]
3976        [::std::mem::offset_of!(_zend_error_info, message) - 16usize];
3977};
3978pub type zend_error_info = _zend_error_info;
3979#[repr(C)]
3980#[derive(Debug, Copy, Clone)]
3981pub struct _zend_inheritance_cache_entry {
3982    pub next: *mut zend_inheritance_cache_entry,
3983    pub ce: *mut zend_class_entry,
3984    pub parent: *mut zend_class_entry,
3985    pub dependencies: *mut zend_class_dependency,
3986    pub dependencies_count: u32,
3987    pub num_warnings: u32,
3988    pub warnings: *mut *mut zend_error_info,
3989    pub traits_and_interfaces: [*mut zend_class_entry; 1usize],
3990}
3991#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3992const _: () = {
3993    ["Size of _zend_inheritance_cache_entry"]
3994        [::std::mem::size_of::<_zend_inheritance_cache_entry>() - 56usize];
3995    ["Alignment of _zend_inheritance_cache_entry"]
3996        [::std::mem::align_of::<_zend_inheritance_cache_entry>() - 8usize];
3997    ["Offset of field: _zend_inheritance_cache_entry::next"]
3998        [::std::mem::offset_of!(_zend_inheritance_cache_entry, next) - 0usize];
3999    ["Offset of field: _zend_inheritance_cache_entry::ce"]
4000        [::std::mem::offset_of!(_zend_inheritance_cache_entry, ce) - 8usize];
4001    ["Offset of field: _zend_inheritance_cache_entry::parent"]
4002        [::std::mem::offset_of!(_zend_inheritance_cache_entry, parent) - 16usize];
4003    ["Offset of field: _zend_inheritance_cache_entry::dependencies"]
4004        [::std::mem::offset_of!(_zend_inheritance_cache_entry, dependencies) - 24usize];
4005    ["Offset of field: _zend_inheritance_cache_entry::dependencies_count"]
4006        [::std::mem::offset_of!(_zend_inheritance_cache_entry, dependencies_count) - 32usize];
4007    ["Offset of field: _zend_inheritance_cache_entry::num_warnings"]
4008        [::std::mem::offset_of!(_zend_inheritance_cache_entry, num_warnings) - 36usize];
4009    ["Offset of field: _zend_inheritance_cache_entry::warnings"]
4010        [::std::mem::offset_of!(_zend_inheritance_cache_entry, warnings) - 40usize];
4011    ["Offset of field: _zend_inheritance_cache_entry::traits_and_interfaces"]
4012        [::std::mem::offset_of!(_zend_inheritance_cache_entry, traits_and_interfaces) - 48usize];
4013};
4014#[repr(C)]
4015#[derive(Copy, Clone)]
4016pub struct _zend_class_entry {
4017    pub type_: ::std::os::raw::c_char,
4018    pub name: *mut zend_string,
4019    pub __bindgen_anon_1: _zend_class_entry_parent_info,
4020    pub refcount: ::std::os::raw::c_int,
4021    pub ce_flags: u32,
4022    pub default_properties_count: ::std::os::raw::c_int,
4023    pub default_static_members_count: ::std::os::raw::c_int,
4024    pub default_properties_table: *mut zval,
4025    pub default_static_members_table: *mut zval,
4026    pub static_members_table__ptr: *mut zval,
4027    pub function_table: HashTable,
4028    pub properties_info: HashTable,
4029    pub constants_table: HashTable,
4030    pub mutable_data__ptr: *mut zend_class_mutable_data,
4031    pub inheritance_cache: *mut zend_inheritance_cache_entry,
4032    pub properties_info_table: *mut *mut _zend_property_info,
4033    pub constructor: *mut zend_function,
4034    pub destructor: *mut zend_function,
4035    pub clone: *mut zend_function,
4036    pub __get: *mut zend_function,
4037    pub __set: *mut zend_function,
4038    pub __unset: *mut zend_function,
4039    pub __isset: *mut zend_function,
4040    pub __call: *mut zend_function,
4041    pub __callstatic: *mut zend_function,
4042    pub __tostring: *mut zend_function,
4043    pub __debugInfo: *mut zend_function,
4044    pub __serialize: *mut zend_function,
4045    pub __unserialize: *mut zend_function,
4046    pub default_object_handlers: *const zend_object_handlers,
4047    pub iterator_funcs_ptr: *mut zend_class_iterator_funcs,
4048    pub arrayaccess_funcs_ptr: *mut zend_class_arrayaccess_funcs,
4049    pub __bindgen_anon_2: _zend_class_entry_hook,
4050    pub get_iterator: ::std::option::Option<
4051        unsafe extern "C" fn(
4052            ce: *mut zend_class_entry,
4053            object: *mut zval,
4054            by_ref: ::std::os::raw::c_int,
4055        ) -> *mut zend_object_iterator,
4056    >,
4057    pub get_static_method: ::std::option::Option<
4058        unsafe extern "C" fn(
4059            ce: *mut zend_class_entry,
4060            method: *mut zend_string,
4061        ) -> *mut zend_function,
4062    >,
4063    pub serialize: ::std::option::Option<
4064        unsafe extern "C" fn(
4065            object: *mut zval,
4066            buffer: *mut *mut ::std::os::raw::c_uchar,
4067            buf_len: *mut usize,
4068            data: *mut zend_serialize_data,
4069        ) -> ::std::os::raw::c_int,
4070    >,
4071    pub unserialize: ::std::option::Option<
4072        unsafe extern "C" fn(
4073            object: *mut zval,
4074            ce: *mut zend_class_entry,
4075            buf: *const ::std::os::raw::c_uchar,
4076            buf_len: usize,
4077            data: *mut zend_unserialize_data,
4078        ) -> ::std::os::raw::c_int,
4079    >,
4080    pub num_interfaces: u32,
4081    pub num_traits: u32,
4082    pub num_hooked_props: u32,
4083    pub num_hooked_prop_variance_checks: u32,
4084    pub __bindgen_anon_3: _zend_class_entry_interfaces_info,
4085    pub trait_names: *mut zend_class_name,
4086    pub trait_aliases: *mut *mut zend_trait_alias,
4087    pub trait_precedences: *mut *mut zend_trait_precedence,
4088    pub attributes: *mut HashTable,
4089    pub enum_backing_type: u32,
4090    pub backed_enum_table: *mut HashTable,
4091    pub doc_comment: *mut zend_string,
4092    pub info: _zend_class_entry_info,
4093}
4094#[repr(C)]
4095#[derive(Copy, Clone)]
4096pub union _zend_class_entry_parent_info {
4097    pub parent: *mut zend_class_entry,
4098    pub parent_name: *mut zend_string,
4099}
4100#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4101const _: () = {
4102    ["Size of _zend_class_entry_parent_info"]
4103        [::std::mem::size_of::<_zend_class_entry_parent_info>() - 8usize];
4104    ["Alignment of _zend_class_entry_parent_info"]
4105        [::std::mem::align_of::<_zend_class_entry_parent_info>() - 8usize];
4106    ["Offset of field: _zend_class_entry_parent_info::parent"]
4107        [::std::mem::offset_of!(_zend_class_entry_parent_info, parent) - 0usize];
4108    ["Offset of field: _zend_class_entry_parent_info::parent_name"]
4109        [::std::mem::offset_of!(_zend_class_entry_parent_info, parent_name) - 0usize];
4110};
4111#[repr(C)]
4112#[derive(Copy, Clone)]
4113pub union _zend_class_entry_hook {
4114    pub create_object: ::std::option::Option<
4115        unsafe extern "C" fn(class_type: *mut zend_class_entry) -> *mut zend_object,
4116    >,
4117    pub interface_gets_implemented: ::std::option::Option<
4118        unsafe extern "C" fn(
4119            iface: *mut zend_class_entry,
4120            class_type: *mut zend_class_entry,
4121        ) -> ::std::os::raw::c_int,
4122    >,
4123}
4124#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4125const _: () = {
4126    ["Size of _zend_class_entry_hook"][::std::mem::size_of::<_zend_class_entry_hook>() - 8usize];
4127    ["Alignment of _zend_class_entry_hook"]
4128        [::std::mem::align_of::<_zend_class_entry_hook>() - 8usize];
4129    ["Offset of field: _zend_class_entry_hook::create_object"]
4130        [::std::mem::offset_of!(_zend_class_entry_hook, create_object) - 0usize];
4131    ["Offset of field: _zend_class_entry_hook::interface_gets_implemented"]
4132        [::std::mem::offset_of!(_zend_class_entry_hook, interface_gets_implemented) - 0usize];
4133};
4134#[repr(C)]
4135#[derive(Copy, Clone)]
4136pub union _zend_class_entry_interfaces_info {
4137    pub interfaces: *mut *mut zend_class_entry,
4138    pub interface_names: *mut zend_class_name,
4139}
4140#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4141const _: () = {
4142    ["Size of _zend_class_entry_interfaces_info"]
4143        [::std::mem::size_of::<_zend_class_entry_interfaces_info>() - 8usize];
4144    ["Alignment of _zend_class_entry_interfaces_info"]
4145        [::std::mem::align_of::<_zend_class_entry_interfaces_info>() - 8usize];
4146    ["Offset of field: _zend_class_entry_interfaces_info::interfaces"]
4147        [::std::mem::offset_of!(_zend_class_entry_interfaces_info, interfaces) - 0usize];
4148    ["Offset of field: _zend_class_entry_interfaces_info::interface_names"]
4149        [::std::mem::offset_of!(_zend_class_entry_interfaces_info, interface_names) - 0usize];
4150};
4151#[repr(C)]
4152#[derive(Copy, Clone)]
4153pub union _zend_class_entry_info {
4154    pub user: _zend_class_entry__bindgen_ty_4__bindgen_ty_1,
4155    pub internal: _zend_class_entry__bindgen_ty_4__bindgen_ty_2,
4156}
4157#[repr(C)]
4158#[derive(Debug, Copy, Clone)]
4159pub struct _zend_class_entry__bindgen_ty_4__bindgen_ty_1 {
4160    pub filename: *mut zend_string,
4161    pub line_start: u32,
4162    pub line_end: u32,
4163}
4164#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4165const _: () = {
4166    ["Size of _zend_class_entry__bindgen_ty_4__bindgen_ty_1"]
4167        [::std::mem::size_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_1>() - 16usize];
4168    ["Alignment of _zend_class_entry__bindgen_ty_4__bindgen_ty_1"]
4169        [::std::mem::align_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_1>() - 8usize];
4170    ["Offset of field: _zend_class_entry__bindgen_ty_4__bindgen_ty_1::filename"]
4171        [::std::mem::offset_of!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1, filename) - 0usize];
4172    ["Offset of field: _zend_class_entry__bindgen_ty_4__bindgen_ty_1::line_start"][::std::mem::offset_of!(
4173        _zend_class_entry__bindgen_ty_4__bindgen_ty_1,
4174        line_start
4175    ) - 8usize];
4176    ["Offset of field: _zend_class_entry__bindgen_ty_4__bindgen_ty_1::line_end"]
4177        [::std::mem::offset_of!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1, line_end) - 12usize];
4178};
4179#[repr(C)]
4180#[derive(Debug, Copy, Clone)]
4181pub struct _zend_class_entry__bindgen_ty_4__bindgen_ty_2 {
4182    pub builtin_functions: *const _zend_function_entry,
4183    pub module: *mut _zend_module_entry,
4184}
4185#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4186const _: () = {
4187    ["Size of _zend_class_entry__bindgen_ty_4__bindgen_ty_2"]
4188        [::std::mem::size_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_2>() - 16usize];
4189    ["Alignment of _zend_class_entry__bindgen_ty_4__bindgen_ty_2"]
4190        [::std::mem::align_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_2>() - 8usize];
4191    ["Offset of field: _zend_class_entry__bindgen_ty_4__bindgen_ty_2::builtin_functions"][::std::mem::offset_of!(
4192        _zend_class_entry__bindgen_ty_4__bindgen_ty_2,
4193        builtin_functions
4194    )
4195        - 0usize];
4196    ["Offset of field: _zend_class_entry__bindgen_ty_4__bindgen_ty_2::module"]
4197        [::std::mem::offset_of!(_zend_class_entry__bindgen_ty_4__bindgen_ty_2, module) - 8usize];
4198};
4199#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4200const _: () = {
4201    ["Size of _zend_class_entry_info"][::std::mem::size_of::<_zend_class_entry_info>() - 16usize];
4202    ["Alignment of _zend_class_entry_info"]
4203        [::std::mem::align_of::<_zend_class_entry_info>() - 8usize];
4204    ["Offset of field: _zend_class_entry_info::user"]
4205        [::std::mem::offset_of!(_zend_class_entry_info, user) - 0usize];
4206    ["Offset of field: _zend_class_entry_info::internal"]
4207        [::std::mem::offset_of!(_zend_class_entry_info, internal) - 0usize];
4208};
4209#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4210const _: () = {
4211    ["Size of _zend_class_entry"][::std::mem::size_of::<_zend_class_entry>() - 520usize];
4212    ["Alignment of _zend_class_entry"][::std::mem::align_of::<_zend_class_entry>() - 8usize];
4213    ["Offset of field: _zend_class_entry::type_"]
4214        [::std::mem::offset_of!(_zend_class_entry, type_) - 0usize];
4215    ["Offset of field: _zend_class_entry::name"]
4216        [::std::mem::offset_of!(_zend_class_entry, name) - 8usize];
4217    ["Offset of field: _zend_class_entry::refcount"]
4218        [::std::mem::offset_of!(_zend_class_entry, refcount) - 24usize];
4219    ["Offset of field: _zend_class_entry::ce_flags"]
4220        [::std::mem::offset_of!(_zend_class_entry, ce_flags) - 28usize];
4221    ["Offset of field: _zend_class_entry::default_properties_count"]
4222        [::std::mem::offset_of!(_zend_class_entry, default_properties_count) - 32usize];
4223    ["Offset of field: _zend_class_entry::default_static_members_count"]
4224        [::std::mem::offset_of!(_zend_class_entry, default_static_members_count) - 36usize];
4225    ["Offset of field: _zend_class_entry::default_properties_table"]
4226        [::std::mem::offset_of!(_zend_class_entry, default_properties_table) - 40usize];
4227    ["Offset of field: _zend_class_entry::default_static_members_table"]
4228        [::std::mem::offset_of!(_zend_class_entry, default_static_members_table) - 48usize];
4229    ["Offset of field: _zend_class_entry::static_members_table__ptr"]
4230        [::std::mem::offset_of!(_zend_class_entry, static_members_table__ptr) - 56usize];
4231    ["Offset of field: _zend_class_entry::function_table"]
4232        [::std::mem::offset_of!(_zend_class_entry, function_table) - 64usize];
4233    ["Offset of field: _zend_class_entry::properties_info"]
4234        [::std::mem::offset_of!(_zend_class_entry, properties_info) - 120usize];
4235    ["Offset of field: _zend_class_entry::constants_table"]
4236        [::std::mem::offset_of!(_zend_class_entry, constants_table) - 176usize];
4237    ["Offset of field: _zend_class_entry::mutable_data__ptr"]
4238        [::std::mem::offset_of!(_zend_class_entry, mutable_data__ptr) - 232usize];
4239    ["Offset of field: _zend_class_entry::inheritance_cache"]
4240        [::std::mem::offset_of!(_zend_class_entry, inheritance_cache) - 240usize];
4241    ["Offset of field: _zend_class_entry::properties_info_table"]
4242        [::std::mem::offset_of!(_zend_class_entry, properties_info_table) - 248usize];
4243    ["Offset of field: _zend_class_entry::constructor"]
4244        [::std::mem::offset_of!(_zend_class_entry, constructor) - 256usize];
4245    ["Offset of field: _zend_class_entry::destructor"]
4246        [::std::mem::offset_of!(_zend_class_entry, destructor) - 264usize];
4247    ["Offset of field: _zend_class_entry::clone"]
4248        [::std::mem::offset_of!(_zend_class_entry, clone) - 272usize];
4249    ["Offset of field: _zend_class_entry::__get"]
4250        [::std::mem::offset_of!(_zend_class_entry, __get) - 280usize];
4251    ["Offset of field: _zend_class_entry::__set"]
4252        [::std::mem::offset_of!(_zend_class_entry, __set) - 288usize];
4253    ["Offset of field: _zend_class_entry::__unset"]
4254        [::std::mem::offset_of!(_zend_class_entry, __unset) - 296usize];
4255    ["Offset of field: _zend_class_entry::__isset"]
4256        [::std::mem::offset_of!(_zend_class_entry, __isset) - 304usize];
4257    ["Offset of field: _zend_class_entry::__call"]
4258        [::std::mem::offset_of!(_zend_class_entry, __call) - 312usize];
4259    ["Offset of field: _zend_class_entry::__callstatic"]
4260        [::std::mem::offset_of!(_zend_class_entry, __callstatic) - 320usize];
4261    ["Offset of field: _zend_class_entry::__tostring"]
4262        [::std::mem::offset_of!(_zend_class_entry, __tostring) - 328usize];
4263    ["Offset of field: _zend_class_entry::__debugInfo"]
4264        [::std::mem::offset_of!(_zend_class_entry, __debugInfo) - 336usize];
4265    ["Offset of field: _zend_class_entry::__serialize"]
4266        [::std::mem::offset_of!(_zend_class_entry, __serialize) - 344usize];
4267    ["Offset of field: _zend_class_entry::__unserialize"]
4268        [::std::mem::offset_of!(_zend_class_entry, __unserialize) - 352usize];
4269    ["Offset of field: _zend_class_entry::default_object_handlers"]
4270        [::std::mem::offset_of!(_zend_class_entry, default_object_handlers) - 360usize];
4271    ["Offset of field: _zend_class_entry::iterator_funcs_ptr"]
4272        [::std::mem::offset_of!(_zend_class_entry, iterator_funcs_ptr) - 368usize];
4273    ["Offset of field: _zend_class_entry::arrayaccess_funcs_ptr"]
4274        [::std::mem::offset_of!(_zend_class_entry, arrayaccess_funcs_ptr) - 376usize];
4275    ["Offset of field: _zend_class_entry::get_iterator"]
4276        [::std::mem::offset_of!(_zend_class_entry, get_iterator) - 392usize];
4277    ["Offset of field: _zend_class_entry::get_static_method"]
4278        [::std::mem::offset_of!(_zend_class_entry, get_static_method) - 400usize];
4279    ["Offset of field: _zend_class_entry::serialize"]
4280        [::std::mem::offset_of!(_zend_class_entry, serialize) - 408usize];
4281    ["Offset of field: _zend_class_entry::unserialize"]
4282        [::std::mem::offset_of!(_zend_class_entry, unserialize) - 416usize];
4283    ["Offset of field: _zend_class_entry::num_interfaces"]
4284        [::std::mem::offset_of!(_zend_class_entry, num_interfaces) - 424usize];
4285    ["Offset of field: _zend_class_entry::num_traits"]
4286        [::std::mem::offset_of!(_zend_class_entry, num_traits) - 428usize];
4287    ["Offset of field: _zend_class_entry::num_hooked_props"]
4288        [::std::mem::offset_of!(_zend_class_entry, num_hooked_props) - 432usize];
4289    ["Offset of field: _zend_class_entry::num_hooked_prop_variance_checks"]
4290        [::std::mem::offset_of!(_zend_class_entry, num_hooked_prop_variance_checks) - 436usize];
4291    ["Offset of field: _zend_class_entry::trait_names"]
4292        [::std::mem::offset_of!(_zend_class_entry, trait_names) - 448usize];
4293    ["Offset of field: _zend_class_entry::trait_aliases"]
4294        [::std::mem::offset_of!(_zend_class_entry, trait_aliases) - 456usize];
4295    ["Offset of field: _zend_class_entry::trait_precedences"]
4296        [::std::mem::offset_of!(_zend_class_entry, trait_precedences) - 464usize];
4297    ["Offset of field: _zend_class_entry::attributes"]
4298        [::std::mem::offset_of!(_zend_class_entry, attributes) - 472usize];
4299    ["Offset of field: _zend_class_entry::enum_backing_type"]
4300        [::std::mem::offset_of!(_zend_class_entry, enum_backing_type) - 480usize];
4301    ["Offset of field: _zend_class_entry::backed_enum_table"]
4302        [::std::mem::offset_of!(_zend_class_entry, backed_enum_table) - 488usize];
4303    ["Offset of field: _zend_class_entry::doc_comment"]
4304        [::std::mem::offset_of!(_zend_class_entry, doc_comment) - 496usize];
4305    ["Offset of field: _zend_class_entry::info"]
4306        [::std::mem::offset_of!(_zend_class_entry, info) - 504usize];
4307};
4308#[repr(C)]
4309#[repr(align(16))]
4310#[derive(Copy, Clone)]
4311pub union zend_random_bytes_insecure_state {
4312    pub align: zend_max_align_t,
4313    pub opaque: [u64; 5usize],
4314}
4315#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4316const _: () = {
4317    ["Size of zend_random_bytes_insecure_state"]
4318        [::std::mem::size_of::<zend_random_bytes_insecure_state>() - 48usize];
4319    ["Alignment of zend_random_bytes_insecure_state"]
4320        [::std::mem::align_of::<zend_random_bytes_insecure_state>() - 16usize];
4321    ["Offset of field: zend_random_bytes_insecure_state::align"]
4322        [::std::mem::offset_of!(zend_random_bytes_insecure_state, align) - 0usize];
4323    ["Offset of field: zend_random_bytes_insecure_state::opaque"]
4324        [::std::mem::offset_of!(zend_random_bytes_insecure_state, opaque) - 0usize];
4325};
4326#[repr(C)]
4327#[derive(Debug, Copy, Clone)]
4328pub struct _zend_utility_functions {
4329    pub error_function: ::std::option::Option<
4330        unsafe extern "C" fn(
4331            type_: ::std::os::raw::c_int,
4332            error_filename: *mut zend_string,
4333            error_lineno: u32,
4334            message: *mut zend_string,
4335        ),
4336    >,
4337    pub printf_function: ::std::option::Option<
4338        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> usize,
4339    >,
4340    pub write_function: ::std::option::Option<
4341        unsafe extern "C" fn(str_: *const ::std::os::raw::c_char, str_length: usize) -> usize,
4342    >,
4343    pub fopen_function: ::std::option::Option<
4344        unsafe extern "C" fn(
4345            filename: *mut zend_string,
4346            opened_path: *mut *mut zend_string,
4347        ) -> *mut FILE,
4348    >,
4349    pub message_handler: ::std::option::Option<
4350        unsafe extern "C" fn(message: zend_long, data: *const ::std::os::raw::c_void),
4351    >,
4352    pub get_configuration_directive:
4353        ::std::option::Option<unsafe extern "C" fn(name: *mut zend_string) -> *mut zval>,
4354    pub ticks_function: ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>,
4355    pub on_timeout: ::std::option::Option<unsafe extern "C" fn(seconds: ::std::os::raw::c_int)>,
4356    pub stream_open_function:
4357        ::std::option::Option<unsafe extern "C" fn(handle: *mut zend_file_handle) -> zend_result>,
4358    pub printf_to_smart_string_function: ::std::option::Option<
4359        unsafe extern "C" fn(
4360            buf: *mut smart_string,
4361            format: *const ::std::os::raw::c_char,
4362            ap: *mut __va_list_tag,
4363        ),
4364    >,
4365    pub printf_to_smart_str_function: ::std::option::Option<
4366        unsafe extern "C" fn(
4367            buf: *mut smart_str,
4368            format: *const ::std::os::raw::c_char,
4369            ap: *mut __va_list_tag,
4370        ),
4371    >,
4372    pub getenv_function: ::std::option::Option<
4373        unsafe extern "C" fn(
4374            name: *const ::std::os::raw::c_char,
4375            name_len: usize,
4376        ) -> *mut ::std::os::raw::c_char,
4377    >,
4378    pub resolve_path_function:
4379        ::std::option::Option<unsafe extern "C" fn(filename: *mut zend_string) -> *mut zend_string>,
4380    pub random_bytes_function: ::std::option::Option<
4381        unsafe extern "C" fn(
4382            bytes: *mut ::std::os::raw::c_void,
4383            size: usize,
4384            errstr: *mut ::std::os::raw::c_char,
4385            errstr_size: usize,
4386        ) -> zend_result,
4387    >,
4388    pub random_bytes_insecure_function: ::std::option::Option<
4389        unsafe extern "C" fn(
4390            state: *mut zend_random_bytes_insecure_state,
4391            bytes: *mut ::std::os::raw::c_void,
4392            size: usize,
4393        ),
4394    >,
4395}
4396#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4397const _: () = {
4398    ["Size of _zend_utility_functions"]
4399        [::std::mem::size_of::<_zend_utility_functions>() - 120usize];
4400    ["Alignment of _zend_utility_functions"]
4401        [::std::mem::align_of::<_zend_utility_functions>() - 8usize];
4402    ["Offset of field: _zend_utility_functions::error_function"]
4403        [::std::mem::offset_of!(_zend_utility_functions, error_function) - 0usize];
4404    ["Offset of field: _zend_utility_functions::printf_function"]
4405        [::std::mem::offset_of!(_zend_utility_functions, printf_function) - 8usize];
4406    ["Offset of field: _zend_utility_functions::write_function"]
4407        [::std::mem::offset_of!(_zend_utility_functions, write_function) - 16usize];
4408    ["Offset of field: _zend_utility_functions::fopen_function"]
4409        [::std::mem::offset_of!(_zend_utility_functions, fopen_function) - 24usize];
4410    ["Offset of field: _zend_utility_functions::message_handler"]
4411        [::std::mem::offset_of!(_zend_utility_functions, message_handler) - 32usize];
4412    ["Offset of field: _zend_utility_functions::get_configuration_directive"]
4413        [::std::mem::offset_of!(_zend_utility_functions, get_configuration_directive) - 40usize];
4414    ["Offset of field: _zend_utility_functions::ticks_function"]
4415        [::std::mem::offset_of!(_zend_utility_functions, ticks_function) - 48usize];
4416    ["Offset of field: _zend_utility_functions::on_timeout"]
4417        [::std::mem::offset_of!(_zend_utility_functions, on_timeout) - 56usize];
4418    ["Offset of field: _zend_utility_functions::stream_open_function"]
4419        [::std::mem::offset_of!(_zend_utility_functions, stream_open_function) - 64usize];
4420    ["Offset of field: _zend_utility_functions::printf_to_smart_string_function"][::std::mem::offset_of!(
4421        _zend_utility_functions,
4422        printf_to_smart_string_function
4423    ) - 72usize];
4424    ["Offset of field: _zend_utility_functions::printf_to_smart_str_function"]
4425        [::std::mem::offset_of!(_zend_utility_functions, printf_to_smart_str_function) - 80usize];
4426    ["Offset of field: _zend_utility_functions::getenv_function"]
4427        [::std::mem::offset_of!(_zend_utility_functions, getenv_function) - 88usize];
4428    ["Offset of field: _zend_utility_functions::resolve_path_function"]
4429        [::std::mem::offset_of!(_zend_utility_functions, resolve_path_function) - 96usize];
4430    ["Offset of field: _zend_utility_functions::random_bytes_function"]
4431        [::std::mem::offset_of!(_zend_utility_functions, random_bytes_function) - 104usize];
4432    ["Offset of field: _zend_utility_functions::random_bytes_insecure_function"][::std::mem::offset_of!(
4433        _zend_utility_functions,
4434        random_bytes_insecure_function
4435    ) - 112usize];
4436};
4437pub type zend_utility_functions = _zend_utility_functions;
4438#[repr(C)]
4439#[derive(Debug, Copy, Clone)]
4440pub struct _zend_utility_values {
4441    pub html_errors: bool,
4442}
4443#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4444const _: () = {
4445    ["Size of _zend_utility_values"][::std::mem::size_of::<_zend_utility_values>() - 1usize];
4446    ["Alignment of _zend_utility_values"][::std::mem::align_of::<_zend_utility_values>() - 1usize];
4447    ["Offset of field: _zend_utility_values::html_errors"]
4448        [::std::mem::offset_of!(_zend_utility_values, html_errors) - 0usize];
4449};
4450pub type zend_utility_values = _zend_utility_values;
4451pub type zend_write_func_t = ::std::option::Option<
4452    unsafe extern "C" fn(str_: *const ::std::os::raw::c_char, str_length: usize) -> usize,
4453>;
4454pub mod zend_error_handling_t {
4455    #[allow(unused_imports)]
4456    use super::*;
4457    pub type Type = ::std::os::raw::c_uint;
4458    pub const EH_NORMAL: Type = 0;
4459    pub const EH_THROW: Type = 1;
4460}
4461#[repr(C)]
4462#[derive(Debug, Copy, Clone)]
4463pub struct zend_error_handling {
4464    pub handling: zend_error_handling_t::Type,
4465    pub exception: *mut zend_class_entry,
4466}
4467#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4468const _: () = {
4469    ["Size of zend_error_handling"][::std::mem::size_of::<zend_error_handling>() - 16usize];
4470    ["Alignment of zend_error_handling"][::std::mem::align_of::<zend_error_handling>() - 8usize];
4471    ["Offset of field: zend_error_handling::handling"]
4472        [::std::mem::offset_of!(zend_error_handling, handling) - 0usize];
4473    ["Offset of field: zend_error_handling::exception"]
4474        [::std::mem::offset_of!(zend_error_handling, exception) - 8usize];
4475};
4476pub mod zend_property_hook_kind {
4477    #[allow(unused_imports)]
4478    use super::*;
4479    pub type Type = ::std::os::raw::c_uint;
4480    pub const ZEND_PROPERTY_HOOK_GET: Type = 0;
4481    pub const ZEND_PROPERTY_HOOK_SET: Type = 1;
4482}
4483pub type zend_lazy_object_flags_t = u8;
4484#[repr(C)]
4485#[derive(Copy, Clone)]
4486pub struct _zend_lazy_objects_store {
4487    pub infos: HashTable,
4488}
4489#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4490const _: () = {
4491    ["Size of _zend_lazy_objects_store"]
4492        [::std::mem::size_of::<_zend_lazy_objects_store>() - 56usize];
4493    ["Alignment of _zend_lazy_objects_store"]
4494        [::std::mem::align_of::<_zend_lazy_objects_store>() - 8usize];
4495    ["Offset of field: _zend_lazy_objects_store::infos"]
4496        [::std::mem::offset_of!(_zend_lazy_objects_store, infos) - 0usize];
4497};
4498pub type zend_lazy_objects_store = _zend_lazy_objects_store;
4499pub type zend_property_info = _zend_property_info;
4500pub type zend_fcall_info = _zend_fcall_info;
4501pub type zend_fcall_info_cache = _zend_fcall_info_cache;
4502pub type zend_object_read_property_t = ::std::option::Option<
4503    unsafe extern "C" fn(
4504        object: *mut zend_object,
4505        member: *mut zend_string,
4506        type_: ::std::os::raw::c_int,
4507        cache_slot: *mut *mut ::std::os::raw::c_void,
4508        rv: *mut zval,
4509    ) -> *mut zval,
4510>;
4511pub type zend_object_read_dimension_t = ::std::option::Option<
4512    unsafe extern "C" fn(
4513        object: *mut zend_object,
4514        offset: *mut zval,
4515        type_: ::std::os::raw::c_int,
4516        rv: *mut zval,
4517    ) -> *mut zval,
4518>;
4519pub type zend_object_write_property_t = ::std::option::Option<
4520    unsafe extern "C" fn(
4521        object: *mut zend_object,
4522        member: *mut zend_string,
4523        value: *mut zval,
4524        cache_slot: *mut *mut ::std::os::raw::c_void,
4525    ) -> *mut zval,
4526>;
4527pub type zend_object_write_dimension_t = ::std::option::Option<
4528    unsafe extern "C" fn(object: *mut zend_object, offset: *mut zval, value: *mut zval),
4529>;
4530pub type zend_object_get_property_ptr_ptr_t = ::std::option::Option<
4531    unsafe extern "C" fn(
4532        object: *mut zend_object,
4533        member: *mut zend_string,
4534        type_: ::std::os::raw::c_int,
4535        cache_slot: *mut *mut ::std::os::raw::c_void,
4536    ) -> *mut zval,
4537>;
4538pub type zend_object_has_property_t = ::std::option::Option<
4539    unsafe extern "C" fn(
4540        object: *mut zend_object,
4541        member: *mut zend_string,
4542        has_set_exists: ::std::os::raw::c_int,
4543        cache_slot: *mut *mut ::std::os::raw::c_void,
4544    ) -> ::std::os::raw::c_int,
4545>;
4546pub type zend_object_has_dimension_t = ::std::option::Option<
4547    unsafe extern "C" fn(
4548        object: *mut zend_object,
4549        member: *mut zval,
4550        check_empty: ::std::os::raw::c_int,
4551    ) -> ::std::os::raw::c_int,
4552>;
4553pub type zend_object_unset_property_t = ::std::option::Option<
4554    unsafe extern "C" fn(
4555        object: *mut zend_object,
4556        member: *mut zend_string,
4557        cache_slot: *mut *mut ::std::os::raw::c_void,
4558    ),
4559>;
4560pub type zend_object_unset_dimension_t =
4561    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object, offset: *mut zval)>;
4562pub type zend_object_get_properties_t =
4563    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut HashTable>;
4564pub type zend_object_get_debug_info_t = ::std::option::Option<
4565    unsafe extern "C" fn(
4566        object: *mut zend_object,
4567        is_temp: *mut ::std::os::raw::c_int,
4568    ) -> *mut HashTable,
4569>;
4570pub mod _zend_prop_purpose {
4571    #[allow(unused_imports)]
4572    use super::*;
4573    pub type Type = ::std::os::raw::c_uint;
4574    pub const ZEND_PROP_PURPOSE_DEBUG: Type = 0;
4575    pub const ZEND_PROP_PURPOSE_ARRAY_CAST: Type = 1;
4576    pub const ZEND_PROP_PURPOSE_SERIALIZE: Type = 2;
4577    pub const ZEND_PROP_PURPOSE_VAR_EXPORT: Type = 3;
4578    pub const ZEND_PROP_PURPOSE_JSON: Type = 4;
4579    pub const ZEND_PROP_PURPOSE_GET_OBJECT_VARS: Type = 5;
4580    pub const _ZEND_PROP_PURPOSE_NON_EXHAUSTIVE_ENUM: Type = 6;
4581}
4582pub use self::_zend_prop_purpose::Type as zend_prop_purpose;
4583pub type zend_object_get_properties_for_t = ::std::option::Option<
4584    unsafe extern "C" fn(object: *mut zend_object, purpose: zend_prop_purpose) -> *mut zend_array,
4585>;
4586pub type zend_object_get_method_t = ::std::option::Option<
4587    unsafe extern "C" fn(
4588        object: *mut *mut zend_object,
4589        method: *mut zend_string,
4590        key: *const zval,
4591    ) -> *mut zend_function,
4592>;
4593pub type zend_object_get_constructor_t =
4594    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut zend_function>;
4595pub type zend_object_free_obj_t =
4596    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
4597pub type zend_object_dtor_obj_t =
4598    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
4599pub type zend_object_clone_obj_t =
4600    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut zend_object>;
4601pub type zend_object_clone_obj_with_t = ::std::option::Option<
4602    unsafe extern "C" fn(
4603        object: *mut zend_object,
4604        scope: *const zend_class_entry,
4605        properties: *const HashTable,
4606    ) -> *mut zend_object,
4607>;
4608pub type zend_object_get_class_name_t =
4609    ::std::option::Option<unsafe extern "C" fn(object: *const zend_object) -> *mut zend_string>;
4610pub type zend_object_compare_t = ::std::option::Option<
4611    unsafe extern "C" fn(object1: *mut zval, object2: *mut zval) -> ::std::os::raw::c_int,
4612>;
4613pub type zend_object_cast_t = ::std::option::Option<
4614    unsafe extern "C" fn(
4615        readobj: *mut zend_object,
4616        retval: *mut zval,
4617        type_: ::std::os::raw::c_int,
4618    ) -> zend_result,
4619>;
4620pub type zend_object_count_elements_t = ::std::option::Option<
4621    unsafe extern "C" fn(object: *mut zend_object, count: *mut zend_long) -> zend_result,
4622>;
4623pub type zend_object_get_closure_t = ::std::option::Option<
4624    unsafe extern "C" fn(
4625        obj: *mut zend_object,
4626        ce_ptr: *mut *mut zend_class_entry,
4627        fptr_ptr: *mut *mut zend_function,
4628        obj_ptr: *mut *mut zend_object,
4629        check_only: bool,
4630    ) -> zend_result,
4631>;
4632pub type zend_object_get_gc_t = ::std::option::Option<
4633    unsafe extern "C" fn(
4634        object: *mut zend_object,
4635        table: *mut *mut zval,
4636        n: *mut ::std::os::raw::c_int,
4637    ) -> *mut HashTable,
4638>;
4639pub type zend_object_do_operation_t = ::std::option::Option<
4640    unsafe extern "C" fn(
4641        opcode: u8,
4642        result: *mut zval,
4643        op1: *mut zval,
4644        op2: *mut zval,
4645    ) -> zend_result,
4646>;
4647#[repr(C)]
4648#[derive(Debug, Copy, Clone)]
4649pub struct _zend_object_handlers {
4650    pub offset: ::std::os::raw::c_int,
4651    pub free_obj: zend_object_free_obj_t,
4652    pub dtor_obj: zend_object_dtor_obj_t,
4653    pub clone_obj: zend_object_clone_obj_t,
4654    pub clone_obj_with: zend_object_clone_obj_with_t,
4655    pub read_property: zend_object_read_property_t,
4656    pub write_property: zend_object_write_property_t,
4657    pub read_dimension: zend_object_read_dimension_t,
4658    pub write_dimension: zend_object_write_dimension_t,
4659    pub get_property_ptr_ptr: zend_object_get_property_ptr_ptr_t,
4660    pub has_property: zend_object_has_property_t,
4661    pub unset_property: zend_object_unset_property_t,
4662    pub has_dimension: zend_object_has_dimension_t,
4663    pub unset_dimension: zend_object_unset_dimension_t,
4664    pub get_properties: zend_object_get_properties_t,
4665    pub get_method: zend_object_get_method_t,
4666    pub get_constructor: zend_object_get_constructor_t,
4667    pub get_class_name: zend_object_get_class_name_t,
4668    pub cast_object: zend_object_cast_t,
4669    pub count_elements: zend_object_count_elements_t,
4670    pub get_debug_info: zend_object_get_debug_info_t,
4671    pub get_closure: zend_object_get_closure_t,
4672    pub get_gc: zend_object_get_gc_t,
4673    pub do_operation: zend_object_do_operation_t,
4674    pub compare: zend_object_compare_t,
4675    pub get_properties_for: zend_object_get_properties_for_t,
4676}
4677#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4678const _: () = {
4679    ["Size of _zend_object_handlers"][::std::mem::size_of::<_zend_object_handlers>() - 208usize];
4680    ["Alignment of _zend_object_handlers"]
4681        [::std::mem::align_of::<_zend_object_handlers>() - 8usize];
4682    ["Offset of field: _zend_object_handlers::offset"]
4683        [::std::mem::offset_of!(_zend_object_handlers, offset) - 0usize];
4684    ["Offset of field: _zend_object_handlers::free_obj"]
4685        [::std::mem::offset_of!(_zend_object_handlers, free_obj) - 8usize];
4686    ["Offset of field: _zend_object_handlers::dtor_obj"]
4687        [::std::mem::offset_of!(_zend_object_handlers, dtor_obj) - 16usize];
4688    ["Offset of field: _zend_object_handlers::clone_obj"]
4689        [::std::mem::offset_of!(_zend_object_handlers, clone_obj) - 24usize];
4690    ["Offset of field: _zend_object_handlers::clone_obj_with"]
4691        [::std::mem::offset_of!(_zend_object_handlers, clone_obj_with) - 32usize];
4692    ["Offset of field: _zend_object_handlers::read_property"]
4693        [::std::mem::offset_of!(_zend_object_handlers, read_property) - 40usize];
4694    ["Offset of field: _zend_object_handlers::write_property"]
4695        [::std::mem::offset_of!(_zend_object_handlers, write_property) - 48usize];
4696    ["Offset of field: _zend_object_handlers::read_dimension"]
4697        [::std::mem::offset_of!(_zend_object_handlers, read_dimension) - 56usize];
4698    ["Offset of field: _zend_object_handlers::write_dimension"]
4699        [::std::mem::offset_of!(_zend_object_handlers, write_dimension) - 64usize];
4700    ["Offset of field: _zend_object_handlers::get_property_ptr_ptr"]
4701        [::std::mem::offset_of!(_zend_object_handlers, get_property_ptr_ptr) - 72usize];
4702    ["Offset of field: _zend_object_handlers::has_property"]
4703        [::std::mem::offset_of!(_zend_object_handlers, has_property) - 80usize];
4704    ["Offset of field: _zend_object_handlers::unset_property"]
4705        [::std::mem::offset_of!(_zend_object_handlers, unset_property) - 88usize];
4706    ["Offset of field: _zend_object_handlers::has_dimension"]
4707        [::std::mem::offset_of!(_zend_object_handlers, has_dimension) - 96usize];
4708    ["Offset of field: _zend_object_handlers::unset_dimension"]
4709        [::std::mem::offset_of!(_zend_object_handlers, unset_dimension) - 104usize];
4710    ["Offset of field: _zend_object_handlers::get_properties"]
4711        [::std::mem::offset_of!(_zend_object_handlers, get_properties) - 112usize];
4712    ["Offset of field: _zend_object_handlers::get_method"]
4713        [::std::mem::offset_of!(_zend_object_handlers, get_method) - 120usize];
4714    ["Offset of field: _zend_object_handlers::get_constructor"]
4715        [::std::mem::offset_of!(_zend_object_handlers, get_constructor) - 128usize];
4716    ["Offset of field: _zend_object_handlers::get_class_name"]
4717        [::std::mem::offset_of!(_zend_object_handlers, get_class_name) - 136usize];
4718    ["Offset of field: _zend_object_handlers::cast_object"]
4719        [::std::mem::offset_of!(_zend_object_handlers, cast_object) - 144usize];
4720    ["Offset of field: _zend_object_handlers::count_elements"]
4721        [::std::mem::offset_of!(_zend_object_handlers, count_elements) - 152usize];
4722    ["Offset of field: _zend_object_handlers::get_debug_info"]
4723        [::std::mem::offset_of!(_zend_object_handlers, get_debug_info) - 160usize];
4724    ["Offset of field: _zend_object_handlers::get_closure"]
4725        [::std::mem::offset_of!(_zend_object_handlers, get_closure) - 168usize];
4726    ["Offset of field: _zend_object_handlers::get_gc"]
4727        [::std::mem::offset_of!(_zend_object_handlers, get_gc) - 176usize];
4728    ["Offset of field: _zend_object_handlers::do_operation"]
4729        [::std::mem::offset_of!(_zend_object_handlers, do_operation) - 184usize];
4730    ["Offset of field: _zend_object_handlers::compare"]
4731        [::std::mem::offset_of!(_zend_object_handlers, compare) - 192usize];
4732    ["Offset of field: _zend_object_handlers::get_properties_for"]
4733        [::std::mem::offset_of!(_zend_object_handlers, get_properties_for) - 200usize];
4734};
4735#[repr(C)]
4736#[derive(Debug)]
4737pub struct _zend_strtod_bigint {
4738    _unused: [u8; 0],
4739}
4740pub type zend_strtod_bigint = _zend_strtod_bigint;
4741#[repr(C)]
4742#[derive(Debug, Copy, Clone)]
4743pub struct _zend_strtod_state {
4744    pub freelist: [*mut zend_strtod_bigint; 8usize],
4745    pub p5s: *mut zend_strtod_bigint,
4746    pub result: *mut ::std::os::raw::c_char,
4747}
4748#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4749const _: () = {
4750    ["Size of _zend_strtod_state"][::std::mem::size_of::<_zend_strtod_state>() - 80usize];
4751    ["Alignment of _zend_strtod_state"][::std::mem::align_of::<_zend_strtod_state>() - 8usize];
4752    ["Offset of field: _zend_strtod_state::freelist"]
4753        [::std::mem::offset_of!(_zend_strtod_state, freelist) - 0usize];
4754    ["Offset of field: _zend_strtod_state::p5s"]
4755        [::std::mem::offset_of!(_zend_strtod_state, p5s) - 64usize];
4756    ["Offset of field: _zend_strtod_state::result"]
4757        [::std::mem::offset_of!(_zend_strtod_state, result) - 72usize];
4758};
4759pub type zend_strtod_state = _zend_strtod_state;
4760pub type zend_vm_opcode_handler_t = *const ::std::os::raw::c_void;
4761pub type zend_vm_opcode_handler_func_t = ::std::option::Option<unsafe extern "C" fn()>;
4762pub type zend_op = _zend_op;
4763pub type zend_frameless_function_0 =
4764    ::std::option::Option<unsafe extern "C" fn(return_value: *mut zval)>;
4765pub type zend_frameless_function_1 =
4766    ::std::option::Option<unsafe extern "C" fn(return_value: *mut zval, op1: *mut zval)>;
4767pub type zend_frameless_function_2 = ::std::option::Option<
4768    unsafe extern "C" fn(return_value: *mut zval, op1: *mut zval, op2: *mut zval),
4769>;
4770pub type zend_frameless_function_3 = ::std::option::Option<
4771    unsafe extern "C" fn(return_value: *mut zval, op1: *mut zval, op2: *mut zval, op3: *mut zval),
4772>;
4773#[repr(C)]
4774#[derive(Debug, Copy, Clone)]
4775pub struct zend_frameless_function_info {
4776    pub handler: *mut ::std::os::raw::c_void,
4777    pub num_args: u32,
4778}
4779#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4780const _: () = {
4781    ["Size of zend_frameless_function_info"]
4782        [::std::mem::size_of::<zend_frameless_function_info>() - 16usize];
4783    ["Alignment of zend_frameless_function_info"]
4784        [::std::mem::align_of::<zend_frameless_function_info>() - 8usize];
4785    ["Offset of field: zend_frameless_function_info::handler"]
4786        [::std::mem::offset_of!(zend_frameless_function_info, handler) - 0usize];
4787    ["Offset of field: zend_frameless_function_info::num_args"]
4788        [::std::mem::offset_of!(zend_frameless_function_info, num_args) - 8usize];
4789};
4790pub mod zend_jmp_fl_result {
4791    #[allow(unused_imports)]
4792    use super::*;
4793    pub type Type = ::std::os::raw::c_uint;
4794    pub const ZEND_JMP_FL_UNPRIMED: Type = 0;
4795    pub const ZEND_JMP_FL_MISS: Type = 1;
4796    pub const ZEND_JMP_FL_HIT: Type = 2;
4797}
4798#[repr(C)]
4799#[derive(Copy, Clone)]
4800pub union _znode_op {
4801    pub constant: u32,
4802    pub var: u32,
4803    pub num: u32,
4804    pub opline_num: u32,
4805    pub jmp_offset: u32,
4806}
4807#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4808const _: () = {
4809    ["Size of _znode_op"][::std::mem::size_of::<_znode_op>() - 4usize];
4810    ["Alignment of _znode_op"][::std::mem::align_of::<_znode_op>() - 4usize];
4811    ["Offset of field: _znode_op::constant"][::std::mem::offset_of!(_znode_op, constant) - 0usize];
4812    ["Offset of field: _znode_op::var"][::std::mem::offset_of!(_znode_op, var) - 0usize];
4813    ["Offset of field: _znode_op::num"][::std::mem::offset_of!(_znode_op, num) - 0usize];
4814    ["Offset of field: _znode_op::opline_num"]
4815        [::std::mem::offset_of!(_znode_op, opline_num) - 0usize];
4816    ["Offset of field: _znode_op::jmp_offset"]
4817        [::std::mem::offset_of!(_znode_op, jmp_offset) - 0usize];
4818};
4819pub type znode_op = _znode_op;
4820#[repr(C)]
4821#[derive(Copy, Clone)]
4822pub struct _znode {
4823    pub op_type: u8,
4824    pub flag: u8,
4825    pub u: _znode__bindgen_ty_1,
4826}
4827#[repr(C)]
4828#[derive(Copy, Clone)]
4829pub union _znode__bindgen_ty_1 {
4830    pub op: znode_op,
4831    pub constant: zval,
4832}
4833#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4834const _: () = {
4835    ["Size of _znode__bindgen_ty_1"][::std::mem::size_of::<_znode__bindgen_ty_1>() - 16usize];
4836    ["Alignment of _znode__bindgen_ty_1"][::std::mem::align_of::<_znode__bindgen_ty_1>() - 8usize];
4837    ["Offset of field: _znode__bindgen_ty_1::op"]
4838        [::std::mem::offset_of!(_znode__bindgen_ty_1, op) - 0usize];
4839    ["Offset of field: _znode__bindgen_ty_1::constant"]
4840        [::std::mem::offset_of!(_znode__bindgen_ty_1, constant) - 0usize];
4841};
4842#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4843const _: () = {
4844    ["Size of _znode"][::std::mem::size_of::<_znode>() - 24usize];
4845    ["Alignment of _znode"][::std::mem::align_of::<_znode>() - 8usize];
4846    ["Offset of field: _znode::op_type"][::std::mem::offset_of!(_znode, op_type) - 0usize];
4847    ["Offset of field: _znode::flag"][::std::mem::offset_of!(_znode, flag) - 1usize];
4848    ["Offset of field: _znode::u"][::std::mem::offset_of!(_znode, u) - 8usize];
4849};
4850pub type znode = _znode;
4851#[repr(C)]
4852#[derive(Copy, Clone)]
4853pub struct _zend_ast_znode {
4854    pub kind: zend_ast_kind,
4855    pub attr: zend_ast_attr,
4856    pub lineno: u32,
4857    pub node: znode,
4858}
4859#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4860const _: () = {
4861    ["Size of _zend_ast_znode"][::std::mem::size_of::<_zend_ast_znode>() - 32usize];
4862    ["Alignment of _zend_ast_znode"][::std::mem::align_of::<_zend_ast_znode>() - 8usize];
4863    ["Offset of field: _zend_ast_znode::kind"]
4864        [::std::mem::offset_of!(_zend_ast_znode, kind) - 0usize];
4865    ["Offset of field: _zend_ast_znode::attr"]
4866        [::std::mem::offset_of!(_zend_ast_znode, attr) - 2usize];
4867    ["Offset of field: _zend_ast_znode::lineno"]
4868        [::std::mem::offset_of!(_zend_ast_znode, lineno) - 4usize];
4869    ["Offset of field: _zend_ast_znode::node"]
4870        [::std::mem::offset_of!(_zend_ast_znode, node) - 8usize];
4871};
4872pub type zend_ast_znode = _zend_ast_znode;
4873#[repr(C)]
4874#[derive(Debug, Copy, Clone)]
4875pub struct _zend_declarables {
4876    pub ticks: zend_long,
4877}
4878#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4879const _: () = {
4880    ["Size of _zend_declarables"][::std::mem::size_of::<_zend_declarables>() - 8usize];
4881    ["Alignment of _zend_declarables"][::std::mem::align_of::<_zend_declarables>() - 8usize];
4882    ["Offset of field: _zend_declarables::ticks"]
4883        [::std::mem::offset_of!(_zend_declarables, ticks) - 0usize];
4884};
4885pub type zend_declarables = _zend_declarables;
4886#[repr(C)]
4887#[derive(Copy, Clone)]
4888pub struct _zend_file_context {
4889    pub declarables: zend_declarables,
4890    pub current_namespace: *mut zend_string,
4891    pub in_namespace: bool,
4892    pub has_bracketed_namespaces: bool,
4893    pub imports: *mut HashTable,
4894    pub imports_function: *mut HashTable,
4895    pub imports_const: *mut HashTable,
4896    pub seen_symbols: HashTable,
4897}
4898#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4899const _: () = {
4900    ["Size of _zend_file_context"][::std::mem::size_of::<_zend_file_context>() - 104usize];
4901    ["Alignment of _zend_file_context"][::std::mem::align_of::<_zend_file_context>() - 8usize];
4902    ["Offset of field: _zend_file_context::declarables"]
4903        [::std::mem::offset_of!(_zend_file_context, declarables) - 0usize];
4904    ["Offset of field: _zend_file_context::current_namespace"]
4905        [::std::mem::offset_of!(_zend_file_context, current_namespace) - 8usize];
4906    ["Offset of field: _zend_file_context::in_namespace"]
4907        [::std::mem::offset_of!(_zend_file_context, in_namespace) - 16usize];
4908    ["Offset of field: _zend_file_context::has_bracketed_namespaces"]
4909        [::std::mem::offset_of!(_zend_file_context, has_bracketed_namespaces) - 17usize];
4910    ["Offset of field: _zend_file_context::imports"]
4911        [::std::mem::offset_of!(_zend_file_context, imports) - 24usize];
4912    ["Offset of field: _zend_file_context::imports_function"]
4913        [::std::mem::offset_of!(_zend_file_context, imports_function) - 32usize];
4914    ["Offset of field: _zend_file_context::imports_const"]
4915        [::std::mem::offset_of!(_zend_file_context, imports_const) - 40usize];
4916    ["Offset of field: _zend_file_context::seen_symbols"]
4917        [::std::mem::offset_of!(_zend_file_context, seen_symbols) - 48usize];
4918};
4919pub type zend_file_context = _zend_file_context;
4920#[repr(C)]
4921#[derive(Copy, Clone)]
4922pub union _zend_parser_stack_elem {
4923    pub ast: *mut zend_ast,
4924    pub str_: *mut zend_string,
4925    pub num: zend_ulong,
4926    pub ptr: *mut ::std::os::raw::c_uchar,
4927    pub ident: *mut ::std::os::raw::c_uchar,
4928}
4929#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4930const _: () = {
4931    ["Size of _zend_parser_stack_elem"][::std::mem::size_of::<_zend_parser_stack_elem>() - 8usize];
4932    ["Alignment of _zend_parser_stack_elem"]
4933        [::std::mem::align_of::<_zend_parser_stack_elem>() - 8usize];
4934    ["Offset of field: _zend_parser_stack_elem::ast"]
4935        [::std::mem::offset_of!(_zend_parser_stack_elem, ast) - 0usize];
4936    ["Offset of field: _zend_parser_stack_elem::str_"]
4937        [::std::mem::offset_of!(_zend_parser_stack_elem, str_) - 0usize];
4938    ["Offset of field: _zend_parser_stack_elem::num"]
4939        [::std::mem::offset_of!(_zend_parser_stack_elem, num) - 0usize];
4940    ["Offset of field: _zend_parser_stack_elem::ptr"]
4941        [::std::mem::offset_of!(_zend_parser_stack_elem, ptr) - 0usize];
4942    ["Offset of field: _zend_parser_stack_elem::ident"]
4943        [::std::mem::offset_of!(_zend_parser_stack_elem, ident) - 0usize];
4944};
4945pub type zend_parser_stack_elem = _zend_parser_stack_elem;
4946pub type user_opcode_handler_t = ::std::option::Option<
4947    unsafe extern "C" fn(execute_data: *mut zend_execute_data) -> ::std::os::raw::c_int,
4948>;
4949#[repr(C)]
4950#[derive(Copy, Clone)]
4951pub struct _zend_op {
4952    pub handler: zend_vm_opcode_handler_t,
4953    pub op1: znode_op,
4954    pub op2: znode_op,
4955    pub result: znode_op,
4956    pub extended_value: u32,
4957    pub lineno: u32,
4958    pub opcode: u8,
4959    pub op1_type: u8,
4960    pub op2_type: u8,
4961    pub result_type: u8,
4962}
4963#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4964const _: () = {
4965    ["Size of _zend_op"][::std::mem::size_of::<_zend_op>() - 32usize];
4966    ["Alignment of _zend_op"][::std::mem::align_of::<_zend_op>() - 8usize];
4967    ["Offset of field: _zend_op::handler"][::std::mem::offset_of!(_zend_op, handler) - 0usize];
4968    ["Offset of field: _zend_op::op1"][::std::mem::offset_of!(_zend_op, op1) - 8usize];
4969    ["Offset of field: _zend_op::op2"][::std::mem::offset_of!(_zend_op, op2) - 12usize];
4970    ["Offset of field: _zend_op::result"][::std::mem::offset_of!(_zend_op, result) - 16usize];
4971    ["Offset of field: _zend_op::extended_value"]
4972        [::std::mem::offset_of!(_zend_op, extended_value) - 20usize];
4973    ["Offset of field: _zend_op::lineno"][::std::mem::offset_of!(_zend_op, lineno) - 24usize];
4974    ["Offset of field: _zend_op::opcode"][::std::mem::offset_of!(_zend_op, opcode) - 28usize];
4975    ["Offset of field: _zend_op::op1_type"][::std::mem::offset_of!(_zend_op, op1_type) - 29usize];
4976    ["Offset of field: _zend_op::op2_type"][::std::mem::offset_of!(_zend_op, op2_type) - 30usize];
4977    ["Offset of field: _zend_op::result_type"]
4978        [::std::mem::offset_of!(_zend_op, result_type) - 31usize];
4979};
4980#[repr(C)]
4981#[derive(Debug, Copy, Clone)]
4982pub struct _zend_brk_cont_element {
4983    pub start: ::std::os::raw::c_int,
4984    pub cont: ::std::os::raw::c_int,
4985    pub brk: ::std::os::raw::c_int,
4986    pub parent: ::std::os::raw::c_int,
4987    pub is_switch: bool,
4988}
4989#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4990const _: () = {
4991    ["Size of _zend_brk_cont_element"][::std::mem::size_of::<_zend_brk_cont_element>() - 20usize];
4992    ["Alignment of _zend_brk_cont_element"]
4993        [::std::mem::align_of::<_zend_brk_cont_element>() - 4usize];
4994    ["Offset of field: _zend_brk_cont_element::start"]
4995        [::std::mem::offset_of!(_zend_brk_cont_element, start) - 0usize];
4996    ["Offset of field: _zend_brk_cont_element::cont"]
4997        [::std::mem::offset_of!(_zend_brk_cont_element, cont) - 4usize];
4998    ["Offset of field: _zend_brk_cont_element::brk"]
4999        [::std::mem::offset_of!(_zend_brk_cont_element, brk) - 8usize];
5000    ["Offset of field: _zend_brk_cont_element::parent"]
5001        [::std::mem::offset_of!(_zend_brk_cont_element, parent) - 12usize];
5002    ["Offset of field: _zend_brk_cont_element::is_switch"]
5003        [::std::mem::offset_of!(_zend_brk_cont_element, is_switch) - 16usize];
5004};
5005pub type zend_brk_cont_element = _zend_brk_cont_element;
5006#[repr(C)]
5007#[derive(Debug, Copy, Clone)]
5008pub struct _zend_label {
5009    pub brk_cont: ::std::os::raw::c_int,
5010    pub opline_num: u32,
5011}
5012#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5013const _: () = {
5014    ["Size of _zend_label"][::std::mem::size_of::<_zend_label>() - 8usize];
5015    ["Alignment of _zend_label"][::std::mem::align_of::<_zend_label>() - 4usize];
5016    ["Offset of field: _zend_label::brk_cont"]
5017        [::std::mem::offset_of!(_zend_label, brk_cont) - 0usize];
5018    ["Offset of field: _zend_label::opline_num"]
5019        [::std::mem::offset_of!(_zend_label, opline_num) - 4usize];
5020};
5021pub type zend_label = _zend_label;
5022#[repr(C)]
5023#[derive(Debug, Copy, Clone)]
5024pub struct _zend_try_catch_element {
5025    pub try_op: u32,
5026    pub catch_op: u32,
5027    pub finally_op: u32,
5028    pub finally_end: u32,
5029}
5030#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5031const _: () = {
5032    ["Size of _zend_try_catch_element"][::std::mem::size_of::<_zend_try_catch_element>() - 16usize];
5033    ["Alignment of _zend_try_catch_element"]
5034        [::std::mem::align_of::<_zend_try_catch_element>() - 4usize];
5035    ["Offset of field: _zend_try_catch_element::try_op"]
5036        [::std::mem::offset_of!(_zend_try_catch_element, try_op) - 0usize];
5037    ["Offset of field: _zend_try_catch_element::catch_op"]
5038        [::std::mem::offset_of!(_zend_try_catch_element, catch_op) - 4usize];
5039    ["Offset of field: _zend_try_catch_element::finally_op"]
5040        [::std::mem::offset_of!(_zend_try_catch_element, finally_op) - 8usize];
5041    ["Offset of field: _zend_try_catch_element::finally_end"]
5042        [::std::mem::offset_of!(_zend_try_catch_element, finally_end) - 12usize];
5043};
5044pub type zend_try_catch_element = _zend_try_catch_element;
5045#[repr(C)]
5046#[derive(Debug, Copy, Clone)]
5047pub struct _zend_live_range {
5048    pub var: u32,
5049    pub start: u32,
5050    pub end: u32,
5051}
5052#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5053const _: () = {
5054    ["Size of _zend_live_range"][::std::mem::size_of::<_zend_live_range>() - 12usize];
5055    ["Alignment of _zend_live_range"][::std::mem::align_of::<_zend_live_range>() - 4usize];
5056    ["Offset of field: _zend_live_range::var"]
5057        [::std::mem::offset_of!(_zend_live_range, var) - 0usize];
5058    ["Offset of field: _zend_live_range::start"]
5059        [::std::mem::offset_of!(_zend_live_range, start) - 4usize];
5060    ["Offset of field: _zend_live_range::end"]
5061        [::std::mem::offset_of!(_zend_live_range, end) - 8usize];
5062};
5063pub type zend_live_range = _zend_live_range;
5064#[repr(C)]
5065#[derive(Debug, Copy, Clone)]
5066pub struct _zend_oparray_context {
5067    pub prev: *mut _zend_oparray_context,
5068    pub op_array: *mut zend_op_array,
5069    pub opcodes_size: u32,
5070    pub vars_size: ::std::os::raw::c_int,
5071    pub literals_size: ::std::os::raw::c_int,
5072    pub fast_call_var: u32,
5073    pub try_catch_offset: u32,
5074    pub current_brk_cont: ::std::os::raw::c_int,
5075    pub last_brk_cont: ::std::os::raw::c_int,
5076    pub brk_cont_array: *mut zend_brk_cont_element,
5077    pub labels: *mut HashTable,
5078    pub active_property_info_name: *mut zend_string,
5079    pub active_property_hook_kind: zend_property_hook_kind::Type,
5080    pub in_jmp_frameless_branch: bool,
5081    pub has_assigned_to_http_response_header: bool,
5082}
5083#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5084const _: () = {
5085    ["Size of _zend_oparray_context"][::std::mem::size_of::<_zend_oparray_context>() - 80usize];
5086    ["Alignment of _zend_oparray_context"]
5087        [::std::mem::align_of::<_zend_oparray_context>() - 8usize];
5088    ["Offset of field: _zend_oparray_context::prev"]
5089        [::std::mem::offset_of!(_zend_oparray_context, prev) - 0usize];
5090    ["Offset of field: _zend_oparray_context::op_array"]
5091        [::std::mem::offset_of!(_zend_oparray_context, op_array) - 8usize];
5092    ["Offset of field: _zend_oparray_context::opcodes_size"]
5093        [::std::mem::offset_of!(_zend_oparray_context, opcodes_size) - 16usize];
5094    ["Offset of field: _zend_oparray_context::vars_size"]
5095        [::std::mem::offset_of!(_zend_oparray_context, vars_size) - 20usize];
5096    ["Offset of field: _zend_oparray_context::literals_size"]
5097        [::std::mem::offset_of!(_zend_oparray_context, literals_size) - 24usize];
5098    ["Offset of field: _zend_oparray_context::fast_call_var"]
5099        [::std::mem::offset_of!(_zend_oparray_context, fast_call_var) - 28usize];
5100    ["Offset of field: _zend_oparray_context::try_catch_offset"]
5101        [::std::mem::offset_of!(_zend_oparray_context, try_catch_offset) - 32usize];
5102    ["Offset of field: _zend_oparray_context::current_brk_cont"]
5103        [::std::mem::offset_of!(_zend_oparray_context, current_brk_cont) - 36usize];
5104    ["Offset of field: _zend_oparray_context::last_brk_cont"]
5105        [::std::mem::offset_of!(_zend_oparray_context, last_brk_cont) - 40usize];
5106    ["Offset of field: _zend_oparray_context::brk_cont_array"]
5107        [::std::mem::offset_of!(_zend_oparray_context, brk_cont_array) - 48usize];
5108    ["Offset of field: _zend_oparray_context::labels"]
5109        [::std::mem::offset_of!(_zend_oparray_context, labels) - 56usize];
5110    ["Offset of field: _zend_oparray_context::active_property_info_name"]
5111        [::std::mem::offset_of!(_zend_oparray_context, active_property_info_name) - 64usize];
5112    ["Offset of field: _zend_oparray_context::active_property_hook_kind"]
5113        [::std::mem::offset_of!(_zend_oparray_context, active_property_hook_kind) - 72usize];
5114    ["Offset of field: _zend_oparray_context::in_jmp_frameless_branch"]
5115        [::std::mem::offset_of!(_zend_oparray_context, in_jmp_frameless_branch) - 76usize];
5116    ["Offset of field: _zend_oparray_context::has_assigned_to_http_response_header"][::std::mem::offset_of!(
5117        _zend_oparray_context,
5118        has_assigned_to_http_response_header
5119    ) - 77usize];
5120};
5121pub type zend_oparray_context = _zend_oparray_context;
5122#[repr(C)]
5123#[derive(Debug, Copy, Clone)]
5124pub struct _zend_property_info {
5125    pub offset: u32,
5126    pub flags: u32,
5127    pub name: *mut zend_string,
5128    pub doc_comment: *mut zend_string,
5129    pub attributes: *mut HashTable,
5130    pub ce: *mut zend_class_entry,
5131    pub type_: zend_type,
5132    pub prototype: *const zend_property_info,
5133    pub hooks: *mut *mut zend_function,
5134}
5135#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5136const _: () = {
5137    ["Size of _zend_property_info"][::std::mem::size_of::<_zend_property_info>() - 72usize];
5138    ["Alignment of _zend_property_info"][::std::mem::align_of::<_zend_property_info>() - 8usize];
5139    ["Offset of field: _zend_property_info::offset"]
5140        [::std::mem::offset_of!(_zend_property_info, offset) - 0usize];
5141    ["Offset of field: _zend_property_info::flags"]
5142        [::std::mem::offset_of!(_zend_property_info, flags) - 4usize];
5143    ["Offset of field: _zend_property_info::name"]
5144        [::std::mem::offset_of!(_zend_property_info, name) - 8usize];
5145    ["Offset of field: _zend_property_info::doc_comment"]
5146        [::std::mem::offset_of!(_zend_property_info, doc_comment) - 16usize];
5147    ["Offset of field: _zend_property_info::attributes"]
5148        [::std::mem::offset_of!(_zend_property_info, attributes) - 24usize];
5149    ["Offset of field: _zend_property_info::ce"]
5150        [::std::mem::offset_of!(_zend_property_info, ce) - 32usize];
5151    ["Offset of field: _zend_property_info::type_"]
5152        [::std::mem::offset_of!(_zend_property_info, type_) - 40usize];
5153    ["Offset of field: _zend_property_info::prototype"]
5154        [::std::mem::offset_of!(_zend_property_info, prototype) - 56usize];
5155    ["Offset of field: _zend_property_info::hooks"]
5156        [::std::mem::offset_of!(_zend_property_info, hooks) - 64usize];
5157};
5158#[repr(C)]
5159#[derive(Copy, Clone)]
5160pub struct _zend_class_constant {
5161    pub value: zval,
5162    pub doc_comment: *mut zend_string,
5163    pub attributes: *mut HashTable,
5164    pub ce: *mut zend_class_entry,
5165    pub type_: zend_type,
5166}
5167#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5168const _: () = {
5169    ["Size of _zend_class_constant"][::std::mem::size_of::<_zend_class_constant>() - 56usize];
5170    ["Alignment of _zend_class_constant"][::std::mem::align_of::<_zend_class_constant>() - 8usize];
5171    ["Offset of field: _zend_class_constant::value"]
5172        [::std::mem::offset_of!(_zend_class_constant, value) - 0usize];
5173    ["Offset of field: _zend_class_constant::doc_comment"]
5174        [::std::mem::offset_of!(_zend_class_constant, doc_comment) - 16usize];
5175    ["Offset of field: _zend_class_constant::attributes"]
5176        [::std::mem::offset_of!(_zend_class_constant, attributes) - 24usize];
5177    ["Offset of field: _zend_class_constant::ce"]
5178        [::std::mem::offset_of!(_zend_class_constant, ce) - 32usize];
5179    ["Offset of field: _zend_class_constant::type_"]
5180        [::std::mem::offset_of!(_zend_class_constant, type_) - 40usize];
5181};
5182pub type zend_class_constant = _zend_class_constant;
5183#[repr(C)]
5184#[derive(Debug, Copy, Clone)]
5185pub struct _zend_internal_arg_info {
5186    pub name: *const ::std::os::raw::c_char,
5187    pub type_: zend_type,
5188    pub default_value: *const ::std::os::raw::c_char,
5189}
5190#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5191const _: () = {
5192    ["Size of _zend_internal_arg_info"][::std::mem::size_of::<_zend_internal_arg_info>() - 32usize];
5193    ["Alignment of _zend_internal_arg_info"]
5194        [::std::mem::align_of::<_zend_internal_arg_info>() - 8usize];
5195    ["Offset of field: _zend_internal_arg_info::name"]
5196        [::std::mem::offset_of!(_zend_internal_arg_info, name) - 0usize];
5197    ["Offset of field: _zend_internal_arg_info::type_"]
5198        [::std::mem::offset_of!(_zend_internal_arg_info, type_) - 8usize];
5199    ["Offset of field: _zend_internal_arg_info::default_value"]
5200        [::std::mem::offset_of!(_zend_internal_arg_info, default_value) - 24usize];
5201};
5202pub type zend_internal_arg_info = _zend_internal_arg_info;
5203#[repr(C)]
5204#[derive(Debug, Copy, Clone)]
5205pub struct _zend_arg_info {
5206    pub name: *mut zend_string,
5207    pub type_: zend_type,
5208    pub default_value: *mut zend_string,
5209}
5210#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5211const _: () = {
5212    ["Size of _zend_arg_info"][::std::mem::size_of::<_zend_arg_info>() - 32usize];
5213    ["Alignment of _zend_arg_info"][::std::mem::align_of::<_zend_arg_info>() - 8usize];
5214    ["Offset of field: _zend_arg_info::name"]
5215        [::std::mem::offset_of!(_zend_arg_info, name) - 0usize];
5216    ["Offset of field: _zend_arg_info::type_"]
5217        [::std::mem::offset_of!(_zend_arg_info, type_) - 8usize];
5218    ["Offset of field: _zend_arg_info::default_value"]
5219        [::std::mem::offset_of!(_zend_arg_info, default_value) - 24usize];
5220};
5221pub type zend_arg_info = _zend_arg_info;
5222#[repr(C)]
5223#[derive(Debug, Copy, Clone)]
5224pub struct _zend_internal_function_info {
5225    pub required_num_args: usize,
5226    pub type_: zend_type,
5227    pub default_value: *const ::std::os::raw::c_char,
5228}
5229#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5230const _: () = {
5231    ["Size of _zend_internal_function_info"]
5232        [::std::mem::size_of::<_zend_internal_function_info>() - 32usize];
5233    ["Alignment of _zend_internal_function_info"]
5234        [::std::mem::align_of::<_zend_internal_function_info>() - 8usize];
5235    ["Offset of field: _zend_internal_function_info::required_num_args"]
5236        [::std::mem::offset_of!(_zend_internal_function_info, required_num_args) - 0usize];
5237    ["Offset of field: _zend_internal_function_info::type_"]
5238        [::std::mem::offset_of!(_zend_internal_function_info, type_) - 8usize];
5239    ["Offset of field: _zend_internal_function_info::default_value"]
5240        [::std::mem::offset_of!(_zend_internal_function_info, default_value) - 24usize];
5241};
5242pub type zend_internal_function_info = _zend_internal_function_info;
5243#[repr(C)]
5244#[derive(Debug, Copy, Clone)]
5245pub struct _zend_op_array {
5246    pub type_: u8,
5247    pub arg_flags: [u8; 3usize],
5248    pub fn_flags: u32,
5249    pub function_name: *mut zend_string,
5250    pub scope: *mut zend_class_entry,
5251    pub prototype: *mut zend_function,
5252    pub num_args: u32,
5253    pub required_num_args: u32,
5254    pub arg_info: *mut zend_arg_info,
5255    pub attributes: *mut HashTable,
5256    pub run_time_cache__ptr: *mut *mut ::std::os::raw::c_void,
5257    pub doc_comment: *mut zend_string,
5258    pub T: u32,
5259    pub prop_info: *const zend_property_info,
5260    pub cache_size: ::std::os::raw::c_int,
5261    pub last_var: ::std::os::raw::c_int,
5262    pub last: u32,
5263    pub opcodes: *mut zend_op,
5264    pub static_variables_ptr__ptr: *mut HashTable,
5265    pub static_variables: *mut HashTable,
5266    pub vars: *mut *mut zend_string,
5267    pub refcount: *mut u32,
5268    pub last_live_range: ::std::os::raw::c_int,
5269    pub last_try_catch: ::std::os::raw::c_int,
5270    pub live_range: *mut zend_live_range,
5271    pub try_catch_array: *mut zend_try_catch_element,
5272    pub filename: *mut zend_string,
5273    pub line_start: u32,
5274    pub line_end: u32,
5275    pub last_literal: ::std::os::raw::c_int,
5276    pub num_dynamic_func_defs: u32,
5277    pub literals: *mut zval,
5278    pub dynamic_func_defs: *mut *mut zend_op_array,
5279    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
5280}
5281#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5282const _: () = {
5283    ["Size of _zend_op_array"][::std::mem::size_of::<_zend_op_array>() - 256usize];
5284    ["Alignment of _zend_op_array"][::std::mem::align_of::<_zend_op_array>() - 8usize];
5285    ["Offset of field: _zend_op_array::type_"]
5286        [::std::mem::offset_of!(_zend_op_array, type_) - 0usize];
5287    ["Offset of field: _zend_op_array::arg_flags"]
5288        [::std::mem::offset_of!(_zend_op_array, arg_flags) - 1usize];
5289    ["Offset of field: _zend_op_array::fn_flags"]
5290        [::std::mem::offset_of!(_zend_op_array, fn_flags) - 4usize];
5291    ["Offset of field: _zend_op_array::function_name"]
5292        [::std::mem::offset_of!(_zend_op_array, function_name) - 8usize];
5293    ["Offset of field: _zend_op_array::scope"]
5294        [::std::mem::offset_of!(_zend_op_array, scope) - 16usize];
5295    ["Offset of field: _zend_op_array::prototype"]
5296        [::std::mem::offset_of!(_zend_op_array, prototype) - 24usize];
5297    ["Offset of field: _zend_op_array::num_args"]
5298        [::std::mem::offset_of!(_zend_op_array, num_args) - 32usize];
5299    ["Offset of field: _zend_op_array::required_num_args"]
5300        [::std::mem::offset_of!(_zend_op_array, required_num_args) - 36usize];
5301    ["Offset of field: _zend_op_array::arg_info"]
5302        [::std::mem::offset_of!(_zend_op_array, arg_info) - 40usize];
5303    ["Offset of field: _zend_op_array::attributes"]
5304        [::std::mem::offset_of!(_zend_op_array, attributes) - 48usize];
5305    ["Offset of field: _zend_op_array::run_time_cache__ptr"]
5306        [::std::mem::offset_of!(_zend_op_array, run_time_cache__ptr) - 56usize];
5307    ["Offset of field: _zend_op_array::doc_comment"]
5308        [::std::mem::offset_of!(_zend_op_array, doc_comment) - 64usize];
5309    ["Offset of field: _zend_op_array::T"][::std::mem::offset_of!(_zend_op_array, T) - 72usize];
5310    ["Offset of field: _zend_op_array::prop_info"]
5311        [::std::mem::offset_of!(_zend_op_array, prop_info) - 80usize];
5312    ["Offset of field: _zend_op_array::cache_size"]
5313        [::std::mem::offset_of!(_zend_op_array, cache_size) - 88usize];
5314    ["Offset of field: _zend_op_array::last_var"]
5315        [::std::mem::offset_of!(_zend_op_array, last_var) - 92usize];
5316    ["Offset of field: _zend_op_array::last"]
5317        [::std::mem::offset_of!(_zend_op_array, last) - 96usize];
5318    ["Offset of field: _zend_op_array::opcodes"]
5319        [::std::mem::offset_of!(_zend_op_array, opcodes) - 104usize];
5320    ["Offset of field: _zend_op_array::static_variables_ptr__ptr"]
5321        [::std::mem::offset_of!(_zend_op_array, static_variables_ptr__ptr) - 112usize];
5322    ["Offset of field: _zend_op_array::static_variables"]
5323        [::std::mem::offset_of!(_zend_op_array, static_variables) - 120usize];
5324    ["Offset of field: _zend_op_array::vars"]
5325        [::std::mem::offset_of!(_zend_op_array, vars) - 128usize];
5326    ["Offset of field: _zend_op_array::refcount"]
5327        [::std::mem::offset_of!(_zend_op_array, refcount) - 136usize];
5328    ["Offset of field: _zend_op_array::last_live_range"]
5329        [::std::mem::offset_of!(_zend_op_array, last_live_range) - 144usize];
5330    ["Offset of field: _zend_op_array::last_try_catch"]
5331        [::std::mem::offset_of!(_zend_op_array, last_try_catch) - 148usize];
5332    ["Offset of field: _zend_op_array::live_range"]
5333        [::std::mem::offset_of!(_zend_op_array, live_range) - 152usize];
5334    ["Offset of field: _zend_op_array::try_catch_array"]
5335        [::std::mem::offset_of!(_zend_op_array, try_catch_array) - 160usize];
5336    ["Offset of field: _zend_op_array::filename"]
5337        [::std::mem::offset_of!(_zend_op_array, filename) - 168usize];
5338    ["Offset of field: _zend_op_array::line_start"]
5339        [::std::mem::offset_of!(_zend_op_array, line_start) - 176usize];
5340    ["Offset of field: _zend_op_array::line_end"]
5341        [::std::mem::offset_of!(_zend_op_array, line_end) - 180usize];
5342    ["Offset of field: _zend_op_array::last_literal"]
5343        [::std::mem::offset_of!(_zend_op_array, last_literal) - 184usize];
5344    ["Offset of field: _zend_op_array::num_dynamic_func_defs"]
5345        [::std::mem::offset_of!(_zend_op_array, num_dynamic_func_defs) - 188usize];
5346    ["Offset of field: _zend_op_array::literals"]
5347        [::std::mem::offset_of!(_zend_op_array, literals) - 192usize];
5348    ["Offset of field: _zend_op_array::dynamic_func_defs"]
5349        [::std::mem::offset_of!(_zend_op_array, dynamic_func_defs) - 200usize];
5350    ["Offset of field: _zend_op_array::reserved"]
5351        [::std::mem::offset_of!(_zend_op_array, reserved) - 208usize];
5352};
5353pub type zif_handler = ::std::option::Option<
5354    unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval),
5355>;
5356#[repr(C)]
5357#[derive(Debug, Copy, Clone)]
5358pub struct _zend_internal_function {
5359    pub type_: u8,
5360    pub arg_flags: [u8; 3usize],
5361    pub fn_flags: u32,
5362    pub function_name: *mut zend_string,
5363    pub scope: *mut zend_class_entry,
5364    pub prototype: *mut zend_function,
5365    pub num_args: u32,
5366    pub required_num_args: u32,
5367    pub arg_info: *mut zend_internal_arg_info,
5368    pub attributes: *mut HashTable,
5369    pub run_time_cache__ptr: *mut *mut ::std::os::raw::c_void,
5370    pub doc_comment: *mut zend_string,
5371    pub T: u32,
5372    pub prop_info: *const zend_property_info,
5373    pub handler: zif_handler,
5374    pub module: *mut _zend_module_entry,
5375    pub frameless_function_infos: *const zend_frameless_function_info,
5376    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
5377}
5378#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5379const _: () = {
5380    ["Size of _zend_internal_function"]
5381        [::std::mem::size_of::<_zend_internal_function>() - 160usize];
5382    ["Alignment of _zend_internal_function"]
5383        [::std::mem::align_of::<_zend_internal_function>() - 8usize];
5384    ["Offset of field: _zend_internal_function::type_"]
5385        [::std::mem::offset_of!(_zend_internal_function, type_) - 0usize];
5386    ["Offset of field: _zend_internal_function::arg_flags"]
5387        [::std::mem::offset_of!(_zend_internal_function, arg_flags) - 1usize];
5388    ["Offset of field: _zend_internal_function::fn_flags"]
5389        [::std::mem::offset_of!(_zend_internal_function, fn_flags) - 4usize];
5390    ["Offset of field: _zend_internal_function::function_name"]
5391        [::std::mem::offset_of!(_zend_internal_function, function_name) - 8usize];
5392    ["Offset of field: _zend_internal_function::scope"]
5393        [::std::mem::offset_of!(_zend_internal_function, scope) - 16usize];
5394    ["Offset of field: _zend_internal_function::prototype"]
5395        [::std::mem::offset_of!(_zend_internal_function, prototype) - 24usize];
5396    ["Offset of field: _zend_internal_function::num_args"]
5397        [::std::mem::offset_of!(_zend_internal_function, num_args) - 32usize];
5398    ["Offset of field: _zend_internal_function::required_num_args"]
5399        [::std::mem::offset_of!(_zend_internal_function, required_num_args) - 36usize];
5400    ["Offset of field: _zend_internal_function::arg_info"]
5401        [::std::mem::offset_of!(_zend_internal_function, arg_info) - 40usize];
5402    ["Offset of field: _zend_internal_function::attributes"]
5403        [::std::mem::offset_of!(_zend_internal_function, attributes) - 48usize];
5404    ["Offset of field: _zend_internal_function::run_time_cache__ptr"]
5405        [::std::mem::offset_of!(_zend_internal_function, run_time_cache__ptr) - 56usize];
5406    ["Offset of field: _zend_internal_function::doc_comment"]
5407        [::std::mem::offset_of!(_zend_internal_function, doc_comment) - 64usize];
5408    ["Offset of field: _zend_internal_function::T"]
5409        [::std::mem::offset_of!(_zend_internal_function, T) - 72usize];
5410    ["Offset of field: _zend_internal_function::prop_info"]
5411        [::std::mem::offset_of!(_zend_internal_function, prop_info) - 80usize];
5412    ["Offset of field: _zend_internal_function::handler"]
5413        [::std::mem::offset_of!(_zend_internal_function, handler) - 88usize];
5414    ["Offset of field: _zend_internal_function::module"]
5415        [::std::mem::offset_of!(_zend_internal_function, module) - 96usize];
5416    ["Offset of field: _zend_internal_function::frameless_function_infos"]
5417        [::std::mem::offset_of!(_zend_internal_function, frameless_function_infos) - 104usize];
5418    ["Offset of field: _zend_internal_function::reserved"]
5419        [::std::mem::offset_of!(_zend_internal_function, reserved) - 112usize];
5420};
5421pub type zend_internal_function = _zend_internal_function;
5422#[repr(C)]
5423#[derive(Copy, Clone)]
5424pub union _zend_function {
5425    pub type_: u8,
5426    pub quick_arg_flags: u32,
5427    pub common: _zend_function__common,
5428    pub op_array: zend_op_array,
5429    pub internal_function: zend_internal_function,
5430}
5431#[repr(C)]
5432#[derive(Debug, Copy, Clone)]
5433pub struct _zend_function__common {
5434    pub type_: u8,
5435    pub arg_flags: [u8; 3usize],
5436    pub fn_flags: u32,
5437    pub function_name: *mut zend_string,
5438    pub scope: *mut zend_class_entry,
5439    pub prototype: *mut zend_function,
5440    pub num_args: u32,
5441    pub required_num_args: u32,
5442    pub arg_info: *mut zend_arg_info,
5443    pub attributes: *mut HashTable,
5444    pub run_time_cache__ptr: *mut *mut ::std::os::raw::c_void,
5445    pub doc_comment: *mut zend_string,
5446    pub T: u32,
5447    pub prop_info: *const zend_property_info,
5448}
5449#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5450const _: () = {
5451    ["Size of _zend_function__common"][::std::mem::size_of::<_zend_function__common>() - 88usize];
5452    ["Alignment of _zend_function__common"]
5453        [::std::mem::align_of::<_zend_function__common>() - 8usize];
5454    ["Offset of field: _zend_function__common::type_"]
5455        [::std::mem::offset_of!(_zend_function__common, type_) - 0usize];
5456    ["Offset of field: _zend_function__common::arg_flags"]
5457        [::std::mem::offset_of!(_zend_function__common, arg_flags) - 1usize];
5458    ["Offset of field: _zend_function__common::fn_flags"]
5459        [::std::mem::offset_of!(_zend_function__common, fn_flags) - 4usize];
5460    ["Offset of field: _zend_function__common::function_name"]
5461        [::std::mem::offset_of!(_zend_function__common, function_name) - 8usize];
5462    ["Offset of field: _zend_function__common::scope"]
5463        [::std::mem::offset_of!(_zend_function__common, scope) - 16usize];
5464    ["Offset of field: _zend_function__common::prototype"]
5465        [::std::mem::offset_of!(_zend_function__common, prototype) - 24usize];
5466    ["Offset of field: _zend_function__common::num_args"]
5467        [::std::mem::offset_of!(_zend_function__common, num_args) - 32usize];
5468    ["Offset of field: _zend_function__common::required_num_args"]
5469        [::std::mem::offset_of!(_zend_function__common, required_num_args) - 36usize];
5470    ["Offset of field: _zend_function__common::arg_info"]
5471        [::std::mem::offset_of!(_zend_function__common, arg_info) - 40usize];
5472    ["Offset of field: _zend_function__common::attributes"]
5473        [::std::mem::offset_of!(_zend_function__common, attributes) - 48usize];
5474    ["Offset of field: _zend_function__common::run_time_cache__ptr"]
5475        [::std::mem::offset_of!(_zend_function__common, run_time_cache__ptr) - 56usize];
5476    ["Offset of field: _zend_function__common::doc_comment"]
5477        [::std::mem::offset_of!(_zend_function__common, doc_comment) - 64usize];
5478    ["Offset of field: _zend_function__common::T"]
5479        [::std::mem::offset_of!(_zend_function__common, T) - 72usize];
5480    ["Offset of field: _zend_function__common::prop_info"]
5481        [::std::mem::offset_of!(_zend_function__common, prop_info) - 80usize];
5482};
5483#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5484const _: () = {
5485    ["Size of _zend_function"][::std::mem::size_of::<_zend_function>() - 256usize];
5486    ["Alignment of _zend_function"][::std::mem::align_of::<_zend_function>() - 8usize];
5487    ["Offset of field: _zend_function::type_"]
5488        [::std::mem::offset_of!(_zend_function, type_) - 0usize];
5489    ["Offset of field: _zend_function::quick_arg_flags"]
5490        [::std::mem::offset_of!(_zend_function, quick_arg_flags) - 0usize];
5491    ["Offset of field: _zend_function::common"]
5492        [::std::mem::offset_of!(_zend_function, common) - 0usize];
5493    ["Offset of field: _zend_function::op_array"]
5494        [::std::mem::offset_of!(_zend_function, op_array) - 0usize];
5495    ["Offset of field: _zend_function::internal_function"]
5496        [::std::mem::offset_of!(_zend_function, internal_function) - 0usize];
5497};
5498#[repr(C)]
5499#[derive(Copy, Clone)]
5500pub struct _zend_execute_data {
5501    pub opline: *const zend_op,
5502    pub call: *mut zend_execute_data,
5503    pub return_value: *mut zval,
5504    pub func: *mut zend_function,
5505    pub This: zval,
5506    pub prev_execute_data: *mut zend_execute_data,
5507    pub symbol_table: *mut zend_array,
5508    pub run_time_cache: *mut *mut ::std::os::raw::c_void,
5509    pub extra_named_params: *mut zend_array,
5510}
5511#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5512const _: () = {
5513    ["Size of _zend_execute_data"][::std::mem::size_of::<_zend_execute_data>() - 80usize];
5514    ["Alignment of _zend_execute_data"][::std::mem::align_of::<_zend_execute_data>() - 8usize];
5515    ["Offset of field: _zend_execute_data::opline"]
5516        [::std::mem::offset_of!(_zend_execute_data, opline) - 0usize];
5517    ["Offset of field: _zend_execute_data::call"]
5518        [::std::mem::offset_of!(_zend_execute_data, call) - 8usize];
5519    ["Offset of field: _zend_execute_data::return_value"]
5520        [::std::mem::offset_of!(_zend_execute_data, return_value) - 16usize];
5521    ["Offset of field: _zend_execute_data::func"]
5522        [::std::mem::offset_of!(_zend_execute_data, func) - 24usize];
5523    ["Offset of field: _zend_execute_data::This"]
5524        [::std::mem::offset_of!(_zend_execute_data, This) - 32usize];
5525    ["Offset of field: _zend_execute_data::prev_execute_data"]
5526        [::std::mem::offset_of!(_zend_execute_data, prev_execute_data) - 48usize];
5527    ["Offset of field: _zend_execute_data::symbol_table"]
5528        [::std::mem::offset_of!(_zend_execute_data, symbol_table) - 56usize];
5529    ["Offset of field: _zend_execute_data::run_time_cache"]
5530        [::std::mem::offset_of!(_zend_execute_data, run_time_cache) - 64usize];
5531    ["Offset of field: _zend_execute_data::extra_named_params"]
5532        [::std::mem::offset_of!(_zend_execute_data, extra_named_params) - 72usize];
5533};
5534pub type __jmp_buf = [::std::os::raw::c_long; 8usize];
5535#[repr(C)]
5536#[derive(Debug, Copy, Clone)]
5537pub struct __jmp_buf_tag {
5538    pub __jmpbuf: __jmp_buf,
5539    pub __mask_was_saved: ::std::os::raw::c_int,
5540    pub __saved_mask: __sigset_t,
5541}
5542#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5543const _: () = {
5544    ["Size of __jmp_buf_tag"][::std::mem::size_of::<__jmp_buf_tag>() - 200usize];
5545    ["Alignment of __jmp_buf_tag"][::std::mem::align_of::<__jmp_buf_tag>() - 8usize];
5546    ["Offset of field: __jmp_buf_tag::__jmpbuf"]
5547        [::std::mem::offset_of!(__jmp_buf_tag, __jmpbuf) - 0usize];
5548    ["Offset of field: __jmp_buf_tag::__mask_was_saved"]
5549        [::std::mem::offset_of!(__jmp_buf_tag, __mask_was_saved) - 64usize];
5550    ["Offset of field: __jmp_buf_tag::__saved_mask"]
5551        [::std::mem::offset_of!(__jmp_buf_tag, __saved_mask) - 72usize];
5552};
5553pub type sigjmp_buf = [__jmp_buf_tag; 1usize];
5554pub type zend_compiler_globals = _zend_compiler_globals;
5555pub type zend_executor_globals = _zend_executor_globals;
5556pub type zend_php_scanner_globals = _zend_php_scanner_globals;
5557pub type zend_ini_scanner_globals = _zend_ini_scanner_globals;
5558#[repr(C)]
5559#[derive(Copy, Clone)]
5560pub struct _zend_compiler_globals {
5561    pub loop_var_stack: zend_stack,
5562    pub active_class_entry: *mut zend_class_entry,
5563    pub compiled_filename: *mut zend_string,
5564    pub zend_lineno: ::std::os::raw::c_int,
5565    pub active_op_array: *mut zend_op_array,
5566    pub function_table: *mut HashTable,
5567    pub class_table: *mut HashTable,
5568    pub auto_globals: *mut HashTable,
5569    pub parse_error: u8,
5570    pub in_compilation: bool,
5571    pub short_tags: bool,
5572    pub unclean_shutdown: bool,
5573    pub ini_parser_unbuffered_errors: bool,
5574    pub open_files: zend_llist,
5575    pub ini_parser_param: *mut _zend_ini_parser_param,
5576    pub skip_shebang: bool,
5577    pub increment_lineno: bool,
5578    pub variable_width_locale: bool,
5579    pub ascii_compatible_locale: bool,
5580    pub doc_comment: *mut zend_string,
5581    pub extra_fn_flags: u32,
5582    pub compiler_options: u32,
5583    pub context: zend_oparray_context,
5584    pub file_context: zend_file_context,
5585    pub arena: *mut zend_arena,
5586    pub interned_strings: HashTable,
5587    pub script_encoding_list: *mut *const zend_encoding,
5588    pub script_encoding_list_size: usize,
5589    pub multibyte: bool,
5590    pub detect_unicode: bool,
5591    pub encoding_declared: bool,
5592    pub interned_strings_fallible: bool,
5593    pub ast: *mut zend_ast,
5594    pub ast_arena: *mut zend_arena,
5595    pub delayed_oplines_stack: zend_stack,
5596    pub memoized_exprs: *mut HashTable,
5597    pub memoize_mode: zend_memoize_mode::Type,
5598    pub map_ptr_real_base: *mut ::std::os::raw::c_void,
5599    pub map_ptr_base: *mut ::std::os::raw::c_void,
5600    pub map_ptr_size: usize,
5601    pub map_ptr_last: usize,
5602    pub delayed_variance_obligations: *mut HashTable,
5603    pub delayed_autoloads: *mut HashTable,
5604    pub unlinked_uses: *mut HashTable,
5605    pub current_linking_class: *mut zend_class_entry,
5606    pub rtd_key_counter: u32,
5607    pub internal_run_time_cache: *mut ::std::os::raw::c_void,
5608    pub internal_run_time_cache_size: u32,
5609    pub short_circuiting_opnums: zend_stack,
5610}
5611#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5612const _: () = {
5613    ["Size of _zend_compiler_globals"][::std::mem::size_of::<_zend_compiler_globals>() - 616usize];
5614    ["Alignment of _zend_compiler_globals"]
5615        [::std::mem::align_of::<_zend_compiler_globals>() - 8usize];
5616    ["Offset of field: _zend_compiler_globals::loop_var_stack"]
5617        [::std::mem::offset_of!(_zend_compiler_globals, loop_var_stack) - 0usize];
5618    ["Offset of field: _zend_compiler_globals::active_class_entry"]
5619        [::std::mem::offset_of!(_zend_compiler_globals, active_class_entry) - 24usize];
5620    ["Offset of field: _zend_compiler_globals::compiled_filename"]
5621        [::std::mem::offset_of!(_zend_compiler_globals, compiled_filename) - 32usize];
5622    ["Offset of field: _zend_compiler_globals::zend_lineno"]
5623        [::std::mem::offset_of!(_zend_compiler_globals, zend_lineno) - 40usize];
5624    ["Offset of field: _zend_compiler_globals::active_op_array"]
5625        [::std::mem::offset_of!(_zend_compiler_globals, active_op_array) - 48usize];
5626    ["Offset of field: _zend_compiler_globals::function_table"]
5627        [::std::mem::offset_of!(_zend_compiler_globals, function_table) - 56usize];
5628    ["Offset of field: _zend_compiler_globals::class_table"]
5629        [::std::mem::offset_of!(_zend_compiler_globals, class_table) - 64usize];
5630    ["Offset of field: _zend_compiler_globals::auto_globals"]
5631        [::std::mem::offset_of!(_zend_compiler_globals, auto_globals) - 72usize];
5632    ["Offset of field: _zend_compiler_globals::parse_error"]
5633        [::std::mem::offset_of!(_zend_compiler_globals, parse_error) - 80usize];
5634    ["Offset of field: _zend_compiler_globals::in_compilation"]
5635        [::std::mem::offset_of!(_zend_compiler_globals, in_compilation) - 81usize];
5636    ["Offset of field: _zend_compiler_globals::short_tags"]
5637        [::std::mem::offset_of!(_zend_compiler_globals, short_tags) - 82usize];
5638    ["Offset of field: _zend_compiler_globals::unclean_shutdown"]
5639        [::std::mem::offset_of!(_zend_compiler_globals, unclean_shutdown) - 83usize];
5640    ["Offset of field: _zend_compiler_globals::ini_parser_unbuffered_errors"]
5641        [::std::mem::offset_of!(_zend_compiler_globals, ini_parser_unbuffered_errors) - 84usize];
5642    ["Offset of field: _zend_compiler_globals::open_files"]
5643        [::std::mem::offset_of!(_zend_compiler_globals, open_files) - 88usize];
5644    ["Offset of field: _zend_compiler_globals::ini_parser_param"]
5645        [::std::mem::offset_of!(_zend_compiler_globals, ini_parser_param) - 144usize];
5646    ["Offset of field: _zend_compiler_globals::skip_shebang"]
5647        [::std::mem::offset_of!(_zend_compiler_globals, skip_shebang) - 152usize];
5648    ["Offset of field: _zend_compiler_globals::increment_lineno"]
5649        [::std::mem::offset_of!(_zend_compiler_globals, increment_lineno) - 153usize];
5650    ["Offset of field: _zend_compiler_globals::variable_width_locale"]
5651        [::std::mem::offset_of!(_zend_compiler_globals, variable_width_locale) - 154usize];
5652    ["Offset of field: _zend_compiler_globals::ascii_compatible_locale"]
5653        [::std::mem::offset_of!(_zend_compiler_globals, ascii_compatible_locale) - 155usize];
5654    ["Offset of field: _zend_compiler_globals::doc_comment"]
5655        [::std::mem::offset_of!(_zend_compiler_globals, doc_comment) - 160usize];
5656    ["Offset of field: _zend_compiler_globals::extra_fn_flags"]
5657        [::std::mem::offset_of!(_zend_compiler_globals, extra_fn_flags) - 168usize];
5658    ["Offset of field: _zend_compiler_globals::compiler_options"]
5659        [::std::mem::offset_of!(_zend_compiler_globals, compiler_options) - 172usize];
5660    ["Offset of field: _zend_compiler_globals::context"]
5661        [::std::mem::offset_of!(_zend_compiler_globals, context) - 176usize];
5662    ["Offset of field: _zend_compiler_globals::file_context"]
5663        [::std::mem::offset_of!(_zend_compiler_globals, file_context) - 256usize];
5664    ["Offset of field: _zend_compiler_globals::arena"]
5665        [::std::mem::offset_of!(_zend_compiler_globals, arena) - 360usize];
5666    ["Offset of field: _zend_compiler_globals::interned_strings"]
5667        [::std::mem::offset_of!(_zend_compiler_globals, interned_strings) - 368usize];
5668    ["Offset of field: _zend_compiler_globals::script_encoding_list"]
5669        [::std::mem::offset_of!(_zend_compiler_globals, script_encoding_list) - 424usize];
5670    ["Offset of field: _zend_compiler_globals::script_encoding_list_size"]
5671        [::std::mem::offset_of!(_zend_compiler_globals, script_encoding_list_size) - 432usize];
5672    ["Offset of field: _zend_compiler_globals::multibyte"]
5673        [::std::mem::offset_of!(_zend_compiler_globals, multibyte) - 440usize];
5674    ["Offset of field: _zend_compiler_globals::detect_unicode"]
5675        [::std::mem::offset_of!(_zend_compiler_globals, detect_unicode) - 441usize];
5676    ["Offset of field: _zend_compiler_globals::encoding_declared"]
5677        [::std::mem::offset_of!(_zend_compiler_globals, encoding_declared) - 442usize];
5678    ["Offset of field: _zend_compiler_globals::interned_strings_fallible"]
5679        [::std::mem::offset_of!(_zend_compiler_globals, interned_strings_fallible) - 443usize];
5680    ["Offset of field: _zend_compiler_globals::ast"]
5681        [::std::mem::offset_of!(_zend_compiler_globals, ast) - 448usize];
5682    ["Offset of field: _zend_compiler_globals::ast_arena"]
5683        [::std::mem::offset_of!(_zend_compiler_globals, ast_arena) - 456usize];
5684    ["Offset of field: _zend_compiler_globals::delayed_oplines_stack"]
5685        [::std::mem::offset_of!(_zend_compiler_globals, delayed_oplines_stack) - 464usize];
5686    ["Offset of field: _zend_compiler_globals::memoized_exprs"]
5687        [::std::mem::offset_of!(_zend_compiler_globals, memoized_exprs) - 488usize];
5688    ["Offset of field: _zend_compiler_globals::memoize_mode"]
5689        [::std::mem::offset_of!(_zend_compiler_globals, memoize_mode) - 496usize];
5690    ["Offset of field: _zend_compiler_globals::map_ptr_real_base"]
5691        [::std::mem::offset_of!(_zend_compiler_globals, map_ptr_real_base) - 504usize];
5692    ["Offset of field: _zend_compiler_globals::map_ptr_base"]
5693        [::std::mem::offset_of!(_zend_compiler_globals, map_ptr_base) - 512usize];
5694    ["Offset of field: _zend_compiler_globals::map_ptr_size"]
5695        [::std::mem::offset_of!(_zend_compiler_globals, map_ptr_size) - 520usize];
5696    ["Offset of field: _zend_compiler_globals::map_ptr_last"]
5697        [::std::mem::offset_of!(_zend_compiler_globals, map_ptr_last) - 528usize];
5698    ["Offset of field: _zend_compiler_globals::delayed_variance_obligations"]
5699        [::std::mem::offset_of!(_zend_compiler_globals, delayed_variance_obligations) - 536usize];
5700    ["Offset of field: _zend_compiler_globals::delayed_autoloads"]
5701        [::std::mem::offset_of!(_zend_compiler_globals, delayed_autoloads) - 544usize];
5702    ["Offset of field: _zend_compiler_globals::unlinked_uses"]
5703        [::std::mem::offset_of!(_zend_compiler_globals, unlinked_uses) - 552usize];
5704    ["Offset of field: _zend_compiler_globals::current_linking_class"]
5705        [::std::mem::offset_of!(_zend_compiler_globals, current_linking_class) - 560usize];
5706    ["Offset of field: _zend_compiler_globals::rtd_key_counter"]
5707        [::std::mem::offset_of!(_zend_compiler_globals, rtd_key_counter) - 568usize];
5708    ["Offset of field: _zend_compiler_globals::internal_run_time_cache"]
5709        [::std::mem::offset_of!(_zend_compiler_globals, internal_run_time_cache) - 576usize];
5710    ["Offset of field: _zend_compiler_globals::internal_run_time_cache_size"]
5711        [::std::mem::offset_of!(_zend_compiler_globals, internal_run_time_cache_size) - 584usize];
5712    ["Offset of field: _zend_compiler_globals::short_circuiting_opnums"]
5713        [::std::mem::offset_of!(_zend_compiler_globals, short_circuiting_opnums) - 592usize];
5714};
5715#[repr(C)]
5716#[derive(Debug, Copy, Clone)]
5717pub struct zend_atomic_bool_s {
5718    pub value: bool,
5719}
5720#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5721const _: () = {
5722    ["Size of zend_atomic_bool_s"][::std::mem::size_of::<zend_atomic_bool_s>() - 1usize];
5723    ["Alignment of zend_atomic_bool_s"][::std::mem::align_of::<zend_atomic_bool_s>() - 1usize];
5724    ["Offset of field: zend_atomic_bool_s::value"]
5725        [::std::mem::offset_of!(zend_atomic_bool_s, value) - 0usize];
5726};
5727pub type zend_atomic_bool = zend_atomic_bool_s;
5728#[repr(C)]
5729#[derive(Debug, Copy, Clone)]
5730pub struct zend_atomic_int_s {
5731    pub value: ::std::os::raw::c_int,
5732}
5733#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5734const _: () = {
5735    ["Size of zend_atomic_int_s"][::std::mem::size_of::<zend_atomic_int_s>() - 4usize];
5736    ["Alignment of zend_atomic_int_s"][::std::mem::align_of::<zend_atomic_int_s>() - 4usize];
5737    ["Offset of field: zend_atomic_int_s::value"]
5738        [::std::mem::offset_of!(zend_atomic_int_s, value) - 0usize];
5739};
5740pub type zend_atomic_int = zend_atomic_int_s;
5741#[repr(C)]
5742#[derive(Debug, Copy, Clone)]
5743pub struct _zend_stack {
5744    pub size: ::std::os::raw::c_int,
5745    pub top: ::std::os::raw::c_int,
5746    pub max: ::std::os::raw::c_int,
5747    pub elements: *mut ::std::os::raw::c_void,
5748}
5749#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5750const _: () = {
5751    ["Size of _zend_stack"][::std::mem::size_of::<_zend_stack>() - 24usize];
5752    ["Alignment of _zend_stack"][::std::mem::align_of::<_zend_stack>() - 8usize];
5753    ["Offset of field: _zend_stack::size"][::std::mem::offset_of!(_zend_stack, size) - 0usize];
5754    ["Offset of field: _zend_stack::top"][::std::mem::offset_of!(_zend_stack, top) - 4usize];
5755    ["Offset of field: _zend_stack::max"][::std::mem::offset_of!(_zend_stack, max) - 8usize];
5756    ["Offset of field: _zend_stack::elements"]
5757        [::std::mem::offset_of!(_zend_stack, elements) - 16usize];
5758};
5759pub type zend_stack = _zend_stack;
5760pub mod zend_stack_apply_direction {
5761    #[allow(unused_imports)]
5762    use super::*;
5763    pub type Type = ::std::os::raw::c_uint;
5764    pub const ZEND_STACK_APPLY_TOPDOWN: Type = 0;
5765    pub const ZEND_STACK_APPLY_BOTTOMUP: Type = 1;
5766}
5767#[repr(C)]
5768#[derive(Debug, Copy, Clone)]
5769pub struct _zend_ptr_stack {
5770    pub top: ::std::os::raw::c_int,
5771    pub max: ::std::os::raw::c_int,
5772    pub elements: *mut *mut ::std::os::raw::c_void,
5773    pub top_element: *mut *mut ::std::os::raw::c_void,
5774    pub persistent: bool,
5775}
5776#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5777const _: () = {
5778    ["Size of _zend_ptr_stack"][::std::mem::size_of::<_zend_ptr_stack>() - 32usize];
5779    ["Alignment of _zend_ptr_stack"][::std::mem::align_of::<_zend_ptr_stack>() - 8usize];
5780    ["Offset of field: _zend_ptr_stack::top"]
5781        [::std::mem::offset_of!(_zend_ptr_stack, top) - 0usize];
5782    ["Offset of field: _zend_ptr_stack::max"]
5783        [::std::mem::offset_of!(_zend_ptr_stack, max) - 4usize];
5784    ["Offset of field: _zend_ptr_stack::elements"]
5785        [::std::mem::offset_of!(_zend_ptr_stack, elements) - 8usize];
5786    ["Offset of field: _zend_ptr_stack::top_element"]
5787        [::std::mem::offset_of!(_zend_ptr_stack, top_element) - 16usize];
5788    ["Offset of field: _zend_ptr_stack::persistent"]
5789        [::std::mem::offset_of!(_zend_ptr_stack, persistent) - 24usize];
5790};
5791pub type zend_ptr_stack = _zend_ptr_stack;
5792#[repr(C)]
5793#[derive(Debug, Copy, Clone)]
5794pub struct _zend_objects_store {
5795    pub object_buckets: *mut *mut zend_object,
5796    pub top: u32,
5797    pub size: u32,
5798    pub free_list_head: ::std::os::raw::c_int,
5799}
5800#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5801const _: () = {
5802    ["Size of _zend_objects_store"][::std::mem::size_of::<_zend_objects_store>() - 24usize];
5803    ["Alignment of _zend_objects_store"][::std::mem::align_of::<_zend_objects_store>() - 8usize];
5804    ["Offset of field: _zend_objects_store::object_buckets"]
5805        [::std::mem::offset_of!(_zend_objects_store, object_buckets) - 0usize];
5806    ["Offset of field: _zend_objects_store::top"]
5807        [::std::mem::offset_of!(_zend_objects_store, top) - 8usize];
5808    ["Offset of field: _zend_objects_store::size"]
5809        [::std::mem::offset_of!(_zend_objects_store, size) - 12usize];
5810    ["Offset of field: _zend_objects_store::free_list_head"]
5811        [::std::mem::offset_of!(_zend_objects_store, free_list_head) - 16usize];
5812};
5813pub type zend_objects_store = _zend_objects_store;
5814#[repr(C)]
5815#[derive(Debug)]
5816pub struct _zend_encoding {
5817    _unused: [u8; 0],
5818}
5819pub type zend_encoding = _zend_encoding;
5820pub type zend_encoding_filter = ::std::option::Option<
5821    unsafe extern "C" fn(
5822        str_: *mut *mut ::std::os::raw::c_uchar,
5823        str_length: *mut usize,
5824        buf: *const ::std::os::raw::c_uchar,
5825        length: usize,
5826    ) -> usize,
5827>;
5828pub type zend_encoding_fetcher = ::std::option::Option<
5829    unsafe extern "C" fn(encoding_name: *const ::std::os::raw::c_char) -> *const zend_encoding,
5830>;
5831pub type zend_encoding_name_getter = ::std::option::Option<
5832    unsafe extern "C" fn(encoding: *const zend_encoding) -> *const ::std::os::raw::c_char,
5833>;
5834pub type zend_encoding_lexer_compatibility_checker =
5835    ::std::option::Option<unsafe extern "C" fn(encoding: *const zend_encoding) -> bool>;
5836pub type zend_encoding_detector = ::std::option::Option<
5837    unsafe extern "C" fn(
5838        string: *const ::std::os::raw::c_uchar,
5839        length: usize,
5840        list: *mut *const zend_encoding,
5841        list_size: usize,
5842    ) -> *const zend_encoding,
5843>;
5844pub type zend_encoding_converter = ::std::option::Option<
5845    unsafe extern "C" fn(
5846        to: *mut *mut ::std::os::raw::c_uchar,
5847        to_length: *mut usize,
5848        from: *const ::std::os::raw::c_uchar,
5849        from_length: usize,
5850        encoding_to: *const zend_encoding,
5851        encoding_from: *const zend_encoding,
5852    ) -> usize,
5853>;
5854pub type zend_encoding_list_parser = ::std::option::Option<
5855    unsafe extern "C" fn(
5856        encoding_list: *const ::std::os::raw::c_char,
5857        encoding_list_len: usize,
5858        return_list: *mut *mut *const zend_encoding,
5859        return_size: *mut usize,
5860        persistent: bool,
5861    ) -> zend_result,
5862>;
5863pub type zend_encoding_internal_encoding_getter =
5864    ::std::option::Option<unsafe extern "C" fn() -> *const zend_encoding>;
5865pub type zend_encoding_internal_encoding_setter =
5866    ::std::option::Option<unsafe extern "C" fn(encoding: *const zend_encoding) -> zend_result>;
5867#[repr(C)]
5868#[derive(Debug, Copy, Clone)]
5869pub struct _zend_multibyte_functions {
5870    pub provider_name: *const ::std::os::raw::c_char,
5871    pub encoding_fetcher: zend_encoding_fetcher,
5872    pub encoding_name_getter: zend_encoding_name_getter,
5873    pub lexer_compatibility_checker: zend_encoding_lexer_compatibility_checker,
5874    pub encoding_detector: zend_encoding_detector,
5875    pub encoding_converter: zend_encoding_converter,
5876    pub encoding_list_parser: zend_encoding_list_parser,
5877    pub internal_encoding_getter: zend_encoding_internal_encoding_getter,
5878    pub internal_encoding_setter: zend_encoding_internal_encoding_setter,
5879}
5880#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5881const _: () = {
5882    ["Size of _zend_multibyte_functions"]
5883        [::std::mem::size_of::<_zend_multibyte_functions>() - 72usize];
5884    ["Alignment of _zend_multibyte_functions"]
5885        [::std::mem::align_of::<_zend_multibyte_functions>() - 8usize];
5886    ["Offset of field: _zend_multibyte_functions::provider_name"]
5887        [::std::mem::offset_of!(_zend_multibyte_functions, provider_name) - 0usize];
5888    ["Offset of field: _zend_multibyte_functions::encoding_fetcher"]
5889        [::std::mem::offset_of!(_zend_multibyte_functions, encoding_fetcher) - 8usize];
5890    ["Offset of field: _zend_multibyte_functions::encoding_name_getter"]
5891        [::std::mem::offset_of!(_zend_multibyte_functions, encoding_name_getter) - 16usize];
5892    ["Offset of field: _zend_multibyte_functions::lexer_compatibility_checker"]
5893        [::std::mem::offset_of!(_zend_multibyte_functions, lexer_compatibility_checker) - 24usize];
5894    ["Offset of field: _zend_multibyte_functions::encoding_detector"]
5895        [::std::mem::offset_of!(_zend_multibyte_functions, encoding_detector) - 32usize];
5896    ["Offset of field: _zend_multibyte_functions::encoding_converter"]
5897        [::std::mem::offset_of!(_zend_multibyte_functions, encoding_converter) - 40usize];
5898    ["Offset of field: _zend_multibyte_functions::encoding_list_parser"]
5899        [::std::mem::offset_of!(_zend_multibyte_functions, encoding_list_parser) - 48usize];
5900    ["Offset of field: _zend_multibyte_functions::internal_encoding_getter"]
5901        [::std::mem::offset_of!(_zend_multibyte_functions, internal_encoding_getter) - 56usize];
5902    ["Offset of field: _zend_multibyte_functions::internal_encoding_setter"]
5903        [::std::mem::offset_of!(_zend_multibyte_functions, internal_encoding_setter) - 64usize];
5904};
5905pub type zend_multibyte_functions = _zend_multibyte_functions;
5906pub type zend_arena = _zend_arena;
5907#[repr(C)]
5908#[derive(Debug, Copy, Clone)]
5909pub struct _zend_arena {
5910    pub ptr: *mut ::std::os::raw::c_char,
5911    pub end: *mut ::std::os::raw::c_char,
5912    pub prev: *mut zend_arena,
5913}
5914#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5915const _: () = {
5916    ["Size of _zend_arena"][::std::mem::size_of::<_zend_arena>() - 24usize];
5917    ["Alignment of _zend_arena"][::std::mem::align_of::<_zend_arena>() - 8usize];
5918    ["Offset of field: _zend_arena::ptr"][::std::mem::offset_of!(_zend_arena, ptr) - 0usize];
5919    ["Offset of field: _zend_arena::end"][::std::mem::offset_of!(_zend_arena, end) - 8usize];
5920    ["Offset of field: _zend_arena::prev"][::std::mem::offset_of!(_zend_arena, prev) - 16usize];
5921};
5922#[repr(C)]
5923#[derive(Debug, Copy, Clone)]
5924pub struct _zend_call_stack {
5925    pub base: *mut ::std::os::raw::c_void,
5926    pub max_size: usize,
5927}
5928#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5929const _: () = {
5930    ["Size of _zend_call_stack"][::std::mem::size_of::<_zend_call_stack>() - 16usize];
5931    ["Alignment of _zend_call_stack"][::std::mem::align_of::<_zend_call_stack>() - 8usize];
5932    ["Offset of field: _zend_call_stack::base"]
5933        [::std::mem::offset_of!(_zend_call_stack, base) - 0usize];
5934    ["Offset of field: _zend_call_stack::max_size"]
5935        [::std::mem::offset_of!(_zend_call_stack, max_size) - 8usize];
5936};
5937pub type zend_call_stack = _zend_call_stack;
5938pub type zend_vm_stack = *mut _zend_vm_stack;
5939pub type zend_ini_entry = _zend_ini_entry;
5940pub type zend_fiber_context = _zend_fiber_context;
5941pub type zend_fiber = _zend_fiber;
5942pub mod zend_memoize_mode {
5943    #[allow(unused_imports)]
5944    use super::*;
5945    pub type Type = ::std::os::raw::c_uint;
5946    pub const ZEND_MEMOIZE_NONE: Type = 0;
5947    pub const ZEND_MEMOIZE_COMPILE: Type = 1;
5948    pub const ZEND_MEMOIZE_FETCH: Type = 2;
5949}
5950#[repr(C)]
5951#[derive(Copy, Clone)]
5952pub struct _zend_executor_globals {
5953    pub uninitialized_zval: zval,
5954    pub error_zval: zval,
5955    pub symtable_cache: [*mut zend_array; 32usize],
5956    pub symtable_cache_limit: *mut *mut zend_array,
5957    pub symtable_cache_ptr: *mut *mut zend_array,
5958    pub symbol_table: zend_array,
5959    pub included_files: HashTable,
5960    pub bailout: *mut sigjmp_buf,
5961    pub error_reporting: ::std::os::raw::c_int,
5962    pub fatal_error_backtrace_on: bool,
5963    pub last_fatal_error_backtrace: zval,
5964    pub exit_status: ::std::os::raw::c_int,
5965    pub function_table: *mut HashTable,
5966    pub class_table: *mut HashTable,
5967    pub zend_constants: *mut HashTable,
5968    pub vm_stack_top: *mut zval,
5969    pub vm_stack_end: *mut zval,
5970    pub vm_stack: zend_vm_stack,
5971    pub vm_stack_page_size: usize,
5972    pub current_execute_data: *mut _zend_execute_data,
5973    pub fake_scope: *const zend_class_entry,
5974    pub jit_trace_num: u32,
5975    pub current_observed_frame: *mut zend_execute_data,
5976    pub ticks_count: ::std::os::raw::c_int,
5977    pub precision: zend_long,
5978    pub persistent_constants_count: u32,
5979    pub persistent_functions_count: u32,
5980    pub persistent_classes_count: u32,
5981    pub no_extensions: bool,
5982    pub full_tables_cleanup: bool,
5983    pub vm_interrupt: zend_atomic_bool,
5984    pub timed_out: zend_atomic_bool,
5985    pub in_autoload: *mut HashTable,
5986    pub hard_timeout: zend_long,
5987    pub stack_base: *mut ::std::os::raw::c_void,
5988    pub stack_limit: *mut ::std::os::raw::c_void,
5989    pub regular_list: HashTable,
5990    pub persistent_list: HashTable,
5991    pub user_error_handler_error_reporting: ::std::os::raw::c_int,
5992    pub exception_ignore_args: bool,
5993    pub user_error_handler: zval,
5994    pub user_exception_handler: zval,
5995    pub user_error_handlers_error_reporting: zend_stack,
5996    pub user_error_handlers: zend_stack,
5997    pub user_exception_handlers: zend_stack,
5998    pub exception_class: *mut zend_class_entry,
5999    pub error_handling: zend_error_handling_t::Type,
6000    pub capture_warnings_during_sccp: ::std::os::raw::c_int,
6001    pub timeout_seconds: zend_long,
6002    pub ini_directives: *mut HashTable,
6003    pub modified_ini_directives: *mut HashTable,
6004    pub error_reporting_ini_entry: *mut zend_ini_entry,
6005    pub objects_store: zend_objects_store,
6006    pub lazy_objects_store: zend_lazy_objects_store,
6007    pub exception: *mut zend_object,
6008    pub prev_exception: *mut zend_object,
6009    pub opline_before_exception: *const zend_op,
6010    pub exception_op: [zend_op; 3usize],
6011    pub current_module: *mut _zend_module_entry,
6012    pub active: bool,
6013    pub flags: u8,
6014    pub assertions: zend_long,
6015    pub ht_iterators_count: u32,
6016    pub ht_iterators_used: u32,
6017    pub ht_iterators: *mut HashTableIterator,
6018    pub ht_iterators_slots: [HashTableIterator; 16usize],
6019    pub saved_fpu_cw_ptr: *mut ::std::os::raw::c_void,
6020    pub trampoline: zend_function,
6021    pub call_trampoline_op: zend_op,
6022    pub weakrefs: HashTable,
6023    pub exception_string_param_max_len: zend_long,
6024    pub get_gc_buffer: zend_get_gc_buffer,
6025    pub main_fiber_context: *mut zend_fiber_context,
6026    pub current_fiber_context: *mut zend_fiber_context,
6027    pub active_fiber: *mut zend_fiber,
6028    pub fiber_stack_size: usize,
6029    pub record_errors: bool,
6030    pub num_errors: u32,
6031    pub errors: *mut *mut zend_error_info,
6032    pub filename_override: *mut zend_string,
6033    pub lineno_override: zend_long,
6034    pub call_stack: zend_call_stack,
6035    pub max_allowed_stack_size: zend_long,
6036    pub reserved_stack_size: zend_ulong,
6037    pub strtod_state: zend_strtod_state,
6038    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
6039    pub delayed_oom: zend_oom_info,
6040}
6041#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6042const _: () = {
6043    ["Size of _zend_executor_globals"][::std::mem::size_of::<_zend_executor_globals>() - 2008usize];
6044    ["Alignment of _zend_executor_globals"]
6045        [::std::mem::align_of::<_zend_executor_globals>() - 8usize];
6046    ["Offset of field: _zend_executor_globals::uninitialized_zval"]
6047        [::std::mem::offset_of!(_zend_executor_globals, uninitialized_zval) - 0usize];
6048    ["Offset of field: _zend_executor_globals::error_zval"]
6049        [::std::mem::offset_of!(_zend_executor_globals, error_zval) - 16usize];
6050    ["Offset of field: _zend_executor_globals::symtable_cache"]
6051        [::std::mem::offset_of!(_zend_executor_globals, symtable_cache) - 32usize];
6052    ["Offset of field: _zend_executor_globals::symtable_cache_limit"]
6053        [::std::mem::offset_of!(_zend_executor_globals, symtable_cache_limit) - 288usize];
6054    ["Offset of field: _zend_executor_globals::symtable_cache_ptr"]
6055        [::std::mem::offset_of!(_zend_executor_globals, symtable_cache_ptr) - 296usize];
6056    ["Offset of field: _zend_executor_globals::symbol_table"]
6057        [::std::mem::offset_of!(_zend_executor_globals, symbol_table) - 304usize];
6058    ["Offset of field: _zend_executor_globals::included_files"]
6059        [::std::mem::offset_of!(_zend_executor_globals, included_files) - 360usize];
6060    ["Offset of field: _zend_executor_globals::bailout"]
6061        [::std::mem::offset_of!(_zend_executor_globals, bailout) - 416usize];
6062    ["Offset of field: _zend_executor_globals::error_reporting"]
6063        [::std::mem::offset_of!(_zend_executor_globals, error_reporting) - 424usize];
6064    ["Offset of field: _zend_executor_globals::fatal_error_backtrace_on"]
6065        [::std::mem::offset_of!(_zend_executor_globals, fatal_error_backtrace_on) - 428usize];
6066    ["Offset of field: _zend_executor_globals::last_fatal_error_backtrace"]
6067        [::std::mem::offset_of!(_zend_executor_globals, last_fatal_error_backtrace) - 432usize];
6068    ["Offset of field: _zend_executor_globals::exit_status"]
6069        [::std::mem::offset_of!(_zend_executor_globals, exit_status) - 448usize];
6070    ["Offset of field: _zend_executor_globals::function_table"]
6071        [::std::mem::offset_of!(_zend_executor_globals, function_table) - 456usize];
6072    ["Offset of field: _zend_executor_globals::class_table"]
6073        [::std::mem::offset_of!(_zend_executor_globals, class_table) - 464usize];
6074    ["Offset of field: _zend_executor_globals::zend_constants"]
6075        [::std::mem::offset_of!(_zend_executor_globals, zend_constants) - 472usize];
6076    ["Offset of field: _zend_executor_globals::vm_stack_top"]
6077        [::std::mem::offset_of!(_zend_executor_globals, vm_stack_top) - 480usize];
6078    ["Offset of field: _zend_executor_globals::vm_stack_end"]
6079        [::std::mem::offset_of!(_zend_executor_globals, vm_stack_end) - 488usize];
6080    ["Offset of field: _zend_executor_globals::vm_stack"]
6081        [::std::mem::offset_of!(_zend_executor_globals, vm_stack) - 496usize];
6082    ["Offset of field: _zend_executor_globals::vm_stack_page_size"]
6083        [::std::mem::offset_of!(_zend_executor_globals, vm_stack_page_size) - 504usize];
6084    ["Offset of field: _zend_executor_globals::current_execute_data"]
6085        [::std::mem::offset_of!(_zend_executor_globals, current_execute_data) - 512usize];
6086    ["Offset of field: _zend_executor_globals::fake_scope"]
6087        [::std::mem::offset_of!(_zend_executor_globals, fake_scope) - 520usize];
6088    ["Offset of field: _zend_executor_globals::jit_trace_num"]
6089        [::std::mem::offset_of!(_zend_executor_globals, jit_trace_num) - 528usize];
6090    ["Offset of field: _zend_executor_globals::current_observed_frame"]
6091        [::std::mem::offset_of!(_zend_executor_globals, current_observed_frame) - 536usize];
6092    ["Offset of field: _zend_executor_globals::ticks_count"]
6093        [::std::mem::offset_of!(_zend_executor_globals, ticks_count) - 544usize];
6094    ["Offset of field: _zend_executor_globals::precision"]
6095        [::std::mem::offset_of!(_zend_executor_globals, precision) - 552usize];
6096    ["Offset of field: _zend_executor_globals::persistent_constants_count"]
6097        [::std::mem::offset_of!(_zend_executor_globals, persistent_constants_count) - 560usize];
6098    ["Offset of field: _zend_executor_globals::persistent_functions_count"]
6099        [::std::mem::offset_of!(_zend_executor_globals, persistent_functions_count) - 564usize];
6100    ["Offset of field: _zend_executor_globals::persistent_classes_count"]
6101        [::std::mem::offset_of!(_zend_executor_globals, persistent_classes_count) - 568usize];
6102    ["Offset of field: _zend_executor_globals::no_extensions"]
6103        [::std::mem::offset_of!(_zend_executor_globals, no_extensions) - 572usize];
6104    ["Offset of field: _zend_executor_globals::full_tables_cleanup"]
6105        [::std::mem::offset_of!(_zend_executor_globals, full_tables_cleanup) - 573usize];
6106    ["Offset of field: _zend_executor_globals::vm_interrupt"]
6107        [::std::mem::offset_of!(_zend_executor_globals, vm_interrupt) - 574usize];
6108    ["Offset of field: _zend_executor_globals::timed_out"]
6109        [::std::mem::offset_of!(_zend_executor_globals, timed_out) - 575usize];
6110    ["Offset of field: _zend_executor_globals::in_autoload"]
6111        [::std::mem::offset_of!(_zend_executor_globals, in_autoload) - 576usize];
6112    ["Offset of field: _zend_executor_globals::hard_timeout"]
6113        [::std::mem::offset_of!(_zend_executor_globals, hard_timeout) - 584usize];
6114    ["Offset of field: _zend_executor_globals::stack_base"]
6115        [::std::mem::offset_of!(_zend_executor_globals, stack_base) - 592usize];
6116    ["Offset of field: _zend_executor_globals::stack_limit"]
6117        [::std::mem::offset_of!(_zend_executor_globals, stack_limit) - 600usize];
6118    ["Offset of field: _zend_executor_globals::regular_list"]
6119        [::std::mem::offset_of!(_zend_executor_globals, regular_list) - 608usize];
6120    ["Offset of field: _zend_executor_globals::persistent_list"]
6121        [::std::mem::offset_of!(_zend_executor_globals, persistent_list) - 664usize];
6122    ["Offset of field: _zend_executor_globals::user_error_handler_error_reporting"][::std::mem::offset_of!(
6123        _zend_executor_globals,
6124        user_error_handler_error_reporting
6125    ) - 720usize];
6126    ["Offset of field: _zend_executor_globals::exception_ignore_args"]
6127        [::std::mem::offset_of!(_zend_executor_globals, exception_ignore_args) - 724usize];
6128    ["Offset of field: _zend_executor_globals::user_error_handler"]
6129        [::std::mem::offset_of!(_zend_executor_globals, user_error_handler) - 728usize];
6130    ["Offset of field: _zend_executor_globals::user_exception_handler"]
6131        [::std::mem::offset_of!(_zend_executor_globals, user_exception_handler) - 744usize];
6132    ["Offset of field: _zend_executor_globals::user_error_handlers_error_reporting"][::std::mem::offset_of!(
6133        _zend_executor_globals,
6134        user_error_handlers_error_reporting
6135    ) - 760usize];
6136    ["Offset of field: _zend_executor_globals::user_error_handlers"]
6137        [::std::mem::offset_of!(_zend_executor_globals, user_error_handlers) - 784usize];
6138    ["Offset of field: _zend_executor_globals::user_exception_handlers"]
6139        [::std::mem::offset_of!(_zend_executor_globals, user_exception_handlers) - 808usize];
6140    ["Offset of field: _zend_executor_globals::exception_class"]
6141        [::std::mem::offset_of!(_zend_executor_globals, exception_class) - 832usize];
6142    ["Offset of field: _zend_executor_globals::error_handling"]
6143        [::std::mem::offset_of!(_zend_executor_globals, error_handling) - 840usize];
6144    ["Offset of field: _zend_executor_globals::capture_warnings_during_sccp"]
6145        [::std::mem::offset_of!(_zend_executor_globals, capture_warnings_during_sccp) - 844usize];
6146    ["Offset of field: _zend_executor_globals::timeout_seconds"]
6147        [::std::mem::offset_of!(_zend_executor_globals, timeout_seconds) - 848usize];
6148    ["Offset of field: _zend_executor_globals::ini_directives"]
6149        [::std::mem::offset_of!(_zend_executor_globals, ini_directives) - 856usize];
6150    ["Offset of field: _zend_executor_globals::modified_ini_directives"]
6151        [::std::mem::offset_of!(_zend_executor_globals, modified_ini_directives) - 864usize];
6152    ["Offset of field: _zend_executor_globals::error_reporting_ini_entry"]
6153        [::std::mem::offset_of!(_zend_executor_globals, error_reporting_ini_entry) - 872usize];
6154    ["Offset of field: _zend_executor_globals::objects_store"]
6155        [::std::mem::offset_of!(_zend_executor_globals, objects_store) - 880usize];
6156    ["Offset of field: _zend_executor_globals::lazy_objects_store"]
6157        [::std::mem::offset_of!(_zend_executor_globals, lazy_objects_store) - 904usize];
6158    ["Offset of field: _zend_executor_globals::exception"]
6159        [::std::mem::offset_of!(_zend_executor_globals, exception) - 960usize];
6160    ["Offset of field: _zend_executor_globals::prev_exception"]
6161        [::std::mem::offset_of!(_zend_executor_globals, prev_exception) - 968usize];
6162    ["Offset of field: _zend_executor_globals::opline_before_exception"]
6163        [::std::mem::offset_of!(_zend_executor_globals, opline_before_exception) - 976usize];
6164    ["Offset of field: _zend_executor_globals::exception_op"]
6165        [::std::mem::offset_of!(_zend_executor_globals, exception_op) - 984usize];
6166    ["Offset of field: _zend_executor_globals::current_module"]
6167        [::std::mem::offset_of!(_zend_executor_globals, current_module) - 1080usize];
6168    ["Offset of field: _zend_executor_globals::active"]
6169        [::std::mem::offset_of!(_zend_executor_globals, active) - 1088usize];
6170    ["Offset of field: _zend_executor_globals::flags"]
6171        [::std::mem::offset_of!(_zend_executor_globals, flags) - 1089usize];
6172    ["Offset of field: _zend_executor_globals::assertions"]
6173        [::std::mem::offset_of!(_zend_executor_globals, assertions) - 1096usize];
6174    ["Offset of field: _zend_executor_globals::ht_iterators_count"]
6175        [::std::mem::offset_of!(_zend_executor_globals, ht_iterators_count) - 1104usize];
6176    ["Offset of field: _zend_executor_globals::ht_iterators_used"]
6177        [::std::mem::offset_of!(_zend_executor_globals, ht_iterators_used) - 1108usize];
6178    ["Offset of field: _zend_executor_globals::ht_iterators"]
6179        [::std::mem::offset_of!(_zend_executor_globals, ht_iterators) - 1112usize];
6180    ["Offset of field: _zend_executor_globals::ht_iterators_slots"]
6181        [::std::mem::offset_of!(_zend_executor_globals, ht_iterators_slots) - 1120usize];
6182    ["Offset of field: _zend_executor_globals::saved_fpu_cw_ptr"]
6183        [::std::mem::offset_of!(_zend_executor_globals, saved_fpu_cw_ptr) - 1376usize];
6184    ["Offset of field: _zend_executor_globals::trampoline"]
6185        [::std::mem::offset_of!(_zend_executor_globals, trampoline) - 1384usize];
6186    ["Offset of field: _zend_executor_globals::call_trampoline_op"]
6187        [::std::mem::offset_of!(_zend_executor_globals, call_trampoline_op) - 1640usize];
6188    ["Offset of field: _zend_executor_globals::weakrefs"]
6189        [::std::mem::offset_of!(_zend_executor_globals, weakrefs) - 1672usize];
6190    ["Offset of field: _zend_executor_globals::exception_string_param_max_len"][::std::mem::offset_of!(
6191        _zend_executor_globals,
6192        exception_string_param_max_len
6193    ) - 1728usize];
6194    ["Offset of field: _zend_executor_globals::get_gc_buffer"]
6195        [::std::mem::offset_of!(_zend_executor_globals, get_gc_buffer) - 1736usize];
6196    ["Offset of field: _zend_executor_globals::main_fiber_context"]
6197        [::std::mem::offset_of!(_zend_executor_globals, main_fiber_context) - 1760usize];
6198    ["Offset of field: _zend_executor_globals::current_fiber_context"]
6199        [::std::mem::offset_of!(_zend_executor_globals, current_fiber_context) - 1768usize];
6200    ["Offset of field: _zend_executor_globals::active_fiber"]
6201        [::std::mem::offset_of!(_zend_executor_globals, active_fiber) - 1776usize];
6202    ["Offset of field: _zend_executor_globals::fiber_stack_size"]
6203        [::std::mem::offset_of!(_zend_executor_globals, fiber_stack_size) - 1784usize];
6204    ["Offset of field: _zend_executor_globals::record_errors"]
6205        [::std::mem::offset_of!(_zend_executor_globals, record_errors) - 1792usize];
6206    ["Offset of field: _zend_executor_globals::num_errors"]
6207        [::std::mem::offset_of!(_zend_executor_globals, num_errors) - 1796usize];
6208    ["Offset of field: _zend_executor_globals::errors"]
6209        [::std::mem::offset_of!(_zend_executor_globals, errors) - 1800usize];
6210    ["Offset of field: _zend_executor_globals::filename_override"]
6211        [::std::mem::offset_of!(_zend_executor_globals, filename_override) - 1808usize];
6212    ["Offset of field: _zend_executor_globals::lineno_override"]
6213        [::std::mem::offset_of!(_zend_executor_globals, lineno_override) - 1816usize];
6214    ["Offset of field: _zend_executor_globals::call_stack"]
6215        [::std::mem::offset_of!(_zend_executor_globals, call_stack) - 1824usize];
6216    ["Offset of field: _zend_executor_globals::max_allowed_stack_size"]
6217        [::std::mem::offset_of!(_zend_executor_globals, max_allowed_stack_size) - 1840usize];
6218    ["Offset of field: _zend_executor_globals::reserved_stack_size"]
6219        [::std::mem::offset_of!(_zend_executor_globals, reserved_stack_size) - 1848usize];
6220    ["Offset of field: _zend_executor_globals::strtod_state"]
6221        [::std::mem::offset_of!(_zend_executor_globals, strtod_state) - 1856usize];
6222    ["Offset of field: _zend_executor_globals::reserved"]
6223        [::std::mem::offset_of!(_zend_executor_globals, reserved) - 1936usize];
6224    ["Offset of field: _zend_executor_globals::delayed_oom"]
6225        [::std::mem::offset_of!(_zend_executor_globals, delayed_oom) - 1984usize];
6226};
6227#[repr(C)]
6228#[derive(Debug, Copy, Clone)]
6229pub struct _zend_ini_scanner_globals {
6230    pub yy_in: *mut zend_file_handle,
6231    pub yy_out: *mut zend_file_handle,
6232    pub yy_leng: ::std::os::raw::c_uint,
6233    pub yy_start: *const ::std::os::raw::c_uchar,
6234    pub yy_text: *const ::std::os::raw::c_uchar,
6235    pub yy_cursor: *const ::std::os::raw::c_uchar,
6236    pub yy_marker: *const ::std::os::raw::c_uchar,
6237    pub yy_limit: *const ::std::os::raw::c_uchar,
6238    pub yy_state: ::std::os::raw::c_int,
6239    pub state_stack: zend_stack,
6240    pub filename: *mut zend_string,
6241    pub lineno: ::std::os::raw::c_int,
6242    pub scanner_mode: ::std::os::raw::c_int,
6243}
6244#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6245const _: () = {
6246    ["Size of _zend_ini_scanner_globals"]
6247        [::std::mem::size_of::<_zend_ini_scanner_globals>() - 112usize];
6248    ["Alignment of _zend_ini_scanner_globals"]
6249        [::std::mem::align_of::<_zend_ini_scanner_globals>() - 8usize];
6250    ["Offset of field: _zend_ini_scanner_globals::yy_in"]
6251        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_in) - 0usize];
6252    ["Offset of field: _zend_ini_scanner_globals::yy_out"]
6253        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_out) - 8usize];
6254    ["Offset of field: _zend_ini_scanner_globals::yy_leng"]
6255        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_leng) - 16usize];
6256    ["Offset of field: _zend_ini_scanner_globals::yy_start"]
6257        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_start) - 24usize];
6258    ["Offset of field: _zend_ini_scanner_globals::yy_text"]
6259        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_text) - 32usize];
6260    ["Offset of field: _zend_ini_scanner_globals::yy_cursor"]
6261        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_cursor) - 40usize];
6262    ["Offset of field: _zend_ini_scanner_globals::yy_marker"]
6263        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_marker) - 48usize];
6264    ["Offset of field: _zend_ini_scanner_globals::yy_limit"]
6265        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_limit) - 56usize];
6266    ["Offset of field: _zend_ini_scanner_globals::yy_state"]
6267        [::std::mem::offset_of!(_zend_ini_scanner_globals, yy_state) - 64usize];
6268    ["Offset of field: _zend_ini_scanner_globals::state_stack"]
6269        [::std::mem::offset_of!(_zend_ini_scanner_globals, state_stack) - 72usize];
6270    ["Offset of field: _zend_ini_scanner_globals::filename"]
6271        [::std::mem::offset_of!(_zend_ini_scanner_globals, filename) - 96usize];
6272    ["Offset of field: _zend_ini_scanner_globals::lineno"]
6273        [::std::mem::offset_of!(_zend_ini_scanner_globals, lineno) - 104usize];
6274    ["Offset of field: _zend_ini_scanner_globals::scanner_mode"]
6275        [::std::mem::offset_of!(_zend_ini_scanner_globals, scanner_mode) - 108usize];
6276};
6277pub mod zend_php_scanner_event {
6278    #[allow(unused_imports)]
6279    use super::*;
6280    pub type Type = ::std::os::raw::c_uint;
6281    pub const ON_TOKEN: Type = 0;
6282    pub const ON_FEEDBACK: Type = 1;
6283    pub const ON_STOP: Type = 2;
6284}
6285#[repr(C)]
6286#[derive(Debug, Copy, Clone)]
6287pub struct _zend_php_scanner_globals {
6288    pub yy_in: *mut zend_file_handle,
6289    pub yy_out: *mut zend_file_handle,
6290    pub yy_leng: ::std::os::raw::c_uint,
6291    pub yy_start: *mut ::std::os::raw::c_uchar,
6292    pub yy_text: *mut ::std::os::raw::c_uchar,
6293    pub yy_cursor: *mut ::std::os::raw::c_uchar,
6294    pub yy_marker: *mut ::std::os::raw::c_uchar,
6295    pub yy_limit: *mut ::std::os::raw::c_uchar,
6296    pub yy_state: ::std::os::raw::c_int,
6297    pub state_stack: zend_stack,
6298    pub heredoc_label_stack: zend_ptr_stack,
6299    pub nest_location_stack: zend_stack,
6300    pub heredoc_scan_ahead: bool,
6301    pub heredoc_indentation: ::std::os::raw::c_int,
6302    pub heredoc_indentation_uses_spaces: bool,
6303    pub script_org: *mut ::std::os::raw::c_uchar,
6304    pub script_org_size: usize,
6305    pub script_filtered: *mut ::std::os::raw::c_uchar,
6306    pub script_filtered_size: usize,
6307    pub input_filter: zend_encoding_filter,
6308    pub output_filter: zend_encoding_filter,
6309    pub script_encoding: *const zend_encoding,
6310    pub scanned_string_len: ::std::os::raw::c_int,
6311    pub on_event: ::std::option::Option<
6312        unsafe extern "C" fn(
6313            event: zend_php_scanner_event::Type,
6314            token: ::std::os::raw::c_int,
6315            line: ::std::os::raw::c_int,
6316            text: *const ::std::os::raw::c_char,
6317            length: usize,
6318            context: *mut ::std::os::raw::c_void,
6319        ),
6320    >,
6321    pub on_event_context: *mut ::std::os::raw::c_void,
6322}
6323#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6324const _: () = {
6325    ["Size of _zend_php_scanner_globals"]
6326        [::std::mem::size_of::<_zend_php_scanner_globals>() - 248usize];
6327    ["Alignment of _zend_php_scanner_globals"]
6328        [::std::mem::align_of::<_zend_php_scanner_globals>() - 8usize];
6329    ["Offset of field: _zend_php_scanner_globals::yy_in"]
6330        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_in) - 0usize];
6331    ["Offset of field: _zend_php_scanner_globals::yy_out"]
6332        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_out) - 8usize];
6333    ["Offset of field: _zend_php_scanner_globals::yy_leng"]
6334        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_leng) - 16usize];
6335    ["Offset of field: _zend_php_scanner_globals::yy_start"]
6336        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_start) - 24usize];
6337    ["Offset of field: _zend_php_scanner_globals::yy_text"]
6338        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_text) - 32usize];
6339    ["Offset of field: _zend_php_scanner_globals::yy_cursor"]
6340        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_cursor) - 40usize];
6341    ["Offset of field: _zend_php_scanner_globals::yy_marker"]
6342        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_marker) - 48usize];
6343    ["Offset of field: _zend_php_scanner_globals::yy_limit"]
6344        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_limit) - 56usize];
6345    ["Offset of field: _zend_php_scanner_globals::yy_state"]
6346        [::std::mem::offset_of!(_zend_php_scanner_globals, yy_state) - 64usize];
6347    ["Offset of field: _zend_php_scanner_globals::state_stack"]
6348        [::std::mem::offset_of!(_zend_php_scanner_globals, state_stack) - 72usize];
6349    ["Offset of field: _zend_php_scanner_globals::heredoc_label_stack"]
6350        [::std::mem::offset_of!(_zend_php_scanner_globals, heredoc_label_stack) - 96usize];
6351    ["Offset of field: _zend_php_scanner_globals::nest_location_stack"]
6352        [::std::mem::offset_of!(_zend_php_scanner_globals, nest_location_stack) - 128usize];
6353    ["Offset of field: _zend_php_scanner_globals::heredoc_scan_ahead"]
6354        [::std::mem::offset_of!(_zend_php_scanner_globals, heredoc_scan_ahead) - 152usize];
6355    ["Offset of field: _zend_php_scanner_globals::heredoc_indentation"]
6356        [::std::mem::offset_of!(_zend_php_scanner_globals, heredoc_indentation) - 156usize];
6357    ["Offset of field: _zend_php_scanner_globals::heredoc_indentation_uses_spaces"][::std::mem::offset_of!(
6358        _zend_php_scanner_globals,
6359        heredoc_indentation_uses_spaces
6360    ) - 160usize];
6361    ["Offset of field: _zend_php_scanner_globals::script_org"]
6362        [::std::mem::offset_of!(_zend_php_scanner_globals, script_org) - 168usize];
6363    ["Offset of field: _zend_php_scanner_globals::script_org_size"]
6364        [::std::mem::offset_of!(_zend_php_scanner_globals, script_org_size) - 176usize];
6365    ["Offset of field: _zend_php_scanner_globals::script_filtered"]
6366        [::std::mem::offset_of!(_zend_php_scanner_globals, script_filtered) - 184usize];
6367    ["Offset of field: _zend_php_scanner_globals::script_filtered_size"]
6368        [::std::mem::offset_of!(_zend_php_scanner_globals, script_filtered_size) - 192usize];
6369    ["Offset of field: _zend_php_scanner_globals::input_filter"]
6370        [::std::mem::offset_of!(_zend_php_scanner_globals, input_filter) - 200usize];
6371    ["Offset of field: _zend_php_scanner_globals::output_filter"]
6372        [::std::mem::offset_of!(_zend_php_scanner_globals, output_filter) - 208usize];
6373    ["Offset of field: _zend_php_scanner_globals::script_encoding"]
6374        [::std::mem::offset_of!(_zend_php_scanner_globals, script_encoding) - 216usize];
6375    ["Offset of field: _zend_php_scanner_globals::scanned_string_len"]
6376        [::std::mem::offset_of!(_zend_php_scanner_globals, scanned_string_len) - 224usize];
6377    ["Offset of field: _zend_php_scanner_globals::on_event"]
6378        [::std::mem::offset_of!(_zend_php_scanner_globals, on_event) - 232usize];
6379    ["Offset of field: _zend_php_scanner_globals::on_event_context"]
6380        [::std::mem::offset_of!(_zend_php_scanner_globals, on_event_context) - 240usize];
6381};
6382pub mod _zend_compile_position {
6383    #[allow(unused_imports)]
6384    use super::*;
6385    pub type Type = ::std::os::raw::c_uint;
6386    pub const ZEND_COMPILE_POSITION_AT_SHEBANG: Type = 0;
6387    pub const ZEND_COMPILE_POSITION_AT_OPEN_TAG: Type = 1;
6388    pub const ZEND_COMPILE_POSITION_AFTER_OPEN_TAG: Type = 2;
6389}
6390pub use self::_zend_compile_position::Type as zend_compile_position;
6391pub type unary_op_type =
6392    ::std::option::Option<unsafe extern "C" fn(arg1: *mut zval, arg2: *mut zval) -> zend_result>;
6393pub type binary_op_type = ::std::option::Option<
6394    unsafe extern "C" fn(arg1: *mut zval, arg2: *mut zval, arg3: *mut zval) -> zend_result,
6395>;
6396pub mod zend_modifier_target {
6397    #[allow(unused_imports)]
6398    use super::*;
6399    pub type Type = ::std::os::raw::c_uint;
6400    pub const ZEND_MODIFIER_TARGET_PROPERTY: Type = 0;
6401    pub const ZEND_MODIFIER_TARGET_METHOD: Type = 1;
6402    pub const ZEND_MODIFIER_TARGET_CONSTANT: Type = 2;
6403    pub const ZEND_MODIFIER_TARGET_CPP: Type = 3;
6404    pub const ZEND_MODIFIER_TARGET_PROPERTY_HOOK: Type = 4;
6405}
6406pub type zend_needs_live_range_cb = ::std::option::Option<
6407    unsafe extern "C" fn(op_array: *mut zend_op_array, opline: *mut zend_op) -> bool,
6408>;
6409pub type zend_auto_global_callback =
6410    ::std::option::Option<unsafe extern "C" fn(name: *mut zend_string) -> bool>;
6411#[repr(C)]
6412#[derive(Debug, Copy, Clone)]
6413pub struct _zend_auto_global {
6414    pub name: *mut zend_string,
6415    pub auto_global_callback: zend_auto_global_callback,
6416    pub jit: bool,
6417    pub armed: bool,
6418}
6419#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6420const _: () = {
6421    ["Size of _zend_auto_global"][::std::mem::size_of::<_zend_auto_global>() - 24usize];
6422    ["Alignment of _zend_auto_global"][::std::mem::align_of::<_zend_auto_global>() - 8usize];
6423    ["Offset of field: _zend_auto_global::name"]
6424        [::std::mem::offset_of!(_zend_auto_global, name) - 0usize];
6425    ["Offset of field: _zend_auto_global::auto_global_callback"]
6426        [::std::mem::offset_of!(_zend_auto_global, auto_global_callback) - 8usize];
6427    ["Offset of field: _zend_auto_global::jit"]
6428        [::std::mem::offset_of!(_zend_auto_global, jit) - 16usize];
6429    ["Offset of field: _zend_auto_global::armed"]
6430        [::std::mem::offset_of!(_zend_auto_global, armed) - 17usize];
6431};
6432pub type zend_auto_global = _zend_auto_global;
6433pub type zend_module_entry = _zend_module_entry;
6434pub type zend_module_dep = _zend_module_dep;
6435#[repr(C)]
6436#[derive(Debug, Copy, Clone)]
6437pub struct _zend_module_entry {
6438    pub size: ::std::os::raw::c_ushort,
6439    pub zend_api: ::std::os::raw::c_uint,
6440    pub zend_debug: ::std::os::raw::c_uchar,
6441    pub zts: ::std::os::raw::c_uchar,
6442    pub ini_entry: *const _zend_ini_entry,
6443    pub deps: *const _zend_module_dep,
6444    pub name: *const ::std::os::raw::c_char,
6445    pub functions: *const _zend_function_entry,
6446    pub module_startup_func: ::std::option::Option<
6447        unsafe extern "C" fn(
6448            type_: ::std::os::raw::c_int,
6449            module_number: ::std::os::raw::c_int,
6450        ) -> zend_result,
6451    >,
6452    pub module_shutdown_func: ::std::option::Option<
6453        unsafe extern "C" fn(
6454            type_: ::std::os::raw::c_int,
6455            module_number: ::std::os::raw::c_int,
6456        ) -> zend_result,
6457    >,
6458    pub request_startup_func: ::std::option::Option<
6459        unsafe extern "C" fn(
6460            type_: ::std::os::raw::c_int,
6461            module_number: ::std::os::raw::c_int,
6462        ) -> zend_result,
6463    >,
6464    pub request_shutdown_func: ::std::option::Option<
6465        unsafe extern "C" fn(
6466            type_: ::std::os::raw::c_int,
6467            module_number: ::std::os::raw::c_int,
6468        ) -> zend_result,
6469    >,
6470    pub info_func: ::std::option::Option<unsafe extern "C" fn(zend_module: *mut zend_module_entry)>,
6471    pub version: *const ::std::os::raw::c_char,
6472    pub globals_size: usize,
6473    pub globals_ptr: *mut ::std::os::raw::c_void,
6474    pub globals_ctor:
6475        ::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
6476    pub globals_dtor:
6477        ::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
6478    pub post_deactivate_func: ::std::option::Option<unsafe extern "C" fn() -> zend_result>,
6479    pub module_started: ::std::os::raw::c_int,
6480    pub type_: ::std::os::raw::c_uchar,
6481    pub handle: *mut ::std::os::raw::c_void,
6482    pub module_number: ::std::os::raw::c_int,
6483    pub build_id: *const ::std::os::raw::c_char,
6484}
6485#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6486const _: () = {
6487    ["Size of _zend_module_entry"][::std::mem::size_of::<_zend_module_entry>() - 168usize];
6488    ["Alignment of _zend_module_entry"][::std::mem::align_of::<_zend_module_entry>() - 8usize];
6489    ["Offset of field: _zend_module_entry::size"]
6490        [::std::mem::offset_of!(_zend_module_entry, size) - 0usize];
6491    ["Offset of field: _zend_module_entry::zend_api"]
6492        [::std::mem::offset_of!(_zend_module_entry, zend_api) - 4usize];
6493    ["Offset of field: _zend_module_entry::zend_debug"]
6494        [::std::mem::offset_of!(_zend_module_entry, zend_debug) - 8usize];
6495    ["Offset of field: _zend_module_entry::zts"]
6496        [::std::mem::offset_of!(_zend_module_entry, zts) - 9usize];
6497    ["Offset of field: _zend_module_entry::ini_entry"]
6498        [::std::mem::offset_of!(_zend_module_entry, ini_entry) - 16usize];
6499    ["Offset of field: _zend_module_entry::deps"]
6500        [::std::mem::offset_of!(_zend_module_entry, deps) - 24usize];
6501    ["Offset of field: _zend_module_entry::name"]
6502        [::std::mem::offset_of!(_zend_module_entry, name) - 32usize];
6503    ["Offset of field: _zend_module_entry::functions"]
6504        [::std::mem::offset_of!(_zend_module_entry, functions) - 40usize];
6505    ["Offset of field: _zend_module_entry::module_startup_func"]
6506        [::std::mem::offset_of!(_zend_module_entry, module_startup_func) - 48usize];
6507    ["Offset of field: _zend_module_entry::module_shutdown_func"]
6508        [::std::mem::offset_of!(_zend_module_entry, module_shutdown_func) - 56usize];
6509    ["Offset of field: _zend_module_entry::request_startup_func"]
6510        [::std::mem::offset_of!(_zend_module_entry, request_startup_func) - 64usize];
6511    ["Offset of field: _zend_module_entry::request_shutdown_func"]
6512        [::std::mem::offset_of!(_zend_module_entry, request_shutdown_func) - 72usize];
6513    ["Offset of field: _zend_module_entry::info_func"]
6514        [::std::mem::offset_of!(_zend_module_entry, info_func) - 80usize];
6515    ["Offset of field: _zend_module_entry::version"]
6516        [::std::mem::offset_of!(_zend_module_entry, version) - 88usize];
6517    ["Offset of field: _zend_module_entry::globals_size"]
6518        [::std::mem::offset_of!(_zend_module_entry, globals_size) - 96usize];
6519    ["Offset of field: _zend_module_entry::globals_ptr"]
6520        [::std::mem::offset_of!(_zend_module_entry, globals_ptr) - 104usize];
6521    ["Offset of field: _zend_module_entry::globals_ctor"]
6522        [::std::mem::offset_of!(_zend_module_entry, globals_ctor) - 112usize];
6523    ["Offset of field: _zend_module_entry::globals_dtor"]
6524        [::std::mem::offset_of!(_zend_module_entry, globals_dtor) - 120usize];
6525    ["Offset of field: _zend_module_entry::post_deactivate_func"]
6526        [::std::mem::offset_of!(_zend_module_entry, post_deactivate_func) - 128usize];
6527    ["Offset of field: _zend_module_entry::module_started"]
6528        [::std::mem::offset_of!(_zend_module_entry, module_started) - 136usize];
6529    ["Offset of field: _zend_module_entry::type_"]
6530        [::std::mem::offset_of!(_zend_module_entry, type_) - 140usize];
6531    ["Offset of field: _zend_module_entry::handle"]
6532        [::std::mem::offset_of!(_zend_module_entry, handle) - 144usize];
6533    ["Offset of field: _zend_module_entry::module_number"]
6534        [::std::mem::offset_of!(_zend_module_entry, module_number) - 152usize];
6535    ["Offset of field: _zend_module_entry::build_id"]
6536        [::std::mem::offset_of!(_zend_module_entry, build_id) - 160usize];
6537};
6538#[repr(C)]
6539#[derive(Debug, Copy, Clone)]
6540pub struct _zend_module_dep {
6541    pub name: *const ::std::os::raw::c_char,
6542    pub rel: *const ::std::os::raw::c_char,
6543    pub version: *const ::std::os::raw::c_char,
6544    pub type_: ::std::os::raw::c_uchar,
6545}
6546#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6547const _: () = {
6548    ["Size of _zend_module_dep"][::std::mem::size_of::<_zend_module_dep>() - 32usize];
6549    ["Alignment of _zend_module_dep"][::std::mem::align_of::<_zend_module_dep>() - 8usize];
6550    ["Offset of field: _zend_module_dep::name"]
6551        [::std::mem::offset_of!(_zend_module_dep, name) - 0usize];
6552    ["Offset of field: _zend_module_dep::rel"]
6553        [::std::mem::offset_of!(_zend_module_dep, rel) - 8usize];
6554    ["Offset of field: _zend_module_dep::version"]
6555        [::std::mem::offset_of!(_zend_module_dep, version) - 16usize];
6556    ["Offset of field: _zend_module_dep::type_"]
6557        [::std::mem::offset_of!(_zend_module_dep, type_) - 24usize];
6558};
6559pub type rsrc_dtor_func_t = ::std::option::Option<unsafe extern "C" fn(res: *mut zend_resource)>;
6560#[repr(C)]
6561#[derive(Debug, Copy, Clone)]
6562pub struct _zend_rsrc_list_dtors_entry {
6563    pub list_dtor_ex: rsrc_dtor_func_t,
6564    pub plist_dtor_ex: rsrc_dtor_func_t,
6565    pub type_name: *const ::std::os::raw::c_char,
6566    pub module_number: ::std::os::raw::c_int,
6567    pub resource_id: ::std::os::raw::c_int,
6568}
6569#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6570const _: () = {
6571    ["Size of _zend_rsrc_list_dtors_entry"]
6572        [::std::mem::size_of::<_zend_rsrc_list_dtors_entry>() - 32usize];
6573    ["Alignment of _zend_rsrc_list_dtors_entry"]
6574        [::std::mem::align_of::<_zend_rsrc_list_dtors_entry>() - 8usize];
6575    ["Offset of field: _zend_rsrc_list_dtors_entry::list_dtor_ex"]
6576        [::std::mem::offset_of!(_zend_rsrc_list_dtors_entry, list_dtor_ex) - 0usize];
6577    ["Offset of field: _zend_rsrc_list_dtors_entry::plist_dtor_ex"]
6578        [::std::mem::offset_of!(_zend_rsrc_list_dtors_entry, plist_dtor_ex) - 8usize];
6579    ["Offset of field: _zend_rsrc_list_dtors_entry::type_name"]
6580        [::std::mem::offset_of!(_zend_rsrc_list_dtors_entry, type_name) - 16usize];
6581    ["Offset of field: _zend_rsrc_list_dtors_entry::module_number"]
6582        [::std::mem::offset_of!(_zend_rsrc_list_dtors_entry, module_number) - 24usize];
6583    ["Offset of field: _zend_rsrc_list_dtors_entry::resource_id"]
6584        [::std::mem::offset_of!(_zend_rsrc_list_dtors_entry, resource_id) - 28usize];
6585};
6586pub type zend_rsrc_list_dtors_entry = _zend_rsrc_list_dtors_entry;
6587#[repr(C)]
6588#[derive(Copy, Clone)]
6589pub struct _zend_constant {
6590    pub value: zval,
6591    pub name: *mut zend_string,
6592    pub filename: *mut zend_string,
6593    pub attributes: *mut HashTable,
6594}
6595#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6596const _: () = {
6597    ["Size of _zend_constant"][::std::mem::size_of::<_zend_constant>() - 40usize];
6598    ["Alignment of _zend_constant"][::std::mem::align_of::<_zend_constant>() - 8usize];
6599    ["Offset of field: _zend_constant::value"]
6600        [::std::mem::offset_of!(_zend_constant, value) - 0usize];
6601    ["Offset of field: _zend_constant::name"]
6602        [::std::mem::offset_of!(_zend_constant, name) - 16usize];
6603    ["Offset of field: _zend_constant::filename"]
6604        [::std::mem::offset_of!(_zend_constant, filename) - 24usize];
6605    ["Offset of field: _zend_constant::attributes"]
6606        [::std::mem::offset_of!(_zend_constant, attributes) - 32usize];
6607};
6608pub type zend_constant = _zend_constant;
6609pub mod zend_verify_prop_assignable_by_ref_context {
6610    #[allow(unused_imports)]
6611    use super::*;
6612    pub type Type = ::std::os::raw::c_uint;
6613    pub const ZEND_VERIFY_PROP_ASSIGNABLE_BY_REF_CONTEXT_ASSIGNMENT: Type = 0;
6614    pub const ZEND_VERIFY_PROP_ASSIGNABLE_BY_REF_CONTEXT_MAGIC_GET: Type = 1;
6615}
6616#[repr(C)]
6617#[derive(Debug, Copy, Clone)]
6618pub struct _zend_vm_stack {
6619    pub top: *mut zval,
6620    pub end: *mut zval,
6621    pub prev: zend_vm_stack,
6622}
6623#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6624const _: () = {
6625    ["Size of _zend_vm_stack"][::std::mem::size_of::<_zend_vm_stack>() - 24usize];
6626    ["Alignment of _zend_vm_stack"][::std::mem::align_of::<_zend_vm_stack>() - 8usize];
6627    ["Offset of field: _zend_vm_stack::top"][::std::mem::offset_of!(_zend_vm_stack, top) - 0usize];
6628    ["Offset of field: _zend_vm_stack::end"][::std::mem::offset_of!(_zend_vm_stack, end) - 8usize];
6629    ["Offset of field: _zend_vm_stack::prev"]
6630        [::std::mem::offset_of!(_zend_vm_stack, prev) - 16usize];
6631};
6632#[repr(C)]
6633#[derive(Debug, Copy, Clone)]
6634pub struct _zend_function_entry {
6635    pub fname: *const ::std::os::raw::c_char,
6636    pub handler: zif_handler,
6637    pub arg_info: *const _zend_internal_arg_info,
6638    pub num_args: u32,
6639    pub flags: u32,
6640    pub frameless_function_infos: *const zend_frameless_function_info,
6641    pub doc_comment: *const ::std::os::raw::c_char,
6642}
6643#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6644const _: () = {
6645    ["Size of _zend_function_entry"][::std::mem::size_of::<_zend_function_entry>() - 48usize];
6646    ["Alignment of _zend_function_entry"][::std::mem::align_of::<_zend_function_entry>() - 8usize];
6647    ["Offset of field: _zend_function_entry::fname"]
6648        [::std::mem::offset_of!(_zend_function_entry, fname) - 0usize];
6649    ["Offset of field: _zend_function_entry::handler"]
6650        [::std::mem::offset_of!(_zend_function_entry, handler) - 8usize];
6651    ["Offset of field: _zend_function_entry::arg_info"]
6652        [::std::mem::offset_of!(_zend_function_entry, arg_info) - 16usize];
6653    ["Offset of field: _zend_function_entry::num_args"]
6654        [::std::mem::offset_of!(_zend_function_entry, num_args) - 24usize];
6655    ["Offset of field: _zend_function_entry::flags"]
6656        [::std::mem::offset_of!(_zend_function_entry, flags) - 28usize];
6657    ["Offset of field: _zend_function_entry::frameless_function_infos"]
6658        [::std::mem::offset_of!(_zend_function_entry, frameless_function_infos) - 32usize];
6659    ["Offset of field: _zend_function_entry::doc_comment"]
6660        [::std::mem::offset_of!(_zend_function_entry, doc_comment) - 40usize];
6661};
6662pub type zend_function_entry = _zend_function_entry;
6663#[repr(C)]
6664#[derive(Copy, Clone)]
6665pub struct _zend_fcall_info {
6666    pub size: usize,
6667    pub function_name: zval,
6668    pub retval: *mut zval,
6669    pub params: *mut zval,
6670    pub object: *mut zend_object,
6671    pub param_count: u32,
6672    pub named_params: *mut HashTable,
6673}
6674#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6675const _: () = {
6676    ["Size of _zend_fcall_info"][::std::mem::size_of::<_zend_fcall_info>() - 64usize];
6677    ["Alignment of _zend_fcall_info"][::std::mem::align_of::<_zend_fcall_info>() - 8usize];
6678    ["Offset of field: _zend_fcall_info::size"]
6679        [::std::mem::offset_of!(_zend_fcall_info, size) - 0usize];
6680    ["Offset of field: _zend_fcall_info::function_name"]
6681        [::std::mem::offset_of!(_zend_fcall_info, function_name) - 8usize];
6682    ["Offset of field: _zend_fcall_info::retval"]
6683        [::std::mem::offset_of!(_zend_fcall_info, retval) - 24usize];
6684    ["Offset of field: _zend_fcall_info::params"]
6685        [::std::mem::offset_of!(_zend_fcall_info, params) - 32usize];
6686    ["Offset of field: _zend_fcall_info::object"]
6687        [::std::mem::offset_of!(_zend_fcall_info, object) - 40usize];
6688    ["Offset of field: _zend_fcall_info::param_count"]
6689        [::std::mem::offset_of!(_zend_fcall_info, param_count) - 48usize];
6690    ["Offset of field: _zend_fcall_info::named_params"]
6691        [::std::mem::offset_of!(_zend_fcall_info, named_params) - 56usize];
6692};
6693#[repr(C)]
6694#[derive(Debug, Copy, Clone)]
6695pub struct _zend_fcall_info_cache {
6696    pub function_handler: *mut zend_function,
6697    pub calling_scope: *mut zend_class_entry,
6698    pub called_scope: *mut zend_class_entry,
6699    pub object: *mut zend_object,
6700    pub closure: *mut zend_object,
6701}
6702#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6703const _: () = {
6704    ["Size of _zend_fcall_info_cache"][::std::mem::size_of::<_zend_fcall_info_cache>() - 40usize];
6705    ["Alignment of _zend_fcall_info_cache"]
6706        [::std::mem::align_of::<_zend_fcall_info_cache>() - 8usize];
6707    ["Offset of field: _zend_fcall_info_cache::function_handler"]
6708        [::std::mem::offset_of!(_zend_fcall_info_cache, function_handler) - 0usize];
6709    ["Offset of field: _zend_fcall_info_cache::calling_scope"]
6710        [::std::mem::offset_of!(_zend_fcall_info_cache, calling_scope) - 8usize];
6711    ["Offset of field: _zend_fcall_info_cache::called_scope"]
6712        [::std::mem::offset_of!(_zend_fcall_info_cache, called_scope) - 16usize];
6713    ["Offset of field: _zend_fcall_info_cache::object"]
6714        [::std::mem::offset_of!(_zend_fcall_info_cache, object) - 24usize];
6715    ["Offset of field: _zend_fcall_info_cache::closure"]
6716        [::std::mem::offset_of!(_zend_fcall_info_cache, closure) - 32usize];
6717};
6718pub mod _zend_expected_type {
6719    #[allow(unused_imports)]
6720    use super::*;
6721    pub type Type = ::std::os::raw::c_uint;
6722    pub const Z_EXPECTED_LONG: Type = 0;
6723    pub const Z_EXPECTED_LONG_OR_NULL: Type = 1;
6724    pub const Z_EXPECTED_BOOL: Type = 2;
6725    pub const Z_EXPECTED_BOOL_OR_NULL: Type = 3;
6726    pub const Z_EXPECTED_STRING: Type = 4;
6727    pub const Z_EXPECTED_STRING_OR_NULL: Type = 5;
6728    pub const Z_EXPECTED_ARRAY: Type = 6;
6729    pub const Z_EXPECTED_ARRAY_OR_NULL: Type = 7;
6730    pub const Z_EXPECTED_ARRAY_OR_LONG: Type = 8;
6731    pub const Z_EXPECTED_ARRAY_OR_LONG_OR_NULL: Type = 9;
6732    pub const Z_EXPECTED_ITERABLE: Type = 10;
6733    pub const Z_EXPECTED_ITERABLE_OR_NULL: Type = 11;
6734    pub const Z_EXPECTED_FUNC: Type = 12;
6735    pub const Z_EXPECTED_FUNC_OR_NULL: Type = 13;
6736    pub const Z_EXPECTED_RESOURCE: Type = 14;
6737    pub const Z_EXPECTED_RESOURCE_OR_NULL: Type = 15;
6738    pub const Z_EXPECTED_PATH: Type = 16;
6739    pub const Z_EXPECTED_PATH_OR_NULL: Type = 17;
6740    pub const Z_EXPECTED_OBJECT: Type = 18;
6741    pub const Z_EXPECTED_OBJECT_OR_NULL: Type = 19;
6742    pub const Z_EXPECTED_DOUBLE: Type = 20;
6743    pub const Z_EXPECTED_DOUBLE_OR_NULL: Type = 21;
6744    pub const Z_EXPECTED_NUMBER: Type = 22;
6745    pub const Z_EXPECTED_NUMBER_OR_NULL: Type = 23;
6746    pub const Z_EXPECTED_NUMBER_OR_STRING: Type = 24;
6747    pub const Z_EXPECTED_NUMBER_OR_STRING_OR_NULL: Type = 25;
6748    pub const Z_EXPECTED_ARRAY_OR_STRING: Type = 26;
6749    pub const Z_EXPECTED_ARRAY_OR_STRING_OR_NULL: Type = 27;
6750    pub const Z_EXPECTED_STRING_OR_LONG: Type = 28;
6751    pub const Z_EXPECTED_STRING_OR_LONG_OR_NULL: Type = 29;
6752    pub const Z_EXPECTED_OBJECT_OR_CLASS_NAME: Type = 30;
6753    pub const Z_EXPECTED_OBJECT_OR_CLASS_NAME_OR_NULL: Type = 31;
6754    pub const Z_EXPECTED_OBJECT_OR_STRING: Type = 32;
6755    pub const Z_EXPECTED_OBJECT_OR_STRING_OR_NULL: Type = 33;
6756    pub const Z_EXPECTED_LAST: Type = 34;
6757}
6758pub use self::_zend_expected_type::Type as zend_expected_type;
6759#[repr(C)]
6760#[derive(Copy, Clone)]
6761pub struct zend_attribute_arg {
6762    pub name: *mut zend_string,
6763    pub value: zval,
6764}
6765#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6766const _: () = {
6767    ["Size of zend_attribute_arg"][::std::mem::size_of::<zend_attribute_arg>() - 24usize];
6768    ["Alignment of zend_attribute_arg"][::std::mem::align_of::<zend_attribute_arg>() - 8usize];
6769    ["Offset of field: zend_attribute_arg::name"]
6770        [::std::mem::offset_of!(zend_attribute_arg, name) - 0usize];
6771    ["Offset of field: zend_attribute_arg::value"]
6772        [::std::mem::offset_of!(zend_attribute_arg, value) - 8usize];
6773};
6774#[repr(C)]
6775#[derive(Copy, Clone)]
6776pub struct _zend_attribute {
6777    pub name: *mut zend_string,
6778    pub lcname: *mut zend_string,
6779    pub validation_error: *mut zend_string,
6780    pub flags: u32,
6781    pub lineno: u32,
6782    pub offset: u32,
6783    pub argc: u32,
6784    pub args: [zend_attribute_arg; 1usize],
6785}
6786#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6787const _: () = {
6788    ["Size of _zend_attribute"][::std::mem::size_of::<_zend_attribute>() - 64usize];
6789    ["Alignment of _zend_attribute"][::std::mem::align_of::<_zend_attribute>() - 8usize];
6790    ["Offset of field: _zend_attribute::name"]
6791        [::std::mem::offset_of!(_zend_attribute, name) - 0usize];
6792    ["Offset of field: _zend_attribute::lcname"]
6793        [::std::mem::offset_of!(_zend_attribute, lcname) - 8usize];
6794    ["Offset of field: _zend_attribute::validation_error"]
6795        [::std::mem::offset_of!(_zend_attribute, validation_error) - 16usize];
6796    ["Offset of field: _zend_attribute::flags"]
6797        [::std::mem::offset_of!(_zend_attribute, flags) - 24usize];
6798    ["Offset of field: _zend_attribute::lineno"]
6799        [::std::mem::offset_of!(_zend_attribute, lineno) - 28usize];
6800    ["Offset of field: _zend_attribute::offset"]
6801        [::std::mem::offset_of!(_zend_attribute, offset) - 32usize];
6802    ["Offset of field: _zend_attribute::argc"]
6803        [::std::mem::offset_of!(_zend_attribute, argc) - 36usize];
6804    ["Offset of field: _zend_attribute::args"]
6805        [::std::mem::offset_of!(_zend_attribute, args) - 40usize];
6806};
6807pub type zend_attribute = _zend_attribute;
6808#[repr(C)]
6809#[derive(Debug, Copy, Clone)]
6810pub struct _zend_internal_attribute {
6811    pub ce: *mut zend_class_entry,
6812    pub flags: u32,
6813    pub validator: ::std::option::Option<
6814        unsafe extern "C" fn(
6815            attr: *mut zend_attribute,
6816            target: u32,
6817            scope: *mut zend_class_entry,
6818        ) -> *mut zend_string,
6819    >,
6820}
6821#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6822const _: () = {
6823    ["Size of _zend_internal_attribute"]
6824        [::std::mem::size_of::<_zend_internal_attribute>() - 24usize];
6825    ["Alignment of _zend_internal_attribute"]
6826        [::std::mem::align_of::<_zend_internal_attribute>() - 8usize];
6827    ["Offset of field: _zend_internal_attribute::ce"]
6828        [::std::mem::offset_of!(_zend_internal_attribute, ce) - 0usize];
6829    ["Offset of field: _zend_internal_attribute::flags"]
6830        [::std::mem::offset_of!(_zend_internal_attribute, flags) - 8usize];
6831    ["Offset of field: _zend_internal_attribute::validator"]
6832        [::std::mem::offset_of!(_zend_internal_attribute, validator) - 16usize];
6833};
6834pub type zend_internal_attribute = _zend_internal_attribute;
6835pub type zend_bitset = *mut zend_ulong;
6836pub mod _zend_cpu_feature {
6837    #[allow(unused_imports)]
6838    use super::*;
6839    pub type Type = ::std::os::raw::c_uint;
6840    pub const ZEND_CPU_FEATURE_SSE3: Type = 1;
6841    pub const ZEND_CPU_FEATURE_PCLMULQDQ: Type = 2;
6842    pub const ZEND_CPU_FEATURE_DTES64: Type = 4;
6843    pub const ZEND_CPU_FEATURE_MONITOR: Type = 8;
6844    pub const ZEND_CPU_FEATURE_DSCPL: Type = 16;
6845    pub const ZEND_CPU_FEATURE_VMX: Type = 32;
6846    pub const ZEND_CPU_FEATURE_SMX: Type = 64;
6847    pub const ZEND_CPU_FEATURE_EST: Type = 128;
6848    pub const ZEND_CPU_FEATURE_TM2: Type = 256;
6849    pub const ZEND_CPU_FEATURE_SSSE3: Type = 512;
6850    pub const ZEND_CPU_FEATURE_CID: Type = 1024;
6851    pub const ZEND_CPU_FEATURE_SDBG: Type = 2048;
6852    pub const ZEND_CPU_FEATURE_FMA: Type = 4096;
6853    pub const ZEND_CPU_FEATURE_CX16: Type = 8192;
6854    pub const ZEND_CPU_FEATURE_XTPR: Type = 16384;
6855    pub const ZEND_CPU_FEATURE_PDCM: Type = 32768;
6856    pub const ZEND_CPU_FEATURE_PCID: Type = 131072;
6857    pub const ZEND_CPU_FEATURE_DCA: Type = 262144;
6858    pub const ZEND_CPU_FEATURE_SSE41: Type = 524288;
6859    pub const ZEND_CPU_FEATURE_SSE42: Type = 1048576;
6860    pub const ZEND_CPU_FEATURE_X2APIC: Type = 2097152;
6861    pub const ZEND_CPU_FEATURE_MOVBE: Type = 4194304;
6862    pub const ZEND_CPU_FEATURE_POPCNT: Type = 8388608;
6863    pub const ZEND_CPU_FEATURE_TSC_DEADLINE: Type = 16777216;
6864    pub const ZEND_CPU_FEATURE_AES: Type = 33554432;
6865    pub const ZEND_CPU_FEATURE_XSAVE: Type = 67108864;
6866    pub const ZEND_CPU_FEATURE_OSXSAVE: Type = 134217728;
6867    pub const ZEND_CPU_FEATURE_AVX: Type = 268435456;
6868    pub const ZEND_CPU_FEATURE_F16C: Type = 536870912;
6869    pub const ZEND_CPU_FEATURE_AVX2: Type = 1073741856;
6870    pub const ZEND_CPU_FEATURE_AVX512F: Type = 1073807360;
6871    pub const ZEND_CPU_FEATURE_AVX512DQ: Type = 1073872896;
6872    pub const ZEND_CPU_FEATURE_AVX512CD: Type = 1342177280;
6873    pub const ZEND_CPU_FEATURE_SHA: Type = 1610612736;
6874    pub const ZEND_CPU_FEATURE_FPU: Type = 2147483649;
6875    pub const ZEND_CPU_FEATURE_VME: Type = 2147483650;
6876    pub const ZEND_CPU_FEATURE_DE: Type = 2147483652;
6877    pub const ZEND_CPU_FEATURE_PSE: Type = 2147483656;
6878    pub const ZEND_CPU_FEATURE_TSC: Type = 2147483664;
6879    pub const ZEND_CPU_FEATURE_MSR: Type = 2147483680;
6880    pub const ZEND_CPU_FEATURE_PAE: Type = 2147483712;
6881    pub const ZEND_CPU_FEATURE_MCE: Type = 2147483776;
6882    pub const ZEND_CPU_FEATURE_CX8: Type = 2147483904;
6883    pub const ZEND_CPU_FEATURE_APIC: Type = 2147484160;
6884    pub const ZEND_CPU_FEATURE_SEP: Type = 2147485696;
6885    pub const ZEND_CPU_FEATURE_MTRR: Type = 2147487744;
6886    pub const ZEND_CPU_FEATURE_PGE: Type = 2147491840;
6887    pub const ZEND_CPU_FEATURE_MCA: Type = 2147500032;
6888    pub const ZEND_CPU_FEATURE_CMOV: Type = 2147516416;
6889    pub const ZEND_CPU_FEATURE_PAT: Type = 2147549184;
6890    pub const ZEND_CPU_FEATURE_PSE36: Type = 2147614720;
6891    pub const ZEND_CPU_FEATURE_PN: Type = 2147745792;
6892    pub const ZEND_CPU_FEATURE_CLFLUSH: Type = 2148007936;
6893    pub const ZEND_CPU_FEATURE_DS: Type = 2149580800;
6894    pub const ZEND_CPU_FEATURE_ACPI: Type = 2151677952;
6895    pub const ZEND_CPU_FEATURE_MMX: Type = 2155872256;
6896    pub const ZEND_CPU_FEATURE_FXSR: Type = 2164260864;
6897    pub const ZEND_CPU_FEATURE_SSE: Type = 2181038080;
6898    pub const ZEND_CPU_FEATURE_SSE2: Type = 2214592512;
6899    pub const ZEND_CPU_FEATURE_SS: Type = 2281701376;
6900    pub const ZEND_CPU_FEATURE_HT: Type = 2415919104;
6901    pub const ZEND_CPU_FEATURE_TM: Type = 2684354560;
6902}
6903pub use self::_zend_cpu_feature::Type as zend_cpu_feature;
6904#[repr(C)]
6905#[derive(Debug, Copy, Clone)]
6906pub struct _zend_extension_version_info {
6907    pub zend_extension_api_no: ::std::os::raw::c_int,
6908    pub build_id: *const ::std::os::raw::c_char,
6909}
6910#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6911const _: () = {
6912    ["Size of _zend_extension_version_info"]
6913        [::std::mem::size_of::<_zend_extension_version_info>() - 16usize];
6914    ["Alignment of _zend_extension_version_info"]
6915        [::std::mem::align_of::<_zend_extension_version_info>() - 8usize];
6916    ["Offset of field: _zend_extension_version_info::zend_extension_api_no"]
6917        [::std::mem::offset_of!(_zend_extension_version_info, zend_extension_api_no) - 0usize];
6918    ["Offset of field: _zend_extension_version_info::build_id"]
6919        [::std::mem::offset_of!(_zend_extension_version_info, build_id) - 8usize];
6920};
6921pub type zend_extension_version_info = _zend_extension_version_info;
6922pub type zend_extension = _zend_extension;
6923pub type startup_func_t = ::std::option::Option<
6924    unsafe extern "C" fn(extension: *mut zend_extension) -> ::std::os::raw::c_int,
6925>;
6926pub type shutdown_func_t =
6927    ::std::option::Option<unsafe extern "C" fn(extension: *mut zend_extension)>;
6928pub type activate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
6929pub type deactivate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
6930pub type message_handler_func_t = ::std::option::Option<
6931    unsafe extern "C" fn(message: ::std::os::raw::c_int, arg: *mut ::std::os::raw::c_void),
6932>;
6933pub type op_array_handler_func_t =
6934    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
6935pub type statement_handler_func_t =
6936    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
6937pub type fcall_begin_handler_func_t =
6938    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
6939pub type fcall_end_handler_func_t =
6940    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
6941pub type op_array_ctor_func_t =
6942    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
6943pub type op_array_dtor_func_t =
6944    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
6945pub type op_array_persist_calc_func_t =
6946    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array) -> usize>;
6947pub type op_array_persist_func_t = ::std::option::Option<
6948    unsafe extern "C" fn(op_array: *mut zend_op_array, mem: *mut ::std::os::raw::c_void) -> usize,
6949>;
6950#[repr(C)]
6951#[derive(Debug, Copy, Clone)]
6952pub struct _zend_extension {
6953    pub name: *const ::std::os::raw::c_char,
6954    pub version: *const ::std::os::raw::c_char,
6955    pub author: *const ::std::os::raw::c_char,
6956    pub URL: *const ::std::os::raw::c_char,
6957    pub copyright: *const ::std::os::raw::c_char,
6958    pub startup: startup_func_t,
6959    pub shutdown: shutdown_func_t,
6960    pub activate: activate_func_t,
6961    pub deactivate: deactivate_func_t,
6962    pub message_handler: message_handler_func_t,
6963    pub op_array_handler: op_array_handler_func_t,
6964    pub statement_handler: statement_handler_func_t,
6965    pub fcall_begin_handler: fcall_begin_handler_func_t,
6966    pub fcall_end_handler: fcall_end_handler_func_t,
6967    pub op_array_ctor: op_array_ctor_func_t,
6968    pub op_array_dtor: op_array_dtor_func_t,
6969    pub api_no_check: ::std::option::Option<
6970        unsafe extern "C" fn(api_no: ::std::os::raw::c_int) -> ::std::os::raw::c_int,
6971    >,
6972    pub build_id_check: ::std::option::Option<
6973        unsafe extern "C" fn(build_id: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int,
6974    >,
6975    pub op_array_persist_calc: op_array_persist_calc_func_t,
6976    pub op_array_persist: op_array_persist_func_t,
6977    pub reserved5: *mut ::std::os::raw::c_void,
6978    pub reserved6: *mut ::std::os::raw::c_void,
6979    pub reserved7: *mut ::std::os::raw::c_void,
6980    pub reserved8: *mut ::std::os::raw::c_void,
6981    pub handle: *mut ::std::os::raw::c_void,
6982    pub resource_number: ::std::os::raw::c_int,
6983}
6984#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6985const _: () = {
6986    ["Size of _zend_extension"][::std::mem::size_of::<_zend_extension>() - 208usize];
6987    ["Alignment of _zend_extension"][::std::mem::align_of::<_zend_extension>() - 8usize];
6988    ["Offset of field: _zend_extension::name"]
6989        [::std::mem::offset_of!(_zend_extension, name) - 0usize];
6990    ["Offset of field: _zend_extension::version"]
6991        [::std::mem::offset_of!(_zend_extension, version) - 8usize];
6992    ["Offset of field: _zend_extension::author"]
6993        [::std::mem::offset_of!(_zend_extension, author) - 16usize];
6994    ["Offset of field: _zend_extension::URL"]
6995        [::std::mem::offset_of!(_zend_extension, URL) - 24usize];
6996    ["Offset of field: _zend_extension::copyright"]
6997        [::std::mem::offset_of!(_zend_extension, copyright) - 32usize];
6998    ["Offset of field: _zend_extension::startup"]
6999        [::std::mem::offset_of!(_zend_extension, startup) - 40usize];
7000    ["Offset of field: _zend_extension::shutdown"]
7001        [::std::mem::offset_of!(_zend_extension, shutdown) - 48usize];
7002    ["Offset of field: _zend_extension::activate"]
7003        [::std::mem::offset_of!(_zend_extension, activate) - 56usize];
7004    ["Offset of field: _zend_extension::deactivate"]
7005        [::std::mem::offset_of!(_zend_extension, deactivate) - 64usize];
7006    ["Offset of field: _zend_extension::message_handler"]
7007        [::std::mem::offset_of!(_zend_extension, message_handler) - 72usize];
7008    ["Offset of field: _zend_extension::op_array_handler"]
7009        [::std::mem::offset_of!(_zend_extension, op_array_handler) - 80usize];
7010    ["Offset of field: _zend_extension::statement_handler"]
7011        [::std::mem::offset_of!(_zend_extension, statement_handler) - 88usize];
7012    ["Offset of field: _zend_extension::fcall_begin_handler"]
7013        [::std::mem::offset_of!(_zend_extension, fcall_begin_handler) - 96usize];
7014    ["Offset of field: _zend_extension::fcall_end_handler"]
7015        [::std::mem::offset_of!(_zend_extension, fcall_end_handler) - 104usize];
7016    ["Offset of field: _zend_extension::op_array_ctor"]
7017        [::std::mem::offset_of!(_zend_extension, op_array_ctor) - 112usize];
7018    ["Offset of field: _zend_extension::op_array_dtor"]
7019        [::std::mem::offset_of!(_zend_extension, op_array_dtor) - 120usize];
7020    ["Offset of field: _zend_extension::api_no_check"]
7021        [::std::mem::offset_of!(_zend_extension, api_no_check) - 128usize];
7022    ["Offset of field: _zend_extension::build_id_check"]
7023        [::std::mem::offset_of!(_zend_extension, build_id_check) - 136usize];
7024    ["Offset of field: _zend_extension::op_array_persist_calc"]
7025        [::std::mem::offset_of!(_zend_extension, op_array_persist_calc) - 144usize];
7026    ["Offset of field: _zend_extension::op_array_persist"]
7027        [::std::mem::offset_of!(_zend_extension, op_array_persist) - 152usize];
7028    ["Offset of field: _zend_extension::reserved5"]
7029        [::std::mem::offset_of!(_zend_extension, reserved5) - 160usize];
7030    ["Offset of field: _zend_extension::reserved6"]
7031        [::std::mem::offset_of!(_zend_extension, reserved6) - 168usize];
7032    ["Offset of field: _zend_extension::reserved7"]
7033        [::std::mem::offset_of!(_zend_extension, reserved7) - 176usize];
7034    ["Offset of field: _zend_extension::reserved8"]
7035        [::std::mem::offset_of!(_zend_extension, reserved8) - 184usize];
7036    ["Offset of field: _zend_extension::handle"]
7037        [::std::mem::offset_of!(_zend_extension, handle) - 192usize];
7038    ["Offset of field: _zend_extension::resource_number"]
7039        [::std::mem::offset_of!(_zend_extension, resource_number) - 200usize];
7040};
7041pub mod zend_fiber_status {
7042    #[allow(unused_imports)]
7043    use super::*;
7044    pub type Type = ::std::os::raw::c_uint;
7045    pub const ZEND_FIBER_STATUS_INIT: Type = 0;
7046    pub const ZEND_FIBER_STATUS_RUNNING: Type = 1;
7047    pub const ZEND_FIBER_STATUS_SUSPENDED: Type = 2;
7048    pub const ZEND_FIBER_STATUS_DEAD: Type = 3;
7049}
7050pub mod zend_fiber_flag {
7051    #[allow(unused_imports)]
7052    use super::*;
7053    pub type Type = ::std::os::raw::c_uint;
7054    pub const ZEND_FIBER_FLAG_THREW: Type = 1;
7055    pub const ZEND_FIBER_FLAG_BAILOUT: Type = 2;
7056    pub const ZEND_FIBER_FLAG_DESTROYED: Type = 4;
7057}
7058pub mod zend_fiber_transfer_flag {
7059    #[allow(unused_imports)]
7060    use super::*;
7061    pub type Type = ::std::os::raw::c_uint;
7062    pub const ZEND_FIBER_TRANSFER_FLAG_ERROR: Type = 1;
7063    pub const ZEND_FIBER_TRANSFER_FLAG_BAILOUT: Type = 2;
7064}
7065#[repr(C)]
7066#[derive(Debug)]
7067pub struct _zend_fiber_stack {
7068    _unused: [u8; 0],
7069}
7070pub type zend_fiber_stack = _zend_fiber_stack;
7071#[repr(C)]
7072#[derive(Copy, Clone)]
7073pub struct _zend_fiber_transfer {
7074    pub context: *mut zend_fiber_context,
7075    pub value: zval,
7076    pub flags: u8,
7077}
7078#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7079const _: () = {
7080    ["Size of _zend_fiber_transfer"][::std::mem::size_of::<_zend_fiber_transfer>() - 32usize];
7081    ["Alignment of _zend_fiber_transfer"][::std::mem::align_of::<_zend_fiber_transfer>() - 8usize];
7082    ["Offset of field: _zend_fiber_transfer::context"]
7083        [::std::mem::offset_of!(_zend_fiber_transfer, context) - 0usize];
7084    ["Offset of field: _zend_fiber_transfer::value"]
7085        [::std::mem::offset_of!(_zend_fiber_transfer, value) - 8usize];
7086    ["Offset of field: _zend_fiber_transfer::flags"]
7087        [::std::mem::offset_of!(_zend_fiber_transfer, flags) - 24usize];
7088};
7089pub type zend_fiber_transfer = _zend_fiber_transfer;
7090pub type zend_fiber_coroutine =
7091    ::std::option::Option<unsafe extern "C" fn(transfer: *mut zend_fiber_transfer)>;
7092pub type zend_fiber_clean =
7093    ::std::option::Option<unsafe extern "C" fn(context: *mut zend_fiber_context)>;
7094#[repr(C)]
7095#[derive(Debug, Copy, Clone)]
7096pub struct _zend_fiber_context {
7097    pub handle: *mut ::std::os::raw::c_void,
7098    pub kind: *mut ::std::os::raw::c_void,
7099    pub function: zend_fiber_coroutine,
7100    pub cleanup: zend_fiber_clean,
7101    pub stack: *mut zend_fiber_stack,
7102    pub status: zend_fiber_status::Type,
7103    pub top_observed_frame: *mut zend_execute_data,
7104    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
7105}
7106#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7107const _: () = {
7108    ["Size of _zend_fiber_context"][::std::mem::size_of::<_zend_fiber_context>() - 104usize];
7109    ["Alignment of _zend_fiber_context"][::std::mem::align_of::<_zend_fiber_context>() - 8usize];
7110    ["Offset of field: _zend_fiber_context::handle"]
7111        [::std::mem::offset_of!(_zend_fiber_context, handle) - 0usize];
7112    ["Offset of field: _zend_fiber_context::kind"]
7113        [::std::mem::offset_of!(_zend_fiber_context, kind) - 8usize];
7114    ["Offset of field: _zend_fiber_context::function"]
7115        [::std::mem::offset_of!(_zend_fiber_context, function) - 16usize];
7116    ["Offset of field: _zend_fiber_context::cleanup"]
7117        [::std::mem::offset_of!(_zend_fiber_context, cleanup) - 24usize];
7118    ["Offset of field: _zend_fiber_context::stack"]
7119        [::std::mem::offset_of!(_zend_fiber_context, stack) - 32usize];
7120    ["Offset of field: _zend_fiber_context::status"]
7121        [::std::mem::offset_of!(_zend_fiber_context, status) - 40usize];
7122    ["Offset of field: _zend_fiber_context::top_observed_frame"]
7123        [::std::mem::offset_of!(_zend_fiber_context, top_observed_frame) - 48usize];
7124    ["Offset of field: _zend_fiber_context::reserved"]
7125        [::std::mem::offset_of!(_zend_fiber_context, reserved) - 56usize];
7126};
7127#[repr(C)]
7128#[derive(Copy, Clone)]
7129pub struct _zend_fiber {
7130    pub std: zend_object,
7131    pub flags: u8,
7132    pub context: zend_fiber_context,
7133    pub caller: *mut zend_fiber_context,
7134    pub previous: *mut zend_fiber_context,
7135    pub fci: zend_fcall_info,
7136    pub fci_cache: zend_fcall_info_cache,
7137    pub execute_data: *mut zend_execute_data,
7138    pub stack_bottom: *mut zend_execute_data,
7139    pub vm_stack: zend_vm_stack,
7140    pub result: zval,
7141}
7142#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7143const _: () = {
7144    ["Size of _zend_fiber"][::std::mem::size_of::<_zend_fiber>() - 328usize];
7145    ["Alignment of _zend_fiber"][::std::mem::align_of::<_zend_fiber>() - 8usize];
7146    ["Offset of field: _zend_fiber::std"][::std::mem::offset_of!(_zend_fiber, std) - 0usize];
7147    ["Offset of field: _zend_fiber::flags"][::std::mem::offset_of!(_zend_fiber, flags) - 56usize];
7148    ["Offset of field: _zend_fiber::context"]
7149        [::std::mem::offset_of!(_zend_fiber, context) - 64usize];
7150    ["Offset of field: _zend_fiber::caller"]
7151        [::std::mem::offset_of!(_zend_fiber, caller) - 168usize];
7152    ["Offset of field: _zend_fiber::previous"]
7153        [::std::mem::offset_of!(_zend_fiber, previous) - 176usize];
7154    ["Offset of field: _zend_fiber::fci"][::std::mem::offset_of!(_zend_fiber, fci) - 184usize];
7155    ["Offset of field: _zend_fiber::fci_cache"]
7156        [::std::mem::offset_of!(_zend_fiber, fci_cache) - 248usize];
7157    ["Offset of field: _zend_fiber::execute_data"]
7158        [::std::mem::offset_of!(_zend_fiber, execute_data) - 288usize];
7159    ["Offset of field: _zend_fiber::stack_bottom"]
7160        [::std::mem::offset_of!(_zend_fiber, stack_bottom) - 296usize];
7161    ["Offset of field: _zend_fiber::vm_stack"]
7162        [::std::mem::offset_of!(_zend_fiber, vm_stack) - 304usize];
7163    ["Offset of field: _zend_fiber::result"]
7164        [::std::mem::offset_of!(_zend_fiber, result) - 312usize];
7165};
7166pub type zend_generator_node = _zend_generator_node;
7167pub type zend_generator = _zend_generator;
7168#[repr(C)]
7169#[derive(Copy, Clone)]
7170pub struct _zend_generator_node {
7171    pub parent: *mut zend_generator,
7172    pub children: u32,
7173    pub child: _zend_generator_node__bindgen_ty_1,
7174    pub ptr: _zend_generator_node__bindgen_ty_2,
7175}
7176#[repr(C)]
7177#[derive(Copy, Clone)]
7178pub union _zend_generator_node__bindgen_ty_1 {
7179    pub ht: *mut HashTable,
7180    pub single: *mut zend_generator,
7181}
7182#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7183const _: () = {
7184    ["Size of _zend_generator_node__bindgen_ty_1"]
7185        [::std::mem::size_of::<_zend_generator_node__bindgen_ty_1>() - 8usize];
7186    ["Alignment of _zend_generator_node__bindgen_ty_1"]
7187        [::std::mem::align_of::<_zend_generator_node__bindgen_ty_1>() - 8usize];
7188    ["Offset of field: _zend_generator_node__bindgen_ty_1::ht"]
7189        [::std::mem::offset_of!(_zend_generator_node__bindgen_ty_1, ht) - 0usize];
7190    ["Offset of field: _zend_generator_node__bindgen_ty_1::single"]
7191        [::std::mem::offset_of!(_zend_generator_node__bindgen_ty_1, single) - 0usize];
7192};
7193#[repr(C)]
7194#[derive(Copy, Clone)]
7195pub union _zend_generator_node__bindgen_ty_2 {
7196    pub leaf: *mut zend_generator,
7197    pub root: *mut zend_generator,
7198}
7199#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7200const _: () = {
7201    ["Size of _zend_generator_node__bindgen_ty_2"]
7202        [::std::mem::size_of::<_zend_generator_node__bindgen_ty_2>() - 8usize];
7203    ["Alignment of _zend_generator_node__bindgen_ty_2"]
7204        [::std::mem::align_of::<_zend_generator_node__bindgen_ty_2>() - 8usize];
7205    ["Offset of field: _zend_generator_node__bindgen_ty_2::leaf"]
7206        [::std::mem::offset_of!(_zend_generator_node__bindgen_ty_2, leaf) - 0usize];
7207    ["Offset of field: _zend_generator_node__bindgen_ty_2::root"]
7208        [::std::mem::offset_of!(_zend_generator_node__bindgen_ty_2, root) - 0usize];
7209};
7210#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7211const _: () = {
7212    ["Size of _zend_generator_node"][::std::mem::size_of::<_zend_generator_node>() - 32usize];
7213    ["Alignment of _zend_generator_node"][::std::mem::align_of::<_zend_generator_node>() - 8usize];
7214    ["Offset of field: _zend_generator_node::parent"]
7215        [::std::mem::offset_of!(_zend_generator_node, parent) - 0usize];
7216    ["Offset of field: _zend_generator_node::children"]
7217        [::std::mem::offset_of!(_zend_generator_node, children) - 8usize];
7218    ["Offset of field: _zend_generator_node::child"]
7219        [::std::mem::offset_of!(_zend_generator_node, child) - 16usize];
7220    ["Offset of field: _zend_generator_node::ptr"]
7221        [::std::mem::offset_of!(_zend_generator_node, ptr) - 24usize];
7222};
7223#[repr(C)]
7224#[derive(Copy, Clone)]
7225pub struct _zend_generator {
7226    pub std: zend_object,
7227    pub execute_data: *mut zend_execute_data,
7228    pub frozen_call_stack: *mut zend_execute_data,
7229    pub value: zval,
7230    pub key: zval,
7231    pub retval: zval,
7232    pub send_target: *mut zval,
7233    pub largest_used_integer_key: zend_long,
7234    pub values: zval,
7235    pub node: zend_generator_node,
7236    pub execute_fake: zend_execute_data,
7237    pub func: *mut zend_function,
7238    pub flags: u8,
7239}
7240#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7241const _: () = {
7242    ["Size of _zend_generator"][::std::mem::size_of::<_zend_generator>() - 280usize];
7243    ["Alignment of _zend_generator"][::std::mem::align_of::<_zend_generator>() - 8usize];
7244    ["Offset of field: _zend_generator::std"]
7245        [::std::mem::offset_of!(_zend_generator, std) - 0usize];
7246    ["Offset of field: _zend_generator::execute_data"]
7247        [::std::mem::offset_of!(_zend_generator, execute_data) - 56usize];
7248    ["Offset of field: _zend_generator::frozen_call_stack"]
7249        [::std::mem::offset_of!(_zend_generator, frozen_call_stack) - 64usize];
7250    ["Offset of field: _zend_generator::value"]
7251        [::std::mem::offset_of!(_zend_generator, value) - 72usize];
7252    ["Offset of field: _zend_generator::key"]
7253        [::std::mem::offset_of!(_zend_generator, key) - 88usize];
7254    ["Offset of field: _zend_generator::retval"]
7255        [::std::mem::offset_of!(_zend_generator, retval) - 104usize];
7256    ["Offset of field: _zend_generator::send_target"]
7257        [::std::mem::offset_of!(_zend_generator, send_target) - 120usize];
7258    ["Offset of field: _zend_generator::largest_used_integer_key"]
7259        [::std::mem::offset_of!(_zend_generator, largest_used_integer_key) - 128usize];
7260    ["Offset of field: _zend_generator::values"]
7261        [::std::mem::offset_of!(_zend_generator, values) - 136usize];
7262    ["Offset of field: _zend_generator::node"]
7263        [::std::mem::offset_of!(_zend_generator, node) - 152usize];
7264    ["Offset of field: _zend_generator::execute_fake"]
7265        [::std::mem::offset_of!(_zend_generator, execute_fake) - 184usize];
7266    ["Offset of field: _zend_generator::func"]
7267        [::std::mem::offset_of!(_zend_generator, func) - 264usize];
7268    ["Offset of field: _zend_generator::flags"]
7269        [::std::mem::offset_of!(_zend_generator, flags) - 272usize];
7270};
7271pub const ZEND_GENERATOR_CURRENTLY_RUNNING: u8 = 1;
7272pub const ZEND_GENERATOR_FORCED_CLOSE: u8 = 2;
7273pub const ZEND_GENERATOR_AT_FIRST_YIELD: u8 = 4;
7274pub const ZEND_GENERATOR_DO_INIT: u8 = 8;
7275pub const ZEND_GENERATOR_IN_FIBER: u8 = 16;
7276#[repr(C)]
7277#[derive(Debug, Copy, Clone)]
7278pub struct _zend_syntax_highlighter_ini {
7279    pub highlight_html: *mut ::std::os::raw::c_char,
7280    pub highlight_comment: *mut ::std::os::raw::c_char,
7281    pub highlight_default: *mut ::std::os::raw::c_char,
7282    pub highlight_string: *mut ::std::os::raw::c_char,
7283    pub highlight_keyword: *mut ::std::os::raw::c_char,
7284}
7285#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7286const _: () = {
7287    ["Size of _zend_syntax_highlighter_ini"]
7288        [::std::mem::size_of::<_zend_syntax_highlighter_ini>() - 40usize];
7289    ["Alignment of _zend_syntax_highlighter_ini"]
7290        [::std::mem::align_of::<_zend_syntax_highlighter_ini>() - 8usize];
7291    ["Offset of field: _zend_syntax_highlighter_ini::highlight_html"]
7292        [::std::mem::offset_of!(_zend_syntax_highlighter_ini, highlight_html) - 0usize];
7293    ["Offset of field: _zend_syntax_highlighter_ini::highlight_comment"]
7294        [::std::mem::offset_of!(_zend_syntax_highlighter_ini, highlight_comment) - 8usize];
7295    ["Offset of field: _zend_syntax_highlighter_ini::highlight_default"]
7296        [::std::mem::offset_of!(_zend_syntax_highlighter_ini, highlight_default) - 16usize];
7297    ["Offset of field: _zend_syntax_highlighter_ini::highlight_string"]
7298        [::std::mem::offset_of!(_zend_syntax_highlighter_ini, highlight_string) - 24usize];
7299    ["Offset of field: _zend_syntax_highlighter_ini::highlight_keyword"]
7300        [::std::mem::offset_of!(_zend_syntax_highlighter_ini, highlight_keyword) - 32usize];
7301};
7302pub type zend_syntax_highlighter_ini = _zend_syntax_highlighter_ini;
7303pub mod zend_inheritance_status {
7304    #[allow(unused_imports)]
7305    use super::*;
7306    pub type Type = ::std::os::raw::c_int;
7307    pub const INHERITANCE_UNRESOLVED: Type = -1;
7308    pub const INHERITANCE_ERROR: Type = 0;
7309    pub const INHERITANCE_WARNING: Type = 1;
7310    pub const INHERITANCE_SUCCESS: Type = 2;
7311}
7312#[repr(C)]
7313#[derive(Debug, Copy, Clone)]
7314pub struct _zend_ini_entry_def {
7315    pub name: *const ::std::os::raw::c_char,
7316    pub on_modify: ::std::option::Option<
7317        unsafe extern "C" fn(
7318            entry: *mut zend_ini_entry,
7319            new_value: *mut zend_string,
7320            mh_arg1: *mut ::std::os::raw::c_void,
7321            mh_arg2: *mut ::std::os::raw::c_void,
7322            mh_arg3: *mut ::std::os::raw::c_void,
7323            stage: ::std::os::raw::c_int,
7324        ) -> ::std::os::raw::c_int,
7325    >,
7326    pub mh_arg1: *mut ::std::os::raw::c_void,
7327    pub mh_arg2: *mut ::std::os::raw::c_void,
7328    pub mh_arg3: *mut ::std::os::raw::c_void,
7329    pub value: *const ::std::os::raw::c_char,
7330    pub displayer: ::std::option::Option<
7331        unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
7332    >,
7333    pub value_length: u32,
7334    pub name_length: u16,
7335    pub modifiable: u8,
7336}
7337#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7338const _: () = {
7339    ["Size of _zend_ini_entry_def"][::std::mem::size_of::<_zend_ini_entry_def>() - 64usize];
7340    ["Alignment of _zend_ini_entry_def"][::std::mem::align_of::<_zend_ini_entry_def>() - 8usize];
7341    ["Offset of field: _zend_ini_entry_def::name"]
7342        [::std::mem::offset_of!(_zend_ini_entry_def, name) - 0usize];
7343    ["Offset of field: _zend_ini_entry_def::on_modify"]
7344        [::std::mem::offset_of!(_zend_ini_entry_def, on_modify) - 8usize];
7345    ["Offset of field: _zend_ini_entry_def::mh_arg1"]
7346        [::std::mem::offset_of!(_zend_ini_entry_def, mh_arg1) - 16usize];
7347    ["Offset of field: _zend_ini_entry_def::mh_arg2"]
7348        [::std::mem::offset_of!(_zend_ini_entry_def, mh_arg2) - 24usize];
7349    ["Offset of field: _zend_ini_entry_def::mh_arg3"]
7350        [::std::mem::offset_of!(_zend_ini_entry_def, mh_arg3) - 32usize];
7351    ["Offset of field: _zend_ini_entry_def::value"]
7352        [::std::mem::offset_of!(_zend_ini_entry_def, value) - 40usize];
7353    ["Offset of field: _zend_ini_entry_def::displayer"]
7354        [::std::mem::offset_of!(_zend_ini_entry_def, displayer) - 48usize];
7355    ["Offset of field: _zend_ini_entry_def::value_length"]
7356        [::std::mem::offset_of!(_zend_ini_entry_def, value_length) - 56usize];
7357    ["Offset of field: _zend_ini_entry_def::name_length"]
7358        [::std::mem::offset_of!(_zend_ini_entry_def, name_length) - 60usize];
7359    ["Offset of field: _zend_ini_entry_def::modifiable"]
7360        [::std::mem::offset_of!(_zend_ini_entry_def, modifiable) - 62usize];
7361};
7362pub type zend_ini_entry_def = _zend_ini_entry_def;
7363#[repr(C)]
7364#[derive(Debug, Copy, Clone)]
7365pub struct _zend_ini_entry {
7366    pub name: *mut zend_string,
7367    pub on_modify: ::std::option::Option<
7368        unsafe extern "C" fn(
7369            entry: *mut zend_ini_entry,
7370            new_value: *mut zend_string,
7371            mh_arg1: *mut ::std::os::raw::c_void,
7372            mh_arg2: *mut ::std::os::raw::c_void,
7373            mh_arg3: *mut ::std::os::raw::c_void,
7374            stage: ::std::os::raw::c_int,
7375        ) -> ::std::os::raw::c_int,
7376    >,
7377    pub mh_arg1: *mut ::std::os::raw::c_void,
7378    pub mh_arg2: *mut ::std::os::raw::c_void,
7379    pub mh_arg3: *mut ::std::os::raw::c_void,
7380    pub value: *mut zend_string,
7381    pub orig_value: *mut zend_string,
7382    pub displayer: ::std::option::Option<
7383        unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
7384    >,
7385    pub module_number: ::std::os::raw::c_int,
7386    pub modifiable: u8,
7387    pub orig_modifiable: u8,
7388    pub modified: u8,
7389    pub def: *const zend_ini_entry_def,
7390}
7391#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7392const _: () = {
7393    ["Size of _zend_ini_entry"][::std::mem::size_of::<_zend_ini_entry>() - 80usize];
7394    ["Alignment of _zend_ini_entry"][::std::mem::align_of::<_zend_ini_entry>() - 8usize];
7395    ["Offset of field: _zend_ini_entry::name"]
7396        [::std::mem::offset_of!(_zend_ini_entry, name) - 0usize];
7397    ["Offset of field: _zend_ini_entry::on_modify"]
7398        [::std::mem::offset_of!(_zend_ini_entry, on_modify) - 8usize];
7399    ["Offset of field: _zend_ini_entry::mh_arg1"]
7400        [::std::mem::offset_of!(_zend_ini_entry, mh_arg1) - 16usize];
7401    ["Offset of field: _zend_ini_entry::mh_arg2"]
7402        [::std::mem::offset_of!(_zend_ini_entry, mh_arg2) - 24usize];
7403    ["Offset of field: _zend_ini_entry::mh_arg3"]
7404        [::std::mem::offset_of!(_zend_ini_entry, mh_arg3) - 32usize];
7405    ["Offset of field: _zend_ini_entry::value"]
7406        [::std::mem::offset_of!(_zend_ini_entry, value) - 40usize];
7407    ["Offset of field: _zend_ini_entry::orig_value"]
7408        [::std::mem::offset_of!(_zend_ini_entry, orig_value) - 48usize];
7409    ["Offset of field: _zend_ini_entry::displayer"]
7410        [::std::mem::offset_of!(_zend_ini_entry, displayer) - 56usize];
7411    ["Offset of field: _zend_ini_entry::module_number"]
7412        [::std::mem::offset_of!(_zend_ini_entry, module_number) - 64usize];
7413    ["Offset of field: _zend_ini_entry::modifiable"]
7414        [::std::mem::offset_of!(_zend_ini_entry, modifiable) - 68usize];
7415    ["Offset of field: _zend_ini_entry::orig_modifiable"]
7416        [::std::mem::offset_of!(_zend_ini_entry, orig_modifiable) - 69usize];
7417    ["Offset of field: _zend_ini_entry::modified"]
7418        [::std::mem::offset_of!(_zend_ini_entry, modified) - 70usize];
7419    ["Offset of field: _zend_ini_entry::def"]
7420        [::std::mem::offset_of!(_zend_ini_entry, def) - 72usize];
7421};
7422pub type zend_ini_parser_cb_t = ::std::option::Option<
7423    unsafe extern "C" fn(
7424        arg1: *mut zval,
7425        arg2: *mut zval,
7426        arg3: *mut zval,
7427        callback_type: ::std::os::raw::c_int,
7428        arg: *mut ::std::os::raw::c_void,
7429    ),
7430>;
7431#[repr(C)]
7432#[derive(Debug, Copy, Clone)]
7433pub struct _zend_ini_parser_param {
7434    pub ini_parser_cb: zend_ini_parser_cb_t,
7435    pub arg: *mut ::std::os::raw::c_void,
7436}
7437#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7438const _: () = {
7439    ["Size of _zend_ini_parser_param"][::std::mem::size_of::<_zend_ini_parser_param>() - 16usize];
7440    ["Alignment of _zend_ini_parser_param"]
7441        [::std::mem::align_of::<_zend_ini_parser_param>() - 8usize];
7442    ["Offset of field: _zend_ini_parser_param::ini_parser_cb"]
7443        [::std::mem::offset_of!(_zend_ini_parser_param, ini_parser_cb) - 0usize];
7444    ["Offset of field: _zend_ini_parser_param::arg"]
7445        [::std::mem::offset_of!(_zend_ini_parser_param, arg) - 8usize];
7446};
7447pub type zend_ini_parser_param = _zend_ini_parser_param;
7448#[repr(C)]
7449#[derive(Copy, Clone)]
7450pub struct _zend_user_iterator {
7451    pub it: zend_object_iterator,
7452    pub ce: *mut zend_class_entry,
7453    pub value: zval,
7454}
7455#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7456const _: () = {
7457    ["Size of _zend_user_iterator"][::std::mem::size_of::<_zend_user_iterator>() - 112usize];
7458    ["Alignment of _zend_user_iterator"][::std::mem::align_of::<_zend_user_iterator>() - 8usize];
7459    ["Offset of field: _zend_user_iterator::it"]
7460        [::std::mem::offset_of!(_zend_user_iterator, it) - 0usize];
7461    ["Offset of field: _zend_user_iterator::ce"]
7462        [::std::mem::offset_of!(_zend_user_iterator, ce) - 88usize];
7463    ["Offset of field: _zend_user_iterator::value"]
7464        [::std::mem::offset_of!(_zend_user_iterator, value) - 96usize];
7465};
7466pub type zend_user_iterator = _zend_user_iterator;
7467#[repr(C)]
7468#[derive(Debug, Copy, Clone)]
7469pub struct _zend_lex_state {
7470    pub yy_leng: ::std::os::raw::c_uint,
7471    pub yy_start: *mut ::std::os::raw::c_uchar,
7472    pub yy_text: *mut ::std::os::raw::c_uchar,
7473    pub yy_cursor: *mut ::std::os::raw::c_uchar,
7474    pub yy_marker: *mut ::std::os::raw::c_uchar,
7475    pub yy_limit: *mut ::std::os::raw::c_uchar,
7476    pub yy_state: ::std::os::raw::c_int,
7477    pub state_stack: zend_stack,
7478    pub heredoc_label_stack: zend_ptr_stack,
7479    pub nest_location_stack: zend_stack,
7480    pub in_: *mut zend_file_handle,
7481    pub lineno: u32,
7482    pub filename: *mut zend_string,
7483    pub script_org: *mut ::std::os::raw::c_uchar,
7484    pub script_org_size: usize,
7485    pub script_filtered: *mut ::std::os::raw::c_uchar,
7486    pub script_filtered_size: usize,
7487    pub input_filter: zend_encoding_filter,
7488    pub output_filter: zend_encoding_filter,
7489    pub script_encoding: *const zend_encoding,
7490    pub on_event: ::std::option::Option<
7491        unsafe extern "C" fn(
7492            event: zend_php_scanner_event::Type,
7493            token: ::std::os::raw::c_int,
7494            line: ::std::os::raw::c_int,
7495            text: *const ::std::os::raw::c_char,
7496            length: usize,
7497            context: *mut ::std::os::raw::c_void,
7498        ),
7499    >,
7500    pub on_event_context: *mut ::std::os::raw::c_void,
7501    pub ast: *mut zend_ast,
7502    pub ast_arena: *mut zend_arena,
7503}
7504#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7505const _: () = {
7506    ["Size of _zend_lex_state"][::std::mem::size_of::<_zend_lex_state>() - 248usize];
7507    ["Alignment of _zend_lex_state"][::std::mem::align_of::<_zend_lex_state>() - 8usize];
7508    ["Offset of field: _zend_lex_state::yy_leng"]
7509        [::std::mem::offset_of!(_zend_lex_state, yy_leng) - 0usize];
7510    ["Offset of field: _zend_lex_state::yy_start"]
7511        [::std::mem::offset_of!(_zend_lex_state, yy_start) - 8usize];
7512    ["Offset of field: _zend_lex_state::yy_text"]
7513        [::std::mem::offset_of!(_zend_lex_state, yy_text) - 16usize];
7514    ["Offset of field: _zend_lex_state::yy_cursor"]
7515        [::std::mem::offset_of!(_zend_lex_state, yy_cursor) - 24usize];
7516    ["Offset of field: _zend_lex_state::yy_marker"]
7517        [::std::mem::offset_of!(_zend_lex_state, yy_marker) - 32usize];
7518    ["Offset of field: _zend_lex_state::yy_limit"]
7519        [::std::mem::offset_of!(_zend_lex_state, yy_limit) - 40usize];
7520    ["Offset of field: _zend_lex_state::yy_state"]
7521        [::std::mem::offset_of!(_zend_lex_state, yy_state) - 48usize];
7522    ["Offset of field: _zend_lex_state::state_stack"]
7523        [::std::mem::offset_of!(_zend_lex_state, state_stack) - 56usize];
7524    ["Offset of field: _zend_lex_state::heredoc_label_stack"]
7525        [::std::mem::offset_of!(_zend_lex_state, heredoc_label_stack) - 80usize];
7526    ["Offset of field: _zend_lex_state::nest_location_stack"]
7527        [::std::mem::offset_of!(_zend_lex_state, nest_location_stack) - 112usize];
7528    ["Offset of field: _zend_lex_state::in_"]
7529        [::std::mem::offset_of!(_zend_lex_state, in_) - 136usize];
7530    ["Offset of field: _zend_lex_state::lineno"]
7531        [::std::mem::offset_of!(_zend_lex_state, lineno) - 144usize];
7532    ["Offset of field: _zend_lex_state::filename"]
7533        [::std::mem::offset_of!(_zend_lex_state, filename) - 152usize];
7534    ["Offset of field: _zend_lex_state::script_org"]
7535        [::std::mem::offset_of!(_zend_lex_state, script_org) - 160usize];
7536    ["Offset of field: _zend_lex_state::script_org_size"]
7537        [::std::mem::offset_of!(_zend_lex_state, script_org_size) - 168usize];
7538    ["Offset of field: _zend_lex_state::script_filtered"]
7539        [::std::mem::offset_of!(_zend_lex_state, script_filtered) - 176usize];
7540    ["Offset of field: _zend_lex_state::script_filtered_size"]
7541        [::std::mem::offset_of!(_zend_lex_state, script_filtered_size) - 184usize];
7542    ["Offset of field: _zend_lex_state::input_filter"]
7543        [::std::mem::offset_of!(_zend_lex_state, input_filter) - 192usize];
7544    ["Offset of field: _zend_lex_state::output_filter"]
7545        [::std::mem::offset_of!(_zend_lex_state, output_filter) - 200usize];
7546    ["Offset of field: _zend_lex_state::script_encoding"]
7547        [::std::mem::offset_of!(_zend_lex_state, script_encoding) - 208usize];
7548    ["Offset of field: _zend_lex_state::on_event"]
7549        [::std::mem::offset_of!(_zend_lex_state, on_event) - 216usize];
7550    ["Offset of field: _zend_lex_state::on_event_context"]
7551        [::std::mem::offset_of!(_zend_lex_state, on_event_context) - 224usize];
7552    ["Offset of field: _zend_lex_state::ast"]
7553        [::std::mem::offset_of!(_zend_lex_state, ast) - 232usize];
7554    ["Offset of field: _zend_lex_state::ast_arena"]
7555        [::std::mem::offset_of!(_zend_lex_state, ast_arena) - 240usize];
7556};
7557pub type zend_lex_state = _zend_lex_state;
7558#[repr(C)]
7559#[derive(Debug, Copy, Clone)]
7560pub struct _zend_heredoc_label {
7561    pub label: *mut ::std::os::raw::c_char,
7562    pub length: ::std::os::raw::c_int,
7563    pub indentation: ::std::os::raw::c_int,
7564    pub indentation_uses_spaces: bool,
7565}
7566#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7567const _: () = {
7568    ["Size of _zend_heredoc_label"][::std::mem::size_of::<_zend_heredoc_label>() - 24usize];
7569    ["Alignment of _zend_heredoc_label"][::std::mem::align_of::<_zend_heredoc_label>() - 8usize];
7570    ["Offset of field: _zend_heredoc_label::label"]
7571        [::std::mem::offset_of!(_zend_heredoc_label, label) - 0usize];
7572    ["Offset of field: _zend_heredoc_label::length"]
7573        [::std::mem::offset_of!(_zend_heredoc_label, length) - 8usize];
7574    ["Offset of field: _zend_heredoc_label::indentation"]
7575        [::std::mem::offset_of!(_zend_heredoc_label, indentation) - 12usize];
7576    ["Offset of field: _zend_heredoc_label::indentation_uses_spaces"]
7577        [::std::mem::offset_of!(_zend_heredoc_label, indentation_uses_spaces) - 16usize];
7578};
7579pub type zend_heredoc_label = _zend_heredoc_label;
7580#[repr(C)]
7581#[derive(Debug, Copy, Clone)]
7582pub struct _zend_nest_location {
7583    pub text: ::std::os::raw::c_char,
7584    pub lineno: ::std::os::raw::c_int,
7585}
7586#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7587const _: () = {
7588    ["Size of _zend_nest_location"][::std::mem::size_of::<_zend_nest_location>() - 8usize];
7589    ["Alignment of _zend_nest_location"][::std::mem::align_of::<_zend_nest_location>() - 4usize];
7590    ["Offset of field: _zend_nest_location::text"]
7591        [::std::mem::offset_of!(_zend_nest_location, text) - 0usize];
7592    ["Offset of field: _zend_nest_location::lineno"]
7593        [::std::mem::offset_of!(_zend_nest_location, lineno) - 4usize];
7594};
7595pub type zend_nest_location = _zend_nest_location;
7596pub type zend_observer_fcall_begin_handler =
7597    ::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
7598pub type zend_observer_fcall_end_handler = ::std::option::Option<
7599    unsafe extern "C" fn(execute_data: *mut zend_execute_data, retval: *mut zval),
7600>;
7601#[repr(C)]
7602#[derive(Debug, Copy, Clone)]
7603pub struct _zend_observer_fcall_handlers {
7604    pub begin: zend_observer_fcall_begin_handler,
7605    pub end: zend_observer_fcall_end_handler,
7606}
7607#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7608const _: () = {
7609    ["Size of _zend_observer_fcall_handlers"]
7610        [::std::mem::size_of::<_zend_observer_fcall_handlers>() - 16usize];
7611    ["Alignment of _zend_observer_fcall_handlers"]
7612        [::std::mem::align_of::<_zend_observer_fcall_handlers>() - 8usize];
7613    ["Offset of field: _zend_observer_fcall_handlers::begin"]
7614        [::std::mem::offset_of!(_zend_observer_fcall_handlers, begin) - 0usize];
7615    ["Offset of field: _zend_observer_fcall_handlers::end"]
7616        [::std::mem::offset_of!(_zend_observer_fcall_handlers, end) - 8usize];
7617};
7618pub type zend_observer_fcall_handlers = _zend_observer_fcall_handlers;
7619pub type zend_observer_fcall_init = ::std::option::Option<
7620    unsafe extern "C" fn(execute_data: *mut zend_execute_data) -> zend_observer_fcall_handlers,
7621>;
7622pub type zend_observer_function_declared_cb = ::std::option::Option<
7623    unsafe extern "C" fn(op_array: *mut zend_op_array, name: *mut zend_string),
7624>;
7625pub type zend_observer_class_linked_cb =
7626    ::std::option::Option<unsafe extern "C" fn(ce: *mut zend_class_entry, name: *mut zend_string)>;
7627pub type zend_observer_error_cb = ::std::option::Option<
7628    unsafe extern "C" fn(
7629        type_: ::std::os::raw::c_int,
7630        error_filename: *mut zend_string,
7631        error_lineno: u32,
7632        message: *mut zend_string,
7633    ),
7634>;
7635pub type zend_observer_fiber_init_handler =
7636    ::std::option::Option<unsafe extern "C" fn(initializing: *mut zend_fiber_context)>;
7637pub type zend_observer_fiber_switch_handler = ::std::option::Option<
7638    unsafe extern "C" fn(from: *mut zend_fiber_context, to: *mut zend_fiber_context),
7639>;
7640pub type zend_observer_fiber_destroy_handler =
7641    ::std::option::Option<unsafe extern "C" fn(destroying: *mut zend_fiber_context)>;
7642#[repr(C)]
7643#[derive(Debug, Copy, Clone)]
7644pub struct utimbuf {
7645    pub actime: __time_t,
7646    pub modtime: __time_t,
7647}
7648#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7649const _: () = {
7650    ["Size of utimbuf"][::std::mem::size_of::<utimbuf>() - 16usize];
7651    ["Alignment of utimbuf"][::std::mem::align_of::<utimbuf>() - 8usize];
7652    ["Offset of field: utimbuf::actime"][::std::mem::offset_of!(utimbuf, actime) - 0usize];
7653    ["Offset of field: utimbuf::modtime"][::std::mem::offset_of!(utimbuf, modtime) - 8usize];
7654};
7655#[repr(C)]
7656#[derive(Debug)]
7657pub struct __dirstream {
7658    _unused: [u8; 0],
7659}
7660pub type DIR = __dirstream;
7661#[repr(C)]
7662#[derive(Debug, Copy, Clone)]
7663pub struct _cwd_state {
7664    pub cwd: *mut ::std::os::raw::c_char,
7665    pub cwd_length: usize,
7666}
7667#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7668const _: () = {
7669    ["Size of _cwd_state"][::std::mem::size_of::<_cwd_state>() - 16usize];
7670    ["Alignment of _cwd_state"][::std::mem::align_of::<_cwd_state>() - 8usize];
7671    ["Offset of field: _cwd_state::cwd"][::std::mem::offset_of!(_cwd_state, cwd) - 0usize];
7672    ["Offset of field: _cwd_state::cwd_length"]
7673        [::std::mem::offset_of!(_cwd_state, cwd_length) - 8usize];
7674};
7675pub type cwd_state = _cwd_state;
7676pub type verify_path_func =
7677    ::std::option::Option<unsafe extern "C" fn(arg1: *const cwd_state) -> ::std::os::raw::c_int>;
7678#[repr(C)]
7679#[derive(Debug, Copy, Clone)]
7680pub struct _realpath_cache_bucket {
7681    pub key: zend_ulong,
7682    pub path: *mut ::std::os::raw::c_char,
7683    pub realpath: *mut ::std::os::raw::c_char,
7684    pub next: *mut _realpath_cache_bucket,
7685    pub expires: time_t,
7686    pub path_len: u16,
7687    pub realpath_len: u16,
7688    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
7689    pub __bindgen_padding_0: [u8; 3usize],
7690}
7691#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7692const _: () = {
7693    ["Size of _realpath_cache_bucket"][::std::mem::size_of::<_realpath_cache_bucket>() - 48usize];
7694    ["Alignment of _realpath_cache_bucket"]
7695        [::std::mem::align_of::<_realpath_cache_bucket>() - 8usize];
7696    ["Offset of field: _realpath_cache_bucket::key"]
7697        [::std::mem::offset_of!(_realpath_cache_bucket, key) - 0usize];
7698    ["Offset of field: _realpath_cache_bucket::path"]
7699        [::std::mem::offset_of!(_realpath_cache_bucket, path) - 8usize];
7700    ["Offset of field: _realpath_cache_bucket::realpath"]
7701        [::std::mem::offset_of!(_realpath_cache_bucket, realpath) - 16usize];
7702    ["Offset of field: _realpath_cache_bucket::next"]
7703        [::std::mem::offset_of!(_realpath_cache_bucket, next) - 24usize];
7704    ["Offset of field: _realpath_cache_bucket::expires"]
7705        [::std::mem::offset_of!(_realpath_cache_bucket, expires) - 32usize];
7706    ["Offset of field: _realpath_cache_bucket::path_len"]
7707        [::std::mem::offset_of!(_realpath_cache_bucket, path_len) - 40usize];
7708    ["Offset of field: _realpath_cache_bucket::realpath_len"]
7709        [::std::mem::offset_of!(_realpath_cache_bucket, realpath_len) - 42usize];
7710};
7711impl _realpath_cache_bucket {
7712    #[inline]
7713    #[allow(unnecessary_transmutes)]
7714    pub fn is_dir(&self) -> u8 {
7715        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u8) }
7716    }
7717    #[inline]
7718    #[allow(unnecessary_transmutes)]
7719    pub fn set_is_dir(&mut self, val: u8) {
7720        unsafe {
7721            let val: u8 = ::std::mem::transmute(val);
7722            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
7723        }
7724    }
7725    #[inline]
7726    #[allow(unnecessary_transmutes)]
7727    pub unsafe fn is_dir_raw(this: *const Self) -> u8 {
7728        unsafe {
7729            ::std::mem::transmute(
7730                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 1u8>(
7731                    ::std::ptr::addr_of!((*this)._bitfield_1),
7732                ) as u8,
7733            )
7734        }
7735    }
7736    #[inline]
7737    #[allow(unnecessary_transmutes)]
7738    pub unsafe fn set_is_dir_raw(this: *mut Self, val: u8) {
7739        unsafe {
7740            let val: u8 = ::std::mem::transmute(val);
7741            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<0usize, 1u8>(
7742                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
7743                val as u64,
7744            )
7745        }
7746    }
7747    #[inline]
7748    #[allow(unnecessary_transmutes)]
7749    pub fn new_bitfield_1(is_dir: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
7750        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
7751        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
7752            let is_dir: u8 = unsafe { ::std::mem::transmute(is_dir) };
7753            is_dir as u64
7754        });
7755        __bindgen_bitfield_unit
7756    }
7757}
7758pub type realpath_cache_bucket = _realpath_cache_bucket;
7759#[repr(C)]
7760#[derive(Debug, Copy, Clone)]
7761pub struct _virtual_cwd_globals {
7762    pub cwd: cwd_state,
7763    pub realpath_cache_size: zend_long,
7764    pub realpath_cache_size_limit: zend_long,
7765    pub realpath_cache_ttl: zend_long,
7766    pub realpath_cache: [*mut realpath_cache_bucket; 1024usize],
7767}
7768#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7769const _: () = {
7770    ["Size of _virtual_cwd_globals"][::std::mem::size_of::<_virtual_cwd_globals>() - 8232usize];
7771    ["Alignment of _virtual_cwd_globals"][::std::mem::align_of::<_virtual_cwd_globals>() - 8usize];
7772    ["Offset of field: _virtual_cwd_globals::cwd"]
7773        [::std::mem::offset_of!(_virtual_cwd_globals, cwd) - 0usize];
7774    ["Offset of field: _virtual_cwd_globals::realpath_cache_size"]
7775        [::std::mem::offset_of!(_virtual_cwd_globals, realpath_cache_size) - 16usize];
7776    ["Offset of field: _virtual_cwd_globals::realpath_cache_size_limit"]
7777        [::std::mem::offset_of!(_virtual_cwd_globals, realpath_cache_size_limit) - 24usize];
7778    ["Offset of field: _virtual_cwd_globals::realpath_cache_ttl"]
7779        [::std::mem::offset_of!(_virtual_cwd_globals, realpath_cache_ttl) - 32usize];
7780    ["Offset of field: _virtual_cwd_globals::realpath_cache"]
7781        [::std::mem::offset_of!(_virtual_cwd_globals, realpath_cache) - 40usize];
7782};
7783pub type virtual_cwd_globals = _virtual_cwd_globals;
7784pub mod length_modifier_e {
7785    #[allow(unused_imports)]
7786    use super::*;
7787    pub type Type = ::std::os::raw::c_uint;
7788    pub const LM_STD: Type = 0;
7789    pub const LM_INTMAX_T: Type = 1;
7790    pub const LM_PTRDIFF_T: Type = 2;
7791    pub const LM_LONG_LONG: Type = 3;
7792    pub const LM_SIZE_T: Type = 4;
7793    pub const LM_LONG: Type = 5;
7794    pub const LM_LONG_DOUBLE: Type = 6;
7795}
7796pub mod _php_output_handler_status_t {
7797    #[allow(unused_imports)]
7798    use super::*;
7799    pub type Type = ::std::os::raw::c_uint;
7800    pub const PHP_OUTPUT_HANDLER_FAILURE: Type = 0;
7801    pub const PHP_OUTPUT_HANDLER_SUCCESS: Type = 1;
7802    pub const PHP_OUTPUT_HANDLER_NO_DATA: Type = 2;
7803}
7804pub use self::_php_output_handler_status_t::Type as php_output_handler_status_t;
7805pub mod _php_output_handler_hook_t {
7806    #[allow(unused_imports)]
7807    use super::*;
7808    pub type Type = ::std::os::raw::c_uint;
7809    pub const PHP_OUTPUT_HANDLER_HOOK_GET_OPAQ: Type = 0;
7810    pub const PHP_OUTPUT_HANDLER_HOOK_GET_FLAGS: Type = 1;
7811    pub const PHP_OUTPUT_HANDLER_HOOK_GET_LEVEL: Type = 2;
7812    pub const PHP_OUTPUT_HANDLER_HOOK_IMMUTABLE: Type = 3;
7813    pub const PHP_OUTPUT_HANDLER_HOOK_DISABLE: Type = 4;
7814    pub const PHP_OUTPUT_HANDLER_HOOK_LAST: Type = 5;
7815}
7816pub use self::_php_output_handler_hook_t::Type as php_output_handler_hook_t;
7817#[repr(C)]
7818#[derive(Debug, Copy, Clone)]
7819pub struct _php_output_buffer {
7820    pub data: *mut ::std::os::raw::c_char,
7821    pub size: usize,
7822    pub used: usize,
7823    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
7824    pub __bindgen_padding_0: u32,
7825}
7826#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7827const _: () = {
7828    ["Size of _php_output_buffer"][::std::mem::size_of::<_php_output_buffer>() - 32usize];
7829    ["Alignment of _php_output_buffer"][::std::mem::align_of::<_php_output_buffer>() - 8usize];
7830    ["Offset of field: _php_output_buffer::data"]
7831        [::std::mem::offset_of!(_php_output_buffer, data) - 0usize];
7832    ["Offset of field: _php_output_buffer::size"]
7833        [::std::mem::offset_of!(_php_output_buffer, size) - 8usize];
7834    ["Offset of field: _php_output_buffer::used"]
7835        [::std::mem::offset_of!(_php_output_buffer, used) - 16usize];
7836};
7837impl _php_output_buffer {
7838    #[inline]
7839    #[allow(unnecessary_transmutes)]
7840    pub fn free(&self) -> u32 {
7841        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u32) }
7842    }
7843    #[inline]
7844    #[allow(unnecessary_transmutes)]
7845    pub fn set_free(&mut self, val: u32) {
7846        unsafe {
7847            let val: u32 = ::std::mem::transmute(val);
7848            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
7849        }
7850    }
7851    #[inline]
7852    #[allow(unnecessary_transmutes)]
7853    pub unsafe fn free_raw(this: *const Self) -> u32 {
7854        unsafe {
7855            ::std::mem::transmute(
7856                <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get_const::<0usize, 1u8>(
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_free_raw(this: *mut Self, val: u32) {
7865        unsafe {
7866            let val: u32 = ::std::mem::transmute(val);
7867            <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set_const::<0usize, 1u8>(
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 _reserved(&self) -> u32 {
7876        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<1usize, 31u8>() as u32) }
7877    }
7878    #[inline]
7879    #[allow(unnecessary_transmutes)]
7880    pub fn set__reserved(&mut self, val: u32) {
7881        unsafe {
7882            let val: u32 = ::std::mem::transmute(val);
7883            self._bitfield_1.set_const::<1usize, 31u8>(val as u64)
7884        }
7885    }
7886    #[inline]
7887    #[allow(unnecessary_transmutes)]
7888    pub unsafe fn _reserved_raw(this: *const Self) -> u32 {
7889        unsafe {
7890            ::std::mem::transmute(
7891                <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get_const::<1usize, 31u8>(
7892                    ::std::ptr::addr_of!((*this)._bitfield_1),
7893                ) as u32,
7894            )
7895        }
7896    }
7897    #[inline]
7898    #[allow(unnecessary_transmutes)]
7899    pub unsafe fn set__reserved_raw(this: *mut Self, val: u32) {
7900        unsafe {
7901            let val: u32 = ::std::mem::transmute(val);
7902            <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set_const::<1usize, 31u8>(
7903                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
7904                val as u64,
7905            )
7906        }
7907    }
7908    #[inline]
7909    #[allow(unnecessary_transmutes)]
7910    pub fn new_bitfield_1(free: u32, _reserved: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
7911        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
7912        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
7913            let free: u32 = unsafe { ::std::mem::transmute(free) };
7914            free as u64
7915        });
7916        __bindgen_bitfield_unit.set_const::<1usize, 31u8>({
7917            let _reserved: u32 = unsafe { ::std::mem::transmute(_reserved) };
7918            _reserved as u64
7919        });
7920        __bindgen_bitfield_unit
7921    }
7922}
7923pub type php_output_buffer = _php_output_buffer;
7924#[repr(C)]
7925#[derive(Debug, Copy, Clone)]
7926pub struct _php_output_context {
7927    pub op: ::std::os::raw::c_int,
7928    pub in_: php_output_buffer,
7929    pub out: php_output_buffer,
7930}
7931#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7932const _: () = {
7933    ["Size of _php_output_context"][::std::mem::size_of::<_php_output_context>() - 72usize];
7934    ["Alignment of _php_output_context"][::std::mem::align_of::<_php_output_context>() - 8usize];
7935    ["Offset of field: _php_output_context::op"]
7936        [::std::mem::offset_of!(_php_output_context, op) - 0usize];
7937    ["Offset of field: _php_output_context::in_"]
7938        [::std::mem::offset_of!(_php_output_context, in_) - 8usize];
7939    ["Offset of field: _php_output_context::out"]
7940        [::std::mem::offset_of!(_php_output_context, out) - 40usize];
7941};
7942pub type php_output_context = _php_output_context;
7943pub type php_output_handler_func_t = ::std::option::Option<
7944    unsafe extern "C" fn(
7945        output: *mut ::std::os::raw::c_char,
7946        output_len: usize,
7947        handled_output: *mut *mut ::std::os::raw::c_char,
7948        handled_output_len: *mut usize,
7949        mode: ::std::os::raw::c_int,
7950    ),
7951>;
7952pub type php_output_handler_context_func_t = ::std::option::Option<
7953    unsafe extern "C" fn(
7954        handler_context: *mut *mut ::std::os::raw::c_void,
7955        output_context: *mut php_output_context,
7956    ) -> zend_result,
7957>;
7958pub type php_output_handler_context_dtor_t =
7959    ::std::option::Option<unsafe extern "C" fn(opaq: *mut ::std::os::raw::c_void)>;
7960pub type php_output_handler_conflict_check_t = ::std::option::Option<
7961    unsafe extern "C" fn(
7962        handler_name: *const ::std::os::raw::c_char,
7963        handler_name_len: usize,
7964    ) -> zend_result,
7965>;
7966pub type php_output_handler_alias_ctor_t = ::std::option::Option<
7967    unsafe extern "C" fn(
7968        handler_name: *const ::std::os::raw::c_char,
7969        handler_name_len: usize,
7970        chunk_size: usize,
7971        flags: ::std::os::raw::c_int,
7972    ) -> *mut _php_output_handler,
7973>;
7974#[repr(C)]
7975#[derive(Copy, Clone)]
7976pub struct _php_output_handler_user_func_t {
7977    pub fci: zend_fcall_info,
7978    pub fcc: zend_fcall_info_cache,
7979    pub zoh: zval,
7980}
7981#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7982const _: () = {
7983    ["Size of _php_output_handler_user_func_t"]
7984        [::std::mem::size_of::<_php_output_handler_user_func_t>() - 120usize];
7985    ["Alignment of _php_output_handler_user_func_t"]
7986        [::std::mem::align_of::<_php_output_handler_user_func_t>() - 8usize];
7987    ["Offset of field: _php_output_handler_user_func_t::fci"]
7988        [::std::mem::offset_of!(_php_output_handler_user_func_t, fci) - 0usize];
7989    ["Offset of field: _php_output_handler_user_func_t::fcc"]
7990        [::std::mem::offset_of!(_php_output_handler_user_func_t, fcc) - 64usize];
7991    ["Offset of field: _php_output_handler_user_func_t::zoh"]
7992        [::std::mem::offset_of!(_php_output_handler_user_func_t, zoh) - 104usize];
7993};
7994pub type php_output_handler_user_func_t = _php_output_handler_user_func_t;
7995#[repr(C)]
7996#[derive(Copy, Clone)]
7997pub struct _php_output_handler {
7998    pub name: *mut zend_string,
7999    pub flags: ::std::os::raw::c_int,
8000    pub level: ::std::os::raw::c_int,
8001    pub size: usize,
8002    pub buffer: php_output_buffer,
8003    pub opaq: *mut ::std::os::raw::c_void,
8004    pub dtor: ::std::option::Option<unsafe extern "C" fn(opaq: *mut ::std::os::raw::c_void)>,
8005    pub func: _php_output_handler__bindgen_ty_1,
8006}
8007#[repr(C)]
8008#[derive(Copy, Clone)]
8009pub union _php_output_handler__bindgen_ty_1 {
8010    pub user: *mut php_output_handler_user_func_t,
8011    pub internal: php_output_handler_context_func_t,
8012}
8013#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8014const _: () = {
8015    ["Size of _php_output_handler__bindgen_ty_1"]
8016        [::std::mem::size_of::<_php_output_handler__bindgen_ty_1>() - 8usize];
8017    ["Alignment of _php_output_handler__bindgen_ty_1"]
8018        [::std::mem::align_of::<_php_output_handler__bindgen_ty_1>() - 8usize];
8019    ["Offset of field: _php_output_handler__bindgen_ty_1::user"]
8020        [::std::mem::offset_of!(_php_output_handler__bindgen_ty_1, user) - 0usize];
8021    ["Offset of field: _php_output_handler__bindgen_ty_1::internal"]
8022        [::std::mem::offset_of!(_php_output_handler__bindgen_ty_1, internal) - 0usize];
8023};
8024#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8025const _: () = {
8026    ["Size of _php_output_handler"][::std::mem::size_of::<_php_output_handler>() - 80usize];
8027    ["Alignment of _php_output_handler"][::std::mem::align_of::<_php_output_handler>() - 8usize];
8028    ["Offset of field: _php_output_handler::name"]
8029        [::std::mem::offset_of!(_php_output_handler, name) - 0usize];
8030    ["Offset of field: _php_output_handler::flags"]
8031        [::std::mem::offset_of!(_php_output_handler, flags) - 8usize];
8032    ["Offset of field: _php_output_handler::level"]
8033        [::std::mem::offset_of!(_php_output_handler, level) - 12usize];
8034    ["Offset of field: _php_output_handler::size"]
8035        [::std::mem::offset_of!(_php_output_handler, size) - 16usize];
8036    ["Offset of field: _php_output_handler::buffer"]
8037        [::std::mem::offset_of!(_php_output_handler, buffer) - 24usize];
8038    ["Offset of field: _php_output_handler::opaq"]
8039        [::std::mem::offset_of!(_php_output_handler, opaq) - 56usize];
8040    ["Offset of field: _php_output_handler::dtor"]
8041        [::std::mem::offset_of!(_php_output_handler, dtor) - 64usize];
8042    ["Offset of field: _php_output_handler::func"]
8043        [::std::mem::offset_of!(_php_output_handler, func) - 72usize];
8044};
8045pub type php_output_handler = _php_output_handler;
8046#[repr(C)]
8047#[derive(Debug, Copy, Clone)]
8048pub struct _zend_output_globals {
8049    pub handlers: zend_stack,
8050    pub active: *mut php_output_handler,
8051    pub running: *mut php_output_handler,
8052    pub output_start_filename: *mut zend_string,
8053    pub output_start_lineno: ::std::os::raw::c_int,
8054    pub flags: ::std::os::raw::c_int,
8055}
8056#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8057const _: () = {
8058    ["Size of _zend_output_globals"][::std::mem::size_of::<_zend_output_globals>() - 56usize];
8059    ["Alignment of _zend_output_globals"][::std::mem::align_of::<_zend_output_globals>() - 8usize];
8060    ["Offset of field: _zend_output_globals::handlers"]
8061        [::std::mem::offset_of!(_zend_output_globals, handlers) - 0usize];
8062    ["Offset of field: _zend_output_globals::active"]
8063        [::std::mem::offset_of!(_zend_output_globals, active) - 24usize];
8064    ["Offset of field: _zend_output_globals::running"]
8065        [::std::mem::offset_of!(_zend_output_globals, running) - 32usize];
8066    ["Offset of field: _zend_output_globals::output_start_filename"]
8067        [::std::mem::offset_of!(_zend_output_globals, output_start_filename) - 40usize];
8068    ["Offset of field: _zend_output_globals::output_start_lineno"]
8069        [::std::mem::offset_of!(_zend_output_globals, output_start_lineno) - 48usize];
8070    ["Offset of field: _zend_output_globals::flags"]
8071        [::std::mem::offset_of!(_zend_output_globals, flags) - 52usize];
8072};
8073pub type zend_output_globals = _zend_output_globals;
8074pub type php_stream = _php_stream;
8075pub type php_stream_wrapper = _php_stream_wrapper;
8076pub type php_stream_context = _php_stream_context;
8077pub type php_stream_filter = _php_stream_filter;
8078pub type php_stream_notification_func = ::std::option::Option<
8079    unsafe extern "C" fn(
8080        context: *mut php_stream_context,
8081        notifycode: ::std::os::raw::c_int,
8082        severity: ::std::os::raw::c_int,
8083        xmsg: *mut ::std::os::raw::c_char,
8084        xcode: ::std::os::raw::c_int,
8085        bytes_sofar: usize,
8086        bytes_max: usize,
8087        ptr: *mut ::std::os::raw::c_void,
8088    ),
8089>;
8090pub type php_stream_notifier = _php_stream_notifier;
8091#[repr(C)]
8092#[derive(Debug, Copy, Clone)]
8093pub struct _php_stream_notifier {
8094    pub func: php_stream_notification_func,
8095    pub dtor: ::std::option::Option<unsafe extern "C" fn(notifier: *mut php_stream_notifier)>,
8096    pub ptr: *mut ::std::os::raw::c_void,
8097    pub mask: ::std::os::raw::c_int,
8098    pub progress: usize,
8099    pub progress_max: usize,
8100}
8101#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8102const _: () = {
8103    ["Size of _php_stream_notifier"][::std::mem::size_of::<_php_stream_notifier>() - 48usize];
8104    ["Alignment of _php_stream_notifier"][::std::mem::align_of::<_php_stream_notifier>() - 8usize];
8105    ["Offset of field: _php_stream_notifier::func"]
8106        [::std::mem::offset_of!(_php_stream_notifier, func) - 0usize];
8107    ["Offset of field: _php_stream_notifier::dtor"]
8108        [::std::mem::offset_of!(_php_stream_notifier, dtor) - 8usize];
8109    ["Offset of field: _php_stream_notifier::ptr"]
8110        [::std::mem::offset_of!(_php_stream_notifier, ptr) - 16usize];
8111    ["Offset of field: _php_stream_notifier::mask"]
8112        [::std::mem::offset_of!(_php_stream_notifier, mask) - 24usize];
8113    ["Offset of field: _php_stream_notifier::progress"]
8114        [::std::mem::offset_of!(_php_stream_notifier, progress) - 32usize];
8115    ["Offset of field: _php_stream_notifier::progress_max"]
8116        [::std::mem::offset_of!(_php_stream_notifier, progress_max) - 40usize];
8117};
8118#[repr(C)]
8119#[derive(Copy, Clone)]
8120pub struct _php_stream_context {
8121    pub notifier: *mut php_stream_notifier,
8122    pub options: zval,
8123    pub res: *mut zend_resource,
8124}
8125#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8126const _: () = {
8127    ["Size of _php_stream_context"][::std::mem::size_of::<_php_stream_context>() - 32usize];
8128    ["Alignment of _php_stream_context"][::std::mem::align_of::<_php_stream_context>() - 8usize];
8129    ["Offset of field: _php_stream_context::notifier"]
8130        [::std::mem::offset_of!(_php_stream_context, notifier) - 0usize];
8131    ["Offset of field: _php_stream_context::options"]
8132        [::std::mem::offset_of!(_php_stream_context, options) - 8usize];
8133    ["Offset of field: _php_stream_context::res"]
8134        [::std::mem::offset_of!(_php_stream_context, res) - 24usize];
8135};
8136#[repr(C)]
8137#[derive(Debug)]
8138pub struct php_uri_parser {
8139    _unused: [u8; 0],
8140}
8141pub type php_stream_bucket = _php_stream_bucket;
8142pub type php_stream_bucket_brigade = _php_stream_bucket_brigade;
8143#[repr(C)]
8144#[derive(Debug, Copy, Clone)]
8145pub struct _php_stream_bucket {
8146    pub next: *mut php_stream_bucket,
8147    pub prev: *mut php_stream_bucket,
8148    pub brigade: *mut php_stream_bucket_brigade,
8149    pub buf: *mut ::std::os::raw::c_char,
8150    pub buflen: usize,
8151    pub own_buf: bool,
8152    pub is_persistent: bool,
8153    pub refcount: ::std::os::raw::c_int,
8154}
8155#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8156const _: () = {
8157    ["Size of _php_stream_bucket"][::std::mem::size_of::<_php_stream_bucket>() - 48usize];
8158    ["Alignment of _php_stream_bucket"][::std::mem::align_of::<_php_stream_bucket>() - 8usize];
8159    ["Offset of field: _php_stream_bucket::next"]
8160        [::std::mem::offset_of!(_php_stream_bucket, next) - 0usize];
8161    ["Offset of field: _php_stream_bucket::prev"]
8162        [::std::mem::offset_of!(_php_stream_bucket, prev) - 8usize];
8163    ["Offset of field: _php_stream_bucket::brigade"]
8164        [::std::mem::offset_of!(_php_stream_bucket, brigade) - 16usize];
8165    ["Offset of field: _php_stream_bucket::buf"]
8166        [::std::mem::offset_of!(_php_stream_bucket, buf) - 24usize];
8167    ["Offset of field: _php_stream_bucket::buflen"]
8168        [::std::mem::offset_of!(_php_stream_bucket, buflen) - 32usize];
8169    ["Offset of field: _php_stream_bucket::own_buf"]
8170        [::std::mem::offset_of!(_php_stream_bucket, own_buf) - 40usize];
8171    ["Offset of field: _php_stream_bucket::is_persistent"]
8172        [::std::mem::offset_of!(_php_stream_bucket, is_persistent) - 41usize];
8173    ["Offset of field: _php_stream_bucket::refcount"]
8174        [::std::mem::offset_of!(_php_stream_bucket, refcount) - 44usize];
8175};
8176#[repr(C)]
8177#[derive(Debug, Copy, Clone)]
8178pub struct _php_stream_bucket_brigade {
8179    pub head: *mut php_stream_bucket,
8180    pub tail: *mut php_stream_bucket,
8181}
8182#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8183const _: () = {
8184    ["Size of _php_stream_bucket_brigade"]
8185        [::std::mem::size_of::<_php_stream_bucket_brigade>() - 16usize];
8186    ["Alignment of _php_stream_bucket_brigade"]
8187        [::std::mem::align_of::<_php_stream_bucket_brigade>() - 8usize];
8188    ["Offset of field: _php_stream_bucket_brigade::head"]
8189        [::std::mem::offset_of!(_php_stream_bucket_brigade, head) - 0usize];
8190    ["Offset of field: _php_stream_bucket_brigade::tail"]
8191        [::std::mem::offset_of!(_php_stream_bucket_brigade, tail) - 8usize];
8192};
8193pub mod php_stream_filter_status_t {
8194    #[allow(unused_imports)]
8195    use super::*;
8196    pub type Type = ::std::os::raw::c_uint;
8197    pub const PSFS_ERR_FATAL: Type = 0;
8198    pub const PSFS_FEED_ME: Type = 1;
8199    pub const PSFS_PASS_ON: Type = 2;
8200}
8201#[repr(C)]
8202#[derive(Debug, Copy, Clone)]
8203pub struct _php_stream_filter_ops {
8204    pub filter: ::std::option::Option<
8205        unsafe extern "C" fn(
8206            stream: *mut php_stream,
8207            thisfilter: *mut php_stream_filter,
8208            buckets_in: *mut php_stream_bucket_brigade,
8209            buckets_out: *mut php_stream_bucket_brigade,
8210            bytes_consumed: *mut usize,
8211            flags: ::std::os::raw::c_int,
8212        ) -> php_stream_filter_status_t::Type,
8213    >,
8214    pub dtor: ::std::option::Option<unsafe extern "C" fn(thisfilter: *mut php_stream_filter)>,
8215    pub label: *const ::std::os::raw::c_char,
8216}
8217#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8218const _: () = {
8219    ["Size of _php_stream_filter_ops"][::std::mem::size_of::<_php_stream_filter_ops>() - 24usize];
8220    ["Alignment of _php_stream_filter_ops"]
8221        [::std::mem::align_of::<_php_stream_filter_ops>() - 8usize];
8222    ["Offset of field: _php_stream_filter_ops::filter"]
8223        [::std::mem::offset_of!(_php_stream_filter_ops, filter) - 0usize];
8224    ["Offset of field: _php_stream_filter_ops::dtor"]
8225        [::std::mem::offset_of!(_php_stream_filter_ops, dtor) - 8usize];
8226    ["Offset of field: _php_stream_filter_ops::label"]
8227        [::std::mem::offset_of!(_php_stream_filter_ops, label) - 16usize];
8228};
8229pub type php_stream_filter_ops = _php_stream_filter_ops;
8230#[repr(C)]
8231#[derive(Debug, Copy, Clone)]
8232pub struct _php_stream_filter_chain {
8233    pub head: *mut php_stream_filter,
8234    pub tail: *mut php_stream_filter,
8235    pub stream: *mut php_stream,
8236}
8237#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8238const _: () = {
8239    ["Size of _php_stream_filter_chain"]
8240        [::std::mem::size_of::<_php_stream_filter_chain>() - 24usize];
8241    ["Alignment of _php_stream_filter_chain"]
8242        [::std::mem::align_of::<_php_stream_filter_chain>() - 8usize];
8243    ["Offset of field: _php_stream_filter_chain::head"]
8244        [::std::mem::offset_of!(_php_stream_filter_chain, head) - 0usize];
8245    ["Offset of field: _php_stream_filter_chain::tail"]
8246        [::std::mem::offset_of!(_php_stream_filter_chain, tail) - 8usize];
8247    ["Offset of field: _php_stream_filter_chain::stream"]
8248        [::std::mem::offset_of!(_php_stream_filter_chain, stream) - 16usize];
8249};
8250pub type php_stream_filter_chain = _php_stream_filter_chain;
8251#[repr(C)]
8252#[derive(Copy, Clone)]
8253pub struct _php_stream_filter {
8254    pub fops: *const php_stream_filter_ops,
8255    pub abstract_: zval,
8256    pub next: *mut php_stream_filter,
8257    pub prev: *mut php_stream_filter,
8258    pub is_persistent: ::std::os::raw::c_int,
8259    pub chain: *mut php_stream_filter_chain,
8260    pub buffer: php_stream_bucket_brigade,
8261    pub res: *mut zend_resource,
8262}
8263#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8264const _: () = {
8265    ["Size of _php_stream_filter"][::std::mem::size_of::<_php_stream_filter>() - 80usize];
8266    ["Alignment of _php_stream_filter"][::std::mem::align_of::<_php_stream_filter>() - 8usize];
8267    ["Offset of field: _php_stream_filter::fops"]
8268        [::std::mem::offset_of!(_php_stream_filter, fops) - 0usize];
8269    ["Offset of field: _php_stream_filter::abstract_"]
8270        [::std::mem::offset_of!(_php_stream_filter, abstract_) - 8usize];
8271    ["Offset of field: _php_stream_filter::next"]
8272        [::std::mem::offset_of!(_php_stream_filter, next) - 24usize];
8273    ["Offset of field: _php_stream_filter::prev"]
8274        [::std::mem::offset_of!(_php_stream_filter, prev) - 32usize];
8275    ["Offset of field: _php_stream_filter::is_persistent"]
8276        [::std::mem::offset_of!(_php_stream_filter, is_persistent) - 40usize];
8277    ["Offset of field: _php_stream_filter::chain"]
8278        [::std::mem::offset_of!(_php_stream_filter, chain) - 48usize];
8279    ["Offset of field: _php_stream_filter::buffer"]
8280        [::std::mem::offset_of!(_php_stream_filter, buffer) - 56usize];
8281    ["Offset of field: _php_stream_filter::res"]
8282        [::std::mem::offset_of!(_php_stream_filter, res) - 72usize];
8283};
8284#[repr(C)]
8285#[derive(Debug, Copy, Clone)]
8286pub struct _php_stream_filter_factory {
8287    pub create_filter: ::std::option::Option<
8288        unsafe extern "C" fn(
8289            filtername: *const ::std::os::raw::c_char,
8290            filterparams: *mut zval,
8291            persistent: u8,
8292        ) -> *mut php_stream_filter,
8293    >,
8294}
8295#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8296const _: () = {
8297    ["Size of _php_stream_filter_factory"]
8298        [::std::mem::size_of::<_php_stream_filter_factory>() - 8usize];
8299    ["Alignment of _php_stream_filter_factory"]
8300        [::std::mem::align_of::<_php_stream_filter_factory>() - 8usize];
8301    ["Offset of field: _php_stream_filter_factory::create_filter"]
8302        [::std::mem::offset_of!(_php_stream_filter_factory, create_filter) - 0usize];
8303};
8304pub type php_stream_filter_factory = _php_stream_filter_factory;
8305#[repr(C)]
8306#[derive(Debug, Copy, Clone)]
8307pub struct _php_stream_statbuf {
8308    pub sb: zend_stat_t,
8309}
8310#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8311const _: () = {
8312    ["Size of _php_stream_statbuf"][::std::mem::size_of::<_php_stream_statbuf>() - 144usize];
8313    ["Alignment of _php_stream_statbuf"][::std::mem::align_of::<_php_stream_statbuf>() - 8usize];
8314    ["Offset of field: _php_stream_statbuf::sb"]
8315        [::std::mem::offset_of!(_php_stream_statbuf, sb) - 0usize];
8316};
8317pub type php_stream_statbuf = _php_stream_statbuf;
8318#[repr(C)]
8319#[derive(Debug, Copy, Clone)]
8320pub struct _php_stream_dirent {
8321    pub d_name: [::std::os::raw::c_char; 4096usize],
8322    pub d_type: ::std::os::raw::c_uchar,
8323}
8324#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8325const _: () = {
8326    ["Size of _php_stream_dirent"][::std::mem::size_of::<_php_stream_dirent>() - 4097usize];
8327    ["Alignment of _php_stream_dirent"][::std::mem::align_of::<_php_stream_dirent>() - 1usize];
8328    ["Offset of field: _php_stream_dirent::d_name"]
8329        [::std::mem::offset_of!(_php_stream_dirent, d_name) - 0usize];
8330    ["Offset of field: _php_stream_dirent::d_type"]
8331        [::std::mem::offset_of!(_php_stream_dirent, d_type) - 4096usize];
8332};
8333pub type php_stream_dirent = _php_stream_dirent;
8334#[repr(C)]
8335#[derive(Debug, Copy, Clone)]
8336pub struct _php_stream_ops {
8337    pub write: ::std::option::Option<
8338        unsafe extern "C" fn(
8339            stream: *mut php_stream,
8340            buf: *const ::std::os::raw::c_char,
8341            count: usize,
8342        ) -> isize,
8343    >,
8344    pub read: ::std::option::Option<
8345        unsafe extern "C" fn(
8346            stream: *mut php_stream,
8347            buf: *mut ::std::os::raw::c_char,
8348            count: usize,
8349        ) -> isize,
8350    >,
8351    pub close: ::std::option::Option<
8352        unsafe extern "C" fn(
8353            stream: *mut php_stream,
8354            close_handle: ::std::os::raw::c_int,
8355        ) -> ::std::os::raw::c_int,
8356    >,
8357    pub flush: ::std::option::Option<
8358        unsafe extern "C" fn(stream: *mut php_stream) -> ::std::os::raw::c_int,
8359    >,
8360    pub label: *const ::std::os::raw::c_char,
8361    pub seek: ::std::option::Option<
8362        unsafe extern "C" fn(
8363            stream: *mut php_stream,
8364            offset: zend_off_t,
8365            whence: ::std::os::raw::c_int,
8366            newoffset: *mut zend_off_t,
8367        ) -> ::std::os::raw::c_int,
8368    >,
8369    pub cast: ::std::option::Option<
8370        unsafe extern "C" fn(
8371            stream: *mut php_stream,
8372            castas: ::std::os::raw::c_int,
8373            ret: *mut *mut ::std::os::raw::c_void,
8374        ) -> ::std::os::raw::c_int,
8375    >,
8376    pub stat: ::std::option::Option<
8377        unsafe extern "C" fn(
8378            stream: *mut php_stream,
8379            ssb: *mut php_stream_statbuf,
8380        ) -> ::std::os::raw::c_int,
8381    >,
8382    pub set_option: ::std::option::Option<
8383        unsafe extern "C" fn(
8384            stream: *mut php_stream,
8385            option: ::std::os::raw::c_int,
8386            value: ::std::os::raw::c_int,
8387            ptrparam: *mut ::std::os::raw::c_void,
8388        ) -> ::std::os::raw::c_int,
8389    >,
8390}
8391#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8392const _: () = {
8393    ["Size of _php_stream_ops"][::std::mem::size_of::<_php_stream_ops>() - 72usize];
8394    ["Alignment of _php_stream_ops"][::std::mem::align_of::<_php_stream_ops>() - 8usize];
8395    ["Offset of field: _php_stream_ops::write"]
8396        [::std::mem::offset_of!(_php_stream_ops, write) - 0usize];
8397    ["Offset of field: _php_stream_ops::read"]
8398        [::std::mem::offset_of!(_php_stream_ops, read) - 8usize];
8399    ["Offset of field: _php_stream_ops::close"]
8400        [::std::mem::offset_of!(_php_stream_ops, close) - 16usize];
8401    ["Offset of field: _php_stream_ops::flush"]
8402        [::std::mem::offset_of!(_php_stream_ops, flush) - 24usize];
8403    ["Offset of field: _php_stream_ops::label"]
8404        [::std::mem::offset_of!(_php_stream_ops, label) - 32usize];
8405    ["Offset of field: _php_stream_ops::seek"]
8406        [::std::mem::offset_of!(_php_stream_ops, seek) - 40usize];
8407    ["Offset of field: _php_stream_ops::cast"]
8408        [::std::mem::offset_of!(_php_stream_ops, cast) - 48usize];
8409    ["Offset of field: _php_stream_ops::stat"]
8410        [::std::mem::offset_of!(_php_stream_ops, stat) - 56usize];
8411    ["Offset of field: _php_stream_ops::set_option"]
8412        [::std::mem::offset_of!(_php_stream_ops, set_option) - 64usize];
8413};
8414pub type php_stream_ops = _php_stream_ops;
8415#[repr(C)]
8416#[derive(Debug, Copy, Clone)]
8417pub struct _php_stream_wrapper_ops {
8418    pub stream_opener: ::std::option::Option<
8419        unsafe extern "C" fn(
8420            wrapper: *mut php_stream_wrapper,
8421            filename: *const ::std::os::raw::c_char,
8422            mode: *const ::std::os::raw::c_char,
8423            options: ::std::os::raw::c_int,
8424            opened_path: *mut *mut zend_string,
8425            context: *mut php_stream_context,
8426            __php_stream_call_depth: ::std::os::raw::c_int,
8427            __zend_filename: *const ::std::os::raw::c_char,
8428            __zend_lineno: u32,
8429            __zend_orig_filename: *const ::std::os::raw::c_char,
8430            __zend_orig_lineno: u32,
8431        ) -> *mut php_stream,
8432    >,
8433    pub stream_closer: ::std::option::Option<
8434        unsafe extern "C" fn(
8435            wrapper: *mut php_stream_wrapper,
8436            stream: *mut php_stream,
8437        ) -> ::std::os::raw::c_int,
8438    >,
8439    pub stream_stat: ::std::option::Option<
8440        unsafe extern "C" fn(
8441            wrapper: *mut php_stream_wrapper,
8442            stream: *mut php_stream,
8443            ssb: *mut php_stream_statbuf,
8444        ) -> ::std::os::raw::c_int,
8445    >,
8446    pub url_stat: ::std::option::Option<
8447        unsafe extern "C" fn(
8448            wrapper: *mut php_stream_wrapper,
8449            url: *const ::std::os::raw::c_char,
8450            flags: ::std::os::raw::c_int,
8451            ssb: *mut php_stream_statbuf,
8452            context: *mut php_stream_context,
8453        ) -> ::std::os::raw::c_int,
8454    >,
8455    pub dir_opener: ::std::option::Option<
8456        unsafe extern "C" fn(
8457            wrapper: *mut php_stream_wrapper,
8458            filename: *const ::std::os::raw::c_char,
8459            mode: *const ::std::os::raw::c_char,
8460            options: ::std::os::raw::c_int,
8461            opened_path: *mut *mut zend_string,
8462            context: *mut php_stream_context,
8463            __php_stream_call_depth: ::std::os::raw::c_int,
8464            __zend_filename: *const ::std::os::raw::c_char,
8465            __zend_lineno: u32,
8466            __zend_orig_filename: *const ::std::os::raw::c_char,
8467            __zend_orig_lineno: u32,
8468        ) -> *mut php_stream,
8469    >,
8470    pub label: *const ::std::os::raw::c_char,
8471    pub unlink: ::std::option::Option<
8472        unsafe extern "C" fn(
8473            wrapper: *mut php_stream_wrapper,
8474            url: *const ::std::os::raw::c_char,
8475            options: ::std::os::raw::c_int,
8476            context: *mut php_stream_context,
8477        ) -> ::std::os::raw::c_int,
8478    >,
8479    pub rename: ::std::option::Option<
8480        unsafe extern "C" fn(
8481            wrapper: *mut php_stream_wrapper,
8482            url_from: *const ::std::os::raw::c_char,
8483            url_to: *const ::std::os::raw::c_char,
8484            options: ::std::os::raw::c_int,
8485            context: *mut php_stream_context,
8486        ) -> ::std::os::raw::c_int,
8487    >,
8488    pub stream_mkdir: ::std::option::Option<
8489        unsafe extern "C" fn(
8490            wrapper: *mut php_stream_wrapper,
8491            url: *const ::std::os::raw::c_char,
8492            mode: ::std::os::raw::c_int,
8493            options: ::std::os::raw::c_int,
8494            context: *mut php_stream_context,
8495        ) -> ::std::os::raw::c_int,
8496    >,
8497    pub stream_rmdir: ::std::option::Option<
8498        unsafe extern "C" fn(
8499            wrapper: *mut php_stream_wrapper,
8500            url: *const ::std::os::raw::c_char,
8501            options: ::std::os::raw::c_int,
8502            context: *mut php_stream_context,
8503        ) -> ::std::os::raw::c_int,
8504    >,
8505    pub stream_metadata: ::std::option::Option<
8506        unsafe extern "C" fn(
8507            wrapper: *mut php_stream_wrapper,
8508            url: *const ::std::os::raw::c_char,
8509            options: ::std::os::raw::c_int,
8510            value: *mut ::std::os::raw::c_void,
8511            context: *mut php_stream_context,
8512        ) -> ::std::os::raw::c_int,
8513    >,
8514}
8515#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8516const _: () = {
8517    ["Size of _php_stream_wrapper_ops"][::std::mem::size_of::<_php_stream_wrapper_ops>() - 88usize];
8518    ["Alignment of _php_stream_wrapper_ops"]
8519        [::std::mem::align_of::<_php_stream_wrapper_ops>() - 8usize];
8520    ["Offset of field: _php_stream_wrapper_ops::stream_opener"]
8521        [::std::mem::offset_of!(_php_stream_wrapper_ops, stream_opener) - 0usize];
8522    ["Offset of field: _php_stream_wrapper_ops::stream_closer"]
8523        [::std::mem::offset_of!(_php_stream_wrapper_ops, stream_closer) - 8usize];
8524    ["Offset of field: _php_stream_wrapper_ops::stream_stat"]
8525        [::std::mem::offset_of!(_php_stream_wrapper_ops, stream_stat) - 16usize];
8526    ["Offset of field: _php_stream_wrapper_ops::url_stat"]
8527        [::std::mem::offset_of!(_php_stream_wrapper_ops, url_stat) - 24usize];
8528    ["Offset of field: _php_stream_wrapper_ops::dir_opener"]
8529        [::std::mem::offset_of!(_php_stream_wrapper_ops, dir_opener) - 32usize];
8530    ["Offset of field: _php_stream_wrapper_ops::label"]
8531        [::std::mem::offset_of!(_php_stream_wrapper_ops, label) - 40usize];
8532    ["Offset of field: _php_stream_wrapper_ops::unlink"]
8533        [::std::mem::offset_of!(_php_stream_wrapper_ops, unlink) - 48usize];
8534    ["Offset of field: _php_stream_wrapper_ops::rename"]
8535        [::std::mem::offset_of!(_php_stream_wrapper_ops, rename) - 56usize];
8536    ["Offset of field: _php_stream_wrapper_ops::stream_mkdir"]
8537        [::std::mem::offset_of!(_php_stream_wrapper_ops, stream_mkdir) - 64usize];
8538    ["Offset of field: _php_stream_wrapper_ops::stream_rmdir"]
8539        [::std::mem::offset_of!(_php_stream_wrapper_ops, stream_rmdir) - 72usize];
8540    ["Offset of field: _php_stream_wrapper_ops::stream_metadata"]
8541        [::std::mem::offset_of!(_php_stream_wrapper_ops, stream_metadata) - 80usize];
8542};
8543pub type php_stream_wrapper_ops = _php_stream_wrapper_ops;
8544#[repr(C)]
8545#[derive(Debug, Copy, Clone)]
8546pub struct _php_stream_wrapper {
8547    pub wops: *const php_stream_wrapper_ops,
8548    pub abstract_: *mut ::std::os::raw::c_void,
8549    pub is_url: ::std::os::raw::c_int,
8550}
8551#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8552const _: () = {
8553    ["Size of _php_stream_wrapper"][::std::mem::size_of::<_php_stream_wrapper>() - 24usize];
8554    ["Alignment of _php_stream_wrapper"][::std::mem::align_of::<_php_stream_wrapper>() - 8usize];
8555    ["Offset of field: _php_stream_wrapper::wops"]
8556        [::std::mem::offset_of!(_php_stream_wrapper, wops) - 0usize];
8557    ["Offset of field: _php_stream_wrapper::abstract_"]
8558        [::std::mem::offset_of!(_php_stream_wrapper, abstract_) - 8usize];
8559    ["Offset of field: _php_stream_wrapper::is_url"]
8560        [::std::mem::offset_of!(_php_stream_wrapper, is_url) - 16usize];
8561};
8562#[repr(C)]
8563#[derive(Copy, Clone)]
8564pub struct _php_stream {
8565    pub ops: *const php_stream_ops,
8566    pub abstract_: *mut ::std::os::raw::c_void,
8567    pub readfilters: php_stream_filter_chain,
8568    pub writefilters: php_stream_filter_chain,
8569    pub wrapper: *mut php_stream_wrapper,
8570    pub wrapperthis: *mut ::std::os::raw::c_void,
8571    pub wrapperdata: zval,
8572    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
8573    pub mode: [::std::os::raw::c_char; 16usize],
8574    pub flags: u32,
8575    pub res: *mut zend_resource,
8576    pub stdiocast: *mut FILE,
8577    pub orig_path: *mut ::std::os::raw::c_char,
8578    pub ctx: *mut zend_resource,
8579    pub position: zend_off_t,
8580    pub readbuf: *mut ::std::os::raw::c_uchar,
8581    pub readbuflen: usize,
8582    pub readpos: zend_off_t,
8583    pub writepos: zend_off_t,
8584    pub chunk_size: usize,
8585    pub open_filename: *const ::std::os::raw::c_char,
8586    pub open_lineno: u32,
8587    pub enclosing_stream: *mut _php_stream,
8588}
8589#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8590const _: () = {
8591    ["Size of _php_stream"][::std::mem::size_of::<_php_stream>() - 224usize];
8592    ["Alignment of _php_stream"][::std::mem::align_of::<_php_stream>() - 8usize];
8593    ["Offset of field: _php_stream::ops"][::std::mem::offset_of!(_php_stream, ops) - 0usize];
8594    ["Offset of field: _php_stream::abstract_"]
8595        [::std::mem::offset_of!(_php_stream, abstract_) - 8usize];
8596    ["Offset of field: _php_stream::readfilters"]
8597        [::std::mem::offset_of!(_php_stream, readfilters) - 16usize];
8598    ["Offset of field: _php_stream::writefilters"]
8599        [::std::mem::offset_of!(_php_stream, writefilters) - 40usize];
8600    ["Offset of field: _php_stream::wrapper"]
8601        [::std::mem::offset_of!(_php_stream, wrapper) - 64usize];
8602    ["Offset of field: _php_stream::wrapperthis"]
8603        [::std::mem::offset_of!(_php_stream, wrapperthis) - 72usize];
8604    ["Offset of field: _php_stream::wrapperdata"]
8605        [::std::mem::offset_of!(_php_stream, wrapperdata) - 80usize];
8606    ["Offset of field: _php_stream::mode"][::std::mem::offset_of!(_php_stream, mode) - 98usize];
8607    ["Offset of field: _php_stream::flags"][::std::mem::offset_of!(_php_stream, flags) - 116usize];
8608    ["Offset of field: _php_stream::res"][::std::mem::offset_of!(_php_stream, res) - 120usize];
8609    ["Offset of field: _php_stream::stdiocast"]
8610        [::std::mem::offset_of!(_php_stream, stdiocast) - 128usize];
8611    ["Offset of field: _php_stream::orig_path"]
8612        [::std::mem::offset_of!(_php_stream, orig_path) - 136usize];
8613    ["Offset of field: _php_stream::ctx"][::std::mem::offset_of!(_php_stream, ctx) - 144usize];
8614    ["Offset of field: _php_stream::position"]
8615        [::std::mem::offset_of!(_php_stream, position) - 152usize];
8616    ["Offset of field: _php_stream::readbuf"]
8617        [::std::mem::offset_of!(_php_stream, readbuf) - 160usize];
8618    ["Offset of field: _php_stream::readbuflen"]
8619        [::std::mem::offset_of!(_php_stream, readbuflen) - 168usize];
8620    ["Offset of field: _php_stream::readpos"]
8621        [::std::mem::offset_of!(_php_stream, readpos) - 176usize];
8622    ["Offset of field: _php_stream::writepos"]
8623        [::std::mem::offset_of!(_php_stream, writepos) - 184usize];
8624    ["Offset of field: _php_stream::chunk_size"]
8625        [::std::mem::offset_of!(_php_stream, chunk_size) - 192usize];
8626    ["Offset of field: _php_stream::open_filename"]
8627        [::std::mem::offset_of!(_php_stream, open_filename) - 200usize];
8628    ["Offset of field: _php_stream::open_lineno"]
8629        [::std::mem::offset_of!(_php_stream, open_lineno) - 208usize];
8630    ["Offset of field: _php_stream::enclosing_stream"]
8631        [::std::mem::offset_of!(_php_stream, enclosing_stream) - 216usize];
8632};
8633impl _php_stream {
8634    #[inline]
8635    #[allow(unnecessary_transmutes)]
8636    pub fn is_persistent(&self) -> u16 {
8637        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u16) }
8638    }
8639    #[inline]
8640    #[allow(unnecessary_transmutes)]
8641    pub fn set_is_persistent(&mut self, val: u16) {
8642        unsafe {
8643            let val: u16 = ::std::mem::transmute(val);
8644            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
8645        }
8646    }
8647    #[inline]
8648    #[allow(unnecessary_transmutes)]
8649    pub unsafe fn is_persistent_raw(this: *const Self) -> u16 {
8650        unsafe {
8651            ::std::mem::transmute(
8652                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<0usize, 1u8>(
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_is_persistent_raw(this: *mut Self, val: u16) {
8661        unsafe {
8662            let val: u16 = ::std::mem::transmute(val);
8663            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<0usize, 1u8>(
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 in_free(&self) -> u16 {
8672        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<1usize, 2u8>() as u16) }
8673    }
8674    #[inline]
8675    #[allow(unnecessary_transmutes)]
8676    pub fn set_in_free(&mut self, val: u16) {
8677        unsafe {
8678            let val: u16 = ::std::mem::transmute(val);
8679            self._bitfield_1.set_const::<1usize, 2u8>(val as u64)
8680        }
8681    }
8682    #[inline]
8683    #[allow(unnecessary_transmutes)]
8684    pub unsafe fn in_free_raw(this: *const Self) -> u16 {
8685        unsafe {
8686            ::std::mem::transmute(
8687                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<1usize, 2u8>(
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_in_free_raw(this: *mut Self, val: u16) {
8696        unsafe {
8697            let val: u16 = ::std::mem::transmute(val);
8698            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<1usize, 2u8>(
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 eof(&self) -> u16 {
8707        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<3usize, 1u8>() as u16) }
8708    }
8709    #[inline]
8710    #[allow(unnecessary_transmutes)]
8711    pub fn set_eof(&mut self, val: u16) {
8712        unsafe {
8713            let val: u16 = ::std::mem::transmute(val);
8714            self._bitfield_1.set_const::<3usize, 1u8>(val as u64)
8715        }
8716    }
8717    #[inline]
8718    #[allow(unnecessary_transmutes)]
8719    pub unsafe fn eof_raw(this: *const Self) -> u16 {
8720        unsafe {
8721            ::std::mem::transmute(
8722                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<3usize, 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_eof_raw(this: *mut Self, val: u16) {
8731        unsafe {
8732            let val: u16 = ::std::mem::transmute(val);
8733            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<3usize, 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 __exposed(&self) -> u16 {
8742        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<4usize, 1u8>() as u16) }
8743    }
8744    #[inline]
8745    #[allow(unnecessary_transmutes)]
8746    pub fn set___exposed(&mut self, val: u16) {
8747        unsafe {
8748            let val: u16 = ::std::mem::transmute(val);
8749            self._bitfield_1.set_const::<4usize, 1u8>(val as u64)
8750        }
8751    }
8752    #[inline]
8753    #[allow(unnecessary_transmutes)]
8754    pub unsafe fn __exposed_raw(this: *const Self) -> u16 {
8755        unsafe {
8756            ::std::mem::transmute(
8757                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<4usize, 1u8>(
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___exposed_raw(this: *mut Self, val: u16) {
8766        unsafe {
8767            let val: u16 = ::std::mem::transmute(val);
8768            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<4usize, 1u8>(
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 fclose_stdiocast(&self) -> u16 {
8777        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<5usize, 2u8>() as u16) }
8778    }
8779    #[inline]
8780    #[allow(unnecessary_transmutes)]
8781    pub fn set_fclose_stdiocast(&mut self, val: u16) {
8782        unsafe {
8783            let val: u16 = ::std::mem::transmute(val);
8784            self._bitfield_1.set_const::<5usize, 2u8>(val as u64)
8785        }
8786    }
8787    #[inline]
8788    #[allow(unnecessary_transmutes)]
8789    pub unsafe fn fclose_stdiocast_raw(this: *const Self) -> u16 {
8790        unsafe {
8791            ::std::mem::transmute(
8792                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<5usize, 2u8>(
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_fclose_stdiocast_raw(this: *mut Self, val: u16) {
8801        unsafe {
8802            let val: u16 = ::std::mem::transmute(val);
8803            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<5usize, 2u8>(
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 has_buffered_data(&self) -> u16 {
8812        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<7usize, 1u8>() as u16) }
8813    }
8814    #[inline]
8815    #[allow(unnecessary_transmutes)]
8816    pub fn set_has_buffered_data(&mut self, val: u16) {
8817        unsafe {
8818            let val: u16 = ::std::mem::transmute(val);
8819            self._bitfield_1.set_const::<7usize, 1u8>(val as u64)
8820        }
8821    }
8822    #[inline]
8823    #[allow(unnecessary_transmutes)]
8824    pub unsafe fn has_buffered_data_raw(this: *const Self) -> u16 {
8825        unsafe {
8826            ::std::mem::transmute(
8827                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<7usize, 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_has_buffered_data_raw(this: *mut Self, val: u16) {
8836        unsafe {
8837            let val: u16 = ::std::mem::transmute(val);
8838            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<7usize, 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 fclose_stdiocast_flush_in_progress(&self) -> u16 {
8847        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<8usize, 1u8>() as u16) }
8848    }
8849    #[inline]
8850    #[allow(unnecessary_transmutes)]
8851    pub fn set_fclose_stdiocast_flush_in_progress(&mut self, val: u16) {
8852        unsafe {
8853            let val: u16 = ::std::mem::transmute(val);
8854            self._bitfield_1.set_const::<8usize, 1u8>(val as u64)
8855        }
8856    }
8857    #[inline]
8858    #[allow(unnecessary_transmutes)]
8859    pub unsafe fn fclose_stdiocast_flush_in_progress_raw(this: *const Self) -> u16 {
8860        unsafe {
8861            ::std::mem::transmute(
8862                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<8usize, 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_fclose_stdiocast_flush_in_progress_raw(this: *mut Self, val: u16) {
8871        unsafe {
8872            let val: u16 = ::std::mem::transmute(val);
8873            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<8usize, 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 fatal_error(&self) -> u16 {
8882        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<9usize, 1u8>() as u16) }
8883    }
8884    #[inline]
8885    #[allow(unnecessary_transmutes)]
8886    pub fn set_fatal_error(&mut self, val: u16) {
8887        unsafe {
8888            let val: u16 = ::std::mem::transmute(val);
8889            self._bitfield_1.set_const::<9usize, 1u8>(val as u64)
8890        }
8891    }
8892    #[inline]
8893    #[allow(unnecessary_transmutes)]
8894    pub unsafe fn fatal_error_raw(this: *const Self) -> u16 {
8895        unsafe {
8896            ::std::mem::transmute(
8897                <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get_const::<9usize, 1u8>(
8898                    ::std::ptr::addr_of!((*this)._bitfield_1),
8899                ) as u16,
8900            )
8901        }
8902    }
8903    #[inline]
8904    #[allow(unnecessary_transmutes)]
8905    pub unsafe fn set_fatal_error_raw(this: *mut Self, val: u16) {
8906        unsafe {
8907            let val: u16 = ::std::mem::transmute(val);
8908            <__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set_const::<9usize, 1u8>(
8909                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
8910                val as u64,
8911            )
8912        }
8913    }
8914    #[inline]
8915    #[allow(unnecessary_transmutes)]
8916    pub fn new_bitfield_1(
8917        is_persistent: u16,
8918        in_free: u16,
8919        eof: u16,
8920        __exposed: u16,
8921        fclose_stdiocast: u16,
8922        has_buffered_data: u16,
8923        fclose_stdiocast_flush_in_progress: u16,
8924        fatal_error: u16,
8925    ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
8926        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
8927        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
8928            let is_persistent: u16 = unsafe { ::std::mem::transmute(is_persistent) };
8929            is_persistent as u64
8930        });
8931        __bindgen_bitfield_unit.set_const::<1usize, 2u8>({
8932            let in_free: u16 = unsafe { ::std::mem::transmute(in_free) };
8933            in_free as u64
8934        });
8935        __bindgen_bitfield_unit.set_const::<3usize, 1u8>({
8936            let eof: u16 = unsafe { ::std::mem::transmute(eof) };
8937            eof as u64
8938        });
8939        __bindgen_bitfield_unit.set_const::<4usize, 1u8>({
8940            let __exposed: u16 = unsafe { ::std::mem::transmute(__exposed) };
8941            __exposed as u64
8942        });
8943        __bindgen_bitfield_unit.set_const::<5usize, 2u8>({
8944            let fclose_stdiocast: u16 = unsafe { ::std::mem::transmute(fclose_stdiocast) };
8945            fclose_stdiocast as u64
8946        });
8947        __bindgen_bitfield_unit.set_const::<7usize, 1u8>({
8948            let has_buffered_data: u16 = unsafe { ::std::mem::transmute(has_buffered_data) };
8949            has_buffered_data as u64
8950        });
8951        __bindgen_bitfield_unit.set_const::<8usize, 1u8>({
8952            let fclose_stdiocast_flush_in_progress: u16 =
8953                unsafe { ::std::mem::transmute(fclose_stdiocast_flush_in_progress) };
8954            fclose_stdiocast_flush_in_progress as u64
8955        });
8956        __bindgen_bitfield_unit.set_const::<9usize, 1u8>({
8957            let fatal_error: u16 = unsafe { ::std::mem::transmute(fatal_error) };
8958            fatal_error as u64
8959        });
8960        __bindgen_bitfield_unit
8961    }
8962}
8963pub type sa_family_t = ::std::os::raw::c_ushort;
8964#[repr(C)]
8965#[derive(Debug, Copy, Clone)]
8966pub struct sockaddr {
8967    pub sa_family: sa_family_t,
8968    pub sa_data: [::std::os::raw::c_char; 14usize],
8969}
8970#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8971const _: () = {
8972    ["Size of sockaddr"][::std::mem::size_of::<sockaddr>() - 16usize];
8973    ["Alignment of sockaddr"][::std::mem::align_of::<sockaddr>() - 2usize];
8974    ["Offset of field: sockaddr::sa_family"][::std::mem::offset_of!(sockaddr, sa_family) - 0usize];
8975    ["Offset of field: sockaddr::sa_data"][::std::mem::offset_of!(sockaddr, sa_data) - 2usize];
8976};
8977pub type php_stream_transport_factory_func = ::std::option::Option<
8978    unsafe extern "C" fn(
8979        proto: *const ::std::os::raw::c_char,
8980        protolen: usize,
8981        resourcename: *const ::std::os::raw::c_char,
8982        resourcenamelen: usize,
8983        persistent_id: *const ::std::os::raw::c_char,
8984        options: ::std::os::raw::c_int,
8985        flags: ::std::os::raw::c_int,
8986        timeout: *mut timeval,
8987        context: *mut php_stream_context,
8988        __php_stream_call_depth: ::std::os::raw::c_int,
8989        __zend_filename: *const ::std::os::raw::c_char,
8990        __zend_lineno: u32,
8991        __zend_orig_filename: *const ::std::os::raw::c_char,
8992        __zend_orig_lineno: u32,
8993    ) -> *mut php_stream,
8994>;
8995pub type php_stream_transport_factory = php_stream_transport_factory_func;
8996pub mod php_stream_xport_send_recv_flags {
8997    #[allow(unused_imports)]
8998    use super::*;
8999    pub type Type = ::std::os::raw::c_uint;
9000    pub const STREAM_OOB: Type = 1;
9001    pub const STREAM_PEEK: Type = 2;
9002}
9003pub mod stream_shutdown_t {
9004    #[allow(unused_imports)]
9005    use super::*;
9006    pub type Type = ::std::os::raw::c_uint;
9007    pub const STREAM_SHUT_RD: Type = 0;
9008    pub const STREAM_SHUT_WR: Type = 1;
9009    pub const STREAM_SHUT_RDWR: Type = 2;
9010}
9011#[repr(C)]
9012#[derive(Debug, Copy, Clone)]
9013pub struct _php_stream_xport_param {
9014    pub op: _php_stream_xport_param__bindgen_ty_3::Type,
9015    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
9016    pub inputs: _php_stream_xport_param__bindgen_ty_1,
9017    pub outputs: _php_stream_xport_param__bindgen_ty_2,
9018}
9019pub mod _php_stream_xport_param__bindgen_ty_3 {
9020    #[allow(unused_imports)]
9021    use super::*;
9022    pub type Type = ::std::os::raw::c_uint;
9023    pub const STREAM_XPORT_OP_BIND: Type = 0;
9024    pub const STREAM_XPORT_OP_CONNECT: Type = 1;
9025    pub const STREAM_XPORT_OP_LISTEN: Type = 2;
9026    pub const STREAM_XPORT_OP_ACCEPT: Type = 3;
9027    pub const STREAM_XPORT_OP_CONNECT_ASYNC: Type = 4;
9028    pub const STREAM_XPORT_OP_GET_NAME: Type = 5;
9029    pub const STREAM_XPORT_OP_GET_PEER_NAME: Type = 6;
9030    pub const STREAM_XPORT_OP_RECV: Type = 7;
9031    pub const STREAM_XPORT_OP_SEND: Type = 8;
9032    pub const STREAM_XPORT_OP_SHUTDOWN: Type = 9;
9033}
9034#[repr(C)]
9035#[derive(Debug, Copy, Clone)]
9036pub struct _php_stream_xport_param__bindgen_ty_1 {
9037    pub name: *mut ::std::os::raw::c_char,
9038    pub namelen: usize,
9039    pub timeout: *mut timeval,
9040    pub addr: *mut sockaddr,
9041    pub buf: *mut ::std::os::raw::c_char,
9042    pub buflen: usize,
9043    pub addrlen: socklen_t,
9044    pub backlog: ::std::os::raw::c_int,
9045    pub flags: ::std::os::raw::c_int,
9046}
9047#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9048const _: () = {
9049    ["Size of _php_stream_xport_param__bindgen_ty_1"]
9050        [::std::mem::size_of::<_php_stream_xport_param__bindgen_ty_1>() - 64usize];
9051    ["Alignment of _php_stream_xport_param__bindgen_ty_1"]
9052        [::std::mem::align_of::<_php_stream_xport_param__bindgen_ty_1>() - 8usize];
9053    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::name"]
9054        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, name) - 0usize];
9055    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::namelen"]
9056        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, namelen) - 8usize];
9057    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::timeout"]
9058        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, timeout) - 16usize];
9059    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::addr"]
9060        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, addr) - 24usize];
9061    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::buf"]
9062        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, buf) - 32usize];
9063    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::buflen"]
9064        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, buflen) - 40usize];
9065    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::addrlen"]
9066        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, addrlen) - 48usize];
9067    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::backlog"]
9068        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, backlog) - 52usize];
9069    ["Offset of field: _php_stream_xport_param__bindgen_ty_1::flags"]
9070        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_1, flags) - 56usize];
9071};
9072#[repr(C)]
9073#[derive(Debug, Copy, Clone)]
9074pub struct _php_stream_xport_param__bindgen_ty_2 {
9075    pub client: *mut php_stream,
9076    pub addr: *mut sockaddr,
9077    pub addrlen: socklen_t,
9078    pub textaddr: *mut zend_string,
9079    pub error_text: *mut zend_string,
9080    pub returncode: ::std::os::raw::c_int,
9081    pub error_code: ::std::os::raw::c_int,
9082}
9083#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9084const _: () = {
9085    ["Size of _php_stream_xport_param__bindgen_ty_2"]
9086        [::std::mem::size_of::<_php_stream_xport_param__bindgen_ty_2>() - 48usize];
9087    ["Alignment of _php_stream_xport_param__bindgen_ty_2"]
9088        [::std::mem::align_of::<_php_stream_xport_param__bindgen_ty_2>() - 8usize];
9089    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::client"]
9090        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, client) - 0usize];
9091    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::addr"]
9092        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, addr) - 8usize];
9093    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::addrlen"]
9094        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, addrlen) - 16usize];
9095    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::textaddr"]
9096        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, textaddr) - 24usize];
9097    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::error_text"]
9098        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, error_text) - 32usize];
9099    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::returncode"]
9100        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, returncode) - 40usize];
9101    ["Offset of field: _php_stream_xport_param__bindgen_ty_2::error_code"]
9102        [::std::mem::offset_of!(_php_stream_xport_param__bindgen_ty_2, error_code) - 44usize];
9103};
9104#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9105const _: () = {
9106    ["Size of _php_stream_xport_param"]
9107        [::std::mem::size_of::<_php_stream_xport_param>() - 120usize];
9108    ["Alignment of _php_stream_xport_param"]
9109        [::std::mem::align_of::<_php_stream_xport_param>() - 8usize];
9110    ["Offset of field: _php_stream_xport_param::op"]
9111        [::std::mem::offset_of!(_php_stream_xport_param, op) - 0usize];
9112    ["Offset of field: _php_stream_xport_param::inputs"]
9113        [::std::mem::offset_of!(_php_stream_xport_param, inputs) - 8usize];
9114    ["Offset of field: _php_stream_xport_param::outputs"]
9115        [::std::mem::offset_of!(_php_stream_xport_param, outputs) - 72usize];
9116};
9117impl _php_stream_xport_param {
9118    #[inline]
9119    #[allow(unnecessary_transmutes)]
9120    pub fn want_addr(&self) -> ::std::os::raw::c_uint {
9121        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<0usize, 1u8>() as u32) }
9122    }
9123    #[inline]
9124    #[allow(unnecessary_transmutes)]
9125    pub fn set_want_addr(&mut self, val: ::std::os::raw::c_uint) {
9126        unsafe {
9127            let val: u32 = ::std::mem::transmute(val);
9128            self._bitfield_1.set_const::<0usize, 1u8>(val as u64)
9129        }
9130    }
9131    #[inline]
9132    #[allow(unnecessary_transmutes)]
9133    pub unsafe fn want_addr_raw(this: *const Self) -> ::std::os::raw::c_uint {
9134        unsafe {
9135            ::std::mem::transmute(
9136                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<0usize, 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_addr_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::<0usize, 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_textaddr(&self) -> ::std::os::raw::c_uint {
9156        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<1usize, 1u8>() as u32) }
9157    }
9158    #[inline]
9159    #[allow(unnecessary_transmutes)]
9160    pub fn set_want_textaddr(&mut self, val: ::std::os::raw::c_uint) {
9161        unsafe {
9162            let val: u32 = ::std::mem::transmute(val);
9163            self._bitfield_1.set_const::<1usize, 1u8>(val as u64)
9164        }
9165    }
9166    #[inline]
9167    #[allow(unnecessary_transmutes)]
9168    pub unsafe fn want_textaddr_raw(this: *const Self) -> ::std::os::raw::c_uint {
9169        unsafe {
9170            ::std::mem::transmute(
9171                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<1usize, 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_textaddr_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::<1usize, 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 want_errortext(&self) -> ::std::os::raw::c_uint {
9191        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<2usize, 1u8>() as u32) }
9192    }
9193    #[inline]
9194    #[allow(unnecessary_transmutes)]
9195    pub fn set_want_errortext(&mut self, val: ::std::os::raw::c_uint) {
9196        unsafe {
9197            let val: u32 = ::std::mem::transmute(val);
9198            self._bitfield_1.set_const::<2usize, 1u8>(val as u64)
9199        }
9200    }
9201    #[inline]
9202    #[allow(unnecessary_transmutes)]
9203    pub unsafe fn want_errortext_raw(this: *const Self) -> ::std::os::raw::c_uint {
9204        unsafe {
9205            ::std::mem::transmute(
9206                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<2usize, 1u8>(
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_want_errortext_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::<2usize, 1u8>(
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 how(&self) -> ::std::os::raw::c_uint {
9226        unsafe { ::std::mem::transmute(self._bitfield_1.get_const::<3usize, 2u8>() as u32) }
9227    }
9228    #[inline]
9229    #[allow(unnecessary_transmutes)]
9230    pub fn set_how(&mut self, val: ::std::os::raw::c_uint) {
9231        unsafe {
9232            let val: u32 = ::std::mem::transmute(val);
9233            self._bitfield_1.set_const::<3usize, 2u8>(val as u64)
9234        }
9235    }
9236    #[inline]
9237    #[allow(unnecessary_transmutes)]
9238    pub unsafe fn how_raw(this: *const Self) -> ::std::os::raw::c_uint {
9239        unsafe {
9240            ::std::mem::transmute(
9241                <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get_const::<3usize, 2u8>(
9242                    ::std::ptr::addr_of!((*this)._bitfield_1),
9243                ) as u32,
9244            )
9245        }
9246    }
9247    #[inline]
9248    #[allow(unnecessary_transmutes)]
9249    pub unsafe fn set_how_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
9250        unsafe {
9251            let val: u32 = ::std::mem::transmute(val);
9252            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set_const::<3usize, 2u8>(
9253                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
9254                val as u64,
9255            )
9256        }
9257    }
9258    #[inline]
9259    #[allow(unnecessary_transmutes)]
9260    pub fn new_bitfield_1(
9261        want_addr: ::std::os::raw::c_uint,
9262        want_textaddr: ::std::os::raw::c_uint,
9263        want_errortext: ::std::os::raw::c_uint,
9264        how: ::std::os::raw::c_uint,
9265    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
9266        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
9267        __bindgen_bitfield_unit.set_const::<0usize, 1u8>({
9268            let want_addr: u32 = unsafe { ::std::mem::transmute(want_addr) };
9269            want_addr as u64
9270        });
9271        __bindgen_bitfield_unit.set_const::<1usize, 1u8>({
9272            let want_textaddr: u32 = unsafe { ::std::mem::transmute(want_textaddr) };
9273            want_textaddr as u64
9274        });
9275        __bindgen_bitfield_unit.set_const::<2usize, 1u8>({
9276            let want_errortext: u32 = unsafe { ::std::mem::transmute(want_errortext) };
9277            want_errortext as u64
9278        });
9279        __bindgen_bitfield_unit.set_const::<3usize, 2u8>({
9280            let how: u32 = unsafe { ::std::mem::transmute(how) };
9281            how as u64
9282        });
9283        __bindgen_bitfield_unit
9284    }
9285}
9286pub type php_stream_xport_param = _php_stream_xport_param;
9287pub mod php_stream_xport_crypt_method_t {
9288    #[allow(unused_imports)]
9289    use super::*;
9290    pub type Type = ::std::os::raw::c_uint;
9291    pub const STREAM_CRYPTO_METHOD_SSLv2_CLIENT: Type = 3;
9292    pub const STREAM_CRYPTO_METHOD_SSLv3_CLIENT: Type = 5;
9293    pub const STREAM_CRYPTO_METHOD_SSLv23_CLIENT: Type = 57;
9294    pub const STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT: Type = 9;
9295    pub const STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT: Type = 17;
9296    pub const STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT: Type = 33;
9297    pub const STREAM_CRYPTO_METHOD_TLSv1_3_CLIENT: Type = 65;
9298    pub const STREAM_CRYPTO_METHOD_TLS_CLIENT: Type = 121;
9299    pub const STREAM_CRYPTO_METHOD_TLS_ANY_CLIENT: Type = 121;
9300    pub const STREAM_CRYPTO_METHOD_ANY_CLIENT: Type = 127;
9301    pub const STREAM_CRYPTO_METHOD_SSLv2_SERVER: Type = 2;
9302    pub const STREAM_CRYPTO_METHOD_SSLv3_SERVER: Type = 4;
9303    pub const STREAM_CRYPTO_METHOD_SSLv23_SERVER: Type = 120;
9304    pub const STREAM_CRYPTO_METHOD_TLSv1_0_SERVER: Type = 8;
9305    pub const STREAM_CRYPTO_METHOD_TLSv1_1_SERVER: Type = 16;
9306    pub const STREAM_CRYPTO_METHOD_TLSv1_2_SERVER: Type = 32;
9307    pub const STREAM_CRYPTO_METHOD_TLSv1_3_SERVER: Type = 64;
9308    pub const STREAM_CRYPTO_METHOD_TLS_SERVER: Type = 120;
9309    pub const STREAM_CRYPTO_METHOD_TLS_ANY_SERVER: Type = 120;
9310    pub const STREAM_CRYPTO_METHOD_ANY_SERVER: Type = 126;
9311}
9312#[repr(C)]
9313#[derive(Debug, Copy, Clone)]
9314pub struct _php_stream_xport_crypto_param {
9315    pub inputs: _php_stream_xport_crypto_param__bindgen_ty_1,
9316    pub outputs: _php_stream_xport_crypto_param__bindgen_ty_2,
9317    pub op: _php_stream_xport_crypto_param__bindgen_ty_3::Type,
9318}
9319#[repr(C)]
9320#[derive(Debug, Copy, Clone)]
9321pub struct _php_stream_xport_crypto_param__bindgen_ty_1 {
9322    pub session: *mut php_stream,
9323    pub activate: ::std::os::raw::c_int,
9324    pub method: php_stream_xport_crypt_method_t::Type,
9325}
9326#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9327const _: () = {
9328    ["Size of _php_stream_xport_crypto_param__bindgen_ty_1"]
9329        [::std::mem::size_of::<_php_stream_xport_crypto_param__bindgen_ty_1>() - 16usize];
9330    ["Alignment of _php_stream_xport_crypto_param__bindgen_ty_1"]
9331        [::std::mem::align_of::<_php_stream_xport_crypto_param__bindgen_ty_1>() - 8usize];
9332    ["Offset of field: _php_stream_xport_crypto_param__bindgen_ty_1::session"]
9333        [::std::mem::offset_of!(_php_stream_xport_crypto_param__bindgen_ty_1, session) - 0usize];
9334    ["Offset of field: _php_stream_xport_crypto_param__bindgen_ty_1::activate"]
9335        [::std::mem::offset_of!(_php_stream_xport_crypto_param__bindgen_ty_1, activate) - 8usize];
9336    ["Offset of field: _php_stream_xport_crypto_param__bindgen_ty_1::method"]
9337        [::std::mem::offset_of!(_php_stream_xport_crypto_param__bindgen_ty_1, method) - 12usize];
9338};
9339#[repr(C)]
9340#[derive(Debug, Copy, Clone)]
9341pub struct _php_stream_xport_crypto_param__bindgen_ty_2 {
9342    pub returncode: ::std::os::raw::c_int,
9343}
9344#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9345const _: () = {
9346    ["Size of _php_stream_xport_crypto_param__bindgen_ty_2"]
9347        [::std::mem::size_of::<_php_stream_xport_crypto_param__bindgen_ty_2>() - 4usize];
9348    ["Alignment of _php_stream_xport_crypto_param__bindgen_ty_2"]
9349        [::std::mem::align_of::<_php_stream_xport_crypto_param__bindgen_ty_2>() - 4usize];
9350    ["Offset of field: _php_stream_xport_crypto_param__bindgen_ty_2::returncode"]
9351        [::std::mem::offset_of!(_php_stream_xport_crypto_param__bindgen_ty_2, returncode) - 0usize];
9352};
9353pub mod _php_stream_xport_crypto_param__bindgen_ty_3 {
9354    #[allow(unused_imports)]
9355    use super::*;
9356    pub type Type = ::std::os::raw::c_uint;
9357    pub const STREAM_XPORT_CRYPTO_OP_SETUP: Type = 0;
9358    pub const STREAM_XPORT_CRYPTO_OP_ENABLE: Type = 1;
9359}
9360#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9361const _: () = {
9362    ["Size of _php_stream_xport_crypto_param"]
9363        [::std::mem::size_of::<_php_stream_xport_crypto_param>() - 24usize];
9364    ["Alignment of _php_stream_xport_crypto_param"]
9365        [::std::mem::align_of::<_php_stream_xport_crypto_param>() - 8usize];
9366    ["Offset of field: _php_stream_xport_crypto_param::inputs"]
9367        [::std::mem::offset_of!(_php_stream_xport_crypto_param, inputs) - 0usize];
9368    ["Offset of field: _php_stream_xport_crypto_param::outputs"]
9369        [::std::mem::offset_of!(_php_stream_xport_crypto_param, outputs) - 16usize];
9370    ["Offset of field: _php_stream_xport_crypto_param::op"]
9371        [::std::mem::offset_of!(_php_stream_xport_crypto_param, op) - 20usize];
9372};
9373pub type php_stream_xport_crypto_param = _php_stream_xport_crypto_param;
9374pub mod php_stream_mmap_operation_t {
9375    #[allow(unused_imports)]
9376    use super::*;
9377    pub type Type = ::std::os::raw::c_uint;
9378    pub const PHP_STREAM_MMAP_SUPPORTED: Type = 0;
9379    pub const PHP_STREAM_MMAP_MAP_RANGE: Type = 1;
9380    pub const PHP_STREAM_MMAP_UNMAP: Type = 2;
9381}
9382pub mod php_stream_mmap_access_t {
9383    #[allow(unused_imports)]
9384    use super::*;
9385    pub type Type = ::std::os::raw::c_uint;
9386    pub const PHP_STREAM_MAP_MODE_READONLY: Type = 0;
9387    pub const PHP_STREAM_MAP_MODE_READWRITE: Type = 1;
9388    pub const PHP_STREAM_MAP_MODE_SHARED_READONLY: Type = 2;
9389    pub const PHP_STREAM_MAP_MODE_SHARED_READWRITE: Type = 3;
9390}
9391#[repr(C)]
9392#[derive(Debug, Copy, Clone)]
9393pub struct php_stream_mmap_range {
9394    pub offset: usize,
9395    pub length: usize,
9396    pub mode: php_stream_mmap_access_t::Type,
9397    pub mapped: *mut ::std::os::raw::c_char,
9398}
9399#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9400const _: () = {
9401    ["Size of php_stream_mmap_range"][::std::mem::size_of::<php_stream_mmap_range>() - 32usize];
9402    ["Alignment of php_stream_mmap_range"]
9403        [::std::mem::align_of::<php_stream_mmap_range>() - 8usize];
9404    ["Offset of field: php_stream_mmap_range::offset"]
9405        [::std::mem::offset_of!(php_stream_mmap_range, offset) - 0usize];
9406    ["Offset of field: php_stream_mmap_range::length"]
9407        [::std::mem::offset_of!(php_stream_mmap_range, length) - 8usize];
9408    ["Offset of field: php_stream_mmap_range::mode"]
9409        [::std::mem::offset_of!(php_stream_mmap_range, mode) - 16usize];
9410    ["Offset of field: php_stream_mmap_range::mapped"]
9411        [::std::mem::offset_of!(php_stream_mmap_range, mapped) - 24usize];
9412};
9413pub mod php_stream_make_seekable_status {
9414    #[allow(unused_imports)]
9415    use super::*;
9416    pub type Type = ::std::os::raw::c_uint;
9417    pub const PHP_STREAM_UNCHANGED: Type = 0;
9418    pub const PHP_STREAM_RELEASED: Type = 1;
9419    pub const PHP_STREAM_FAILED: Type = 2;
9420    pub const PHP_STREAM_CRITICAL: Type = 3;
9421}
9422pub type php_core_globals = _php_core_globals;
9423#[repr(C)]
9424#[derive(Copy, Clone)]
9425pub struct _php_core_globals {
9426    pub output_buffering: zend_long,
9427    pub implicit_flush: bool,
9428    pub enable_dl: bool,
9429    pub display_errors: u8,
9430    pub display_startup_errors: bool,
9431    pub log_errors: bool,
9432    pub ignore_repeated_errors: bool,
9433    pub ignore_repeated_source: bool,
9434    pub report_memleaks: bool,
9435    pub output_handler: *mut ::std::os::raw::c_char,
9436    pub unserialize_callback_func: *mut ::std::os::raw::c_char,
9437    pub serialize_precision: zend_long,
9438    pub memory_limit: zend_long,
9439    pub max_memory_limit: zend_long,
9440    pub max_input_time: zend_long,
9441    pub error_log: *mut ::std::os::raw::c_char,
9442    pub doc_root: *mut ::std::os::raw::c_char,
9443    pub user_dir: *mut ::std::os::raw::c_char,
9444    pub include_path: *mut ::std::os::raw::c_char,
9445    pub open_basedir: *mut ::std::os::raw::c_char,
9446    pub open_basedir_modified: bool,
9447    pub extension_dir: *mut ::std::os::raw::c_char,
9448    pub php_binary: *mut ::std::os::raw::c_char,
9449    pub sys_temp_dir: *mut ::std::os::raw::c_char,
9450    pub upload_tmp_dir: *mut ::std::os::raw::c_char,
9451    pub upload_max_filesize: zend_long,
9452    pub error_append_string: *mut ::std::os::raw::c_char,
9453    pub error_prepend_string: *mut ::std::os::raw::c_char,
9454    pub auto_prepend_file: *mut ::std::os::raw::c_char,
9455    pub auto_append_file: *mut ::std::os::raw::c_char,
9456    pub input_encoding: *mut ::std::os::raw::c_char,
9457    pub internal_encoding: *mut ::std::os::raw::c_char,
9458    pub output_encoding: *mut ::std::os::raw::c_char,
9459    pub arg_separator: arg_separators,
9460    pub variables_order: *mut ::std::os::raw::c_char,
9461    pub rfc1867_protected_variables: HashTable,
9462    pub connection_status: ::std::os::raw::c_short,
9463    pub ignore_user_abort: bool,
9464    pub header_is_being_sent: ::std::os::raw::c_uchar,
9465    pub tick_functions: zend_llist,
9466    pub http_globals: [zval; 6usize],
9467    pub expose_php: bool,
9468    pub register_argc_argv: bool,
9469    pub auto_globals_jit: bool,
9470    pub html_errors: bool,
9471    pub xmlrpc_errors: bool,
9472    pub docref_root: *mut ::std::os::raw::c_char,
9473    pub docref_ext: *mut ::std::os::raw::c_char,
9474    pub xmlrpc_error_number: zend_long,
9475    pub activated_auto_globals: [bool; 8usize],
9476    pub modules_activated: bool,
9477    pub file_uploads: bool,
9478    pub during_request_startup: bool,
9479    pub allow_url_fopen: bool,
9480    pub enable_post_data_reading: bool,
9481    pub report_zend_debug: bool,
9482    pub last_error_type: ::std::os::raw::c_int,
9483    pub last_error_lineno: ::std::os::raw::c_int,
9484    pub last_error_message: *mut zend_string,
9485    pub last_error_file: *mut zend_string,
9486    pub php_sys_temp_dir: *mut ::std::os::raw::c_char,
9487    pub max_input_nesting_level: zend_long,
9488    pub max_input_vars: zend_long,
9489    pub user_ini_filename: *mut ::std::os::raw::c_char,
9490    pub user_ini_cache_ttl: zend_long,
9491    pub request_order: *mut ::std::os::raw::c_char,
9492    pub mail_log: *mut ::std::os::raw::c_char,
9493    pub mail_cr_lf_mode: *mut zend_string,
9494    pub mail_x_header: bool,
9495    pub mail_mixed_lf_and_crlf: bool,
9496    pub in_error_log: bool,
9497    pub allow_url_include: bool,
9498    pub in_user_include: bool,
9499    pub have_called_openlog: bool,
9500    pub syslog_facility: zend_long,
9501    pub syslog_ident: *mut ::std::os::raw::c_char,
9502    pub syslog_filter: zend_long,
9503    pub error_log_mode: zend_long,
9504}
9505#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9506const _: () = {
9507    ["Size of _php_core_globals"][::std::mem::size_of::<_php_core_globals>() - 624usize];
9508    ["Alignment of _php_core_globals"][::std::mem::align_of::<_php_core_globals>() - 8usize];
9509    ["Offset of field: _php_core_globals::output_buffering"]
9510        [::std::mem::offset_of!(_php_core_globals, output_buffering) - 0usize];
9511    ["Offset of field: _php_core_globals::implicit_flush"]
9512        [::std::mem::offset_of!(_php_core_globals, implicit_flush) - 8usize];
9513    ["Offset of field: _php_core_globals::enable_dl"]
9514        [::std::mem::offset_of!(_php_core_globals, enable_dl) - 9usize];
9515    ["Offset of field: _php_core_globals::display_errors"]
9516        [::std::mem::offset_of!(_php_core_globals, display_errors) - 10usize];
9517    ["Offset of field: _php_core_globals::display_startup_errors"]
9518        [::std::mem::offset_of!(_php_core_globals, display_startup_errors) - 11usize];
9519    ["Offset of field: _php_core_globals::log_errors"]
9520        [::std::mem::offset_of!(_php_core_globals, log_errors) - 12usize];
9521    ["Offset of field: _php_core_globals::ignore_repeated_errors"]
9522        [::std::mem::offset_of!(_php_core_globals, ignore_repeated_errors) - 13usize];
9523    ["Offset of field: _php_core_globals::ignore_repeated_source"]
9524        [::std::mem::offset_of!(_php_core_globals, ignore_repeated_source) - 14usize];
9525    ["Offset of field: _php_core_globals::report_memleaks"]
9526        [::std::mem::offset_of!(_php_core_globals, report_memleaks) - 15usize];
9527    ["Offset of field: _php_core_globals::output_handler"]
9528        [::std::mem::offset_of!(_php_core_globals, output_handler) - 16usize];
9529    ["Offset of field: _php_core_globals::unserialize_callback_func"]
9530        [::std::mem::offset_of!(_php_core_globals, unserialize_callback_func) - 24usize];
9531    ["Offset of field: _php_core_globals::serialize_precision"]
9532        [::std::mem::offset_of!(_php_core_globals, serialize_precision) - 32usize];
9533    ["Offset of field: _php_core_globals::memory_limit"]
9534        [::std::mem::offset_of!(_php_core_globals, memory_limit) - 40usize];
9535    ["Offset of field: _php_core_globals::max_memory_limit"]
9536        [::std::mem::offset_of!(_php_core_globals, max_memory_limit) - 48usize];
9537    ["Offset of field: _php_core_globals::max_input_time"]
9538        [::std::mem::offset_of!(_php_core_globals, max_input_time) - 56usize];
9539    ["Offset of field: _php_core_globals::error_log"]
9540        [::std::mem::offset_of!(_php_core_globals, error_log) - 64usize];
9541    ["Offset of field: _php_core_globals::doc_root"]
9542        [::std::mem::offset_of!(_php_core_globals, doc_root) - 72usize];
9543    ["Offset of field: _php_core_globals::user_dir"]
9544        [::std::mem::offset_of!(_php_core_globals, user_dir) - 80usize];
9545    ["Offset of field: _php_core_globals::include_path"]
9546        [::std::mem::offset_of!(_php_core_globals, include_path) - 88usize];
9547    ["Offset of field: _php_core_globals::open_basedir"]
9548        [::std::mem::offset_of!(_php_core_globals, open_basedir) - 96usize];
9549    ["Offset of field: _php_core_globals::open_basedir_modified"]
9550        [::std::mem::offset_of!(_php_core_globals, open_basedir_modified) - 104usize];
9551    ["Offset of field: _php_core_globals::extension_dir"]
9552        [::std::mem::offset_of!(_php_core_globals, extension_dir) - 112usize];
9553    ["Offset of field: _php_core_globals::php_binary"]
9554        [::std::mem::offset_of!(_php_core_globals, php_binary) - 120usize];
9555    ["Offset of field: _php_core_globals::sys_temp_dir"]
9556        [::std::mem::offset_of!(_php_core_globals, sys_temp_dir) - 128usize];
9557    ["Offset of field: _php_core_globals::upload_tmp_dir"]
9558        [::std::mem::offset_of!(_php_core_globals, upload_tmp_dir) - 136usize];
9559    ["Offset of field: _php_core_globals::upload_max_filesize"]
9560        [::std::mem::offset_of!(_php_core_globals, upload_max_filesize) - 144usize];
9561    ["Offset of field: _php_core_globals::error_append_string"]
9562        [::std::mem::offset_of!(_php_core_globals, error_append_string) - 152usize];
9563    ["Offset of field: _php_core_globals::error_prepend_string"]
9564        [::std::mem::offset_of!(_php_core_globals, error_prepend_string) - 160usize];
9565    ["Offset of field: _php_core_globals::auto_prepend_file"]
9566        [::std::mem::offset_of!(_php_core_globals, auto_prepend_file) - 168usize];
9567    ["Offset of field: _php_core_globals::auto_append_file"]
9568        [::std::mem::offset_of!(_php_core_globals, auto_append_file) - 176usize];
9569    ["Offset of field: _php_core_globals::input_encoding"]
9570        [::std::mem::offset_of!(_php_core_globals, input_encoding) - 184usize];
9571    ["Offset of field: _php_core_globals::internal_encoding"]
9572        [::std::mem::offset_of!(_php_core_globals, internal_encoding) - 192usize];
9573    ["Offset of field: _php_core_globals::output_encoding"]
9574        [::std::mem::offset_of!(_php_core_globals, output_encoding) - 200usize];
9575    ["Offset of field: _php_core_globals::arg_separator"]
9576        [::std::mem::offset_of!(_php_core_globals, arg_separator) - 208usize];
9577    ["Offset of field: _php_core_globals::variables_order"]
9578        [::std::mem::offset_of!(_php_core_globals, variables_order) - 224usize];
9579    ["Offset of field: _php_core_globals::rfc1867_protected_variables"]
9580        [::std::mem::offset_of!(_php_core_globals, rfc1867_protected_variables) - 232usize];
9581    ["Offset of field: _php_core_globals::connection_status"]
9582        [::std::mem::offset_of!(_php_core_globals, connection_status) - 288usize];
9583    ["Offset of field: _php_core_globals::ignore_user_abort"]
9584        [::std::mem::offset_of!(_php_core_globals, ignore_user_abort) - 290usize];
9585    ["Offset of field: _php_core_globals::header_is_being_sent"]
9586        [::std::mem::offset_of!(_php_core_globals, header_is_being_sent) - 291usize];
9587    ["Offset of field: _php_core_globals::tick_functions"]
9588        [::std::mem::offset_of!(_php_core_globals, tick_functions) - 296usize];
9589    ["Offset of field: _php_core_globals::http_globals"]
9590        [::std::mem::offset_of!(_php_core_globals, http_globals) - 352usize];
9591    ["Offset of field: _php_core_globals::expose_php"]
9592        [::std::mem::offset_of!(_php_core_globals, expose_php) - 448usize];
9593    ["Offset of field: _php_core_globals::register_argc_argv"]
9594        [::std::mem::offset_of!(_php_core_globals, register_argc_argv) - 449usize];
9595    ["Offset of field: _php_core_globals::auto_globals_jit"]
9596        [::std::mem::offset_of!(_php_core_globals, auto_globals_jit) - 450usize];
9597    ["Offset of field: _php_core_globals::html_errors"]
9598        [::std::mem::offset_of!(_php_core_globals, html_errors) - 451usize];
9599    ["Offset of field: _php_core_globals::xmlrpc_errors"]
9600        [::std::mem::offset_of!(_php_core_globals, xmlrpc_errors) - 452usize];
9601    ["Offset of field: _php_core_globals::docref_root"]
9602        [::std::mem::offset_of!(_php_core_globals, docref_root) - 456usize];
9603    ["Offset of field: _php_core_globals::docref_ext"]
9604        [::std::mem::offset_of!(_php_core_globals, docref_ext) - 464usize];
9605    ["Offset of field: _php_core_globals::xmlrpc_error_number"]
9606        [::std::mem::offset_of!(_php_core_globals, xmlrpc_error_number) - 472usize];
9607    ["Offset of field: _php_core_globals::activated_auto_globals"]
9608        [::std::mem::offset_of!(_php_core_globals, activated_auto_globals) - 480usize];
9609    ["Offset of field: _php_core_globals::modules_activated"]
9610        [::std::mem::offset_of!(_php_core_globals, modules_activated) - 488usize];
9611    ["Offset of field: _php_core_globals::file_uploads"]
9612        [::std::mem::offset_of!(_php_core_globals, file_uploads) - 489usize];
9613    ["Offset of field: _php_core_globals::during_request_startup"]
9614        [::std::mem::offset_of!(_php_core_globals, during_request_startup) - 490usize];
9615    ["Offset of field: _php_core_globals::allow_url_fopen"]
9616        [::std::mem::offset_of!(_php_core_globals, allow_url_fopen) - 491usize];
9617    ["Offset of field: _php_core_globals::enable_post_data_reading"]
9618        [::std::mem::offset_of!(_php_core_globals, enable_post_data_reading) - 492usize];
9619    ["Offset of field: _php_core_globals::report_zend_debug"]
9620        [::std::mem::offset_of!(_php_core_globals, report_zend_debug) - 493usize];
9621    ["Offset of field: _php_core_globals::last_error_type"]
9622        [::std::mem::offset_of!(_php_core_globals, last_error_type) - 496usize];
9623    ["Offset of field: _php_core_globals::last_error_lineno"]
9624        [::std::mem::offset_of!(_php_core_globals, last_error_lineno) - 500usize];
9625    ["Offset of field: _php_core_globals::last_error_message"]
9626        [::std::mem::offset_of!(_php_core_globals, last_error_message) - 504usize];
9627    ["Offset of field: _php_core_globals::last_error_file"]
9628        [::std::mem::offset_of!(_php_core_globals, last_error_file) - 512usize];
9629    ["Offset of field: _php_core_globals::php_sys_temp_dir"]
9630        [::std::mem::offset_of!(_php_core_globals, php_sys_temp_dir) - 520usize];
9631    ["Offset of field: _php_core_globals::max_input_nesting_level"]
9632        [::std::mem::offset_of!(_php_core_globals, max_input_nesting_level) - 528usize];
9633    ["Offset of field: _php_core_globals::max_input_vars"]
9634        [::std::mem::offset_of!(_php_core_globals, max_input_vars) - 536usize];
9635    ["Offset of field: _php_core_globals::user_ini_filename"]
9636        [::std::mem::offset_of!(_php_core_globals, user_ini_filename) - 544usize];
9637    ["Offset of field: _php_core_globals::user_ini_cache_ttl"]
9638        [::std::mem::offset_of!(_php_core_globals, user_ini_cache_ttl) - 552usize];
9639    ["Offset of field: _php_core_globals::request_order"]
9640        [::std::mem::offset_of!(_php_core_globals, request_order) - 560usize];
9641    ["Offset of field: _php_core_globals::mail_log"]
9642        [::std::mem::offset_of!(_php_core_globals, mail_log) - 568usize];
9643    ["Offset of field: _php_core_globals::mail_cr_lf_mode"]
9644        [::std::mem::offset_of!(_php_core_globals, mail_cr_lf_mode) - 576usize];
9645    ["Offset of field: _php_core_globals::mail_x_header"]
9646        [::std::mem::offset_of!(_php_core_globals, mail_x_header) - 584usize];
9647    ["Offset of field: _php_core_globals::mail_mixed_lf_and_crlf"]
9648        [::std::mem::offset_of!(_php_core_globals, mail_mixed_lf_and_crlf) - 585usize];
9649    ["Offset of field: _php_core_globals::in_error_log"]
9650        [::std::mem::offset_of!(_php_core_globals, in_error_log) - 586usize];
9651    ["Offset of field: _php_core_globals::allow_url_include"]
9652        [::std::mem::offset_of!(_php_core_globals, allow_url_include) - 587usize];
9653    ["Offset of field: _php_core_globals::in_user_include"]
9654        [::std::mem::offset_of!(_php_core_globals, in_user_include) - 588usize];
9655    ["Offset of field: _php_core_globals::have_called_openlog"]
9656        [::std::mem::offset_of!(_php_core_globals, have_called_openlog) - 589usize];
9657    ["Offset of field: _php_core_globals::syslog_facility"]
9658        [::std::mem::offset_of!(_php_core_globals, syslog_facility) - 592usize];
9659    ["Offset of field: _php_core_globals::syslog_ident"]
9660        [::std::mem::offset_of!(_php_core_globals, syslog_ident) - 600usize];
9661    ["Offset of field: _php_core_globals::syslog_filter"]
9662        [::std::mem::offset_of!(_php_core_globals, syslog_filter) - 608usize];
9663    ["Offset of field: _php_core_globals::error_log_mode"]
9664        [::std::mem::offset_of!(_php_core_globals, error_log_mode) - 616usize];
9665};
9666#[repr(C)]
9667#[derive(Debug)]
9668pub struct _php_tick_function_entry {
9669    _unused: [u8; 0],
9670}
9671#[repr(C)]
9672#[derive(Debug, Copy, Clone)]
9673pub struct _arg_separators {
9674    pub output: *mut zend_string,
9675    pub input: *mut zend_string,
9676}
9677#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9678const _: () = {
9679    ["Size of _arg_separators"][::std::mem::size_of::<_arg_separators>() - 16usize];
9680    ["Alignment of _arg_separators"][::std::mem::align_of::<_arg_separators>() - 8usize];
9681    ["Offset of field: _arg_separators::output"]
9682        [::std::mem::offset_of!(_arg_separators, output) - 0usize];
9683    ["Offset of field: _arg_separators::input"]
9684        [::std::mem::offset_of!(_arg_separators, input) - 8usize];
9685};
9686pub type arg_separators = _arg_separators;
9687pub type zend_bool = bool;
9688pub type zend_intptr_t = isize;
9689pub type zend_uintptr_t = usize;
9690pub type php_stat_len = usize;
9691#[repr(C)]
9692#[derive(Debug, Copy, Clone)]
9693pub struct url_adapt_state_ex_t {
9694    pub tag: smart_str,
9695    pub arg: smart_str,
9696    pub val: smart_str,
9697    pub buf: smart_str,
9698    pub result: smart_str,
9699    pub form_app: smart_str,
9700    pub url_app: smart_str,
9701    pub active: ::std::os::raw::c_int,
9702    pub lookup_data: *mut ::std::os::raw::c_char,
9703    pub state: ::std::os::raw::c_int,
9704    pub type_: ::std::os::raw::c_int,
9705    pub attr_val: smart_str,
9706    pub tag_type: ::std::os::raw::c_int,
9707    pub attr_type: ::std::os::raw::c_int,
9708    pub tags: *mut HashTable,
9709}
9710#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9711const _: () = {
9712    ["Size of url_adapt_state_ex_t"][::std::mem::size_of::<url_adapt_state_ex_t>() - 168usize];
9713    ["Alignment of url_adapt_state_ex_t"][::std::mem::align_of::<url_adapt_state_ex_t>() - 8usize];
9714    ["Offset of field: url_adapt_state_ex_t::tag"]
9715        [::std::mem::offset_of!(url_adapt_state_ex_t, tag) - 0usize];
9716    ["Offset of field: url_adapt_state_ex_t::arg"]
9717        [::std::mem::offset_of!(url_adapt_state_ex_t, arg) - 16usize];
9718    ["Offset of field: url_adapt_state_ex_t::val"]
9719        [::std::mem::offset_of!(url_adapt_state_ex_t, val) - 32usize];
9720    ["Offset of field: url_adapt_state_ex_t::buf"]
9721        [::std::mem::offset_of!(url_adapt_state_ex_t, buf) - 48usize];
9722    ["Offset of field: url_adapt_state_ex_t::result"]
9723        [::std::mem::offset_of!(url_adapt_state_ex_t, result) - 64usize];
9724    ["Offset of field: url_adapt_state_ex_t::form_app"]
9725        [::std::mem::offset_of!(url_adapt_state_ex_t, form_app) - 80usize];
9726    ["Offset of field: url_adapt_state_ex_t::url_app"]
9727        [::std::mem::offset_of!(url_adapt_state_ex_t, url_app) - 96usize];
9728    ["Offset of field: url_adapt_state_ex_t::active"]
9729        [::std::mem::offset_of!(url_adapt_state_ex_t, active) - 112usize];
9730    ["Offset of field: url_adapt_state_ex_t::lookup_data"]
9731        [::std::mem::offset_of!(url_adapt_state_ex_t, lookup_data) - 120usize];
9732    ["Offset of field: url_adapt_state_ex_t::state"]
9733        [::std::mem::offset_of!(url_adapt_state_ex_t, state) - 128usize];
9734    ["Offset of field: url_adapt_state_ex_t::type_"]
9735        [::std::mem::offset_of!(url_adapt_state_ex_t, type_) - 132usize];
9736    ["Offset of field: url_adapt_state_ex_t::attr_val"]
9737        [::std::mem::offset_of!(url_adapt_state_ex_t, attr_val) - 136usize];
9738    ["Offset of field: url_adapt_state_ex_t::tag_type"]
9739        [::std::mem::offset_of!(url_adapt_state_ex_t, tag_type) - 152usize];
9740    ["Offset of field: url_adapt_state_ex_t::attr_type"]
9741        [::std::mem::offset_of!(url_adapt_state_ex_t, attr_type) - 156usize];
9742    ["Offset of field: url_adapt_state_ex_t::tags"]
9743        [::std::mem::offset_of!(url_adapt_state_ex_t, tags) - 160usize];
9744};
9745#[repr(C)]
9746#[derive(Copy, Clone)]
9747pub struct _php_basic_globals {
9748    pub user_shutdown_function_names: *mut HashTable,
9749    pub putenv_ht: HashTable,
9750    pub strtok_string: *mut zend_string,
9751    pub ctype_string: *mut zend_string,
9752    pub locale_changed: bool,
9753    pub strtok_last: *mut ::std::os::raw::c_char,
9754    pub strtok_table: [::std::os::raw::c_char; 256usize],
9755    pub strtok_len: usize,
9756    pub user_compare_fci: zend_fcall_info,
9757    pub user_compare_fci_cache: zend_fcall_info_cache,
9758    pub user_tick_functions: *mut zend_llist,
9759    pub active_ini_file_section: zval,
9760    pub last_http_headers: zval,
9761    pub page_uid: zend_long,
9762    pub page_gid: zend_long,
9763    pub page_inode: zend_long,
9764    pub page_mtime: time_t,
9765    pub CurrentStatFile: *mut zend_string,
9766    pub CurrentLStatFile: *mut zend_string,
9767    pub ssb: php_stream_statbuf,
9768    pub lssb: php_stream_statbuf,
9769    pub syslog_device: *mut ::std::os::raw::c_char,
9770    pub serialize_lock: ::std::os::raw::c_uint,
9771    pub serialize: _php_basic_globals__bindgen_ty_1,
9772    pub unserialize: _php_basic_globals__bindgen_ty_2,
9773    pub url_adapt_session_ex: url_adapt_state_ex_t,
9774    pub url_adapt_session_hosts_ht: HashTable,
9775    pub url_adapt_output_ex: url_adapt_state_ex_t,
9776    pub url_adapt_output_hosts_ht: HashTable,
9777    pub user_filter_map: *mut HashTable,
9778    pub umask: ::std::os::raw::c_int,
9779    pub unserialize_max_depth: zend_long,
9780}
9781#[repr(C)]
9782#[derive(Debug, Copy, Clone)]
9783pub struct _php_basic_globals__bindgen_ty_1 {
9784    pub data: *mut php_serialize_data,
9785    pub level: ::std::os::raw::c_uint,
9786}
9787#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9788const _: () = {
9789    ["Size of _php_basic_globals__bindgen_ty_1"]
9790        [::std::mem::size_of::<_php_basic_globals__bindgen_ty_1>() - 16usize];
9791    ["Alignment of _php_basic_globals__bindgen_ty_1"]
9792        [::std::mem::align_of::<_php_basic_globals__bindgen_ty_1>() - 8usize];
9793    ["Offset of field: _php_basic_globals__bindgen_ty_1::data"]
9794        [::std::mem::offset_of!(_php_basic_globals__bindgen_ty_1, data) - 0usize];
9795    ["Offset of field: _php_basic_globals__bindgen_ty_1::level"]
9796        [::std::mem::offset_of!(_php_basic_globals__bindgen_ty_1, level) - 8usize];
9797};
9798#[repr(C)]
9799#[derive(Debug, Copy, Clone)]
9800pub struct _php_basic_globals__bindgen_ty_2 {
9801    pub data: *mut php_unserialize_data,
9802    pub level: ::std::os::raw::c_uint,
9803}
9804#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9805const _: () = {
9806    ["Size of _php_basic_globals__bindgen_ty_2"]
9807        [::std::mem::size_of::<_php_basic_globals__bindgen_ty_2>() - 16usize];
9808    ["Alignment of _php_basic_globals__bindgen_ty_2"]
9809        [::std::mem::align_of::<_php_basic_globals__bindgen_ty_2>() - 8usize];
9810    ["Offset of field: _php_basic_globals__bindgen_ty_2::data"]
9811        [::std::mem::offset_of!(_php_basic_globals__bindgen_ty_2, data) - 0usize];
9812    ["Offset of field: _php_basic_globals__bindgen_ty_2::level"]
9813        [::std::mem::offset_of!(_php_basic_globals__bindgen_ty_2, level) - 8usize];
9814};
9815#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9816const _: () = {
9817    ["Size of _php_basic_globals"][::std::mem::size_of::<_php_basic_globals>() - 1360usize];
9818    ["Alignment of _php_basic_globals"][::std::mem::align_of::<_php_basic_globals>() - 8usize];
9819    ["Offset of field: _php_basic_globals::user_shutdown_function_names"]
9820        [::std::mem::offset_of!(_php_basic_globals, user_shutdown_function_names) - 0usize];
9821    ["Offset of field: _php_basic_globals::putenv_ht"]
9822        [::std::mem::offset_of!(_php_basic_globals, putenv_ht) - 8usize];
9823    ["Offset of field: _php_basic_globals::strtok_string"]
9824        [::std::mem::offset_of!(_php_basic_globals, strtok_string) - 64usize];
9825    ["Offset of field: _php_basic_globals::ctype_string"]
9826        [::std::mem::offset_of!(_php_basic_globals, ctype_string) - 72usize];
9827    ["Offset of field: _php_basic_globals::locale_changed"]
9828        [::std::mem::offset_of!(_php_basic_globals, locale_changed) - 80usize];
9829    ["Offset of field: _php_basic_globals::strtok_last"]
9830        [::std::mem::offset_of!(_php_basic_globals, strtok_last) - 88usize];
9831    ["Offset of field: _php_basic_globals::strtok_table"]
9832        [::std::mem::offset_of!(_php_basic_globals, strtok_table) - 96usize];
9833    ["Offset of field: _php_basic_globals::strtok_len"]
9834        [::std::mem::offset_of!(_php_basic_globals, strtok_len) - 352usize];
9835    ["Offset of field: _php_basic_globals::user_compare_fci"]
9836        [::std::mem::offset_of!(_php_basic_globals, user_compare_fci) - 360usize];
9837    ["Offset of field: _php_basic_globals::user_compare_fci_cache"]
9838        [::std::mem::offset_of!(_php_basic_globals, user_compare_fci_cache) - 424usize];
9839    ["Offset of field: _php_basic_globals::user_tick_functions"]
9840        [::std::mem::offset_of!(_php_basic_globals, user_tick_functions) - 464usize];
9841    ["Offset of field: _php_basic_globals::active_ini_file_section"]
9842        [::std::mem::offset_of!(_php_basic_globals, active_ini_file_section) - 472usize];
9843    ["Offset of field: _php_basic_globals::last_http_headers"]
9844        [::std::mem::offset_of!(_php_basic_globals, last_http_headers) - 488usize];
9845    ["Offset of field: _php_basic_globals::page_uid"]
9846        [::std::mem::offset_of!(_php_basic_globals, page_uid) - 504usize];
9847    ["Offset of field: _php_basic_globals::page_gid"]
9848        [::std::mem::offset_of!(_php_basic_globals, page_gid) - 512usize];
9849    ["Offset of field: _php_basic_globals::page_inode"]
9850        [::std::mem::offset_of!(_php_basic_globals, page_inode) - 520usize];
9851    ["Offset of field: _php_basic_globals::page_mtime"]
9852        [::std::mem::offset_of!(_php_basic_globals, page_mtime) - 528usize];
9853    ["Offset of field: _php_basic_globals::CurrentStatFile"]
9854        [::std::mem::offset_of!(_php_basic_globals, CurrentStatFile) - 536usize];
9855    ["Offset of field: _php_basic_globals::CurrentLStatFile"]
9856        [::std::mem::offset_of!(_php_basic_globals, CurrentLStatFile) - 544usize];
9857    ["Offset of field: _php_basic_globals::ssb"]
9858        [::std::mem::offset_of!(_php_basic_globals, ssb) - 552usize];
9859    ["Offset of field: _php_basic_globals::lssb"]
9860        [::std::mem::offset_of!(_php_basic_globals, lssb) - 696usize];
9861    ["Offset of field: _php_basic_globals::syslog_device"]
9862        [::std::mem::offset_of!(_php_basic_globals, syslog_device) - 840usize];
9863    ["Offset of field: _php_basic_globals::serialize_lock"]
9864        [::std::mem::offset_of!(_php_basic_globals, serialize_lock) - 848usize];
9865    ["Offset of field: _php_basic_globals::serialize"]
9866        [::std::mem::offset_of!(_php_basic_globals, serialize) - 856usize];
9867    ["Offset of field: _php_basic_globals::unserialize"]
9868        [::std::mem::offset_of!(_php_basic_globals, unserialize) - 872usize];
9869    ["Offset of field: _php_basic_globals::url_adapt_session_ex"]
9870        [::std::mem::offset_of!(_php_basic_globals, url_adapt_session_ex) - 888usize];
9871    ["Offset of field: _php_basic_globals::url_adapt_session_hosts_ht"]
9872        [::std::mem::offset_of!(_php_basic_globals, url_adapt_session_hosts_ht) - 1056usize];
9873    ["Offset of field: _php_basic_globals::url_adapt_output_ex"]
9874        [::std::mem::offset_of!(_php_basic_globals, url_adapt_output_ex) - 1112usize];
9875    ["Offset of field: _php_basic_globals::url_adapt_output_hosts_ht"]
9876        [::std::mem::offset_of!(_php_basic_globals, url_adapt_output_hosts_ht) - 1280usize];
9877    ["Offset of field: _php_basic_globals::user_filter_map"]
9878        [::std::mem::offset_of!(_php_basic_globals, user_filter_map) - 1336usize];
9879    ["Offset of field: _php_basic_globals::umask"]
9880        [::std::mem::offset_of!(_php_basic_globals, umask) - 1344usize];
9881    ["Offset of field: _php_basic_globals::unserialize_max_depth"]
9882        [::std::mem::offset_of!(_php_basic_globals, unserialize_max_depth) - 1352usize];
9883};
9884pub type php_basic_globals = _php_basic_globals;
9885#[repr(C)]
9886#[derive(Debug, Copy, Clone)]
9887pub struct _php_shutdown_function_entry {
9888    pub fci_cache: zend_fcall_info_cache,
9889    pub params: *mut zval,
9890    pub param_count: u32,
9891}
9892#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9893const _: () = {
9894    ["Size of _php_shutdown_function_entry"]
9895        [::std::mem::size_of::<_php_shutdown_function_entry>() - 56usize];
9896    ["Alignment of _php_shutdown_function_entry"]
9897        [::std::mem::align_of::<_php_shutdown_function_entry>() - 8usize];
9898    ["Offset of field: _php_shutdown_function_entry::fci_cache"]
9899        [::std::mem::offset_of!(_php_shutdown_function_entry, fci_cache) - 0usize];
9900    ["Offset of field: _php_shutdown_function_entry::params"]
9901        [::std::mem::offset_of!(_php_shutdown_function_entry, params) - 40usize];
9902    ["Offset of field: _php_shutdown_function_entry::param_count"]
9903        [::std::mem::offset_of!(_php_shutdown_function_entry, param_count) - 48usize];
9904};
9905pub type php_shutdown_function_entry = _php_shutdown_function_entry;
9906pub type php_serialize_data_t = *mut php_serialize_data;
9907pub type php_unserialize_data_t = *mut php_unserialize_data;
9908pub type __builtin_va_list = [__va_list_tag; 1usize];
9909#[repr(C)]
9910#[derive(Debug, Copy, Clone)]
9911pub struct __va_list_tag {
9912    pub gp_offset: ::std::os::raw::c_uint,
9913    pub fp_offset: ::std::os::raw::c_uint,
9914    pub overflow_arg_area: *mut ::std::os::raw::c_void,
9915    pub reg_save_area: *mut ::std::os::raw::c_void,
9916}
9917#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9918const _: () = {
9919    ["Size of __va_list_tag"][::std::mem::size_of::<__va_list_tag>() - 24usize];
9920    ["Alignment of __va_list_tag"][::std::mem::align_of::<__va_list_tag>() - 8usize];
9921    ["Offset of field: __va_list_tag::gp_offset"]
9922        [::std::mem::offset_of!(__va_list_tag, gp_offset) - 0usize];
9923    ["Offset of field: __va_list_tag::fp_offset"]
9924        [::std::mem::offset_of!(__va_list_tag, fp_offset) - 4usize];
9925    ["Offset of field: __va_list_tag::overflow_arg_area"]
9926        [::std::mem::offset_of!(__va_list_tag, overflow_arg_area) - 8usize];
9927    ["Offset of field: __va_list_tag::reg_save_area"]
9928        [::std::mem::offset_of!(__va_list_tag, reg_save_area) - 16usize];
9929};
9930#[repr(C)]
9931#[derive(Debug, Copy, Clone)]
9932pub struct php_serialize_data {
9933    pub _address: u8,
9934}
9935#[repr(C)]
9936#[derive(Debug, Copy, Clone)]
9937pub struct php_unserialize_data {
9938    pub _address: u8,
9939}
9940unsafe extern "C" {
9941    pub static mut zend_dl_use_deepbind: bool;
9942    #[link_name = "zval_get_type__extern"]
9943    pub fn zval_get_type(pz: *const zval) -> u8;
9944    #[link_name = "zval_gc_type__extern"]
9945    pub fn zval_gc_type(gc_type_info: u32) -> u8;
9946    #[link_name = "zval_gc_flags__extern"]
9947    pub fn zval_gc_flags(gc_type_info: u32) -> u32;
9948    #[link_name = "zval_gc_info__extern"]
9949    pub fn zval_gc_info(gc_type_info: u32) -> u32;
9950    #[link_name = "zend_gc_refcount__extern"]
9951    pub fn zend_gc_refcount(p: *const zend_refcounted_h) -> u32;
9952    #[link_name = "zend_gc_set_refcount__extern"]
9953    pub fn zend_gc_set_refcount(p: *mut zend_refcounted_h, rc: u32) -> u32;
9954    #[link_name = "zend_gc_addref__extern"]
9955    pub fn zend_gc_addref(p: *mut zend_refcounted_h) -> u32;
9956    #[link_name = "zend_gc_try_addref__extern"]
9957    pub fn zend_gc_try_addref(p: *mut zend_refcounted_h);
9958    #[link_name = "zend_gc_try_delref__extern"]
9959    pub fn zend_gc_try_delref(p: *mut zend_refcounted_h);
9960    #[link_name = "zend_gc_delref__extern"]
9961    pub fn zend_gc_delref(p: *mut zend_refcounted_h) -> u32;
9962    #[link_name = "zend_gc_addref_ex__extern"]
9963    pub fn zend_gc_addref_ex(p: *mut zend_refcounted_h, rc: u32) -> u32;
9964    #[link_name = "zend_gc_delref_ex__extern"]
9965    pub fn zend_gc_delref_ex(p: *mut zend_refcounted_h, rc: u32) -> u32;
9966    #[link_name = "zval_refcount_p__extern"]
9967    pub fn zval_refcount_p(pz: *const zval) -> u32;
9968    #[link_name = "zval_set_refcount_p__extern"]
9969    pub fn zval_set_refcount_p(pz: *mut zval, rc: u32) -> u32;
9970    #[link_name = "zval_addref_p__extern"]
9971    pub fn zval_addref_p(pz: *mut zval) -> u32;
9972    #[link_name = "zval_delref_p__extern"]
9973    pub fn zval_delref_p(pz: *mut zval) -> u32;
9974    #[link_name = "zend_may_modify_arg_in_place__extern"]
9975    pub fn zend_may_modify_arg_in_place(arg: *const zval) -> bool;
9976    pub fn zend_map_ptr_reset();
9977    pub fn zend_map_ptr_new() -> *mut ::std::os::raw::c_void;
9978    pub fn zend_map_ptr_new_static() -> *mut ::std::os::raw::c_void;
9979    pub fn zend_map_ptr_extend(last: usize);
9980    pub fn zend_alloc_ce_cache(type_name: *mut zend_string);
9981    pub static mut zend_map_ptr_static_last: usize;
9982    pub static mut zend_map_ptr_static_size: usize;
9983    pub fn zend_strndup(
9984        s: *const ::std::os::raw::c_char,
9985        length: usize,
9986    ) -> *mut ::std::os::raw::c_char;
9987    pub fn _emalloc(
9988        size: usize,
9989        __zend_filename: *const ::std::os::raw::c_char,
9990        __zend_lineno: u32,
9991        __zend_orig_filename: *const ::std::os::raw::c_char,
9992        __zend_orig_lineno: u32,
9993    ) -> *mut ::std::os::raw::c_void;
9994    pub fn _safe_emalloc(
9995        nmemb: usize,
9996        size: usize,
9997        offset: usize,
9998        __zend_filename: *const ::std::os::raw::c_char,
9999        __zend_lineno: u32,
10000        __zend_orig_filename: *const ::std::os::raw::c_char,
10001        __zend_orig_lineno: u32,
10002    ) -> *mut ::std::os::raw::c_void;
10003    pub fn _safe_malloc(nmemb: usize, size: usize, offset: usize) -> *mut ::std::os::raw::c_void;
10004    pub fn _efree(
10005        ptr: *mut ::std::os::raw::c_void,
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    );
10011    pub fn _ecalloc(
10012        nmemb: usize,
10013        size: usize,
10014        __zend_filename: *const ::std::os::raw::c_char,
10015        __zend_lineno: u32,
10016        __zend_orig_filename: *const ::std::os::raw::c_char,
10017        __zend_orig_lineno: u32,
10018    ) -> *mut ::std::os::raw::c_void;
10019    pub fn _erealloc(
10020        ptr: *mut ::std::os::raw::c_void,
10021        size: usize,
10022        __zend_filename: *const ::std::os::raw::c_char,
10023        __zend_lineno: u32,
10024        __zend_orig_filename: *const ::std::os::raw::c_char,
10025        __zend_orig_lineno: u32,
10026    ) -> *mut ::std::os::raw::c_void;
10027    pub fn _erealloc2(
10028        ptr: *mut ::std::os::raw::c_void,
10029        size: usize,
10030        copy_size: usize,
10031        __zend_filename: *const ::std::os::raw::c_char,
10032        __zend_lineno: u32,
10033        __zend_orig_filename: *const ::std::os::raw::c_char,
10034        __zend_orig_lineno: u32,
10035    ) -> *mut ::std::os::raw::c_void;
10036    pub fn _safe_erealloc(
10037        ptr: *mut ::std::os::raw::c_void,
10038        nmemb: usize,
10039        size: usize,
10040        offset: 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 _safe_realloc(
10047        ptr: *mut ::std::os::raw::c_void,
10048        nmemb: usize,
10049        size: usize,
10050        offset: usize,
10051    ) -> *mut ::std::os::raw::c_void;
10052    pub fn _estrdup(
10053        s: *const ::std::os::raw::c_char,
10054        __zend_filename: *const ::std::os::raw::c_char,
10055        __zend_lineno: u32,
10056        __zend_orig_filename: *const ::std::os::raw::c_char,
10057        __zend_orig_lineno: u32,
10058    ) -> *mut ::std::os::raw::c_char;
10059    pub fn _estrndup(
10060        s: *const ::std::os::raw::c_char,
10061        length: usize,
10062        __zend_filename: *const ::std::os::raw::c_char,
10063        __zend_lineno: u32,
10064        __zend_orig_filename: *const ::std::os::raw::c_char,
10065        __zend_orig_lineno: u32,
10066    ) -> *mut ::std::os::raw::c_char;
10067    pub fn _zend_mem_block_size(
10068        ptr: *mut ::std::os::raw::c_void,
10069        __zend_filename: *const ::std::os::raw::c_char,
10070        __zend_lineno: u32,
10071        __zend_orig_filename: *const ::std::os::raw::c_char,
10072        __zend_orig_lineno: u32,
10073    ) -> usize;
10074    pub fn __zend_malloc(
10075        len: usize,
10076        __zend_filename: *const ::std::os::raw::c_char,
10077        __zend_lineno: u32,
10078        __zend_orig_filename: *const ::std::os::raw::c_char,
10079        __zend_orig_lineno: u32,
10080    ) -> *mut ::std::os::raw::c_void;
10081    pub fn __zend_calloc(
10082        nmemb: usize,
10083        len: usize,
10084        __zend_filename: *const ::std::os::raw::c_char,
10085        __zend_lineno: u32,
10086        __zend_orig_filename: *const ::std::os::raw::c_char,
10087        __zend_orig_lineno: u32,
10088    ) -> *mut ::std::os::raw::c_void;
10089    pub fn __zend_realloc(
10090        p: *mut ::std::os::raw::c_void,
10091        len: usize,
10092        __zend_filename: *const ::std::os::raw::c_char,
10093        __zend_lineno: u32,
10094        __zend_orig_filename: *const ::std::os::raw::c_char,
10095        __zend_orig_lineno: u32,
10096    ) -> *mut ::std::os::raw::c_void;
10097    pub fn __zend_free(
10098        p: *mut ::std::os::raw::c_void,
10099        __zend_filename: *const ::std::os::raw::c_char,
10100        __zend_lineno: u32,
10101        __zend_orig_filename: *const ::std::os::raw::c_char,
10102        __zend_orig_lineno: u32,
10103    );
10104    pub fn __zend_strdup(s: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
10105    pub fn _femalloc(
10106        size: usize,
10107        __zend_filename: *const ::std::os::raw::c_char,
10108        __zend_lineno: u32,
10109        __zend_orig_filename: *const ::std::os::raw::c_char,
10110        __zend_orig_lineno: u32,
10111    ) -> *mut ::std::os::raw::c_void;
10112    pub fn _fecalloc(
10113        nmemb: usize,
10114        size: usize,
10115        __zend_filename: *const ::std::os::raw::c_char,
10116        __zend_lineno: u32,
10117        __zend_orig_filename: *const ::std::os::raw::c_char,
10118        __zend_orig_lineno: u32,
10119    ) -> *mut ::std::os::raw::c_void;
10120    pub fn _ferealloc(
10121        ptr: *mut ::std::os::raw::c_void,
10122        size: usize,
10123        __zend_filename: *const ::std::os::raw::c_char,
10124        __zend_lineno: u32,
10125        __zend_orig_filename: *const ::std::os::raw::c_char,
10126        __zend_orig_lineno: u32,
10127    ) -> *mut ::std::os::raw::c_void;
10128    pub fn _ferealloc2(
10129        ptr: *mut ::std::os::raw::c_void,
10130        size: usize,
10131        copy_size: usize,
10132        __zend_filename: *const ::std::os::raw::c_char,
10133        __zend_lineno: u32,
10134        __zend_orig_filename: *const ::std::os::raw::c_char,
10135        __zend_orig_lineno: u32,
10136    ) -> *mut ::std::os::raw::c_void;
10137    pub fn _safe_femalloc(
10138        nmemb: usize,
10139        size: usize,
10140        offset: usize,
10141        __zend_filename: *const ::std::os::raw::c_char,
10142        __zend_lineno: u32,
10143        __zend_orig_filename: *const ::std::os::raw::c_char,
10144        __zend_orig_lineno: u32,
10145    ) -> *mut ::std::os::raw::c_void;
10146    pub fn _safe_ferealloc(
10147        ptr: *mut ::std::os::raw::c_void,
10148        nmemb: usize,
10149        size: usize,
10150        offset: usize,
10151        __zend_filename: *const ::std::os::raw::c_char,
10152        __zend_lineno: u32,
10153        __zend_orig_filename: *const ::std::os::raw::c_char,
10154        __zend_orig_lineno: u32,
10155    ) -> *mut ::std::os::raw::c_void;
10156    pub fn zend_set_memory_limit(memory_limit: usize) -> zend_result;
10157    pub fn zend_set_memory_hard_limit_percent(percent: zend_long) -> zend_result;
10158    pub fn zend_alloc_in_memory_limit_error_reporting() -> bool;
10159    pub fn start_memory_manager();
10160    pub fn shutdown_memory_manager(silent: bool, full_shutdown: bool);
10161    pub fn refresh_memory_manager();
10162    pub fn is_zend_mm() -> bool;
10163    pub fn is_zend_ptr(ptr: *const ::std::os::raw::c_void) -> bool;
10164    pub fn zend_memory_usage(real_usage: bool) -> usize;
10165    pub fn zend_memory_peak_usage(real_usage: bool) -> usize;
10166    pub fn zend_memory_reset_peak_usage();
10167    pub fn zend_mm_startup() -> *mut zend_mm_heap;
10168    pub fn zend_mm_shutdown(heap: *mut zend_mm_heap, full_shutdown: bool, silent: bool);
10169    pub fn _zend_mm_alloc(
10170        heap: *mut zend_mm_heap,
10171        size: usize,
10172        __zend_filename: *const ::std::os::raw::c_char,
10173        __zend_lineno: u32,
10174        __zend_orig_filename: *const ::std::os::raw::c_char,
10175        __zend_orig_lineno: u32,
10176    ) -> *mut ::std::os::raw::c_void;
10177    pub fn _zend_mm_free(
10178        heap: *mut zend_mm_heap,
10179        p: *mut ::std::os::raw::c_void,
10180        __zend_filename: *const ::std::os::raw::c_char,
10181        __zend_lineno: u32,
10182        __zend_orig_filename: *const ::std::os::raw::c_char,
10183        __zend_orig_lineno: u32,
10184    );
10185    pub fn _zend_mm_realloc(
10186        heap: *mut zend_mm_heap,
10187        p: *mut ::std::os::raw::c_void,
10188        size: usize,
10189        __zend_filename: *const ::std::os::raw::c_char,
10190        __zend_lineno: u32,
10191        __zend_orig_filename: *const ::std::os::raw::c_char,
10192        __zend_orig_lineno: u32,
10193    ) -> *mut ::std::os::raw::c_void;
10194    pub fn _zend_mm_realloc2(
10195        heap: *mut zend_mm_heap,
10196        p: *mut ::std::os::raw::c_void,
10197        size: usize,
10198        copy_size: usize,
10199        __zend_filename: *const ::std::os::raw::c_char,
10200        __zend_lineno: u32,
10201        __zend_orig_filename: *const ::std::os::raw::c_char,
10202        __zend_orig_lineno: u32,
10203    ) -> *mut ::std::os::raw::c_void;
10204    pub fn _zend_mm_block_size(
10205        heap: *mut zend_mm_heap,
10206        p: *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    ) -> usize;
10212    pub fn zend_mm_set_heap(new_heap: *mut zend_mm_heap) -> *mut zend_mm_heap;
10213    pub fn zend_mm_get_heap() -> *mut zend_mm_heap;
10214    pub fn zend_mm_gc(heap: *mut zend_mm_heap) -> usize;
10215    pub fn zend_mm_is_fallible() -> bool;
10216    pub fn zend_mm_set_fallible(fallible: bool);
10217    pub fn zend_mm_is_custom_heap(new_heap: *mut zend_mm_heap) -> bool;
10218    pub fn zend_mm_set_custom_handlers(
10219        heap: *mut zend_mm_heap,
10220        _malloc: ::std::option::Option<
10221            unsafe extern "C" fn(
10222                arg1: usize,
10223                __zend_filename: *const ::std::os::raw::c_char,
10224                __zend_lineno: u32,
10225                __zend_orig_filename: *const ::std::os::raw::c_char,
10226                __zend_orig_lineno: u32,
10227            ) -> *mut ::std::os::raw::c_void,
10228        >,
10229        _free: ::std::option::Option<
10230            unsafe extern "C" fn(
10231                arg1: *mut ::std::os::raw::c_void,
10232                __zend_filename: *const ::std::os::raw::c_char,
10233                __zend_lineno: u32,
10234                __zend_orig_filename: *const ::std::os::raw::c_char,
10235                __zend_orig_lineno: u32,
10236            ),
10237        >,
10238        _realloc: ::std::option::Option<
10239            unsafe extern "C" fn(
10240                arg1: *mut ::std::os::raw::c_void,
10241                arg2: usize,
10242                __zend_filename: *const ::std::os::raw::c_char,
10243                __zend_lineno: u32,
10244                __zend_orig_filename: *const ::std::os::raw::c_char,
10245                __zend_orig_lineno: u32,
10246            ) -> *mut ::std::os::raw::c_void,
10247        >,
10248    );
10249    pub fn zend_mm_set_custom_handlers_ex(
10250        heap: *mut zend_mm_heap,
10251        _malloc: ::std::option::Option<
10252            unsafe extern "C" fn(
10253                arg1: usize,
10254                __zend_filename: *const ::std::os::raw::c_char,
10255                __zend_lineno: u32,
10256                __zend_orig_filename: *const ::std::os::raw::c_char,
10257                __zend_orig_lineno: u32,
10258            ) -> *mut ::std::os::raw::c_void,
10259        >,
10260        _free: ::std::option::Option<
10261            unsafe extern "C" fn(
10262                arg1: *mut ::std::os::raw::c_void,
10263                __zend_filename: *const ::std::os::raw::c_char,
10264                __zend_lineno: u32,
10265                __zend_orig_filename: *const ::std::os::raw::c_char,
10266                __zend_orig_lineno: u32,
10267            ),
10268        >,
10269        _realloc: ::std::option::Option<
10270            unsafe extern "C" fn(
10271                arg1: *mut ::std::os::raw::c_void,
10272                arg2: usize,
10273                __zend_filename: *const ::std::os::raw::c_char,
10274                __zend_lineno: u32,
10275                __zend_orig_filename: *const ::std::os::raw::c_char,
10276                __zend_orig_lineno: u32,
10277            ) -> *mut ::std::os::raw::c_void,
10278        >,
10279        _gc: ::std::option::Option<unsafe extern "C" fn() -> usize>,
10280        _shutdown: ::std::option::Option<unsafe extern "C" fn(arg1: bool, arg2: bool)>,
10281    );
10282    pub fn zend_mm_get_custom_handlers(
10283        heap: *mut zend_mm_heap,
10284        _malloc: *mut ::std::option::Option<
10285            unsafe extern "C" fn(
10286                arg1: usize,
10287                __zend_filename: *const ::std::os::raw::c_char,
10288                __zend_lineno: u32,
10289                __zend_orig_filename: *const ::std::os::raw::c_char,
10290                __zend_orig_lineno: u32,
10291            ) -> *mut ::std::os::raw::c_void,
10292        >,
10293        _free: *mut ::std::option::Option<
10294            unsafe extern "C" fn(
10295                arg1: *mut ::std::os::raw::c_void,
10296                __zend_filename: *const ::std::os::raw::c_char,
10297                __zend_lineno: u32,
10298                __zend_orig_filename: *const ::std::os::raw::c_char,
10299                __zend_orig_lineno: u32,
10300            ),
10301        >,
10302        _realloc: *mut ::std::option::Option<
10303            unsafe extern "C" fn(
10304                arg1: *mut ::std::os::raw::c_void,
10305                arg2: usize,
10306                __zend_filename: *const ::std::os::raw::c_char,
10307                __zend_lineno: u32,
10308                __zend_orig_filename: *const ::std::os::raw::c_char,
10309                __zend_orig_lineno: u32,
10310            ) -> *mut ::std::os::raw::c_void,
10311        >,
10312    );
10313    pub fn zend_mm_get_custom_handlers_ex(
10314        heap: *mut zend_mm_heap,
10315        _malloc: *mut ::std::option::Option<
10316            unsafe extern "C" fn(
10317                arg1: usize,
10318                __zend_filename: *const ::std::os::raw::c_char,
10319                __zend_lineno: u32,
10320                __zend_orig_filename: *const ::std::os::raw::c_char,
10321                __zend_orig_lineno: u32,
10322            ) -> *mut ::std::os::raw::c_void,
10323        >,
10324        _free: *mut ::std::option::Option<
10325            unsafe extern "C" fn(
10326                arg1: *mut ::std::os::raw::c_void,
10327                __zend_filename: *const ::std::os::raw::c_char,
10328                __zend_lineno: u32,
10329                __zend_orig_filename: *const ::std::os::raw::c_char,
10330                __zend_orig_lineno: u32,
10331            ),
10332        >,
10333        _realloc: *mut ::std::option::Option<
10334            unsafe extern "C" fn(
10335                arg1: *mut ::std::os::raw::c_void,
10336                arg2: usize,
10337                __zend_filename: *const ::std::os::raw::c_char,
10338                __zend_lineno: u32,
10339                __zend_orig_filename: *const ::std::os::raw::c_char,
10340                __zend_orig_lineno: u32,
10341            ) -> *mut ::std::os::raw::c_void,
10342        >,
10343        _gc: *mut ::std::option::Option<unsafe extern "C" fn() -> usize>,
10344        _shutdown: *mut ::std::option::Option<unsafe extern "C" fn(arg1: bool, arg2: bool)>,
10345    );
10346    pub fn zend_mm_get_storage(heap: *mut zend_mm_heap) -> *mut zend_mm_storage;
10347    pub fn zend_mm_startup_ex(
10348        handlers: *const zend_mm_handlers,
10349        data: *mut ::std::os::raw::c_void,
10350        data_size: usize,
10351    ) -> *mut zend_mm_heap;
10352    pub fn zend_mm_refresh_key_child(heap: *mut zend_mm_heap);
10353    pub fn zend_mm_delayed_error_or_panic(delay: bool, format: *const ::std::os::raw::c_char, ...);
10354    pub fn zend_handle_delayed_oom();
10355    pub fn zend_mm_oom_info_dtor(info: *mut zend_oom_info);
10356    pub fn zend_mm_set_max_allocs(max_allocs: u64);
10357    pub fn zend_mm_max_allocs_hit() -> bool;
10358    pub fn zend_llist_init(
10359        l: *mut zend_llist,
10360        size: usize,
10361        dtor: llist_dtor_func_t,
10362        persistent: ::std::os::raw::c_uchar,
10363    );
10364    pub fn zend_llist_add_element(l: *mut zend_llist, element: *const ::std::os::raw::c_void);
10365    pub fn zend_llist_prepend_element(l: *mut zend_llist, element: *const ::std::os::raw::c_void);
10366    pub fn zend_llist_del_element(
10367        l: *mut zend_llist,
10368        element: *mut ::std::os::raw::c_void,
10369        compare: ::std::option::Option<
10370            unsafe extern "C" fn(
10371                element1: *mut ::std::os::raw::c_void,
10372                element2: *mut ::std::os::raw::c_void,
10373            ) -> ::std::os::raw::c_int,
10374        >,
10375    );
10376    pub fn zend_llist_destroy(l: *mut zend_llist);
10377    pub fn zend_llist_clean(l: *mut zend_llist);
10378    pub fn zend_llist_remove_tail(l: *mut zend_llist);
10379    pub fn zend_llist_copy(dst: *mut zend_llist, src: *mut zend_llist);
10380    pub fn zend_llist_apply(l: *mut zend_llist, func: llist_apply_func_t);
10381    pub fn zend_llist_apply_with_del(
10382        l: *mut zend_llist,
10383        func: ::std::option::Option<
10384            unsafe extern "C" fn(data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
10385        >,
10386    );
10387    pub fn zend_llist_apply_with_argument(
10388        l: *mut zend_llist,
10389        func: llist_apply_with_arg_func_t,
10390        arg: *mut ::std::os::raw::c_void,
10391    );
10392    pub fn zend_llist_apply_with_arguments(
10393        l: *mut zend_llist,
10394        func: llist_apply_with_args_func_t,
10395        num_args: ::std::os::raw::c_int,
10396        ...
10397    );
10398    pub fn zend_llist_count(l: *mut zend_llist) -> usize;
10399    pub fn zend_llist_sort(l: *mut zend_llist, comp_func: llist_compare_func_t);
10400    pub fn zend_llist_get_first_ex(
10401        l: *mut zend_llist,
10402        pos: *mut zend_llist_position,
10403    ) -> *mut ::std::os::raw::c_void;
10404    pub fn zend_llist_get_last_ex(
10405        l: *mut zend_llist,
10406        pos: *mut zend_llist_position,
10407    ) -> *mut ::std::os::raw::c_void;
10408    pub fn zend_llist_get_next_ex(
10409        l: *mut zend_llist,
10410        pos: *mut zend_llist_position,
10411    ) -> *mut ::std::os::raw::c_void;
10412    pub fn zend_llist_get_prev_ex(
10413        l: *mut zend_llist,
10414        pos: *mut zend_llist_position,
10415    ) -> *mut ::std::os::raw::c_void;
10416    #[link_name = "zend_llist_get_first__extern"]
10417    pub fn zend_llist_get_first(l: *mut zend_llist) -> *mut ::std::os::raw::c_void;
10418    #[link_name = "zend_llist_get_last__extern"]
10419    pub fn zend_llist_get_last(l: *mut zend_llist) -> *mut ::std::os::raw::c_void;
10420    #[link_name = "zend_llist_get_next__extern"]
10421    pub fn zend_llist_get_next(l: *mut zend_llist) -> *mut ::std::os::raw::c_void;
10422    #[link_name = "zend_llist_get_prev__extern"]
10423    pub fn zend_llist_get_prev(l: *mut zend_llist) -> *mut ::std::os::raw::c_void;
10424    pub fn zend_startup_hrtime();
10425    #[link_name = "zend_hrtime__extern"]
10426    pub fn zend_hrtime() -> zend_hrtime_t;
10427    pub static mut gc_collect_cycles:
10428        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
10429    pub fn gc_possible_root(ref_: *mut zend_refcounted);
10430    pub fn gc_remove_from_buffer(ref_: *mut zend_refcounted);
10431    pub fn gc_enable(enable: bool) -> bool;
10432    pub fn gc_enabled() -> bool;
10433    pub fn gc_protect(protect: bool) -> bool;
10434    pub fn gc_protected() -> bool;
10435    pub fn zend_gc_collect_cycles() -> ::std::os::raw::c_int;
10436    pub fn zend_gc_get_status(status: *mut zend_gc_status);
10437    pub fn gc_init();
10438    pub fn gc_globals_ctor();
10439    pub fn gc_globals_dtor();
10440    pub fn gc_reset();
10441    #[link_name = "gc_check_possible_root__extern"]
10442    pub fn gc_check_possible_root(ref_: *mut zend_refcounted);
10443    #[link_name = "gc_check_possible_root_no_ref__extern"]
10444    pub fn gc_check_possible_root_no_ref(ref_: *mut zend_refcounted);
10445    pub fn zend_get_gc_buffer_create() -> *mut zend_get_gc_buffer;
10446    pub fn zend_get_gc_buffer_grow(gc_buffer: *mut zend_get_gc_buffer);
10447    #[link_name = "zend_get_gc_buffer_add_zval__extern"]
10448    pub fn zend_get_gc_buffer_add_zval(gc_buffer: *mut zend_get_gc_buffer, zv: *mut zval);
10449    #[link_name = "zend_get_gc_buffer_add_obj__extern"]
10450    pub fn zend_get_gc_buffer_add_obj(gc_buffer: *mut zend_get_gc_buffer, obj: *mut zend_object);
10451    #[link_name = "zend_get_gc_buffer_add_ht__extern"]
10452    pub fn zend_get_gc_buffer_add_ht(gc_buffer: *mut zend_get_gc_buffer, ht: *mut HashTable);
10453    #[link_name = "zend_get_gc_buffer_add_ptr__extern"]
10454    pub fn zend_get_gc_buffer_add_ptr(
10455        gc_buffer: *mut zend_get_gc_buffer,
10456        ptr: *mut ::std::os::raw::c_void,
10457    );
10458    #[link_name = "zend_get_gc_buffer_use__extern"]
10459    pub fn zend_get_gc_buffer_use(
10460        gc_buffer: *mut zend_get_gc_buffer,
10461        table: *mut *mut zval,
10462        n: *mut ::std::os::raw::c_int,
10463    );
10464    pub static mut zend_new_interned_string: zend_new_interned_string_func_t;
10465    pub static mut zend_string_init_interned: zend_string_init_interned_func_t;
10466    pub static mut zend_string_init_existing_interned: zend_string_init_existing_interned_func_t;
10467    pub fn zend_string_hash_func(str_: *mut zend_string) -> zend_ulong;
10468    pub fn zend_hash_func(str_: *const ::std::os::raw::c_char, len: usize) -> zend_ulong;
10469    pub fn zend_interned_string_find_permanent(str_: *mut zend_string) -> *mut zend_string;
10470    pub fn zend_string_finit_existing_interned(
10471        str_: *const ::std::os::raw::c_char,
10472        len: usize,
10473        permanent: bool,
10474        fallible: bool,
10475    ) -> *mut zend_string;
10476    pub fn zend_string_concat2(
10477        str1: *const ::std::os::raw::c_char,
10478        str1_len: usize,
10479        str2: *const ::std::os::raw::c_char,
10480        str2_len: usize,
10481    ) -> *mut zend_string;
10482    pub fn zend_string_concat3(
10483        str1: *const ::std::os::raw::c_char,
10484        str1_len: usize,
10485        str2: *const ::std::os::raw::c_char,
10486        str2_len: usize,
10487        str3: *const ::std::os::raw::c_char,
10488        str3_len: usize,
10489    ) -> *mut zend_string;
10490    pub fn zend_interned_strings_init();
10491    pub fn zend_interned_strings_dtor();
10492    pub fn zend_interned_strings_activate();
10493    pub fn zend_interned_strings_deactivate();
10494    pub fn zend_interned_strings_set_request_storage_handlers(
10495        handler: zend_new_interned_string_func_t,
10496        init_handler: zend_string_init_interned_func_t,
10497        init_existing_handler: zend_string_init_existing_interned_func_t,
10498    );
10499    pub fn zend_interned_strings_switch_storage(request: bool);
10500    pub static mut zend_empty_string: *mut zend_string;
10501    pub static mut zend_one_char_string: [*mut zend_string; 256usize];
10502    pub static mut zend_known_strings: *mut *mut zend_string;
10503    #[link_name = "zend_string_hash_val__extern"]
10504    pub fn zend_string_hash_val(s: *mut zend_string) -> zend_ulong;
10505    #[link_name = "zend_string_forget_hash_val__extern"]
10506    pub fn zend_string_forget_hash_val(s: *mut zend_string);
10507    #[link_name = "zend_string_refcount__extern"]
10508    pub fn zend_string_refcount(s: *const zend_string) -> u32;
10509    #[link_name = "zend_string_addref__extern"]
10510    pub fn zend_string_addref(s: *mut zend_string) -> u32;
10511    #[link_name = "zend_string_delref__extern"]
10512    pub fn zend_string_delref(s: *mut zend_string) -> u32;
10513    #[link_name = "zend_string_falloc__extern"]
10514    pub fn zend_string_falloc(len: usize, persistent: bool, fallible: bool) -> *mut zend_string;
10515    #[link_name = "zend_string_alloc__extern"]
10516    pub fn zend_string_alloc(len: usize, persistent: bool) -> *mut zend_string;
10517    #[link_name = "zend_string_safe_falloc__extern"]
10518    pub fn zend_string_safe_falloc(
10519        n: usize,
10520        m: usize,
10521        l: usize,
10522        persistent: bool,
10523        fallible: bool,
10524    ) -> *mut zend_string;
10525    #[link_name = "zend_string_safe_alloc__extern"]
10526    pub fn zend_string_safe_alloc(
10527        n: usize,
10528        m: usize,
10529        l: usize,
10530        persistent: bool,
10531    ) -> *mut zend_string;
10532    #[link_name = "zend_string_init__extern"]
10533    pub fn zend_string_init(
10534        str_: *const ::std::os::raw::c_char,
10535        len: usize,
10536        persistent: bool,
10537    ) -> *mut zend_string;
10538    #[link_name = "zend_string_finit__extern"]
10539    pub fn zend_string_finit(
10540        str_: *const ::std::os::raw::c_char,
10541        len: usize,
10542        persistent: bool,
10543        fallible: bool,
10544    ) -> *mut zend_string;
10545    #[link_name = "zend_string_finit_fast__extern"]
10546    pub fn zend_string_finit_fast(
10547        str_: *const ::std::os::raw::c_char,
10548        len: usize,
10549        fallible: bool,
10550    ) -> *mut zend_string;
10551    #[link_name = "zend_string_init_fast__extern"]
10552    pub fn zend_string_init_fast(
10553        str_: *const ::std::os::raw::c_char,
10554        len: usize,
10555    ) -> *mut zend_string;
10556    #[link_name = "zend_string_copy__extern"]
10557    pub fn zend_string_copy(s: *mut zend_string) -> *mut zend_string;
10558    #[link_name = "zend_string_dup__extern"]
10559    pub fn zend_string_dup(s: *mut zend_string, persistent: bool) -> *mut zend_string;
10560    #[link_name = "zend_string_separate__extern"]
10561    pub fn zend_string_separate(s: *mut zend_string, persistent: bool) -> *mut zend_string;
10562    #[link_name = "zend_string_frealloc__extern"]
10563    pub fn zend_string_frealloc(
10564        s: *mut zend_string,
10565        len: usize,
10566        persistent: bool,
10567        fallible: bool,
10568    ) -> *mut zend_string;
10569    #[link_name = "zend_string_realloc__extern"]
10570    pub fn zend_string_realloc(
10571        s: *mut zend_string,
10572        len: usize,
10573        persistent: bool,
10574    ) -> *mut zend_string;
10575    #[link_name = "zend_string_fextend__extern"]
10576    pub fn zend_string_fextend(
10577        s: *mut zend_string,
10578        len: usize,
10579        persistent: bool,
10580        fallible: bool,
10581    ) -> *mut zend_string;
10582    #[link_name = "zend_string_extend__extern"]
10583    pub fn zend_string_extend(
10584        s: *mut zend_string,
10585        len: usize,
10586        persistent: bool,
10587    ) -> *mut zend_string;
10588    #[link_name = "zend_string_ftruncate__extern"]
10589    pub fn zend_string_ftruncate(
10590        s: *mut zend_string,
10591        len: usize,
10592        persistent: bool,
10593        fallible: bool,
10594    ) -> *mut zend_string;
10595    #[link_name = "zend_string_truncate__extern"]
10596    pub fn zend_string_truncate(
10597        s: *mut zend_string,
10598        len: usize,
10599        persistent: bool,
10600    ) -> *mut zend_string;
10601    #[link_name = "zend_string_safe_frealloc__extern"]
10602    pub fn zend_string_safe_frealloc(
10603        s: *mut zend_string,
10604        n: usize,
10605        m: usize,
10606        l: usize,
10607        persistent: bool,
10608        fallible: bool,
10609    ) -> *mut zend_string;
10610    #[link_name = "zend_string_safe_realloc__extern"]
10611    pub fn zend_string_safe_realloc(
10612        s: *mut zend_string,
10613        n: usize,
10614        m: usize,
10615        l: usize,
10616        persistent: bool,
10617    ) -> *mut zend_string;
10618    #[link_name = "zend_string_free__extern"]
10619    pub fn zend_string_free(s: *mut zend_string);
10620    #[link_name = "zend_string_efree__extern"]
10621    pub fn zend_string_efree(s: *mut zend_string);
10622    #[link_name = "zend_string_release__extern"]
10623    pub fn zend_string_release(s: *mut zend_string);
10624    #[link_name = "zend_string_release_ex__extern"]
10625    pub fn zend_string_release_ex(s: *mut zend_string, persistent: bool);
10626    #[link_name = "zend_string_equals_cstr__extern"]
10627    pub fn zend_string_equals_cstr(
10628        s1: *const zend_string,
10629        s2: *const ::std::os::raw::c_char,
10630        s2_length: usize,
10631    ) -> bool;
10632    pub fn zend_string_equal_val(s1: *const zend_string, s2: *const zend_string) -> bool;
10633    #[link_name = "zend_string_equal_content__extern"]
10634    pub fn zend_string_equal_content(s1: *const zend_string, s2: *const zend_string) -> bool;
10635    #[link_name = "zend_string_equals__extern"]
10636    pub fn zend_string_equals(s1: *const zend_string, s2: *const zend_string) -> bool;
10637    #[link_name = "zend_string_starts_with_cstr__extern"]
10638    pub fn zend_string_starts_with_cstr(
10639        str_: *const zend_string,
10640        prefix: *const ::std::os::raw::c_char,
10641        prefix_length: usize,
10642    ) -> bool;
10643    #[link_name = "zend_string_starts_with__extern"]
10644    pub fn zend_string_starts_with(str_: *const zend_string, prefix: *const zend_string) -> bool;
10645    #[link_name = "zend_string_starts_with_cstr_ci__extern"]
10646    pub fn zend_string_starts_with_cstr_ci(
10647        str_: *const zend_string,
10648        prefix: *const ::std::os::raw::c_char,
10649        prefix_length: usize,
10650    ) -> bool;
10651    #[link_name = "zend_string_starts_with_ci__extern"]
10652    pub fn zend_string_starts_with_ci(str_: *const zend_string, prefix: *const zend_string)
10653    -> bool;
10654    #[link_name = "zend_inline_hash_func__extern"]
10655    pub fn zend_inline_hash_func(str_: *const ::std::os::raw::c_char, len: usize) -> zend_ulong;
10656    pub fn zend_sort(
10657        base: *mut ::std::os::raw::c_void,
10658        nmemb: usize,
10659        siz: usize,
10660        cmp: compare_func_t,
10661        swp: swap_func_t,
10662    );
10663    pub fn zend_insert_sort(
10664        base: *mut ::std::os::raw::c_void,
10665        nmemb: usize,
10666        siz: usize,
10667        cmp: compare_func_t,
10668        swp: swap_func_t,
10669    );
10670    pub static zend_empty_array: HashTable;
10671    pub fn _zend_hash_init(
10672        ht: *mut HashTable,
10673        nSize: u32,
10674        pDestructor: dtor_func_t,
10675        persistent: bool,
10676    );
10677    pub fn zend_hash_destroy(ht: *mut HashTable);
10678    pub fn zend_hash_clean(ht: *mut HashTable);
10679    pub fn zend_hash_real_init(ht: *mut HashTable, packed: bool);
10680    pub fn zend_hash_real_init_packed(ht: *mut HashTable);
10681    pub fn zend_hash_real_init_mixed(ht: *mut HashTable);
10682    pub fn zend_hash_packed_to_hash(ht: *mut HashTable);
10683    pub fn zend_hash_to_packed(ht: *mut HashTable);
10684    pub fn zend_hash_extend(ht: *mut HashTable, nSize: u32, packed: bool);
10685    pub fn zend_hash_discard(ht: *mut HashTable, nNumUsed: u32);
10686    pub fn zend_hash_packed_grow(ht: *mut HashTable);
10687    pub fn zend_hash_real_finit(ht: *mut HashTable, packed: bool, fallible: bool) -> zend_result;
10688    pub fn zend_hash_real_finit_packed(ht: *mut HashTable, fallible: bool) -> zend_result;
10689    pub fn zend_hash_real_finit_mixed(ht: *mut HashTable, fallible: bool) -> zend_result;
10690    pub fn zend_hash_fextend(ht: *mut HashTable, nSize: u32, packed: bool) -> zend_result;
10691    pub fn zend_hash_add_or_update(
10692        ht: *mut HashTable,
10693        key: *mut zend_string,
10694        pData: *mut zval,
10695        flag: u32,
10696    ) -> *mut zval;
10697    pub fn zend_hash_update(
10698        ht: *mut HashTable,
10699        key: *mut zend_string,
10700        pData: *mut zval,
10701    ) -> *mut zval;
10702    pub fn zend_hash_update_ind(
10703        ht: *mut HashTable,
10704        key: *mut zend_string,
10705        pData: *mut zval,
10706    ) -> *mut zval;
10707    pub fn zend_hash_add(ht: *mut HashTable, key: *mut zend_string, pData: *mut zval) -> *mut zval;
10708    pub fn zend_hash_add_new(
10709        ht: *mut HashTable,
10710        key: *mut zend_string,
10711        pData: *mut zval,
10712    ) -> *mut zval;
10713    pub fn zend_hash_fupdate(
10714        ht: *mut HashTable,
10715        key: *mut zend_string,
10716        pData: *mut zval,
10717    ) -> *mut zval;
10718    pub fn zend_hash_fadd_new(
10719        ht: *mut HashTable,
10720        key: *mut zend_string,
10721        pData: *mut zval,
10722    ) -> *mut zval;
10723    pub fn zend_hash_str_add_or_update(
10724        ht: *mut HashTable,
10725        key: *const ::std::os::raw::c_char,
10726        len: usize,
10727        pData: *mut zval,
10728        flag: u32,
10729    ) -> *mut zval;
10730    pub fn zend_hash_str_update(
10731        ht: *mut HashTable,
10732        key: *const ::std::os::raw::c_char,
10733        len: usize,
10734        pData: *mut zval,
10735    ) -> *mut zval;
10736    pub fn zend_hash_str_update_ind(
10737        ht: *mut HashTable,
10738        key: *const ::std::os::raw::c_char,
10739        len: usize,
10740        pData: *mut zval,
10741    ) -> *mut zval;
10742    pub fn zend_hash_str_add(
10743        ht: *mut HashTable,
10744        key: *const ::std::os::raw::c_char,
10745        len: usize,
10746        pData: *mut zval,
10747    ) -> *mut zval;
10748    pub fn zend_hash_str_add_new(
10749        ht: *mut HashTable,
10750        key: *const ::std::os::raw::c_char,
10751        len: usize,
10752        pData: *mut zval,
10753    ) -> *mut zval;
10754    pub fn zend_hash_index_add_or_update(
10755        ht: *mut HashTable,
10756        h: zend_ulong,
10757        pData: *mut zval,
10758        flag: u32,
10759    ) -> *mut zval;
10760    pub fn zend_hash_index_add(ht: *mut HashTable, h: zend_ulong, pData: *mut zval) -> *mut zval;
10761    pub fn zend_hash_index_add_new(
10762        ht: *mut HashTable,
10763        h: zend_ulong,
10764        pData: *mut zval,
10765    ) -> *mut zval;
10766    pub fn zend_hash_index_update(ht: *mut HashTable, h: zend_ulong, pData: *mut zval)
10767    -> *mut zval;
10768    pub fn zend_hash_next_index_insert(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
10769    pub fn zend_hash_next_index_insert_new(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
10770    pub fn zend_hash_index_fupdate(
10771        ht: *mut HashTable,
10772        h: zend_ulong,
10773        pData: *mut zval,
10774    ) -> *mut zval;
10775    pub fn zend_hash_next_index_finsert(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
10776    pub fn zend_hash_next_index_finsert_new(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
10777    pub fn zend_hash_index_add_empty_element(ht: *mut HashTable, h: zend_ulong) -> *mut zval;
10778    pub fn zend_hash_add_empty_element(ht: *mut HashTable, key: *mut zend_string) -> *mut zval;
10779    pub fn zend_hash_str_add_empty_element(
10780        ht: *mut HashTable,
10781        key: *const ::std::os::raw::c_char,
10782        len: usize,
10783    ) -> *mut zval;
10784    pub fn zend_hash_set_bucket_key(
10785        ht: *mut HashTable,
10786        p: *mut Bucket,
10787        key: *mut zend_string,
10788    ) -> *mut zval;
10789    pub fn zend_hash_graceful_destroy(ht: *mut HashTable);
10790    pub fn zend_hash_graceful_reverse_destroy(ht: *mut HashTable);
10791    pub fn zend_hash_apply(ht: *mut HashTable, apply_func: apply_func_t);
10792    pub fn zend_hash_apply_with_argument(
10793        ht: *mut HashTable,
10794        apply_func: apply_func_arg_t,
10795        arg1: *mut ::std::os::raw::c_void,
10796    );
10797    pub fn zend_hash_apply_with_arguments(
10798        ht: *mut HashTable,
10799        apply_func: apply_func_args_t,
10800        arg1: ::std::os::raw::c_int,
10801        ...
10802    );
10803    pub fn zend_hash_reverse_apply(ht: *mut HashTable, apply_func: apply_func_t);
10804    pub fn zend_hash_del(ht: *mut HashTable, key: *mut zend_string) -> zend_result;
10805    pub fn zend_hash_del_ind(ht: *mut HashTable, key: *mut zend_string) -> zend_result;
10806    pub fn zend_hash_str_del(
10807        ht: *mut HashTable,
10808        key: *const ::std::os::raw::c_char,
10809        len: usize,
10810    ) -> zend_result;
10811    pub fn zend_hash_str_del_ind(
10812        ht: *mut HashTable,
10813        key: *const ::std::os::raw::c_char,
10814        len: usize,
10815    ) -> zend_result;
10816    pub fn zend_hash_index_del(ht: *mut HashTable, h: zend_ulong) -> zend_result;
10817    pub fn zend_hash_del_bucket(ht: *mut HashTable, p: *mut Bucket);
10818    pub fn zend_hash_packed_del_val(ht: *mut HashTable, zv: *mut zval);
10819    pub fn zend_hash_find(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
10820    pub fn zend_hash_str_find(
10821        ht: *const HashTable,
10822        key: *const ::std::os::raw::c_char,
10823        len: usize,
10824    ) -> *mut zval;
10825    pub fn zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
10826    pub fn _zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
10827    pub fn zend_hash_find_known_hash(ht: *const HashTable, key: *const zend_string) -> *mut zval;
10828    #[link_name = "zend_hash_find_ex__extern"]
10829    pub fn zend_hash_find_ex(
10830        ht: *const HashTable,
10831        key: *mut zend_string,
10832        known_hash: bool,
10833    ) -> *mut zval;
10834    pub fn zend_hash_lookup(ht: *mut HashTable, key: *mut zend_string) -> *mut zval;
10835    pub fn zend_hash_index_lookup(ht: *mut HashTable, h: zend_ulong) -> *mut zval;
10836    pub fn zend_hash_flookup(ht: *mut HashTable, key: *mut zend_string) -> *mut zval;
10837    pub fn zend_hash_index_flookup(ht: *mut HashTable, h: zend_ulong) -> *mut zval;
10838    #[link_name = "zend_hash_exists__extern"]
10839    pub fn zend_hash_exists(ht: *const HashTable, key: *mut zend_string) -> bool;
10840    #[link_name = "zend_hash_str_exists__extern"]
10841    pub fn zend_hash_str_exists(
10842        ht: *const HashTable,
10843        str_: *const ::std::os::raw::c_char,
10844        len: usize,
10845    ) -> bool;
10846    #[link_name = "zend_hash_index_exists__extern"]
10847    pub fn zend_hash_index_exists(ht: *const HashTable, h: zend_ulong) -> bool;
10848    pub fn zend_hash_get_current_pos_ex(ht: *const HashTable, pos: HashPosition) -> HashPosition;
10849    pub fn zend_hash_get_current_pos(ht: *const HashTable) -> HashPosition;
10850    pub fn zend_hash_move_forward_ex(ht: *const HashTable, pos: *mut HashPosition) -> zend_result;
10851    pub fn zend_hash_move_backwards_ex(ht: *const HashTable, pos: *mut HashPosition)
10852    -> zend_result;
10853    pub fn zend_hash_get_current_key_ex(
10854        ht: *const HashTable,
10855        str_index: *mut *mut zend_string,
10856        num_index: *mut zend_ulong,
10857        pos: *const HashPosition,
10858    ) -> zend_hash_key_type::Type;
10859    pub fn zend_hash_get_current_key_zval_ex(
10860        ht: *const HashTable,
10861        key: *mut zval,
10862        pos: *const HashPosition,
10863    );
10864    pub fn zend_hash_get_current_key_type_ex(
10865        ht: *const HashTable,
10866        pos: *const HashPosition,
10867    ) -> zend_hash_key_type::Type;
10868    pub fn zend_hash_get_current_data_ex(
10869        ht: *const HashTable,
10870        pos: *const HashPosition,
10871    ) -> *mut zval;
10872    pub fn zend_hash_internal_pointer_reset_ex(ht: *const HashTable, pos: *mut HashPosition);
10873    pub fn zend_hash_internal_pointer_end_ex(ht: *const HashTable, pos: *mut HashPosition);
10874    #[link_name = "zend_hash_has_more_elements_ex__extern"]
10875    pub fn zend_hash_has_more_elements_ex(
10876        ht: *const HashTable,
10877        pos: *const HashPosition,
10878    ) -> zend_result;
10879    #[link_name = "zend_hash_has_more_elements__extern"]
10880    pub fn zend_hash_has_more_elements(ht: *const HashTable) -> zend_result;
10881    #[link_name = "zend_hash_move_forward__extern"]
10882    pub fn zend_hash_move_forward(ht: *mut HashTable) -> zend_result;
10883    #[link_name = "zend_hash_move_backwards__extern"]
10884    pub fn zend_hash_move_backwards(ht: *mut HashTable) -> zend_result;
10885    #[link_name = "zend_hash_get_current_key__extern"]
10886    pub fn zend_hash_get_current_key(
10887        ht: *const HashTable,
10888        str_index: *mut *mut zend_string,
10889        num_index: *mut zend_ulong,
10890    ) -> zend_hash_key_type::Type;
10891    #[link_name = "zend_hash_get_current_key_zval__extern"]
10892    pub fn zend_hash_get_current_key_zval(ht: *const HashTable, key: *mut zval);
10893    #[link_name = "zend_hash_get_current_key_type__extern"]
10894    pub fn zend_hash_get_current_key_type(ht: *const HashTable) -> zend_hash_key_type::Type;
10895    #[link_name = "zend_hash_get_current_data__extern"]
10896    pub fn zend_hash_get_current_data(ht: *const HashTable) -> *mut zval;
10897    #[link_name = "zend_hash_internal_pointer_reset__extern"]
10898    pub fn zend_hash_internal_pointer_reset(ht: *mut HashTable);
10899    #[link_name = "zend_hash_internal_pointer_end__extern"]
10900    pub fn zend_hash_internal_pointer_end(ht: *mut HashTable);
10901    pub fn zend_hash_copy(
10902        target: *mut HashTable,
10903        source: *const HashTable,
10904        pCopyConstructor: copy_ctor_func_t,
10905    );
10906    pub fn zend_hash_merge(
10907        target: *mut HashTable,
10908        source: *const HashTable,
10909        pCopyConstructor: copy_ctor_func_t,
10910        overwrite: bool,
10911    );
10912    pub fn zend_hash_merge_ex(
10913        target: *mut HashTable,
10914        source: *const HashTable,
10915        pCopyConstructor: copy_ctor_func_t,
10916        pMergeSource: merge_checker_func_t,
10917        pParam: *mut ::std::os::raw::c_void,
10918    );
10919    pub fn zend_hash_bucket_swap(p: *mut Bucket, q: *mut Bucket);
10920    pub fn zend_hash_bucket_renum_swap(p: *mut Bucket, q: *mut Bucket);
10921    pub fn zend_hash_bucket_packed_swap(p: *mut Bucket, q: *mut Bucket);
10922    pub fn zend_hash_compare(
10923        ht1: *mut HashTable,
10924        ht2: *mut HashTable,
10925        compar: compare_func_t,
10926        ordered: bool,
10927    ) -> ::std::os::raw::c_int;
10928    pub fn zend_hash_sort_ex(
10929        ht: *mut HashTable,
10930        sort_func: sort_func_t,
10931        compare_func: bucket_compare_func_t,
10932        renumber: bool,
10933    );
10934    pub fn zend_array_sort_ex(
10935        ht: *mut HashTable,
10936        sort_func: sort_func_t,
10937        compare_func: bucket_compare_func_t,
10938        renumber: bool,
10939    );
10940    pub fn zend_hash_minmax(ht: *const HashTable, compar: compare_func_t, flag: u32) -> *mut zval;
10941    #[link_name = "zend_hash_sort__extern"]
10942    pub fn zend_hash_sort(ht: *mut HashTable, compare_func: bucket_compare_func_t, renumber: bool);
10943    #[link_name = "zend_array_sort__extern"]
10944    pub fn zend_array_sort(ht: *mut HashTable, compare_func: bucket_compare_func_t, renumber: bool);
10945    #[link_name = "zend_hash_num_elements__extern"]
10946    pub fn zend_hash_num_elements(ht: *const HashTable) -> u32;
10947    #[link_name = "zend_hash_next_free_element__extern"]
10948    pub fn zend_hash_next_free_element(ht: *const HashTable) -> zend_long;
10949    pub fn zend_hash_rehash(ht: *mut HashTable);
10950    pub fn _zend_new_array_0() -> *mut HashTable;
10951    pub fn zend_new_array_singleton() -> *mut HashTable;
10952    pub fn _zend_new_array(size: u32) -> *mut HashTable;
10953    pub fn zend_new_pair(val1: *const zval, val2: *const zval) -> *mut HashTable;
10954    pub fn zend_array_count(ht: *mut HashTable) -> u32;
10955    pub fn zend_array_dup(source: *const HashTable) -> *mut HashTable;
10956    pub fn zend_array_destroy(ht: *mut HashTable);
10957    pub fn zend_array_to_list(source: *const HashTable) -> *mut HashTable;
10958    pub fn zend_symtable_clean(ht: *mut HashTable);
10959    pub fn zend_symtable_to_proptable(ht: *mut HashTable) -> *mut HashTable;
10960    pub fn zend_proptable_to_symtable(ht: *mut HashTable, always_duplicate: bool)
10961    -> *mut HashTable;
10962    pub fn _zend_fnew_array_0() -> *mut HashTable;
10963    pub fn _zend_fnew_array(size: u32) -> *mut HashTable;
10964    pub fn _zend_handle_numeric_str_ex(
10965        key: *const ::std::os::raw::c_char,
10966        length: usize,
10967        idx: *mut zend_ulong,
10968    ) -> bool;
10969    pub fn zend_hash_iterator_add(ht: *mut HashTable, pos: HashPosition) -> u32;
10970    pub fn zend_hash_iterator_pos(idx: u32, ht: *mut HashTable) -> HashPosition;
10971    pub fn zend_hash_iterator_pos_ex(idx: u32, array: *mut zval) -> HashPosition;
10972    pub fn zend_hash_iterator_del(idx: u32);
10973    pub fn zend_hash_iterators_lower_pos(ht: *const HashTable, start: HashPosition)
10974    -> HashPosition;
10975    pub fn _zend_hash_iterators_update(ht: *const HashTable, from: HashPosition, to: HashPosition);
10976    pub fn zend_hash_iterators_advance(ht: *const HashTable, step: HashPosition);
10977    #[link_name = "zend_hash_iterators_update__extern"]
10978    pub fn zend_hash_iterators_update(ht: *const HashTable, from: HashPosition, to: HashPosition);
10979    #[link_name = "zend_array_release__extern"]
10980    pub fn zend_array_release(array: *mut zend_array);
10981    #[link_name = "zend_hash_release__extern"]
10982    pub fn zend_hash_release(array: *mut zend_array);
10983    #[link_name = "_zend_handle_numeric_str__extern"]
10984    pub fn _zend_handle_numeric_str(
10985        key: *const ::std::os::raw::c_char,
10986        length: usize,
10987        idx: *mut zend_ulong,
10988    ) -> bool;
10989    #[link_name = "zend_hash_find_ind__extern"]
10990    pub fn zend_hash_find_ind(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
10991    #[link_name = "zend_hash_find_ex_ind__extern"]
10992    pub fn zend_hash_find_ex_ind(
10993        ht: *const HashTable,
10994        key: *mut zend_string,
10995        known_hash: bool,
10996    ) -> *mut zval;
10997    #[link_name = "zend_hash_exists_ind__extern"]
10998    pub fn zend_hash_exists_ind(ht: *const HashTable, key: *mut zend_string) -> bool;
10999    #[link_name = "zend_hash_str_find_ind__extern"]
11000    pub fn zend_hash_str_find_ind(
11001        ht: *const HashTable,
11002        str_: *const ::std::os::raw::c_char,
11003        len: usize,
11004    ) -> *mut zval;
11005    #[link_name = "zend_hash_str_exists_ind__extern"]
11006    pub fn zend_hash_str_exists_ind(
11007        ht: *const HashTable,
11008        str_: *const ::std::os::raw::c_char,
11009        len: usize,
11010    ) -> bool;
11011    #[link_name = "zend_symtable_add_new__extern"]
11012    pub fn zend_symtable_add_new(
11013        ht: *mut HashTable,
11014        key: *mut zend_string,
11015        pData: *mut zval,
11016    ) -> *mut zval;
11017    #[link_name = "zend_symtable_update__extern"]
11018    pub fn zend_symtable_update(
11019        ht: *mut HashTable,
11020        key: *mut zend_string,
11021        pData: *mut zval,
11022    ) -> *mut zval;
11023    #[link_name = "zend_symtable_fupdate__extern"]
11024    pub fn zend_symtable_fupdate(
11025        ht: *mut HashTable,
11026        key: *mut zend_string,
11027        pData: *mut zval,
11028    ) -> *mut zval;
11029    #[link_name = "zend_symtable_update_ind__extern"]
11030    pub fn zend_symtable_update_ind(
11031        ht: *mut HashTable,
11032        key: *mut zend_string,
11033        pData: *mut zval,
11034    ) -> *mut zval;
11035    #[link_name = "zend_symtable_del__extern"]
11036    pub fn zend_symtable_del(ht: *mut HashTable, key: *mut zend_string) -> zend_result;
11037    #[link_name = "zend_symtable_del_ind__extern"]
11038    pub fn zend_symtable_del_ind(ht: *mut HashTable, key: *mut zend_string) -> zend_result;
11039    #[link_name = "zend_symtable_find__extern"]
11040    pub fn zend_symtable_find(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
11041    #[link_name = "zend_symtable_find_ind__extern"]
11042    pub fn zend_symtable_find_ind(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
11043    #[link_name = "zend_symtable_exists__extern"]
11044    pub fn zend_symtable_exists(ht: *const HashTable, key: *mut zend_string) -> bool;
11045    #[link_name = "zend_symtable_exists_ind__extern"]
11046    pub fn zend_symtable_exists_ind(ht: *const HashTable, key: *mut zend_string) -> bool;
11047    #[link_name = "zend_symtable_str_update__extern"]
11048    pub fn zend_symtable_str_update(
11049        ht: *mut HashTable,
11050        str_: *const ::std::os::raw::c_char,
11051        len: usize,
11052        pData: *mut zval,
11053    ) -> *mut zval;
11054    #[link_name = "zend_symtable_str_update_ind__extern"]
11055    pub fn zend_symtable_str_update_ind(
11056        ht: *mut HashTable,
11057        str_: *const ::std::os::raw::c_char,
11058        len: usize,
11059        pData: *mut zval,
11060    ) -> *mut zval;
11061    #[link_name = "zend_symtable_str_del__extern"]
11062    pub fn zend_symtable_str_del(
11063        ht: *mut HashTable,
11064        str_: *const ::std::os::raw::c_char,
11065        len: usize,
11066    ) -> zend_result;
11067    #[link_name = "zend_symtable_str_del_ind__extern"]
11068    pub fn zend_symtable_str_del_ind(
11069        ht: *mut HashTable,
11070        str_: *const ::std::os::raw::c_char,
11071        len: usize,
11072    ) -> zend_result;
11073    #[link_name = "zend_symtable_str_find__extern"]
11074    pub fn zend_symtable_str_find(
11075        ht: *mut HashTable,
11076        str_: *const ::std::os::raw::c_char,
11077        len: usize,
11078    ) -> *mut zval;
11079    #[link_name = "zend_symtable_str_exists__extern"]
11080    pub fn zend_symtable_str_exists(
11081        ht: *mut HashTable,
11082        str_: *const ::std::os::raw::c_char,
11083        len: usize,
11084    ) -> bool;
11085    #[link_name = "zend_hash_add_ptr__extern"]
11086    pub fn zend_hash_add_ptr(
11087        ht: *mut HashTable,
11088        key: *mut zend_string,
11089        pData: *mut ::std::os::raw::c_void,
11090    ) -> *mut ::std::os::raw::c_void;
11091    #[link_name = "zend_hash_add_new_ptr__extern"]
11092    pub fn zend_hash_add_new_ptr(
11093        ht: *mut HashTable,
11094        key: *mut zend_string,
11095        pData: *mut ::std::os::raw::c_void,
11096    ) -> *mut ::std::os::raw::c_void;
11097    #[link_name = "zend_hash_str_add_ptr__extern"]
11098    pub fn zend_hash_str_add_ptr(
11099        ht: *mut HashTable,
11100        str_: *const ::std::os::raw::c_char,
11101        len: usize,
11102        pData: *mut ::std::os::raw::c_void,
11103    ) -> *mut ::std::os::raw::c_void;
11104    #[link_name = "zend_hash_str_add_new_ptr__extern"]
11105    pub fn zend_hash_str_add_new_ptr(
11106        ht: *mut HashTable,
11107        str_: *const ::std::os::raw::c_char,
11108        len: usize,
11109        pData: *mut ::std::os::raw::c_void,
11110    ) -> *mut ::std::os::raw::c_void;
11111    #[link_name = "zend_hash_update_ptr__extern"]
11112    pub fn zend_hash_update_ptr(
11113        ht: *mut HashTable,
11114        key: *mut zend_string,
11115        pData: *mut ::std::os::raw::c_void,
11116    ) -> *mut ::std::os::raw::c_void;
11117    #[link_name = "zend_hash_str_update_ptr__extern"]
11118    pub fn zend_hash_str_update_ptr(
11119        ht: *mut HashTable,
11120        str_: *const ::std::os::raw::c_char,
11121        len: usize,
11122        pData: *mut ::std::os::raw::c_void,
11123    ) -> *mut ::std::os::raw::c_void;
11124    #[link_name = "zend_hash_add_mem__extern"]
11125    pub fn zend_hash_add_mem(
11126        ht: *mut HashTable,
11127        key: *mut zend_string,
11128        pData: *mut ::std::os::raw::c_void,
11129        size: usize,
11130    ) -> *mut ::std::os::raw::c_void;
11131    #[link_name = "zend_hash_add_new_mem__extern"]
11132    pub fn zend_hash_add_new_mem(
11133        ht: *mut HashTable,
11134        key: *mut zend_string,
11135        pData: *mut ::std::os::raw::c_void,
11136        size: usize,
11137    ) -> *mut ::std::os::raw::c_void;
11138    #[link_name = "zend_hash_str_add_mem__extern"]
11139    pub fn zend_hash_str_add_mem(
11140        ht: *mut HashTable,
11141        str_: *const ::std::os::raw::c_char,
11142        len: usize,
11143        pData: *mut ::std::os::raw::c_void,
11144        size: usize,
11145    ) -> *mut ::std::os::raw::c_void;
11146    #[link_name = "zend_hash_str_add_new_mem__extern"]
11147    pub fn zend_hash_str_add_new_mem(
11148        ht: *mut HashTable,
11149        str_: *const ::std::os::raw::c_char,
11150        len: usize,
11151        pData: *mut ::std::os::raw::c_void,
11152        size: usize,
11153    ) -> *mut ::std::os::raw::c_void;
11154    #[link_name = "zend_hash_update_mem__extern"]
11155    pub fn zend_hash_update_mem(
11156        ht: *mut HashTable,
11157        key: *mut zend_string,
11158        pData: *mut ::std::os::raw::c_void,
11159        size: usize,
11160    ) -> *mut ::std::os::raw::c_void;
11161    #[link_name = "zend_hash_str_update_mem__extern"]
11162    pub fn zend_hash_str_update_mem(
11163        ht: *mut HashTable,
11164        str_: *const ::std::os::raw::c_char,
11165        len: usize,
11166        pData: *mut ::std::os::raw::c_void,
11167        size: usize,
11168    ) -> *mut ::std::os::raw::c_void;
11169    #[link_name = "zend_hash_index_add_ptr__extern"]
11170    pub fn zend_hash_index_add_ptr(
11171        ht: *mut HashTable,
11172        h: zend_ulong,
11173        pData: *mut ::std::os::raw::c_void,
11174    ) -> *mut ::std::os::raw::c_void;
11175    #[link_name = "zend_hash_index_add_new_ptr__extern"]
11176    pub fn zend_hash_index_add_new_ptr(
11177        ht: *mut HashTable,
11178        h: zend_ulong,
11179        pData: *mut ::std::os::raw::c_void,
11180    ) -> *mut ::std::os::raw::c_void;
11181    #[link_name = "zend_hash_index_fupdate_ptr__extern"]
11182    pub fn zend_hash_index_fupdate_ptr(
11183        ht: *mut HashTable,
11184        h: zend_ulong,
11185        pData: *mut ::std::os::raw::c_void,
11186        fallible: bool,
11187    ) -> *mut ::std::os::raw::c_void;
11188    #[link_name = "zend_hash_index_update_ptr__extern"]
11189    pub fn zend_hash_index_update_ptr(
11190        ht: *mut HashTable,
11191        h: zend_ulong,
11192        pData: *mut ::std::os::raw::c_void,
11193    ) -> *mut ::std::os::raw::c_void;
11194    #[link_name = "zend_hash_index_add_mem__extern"]
11195    pub fn zend_hash_index_add_mem(
11196        ht: *mut HashTable,
11197        h: zend_ulong,
11198        pData: *mut ::std::os::raw::c_void,
11199        size: usize,
11200    ) -> *mut ::std::os::raw::c_void;
11201    #[link_name = "zend_hash_next_index_insert_ptr__extern"]
11202    pub fn zend_hash_next_index_insert_ptr(
11203        ht: *mut HashTable,
11204        pData: *mut ::std::os::raw::c_void,
11205    ) -> *mut ::std::os::raw::c_void;
11206    #[link_name = "zend_hash_index_update_mem__extern"]
11207    pub fn zend_hash_index_update_mem(
11208        ht: *mut HashTable,
11209        h: zend_ulong,
11210        pData: *mut ::std::os::raw::c_void,
11211        size: usize,
11212    ) -> *mut ::std::os::raw::c_void;
11213    #[link_name = "zend_hash_next_index_insert_mem__extern"]
11214    pub fn zend_hash_next_index_insert_mem(
11215        ht: *mut HashTable,
11216        pData: *mut ::std::os::raw::c_void,
11217        size: usize,
11218    ) -> *mut ::std::os::raw::c_void;
11219    #[link_name = "zend_hash_find_ptr__extern"]
11220    pub fn zend_hash_find_ptr(
11221        ht: *const HashTable,
11222        key: *mut zend_string,
11223    ) -> *mut ::std::os::raw::c_void;
11224    #[link_name = "zend_hash_find_ex_ptr__extern"]
11225    pub fn zend_hash_find_ex_ptr(
11226        ht: *const HashTable,
11227        key: *mut zend_string,
11228        known_hash: bool,
11229    ) -> *mut ::std::os::raw::c_void;
11230    #[link_name = "zend_hash_str_find_ptr__extern"]
11231    pub fn zend_hash_str_find_ptr(
11232        ht: *const HashTable,
11233        str_: *const ::std::os::raw::c_char,
11234        len: usize,
11235    ) -> *mut ::std::os::raw::c_void;
11236    pub fn zend_hash_str_find_ptr_lc(
11237        ht: *const HashTable,
11238        str_: *const ::std::os::raw::c_char,
11239        len: usize,
11240    ) -> *mut ::std::os::raw::c_void;
11241    pub fn zend_hash_find_ptr_lc(
11242        ht: *const HashTable,
11243        key: *mut zend_string,
11244    ) -> *mut ::std::os::raw::c_void;
11245    #[link_name = "zend_hash_index_find_ptr__extern"]
11246    pub fn zend_hash_index_find_ptr(
11247        ht: *const HashTable,
11248        h: zend_ulong,
11249    ) -> *mut ::std::os::raw::c_void;
11250    #[link_name = "zend_hash_index_find_deref__extern"]
11251    pub fn zend_hash_index_find_deref(ht: *const HashTable, h: zend_ulong) -> *mut zval;
11252    #[link_name = "zend_hash_find_deref__extern"]
11253    pub fn zend_hash_find_deref(ht: *const HashTable, str_: *mut zend_string) -> *mut zval;
11254    #[link_name = "zend_hash_str_find_deref__extern"]
11255    pub fn zend_hash_str_find_deref(
11256        ht: *const HashTable,
11257        str_: *const ::std::os::raw::c_char,
11258        len: usize,
11259    ) -> *mut zval;
11260    #[link_name = "zend_symtable_str_find_ptr__extern"]
11261    pub fn zend_symtable_str_find_ptr(
11262        ht: *const HashTable,
11263        str_: *const ::std::os::raw::c_char,
11264        len: usize,
11265    ) -> *mut ::std::os::raw::c_void;
11266    #[link_name = "zend_hash_get_current_data_ptr_ex__extern"]
11267    pub fn zend_hash_get_current_data_ptr_ex(
11268        ht: *const HashTable,
11269        pos: *const HashPosition,
11270    ) -> *mut ::std::os::raw::c_void;
11271    #[link_name = "zend_array_is_list__extern"]
11272    pub fn zend_array_is_list(array: *const zend_array) -> bool;
11273    #[link_name = "_zend_hash_append_ex__extern"]
11274    pub fn _zend_hash_append_ex(
11275        ht: *mut HashTable,
11276        key: *mut zend_string,
11277        zv: *mut zval,
11278        key_guaranteed_interned: bool,
11279    ) -> *mut zval;
11280    #[link_name = "_zend_hash_append__extern"]
11281    pub fn _zend_hash_append(ht: *mut HashTable, key: *mut zend_string, zv: *mut zval)
11282    -> *mut zval;
11283    #[link_name = "_zend_hash_append_ptr_ex__extern"]
11284    pub fn _zend_hash_append_ptr_ex(
11285        ht: *mut HashTable,
11286        key: *mut zend_string,
11287        ptr: *mut ::std::os::raw::c_void,
11288        key_guaranteed_interned: bool,
11289    ) -> *mut zval;
11290    #[link_name = "_zend_hash_append_ptr__extern"]
11291    pub fn _zend_hash_append_ptr(
11292        ht: *mut HashTable,
11293        key: *mut zend_string,
11294        ptr: *mut ::std::os::raw::c_void,
11295    ) -> *mut zval;
11296    #[link_name = "_zend_hash_append_ind__extern"]
11297    pub fn _zend_hash_append_ind(ht: *mut HashTable, key: *mut zend_string, ptr: *mut zval);
11298    pub static mut zend_ast_process: zend_ast_process_t;
11299    pub fn zend_ast_create_zval_with_lineno(zv: *const zval, lineno: u32) -> *mut zend_ast;
11300    pub fn zend_ast_create_zval_ex(zv: *const zval, attr: zend_ast_attr) -> *mut zend_ast;
11301    pub fn zend_ast_create_zval(zv: *const zval) -> *mut zend_ast;
11302    pub fn zend_ast_create_zval_from_str(str_: *mut zend_string) -> *mut zend_ast;
11303    pub fn zend_ast_create_zval_from_long(lval: zend_long) -> *mut zend_ast;
11304    pub fn zend_ast_create_constant(name: *mut zend_string, attr: zend_ast_attr) -> *mut zend_ast;
11305    pub fn zend_ast_create_class_const_or_name(
11306        class_name: *mut zend_ast,
11307        name: *mut zend_ast,
11308    ) -> *mut zend_ast;
11309    pub fn zend_ast_create_op_array(op_array: *mut zend_op_array) -> *mut zend_ast;
11310    pub fn zend_ast_create_0(kind: zend_ast_kind) -> *mut zend_ast;
11311    pub fn zend_ast_create_1(kind: zend_ast_kind, child: *mut zend_ast) -> *mut zend_ast;
11312    pub fn zend_ast_create_2(
11313        kind: zend_ast_kind,
11314        child1: *mut zend_ast,
11315        child2: *mut zend_ast,
11316    ) -> *mut zend_ast;
11317    pub fn zend_ast_create_3(
11318        kind: zend_ast_kind,
11319        child1: *mut zend_ast,
11320        child2: *mut zend_ast,
11321        child3: *mut zend_ast,
11322    ) -> *mut zend_ast;
11323    pub fn zend_ast_create_4(
11324        kind: zend_ast_kind,
11325        child1: *mut zend_ast,
11326        child2: *mut zend_ast,
11327        child3: *mut zend_ast,
11328        child4: *mut zend_ast,
11329    ) -> *mut zend_ast;
11330    pub fn zend_ast_create_5(
11331        kind: zend_ast_kind,
11332        child1: *mut zend_ast,
11333        child2: *mut zend_ast,
11334        child3: *mut zend_ast,
11335        child4: *mut zend_ast,
11336        child5: *mut zend_ast,
11337    ) -> *mut zend_ast;
11338    pub fn zend_ast_create_va(
11339        kind: zend_ast_kind,
11340        attr: zend_ast_attr,
11341        va: *mut va_list,
11342    ) -> *mut zend_ast;
11343    pub fn zend_ast_create_n(kind: ::std::os::raw::c_uint, ...) -> *mut zend_ast;
11344    pub fn zend_ast_create_ex_n(
11345        kind: zend_ast_kind,
11346        attr: ::std::os::raw::c_uint,
11347        ...
11348    ) -> *mut zend_ast;
11349    #[link_name = "zend_ast_create_ex_0__extern"]
11350    pub fn zend_ast_create_ex_0(kind: zend_ast_kind, attr: zend_ast_attr) -> *mut zend_ast;
11351    #[link_name = "zend_ast_create_ex_1__extern"]
11352    pub fn zend_ast_create_ex_1(
11353        kind: zend_ast_kind,
11354        attr: zend_ast_attr,
11355        child: *mut zend_ast,
11356    ) -> *mut zend_ast;
11357    #[link_name = "zend_ast_create_ex_2__extern"]
11358    pub fn zend_ast_create_ex_2(
11359        kind: zend_ast_kind,
11360        attr: zend_ast_attr,
11361        child1: *mut zend_ast,
11362        child2: *mut zend_ast,
11363    ) -> *mut zend_ast;
11364    #[link_name = "zend_ast_create_ex_3__extern"]
11365    pub fn zend_ast_create_ex_3(
11366        kind: zend_ast_kind,
11367        attr: zend_ast_attr,
11368        child1: *mut zend_ast,
11369        child2: *mut zend_ast,
11370        child3: *mut zend_ast,
11371    ) -> *mut zend_ast;
11372    #[link_name = "zend_ast_create_ex_4__extern"]
11373    pub fn zend_ast_create_ex_4(
11374        kind: zend_ast_kind,
11375        attr: zend_ast_attr,
11376        child1: *mut zend_ast,
11377        child2: *mut zend_ast,
11378        child3: *mut zend_ast,
11379        child4: *mut zend_ast,
11380    ) -> *mut zend_ast;
11381    #[link_name = "zend_ast_create_ex_5__extern"]
11382    pub fn zend_ast_create_ex_5(
11383        kind: zend_ast_kind,
11384        attr: zend_ast_attr,
11385        child1: *mut zend_ast,
11386        child2: *mut zend_ast,
11387        child3: *mut zend_ast,
11388        child4: *mut zend_ast,
11389        child5: *mut zend_ast,
11390    ) -> *mut zend_ast;
11391    pub fn zend_ast_create_list_0(kind: zend_ast_kind) -> *mut zend_ast;
11392    pub fn zend_ast_create_list_1(kind: zend_ast_kind, child: *mut zend_ast) -> *mut zend_ast;
11393    pub fn zend_ast_create_list_2(
11394        kind: zend_ast_kind,
11395        child1: *mut zend_ast,
11396        child2: *mut zend_ast,
11397    ) -> *mut zend_ast;
11398    pub fn zend_ast_list_add(list: *mut zend_ast, op: *mut zend_ast) -> *mut zend_ast;
11399    pub fn zend_ast_create_decl(
11400        kind: zend_ast_kind,
11401        flags: u32,
11402        start_lineno: u32,
11403        doc_comment: *mut zend_string,
11404        name: *mut zend_string,
11405        child0: *mut zend_ast,
11406        child1: *mut zend_ast,
11407        child2: *mut zend_ast,
11408        child3: *mut zend_ast,
11409        child4: *mut zend_ast,
11410    ) -> *mut zend_ast;
11411    pub fn zend_ast_create_fcc() -> *mut zend_ast;
11412    pub fn zend_ast_evaluate(
11413        result: *mut zval,
11414        ast: *mut zend_ast,
11415        scope: *mut zend_class_entry,
11416    ) -> zend_result;
11417    pub fn zend_ast_evaluate_ex(
11418        result: *mut zval,
11419        ast: *mut zend_ast,
11420        scope: *mut zend_class_entry,
11421        short_circuited_ptr: *mut bool,
11422        ctx: *mut zend_ast_evaluate_ctx,
11423    ) -> zend_result;
11424    pub fn zend_ast_export(
11425        prefix: *const ::std::os::raw::c_char,
11426        ast: *mut zend_ast,
11427        suffix: *const ::std::os::raw::c_char,
11428    ) -> *mut zend_string;
11429    pub fn zend_ast_copy(ast: *mut zend_ast) -> *mut zend_ast_ref;
11430    pub fn zend_ast_destroy(ast: *mut zend_ast);
11431    pub fn zend_ast_ref_destroy(ast: *mut zend_ast_ref);
11432    pub fn zend_ast_apply(
11433        ast: *mut zend_ast,
11434        fn_: zend_ast_apply_func,
11435        context: *mut ::std::os::raw::c_void,
11436    );
11437    #[link_name = "zend_ast_size__extern"]
11438    pub fn zend_ast_size(children: u32) -> usize;
11439    #[link_name = "zend_ast_is_special__extern"]
11440    pub fn zend_ast_is_special(ast: *const zend_ast) -> bool;
11441    #[link_name = "zend_ast_is_decl__extern"]
11442    pub fn zend_ast_is_decl(ast: *const zend_ast) -> bool;
11443    #[link_name = "zend_ast_is_list__extern"]
11444    pub fn zend_ast_is_list(ast: *const zend_ast) -> bool;
11445    #[link_name = "zend_ast_get_list__extern"]
11446    pub fn zend_ast_get_list(ast: *mut zend_ast) -> *mut zend_ast_list;
11447    #[link_name = "zend_ast_get_zval__extern"]
11448    pub fn zend_ast_get_zval(ast: *mut zend_ast) -> *mut zval;
11449    #[link_name = "zend_ast_get_str__extern"]
11450    pub fn zend_ast_get_str(ast: *mut zend_ast) -> *mut zend_string;
11451    #[link_name = "zend_ast_get_op_array__extern"]
11452    pub fn zend_ast_get_op_array(ast: *mut zend_ast) -> *mut zend_ast_op_array;
11453    #[link_name = "zend_ast_get_constant_name__extern"]
11454    pub fn zend_ast_get_constant_name(ast: *mut zend_ast) -> *mut zend_string;
11455    #[link_name = "zend_ast_get_num_children__extern"]
11456    pub fn zend_ast_get_num_children(ast: *const zend_ast) -> u32;
11457    #[link_name = "zend_ast_get_lineno__extern"]
11458    pub fn zend_ast_get_lineno(ast: *mut zend_ast) -> u32;
11459    #[link_name = "zend_ast_create_binary_op__extern"]
11460    pub fn zend_ast_create_binary_op(
11461        opcode: u32,
11462        op0: *mut zend_ast,
11463        op1: *mut zend_ast,
11464    ) -> *mut zend_ast;
11465    pub fn zend_ast_create_concat_op(op0: *mut zend_ast, op1: *mut zend_ast) -> *mut zend_ast;
11466    #[link_name = "zend_ast_create_assign_op__extern"]
11467    pub fn zend_ast_create_assign_op(
11468        opcode: u32,
11469        op0: *mut zend_ast,
11470        op1: *mut zend_ast,
11471    ) -> *mut zend_ast;
11472    #[link_name = "zend_ast_create_cast__extern"]
11473    pub fn zend_ast_create_cast(type_: u32, op0: *mut zend_ast) -> *mut zend_ast;
11474    #[link_name = "zend_ast_list_rtrim__extern"]
11475    pub fn zend_ast_list_rtrim(ast: *mut zend_ast) -> *mut zend_ast;
11476    pub fn zend_ast_with_attributes(ast: *mut zend_ast, attr: *mut zend_ast) -> *mut zend_ast;
11477    pub fn rc_dtor_func(p: *mut zend_refcounted);
11478    pub fn zval_copy_ctor_func(zvalue: *mut zval);
11479    #[link_name = "zval_ptr_dtor_nogc__extern"]
11480    pub fn zval_ptr_dtor_nogc(zval_ptr: *mut zval);
11481    #[link_name = "i_zval_ptr_dtor__extern"]
11482    pub fn i_zval_ptr_dtor(zval_ptr: *mut zval);
11483    #[link_name = "zval_copy_ctor__extern"]
11484    pub fn zval_copy_ctor(zvalue: *mut zval);
11485    #[link_name = "zval_opt_copy_ctor__extern"]
11486    pub fn zval_opt_copy_ctor(zvalue: *mut zval);
11487    #[link_name = "zval_ptr_dtor_str__extern"]
11488    pub fn zval_ptr_dtor_str(zval_ptr: *mut zval);
11489    pub fn zval_ptr_dtor(zval_ptr: *mut zval);
11490    pub fn zval_ptr_safe_dtor(zval_ptr: *mut zval);
11491    pub fn zval_internal_ptr_dtor(zvalue: *mut zval);
11492    pub fn zval_add_ref(p: *mut zval);
11493    pub fn zend_iterator_unwrap(array_ptr: *mut zval) -> *mut zend_object_iterator;
11494    pub fn zend_iterator_init(iter: *mut zend_object_iterator);
11495    pub fn zend_iterator_dtor(iter: *mut zend_object_iterator);
11496    pub fn zend_register_iterator_wrapper();
11497    pub fn zend_stream_init_fp(
11498        handle: *mut zend_file_handle,
11499        fp: *mut FILE,
11500        filename: *const ::std::os::raw::c_char,
11501    );
11502    pub fn zend_stream_init_filename(
11503        handle: *mut zend_file_handle,
11504        filename: *const ::std::os::raw::c_char,
11505    );
11506    pub fn zend_stream_init_filename_ex(handle: *mut zend_file_handle, filename: *mut zend_string);
11507    pub fn zend_stream_open(handle: *mut zend_file_handle) -> zend_result;
11508    pub fn zend_stream_fixup(
11509        file_handle: *mut zend_file_handle,
11510        buf: *mut *mut ::std::os::raw::c_char,
11511        len: *mut usize,
11512    ) -> zend_result;
11513    pub fn zend_destroy_file_handle(file_handle: *mut zend_file_handle);
11514    pub fn zend_stream_init();
11515    pub fn zend_stream_shutdown();
11516    pub static mut zend_signal_globals: zend_signal_globals_t;
11517    pub fn zend_signal_handler_unblock();
11518    pub fn zend_signal_activate();
11519    pub fn zend_signal_deactivate();
11520    pub fn zend_signal_startup();
11521    pub fn zend_signal_init();
11522    pub fn zend_signal(
11523        signo: ::std::os::raw::c_int,
11524        handler: ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>,
11525    );
11526    pub fn zend_sigaction(
11527        signo: ::std::os::raw::c_int,
11528        act: *const sigaction,
11529        oldact: *mut sigaction,
11530    );
11531    pub fn zend_startup(utility_functions: *mut zend_utility_functions);
11532    pub fn zend_shutdown();
11533    pub fn zend_register_standard_ini_entries();
11534    pub fn zend_post_startup() -> zend_result;
11535    pub fn zend_set_utility_values(utility_values: *mut zend_utility_values);
11536    pub fn zend_unload_modules();
11537    pub fn _zend_bailout(filename: *const ::std::os::raw::c_char, lineno: u32) -> !;
11538    pub fn zend_get_page_size() -> usize;
11539    pub fn zend_vspprintf(
11540        pbuf: *mut *mut ::std::os::raw::c_char,
11541        max_len: usize,
11542        format: *const ::std::os::raw::c_char,
11543        ap: *mut __va_list_tag,
11544    ) -> usize;
11545    pub fn zend_spprintf(
11546        message: *mut *mut ::std::os::raw::c_char,
11547        max_len: usize,
11548        format: *const ::std::os::raw::c_char,
11549        ...
11550    ) -> usize;
11551    pub fn zend_vstrpprintf(
11552        max_len: usize,
11553        format: *const ::std::os::raw::c_char,
11554        ap: *mut __va_list_tag,
11555    ) -> *mut zend_string;
11556    pub fn zend_strpprintf(
11557        max_len: usize,
11558        format: *const ::std::os::raw::c_char,
11559        ...
11560    ) -> *mut zend_string;
11561    pub fn zend_spprintf_unchecked(
11562        message: *mut *mut ::std::os::raw::c_char,
11563        max_len: usize,
11564        format: *const ::std::os::raw::c_char,
11565        ...
11566    ) -> usize;
11567    pub fn zend_strpprintf_unchecked(
11568        max_len: usize,
11569        format: *const ::std::os::raw::c_char,
11570        ...
11571    ) -> *mut zend_string;
11572    pub fn get_zend_version() -> *const ::std::os::raw::c_char;
11573    pub fn zend_make_printable_zval(expr: *mut zval, expr_copy: *mut zval) -> bool;
11574    pub fn zend_print_zval(expr: *mut zval, indent: ::std::os::raw::c_int) -> usize;
11575    pub fn zend_print_zval_r(expr: *mut zval, indent: ::std::os::raw::c_int);
11576    pub fn zend_print_zval_r_to_str(
11577        expr: *mut zval,
11578        indent: ::std::os::raw::c_int,
11579    ) -> *mut zend_string;
11580    pub fn zend_print_flat_zval_r(expr: *mut zval);
11581    pub fn zend_print_flat_zval_r_to_buf(str_: *mut smart_str, expr: *mut zval);
11582    #[link_name = "zend_print_variable__extern"]
11583    pub fn zend_print_variable(var: *mut zval) -> usize;
11584    pub fn zend_output_debug_string(
11585        trigger_break: bool,
11586        format: *const ::std::os::raw::c_char,
11587        ...
11588    );
11589    pub fn zend_activate();
11590    pub fn zend_deactivate();
11591    pub fn zend_call_destructors();
11592    pub fn zend_activate_modules();
11593    pub fn zend_deactivate_modules();
11594    pub fn zend_post_deactivate_modules();
11595    pub fn free_estring(str_p: *mut *mut ::std::os::raw::c_char);
11596    pub static mut zend_printf: ::std::option::Option<
11597        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> usize,
11598    >;
11599    pub static mut zend_write: zend_write_func_t;
11600    pub static mut zend_fopen: ::std::option::Option<
11601        unsafe extern "C" fn(
11602            filename: *mut zend_string,
11603            opened_path: *mut *mut zend_string,
11604        ) -> *mut FILE,
11605    >;
11606    pub static mut zend_ticks_function:
11607        ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>;
11608    pub static mut zend_interrupt_function:
11609        ::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
11610    pub static mut zend_error_cb: ::std::option::Option<
11611        unsafe extern "C" fn(
11612            type_: ::std::os::raw::c_int,
11613            error_filename: *mut zend_string,
11614            error_lineno: u32,
11615            message: *mut zend_string,
11616        ),
11617    >;
11618    pub static mut zend_on_timeout:
11619        ::std::option::Option<unsafe extern "C" fn(seconds: ::std::os::raw::c_int)>;
11620    pub static mut zend_stream_open_function:
11621        ::std::option::Option<unsafe extern "C" fn(handle: *mut zend_file_handle) -> zend_result>;
11622    pub static mut zend_printf_to_smart_string: ::std::option::Option<
11623        unsafe extern "C" fn(
11624            buf: *mut smart_string,
11625            format: *const ::std::os::raw::c_char,
11626            ap: *mut __va_list_tag,
11627        ),
11628    >;
11629    pub static mut zend_printf_to_smart_str: ::std::option::Option<
11630        unsafe extern "C" fn(
11631            buf: *mut smart_str,
11632            format: *const ::std::os::raw::c_char,
11633            ap: *mut __va_list_tag,
11634        ),
11635    >;
11636    pub static mut zend_getenv: ::std::option::Option<
11637        unsafe extern "C" fn(
11638            name: *const ::std::os::raw::c_char,
11639            name_len: usize,
11640        ) -> *mut ::std::os::raw::c_char,
11641    >;
11642    pub static mut zend_resolve_path:
11643        ::std::option::Option<unsafe extern "C" fn(filename: *mut zend_string) -> *mut zend_string>;
11644    pub static mut zend_random_bytes: ::std::option::Option<
11645        unsafe extern "C" fn(
11646            bytes: *mut ::std::os::raw::c_void,
11647            size: usize,
11648            errstr: *mut ::std::os::raw::c_char,
11649            errstr_size: usize,
11650        ) -> zend_result,
11651    >;
11652    pub static mut zend_random_bytes_insecure: ::std::option::Option<
11653        unsafe extern "C" fn(
11654            state: *mut zend_random_bytes_insecure_state,
11655            bytes: *mut ::std::os::raw::c_void,
11656            size: usize,
11657        ),
11658    >;
11659    pub static mut zend_post_startup_cb:
11660        ::std::option::Option<unsafe extern "C" fn() -> zend_result>;
11661    pub static mut zend_post_shutdown_cb: ::std::option::Option<unsafe extern "C" fn()>;
11662    pub static mut zend_accel_schedule_restart_hook:
11663        ::std::option::Option<unsafe extern "C" fn(reason: ::std::os::raw::c_int)>;
11664    pub fn zend_error(type_: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
11665    pub fn zend_error_noreturn(
11666        type_: ::std::os::raw::c_int,
11667        format: *const ::std::os::raw::c_char,
11668        ...
11669    ) -> !;
11670    pub fn zend_error_noreturn_unchecked(
11671        type_: ::std::os::raw::c_int,
11672        format: *const ::std::os::raw::c_char,
11673        ...
11674    ) -> !;
11675    pub fn zend_error_unchecked(
11676        type_: ::std::os::raw::c_int,
11677        format: *const ::std::os::raw::c_char,
11678        ...
11679    );
11680    pub fn zend_error_at(
11681        type_: ::std::os::raw::c_int,
11682        filename: *mut zend_string,
11683        lineno: u32,
11684        format: *const ::std::os::raw::c_char,
11685        ...
11686    );
11687    pub fn zend_error_at_noreturn(
11688        type_: ::std::os::raw::c_int,
11689        filename: *mut zend_string,
11690        lineno: u32,
11691        format: *const ::std::os::raw::c_char,
11692        ...
11693    ) -> !;
11694    pub fn zend_error_zstr(type_: ::std::os::raw::c_int, message: *mut zend_string);
11695    pub fn zend_error_zstr_at(
11696        type_: ::std::os::raw::c_int,
11697        filename: *mut zend_string,
11698        lineno: u32,
11699        message: *mut zend_string,
11700    );
11701    pub fn zend_throw_error(
11702        exception_ce: *mut zend_class_entry,
11703        format: *const ::std::os::raw::c_char,
11704        ...
11705    );
11706    pub fn zend_type_error(format: *const ::std::os::raw::c_char, ...);
11707    pub fn zend_argument_count_error(format: *const ::std::os::raw::c_char, ...);
11708    pub fn zend_value_error(format: *const ::std::os::raw::c_char, ...);
11709    pub fn zend_illegal_container_offset(
11710        container: *const zend_string,
11711        offset: *const zval,
11712        type_: ::std::os::raw::c_int,
11713    );
11714    pub fn zenderror(error: *const ::std::os::raw::c_char);
11715    pub fn zend_strerror_noreturn(
11716        type_: ::std::os::raw::c_int,
11717        errn: ::std::os::raw::c_int,
11718        message: *const ::std::os::raw::c_char,
11719    ) -> !;
11720    pub static mut zend_standard_class_def: *mut zend_class_entry;
11721    pub static mut zend_uv: zend_utility_values;
11722    pub static mut zend_dtrace_enabled: bool;
11723    pub fn zend_message_dispatcher(message: zend_long, data: *const ::std::os::raw::c_void);
11724    pub fn zend_get_configuration_directive(name: *mut zend_string) -> *mut zval;
11725    pub fn zend_save_error_handling(current: *mut zend_error_handling);
11726    pub fn zend_replace_error_handling(
11727        error_handling: zend_error_handling_t::Type,
11728        exception_class: *mut zend_class_entry,
11729        current: *mut zend_error_handling,
11730    );
11731    pub fn zend_restore_error_handling(saved: *mut zend_error_handling);
11732    pub fn zend_begin_record_errors();
11733    pub fn zend_emit_recorded_errors();
11734    pub fn zend_emit_recorded_errors_ex(num_errors: u32, errors: *mut *mut zend_error_info);
11735    pub fn zend_free_recorded_errors();
11736    pub fn zend_hooked_object_get_iterator(
11737        ce: *mut zend_class_entry,
11738        object: *mut zval,
11739        by_ref: ::std::os::raw::c_int,
11740    ) -> *mut zend_object_iterator;
11741    pub fn zend_hooked_object_build_properties(zobj: *mut zend_object) -> *mut zend_array;
11742    pub fn zend_class_can_be_lazy(ce: *const zend_class_entry) -> bool;
11743    pub fn zend_object_make_lazy(
11744        obj: *mut zend_object,
11745        class_type: *mut zend_class_entry,
11746        initializer_zv: *mut zval,
11747        initializer_fcc: *mut zend_fcall_info_cache,
11748        flags: zend_lazy_object_flags_t,
11749    ) -> *mut zend_object;
11750    pub fn zend_lazy_object_init(obj: *mut zend_object) -> *mut zend_object;
11751    pub fn zend_lazy_object_mark_as_initialized(obj: *mut zend_object) -> *mut zend_object;
11752    pub fn zend_lazy_objects_init(store: *mut zend_lazy_objects_store);
11753    pub fn zend_lazy_objects_destroy(store: *mut zend_lazy_objects_store);
11754    pub fn zend_lazy_object_get_initializer_zv(obj: *mut zend_object) -> *mut zval;
11755    pub fn zend_lazy_object_get_flags(obj: *const zend_object) -> zend_lazy_object_flags_t;
11756    pub fn zend_lazy_object_del_info(obj: *const zend_object);
11757    pub fn zend_lazy_object_get_properties(object: *mut zend_object) -> *mut HashTable;
11758    pub fn zend_lazy_object_clone(old_obj: *mut zend_object) -> *mut zend_object;
11759    pub fn zend_lazy_object_debug_info(
11760        object: *mut zend_object,
11761        is_temp: *mut ::std::os::raw::c_int,
11762    ) -> *mut HashTable;
11763    pub fn zend_lazy_object_get_gc(
11764        zobj: *mut zend_object,
11765        table: *mut *mut zval,
11766        n: *mut ::std::os::raw::c_int,
11767    ) -> *mut HashTable;
11768    pub fn zend_lazy_object_decr_lazy_props(obj: *const zend_object) -> bool;
11769    pub fn zend_lazy_object_realize(obj: *mut zend_object);
11770    pub fn zend_lazy_object_get_property_info_for_slot(
11771        obj: *mut zend_object,
11772        slot: *mut zval,
11773    ) -> *mut zend_property_info;
11774    #[link_name = "zend_object_is_lazy__extern"]
11775    pub fn zend_object_is_lazy(obj: *const zend_object) -> bool;
11776    #[link_name = "zend_object_is_lazy_proxy__extern"]
11777    pub fn zend_object_is_lazy_proxy(obj: *const zend_object) -> bool;
11778    #[link_name = "zend_lazy_object_initialized__extern"]
11779    pub fn zend_lazy_object_initialized(obj: *const zend_object) -> bool;
11780    #[link_name = "zend_lazy_object_must_init__extern"]
11781    pub fn zend_lazy_object_must_init(obj: *const zend_object) -> bool;
11782    #[link_name = "zend_lazy_object_initialize_on_serialize__extern"]
11783    pub fn zend_lazy_object_initialize_on_serialize(obj: *const zend_object) -> bool;
11784    pub static std_object_handlers: zend_object_handlers;
11785    pub fn zend_class_init_statics(ce: *mut zend_class_entry);
11786    pub fn zend_std_get_static_method(
11787        ce: *mut zend_class_entry,
11788        function_name_strval: *mut zend_string,
11789        key: *const zval,
11790    ) -> *mut zend_function;
11791    pub fn zend_std_get_static_property_with_info(
11792        ce: *mut zend_class_entry,
11793        property_name: *mut zend_string,
11794        type_: ::std::os::raw::c_int,
11795        prop_info: *mut *mut _zend_property_info,
11796    ) -> *mut zval;
11797    pub fn zend_std_get_static_property(
11798        ce: *mut zend_class_entry,
11799        property_name: *mut zend_string,
11800        type_: ::std::os::raw::c_int,
11801    ) -> *mut zval;
11802    pub fn zend_std_unset_static_property(
11803        ce: *const zend_class_entry,
11804        property_name: *const zend_string,
11805    ) -> bool;
11806    pub fn zend_std_get_constructor(object: *mut zend_object) -> *mut zend_function;
11807    pub fn zend_get_property_info(
11808        ce: *const zend_class_entry,
11809        member: *mut zend_string,
11810        silent: ::std::os::raw::c_int,
11811    ) -> *mut _zend_property_info;
11812    pub fn zend_std_get_properties(object: *mut zend_object) -> *mut HashTable;
11813    pub fn zend_get_properties_no_lazy_init(zobj: *mut zend_object) -> *mut HashTable;
11814    pub fn zend_std_get_gc(
11815        object: *mut zend_object,
11816        table: *mut *mut zval,
11817        n: *mut ::std::os::raw::c_int,
11818    ) -> *mut HashTable;
11819    pub fn zend_std_get_debug_info(
11820        object: *mut zend_object,
11821        is_temp: *mut ::std::os::raw::c_int,
11822    ) -> *mut HashTable;
11823    pub fn zend_std_cast_object_tostring(
11824        object: *mut zend_object,
11825        writeobj: *mut zval,
11826        type_: ::std::os::raw::c_int,
11827    ) -> zend_result;
11828    pub fn zend_std_get_property_ptr_ptr(
11829        object: *mut zend_object,
11830        member: *mut zend_string,
11831        type_: ::std::os::raw::c_int,
11832        cache_slot: *mut *mut ::std::os::raw::c_void,
11833    ) -> *mut zval;
11834    pub fn zend_std_read_property(
11835        object: *mut zend_object,
11836        member: *mut zend_string,
11837        type_: ::std::os::raw::c_int,
11838        cache_slot: *mut *mut ::std::os::raw::c_void,
11839        rv: *mut zval,
11840    ) -> *mut zval;
11841    pub fn zend_std_write_property(
11842        object: *mut zend_object,
11843        member: *mut zend_string,
11844        value: *mut zval,
11845        cache_slot: *mut *mut ::std::os::raw::c_void,
11846    ) -> *mut zval;
11847    pub fn zend_std_has_property(
11848        object: *mut zend_object,
11849        member: *mut zend_string,
11850        has_set_exists: ::std::os::raw::c_int,
11851        cache_slot: *mut *mut ::std::os::raw::c_void,
11852    ) -> ::std::os::raw::c_int;
11853    pub fn zend_std_unset_property(
11854        object: *mut zend_object,
11855        member: *mut zend_string,
11856        cache_slot: *mut *mut ::std::os::raw::c_void,
11857    );
11858    pub fn zend_std_read_dimension(
11859        object: *mut zend_object,
11860        offset: *mut zval,
11861        type_: ::std::os::raw::c_int,
11862        rv: *mut zval,
11863    ) -> *mut zval;
11864    pub fn zend_std_write_dimension(object: *mut zend_object, offset: *mut zval, value: *mut zval);
11865    pub fn zend_std_has_dimension(
11866        object: *mut zend_object,
11867        offset: *mut zval,
11868        check_empty: ::std::os::raw::c_int,
11869    ) -> ::std::os::raw::c_int;
11870    pub fn zend_std_unset_dimension(object: *mut zend_object, offset: *mut zval);
11871    pub fn zend_std_get_method(
11872        obj_ptr: *mut *mut zend_object,
11873        method_name: *mut zend_string,
11874        key: *const zval,
11875    ) -> *mut zend_function;
11876    pub fn zend_std_get_class_name(zobj: *const zend_object) -> *mut zend_string;
11877    pub fn zend_std_compare_objects(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
11878    pub fn zend_std_get_closure(
11879        obj: *mut zend_object,
11880        ce_ptr: *mut *mut zend_class_entry,
11881        fptr_ptr: *mut *mut zend_function,
11882        obj_ptr: *mut *mut zend_object,
11883        check_only: bool,
11884    ) -> zend_result;
11885    pub fn rebuild_object_properties_internal(zobj: *mut zend_object) -> *mut HashTable;
11886    pub fn zend_bad_method_call(
11887        fbc: *const zend_function,
11888        method_name: *const zend_string,
11889        scope: *const zend_class_entry,
11890    );
11891    pub fn zend_abstract_method_call(fbc: *const zend_function);
11892    #[link_name = "zend_std_get_properties_ex__extern"]
11893    pub fn zend_std_get_properties_ex(object: *mut zend_object) -> *mut HashTable;
11894    pub fn zend_std_build_object_properties_array(zobj: *mut zend_object) -> *mut HashTable;
11895    pub fn zend_objects_not_comparable(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
11896    pub fn zend_check_protected(
11897        ce: *const zend_class_entry,
11898        scope: *const zend_class_entry,
11899    ) -> bool;
11900    pub fn zend_check_property_access(
11901        zobj: *const zend_object,
11902        prop_info_name: *mut zend_string,
11903        is_dynamic: bool,
11904    ) -> zend_result;
11905    pub fn zend_get_call_trampoline_func(
11906        ce: *const zend_class_entry,
11907        method_name: *mut zend_string,
11908        is_static: bool,
11909    ) -> *mut zend_function;
11910    pub fn zend_get_property_guard(zobj: *mut zend_object, member: *mut zend_string) -> *mut u32;
11911    pub fn zend_get_recursion_guard(zobj: *mut zend_object) -> *mut u32;
11912    pub fn zend_std_get_properties_for(
11913        obj: *mut zend_object,
11914        purpose: zend_prop_purpose,
11915    ) -> *mut HashTable;
11916    pub fn zend_get_properties_for(obj: *mut zval, purpose: zend_prop_purpose) -> *mut HashTable;
11917    pub fn zend_get_property_hook_trampoline(
11918        prop_info: *const zend_property_info,
11919        kind: zend_property_hook_kind::Type,
11920        prop_name: *mut zend_string,
11921    ) -> *mut zend_function;
11922    pub fn zend_asymmetric_property_has_set_access(prop_info: *const zend_property_info) -> bool;
11923    pub fn zend_freedtoa(s: *mut ::std::os::raw::c_char);
11924    pub fn zend_dtoa(
11925        _d: f64,
11926        mode: ::std::os::raw::c_int,
11927        ndigits: ::std::os::raw::c_int,
11928        decpt: *mut ::std::os::raw::c_int,
11929        sign: *mut bool,
11930        rve: *mut *mut ::std::os::raw::c_char,
11931    ) -> *mut ::std::os::raw::c_char;
11932    pub fn zend_gcvt(
11933        value: f64,
11934        ndigit: ::std::os::raw::c_int,
11935        dec_point: ::std::os::raw::c_char,
11936        exponent: ::std::os::raw::c_char,
11937        buf: *mut ::std::os::raw::c_char,
11938    ) -> *mut ::std::os::raw::c_char;
11939    pub fn zend_strtod(
11940        s00: *const ::std::os::raw::c_char,
11941        se: *mut *const ::std::os::raw::c_char,
11942    ) -> f64;
11943    pub fn zend_hex_strtod(
11944        str_: *const ::std::os::raw::c_char,
11945        endptr: *mut *const ::std::os::raw::c_char,
11946    ) -> f64;
11947    pub fn zend_oct_strtod(
11948        str_: *const ::std::os::raw::c_char,
11949        endptr: *mut *const ::std::os::raw::c_char,
11950    ) -> f64;
11951    pub fn zend_bin_strtod(
11952        str_: *const ::std::os::raw::c_char,
11953        endptr: *mut *const ::std::os::raw::c_char,
11954    ) -> f64;
11955    pub fn zend_shutdown_strtod() -> ::std::os::raw::c_int;
11956    #[link_name = "zend_safe_address__extern"]
11957    pub fn zend_safe_address(
11958        nmemb: usize,
11959        size: usize,
11960        offset: usize,
11961        overflow: *mut bool,
11962    ) -> usize;
11963    #[link_name = "zend_safe_address_guarded__extern"]
11964    pub fn zend_safe_address_guarded(nmemb: usize, size: usize, offset: usize) -> usize;
11965    #[link_name = "zend_safe_addmult__extern"]
11966    pub fn zend_safe_addmult(
11967        nmemb: usize,
11968        size: usize,
11969        offset: usize,
11970        message: *const ::std::os::raw::c_char,
11971    ) -> usize;
11972    pub fn add_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11973    pub fn sub_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11974    pub fn mul_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11975    pub fn pow_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11976    pub fn div_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11977    pub fn mod_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11978    pub fn boolean_xor_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11979    pub fn boolean_not_function(result: *mut zval, op1: *mut zval) -> zend_result;
11980    pub fn bitwise_not_function(result: *mut zval, op1: *mut zval) -> zend_result;
11981    pub fn bitwise_or_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11982    pub fn bitwise_and_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11983    pub fn bitwise_xor_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11984    pub fn shift_left_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11985    pub fn shift_right_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11986    pub fn concat_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11987    pub fn zend_is_identical(op1: *const zval, op2: *const zval) -> bool;
11988    pub fn is_equal_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11989    pub fn is_identical_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11990    pub fn is_not_identical_function(
11991        result: *mut zval,
11992        op1: *mut zval,
11993        op2: *mut zval,
11994    ) -> zend_result;
11995    pub fn is_not_equal_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11996    pub fn is_smaller_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
11997    pub fn is_smaller_or_equal_function(
11998        result: *mut zval,
11999        op1: *mut zval,
12000        op2: *mut zval,
12001    ) -> zend_result;
12002    pub fn zend_class_implements_interface(
12003        class_ce: *const zend_class_entry,
12004        interface_ce: *const zend_class_entry,
12005    ) -> bool;
12006    pub fn instanceof_function_slow(
12007        instance_ce: *const zend_class_entry,
12008        ce: *const zend_class_entry,
12009    ) -> bool;
12010    #[link_name = "instanceof_function__extern"]
12011    pub fn instanceof_function(
12012        instance_ce: *const zend_class_entry,
12013        ce: *const zend_class_entry,
12014    ) -> bool;
12015    pub fn zend_string_only_has_ascii_alphanumeric(str_: *const zend_string) -> bool;
12016    #[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."]
12017    pub fn _is_numeric_string_ex(
12018        str_: *const ::std::os::raw::c_char,
12019        length: usize,
12020        lval: *mut zend_long,
12021        dval: *mut f64,
12022        allow_errors: bool,
12023        oflow_info: *mut ::std::os::raw::c_int,
12024        trailing_data: *mut bool,
12025    ) -> u8;
12026    pub fn zend_memnstr_ex(
12027        haystack: *const ::std::os::raw::c_char,
12028        needle: *const ::std::os::raw::c_char,
12029        needle_len: usize,
12030        end: *const ::std::os::raw::c_char,
12031    ) -> *const ::std::os::raw::c_char;
12032    pub fn zend_memnrstr_ex(
12033        haystack: *const ::std::os::raw::c_char,
12034        needle: *const ::std::os::raw::c_char,
12035        needle_len: usize,
12036        end: *const ::std::os::raw::c_char,
12037    ) -> *const ::std::os::raw::c_char;
12038    pub fn zend_incompatible_double_to_long_error(d: f64);
12039    pub fn zend_incompatible_string_to_long_error(s: *const zend_string);
12040    pub fn zend_oob_double_to_long_error(d: f64);
12041    pub fn zend_oob_string_to_long_error(s: *const zend_string);
12042    pub fn zend_nan_coerced_to_type_warning(type_: u8);
12043    pub fn zend_dval_to_lval_slow(d: f64) -> zend_long;
12044    #[link_name = "zend_dval_to_lval__extern"]
12045    pub fn zend_dval_to_lval(d: f64) -> zend_long;
12046    #[link_name = "zend_dval_to_lval_silent__extern"]
12047    pub fn zend_dval_to_lval_silent(d: f64) -> zend_long;
12048    #[link_name = "zend_dval_to_lval_cap__extern"]
12049    pub fn zend_dval_to_lval_cap(d: f64, s: *const zend_string) -> zend_long;
12050    #[link_name = "zend_is_long_compatible__extern"]
12051    pub fn zend_is_long_compatible(d: f64, l: zend_long) -> bool;
12052    #[link_name = "zend_dval_to_lval_safe__extern"]
12053    pub fn zend_dval_to_lval_safe(d: f64) -> zend_long;
12054    #[link_name = "is_numeric_string_ex__extern"]
12055    pub fn is_numeric_string_ex(
12056        str_: *const ::std::os::raw::c_char,
12057        length: usize,
12058        lval: *mut zend_long,
12059        dval: *mut f64,
12060        allow_errors: bool,
12061        oflow_info: *mut ::std::os::raw::c_int,
12062        trailing_data: *mut bool,
12063    ) -> u8;
12064    #[link_name = "is_numeric_string__extern"]
12065    pub fn is_numeric_string(
12066        str_: *const ::std::os::raw::c_char,
12067        length: usize,
12068        lval: *mut zend_long,
12069        dval: *mut f64,
12070        allow_errors: bool,
12071    ) -> u8;
12072    pub fn is_numeric_str_function(
12073        str_: *const zend_string,
12074        lval: *mut zend_long,
12075        dval: *mut f64,
12076    ) -> u8;
12077    #[link_name = "zend_memnstr__extern"]
12078    pub fn zend_memnstr(
12079        haystack: *const ::std::os::raw::c_char,
12080        needle: *const ::std::os::raw::c_char,
12081        needle_len: usize,
12082        end: *const ::std::os::raw::c_char,
12083    ) -> *const ::std::os::raw::c_char;
12084    #[link_name = "zend_memrchr__extern"]
12085    pub fn zend_memrchr(
12086        s: *const ::std::os::raw::c_void,
12087        c: ::std::os::raw::c_int,
12088        n: usize,
12089    ) -> *const ::std::os::raw::c_void;
12090    #[link_name = "zend_memnrstr__extern"]
12091    pub fn zend_memnrstr(
12092        haystack: *const ::std::os::raw::c_char,
12093        needle: *const ::std::os::raw::c_char,
12094        needle_len: usize,
12095        end: *const ::std::os::raw::c_char,
12096    ) -> *const ::std::os::raw::c_char;
12097    #[link_name = "zend_strnlen__extern"]
12098    pub fn zend_strnlen(s: *const ::std::os::raw::c_char, maxlen: usize) -> usize;
12099    #[link_name = "zend_mempcpy__extern"]
12100    pub fn zend_mempcpy(
12101        dest: *mut ::std::os::raw::c_void,
12102        src: *const ::std::os::raw::c_void,
12103        n: usize,
12104    ) -> *mut ::std::os::raw::c_void;
12105    pub fn increment_function(op1: *mut zval) -> zend_result;
12106    pub fn decrement_function(op2: *mut zval) -> zend_result;
12107    pub fn convert_scalar_to_number(op: *mut zval);
12108    pub fn _convert_to_string(op: *mut zval);
12109    pub fn convert_to_long(op: *mut zval);
12110    pub fn convert_to_double(op: *mut zval);
12111    pub fn convert_to_null(op: *mut zval);
12112    pub fn convert_to_boolean(op: *mut zval);
12113    pub fn convert_to_array(op: *mut zval);
12114    pub fn convert_to_object(op: *mut zval);
12115    pub fn zval_get_long_func(op: *const zval, is_strict: bool) -> zend_long;
12116    pub fn zval_try_get_long(op: *const zval, failed: *mut bool) -> zend_long;
12117    pub fn zval_get_double_func(op: *const zval) -> f64;
12118    pub fn zval_get_string_func(op: *mut zval) -> *mut zend_string;
12119    pub fn zval_try_get_string_func(op: *mut zval) -> *mut zend_string;
12120    #[link_name = "zval_get_long__extern"]
12121    pub fn zval_get_long(op: *const zval) -> zend_long;
12122    #[link_name = "zval_get_long_ex__extern"]
12123    pub fn zval_get_long_ex(op: *const zval, is_strict: bool) -> zend_long;
12124    #[link_name = "zval_get_double__extern"]
12125    pub fn zval_get_double(op: *const zval) -> f64;
12126    #[link_name = "zval_get_string__extern"]
12127    pub fn zval_get_string(op: *mut zval) -> *mut zend_string;
12128    #[link_name = "zval_get_tmp_string__extern"]
12129    pub fn zval_get_tmp_string(op: *mut zval, tmp: *mut *mut zend_string) -> *mut zend_string;
12130    #[link_name = "zend_tmp_string_release__extern"]
12131    pub fn zend_tmp_string_release(tmp: *mut zend_string);
12132    #[link_name = "zval_try_get_string__extern"]
12133    pub fn zval_try_get_string(op: *mut zval) -> *mut zend_string;
12134    #[link_name = "zval_try_get_tmp_string__extern"]
12135    pub fn zval_try_get_tmp_string(op: *mut zval, tmp: *mut *mut zend_string) -> *mut zend_string;
12136    pub fn _try_convert_to_string(op: *mut zval) -> bool;
12137    #[link_name = "try_convert_to_string__extern"]
12138    pub fn try_convert_to_string(op: *mut zval) -> bool;
12139    pub fn zend_is_true(op: *const zval) -> bool;
12140    pub fn zend_object_is_true(op: *const zval) -> bool;
12141    #[link_name = "i_zend_is_true__extern"]
12142    pub fn i_zend_is_true(op: *const zval) -> bool;
12143    pub fn zend_compare(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
12144    pub fn compare_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
12145    pub fn numeric_compare_function(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
12146    pub fn string_compare_function_ex(
12147        op1: *mut zval,
12148        op2: *mut zval,
12149        case_insensitive: bool,
12150    ) -> ::std::os::raw::c_int;
12151    pub fn string_compare_function(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
12152    pub fn string_case_compare_function(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
12153    pub fn string_locale_compare_function(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
12154    pub static zend_tolower_map: [::std::os::raw::c_uchar; 256usize];
12155    pub static zend_toupper_map: [::std::os::raw::c_uchar; 256usize];
12156    pub fn zend_str_tolower(str_: *mut ::std::os::raw::c_char, length: usize);
12157    pub fn zend_str_toupper(str_: *mut ::std::os::raw::c_char, length: usize);
12158    pub fn zend_str_tolower_copy(
12159        dest: *mut ::std::os::raw::c_char,
12160        source: *const ::std::os::raw::c_char,
12161        length: usize,
12162    ) -> *mut ::std::os::raw::c_char;
12163    pub fn zend_str_toupper_copy(
12164        dest: *mut ::std::os::raw::c_char,
12165        source: *const ::std::os::raw::c_char,
12166        length: usize,
12167    ) -> *mut ::std::os::raw::c_char;
12168    pub fn zend_str_tolower_dup(
12169        source: *const ::std::os::raw::c_char,
12170        length: usize,
12171    ) -> *mut ::std::os::raw::c_char;
12172    pub fn zend_str_toupper_dup(
12173        source: *const ::std::os::raw::c_char,
12174        length: usize,
12175    ) -> *mut ::std::os::raw::c_char;
12176    pub fn zend_str_tolower_dup_ex(
12177        source: *const ::std::os::raw::c_char,
12178        length: usize,
12179    ) -> *mut ::std::os::raw::c_char;
12180    pub fn zend_str_toupper_dup_ex(
12181        source: *const ::std::os::raw::c_char,
12182        length: usize,
12183    ) -> *mut ::std::os::raw::c_char;
12184    pub fn zend_string_tolower_ex(str_: *mut zend_string, persistent: bool) -> *mut zend_string;
12185    pub fn zend_string_toupper_ex(str_: *mut zend_string, persistent: bool) -> *mut zend_string;
12186    pub fn zend_string_ftolower_ex(str_: *mut zend_string, persistent: bool) -> *mut zend_string;
12187    #[link_name = "zend_string_tolower__extern"]
12188    pub fn zend_string_tolower(str_: *mut zend_string) -> *mut zend_string;
12189    #[link_name = "zend_string_toupper__extern"]
12190    pub fn zend_string_toupper(str_: *mut zend_string) -> *mut zend_string;
12191    #[link_name = "zend_string_ftolower__extern"]
12192    pub fn zend_string_ftolower(str_: *mut zend_string) -> *mut zend_string;
12193    pub fn zend_binary_zval_strcmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
12194    pub fn zend_binary_zval_strncmp(
12195        s1: *mut zval,
12196        s2: *mut zval,
12197        s3: *mut zval,
12198    ) -> ::std::os::raw::c_int;
12199    pub fn zend_binary_strcmp(
12200        s1: *const ::std::os::raw::c_char,
12201        len1: usize,
12202        s2: *const ::std::os::raw::c_char,
12203        len2: usize,
12204    ) -> ::std::os::raw::c_int;
12205    pub fn zend_binary_strncmp(
12206        s1: *const ::std::os::raw::c_char,
12207        len1: usize,
12208        s2: *const ::std::os::raw::c_char,
12209        len2: usize,
12210        length: usize,
12211    ) -> ::std::os::raw::c_int;
12212    pub fn zend_binary_strcasecmp(
12213        s1: *const ::std::os::raw::c_char,
12214        len1: usize,
12215        s2: *const ::std::os::raw::c_char,
12216        len2: usize,
12217    ) -> ::std::os::raw::c_int;
12218    pub fn zend_binary_strncasecmp(
12219        s1: *const ::std::os::raw::c_char,
12220        len1: usize,
12221        s2: *const ::std::os::raw::c_char,
12222        len2: usize,
12223        length: usize,
12224    ) -> ::std::os::raw::c_int;
12225    pub fn zend_binary_strcasecmp_l(
12226        s1: *const ::std::os::raw::c_char,
12227        len1: usize,
12228        s2: *const ::std::os::raw::c_char,
12229        len2: usize,
12230    ) -> ::std::os::raw::c_int;
12231    pub fn zend_binary_strncasecmp_l(
12232        s1: *const ::std::os::raw::c_char,
12233        len1: usize,
12234        s2: *const ::std::os::raw::c_char,
12235        len2: usize,
12236        length: usize,
12237    ) -> ::std::os::raw::c_int;
12238    pub fn zendi_smart_streq(s1: *mut zend_string, s2: *mut zend_string) -> bool;
12239    pub fn zendi_smart_strcmp(s1: *mut zend_string, s2: *mut zend_string) -> ::std::os::raw::c_int;
12240    pub fn zend_compare_symbol_tables(
12241        ht1: *mut HashTable,
12242        ht2: *mut HashTable,
12243    ) -> ::std::os::raw::c_int;
12244    pub fn zend_compare_arrays(a1: *mut zval, a2: *mut zval) -> ::std::os::raw::c_int;
12245    pub fn zend_compare_objects(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
12246    #[doc = " Deprecated in favor of ZEND_STRTOL()"]
12247    pub fn zend_atoi(str_: *const ::std::os::raw::c_char, str_len: usize) -> ::std::os::raw::c_int;
12248    #[doc = " Deprecated in favor of ZEND_STRTOL()"]
12249    pub fn zend_atol(str_: *const ::std::os::raw::c_char, str_len: usize) -> zend_long;
12250    pub fn zend_update_current_locale();
12251    pub fn zend_reset_lc_ctype_locale();
12252    #[link_name = "fast_long_increment_function__extern"]
12253    pub fn fast_long_increment_function(op1: *mut zval);
12254    #[link_name = "fast_long_decrement_function__extern"]
12255    pub fn fast_long_decrement_function(op1: *mut zval);
12256    #[link_name = "fast_long_add_function__extern"]
12257    pub fn fast_long_add_function(result: *mut zval, op1: *mut zval, op2: *mut zval);
12258    #[link_name = "fast_long_sub_function__extern"]
12259    pub fn fast_long_sub_function(result: *mut zval, op1: *mut zval, op2: *mut zval);
12260    #[link_name = "zend_fast_equal_strings__extern"]
12261    pub fn zend_fast_equal_strings(s1: *mut zend_string, s2: *mut zend_string) -> bool;
12262    #[link_name = "fast_equal_check_function__extern"]
12263    pub fn fast_equal_check_function(op1: *mut zval, op2: *mut zval) -> bool;
12264    #[link_name = "fast_equal_check_long__extern"]
12265    pub fn fast_equal_check_long(op1: *mut zval, op2: *mut zval) -> bool;
12266    #[link_name = "fast_equal_check_string__extern"]
12267    pub fn fast_equal_check_string(op1: *mut zval, op2: *mut zval) -> bool;
12268    #[link_name = "fast_is_identical_function__extern"]
12269    pub fn fast_is_identical_function(op1: *mut zval, op2: *mut zval) -> bool;
12270    #[link_name = "fast_is_not_identical_function__extern"]
12271    pub fn fast_is_not_identical_function(op1: *mut zval, op2: *mut zval) -> bool;
12272    #[link_name = "zend_print_ulong_to_buf__extern"]
12273    pub fn zend_print_ulong_to_buf(
12274        buf: *mut ::std::os::raw::c_char,
12275        num: zend_ulong,
12276    ) -> *mut ::std::os::raw::c_char;
12277    #[link_name = "zend_print_long_to_buf__extern"]
12278    pub fn zend_print_long_to_buf(
12279        buf: *mut ::std::os::raw::c_char,
12280        num: zend_long,
12281    ) -> *mut ::std::os::raw::c_char;
12282    pub fn zend_long_to_str(num: zend_long) -> *mut zend_string;
12283    pub fn zend_ulong_to_str(num: zend_ulong) -> *mut zend_string;
12284    pub fn zend_u64_to_str(num: u64) -> *mut zend_string;
12285    pub fn zend_i64_to_str(num: i64) -> *mut zend_string;
12286    pub fn zend_double_to_str(num: f64) -> *mut zend_string;
12287    #[link_name = "zend_unwrap_reference__extern"]
12288    pub fn zend_unwrap_reference(op: *mut zval);
12289    #[link_name = "zend_strnieq__extern"]
12290    pub fn zend_strnieq(
12291        ptr1: *const ::std::os::raw::c_char,
12292        ptr2: *const ::std::os::raw::c_char,
12293        num: usize,
12294    ) -> bool;
12295    #[link_name = "zend_memnistr__extern"]
12296    pub fn zend_memnistr(
12297        haystack: *const ::std::os::raw::c_char,
12298        needle: *const ::std::os::raw::c_char,
12299        needle_len: usize,
12300        end: *const ::std::os::raw::c_char,
12301    ) -> *const ::std::os::raw::c_char;
12302    pub static zend_vm_kind_name: [*const ::std::os::raw::c_char; 6usize];
12303    pub fn zend_get_opcode_name(opcode: u8) -> *const ::std::os::raw::c_char;
12304    pub fn zend_get_opcode_flags(opcode: u8) -> u32;
12305    pub fn zend_get_opcode_id(name: *const ::std::os::raw::c_char, length: usize) -> u8;
12306    pub static mut zend_flf_count: usize;
12307    pub static mut zend_flf_capacity: usize;
12308    pub static mut zend_flf_handlers: *mut *mut ::std::os::raw::c_void;
12309    pub static mut zend_flf_functions: *mut *mut zend_function;
12310    pub fn zend_ast_create_znode(node: *const znode) -> *mut zend_ast;
12311    #[link_name = "zend_ast_get_znode__extern"]
12312    pub fn zend_ast_get_znode(ast: *mut zend_ast) -> *mut znode;
12313    pub fn zend_compile_top_stmt(ast: *mut zend_ast);
12314    pub fn zend_const_expr_to_zval(
12315        result: *mut zval,
12316        ast_ptr: *mut *mut zend_ast,
12317        allow_dynamic: bool,
12318    );
12319    #[link_name = "zend_visibility_to_set_visibility__extern"]
12320    pub fn zend_visibility_to_set_visibility(visibility: u32) -> u32;
12321    pub fn zend_get_property_hook_kind_from_name(
12322        name: *mut zend_string,
12323    ) -> zend_property_hook_kind::Type;
12324    pub static mut compiler_globals: _zend_compiler_globals;
12325    pub fn zendparse() -> ::std::os::raw::c_int;
12326    pub static mut executor_globals: zend_executor_globals;
12327    pub static mut language_scanner_globals: zend_php_scanner_globals;
12328    pub static mut ini_scanner_globals: zend_ini_scanner_globals;
12329    #[link_name = "zend_atomic_bool_exchange_ex__extern"]
12330    pub fn zend_atomic_bool_exchange_ex(obj: *mut zend_atomic_bool, desired: bool) -> bool;
12331    #[link_name = "zend_atomic_int_exchange_ex__extern"]
12332    pub fn zend_atomic_int_exchange_ex(
12333        obj: *mut zend_atomic_int,
12334        desired: ::std::os::raw::c_int,
12335    ) -> ::std::os::raw::c_int;
12336    #[link_name = "zend_atomic_bool_compare_exchange_ex__extern"]
12337    pub fn zend_atomic_bool_compare_exchange_ex(
12338        obj: *mut zend_atomic_bool,
12339        expected: *mut bool,
12340        desired: bool,
12341    ) -> bool;
12342    #[link_name = "zend_atomic_int_compare_exchange_ex__extern"]
12343    pub fn zend_atomic_int_compare_exchange_ex(
12344        obj: *mut zend_atomic_int,
12345        expected: *mut ::std::os::raw::c_int,
12346        desired: ::std::os::raw::c_int,
12347    ) -> bool;
12348    #[link_name = "zend_atomic_bool_load_ex__extern"]
12349    pub fn zend_atomic_bool_load_ex(obj: *const zend_atomic_bool) -> bool;
12350    #[link_name = "zend_atomic_int_load_ex__extern"]
12351    pub fn zend_atomic_int_load_ex(obj: *const zend_atomic_int) -> ::std::os::raw::c_int;
12352    #[link_name = "zend_atomic_bool_store_ex__extern"]
12353    pub fn zend_atomic_bool_store_ex(obj: *mut zend_atomic_bool, desired: bool);
12354    #[link_name = "zend_atomic_int_store_ex__extern"]
12355    pub fn zend_atomic_int_store_ex(obj: *mut zend_atomic_int, desired: ::std::os::raw::c_int);
12356    pub fn zend_atomic_bool_init(obj: *mut zend_atomic_bool, desired: bool);
12357    pub fn zend_atomic_int_init(obj: *mut zend_atomic_int, desired: ::std::os::raw::c_int);
12358    pub fn zend_atomic_bool_exchange(obj: *mut zend_atomic_bool, desired: bool) -> bool;
12359    pub fn zend_atomic_int_exchange(
12360        obj: *mut zend_atomic_int,
12361        desired: ::std::os::raw::c_int,
12362    ) -> ::std::os::raw::c_int;
12363    pub fn zend_atomic_bool_compare_exchange(
12364        obj: *mut zend_atomic_bool,
12365        expected: *mut bool,
12366        desired: bool,
12367    ) -> bool;
12368    pub fn zend_atomic_int_compare_exchange(
12369        obj: *mut zend_atomic_int,
12370        expected: *mut ::std::os::raw::c_int,
12371        desired: ::std::os::raw::c_int,
12372    ) -> bool;
12373    pub fn zend_atomic_bool_store(obj: *mut zend_atomic_bool, desired: bool);
12374    pub fn zend_atomic_int_store(obj: *mut zend_atomic_int, desired: ::std::os::raw::c_int);
12375    pub fn zend_atomic_bool_load(obj: *const zend_atomic_bool) -> bool;
12376    pub fn zend_atomic_int_load(obj: *const zend_atomic_int) -> ::std::os::raw::c_int;
12377    pub fn zend_stack_init(stack: *mut zend_stack, size: ::std::os::raw::c_int);
12378    pub fn zend_stack_push(
12379        stack: *mut zend_stack,
12380        element: *const ::std::os::raw::c_void,
12381    ) -> ::std::os::raw::c_int;
12382    pub fn zend_stack_top(stack: *const zend_stack) -> *mut ::std::os::raw::c_void;
12383    pub fn zend_stack_del_top(stack: *mut zend_stack);
12384    pub fn zend_stack_int_top(stack: *const zend_stack) -> ::std::os::raw::c_int;
12385    pub fn zend_stack_is_empty(stack: *const zend_stack) -> bool;
12386    pub fn zend_stack_destroy(stack: *mut zend_stack);
12387    pub fn zend_stack_base(stack: *const zend_stack) -> *mut ::std::os::raw::c_void;
12388    pub fn zend_stack_count(stack: *const zend_stack) -> ::std::os::raw::c_int;
12389    pub fn zend_stack_apply(
12390        stack: *mut zend_stack,
12391        type_: ::std::os::raw::c_int,
12392        apply_function: ::std::option::Option<
12393            unsafe extern "C" fn(element: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
12394        >,
12395    );
12396    pub fn zend_stack_apply_with_argument(
12397        stack: *mut zend_stack,
12398        type_: zend_stack_apply_direction::Type,
12399        apply_function: ::std::option::Option<
12400            unsafe extern "C" fn(
12401                element: *mut ::std::os::raw::c_void,
12402                arg: *mut ::std::os::raw::c_void,
12403            ) -> ::std::os::raw::c_int,
12404        >,
12405        arg: *mut ::std::os::raw::c_void,
12406    );
12407    pub fn zend_stack_clean(
12408        stack: *mut zend_stack,
12409        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
12410        free_elements: bool,
12411    );
12412    pub fn zend_ptr_stack_init(stack: *mut zend_ptr_stack);
12413    pub fn zend_ptr_stack_init_ex(stack: *mut zend_ptr_stack, persistent: bool);
12414    pub fn zend_ptr_stack_n_push(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
12415    pub fn zend_ptr_stack_n_pop(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
12416    pub fn zend_ptr_stack_destroy(stack: *mut zend_ptr_stack);
12417    pub fn zend_ptr_stack_apply(
12418        stack: *mut zend_ptr_stack,
12419        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
12420    );
12421    pub fn zend_ptr_stack_reverse_apply(
12422        stack: *mut zend_ptr_stack,
12423        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
12424    );
12425    pub fn zend_ptr_stack_clean(
12426        stack: *mut zend_ptr_stack,
12427        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
12428        free_elements: bool,
12429    );
12430    pub fn zend_ptr_stack_num_elements(stack: *mut zend_ptr_stack) -> ::std::os::raw::c_int;
12431    #[link_name = "zend_ptr_stack_3_push__extern"]
12432    pub fn zend_ptr_stack_3_push(
12433        stack: *mut zend_ptr_stack,
12434        a: *mut ::std::os::raw::c_void,
12435        b: *mut ::std::os::raw::c_void,
12436        c: *mut ::std::os::raw::c_void,
12437    );
12438    #[link_name = "zend_ptr_stack_2_push__extern"]
12439    pub fn zend_ptr_stack_2_push(
12440        stack: *mut zend_ptr_stack,
12441        a: *mut ::std::os::raw::c_void,
12442        b: *mut ::std::os::raw::c_void,
12443    );
12444    #[link_name = "zend_ptr_stack_3_pop__extern"]
12445    pub fn zend_ptr_stack_3_pop(
12446        stack: *mut zend_ptr_stack,
12447        a: *mut *mut ::std::os::raw::c_void,
12448        b: *mut *mut ::std::os::raw::c_void,
12449        c: *mut *mut ::std::os::raw::c_void,
12450    );
12451    #[link_name = "zend_ptr_stack_2_pop__extern"]
12452    pub fn zend_ptr_stack_2_pop(
12453        stack: *mut zend_ptr_stack,
12454        a: *mut *mut ::std::os::raw::c_void,
12455        b: *mut *mut ::std::os::raw::c_void,
12456    );
12457    #[link_name = "zend_ptr_stack_push__extern"]
12458    pub fn zend_ptr_stack_push(stack: *mut zend_ptr_stack, ptr: *mut ::std::os::raw::c_void);
12459    #[link_name = "zend_ptr_stack_pop__extern"]
12460    pub fn zend_ptr_stack_pop(stack: *mut zend_ptr_stack) -> *mut ::std::os::raw::c_void;
12461    #[link_name = "zend_ptr_stack_top__extern"]
12462    pub fn zend_ptr_stack_top(stack: *mut zend_ptr_stack) -> *mut ::std::os::raw::c_void;
12463    pub fn zend_object_std_init(object: *mut zend_object, ce: *mut zend_class_entry);
12464    pub fn zend_objects_new(ce: *mut zend_class_entry) -> *mut zend_object;
12465    pub fn zend_objects_fnew(ce: *mut zend_class_entry) -> *mut zend_object;
12466    pub fn zend_objects_clone_members(new_object: *mut zend_object, old_object: *mut zend_object);
12467    pub fn zend_object_std_dtor(object: *mut zend_object);
12468    pub fn zend_objects_destroy_object(object: *mut zend_object);
12469    pub fn zend_objects_clone_obj(object: *mut zend_object) -> *mut zend_object;
12470    pub fn zend_objects_clone_obj_with(
12471        object: *mut zend_object,
12472        scope: *const zend_class_entry,
12473        properties: *const HashTable,
12474    ) -> *mut zend_object;
12475    pub fn zend_object_dtor_dynamic_properties(object: *mut zend_object);
12476    pub fn zend_object_dtor_property(object: *mut zend_object, p: *mut zval);
12477    pub fn zend_objects_store_init(objects: *mut zend_objects_store, init_size: u32);
12478    pub fn zend_objects_store_call_destructors(objects: *mut zend_objects_store);
12479    pub fn zend_objects_store_mark_destructed(objects: *mut zend_objects_store);
12480    pub fn zend_objects_store_free_object_storage(
12481        objects: *mut zend_objects_store,
12482        fast_shutdown: bool,
12483    );
12484    pub fn zend_objects_store_destroy(objects: *mut zend_objects_store);
12485    pub fn zend_objects_store_put(object: *mut zend_object);
12486    pub fn zend_objects_store_del(object: *mut zend_object);
12487    #[link_name = "zend_object_store_ctor_failed__extern"]
12488    pub fn zend_object_store_ctor_failed(obj: *mut zend_object);
12489    #[link_name = "zend_object_release__extern"]
12490    pub fn zend_object_release(obj: *mut zend_object);
12491    #[link_name = "zend_object_properties_size__extern"]
12492    pub fn zend_object_properties_size(ce: *mut zend_class_entry) -> usize;
12493    #[link_name = "zend_object_alloc__extern"]
12494    pub fn zend_object_alloc(
12495        obj_size: usize,
12496        ce: *mut zend_class_entry,
12497    ) -> *mut ::std::os::raw::c_void;
12498    pub fn zend_get_property_info_for_slot_slow(
12499        obj: *mut zend_object,
12500        slot: *mut zval,
12501    ) -> *mut zend_property_info;
12502    #[link_name = "zend_get_property_info_for_slot_self__extern"]
12503    pub fn zend_get_property_info_for_slot_self(
12504        obj: *mut zend_object,
12505        slot: *mut zval,
12506    ) -> *mut zend_property_info;
12507    #[link_name = "zend_get_property_info_for_slot__extern"]
12508    pub fn zend_get_property_info_for_slot(
12509        obj: *mut zend_object,
12510        slot: *mut zval,
12511    ) -> *mut zend_property_info;
12512    #[link_name = "zend_get_typed_property_info_for_slot__extern"]
12513    pub fn zend_get_typed_property_info_for_slot(
12514        obj: *mut zend_object,
12515        slot: *mut zval,
12516    ) -> *mut zend_property_info;
12517    #[link_name = "zend_check_method_accessible__extern"]
12518    pub fn zend_check_method_accessible(
12519        fn_: *const zend_function,
12520        scope: *const zend_class_entry,
12521    ) -> bool;
12522    pub fn zend_init_fpu();
12523    pub fn zend_shutdown_fpu();
12524    pub fn zend_ensure_fpu_mode();
12525    pub static mut zend_multibyte_encoding_utf32be: *const zend_encoding;
12526    pub static mut zend_multibyte_encoding_utf32le: *const zend_encoding;
12527    pub static mut zend_multibyte_encoding_utf16be: *const zend_encoding;
12528    pub static mut zend_multibyte_encoding_utf16le: *const zend_encoding;
12529    pub static mut zend_multibyte_encoding_utf8: *const zend_encoding;
12530    pub fn zend_multibyte_set_functions(functions: *const zend_multibyte_functions) -> zend_result;
12531    pub fn zend_multibyte_restore_functions();
12532    pub fn zend_multibyte_get_functions() -> *const zend_multibyte_functions;
12533    pub fn zend_multibyte_fetch_encoding(
12534        name: *const ::std::os::raw::c_char,
12535    ) -> *const zend_encoding;
12536    pub fn zend_multibyte_get_encoding_name(
12537        encoding: *const zend_encoding,
12538    ) -> *const ::std::os::raw::c_char;
12539    pub fn zend_multibyte_check_lexer_compatibility(
12540        encoding: *const zend_encoding,
12541    ) -> ::std::os::raw::c_int;
12542    pub fn zend_multibyte_encoding_detector(
12543        string: *const ::std::os::raw::c_uchar,
12544        length: usize,
12545        list: *mut *const zend_encoding,
12546        list_size: usize,
12547    ) -> *const zend_encoding;
12548    pub fn zend_multibyte_encoding_converter(
12549        to: *mut *mut ::std::os::raw::c_uchar,
12550        to_length: *mut usize,
12551        from: *const ::std::os::raw::c_uchar,
12552        from_length: usize,
12553        encoding_to: *const zend_encoding,
12554        encoding_from: *const zend_encoding,
12555    ) -> usize;
12556    pub fn zend_multibyte_parse_encoding_list(
12557        encoding_list: *const ::std::os::raw::c_char,
12558        encoding_list_len: usize,
12559        return_list: *mut *mut *const zend_encoding,
12560        return_size: *mut usize,
12561        persistent: bool,
12562    ) -> zend_result;
12563    pub fn zend_multibyte_get_internal_encoding() -> *const zend_encoding;
12564    pub fn zend_multibyte_get_script_encoding() -> *const zend_encoding;
12565    pub fn zend_multibyte_set_script_encoding(
12566        encoding_list: *mut *const zend_encoding,
12567        encoding_list_size: usize,
12568    ) -> zend_result;
12569    pub fn zend_multibyte_set_internal_encoding(encoding: *const zend_encoding) -> zend_result;
12570    pub fn zend_multibyte_set_script_encoding_by_string(
12571        new_value: *const ::std::os::raw::c_char,
12572        new_value_length: usize,
12573    ) -> zend_result;
12574    #[link_name = "zend_arena_create__extern"]
12575    pub fn zend_arena_create(size: usize) -> *mut zend_arena;
12576    #[link_name = "zend_arena_destroy__extern"]
12577    pub fn zend_arena_destroy(arena: *mut zend_arena);
12578    #[link_name = "zend_arena_alloc__extern"]
12579    pub fn zend_arena_alloc(
12580        arena_ptr: *mut *mut zend_arena,
12581        size: usize,
12582    ) -> *mut ::std::os::raw::c_void;
12583    #[link_name = "zend_arena_calloc__extern"]
12584    pub fn zend_arena_calloc(
12585        arena_ptr: *mut *mut zend_arena,
12586        count: usize,
12587        unit_size: usize,
12588    ) -> *mut ::std::os::raw::c_void;
12589    #[link_name = "zend_arena_checkpoint__extern"]
12590    pub fn zend_arena_checkpoint(arena: *mut zend_arena) -> *mut ::std::os::raw::c_void;
12591    #[link_name = "zend_arena_release__extern"]
12592    pub fn zend_arena_release(
12593        arena_ptr: *mut *mut zend_arena,
12594        checkpoint: *mut ::std::os::raw::c_void,
12595    );
12596    #[link_name = "zend_arena_contains__extern"]
12597    pub fn zend_arena_contains(arena: *mut zend_arena, ptr: *mut ::std::os::raw::c_void) -> bool;
12598    pub fn zend_call_stack_init();
12599    pub fn zend_call_stack_get(stack: *mut zend_call_stack) -> bool;
12600    #[doc = " Returns an approximation of the current stack position"]
12601    #[link_name = "zend_call_stack_position__extern"]
12602    pub fn zend_call_stack_position() -> *mut ::std::os::raw::c_void;
12603    #[link_name = "zend_call_stack_overflowed__extern"]
12604    pub fn zend_call_stack_overflowed(stack_limit: *mut ::std::os::raw::c_void) -> bool;
12605    #[link_name = "zend_call_stack_limit__extern"]
12606    pub fn zend_call_stack_limit(
12607        base: *mut ::std::os::raw::c_void,
12608        size: usize,
12609        reserved_size: usize,
12610    ) -> *mut ::std::os::raw::c_void;
12611    #[link_name = "zend_call_stack_default_size__extern"]
12612    pub fn zend_call_stack_default_size() -> usize;
12613    pub fn init_compiler();
12614    pub fn shutdown_compiler();
12615    pub fn zend_init_compiler_data_structures();
12616    pub fn zend_oparray_context_begin(
12617        prev_context: *mut zend_oparray_context,
12618        op_array: *mut zend_op_array,
12619    );
12620    pub fn zend_oparray_context_end(prev_context: *mut zend_oparray_context);
12621    pub fn zend_file_context_begin(prev_context: *mut zend_file_context);
12622    pub fn zend_file_context_end(prev_context: *mut zend_file_context);
12623    pub static mut zend_compile_file: ::std::option::Option<
12624        unsafe extern "C" fn(
12625            file_handle: *mut zend_file_handle,
12626            type_: ::std::os::raw::c_int,
12627        ) -> *mut zend_op_array,
12628    >;
12629    pub static mut zend_compile_string: ::std::option::Option<
12630        unsafe extern "C" fn(
12631            source_string: *mut zend_string,
12632            filename: *const ::std::os::raw::c_char,
12633            position: zend_compile_position,
12634        ) -> *mut zend_op_array,
12635    >;
12636    pub fn lex_scan(
12637        zendlval: *mut zval,
12638        elem: *mut zend_parser_stack_elem,
12639    ) -> ::std::os::raw::c_int;
12640    pub fn startup_scanner();
12641    pub fn shutdown_scanner();
12642    pub fn zend_set_compiled_filename(new_compiled_filename: *mut zend_string) -> *mut zend_string;
12643    pub fn zend_restore_compiled_filename(original_compiled_filename: *mut zend_string);
12644    pub fn zend_get_compiled_filename() -> *mut zend_string;
12645    pub fn zend_get_compiled_lineno() -> ::std::os::raw::c_int;
12646    pub fn zend_get_scanned_file_offset() -> usize;
12647    pub fn zend_get_compiled_variable_name(
12648        op_array: *const zend_op_array,
12649        var: u32,
12650    ) -> *mut zend_string;
12651    pub fn get_unary_op(opcode: ::std::os::raw::c_int) -> unary_op_type;
12652    pub fn get_binary_op(opcode: ::std::os::raw::c_int) -> binary_op_type;
12653    pub fn zend_stop_lexing();
12654    pub fn zend_emit_final_return(return_one: bool);
12655    pub fn zend_ast_append_str(left: *mut zend_ast, right: *mut zend_ast) -> *mut zend_ast;
12656    pub fn zend_negate_num_string(ast: *mut zend_ast) -> *mut zend_ast;
12657    pub fn zend_add_class_modifier(flags: u32, new_flag: u32) -> u32;
12658    pub fn zend_add_anonymous_class_modifier(flags: u32, new_flag: u32) -> u32;
12659    pub fn zend_add_member_modifier(
12660        flags: u32,
12661        new_flag: u32,
12662        target: zend_modifier_target::Type,
12663    ) -> u32;
12664    pub fn zend_modifier_token_to_flag(target: zend_modifier_target::Type, flags: u32) -> u32;
12665    pub fn zend_modifier_list_to_flags(
12666        target: zend_modifier_target::Type,
12667        modifiers: *mut zend_ast,
12668    ) -> u32;
12669    pub fn zend_handle_encoding_declaration(ast: *mut zend_ast) -> bool;
12670    pub fn zend_bind_class_in_slot(
12671        class_table_slot: *mut zval,
12672        lcname: *mut zval,
12673        lc_parent_name: *mut zend_string,
12674    ) -> *mut zend_class_entry;
12675    pub fn do_bind_function(func: *mut zend_function, lcname: *mut zval) -> zend_result;
12676    pub fn do_bind_class(lcname: *mut zval, lc_parent_name: *mut zend_string) -> zend_result;
12677    pub fn zend_resolve_goto_label(op_array: *mut zend_op_array, opline: *mut zend_op);
12678    pub fn function_add_ref(function: *mut zend_function);
12679    pub fn zval_make_interned_string(zv: *mut zval) -> *mut zend_string;
12680    pub fn compile_file(
12681        file_handle: *mut zend_file_handle,
12682        type_: ::std::os::raw::c_int,
12683    ) -> *mut zend_op_array;
12684    pub fn compile_string(
12685        source_string: *mut zend_string,
12686        filename: *const ::std::os::raw::c_char,
12687        position: zend_compile_position,
12688    ) -> *mut zend_op_array;
12689    pub fn compile_filename(
12690        type_: ::std::os::raw::c_int,
12691        filename: *mut zend_string,
12692    ) -> *mut zend_op_array;
12693    pub fn zend_compile_string_to_ast(
12694        code: *mut zend_string,
12695        ast_arena: *mut *mut _zend_arena,
12696        filename: *mut zend_string,
12697    ) -> *mut zend_ast;
12698    pub fn zend_execute_scripts(
12699        type_: ::std::os::raw::c_int,
12700        retval: *mut zval,
12701        file_count: ::std::os::raw::c_int,
12702        ...
12703    ) -> zend_result;
12704    pub fn zend_execute_script(
12705        type_: ::std::os::raw::c_int,
12706        retval: *mut zval,
12707        file_handle: *mut zend_file_handle,
12708    ) -> zend_result;
12709    pub fn open_file_for_scanning(file_handle: *mut zend_file_handle) -> zend_result;
12710    pub fn init_op_array(
12711        op_array: *mut zend_op_array,
12712        type_: u8,
12713        initial_ops_size: ::std::os::raw::c_int,
12714    );
12715    pub fn destroy_op_array(op_array: *mut zend_op_array);
12716    pub fn zend_destroy_static_vars(op_array: *mut zend_op_array);
12717    pub fn zend_cleanup_mutable_class_data(ce: *mut zend_class_entry);
12718    pub fn zend_cleanup_internal_class_data(ce: *mut zend_class_entry);
12719    pub fn zend_type_release(type_: zend_type, persistent: bool);
12720    pub fn zend_create_member_string(
12721        class_name: *mut zend_string,
12722        member_name: *mut zend_string,
12723    ) -> *mut zend_string;
12724    pub fn zend_user_exception_handler();
12725    pub fn zend_free_internal_arg_info(function: *mut zend_internal_function);
12726    pub fn destroy_zend_function(function: *mut zend_function);
12727    pub fn zend_function_dtor(zv: *mut zval);
12728    pub fn destroy_zend_class(zv: *mut zval);
12729    pub fn zend_class_add_ref(zv: *mut zval);
12730    pub fn zend_mangle_property_name(
12731        src1: *const ::std::os::raw::c_char,
12732        src1_length: usize,
12733        src2: *const ::std::os::raw::c_char,
12734        src2_length: usize,
12735        internal: bool,
12736    ) -> *mut zend_string;
12737    pub fn zend_unmangle_property_name_ex(
12738        name: *const zend_string,
12739        class_name: *mut *const ::std::os::raw::c_char,
12740        prop_name: *mut *const ::std::os::raw::c_char,
12741        prop_len: *mut usize,
12742    ) -> zend_result;
12743    #[link_name = "zend_get_unmangled_property_name__extern"]
12744    pub fn zend_get_unmangled_property_name(
12745        mangled_prop: *const zend_string,
12746    ) -> *const ::std::os::raw::c_char;
12747    pub fn zend_recalc_live_ranges(
12748        op_array: *mut zend_op_array,
12749        needs_live_range: zend_needs_live_range_cb,
12750    );
12751    pub fn pass_two(op_array: *mut zend_op_array);
12752    pub fn zend_is_compiling() -> bool;
12753    pub fn zend_make_compiled_string_description(
12754        name: *const ::std::os::raw::c_char,
12755    ) -> *mut ::std::os::raw::c_char;
12756    pub fn zend_initialize_class_data(ce: *mut zend_class_entry, nullify_handlers: bool);
12757    pub fn zend_get_class_fetch_type(name: *const zend_string) -> u32;
12758    pub fn zend_get_call_op(
12759        init_op: *const zend_op,
12760        fbc: *mut zend_function,
12761        result_used: bool,
12762    ) -> u8;
12763    pub fn zend_is_smart_branch(opline: *const zend_op) -> bool;
12764    pub fn zend_register_auto_global(
12765        name: *mut zend_string,
12766        jit: bool,
12767        auto_global_callback: zend_auto_global_callback,
12768    ) -> zend_result;
12769    pub fn zend_activate_auto_globals();
12770    pub fn zend_is_auto_global(name: *mut zend_string) -> bool;
12771    pub fn zend_is_auto_global_str(name: *const ::std::os::raw::c_char, len: usize) -> bool;
12772    pub fn zend_dirname(path: *mut ::std::os::raw::c_char, len: usize) -> usize;
12773    pub fn zend_set_function_arg_flags(func: *mut zend_function);
12774    pub fn zendlex(elem: *mut zend_parser_stack_elem) -> ::std::os::raw::c_int;
12775    pub fn zend_assert_valid_class_name(
12776        const_name: *const zend_string,
12777        type_: *const ::std::os::raw::c_char,
12778    );
12779    pub fn zend_type_to_string_resolved(
12780        type_: zend_type,
12781        scope: *mut zend_class_entry,
12782    ) -> *mut zend_string;
12783    pub fn zend_type_to_string(type_: zend_type) -> *mut zend_string;
12784    #[link_name = "zend_check_arg_send_type__extern"]
12785    pub fn zend_check_arg_send_type(zf: *const zend_function, arg_num: u32, mask: u32) -> bool;
12786    pub fn zend_is_op_long_compatible(op: *const zval) -> bool;
12787    pub fn zend_binary_op_produces_error(opcode: u32, op1: *const zval, op2: *const zval) -> bool;
12788    pub fn zend_unary_op_produces_error(opcode: u32, op: *const zval) -> bool;
12789    pub fn zend_try_ct_eval_cast(result: *mut zval, type_: u32, op1: *mut zval) -> bool;
12790    pub static mut module_registry: HashTable;
12791    pub fn module_destructor(module: *mut zend_module_entry);
12792    pub fn module_registry_request_startup(module: *mut zend_module_entry)
12793    -> ::std::os::raw::c_int;
12794    pub fn module_registry_unload(module: *const zend_module_entry);
12795    pub fn zend_register_list_destructors_ex(
12796        ld: rsrc_dtor_func_t,
12797        pld: rsrc_dtor_func_t,
12798        type_name: *const ::std::os::raw::c_char,
12799        module_number: ::std::os::raw::c_int,
12800    ) -> ::std::os::raw::c_int;
12801    pub fn list_entry_destructor(ptr: *mut zval);
12802    pub fn plist_entry_destructor(ptr: *mut zval);
12803    pub fn zend_clean_module_rsrc_dtors(module_number: ::std::os::raw::c_int);
12804    pub fn zend_init_rsrc_list();
12805    pub fn zend_init_rsrc_plist();
12806    pub fn zend_close_rsrc_list(ht: *mut HashTable);
12807    pub fn zend_destroy_rsrc_list(ht: *mut HashTable);
12808    pub fn zend_init_rsrc_list_dtors();
12809    pub fn zend_destroy_rsrc_list_dtors();
12810    pub fn zend_list_insert(
12811        ptr: *mut ::std::os::raw::c_void,
12812        type_: ::std::os::raw::c_int,
12813    ) -> *mut zval;
12814    pub fn zend_list_free(res: *mut zend_resource);
12815    pub fn zend_list_delete(res: *mut zend_resource) -> zend_result;
12816    pub fn zend_list_close(res: *mut zend_resource);
12817    pub fn zend_register_resource(
12818        rsrc_pointer: *mut ::std::os::raw::c_void,
12819        rsrc_type: ::std::os::raw::c_int,
12820    ) -> *mut zend_resource;
12821    pub fn zend_fetch_resource(
12822        res: *mut zend_resource,
12823        resource_type_name: *const ::std::os::raw::c_char,
12824        resource_type: ::std::os::raw::c_int,
12825    ) -> *mut ::std::os::raw::c_void;
12826    pub fn zend_fetch_resource2(
12827        res: *mut zend_resource,
12828        resource_type_name: *const ::std::os::raw::c_char,
12829        resource_type: ::std::os::raw::c_int,
12830        resource_type2: ::std::os::raw::c_int,
12831    ) -> *mut ::std::os::raw::c_void;
12832    pub fn zend_fetch_resource_ex(
12833        res: *mut zval,
12834        resource_type_name: *const ::std::os::raw::c_char,
12835        resource_type: ::std::os::raw::c_int,
12836    ) -> *mut ::std::os::raw::c_void;
12837    pub fn zend_fetch_resource2_ex(
12838        res: *mut zval,
12839        resource_type_name: *const ::std::os::raw::c_char,
12840        resource_type: ::std::os::raw::c_int,
12841        resource_type2: ::std::os::raw::c_int,
12842    ) -> *mut ::std::os::raw::c_void;
12843    pub fn zend_rsrc_list_get_rsrc_type(res: *mut zend_resource) -> *const ::std::os::raw::c_char;
12844    pub fn zend_fetch_list_dtor_id(
12845        type_name: *const ::std::os::raw::c_char,
12846    ) -> ::std::os::raw::c_int;
12847    pub fn zend_register_persistent_resource(
12848        key: *const ::std::os::raw::c_char,
12849        key_len: usize,
12850        rsrc_pointer: *mut ::std::os::raw::c_void,
12851        rsrc_type: ::std::os::raw::c_int,
12852    ) -> *mut zend_resource;
12853    pub fn zend_register_persistent_resource_ex(
12854        key: *mut zend_string,
12855        rsrc_pointer: *mut ::std::os::raw::c_void,
12856        rsrc_type: ::std::os::raw::c_int,
12857    ) -> *mut zend_resource;
12858    pub static mut le_index_ptr: ::std::os::raw::c_int;
12859    pub fn clean_module_constants(module_number: ::std::os::raw::c_int);
12860    pub fn free_zend_constant(zv: *mut zval);
12861    pub fn zend_startup_constants();
12862    pub fn zend_register_standard_constants();
12863    pub fn zend_verify_const_access(c: *mut zend_class_constant, ce: *mut zend_class_entry)
12864    -> bool;
12865    pub fn zend_get_constant(name: *mut zend_string) -> *mut zval;
12866    pub fn zend_get_constant_ptr(name: *mut zend_string) -> *mut zend_constant;
12867    pub fn zend_get_constant_str(name: *const ::std::os::raw::c_char, name_len: usize)
12868    -> *mut zval;
12869    pub fn zend_get_constant_ex(
12870        name: *mut zend_string,
12871        scope: *mut zend_class_entry,
12872        flags: u32,
12873    ) -> *mut zval;
12874    pub fn zend_get_class_constant_ex(
12875        class_name: *mut zend_string,
12876        constant_name: *mut zend_string,
12877        scope: *mut zend_class_entry,
12878        flags: u32,
12879    ) -> *mut zval;
12880    pub fn zend_register_bool_constant(
12881        name: *const ::std::os::raw::c_char,
12882        name_len: usize,
12883        bval: bool,
12884        flags: ::std::os::raw::c_int,
12885        module_number: ::std::os::raw::c_int,
12886    ) -> *mut zend_constant;
12887    pub fn zend_register_null_constant(
12888        name: *const ::std::os::raw::c_char,
12889        name_len: usize,
12890        flags: ::std::os::raw::c_int,
12891        module_number: ::std::os::raw::c_int,
12892    ) -> *mut zend_constant;
12893    pub fn zend_register_long_constant(
12894        name: *const ::std::os::raw::c_char,
12895        name_len: usize,
12896        lval: zend_long,
12897        flags: ::std::os::raw::c_int,
12898        module_number: ::std::os::raw::c_int,
12899    ) -> *mut zend_constant;
12900    pub fn zend_register_double_constant(
12901        name: *const ::std::os::raw::c_char,
12902        name_len: usize,
12903        dval: f64,
12904        flags: ::std::os::raw::c_int,
12905        module_number: ::std::os::raw::c_int,
12906    ) -> *mut zend_constant;
12907    pub fn zend_register_string_constant(
12908        name: *const ::std::os::raw::c_char,
12909        name_len: usize,
12910        strval: *const ::std::os::raw::c_char,
12911        flags: ::std::os::raw::c_int,
12912        module_number: ::std::os::raw::c_int,
12913    ) -> *mut zend_constant;
12914    pub fn zend_register_stringl_constant(
12915        name: *const ::std::os::raw::c_char,
12916        name_len: usize,
12917        strval: *const ::std::os::raw::c_char,
12918        strlen: usize,
12919        flags: ::std::os::raw::c_int,
12920        module_number: ::std::os::raw::c_int,
12921    ) -> *mut zend_constant;
12922    pub fn zend_register_constant(c: *mut zend_constant) -> *mut zend_constant;
12923    pub fn zend_constant_add_attributes(c: *mut zend_constant, attributes: *mut HashTable);
12924    pub fn _zend_get_special_const(
12925        name: *const ::std::os::raw::c_char,
12926        name_len: usize,
12927    ) -> *mut zend_constant;
12928    #[link_name = "zend_get_special_const__extern"]
12929    pub fn zend_get_special_const(
12930        name: *const ::std::os::raw::c_char,
12931        name_len: usize,
12932    ) -> *mut zend_constant;
12933    pub static mut zend_execute_ex:
12934        ::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
12935    pub static mut zend_execute_internal: ::std::option::Option<
12936        unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval),
12937    >;
12938    pub static mut zend_autoload: ::std::option::Option<
12939        unsafe extern "C" fn(
12940            name: *mut zend_string,
12941            lc_name: *mut zend_string,
12942        ) -> *mut zend_class_entry,
12943    >;
12944    pub fn init_executor();
12945    pub fn shutdown_executor();
12946    pub fn shutdown_destructors();
12947    pub fn zend_shutdown_executor_values(fast_shutdown: bool);
12948    pub fn zend_init_execute_data(
12949        execute_data: *mut zend_execute_data,
12950        op_array: *mut zend_op_array,
12951        return_value: *mut zval,
12952    );
12953    pub fn zend_init_func_execute_data(
12954        execute_data: *mut zend_execute_data,
12955        op_array: *mut zend_op_array,
12956        return_value: *mut zval,
12957    );
12958    pub fn zend_init_code_execute_data(
12959        execute_data: *mut zend_execute_data,
12960        op_array: *mut zend_op_array,
12961        return_value: *mut zval,
12962    );
12963    pub fn zend_execute(op_array: *mut zend_op_array, return_value: *mut zval);
12964    pub fn execute_ex(execute_data: *mut zend_execute_data);
12965    pub fn execute_internal(execute_data: *mut zend_execute_data, return_value: *mut zval);
12966    pub fn zend_is_valid_class_name(name: *mut zend_string) -> bool;
12967    pub fn zend_lookup_class(name: *mut zend_string) -> *mut zend_class_entry;
12968    pub fn zend_lookup_class_ex(
12969        name: *mut zend_string,
12970        lcname: *mut zend_string,
12971        flags: u32,
12972    ) -> *mut zend_class_entry;
12973    pub fn zend_get_called_scope(ex: *mut zend_execute_data) -> *mut zend_class_entry;
12974    pub fn zend_get_this_object(ex: *mut zend_execute_data) -> *mut zend_object;
12975    pub fn zend_eval_string(
12976        str_: *const ::std::os::raw::c_char,
12977        retval_ptr: *mut zval,
12978        string_name: *const ::std::os::raw::c_char,
12979    ) -> zend_result;
12980    pub fn zend_eval_stringl(
12981        str_: *const ::std::os::raw::c_char,
12982        str_len: usize,
12983        retval_ptr: *mut zval,
12984        string_name: *const ::std::os::raw::c_char,
12985    ) -> zend_result;
12986    pub fn zend_eval_string_ex(
12987        str_: *const ::std::os::raw::c_char,
12988        retval_ptr: *mut zval,
12989        string_name: *const ::std::os::raw::c_char,
12990        handle_exceptions: bool,
12991    ) -> zend_result;
12992    pub fn zend_eval_stringl_ex(
12993        str_: *const ::std::os::raw::c_char,
12994        str_len: usize,
12995        retval_ptr: *mut zval,
12996        string_name: *const ::std::os::raw::c_char,
12997        handle_exceptions: bool,
12998    ) -> zend_result;
12999    pub static zend_pass_function: zend_internal_function;
13000    pub fn zend_missing_arg_error(execute_data: *const zend_execute_data);
13001    pub fn zend_deprecated_function(fbc: *const zend_function);
13002    pub fn zend_nodiscard_function(fbc: *const zend_function);
13003    pub fn zend_deprecated_class_constant(
13004        c: *const zend_class_constant,
13005        constant_name: *const zend_string,
13006    );
13007    pub fn zend_deprecated_constant(c: *const zend_constant, constant_name: *const zend_string);
13008    pub fn zend_use_of_deprecated_trait(trait_: *mut zend_class_entry, used_by: *const zend_string);
13009    pub fn zend_false_to_array_deprecated();
13010    pub fn zend_param_must_be_ref(func: *const zend_function, arg_num: u32);
13011    pub fn zend_use_resource_as_offset(dim: *const zval);
13012    pub fn zend_call_stack_size_error();
13013    pub fn zend_verify_ref_assignable_zval(
13014        ref_: *mut zend_reference,
13015        zv: *mut zval,
13016        strict: bool,
13017    ) -> bool;
13018    pub fn zend_verify_prop_assignable_by_ref_ex(
13019        prop_info: *const zend_property_info,
13020        orig_val: *mut zval,
13021        strict: bool,
13022        context: zend_verify_prop_assignable_by_ref_context::Type,
13023    ) -> bool;
13024    pub fn zend_verify_prop_assignable_by_ref(
13025        prop_info: *const zend_property_info,
13026        orig_val: *mut zval,
13027        strict: bool,
13028    ) -> bool;
13029    pub fn zend_throw_ref_type_error_zval(prop: *const zend_property_info, zv: *const zval);
13030    pub fn zend_throw_ref_type_error_type(
13031        prop1: *const zend_property_info,
13032        prop2: *const zend_property_info,
13033        zv: *const zval,
13034    );
13035    pub fn zend_undefined_offset_write(ht: *mut HashTable, lval: zend_long) -> *mut zval;
13036    pub fn zend_undefined_index_write(ht: *mut HashTable, offset: *mut zend_string) -> *mut zval;
13037    pub fn zend_wrong_string_offset_error();
13038    pub fn zend_readonly_property_modification_error(info: *const zend_property_info);
13039    pub fn zend_readonly_property_modification_error_ex(
13040        class_name: *const ::std::os::raw::c_char,
13041        prop_name: *const ::std::os::raw::c_char,
13042    );
13043    pub fn zend_readonly_property_indirect_modification_error(info: *const zend_property_info);
13044    pub fn zend_invalid_class_constant_type_error(type_: u8);
13045    pub fn zend_object_released_while_assigning_to_property_error(info: *const zend_property_info);
13046    pub fn zend_cannot_add_element();
13047    pub fn zend_asymmetric_visibility_property_modification_error(
13048        prop_info: *const zend_property_info,
13049        operation: *const ::std::os::raw::c_char,
13050    );
13051    pub fn zend_verify_scalar_type_hint(
13052        type_mask: u32,
13053        arg: *mut zval,
13054        strict: bool,
13055        is_internal_arg: bool,
13056    ) -> bool;
13057    pub fn zend_verify_arg_error(
13058        zf: *const zend_function,
13059        arg_info: *const zend_arg_info,
13060        arg_num: u32,
13061        value: *const zval,
13062    );
13063    pub fn zend_verify_return_error(zf: *const zend_function, value: *const zval);
13064    pub fn zend_verify_never_error(zf: *const zend_function);
13065    pub fn zend_verify_ref_array_assignable(ref_: *mut zend_reference) -> bool;
13066    pub fn zend_check_user_type_slow(
13067        type_: *const zend_type,
13068        arg: *mut zval,
13069        ref_: *const zend_reference,
13070        is_return_type: bool,
13071    ) -> bool;
13072    pub fn zend_internal_call_should_throw(
13073        fbc: *const zend_function,
13074        call: *mut zend_execute_data,
13075    ) -> bool;
13076    pub fn zend_internal_call_arginfo_violation(fbc: *const zend_function);
13077    pub fn zend_verify_internal_return_type(zf: *const zend_function, ret: *mut zval) -> bool;
13078    pub fn zend_ref_add_type_source(
13079        source_list: *mut zend_property_info_source_list,
13080        prop: *mut zend_property_info,
13081    );
13082    pub fn zend_ref_del_type_source(
13083        source_list: *mut zend_property_info_source_list,
13084        prop: *const zend_property_info,
13085    );
13086    pub fn zend_assign_to_typed_ref(
13087        variable_ptr: *mut zval,
13088        value: *mut zval,
13089        value_type: u8,
13090        strict: bool,
13091    ) -> *mut zval;
13092    pub fn zend_assign_to_typed_ref_ex(
13093        variable_ptr: *mut zval,
13094        value: *mut zval,
13095        value_type: u8,
13096        strict: bool,
13097        garbage_ptr: *mut *mut zend_refcounted,
13098    ) -> *mut zval;
13099    #[link_name = "zend_copy_to_variable__extern"]
13100    pub fn zend_copy_to_variable(variable_ptr: *mut zval, value: *mut zval, value_type: u8);
13101    #[link_name = "zend_assign_to_variable__extern"]
13102    pub fn zend_assign_to_variable(
13103        variable_ptr: *mut zval,
13104        value: *mut zval,
13105        value_type: u8,
13106        strict: bool,
13107    ) -> *mut zval;
13108    #[link_name = "zend_assign_to_variable_ex__extern"]
13109    pub fn zend_assign_to_variable_ex(
13110        variable_ptr: *mut zval,
13111        value: *mut zval,
13112        value_type: zend_uchar,
13113        strict: bool,
13114        garbage_ptr: *mut *mut zend_refcounted,
13115    ) -> *mut zval;
13116    #[link_name = "zend_safe_assign_to_variable_noref__extern"]
13117    pub fn zend_safe_assign_to_variable_noref(variable_ptr: *mut zval, value: *mut zval);
13118    #[link_name = "zend_cast_zval_to_object__extern"]
13119    pub fn zend_cast_zval_to_object(result: *mut zval, expr: *mut zval, op1_type: u8);
13120    #[link_name = "zend_cast_zval_to_array__extern"]
13121    pub fn zend_cast_zval_to_array(result: *mut zval, expr: *mut zval, op1_type: u8);
13122    pub fn zval_update_constant(pp: *mut zval) -> zend_result;
13123    pub fn zval_update_constant_ex(pp: *mut zval, scope: *mut zend_class_entry) -> zend_result;
13124    pub fn zval_update_constant_with_ctx(
13125        pp: *mut zval,
13126        scope: *mut zend_class_entry,
13127        ctx: *mut zend_ast_evaluate_ctx,
13128    ) -> zend_result;
13129    pub fn zend_vm_stack_init();
13130    pub fn zend_vm_stack_init_ex(page_size: usize);
13131    pub fn zend_vm_stack_destroy();
13132    pub fn zend_vm_stack_extend(size: usize) -> *mut ::std::os::raw::c_void;
13133    #[link_name = "zend_vm_stack_new_page__extern"]
13134    pub fn zend_vm_stack_new_page(size: usize, prev: zend_vm_stack) -> zend_vm_stack;
13135    #[link_name = "zend_vm_init_call_frame__extern"]
13136    pub fn zend_vm_init_call_frame(
13137        call: *mut zend_execute_data,
13138        call_info: u32,
13139        func: *mut zend_function,
13140        num_args: u32,
13141        object_or_called_scope: *mut ::std::os::raw::c_void,
13142    );
13143    #[link_name = "zend_vm_stack_push_call_frame_ex__extern"]
13144    pub fn zend_vm_stack_push_call_frame_ex(
13145        used_stack: u32,
13146        call_info: u32,
13147        func: *mut zend_function,
13148        num_args: u32,
13149        object_or_called_scope: *mut ::std::os::raw::c_void,
13150    ) -> *mut zend_execute_data;
13151    #[link_name = "zend_vm_calc_used_stack__extern"]
13152    pub fn zend_vm_calc_used_stack(num_args: u32, func: *mut zend_function) -> u32;
13153    #[link_name = "zend_vm_stack_push_call_frame__extern"]
13154    pub fn zend_vm_stack_push_call_frame(
13155        call_info: u32,
13156        func: *mut zend_function,
13157        num_args: u32,
13158        object_or_called_scope: *mut ::std::os::raw::c_void,
13159    ) -> *mut zend_execute_data;
13160    #[link_name = "zend_vm_stack_free_extra_args_ex__extern"]
13161    pub fn zend_vm_stack_free_extra_args_ex(call_info: u32, call: *mut zend_execute_data);
13162    #[link_name = "zend_vm_stack_free_extra_args__extern"]
13163    pub fn zend_vm_stack_free_extra_args(call: *mut zend_execute_data);
13164    #[link_name = "zend_vm_stack_free_args__extern"]
13165    pub fn zend_vm_stack_free_args(call: *mut zend_execute_data);
13166    #[link_name = "zend_vm_stack_free_call_frame_ex__extern"]
13167    pub fn zend_vm_stack_free_call_frame_ex(call_info: u32, call: *mut zend_execute_data);
13168    #[link_name = "zend_vm_stack_free_call_frame__extern"]
13169    pub fn zend_vm_stack_free_call_frame(call: *mut zend_execute_data);
13170    pub fn zend_vm_stack_copy_call_frame(
13171        call: *mut zend_execute_data,
13172        passed_args: u32,
13173        additional_args: u32,
13174    ) -> *mut zend_execute_data;
13175    #[link_name = "zend_vm_stack_extend_call_frame__extern"]
13176    pub fn zend_vm_stack_extend_call_frame(
13177        call: *mut *mut zend_execute_data,
13178        passed_args: u32,
13179        additional_args: u32,
13180    );
13181    pub fn zend_free_extra_named_params(extra_named_params: *mut zend_array);
13182    pub fn get_active_class_name(
13183        space: *mut *const ::std::os::raw::c_char,
13184    ) -> *const ::std::os::raw::c_char;
13185    pub fn get_active_function_name() -> *const ::std::os::raw::c_char;
13186    pub fn get_active_function_arg_name(arg_num: u32) -> *const ::std::os::raw::c_char;
13187    pub fn get_function_arg_name(
13188        func: *const zend_function,
13189        arg_num: u32,
13190    ) -> *const ::std::os::raw::c_char;
13191    pub fn zend_active_function_ex(execute_data: *mut zend_execute_data) -> *mut zend_function;
13192    #[link_name = "zend_active_function__extern"]
13193    pub fn zend_active_function() -> *mut zend_function;
13194    pub fn get_active_function_or_method_name() -> *mut zend_string;
13195    pub fn get_function_or_method_name(func: *const zend_function) -> *mut zend_string;
13196    pub fn zend_get_executed_filename() -> *const ::std::os::raw::c_char;
13197    pub fn zend_get_executed_filename_ex() -> *mut zend_string;
13198    pub fn zend_get_executed_lineno() -> u32;
13199    pub fn zend_get_executed_scope() -> *mut zend_class_entry;
13200    pub fn zend_is_executing() -> bool;
13201    pub fn zend_cannot_pass_by_reference(arg_num: u32);
13202    pub fn zend_set_timeout(seconds: zend_long, reset_signals: bool);
13203    pub fn zend_unset_timeout();
13204    pub fn zend_timeout() -> !;
13205    pub fn zend_fetch_class(class_name: *mut zend_string, fetch_type: u32)
13206    -> *mut zend_class_entry;
13207    pub fn zend_fetch_class_with_scope(
13208        class_name: *mut zend_string,
13209        fetch_type: u32,
13210        scope: *mut zend_class_entry,
13211    ) -> *mut zend_class_entry;
13212    pub fn zend_fetch_class_by_name(
13213        class_name: *mut zend_string,
13214        lcname: *mut zend_string,
13215        fetch_type: u32,
13216    ) -> *mut zend_class_entry;
13217    pub fn zend_fetch_function(name: *mut zend_string) -> *mut zend_function;
13218    pub fn zend_fetch_function_str(
13219        name: *const ::std::os::raw::c_char,
13220        len: usize,
13221    ) -> *mut zend_function;
13222    pub fn zend_init_func_run_time_cache(op_array: *mut zend_op_array);
13223    pub fn zend_fetch_dimension_const(
13224        result: *mut zval,
13225        container: *mut zval,
13226        dim: *mut zval,
13227        type_: ::std::os::raw::c_int,
13228    );
13229    pub fn zend_get_compiled_variable_value(
13230        execute_data_ptr: *const zend_execute_data,
13231        var: u32,
13232    ) -> *mut zval;
13233    pub fn zend_gcc_global_regs() -> bool;
13234    pub fn zend_set_user_opcode_handler(opcode: u8, handler: user_opcode_handler_t) -> zend_result;
13235    pub fn zend_get_user_opcode_handler(opcode: u8) -> user_opcode_handler_t;
13236    pub fn zend_get_zval_ptr(
13237        opline: *const zend_op,
13238        op_type: ::std::os::raw::c_int,
13239        node: *const znode_op,
13240        execute_data: *const zend_execute_data,
13241    ) -> *mut zval;
13242    pub fn zend_clean_and_cache_symbol_table(symbol_table: *mut zend_array);
13243    pub fn zend_free_compiled_variables(execute_data: *mut zend_execute_data);
13244    pub fn zend_unfinished_calls_gc(
13245        execute_data: *mut zend_execute_data,
13246        call: *mut zend_execute_data,
13247        op_num: u32,
13248        buf: *mut zend_get_gc_buffer,
13249    );
13250    pub fn zend_cleanup_unfinished_execution(
13251        execute_data: *mut zend_execute_data,
13252        op_num: u32,
13253        catch_op_num: u32,
13254    );
13255    pub fn zend_unfinished_execution_gc(
13256        execute_data: *mut zend_execute_data,
13257        call: *mut zend_execute_data,
13258        gc_buffer: *mut zend_get_gc_buffer,
13259    ) -> *mut HashTable;
13260    pub fn zend_unfinished_execution_gc_ex(
13261        execute_data: *mut zend_execute_data,
13262        call: *mut zend_execute_data,
13263        gc_buffer: *mut zend_get_gc_buffer,
13264        suspended_by_yield: bool,
13265    ) -> *mut HashTable;
13266    pub fn zend_fetch_static_property(
13267        ex: *mut zend_execute_data,
13268        fetch_type: ::std::os::raw::c_int,
13269    ) -> *mut zval;
13270    pub fn zend_undefined_method(ce: *const zend_class_entry, method: *const zend_string);
13271    pub fn zend_non_static_method_call(fbc: *const zend_function);
13272    pub fn zend_frameless_observed_call(execute_data: *mut zend_execute_data);
13273    pub fn zend_handle_named_arg(
13274        call_ptr: *mut *mut zend_execute_data,
13275        arg_name: *mut zend_string,
13276        arg_num_ptr: *mut u32,
13277        cache_slot: *mut *mut ::std::os::raw::c_void,
13278    ) -> *mut zval;
13279    pub fn zend_handle_undef_args(call: *mut zend_execute_data) -> zend_result;
13280    pub fn zend_verify_class_constant_type(
13281        c: *const zend_class_constant,
13282        name: *const zend_string,
13283        constant: *mut zval,
13284    ) -> bool;
13285    pub fn zend_verify_class_constant_type_error(
13286        c: *const zend_class_constant,
13287        name: *const zend_string,
13288        constant: *const zval,
13289    );
13290    pub fn zend_verify_property_type(
13291        info: *const zend_property_info,
13292        property: *mut zval,
13293        strict: bool,
13294    ) -> bool;
13295    pub fn zend_verify_property_type_error(info: *const zend_property_info, property: *const zval);
13296    pub fn zend_magic_get_property_type_inconsistency_error(
13297        info: *const zend_property_info,
13298        property: *const zval,
13299    );
13300    pub fn zend_match_unhandled_error(value: *const zval);
13301    pub fn zend_fcall_interrupt(call: *mut zend_execute_data);
13302    #[link_name = "zend_get_bad_ptr__extern"]
13303    pub fn zend_get_bad_ptr() -> *mut ::std::os::raw::c_void;
13304    pub fn zend_next_free_module() -> ::std::os::raw::c_int;
13305    pub fn zend_set_dl_use_deepbind(use_deepbind: bool);
13306    pub fn zend_get_parameters_array_ex(param_count: u32, argument_array: *mut zval)
13307    -> zend_result;
13308    pub fn zend_copy_parameters_array(param_count: u32, argument_array: *mut zval) -> zend_result;
13309    pub fn zend_parse_parameters(
13310        num_args: u32,
13311        type_spec: *const ::std::os::raw::c_char,
13312        ...
13313    ) -> zend_result;
13314    pub fn zend_parse_parameters_ex(
13315        flags: ::std::os::raw::c_int,
13316        num_args: u32,
13317        type_spec: *const ::std::os::raw::c_char,
13318        ...
13319    ) -> zend_result;
13320    pub fn zend_zval_type_name(arg: *const zval) -> *const ::std::os::raw::c_char;
13321    pub fn zend_zval_value_name(arg: *const zval) -> *const ::std::os::raw::c_char;
13322    pub fn zend_zval_get_legacy_type(arg: *const zval) -> *mut zend_string;
13323    pub fn zend_parse_method_parameters(
13324        num_args: u32,
13325        this_ptr: *mut zval,
13326        type_spec: *const ::std::os::raw::c_char,
13327        ...
13328    ) -> zend_result;
13329    pub fn zend_parse_method_parameters_ex(
13330        flags: ::std::os::raw::c_int,
13331        num_args: u32,
13332        this_ptr: *mut zval,
13333        type_spec: *const ::std::os::raw::c_char,
13334        ...
13335    ) -> zend_result;
13336    pub fn zend_parse_parameter(
13337        flags: ::std::os::raw::c_int,
13338        arg_num: u32,
13339        arg: *mut zval,
13340        spec: *const ::std::os::raw::c_char,
13341        ...
13342    ) -> zend_result;
13343    pub fn zend_register_functions(
13344        scope: *mut zend_class_entry,
13345        functions: *const zend_function_entry,
13346        function_table: *mut HashTable,
13347        type_: ::std::os::raw::c_int,
13348    ) -> zend_result;
13349    pub fn zend_unregister_functions(
13350        functions: *const zend_function_entry,
13351        count: ::std::os::raw::c_int,
13352        function_table: *mut HashTable,
13353    );
13354    pub fn zend_startup_module(module_entry: *mut zend_module_entry) -> zend_result;
13355    pub fn zend_register_internal_module(
13356        module_entry: *mut zend_module_entry,
13357    ) -> *mut zend_module_entry;
13358    pub fn zend_register_module_ex(
13359        module: *mut zend_module_entry,
13360        module_type: ::std::os::raw::c_int,
13361    ) -> *mut zend_module_entry;
13362    pub fn zend_startup_module_ex(module: *mut zend_module_entry) -> zend_result;
13363    pub fn zend_startup_modules();
13364    pub fn zend_collect_module_handlers();
13365    pub fn zend_destroy_modules();
13366    pub fn zend_check_magic_method_implementation(
13367        ce: *const zend_class_entry,
13368        fptr: *const zend_function,
13369        lcname: *mut zend_string,
13370        error_type: ::std::os::raw::c_int,
13371    );
13372    pub fn zend_add_magic_method(
13373        ce: *mut zend_class_entry,
13374        fptr: *mut zend_function,
13375        lcname: *mut zend_string,
13376    );
13377    pub fn zend_register_internal_class(
13378        class_entry: *mut zend_class_entry,
13379    ) -> *mut zend_class_entry;
13380    pub fn zend_register_internal_class_ex(
13381        class_entry: *mut zend_class_entry,
13382        parent_ce: *mut zend_class_entry,
13383    ) -> *mut zend_class_entry;
13384    pub fn zend_register_internal_class_with_flags(
13385        class_entry: *mut zend_class_entry,
13386        parent_ce: *mut zend_class_entry,
13387        flags: u32,
13388    ) -> *mut zend_class_entry;
13389    pub fn zend_register_internal_interface(
13390        orig_class_entry: *mut zend_class_entry,
13391    ) -> *mut zend_class_entry;
13392    pub fn zend_class_implements(
13393        class_entry: *mut zend_class_entry,
13394        num_interfaces: ::std::os::raw::c_int,
13395        ...
13396    );
13397    pub fn zend_register_class_alias_ex(
13398        name: *const ::std::os::raw::c_char,
13399        name_len: usize,
13400        ce: *mut zend_class_entry,
13401        persistent: bool,
13402    ) -> zend_result;
13403    #[link_name = "zend_register_class_alias__extern"]
13404    pub fn zend_register_class_alias(
13405        name: *const ::std::os::raw::c_char,
13406        ce: *mut zend_class_entry,
13407    ) -> zend_result;
13408    pub fn zend_disable_functions(function_list: *const ::std::os::raw::c_char);
13409    pub fn zend_wrong_param_count();
13410    pub fn zend_wrong_property_read(object: *mut zval, property: *mut zval);
13411    pub fn zend_release_fcall_info_cache(fcc: *mut zend_fcall_info_cache);
13412    pub fn zend_get_callable_name_ex(
13413        callable: *mut zval,
13414        object: *mut zend_object,
13415    ) -> *mut zend_string;
13416    pub fn zend_get_callable_name(callable: *mut zval) -> *mut zend_string;
13417    pub fn zend_is_callable_at_frame(
13418        callable: *mut zval,
13419        object: *mut zend_object,
13420        frame: *mut zend_execute_data,
13421        check_flags: u32,
13422        fcc: *mut zend_fcall_info_cache,
13423        error: *mut *mut ::std::os::raw::c_char,
13424    ) -> bool;
13425    pub fn zend_is_callable_ex(
13426        callable: *mut zval,
13427        object: *mut zend_object,
13428        check_flags: u32,
13429        callable_name: *mut *mut zend_string,
13430        fcc: *mut zend_fcall_info_cache,
13431        error: *mut *mut ::std::os::raw::c_char,
13432    ) -> bool;
13433    pub fn zend_is_callable(
13434        callable: *mut zval,
13435        check_flags: u32,
13436        callable_name: *mut *mut zend_string,
13437    ) -> bool;
13438    pub fn zend_make_callable(callable: *mut zval, callable_name: *mut *mut zend_string) -> bool;
13439    pub fn zend_get_module_version(
13440        module_name: *const ::std::os::raw::c_char,
13441    ) -> *const ::std::os::raw::c_char;
13442    pub fn zend_get_module_started(module_name: *const ::std::os::raw::c_char) -> zend_result;
13443    pub fn zend_declare_typed_property(
13444        ce: *mut zend_class_entry,
13445        name: *mut zend_string,
13446        property: *mut zval,
13447        access_type: ::std::os::raw::c_int,
13448        doc_comment: *mut zend_string,
13449        type_: zend_type,
13450    ) -> *mut zend_property_info;
13451    pub fn zend_declare_property_ex(
13452        ce: *mut zend_class_entry,
13453        name: *mut zend_string,
13454        property: *mut zval,
13455        access_type: ::std::os::raw::c_int,
13456        doc_comment: *mut zend_string,
13457    );
13458    pub fn zend_declare_property(
13459        ce: *mut zend_class_entry,
13460        name: *const ::std::os::raw::c_char,
13461        name_length: usize,
13462        property: *mut zval,
13463        access_type: ::std::os::raw::c_int,
13464    );
13465    pub fn zend_declare_property_null(
13466        ce: *mut zend_class_entry,
13467        name: *const ::std::os::raw::c_char,
13468        name_length: usize,
13469        access_type: ::std::os::raw::c_int,
13470    );
13471    pub fn zend_declare_property_bool(
13472        ce: *mut zend_class_entry,
13473        name: *const ::std::os::raw::c_char,
13474        name_length: usize,
13475        value: zend_long,
13476        access_type: ::std::os::raw::c_int,
13477    );
13478    pub fn zend_declare_property_long(
13479        ce: *mut zend_class_entry,
13480        name: *const ::std::os::raw::c_char,
13481        name_length: usize,
13482        value: zend_long,
13483        access_type: ::std::os::raw::c_int,
13484    );
13485    pub fn zend_declare_property_double(
13486        ce: *mut zend_class_entry,
13487        name: *const ::std::os::raw::c_char,
13488        name_length: usize,
13489        value: f64,
13490        access_type: ::std::os::raw::c_int,
13491    );
13492    pub fn zend_declare_property_string(
13493        ce: *mut zend_class_entry,
13494        name: *const ::std::os::raw::c_char,
13495        name_length: usize,
13496        value: *const ::std::os::raw::c_char,
13497        access_type: ::std::os::raw::c_int,
13498    );
13499    pub fn zend_declare_property_stringl(
13500        ce: *mut zend_class_entry,
13501        name: *const ::std::os::raw::c_char,
13502        name_length: usize,
13503        value: *const ::std::os::raw::c_char,
13504        value_len: usize,
13505        access_type: ::std::os::raw::c_int,
13506    );
13507    pub fn zend_declare_typed_class_constant(
13508        ce: *mut zend_class_entry,
13509        name: *mut zend_string,
13510        value: *mut zval,
13511        access_type: ::std::os::raw::c_int,
13512        doc_comment: *mut zend_string,
13513        type_: zend_type,
13514    ) -> *mut zend_class_constant;
13515    pub fn zend_declare_class_constant_ex(
13516        ce: *mut zend_class_entry,
13517        name: *mut zend_string,
13518        value: *mut zval,
13519        access_type: ::std::os::raw::c_int,
13520        doc_comment: *mut zend_string,
13521    ) -> *mut zend_class_constant;
13522    pub fn zend_declare_class_constant(
13523        ce: *mut zend_class_entry,
13524        name: *const ::std::os::raw::c_char,
13525        name_length: usize,
13526        value: *mut zval,
13527    );
13528    pub fn zend_declare_class_constant_null(
13529        ce: *mut zend_class_entry,
13530        name: *const ::std::os::raw::c_char,
13531        name_length: usize,
13532    );
13533    pub fn zend_declare_class_constant_long(
13534        ce: *mut zend_class_entry,
13535        name: *const ::std::os::raw::c_char,
13536        name_length: usize,
13537        value: zend_long,
13538    );
13539    pub fn zend_declare_class_constant_bool(
13540        ce: *mut zend_class_entry,
13541        name: *const ::std::os::raw::c_char,
13542        name_length: usize,
13543        value: bool,
13544    );
13545    pub fn zend_declare_class_constant_double(
13546        ce: *mut zend_class_entry,
13547        name: *const ::std::os::raw::c_char,
13548        name_length: usize,
13549        value: f64,
13550    );
13551    pub fn zend_declare_class_constant_stringl(
13552        ce: *mut zend_class_entry,
13553        name: *const ::std::os::raw::c_char,
13554        name_length: usize,
13555        value: *const ::std::os::raw::c_char,
13556        value_length: usize,
13557    );
13558    pub fn zend_declare_class_constant_string(
13559        ce: *mut zend_class_entry,
13560        name: *const ::std::os::raw::c_char,
13561        name_length: usize,
13562        value: *const ::std::os::raw::c_char,
13563    );
13564    pub fn zend_update_class_constant(
13565        c: *mut zend_class_constant,
13566        name: *const zend_string,
13567        scope: *mut zend_class_entry,
13568    ) -> zend_result;
13569    pub fn zend_update_class_constants(class_type: *mut zend_class_entry) -> zend_result;
13570    pub fn zend_separate_class_constants_table(class_type: *mut zend_class_entry)
13571    -> *mut HashTable;
13572    #[link_name = "zend_class_constants_table__extern"]
13573    pub fn zend_class_constants_table(ce: *mut zend_class_entry) -> *mut HashTable;
13574    #[link_name = "zend_class_default_properties_table__extern"]
13575    pub fn zend_class_default_properties_table(ce: *mut zend_class_entry) -> *mut zval;
13576    #[link_name = "zend_class_set_backed_enum_table__extern"]
13577    pub fn zend_class_set_backed_enum_table(
13578        ce: *mut zend_class_entry,
13579        backed_enum_table: *mut HashTable,
13580    );
13581    #[link_name = "zend_class_backed_enum_table__extern"]
13582    pub fn zend_class_backed_enum_table(ce: *mut zend_class_entry) -> *mut HashTable;
13583    pub fn zend_update_property_ex(
13584        scope: *const zend_class_entry,
13585        object: *mut zend_object,
13586        name: *mut zend_string,
13587        value: *mut zval,
13588    );
13589    pub fn zend_update_property(
13590        scope: *const zend_class_entry,
13591        object: *mut zend_object,
13592        name: *const ::std::os::raw::c_char,
13593        name_length: usize,
13594        value: *mut zval,
13595    );
13596    pub fn zend_update_property_null(
13597        scope: *const zend_class_entry,
13598        object: *mut zend_object,
13599        name: *const ::std::os::raw::c_char,
13600        name_length: usize,
13601    );
13602    pub fn zend_update_property_bool(
13603        scope: *const zend_class_entry,
13604        object: *mut zend_object,
13605        name: *const ::std::os::raw::c_char,
13606        name_length: usize,
13607        value: zend_long,
13608    );
13609    pub fn zend_update_property_long(
13610        scope: *const zend_class_entry,
13611        object: *mut zend_object,
13612        name: *const ::std::os::raw::c_char,
13613        name_length: usize,
13614        value: zend_long,
13615    );
13616    pub fn zend_update_property_double(
13617        scope: *const zend_class_entry,
13618        object: *mut zend_object,
13619        name: *const ::std::os::raw::c_char,
13620        name_length: usize,
13621        value: f64,
13622    );
13623    pub fn zend_update_property_str(
13624        scope: *const zend_class_entry,
13625        object: *mut zend_object,
13626        name: *const ::std::os::raw::c_char,
13627        name_length: usize,
13628        value: *mut zend_string,
13629    );
13630    pub fn zend_update_property_string(
13631        scope: *const zend_class_entry,
13632        object: *mut zend_object,
13633        name: *const ::std::os::raw::c_char,
13634        name_length: usize,
13635        value: *const ::std::os::raw::c_char,
13636    );
13637    pub fn zend_update_property_stringl(
13638        scope: *const zend_class_entry,
13639        object: *mut zend_object,
13640        name: *const ::std::os::raw::c_char,
13641        name_length: usize,
13642        value: *const ::std::os::raw::c_char,
13643        value_length: usize,
13644    );
13645    pub fn zend_unset_property(
13646        scope: *const zend_class_entry,
13647        object: *mut zend_object,
13648        name: *const ::std::os::raw::c_char,
13649        name_length: usize,
13650    );
13651    pub fn zend_update_static_property_ex(
13652        scope: *mut zend_class_entry,
13653        name: *mut zend_string,
13654        value: *mut zval,
13655    ) -> zend_result;
13656    pub fn zend_update_static_property(
13657        scope: *mut zend_class_entry,
13658        name: *const ::std::os::raw::c_char,
13659        name_length: usize,
13660        value: *mut zval,
13661    ) -> zend_result;
13662    pub fn zend_update_static_property_null(
13663        scope: *mut zend_class_entry,
13664        name: *const ::std::os::raw::c_char,
13665        name_length: usize,
13666    ) -> zend_result;
13667    pub fn zend_update_static_property_bool(
13668        scope: *mut zend_class_entry,
13669        name: *const ::std::os::raw::c_char,
13670        name_length: usize,
13671        value: zend_long,
13672    ) -> zend_result;
13673    pub fn zend_update_static_property_long(
13674        scope: *mut zend_class_entry,
13675        name: *const ::std::os::raw::c_char,
13676        name_length: usize,
13677        value: zend_long,
13678    ) -> zend_result;
13679    pub fn zend_update_static_property_double(
13680        scope: *mut zend_class_entry,
13681        name: *const ::std::os::raw::c_char,
13682        name_length: usize,
13683        value: f64,
13684    ) -> zend_result;
13685    pub fn zend_update_static_property_string(
13686        scope: *mut zend_class_entry,
13687        name: *const ::std::os::raw::c_char,
13688        name_length: usize,
13689        value: *const ::std::os::raw::c_char,
13690    ) -> zend_result;
13691    pub fn zend_update_static_property_stringl(
13692        scope: *mut zend_class_entry,
13693        name: *const ::std::os::raw::c_char,
13694        name_length: usize,
13695        value: *const ::std::os::raw::c_char,
13696        value_length: usize,
13697    ) -> zend_result;
13698    pub fn zend_read_property_ex(
13699        scope: *mut zend_class_entry,
13700        object: *mut zend_object,
13701        name: *mut zend_string,
13702        silent: bool,
13703        rv: *mut zval,
13704    ) -> *mut zval;
13705    pub fn zend_read_property(
13706        scope: *mut zend_class_entry,
13707        object: *mut zend_object,
13708        name: *const ::std::os::raw::c_char,
13709        name_length: usize,
13710        silent: bool,
13711        rv: *mut zval,
13712    ) -> *mut zval;
13713    pub fn zend_read_static_property_ex(
13714        scope: *mut zend_class_entry,
13715        name: *mut zend_string,
13716        silent: bool,
13717    ) -> *mut zval;
13718    pub fn zend_read_static_property(
13719        scope: *mut zend_class_entry,
13720        name: *const ::std::os::raw::c_char,
13721        name_length: usize,
13722        silent: bool,
13723    ) -> *mut zval;
13724    pub fn zend_get_type_by_const(type_: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
13725    #[link_name = "_array_finit__extern"]
13726    pub fn _array_finit(arg: *mut zval, size: usize) -> bool;
13727    #[link_name = "_array_finit_ex__extern"]
13728    pub fn _array_finit_ex(arg: *mut zval, size: usize, packed: bool) -> bool;
13729    pub fn object_init(arg: *mut zval);
13730    pub fn object_finit(arg: *mut zval) -> bool;
13731    pub fn object_init_ex(arg: *mut zval, ce: *mut zend_class_entry) -> zend_result;
13732    pub fn object_init_with_constructor(
13733        arg: *mut zval,
13734        class_type: *mut zend_class_entry,
13735        param_count: u32,
13736        params: *mut zval,
13737        named_params: *mut HashTable,
13738    ) -> zend_result;
13739    pub fn object_and_properties_init(
13740        arg: *mut zval,
13741        ce: *mut zend_class_entry,
13742        properties: *mut HashTable,
13743    ) -> zend_result;
13744    pub fn object_properties_init(object: *mut zend_object, class_type: *mut zend_class_entry);
13745    pub fn object_properties_init_ex(object: *mut zend_object, properties: *mut HashTable);
13746    pub fn object_properties_load(object: *mut zend_object, properties: *mut HashTable);
13747    pub fn zend_merge_properties(obj: *mut zval, properties: *mut HashTable);
13748    pub fn add_assoc_long_ex(
13749        arg: *mut zval,
13750        key: *const ::std::os::raw::c_char,
13751        key_len: usize,
13752        n: zend_long,
13753    );
13754    pub fn add_assoc_null_ex(arg: *mut zval, key: *const ::std::os::raw::c_char, key_len: usize);
13755    pub fn add_assoc_bool_ex(
13756        arg: *mut zval,
13757        key: *const ::std::os::raw::c_char,
13758        key_len: usize,
13759        b: bool,
13760    );
13761    pub fn add_assoc_resource_ex(
13762        arg: *mut zval,
13763        key: *const ::std::os::raw::c_char,
13764        key_len: usize,
13765        r: *mut zend_resource,
13766    );
13767    pub fn add_assoc_double_ex(
13768        arg: *mut zval,
13769        key: *const ::std::os::raw::c_char,
13770        key_len: usize,
13771        d: f64,
13772    );
13773    pub fn add_assoc_str_ex(
13774        arg: *mut zval,
13775        key: *const ::std::os::raw::c_char,
13776        key_len: usize,
13777        str_: *mut zend_string,
13778    );
13779    pub fn add_assoc_string_ex(
13780        arg: *mut zval,
13781        key: *const ::std::os::raw::c_char,
13782        key_len: usize,
13783        str_: *const ::std::os::raw::c_char,
13784    );
13785    pub fn add_assoc_stringl_ex(
13786        arg: *mut zval,
13787        key: *const ::std::os::raw::c_char,
13788        key_len: usize,
13789        str_: *const ::std::os::raw::c_char,
13790        length: usize,
13791    );
13792    pub fn add_assoc_array_ex(
13793        arg: *mut zval,
13794        key: *const ::std::os::raw::c_char,
13795        key_len: usize,
13796        arr: *mut zend_array,
13797    );
13798    pub fn add_assoc_object_ex(
13799        arg: *mut zval,
13800        key: *const ::std::os::raw::c_char,
13801        key_len: usize,
13802        obj: *mut zend_object,
13803    );
13804    pub fn add_assoc_reference_ex(
13805        arg: *mut zval,
13806        key: *const ::std::os::raw::c_char,
13807        key_len: usize,
13808        ref_: *mut zend_reference,
13809    );
13810    pub fn add_assoc_zval_ex(
13811        arg: *mut zval,
13812        key: *const ::std::os::raw::c_char,
13813        key_len: usize,
13814        value: *mut zval,
13815    );
13816    #[link_name = "add_assoc_long__extern"]
13817    pub fn add_assoc_long(arg: *mut zval, key: *const ::std::os::raw::c_char, n: zend_long);
13818    #[link_name = "add_assoc_null__extern"]
13819    pub fn add_assoc_null(arg: *mut zval, key: *const ::std::os::raw::c_char);
13820    #[link_name = "add_assoc_bool__extern"]
13821    pub fn add_assoc_bool(arg: *mut zval, key: *const ::std::os::raw::c_char, b: bool);
13822    #[link_name = "add_assoc_resource__extern"]
13823    pub fn add_assoc_resource(
13824        arg: *mut zval,
13825        key: *const ::std::os::raw::c_char,
13826        r: *mut zend_resource,
13827    );
13828    #[link_name = "add_assoc_double__extern"]
13829    pub fn add_assoc_double(arg: *mut zval, key: *const ::std::os::raw::c_char, d: f64);
13830    #[link_name = "add_assoc_str__extern"]
13831    pub fn add_assoc_str(
13832        arg: *mut zval,
13833        key: *const ::std::os::raw::c_char,
13834        str_: *mut zend_string,
13835    );
13836    #[link_name = "add_assoc_string__extern"]
13837    pub fn add_assoc_string(
13838        arg: *mut zval,
13839        key: *const ::std::os::raw::c_char,
13840        str_: *const ::std::os::raw::c_char,
13841    );
13842    #[link_name = "add_assoc_stringl__extern"]
13843    pub fn add_assoc_stringl(
13844        arg: *mut zval,
13845        key: *const ::std::os::raw::c_char,
13846        str_: *const ::std::os::raw::c_char,
13847        length: usize,
13848    );
13849    #[link_name = "add_assoc_array__extern"]
13850    pub fn add_assoc_array(
13851        arg: *mut zval,
13852        key: *const ::std::os::raw::c_char,
13853        arr: *mut zend_array,
13854    );
13855    #[link_name = "add_assoc_object__extern"]
13856    pub fn add_assoc_object(
13857        arg: *mut zval,
13858        key: *const ::std::os::raw::c_char,
13859        obj: *mut zend_object,
13860    );
13861    #[link_name = "add_assoc_reference__extern"]
13862    pub fn add_assoc_reference(
13863        arg: *mut zval,
13864        key: *const ::std::os::raw::c_char,
13865        ref_: *mut zend_reference,
13866    );
13867    #[link_name = "add_assoc_zval__extern"]
13868    pub fn add_assoc_zval(arg: *mut zval, key: *const ::std::os::raw::c_char, value: *mut zval);
13869    pub fn add_index_long(arg: *mut zval, index: zend_ulong, n: zend_long);
13870    pub fn add_index_null(arg: *mut zval, index: zend_ulong);
13871    pub fn add_index_bool(arg: *mut zval, index: zend_ulong, b: bool);
13872    pub fn add_index_resource(arg: *mut zval, index: zend_ulong, r: *mut zend_resource);
13873    pub fn add_index_double(arg: *mut zval, index: zend_ulong, d: f64);
13874    pub fn add_index_str(arg: *mut zval, index: zend_ulong, str_: *mut zend_string);
13875    pub fn add_index_string(arg: *mut zval, index: zend_ulong, str_: *const ::std::os::raw::c_char);
13876    pub fn add_index_stringl(
13877        arg: *mut zval,
13878        index: zend_ulong,
13879        str_: *const ::std::os::raw::c_char,
13880        length: usize,
13881    );
13882    pub fn add_index_array(arg: *mut zval, index: zend_ulong, arr: *mut zend_array);
13883    pub fn add_index_object(arg: *mut zval, index: zend_ulong, obj: *mut zend_object);
13884    pub fn add_index_reference(arg: *mut zval, index: zend_ulong, ref_: *mut zend_reference);
13885    #[link_name = "add_index_zval__extern"]
13886    pub fn add_index_zval(arg: *mut zval, index: zend_ulong, value: *mut zval) -> zend_result;
13887    pub fn add_next_index_long(arg: *mut zval, n: zend_long) -> zend_result;
13888    pub fn add_next_index_null(arg: *mut zval) -> zend_result;
13889    pub fn add_next_index_bool(arg: *mut zval, b: bool) -> zend_result;
13890    pub fn add_next_index_resource(arg: *mut zval, r: *mut zend_resource) -> zend_result;
13891    pub fn add_next_index_double(arg: *mut zval, d: f64) -> zend_result;
13892    pub fn add_next_index_str(arg: *mut zval, str_: *mut zend_string) -> zend_result;
13893    pub fn add_next_index_string(
13894        arg: *mut zval,
13895        str_: *const ::std::os::raw::c_char,
13896    ) -> zend_result;
13897    pub fn add_next_index_stringl(
13898        arg: *mut zval,
13899        str_: *const ::std::os::raw::c_char,
13900        length: usize,
13901    ) -> zend_result;
13902    pub fn add_next_index_array(arg: *mut zval, arr: *mut zend_array) -> zend_result;
13903    pub fn add_next_index_object(arg: *mut zval, obj: *mut zend_object) -> zend_result;
13904    pub fn add_next_index_reference(arg: *mut zval, ref_: *mut zend_reference) -> zend_result;
13905    #[link_name = "add_next_index_zval__extern"]
13906    pub fn add_next_index_zval(arg: *mut zval, value: *mut zval) -> zend_result;
13907    pub fn array_set_zval_key(ht: *mut HashTable, key: *mut zval, value: *mut zval) -> zend_result;
13908    pub fn add_property_long_ex(
13909        arg: *mut zval,
13910        key: *const ::std::os::raw::c_char,
13911        key_len: usize,
13912        l: zend_long,
13913    );
13914    pub fn add_property_null_ex(arg: *mut zval, key: *const ::std::os::raw::c_char, key_len: usize);
13915    pub fn add_property_bool_ex(
13916        arg: *mut zval,
13917        key: *const ::std::os::raw::c_char,
13918        key_len: usize,
13919        b: zend_long,
13920    );
13921    pub fn add_property_resource_ex(
13922        arg: *mut zval,
13923        key: *const ::std::os::raw::c_char,
13924        key_len: usize,
13925        r: *mut zend_resource,
13926    );
13927    pub fn add_property_double_ex(
13928        arg: *mut zval,
13929        key: *const ::std::os::raw::c_char,
13930        key_len: usize,
13931        d: f64,
13932    );
13933    pub fn add_property_str_ex(
13934        arg: *mut zval,
13935        key: *const ::std::os::raw::c_char,
13936        key_len: usize,
13937        str_: *mut zend_string,
13938    );
13939    pub fn add_property_string_ex(
13940        arg: *mut zval,
13941        key: *const ::std::os::raw::c_char,
13942        key_len: usize,
13943        str_: *const ::std::os::raw::c_char,
13944    );
13945    pub fn add_property_stringl_ex(
13946        arg: *mut zval,
13947        key: *const ::std::os::raw::c_char,
13948        key_len: usize,
13949        str_: *const ::std::os::raw::c_char,
13950        length: usize,
13951    );
13952    pub fn add_property_array_ex(
13953        arg: *mut zval,
13954        key: *const ::std::os::raw::c_char,
13955        key_len: usize,
13956        arr: *mut zend_array,
13957    );
13958    pub fn add_property_object_ex(
13959        arg: *mut zval,
13960        key: *const ::std::os::raw::c_char,
13961        key_len: usize,
13962        obj: *mut zend_object,
13963    );
13964    pub fn add_property_reference_ex(
13965        arg: *mut zval,
13966        key: *const ::std::os::raw::c_char,
13967        key_len: usize,
13968        ref_: *mut zend_reference,
13969    );
13970    pub fn add_property_zval_ex(
13971        arg: *mut zval,
13972        key: *const ::std::os::raw::c_char,
13973        key_len: usize,
13974        value: *mut zval,
13975    );
13976    #[link_name = "add_property_long__extern"]
13977    pub fn add_property_long(arg: *mut zval, key: *const ::std::os::raw::c_char, n: zend_long);
13978    #[link_name = "add_property_null__extern"]
13979    pub fn add_property_null(arg: *mut zval, key: *const ::std::os::raw::c_char);
13980    #[link_name = "add_property_bool__extern"]
13981    pub fn add_property_bool(arg: *mut zval, key: *const ::std::os::raw::c_char, b: bool);
13982    #[link_name = "add_property_resource__extern"]
13983    pub fn add_property_resource(
13984        arg: *mut zval,
13985        key: *const ::std::os::raw::c_char,
13986        r: *mut zend_resource,
13987    );
13988    #[link_name = "add_property_double__extern"]
13989    pub fn add_property_double(arg: *mut zval, key: *const ::std::os::raw::c_char, d: f64);
13990    #[link_name = "add_property_str__extern"]
13991    pub fn add_property_str(
13992        arg: *mut zval,
13993        key: *const ::std::os::raw::c_char,
13994        str_: *mut zend_string,
13995    );
13996    #[link_name = "add_property_string__extern"]
13997    pub fn add_property_string(
13998        arg: *mut zval,
13999        key: *const ::std::os::raw::c_char,
14000        str_: *const ::std::os::raw::c_char,
14001    );
14002    #[link_name = "add_property_stringl__extern"]
14003    pub fn add_property_stringl(
14004        arg: *mut zval,
14005        key: *const ::std::os::raw::c_char,
14006        str_: *const ::std::os::raw::c_char,
14007        length: usize,
14008    );
14009    #[link_name = "add_property_array__extern"]
14010    pub fn add_property_array(
14011        arg: *mut zval,
14012        key: *const ::std::os::raw::c_char,
14013        arr: *mut zend_array,
14014    );
14015    #[link_name = "add_property_object__extern"]
14016    pub fn add_property_object(
14017        arg: *mut zval,
14018        key: *const ::std::os::raw::c_char,
14019        obj: *mut zend_object,
14020    );
14021    #[link_name = "add_property_reference__extern"]
14022    pub fn add_property_reference(
14023        arg: *mut zval,
14024        key: *const ::std::os::raw::c_char,
14025        ref_: *mut zend_reference,
14026    );
14027    #[link_name = "add_property_zval__extern"]
14028    pub fn add_property_zval(arg: *mut zval, key: *const ::std::os::raw::c_char, value: *mut zval);
14029    pub fn _call_user_function_impl(
14030        object: *mut zval,
14031        function_name: *mut zval,
14032        retval_ptr: *mut zval,
14033        param_count: u32,
14034        params: *mut zval,
14035        named_params: *mut HashTable,
14036    ) -> zend_result;
14037    #[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."]
14038    pub fn zend_fcall_info_init(
14039        callable: *mut zval,
14040        check_flags: u32,
14041        fci: *mut zend_fcall_info,
14042        fcc: *mut zend_fcall_info_cache,
14043        callable_name: *mut *mut zend_string,
14044        error: *mut *mut ::std::os::raw::c_char,
14045    ) -> zend_result;
14046    #[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"]
14047    pub fn zend_fcall_info_args_clear(fci: *mut zend_fcall_info, free_mem: bool);
14048    #[doc = " Save current arguments from zend_fcall_info *fci\n params array will be set to NULL"]
14049    pub fn zend_fcall_info_args_save(
14050        fci: *mut zend_fcall_info,
14051        param_count: *mut u32,
14052        params: *mut *mut zval,
14053    );
14054    #[doc = " Free arguments connected with zend_fcall_info *fci and set back saved ones."]
14055    pub fn zend_fcall_info_args_restore(
14056        fci: *mut zend_fcall_info,
14057        param_count: u32,
14058        params: *mut zval,
14059    );
14060    #[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."]
14061    pub fn zend_fcall_info_args(fci: *mut zend_fcall_info, args: *mut zval) -> zend_result;
14062    pub fn zend_fcall_info_args_ex(
14063        fci: *mut zend_fcall_info,
14064        func: *mut zend_function,
14065        args: *mut zval,
14066    ) -> zend_result;
14067    #[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."]
14068    pub fn zend_fcall_info_argp(fci: *mut zend_fcall_info, argc: u32, argv: *mut zval);
14069    #[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."]
14070    pub fn zend_fcall_info_argv(fci: *mut zend_fcall_info, argc: u32, argv: *mut va_list);
14071    #[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."]
14072    pub fn zend_fcall_info_argn(fci: *mut zend_fcall_info, argc: u32, ...);
14073    #[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."]
14074    pub fn zend_fcall_info_call(
14075        fci: *mut zend_fcall_info,
14076        fcc: *mut zend_fcall_info_cache,
14077        retval: *mut zval,
14078        args: *mut zval,
14079    ) -> zend_result;
14080    #[link_name = "zend_fcc_equals__extern"]
14081    pub fn zend_fcc_equals(
14082        a: *const zend_fcall_info_cache,
14083        b: *const zend_fcall_info_cache,
14084    ) -> bool;
14085    #[link_name = "zend_fcc_addref__extern"]
14086    pub fn zend_fcc_addref(fcc: *mut zend_fcall_info_cache);
14087    #[link_name = "zend_fcc_dup__extern"]
14088    pub fn zend_fcc_dup(dest: *mut zend_fcall_info_cache, src: *const zend_fcall_info_cache);
14089    #[link_name = "zend_fcc_dtor__extern"]
14090    pub fn zend_fcc_dtor(fcc: *mut zend_fcall_info_cache);
14091    pub fn zend_get_callable_zval_from_fcc(fcc: *const zend_fcall_info_cache, callable: *mut zval);
14092    #[link_name = "zend_get_gc_buffer_add_fcc__extern"]
14093    pub fn zend_get_gc_buffer_add_fcc(
14094        gc_buffer: *mut zend_get_gc_buffer,
14095        fcc: *mut zend_fcall_info_cache,
14096    );
14097    pub fn zend_call_function(
14098        fci: *mut zend_fcall_info,
14099        fci_cache: *mut zend_fcall_info_cache,
14100    ) -> zend_result;
14101    #[link_name = "zend_call_function_with_return_value__extern"]
14102    pub fn zend_call_function_with_return_value(
14103        fci: *mut zend_fcall_info,
14104        fci_cache: *mut zend_fcall_info_cache,
14105        retval: *mut zval,
14106    ) -> zend_result;
14107    pub fn zend_call_known_function(
14108        fn_: *mut zend_function,
14109        object: *mut zend_object,
14110        called_scope: *mut zend_class_entry,
14111        retval_ptr: *mut zval,
14112        param_count: u32,
14113        params: *mut zval,
14114        named_params: *mut HashTable,
14115    );
14116    #[link_name = "zend_call_known_fcc__extern"]
14117    pub fn zend_call_known_fcc(
14118        fcc: *const zend_fcall_info_cache,
14119        retval_ptr: *mut zval,
14120        param_count: u32,
14121        params: *mut zval,
14122        named_params: *mut HashTable,
14123    );
14124    #[link_name = "zend_call_known_instance_method__extern"]
14125    pub fn zend_call_known_instance_method(
14126        fn_: *mut zend_function,
14127        object: *mut zend_object,
14128        retval_ptr: *mut zval,
14129        param_count: u32,
14130        params: *mut zval,
14131    );
14132    #[link_name = "zend_call_known_instance_method_with_0_params__extern"]
14133    pub fn zend_call_known_instance_method_with_0_params(
14134        fn_: *mut zend_function,
14135        object: *mut zend_object,
14136        retval_ptr: *mut zval,
14137    );
14138    #[link_name = "zend_call_known_instance_method_with_1_params__extern"]
14139    pub fn zend_call_known_instance_method_with_1_params(
14140        fn_: *mut zend_function,
14141        object: *mut zend_object,
14142        retval_ptr: *mut zval,
14143        param: *mut zval,
14144    );
14145    pub fn zend_call_known_instance_method_with_2_params(
14146        fn_: *mut zend_function,
14147        object: *mut zend_object,
14148        retval_ptr: *mut zval,
14149        param1: *mut zval,
14150        param2: *mut zval,
14151    );
14152    pub fn zend_call_method_if_exists(
14153        object: *mut zend_object,
14154        method_name: *mut zend_string,
14155        retval: *mut zval,
14156        param_count: u32,
14157        params: *mut zval,
14158    ) -> zend_result;
14159    pub fn zend_set_hash_symbol(
14160        symbol: *mut zval,
14161        name: *const ::std::os::raw::c_char,
14162        name_length: usize,
14163        is_ref: bool,
14164        num_symbol_tables: ::std::os::raw::c_int,
14165        ...
14166    ) -> zend_result;
14167    pub fn zend_delete_global_variable(name: *mut zend_string) -> zend_result;
14168    pub fn zend_rebuild_symbol_table() -> *mut zend_array;
14169    pub fn zend_attach_symbol_table(execute_data: *mut zend_execute_data);
14170    pub fn zend_detach_symbol_table(execute_data: *mut zend_execute_data);
14171    pub fn zend_set_local_var(name: *mut zend_string, value: *mut zval, force: bool)
14172    -> zend_result;
14173    pub fn zend_set_local_var_str(
14174        name: *const ::std::os::raw::c_char,
14175        len: usize,
14176        value: *mut zval,
14177        force: bool,
14178    ) -> zend_result;
14179    #[link_name = "zend_forbid_dynamic_call__extern"]
14180    pub fn zend_forbid_dynamic_call() -> zend_result;
14181    pub fn zend_get_object_type_case(
14182        ce: *const zend_class_entry,
14183        upper_case: bool,
14184    ) -> *const ::std::os::raw::c_char;
14185    #[link_name = "zend_get_object_type__extern"]
14186    pub fn zend_get_object_type(ce: *const zend_class_entry) -> *const ::std::os::raw::c_char;
14187    #[link_name = "zend_get_object_type_uc__extern"]
14188    pub fn zend_get_object_type_uc(ce: *const zend_class_entry) -> *const ::std::os::raw::c_char;
14189    pub fn zend_is_iterable(iterable: *const zval) -> bool;
14190    pub fn zend_is_countable(countable: *const zval) -> bool;
14191    pub fn zend_get_default_from_internal_arg_info(
14192        default_value_zval: *mut zval,
14193        arg_info: *mut zend_internal_arg_info,
14194    ) -> zend_result;
14195    #[link_name = "zend_str_has_nul_byte__extern"]
14196    pub fn zend_str_has_nul_byte(str_: *const zend_string) -> bool;
14197    #[link_name = "zend_char_has_nul_byte__extern"]
14198    pub fn zend_char_has_nul_byte(s: *const ::std::os::raw::c_char, known_length: usize) -> bool;
14199    #[link_name = "ZVAL_FSTRINGL__extern"]
14200    pub fn ZVAL_FSTRINGL(z: *mut zval, s: *const ::std::os::raw::c_char, l: usize) -> bool;
14201    #[link_name = "ZVAL_FSTRING__extern"]
14202    pub fn ZVAL_FSTRING(z: *mut zval, s: *const ::std::os::raw::c_char) -> bool;
14203    pub fn zend_try_assign_typed_ref_ex(
14204        ref_: *mut zend_reference,
14205        zv: *mut zval,
14206        strict: bool,
14207    ) -> zend_result;
14208    pub fn zend_try_assign_typed_ref(ref_: *mut zend_reference, zv: *mut zval) -> zend_result;
14209    pub fn zend_try_assign_typed_ref_null(ref_: *mut zend_reference) -> zend_result;
14210    pub fn zend_try_assign_typed_ref_bool(ref_: *mut zend_reference, val: bool) -> zend_result;
14211    pub fn zend_try_assign_typed_ref_long(
14212        ref_: *mut zend_reference,
14213        lval: zend_long,
14214    ) -> zend_result;
14215    pub fn zend_try_assign_typed_ref_double(ref_: *mut zend_reference, dval: f64) -> zend_result;
14216    pub fn zend_try_assign_typed_ref_empty_string(ref_: *mut zend_reference) -> zend_result;
14217    pub fn zend_try_assign_typed_ref_str(
14218        ref_: *mut zend_reference,
14219        str_: *mut zend_string,
14220    ) -> zend_result;
14221    pub fn zend_try_assign_typed_ref_string(
14222        ref_: *mut zend_reference,
14223        string: *const ::std::os::raw::c_char,
14224    ) -> zend_result;
14225    pub fn zend_try_assign_typed_ref_stringl(
14226        ref_: *mut zend_reference,
14227        string: *const ::std::os::raw::c_char,
14228        len: usize,
14229    ) -> zend_result;
14230    pub fn zend_try_assign_typed_ref_arr(
14231        ref_: *mut zend_reference,
14232        arr: *mut zend_array,
14233    ) -> zend_result;
14234    pub fn zend_try_assign_typed_ref_res(
14235        ref_: *mut zend_reference,
14236        res: *mut zend_resource,
14237    ) -> zend_result;
14238    pub fn zend_try_assign_typed_ref_zval(ref_: *mut zend_reference, zv: *mut zval) -> zend_result;
14239    pub fn zend_try_assign_typed_ref_zval_ex(
14240        ref_: *mut zend_reference,
14241        zv: *mut zval,
14242        strict: bool,
14243    ) -> zend_result;
14244    #[link_name = "zend_try_array_init_size__extern"]
14245    pub fn zend_try_array_init_size(zv: *mut zval, size: u32) -> *mut zval;
14246    #[link_name = "zend_try_array_init__extern"]
14247    pub fn zend_try_array_init(zv: *mut zval) -> *mut zval;
14248    pub fn zend_wrong_parameters_none_error();
14249    pub fn zend_wrong_parameters_count_error(min_num_args: u32, max_num_args: u32);
14250    pub fn zend_wrong_parameter_error(
14251        error_code: ::std::os::raw::c_int,
14252        num: u32,
14253        name: *mut ::std::os::raw::c_char,
14254        expected_type: zend_expected_type,
14255        arg: *mut zval,
14256    );
14257    pub fn zend_wrong_parameter_type_error(
14258        num: u32,
14259        expected_type: zend_expected_type,
14260        arg: *mut zval,
14261    );
14262    pub fn zend_wrong_parameter_class_error(
14263        num: u32,
14264        name: *const ::std::os::raw::c_char,
14265        arg: *mut zval,
14266    );
14267    pub fn zend_wrong_parameter_class_or_null_error(
14268        num: u32,
14269        name: *const ::std::os::raw::c_char,
14270        arg: *mut zval,
14271    );
14272    pub fn zend_wrong_parameter_class_or_long_error(
14273        num: u32,
14274        name: *const ::std::os::raw::c_char,
14275        arg: *mut zval,
14276    );
14277    pub fn zend_wrong_parameter_class_or_long_or_null_error(
14278        num: u32,
14279        name: *const ::std::os::raw::c_char,
14280        arg: *mut zval,
14281    );
14282    pub fn zend_wrong_parameter_class_or_string_error(
14283        num: u32,
14284        name: *const ::std::os::raw::c_char,
14285        arg: *mut zval,
14286    );
14287    pub fn zend_wrong_parameter_class_or_string_or_null_error(
14288        num: u32,
14289        name: *const ::std::os::raw::c_char,
14290        arg: *mut zval,
14291    );
14292    pub fn zend_wrong_callback_error(num: u32, error: *mut ::std::os::raw::c_char);
14293    pub fn zend_wrong_callback_or_null_error(num: u32, error: *mut ::std::os::raw::c_char);
14294    pub fn zend_unexpected_extra_named_error();
14295    pub fn zend_argument_error_variadic(
14296        error_ce: *mut zend_class_entry,
14297        arg_num: u32,
14298        format: *const ::std::os::raw::c_char,
14299        va: *mut __va_list_tag,
14300    );
14301    pub fn zend_argument_error(
14302        error_ce: *mut zend_class_entry,
14303        arg_num: u32,
14304        format: *const ::std::os::raw::c_char,
14305        ...
14306    );
14307    pub fn zend_argument_type_error(arg_num: u32, format: *const ::std::os::raw::c_char, ...);
14308    pub fn zend_argument_value_error(arg_num: u32, format: *const ::std::os::raw::c_char, ...);
14309    pub fn zend_argument_must_not_be_empty_error(arg_num: u32);
14310    pub fn zend_class_redeclaration_error(
14311        type_: ::std::os::raw::c_int,
14312        old_ce: *mut zend_class_entry,
14313    );
14314    pub fn zend_class_redeclaration_error_ex(
14315        type_: ::std::os::raw::c_int,
14316        new_name: *mut zend_string,
14317        old_ce: *mut zend_class_entry,
14318    );
14319    pub fn zend_parse_arg_class(
14320        arg: *mut zval,
14321        pce: *mut *mut zend_class_entry,
14322        num: u32,
14323        check_null: bool,
14324    ) -> bool;
14325    pub fn zend_parse_arg_bool_slow(arg: *const zval, dest: *mut bool, arg_num: u32) -> bool;
14326    pub fn zend_parse_arg_bool_weak(arg: *const zval, dest: *mut bool, arg_num: u32) -> bool;
14327    pub fn zend_parse_arg_long_slow(arg: *const zval, dest: *mut zend_long, arg_num: u32) -> bool;
14328    pub fn zend_parse_arg_long_weak(arg: *const zval, dest: *mut zend_long, arg_num: u32) -> bool;
14329    pub fn zend_parse_arg_double_slow(arg: *const zval, dest: *mut f64, arg_num: u32) -> bool;
14330    pub fn zend_parse_arg_double_weak(arg: *const zval, dest: *mut f64, arg_num: u32) -> bool;
14331    pub fn zend_parse_arg_str_slow(
14332        arg: *mut zval,
14333        dest: *mut *mut zend_string,
14334        arg_num: u32,
14335    ) -> bool;
14336    pub fn zend_parse_arg_str_weak(
14337        arg: *mut zval,
14338        dest: *mut *mut zend_string,
14339        arg_num: u32,
14340    ) -> bool;
14341    pub fn zend_parse_arg_number_slow(arg: *mut zval, dest: *mut *mut zval, arg_num: u32) -> bool;
14342    pub fn zend_parse_arg_number_or_str_slow(
14343        arg: *mut zval,
14344        dest: *mut *mut zval,
14345        arg_num: u32,
14346    ) -> bool;
14347    pub fn zend_parse_arg_str_or_long_slow(
14348        arg: *mut zval,
14349        dest_str: *mut *mut zend_string,
14350        dest_long: *mut zend_long,
14351        arg_num: u32,
14352    ) -> bool;
14353    pub fn zend_flf_parse_arg_bool_slow(arg: *const zval, dest: *mut bool, arg_num: u32) -> bool;
14354    pub fn zend_flf_parse_arg_str_slow(
14355        arg: *mut zval,
14356        dest: *mut *mut zend_string,
14357        arg_num: u32,
14358    ) -> bool;
14359    pub fn zend_flf_parse_arg_long_slow(
14360        arg: *const zval,
14361        dest: *mut zend_long,
14362        arg_num: u32,
14363    ) -> bool;
14364    #[link_name = "zend_parse_arg_bool_ex__extern"]
14365    pub fn zend_parse_arg_bool_ex(
14366        arg: *const zval,
14367        dest: *mut bool,
14368        is_null: *mut bool,
14369        check_null: bool,
14370        arg_num: u32,
14371        frameless: bool,
14372    ) -> bool;
14373    #[link_name = "zend_parse_arg_bool__extern"]
14374    pub fn zend_parse_arg_bool(
14375        arg: *const zval,
14376        dest: *mut bool,
14377        is_null: *mut bool,
14378        check_null: bool,
14379        arg_num: u32,
14380    ) -> bool;
14381    #[link_name = "zend_parse_arg_long_ex__extern"]
14382    pub fn zend_parse_arg_long_ex(
14383        arg: *mut zval,
14384        dest: *mut zend_long,
14385        is_null: *mut bool,
14386        check_null: bool,
14387        arg_num: u32,
14388        frameless: bool,
14389    ) -> bool;
14390    #[link_name = "zend_parse_arg_long__extern"]
14391    pub fn zend_parse_arg_long(
14392        arg: *mut zval,
14393        dest: *mut zend_long,
14394        is_null: *mut bool,
14395        check_null: bool,
14396        arg_num: u32,
14397    ) -> bool;
14398    #[link_name = "zend_parse_arg_double__extern"]
14399    pub fn zend_parse_arg_double(
14400        arg: *const zval,
14401        dest: *mut f64,
14402        is_null: *mut bool,
14403        check_null: bool,
14404        arg_num: u32,
14405    ) -> bool;
14406    #[link_name = "zend_parse_arg_number__extern"]
14407    pub fn zend_parse_arg_number(
14408        arg: *mut zval,
14409        dest: *mut *mut zval,
14410        check_null: bool,
14411        arg_num: u32,
14412    ) -> bool;
14413    #[link_name = "zend_parse_arg_number_or_str__extern"]
14414    pub fn zend_parse_arg_number_or_str(
14415        arg: *mut zval,
14416        dest: *mut *mut zval,
14417        check_null: bool,
14418        arg_num: u32,
14419    ) -> bool;
14420    #[link_name = "zend_parse_arg_str_ex__extern"]
14421    pub fn zend_parse_arg_str_ex(
14422        arg: *mut zval,
14423        dest: *mut *mut zend_string,
14424        check_null: bool,
14425        arg_num: u32,
14426        frameless: bool,
14427    ) -> bool;
14428    #[link_name = "zend_parse_arg_str__extern"]
14429    pub fn zend_parse_arg_str(
14430        arg: *mut zval,
14431        dest: *mut *mut zend_string,
14432        check_null: bool,
14433        arg_num: u32,
14434    ) -> bool;
14435    #[link_name = "zend_parse_arg_string__extern"]
14436    pub fn zend_parse_arg_string(
14437        arg: *mut zval,
14438        dest: *mut *mut ::std::os::raw::c_char,
14439        dest_len: *mut usize,
14440        check_null: bool,
14441        arg_num: u32,
14442    ) -> bool;
14443    #[link_name = "zend_parse_arg_path_str__extern"]
14444    pub fn zend_parse_arg_path_str(
14445        arg: *mut zval,
14446        dest: *mut *mut zend_string,
14447        check_null: bool,
14448        arg_num: u32,
14449    ) -> bool;
14450    #[link_name = "zend_parse_arg_path__extern"]
14451    pub fn zend_parse_arg_path(
14452        arg: *mut zval,
14453        dest: *mut *mut ::std::os::raw::c_char,
14454        dest_len: *mut usize,
14455        check_null: bool,
14456        arg_num: u32,
14457    ) -> bool;
14458    #[link_name = "zend_parse_arg_iterable__extern"]
14459    pub fn zend_parse_arg_iterable(arg: *mut zval, dest: *mut *mut zval, check_null: bool) -> bool;
14460    #[link_name = "zend_parse_arg_array__extern"]
14461    pub fn zend_parse_arg_array(
14462        arg: *mut zval,
14463        dest: *mut *mut zval,
14464        check_null: bool,
14465        or_object: bool,
14466    ) -> bool;
14467    #[link_name = "zend_parse_arg_array_ht__extern"]
14468    pub fn zend_parse_arg_array_ht(
14469        arg: *const zval,
14470        dest: *mut *mut HashTable,
14471        check_null: bool,
14472        or_object: bool,
14473        separate: bool,
14474    ) -> bool;
14475    #[link_name = "zend_parse_arg_array_ht_or_long__extern"]
14476    pub fn zend_parse_arg_array_ht_or_long(
14477        arg: *mut zval,
14478        dest_ht: *mut *mut HashTable,
14479        dest_long: *mut zend_long,
14480        is_null: *mut bool,
14481        allow_null: bool,
14482        arg_num: u32,
14483    ) -> bool;
14484    #[link_name = "zend_parse_arg_object__extern"]
14485    pub fn zend_parse_arg_object(
14486        arg: *mut zval,
14487        dest: *mut *mut zval,
14488        ce: *mut zend_class_entry,
14489        check_null: bool,
14490    ) -> bool;
14491    #[link_name = "zend_parse_arg_obj__extern"]
14492    pub fn zend_parse_arg_obj(
14493        arg: *const zval,
14494        dest: *mut *mut zend_object,
14495        ce: *mut zend_class_entry,
14496        check_null: bool,
14497    ) -> bool;
14498    #[link_name = "zend_parse_arg_obj_or_long__extern"]
14499    pub fn zend_parse_arg_obj_or_long(
14500        arg: *mut zval,
14501        dest_obj: *mut *mut zend_object,
14502        ce: *mut zend_class_entry,
14503        dest_long: *mut zend_long,
14504        is_null: *mut bool,
14505        allow_null: bool,
14506        arg_num: u32,
14507    ) -> bool;
14508    #[link_name = "zend_parse_arg_resource__extern"]
14509    pub fn zend_parse_arg_resource(arg: *mut zval, dest: *mut *mut zval, check_null: bool) -> bool;
14510    #[link_name = "zend_parse_arg_func__extern"]
14511    pub fn zend_parse_arg_func(
14512        arg: *mut zval,
14513        dest_fci: *mut zend_fcall_info,
14514        dest_fcc: *mut zend_fcall_info_cache,
14515        check_null: bool,
14516        error: *mut *mut ::std::os::raw::c_char,
14517        free_trampoline: bool,
14518    ) -> bool;
14519    #[link_name = "zend_parse_arg_zval__extern"]
14520    pub fn zend_parse_arg_zval(arg: *mut zval, dest: *mut *mut zval, check_null: bool);
14521    #[link_name = "zend_parse_arg_zval_deref__extern"]
14522    pub fn zend_parse_arg_zval_deref(arg: *mut zval, dest: *mut *mut zval, check_null: bool);
14523    #[link_name = "zend_parse_arg_array_ht_or_str__extern"]
14524    pub fn zend_parse_arg_array_ht_or_str(
14525        arg: *mut zval,
14526        dest_ht: *mut *mut HashTable,
14527        dest_str: *mut *mut zend_string,
14528        allow_null: bool,
14529        arg_num: u32,
14530    ) -> bool;
14531    #[link_name = "zend_parse_arg_str_or_long__extern"]
14532    pub fn zend_parse_arg_str_or_long(
14533        arg: *mut zval,
14534        dest_str: *mut *mut zend_string,
14535        dest_long: *mut zend_long,
14536        is_null: *mut bool,
14537        allow_null: bool,
14538        arg_num: u32,
14539    ) -> bool;
14540    #[link_name = "zend_parse_arg_obj_or_class_name__extern"]
14541    pub fn zend_parse_arg_obj_or_class_name(
14542        arg: *mut zval,
14543        destination: *mut *mut zend_class_entry,
14544        allow_null: bool,
14545    ) -> bool;
14546    #[link_name = "zend_parse_arg_obj_or_str__extern"]
14547    pub fn zend_parse_arg_obj_or_str(
14548        arg: *mut zval,
14549        destination_object: *mut *mut zend_object,
14550        base_ce: *mut zend_class_entry,
14551        destination_string: *mut *mut zend_string,
14552        allow_null: bool,
14553        arg_num: u32,
14554    ) -> bool;
14555    pub static mut zend_ce_attribute: *mut zend_class_entry;
14556    pub static mut zend_ce_allow_dynamic_properties: *mut zend_class_entry;
14557    pub static mut zend_ce_sensitive_parameter: *mut zend_class_entry;
14558    pub static mut zend_ce_sensitive_parameter_value: *mut zend_class_entry;
14559    pub static mut zend_ce_override: *mut zend_class_entry;
14560    pub static mut zend_ce_deprecated: *mut zend_class_entry;
14561    pub static mut zend_ce_nodiscard: *mut zend_class_entry;
14562    pub static mut zend_ce_delayed_target_validation: *mut zend_class_entry;
14563    pub fn zend_get_attribute(
14564        attributes: *mut HashTable,
14565        lcname: *mut zend_string,
14566    ) -> *mut zend_attribute;
14567    pub fn zend_get_attribute_str(
14568        attributes: *mut HashTable,
14569        str_: *const ::std::os::raw::c_char,
14570        len: usize,
14571    ) -> *mut zend_attribute;
14572    pub fn zend_get_parameter_attribute(
14573        attributes: *mut HashTable,
14574        lcname: *mut zend_string,
14575        offset: u32,
14576    ) -> *mut zend_attribute;
14577    pub fn zend_get_parameter_attribute_str(
14578        attributes: *mut HashTable,
14579        str_: *const ::std::os::raw::c_char,
14580        len: usize,
14581        offset: u32,
14582    ) -> *mut zend_attribute;
14583    pub fn zend_get_attribute_value(
14584        ret: *mut zval,
14585        attr: *mut zend_attribute,
14586        i: u32,
14587        scope: *mut zend_class_entry,
14588    ) -> zend_result;
14589    pub fn zend_get_attribute_object(
14590        out: *mut zval,
14591        attribute_ce: *mut zend_class_entry,
14592        attribute_data: *mut zend_attribute,
14593        scope: *mut zend_class_entry,
14594        filename: *mut zend_string,
14595    ) -> zend_result;
14596    pub fn zend_get_attribute_target_names(targets: u32) -> *mut zend_string;
14597    pub fn zend_is_attribute_repeated(
14598        attributes: *mut HashTable,
14599        attr: *mut zend_attribute,
14600    ) -> bool;
14601    pub fn zend_mark_internal_attribute(ce: *mut zend_class_entry) -> *mut zend_internal_attribute;
14602    pub fn zend_internal_attribute_register(
14603        ce: *mut zend_class_entry,
14604        flags: u32,
14605    ) -> *mut zend_internal_attribute;
14606    pub fn zend_internal_attribute_get(lcname: *mut zend_string) -> *mut zend_internal_attribute;
14607    pub fn zend_add_attribute(
14608        attributes: *mut *mut HashTable,
14609        name: *mut zend_string,
14610        argc: u32,
14611        flags: u32,
14612        offset: u32,
14613        lineno: u32,
14614    ) -> *mut zend_attribute;
14615    #[link_name = "zend_add_class_attribute__extern"]
14616    pub fn zend_add_class_attribute(
14617        ce: *mut zend_class_entry,
14618        name: *mut zend_string,
14619        argc: u32,
14620    ) -> *mut zend_attribute;
14621    #[link_name = "zend_add_function_attribute__extern"]
14622    pub fn zend_add_function_attribute(
14623        func: *mut zend_function,
14624        name: *mut zend_string,
14625        argc: u32,
14626    ) -> *mut zend_attribute;
14627    #[link_name = "zend_add_parameter_attribute__extern"]
14628    pub fn zend_add_parameter_attribute(
14629        func: *mut zend_function,
14630        offset: u32,
14631        name: *mut zend_string,
14632        argc: u32,
14633    ) -> *mut zend_attribute;
14634    #[link_name = "zend_add_property_attribute__extern"]
14635    pub fn zend_add_property_attribute(
14636        ce: *mut zend_class_entry,
14637        info: *mut zend_property_info,
14638        name: *mut zend_string,
14639        argc: u32,
14640    ) -> *mut zend_attribute;
14641    #[link_name = "zend_add_class_constant_attribute__extern"]
14642    pub fn zend_add_class_constant_attribute(
14643        ce: *mut zend_class_entry,
14644        c: *mut zend_class_constant,
14645        name: *mut zend_string,
14646        argc: u32,
14647    ) -> *mut zend_attribute;
14648    #[link_name = "zend_add_global_constant_attribute__extern"]
14649    pub fn zend_add_global_constant_attribute(
14650        c: *mut zend_constant,
14651        name: *mut zend_string,
14652        argc: u32,
14653    ) -> *mut zend_attribute;
14654    pub fn zend_register_attribute_ce();
14655    pub fn zend_attributes_shutdown();
14656    pub fn zend_sensitive_parameter_value_init(obj: *mut zend_object, value: *mut zval);
14657    #[link_name = "zend_ulong_ntz__extern"]
14658    pub fn zend_ulong_ntz(num: zend_ulong) -> ::std::os::raw::c_int;
14659    #[link_name = "zend_ulong_nlz__extern"]
14660    pub fn zend_ulong_nlz(num: zend_ulong) -> ::std::os::raw::c_int;
14661    #[link_name = "zend_bitset_len__extern"]
14662    pub fn zend_bitset_len(n: u32) -> u32;
14663    #[link_name = "zend_bitset_in__extern"]
14664    pub fn zend_bitset_in(set: zend_bitset, n: u32) -> bool;
14665    #[link_name = "zend_bitset_incl__extern"]
14666    pub fn zend_bitset_incl(set: zend_bitset, n: u32);
14667    #[link_name = "zend_bitset_excl__extern"]
14668    pub fn zend_bitset_excl(set: zend_bitset, n: u32);
14669    #[link_name = "zend_bitset_clear__extern"]
14670    pub fn zend_bitset_clear(set: zend_bitset, len: u32);
14671    #[link_name = "zend_bitset_empty__extern"]
14672    pub fn zend_bitset_empty(set: zend_bitset, len: u32) -> bool;
14673    #[link_name = "zend_bitset_fill__extern"]
14674    pub fn zend_bitset_fill(set: zend_bitset, len: u32);
14675    #[link_name = "zend_bitset_equal__extern"]
14676    pub fn zend_bitset_equal(set1: zend_bitset, set2: zend_bitset, len: u32) -> bool;
14677    #[link_name = "zend_bitset_copy__extern"]
14678    pub fn zend_bitset_copy(set1: zend_bitset, set2: zend_bitset, len: u32);
14679    #[link_name = "zend_bitset_intersection__extern"]
14680    pub fn zend_bitset_intersection(set1: zend_bitset, set2: zend_bitset, len: u32);
14681    #[link_name = "zend_bitset_union__extern"]
14682    pub fn zend_bitset_union(set1: zend_bitset, set2: zend_bitset, len: u32);
14683    #[link_name = "zend_bitset_difference__extern"]
14684    pub fn zend_bitset_difference(set1: zend_bitset, set2: zend_bitset, len: u32);
14685    #[link_name = "zend_bitset_union_with_intersection__extern"]
14686    pub fn zend_bitset_union_with_intersection(
14687        set1: zend_bitset,
14688        set2: zend_bitset,
14689        set3: zend_bitset,
14690        set4: zend_bitset,
14691        len: u32,
14692    );
14693    #[link_name = "zend_bitset_union_with_difference__extern"]
14694    pub fn zend_bitset_union_with_difference(
14695        set1: zend_bitset,
14696        set2: zend_bitset,
14697        set3: zend_bitset,
14698        set4: zend_bitset,
14699        len: u32,
14700    );
14701    #[link_name = "zend_bitset_subset__extern"]
14702    pub fn zend_bitset_subset(set1: zend_bitset, set2: zend_bitset, len: u32) -> bool;
14703    #[link_name = "zend_bitset_first__extern"]
14704    pub fn zend_bitset_first(set: zend_bitset, len: u32) -> ::std::os::raw::c_int;
14705    #[link_name = "zend_bitset_last__extern"]
14706    pub fn zend_bitset_last(set: zend_bitset, len: u32) -> ::std::os::raw::c_int;
14707    #[link_name = "zend_bitset_pop_first__extern"]
14708    pub fn zend_bitset_pop_first(set: zend_bitset, len: u32) -> ::std::os::raw::c_int;
14709    pub fn zend_startup_builtin_functions() -> zend_result;
14710    pub fn zend_fetch_debug_backtrace(
14711        return_value: *mut zval,
14712        skip_last: ::std::os::raw::c_int,
14713        options: ::std::os::raw::c_int,
14714        limit: ::std::os::raw::c_int,
14715    );
14716    pub fn zend_register_closure_ce();
14717    pub fn zend_closure_bind_var(closure_zv: *mut zval, var_name: *mut zend_string, var: *mut zval);
14718    pub fn zend_closure_bind_var_ex(closure_zv: *mut zval, offset: u32, val: *mut zval);
14719    pub fn zend_closure_from_frame(closure_zv: *mut zval, frame: *mut zend_execute_data);
14720    pub static mut zend_ce_closure: *mut zend_class_entry;
14721    pub fn zend_create_closure(
14722        res: *mut zval,
14723        op_array: *mut zend_function,
14724        scope: *mut zend_class_entry,
14725        called_scope: *mut zend_class_entry,
14726        this_ptr: *mut zval,
14727    );
14728    pub fn zend_create_fake_closure(
14729        res: *mut zval,
14730        op_array: *mut zend_function,
14731        scope: *mut zend_class_entry,
14732        called_scope: *mut zend_class_entry,
14733        this_ptr: *mut zval,
14734    );
14735    pub fn zend_get_closure_invoke_method(obj: *mut zend_object) -> *mut zend_function;
14736    pub fn zend_get_closure_method_def(obj: *mut zend_object) -> *const zend_function;
14737    pub fn zend_get_closure_this_ptr(obj: *mut zval) -> *mut zval;
14738    pub fn zend_cpu_startup();
14739    pub fn zend_cpu_supports(feature: zend_cpu_feature) -> ::std::os::raw::c_int;
14740    #[link_name = "zend_cpu_supports_sse2__extern"]
14741    pub fn zend_cpu_supports_sse2() -> ::std::os::raw::c_int;
14742    #[link_name = "zend_cpu_supports_sse3__extern"]
14743    pub fn zend_cpu_supports_sse3() -> ::std::os::raw::c_int;
14744    #[link_name = "zend_cpu_supports_ssse3__extern"]
14745    pub fn zend_cpu_supports_ssse3() -> ::std::os::raw::c_int;
14746    #[link_name = "zend_cpu_supports_sse41__extern"]
14747    pub fn zend_cpu_supports_sse41() -> ::std::os::raw::c_int;
14748    #[link_name = "zend_cpu_supports_sse42__extern"]
14749    pub fn zend_cpu_supports_sse42() -> ::std::os::raw::c_int;
14750    #[link_name = "zend_cpu_supports_avx__extern"]
14751    pub fn zend_cpu_supports_avx() -> ::std::os::raw::c_int;
14752    #[link_name = "zend_cpu_supports_avx2__extern"]
14753    pub fn zend_cpu_supports_avx2() -> ::std::os::raw::c_int;
14754    #[link_name = "zend_cpu_supports_avx512__extern"]
14755    pub fn zend_cpu_supports_avx512() -> ::std::os::raw::c_int;
14756    #[link_name = "zend_cpu_supports_avx512_vbmi__extern"]
14757    pub fn zend_cpu_supports_avx512_vbmi() -> ::std::os::raw::c_int;
14758    #[link_name = "zend_cpu_supports_pclmul__extern"]
14759    pub fn zend_cpu_supports_pclmul() -> ::std::os::raw::c_int;
14760    pub static mut zend_ce_unit_enum: *mut zend_class_entry;
14761    pub static mut zend_ce_backed_enum: *mut zend_class_entry;
14762    pub static mut zend_enum_object_handlers: zend_object_handlers;
14763    pub fn zend_register_enum_ce();
14764    pub fn zend_enum_add_interfaces(ce: *mut zend_class_entry);
14765    pub fn zend_enum_build_backed_enum_table(ce: *mut zend_class_entry) -> zend_result;
14766    pub fn zend_enum_new(
14767        result: *mut zval,
14768        ce: *mut zend_class_entry,
14769        case_name: *mut zend_string,
14770        backing_value_zv: *mut zval,
14771    ) -> *mut zend_object;
14772    pub fn zend_verify_enum(ce: *const zend_class_entry);
14773    pub fn zend_enum_register_funcs(ce: *mut zend_class_entry);
14774    pub fn zend_enum_register_props(ce: *mut zend_class_entry);
14775    pub fn zend_register_internal_enum(
14776        name: *const ::std::os::raw::c_char,
14777        type_: u8,
14778        functions: *const zend_function_entry,
14779    ) -> *mut zend_class_entry;
14780    pub fn zend_enum_add_case(
14781        ce: *mut zend_class_entry,
14782        case_name: *mut zend_string,
14783        value: *mut zval,
14784    );
14785    pub fn zend_enum_add_case_cstr(
14786        ce: *mut zend_class_entry,
14787        name: *const ::std::os::raw::c_char,
14788        value: *mut zval,
14789    );
14790    pub fn zend_enum_get_case(
14791        ce: *mut zend_class_entry,
14792        name: *mut zend_string,
14793    ) -> *mut zend_object;
14794    pub fn zend_enum_get_case_cstr(
14795        ce: *mut zend_class_entry,
14796        name: *const ::std::os::raw::c_char,
14797    ) -> *mut zend_object;
14798    pub fn zend_enum_get_case_by_value(
14799        result: *mut *mut zend_object,
14800        ce: *mut zend_class_entry,
14801        long_key: zend_long,
14802        string_key: *mut zend_string,
14803        try_from: bool,
14804    ) -> zend_result;
14805    #[link_name = "zend_enum_fetch_case_name__extern"]
14806    pub fn zend_enum_fetch_case_name(zobj: *mut zend_object) -> *mut zval;
14807    #[link_name = "zend_enum_fetch_case_value__extern"]
14808    pub fn zend_enum_fetch_case_value(zobj: *mut zend_object) -> *mut zval;
14809    pub static mut zend_ce_throwable: *mut zend_class_entry;
14810    pub static mut zend_ce_exception: *mut zend_class_entry;
14811    pub static mut zend_ce_error_exception: *mut zend_class_entry;
14812    pub static mut zend_ce_error: *mut zend_class_entry;
14813    pub static mut zend_ce_compile_error: *mut zend_class_entry;
14814    pub static mut zend_ce_parse_error: *mut zend_class_entry;
14815    pub static mut zend_ce_type_error: *mut zend_class_entry;
14816    pub static mut zend_ce_argument_count_error: *mut zend_class_entry;
14817    pub static mut zend_ce_value_error: *mut zend_class_entry;
14818    pub static mut zend_ce_arithmetic_error: *mut zend_class_entry;
14819    pub static mut zend_ce_division_by_zero_error: *mut zend_class_entry;
14820    pub static mut zend_ce_unhandled_match_error: *mut zend_class_entry;
14821    pub static mut zend_ce_request_parse_body_exception: *mut zend_class_entry;
14822    pub fn zend_exception_set_previous(exception: *mut zend_object, add_previous: *mut zend_object);
14823    pub fn zend_exception_save();
14824    pub fn zend_exception_restore();
14825    pub fn zend_throw_exception_internal(exception: *mut zend_object);
14826    pub fn zend_register_default_exception();
14827    pub fn zend_get_exception_base(object: *const zend_object) -> *mut zend_class_entry;
14828    pub fn zend_register_default_classes();
14829    pub fn zend_throw_exception(
14830        exception_ce: *mut zend_class_entry,
14831        message: *const ::std::os::raw::c_char,
14832        code: zend_long,
14833    ) -> *mut zend_object;
14834    pub fn zend_throw_exception_ex(
14835        exception_ce: *mut zend_class_entry,
14836        code: zend_long,
14837        format: *const ::std::os::raw::c_char,
14838        ...
14839    ) -> *mut zend_object;
14840    pub fn zend_throw_exception_object(exception: *mut zval);
14841    pub fn zend_clear_exception();
14842    pub fn zend_throw_error_exception(
14843        exception_ce: *mut zend_class_entry,
14844        message: *mut zend_string,
14845        code: zend_long,
14846        severity: ::std::os::raw::c_int,
14847    ) -> *mut zend_object;
14848    pub static mut zend_throw_exception_hook:
14849        ::std::option::Option<unsafe extern "C" fn(ex: *mut zend_object)>;
14850    pub fn zend_update_exception_properties(
14851        execute_data: *mut zend_execute_data,
14852        return_value: *mut zval,
14853        message: *mut zend_string,
14854        code: zend_long,
14855        previous: *mut zval,
14856    ) -> zend_result;
14857    pub fn zend_exception_error(
14858        exception: *mut zend_object,
14859        severity: ::std::os::raw::c_int,
14860    ) -> zend_result;
14861    pub fn zend_exception_uncaught_error(prefix: *const ::std::os::raw::c_char, ...) -> !;
14862    pub fn zend_trace_to_string(trace: *const HashTable, include_main: bool) -> *mut zend_string;
14863    pub fn zend_create_unwind_exit() -> *mut zend_object;
14864    pub fn zend_create_graceful_exit() -> *mut zend_object;
14865    pub fn zend_throw_unwind_exit();
14866    pub fn zend_throw_graceful_exit();
14867    pub fn zend_is_unwind_exit(ex: *const zend_object) -> bool;
14868    pub fn zend_is_graceful_exit(ex: *const zend_object) -> bool;
14869    #[link_name = "zend_rethrow_exception__extern"]
14870    pub fn zend_rethrow_exception(execute_data: *mut zend_execute_data);
14871    pub static mut zend_op_array_extension_handles: ::std::os::raw::c_int;
14872    pub fn zend_get_resource_handle(
14873        module_name: *const ::std::os::raw::c_char,
14874    ) -> ::std::os::raw::c_int;
14875    pub fn zend_get_op_array_extension_handle(
14876        module_name: *const ::std::os::raw::c_char,
14877    ) -> ::std::os::raw::c_int;
14878    pub fn zend_get_op_array_extension_handles(
14879        module_name: *const ::std::os::raw::c_char,
14880        handles: ::std::os::raw::c_int,
14881    ) -> ::std::os::raw::c_int;
14882    pub fn zend_get_internal_function_extension_handle(
14883        module_name: *const ::std::os::raw::c_char,
14884    ) -> ::std::os::raw::c_int;
14885    pub fn zend_get_internal_function_extension_handles(
14886        module_name: *const ::std::os::raw::c_char,
14887        handles: ::std::os::raw::c_int,
14888    ) -> ::std::os::raw::c_int;
14889    pub fn zend_extension_dispatch_message(
14890        message: ::std::os::raw::c_int,
14891        arg: *mut ::std::os::raw::c_void,
14892    );
14893    pub static mut zend_extensions: zend_llist;
14894    pub static mut zend_extension_flags: u32;
14895    pub fn zend_extension_dtor(extension: *mut zend_extension);
14896    pub fn zend_append_version_info(extension: *const zend_extension);
14897    pub fn zend_startup_extensions_mechanism();
14898    pub fn zend_startup_extensions();
14899    pub fn zend_shutdown_extensions();
14900    pub fn zend_internal_run_time_cache_reserved_size() -> usize;
14901    pub fn zend_init_internal_run_time_cache();
14902    pub fn zend_reset_internal_run_time_cache();
14903    pub fn zend_load_extension(path: *const ::std::os::raw::c_char) -> zend_result;
14904    pub fn zend_load_extension_handle(
14905        handle: *mut ::std::os::raw::c_void,
14906        path: *const ::std::os::raw::c_char,
14907    ) -> zend_result;
14908    pub fn zend_register_extension(
14909        new_extension: *mut zend_extension,
14910        handle: *mut ::std::os::raw::c_void,
14911    );
14912    pub fn zend_get_extension(extension_name: *const ::std::os::raw::c_char)
14913    -> *mut zend_extension;
14914    pub fn zend_extensions_op_array_persist_calc(op_array: *mut zend_op_array) -> usize;
14915    pub fn zend_extensions_op_array_persist(
14916        op_array: *mut zend_op_array,
14917        mem: *mut ::std::os::raw::c_void,
14918    ) -> usize;
14919    pub fn zend_register_fiber_ce();
14920    pub fn zend_fiber_init();
14921    pub fn zend_fiber_shutdown();
14922    pub static mut zend_ce_fiber: *mut zend_class_entry;
14923    pub fn zend_fiber_start(fiber: *mut zend_fiber, return_value: *mut zval) -> zend_result;
14924    pub fn zend_fiber_resume(fiber: *mut zend_fiber, value: *mut zval, return_value: *mut zval);
14925    pub fn zend_fiber_suspend(fiber: *mut zend_fiber, value: *mut zval, return_value: *mut zval);
14926    pub fn zend_fiber_init_context(
14927        context: *mut zend_fiber_context,
14928        kind: *mut ::std::os::raw::c_void,
14929        coroutine: zend_fiber_coroutine,
14930        stack_size: usize,
14931    ) -> zend_result;
14932    pub fn zend_fiber_destroy_context(context: *mut zend_fiber_context);
14933    pub fn zend_fiber_switch_context(transfer: *mut zend_fiber_transfer);
14934    pub fn zend_fiber_stack_limit(stack: *mut zend_fiber_stack) -> *mut ::std::os::raw::c_void;
14935    pub fn zend_fiber_stack_base(stack: *mut zend_fiber_stack) -> *mut ::std::os::raw::c_void;
14936    pub fn zend_fiber_switch_block();
14937    pub fn zend_fiber_switch_unblock();
14938    pub fn zend_fiber_switch_blocked() -> bool;
14939    #[link_name = "zend_fiber_from_context__extern"]
14940    pub fn zend_fiber_from_context(context: *mut zend_fiber_context) -> *mut zend_fiber;
14941    #[link_name = "zend_fiber_get_context__extern"]
14942    pub fn zend_fiber_get_context(fiber: *mut zend_fiber) -> *mut zend_fiber_context;
14943    pub fn zend_gdb_register_code(object: *const ::std::os::raw::c_void, size: usize) -> bool;
14944    pub fn zend_gdb_unregister_all();
14945    pub fn zend_gdb_present() -> bool;
14946    pub static mut zend_ce_generator: *mut zend_class_entry;
14947    pub static mut zend_ce_ClosedGeneratorException: *mut zend_class_entry;
14948    pub fn zend_register_generator_ce();
14949    pub fn zend_generator_close(generator: *mut zend_generator, finished_execution: bool);
14950    pub fn zend_generator_resume(generator: *mut zend_generator);
14951    pub fn zend_generator_restore_call_stack(generator: *mut zend_generator);
14952    pub fn zend_generator_freeze_call_stack(
14953        execute_data: *mut zend_execute_data,
14954    ) -> *mut zend_execute_data;
14955    pub fn zend_generator_yield_from(generator: *mut zend_generator, from: *mut zend_generator);
14956    pub fn zend_generator_check_placeholder_frame(
14957        ptr: *mut zend_execute_data,
14958    ) -> *mut zend_execute_data;
14959    pub fn zend_generator_update_current(generator: *mut zend_generator) -> *mut zend_generator;
14960    pub fn zend_generator_update_root(generator: *mut zend_generator) -> *mut zend_generator;
14961    #[link_name = "zend_generator_get_current__extern"]
14962    pub fn zend_generator_get_current(generator: *mut zend_generator) -> *mut zend_generator;
14963    pub fn zend_generator_frame_gc(
14964        gc_buffer: *mut zend_get_gc_buffer,
14965        generator: *mut zend_generator,
14966    ) -> *mut HashTable;
14967    pub fn zend_highlight(syntax_highlighter_ini: *mut zend_syntax_highlighter_ini);
14968    pub fn zend_strip();
14969    pub fn highlight_file(
14970        filename: *const ::std::os::raw::c_char,
14971        syntax_highlighter_ini: *mut zend_syntax_highlighter_ini,
14972    ) -> zend_result;
14973    pub fn highlight_string(
14974        str_: *mut zend_string,
14975        syntax_highlighter_ini: *mut zend_syntax_highlighter_ini,
14976        str_name: *const ::std::os::raw::c_char,
14977    );
14978    pub fn zend_html_putc(c: ::std::os::raw::c_char);
14979    pub fn zend_html_puts(s: *const ::std::os::raw::c_char, len: usize);
14980    pub static mut syntax_highlighter_ini: zend_syntax_highlighter_ini;
14981    pub fn zend_do_implement_interface(ce: *mut zend_class_entry, iface: *mut zend_class_entry);
14982    pub fn zend_do_inheritance_ex(
14983        ce: *mut zend_class_entry,
14984        parent_ce: *mut zend_class_entry,
14985        checked: bool,
14986    );
14987    #[link_name = "zend_do_inheritance__extern"]
14988    pub fn zend_do_inheritance(ce: *mut zend_class_entry, parent_ce: *mut zend_class_entry);
14989    pub fn zend_do_link_class(
14990        ce: *mut zend_class_entry,
14991        lc_parent_name: *mut zend_string,
14992        key: *const zend_string,
14993    ) -> *mut zend_class_entry;
14994    pub fn zend_verify_abstract_class(ce: *mut zend_class_entry);
14995    pub fn zend_build_properties_info_table(ce: *mut zend_class_entry);
14996    pub fn zend_try_early_bind(
14997        ce: *mut zend_class_entry,
14998        parent_ce: *mut zend_class_entry,
14999        lcname: *mut zend_string,
15000        delayed_early_binding: *mut zval,
15001    ) -> *mut zend_class_entry;
15002    pub fn zend_inheritance_check_override(ce: *const zend_class_entry);
15003    pub static mut zend_inheritance_cache_get: ::std::option::Option<
15004        unsafe extern "C" fn(
15005            ce: *mut zend_class_entry,
15006            parent: *mut zend_class_entry,
15007            traits_and_interfaces: *mut *mut zend_class_entry,
15008        ) -> *mut zend_class_entry,
15009    >;
15010    pub static mut zend_inheritance_cache_add: ::std::option::Option<
15011        unsafe extern "C" fn(
15012            ce: *mut zend_class_entry,
15013            proto: *mut zend_class_entry,
15014            parent: *mut zend_class_entry,
15015            traits_and_interfaces: *mut *mut zend_class_entry,
15016            dependencies: *mut HashTable,
15017        ) -> *mut zend_class_entry,
15018    >;
15019    pub fn zend_verify_property_hook_variance(
15020        prop_info: *const zend_property_info,
15021        func: *const zend_function,
15022    ) -> zend_inheritance_status::Type;
15023    pub fn zend_hooked_property_variance_error(prop_info: *const zend_property_info) -> !;
15024    pub fn zend_hooked_property_variance_error_ex(
15025        value_param_name: *mut zend_string,
15026        class_name: *mut zend_string,
15027        prop_name: *mut zend_string,
15028    ) -> !;
15029    pub fn zend_verify_hooked_property(
15030        ce: *const zend_class_entry,
15031        prop_info: *mut zend_property_info,
15032        prop_name: *mut zend_string,
15033    );
15034    pub fn zend_ini_startup();
15035    pub fn zend_ini_shutdown();
15036    pub fn zend_ini_global_shutdown();
15037    pub fn zend_ini_deactivate();
15038    pub fn zend_ini_dtor(ini_directives: *mut HashTable);
15039    pub fn zend_copy_ini_directives();
15040    pub fn zend_ini_sort_entries();
15041    pub fn zend_register_ini_entries(
15042        ini_entry: *const zend_ini_entry_def,
15043        module_number: ::std::os::raw::c_int,
15044    ) -> zend_result;
15045    pub fn zend_register_ini_entries_ex(
15046        ini_entry: *const zend_ini_entry_def,
15047        module_number: ::std::os::raw::c_int,
15048        module_type: ::std::os::raw::c_int,
15049    ) -> zend_result;
15050    pub fn zend_unregister_ini_entries(module_number: ::std::os::raw::c_int);
15051    pub fn zend_unregister_ini_entries_ex(
15052        module_number: ::std::os::raw::c_int,
15053        module_type: ::std::os::raw::c_int,
15054    );
15055    pub fn zend_ini_refresh_caches(stage: ::std::os::raw::c_int);
15056    pub fn zend_alter_ini_entry(
15057        name: *mut zend_string,
15058        new_value: *mut zend_string,
15059        modify_type: ::std::os::raw::c_int,
15060        stage: ::std::os::raw::c_int,
15061    ) -> zend_result;
15062    pub fn zend_alter_ini_entry_ex(
15063        name: *mut zend_string,
15064        new_value: *mut zend_string,
15065        modify_type: ::std::os::raw::c_int,
15066        stage: ::std::os::raw::c_int,
15067        force_change: bool,
15068    ) -> zend_result;
15069    pub fn zend_alter_ini_entry_chars(
15070        name: *mut zend_string,
15071        value: *const ::std::os::raw::c_char,
15072        value_length: usize,
15073        modify_type: ::std::os::raw::c_int,
15074        stage: ::std::os::raw::c_int,
15075    ) -> zend_result;
15076    pub fn zend_alter_ini_entry_chars_ex(
15077        name: *mut zend_string,
15078        value: *const ::std::os::raw::c_char,
15079        value_length: usize,
15080        modify_type: ::std::os::raw::c_int,
15081        stage: ::std::os::raw::c_int,
15082        force_change: ::std::os::raw::c_int,
15083    ) -> zend_result;
15084    pub fn zend_restore_ini_entry(
15085        name: *mut zend_string,
15086        stage: ::std::os::raw::c_int,
15087    ) -> zend_result;
15088    pub fn display_ini_entries(module: *mut zend_module_entry);
15089    pub fn zend_ini_long(
15090        name: *const ::std::os::raw::c_char,
15091        name_length: usize,
15092        orig: ::std::os::raw::c_int,
15093    ) -> zend_long;
15094    pub fn zend_ini_double(
15095        name: *const ::std::os::raw::c_char,
15096        name_length: usize,
15097        orig: ::std::os::raw::c_int,
15098    ) -> f64;
15099    pub fn zend_ini_string(
15100        name: *const ::std::os::raw::c_char,
15101        name_length: usize,
15102        orig: ::std::os::raw::c_int,
15103    ) -> *mut ::std::os::raw::c_char;
15104    pub fn zend_ini_string_ex(
15105        name: *const ::std::os::raw::c_char,
15106        name_length: usize,
15107        orig: ::std::os::raw::c_int,
15108        exists: *mut bool,
15109    ) -> *mut ::std::os::raw::c_char;
15110    pub fn zend_ini_str(
15111        name: *const ::std::os::raw::c_char,
15112        name_length: usize,
15113        orig: bool,
15114    ) -> *mut zend_string;
15115    pub fn zend_ini_str_ex(
15116        name: *const ::std::os::raw::c_char,
15117        name_length: usize,
15118        orig: bool,
15119        exists: *mut bool,
15120    ) -> *mut zend_string;
15121    pub fn zend_ini_get_value(name: *mut zend_string) -> *mut zend_string;
15122    pub fn zend_ini_parse_bool(str_: *mut zend_string) -> bool;
15123    #[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"]
15124    pub fn zend_ini_parse_quantity(
15125        value: *mut zend_string,
15126        errstr: *mut *mut zend_string,
15127    ) -> zend_long;
15128    #[doc = " Unsigned variant of zend_ini_parse_quantity"]
15129    pub fn zend_ini_parse_uquantity(
15130        value: *mut zend_string,
15131        errstr: *mut *mut zend_string,
15132    ) -> zend_ulong;
15133    pub fn zend_ini_parse_quantity_warn(
15134        value: *mut zend_string,
15135        setting: *mut zend_string,
15136    ) -> zend_long;
15137    pub fn zend_ini_parse_uquantity_warn(
15138        value: *mut zend_string,
15139        setting: *mut zend_string,
15140    ) -> zend_ulong;
15141    pub fn zend_ini_register_displayer(
15142        name: *const ::std::os::raw::c_char,
15143        name_length: u32,
15144        displayer: ::std::option::Option<
15145            unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
15146        >,
15147    ) -> zend_result;
15148    pub fn zend_ini_boolean_displayer_cb(
15149        ini_entry: *mut zend_ini_entry,
15150        type_: ::std::os::raw::c_int,
15151    );
15152    pub fn zend_ini_color_displayer_cb(
15153        ini_entry: *mut zend_ini_entry,
15154        type_: ::std::os::raw::c_int,
15155    );
15156    pub fn display_link_numbers(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int);
15157    pub fn OnUpdateBool(
15158        entry: *mut zend_ini_entry,
15159        new_value: *mut zend_string,
15160        mh_arg1: *mut ::std::os::raw::c_void,
15161        mh_arg2: *mut ::std::os::raw::c_void,
15162        mh_arg3: *mut ::std::os::raw::c_void,
15163        stage: ::std::os::raw::c_int,
15164    ) -> ::std::os::raw::c_int;
15165    pub fn OnUpdateLong(
15166        entry: *mut zend_ini_entry,
15167        new_value: *mut zend_string,
15168        mh_arg1: *mut ::std::os::raw::c_void,
15169        mh_arg2: *mut ::std::os::raw::c_void,
15170        mh_arg3: *mut ::std::os::raw::c_void,
15171        stage: ::std::os::raw::c_int,
15172    ) -> ::std::os::raw::c_int;
15173    pub fn OnUpdateLongGEZero(
15174        entry: *mut zend_ini_entry,
15175        new_value: *mut zend_string,
15176        mh_arg1: *mut ::std::os::raw::c_void,
15177        mh_arg2: *mut ::std::os::raw::c_void,
15178        mh_arg3: *mut ::std::os::raw::c_void,
15179        stage: ::std::os::raw::c_int,
15180    ) -> ::std::os::raw::c_int;
15181    pub fn OnUpdateReal(
15182        entry: *mut zend_ini_entry,
15183        new_value: *mut zend_string,
15184        mh_arg1: *mut ::std::os::raw::c_void,
15185        mh_arg2: *mut ::std::os::raw::c_void,
15186        mh_arg3: *mut ::std::os::raw::c_void,
15187        stage: ::std::os::raw::c_int,
15188    ) -> ::std::os::raw::c_int;
15189    pub fn OnUpdateString(
15190        entry: *mut zend_ini_entry,
15191        new_value: *mut zend_string,
15192        mh_arg1: *mut ::std::os::raw::c_void,
15193        mh_arg2: *mut ::std::os::raw::c_void,
15194        mh_arg3: *mut ::std::os::raw::c_void,
15195        stage: ::std::os::raw::c_int,
15196    ) -> ::std::os::raw::c_int;
15197    pub fn OnUpdateStringUnempty(
15198        entry: *mut zend_ini_entry,
15199        new_value: *mut zend_string,
15200        mh_arg1: *mut ::std::os::raw::c_void,
15201        mh_arg2: *mut ::std::os::raw::c_void,
15202        mh_arg3: *mut ::std::os::raw::c_void,
15203        stage: ::std::os::raw::c_int,
15204    ) -> ::std::os::raw::c_int;
15205    pub fn OnUpdateStr(
15206        entry: *mut zend_ini_entry,
15207        new_value: *mut zend_string,
15208        mh_arg1: *mut ::std::os::raw::c_void,
15209        mh_arg2: *mut ::std::os::raw::c_void,
15210        mh_arg3: *mut ::std::os::raw::c_void,
15211        stage: ::std::os::raw::c_int,
15212    ) -> ::std::os::raw::c_int;
15213    pub fn OnUpdateStrNotEmpty(
15214        entry: *mut zend_ini_entry,
15215        new_value: *mut zend_string,
15216        mh_arg1: *mut ::std::os::raw::c_void,
15217        mh_arg2: *mut ::std::os::raw::c_void,
15218        mh_arg3: *mut ::std::os::raw::c_void,
15219        stage: ::std::os::raw::c_int,
15220    ) -> ::std::os::raw::c_int;
15221    pub fn zend_parse_ini_file(
15222        fh: *mut zend_file_handle,
15223        unbuffered_errors: bool,
15224        scanner_mode: ::std::os::raw::c_int,
15225        ini_parser_cb: zend_ini_parser_cb_t,
15226        arg: *mut ::std::os::raw::c_void,
15227    ) -> zend_result;
15228    pub fn zend_parse_ini_string(
15229        str_: *const ::std::os::raw::c_char,
15230        unbuffered_errors: bool,
15231        scanner_mode: ::std::os::raw::c_int,
15232        ini_parser_cb: zend_ini_parser_cb_t,
15233        arg: *mut ::std::os::raw::c_void,
15234    ) -> zend_result;
15235    pub fn zend_ini_scanner_get_lineno() -> ::std::os::raw::c_int;
15236    pub fn zend_ini_scanner_get_filename() -> *const ::std::os::raw::c_char;
15237    pub fn zend_ini_open_file_for_scanning(
15238        fh: *mut zend_file_handle,
15239        scanner_mode: ::std::os::raw::c_int,
15240    ) -> zend_result;
15241    pub fn zend_ini_prepare_string_for_scanning(
15242        str_: *const ::std::os::raw::c_char,
15243        scanner_mode: ::std::os::raw::c_int,
15244    ) -> zend_result;
15245    pub fn ini_lex(ini_lval: *mut zval) -> ::std::os::raw::c_int;
15246    pub fn shutdown_ini_scanner();
15247    pub static mut zend_ce_traversable: *mut zend_class_entry;
15248    pub static mut zend_ce_aggregate: *mut zend_class_entry;
15249    pub static mut zend_ce_iterator: *mut zend_class_entry;
15250    pub static mut zend_ce_arrayaccess: *mut zend_class_entry;
15251    pub static mut zend_ce_serializable: *mut zend_class_entry;
15252    pub static mut zend_ce_countable: *mut zend_class_entry;
15253    pub static mut zend_ce_stringable: *mut zend_class_entry;
15254    pub fn zend_call_method(
15255        object: *mut zend_object,
15256        obj_ce: *mut zend_class_entry,
15257        fn_proxy: *mut *mut zend_function,
15258        function_name: *const ::std::os::raw::c_char,
15259        function_name_len: usize,
15260        retval: *mut zval,
15261        param_count: u32,
15262        arg1: *mut zval,
15263        arg2: *mut zval,
15264    ) -> *mut zval;
15265    #[link_name = "zend_call_method_with_0_params__extern"]
15266    pub fn zend_call_method_with_0_params(
15267        object: *mut zend_object,
15268        obj_ce: *mut zend_class_entry,
15269        fn_proxy: *mut *mut zend_function,
15270        function_name: *const ::std::os::raw::c_char,
15271        retval: *mut zval,
15272    ) -> *mut zval;
15273    #[link_name = "zend_call_method_with_1_params__extern"]
15274    pub fn zend_call_method_with_1_params(
15275        object: *mut zend_object,
15276        obj_ce: *mut zend_class_entry,
15277        fn_proxy: *mut *mut zend_function,
15278        function_name: *const ::std::os::raw::c_char,
15279        retval: *mut zval,
15280        arg1: *mut zval,
15281    ) -> *mut zval;
15282    #[link_name = "zend_call_method_with_2_params__extern"]
15283    pub fn zend_call_method_with_2_params(
15284        object: *mut zend_object,
15285        obj_ce: *mut zend_class_entry,
15286        fn_proxy: *mut *mut zend_function,
15287        function_name: *const ::std::os::raw::c_char,
15288        retval: *mut zval,
15289        arg1: *mut zval,
15290        arg2: *mut zval,
15291    ) -> *mut zval;
15292    pub fn zend_user_it_rewind(_iter: *mut zend_object_iterator);
15293    pub fn zend_user_it_valid(_iter: *mut zend_object_iterator) -> zend_result;
15294    pub fn zend_user_it_get_current_key(_iter: *mut zend_object_iterator, key: *mut zval);
15295    pub fn zend_user_it_get_current_data(_iter: *mut zend_object_iterator) -> *mut zval;
15296    pub fn zend_user_it_move_forward(_iter: *mut zend_object_iterator);
15297    pub fn zend_user_it_invalidate_current(_iter: *mut zend_object_iterator);
15298    pub fn zend_user_it_get_gc(
15299        _iter: *mut zend_object_iterator,
15300        table: *mut *mut zval,
15301        n: *mut ::std::os::raw::c_int,
15302    ) -> *mut HashTable;
15303    pub fn zend_user_it_new_iterator(
15304        ce: *mut zend_class_entry,
15305        object: *mut zval,
15306        iterator: *mut zval,
15307    );
15308    pub fn zend_user_it_get_new_iterator(
15309        ce: *mut zend_class_entry,
15310        object: *mut zval,
15311        by_ref: ::std::os::raw::c_int,
15312    ) -> *mut zend_object_iterator;
15313    pub fn zend_register_interfaces();
15314    pub fn zend_user_serialize(
15315        object: *mut zval,
15316        buffer: *mut *mut ::std::os::raw::c_uchar,
15317        buf_len: *mut usize,
15318        data: *mut zend_serialize_data,
15319    ) -> ::std::os::raw::c_int;
15320    pub fn zend_user_unserialize(
15321        object: *mut zval,
15322        ce: *mut zend_class_entry,
15323        buf: *const ::std::os::raw::c_uchar,
15324        buf_len: usize,
15325        data: *mut zend_unserialize_data,
15326    ) -> ::std::os::raw::c_int;
15327    pub fn zend_create_internal_iterator_zval(
15328        return_value: *mut zval,
15329        obj: *mut zval,
15330    ) -> zend_result;
15331    pub fn zend_save_lexical_state(lex_state: *mut zend_lex_state);
15332    pub fn zend_restore_lexical_state(lex_state: *mut zend_lex_state);
15333    pub fn zend_prepare_string_for_scanning(str_: *mut zval, filename: *mut zend_string);
15334    pub fn zend_multibyte_yyinput_again(
15335        old_input_filter: zend_encoding_filter,
15336        old_encoding: *const zend_encoding,
15337    );
15338    pub fn zend_multibyte_set_filter(onetime_encoding: *const zend_encoding) -> zend_result;
15339    pub fn zend_lex_tstring(zv: *mut zval, ident: *mut ::std::os::raw::c_uchar) -> zend_result;
15340    #[doc = " Set a name for the specified memory area.\n\n This feature requires Linux 5.17."]
15341    #[link_name = "zend_mmap_set_name__extern"]
15342    pub fn zend_mmap_set_name(
15343        start: *const ::std::os::raw::c_void,
15344        len: usize,
15345        name: *const ::std::os::raw::c_char,
15346    );
15347    pub static mut zend_observer_fcall_op_array_extension: ::std::os::raw::c_int;
15348    pub static mut zend_observer_fcall_internal_function_extension: ::std::os::raw::c_int;
15349    pub static mut zend_observer_errors_observed: bool;
15350    pub static mut zend_observer_function_declared_observed: bool;
15351    pub static mut zend_observer_class_linked_observed: bool;
15352    pub fn zend_observer_fcall_register(arg1: zend_observer_fcall_init);
15353    pub fn zend_observer_add_begin_handler(
15354        function: *mut zend_function,
15355        begin: zend_observer_fcall_begin_handler,
15356    );
15357    pub fn zend_observer_remove_begin_handler(
15358        function: *mut zend_function,
15359        begin: zend_observer_fcall_begin_handler,
15360        next: *mut zend_observer_fcall_begin_handler,
15361    ) -> bool;
15362    pub fn zend_observer_add_end_handler(
15363        function: *mut zend_function,
15364        end: zend_observer_fcall_end_handler,
15365    );
15366    pub fn zend_observer_remove_end_handler(
15367        function: *mut zend_function,
15368        end: zend_observer_fcall_end_handler,
15369        next: *mut zend_observer_fcall_end_handler,
15370    ) -> bool;
15371    pub fn zend_observer_startup();
15372    pub fn zend_observer_post_startup();
15373    pub fn zend_observer_activate();
15374    pub fn zend_observer_shutdown();
15375    pub fn zend_observer_fcall_begin(execute_data: *mut zend_execute_data);
15376    pub fn zend_observer_fcall_begin_prechecked(
15377        execute_data: *mut zend_execute_data,
15378        observer_data: *mut zend_observer_fcall_begin_handler,
15379    );
15380    #[link_name = "zend_observer_handler_is_unobserved__extern"]
15381    pub fn zend_observer_handler_is_unobserved(
15382        handler: *mut zend_observer_fcall_begin_handler,
15383    ) -> bool;
15384    #[link_name = "zend_observer_fcall_has_no_observers__extern"]
15385    pub fn zend_observer_fcall_has_no_observers(
15386        execute_data: *mut zend_execute_data,
15387        allow_generator: bool,
15388        handler: *mut *mut zend_observer_fcall_begin_handler,
15389    ) -> bool;
15390    #[link_name = "zend_observer_fcall_begin_specialized__extern"]
15391    pub fn zend_observer_fcall_begin_specialized(
15392        execute_data: *mut zend_execute_data,
15393        allow_generator: bool,
15394    );
15395    pub fn zend_observer_generator_resume(execute_data: *mut zend_execute_data);
15396    pub fn zend_observer_fcall_end_prechecked(
15397        execute_data: *mut zend_execute_data,
15398        return_value: *mut zval,
15399    );
15400    #[link_name = "zend_observer_fcall_end__extern"]
15401    pub fn zend_observer_fcall_end(execute_data: *mut zend_execute_data, return_value: *mut zval);
15402    pub fn zend_observer_fcall_end_all();
15403    pub fn zend_observer_function_declared_register(cb: zend_observer_function_declared_cb);
15404    pub fn _zend_observer_function_declared_notify(
15405        op_array: *mut zend_op_array,
15406        name: *mut zend_string,
15407    );
15408    #[link_name = "zend_observer_function_declared_notify__extern"]
15409    pub fn zend_observer_function_declared_notify(
15410        op_array: *mut zend_op_array,
15411        name: *mut zend_string,
15412    );
15413    pub fn zend_observer_class_linked_register(cb: zend_observer_class_linked_cb);
15414    pub fn _zend_observer_class_linked_notify(ce: *mut zend_class_entry, name: *mut zend_string);
15415    #[link_name = "zend_observer_class_linked_notify__extern"]
15416    pub fn zend_observer_class_linked_notify(ce: *mut zend_class_entry, name: *mut zend_string);
15417    pub fn zend_observer_error_register(callback: zend_observer_error_cb);
15418    pub fn _zend_observer_error_notify(
15419        type_: ::std::os::raw::c_int,
15420        error_filename: *mut zend_string,
15421        error_lineno: u32,
15422        message: *mut zend_string,
15423    );
15424    #[link_name = "zend_observer_error_notify__extern"]
15425    pub fn zend_observer_error_notify(
15426        type_: ::std::os::raw::c_int,
15427        error_filename: *mut zend_string,
15428        error_lineno: u32,
15429        message: *mut zend_string,
15430    );
15431    pub fn zend_observer_fiber_init_register(handler: zend_observer_fiber_init_handler);
15432    pub fn zend_observer_fiber_switch_register(handler: zend_observer_fiber_switch_handler);
15433    pub fn zend_observer_fiber_destroy_register(handler: zend_observer_fiber_destroy_handler);
15434    pub fn zend_observer_fiber_init_notify(initializing: *mut zend_fiber_context);
15435    pub fn zend_observer_fiber_switch_notify(
15436        from: *mut zend_fiber_context,
15437        to: *mut zend_fiber_context,
15438    );
15439    pub fn zend_observer_fiber_destroy_notify(destroying: *mut zend_fiber_context);
15440    pub fn smart_str_erealloc(str_: *mut smart_str, len: usize);
15441    pub fn smart_str_ferealloc(str_: *mut smart_str, len: usize, fallible: bool) -> bool;
15442    pub fn smart_str_realloc(str_: *mut smart_str, len: usize);
15443    pub fn smart_str_frealloc(str_: *mut smart_str, len: usize, fallible: bool) -> bool;
15444    pub fn smart_str_append_escaped(
15445        str_: *mut smart_str,
15446        s: *const ::std::os::raw::c_char,
15447        l: usize,
15448    );
15449    pub fn smart_str_append_double(
15450        str_: *mut smart_str,
15451        num: f64,
15452        precision: ::std::os::raw::c_int,
15453        zero_fraction: bool,
15454    );
15455    pub fn smart_str_append_printf(
15456        dest: *mut smart_str,
15457        format: *const ::std::os::raw::c_char,
15458        ...
15459    );
15460    pub fn smart_str_append_escaped_truncated(
15461        str_: *mut smart_str,
15462        value: *const zend_string,
15463        length: usize,
15464    );
15465    pub fn smart_str_append_scalar(str_: *mut smart_str, value: *const zval, truncate: usize);
15466    pub fn smart_str_append_zval(
15467        dest: *mut smart_str,
15468        value: *const zval,
15469        truncate: usize,
15470    ) -> zend_result;
15471    #[link_name = "smart_str_falloc__extern"]
15472    pub fn smart_str_falloc(
15473        str_: *mut smart_str,
15474        len: usize,
15475        persistent: bool,
15476        fallible: bool,
15477    ) -> usize;
15478    #[link_name = "smart_str_alloc__extern"]
15479    pub fn smart_str_alloc(str_: *mut smart_str, len: usize, persistent: bool) -> usize;
15480    #[link_name = "smart_str_fextend_ex__extern"]
15481    pub fn smart_str_fextend_ex(
15482        dest: *mut smart_str,
15483        len: usize,
15484        persistent: bool,
15485        fallible: bool,
15486    ) -> *mut ::std::os::raw::c_char;
15487    #[link_name = "smart_str_extend_ex__extern"]
15488    pub fn smart_str_extend_ex(
15489        dest: *mut smart_str,
15490        len: usize,
15491        persistent: bool,
15492    ) -> *mut ::std::os::raw::c_char;
15493    #[link_name = "smart_str_extend__extern"]
15494    pub fn smart_str_extend(dest: *mut smart_str, length: usize) -> *mut ::std::os::raw::c_char;
15495    #[link_name = "smart_str_free_ex__extern"]
15496    pub fn smart_str_free_ex(str_: *mut smart_str, persistent: bool);
15497    #[link_name = "smart_str_free__extern"]
15498    pub fn smart_str_free(str_: *mut smart_str);
15499    #[link_name = "smart_str_0__extern"]
15500    pub fn smart_str_0(str_: *mut smart_str);
15501    #[link_name = "smart_str_get_len__extern"]
15502    pub fn smart_str_get_len(str_: *mut smart_str) -> usize;
15503    #[link_name = "smart_str_trim_to_size_ex__extern"]
15504    pub fn smart_str_trim_to_size_ex(str_: *mut smart_str, persistent: bool);
15505    #[link_name = "smart_str_trim_to_size__extern"]
15506    pub fn smart_str_trim_to_size(dest: *mut smart_str);
15507    #[link_name = "smart_str_extract_ex__extern"]
15508    pub fn smart_str_extract_ex(str_: *mut smart_str, persistent: bool) -> *mut zend_string;
15509    #[link_name = "smart_str_extract__extern"]
15510    pub fn smart_str_extract(dest: *mut smart_str) -> *mut zend_string;
15511    #[link_name = "smart_str_appendc_ex__extern"]
15512    pub fn smart_str_appendc_ex(dest: *mut smart_str, ch: ::std::os::raw::c_char, persistent: bool);
15513    #[link_name = "smart_str_fappendl_ex__extern"]
15514    pub fn smart_str_fappendl_ex(
15515        dest: *mut smart_str,
15516        str_: *const ::std::os::raw::c_char,
15517        len: usize,
15518        persistent: bool,
15519        fallible: bool,
15520    ) -> bool;
15521    #[link_name = "smart_str_appendl_ex__extern"]
15522    pub fn smart_str_appendl_ex(
15523        dest: *mut smart_str,
15524        str_: *const ::std::os::raw::c_char,
15525        len: usize,
15526        persistent: bool,
15527    );
15528    #[link_name = "smart_str_append_ex__extern"]
15529    pub fn smart_str_append_ex(dest: *mut smart_str, src: *const zend_string, persistent: bool);
15530    #[link_name = "smart_str_append_smart_str_ex__extern"]
15531    pub fn smart_str_append_smart_str_ex(
15532        dest: *mut smart_str,
15533        src: *const smart_str,
15534        persistent: bool,
15535    );
15536    #[link_name = "smart_str_append_long_ex__extern"]
15537    pub fn smart_str_append_long_ex(dest: *mut smart_str, num: zend_long, persistent: bool);
15538    #[link_name = "smart_str_append_long__extern"]
15539    pub fn smart_str_append_long(dest: *mut smart_str, num: zend_long);
15540    #[link_name = "smart_str_append_unsigned_ex__extern"]
15541    pub fn smart_str_append_unsigned_ex(dest: *mut smart_str, num: zend_ulong, persistent: bool);
15542    #[link_name = "smart_str_append_unsigned__extern"]
15543    pub fn smart_str_append_unsigned(dest: *mut smart_str, num: zend_ulong);
15544    #[link_name = "smart_str_appendl__extern"]
15545    pub fn smart_str_appendl(
15546        dest: *mut smart_str,
15547        src: *const ::std::os::raw::c_char,
15548        length: usize,
15549    );
15550    #[link_name = "smart_str_appends_ex__extern"]
15551    pub fn smart_str_appends_ex(
15552        dest: *mut smart_str,
15553        src: *const ::std::os::raw::c_char,
15554        persistent: bool,
15555    );
15556    #[link_name = "smart_str_appends__extern"]
15557    pub fn smart_str_appends(dest: *mut smart_str, src: *const ::std::os::raw::c_char);
15558    #[link_name = "smart_str_append__extern"]
15559    pub fn smart_str_append(dest: *mut smart_str, src: *const zend_string);
15560    #[link_name = "smart_str_appendc__extern"]
15561    pub fn smart_str_appendc(dest: *mut smart_str, ch: ::std::os::raw::c_char);
15562    #[link_name = "smart_str_append_smart_str__extern"]
15563    pub fn smart_str_append_smart_str(dest: *mut smart_str, src: *const smart_str);
15564    #[link_name = "smart_str_setl__extern"]
15565    pub fn smart_str_setl(dest: *mut smart_str, src: *const ::std::os::raw::c_char, len: usize);
15566    #[link_name = "smart_str_sets__extern"]
15567    pub fn smart_str_sets(dest: *mut smart_str, src: *const ::std::os::raw::c_char);
15568    pub fn smart_string_append_printf(
15569        dest: *mut smart_string,
15570        format: *const ::std::os::raw::c_char,
15571        ...
15572    );
15573    pub fn _smart_string_alloc_persistent(str_: *mut smart_string, len: usize);
15574    pub fn _smart_string_alloc(str_: *mut smart_string, len: usize);
15575    #[link_name = "smart_string_alloc__extern"]
15576    pub fn smart_string_alloc(str_: *mut smart_string, len: usize, persistent: bool) -> usize;
15577    #[link_name = "smart_string_free_ex__extern"]
15578    pub fn smart_string_free_ex(str_: *mut smart_string, persistent: bool);
15579    #[link_name = "smart_string_0__extern"]
15580    pub fn smart_string_0(str_: *mut smart_string);
15581    #[link_name = "smart_string_appendc_ex__extern"]
15582    pub fn smart_string_appendc_ex(
15583        dest: *mut smart_string,
15584        ch: ::std::os::raw::c_char,
15585        persistent: bool,
15586    );
15587    #[link_name = "smart_string_appendl_ex__extern"]
15588    pub fn smart_string_appendl_ex(
15589        dest: *mut smart_string,
15590        str_: *const ::std::os::raw::c_char,
15591        len: usize,
15592        persistent: bool,
15593    );
15594    #[link_name = "smart_string_append_long_ex__extern"]
15595    pub fn smart_string_append_long_ex(dest: *mut smart_string, num: zend_long, persistent: bool);
15596    #[link_name = "smart_string_append_unsigned_ex__extern"]
15597    pub fn smart_string_append_unsigned_ex(
15598        dest: *mut smart_string,
15599        num: zend_ulong,
15600        persistent: bool,
15601    );
15602    #[link_name = "smart_string_setl__extern"]
15603    pub fn smart_string_setl(dest: *mut smart_string, src: *mut ::std::os::raw::c_char, len: usize);
15604    #[link_name = "smart_string_reset__extern"]
15605    pub fn smart_string_reset(str_: *mut smart_string);
15606    pub static mut zend_system_id: [::std::os::raw::c_char; 32usize];
15607    pub fn zend_add_system_entropy(
15608        module_name: *const ::std::os::raw::c_char,
15609        hook_name: *const ::std::os::raw::c_char,
15610        data: *const ::std::os::raw::c_void,
15611        size: usize,
15612    ) -> zend_result;
15613    pub fn zend_startup_system_id();
15614    pub fn zend_finalize_system_id();
15615    pub fn virtual_cwd_startup();
15616    pub fn virtual_cwd_shutdown();
15617    pub fn virtual_cwd_activate();
15618    pub fn virtual_cwd_deactivate();
15619    pub fn virtual_getcwd_ex(length: *mut usize) -> *mut ::std::os::raw::c_char;
15620    pub fn virtual_getcwd(
15621        buf: *mut ::std::os::raw::c_char,
15622        size: usize,
15623    ) -> *mut ::std::os::raw::c_char;
15624    pub fn virtual_chdir(path: *const ::std::os::raw::c_char) -> zend_result;
15625    pub fn virtual_chdir_file(
15626        path: *const ::std::os::raw::c_char,
15627        p_chdir: ::std::option::Option<
15628            unsafe extern "C" fn(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int,
15629        >,
15630    ) -> ::std::os::raw::c_int;
15631    pub fn virtual_filepath(
15632        path: *const ::std::os::raw::c_char,
15633        filepath: *mut *mut ::std::os::raw::c_char,
15634    ) -> ::std::os::raw::c_int;
15635    pub fn virtual_filepath_ex(
15636        path: *const ::std::os::raw::c_char,
15637        filepath: *mut *mut ::std::os::raw::c_char,
15638        verify_path: verify_path_func,
15639    ) -> ::std::os::raw::c_int;
15640    pub fn virtual_realpath(
15641        path: *const ::std::os::raw::c_char,
15642        real_path: *mut ::std::os::raw::c_char,
15643    ) -> *mut ::std::os::raw::c_char;
15644    pub fn virtual_fopen(
15645        path: *const ::std::os::raw::c_char,
15646        mode: *const ::std::os::raw::c_char,
15647    ) -> *mut FILE;
15648    pub fn virtual_open(
15649        path: *const ::std::os::raw::c_char,
15650        flags: ::std::os::raw::c_int,
15651        ...
15652    ) -> ::std::os::raw::c_int;
15653    pub fn virtual_creat(
15654        path: *const ::std::os::raw::c_char,
15655        mode: mode_t,
15656    ) -> ::std::os::raw::c_int;
15657    pub fn virtual_rename(
15658        oldname: *const ::std::os::raw::c_char,
15659        newname: *const ::std::os::raw::c_char,
15660    ) -> ::std::os::raw::c_int;
15661    pub fn virtual_stat(
15662        path: *const ::std::os::raw::c_char,
15663        buf: *mut zend_stat_t,
15664    ) -> ::std::os::raw::c_int;
15665    pub fn virtual_lstat(
15666        path: *const ::std::os::raw::c_char,
15667        buf: *mut zend_stat_t,
15668    ) -> ::std::os::raw::c_int;
15669    pub fn virtual_unlink(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
15670    pub fn virtual_mkdir(
15671        pathname: *const ::std::os::raw::c_char,
15672        mode: mode_t,
15673    ) -> ::std::os::raw::c_int;
15674    pub fn virtual_rmdir(pathname: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
15675    pub fn virtual_opendir(pathname: *const ::std::os::raw::c_char) -> *mut DIR;
15676    pub fn virtual_popen(
15677        command: *const ::std::os::raw::c_char,
15678        type_: *const ::std::os::raw::c_char,
15679    ) -> *mut FILE;
15680    pub fn virtual_access(
15681        pathname: *const ::std::os::raw::c_char,
15682        mode: ::std::os::raw::c_int,
15683    ) -> ::std::os::raw::c_int;
15684    pub fn virtual_utime(
15685        filename: *const ::std::os::raw::c_char,
15686        buf: *mut utimbuf,
15687    ) -> ::std::os::raw::c_int;
15688    pub fn virtual_chmod(
15689        filename: *const ::std::os::raw::c_char,
15690        mode: mode_t,
15691    ) -> ::std::os::raw::c_int;
15692    pub fn virtual_chown(
15693        filename: *const ::std::os::raw::c_char,
15694        owner: uid_t,
15695        group: gid_t,
15696        link: ::std::os::raw::c_int,
15697    ) -> ::std::os::raw::c_int;
15698    pub fn virtual_file_ex(
15699        state: *mut cwd_state,
15700        path: *const ::std::os::raw::c_char,
15701        verify_path: verify_path_func,
15702        use_realpath: ::std::os::raw::c_int,
15703    ) -> ::std::os::raw::c_int;
15704    pub fn tsrm_realpath(
15705        path: *const ::std::os::raw::c_char,
15706        real_path: *mut ::std::os::raw::c_char,
15707    ) -> *mut ::std::os::raw::c_char;
15708    pub static mut cwd_globals: virtual_cwd_globals;
15709    pub fn realpath_cache_clean();
15710    pub fn realpath_cache_del(path: *const ::std::os::raw::c_char, path_len: usize);
15711    pub fn realpath_cache_lookup(
15712        path: *const ::std::os::raw::c_char,
15713        path_len: usize,
15714        t: time_t,
15715    ) -> *mut realpath_cache_bucket;
15716    pub fn realpath_cache_size() -> zend_long;
15717    pub fn realpath_cache_max_buckets() -> zend_long;
15718    pub fn realpath_cache_get_buckets() -> *mut *mut realpath_cache_bucket;
15719    pub fn zend_vm_set_opcode_handler(opcode: *mut zend_op);
15720    pub fn zend_vm_set_opcode_handler_ex(
15721        opcode: *mut zend_op,
15722        op1_info: u32,
15723        op2_info: u32,
15724        res_info: u32,
15725    );
15726    pub fn zend_serialize_opcode_handler(op: *mut zend_op);
15727    pub fn zend_deserialize_opcode_handler(op: *mut zend_op);
15728    pub fn zend_get_opcode_handler_func(op: *const zend_op) -> *const ::std::os::raw::c_void;
15729    pub fn zend_get_halt_op() -> *const zend_op;
15730    pub fn zend_get_interrupt_op() -> *const zend_op;
15731    pub fn zend_vm_call_opcode_handler(ex: *mut zend_execute_data) -> ::std::os::raw::c_int;
15732    pub fn zend_vm_kind() -> ::std::os::raw::c_int;
15733    pub fn zend_vm_init();
15734    pub fn zend_vm_dtor();
15735    pub static mut zend_ce_weakref: *mut zend_class_entry;
15736    pub fn zend_register_weakref_ce();
15737    pub fn zend_weakrefs_init();
15738    pub fn zend_weakrefs_shutdown();
15739    pub fn zend_weakrefs_notify(object: *mut zend_object);
15740    pub fn zend_weakrefs_hash_add(
15741        ht: *mut HashTable,
15742        key: *mut zend_object,
15743        pData: *mut zval,
15744    ) -> *mut zval;
15745    pub fn zend_weakrefs_hash_del(ht: *mut HashTable, key: *mut zend_object) -> zend_result;
15746    #[link_name = "zend_weakrefs_hash_add_ptr__extern"]
15747    pub fn zend_weakrefs_hash_add_ptr(
15748        ht: *mut HashTable,
15749        key: *mut zend_object,
15750        ptr: *mut ::std::os::raw::c_void,
15751    ) -> *mut ::std::os::raw::c_void;
15752    pub fn zend_weakrefs_hash_clean(ht: *mut HashTable);
15753    #[link_name = "zend_weakrefs_hash_destroy__extern"]
15754    pub fn zend_weakrefs_hash_destroy(ht: *mut HashTable);
15755    #[link_name = "zend_object_to_weakref_key__extern"]
15756    pub fn zend_object_to_weakref_key(object: *const zend_object) -> zend_ulong;
15757    #[link_name = "zend_weakref_key_to_object__extern"]
15758    pub fn zend_weakref_key_to_object(key: zend_ulong) -> *mut zend_object;
15759    pub fn zend_weakmap_get_gc(
15760        object: *mut zend_object,
15761        table: *mut *mut zval,
15762        n: *mut ::std::os::raw::c_int,
15763    ) -> *mut HashTable;
15764    pub fn zend_weakmap_get_key_entry_gc(
15765        object: *mut zend_object,
15766        table: *mut *mut zval,
15767        n: *mut ::std::os::raw::c_int,
15768    ) -> *mut HashTable;
15769    pub fn zend_weakmap_get_entry_gc(
15770        object: *mut zend_object,
15771        table: *mut *mut zval,
15772        n: *mut ::std::os::raw::c_int,
15773    ) -> *mut HashTable;
15774    pub fn zend_weakmap_get_object_key_entry_gc(
15775        object: *mut zend_object,
15776        table: *mut *mut zval,
15777        n: *mut ::std::os::raw::c_int,
15778    ) -> *mut HashTable;
15779    pub fn zend_weakmap_get_object_entry_gc(
15780        object: *mut zend_object,
15781        table: *mut *mut zval,
15782        n: *mut ::std::os::raw::c_int,
15783    ) -> *mut HashTable;
15784    pub fn php_safe_bcmp(a: *const zend_string, b: *const zend_string) -> ::std::os::raw::c_int;
15785    pub fn ap_php_slprintf(
15786        buf: *mut ::std::os::raw::c_char,
15787        len: usize,
15788        format: *const ::std::os::raw::c_char,
15789        ...
15790    ) -> ::std::os::raw::c_int;
15791    pub fn ap_php_vslprintf(
15792        buf: *mut ::std::os::raw::c_char,
15793        len: usize,
15794        format: *const ::std::os::raw::c_char,
15795        ap: *mut __va_list_tag,
15796    ) -> ::std::os::raw::c_int;
15797    pub fn ap_php_snprintf(
15798        arg1: *mut ::std::os::raw::c_char,
15799        arg2: usize,
15800        arg3: *const ::std::os::raw::c_char,
15801        ...
15802    ) -> ::std::os::raw::c_int;
15803    pub fn ap_php_vsnprintf(
15804        arg1: *mut ::std::os::raw::c_char,
15805        arg2: usize,
15806        arg3: *const ::std::os::raw::c_char,
15807        ap: *mut __va_list_tag,
15808    ) -> ::std::os::raw::c_int;
15809    pub fn ap_php_vasprintf(
15810        buf: *mut *mut ::std::os::raw::c_char,
15811        format: *const ::std::os::raw::c_char,
15812        ap: *mut __va_list_tag,
15813    ) -> ::std::os::raw::c_int;
15814    pub fn ap_php_asprintf(
15815        buf: *mut *mut ::std::os::raw::c_char,
15816        format: *const ::std::os::raw::c_char,
15817        ...
15818    ) -> ::std::os::raw::c_int;
15819    pub fn php_0cvt(
15820        value: f64,
15821        ndigit: ::std::os::raw::c_int,
15822        dec_point: ::std::os::raw::c_char,
15823        exponent: ::std::os::raw::c_char,
15824        buf: *mut ::std::os::raw::c_char,
15825    ) -> *mut ::std::os::raw::c_char;
15826    pub fn php_conv_fp(
15827        format: ::std::os::raw::c_char,
15828        num: f64,
15829        add_dp: bool,
15830        precision: ::std::os::raw::c_int,
15831        dec_point: ::std::os::raw::c_char,
15832        is_negative: *mut bool,
15833        buf: *mut ::std::os::raw::c_char,
15834        len: *mut usize,
15835    ) -> *mut ::std::os::raw::c_char;
15836    pub fn ap_php_conv_10(
15837        num: i64,
15838        is_unsigned: bool,
15839        is_negative: *mut bool,
15840        buf_end: *mut ::std::os::raw::c_char,
15841        len: *mut usize,
15842    ) -> *mut ::std::os::raw::c_char;
15843    pub fn ap_php_conv_p2(
15844        num: u64,
15845        nbits: ::std::os::raw::c_int,
15846        format: ::std::os::raw::c_char,
15847        buf_end: *mut ::std::os::raw::c_char,
15848        len: *mut usize,
15849    ) -> *mut ::std::os::raw::c_char;
15850    pub fn php_printf_to_smart_string(
15851        buf: *mut smart_string,
15852        format: *const ::std::os::raw::c_char,
15853        ap: *mut __va_list_tag,
15854    );
15855    pub fn php_printf_to_smart_str(
15856        buf: *mut smart_str,
15857        format: *const ::std::os::raw::c_char,
15858        ap: *mut __va_list_tag,
15859    );
15860    pub static mut environ: *mut *mut ::std::os::raw::c_char;
15861    pub static php_build_date: [::std::os::raw::c_char; 0usize];
15862    pub fn phperror(error: *mut ::std::os::raw::c_char);
15863    pub fn php_write(buf: *mut ::std::os::raw::c_void, size: usize) -> usize;
15864    pub fn php_printf(format: *const ::std::os::raw::c_char, ...) -> usize;
15865    pub fn php_printf_unchecked(format: *const ::std::os::raw::c_char, ...) -> usize;
15866    pub fn php_during_module_startup() -> bool;
15867    pub fn php_during_module_shutdown() -> bool;
15868    pub fn php_get_module_initialized() -> bool;
15869    pub fn php_syslog_str(priority: ::std::os::raw::c_int, message: *const zend_string);
15870    pub fn php_syslog(arg1: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
15871    pub fn php_openlog(
15872        arg1: *const ::std::os::raw::c_char,
15873        arg2: ::std::os::raw::c_int,
15874        arg3: ::std::os::raw::c_int,
15875    );
15876    pub fn php_closelog();
15877    pub fn php_log_err_with_severity(
15878        log_message: *const ::std::os::raw::c_char,
15879        syslog_type_int: ::std::os::raw::c_int,
15880    );
15881    pub fn Debug(format: *mut ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
15882    pub fn cfgparse() -> ::std::os::raw::c_int;
15883    #[link_name = "php_set_error_handling__extern"]
15884    pub fn php_set_error_handling(
15885        error_handling: zend_error_handling_t::Type,
15886        exception_class: *mut zend_class_entry,
15887    );
15888    #[link_name = "php_std_error_handling__extern"]
15889    pub fn php_std_error_handling();
15890    pub fn php_verror(
15891        docref: *const ::std::os::raw::c_char,
15892        params: *const ::std::os::raw::c_char,
15893        type_: ::std::os::raw::c_int,
15894        format: *const ::std::os::raw::c_char,
15895        args: *mut __va_list_tag,
15896    );
15897    pub fn php_error_docref(
15898        docref: *const ::std::os::raw::c_char,
15899        type_: ::std::os::raw::c_int,
15900        format: *const ::std::os::raw::c_char,
15901        ...
15902    );
15903    pub fn php_error_docref_unchecked(
15904        docref: *const ::std::os::raw::c_char,
15905        type_: ::std::os::raw::c_int,
15906        format: *const ::std::os::raw::c_char,
15907        ...
15908    );
15909    pub fn php_error_docref1(
15910        docref: *const ::std::os::raw::c_char,
15911        param1: *const ::std::os::raw::c_char,
15912        type_: ::std::os::raw::c_int,
15913        format: *const ::std::os::raw::c_char,
15914        ...
15915    );
15916    pub fn php_error_docref2(
15917        docref: *const ::std::os::raw::c_char,
15918        param1: *const ::std::os::raw::c_char,
15919        param2: *const ::std::os::raw::c_char,
15920        type_: ::std::os::raw::c_int,
15921        format: *const ::std::os::raw::c_char,
15922        ...
15923    );
15924    pub static mut php_register_internal_extensions_func:
15925        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
15926    pub fn php_register_internal_extensions() -> ::std::os::raw::c_int;
15927    pub fn php_register_pre_request_shutdown(
15928        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
15929        userdata: *mut ::std::os::raw::c_void,
15930    );
15931    pub fn php_com_initialize();
15932    pub fn php_get_current_user() -> *mut ::std::os::raw::c_char;
15933    pub fn php_get_internal_encoding() -> *const ::std::os::raw::c_char;
15934    pub fn php_get_input_encoding() -> *const ::std::os::raw::c_char;
15935    pub fn php_get_output_encoding() -> *const ::std::os::raw::c_char;
15936    pub static mut php_internal_encoding_changed: ::std::option::Option<unsafe extern "C" fn()>;
15937    pub static mut output_globals: zend_output_globals;
15938    pub static php_output_default_handler_name: [::std::os::raw::c_char; 23usize];
15939    pub static php_output_devnull_handler_name: [::std::os::raw::c_char; 20usize];
15940    pub fn php_output_startup();
15941    pub fn php_output_shutdown();
15942    pub fn php_output_activate() -> ::std::os::raw::c_int;
15943    pub fn php_output_deactivate();
15944    pub fn php_output_set_status(status: ::std::os::raw::c_int);
15945    pub fn php_output_get_status() -> ::std::os::raw::c_int;
15946    pub fn php_output_set_implicit_flush(flush: ::std::os::raw::c_int);
15947    pub fn php_output_get_start_filename() -> *const ::std::os::raw::c_char;
15948    pub fn php_output_get_start_lineno() -> ::std::os::raw::c_int;
15949    pub fn php_output_write_unbuffered(str_: *const ::std::os::raw::c_char, len: usize) -> usize;
15950    pub fn php_output_write(str_: *const ::std::os::raw::c_char, len: usize) -> usize;
15951    pub fn php_output_flush() -> zend_result;
15952    pub fn php_output_flush_all();
15953    pub fn php_output_clean() -> zend_result;
15954    pub fn php_output_clean_all();
15955    pub fn php_output_end() -> zend_result;
15956    pub fn php_output_end_all();
15957    pub fn php_output_discard() -> zend_result;
15958    pub fn php_output_discard_all();
15959    pub fn php_output_get_contents(p: *mut zval) -> zend_result;
15960    pub fn php_output_get_length(p: *mut zval) -> zend_result;
15961    pub fn php_output_get_level() -> ::std::os::raw::c_int;
15962    pub fn php_output_get_active_handler() -> *mut php_output_handler;
15963    pub fn php_output_start_default() -> zend_result;
15964    pub fn php_output_start_devnull() -> zend_result;
15965    pub fn php_output_start_user(
15966        output_handler: *mut zval,
15967        chunk_size: usize,
15968        flags: ::std::os::raw::c_int,
15969    ) -> zend_result;
15970    pub fn php_output_start_internal(
15971        name: *const ::std::os::raw::c_char,
15972        name_len: usize,
15973        output_handler: php_output_handler_func_t,
15974        chunk_size: usize,
15975        flags: ::std::os::raw::c_int,
15976    ) -> zend_result;
15977    pub fn php_output_handler_create_user(
15978        handler: *mut zval,
15979        chunk_size: usize,
15980        flags: ::std::os::raw::c_int,
15981    ) -> *mut php_output_handler;
15982    pub fn php_output_handler_create_internal(
15983        name: *const ::std::os::raw::c_char,
15984        name_len: usize,
15985        handler: php_output_handler_context_func_t,
15986        chunk_size: usize,
15987        flags: ::std::os::raw::c_int,
15988    ) -> *mut php_output_handler;
15989    pub fn php_output_handler_set_context(
15990        handler: *mut php_output_handler,
15991        opaq: *mut ::std::os::raw::c_void,
15992        dtor: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
15993    );
15994    pub fn php_output_handler_start(handler: *mut php_output_handler) -> zend_result;
15995    pub fn php_output_handler_started(name: *const ::std::os::raw::c_char, name_len: usize)
15996    -> bool;
15997    pub fn php_output_handler_hook(
15998        type_: php_output_handler_hook_t,
15999        arg: *mut ::std::os::raw::c_void,
16000    ) -> zend_result;
16001    pub fn php_output_handler_dtor(handler: *mut php_output_handler);
16002    pub fn php_output_handler_free(handler: *mut *mut php_output_handler);
16003    pub fn php_output_handler_conflict(
16004        handler_new: *const ::std::os::raw::c_char,
16005        handler_new_len: usize,
16006        handler_set: *const ::std::os::raw::c_char,
16007        handler_set_len: usize,
16008    ) -> bool;
16009    pub fn php_output_handler_conflict_register(
16010        handler_name: *const ::std::os::raw::c_char,
16011        handler_name_len: usize,
16012        check_func: php_output_handler_conflict_check_t,
16013    ) -> zend_result;
16014    pub fn php_output_handler_reverse_conflict_register(
16015        handler_name: *const ::std::os::raw::c_char,
16016        handler_name_len: usize,
16017        check_func: php_output_handler_conflict_check_t,
16018    ) -> zend_result;
16019    pub fn php_output_handler_alias(
16020        handler_name: *const ::std::os::raw::c_char,
16021        handler_name_len: usize,
16022    ) -> php_output_handler_alias_ctor_t;
16023    pub fn php_output_handler_alias_register(
16024        handler_name: *const ::std::os::raw::c_char,
16025        handler_name_len: usize,
16026        func: php_output_handler_alias_ctor_t,
16027    ) -> zend_result;
16028    pub fn php_file_le_stream() -> ::std::os::raw::c_int;
16029    pub fn php_file_le_pstream() -> ::std::os::raw::c_int;
16030    pub fn php_file_le_stream_filter() -> ::std::os::raw::c_int;
16031    pub fn php_le_stream_context() -> ::std::os::raw::c_int;
16032    pub fn php_stream_context_free(context: *mut php_stream_context);
16033    pub fn php_stream_context_alloc() -> *mut php_stream_context;
16034    pub fn php_stream_context_get_option(
16035        context: *const php_stream_context,
16036        wrappername: *const ::std::os::raw::c_char,
16037        optionname: *const ::std::os::raw::c_char,
16038    ) -> *mut zval;
16039    pub fn php_stream_context_set_option(
16040        context: *mut php_stream_context,
16041        wrappername: *const ::std::os::raw::c_char,
16042        optionname: *const ::std::os::raw::c_char,
16043        optionvalue: *mut zval,
16044    );
16045    pub fn php_stream_context_unset_option(
16046        context: *mut php_stream_context,
16047        wrappername: *const ::std::os::raw::c_char,
16048        optionname: *const ::std::os::raw::c_char,
16049    );
16050    pub fn php_stream_context_get_uri_parser(
16051        wrappername: *const ::std::os::raw::c_char,
16052        context: *mut php_stream_context,
16053    ) -> *const php_uri_parser;
16054    pub fn php_stream_notification_alloc() -> *mut php_stream_notifier;
16055    pub fn php_stream_notification_free(notifier: *mut php_stream_notifier);
16056    pub fn php_stream_notification_notify(
16057        context: *mut php_stream_context,
16058        notifycode: ::std::os::raw::c_int,
16059        severity: ::std::os::raw::c_int,
16060        xmsg: *mut ::std::os::raw::c_char,
16061        xcode: ::std::os::raw::c_int,
16062        bytes_sofar: usize,
16063        bytes_max: usize,
16064        ptr: *mut ::std::os::raw::c_void,
16065    );
16066    pub fn php_stream_context_set(
16067        stream: *mut php_stream,
16068        context: *mut php_stream_context,
16069    ) -> *mut php_stream_context;
16070    pub fn php_stream_bucket_new(
16071        stream: *const php_stream,
16072        buf: *mut ::std::os::raw::c_char,
16073        buflen: usize,
16074        own_buf: u8,
16075        buf_persistent: u8,
16076    ) -> *mut php_stream_bucket;
16077    pub fn php_stream_bucket_split(
16078        in_: *mut php_stream_bucket,
16079        left: *mut *mut php_stream_bucket,
16080        right: *mut *mut php_stream_bucket,
16081        length: usize,
16082    ) -> ::std::os::raw::c_int;
16083    pub fn php_stream_bucket_delref(bucket: *mut php_stream_bucket);
16084    pub fn php_stream_bucket_prepend(
16085        brigade: *mut php_stream_bucket_brigade,
16086        bucket: *mut php_stream_bucket,
16087    );
16088    pub fn php_stream_bucket_append(
16089        brigade: *mut php_stream_bucket_brigade,
16090        bucket: *mut php_stream_bucket,
16091    );
16092    pub fn php_stream_bucket_unlink(bucket: *mut php_stream_bucket);
16093    pub fn php_stream_bucket_make_writeable(
16094        bucket: *mut php_stream_bucket,
16095    ) -> *mut php_stream_bucket;
16096    pub fn _php_stream_filter_prepend(
16097        chain: *mut php_stream_filter_chain,
16098        filter: *mut php_stream_filter,
16099    );
16100    pub fn php_stream_filter_prepend_ex(
16101        chain: *mut php_stream_filter_chain,
16102        filter: *mut php_stream_filter,
16103    );
16104    pub fn _php_stream_filter_append(
16105        chain: *mut php_stream_filter_chain,
16106        filter: *mut php_stream_filter,
16107    );
16108    pub fn php_stream_filter_append_ex(
16109        chain: *mut php_stream_filter_chain,
16110        filter: *mut php_stream_filter,
16111    ) -> zend_result;
16112    pub fn _php_stream_filter_flush(filter: *mut php_stream_filter, finish: bool) -> zend_result;
16113    pub fn php_stream_filter_remove(
16114        filter: *mut php_stream_filter,
16115        call_dtor: bool,
16116    ) -> *mut php_stream_filter;
16117    pub fn php_stream_filter_free(filter: *mut php_stream_filter);
16118    pub fn _php_stream_filter_alloc(
16119        fops: *const php_stream_filter_ops,
16120        abstract_: *mut ::std::os::raw::c_void,
16121        persistent: u8,
16122        __php_stream_call_depth: ::std::os::raw::c_int,
16123        __zend_filename: *const ::std::os::raw::c_char,
16124        __zend_lineno: u32,
16125        __zend_orig_filename: *const ::std::os::raw::c_char,
16126        __zend_orig_lineno: u32,
16127    ) -> *mut php_stream_filter;
16128    pub fn php_stream_filter_register_factory(
16129        filterpattern: *const ::std::os::raw::c_char,
16130        factory: *const php_stream_filter_factory,
16131    ) -> zend_result;
16132    pub fn php_stream_filter_unregister_factory(
16133        filterpattern: *const ::std::os::raw::c_char,
16134    ) -> zend_result;
16135    pub fn php_stream_filter_register_factory_volatile(
16136        filterpattern: *mut zend_string,
16137        factory: *const php_stream_filter_factory,
16138    ) -> zend_result;
16139    pub fn php_stream_filter_create(
16140        filtername: *const ::std::os::raw::c_char,
16141        filterparams: *mut zval,
16142        persistent: u8,
16143    ) -> *mut php_stream_filter;
16144    pub fn _php_stream_alloc(
16145        ops: *const php_stream_ops,
16146        abstract_: *mut ::std::os::raw::c_void,
16147        persistent_id: *const ::std::os::raw::c_char,
16148        mode: *const ::std::os::raw::c_char,
16149        __php_stream_call_depth: ::std::os::raw::c_int,
16150        __zend_filename: *const ::std::os::raw::c_char,
16151        __zend_lineno: u32,
16152        __zend_orig_filename: *const ::std::os::raw::c_char,
16153        __zend_orig_lineno: u32,
16154    ) -> *mut php_stream;
16155    #[link_name = "php_stream_from_zval_no_verify_no_error__extern"]
16156    pub fn php_stream_from_zval_no_verify_no_error(zval: *mut zval) -> *mut php_stream;
16157    #[link_name = "php_stream_zend_parse_arg_into_stream__extern"]
16158    pub fn php_stream_zend_parse_arg_into_stream(
16159        arg: *mut zval,
16160        destination_stream_ptr: *mut *mut php_stream,
16161        check_null: bool,
16162        arg_num: u32,
16163    ) -> bool;
16164    pub fn php_stream_encloses(
16165        enclosing: *mut php_stream,
16166        enclosed: *mut php_stream,
16167    ) -> *mut php_stream;
16168    pub fn _php_stream_free_enclosed(
16169        stream_enclosed: *mut php_stream,
16170        close_options: ::std::os::raw::c_int,
16171    ) -> ::std::os::raw::c_int;
16172    pub fn php_stream_from_persistent_id(
16173        persistent_id: *const ::std::os::raw::c_char,
16174        stream: *mut *mut php_stream,
16175    ) -> ::std::os::raw::c_int;
16176    pub fn _php_stream_free(
16177        stream: *mut php_stream,
16178        close_options: ::std::os::raw::c_int,
16179    ) -> ::std::os::raw::c_int;
16180    pub fn _php_stream_seek(
16181        stream: *mut php_stream,
16182        offset: zend_off_t,
16183        whence: ::std::os::raw::c_int,
16184    ) -> ::std::os::raw::c_int;
16185    pub fn _php_stream_tell(stream: *const php_stream) -> zend_off_t;
16186    pub fn _php_stream_read(
16187        stream: *mut php_stream,
16188        buf: *mut ::std::os::raw::c_char,
16189        count: usize,
16190    ) -> isize;
16191    pub fn php_stream_read_to_str(stream: *mut php_stream, len: usize) -> *mut zend_string;
16192    pub fn _php_stream_write(
16193        stream: *mut php_stream,
16194        buf: *const ::std::os::raw::c_char,
16195        count: usize,
16196    ) -> isize;
16197    pub fn _php_stream_fill_read_buffer(stream: *mut php_stream, size: usize) -> zend_result;
16198    pub fn _php_stream_printf(
16199        stream: *mut php_stream,
16200        fmt: *const ::std::os::raw::c_char,
16201        ...
16202    ) -> isize;
16203    pub fn _php_stream_eof(stream: *mut php_stream) -> bool;
16204    pub fn _php_stream_getc(stream: *mut php_stream) -> ::std::os::raw::c_int;
16205    pub fn _php_stream_putc(
16206        stream: *mut php_stream,
16207        c: ::std::os::raw::c_int,
16208    ) -> ::std::os::raw::c_int;
16209    pub fn _php_stream_flush(
16210        stream: *mut php_stream,
16211        closing: ::std::os::raw::c_int,
16212    ) -> ::std::os::raw::c_int;
16213    pub fn _php_stream_sync(stream: *mut php_stream, data_only: bool) -> ::std::os::raw::c_int;
16214    pub fn _php_stream_get_line(
16215        stream: *mut php_stream,
16216        buf: *mut ::std::os::raw::c_char,
16217        maxlen: usize,
16218        returned_len: *mut usize,
16219    ) -> *mut ::std::os::raw::c_char;
16220    pub fn php_stream_get_record(
16221        stream: *mut php_stream,
16222        maxlen: usize,
16223        delim: *const ::std::os::raw::c_char,
16224        delim_len: usize,
16225    ) -> *mut zend_string;
16226    pub fn _php_stream_puts(stream: *mut php_stream, buf: *const ::std::os::raw::c_char) -> bool;
16227    pub fn _php_stream_stat(
16228        stream: *mut php_stream,
16229        ssb: *mut php_stream_statbuf,
16230    ) -> ::std::os::raw::c_int;
16231    pub fn _php_stream_stat_path(
16232        path: *const ::std::os::raw::c_char,
16233        flags: ::std::os::raw::c_int,
16234        ssb: *mut php_stream_statbuf,
16235        context: *mut php_stream_context,
16236    ) -> ::std::os::raw::c_int;
16237    pub fn _php_stream_mkdir(
16238        path: *const ::std::os::raw::c_char,
16239        mode: ::std::os::raw::c_int,
16240        options: ::std::os::raw::c_int,
16241        context: *mut php_stream_context,
16242    ) -> ::std::os::raw::c_int;
16243    pub fn _php_stream_rmdir(
16244        path: *const ::std::os::raw::c_char,
16245        options: ::std::os::raw::c_int,
16246        context: *mut php_stream_context,
16247    ) -> ::std::os::raw::c_int;
16248    pub fn _php_stream_opendir(
16249        path: *const ::std::os::raw::c_char,
16250        options: ::std::os::raw::c_int,
16251        context: *mut php_stream_context,
16252        __php_stream_call_depth: ::std::os::raw::c_int,
16253        __zend_filename: *const ::std::os::raw::c_char,
16254        __zend_lineno: u32,
16255        __zend_orig_filename: *const ::std::os::raw::c_char,
16256        __zend_orig_lineno: u32,
16257    ) -> *mut php_stream;
16258    pub fn _php_stream_readdir(
16259        dirstream: *mut php_stream,
16260        ent: *mut php_stream_dirent,
16261    ) -> *mut php_stream_dirent;
16262    pub fn php_stream_dirent_alphasort(
16263        a: *mut *const zend_string,
16264        b: *mut *const zend_string,
16265    ) -> ::std::os::raw::c_int;
16266    pub fn php_stream_dirent_alphasortr(
16267        a: *mut *const zend_string,
16268        b: *mut *const zend_string,
16269    ) -> ::std::os::raw::c_int;
16270    pub fn _php_stream_scandir(
16271        dirname: *const ::std::os::raw::c_char,
16272        namelist: *mut *mut *mut zend_string,
16273        flags: ::std::os::raw::c_int,
16274        context: *mut php_stream_context,
16275        compare: ::std::option::Option<
16276            unsafe extern "C" fn(
16277                a: *mut *const zend_string,
16278                b: *mut *const zend_string,
16279            ) -> ::std::os::raw::c_int,
16280        >,
16281    ) -> ::std::os::raw::c_int;
16282    pub fn _php_stream_set_option(
16283        stream: *mut php_stream,
16284        option: ::std::os::raw::c_int,
16285        value: ::std::os::raw::c_int,
16286        ptrparam: *mut ::std::os::raw::c_void,
16287    ) -> ::std::os::raw::c_int;
16288    pub fn _php_stream_truncate_set_size(
16289        stream: *mut php_stream,
16290        newsize: usize,
16291    ) -> ::std::os::raw::c_int;
16292    pub fn _php_stream_copy_to_stream(
16293        src: *mut php_stream,
16294        dest: *mut php_stream,
16295        maxlen: usize,
16296        __php_stream_call_depth: ::std::os::raw::c_int,
16297        __zend_filename: *const ::std::os::raw::c_char,
16298        __zend_lineno: u32,
16299        __zend_orig_filename: *const ::std::os::raw::c_char,
16300        __zend_orig_lineno: u32,
16301    ) -> usize;
16302    pub fn _php_stream_copy_to_stream_ex(
16303        src: *mut php_stream,
16304        dest: *mut php_stream,
16305        maxlen: usize,
16306        len: *mut usize,
16307        __php_stream_call_depth: ::std::os::raw::c_int,
16308        __zend_filename: *const ::std::os::raw::c_char,
16309        __zend_lineno: u32,
16310        __zend_orig_filename: *const ::std::os::raw::c_char,
16311        __zend_orig_lineno: u32,
16312    ) -> zend_result;
16313    pub fn _php_stream_copy_to_mem(
16314        src: *mut php_stream,
16315        maxlen: usize,
16316        persistent: bool,
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    ) -> *mut zend_string;
16323    pub fn _php_stream_passthru(
16324        src: *mut php_stream,
16325        __php_stream_call_depth: ::std::os::raw::c_int,
16326        __zend_filename: *const ::std::os::raw::c_char,
16327        __zend_lineno: u32,
16328        __zend_orig_filename: *const ::std::os::raw::c_char,
16329        __zend_orig_lineno: u32,
16330    ) -> isize;
16331    pub fn php_stream_xport_register(
16332        protocol: *const ::std::os::raw::c_char,
16333        factory: php_stream_transport_factory,
16334    ) -> ::std::os::raw::c_int;
16335    pub fn php_stream_xport_unregister(
16336        protocol: *const ::std::os::raw::c_char,
16337    ) -> ::std::os::raw::c_int;
16338    pub fn _php_stream_xport_create(
16339        name: *const ::std::os::raw::c_char,
16340        namelen: usize,
16341        options: ::std::os::raw::c_int,
16342        flags: ::std::os::raw::c_int,
16343        persistent_id: *const ::std::os::raw::c_char,
16344        timeout: *mut timeval,
16345        context: *mut php_stream_context,
16346        error_string: *mut *mut zend_string,
16347        error_code: *mut ::std::os::raw::c_int,
16348        __php_stream_call_depth: ::std::os::raw::c_int,
16349        __zend_filename: *const ::std::os::raw::c_char,
16350        __zend_lineno: u32,
16351        __zend_orig_filename: *const ::std::os::raw::c_char,
16352        __zend_orig_lineno: u32,
16353    ) -> *mut php_stream;
16354    pub fn php_stream_xport_bind(
16355        stream: *mut php_stream,
16356        name: *const ::std::os::raw::c_char,
16357        namelen: usize,
16358        error_text: *mut *mut zend_string,
16359    ) -> ::std::os::raw::c_int;
16360    pub fn php_stream_xport_connect(
16361        stream: *mut php_stream,
16362        name: *const ::std::os::raw::c_char,
16363        namelen: usize,
16364        asynchronous: ::std::os::raw::c_int,
16365        timeout: *mut timeval,
16366        error_text: *mut *mut zend_string,
16367        error_code: *mut ::std::os::raw::c_int,
16368    ) -> ::std::os::raw::c_int;
16369    pub fn php_stream_xport_listen(
16370        stream: *mut php_stream,
16371        backlog: ::std::os::raw::c_int,
16372        error_text: *mut *mut zend_string,
16373    ) -> ::std::os::raw::c_int;
16374    pub fn php_stream_xport_accept(
16375        stream: *mut php_stream,
16376        client: *mut *mut php_stream,
16377        textaddr: *mut *mut zend_string,
16378        addr: *mut *mut ::std::os::raw::c_void,
16379        addrlen: *mut socklen_t,
16380        timeout: *mut timeval,
16381        error_text: *mut *mut zend_string,
16382    ) -> ::std::os::raw::c_int;
16383    pub fn php_stream_xport_get_name(
16384        stream: *mut php_stream,
16385        want_peer: ::std::os::raw::c_int,
16386        textaddr: *mut *mut zend_string,
16387        addr: *mut *mut ::std::os::raw::c_void,
16388        addrlen: *mut socklen_t,
16389    ) -> ::std::os::raw::c_int;
16390    pub fn php_stream_xport_recvfrom(
16391        stream: *mut php_stream,
16392        buf: *mut ::std::os::raw::c_char,
16393        buflen: usize,
16394        flags: ::std::os::raw::c_int,
16395        addr: *mut *mut ::std::os::raw::c_void,
16396        addrlen: *mut socklen_t,
16397        textaddr: *mut *mut zend_string,
16398    ) -> ::std::os::raw::c_int;
16399    pub fn php_stream_xport_sendto(
16400        stream: *mut php_stream,
16401        buf: *const ::std::os::raw::c_char,
16402        buflen: usize,
16403        flags: ::std::os::raw::c_int,
16404        addr: *mut ::std::os::raw::c_void,
16405        addrlen: socklen_t,
16406    ) -> ::std::os::raw::c_int;
16407    pub fn php_stream_xport_shutdown(
16408        stream: *mut php_stream,
16409        how: stream_shutdown_t::Type,
16410    ) -> ::std::os::raw::c_int;
16411    pub fn php_stream_xport_crypto_setup(
16412        stream: *mut php_stream,
16413        crypto_method: php_stream_xport_crypt_method_t::Type,
16414        session_stream: *mut php_stream,
16415    ) -> ::std::os::raw::c_int;
16416    pub fn php_stream_xport_crypto_enable(
16417        stream: *mut php_stream,
16418        activate: ::std::os::raw::c_int,
16419    ) -> ::std::os::raw::c_int;
16420    pub fn php_stream_xport_get_hash() -> *mut HashTable;
16421    pub fn php_stream_generic_socket_factory(
16422        proto: *const ::std::os::raw::c_char,
16423        protolen: usize,
16424        resourcename: *const ::std::os::raw::c_char,
16425        resourcenamelen: usize,
16426        persistent_id: *const ::std::os::raw::c_char,
16427        options: ::std::os::raw::c_int,
16428        flags: ::std::os::raw::c_int,
16429        timeout: *mut timeval,
16430        context: *mut php_stream_context,
16431        __php_stream_call_depth: ::std::os::raw::c_int,
16432        __zend_filename: *const ::std::os::raw::c_char,
16433        __zend_lineno: u32,
16434        __zend_orig_filename: *const ::std::os::raw::c_char,
16435        __zend_orig_lineno: u32,
16436    ) -> *mut php_stream;
16437    pub static mut php_stream_stdio_ops: php_stream_ops;
16438    pub static mut php_plain_files_wrapper: php_stream_wrapper;
16439    pub fn _php_stream_fopen(
16440        filename: *const ::std::os::raw::c_char,
16441        mode: *const ::std::os::raw::c_char,
16442        opened_path: *mut *mut zend_string,
16443        options: ::std::os::raw::c_int,
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_fopen_with_path(
16451        filename: *const ::std::os::raw::c_char,
16452        mode: *const ::std::os::raw::c_char,
16453        path: *const ::std::os::raw::c_char,
16454        opened_path: *mut *mut zend_string,
16455        options: ::std::os::raw::c_int,
16456        __php_stream_call_depth: ::std::os::raw::c_int,
16457        __zend_filename: *const ::std::os::raw::c_char,
16458        __zend_lineno: u32,
16459        __zend_orig_filename: *const ::std::os::raw::c_char,
16460        __zend_orig_lineno: u32,
16461    ) -> *mut php_stream;
16462    pub fn _php_stream_fopen_from_file(
16463        file: *mut FILE,
16464        mode: *const ::std::os::raw::c_char,
16465        __php_stream_call_depth: ::std::os::raw::c_int,
16466        __zend_filename: *const ::std::os::raw::c_char,
16467        __zend_lineno: u32,
16468        __zend_orig_filename: *const ::std::os::raw::c_char,
16469        __zend_orig_lineno: u32,
16470    ) -> *mut php_stream;
16471    pub fn _php_stream_fopen_from_fd(
16472        fd: ::std::os::raw::c_int,
16473        mode: *const ::std::os::raw::c_char,
16474        persistent_id: *const ::std::os::raw::c_char,
16475        zero_position: bool,
16476        __php_stream_call_depth: ::std::os::raw::c_int,
16477        __zend_filename: *const ::std::os::raw::c_char,
16478        __zend_lineno: u32,
16479        __zend_orig_filename: *const ::std::os::raw::c_char,
16480        __zend_orig_lineno: u32,
16481    ) -> *mut php_stream;
16482    pub fn _php_stream_fopen_from_pipe(
16483        file: *mut FILE,
16484        mode: *const ::std::os::raw::c_char,
16485        __php_stream_call_depth: ::std::os::raw::c_int,
16486        __zend_filename: *const ::std::os::raw::c_char,
16487        __zend_lineno: u32,
16488        __zend_orig_filename: *const ::std::os::raw::c_char,
16489        __zend_orig_lineno: u32,
16490    ) -> *mut php_stream;
16491    pub fn _php_stream_fopen_tmpfile(
16492        dummy: ::std::os::raw::c_int,
16493        __php_stream_call_depth: ::std::os::raw::c_int,
16494        __zend_filename: *const ::std::os::raw::c_char,
16495        __zend_lineno: u32,
16496        __zend_orig_filename: *const ::std::os::raw::c_char,
16497        __zend_orig_lineno: u32,
16498    ) -> *mut php_stream;
16499    pub fn _php_stream_fopen_temporary_file(
16500        dir: *const ::std::os::raw::c_char,
16501        pfx: *const ::std::os::raw::c_char,
16502        opened_path: *mut *mut zend_string,
16503        __php_stream_call_depth: ::std::os::raw::c_int,
16504        __zend_filename: *const ::std::os::raw::c_char,
16505        __zend_lineno: u32,
16506        __zend_orig_filename: *const ::std::os::raw::c_char,
16507        __zend_orig_lineno: u32,
16508    ) -> *mut php_stream;
16509    pub fn _php_stream_open_wrapper_as_file(
16510        path: *mut ::std::os::raw::c_char,
16511        mode: *mut ::std::os::raw::c_char,
16512        options: ::std::os::raw::c_int,
16513        opened_path: *mut *mut zend_string,
16514        __php_stream_call_depth: ::std::os::raw::c_int,
16515        __zend_filename: *const ::std::os::raw::c_char,
16516        __zend_lineno: u32,
16517        __zend_orig_filename: *const ::std::os::raw::c_char,
16518        __zend_orig_lineno: u32,
16519    ) -> *mut FILE;
16520    pub fn php_stream_parse_fopen_modes(
16521        mode: *const ::std::os::raw::c_char,
16522        open_flags: *mut ::std::os::raw::c_int,
16523    ) -> ::std::os::raw::c_int;
16524    pub static php_glob_stream_wrapper: php_stream_wrapper;
16525    pub static php_glob_stream_ops: php_stream_ops;
16526    pub fn _php_glob_stream_get_path(
16527        stream: *mut php_stream,
16528        plen: *mut usize,
16529        __php_stream_call_depth: ::std::os::raw::c_int,
16530        __zend_filename: *const ::std::os::raw::c_char,
16531        __zend_lineno: u32,
16532        __zend_orig_filename: *const ::std::os::raw::c_char,
16533        __zend_orig_lineno: u32,
16534    ) -> *mut ::std::os::raw::c_char;
16535    pub fn _php_glob_stream_get_pattern(
16536        stream: *mut php_stream,
16537        plen: *mut usize,
16538        __php_stream_call_depth: ::std::os::raw::c_int,
16539        __zend_filename: *const ::std::os::raw::c_char,
16540        __zend_lineno: u32,
16541        __zend_orig_filename: *const ::std::os::raw::c_char,
16542        __zend_orig_lineno: u32,
16543    ) -> *mut ::std::os::raw::c_char;
16544    pub fn _php_glob_stream_get_count(
16545        stream: *mut php_stream,
16546        pflags: *mut ::std::os::raw::c_int,
16547        __php_stream_call_depth: ::std::os::raw::c_int,
16548        __zend_filename: *const ::std::os::raw::c_char,
16549        __zend_lineno: u32,
16550        __zend_orig_filename: *const ::std::os::raw::c_char,
16551        __zend_orig_lineno: u32,
16552    ) -> ::std::os::raw::c_int;
16553    pub static php_stream_userspace_ops: php_stream_ops;
16554    pub static php_stream_userspace_dir_ops: php_stream_ops;
16555    pub fn _php_stream_mmap_range(
16556        stream: *mut php_stream,
16557        offset: usize,
16558        length: usize,
16559        mode: php_stream_mmap_access_t::Type,
16560        mapped_len: *mut usize,
16561    ) -> *mut ::std::os::raw::c_char;
16562    pub fn _php_stream_mmap_unmap(stream: *mut php_stream) -> ::std::os::raw::c_int;
16563    pub fn _php_stream_mmap_unmap_ex(
16564        stream: *mut php_stream,
16565        readden: zend_off_t,
16566    ) -> ::std::os::raw::c_int;
16567    pub fn _php_stream_cast(
16568        stream: *mut php_stream,
16569        castas: ::std::os::raw::c_int,
16570        ret: *mut *mut ::std::os::raw::c_void,
16571        show_err: ::std::os::raw::c_int,
16572    ) -> zend_result;
16573    pub fn php_init_stream_wrappers(module_number: ::std::os::raw::c_int) -> zend_result;
16574    pub fn php_shutdown_stream_wrappers(module_number: ::std::os::raw::c_int);
16575    pub fn php_shutdown_stream_hashes();
16576    pub fn zm_post_zend_deactivate_streams() -> zend_result;
16577    pub fn php_register_url_stream_wrapper(
16578        protocol: *const ::std::os::raw::c_char,
16579        wrapper: *const php_stream_wrapper,
16580    ) -> zend_result;
16581    pub fn php_unregister_url_stream_wrapper(
16582        protocol: *const ::std::os::raw::c_char,
16583    ) -> zend_result;
16584    pub fn php_register_url_stream_wrapper_volatile(
16585        protocol: *mut zend_string,
16586        wrapper: *mut php_stream_wrapper,
16587    ) -> zend_result;
16588    pub fn php_unregister_url_stream_wrapper_volatile(protocol: *mut zend_string) -> zend_result;
16589    pub fn _php_stream_open_wrapper_ex(
16590        path: *const ::std::os::raw::c_char,
16591        mode: *const ::std::os::raw::c_char,
16592        options: ::std::os::raw::c_int,
16593        opened_path: *mut *mut zend_string,
16594        context: *mut php_stream_context,
16595        __php_stream_call_depth: ::std::os::raw::c_int,
16596        __zend_filename: *const ::std::os::raw::c_char,
16597        __zend_lineno: u32,
16598        __zend_orig_filename: *const ::std::os::raw::c_char,
16599        __zend_orig_lineno: u32,
16600    ) -> *mut php_stream;
16601    pub fn php_stream_locate_url_wrapper(
16602        path: *const ::std::os::raw::c_char,
16603        path_for_open: *mut *const ::std::os::raw::c_char,
16604        options: ::std::os::raw::c_int,
16605    ) -> *mut php_stream_wrapper;
16606    pub fn php_stream_locate_eol(
16607        stream: *mut php_stream,
16608        buf: *mut zend_string,
16609    ) -> *const ::std::os::raw::c_char;
16610    pub fn php_stream_wrapper_log_error(
16611        wrapper: *const php_stream_wrapper,
16612        options: ::std::os::raw::c_int,
16613        fmt: *const ::std::os::raw::c_char,
16614        ...
16615    );
16616    pub fn _php_stream_make_seekable(
16617        origstream: *mut php_stream,
16618        newstream: *mut *mut php_stream,
16619        flags: ::std::os::raw::c_int,
16620        __php_stream_call_depth: ::std::os::raw::c_int,
16621        __zend_filename: *const ::std::os::raw::c_char,
16622        __zend_lineno: u32,
16623        __zend_orig_filename: *const ::std::os::raw::c_char,
16624        __zend_orig_lineno: u32,
16625    ) -> php_stream_make_seekable_status::Type;
16626    pub fn _php_stream_get_url_stream_wrappers_hash() -> *mut HashTable;
16627    pub fn php_stream_get_url_stream_wrappers_hash_global() -> *mut HashTable;
16628    pub fn _php_get_stream_filters_hash() -> *mut HashTable;
16629    pub fn php_get_stream_filters_hash_global() -> *mut HashTable;
16630    pub static mut php_stream_user_wrapper_ops: *const php_stream_wrapper_ops;
16631    #[link_name = "php_is_stream_path__extern"]
16632    pub fn php_is_stream_path(filename: *const ::std::os::raw::c_char) -> bool;
16633    pub fn _php_stream_memory_create(
16634        mode: ::std::os::raw::c_int,
16635        __php_stream_call_depth: ::std::os::raw::c_int,
16636        __zend_filename: *const ::std::os::raw::c_char,
16637        __zend_lineno: u32,
16638        __zend_orig_filename: *const ::std::os::raw::c_char,
16639        __zend_orig_lineno: u32,
16640    ) -> *mut php_stream;
16641    pub fn _php_stream_memory_open(
16642        mode: ::std::os::raw::c_int,
16643        buf: *mut zend_string,
16644        __php_stream_call_depth: ::std::os::raw::c_int,
16645        __zend_filename: *const ::std::os::raw::c_char,
16646        __zend_lineno: u32,
16647        __zend_orig_filename: *const ::std::os::raw::c_char,
16648        __zend_orig_lineno: u32,
16649    ) -> *mut php_stream;
16650    pub fn _php_stream_memory_get_buffer(
16651        stream: *mut php_stream,
16652        __php_stream_call_depth: ::std::os::raw::c_int,
16653        __zend_filename: *const ::std::os::raw::c_char,
16654        __zend_lineno: u32,
16655        __zend_orig_filename: *const ::std::os::raw::c_char,
16656        __zend_orig_lineno: u32,
16657    ) -> *mut zend_string;
16658    pub fn _php_stream_temp_create(
16659        mode: ::std::os::raw::c_int,
16660        max_memory_usage: usize,
16661        __php_stream_call_depth: ::std::os::raw::c_int,
16662        __zend_filename: *const ::std::os::raw::c_char,
16663        __zend_lineno: u32,
16664        __zend_orig_filename: *const ::std::os::raw::c_char,
16665        __zend_orig_lineno: u32,
16666    ) -> *mut php_stream;
16667    pub fn _php_stream_temp_create_ex(
16668        mode: ::std::os::raw::c_int,
16669        max_memory_usage: usize,
16670        tmpdir: *const ::std::os::raw::c_char,
16671        __php_stream_call_depth: ::std::os::raw::c_int,
16672        __zend_filename: *const ::std::os::raw::c_char,
16673        __zend_lineno: u32,
16674        __zend_orig_filename: *const ::std::os::raw::c_char,
16675        __zend_orig_lineno: u32,
16676    ) -> *mut php_stream;
16677    pub fn _php_stream_temp_open(
16678        mode: ::std::os::raw::c_int,
16679        max_memory_usage: usize,
16680        buf: *const ::std::os::raw::c_char,
16681        length: usize,
16682        __php_stream_call_depth: ::std::os::raw::c_int,
16683        __zend_filename: *const ::std::os::raw::c_char,
16684        __zend_lineno: u32,
16685        __zend_orig_filename: *const ::std::os::raw::c_char,
16686        __zend_orig_lineno: u32,
16687    ) -> *mut php_stream;
16688    pub fn php_stream_mode_from_str(mode: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
16689    pub fn _php_stream_mode_to_str(mode: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
16690    pub static php_stream_memory_ops: php_stream_ops;
16691    pub static php_stream_temp_ops: php_stream_ops;
16692    pub static php_stream_rfc2397_ops: php_stream_ops;
16693    pub static php_stream_rfc2397_wrapper: php_stream_wrapper;
16694    pub static mut core_globals: _php_core_globals;
16695    pub fn config_zval_dtor(zvalue: *mut zval);
16696    pub fn php_init_config();
16697    pub fn php_shutdown_config();
16698    pub fn php_ini_register_extensions();
16699    pub fn cfg_get_entry_ex(name: *mut zend_string) -> *mut zval;
16700    pub fn cfg_get_entry(name: *const ::std::os::raw::c_char, name_length: usize) -> *mut zval;
16701    pub fn cfg_get_long(
16702        varname: *const ::std::os::raw::c_char,
16703        result: *mut zend_long,
16704    ) -> zend_result;
16705    pub fn cfg_get_double(varname: *const ::std::os::raw::c_char, result: *mut f64) -> zend_result;
16706    pub fn cfg_get_string(
16707        varname: *const ::std::os::raw::c_char,
16708        result: *mut *mut ::std::os::raw::c_char,
16709    ) -> zend_result;
16710    pub fn php_parse_user_ini_file(
16711        dirname: *const ::std::os::raw::c_char,
16712        ini_filename: *const ::std::os::raw::c_char,
16713        target_hash: *mut HashTable,
16714    ) -> zend_result;
16715    pub fn php_ini_activate_config(
16716        source_hash: *const HashTable,
16717        modify_type: ::std::os::raw::c_int,
16718        stage: ::std::os::raw::c_int,
16719    );
16720    pub fn php_ini_has_per_dir_config() -> bool;
16721    pub fn php_ini_has_per_host_config() -> bool;
16722    pub fn php_ini_activate_per_dir_config(path: *mut ::std::os::raw::c_char, path_len: usize);
16723    pub fn php_ini_activate_per_host_config(host: *const ::std::os::raw::c_char, host_len: usize);
16724    pub fn php_ini_get_configuration_hash() -> *mut HashTable;
16725    pub fn php_fopen_primary_script(file_handle: *mut zend_file_handle) -> ::std::os::raw::c_int;
16726    pub fn expand_filepath(
16727        filepath: *const ::std::os::raw::c_char,
16728        real_path: *mut ::std::os::raw::c_char,
16729    ) -> *mut ::std::os::raw::c_char;
16730    pub fn expand_filepath_ex(
16731        filepath: *const ::std::os::raw::c_char,
16732        real_path: *mut ::std::os::raw::c_char,
16733        relative_to: *const ::std::os::raw::c_char,
16734        relative_to_len: usize,
16735    ) -> *mut ::std::os::raw::c_char;
16736    pub fn expand_filepath_with_mode(
16737        filepath: *const ::std::os::raw::c_char,
16738        real_path: *mut ::std::os::raw::c_char,
16739        relative_to: *const ::std::os::raw::c_char,
16740        relative_to_len: usize,
16741        use_realpath: ::std::os::raw::c_int,
16742    ) -> *mut ::std::os::raw::c_char;
16743    pub fn php_check_open_basedir(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
16744    pub fn php_check_open_basedir_ex(
16745        path: *const ::std::os::raw::c_char,
16746        warn: ::std::os::raw::c_int,
16747    ) -> ::std::os::raw::c_int;
16748    pub fn php_check_specific_open_basedir(
16749        basedir: *const ::std::os::raw::c_char,
16750        path: *const ::std::os::raw::c_char,
16751    ) -> ::std::os::raw::c_int;
16752    pub fn php_resolve_path(
16753        filename: *const ::std::os::raw::c_char,
16754        filename_len: usize,
16755        path: *const ::std::os::raw::c_char,
16756    ) -> *mut zend_string;
16757    pub fn php_fopen_with_path(
16758        filename: *const ::std::os::raw::c_char,
16759        mode: *const ::std::os::raw::c_char,
16760        path: *const ::std::os::raw::c_char,
16761        opened_path: *mut *mut zend_string,
16762    ) -> *mut FILE;
16763    pub fn php_strip_url_passwd(path: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
16764    pub fn OnUpdateBaseDir(
16765        entry: *mut zend_ini_entry,
16766        new_value: *mut zend_string,
16767        mh_arg1: *mut ::std::os::raw::c_void,
16768        mh_arg2: *mut ::std::os::raw::c_void,
16769        mh_arg3: *mut ::std::os::raw::c_void,
16770        stage: ::std::os::raw::c_int,
16771    ) -> ::std::os::raw::c_int;
16772    pub fn php_print_info_htmlhead();
16773    pub fn php_print_info(flag: ::std::os::raw::c_int);
16774    pub fn php_print_style();
16775    pub fn php_info_print_style();
16776    pub fn php_info_print_table_colspan_header(
16777        num_cols: ::std::os::raw::c_int,
16778        header: *const ::std::os::raw::c_char,
16779    );
16780    pub fn php_info_print_table_header(num_cols: ::std::os::raw::c_int, ...);
16781    pub fn php_info_print_table_row(num_cols: ::std::os::raw::c_int, ...);
16782    pub fn php_info_print_table_row_ex(
16783        num_cols: ::std::os::raw::c_int,
16784        arg1: *const ::std::os::raw::c_char,
16785        ...
16786    );
16787    pub fn php_info_print_table_start();
16788    pub fn php_info_print_table_end();
16789    pub fn php_info_print_box_start(bg: ::std::os::raw::c_int);
16790    pub fn php_info_print_box_end();
16791    pub fn php_info_print_hr();
16792    pub fn php_info_print_module(module: *mut zend_module_entry);
16793    pub fn php_get_uname(mode: ::std::os::raw::c_char) -> *mut zend_string;
16794    pub fn register_phpinfo_constants(
16795        type_: ::std::os::raw::c_int,
16796        module_number: ::std::os::raw::c_int,
16797    );
16798    pub fn zm_activate_filestat(
16799        type_: ::std::os::raw::c_int,
16800        module_number: ::std::os::raw::c_int,
16801    ) -> zend_result;
16802    pub fn zm_deactivate_filestat(
16803        type_: ::std::os::raw::c_int,
16804        module_number: ::std::os::raw::c_int,
16805    ) -> zend_result;
16806    pub fn php_clear_stat_cache(
16807        clear_realpath_cache: bool,
16808        filename: *const ::std::os::raw::c_char,
16809        filename_len: usize,
16810    );
16811    pub fn php_stat(
16812        filename: *mut zend_string,
16813        type_: ::std::os::raw::c_int,
16814        return_value: *mut zval,
16815    );
16816    pub fn zm_startup_url_scanner_ex(
16817        type_: ::std::os::raw::c_int,
16818        module_number: ::std::os::raw::c_int,
16819    ) -> zend_result;
16820    pub fn zm_shutdown_url_scanner_ex(
16821        type_: ::std::os::raw::c_int,
16822        module_number: ::std::os::raw::c_int,
16823    ) -> zend_result;
16824    pub fn zm_activate_url_scanner_ex(
16825        type_: ::std::os::raw::c_int,
16826        module_number: ::std::os::raw::c_int,
16827    ) -> zend_result;
16828    pub fn zm_deactivate_url_scanner_ex(
16829        type_: ::std::os::raw::c_int,
16830        module_number: ::std::os::raw::c_int,
16831    ) -> zend_result;
16832    pub fn php_url_scanner_early_rinit();
16833    pub fn php_url_scanner_adapt_single_url(
16834        url: *const ::std::os::raw::c_char,
16835        urllen: usize,
16836        name: *const ::std::os::raw::c_char,
16837        value: *const ::std::os::raw::c_char,
16838        newlen: *mut usize,
16839        encode: bool,
16840    ) -> *mut ::std::os::raw::c_char;
16841    pub fn php_url_scanner_add_session_var(
16842        name: *const ::std::os::raw::c_char,
16843        name_len: usize,
16844        value: *const ::std::os::raw::c_char,
16845        value_len: usize,
16846        encode: bool,
16847    ) -> zend_result;
16848    pub fn php_url_scanner_reset_session_var(
16849        name: *mut zend_string,
16850        encode: ::std::os::raw::c_int,
16851    ) -> zend_result;
16852    pub fn php_url_scanner_reset_session_vars() -> zend_result;
16853    pub fn php_url_scanner_add_var(
16854        name: *const ::std::os::raw::c_char,
16855        name_len: usize,
16856        value: *const ::std::os::raw::c_char,
16857        value_len: usize,
16858        encode: bool,
16859    ) -> zend_result;
16860    pub fn php_url_scanner_reset_var(
16861        name: *mut zend_string,
16862        encode: ::std::os::raw::c_int,
16863    ) -> zend_result;
16864    pub fn php_url_scanner_reset_vars() -> zend_result;
16865    pub static mut basic_functions_module: zend_module_entry;
16866    pub fn zm_startup_basic(
16867        type_: ::std::os::raw::c_int,
16868        module_number: ::std::os::raw::c_int,
16869    ) -> zend_result;
16870    pub fn zm_shutdown_basic(
16871        type_: ::std::os::raw::c_int,
16872        module_number: ::std::os::raw::c_int,
16873    ) -> zend_result;
16874    pub fn zm_activate_basic(
16875        type_: ::std::os::raw::c_int,
16876        module_number: ::std::os::raw::c_int,
16877    ) -> zend_result;
16878    pub fn zm_deactivate_basic(
16879        type_: ::std::os::raw::c_int,
16880        module_number: ::std::os::raw::c_int,
16881    ) -> zend_result;
16882    pub fn zm_info_basic(zend_module: *mut zend_module_entry);
16883    pub fn php_get_highlight_struct(syntax_highlighter_ini: *mut zend_syntax_highlighter_ini);
16884    pub fn zm_startup_user_filters(
16885        type_: ::std::os::raw::c_int,
16886        module_number: ::std::os::raw::c_int,
16887    ) -> zend_result;
16888    pub fn zm_deactivate_user_filters(
16889        type_: ::std::os::raw::c_int,
16890        module_number: ::std::os::raw::c_int,
16891    ) -> zend_result;
16892    pub fn zm_deactivate_browscap(
16893        type_: ::std::os::raw::c_int,
16894        module_number: ::std::os::raw::c_int,
16895    ) -> zend_result;
16896    pub fn _php_error_log(
16897        opt_err: ::std::os::raw::c_int,
16898        message: *const ::std::os::raw::c_char,
16899        opt: *const ::std::os::raw::c_char,
16900        headers: *const ::std::os::raw::c_char,
16901    ) -> ::std::os::raw::c_int;
16902    pub fn _php_error_log_ex(
16903        opt_err: ::std::os::raw::c_int,
16904        message: *const ::std::os::raw::c_char,
16905        message_len: usize,
16906        opt: *const ::std::os::raw::c_char,
16907        headers: *const ::std::os::raw::c_char,
16908    ) -> ::std::os::raw::c_int;
16909    pub fn php_prefix_varname(
16910        result: *mut zval,
16911        prefix: *mut zend_string,
16912        var_name: *const ::std::os::raw::c_char,
16913        var_name_len: usize,
16914        add_underscore: bool,
16915    ) -> ::std::os::raw::c_int;
16916    pub static mut basic_globals: php_basic_globals;
16917    pub fn php_getenv(str_: *const ::std::os::raw::c_char, str_len: usize) -> *mut zend_string;
16918    pub fn php_get_nan() -> f64;
16919    pub fn php_get_inf() -> f64;
16920    pub fn register_user_shutdown_function(
16921        function_name: *const ::std::os::raw::c_char,
16922        function_len: usize,
16923        shutdown_function_entry: *mut php_shutdown_function_entry,
16924    ) -> bool;
16925    pub fn remove_user_shutdown_function(
16926        function_name: *const ::std::os::raw::c_char,
16927        function_len: usize,
16928    ) -> bool;
16929    pub fn append_user_shutdown_function(
16930        shutdown_function_entry: *mut php_shutdown_function_entry,
16931    ) -> bool;
16932    pub fn php_basic_early_rinit();
16933    pub fn php_call_shutdown_functions();
16934    pub fn php_free_shutdown_functions();
16935    pub fn zm_startup_var(
16936        type_: ::std::os::raw::c_int,
16937        module_number: ::std::os::raw::c_int,
16938    ) -> zend_result;
16939    pub fn php_var_dump(struc: *mut zval, level: ::std::os::raw::c_int);
16940    pub fn php_var_export(struc: *mut zval, level: ::std::os::raw::c_int);
16941    pub fn php_var_export_ex(
16942        struc: *mut zval,
16943        level: ::std::os::raw::c_int,
16944        buf: *mut smart_str,
16945    ) -> zend_result;
16946    pub fn php_debug_zval_dump(struc: *mut zval, level: ::std::os::raw::c_int);
16947    pub fn php_var_serialize(
16948        buf: *mut smart_str,
16949        struc: *mut zval,
16950        data: *mut php_serialize_data_t,
16951    );
16952    pub fn php_var_unserialize(
16953        rval: *mut zval,
16954        p: *mut *const ::std::os::raw::c_uchar,
16955        max: *const ::std::os::raw::c_uchar,
16956        var_hash: *mut php_unserialize_data_t,
16957    ) -> ::std::os::raw::c_int;
16958    pub fn php_var_unserialize_ref(
16959        rval: *mut zval,
16960        p: *mut *const ::std::os::raw::c_uchar,
16961        max: *const ::std::os::raw::c_uchar,
16962        var_hash: *mut php_unserialize_data_t,
16963    ) -> ::std::os::raw::c_int;
16964    pub fn php_var_unserialize_intern(
16965        rval: *mut zval,
16966        p: *mut *const ::std::os::raw::c_uchar,
16967        max: *const ::std::os::raw::c_uchar,
16968        var_hash: *mut php_unserialize_data_t,
16969    ) -> ::std::os::raw::c_int;
16970    pub fn php_var_serialize_init() -> php_serialize_data_t;
16971    pub fn php_var_serialize_set_incomplete_classes_only(
16972        d: php_serialize_data_t,
16973        incomplete_classes_only: bool,
16974    );
16975    pub fn php_var_serialize_destroy(d: php_serialize_data_t);
16976    pub fn php_var_unserialize_init() -> php_unserialize_data_t;
16977    pub fn php_var_unserialize_destroy(d: php_unserialize_data_t);
16978    pub fn php_var_unserialize_get_allowed_classes(d: php_unserialize_data_t) -> *mut HashTable;
16979    pub fn php_var_unserialize_set_allowed_classes(
16980        d: php_unserialize_data_t,
16981        classes: *mut HashTable,
16982    );
16983    pub fn php_var_unserialize_set_incomplete_classes_only(
16984        d: php_unserialize_data_t,
16985        incomplete_classes_only: bool,
16986    );
16987    pub fn php_var_unserialize_set_max_depth(d: php_unserialize_data_t, max_depth: zend_long);
16988    pub fn php_var_unserialize_get_max_depth(d: php_unserialize_data_t) -> zend_long;
16989    pub fn php_var_unserialize_set_cur_depth(d: php_unserialize_data_t, cur_depth: zend_long);
16990    pub fn php_var_unserialize_get_cur_depth(d: php_unserialize_data_t) -> zend_long;
16991    pub fn php_unserialize_with_options(
16992        return_value: *mut zval,
16993        buf: *const ::std::os::raw::c_char,
16994        buf_len: usize,
16995        options: *mut HashTable,
16996        function_name: *const ::std::os::raw::c_char,
16997    );
16998    pub fn var_replace(var_hash: *mut php_unserialize_data_t, ozval: *mut zval, nzval: *mut zval);
16999    pub fn var_push_dtor(var_hash: *mut php_unserialize_data_t, val: *mut zval);
17000    pub fn var_tmp_var(var_hashx: *mut php_unserialize_data_t) -> *mut zval;
17001    pub fn var_destroy(var_hash: *mut php_unserialize_data_t);
17002}