#[repr(C)]
#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
pub struct __BindgenBitfieldUnit<Storage> {
storage: Storage,
}
impl<Storage> __BindgenBitfieldUnit<Storage> {
#[inline]
pub const fn new(storage: Storage) -> Self {
Self { storage }
}
}
impl<Storage> __BindgenBitfieldUnit<Storage>
where
Storage: AsRef<[u8]> + AsMut<[u8]>,
{
#[inline]
pub fn get_bit(&self, index: usize) -> bool {
debug_assert!(index / 8 < self.storage.as_ref().len());
let byte_index = index / 8;
let byte = self.storage.as_ref()[byte_index];
let bit_index = if cfg!(target_endian = "big") {
7 - (index % 8)
} else {
index % 8
};
let mask = 1 << bit_index;
byte & mask == mask
}
#[inline]
pub fn set_bit(&mut self, index: usize, val: bool) {
debug_assert!(index / 8 < self.storage.as_ref().len());
let byte_index = index / 8;
let byte = &mut self.storage.as_mut()[byte_index];
let bit_index = if cfg!(target_endian = "big") {
7 - (index % 8)
} else {
index % 8
};
let mask = 1 << bit_index;
if val {
*byte |= mask;
} else {
*byte &= !mask;
}
}
#[inline]
pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
debug_assert!(bit_width <= 64);
debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
let mut val = 0;
for i in 0..(bit_width as usize) {
if self.get_bit(i + bit_offset) {
let index = if cfg!(target_endian = "big") {
bit_width as usize - 1 - i
} else {
i
};
val |= 1 << index;
}
}
val
}
#[inline]
pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
debug_assert!(bit_width <= 64);
debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
for i in 0..(bit_width as usize) {
let mask = 1 << i;
let val_bit_is_set = val & mask == mask;
let index = if cfg!(target_endian = "big") {
bit_width as usize - 1 - i
} else {
i
};
self.set_bit(index + bit_offset, val_bit_is_set);
}
}
}
pub const PHP_API_VERSION: u32 = 20210902;
pub const YYDEBUG: u32 = 0;
pub const PHP_DEFAULT_CHARSET: &[u8; 6] = b"UTF-8\0";
pub const COMPILE_DL_READLINE: u32 = 1;
pub const COOKIE_SEEKER_USES_OFF64_T: u32 = 1;
pub const CRYPT_R_STRUCT_CRYPT_DATA: u32 = 1;
pub const DEFAULT_SHORT_OPEN_TAG: &[u8; 2] = b"1\0";
pub const ENABLE_CHROOT_FUNC: u32 = 1;
pub const HAVE_ALIGNOF: u32 = 1;
pub const HAVE_ALLOCA: u32 = 1;
pub const HAVE_ALLOCA_H: u32 = 1;
pub const HAVE_ALPHASORT: u32 = 1;
pub const HAVE_ARGON2LIB: u32 = 1;
pub const HAVE_ARPA_INET_H: u32 = 1;
pub const HAVE_ARPA_NAMESER_H: u32 = 1;
pub const HAVE_ASCTIME_R: u32 = 1;
pub const HAVE_ASM_GOTO: u32 = 1;
pub const HAVE_ASPRINTF: u32 = 1;
pub const HAVE_ATOLL: u32 = 1;
pub const HAVE_ATTRIBUTE_ALIGNED: u32 = 1;
pub const HAVE_BUILD_DEFS_H: u32 = 1;
pub const HAVE_CHROOT: u32 = 1;
pub const HAVE_CPUID_COUNT: u32 = 1;
pub const HAVE_CPUID_H: u32 = 1;
pub const HAVE_CRYPT: u32 = 1;
pub const HAVE_CRYPT_H: u32 = 1;
pub const HAVE_CRYPT_R: u32 = 1;
pub const HAVE_CTIME_R: u32 = 1;
pub const HAVE_DECL_ARC4RANDOM_BUF: u32 = 0;
pub const HAVE_DEV_URANDOM: u32 = 1;
pub const HAVE_DIRENT_H: u32 = 1;
pub const HAVE_DLFCN_H: u32 = 1;
pub const HAVE_DLOPEN: u32 = 1;
pub const HAVE_DLSYM: u32 = 1;
pub const HAVE_DN_EXPAND: u32 = 1;
pub const HAVE_DN_SKIPNAME: u32 = 1;
pub const HAVE_DTRACE: u32 = 1;
pub const HAVE_EXPLICIT_BZERO: u32 = 1;
pub const HAVE_FCNTL_H: u32 = 1;
pub const HAVE_FDATASYNC: u32 = 1;
pub const HAVE_FLOCK: u32 = 1;
pub const HAVE_FNMATCH: u32 = 1;
pub const HAVE_FOPENCOOKIE: u32 = 1;
pub const HAVE_FORK: u32 = 1;
pub const HAVE_FPU_INLINE_ASM_X86: u32 = 1;
pub const HAVE_FTOK: u32 = 1;
pub const HAVE_FUNC_ATTRIBUTE_IFUNC: u32 = 1;
pub const HAVE_FUNC_ATTRIBUTE_TARGET: u32 = 1;
pub const HAVE_FUNC_GETHOSTBYNAME_R_6: u32 = 1;
pub const HAVE_GAI_STRERROR: u32 = 1;
pub const HAVE_GCC_GLOBAL_REGS: u32 = 1;
pub const HAVE_GETADDRINFO: u32 = 1;
pub const HAVE_GETCWD: u32 = 1;
pub const HAVE_GETGRNAM_R: u32 = 1;
pub const HAVE_GETHOSTBYADDR: u32 = 1;
pub const HAVE_GETHOSTBYNAME_R: u32 = 1;
pub const HAVE_GETHOSTNAME: u32 = 1;
pub const HAVE_GETIFADDRS: u32 = 1;
pub const HAVE_GETLOADAVG: u32 = 1;
pub const HAVE_GETLOGIN: u32 = 1;
pub const HAVE_GETOPT: u32 = 1;
pub const HAVE_GETPID: u32 = 1;
pub const HAVE_GETPRIORITY: u32 = 1;
pub const HAVE_GETPROTOBYNAME: u32 = 1;
pub const HAVE_GETPROTOBYNUMBER: u32 = 1;
pub const HAVE_GETPWNAM_R: u32 = 1;
pub const HAVE_GETPWUID_R: u32 = 1;
pub const HAVE_GETRUSAGE: u32 = 1;
pub const HAVE_GETSERVBYNAME: u32 = 1;
pub const HAVE_GETSERVBYPORT: u32 = 1;
pub const HAVE_GETTIMEOFDAY: u32 = 1;
pub const HAVE_GETWD: u32 = 1;
pub const HAVE_GLOB: u32 = 1;
pub const HAVE_GMTIME_R: u32 = 1;
pub const HAVE_GRP_H: u32 = 1;
pub const HAVE_HISTORY_LIST: u32 = 1;
pub const HAVE_HTONL: u32 = 1;
pub const HAVE_IMMINTRIN_H: u32 = 1;
pub const HAVE_INET_ATON: u32 = 1;
pub const HAVE_INET_NTOA: u32 = 1;
pub const HAVE_INET_NTOP: u32 = 1;
pub const HAVE_INET_PTON: u32 = 1;
pub const HAVE_INT16_T: u32 = 1;
pub const HAVE_INT32_T: u32 = 1;
pub const HAVE_INT64_T: u32 = 1;
pub const HAVE_INT8_T: u32 = 1;
pub const HAVE_INTMAX_T: u32 = 1;
pub const HAVE_INTTYPES_H: u32 = 1;
pub const HAVE_IPV6: u32 = 1;
pub const HAVE_JSON: u32 = 1;
pub const HAVE_KILL: u32 = 1;
pub const HAVE_LANGINFO_H: u32 = 1;
pub const HAVE_LCHOWN: u32 = 1;
pub const HAVE_LIBCRYPT: u32 = 1;
pub const HAVE_LIBDL: u32 = 1;
pub const HAVE_LIBEDIT: u32 = 1;
pub const HAVE_LIBM: u32 = 1;
pub const HAVE_LIBRT: u32 = 1;
pub const HAVE_LIBSODIUMLIB: u32 = 1;
pub const HAVE_LIBXML: u32 = 1;
pub const HAVE_LOCALTIME_R: u32 = 1;
pub const HAVE_MALLOC_H: u32 = 1;
pub const HAVE_MEMMEM: u32 = 1;
pub const HAVE_MEMMOVE: u32 = 1;
pub const HAVE_MKSTEMP: u32 = 1;
pub const HAVE_MMAP: u32 = 1;
pub const HAVE_MREMAP: u32 = 1;
pub const HAVE_NANOSLEEP: u32 = 1;
pub const HAVE_NETINET_IN_H: u32 = 1;
pub const HAVE_NET_IF_H: u32 = 1;
pub const HAVE_NICE: u32 = 1;
pub const HAVE_NL_LANGINFO: u32 = 1;
pub const HAVE_NMMINTRIN_H: u32 = 1;
pub const HAVE_OPENPTY: u32 = 1;
pub const HAVE_OPENSSL_EXT: u32 = 1;
pub const HAVE_PCRE_JIT_SUPPORT: u32 = 1;
pub const HAVE_PHP_SESSION: u32 = 1;
pub const HAVE_POLL: u32 = 1;
pub const HAVE_POLL_H: u32 = 1;
pub const HAVE_PREAD: u32 = 1;
pub const HAVE_PTRDIFF_T: u32 = 1;
pub const HAVE_PTY_H: u32 = 1;
pub const HAVE_PUTENV: u32 = 1;
pub const HAVE_PWD_H: u32 = 1;
pub const HAVE_PWRITE: u32 = 1;
pub const HAVE_RESOLV_H: u32 = 1;
pub const HAVE_RES_NSEARCH: u32 = 1;
pub const HAVE_RES_SEARCH: u32 = 1;
pub const HAVE_RL_CALLBACK_READ_CHAR: u32 = 1;
pub const HAVE_RL_COMPLETION_MATCHES: u32 = 1;
pub const HAVE_RL_ON_NEW_LINE: u32 = 1;
pub const HAVE_SCANDIR: u32 = 1;
pub const HAVE_SETENV: u32 = 1;
pub const HAVE_SETITIMER: u32 = 1;
pub const HAVE_SETPRIORITY: u32 = 1;
pub const HAVE_SHUTDOWN: u32 = 1;
pub const HAVE_SIGACTION: u32 = 1;
pub const HAVE_SIGPROCMASK: u32 = 1;
pub const HAVE_SIGTIMEDWAIT: u32 = 1;
pub const HAVE_SIGWAITINFO: u32 = 1;
pub const HAVE_SOCKADDR_STORAGE: u32 = 1;
pub const HAVE_SOCKET: u32 = 1;
pub const HAVE_SOCKETPAIR: u32 = 1;
pub const HAVE_SOCKLEN_T: u32 = 1;
pub const HAVE_SSIZE_T: u32 = 1;
pub const HAVE_STATFS: u32 = 1;
pub const HAVE_STATVFS: u32 = 1;
pub const HAVE_STDINT_H: u32 = 1;
pub const HAVE_STDIO_H: u32 = 1;
pub const HAVE_STDLIB_H: u32 = 1;
pub const HAVE_STRCASECMP: u32 = 1;
pub const HAVE_STRINGS_H: u32 = 1;
pub const HAVE_STRING_H: u32 = 1;
pub const HAVE_STRNLEN: u32 = 1;
pub const HAVE_STRPTIME: u32 = 1;
pub const HAVE_STRPTIME_DECL_FAILS: u32 = 1;
pub const HAVE_STRTOK_R: u32 = 1;
pub const HAVE_STRTOLL: u32 = 1;
pub const HAVE_STRUCT_FLOCK: u32 = 1;
pub const HAVE_STRUCT_STAT_ST_BLKSIZE: u32 = 1;
pub const HAVE_STRUCT_STAT_ST_BLOCKS: u32 = 1;
pub const HAVE_STRUCT_STAT_ST_RDEV: u32 = 1;
pub const HAVE_STRUCT_TM_TM_GMTOFF: u32 = 1;
pub const HAVE_STRUCT_TM_TM_ZONE: u32 = 1;
pub const HAVE_ST_BLOCKS: u32 = 1;
pub const HAVE_SYMLINK: u32 = 1;
pub const HAVE_SYSEXITS_H: u32 = 1;
pub const HAVE_SYSLOG_H: u32 = 1;
pub const HAVE_SYSTEM_TZDATA: u32 = 1;
pub const HAVE_SYS_FILE_H: u32 = 1;
pub const HAVE_SYS_IOCTL_H: u32 = 1;
pub const HAVE_SYS_IPC_H: u32 = 1;
pub const HAVE_SYS_MMAN_H: u32 = 1;
pub const HAVE_SYS_MOUNT_H: u32 = 1;
pub const HAVE_SYS_PARAM_H: u32 = 1;
pub const HAVE_SYS_POLL_H: u32 = 1;
pub const HAVE_SYS_RESOURCE_H: u32 = 1;
pub const HAVE_SYS_SDT_H: u32 = 1;
pub const HAVE_SYS_SELECT_H: u32 = 1;
pub const HAVE_SYS_SOCKET_H: u32 = 1;
pub const HAVE_SYS_STATFS_H: u32 = 1;
pub const HAVE_SYS_STATVFS_H: u32 = 1;
pub const HAVE_SYS_STAT_H: u32 = 1;
pub const HAVE_SYS_TIME_H: u32 = 1;
pub const HAVE_SYS_TYPES_H: u32 = 1;
pub const HAVE_SYS_UIO_H: u32 = 1;
pub const HAVE_SYS_UTSNAME_H: u32 = 1;
pub const HAVE_SYS_VFS_H: u32 = 1;
pub const HAVE_SYS_WAIT_H: u32 = 1;
pub const HAVE_TIMELIB_CONFIG_H: u32 = 1;
pub const HAVE_TMMINTRIN_H: u32 = 1;
pub const HAVE_TM_ZONE: u32 = 1;
pub const HAVE_TZSET: u32 = 1;
pub const HAVE_UINT16_T: u32 = 1;
pub const HAVE_UINT32_T: u32 = 1;
pub const HAVE_UINT64_T: u32 = 1;
pub const HAVE_UINT8_T: u32 = 1;
pub const HAVE_UNISTD_H: u32 = 1;
pub const HAVE_UNSETENV: u32 = 1;
pub const HAVE_UNSHARE: u32 = 1;
pub const HAVE_USLEEP: u32 = 1;
pub const HAVE_UTIME: u32 = 1;
pub const HAVE_UTIME_H: u32 = 1;
pub const HAVE_VASPRINTF: u32 = 1;
pub const HAVE_WAIT3: u32 = 1;
pub const HAVE_WAIT4: u32 = 1;
pub const HAVE_WAITPID: u32 = 1;
pub const HAVE_WCHAR_H: u32 = 1;
pub const HAVE_WMMINTRIN_H: u32 = 1;
pub const HAVE_ZLIB: u32 = 1;
pub const HAVE__FPU_SETCW: u32 = 1;
pub const MISSING_FCLOSE_DECL: u32 = 0;
pub const ODBCVER: u32 = 768;
pub const PCRE2_CODE_UNIT_WIDTH: u32 = 8;
pub const PHP_BUILD_SYSTEM: &[u8; 6] = b"Linux\0";
pub const PHP_CAN_SUPPORT_PROC_OPEN: u32 = 1;
pub const PHP_HAVE_BUILTIN_CLZ: u32 = 1;
pub const PHP_HAVE_BUILTIN_CLZL: u32 = 1;
pub const PHP_HAVE_BUILTIN_CLZLL: u32 = 1;
pub const PHP_HAVE_BUILTIN_CPU_INIT: u32 = 1;
pub const PHP_HAVE_BUILTIN_CPU_SUPPORTS: u32 = 1;
pub const PHP_HAVE_BUILTIN_CTZL: u32 = 1;
pub const PHP_HAVE_BUILTIN_CTZLL: u32 = 1;
pub const PHP_HAVE_BUILTIN_EXPECT: u32 = 1;
pub const PHP_HAVE_BUILTIN_SADDLL_OVERFLOW: u32 = 1;
pub const PHP_HAVE_BUILTIN_SADDL_OVERFLOW: u32 = 1;
pub const PHP_HAVE_BUILTIN_SMULLL_OVERFLOW: u32 = 1;
pub const PHP_HAVE_BUILTIN_SMULL_OVERFLOW: u32 = 1;
pub const PHP_HAVE_BUILTIN_SSUBLL_OVERFLOW: u32 = 1;
pub const PHP_HAVE_BUILTIN_SSUBL_OVERFLOW: u32 = 1;
pub const PHP_MHASH_BC: u32 = 1;
pub const PHP_OS: &[u8; 6] = b"Linux\0";
pub const PHP_SIGCHILD: u32 = 0;
pub const PHP_UNAME: &[u8; 6] = b"Linux\0";
pub const PHP_USE_PHP_CRYPT_R: u32 = 1;
pub const PHP_WRITE_STDOUT: u32 = 1;
pub const SIZEOF_INT: u32 = 4;
pub const SIZEOF_INTMAX_T: u32 = 8;
pub const SIZEOF_LONG: u32 = 8;
pub const SIZEOF_LONG_LONG: u32 = 8;
pub const SIZEOF_OFF_T: u32 = 8;
pub const SIZEOF_PTRDIFF_T: u32 = 8;
pub const SIZEOF_SHORT: u32 = 2;
pub const SIZEOF_SIZE_T: u32 = 8;
pub const SIZEOF_SSIZE_T: u32 = 8;
pub const STDC_HEADERS: u32 = 1;
pub const _ALL_SOURCE: u32 = 1;
pub const _DARWIN_C_SOURCE: u32 = 1;
pub const __EXTENSIONS__: u32 = 1;
pub const _GNU_SOURCE: u32 = 1;
pub const _HPUX_ALT_XOPEN_SOCKET_API: u32 = 1;
pub const _NETBSD_SOURCE: u32 = 1;
pub const _OPENBSD_SOURCE: u32 = 1;
pub const _POSIX_PTHREAD_SEMANTICS: u32 = 1;
pub const __STDC_WANT_IEC_60559_ATTRIBS_EXT__: u32 = 1;
pub const __STDC_WANT_IEC_60559_BFP_EXT__: u32 = 1;
pub const __STDC_WANT_IEC_60559_DFP_EXT__: u32 = 1;
pub const __STDC_WANT_IEC_60559_FUNCS_EXT__: u32 = 1;
pub const __STDC_WANT_IEC_60559_TYPES_EXT__: u32 = 1;
pub const __STDC_WANT_LIB_EXT2__: u32 = 1;
pub const __STDC_WANT_MATH_SPEC_FUNCS__: u32 = 1;
pub const _TANDEM_SOURCE: u32 = 1;
pub const ZEND_DEBUG: u32 = 0;
pub const ZEND_FIBER_ASM: u32 = 1;
pub const ZEND_MM_ALIGNMENT: u32 = 8;
pub const ZEND_MM_ALIGNMENT_LOG2: u32 = 3;
pub const ZEND_SIGNALS: u32 = 1;
pub const PHP_MAJOR_VERSION: u32 = 8;
pub const PHP_MINOR_VERSION: u32 = 1;
pub const PHP_RELEASE_VERSION: u32 = 2;
pub const PHP_EXTRA_VERSION: &[u8; 13] = b"-1ubuntu2.14\0";
pub const PHP_VERSION: &[u8; 18] = b"8.1.2-1ubuntu2.14\0";
pub const PHP_VERSION_ID: u32 = 80102;
pub const ZEND_VERSION: &[u8; 6] = b"4.1.2\0";
pub const ZEND_PATHS_SEPARATOR: u8 = 58u8;
pub const ZEND_ENABLE_ZVAL_LONG64: u32 = 1;
pub const SIZEOF_ZEND_LONG: u32 = 8;
pub const ZEND_LTOA_BUF_LEN: u32 = 65;
pub const ZEND_LONG_FMT: &[u8; 4] = b"%ld\0";
pub const ZEND_ULONG_FMT: &[u8; 4] = b"%lu\0";
pub const ZEND_XLONG_FMT: &[u8; 4] = b"%lx\0";
pub const ZEND_LONG_FMT_SPEC: &[u8; 3] = b"ld\0";
pub const ZEND_ULONG_FMT_SPEC: &[u8; 3] = b"lu\0";
pub const MAX_LENGTH_OF_LONG: u32 = 20;
pub const LONG_MIN_DIGITS: &[u8; 20] = b"9223372036854775808\0";
pub const ZEND_ADDR_FMT: &[u8; 9] = b"0x%016zx\0";
pub const ZEND_LONG_CAN_OVFL_INT: u32 = 1;
pub const ZEND_LONG_CAN_OVFL_UINT: u32 = 1;
pub const ZEND_SIZE_T_CAN_OVFL_UINT: u32 = 1;
pub const PHP_RTLD_MODE: u32 = 1;
pub const ZEND_EXTENSIONS_SUPPORT: u32 = 1;
pub const ZEND_ALLOCA_MAX_SIZE: u32 = 32768;
pub const ZTS_V: u32 = 0;
pub const MAX_LENGTH_OF_DOUBLE: u32 = 32;
pub const ZEND_MAX_RESERVED_RESOURCES: u32 = 6;
pub const ZEND_INTRIN_HAVE_IFUNC_TARGET: u32 = 1;
pub const ZEND_INTRIN_SSSE3_RESOLVER: u32 = 1;
pub const ZEND_INTRIN_SSSE3_FUNC_PROTO: u32 = 1;
pub const ZEND_INTRIN_SSE4_2_RESOLVER: u32 = 1;
pub const ZEND_INTRIN_SSE4_2_FUNC_PROTO: u32 = 1;
pub const ZEND_INTRIN_PCLMUL_RESOLVER: u32 = 1;
pub const ZEND_INTRIN_PCLMUL_FUNC_PTR: u32 = 1;
pub const ZEND_INTRIN_SSE4_2_PCLMUL_RESOLVER: u32 = 1;
pub const ZEND_INTRIN_SSE4_2_PCLMUL_FUNC_PTR: u32 = 1;
pub const ZEND_INTRIN_AVX2_RESOLVER: u32 = 1;
pub const ZEND_INTRIN_AVX2_FUNC_PROTO: u32 = 1;
pub const ZEND_SIZE_MAX: i32 = -1;
pub const _ZEND_TYPE_EXTRA_FLAGS_SHIFT: u32 = 25;
pub const _ZEND_TYPE_MASK: u32 = 33554431;
pub const _ZEND_TYPE_NAME_BIT: u32 = 16777216;
pub const _ZEND_TYPE_LIST_BIT: u32 = 4194304;
pub const _ZEND_TYPE_KIND_MASK: u32 = 20971520;
pub const _ZEND_TYPE_ARENA_BIT: u32 = 1048576;
pub const _ZEND_TYPE_INTERSECTION_BIT: u32 = 524288;
pub const _ZEND_TYPE_UNION_BIT: u32 = 262144;
pub const _ZEND_TYPE_MAY_BE_MASK: u32 = 262143;
pub const _ZEND_TYPE_NULLABLE_BIT: u32 = 2;
pub const HT_MIN_SIZE: u32 = 8;
pub const HT_MAX_SIZE: u32 = 2147483648;
pub const IS_UNDEF: u32 = 0;
pub const IS_NULL: u32 = 1;
pub const IS_FALSE: u32 = 2;
pub const IS_TRUE: u32 = 3;
pub const IS_LONG: u32 = 4;
pub const IS_DOUBLE: u32 = 5;
pub const IS_STRING: u32 = 6;
pub const IS_ARRAY: u32 = 7;
pub const IS_OBJECT: u32 = 8;
pub const IS_RESOURCE: u32 = 9;
pub const IS_REFERENCE: u32 = 10;
pub const IS_CONSTANT_AST: u32 = 11;
pub const IS_CALLABLE: u32 = 12;
pub const IS_ITERABLE: u32 = 13;
pub const IS_VOID: u32 = 14;
pub const IS_STATIC: u32 = 15;
pub const IS_MIXED: u32 = 16;
pub const IS_NEVER: u32 = 17;
pub const IS_INDIRECT: u32 = 12;
pub const IS_PTR: u32 = 13;
pub const IS_ALIAS_PTR: u32 = 14;
pub const _IS_ERROR: u32 = 15;
pub const _IS_BOOL: u32 = 18;
pub const _IS_NUMBER: u32 = 19;
pub const Z_TYPE_MASK: u32 = 255;
pub const Z_TYPE_FLAGS_MASK: u32 = 65280;
pub const Z_TYPE_FLAGS_SHIFT: u32 = 8;
pub const GC_TYPE_MASK: u32 = 15;
pub const GC_FLAGS_MASK: u32 = 1008;
pub const GC_INFO_MASK: u32 = 4294966272;
pub const GC_FLAGS_SHIFT: u32 = 0;
pub const GC_INFO_SHIFT: u32 = 10;
pub const GC_NOT_COLLECTABLE: u32 = 16;
pub const GC_PROTECTED: u32 = 32;
pub const GC_IMMUTABLE: u32 = 64;
pub const GC_PERSISTENT: u32 = 128;
pub const GC_PERSISTENT_LOCAL: u32 = 256;
pub const GC_NULL: u32 = 17;
pub const GC_STRING: u32 = 22;
pub const GC_ARRAY: u32 = 7;
pub const GC_OBJECT: u32 = 8;
pub const GC_RESOURCE: u32 = 25;
pub const GC_REFERENCE: u32 = 26;
pub const GC_CONSTANT_AST: u32 = 27;
pub const IS_TYPE_REFCOUNTED: u32 = 1;
pub const IS_TYPE_COLLECTABLE: u32 = 2;
pub const IS_INTERNED_STRING_EX: u32 = 6;
pub const IS_STRING_EX: u32 = 262;
pub const IS_ARRAY_EX: u32 = 775;
pub const IS_OBJECT_EX: u32 = 776;
pub const IS_RESOURCE_EX: u32 = 265;
pub const IS_REFERENCE_EX: u32 = 266;
pub const IS_CONSTANT_AST_EX: u32 = 267;
pub const IS_STR_CLASS_NAME_MAP_PTR: u32 = 32;
pub const IS_STR_INTERNED: u32 = 64;
pub const IS_STR_PERSISTENT: u32 = 128;
pub const IS_STR_PERMANENT: u32 = 256;
pub const IS_STR_VALID_UTF8: u32 = 512;
pub const IS_ARRAY_IMMUTABLE: u32 = 64;
pub const IS_ARRAY_PERSISTENT: u32 = 128;
pub const IS_OBJ_WEAKLY_REFERENCED: u32 = 128;
pub const IS_OBJ_DESTRUCTOR_CALLED: u32 = 256;
pub const IS_OBJ_FREE_CALLED: u32 = 512;
pub const ZEND_RC_DEBUG: u32 = 0;
pub const IS_PROP_UNINIT: u32 = 1;
pub const ZEND_MAP_PTR_KIND_PTR: u32 = 0;
pub const ZEND_MAP_PTR_KIND_PTR_OR_OFFSET: u32 = 1;
pub const ZEND_MAP_PTR_KIND: u32 = 1;
pub const E_ERROR: u32 = 1;
pub const E_WARNING: u32 = 2;
pub const E_PARSE: u32 = 4;
pub const E_NOTICE: u32 = 8;
pub const E_CORE_ERROR: u32 = 16;
pub const E_CORE_WARNING: u32 = 32;
pub const E_COMPILE_ERROR: u32 = 64;
pub const E_COMPILE_WARNING: u32 = 128;
pub const E_USER_ERROR: u32 = 256;
pub const E_USER_WARNING: u32 = 512;
pub const E_USER_NOTICE: u32 = 1024;
pub const E_STRICT: u32 = 2048;
pub const E_RECOVERABLE_ERROR: u32 = 4096;
pub const E_DEPRECATED: u32 = 8192;
pub const E_USER_DEPRECATED: u32 = 16384;
pub const E_DONT_BAIL: u32 = 32768;
pub const E_ALL: u32 = 32767;
pub const E_CORE: u32 = 48;
pub const E_FATAL_ERRORS: u32 = 4437;
pub const ZEND_MM_ALIGNMENT_MASK: i32 = -8;
pub const ZEND_MM_OVERHEAD: u32 = 0;
pub const ZEND_MM_CHUNK_SIZE: u32 = 2097152;
pub const ZEND_MM_PAGE_SIZE: u32 = 4096;
pub const ZEND_MM_PAGES: u32 = 512;
pub const ZEND_MM_FIRST_PAGE: u32 = 1;
pub const ZEND_MM_MIN_SMALL_SIZE: u32 = 8;
pub const ZEND_MM_MAX_SMALL_SIZE: u32 = 3072;
pub const ZEND_MM_MAX_LARGE_SIZE: u32 = 2093056;
pub const ZEND_MM_CUSTOM_HEAP_NONE: u32 = 0;
pub const ZEND_MM_CUSTOM_HEAP_STD: u32 = 1;
pub const ZEND_MM_CUSTOM_HEAP_DEBUG: u32 = 2;
pub const HASH_KEY_IS_STRING: u32 = 1;
pub const HASH_KEY_IS_LONG: u32 = 2;
pub const HASH_KEY_NON_EXISTENT: u32 = 3;
pub const HASH_UPDATE: u32 = 1;
pub const HASH_ADD: u32 = 2;
pub const HASH_UPDATE_INDIRECT: u32 = 4;
pub const HASH_ADD_NEW: u32 = 8;
pub const HASH_ADD_NEXT: u32 = 16;
pub const HASH_LOOKUP: u32 = 32;
pub const HASH_FLAG_CONSISTENCY: u32 = 3;
pub const HASH_FLAG_PACKED: u32 = 4;
pub const HASH_FLAG_UNINITIALIZED: u32 = 8;
pub const HASH_FLAG_STATIC_KEYS: u32 = 16;
pub const HASH_FLAG_HAS_EMPTY_IND: u32 = 32;
pub const HASH_FLAG_ALLOW_COW_VIOLATION: u32 = 64;
pub const HASH_FLAG_MASK: u32 = 255;
pub const ZEND_HASH_APPLY_KEEP: u32 = 0;
pub const ZEND_HASH_APPLY_REMOVE: u32 = 1;
pub const ZEND_HASH_APPLY_STOP: u32 = 2;
pub const ZEND_AST_SPEC: u32 = 1;
pub const ZEND_AST_SPECIAL_SHIFT: u32 = 6;
pub const ZEND_AST_IS_LIST_SHIFT: u32 = 7;
pub const ZEND_AST_NUM_CHILDREN_SHIFT: u32 = 8;
pub const ZEND_MMAP_AHEAD: u32 = 32;
pub const ZEND_SIGNAL_QUEUE_SIZE: u32 = 64;
pub const ZMSG_FAILED_INCLUDE_FOPEN: u32 = 1;
pub const ZMSG_FAILED_REQUIRE_FOPEN: u32 = 2;
pub const ZMSG_FAILED_HIGHLIGHT_FOPEN: u32 = 3;
pub const ZMSG_MEMORY_LEAK_DETECTED: u32 = 4;
pub const ZMSG_MEMORY_LEAK_REPEATED: u32 = 5;
pub const ZMSG_LOG_SCRIPT_NAME: u32 = 6;
pub const ZMSG_MEMORY_LEAKS_GRAND_TOTAL: u32 = 7;
pub const DEBUG_BACKTRACE_PROVIDE_OBJECT: u32 = 1;
pub const DEBUG_BACKTRACE_IGNORE_ARGS: u32 = 2;
pub const ZEND_PROPERTY_ISSET: u32 = 0;
pub const ZEND_PROPERTY_EXISTS: u32 = 2;
pub const LP_SUFF: &[u8; 2] = b"q\0";
pub const ZEND_UNCOMPARABLE: u32 = 1;
pub const ZEND_USE_ASM_ARITHMETIC: u32 = 1;
pub const ZEND_USE_ABS_JMP_ADDR: u32 = 0;
pub const ZEND_USE_ABS_CONST_ADDR: u32 = 0;
pub const ZEND_LIVE_TMPVAR: u32 = 0;
pub const ZEND_LIVE_LOOP: u32 = 1;
pub const ZEND_LIVE_SILENCE: u32 = 2;
pub const ZEND_LIVE_ROPE: u32 = 3;
pub const ZEND_LIVE_NEW: u32 = 4;
pub const ZEND_LIVE_MASK: u32 = 7;
pub const ZEND_ACC_PUBLIC: u32 = 1;
pub const ZEND_ACC_PROTECTED: u32 = 2;
pub const ZEND_ACC_PRIVATE: u32 = 4;
pub const ZEND_ACC_CHANGED: u32 = 8;
pub const ZEND_ACC_STATIC: u32 = 16;
pub const ZEND_ACC_PROMOTED: u32 = 32;
pub const ZEND_ACC_FINAL: u32 = 32;
pub const ZEND_ACC_ABSTRACT: u32 = 64;
pub const ZEND_ACC_EXPLICIT_ABSTRACT_CLASS: u32 = 64;
pub const ZEND_ACC_READONLY: u32 = 128;
pub const ZEND_ACC_IMMUTABLE: u32 = 128;
pub const ZEND_ACC_HAS_TYPE_HINTS: u32 = 256;
pub const ZEND_ACC_TOP_LEVEL: u32 = 512;
pub const ZEND_ACC_PRELOADED: u32 = 1024;
pub const ZEND_CLASS_CONST_IS_CASE: u32 = 64;
pub const ZEND_ACC_INTERFACE: u32 = 1;
pub const ZEND_ACC_TRAIT: u32 = 2;
pub const ZEND_ACC_ANON_CLASS: u32 = 4;
pub const ZEND_ACC_ENUM: u32 = 268435456;
pub const ZEND_ACC_LINKED: u32 = 8;
pub const ZEND_ACC_IMPLICIT_ABSTRACT_CLASS: u32 = 16;
pub const ZEND_ACC_USE_GUARDS: u32 = 2048;
pub const ZEND_ACC_CONSTANTS_UPDATED: u32 = 4096;
pub const ZEND_ACC_NO_DYNAMIC_PROPERTIES: u32 = 8192;
pub const ZEND_HAS_STATIC_IN_METHODS: u32 = 16384;
pub const ZEND_ACC_REUSE_GET_ITERATOR: u32 = 65536;
pub const ZEND_ACC_RESOLVED_PARENT: u32 = 131072;
pub const ZEND_ACC_RESOLVED_INTERFACES: u32 = 262144;
pub const ZEND_ACC_UNRESOLVED_VARIANCE: u32 = 524288;
pub const ZEND_ACC_NEARLY_LINKED: u32 = 1048576;
pub const ZEND_ACC_CACHED: u32 = 4194304;
pub const ZEND_ACC_CACHEABLE: u32 = 8388608;
pub const ZEND_ACC_HAS_AST_CONSTANTS: u32 = 16777216;
pub const ZEND_ACC_HAS_AST_PROPERTIES: u32 = 33554432;
pub const ZEND_ACC_HAS_AST_STATICS: u32 = 67108864;
pub const ZEND_ACC_FILE_CACHED: u32 = 134217728;
pub const ZEND_ACC_NOT_SERIALIZABLE: u32 = 536870912;
pub const ZEND_ACC_DEPRECATED: u32 = 2048;
pub const ZEND_ACC_RETURN_REFERENCE: u32 = 4096;
pub const ZEND_ACC_HAS_RETURN_TYPE: u32 = 8192;
pub const ZEND_ACC_VARIADIC: u32 = 16384;
pub const ZEND_ACC_HAS_FINALLY_BLOCK: u32 = 32768;
pub const ZEND_ACC_EARLY_BINDING: u32 = 65536;
pub const ZEND_ACC_USES_THIS: u32 = 131072;
pub const ZEND_ACC_CALL_VIA_TRAMPOLINE: u32 = 262144;
pub const ZEND_ACC_NEVER_CACHE: u32 = 524288;
pub const ZEND_ACC_TRAIT_CLONE: u32 = 1048576;
pub const ZEND_ACC_CTOR: u32 = 2097152;
pub const ZEND_ACC_CLOSURE: u32 = 4194304;
pub const ZEND_ACC_FAKE_CLOSURE: u32 = 8388608;
pub const ZEND_ACC_GENERATOR: u32 = 16777216;
pub const ZEND_ACC_DONE_PASS_TWO: u32 = 33554432;
pub const ZEND_ACC_ARENA_ALLOCATED: u32 = 33554432;
pub const ZEND_ACC_HEAP_RT_CACHE: u32 = 67108864;
pub const ZEND_ACC_USER_ARG_INFO: u32 = 67108864;
pub const ZEND_ACC_STRICT_TYPES: u32 = 2147483648;
pub const ZEND_ACC_PPP_MASK: u32 = 7;
pub const ZEND_ACC_CALL_VIA_HANDLER: u32 = 262144;
pub const ZEND_SHORT_CIRCUITING_CHAIN_EXPR: u32 = 0;
pub const ZEND_SHORT_CIRCUITING_CHAIN_ISSET: u32 = 1;
pub const ZEND_SHORT_CIRCUITING_CHAIN_EMPTY: u32 = 2;
pub const ZEND_RETURN_VALUE: u32 = 0;
pub const ZEND_RETURN_REFERENCE: u32 = 1;
pub const ZEND_CALL_HAS_THIS: u32 = 776;
pub const ZEND_CALL_FUNCTION: u32 = 0;
pub const ZEND_CALL_CODE: u32 = 65536;
pub const ZEND_CALL_NESTED: u32 = 0;
pub const ZEND_CALL_TOP: u32 = 131072;
pub const ZEND_CALL_ALLOCATED: u32 = 262144;
pub const ZEND_CALL_FREE_EXTRA_ARGS: u32 = 524288;
pub const ZEND_CALL_HAS_SYMBOL_TABLE: u32 = 1048576;
pub const ZEND_CALL_RELEASE_THIS: u32 = 2097152;
pub const ZEND_CALL_CLOSURE: u32 = 4194304;
pub const ZEND_CALL_FAKE_CLOSURE: u32 = 8388608;
pub const ZEND_CALL_GENERATOR: u32 = 16777216;
pub const ZEND_CALL_DYNAMIC: u32 = 33554432;
pub const ZEND_CALL_MAY_HAVE_UNDEF: u32 = 67108864;
pub const ZEND_CALL_HAS_EXTRA_NAMED_PARAMS: u32 = 134217728;
pub const ZEND_CALL_OBSERVED: u32 = 268435456;
pub const ZEND_CALL_JIT_RESERVED: u32 = 536870912;
pub const ZEND_CALL_SEND_ARG_BY_REF: u32 = 2147483648;
pub const ZEND_CALL_NESTED_FUNCTION: u32 = 0;
pub const ZEND_CALL_NESTED_CODE: u32 = 65536;
pub const ZEND_CALL_TOP_FUNCTION: u32 = 131072;
pub const ZEND_CALL_TOP_CODE: u32 = 196608;
pub const IS_UNUSED: u32 = 0;
pub const IS_CONST: u32 = 1;
pub const IS_TMP_VAR: u32 = 2;
pub const IS_VAR: u32 = 4;
pub const IS_CV: u32 = 8;
pub const IS_SMART_BRANCH_JMPZ: u32 = 16;
pub const IS_SMART_BRANCH_JMPNZ: u32 = 32;
pub const ZEND_EXTRA_VALUE: u32 = 1;
pub const STACK_BLOCK_SIZE: u32 = 16;
pub const ZEND_STACK_APPLY_TOPDOWN: u32 = 1;
pub const ZEND_STACK_APPLY_BOTTOMUP: u32 = 2;
pub const PTR_STACK_BLOCK_SIZE: u32 = 64;
pub const ZEND_PTR_STACK_NUM_ARGS: u32 = 3;
pub const OBJ_BUCKET_INVALID: u32 = 1;
pub const XPFPA_HAVE_CW: u32 = 0;
pub const SYMTABLE_CACHE_SIZE: u32 = 32;
pub const EG_FLAGS_INITIAL: u32 = 0;
pub const EG_FLAGS_IN_SHUTDOWN: u32 = 1;
pub const EG_FLAGS_OBJECT_STORE_NO_REUSE: u32 = 2;
pub const EG_FLAGS_IN_RESOURCE_SHUTDOWN: u32 = 4;
pub const INITIAL_OP_ARRAY_SIZE: u32 = 64;
pub const ZEND_VM_SPEC: u32 = 1;
pub const ZEND_VM_LINES: u32 = 0;
pub const ZEND_VM_KIND_CALL: u32 = 1;
pub const ZEND_VM_KIND_SWITCH: u32 = 2;
pub const ZEND_VM_KIND_GOTO: u32 = 3;
pub const ZEND_VM_KIND_HYBRID: u32 = 4;
pub const ZEND_VM_KIND: u32 = 4;
pub const ZEND_VM_HYBRID_JIT_RED_ZONE_SIZE: u32 = 16;
pub const ZEND_VM_OP_SPEC: u32 = 1;
pub const ZEND_VM_OP_CONST: u32 = 2;
pub const ZEND_VM_OP_TMPVAR: u32 = 4;
pub const ZEND_VM_OP_TMPVARCV: u32 = 8;
pub const ZEND_VM_OP_MASK: u32 = 240;
pub const ZEND_VM_OP_NUM: u32 = 16;
pub const ZEND_VM_OP_JMP_ADDR: u32 = 32;
pub const ZEND_VM_OP_TRY_CATCH: u32 = 48;
pub const ZEND_VM_OP_THIS: u32 = 80;
pub const ZEND_VM_OP_NEXT: u32 = 96;
pub const ZEND_VM_OP_CLASS_FETCH: u32 = 112;
pub const ZEND_VM_OP_CONSTRUCTOR: u32 = 128;
pub const ZEND_VM_OP_CONST_FETCH: u32 = 144;
pub const ZEND_VM_OP_CACHE_SLOT: u32 = 160;
pub const ZEND_VM_EXT_VAR_FETCH: u32 = 65536;
pub const ZEND_VM_EXT_ISSET: u32 = 131072;
pub const ZEND_VM_EXT_CACHE_SLOT: u32 = 262144;
pub const ZEND_VM_EXT_ARRAY_INIT: u32 = 524288;
pub const ZEND_VM_EXT_REF: u32 = 1048576;
pub const ZEND_VM_EXT_FETCH_REF: u32 = 2097152;
pub const ZEND_VM_EXT_DIM_WRITE: u32 = 4194304;
pub const ZEND_VM_EXT_MASK: u32 = 251658240;
pub const ZEND_VM_EXT_NUM: u32 = 16777216;
pub const ZEND_VM_EXT_LAST_CATCH: u32 = 33554432;
pub const ZEND_VM_EXT_JMP_ADDR: u32 = 50331648;
pub const ZEND_VM_EXT_OP: u32 = 67108864;
pub const ZEND_VM_EXT_TYPE: u32 = 117440512;
pub const ZEND_VM_EXT_EVAL: u32 = 134217728;
pub const ZEND_VM_EXT_TYPE_MASK: u32 = 150994944;
pub const ZEND_VM_EXT_SRC: u32 = 184549376;
pub const ZEND_VM_NO_CONST_CONST: u32 = 1073741824;
pub const ZEND_VM_COMMUTATIVE: u32 = 2147483648;
pub const ZEND_NOP: u32 = 0;
pub const ZEND_ADD: u32 = 1;
pub const ZEND_SUB: u32 = 2;
pub const ZEND_MUL: u32 = 3;
pub const ZEND_DIV: u32 = 4;
pub const ZEND_MOD: u32 = 5;
pub const ZEND_SL: u32 = 6;
pub const ZEND_SR: u32 = 7;
pub const ZEND_CONCAT: u32 = 8;
pub const ZEND_BW_OR: u32 = 9;
pub const ZEND_BW_AND: u32 = 10;
pub const ZEND_BW_XOR: u32 = 11;
pub const ZEND_POW: u32 = 12;
pub const ZEND_BW_NOT: u32 = 13;
pub const ZEND_BOOL_NOT: u32 = 14;
pub const ZEND_BOOL_XOR: u32 = 15;
pub const ZEND_IS_IDENTICAL: u32 = 16;
pub const ZEND_IS_NOT_IDENTICAL: u32 = 17;
pub const ZEND_IS_EQUAL: u32 = 18;
pub const ZEND_IS_NOT_EQUAL: u32 = 19;
pub const ZEND_IS_SMALLER: u32 = 20;
pub const ZEND_IS_SMALLER_OR_EQUAL: u32 = 21;
pub const ZEND_ASSIGN: u32 = 22;
pub const ZEND_ASSIGN_DIM: u32 = 23;
pub const ZEND_ASSIGN_OBJ: u32 = 24;
pub const ZEND_ASSIGN_STATIC_PROP: u32 = 25;
pub const ZEND_ASSIGN_OP: u32 = 26;
pub const ZEND_ASSIGN_DIM_OP: u32 = 27;
pub const ZEND_ASSIGN_OBJ_OP: u32 = 28;
pub const ZEND_ASSIGN_STATIC_PROP_OP: u32 = 29;
pub const ZEND_ASSIGN_REF: u32 = 30;
pub const ZEND_QM_ASSIGN: u32 = 31;
pub const ZEND_ASSIGN_OBJ_REF: u32 = 32;
pub const ZEND_ASSIGN_STATIC_PROP_REF: u32 = 33;
pub const ZEND_PRE_INC: u32 = 34;
pub const ZEND_PRE_DEC: u32 = 35;
pub const ZEND_POST_INC: u32 = 36;
pub const ZEND_POST_DEC: u32 = 37;
pub const ZEND_PRE_INC_STATIC_PROP: u32 = 38;
pub const ZEND_PRE_DEC_STATIC_PROP: u32 = 39;
pub const ZEND_POST_INC_STATIC_PROP: u32 = 40;
pub const ZEND_POST_DEC_STATIC_PROP: u32 = 41;
pub const ZEND_JMP: u32 = 42;
pub const ZEND_JMPZ: u32 = 43;
pub const ZEND_JMPNZ: u32 = 44;
pub const ZEND_JMPZNZ: u32 = 45;
pub const ZEND_JMPZ_EX: u32 = 46;
pub const ZEND_JMPNZ_EX: u32 = 47;
pub const ZEND_CASE: u32 = 48;
pub const ZEND_CHECK_VAR: u32 = 49;
pub const ZEND_SEND_VAR_NO_REF_EX: u32 = 50;
pub const ZEND_CAST: u32 = 51;
pub const ZEND_BOOL: u32 = 52;
pub const ZEND_FAST_CONCAT: u32 = 53;
pub const ZEND_ROPE_INIT: u32 = 54;
pub const ZEND_ROPE_ADD: u32 = 55;
pub const ZEND_ROPE_END: u32 = 56;
pub const ZEND_BEGIN_SILENCE: u32 = 57;
pub const ZEND_END_SILENCE: u32 = 58;
pub const ZEND_INIT_FCALL_BY_NAME: u32 = 59;
pub const ZEND_DO_FCALL: u32 = 60;
pub const ZEND_INIT_FCALL: u32 = 61;
pub const ZEND_RETURN: u32 = 62;
pub const ZEND_RECV: u32 = 63;
pub const ZEND_RECV_INIT: u32 = 64;
pub const ZEND_SEND_VAL: u32 = 65;
pub const ZEND_SEND_VAR_EX: u32 = 66;
pub const ZEND_SEND_REF: u32 = 67;
pub const ZEND_NEW: u32 = 68;
pub const ZEND_INIT_NS_FCALL_BY_NAME: u32 = 69;
pub const ZEND_FREE: u32 = 70;
pub const ZEND_INIT_ARRAY: u32 = 71;
pub const ZEND_ADD_ARRAY_ELEMENT: u32 = 72;
pub const ZEND_INCLUDE_OR_EVAL: u32 = 73;
pub const ZEND_UNSET_VAR: u32 = 74;
pub const ZEND_UNSET_DIM: u32 = 75;
pub const ZEND_UNSET_OBJ: u32 = 76;
pub const ZEND_FE_RESET_R: u32 = 77;
pub const ZEND_FE_FETCH_R: u32 = 78;
pub const ZEND_EXIT: u32 = 79;
pub const ZEND_FETCH_R: u32 = 80;
pub const ZEND_FETCH_DIM_R: u32 = 81;
pub const ZEND_FETCH_OBJ_R: u32 = 82;
pub const ZEND_FETCH_W: u32 = 83;
pub const ZEND_FETCH_DIM_W: u32 = 84;
pub const ZEND_FETCH_OBJ_W: u32 = 85;
pub const ZEND_FETCH_RW: u32 = 86;
pub const ZEND_FETCH_DIM_RW: u32 = 87;
pub const ZEND_FETCH_OBJ_RW: u32 = 88;
pub const ZEND_FETCH_IS: u32 = 89;
pub const ZEND_FETCH_DIM_IS: u32 = 90;
pub const ZEND_FETCH_OBJ_IS: u32 = 91;
pub const ZEND_FETCH_FUNC_ARG: u32 = 92;
pub const ZEND_FETCH_DIM_FUNC_ARG: u32 = 93;
pub const ZEND_FETCH_OBJ_FUNC_ARG: u32 = 94;
pub const ZEND_FETCH_UNSET: u32 = 95;
pub const ZEND_FETCH_DIM_UNSET: u32 = 96;
pub const ZEND_FETCH_OBJ_UNSET: u32 = 97;
pub const ZEND_FETCH_LIST_R: u32 = 98;
pub const ZEND_FETCH_CONSTANT: u32 = 99;
pub const ZEND_CHECK_FUNC_ARG: u32 = 100;
pub const ZEND_EXT_STMT: u32 = 101;
pub const ZEND_EXT_FCALL_BEGIN: u32 = 102;
pub const ZEND_EXT_FCALL_END: u32 = 103;
pub const ZEND_EXT_NOP: u32 = 104;
pub const ZEND_TICKS: u32 = 105;
pub const ZEND_SEND_VAR_NO_REF: u32 = 106;
pub const ZEND_CATCH: u32 = 107;
pub const ZEND_THROW: u32 = 108;
pub const ZEND_FETCH_CLASS: u32 = 109;
pub const ZEND_CLONE: u32 = 110;
pub const ZEND_RETURN_BY_REF: u32 = 111;
pub const ZEND_INIT_METHOD_CALL: u32 = 112;
pub const ZEND_INIT_STATIC_METHOD_CALL: u32 = 113;
pub const ZEND_ISSET_ISEMPTY_VAR: u32 = 114;
pub const ZEND_ISSET_ISEMPTY_DIM_OBJ: u32 = 115;
pub const ZEND_SEND_VAL_EX: u32 = 116;
pub const ZEND_SEND_VAR: u32 = 117;
pub const ZEND_INIT_USER_CALL: u32 = 118;
pub const ZEND_SEND_ARRAY: u32 = 119;
pub const ZEND_SEND_USER: u32 = 120;
pub const ZEND_STRLEN: u32 = 121;
pub const ZEND_DEFINED: u32 = 122;
pub const ZEND_TYPE_CHECK: u32 = 123;
pub const ZEND_VERIFY_RETURN_TYPE: u32 = 124;
pub const ZEND_FE_RESET_RW: u32 = 125;
pub const ZEND_FE_FETCH_RW: u32 = 126;
pub const ZEND_FE_FREE: u32 = 127;
pub const ZEND_INIT_DYNAMIC_CALL: u32 = 128;
pub const ZEND_DO_ICALL: u32 = 129;
pub const ZEND_DO_UCALL: u32 = 130;
pub const ZEND_DO_FCALL_BY_NAME: u32 = 131;
pub const ZEND_PRE_INC_OBJ: u32 = 132;
pub const ZEND_PRE_DEC_OBJ: u32 = 133;
pub const ZEND_POST_INC_OBJ: u32 = 134;
pub const ZEND_POST_DEC_OBJ: u32 = 135;
pub const ZEND_ECHO: u32 = 136;
pub const ZEND_OP_DATA: u32 = 137;
pub const ZEND_INSTANCEOF: u32 = 138;
pub const ZEND_GENERATOR_CREATE: u32 = 139;
pub const ZEND_MAKE_REF: u32 = 140;
pub const ZEND_DECLARE_FUNCTION: u32 = 141;
pub const ZEND_DECLARE_LAMBDA_FUNCTION: u32 = 142;
pub const ZEND_DECLARE_CONST: u32 = 143;
pub const ZEND_DECLARE_CLASS: u32 = 144;
pub const ZEND_DECLARE_CLASS_DELAYED: u32 = 145;
pub const ZEND_DECLARE_ANON_CLASS: u32 = 146;
pub const ZEND_ADD_ARRAY_UNPACK: u32 = 147;
pub const ZEND_ISSET_ISEMPTY_PROP_OBJ: u32 = 148;
pub const ZEND_HANDLE_EXCEPTION: u32 = 149;
pub const ZEND_USER_OPCODE: u32 = 150;
pub const ZEND_ASSERT_CHECK: u32 = 151;
pub const ZEND_JMP_SET: u32 = 152;
pub const ZEND_UNSET_CV: u32 = 153;
pub const ZEND_ISSET_ISEMPTY_CV: u32 = 154;
pub const ZEND_FETCH_LIST_W: u32 = 155;
pub const ZEND_SEPARATE: u32 = 156;
pub const ZEND_FETCH_CLASS_NAME: u32 = 157;
pub const ZEND_CALL_TRAMPOLINE: u32 = 158;
pub const ZEND_DISCARD_EXCEPTION: u32 = 159;
pub const ZEND_YIELD: u32 = 160;
pub const ZEND_GENERATOR_RETURN: u32 = 161;
pub const ZEND_FAST_CALL: u32 = 162;
pub const ZEND_FAST_RET: u32 = 163;
pub const ZEND_RECV_VARIADIC: u32 = 164;
pub const ZEND_SEND_UNPACK: u32 = 165;
pub const ZEND_YIELD_FROM: u32 = 166;
pub const ZEND_COPY_TMP: u32 = 167;
pub const ZEND_BIND_GLOBAL: u32 = 168;
pub const ZEND_COALESCE: u32 = 169;
pub const ZEND_SPACESHIP: u32 = 170;
pub const ZEND_FUNC_NUM_ARGS: u32 = 171;
pub const ZEND_FUNC_GET_ARGS: u32 = 172;
pub const ZEND_FETCH_STATIC_PROP_R: u32 = 173;
pub const ZEND_FETCH_STATIC_PROP_W: u32 = 174;
pub const ZEND_FETCH_STATIC_PROP_RW: u32 = 175;
pub const ZEND_FETCH_STATIC_PROP_IS: u32 = 176;
pub const ZEND_FETCH_STATIC_PROP_FUNC_ARG: u32 = 177;
pub const ZEND_FETCH_STATIC_PROP_UNSET: u32 = 178;
pub const ZEND_UNSET_STATIC_PROP: u32 = 179;
pub const ZEND_ISSET_ISEMPTY_STATIC_PROP: u32 = 180;
pub const ZEND_FETCH_CLASS_CONSTANT: u32 = 181;
pub const ZEND_BIND_LEXICAL: u32 = 182;
pub const ZEND_BIND_STATIC: u32 = 183;
pub const ZEND_FETCH_THIS: u32 = 184;
pub const ZEND_SEND_FUNC_ARG: u32 = 185;
pub const ZEND_ISSET_ISEMPTY_THIS: u32 = 186;
pub const ZEND_SWITCH_LONG: u32 = 187;
pub const ZEND_SWITCH_STRING: u32 = 188;
pub const ZEND_IN_ARRAY: u32 = 189;
pub const ZEND_COUNT: u32 = 190;
pub const ZEND_GET_CLASS: u32 = 191;
pub const ZEND_GET_CALLED_CLASS: u32 = 192;
pub const ZEND_GET_TYPE: u32 = 193;
pub const ZEND_ARRAY_KEY_EXISTS: u32 = 194;
pub const ZEND_MATCH: u32 = 195;
pub const ZEND_CASE_STRICT: u32 = 196;
pub const ZEND_MATCH_ERROR: u32 = 197;
pub const ZEND_JMP_NULL: u32 = 198;
pub const ZEND_CHECK_UNDEF_ARGS: u32 = 199;
pub const ZEND_FETCH_GLOBALS: u32 = 200;
pub const ZEND_VERIFY_NEVER_TYPE: u32 = 201;
pub const ZEND_CALLABLE_CONVERT: u32 = 202;
pub const ZEND_VM_LAST_OPCODE: u32 = 202;
pub const ZEND_FETCH_CLASS_DEFAULT: u32 = 0;
pub const ZEND_FETCH_CLASS_SELF: u32 = 1;
pub const ZEND_FETCH_CLASS_PARENT: u32 = 2;
pub const ZEND_FETCH_CLASS_STATIC: u32 = 3;
pub const ZEND_FETCH_CLASS_AUTO: u32 = 4;
pub const ZEND_FETCH_CLASS_INTERFACE: u32 = 5;
pub const ZEND_FETCH_CLASS_TRAIT: u32 = 6;
pub const ZEND_FETCH_CLASS_MASK: u32 = 15;
pub const ZEND_FETCH_CLASS_NO_AUTOLOAD: u32 = 128;
pub const ZEND_FETCH_CLASS_SILENT: u32 = 256;
pub const ZEND_FETCH_CLASS_EXCEPTION: u32 = 512;
pub const ZEND_FETCH_CLASS_ALLOW_UNLINKED: u32 = 1024;
pub const ZEND_FETCH_CLASS_ALLOW_NEARLY_LINKED: u32 = 2048;
pub const ZEND_PARAM_REF: u32 = 8;
pub const ZEND_PARAM_VARIADIC: u32 = 16;
pub const ZEND_NAME_FQ: u32 = 0;
pub const ZEND_NAME_NOT_FQ: u32 = 1;
pub const ZEND_NAME_RELATIVE: u32 = 2;
pub const ZEND_TYPE_NULLABLE: u32 = 256;
pub const ZEND_ARRAY_SYNTAX_LIST: u32 = 1;
pub const ZEND_ARRAY_SYNTAX_LONG: u32 = 2;
pub const ZEND_ARRAY_SYNTAX_SHORT: u32 = 3;
pub const BP_VAR_R: u32 = 0;
pub const BP_VAR_W: u32 = 1;
pub const BP_VAR_RW: u32 = 2;
pub const BP_VAR_IS: u32 = 3;
pub const BP_VAR_FUNC_ARG: u32 = 4;
pub const BP_VAR_UNSET: u32 = 5;
pub const ZEND_INTERNAL_FUNCTION: u32 = 1;
pub const ZEND_USER_FUNCTION: u32 = 2;
pub const ZEND_EVAL_CODE: u32 = 4;
pub const ZEND_INTERNAL_CLASS: u32 = 1;
pub const ZEND_USER_CLASS: u32 = 2;
pub const ZEND_EVAL: u32 = 1;
pub const ZEND_INCLUDE: u32 = 2;
pub const ZEND_INCLUDE_ONCE: u32 = 4;
pub const ZEND_REQUIRE: u32 = 8;
pub const ZEND_REQUIRE_ONCE: u32 = 16;
pub const ZEND_FETCH_GLOBAL: u32 = 2;
pub const ZEND_FETCH_LOCAL: u32 = 4;
pub const ZEND_FETCH_GLOBAL_LOCK: u32 = 8;
pub const ZEND_FETCH_TYPE_MASK: u32 = 14;
pub const ZEND_FETCH_REF: u32 = 1;
pub const ZEND_FETCH_DIM_WRITE: u32 = 2;
pub const ZEND_FETCH_OBJ_FLAGS: u32 = 3;
pub const ZEND_ISEMPTY: u32 = 1;
pub const ZEND_LAST_CATCH: u32 = 1;
pub const ZEND_FREE_ON_RETURN: u32 = 1;
pub const ZEND_FREE_SWITCH: u32 = 2;
pub const ZEND_SEND_BY_VAL: u32 = 0;
pub const ZEND_SEND_BY_REF: u32 = 1;
pub const ZEND_SEND_PREFER_REF: u32 = 2;
pub const ZEND_THROW_IS_EXPR: u32 = 1;
pub const ZEND_FCALL_MAY_HAVE_EXTRA_NAMED_PARAMS: u32 = 1;
pub const _ZEND_SEND_MODE_SHIFT: u32 = 25;
pub const _ZEND_IS_VARIADIC_BIT: u32 = 134217728;
pub const _ZEND_IS_PROMOTED_BIT: u32 = 268435456;
pub const _ZEND_IS_TENTATIVE_BIT: u32 = 536870912;
pub const ZEND_DIM_IS: u32 = 1;
pub const ZEND_DIM_ALTERNATIVE_SYNTAX: u32 = 2;
pub const IS_CONSTANT_CLASS: u32 = 1024;
pub const IS_CONSTANT_UNQUALIFIED_IN_NAMESPACE: u32 = 2048;
pub const MAX_ARG_FLAG_NUM: u32 = 12;
pub const ZEND_RETURN_VAL: u32 = 0;
pub const ZEND_RETURN_REF: u32 = 1;
pub const ZEND_BIND_VAL: u32 = 0;
pub const ZEND_BIND_REF: u32 = 1;
pub const ZEND_BIND_IMPLICIT: u32 = 2;
pub const ZEND_BIND_EXPLICIT: u32 = 4;
pub const ZEND_RETURNS_FUNCTION: u32 = 1;
pub const ZEND_RETURNS_VALUE: u32 = 2;
pub const ZEND_ARRAY_ELEMENT_REF: u32 = 1;
pub const ZEND_ARRAY_NOT_PACKED: u32 = 2;
pub const ZEND_ARRAY_SIZE_SHIFT: u32 = 2;
pub const ZEND_PARENTHESIZED_CONDITIONAL: u32 = 1;
pub const ZEND_SYMBOL_CLASS: u32 = 1;
pub const ZEND_SYMBOL_FUNCTION: u32 = 2;
pub const ZEND_SYMBOL_CONST: u32 = 4;
pub const ZEND_GOTO: u32 = 253;
pub const ZEND_BRK: u32 = 254;
pub const ZEND_CONT: u32 = 255;
pub const ZEND_CLONE_FUNC_NAME: &[u8; 8] = b"__clone\0";
pub const ZEND_CONSTRUCTOR_FUNC_NAME: &[u8; 12] = b"__construct\0";
pub const ZEND_DESTRUCTOR_FUNC_NAME: &[u8; 11] = b"__destruct\0";
pub const ZEND_GET_FUNC_NAME: &[u8; 6] = b"__get\0";
pub const ZEND_SET_FUNC_NAME: &[u8; 6] = b"__set\0";
pub const ZEND_UNSET_FUNC_NAME: &[u8; 8] = b"__unset\0";
pub const ZEND_ISSET_FUNC_NAME: &[u8; 8] = b"__isset\0";
pub const ZEND_CALL_FUNC_NAME: &[u8; 7] = b"__call\0";
pub const ZEND_CALLSTATIC_FUNC_NAME: &[u8; 13] = b"__callstatic\0";
pub const ZEND_TOSTRING_FUNC_NAME: &[u8; 11] = b"__tostring\0";
pub const ZEND_INVOKE_FUNC_NAME: &[u8; 9] = b"__invoke\0";
pub const ZEND_DEBUGINFO_FUNC_NAME: &[u8; 12] = b"__debuginfo\0";
pub const ZEND_COMPILE_EXTENDED_STMT: u32 = 1;
pub const ZEND_COMPILE_EXTENDED_FCALL: u32 = 2;
pub const ZEND_COMPILE_EXTENDED_INFO: u32 = 3;
pub const ZEND_COMPILE_HANDLE_OP_ARRAY: u32 = 4;
pub const ZEND_COMPILE_IGNORE_INTERNAL_FUNCTIONS: u32 = 8;
pub const ZEND_COMPILE_IGNORE_INTERNAL_CLASSES: u32 = 16;
pub const ZEND_COMPILE_DELAYED_BINDING: u32 = 32;
pub const ZEND_COMPILE_NO_CONSTANT_SUBSTITUTION: u32 = 64;
pub const ZEND_COMPILE_NO_PERSISTENT_CONSTANT_SUBSTITUTION: u32 = 256;
pub const ZEND_COMPILE_IGNORE_USER_FUNCTIONS: u32 = 512;
pub const ZEND_COMPILE_GUARDS: u32 = 1024;
pub const ZEND_COMPILE_NO_BUILTINS: u32 = 2048;
pub const ZEND_COMPILE_WITH_FILE_CACHE: u32 = 4096;
pub const ZEND_COMPILE_IGNORE_OTHER_FILES: u32 = 8192;
pub const ZEND_COMPILE_WITHOUT_EXECUTION: u32 = 16384;
pub const ZEND_COMPILE_PRELOAD: u32 = 32768;
pub const ZEND_COMPILE_NO_JUMPTABLES: u32 = 65536;
pub const ZEND_COMPILE_PRELOAD_IN_CHILD: u32 = 131072;
pub const ZEND_COMPILE_DEFAULT: u32 = 4;
pub const ZEND_COMPILE_DEFAULT_FOR_EVAL: u32 = 0;
pub const ZEND_BUILD_TS: &[u8; 5] = b",NTS\0";
pub const ZEND_MODULE_API_NO: u32 = 20210902;
pub const USING_ZTS: u32 = 0;
pub const MODULE_PERSISTENT: u32 = 1;
pub const MODULE_TEMPORARY: u32 = 2;
pub const MODULE_DEP_REQUIRED: u32 = 1;
pub const MODULE_DEP_CONFLICTS: u32 = 2;
pub const MODULE_DEP_OPTIONAL: u32 = 3;
pub const ZEND_USER_OPCODE_CONTINUE: u32 = 0;
pub const ZEND_USER_OPCODE_RETURN: u32 = 1;
pub const ZEND_USER_OPCODE_DISPATCH: u32 = 2;
pub const ZEND_USER_OPCODE_ENTER: u32 = 3;
pub const ZEND_USER_OPCODE_LEAVE: u32 = 4;
pub const ZEND_USER_OPCODE_DISPATCH_TO: u32 = 256;
pub const CACHE_SPECIAL: u32 = 1;
pub const MAY_BE_UNDEF: u32 = 1;
pub const MAY_BE_NULL: u32 = 2;
pub const MAY_BE_FALSE: u32 = 4;
pub const MAY_BE_TRUE: u32 = 8;
pub const MAY_BE_BOOL: u32 = 12;
pub const MAY_BE_LONG: u32 = 16;
pub const MAY_BE_DOUBLE: u32 = 32;
pub const MAY_BE_STRING: u32 = 64;
pub const MAY_BE_ARRAY: u32 = 128;
pub const MAY_BE_OBJECT: u32 = 256;
pub const MAY_BE_RESOURCE: u32 = 512;
pub const MAY_BE_ANY: u32 = 1022;
pub const MAY_BE_REF: u32 = 1024;
pub const MAY_BE_CALLABLE: u32 = 4096;
pub const MAY_BE_ITERABLE: u32 = 8192;
pub const MAY_BE_VOID: u32 = 16384;
pub const MAY_BE_NEVER: u32 = 131072;
pub const MAY_BE_STATIC: u32 = 32768;
pub const MAY_BE_ARRAY_SHIFT: u32 = 10;
pub const MAY_BE_ARRAY_OF_NULL: u32 = 2048;
pub const MAY_BE_ARRAY_OF_FALSE: u32 = 4096;
pub const MAY_BE_ARRAY_OF_TRUE: u32 = 8192;
pub const MAY_BE_ARRAY_OF_LONG: u32 = 16384;
pub const MAY_BE_ARRAY_OF_DOUBLE: u32 = 32768;
pub const MAY_BE_ARRAY_OF_STRING: u32 = 65536;
pub const MAY_BE_ARRAY_OF_ARRAY: u32 = 131072;
pub const MAY_BE_ARRAY_OF_OBJECT: u32 = 262144;
pub const MAY_BE_ARRAY_OF_RESOURCE: u32 = 524288;
pub const MAY_BE_ARRAY_OF_ANY: u32 = 1046528;
pub const MAY_BE_ARRAY_OF_REF: u32 = 1048576;
pub const MAY_BE_ARRAY_PACKED: u32 = 2097152;
pub const MAY_BE_ARRAY_NUMERIC_HASH: u32 = 4194304;
pub const MAY_BE_ARRAY_STRING_HASH: u32 = 8388608;
pub const MAY_BE_ARRAY_KEY_LONG: u32 = 6291456;
pub const MAY_BE_ARRAY_KEY_STRING: u32 = 8388608;
pub const MAY_BE_ARRAY_KEY_ANY: u32 = 14680064;
pub const MAY_BE_CLASS: u32 = 16777216;
pub const MAY_BE_INDIRECT: u32 = 33554432;
pub const MAY_BE_RC1: u32 = 1073741824;
pub const MAY_BE_RCN: u32 = 2147483648;
pub const MAY_BE_ANY_ARRAY: u32 = 16775296;
pub const ZEND_PARSE_PARAMS_THROW: u32 = 0;
pub const ZEND_PARSE_PARAMS_QUIET: u32 = 2;
pub const IS_CALLABLE_CHECK_SYNTAX_ONLY: u32 = 1;
pub const IS_CALLABLE_CHECK_SILENT: u32 = 8;
pub const FAST_ZPP: u32 = 1;
pub const ZPP_ERROR_OK: u32 = 0;
pub const ZPP_ERROR_FAILURE: u32 = 1;
pub const ZPP_ERROR_WRONG_CALLBACK: u32 = 2;
pub const ZPP_ERROR_WRONG_CLASS: u32 = 3;
pub const ZPP_ERROR_WRONG_CLASS_OR_NULL: u32 = 4;
pub const ZPP_ERROR_WRONG_CLASS_OR_STRING: u32 = 5;
pub const ZPP_ERROR_WRONG_CLASS_OR_STRING_OR_NULL: u32 = 6;
pub const ZPP_ERROR_WRONG_CLASS_OR_LONG: u32 = 7;
pub const ZPP_ERROR_WRONG_CLASS_OR_LONG_OR_NULL: u32 = 8;
pub const ZPP_ERROR_WRONG_ARG: u32 = 9;
pub const ZPP_ERROR_WRONG_COUNT: u32 = 10;
pub const ZPP_ERROR_UNEXPECTED_EXTRA_NAMED: u32 = 11;
pub const ZPP_ERROR_WRONG_CALLBACK_OR_NULL: u32 = 12;
pub const PHP_OS_FAMILY: &[u8; 6] = b"Linux\0";
pub const PHP_DEBUG: u32 = 0;
pub const PHP_DIR_SEPARATOR: u8 = 47u8;
pub const PHP_EOL: &[u8; 2] = b"\n\0";
pub const PHP_ODBC_CFLAGS: &[u8; 1] = b"\0";
pub const PHP_ODBC_LFLAGS: &[u8; 1] = b"\0";
pub const PHP_ODBC_LIBS: &[u8; 1] = b"\0";
pub const PHP_ODBC_TYPE: &[u8; 1] = b"\0";
pub const PHP_OCI8_DIR: &[u8; 1] = b"\0";
pub const PHP_OCI8_ORACLE_VERSION: &[u8; 1] = b"\0";
pub const PHP_PROG_SENDMAIL: &[u8; 19] = b"/usr/sbin/sendmail\0";
pub const PEAR_INSTALLDIR: &[u8; 15] = b"/usr/share/php\0";
pub const PHP_INCLUDE_PATH: &[u8; 17] = b".:/usr/share/php\0";
pub const PHP_EXTENSION_DIR: &[u8; 22] = b"/usr/lib/php/20210902\0";
pub const PHP_PREFIX: &[u8; 5] = b"/usr\0";
pub const PHP_BINDIR: &[u8; 9] = b"/usr/bin\0";
pub const PHP_SBINDIR: &[u8; 10] = b"/usr/sbin\0";
pub const PHP_MANDIR: &[u8; 15] = b"/usr/share/man\0";
pub const PHP_LIBDIR: &[u8; 13] = b"/usr/lib/php\0";
pub const PHP_DATADIR: &[u8; 19] = b"/usr/share/php/8.1\0";
pub const PHP_SYSCONFDIR: &[u8; 5] = b"/etc\0";
pub const PHP_LOCALSTATEDIR: &[u8; 5] = b"/var\0";
pub const PHP_CONFIG_FILE_PATH: &[u8; 17] = b"/etc/php/8.1/cli\0";
pub const PHP_CONFIG_FILE_SCAN_DIR: &[u8; 24] = b"/etc/php/8.1/cli/conf.d\0";
pub const PHP_SHLIB_SUFFIX: &[u8; 3] = b"so\0";
pub const PHP_SHLIB_EXT_PREFIX: &[u8; 1] = b"\0";
pub const HAVE_STRLCPY: u32 = 1;
pub const USE_STRLCPY_PHP_IMPL: u32 = 1;
pub const HAVE_STRLCAT: u32 = 1;
pub const USE_STRLCAT_PHP_IMPL: u32 = 1;
pub const EXEC_INPUT_BUF: u32 = 4096;
pub const PHP_MIME_TYPE: &[u8; 24] = b"application/x-httpd-php\0";
pub const PHP_SYSLOG_FILTER_ALL: u32 = 0;
pub const PHP_SYSLOG_FILTER_NO_CTRL: u32 = 1;
pub const PHP_SYSLOG_FILTER_ASCII: u32 = 2;
pub const PHP_SYSLOG_FILTER_RAW: u32 = 3;
pub const PHP_OUTPUT_NEWAPI: u32 = 1;
pub const PHP_OUTPUT_HANDLER_WRITE: u32 = 0;
pub const PHP_OUTPUT_HANDLER_START: u32 = 1;
pub const PHP_OUTPUT_HANDLER_CLEAN: u32 = 2;
pub const PHP_OUTPUT_HANDLER_FLUSH: u32 = 4;
pub const PHP_OUTPUT_HANDLER_FINAL: u32 = 8;
pub const PHP_OUTPUT_HANDLER_CONT: u32 = 0;
pub const PHP_OUTPUT_HANDLER_END: u32 = 8;
pub const PHP_OUTPUT_HANDLER_INTERNAL: u32 = 0;
pub const PHP_OUTPUT_HANDLER_USER: u32 = 1;
pub const PHP_OUTPUT_HANDLER_CLEANABLE: u32 = 16;
pub const PHP_OUTPUT_HANDLER_FLUSHABLE: u32 = 32;
pub const PHP_OUTPUT_HANDLER_REMOVABLE: u32 = 64;
pub const PHP_OUTPUT_HANDLER_STDFLAGS: u32 = 112;
pub const PHP_OUTPUT_HANDLER_STARTED: u32 = 4096;
pub const PHP_OUTPUT_HANDLER_DISABLED: u32 = 8192;
pub const PHP_OUTPUT_HANDLER_PROCESSED: u32 = 16384;
pub const PHP_OUTPUT_POP_TRY: u32 = 0;
pub const PHP_OUTPUT_POP_FORCE: u32 = 1;
pub const PHP_OUTPUT_POP_DISCARD: u32 = 16;
pub const PHP_OUTPUT_POP_SILENT: u32 = 256;
pub const PHP_OUTPUT_IMPLICITFLUSH: u32 = 1;
pub const PHP_OUTPUT_DISABLED: u32 = 2;
pub const PHP_OUTPUT_WRITTEN: u32 = 4;
pub const PHP_OUTPUT_SENT: u32 = 8;
pub const PHP_OUTPUT_ACTIVE: u32 = 16;
pub const PHP_OUTPUT_LOCKED: u32 = 32;
pub const PHP_OUTPUT_ACTIVATED: u32 = 1048576;
pub const PHP_OUTPUT_HANDLER_ALIGNTO_SIZE: u32 = 4096;
pub const PHP_OUTPUT_HANDLER_DEFAULT_SIZE: u32 = 16384;
pub const PHP_STREAM_NOTIFIER_PROGRESS: u32 = 1;
pub const PHP_STREAM_NOTIFY_RESOLVE: u32 = 1;
pub const PHP_STREAM_NOTIFY_CONNECT: u32 = 2;
pub const PHP_STREAM_NOTIFY_AUTH_REQUIRED: u32 = 3;
pub const PHP_STREAM_NOTIFY_MIME_TYPE_IS: u32 = 4;
pub const PHP_STREAM_NOTIFY_FILE_SIZE_IS: u32 = 5;
pub const PHP_STREAM_NOTIFY_REDIRECTED: u32 = 6;
pub const PHP_STREAM_NOTIFY_PROGRESS: u32 = 7;
pub const PHP_STREAM_NOTIFY_COMPLETED: u32 = 8;
pub const PHP_STREAM_NOTIFY_FAILURE: u32 = 9;
pub const PHP_STREAM_NOTIFY_AUTH_RESULT: u32 = 10;
pub const PHP_STREAM_NOTIFY_SEVERITY_INFO: u32 = 0;
pub const PHP_STREAM_NOTIFY_SEVERITY_WARN: u32 = 1;
pub const PHP_STREAM_NOTIFY_SEVERITY_ERR: u32 = 2;
pub const PHP_STREAM_FILTER_READ: u32 = 1;
pub const PHP_STREAM_FILTER_WRITE: u32 = 2;
pub const PHP_STREAM_FILTER_ALL: u32 = 3;
pub const PSFS_FLAG_NORMAL: u32 = 0;
pub const PSFS_FLAG_FLUSH_INC: u32 = 1;
pub const PSFS_FLAG_FLUSH_CLOSE: u32 = 2;
pub const PHP_STREAM_FLAG_NO_SEEK: u32 = 1;
pub const PHP_STREAM_FLAG_NO_BUFFER: u32 = 2;
pub const PHP_STREAM_FLAG_EOL_UNIX: u32 = 0;
pub const PHP_STREAM_FLAG_DETECT_EOL: u32 = 4;
pub const PHP_STREAM_FLAG_EOL_MAC: u32 = 8;
pub const PHP_STREAM_FLAG_AVOID_BLOCKING: u32 = 16;
pub const PHP_STREAM_FLAG_NO_CLOSE: u32 = 32;
pub const PHP_STREAM_FLAG_IS_DIR: u32 = 64;
pub const PHP_STREAM_FLAG_NO_FCLOSE: u32 = 128;
pub const PHP_STREAM_FLAG_SUPPRESS_ERRORS: u32 = 256;
pub const PHP_STREAM_FLAG_WAS_WRITTEN: u32 = 2147483648;
pub const PHP_STREAM_FCLOSE_NONE: u32 = 0;
pub const PHP_STREAM_FCLOSE_FDOPEN: u32 = 1;
pub const PHP_STREAM_FCLOSE_FOPENCOOKIE: u32 = 2;
pub const PHP_STREAM_PERSISTENT_SUCCESS: u32 = 0;
pub const PHP_STREAM_PERSISTENT_FAILURE: u32 = 1;
pub const PHP_STREAM_PERSISTENT_NOT_EXIST: u32 = 2;
pub const PHP_STREAM_FREE_CALL_DTOR: u32 = 1;
pub const PHP_STREAM_FREE_RELEASE_STREAM: u32 = 2;
pub const PHP_STREAM_FREE_PRESERVE_HANDLE: u32 = 4;
pub const PHP_STREAM_FREE_RSRC_DTOR: u32 = 8;
pub const PHP_STREAM_FREE_PERSISTENT: u32 = 16;
pub const PHP_STREAM_FREE_IGNORE_ENCLOSING: u32 = 32;
pub const PHP_STREAM_FREE_KEEP_RSRC: u32 = 64;
pub const PHP_STREAM_FREE_CLOSE: u32 = 3;
pub const PHP_STREAM_FREE_CLOSE_CASTED: u32 = 7;
pub const PHP_STREAM_FREE_CLOSE_PERSISTENT: u32 = 19;
pub const PHP_STREAM_MKDIR_RECURSIVE: u32 = 1;
pub const PHP_STREAM_URL_STAT_LINK: u32 = 1;
pub const PHP_STREAM_URL_STAT_QUIET: u32 = 2;
pub const PHP_STREAM_URL_STAT_IGNORE_OPEN_BASEDIR: u32 = 4;
pub const PHP_STREAM_OPTION_BLOCKING: u32 = 1;
pub const PHP_STREAM_OPTION_READ_BUFFER: u32 = 2;
pub const PHP_STREAM_OPTION_WRITE_BUFFER: u32 = 3;
pub const PHP_STREAM_BUFFER_NONE: u32 = 0;
pub const PHP_STREAM_BUFFER_LINE: u32 = 1;
pub const PHP_STREAM_BUFFER_FULL: u32 = 2;
pub const PHP_STREAM_OPTION_READ_TIMEOUT: u32 = 4;
pub const PHP_STREAM_OPTION_SET_CHUNK_SIZE: u32 = 5;
pub const PHP_STREAM_OPTION_LOCKING: u32 = 6;
pub const PHP_STREAM_LOCK_SUPPORTED: u32 = 1;
pub const PHP_STREAM_OPTION_XPORT_API: u32 = 7;
pub const PHP_STREAM_OPTION_CRYPTO_API: u32 = 8;
pub const PHP_STREAM_OPTION_MMAP_API: u32 = 9;
pub const PHP_STREAM_OPTION_TRUNCATE_API: u32 = 10;
pub const PHP_STREAM_TRUNCATE_SUPPORTED: u32 = 0;
pub const PHP_STREAM_TRUNCATE_SET_SIZE: u32 = 1;
pub const PHP_STREAM_OPTION_META_DATA_API: u32 = 11;
pub const PHP_STREAM_OPTION_CHECK_LIVENESS: u32 = 12;
pub const PHP_STREAM_OPTION_PIPE_BLOCKING: u32 = 13;
pub const PHP_STREAM_OPTION_SYNC_API: u32 = 14;
pub const PHP_STREAM_SYNC_SUPPORTED: u32 = 0;
pub const PHP_STREAM_SYNC_FSYNC: u32 = 1;
pub const PHP_STREAM_SYNC_FDSYNC: u32 = 2;
pub const PHP_STREAM_OPTION_RETURN_OK: u32 = 0;
pub const PHP_STREAM_OPTION_RETURN_ERR: i32 = -1;
pub const PHP_STREAM_OPTION_RETURN_NOTIMPL: i32 = -2;
pub const STREAM_XPORT_CLIENT: u32 = 0;
pub const STREAM_XPORT_SERVER: u32 = 1;
pub const STREAM_XPORT_CONNECT: u32 = 2;
pub const STREAM_XPORT_BIND: u32 = 4;
pub const STREAM_XPORT_LISTEN: u32 = 8;
pub const STREAM_XPORT_CONNECT_ASYNC: u32 = 16;
pub const PHP_STREAM_MMAP_ALL: u32 = 0;
pub const PHP_STREAM_MMAP_MAX: u32 = 536870912;
pub const PHP_STREAM_AS_STDIO: u32 = 0;
pub const PHP_STREAM_AS_FD: u32 = 1;
pub const PHP_STREAM_AS_SOCKETD: u32 = 2;
pub const PHP_STREAM_AS_FD_FOR_SELECT: u32 = 3;
pub const PHP_STREAM_CAST_TRY_HARD: u32 = 2147483648;
pub const PHP_STREAM_CAST_RELEASE: u32 = 1073741824;
pub const PHP_STREAM_CAST_INTERNAL: u32 = 536870912;
pub const PHP_STREAM_CAST_MASK: u32 = 3758096384;
pub const IGNORE_PATH: u32 = 0;
pub const USE_PATH: u32 = 1;
pub const IGNORE_URL: u32 = 2;
pub const REPORT_ERRORS: u32 = 8;
pub const STREAM_MUST_SEEK: u32 = 16;
pub const STREAM_WILL_CAST: u32 = 32;
pub const STREAM_LOCATE_WRAPPERS_ONLY: u32 = 64;
pub const STREAM_OPEN_FOR_INCLUDE: u32 = 128;
pub const STREAM_USE_URL: u32 = 256;
pub const STREAM_ONLY_GET_HEADERS: u32 = 512;
pub const STREAM_DISABLE_OPEN_BASEDIR: u32 = 1024;
pub const STREAM_OPEN_PERSISTENT: u32 = 2048;
pub const STREAM_USE_GLOB_DIR_OPEN: u32 = 4096;
pub const STREAM_DISABLE_URL_PROTECTION: u32 = 8192;
pub const STREAM_ASSUME_REALPATH: u32 = 16384;
pub const STREAM_USE_BLOCKING_PIPE: u32 = 32768;
pub const STREAM_OPEN_FOR_ZEND_STREAM: u32 = 65536;
pub const PHP_STREAM_UNCHANGED: u32 = 0;
pub const PHP_STREAM_RELEASED: u32 = 1;
pub const PHP_STREAM_FAILED: u32 = 2;
pub const PHP_STREAM_CRITICAL: u32 = 3;
pub const PHP_STREAM_NO_PREFERENCE: u32 = 0;
pub const PHP_STREAM_PREFER_STDIO: u32 = 1;
pub const PHP_STREAM_FORCE_CONVERSION: u32 = 2;
pub const PHP_STREAM_IS_URL: u32 = 1;
pub const PHP_STREAM_META_TOUCH: u32 = 1;
pub const PHP_STREAM_META_OWNER_NAME: u32 = 2;
pub const PHP_STREAM_META_OWNER: u32 = 3;
pub const PHP_STREAM_META_GROUP_NAME: u32 = 4;
pub const PHP_STREAM_META_GROUP: u32 = 5;
pub const PHP_STREAM_META_ACCESS: u32 = 6;
pub const PHP_STREAM_MAX_MEM: u32 = 2097152;
pub const TEMP_STREAM_DEFAULT: u32 = 0;
pub const TEMP_STREAM_READONLY: u32 = 1;
pub const TEMP_STREAM_TAKE_BUFFER: u32 = 2;
pub const TEMP_STREAM_APPEND: u32 = 4;
pub const PHP_DISPLAY_ERRORS_STDOUT: u32 = 1;
pub const PHP_DISPLAY_ERRORS_STDERR: u32 = 2;
pub const TRACK_VARS_POST: u32 = 0;
pub const TRACK_VARS_GET: u32 = 1;
pub const TRACK_VARS_COOKIE: u32 = 2;
pub const TRACK_VARS_SERVER: u32 = 3;
pub const TRACK_VARS_ENV: u32 = 4;
pub const TRACK_VARS_FILES: u32 = 5;
pub const TRACK_VARS_REQUEST: u32 = 6;
pub const ZEND_INI_USER: u32 = 1;
pub const ZEND_INI_PERDIR: u32 = 2;
pub const ZEND_INI_SYSTEM: u32 = 4;
pub const ZEND_INI_ALL: u32 = 7;
pub const ZEND_INI_DISPLAY_ORIG: u32 = 1;
pub const ZEND_INI_DISPLAY_ACTIVE: u32 = 2;
pub const ZEND_INI_STAGE_STARTUP: u32 = 1;
pub const ZEND_INI_STAGE_SHUTDOWN: u32 = 2;
pub const ZEND_INI_STAGE_ACTIVATE: u32 = 4;
pub const ZEND_INI_STAGE_DEACTIVATE: u32 = 8;
pub const ZEND_INI_STAGE_RUNTIME: u32 = 16;
pub const ZEND_INI_STAGE_HTACCESS: u32 = 32;
pub const ZEND_INI_STAGE_IN_REQUEST: u32 = 60;
pub const ZEND_INI_PARSER_ENTRY: u32 = 1;
pub const ZEND_INI_PARSER_SECTION: u32 = 2;
pub const ZEND_INI_PARSER_POP_ENTRY: u32 = 3;
pub const PHP_INI_USER: u32 = 1;
pub const PHP_INI_PERDIR: u32 = 2;
pub const PHP_INI_SYSTEM: u32 = 4;
pub const PHP_INI_ALL: u32 = 7;
pub const PHP_INI_DISPLAY_ORIG: u32 = 1;
pub const PHP_INI_DISPLAY_ACTIVE: u32 = 2;
pub const PHP_INI_STAGE_STARTUP: u32 = 1;
pub const PHP_INI_STAGE_SHUTDOWN: u32 = 2;
pub const PHP_INI_STAGE_ACTIVATE: u32 = 4;
pub const PHP_INI_STAGE_DEACTIVATE: u32 = 8;
pub const PHP_INI_STAGE_RUNTIME: u32 = 16;
pub const PHP_INI_STAGE_HTACCESS: u32 = 32;
pub const DEFAULT_SLASH: u8 = 47u8;
pub const DEFAULT_DIR_SEPARATOR: u8 = 58u8;
pub const CWD_EXPAND: u32 = 0;
pub const CWD_FILEPATH: u32 = 1;
pub const CWD_REALPATH: u32 = 2;
pub const REALPATH_CACHE_TTL: u32 = 120;
pub const REALPATH_CACHE_SIZE: u32 = 0;
pub const _S_IFDIR: u32 = 16384;
pub const _S_IFREG: u32 = 32768;
pub const S_IXROOT: u32 = 73;
pub const CONST_CS: u32 = 0;
pub const CONST_PERSISTENT: u32 = 1;
pub const CONST_NO_FILE_CACHE: u32 = 2;
pub const CONST_DEPRECATED: u32 = 4;
pub const PHP_USER_CONSTANT: u32 = 8388607;
pub const PHP_CONNECTION_NORMAL: u32 = 0;
pub const PHP_CONNECTION_ABORTED: u32 = 1;
pub const PHP_CONNECTION_TIMEOUT: u32 = 2;
pub const HAVE_LOCALTIME: u32 = 1;
pub const HAVE_GMTIME: u32 = 1;
pub const HAVE_ASCTIME: u32 = 1;
pub const HAVE_CTIME: u32 = 1;
pub const PHP_ENTRY_NAME_COLOR: &[u8; 5] = b"#ccf\0";
pub const PHP_CONTENTS_COLOR: &[u8; 5] = b"#ccc\0";
pub const PHP_HEADER_COLOR: &[u8; 5] = b"#99c\0";
pub const PHP_INFO_GENERAL: u32 = 1;
pub const PHP_INFO_CREDITS: u32 = 2;
pub const PHP_INFO_CONFIGURATION: u32 = 4;
pub const PHP_INFO_MODULES: u32 = 8;
pub const PHP_INFO_ENVIRONMENT: u32 = 16;
pub const PHP_INFO_VARIABLES: u32 = 32;
pub const PHP_INFO_LICENSE: u32 = 64;
pub const PHP_INFO_ALL: u32 = 4294967295;
pub const PHP_CREDITS_GROUP: u32 = 1;
pub const PHP_CREDITS_GENERAL: u32 = 2;
pub const PHP_CREDITS_SAPI: u32 = 4;
pub const PHP_CREDITS_MODULES: u32 = 8;
pub const PHP_CREDITS_DOCS: u32 = 16;
pub const PHP_CREDITS_FULLPAGE: u32 = 32;
pub const PHP_CREDITS_QA: u32 = 64;
pub const PHP_CREDITS_WEB: u32 = 128;
pub const PHP_CREDITS_PACKAGING: u32 = 256;
pub const PHP_CREDITS_ALL: u32 = 4294967295;
pub 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" ;
pub 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" ;
pub 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" ;
pub const SAPI_OPTION_NO_CHDIR: u32 = 1;
pub const SAPI_POST_BLOCK_SIZE: u32 = 16384;
pub const SAPI_HEADER_ADD: u32 = 1;
pub const SAPI_HEADER_SENT_SUCCESSFULLY: u32 = 1;
pub const SAPI_HEADER_DO_SEND: u32 = 2;
pub const SAPI_HEADER_SEND_FAILED: u32 = 3;
pub const SAPI_DEFAULT_MIMETYPE: &[u8; 10] = b"text/html\0";
pub const SAPI_DEFAULT_CHARSET: &[u8; 6] = b"UTF-8\0";
pub const SAPI_PHP_VERSION_HEADER: &[u8; 36] = b"X-Powered-By: PHP/8.1.2-1ubuntu2.14\0";
pub const ZEND_FIBER_GUARD_PAGES: u32 = 1;
pub type __uint32_t = ::std::os::raw::c_uint;
pub type __dev_t = ::std::os::raw::c_ulong;
pub type __uid_t = ::std::os::raw::c_uint;
pub type __gid_t = ::std::os::raw::c_uint;
pub type __ino_t = ::std::os::raw::c_ulong;
pub type __mode_t = ::std::os::raw::c_uint;
pub type __nlink_t = ::std::os::raw::c_ulong;
pub type __off_t = ::std::os::raw::c_long;
pub type __off64_t = ::std::os::raw::c_long;
pub type __pid_t = ::std::os::raw::c_int;
pub type __clock_t = ::std::os::raw::c_long;
pub type __time_t = ::std::os::raw::c_long;
pub type __suseconds_t = ::std::os::raw::c_long;
pub type __blksize_t = ::std::os::raw::c_long;
pub type __blkcnt_t = ::std::os::raw::c_long;
pub type __syscall_slong_t = ::std::os::raw::c_long;
pub type __socklen_t = ::std::os::raw::c_uint;
pub type gid_t = __gid_t;
pub type mode_t = __mode_t;
pub type uid_t = __uid_t;
pub type time_t = __time_t;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct __sigset_t {
pub __val: [::std::os::raw::c_ulong; 16usize],
}
#[test]
fn bindgen_test_layout___sigset_t() {
const UNINIT: ::std::mem::MaybeUninit<__sigset_t> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<__sigset_t>(),
128usize,
concat!("Size of: ", stringify!(__sigset_t))
);
assert_eq!(
::std::mem::align_of::<__sigset_t>(),
8usize,
concat!("Alignment of ", stringify!(__sigset_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__val) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__sigset_t),
"::",
stringify!(__val)
)
);
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct timeval {
pub tv_sec: __time_t,
pub tv_usec: __suseconds_t,
}
#[test]
fn bindgen_test_layout_timeval() {
const UNINIT: ::std::mem::MaybeUninit<timeval> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<timeval>(),
16usize,
concat!("Size of: ", stringify!(timeval))
);
assert_eq!(
::std::mem::align_of::<timeval>(),
8usize,
concat!("Alignment of ", stringify!(timeval))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).tv_sec) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(timeval),
"::",
stringify!(tv_sec)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).tv_usec) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(timeval),
"::",
stringify!(tv_usec)
)
);
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct timespec {
pub tv_sec: __time_t,
pub tv_nsec: __syscall_slong_t,
}
#[test]
fn bindgen_test_layout_timespec() {
const UNINIT: ::std::mem::MaybeUninit<timespec> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<timespec>(),
16usize,
concat!("Size of: ", stringify!(timespec))
);
assert_eq!(
::std::mem::align_of::<timespec>(),
8usize,
concat!("Alignment of ", stringify!(timespec))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).tv_sec) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(timespec),
"::",
stringify!(tv_sec)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).tv_nsec) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(timespec),
"::",
stringify!(tv_nsec)
)
);
}
pub type tsrm_intptr_t = isize;
pub type tsrm_uintptr_t = usize;
pub type va_list = __builtin_va_list;
pub type FILE = _IO_FILE;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_marker {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_codecvt {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_wide_data {
_unused: [u8; 0],
}
pub type _IO_lock_t = ::std::os::raw::c_void;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_FILE {
pub _flags: ::std::os::raw::c_int,
pub _IO_read_ptr: *mut ::std::os::raw::c_char,
pub _IO_read_end: *mut ::std::os::raw::c_char,
pub _IO_read_base: *mut ::std::os::raw::c_char,
pub _IO_write_base: *mut ::std::os::raw::c_char,
pub _IO_write_ptr: *mut ::std::os::raw::c_char,
pub _IO_write_end: *mut ::std::os::raw::c_char,
pub _IO_buf_base: *mut ::std::os::raw::c_char,
pub _IO_buf_end: *mut ::std::os::raw::c_char,
pub _IO_save_base: *mut ::std::os::raw::c_char,
pub _IO_backup_base: *mut ::std::os::raw::c_char,
pub _IO_save_end: *mut ::std::os::raw::c_char,
pub _markers: *mut _IO_marker,
pub _chain: *mut _IO_FILE,
pub _fileno: ::std::os::raw::c_int,
pub _flags2: ::std::os::raw::c_int,
pub _old_offset: __off_t,
pub _cur_column: ::std::os::raw::c_ushort,
pub _vtable_offset: ::std::os::raw::c_schar,
pub _shortbuf: [::std::os::raw::c_char; 1usize],
pub _lock: *mut _IO_lock_t,
pub _offset: __off64_t,
pub _codecvt: *mut _IO_codecvt,
pub _wide_data: *mut _IO_wide_data,
pub _freeres_list: *mut _IO_FILE,
pub _freeres_buf: *mut ::std::os::raw::c_void,
pub __pad5: usize,
pub _mode: ::std::os::raw::c_int,
pub _unused2: [::std::os::raw::c_char; 20usize],
}
#[test]
fn bindgen_test_layout__IO_FILE() {
const UNINIT: ::std::mem::MaybeUninit<_IO_FILE> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_IO_FILE>(),
216usize,
concat!("Size of: ", stringify!(_IO_FILE))
);
assert_eq!(
::std::mem::align_of::<_IO_FILE>(),
8usize,
concat!("Alignment of ", stringify!(_IO_FILE))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._flags) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._IO_read_ptr) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_read_ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._IO_read_end) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_read_end)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._IO_read_base) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_read_base)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._IO_write_base) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_write_base)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._IO_write_ptr) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_write_ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._IO_write_end) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_write_end)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._IO_buf_base) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_buf_base)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._IO_buf_end) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_buf_end)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._IO_save_base) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_save_base)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._IO_backup_base) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_backup_base)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._IO_save_end) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_save_end)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._markers) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_markers)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._chain) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_chain)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._fileno) as usize - ptr as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_fileno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._flags2) as usize - ptr as usize },
116usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_flags2)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._old_offset) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_old_offset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._cur_column) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_cur_column)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._vtable_offset) as usize - ptr as usize },
130usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_vtable_offset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._shortbuf) as usize - ptr as usize },
131usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_shortbuf)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._lock) as usize - ptr as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_lock)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._offset) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_offset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._codecvt) as usize - ptr as usize },
152usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_codecvt)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._wide_data) as usize - ptr as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_wide_data)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._freeres_list) as usize - ptr as usize },
168usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_freeres_list)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._freeres_buf) as usize - ptr as usize },
176usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_freeres_buf)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__pad5) as usize - ptr as usize },
184usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(__pad5)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._mode) as usize - ptr as usize },
192usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_mode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._unused2) as usize - ptr as usize },
196usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_unused2)
)
);
}
impl Default for _IO_FILE {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_long = i64;
pub type zend_ulong = u64;
pub type zend_off_t = i64;
extern "C" {
pub static long_min_digits: [::std::os::raw::c_char; 20usize];
}
pub type zend_bool = bool;
pub type zend_uchar = ::std::os::raw::c_uchar;
pub const ZEND_RESULT_CODE_SUCCESS: ZEND_RESULT_CODE = 0;
pub const ZEND_RESULT_CODE_FAILURE: ZEND_RESULT_CODE = -1;
pub type ZEND_RESULT_CODE = ::std::os::raw::c_int;
pub use self::ZEND_RESULT_CODE as zend_result;
pub type zend_intptr_t = isize;
pub type zend_uintptr_t = usize;
pub type zend_object_handlers = _zend_object_handlers;
pub type zend_class_entry = _zend_class_entry;
pub type zend_function = _zend_function;
pub type zend_execute_data = _zend_execute_data;
pub type zval = _zval_struct;
pub type zend_refcounted = _zend_refcounted;
pub type zend_string = _zend_string;
pub type zend_array = _zend_array;
pub type zend_object = _zend_object;
pub type zend_resource = _zend_resource;
pub type zend_reference = _zend_reference;
pub type zend_ast_ref = _zend_ast_ref;
pub type zend_ast = _zend_ast;
pub type compare_func_t = ::std::option::Option<
unsafe extern "C" fn(
arg1: *const ::std::os::raw::c_void,
arg2: *const ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
pub type swap_func_t = ::std::option::Option<
unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void, arg2: *mut ::std::os::raw::c_void),
>;
pub type sort_func_t = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_void,
arg2: usize,
arg3: usize,
arg4: compare_func_t,
arg5: swap_func_t,
),
>;
pub type dtor_func_t = ::std::option::Option<unsafe extern "C" fn(pDest: *mut zval)>;
pub type copy_ctor_func_t = ::std::option::Option<unsafe extern "C" fn(pElement: *mut zval)>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct zend_type {
pub ptr: *mut ::std::os::raw::c_void,
pub type_mask: u32,
}
#[test]
fn bindgen_test_layout_zend_type() {
const UNINIT: ::std::mem::MaybeUninit<zend_type> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<zend_type>(),
16usize,
concat!("Size of: ", stringify!(zend_type))
);
assert_eq!(
::std::mem::align_of::<zend_type>(),
8usize,
concat!("Alignment of ", stringify!(zend_type))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(zend_type),
"::",
stringify!(ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_mask) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(zend_type),
"::",
stringify!(type_mask)
)
);
}
impl Default for zend_type {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct zend_type_list {
pub num_types: u32,
pub types: [zend_type; 1usize],
}
#[test]
fn bindgen_test_layout_zend_type_list() {
const UNINIT: ::std::mem::MaybeUninit<zend_type_list> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<zend_type_list>(),
24usize,
concat!("Size of: ", stringify!(zend_type_list))
);
assert_eq!(
::std::mem::align_of::<zend_type_list>(),
8usize,
concat!("Alignment of ", stringify!(zend_type_list))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_types) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(zend_type_list),
"::",
stringify!(num_types)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(zend_type_list),
"::",
stringify!(types)
)
);
}
impl Default for zend_type_list {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_value {
pub lval: zend_long,
pub dval: f64,
pub counted: *mut zend_refcounted,
pub str_: *mut zend_string,
pub arr: *mut zend_array,
pub obj: *mut zend_object,
pub res: *mut zend_resource,
pub ref_: *mut zend_reference,
pub ast: *mut zend_ast_ref,
pub zv: *mut zval,
pub ptr: *mut ::std::os::raw::c_void,
pub ce: *mut zend_class_entry,
pub func: *mut zend_function,
pub ww: _zend_value__bindgen_ty_1,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_value__bindgen_ty_1 {
pub w1: u32,
pub w2: u32,
}
#[test]
fn bindgen_test_layout__zend_value__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_zend_value__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_value__bindgen_ty_1>(),
8usize,
concat!("Size of: ", stringify!(_zend_value__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<_zend_value__bindgen_ty_1>(),
4usize,
concat!("Alignment of ", stringify!(_zend_value__bindgen_ty_1))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).w1) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value__bindgen_ty_1),
"::",
stringify!(w1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).w2) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_value__bindgen_ty_1),
"::",
stringify!(w2)
)
);
}
#[test]
fn bindgen_test_layout__zend_value() {
const UNINIT: ::std::mem::MaybeUninit<_zend_value> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_value>(),
8usize,
concat!("Size of: ", stringify!(_zend_value))
);
assert_eq!(
::std::mem::align_of::<_zend_value>(),
8usize,
concat!("Alignment of ", stringify!(_zend_value))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lval) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(lval)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dval) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(dval)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).counted) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(counted)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(str_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).arr) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(arr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).obj) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(obj)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(res)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ref_) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(ref_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ast) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(ast)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zv) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(zv)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ce) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(ce)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).func) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(func)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ww) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_value),
"::",
stringify!(ww)
)
);
}
impl Default for _zend_value {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_value = _zend_value;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zval_struct {
pub value: zend_value,
pub u1: _zval_struct__bindgen_ty_1,
pub u2: _zval_struct__bindgen_ty_2,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zval_struct__bindgen_ty_1 {
pub type_info: u32,
pub v: _zval_struct__bindgen_ty_1__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zval_struct__bindgen_ty_1__bindgen_ty_1 {
pub type_: zend_uchar,
pub type_flags: zend_uchar,
pub u: _zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {
pub extra: u16,
}
#[test]
fn bindgen_test_layout__zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1>(),
2usize,
concat!(
"Size of: ",
stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1)
)
);
assert_eq!(
::std::mem::align_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1>(),
2usize,
concat!(
"Alignment of ",
stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).extra) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(extra)
)
);
}
impl Default for _zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout__zval_struct__bindgen_ty_1__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_zval_struct__bindgen_ty_1__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1>(),
4usize,
concat!(
"Size of: ",
stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1)
)
);
assert_eq!(
::std::mem::align_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1>(),
2usize,
concat!(
"Alignment of ",
stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_flags) as usize - ptr as usize },
1usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(type_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize },
2usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(u)
)
);
}
impl Default for _zval_struct__bindgen_ty_1__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout__zval_struct__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_zval_struct__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zval_struct__bindgen_ty_1>(),
4usize,
concat!("Size of: ", stringify!(_zval_struct__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<_zval_struct__bindgen_ty_1>(),
4usize,
concat!("Alignment of ", stringify!(_zval_struct__bindgen_ty_1))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_info) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_1),
"::",
stringify!(type_info)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).v) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_1),
"::",
stringify!(v)
)
);
}
impl Default for _zval_struct__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zval_struct__bindgen_ty_2 {
pub next: u32,
pub cache_slot: u32,
pub opline_num: u32,
pub lineno: u32,
pub num_args: u32,
pub fe_pos: u32,
pub fe_iter_idx: u32,
pub property_guard: u32,
pub constant_flags: u32,
pub extra: u32,
}
#[test]
fn bindgen_test_layout__zval_struct__bindgen_ty_2() {
const UNINIT: ::std::mem::MaybeUninit<_zval_struct__bindgen_ty_2> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zval_struct__bindgen_ty_2>(),
4usize,
concat!("Size of: ", stringify!(_zval_struct__bindgen_ty_2))
);
assert_eq!(
::std::mem::align_of::<_zval_struct__bindgen_ty_2>(),
4usize,
concat!("Alignment of ", stringify!(_zval_struct__bindgen_ty_2))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_2),
"::",
stringify!(next)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).cache_slot) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_2),
"::",
stringify!(cache_slot)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).opline_num) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_2),
"::",
stringify!(opline_num)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lineno) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_2),
"::",
stringify!(lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_args) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_2),
"::",
stringify!(num_args)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fe_pos) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_2),
"::",
stringify!(fe_pos)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fe_iter_idx) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_2),
"::",
stringify!(fe_iter_idx)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).property_guard) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_2),
"::",
stringify!(property_guard)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).constant_flags) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_2),
"::",
stringify!(constant_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).extra) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct__bindgen_ty_2),
"::",
stringify!(extra)
)
);
}
impl Default for _zval_struct__bindgen_ty_2 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout__zval_struct() {
const UNINIT: ::std::mem::MaybeUninit<_zval_struct> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zval_struct>(),
16usize,
concat!("Size of: ", stringify!(_zval_struct))
);
assert_eq!(
::std::mem::align_of::<_zval_struct>(),
8usize,
concat!("Alignment of ", stringify!(_zval_struct))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct),
"::",
stringify!(value)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).u1) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct),
"::",
stringify!(u1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).u2) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_zval_struct),
"::",
stringify!(u2)
)
);
}
impl Default for _zval_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_refcounted_h {
pub refcount: u32,
pub u: _zend_refcounted_h__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_refcounted_h__bindgen_ty_1 {
pub type_info: u32,
}
#[test]
fn bindgen_test_layout__zend_refcounted_h__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_zend_refcounted_h__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_refcounted_h__bindgen_ty_1>(),
4usize,
concat!("Size of: ", stringify!(_zend_refcounted_h__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<_zend_refcounted_h__bindgen_ty_1>(),
4usize,
concat!(
"Alignment of ",
stringify!(_zend_refcounted_h__bindgen_ty_1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_info) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_refcounted_h__bindgen_ty_1),
"::",
stringify!(type_info)
)
);
}
impl Default for _zend_refcounted_h__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout__zend_refcounted_h() {
const UNINIT: ::std::mem::MaybeUninit<_zend_refcounted_h> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_refcounted_h>(),
8usize,
concat!("Size of: ", stringify!(_zend_refcounted_h))
);
assert_eq!(
::std::mem::align_of::<_zend_refcounted_h>(),
4usize,
concat!("Alignment of ", stringify!(_zend_refcounted_h))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).refcount) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_refcounted_h),
"::",
stringify!(refcount)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_refcounted_h),
"::",
stringify!(u)
)
);
}
impl Default for _zend_refcounted_h {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_refcounted_h = _zend_refcounted_h;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_refcounted {
pub gc: zend_refcounted_h,
}
#[test]
fn bindgen_test_layout__zend_refcounted() {
const UNINIT: ::std::mem::MaybeUninit<_zend_refcounted> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_refcounted>(),
8usize,
concat!("Size of: ", stringify!(_zend_refcounted))
);
assert_eq!(
::std::mem::align_of::<_zend_refcounted>(),
4usize,
concat!("Alignment of ", stringify!(_zend_refcounted))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).gc) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_refcounted),
"::",
stringify!(gc)
)
);
}
impl Default for _zend_refcounted {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_string {
pub gc: zend_refcounted_h,
pub h: zend_ulong,
pub len: usize,
pub val: [::std::os::raw::c_char; 1usize],
}
#[test]
fn bindgen_test_layout__zend_string() {
const UNINIT: ::std::mem::MaybeUninit<_zend_string> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_string>(),
32usize,
concat!("Size of: ", stringify!(_zend_string))
);
assert_eq!(
::std::mem::align_of::<_zend_string>(),
8usize,
concat!("Alignment of ", stringify!(_zend_string))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).gc) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_string),
"::",
stringify!(gc)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).h) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_string),
"::",
stringify!(h)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_string),
"::",
stringify!(len)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).val) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_string),
"::",
stringify!(val)
)
);
}
impl Default for _zend_string {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _Bucket {
pub val: zval,
pub h: zend_ulong,
pub key: *mut zend_string,
}
#[test]
fn bindgen_test_layout__Bucket() {
const UNINIT: ::std::mem::MaybeUninit<_Bucket> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_Bucket>(),
32usize,
concat!("Size of: ", stringify!(_Bucket))
);
assert_eq!(
::std::mem::align_of::<_Bucket>(),
8usize,
concat!("Alignment of ", stringify!(_Bucket))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).val) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_Bucket),
"::",
stringify!(val)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).h) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_Bucket),
"::",
stringify!(h)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_Bucket),
"::",
stringify!(key)
)
);
}
impl Default for _Bucket {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type Bucket = _Bucket;
pub type HashTable = _zend_array;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_array {
pub gc: zend_refcounted_h,
pub u: _zend_array__bindgen_ty_1,
pub nTableMask: u32,
pub arData: *mut Bucket,
pub nNumUsed: u32,
pub nNumOfElements: u32,
pub nTableSize: u32,
pub nInternalPointer: u32,
pub nNextFreeElement: zend_long,
pub pDestructor: dtor_func_t,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_array__bindgen_ty_1 {
pub v: _zend_array__bindgen_ty_1__bindgen_ty_1,
pub flags: u32,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_array__bindgen_ty_1__bindgen_ty_1 {
pub flags: zend_uchar,
pub _unused: zend_uchar,
pub nIteratorsCount: zend_uchar,
pub _unused2: zend_uchar,
}
#[test]
fn bindgen_test_layout__zend_array__bindgen_ty_1__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_zend_array__bindgen_ty_1__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_array__bindgen_ty_1__bindgen_ty_1>(),
4usize,
concat!(
"Size of: ",
stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1)
)
);
assert_eq!(
::std::mem::align_of::<_zend_array__bindgen_ty_1__bindgen_ty_1>(),
1usize,
concat!(
"Alignment of ",
stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._unused) as usize - ptr as usize },
1usize,
concat!(
"Offset of field: ",
stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(_unused)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nIteratorsCount) as usize - ptr as usize },
2usize,
concat!(
"Offset of field: ",
stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(nIteratorsCount)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._unused2) as usize - ptr as usize },
3usize,
concat!(
"Offset of field: ",
stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(_unused2)
)
);
}
#[test]
fn bindgen_test_layout__zend_array__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_zend_array__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_array__bindgen_ty_1>(),
4usize,
concat!("Size of: ", stringify!(_zend_array__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<_zend_array__bindgen_ty_1>(),
4usize,
concat!("Alignment of ", stringify!(_zend_array__bindgen_ty_1))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).v) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_array__bindgen_ty_1),
"::",
stringify!(v)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_array__bindgen_ty_1),
"::",
stringify!(flags)
)
);
}
impl Default for _zend_array__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout__zend_array() {
const UNINIT: ::std::mem::MaybeUninit<_zend_array> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_array>(),
56usize,
concat!("Size of: ", stringify!(_zend_array))
);
assert_eq!(
::std::mem::align_of::<_zend_array>(),
8usize,
concat!("Alignment of ", stringify!(_zend_array))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).gc) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_array),
"::",
stringify!(gc)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_array),
"::",
stringify!(u)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nTableMask) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_zend_array),
"::",
stringify!(nTableMask)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).arData) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_array),
"::",
stringify!(arData)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nNumUsed) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_array),
"::",
stringify!(nNumUsed)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nNumOfElements) as usize - ptr as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(_zend_array),
"::",
stringify!(nNumOfElements)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nTableSize) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_array),
"::",
stringify!(nTableSize)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nInternalPointer) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(_zend_array),
"::",
stringify!(nInternalPointer)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nNextFreeElement) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_array),
"::",
stringify!(nNextFreeElement)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).pDestructor) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_array),
"::",
stringify!(pDestructor)
)
);
}
impl Default for _zend_array {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type HashPosition = u32;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _HashTableIterator {
pub ht: *mut HashTable,
pub pos: HashPosition,
}
#[test]
fn bindgen_test_layout__HashTableIterator() {
const UNINIT: ::std::mem::MaybeUninit<_HashTableIterator> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_HashTableIterator>(),
16usize,
concat!("Size of: ", stringify!(_HashTableIterator))
);
assert_eq!(
::std::mem::align_of::<_HashTableIterator>(),
8usize,
concat!("Alignment of ", stringify!(_HashTableIterator))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ht) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_HashTableIterator),
"::",
stringify!(ht)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).pos) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_HashTableIterator),
"::",
stringify!(pos)
)
);
}
impl Default for _HashTableIterator {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type HashTableIterator = _HashTableIterator;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_object {
pub gc: zend_refcounted_h,
pub handle: u32,
pub ce: *mut zend_class_entry,
pub handlers: *const zend_object_handlers,
pub properties: *mut HashTable,
pub properties_table: [zval; 1usize],
}
#[test]
fn bindgen_test_layout__zend_object() {
const UNINIT: ::std::mem::MaybeUninit<_zend_object> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_object>(),
56usize,
concat!("Size of: ", stringify!(_zend_object))
);
assert_eq!(
::std::mem::align_of::<_zend_object>(),
8usize,
concat!("Alignment of ", stringify!(_zend_object))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).gc) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_object),
"::",
stringify!(gc)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handle) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_object),
"::",
stringify!(handle)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ce) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_object),
"::",
stringify!(ce)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handlers) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_object),
"::",
stringify!(handlers)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).properties) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_object),
"::",
stringify!(properties)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).properties_table) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_object),
"::",
stringify!(properties_table)
)
);
}
impl Default for _zend_object {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_resource {
pub gc: zend_refcounted_h,
pub handle: zend_long,
pub type_: ::std::os::raw::c_int,
pub ptr: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout__zend_resource() {
const UNINIT: ::std::mem::MaybeUninit<_zend_resource> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_resource>(),
32usize,
concat!("Size of: ", stringify!(_zend_resource))
);
assert_eq!(
::std::mem::align_of::<_zend_resource>(),
8usize,
concat!("Alignment of ", stringify!(_zend_resource))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).gc) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_resource),
"::",
stringify!(gc)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handle) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_resource),
"::",
stringify!(handle)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_resource),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_resource),
"::",
stringify!(ptr)
)
);
}
impl Default for _zend_resource {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct zend_property_info_list {
pub num: usize,
pub num_allocated: usize,
pub ptr: [*mut _zend_property_info; 1usize],
}
#[test]
fn bindgen_test_layout_zend_property_info_list() {
const UNINIT: ::std::mem::MaybeUninit<zend_property_info_list> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<zend_property_info_list>(),
24usize,
concat!("Size of: ", stringify!(zend_property_info_list))
);
assert_eq!(
::std::mem::align_of::<zend_property_info_list>(),
8usize,
concat!("Alignment of ", stringify!(zend_property_info_list))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(zend_property_info_list),
"::",
stringify!(num)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_allocated) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(zend_property_info_list),
"::",
stringify!(num_allocated)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(zend_property_info_list),
"::",
stringify!(ptr)
)
);
}
impl Default for zend_property_info_list {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union zend_property_info_source_list {
pub ptr: *mut _zend_property_info,
pub list: usize,
}
#[test]
fn bindgen_test_layout_zend_property_info_source_list() {
const UNINIT: ::std::mem::MaybeUninit<zend_property_info_source_list> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<zend_property_info_source_list>(),
8usize,
concat!("Size of: ", stringify!(zend_property_info_source_list))
);
assert_eq!(
::std::mem::align_of::<zend_property_info_source_list>(),
8usize,
concat!("Alignment of ", stringify!(zend_property_info_source_list))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(zend_property_info_source_list),
"::",
stringify!(ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).list) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(zend_property_info_source_list),
"::",
stringify!(list)
)
);
}
impl Default for zend_property_info_source_list {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_reference {
pub gc: zend_refcounted_h,
pub val: zval,
pub sources: zend_property_info_source_list,
}
#[test]
fn bindgen_test_layout__zend_reference() {
const UNINIT: ::std::mem::MaybeUninit<_zend_reference> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_reference>(),
32usize,
concat!("Size of: ", stringify!(_zend_reference))
);
assert_eq!(
::std::mem::align_of::<_zend_reference>(),
8usize,
concat!("Alignment of ", stringify!(_zend_reference))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).gc) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_reference),
"::",
stringify!(gc)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).val) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_reference),
"::",
stringify!(val)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sources) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_reference),
"::",
stringify!(sources)
)
);
}
impl Default for _zend_reference {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_ast_ref {
pub gc: zend_refcounted_h,
}
#[test]
fn bindgen_test_layout__zend_ast_ref() {
const UNINIT: ::std::mem::MaybeUninit<_zend_ast_ref> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_ast_ref>(),
8usize,
concat!("Size of: ", stringify!(_zend_ast_ref))
);
assert_eq!(
::std::mem::align_of::<_zend_ast_ref>(),
4usize,
concat!("Alignment of ", stringify!(_zend_ast_ref))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).gc) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_ref),
"::",
stringify!(gc)
)
);
}
impl Default for _zend_ast_ref {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub fn zend_map_ptr_reset();
}
extern "C" {
pub fn zend_map_ptr_new() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_map_ptr_extend(last: usize);
}
extern "C" {
pub fn zend_alloc_ce_cache(type_name: *mut zend_string);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_leak_info {
pub addr: *mut ::std::os::raw::c_void,
pub size: usize,
pub filename: *const ::std::os::raw::c_char,
pub orig_filename: *const ::std::os::raw::c_char,
pub lineno: u32,
pub orig_lineno: u32,
}
#[test]
fn bindgen_test_layout__zend_leak_info() {
const UNINIT: ::std::mem::MaybeUninit<_zend_leak_info> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_leak_info>(),
40usize,
concat!("Size of: ", stringify!(_zend_leak_info))
);
assert_eq!(
::std::mem::align_of::<_zend_leak_info>(),
8usize,
concat!("Alignment of ", stringify!(_zend_leak_info))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).addr) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_leak_info),
"::",
stringify!(addr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_leak_info),
"::",
stringify!(size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).filename) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_leak_info),
"::",
stringify!(filename)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).orig_filename) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_leak_info),
"::",
stringify!(orig_filename)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lineno) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_leak_info),
"::",
stringify!(lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).orig_lineno) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(_zend_leak_info),
"::",
stringify!(orig_lineno)
)
);
}
impl Default for _zend_leak_info {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_leak_info = _zend_leak_info;
extern "C" {
pub fn zend_strndup(
s: *const ::std::os::raw::c_char,
length: usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn _emalloc(size: usize) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _safe_emalloc(nmemb: usize, size: usize, offset: usize) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _safe_malloc(nmemb: usize, size: usize, offset: usize) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _efree(ptr: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _ecalloc(nmemb: usize, size: usize) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _erealloc(ptr: *mut ::std::os::raw::c_void, size: usize) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _erealloc2(
ptr: *mut ::std::os::raw::c_void,
size: usize,
copy_size: usize,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _safe_erealloc(
ptr: *mut ::std::os::raw::c_void,
nmemb: usize,
size: usize,
offset: usize,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _safe_realloc(
ptr: *mut ::std::os::raw::c_void,
nmemb: usize,
size: usize,
offset: usize,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _estrdup(s: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn _estrndup(
s: *const ::std::os::raw::c_char,
length: usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn _zend_mem_block_size(ptr: *mut ::std::os::raw::c_void) -> usize;
}
extern "C" {
pub fn _emalloc_8() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_16() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_24() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_32() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_40() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_48() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_56() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_64() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_80() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_96() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_112() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_128() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_160() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_192() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_224() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_256() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_320() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_384() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_448() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_512() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_640() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_768() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_896() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_1024() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_1280() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_1536() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_1792() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_2048() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_2560() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_3072() -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_large(size: usize) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _emalloc_huge(size: usize) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _efree_8(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_16(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_24(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_32(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_40(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_48(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_56(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_64(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_80(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_96(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_112(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_128(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_160(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_192(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_224(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_256(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_320(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_384(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_448(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_512(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_640(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_768(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_896(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_1024(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_1280(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_1536(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_1792(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_2048(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_2560(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_3072(arg1: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _efree_large(arg1: *mut ::std::os::raw::c_void, size: usize);
}
extern "C" {
pub fn _efree_huge(arg1: *mut ::std::os::raw::c_void, size: usize);
}
extern "C" {
pub fn __zend_malloc(len: usize) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn __zend_calloc(nmemb: usize, len: usize) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn __zend_realloc(
p: *mut ::std::os::raw::c_void,
len: usize,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_set_memory_limit(memory_limit: usize) -> zend_result;
}
extern "C" {
pub fn zend_alloc_in_memory_limit_error_reporting() -> bool;
}
extern "C" {
pub fn start_memory_manager();
}
extern "C" {
pub fn shutdown_memory_manager(silent: bool, full_shutdown: bool);
}
extern "C" {
pub fn is_zend_mm() -> bool;
}
extern "C" {
pub fn is_zend_ptr(ptr: *const ::std::os::raw::c_void) -> bool;
}
extern "C" {
pub fn zend_memory_usage(real_usage: bool) -> usize;
}
extern "C" {
pub fn zend_memory_peak_usage(real_usage: bool) -> usize;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_mm_heap {
_unused: [u8; 0],
}
pub type zend_mm_heap = _zend_mm_heap;
extern "C" {
pub fn zend_mm_startup() -> *mut zend_mm_heap;
}
extern "C" {
pub fn zend_mm_shutdown(heap: *mut zend_mm_heap, full_shutdown: bool, silent: bool);
}
extern "C" {
pub fn _zend_mm_alloc(heap: *mut zend_mm_heap, size: usize) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _zend_mm_free(heap: *mut zend_mm_heap, p: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn _zend_mm_realloc(
heap: *mut zend_mm_heap,
p: *mut ::std::os::raw::c_void,
size: usize,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _zend_mm_realloc2(
heap: *mut zend_mm_heap,
p: *mut ::std::os::raw::c_void,
size: usize,
copy_size: usize,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn _zend_mm_block_size(heap: *mut zend_mm_heap, p: *mut ::std::os::raw::c_void) -> usize;
}
extern "C" {
pub fn zend_mm_set_heap(new_heap: *mut zend_mm_heap) -> *mut zend_mm_heap;
}
extern "C" {
pub fn zend_mm_get_heap() -> *mut zend_mm_heap;
}
extern "C" {
pub fn zend_mm_gc(heap: *mut zend_mm_heap) -> usize;
}
extern "C" {
pub fn zend_mm_is_custom_heap(new_heap: *mut zend_mm_heap) -> bool;
}
extern "C" {
pub fn zend_mm_set_custom_handlers(
heap: *mut zend_mm_heap,
_malloc: ::std::option::Option<
unsafe extern "C" fn(arg1: usize) -> *mut ::std::os::raw::c_void,
>,
_free: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
_realloc: ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_void,
arg2: usize,
) -> *mut ::std::os::raw::c_void,
>,
);
}
extern "C" {
pub fn zend_mm_get_custom_handlers(
heap: *mut zend_mm_heap,
_malloc: *mut ::std::option::Option<
unsafe extern "C" fn(arg1: usize) -> *mut ::std::os::raw::c_void,
>,
_free: *mut ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
_realloc: *mut ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_void,
arg2: usize,
) -> *mut ::std::os::raw::c_void,
>,
);
}
pub type zend_mm_storage = _zend_mm_storage;
pub type zend_mm_chunk_alloc_t = ::std::option::Option<
unsafe extern "C" fn(
storage: *mut zend_mm_storage,
size: usize,
alignment: usize,
) -> *mut ::std::os::raw::c_void,
>;
pub type zend_mm_chunk_free_t = ::std::option::Option<
unsafe extern "C" fn(
storage: *mut zend_mm_storage,
chunk: *mut ::std::os::raw::c_void,
size: usize,
),
>;
pub type zend_mm_chunk_truncate_t = ::std::option::Option<
unsafe extern "C" fn(
storage: *mut zend_mm_storage,
chunk: *mut ::std::os::raw::c_void,
old_size: usize,
new_size: usize,
) -> bool,
>;
pub type zend_mm_chunk_extend_t = ::std::option::Option<
unsafe extern "C" fn(
storage: *mut zend_mm_storage,
chunk: *mut ::std::os::raw::c_void,
old_size: usize,
new_size: usize,
) -> bool,
>;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_mm_handlers {
pub chunk_alloc: zend_mm_chunk_alloc_t,
pub chunk_free: zend_mm_chunk_free_t,
pub chunk_truncate: zend_mm_chunk_truncate_t,
pub chunk_extend: zend_mm_chunk_extend_t,
}
#[test]
fn bindgen_test_layout__zend_mm_handlers() {
const UNINIT: ::std::mem::MaybeUninit<_zend_mm_handlers> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_mm_handlers>(),
32usize,
concat!("Size of: ", stringify!(_zend_mm_handlers))
);
assert_eq!(
::std::mem::align_of::<_zend_mm_handlers>(),
8usize,
concat!("Alignment of ", stringify!(_zend_mm_handlers))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).chunk_alloc) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_mm_handlers),
"::",
stringify!(chunk_alloc)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).chunk_free) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_mm_handlers),
"::",
stringify!(chunk_free)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).chunk_truncate) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_mm_handlers),
"::",
stringify!(chunk_truncate)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).chunk_extend) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_mm_handlers),
"::",
stringify!(chunk_extend)
)
);
}
pub type zend_mm_handlers = _zend_mm_handlers;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_mm_storage {
pub handlers: zend_mm_handlers,
pub data: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout__zend_mm_storage() {
const UNINIT: ::std::mem::MaybeUninit<_zend_mm_storage> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_mm_storage>(),
40usize,
concat!("Size of: ", stringify!(_zend_mm_storage))
);
assert_eq!(
::std::mem::align_of::<_zend_mm_storage>(),
8usize,
concat!("Alignment of ", stringify!(_zend_mm_storage))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handlers) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_mm_storage),
"::",
stringify!(handlers)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_mm_storage),
"::",
stringify!(data)
)
);
}
impl Default for _zend_mm_storage {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub fn zend_mm_get_storage(heap: *mut zend_mm_heap) -> *mut zend_mm_storage;
}
extern "C" {
pub fn zend_mm_startup_ex(
handlers: *const zend_mm_handlers,
data: *mut ::std::os::raw::c_void,
data_size: usize,
) -> *mut zend_mm_heap;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_llist_element {
pub next: *mut _zend_llist_element,
pub prev: *mut _zend_llist_element,
pub data: [::std::os::raw::c_char; 1usize],
}
#[test]
fn bindgen_test_layout__zend_llist_element() {
const UNINIT: ::std::mem::MaybeUninit<_zend_llist_element> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_llist_element>(),
24usize,
concat!("Size of: ", stringify!(_zend_llist_element))
);
assert_eq!(
::std::mem::align_of::<_zend_llist_element>(),
8usize,
concat!("Alignment of ", stringify!(_zend_llist_element))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_llist_element),
"::",
stringify!(next)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).prev) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_llist_element),
"::",
stringify!(prev)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_llist_element),
"::",
stringify!(data)
)
);
}
impl Default for _zend_llist_element {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_llist_element = _zend_llist_element;
pub type llist_dtor_func_t =
::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
pub type llist_compare_func_t = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut *const zend_llist_element,
arg2: *mut *const zend_llist_element,
) -> ::std::os::raw::c_int,
>;
pub type llist_apply_with_args_func_t = ::std::option::Option<
unsafe extern "C" fn(
data: *mut ::std::os::raw::c_void,
num_args: ::std::os::raw::c_int,
args: *mut __va_list_tag,
),
>;
pub type llist_apply_with_arg_func_t = ::std::option::Option<
unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, arg: *mut ::std::os::raw::c_void),
>;
pub type llist_apply_func_t =
::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_llist {
pub head: *mut zend_llist_element,
pub tail: *mut zend_llist_element,
pub count: usize,
pub size: usize,
pub dtor: llist_dtor_func_t,
pub persistent: ::std::os::raw::c_uchar,
pub traverse_ptr: *mut zend_llist_element,
}
#[test]
fn bindgen_test_layout__zend_llist() {
const UNINIT: ::std::mem::MaybeUninit<_zend_llist> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_llist>(),
56usize,
concat!("Size of: ", stringify!(_zend_llist))
);
assert_eq!(
::std::mem::align_of::<_zend_llist>(),
8usize,
concat!("Alignment of ", stringify!(_zend_llist))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).head) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_llist),
"::",
stringify!(head)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).tail) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_llist),
"::",
stringify!(tail)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).count) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_llist),
"::",
stringify!(count)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_llist),
"::",
stringify!(size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dtor) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_llist),
"::",
stringify!(dtor)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).persistent) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_llist),
"::",
stringify!(persistent)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).traverse_ptr) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_llist),
"::",
stringify!(traverse_ptr)
)
);
}
impl Default for _zend_llist {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_llist = _zend_llist;
pub type zend_llist_position = *mut zend_llist_element;
extern "C" {
pub fn zend_llist_init(
l: *mut zend_llist,
size: usize,
dtor: llist_dtor_func_t,
persistent: ::std::os::raw::c_uchar,
);
}
extern "C" {
pub fn zend_llist_add_element(l: *mut zend_llist, element: *const ::std::os::raw::c_void);
}
extern "C" {
pub fn zend_llist_prepend_element(l: *mut zend_llist, element: *const ::std::os::raw::c_void);
}
extern "C" {
pub fn zend_llist_del_element(
l: *mut zend_llist,
element: *mut ::std::os::raw::c_void,
compare: ::std::option::Option<
unsafe extern "C" fn(
element1: *mut ::std::os::raw::c_void,
element2: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
);
}
extern "C" {
pub fn zend_llist_destroy(l: *mut zend_llist);
}
extern "C" {
pub fn zend_llist_clean(l: *mut zend_llist);
}
extern "C" {
pub fn zend_llist_remove_tail(l: *mut zend_llist);
}
extern "C" {
pub fn zend_llist_copy(dst: *mut zend_llist, src: *mut zend_llist);
}
extern "C" {
pub fn zend_llist_apply(l: *mut zend_llist, func: llist_apply_func_t);
}
extern "C" {
pub fn zend_llist_apply_with_del(
l: *mut zend_llist,
func: ::std::option::Option<
unsafe extern "C" fn(data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
>,
);
}
extern "C" {
pub fn zend_llist_apply_with_argument(
l: *mut zend_llist,
func: llist_apply_with_arg_func_t,
arg: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn zend_llist_apply_with_arguments(
l: *mut zend_llist,
func: llist_apply_with_args_func_t,
num_args: ::std::os::raw::c_int,
...
);
}
extern "C" {
pub fn zend_llist_count(l: *mut zend_llist) -> usize;
}
extern "C" {
pub fn zend_llist_sort(l: *mut zend_llist, comp_func: llist_compare_func_t);
}
extern "C" {
pub fn zend_llist_get_first_ex(
l: *mut zend_llist,
pos: *mut zend_llist_position,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_llist_get_last_ex(
l: *mut zend_llist,
pos: *mut zend_llist_position,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_llist_get_next_ex(
l: *mut zend_llist,
pos: *mut zend_llist_position,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_llist_get_prev_ex(
l: *mut zend_llist,
pos: *mut zend_llist_position,
) -> *mut ::std::os::raw::c_void;
}
pub type zend_string_copy_storage_func_t = ::std::option::Option<unsafe extern "C" fn()>;
pub type zend_new_interned_string_func_t =
::std::option::Option<unsafe extern "C" fn(str_: *mut zend_string) -> *mut zend_string>;
pub type zend_string_init_interned_func_t = ::std::option::Option<
unsafe extern "C" fn(
str_: *const ::std::os::raw::c_char,
size: usize,
permanent: bool,
) -> *mut zend_string,
>;
pub type zend_string_init_existing_interned_func_t = ::std::option::Option<
unsafe extern "C" fn(
str_: *const ::std::os::raw::c_char,
size: usize,
permanent: bool,
) -> *mut zend_string,
>;
extern "C" {
pub static mut zend_new_interned_string: zend_new_interned_string_func_t;
}
extern "C" {
pub static mut zend_string_init_interned: zend_string_init_interned_func_t;
}
extern "C" {
pub static mut zend_string_init_existing_interned: zend_string_init_existing_interned_func_t;
}
extern "C" {
pub fn zend_string_hash_func(str_: *mut zend_string) -> zend_ulong;
}
extern "C" {
pub fn zend_hash_func(str_: *const ::std::os::raw::c_char, len: usize) -> zend_ulong;
}
extern "C" {
pub fn zend_interned_string_find_permanent(str_: *mut zend_string) -> *mut zend_string;
}
extern "C" {
pub fn zend_string_concat2(
str1: *const ::std::os::raw::c_char,
str1_len: usize,
str2: *const ::std::os::raw::c_char,
str2_len: usize,
) -> *mut zend_string;
}
extern "C" {
pub fn zend_string_concat3(
str1: *const ::std::os::raw::c_char,
str1_len: usize,
str2: *const ::std::os::raw::c_char,
str2_len: usize,
str3: *const ::std::os::raw::c_char,
str3_len: usize,
) -> *mut zend_string;
}
extern "C" {
pub fn zend_interned_strings_init();
}
extern "C" {
pub fn zend_interned_strings_dtor();
}
extern "C" {
pub fn zend_interned_strings_activate();
}
extern "C" {
pub fn zend_interned_strings_deactivate();
}
extern "C" {
pub fn zend_interned_strings_set_request_storage_handlers(
handler: zend_new_interned_string_func_t,
init_handler: zend_string_init_interned_func_t,
init_existing_handler: zend_string_init_existing_interned_func_t,
);
}
extern "C" {
pub fn zend_interned_strings_switch_storage(request: bool);
}
extern "C" {
pub static mut zend_empty_string: *mut zend_string;
}
extern "C" {
pub static mut zend_one_char_string: [*mut zend_string; 256usize];
}
extern "C" {
pub static mut zend_known_strings: *mut *mut zend_string;
}
extern "C" {
pub fn zend_string_equal_val(s1: *mut zend_string, s2: *mut zend_string) -> bool;
}
pub const _zend_known_string_id_ZEND_STR_FILE: _zend_known_string_id = 0;
pub const _zend_known_string_id_ZEND_STR_LINE: _zend_known_string_id = 1;
pub const _zend_known_string_id_ZEND_STR_FUNCTION: _zend_known_string_id = 2;
pub const _zend_known_string_id_ZEND_STR_CLASS: _zend_known_string_id = 3;
pub const _zend_known_string_id_ZEND_STR_OBJECT: _zend_known_string_id = 4;
pub const _zend_known_string_id_ZEND_STR_TYPE: _zend_known_string_id = 5;
pub const _zend_known_string_id_ZEND_STR_OBJECT_OPERATOR: _zend_known_string_id = 6;
pub const _zend_known_string_id_ZEND_STR_PAAMAYIM_NEKUDOTAYIM: _zend_known_string_id = 7;
pub const _zend_known_string_id_ZEND_STR_ARGS: _zend_known_string_id = 8;
pub const _zend_known_string_id_ZEND_STR_UNKNOWN: _zend_known_string_id = 9;
pub const _zend_known_string_id_ZEND_STR_UNKNOWN_CAPITALIZED: _zend_known_string_id = 10;
pub const _zend_known_string_id_ZEND_STR_EVAL: _zend_known_string_id = 11;
pub const _zend_known_string_id_ZEND_STR_INCLUDE: _zend_known_string_id = 12;
pub const _zend_known_string_id_ZEND_STR_REQUIRE: _zend_known_string_id = 13;
pub const _zend_known_string_id_ZEND_STR_INCLUDE_ONCE: _zend_known_string_id = 14;
pub const _zend_known_string_id_ZEND_STR_REQUIRE_ONCE: _zend_known_string_id = 15;
pub const _zend_known_string_id_ZEND_STR_SCALAR: _zend_known_string_id = 16;
pub const _zend_known_string_id_ZEND_STR_ERROR_REPORTING: _zend_known_string_id = 17;
pub const _zend_known_string_id_ZEND_STR_STATIC: _zend_known_string_id = 18;
pub const _zend_known_string_id_ZEND_STR_THIS: _zend_known_string_id = 19;
pub const _zend_known_string_id_ZEND_STR_VALUE: _zend_known_string_id = 20;
pub const _zend_known_string_id_ZEND_STR_KEY: _zend_known_string_id = 21;
pub const _zend_known_string_id_ZEND_STR_MAGIC_INVOKE: _zend_known_string_id = 22;
pub const _zend_known_string_id_ZEND_STR_PREVIOUS: _zend_known_string_id = 23;
pub const _zend_known_string_id_ZEND_STR_CODE: _zend_known_string_id = 24;
pub const _zend_known_string_id_ZEND_STR_MESSAGE: _zend_known_string_id = 25;
pub const _zend_known_string_id_ZEND_STR_SEVERITY: _zend_known_string_id = 26;
pub const _zend_known_string_id_ZEND_STR_STRING: _zend_known_string_id = 27;
pub const _zend_known_string_id_ZEND_STR_TRACE: _zend_known_string_id = 28;
pub const _zend_known_string_id_ZEND_STR_SCHEME: _zend_known_string_id = 29;
pub const _zend_known_string_id_ZEND_STR_HOST: _zend_known_string_id = 30;
pub const _zend_known_string_id_ZEND_STR_PORT: _zend_known_string_id = 31;
pub const _zend_known_string_id_ZEND_STR_USER: _zend_known_string_id = 32;
pub const _zend_known_string_id_ZEND_STR_PASS: _zend_known_string_id = 33;
pub const _zend_known_string_id_ZEND_STR_PATH: _zend_known_string_id = 34;
pub const _zend_known_string_id_ZEND_STR_QUERY: _zend_known_string_id = 35;
pub const _zend_known_string_id_ZEND_STR_FRAGMENT: _zend_known_string_id = 36;
pub const _zend_known_string_id_ZEND_STR_NULL: _zend_known_string_id = 37;
pub const _zend_known_string_id_ZEND_STR_BOOLEAN: _zend_known_string_id = 38;
pub const _zend_known_string_id_ZEND_STR_INTEGER: _zend_known_string_id = 39;
pub const _zend_known_string_id_ZEND_STR_DOUBLE: _zend_known_string_id = 40;
pub const _zend_known_string_id_ZEND_STR_ARRAY: _zend_known_string_id = 41;
pub const _zend_known_string_id_ZEND_STR_RESOURCE: _zend_known_string_id = 42;
pub const _zend_known_string_id_ZEND_STR_CLOSED_RESOURCE: _zend_known_string_id = 43;
pub const _zend_known_string_id_ZEND_STR_NAME: _zend_known_string_id = 44;
pub const _zend_known_string_id_ZEND_STR_ARGV: _zend_known_string_id = 45;
pub const _zend_known_string_id_ZEND_STR_ARGC: _zend_known_string_id = 46;
pub const _zend_known_string_id_ZEND_STR_ARRAY_CAPITALIZED: _zend_known_string_id = 47;
pub const _zend_known_string_id_ZEND_STR_BOOL: _zend_known_string_id = 48;
pub const _zend_known_string_id_ZEND_STR_INT: _zend_known_string_id = 49;
pub const _zend_known_string_id_ZEND_STR_FLOAT: _zend_known_string_id = 50;
pub const _zend_known_string_id_ZEND_STR_CALLABLE: _zend_known_string_id = 51;
pub const _zend_known_string_id_ZEND_STR_ITERABLE: _zend_known_string_id = 52;
pub const _zend_known_string_id_ZEND_STR_VOID: _zend_known_string_id = 53;
pub const _zend_known_string_id_ZEND_STR_NEVER: _zend_known_string_id = 54;
pub const _zend_known_string_id_ZEND_STR_FALSE: _zend_known_string_id = 55;
pub const _zend_known_string_id_ZEND_STR_NULL_LOWERCASE: _zend_known_string_id = 56;
pub const _zend_known_string_id_ZEND_STR_MIXED: _zend_known_string_id = 57;
pub const _zend_known_string_id_ZEND_STR_SLEEP: _zend_known_string_id = 58;
pub const _zend_known_string_id_ZEND_STR_WAKEUP: _zend_known_string_id = 59;
pub const _zend_known_string_id_ZEND_STR_CASES: _zend_known_string_id = 60;
pub const _zend_known_string_id_ZEND_STR_FROM: _zend_known_string_id = 61;
pub const _zend_known_string_id_ZEND_STR_TRYFROM: _zend_known_string_id = 62;
pub const _zend_known_string_id_ZEND_STR_TRYFROM_LOWERCASE: _zend_known_string_id = 63;
pub const _zend_known_string_id_ZEND_STR_AUTOGLOBAL_SERVER: _zend_known_string_id = 64;
pub const _zend_known_string_id_ZEND_STR_AUTOGLOBAL_ENV: _zend_known_string_id = 65;
pub const _zend_known_string_id_ZEND_STR_AUTOGLOBAL_REQUEST: _zend_known_string_id = 66;
pub const _zend_known_string_id_ZEND_STR_LAST_KNOWN: _zend_known_string_id = 67;
pub type _zend_known_string_id = ::std::os::raw::c_uint;
pub use self::_zend_known_string_id as zend_known_string_id;
extern "C" {
pub static zend_empty_array: HashTable;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_hash_key {
pub h: zend_ulong,
pub key: *mut zend_string,
}
#[test]
fn bindgen_test_layout__zend_hash_key() {
const UNINIT: ::std::mem::MaybeUninit<_zend_hash_key> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_hash_key>(),
16usize,
concat!("Size of: ", stringify!(_zend_hash_key))
);
assert_eq!(
::std::mem::align_of::<_zend_hash_key>(),
8usize,
concat!("Alignment of ", stringify!(_zend_hash_key))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).h) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_hash_key),
"::",
stringify!(h)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_hash_key),
"::",
stringify!(key)
)
);
}
impl Default for _zend_hash_key {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_hash_key = _zend_hash_key;
pub type merge_checker_func_t = ::std::option::Option<
unsafe extern "C" fn(
target_ht: *mut HashTable,
source_data: *mut zval,
hash_key: *mut zend_hash_key,
pParam: *mut ::std::os::raw::c_void,
) -> bool,
>;
extern "C" {
pub fn _zend_hash_init(
ht: *mut HashTable,
nSize: u32,
pDestructor: dtor_func_t,
persistent: bool,
);
}
extern "C" {
pub fn zend_hash_destroy(ht: *mut HashTable);
}
extern "C" {
pub fn zend_hash_clean(ht: *mut HashTable);
}
extern "C" {
pub fn zend_hash_real_init(ht: *mut HashTable, packed: bool);
}
extern "C" {
pub fn zend_hash_real_init_packed(ht: *mut HashTable);
}
extern "C" {
pub fn zend_hash_real_init_mixed(ht: *mut HashTable);
}
extern "C" {
pub fn zend_hash_packed_to_hash(ht: *mut HashTable);
}
extern "C" {
pub fn zend_hash_to_packed(ht: *mut HashTable);
}
extern "C" {
pub fn zend_hash_extend(ht: *mut HashTable, nSize: u32, packed: bool);
}
extern "C" {
pub fn zend_hash_discard(ht: *mut HashTable, nNumUsed: u32);
}
extern "C" {
pub fn zend_hash_packed_grow(ht: *mut HashTable);
}
extern "C" {
pub fn zend_hash_add_or_update(
ht: *mut HashTable,
key: *mut zend_string,
pData: *mut zval,
flag: u32,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_update(
ht: *mut HashTable,
key: *mut zend_string,
pData: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_update_ind(
ht: *mut HashTable,
key: *mut zend_string,
pData: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_add(ht: *mut HashTable, key: *mut zend_string, pData: *mut zval) -> *mut zval;
}
extern "C" {
pub fn zend_hash_add_new(
ht: *mut HashTable,
key: *mut zend_string,
pData: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_str_add_or_update(
ht: *mut HashTable,
key: *const ::std::os::raw::c_char,
len: usize,
pData: *mut zval,
flag: u32,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_str_update(
ht: *mut HashTable,
key: *const ::std::os::raw::c_char,
len: usize,
pData: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_str_update_ind(
ht: *mut HashTable,
key: *const ::std::os::raw::c_char,
len: usize,
pData: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_str_add(
ht: *mut HashTable,
key: *const ::std::os::raw::c_char,
len: usize,
pData: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_str_add_new(
ht: *mut HashTable,
key: *const ::std::os::raw::c_char,
len: usize,
pData: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_index_add_or_update(
ht: *mut HashTable,
h: zend_ulong,
pData: *mut zval,
flag: u32,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_index_add(ht: *mut HashTable, h: zend_ulong, pData: *mut zval) -> *mut zval;
}
extern "C" {
pub fn zend_hash_index_add_new(
ht: *mut HashTable,
h: zend_ulong,
pData: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_index_update(ht: *mut HashTable, h: zend_ulong, pData: *mut zval)
-> *mut zval;
}
extern "C" {
pub fn zend_hash_next_index_insert(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
}
extern "C" {
pub fn zend_hash_next_index_insert_new(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
}
extern "C" {
pub fn zend_hash_index_add_empty_element(ht: *mut HashTable, h: zend_ulong) -> *mut zval;
}
extern "C" {
pub fn zend_hash_add_empty_element(ht: *mut HashTable, key: *mut zend_string) -> *mut zval;
}
extern "C" {
pub fn zend_hash_str_add_empty_element(
ht: *mut HashTable,
key: *const ::std::os::raw::c_char,
len: usize,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_set_bucket_key(
ht: *mut HashTable,
p: *mut Bucket,
key: *mut zend_string,
) -> *mut zval;
}
pub type apply_func_t =
::std::option::Option<unsafe extern "C" fn(pDest: *mut zval) -> ::std::os::raw::c_int>;
pub type apply_func_arg_t = ::std::option::Option<
unsafe extern "C" fn(
pDest: *mut zval,
argument: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
pub type apply_func_args_t = ::std::option::Option<
unsafe extern "C" fn(
pDest: *mut zval,
num_args: ::std::os::raw::c_int,
args: *mut __va_list_tag,
hash_key: *mut zend_hash_key,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn zend_hash_graceful_destroy(ht: *mut HashTable);
}
extern "C" {
pub fn zend_hash_graceful_reverse_destroy(ht: *mut HashTable);
}
extern "C" {
pub fn zend_hash_apply(ht: *mut HashTable, apply_func: apply_func_t);
}
extern "C" {
pub fn zend_hash_apply_with_argument(
ht: *mut HashTable,
apply_func: apply_func_arg_t,
arg1: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn zend_hash_apply_with_arguments(
ht: *mut HashTable,
apply_func: apply_func_args_t,
arg1: ::std::os::raw::c_int,
...
);
}
extern "C" {
pub fn zend_hash_reverse_apply(ht: *mut HashTable, apply_func: apply_func_t);
}
extern "C" {
pub fn zend_hash_del(ht: *mut HashTable, key: *mut zend_string) -> zend_result;
}
extern "C" {
pub fn zend_hash_del_ind(ht: *mut HashTable, key: *mut zend_string) -> zend_result;
}
extern "C" {
pub fn zend_hash_str_del(
ht: *mut HashTable,
key: *const ::std::os::raw::c_char,
len: usize,
) -> zend_result;
}
extern "C" {
pub fn zend_hash_str_del_ind(
ht: *mut HashTable,
key: *const ::std::os::raw::c_char,
len: usize,
) -> zend_result;
}
extern "C" {
pub fn zend_hash_index_del(ht: *mut HashTable, h: zend_ulong) -> zend_result;
}
extern "C" {
pub fn zend_hash_del_bucket(ht: *mut HashTable, p: *mut Bucket);
}
extern "C" {
pub fn zend_hash_find(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
}
extern "C" {
pub fn zend_hash_str_find(
ht: *const HashTable,
key: *const ::std::os::raw::c_char,
len: usize,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
}
extern "C" {
pub fn _zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
}
extern "C" {
pub fn zend_hash_find_known_hash(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
}
extern "C" {
pub fn zend_hash_lookup(ht: *mut HashTable, key: *mut zend_string) -> *mut zval;
}
extern "C" {
pub fn zend_hash_index_lookup(ht: *mut HashTable, h: zend_ulong) -> *mut zval;
}
extern "C" {
pub fn zend_hash_get_current_pos(ht: *const HashTable) -> HashPosition;
}
extern "C" {
pub fn zend_hash_move_forward_ex(ht: *mut HashTable, pos: *mut HashPosition) -> zend_result;
}
extern "C" {
pub fn zend_hash_move_backwards_ex(ht: *mut HashTable, pos: *mut HashPosition) -> zend_result;
}
extern "C" {
pub fn zend_hash_get_current_key_ex(
ht: *const HashTable,
str_index: *mut *mut zend_string,
num_index: *mut zend_ulong,
pos: *mut HashPosition,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_hash_get_current_key_zval_ex(
ht: *const HashTable,
key: *mut zval,
pos: *mut HashPosition,
);
}
extern "C" {
pub fn zend_hash_get_current_key_type_ex(
ht: *mut HashTable,
pos: *mut HashPosition,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_hash_get_current_data_ex(ht: *mut HashTable, pos: *mut HashPosition) -> *mut zval;
}
extern "C" {
pub fn zend_hash_internal_pointer_reset_ex(ht: *mut HashTable, pos: *mut HashPosition);
}
extern "C" {
pub fn zend_hash_internal_pointer_end_ex(ht: *mut HashTable, pos: *mut HashPosition);
}
extern "C" {
pub fn zend_hash_copy(
target: *mut HashTable,
source: *mut HashTable,
pCopyConstructor: copy_ctor_func_t,
);
}
extern "C" {
pub fn zend_hash_merge(
target: *mut HashTable,
source: *mut HashTable,
pCopyConstructor: copy_ctor_func_t,
overwrite: bool,
);
}
extern "C" {
pub fn zend_hash_merge_ex(
target: *mut HashTable,
source: *mut HashTable,
pCopyConstructor: copy_ctor_func_t,
pMergeSource: merge_checker_func_t,
pParam: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn zend_hash_bucket_swap(p: *mut Bucket, q: *mut Bucket);
}
extern "C" {
pub fn zend_hash_bucket_renum_swap(p: *mut Bucket, q: *mut Bucket);
}
extern "C" {
pub fn zend_hash_bucket_packed_swap(p: *mut Bucket, q: *mut Bucket);
}
pub type bucket_compare_func_t = ::std::option::Option<
unsafe extern "C" fn(a: *mut Bucket, b: *mut Bucket) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn zend_hash_compare(
ht1: *mut HashTable,
ht2: *mut HashTable,
compar: compare_func_t,
ordered: bool,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_hash_sort_ex(
ht: *mut HashTable,
sort_func: sort_func_t,
compare_func: bucket_compare_func_t,
renumber: bool,
);
}
extern "C" {
pub fn zend_hash_minmax(
ht: *const HashTable,
compar: bucket_compare_func_t,
flag: u32,
) -> *mut zval;
}
extern "C" {
pub fn zend_hash_rehash(ht: *mut HashTable);
}
extern "C" {
pub fn _zend_new_array_0() -> *mut HashTable;
}
extern "C" {
pub fn _zend_new_array(size: u32) -> *mut HashTable;
}
extern "C" {
pub fn zend_new_pair(val1: *mut zval, val2: *mut zval) -> *mut HashTable;
}
extern "C" {
pub fn zend_array_count(ht: *mut HashTable) -> u32;
}
extern "C" {
pub fn zend_array_dup(source: *mut HashTable) -> *mut HashTable;
}
extern "C" {
pub fn zend_array_destroy(ht: *mut HashTable);
}
extern "C" {
pub fn zend_symtable_clean(ht: *mut HashTable);
}
extern "C" {
pub fn zend_symtable_to_proptable(ht: *mut HashTable) -> *mut HashTable;
}
extern "C" {
pub fn zend_proptable_to_symtable(ht: *mut HashTable, always_duplicate: bool)
-> *mut HashTable;
}
extern "C" {
pub fn _zend_handle_numeric_str_ex(
key: *const ::std::os::raw::c_char,
length: usize,
idx: *mut zend_ulong,
) -> bool;
}
extern "C" {
pub fn zend_hash_iterator_add(ht: *mut HashTable, pos: HashPosition) -> u32;
}
extern "C" {
pub fn zend_hash_iterator_pos(idx: u32, ht: *mut HashTable) -> HashPosition;
}
extern "C" {
pub fn zend_hash_iterator_pos_ex(idx: u32, array: *mut zval) -> HashPosition;
}
extern "C" {
pub fn zend_hash_iterator_del(idx: u32);
}
extern "C" {
pub fn zend_hash_iterators_lower_pos(ht: *mut HashTable, start: HashPosition) -> HashPosition;
}
extern "C" {
pub fn _zend_hash_iterators_update(ht: *mut HashTable, from: HashPosition, to: HashPosition);
}
extern "C" {
pub fn zend_hash_iterators_advance(ht: *mut HashTable, step: HashPosition);
}
extern "C" {
pub fn zend_hash_str_find_ptr_lc(
ht: *const HashTable,
str_: *const ::std::os::raw::c_char,
len: usize,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_hash_find_ptr_lc(
ht: *const HashTable,
key: *mut zend_string,
) -> *mut ::std::os::raw::c_void;
}
pub const _zend_ast_kind_ZEND_AST_ZVAL: _zend_ast_kind = 64;
pub const _zend_ast_kind_ZEND_AST_CONSTANT: _zend_ast_kind = 65;
pub const _zend_ast_kind_ZEND_AST_ZNODE: _zend_ast_kind = 66;
pub const _zend_ast_kind_ZEND_AST_FUNC_DECL: _zend_ast_kind = 67;
pub const _zend_ast_kind_ZEND_AST_CLOSURE: _zend_ast_kind = 68;
pub const _zend_ast_kind_ZEND_AST_METHOD: _zend_ast_kind = 69;
pub const _zend_ast_kind_ZEND_AST_CLASS: _zend_ast_kind = 70;
pub const _zend_ast_kind_ZEND_AST_ARROW_FUNC: _zend_ast_kind = 71;
pub const _zend_ast_kind_ZEND_AST_ARG_LIST: _zend_ast_kind = 128;
pub const _zend_ast_kind_ZEND_AST_ARRAY: _zend_ast_kind = 129;
pub const _zend_ast_kind_ZEND_AST_ENCAPS_LIST: _zend_ast_kind = 130;
pub const _zend_ast_kind_ZEND_AST_EXPR_LIST: _zend_ast_kind = 131;
pub const _zend_ast_kind_ZEND_AST_STMT_LIST: _zend_ast_kind = 132;
pub const _zend_ast_kind_ZEND_AST_IF: _zend_ast_kind = 133;
pub const _zend_ast_kind_ZEND_AST_SWITCH_LIST: _zend_ast_kind = 134;
pub const _zend_ast_kind_ZEND_AST_CATCH_LIST: _zend_ast_kind = 135;
pub const _zend_ast_kind_ZEND_AST_PARAM_LIST: _zend_ast_kind = 136;
pub const _zend_ast_kind_ZEND_AST_CLOSURE_USES: _zend_ast_kind = 137;
pub const _zend_ast_kind_ZEND_AST_PROP_DECL: _zend_ast_kind = 138;
pub const _zend_ast_kind_ZEND_AST_CONST_DECL: _zend_ast_kind = 139;
pub const _zend_ast_kind_ZEND_AST_CLASS_CONST_DECL: _zend_ast_kind = 140;
pub const _zend_ast_kind_ZEND_AST_NAME_LIST: _zend_ast_kind = 141;
pub const _zend_ast_kind_ZEND_AST_TRAIT_ADAPTATIONS: _zend_ast_kind = 142;
pub const _zend_ast_kind_ZEND_AST_USE: _zend_ast_kind = 143;
pub const _zend_ast_kind_ZEND_AST_TYPE_UNION: _zend_ast_kind = 144;
pub const _zend_ast_kind_ZEND_AST_TYPE_INTERSECTION: _zend_ast_kind = 145;
pub const _zend_ast_kind_ZEND_AST_ATTRIBUTE_LIST: _zend_ast_kind = 146;
pub const _zend_ast_kind_ZEND_AST_ATTRIBUTE_GROUP: _zend_ast_kind = 147;
pub const _zend_ast_kind_ZEND_AST_MATCH_ARM_LIST: _zend_ast_kind = 148;
pub const _zend_ast_kind_ZEND_AST_MAGIC_CONST: _zend_ast_kind = 0;
pub const _zend_ast_kind_ZEND_AST_TYPE: _zend_ast_kind = 1;
pub const _zend_ast_kind_ZEND_AST_CONSTANT_CLASS: _zend_ast_kind = 2;
pub const _zend_ast_kind_ZEND_AST_CALLABLE_CONVERT: _zend_ast_kind = 3;
pub const _zend_ast_kind_ZEND_AST_VAR: _zend_ast_kind = 256;
pub const _zend_ast_kind_ZEND_AST_CONST: _zend_ast_kind = 257;
pub const _zend_ast_kind_ZEND_AST_UNPACK: _zend_ast_kind = 258;
pub const _zend_ast_kind_ZEND_AST_UNARY_PLUS: _zend_ast_kind = 259;
pub const _zend_ast_kind_ZEND_AST_UNARY_MINUS: _zend_ast_kind = 260;
pub const _zend_ast_kind_ZEND_AST_CAST: _zend_ast_kind = 261;
pub const _zend_ast_kind_ZEND_AST_EMPTY: _zend_ast_kind = 262;
pub const _zend_ast_kind_ZEND_AST_ISSET: _zend_ast_kind = 263;
pub const _zend_ast_kind_ZEND_AST_SILENCE: _zend_ast_kind = 264;
pub const _zend_ast_kind_ZEND_AST_SHELL_EXEC: _zend_ast_kind = 265;
pub const _zend_ast_kind_ZEND_AST_CLONE: _zend_ast_kind = 266;
pub const _zend_ast_kind_ZEND_AST_EXIT: _zend_ast_kind = 267;
pub const _zend_ast_kind_ZEND_AST_PRINT: _zend_ast_kind = 268;
pub const _zend_ast_kind_ZEND_AST_INCLUDE_OR_EVAL: _zend_ast_kind = 269;
pub const _zend_ast_kind_ZEND_AST_UNARY_OP: _zend_ast_kind = 270;
pub const _zend_ast_kind_ZEND_AST_PRE_INC: _zend_ast_kind = 271;
pub const _zend_ast_kind_ZEND_AST_PRE_DEC: _zend_ast_kind = 272;
pub const _zend_ast_kind_ZEND_AST_POST_INC: _zend_ast_kind = 273;
pub const _zend_ast_kind_ZEND_AST_POST_DEC: _zend_ast_kind = 274;
pub const _zend_ast_kind_ZEND_AST_YIELD_FROM: _zend_ast_kind = 275;
pub const _zend_ast_kind_ZEND_AST_CLASS_NAME: _zend_ast_kind = 276;
pub const _zend_ast_kind_ZEND_AST_GLOBAL: _zend_ast_kind = 277;
pub const _zend_ast_kind_ZEND_AST_UNSET: _zend_ast_kind = 278;
pub const _zend_ast_kind_ZEND_AST_RETURN: _zend_ast_kind = 279;
pub const _zend_ast_kind_ZEND_AST_LABEL: _zend_ast_kind = 280;
pub const _zend_ast_kind_ZEND_AST_REF: _zend_ast_kind = 281;
pub const _zend_ast_kind_ZEND_AST_HALT_COMPILER: _zend_ast_kind = 282;
pub const _zend_ast_kind_ZEND_AST_ECHO: _zend_ast_kind = 283;
pub const _zend_ast_kind_ZEND_AST_THROW: _zend_ast_kind = 284;
pub const _zend_ast_kind_ZEND_AST_GOTO: _zend_ast_kind = 285;
pub const _zend_ast_kind_ZEND_AST_BREAK: _zend_ast_kind = 286;
pub const _zend_ast_kind_ZEND_AST_CONTINUE: _zend_ast_kind = 287;
pub const _zend_ast_kind_ZEND_AST_DIM: _zend_ast_kind = 512;
pub const _zend_ast_kind_ZEND_AST_PROP: _zend_ast_kind = 513;
pub const _zend_ast_kind_ZEND_AST_NULLSAFE_PROP: _zend_ast_kind = 514;
pub const _zend_ast_kind_ZEND_AST_STATIC_PROP: _zend_ast_kind = 515;
pub const _zend_ast_kind_ZEND_AST_CALL: _zend_ast_kind = 516;
pub const _zend_ast_kind_ZEND_AST_CLASS_CONST: _zend_ast_kind = 517;
pub const _zend_ast_kind_ZEND_AST_ASSIGN: _zend_ast_kind = 518;
pub const _zend_ast_kind_ZEND_AST_ASSIGN_REF: _zend_ast_kind = 519;
pub const _zend_ast_kind_ZEND_AST_ASSIGN_OP: _zend_ast_kind = 520;
pub const _zend_ast_kind_ZEND_AST_BINARY_OP: _zend_ast_kind = 521;
pub const _zend_ast_kind_ZEND_AST_GREATER: _zend_ast_kind = 522;
pub const _zend_ast_kind_ZEND_AST_GREATER_EQUAL: _zend_ast_kind = 523;
pub const _zend_ast_kind_ZEND_AST_AND: _zend_ast_kind = 524;
pub const _zend_ast_kind_ZEND_AST_OR: _zend_ast_kind = 525;
pub const _zend_ast_kind_ZEND_AST_ARRAY_ELEM: _zend_ast_kind = 526;
pub const _zend_ast_kind_ZEND_AST_NEW: _zend_ast_kind = 527;
pub const _zend_ast_kind_ZEND_AST_INSTANCEOF: _zend_ast_kind = 528;
pub const _zend_ast_kind_ZEND_AST_YIELD: _zend_ast_kind = 529;
pub const _zend_ast_kind_ZEND_AST_COALESCE: _zend_ast_kind = 530;
pub const _zend_ast_kind_ZEND_AST_ASSIGN_COALESCE: _zend_ast_kind = 531;
pub const _zend_ast_kind_ZEND_AST_STATIC: _zend_ast_kind = 532;
pub const _zend_ast_kind_ZEND_AST_WHILE: _zend_ast_kind = 533;
pub const _zend_ast_kind_ZEND_AST_DO_WHILE: _zend_ast_kind = 534;
pub const _zend_ast_kind_ZEND_AST_IF_ELEM: _zend_ast_kind = 535;
pub const _zend_ast_kind_ZEND_AST_SWITCH: _zend_ast_kind = 536;
pub const _zend_ast_kind_ZEND_AST_SWITCH_CASE: _zend_ast_kind = 537;
pub const _zend_ast_kind_ZEND_AST_DECLARE: _zend_ast_kind = 538;
pub const _zend_ast_kind_ZEND_AST_USE_TRAIT: _zend_ast_kind = 539;
pub const _zend_ast_kind_ZEND_AST_TRAIT_PRECEDENCE: _zend_ast_kind = 540;
pub const _zend_ast_kind_ZEND_AST_METHOD_REFERENCE: _zend_ast_kind = 541;
pub const _zend_ast_kind_ZEND_AST_NAMESPACE: _zend_ast_kind = 542;
pub const _zend_ast_kind_ZEND_AST_USE_ELEM: _zend_ast_kind = 543;
pub const _zend_ast_kind_ZEND_AST_TRAIT_ALIAS: _zend_ast_kind = 544;
pub const _zend_ast_kind_ZEND_AST_GROUP_USE: _zend_ast_kind = 545;
pub const _zend_ast_kind_ZEND_AST_CLASS_CONST_GROUP: _zend_ast_kind = 546;
pub const _zend_ast_kind_ZEND_AST_ATTRIBUTE: _zend_ast_kind = 547;
pub const _zend_ast_kind_ZEND_AST_MATCH: _zend_ast_kind = 548;
pub const _zend_ast_kind_ZEND_AST_MATCH_ARM: _zend_ast_kind = 549;
pub const _zend_ast_kind_ZEND_AST_NAMED_ARG: _zend_ast_kind = 550;
pub const _zend_ast_kind_ZEND_AST_METHOD_CALL: _zend_ast_kind = 768;
pub const _zend_ast_kind_ZEND_AST_NULLSAFE_METHOD_CALL: _zend_ast_kind = 769;
pub const _zend_ast_kind_ZEND_AST_STATIC_CALL: _zend_ast_kind = 770;
pub const _zend_ast_kind_ZEND_AST_CONDITIONAL: _zend_ast_kind = 771;
pub const _zend_ast_kind_ZEND_AST_TRY: _zend_ast_kind = 772;
pub const _zend_ast_kind_ZEND_AST_CATCH: _zend_ast_kind = 773;
pub const _zend_ast_kind_ZEND_AST_PROP_GROUP: _zend_ast_kind = 774;
pub const _zend_ast_kind_ZEND_AST_PROP_ELEM: _zend_ast_kind = 775;
pub const _zend_ast_kind_ZEND_AST_CONST_ELEM: _zend_ast_kind = 776;
pub const _zend_ast_kind_ZEND_AST_CONST_ENUM_INIT: _zend_ast_kind = 777;
pub const _zend_ast_kind_ZEND_AST_FOR: _zend_ast_kind = 1024;
pub const _zend_ast_kind_ZEND_AST_FOREACH: _zend_ast_kind = 1025;
pub const _zend_ast_kind_ZEND_AST_ENUM_CASE: _zend_ast_kind = 1026;
pub const _zend_ast_kind_ZEND_AST_PARAM: _zend_ast_kind = 1280;
pub type _zend_ast_kind = ::std::os::raw::c_uint;
pub type zend_ast_kind = u16;
pub type zend_ast_attr = u16;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ast {
pub kind: zend_ast_kind,
pub attr: zend_ast_attr,
pub lineno: u32,
pub child: [*mut zend_ast; 1usize],
}
#[test]
fn bindgen_test_layout__zend_ast() {
const UNINIT: ::std::mem::MaybeUninit<_zend_ast> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_ast>(),
16usize,
concat!("Size of: ", stringify!(_zend_ast))
);
assert_eq!(
::std::mem::align_of::<_zend_ast>(),
8usize,
concat!("Alignment of ", stringify!(_zend_ast))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).kind) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast),
"::",
stringify!(kind)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).attr) as usize - ptr as usize },
2usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast),
"::",
stringify!(attr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lineno) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast),
"::",
stringify!(lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).child) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast),
"::",
stringify!(child)
)
);
}
impl Default for _zend_ast {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ast_list {
pub kind: zend_ast_kind,
pub attr: zend_ast_attr,
pub lineno: u32,
pub children: u32,
pub child: [*mut zend_ast; 1usize],
}
#[test]
fn bindgen_test_layout__zend_ast_list() {
const UNINIT: ::std::mem::MaybeUninit<_zend_ast_list> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_ast_list>(),
24usize,
concat!("Size of: ", stringify!(_zend_ast_list))
);
assert_eq!(
::std::mem::align_of::<_zend_ast_list>(),
8usize,
concat!("Alignment of ", stringify!(_zend_ast_list))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).kind) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_list),
"::",
stringify!(kind)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).attr) as usize - ptr as usize },
2usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_list),
"::",
stringify!(attr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lineno) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_list),
"::",
stringify!(lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).children) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_list),
"::",
stringify!(children)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).child) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_list),
"::",
stringify!(child)
)
);
}
impl Default for _zend_ast_list {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_ast_list = _zend_ast_list;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_ast_zval {
pub kind: zend_ast_kind,
pub attr: zend_ast_attr,
pub val: zval,
}
#[test]
fn bindgen_test_layout__zend_ast_zval() {
const UNINIT: ::std::mem::MaybeUninit<_zend_ast_zval> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_ast_zval>(),
24usize,
concat!("Size of: ", stringify!(_zend_ast_zval))
);
assert_eq!(
::std::mem::align_of::<_zend_ast_zval>(),
8usize,
concat!("Alignment of ", stringify!(_zend_ast_zval))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).kind) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_zval),
"::",
stringify!(kind)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).attr) as usize - ptr as usize },
2usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_zval),
"::",
stringify!(attr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).val) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_zval),
"::",
stringify!(val)
)
);
}
impl Default for _zend_ast_zval {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_ast_zval = _zend_ast_zval;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ast_decl {
pub kind: zend_ast_kind,
pub attr: zend_ast_attr,
pub start_lineno: u32,
pub end_lineno: u32,
pub flags: u32,
pub lex_pos: *mut ::std::os::raw::c_uchar,
pub doc_comment: *mut zend_string,
pub name: *mut zend_string,
pub child: [*mut zend_ast; 5usize],
}
#[test]
fn bindgen_test_layout__zend_ast_decl() {
const UNINIT: ::std::mem::MaybeUninit<_zend_ast_decl> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_ast_decl>(),
80usize,
concat!("Size of: ", stringify!(_zend_ast_decl))
);
assert_eq!(
::std::mem::align_of::<_zend_ast_decl>(),
8usize,
concat!("Alignment of ", stringify!(_zend_ast_decl))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).kind) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_decl),
"::",
stringify!(kind)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).attr) as usize - ptr as usize },
2usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_decl),
"::",
stringify!(attr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).start_lineno) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_decl),
"::",
stringify!(start_lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).end_lineno) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_decl),
"::",
stringify!(end_lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_decl),
"::",
stringify!(flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lex_pos) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_decl),
"::",
stringify!(lex_pos)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).doc_comment) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_decl),
"::",
stringify!(doc_comment)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_decl),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).child) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_decl),
"::",
stringify!(child)
)
);
}
impl Default for _zend_ast_decl {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_ast_decl = _zend_ast_decl;
pub type zend_ast_process_t = ::std::option::Option<unsafe extern "C" fn(ast: *mut zend_ast)>;
extern "C" {
pub static mut zend_ast_process: zend_ast_process_t;
}
extern "C" {
pub fn zend_ast_create_zval_with_lineno(zv: *mut zval, lineno: u32) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_zval_ex(zv: *mut zval, attr: zend_ast_attr) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_zval(zv: *mut zval) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_zval_from_str(str_: *mut zend_string) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_zval_from_long(lval: zend_long) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_constant(name: *mut zend_string, attr: zend_ast_attr) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_class_const_or_name(
class_name: *mut zend_ast,
name: *mut zend_ast,
) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_0(kind: zend_ast_kind) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_1(kind: zend_ast_kind, child: *mut zend_ast) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_2(
kind: zend_ast_kind,
child1: *mut zend_ast,
child2: *mut zend_ast,
) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_3(
kind: zend_ast_kind,
child1: *mut zend_ast,
child2: *mut zend_ast,
child3: *mut zend_ast,
) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_4(
kind: zend_ast_kind,
child1: *mut zend_ast,
child2: *mut zend_ast,
child3: *mut zend_ast,
child4: *mut zend_ast,
) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_5(
kind: zend_ast_kind,
child1: *mut zend_ast,
child2: *mut zend_ast,
child3: *mut zend_ast,
child4: *mut zend_ast,
child5: *mut zend_ast,
) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_list_0(kind: zend_ast_kind) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_list_1(kind: zend_ast_kind, child: *mut zend_ast) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_list_2(
kind: zend_ast_kind,
child1: *mut zend_ast,
child2: *mut zend_ast,
) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_list_add(list: *mut zend_ast, op: *mut zend_ast) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_create_decl(
kind: zend_ast_kind,
flags: u32,
start_lineno: u32,
doc_comment: *mut zend_string,
name: *mut zend_string,
child0: *mut zend_ast,
child1: *mut zend_ast,
child2: *mut zend_ast,
child3: *mut zend_ast,
child4: *mut zend_ast,
) -> *mut zend_ast;
}
extern "C" {
pub fn zend_ast_evaluate(
result: *mut zval,
ast: *mut zend_ast,
scope: *mut zend_class_entry,
) -> zend_result;
}
extern "C" {
pub fn zend_ast_export(
prefix: *const ::std::os::raw::c_char,
ast: *mut zend_ast,
suffix: *const ::std::os::raw::c_char,
) -> *mut zend_string;
}
extern "C" {
pub fn zend_ast_copy(ast: *mut zend_ast) -> *mut zend_ast_ref;
}
extern "C" {
pub fn zend_ast_destroy(ast: *mut zend_ast);
}
extern "C" {
pub fn zend_ast_ref_destroy(ast: *mut zend_ast_ref);
}
pub type zend_ast_apply_func = ::std::option::Option<
unsafe extern "C" fn(ast_ptr: *mut *mut zend_ast, context: *mut ::std::os::raw::c_void),
>;
extern "C" {
pub fn zend_ast_apply(
ast: *mut zend_ast,
fn_: zend_ast_apply_func,
context: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn zend_ast_with_attributes(ast: *mut zend_ast, attr: *mut zend_ast) -> *mut zend_ast;
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_gc_status {
pub runs: u32,
pub collected: u32,
pub threshold: u32,
pub num_roots: u32,
}
#[test]
fn bindgen_test_layout__zend_gc_status() {
const UNINIT: ::std::mem::MaybeUninit<_zend_gc_status> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_gc_status>(),
16usize,
concat!("Size of: ", stringify!(_zend_gc_status))
);
assert_eq!(
::std::mem::align_of::<_zend_gc_status>(),
4usize,
concat!("Alignment of ", stringify!(_zend_gc_status))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).runs) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_gc_status),
"::",
stringify!(runs)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).collected) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_gc_status),
"::",
stringify!(collected)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).threshold) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_gc_status),
"::",
stringify!(threshold)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_roots) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_zend_gc_status),
"::",
stringify!(num_roots)
)
);
}
pub type zend_gc_status = _zend_gc_status;
extern "C" {
pub static mut gc_collect_cycles:
::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
}
extern "C" {
pub fn gc_possible_root(ref_: *mut zend_refcounted);
}
extern "C" {
pub fn gc_remove_from_buffer(ref_: *mut zend_refcounted);
}
extern "C" {
pub fn gc_enable(enable: bool) -> bool;
}
extern "C" {
pub fn gc_enabled() -> bool;
}
extern "C" {
pub fn gc_protect(protect: bool) -> bool;
}
extern "C" {
pub fn gc_protected() -> bool;
}
extern "C" {
pub fn zend_gc_collect_cycles() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_gc_get_status(status: *mut zend_gc_status);
}
extern "C" {
pub fn gc_globals_ctor();
}
extern "C" {
pub fn gc_globals_dtor();
}
extern "C" {
pub fn gc_reset();
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct zend_get_gc_buffer {
pub cur: *mut zval,
pub end: *mut zval,
pub start: *mut zval,
}
#[test]
fn bindgen_test_layout_zend_get_gc_buffer() {
const UNINIT: ::std::mem::MaybeUninit<zend_get_gc_buffer> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<zend_get_gc_buffer>(),
24usize,
concat!("Size of: ", stringify!(zend_get_gc_buffer))
);
assert_eq!(
::std::mem::align_of::<zend_get_gc_buffer>(),
8usize,
concat!("Alignment of ", stringify!(zend_get_gc_buffer))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).cur) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(zend_get_gc_buffer),
"::",
stringify!(cur)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(zend_get_gc_buffer),
"::",
stringify!(end)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).start) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(zend_get_gc_buffer),
"::",
stringify!(start)
)
);
}
impl Default for zend_get_gc_buffer {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub fn zend_get_gc_buffer_create() -> *mut zend_get_gc_buffer;
}
extern "C" {
pub fn zend_get_gc_buffer_grow(gc_buffer: *mut zend_get_gc_buffer);
}
extern "C" {
pub fn rc_dtor_func(p: *mut zend_refcounted);
}
extern "C" {
pub fn zval_copy_ctor_func(zvalue: *mut zval);
}
extern "C" {
pub fn zval_ptr_dtor(zval_ptr: *mut zval);
}
extern "C" {
pub fn zval_internal_ptr_dtor(zvalue: *mut zval);
}
extern "C" {
pub fn zval_add_ref(p: *mut zval);
}
pub type zend_object_iterator = _zend_object_iterator;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_object_iterator_funcs {
pub dtor: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
pub valid: ::std::option::Option<
unsafe extern "C" fn(iter: *mut zend_object_iterator) -> ::std::os::raw::c_int,
>,
pub get_current_data:
::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator) -> *mut zval>,
pub get_current_key: ::std::option::Option<
unsafe extern "C" fn(iter: *mut zend_object_iterator, key: *mut zval),
>,
pub move_forward: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
pub rewind: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
pub invalidate_current:
::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
pub get_gc: ::std::option::Option<
unsafe extern "C" fn(
iter: *mut zend_object_iterator,
table: *mut *mut zval,
n: *mut ::std::os::raw::c_int,
) -> *mut HashTable,
>,
}
#[test]
fn bindgen_test_layout__zend_object_iterator_funcs() {
const UNINIT: ::std::mem::MaybeUninit<_zend_object_iterator_funcs> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_object_iterator_funcs>(),
64usize,
concat!("Size of: ", stringify!(_zend_object_iterator_funcs))
);
assert_eq!(
::std::mem::align_of::<_zend_object_iterator_funcs>(),
8usize,
concat!("Alignment of ", stringify!(_zend_object_iterator_funcs))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dtor) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_iterator_funcs),
"::",
stringify!(dtor)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).valid) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_iterator_funcs),
"::",
stringify!(valid)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_current_data) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_iterator_funcs),
"::",
stringify!(get_current_data)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_current_key) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_iterator_funcs),
"::",
stringify!(get_current_key)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).move_forward) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_iterator_funcs),
"::",
stringify!(move_forward)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).rewind) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_iterator_funcs),
"::",
stringify!(rewind)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).invalidate_current) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_iterator_funcs),
"::",
stringify!(invalidate_current)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_gc) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_iterator_funcs),
"::",
stringify!(get_gc)
)
);
}
pub type zend_object_iterator_funcs = _zend_object_iterator_funcs;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_object_iterator {
pub std: zend_object,
pub data: zval,
pub funcs: *const zend_object_iterator_funcs,
pub index: zend_ulong,
}
#[test]
fn bindgen_test_layout__zend_object_iterator() {
const UNINIT: ::std::mem::MaybeUninit<_zend_object_iterator> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_object_iterator>(),
88usize,
concat!("Size of: ", stringify!(_zend_object_iterator))
);
assert_eq!(
::std::mem::align_of::<_zend_object_iterator>(),
8usize,
concat!("Alignment of ", stringify!(_zend_object_iterator))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).std) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_iterator),
"::",
stringify!(std)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_iterator),
"::",
stringify!(data)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).funcs) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_iterator),
"::",
stringify!(funcs)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).index) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_iterator),
"::",
stringify!(index)
)
);
}
impl Default for _zend_object_iterator {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_class_iterator_funcs {
pub zf_new_iterator: *mut zend_function,
pub zf_valid: *mut zend_function,
pub zf_current: *mut zend_function,
pub zf_key: *mut zend_function,
pub zf_next: *mut zend_function,
pub zf_rewind: *mut zend_function,
}
#[test]
fn bindgen_test_layout__zend_class_iterator_funcs() {
const UNINIT: ::std::mem::MaybeUninit<_zend_class_iterator_funcs> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_class_iterator_funcs>(),
48usize,
concat!("Size of: ", stringify!(_zend_class_iterator_funcs))
);
assert_eq!(
::std::mem::align_of::<_zend_class_iterator_funcs>(),
8usize,
concat!("Alignment of ", stringify!(_zend_class_iterator_funcs))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zf_new_iterator) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_iterator_funcs),
"::",
stringify!(zf_new_iterator)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zf_valid) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_iterator_funcs),
"::",
stringify!(zf_valid)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zf_current) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_iterator_funcs),
"::",
stringify!(zf_current)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zf_key) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_iterator_funcs),
"::",
stringify!(zf_key)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zf_next) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_iterator_funcs),
"::",
stringify!(zf_next)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zf_rewind) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_iterator_funcs),
"::",
stringify!(zf_rewind)
)
);
}
impl Default for _zend_class_iterator_funcs {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_class_iterator_funcs = _zend_class_iterator_funcs;
extern "C" {
pub fn zend_iterator_unwrap(array_ptr: *mut zval) -> *mut zend_object_iterator;
}
extern "C" {
pub fn zend_iterator_init(iter: *mut zend_object_iterator);
}
extern "C" {
pub fn zend_iterator_dtor(iter: *mut zend_object_iterator);
}
extern "C" {
pub fn zend_register_iterator_wrapper();
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct stat {
pub st_dev: __dev_t,
pub st_ino: __ino_t,
pub st_nlink: __nlink_t,
pub st_mode: __mode_t,
pub st_uid: __uid_t,
pub st_gid: __gid_t,
pub __pad0: ::std::os::raw::c_int,
pub st_rdev: __dev_t,
pub st_size: __off_t,
pub st_blksize: __blksize_t,
pub st_blocks: __blkcnt_t,
pub st_atim: timespec,
pub st_mtim: timespec,
pub st_ctim: timespec,
pub __glibc_reserved: [__syscall_slong_t; 3usize],
}
#[test]
fn bindgen_test_layout_stat() {
const UNINIT: ::std::mem::MaybeUninit<stat> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<stat>(),
144usize,
concat!("Size of: ", stringify!(stat))
);
assert_eq!(
::std::mem::align_of::<stat>(),
8usize,
concat!("Alignment of ", stringify!(stat))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_dev) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_dev)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_ino) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_ino)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_nlink) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_nlink)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_mode) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_mode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_uid) as usize - ptr as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_uid)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_gid) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_gid)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__pad0) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(__pad0)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_rdev) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_rdev)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_size) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_blksize) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_blksize)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_blocks) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_blocks)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_atim) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_atim)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_mtim) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_mtim)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).st_ctim) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(st_ctim)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__glibc_reserved) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(stat),
"::",
stringify!(__glibc_reserved)
)
);
}
pub type zend_stream_fsizer_t =
::std::option::Option<unsafe extern "C" fn(handle: *mut ::std::os::raw::c_void) -> usize>;
pub type zend_stream_reader_t = ::std::option::Option<
unsafe extern "C" fn(
handle: *mut ::std::os::raw::c_void,
buf: *mut ::std::os::raw::c_char,
len: usize,
) -> isize,
>;
pub type zend_stream_closer_t =
::std::option::Option<unsafe extern "C" fn(handle: *mut ::std::os::raw::c_void)>;
pub const zend_stream_type_ZEND_HANDLE_FILENAME: zend_stream_type = 0;
pub const zend_stream_type_ZEND_HANDLE_FP: zend_stream_type = 1;
pub const zend_stream_type_ZEND_HANDLE_STREAM: zend_stream_type = 2;
pub type zend_stream_type = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_stream {
pub handle: *mut ::std::os::raw::c_void,
pub isatty: ::std::os::raw::c_int,
pub reader: zend_stream_reader_t,
pub fsizer: zend_stream_fsizer_t,
pub closer: zend_stream_closer_t,
}
#[test]
fn bindgen_test_layout__zend_stream() {
const UNINIT: ::std::mem::MaybeUninit<_zend_stream> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_stream>(),
40usize,
concat!("Size of: ", stringify!(_zend_stream))
);
assert_eq!(
::std::mem::align_of::<_zend_stream>(),
8usize,
concat!("Alignment of ", stringify!(_zend_stream))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handle) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_stream),
"::",
stringify!(handle)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).isatty) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_stream),
"::",
stringify!(isatty)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).reader) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_stream),
"::",
stringify!(reader)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fsizer) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_stream),
"::",
stringify!(fsizer)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).closer) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_stream),
"::",
stringify!(closer)
)
);
}
impl Default for _zend_stream {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_stream = _zend_stream;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_file_handle {
pub handle: _zend_file_handle__bindgen_ty_1,
pub filename: *mut zend_string,
pub opened_path: *mut zend_string,
pub type_: zend_uchar,
pub primary_script: bool,
pub in_list: bool,
pub buf: *mut ::std::os::raw::c_char,
pub len: usize,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_file_handle__bindgen_ty_1 {
pub fp: *mut FILE,
pub stream: zend_stream,
}
#[test]
fn bindgen_test_layout__zend_file_handle__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_zend_file_handle__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_file_handle__bindgen_ty_1>(),
40usize,
concat!("Size of: ", stringify!(_zend_file_handle__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<_zend_file_handle__bindgen_ty_1>(),
8usize,
concat!("Alignment of ", stringify!(_zend_file_handle__bindgen_ty_1))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fp) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_handle__bindgen_ty_1),
"::",
stringify!(fp)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stream) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_handle__bindgen_ty_1),
"::",
stringify!(stream)
)
);
}
impl Default for _zend_file_handle__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout__zend_file_handle() {
const UNINIT: ::std::mem::MaybeUninit<_zend_file_handle> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_file_handle>(),
80usize,
concat!("Size of: ", stringify!(_zend_file_handle))
);
assert_eq!(
::std::mem::align_of::<_zend_file_handle>(),
8usize,
concat!("Alignment of ", stringify!(_zend_file_handle))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handle) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_handle),
"::",
stringify!(handle)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).filename) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_handle),
"::",
stringify!(filename)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).opened_path) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_handle),
"::",
stringify!(opened_path)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_handle),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).primary_script) as usize - ptr as usize },
57usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_handle),
"::",
stringify!(primary_script)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).in_list) as usize - ptr as usize },
58usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_handle),
"::",
stringify!(in_list)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).buf) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_handle),
"::",
stringify!(buf)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_handle),
"::",
stringify!(len)
)
);
}
impl Default for _zend_file_handle {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_file_handle = _zend_file_handle;
extern "C" {
pub fn zend_stream_init_fp(
handle: *mut zend_file_handle,
fp: *mut FILE,
filename: *const ::std::os::raw::c_char,
);
}
extern "C" {
pub fn zend_stream_init_filename(
handle: *mut zend_file_handle,
filename: *const ::std::os::raw::c_char,
);
}
extern "C" {
pub fn zend_stream_init_filename_ex(handle: *mut zend_file_handle, filename: *mut zend_string);
}
extern "C" {
pub fn zend_stream_open(handle: *mut zend_file_handle) -> zend_result;
}
extern "C" {
pub fn zend_stream_fixup(
file_handle: *mut zend_file_handle,
buf: *mut *mut ::std::os::raw::c_char,
len: *mut usize,
) -> zend_result;
}
extern "C" {
pub fn zend_destroy_file_handle(file_handle: *mut zend_file_handle);
}
extern "C" {
pub fn zend_stream_init();
}
extern "C" {
pub fn zend_stream_shutdown();
}
pub type zend_stat_t = stat;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct smart_str {
pub s: *mut zend_string,
pub a: usize,
}
#[test]
fn bindgen_test_layout_smart_str() {
const UNINIT: ::std::mem::MaybeUninit<smart_str> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<smart_str>(),
16usize,
concat!("Size of: ", stringify!(smart_str))
);
assert_eq!(
::std::mem::align_of::<smart_str>(),
8usize,
concat!("Alignment of ", stringify!(smart_str))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).s) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(smart_str),
"::",
stringify!(s)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(smart_str),
"::",
stringify!(a)
)
);
}
impl Default for smart_str {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct smart_string {
pub c: *mut ::std::os::raw::c_char,
pub len: usize,
pub a: usize,
}
#[test]
fn bindgen_test_layout_smart_string() {
const UNINIT: ::std::mem::MaybeUninit<smart_string> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<smart_string>(),
24usize,
concat!("Size of: ", stringify!(smart_string))
);
assert_eq!(
::std::mem::align_of::<smart_string>(),
8usize,
concat!("Alignment of ", stringify!(smart_string))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(smart_string),
"::",
stringify!(c)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(smart_string),
"::",
stringify!(len)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(smart_string),
"::",
stringify!(a)
)
);
}
impl Default for smart_string {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union sigval {
pub sival_int: ::std::os::raw::c_int,
pub sival_ptr: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout_sigval() {
const UNINIT: ::std::mem::MaybeUninit<sigval> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<sigval>(),
8usize,
concat!("Size of: ", stringify!(sigval))
);
assert_eq!(
::std::mem::align_of::<sigval>(),
8usize,
concat!("Alignment of ", stringify!(sigval))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sival_int) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(sigval),
"::",
stringify!(sival_int)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sival_ptr) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(sigval),
"::",
stringify!(sival_ptr)
)
);
}
impl Default for sigval {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type __sigval_t = sigval;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct siginfo_t {
pub si_signo: ::std::os::raw::c_int,
pub si_errno: ::std::os::raw::c_int,
pub si_code: ::std::os::raw::c_int,
pub __pad0: ::std::os::raw::c_int,
pub _sifields: siginfo_t__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union siginfo_t__bindgen_ty_1 {
pub _pad: [::std::os::raw::c_int; 28usize],
pub _kill: siginfo_t__bindgen_ty_1__bindgen_ty_1,
pub _timer: siginfo_t__bindgen_ty_1__bindgen_ty_2,
pub _rt: siginfo_t__bindgen_ty_1__bindgen_ty_3,
pub _sigchld: siginfo_t__bindgen_ty_1__bindgen_ty_4,
pub _sigfault: siginfo_t__bindgen_ty_1__bindgen_ty_5,
pub _sigpoll: siginfo_t__bindgen_ty_1__bindgen_ty_6,
pub _sigsys: siginfo_t__bindgen_ty_1__bindgen_ty_7,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct siginfo_t__bindgen_ty_1__bindgen_ty_1 {
pub si_pid: __pid_t,
pub si_uid: __uid_t,
}
#[test]
fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<siginfo_t__bindgen_ty_1__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_1>(),
8usize,
concat!(
"Size of: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1)
)
);
assert_eq!(
::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_1>(),
4usize,
concat!(
"Alignment of ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_pid) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(si_pid)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_uid) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(si_uid)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct siginfo_t__bindgen_ty_1__bindgen_ty_2 {
pub si_tid: ::std::os::raw::c_int,
pub si_overrun: ::std::os::raw::c_int,
pub si_sigval: __sigval_t,
}
#[test]
fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_2() {
const UNINIT: ::std::mem::MaybeUninit<siginfo_t__bindgen_ty_1__bindgen_ty_2> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_2>(),
16usize,
concat!(
"Size of: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2)
)
);
assert_eq!(
::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_2>(),
8usize,
concat!(
"Alignment of ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_tid) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2),
"::",
stringify!(si_tid)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_overrun) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2),
"::",
stringify!(si_overrun)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_sigval) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2),
"::",
stringify!(si_sigval)
)
);
}
impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_2 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct siginfo_t__bindgen_ty_1__bindgen_ty_3 {
pub si_pid: __pid_t,
pub si_uid: __uid_t,
pub si_sigval: __sigval_t,
}
#[test]
fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_3() {
const UNINIT: ::std::mem::MaybeUninit<siginfo_t__bindgen_ty_1__bindgen_ty_3> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_3>(),
16usize,
concat!(
"Size of: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3)
)
);
assert_eq!(
::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_3>(),
8usize,
concat!(
"Alignment of ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_pid) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3),
"::",
stringify!(si_pid)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_uid) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3),
"::",
stringify!(si_uid)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_sigval) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3),
"::",
stringify!(si_sigval)
)
);
}
impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_3 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct siginfo_t__bindgen_ty_1__bindgen_ty_4 {
pub si_pid: __pid_t,
pub si_uid: __uid_t,
pub si_status: ::std::os::raw::c_int,
pub si_utime: __clock_t,
pub si_stime: __clock_t,
}
#[test]
fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_4() {
const UNINIT: ::std::mem::MaybeUninit<siginfo_t__bindgen_ty_1__bindgen_ty_4> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_4>(),
32usize,
concat!(
"Size of: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4)
)
);
assert_eq!(
::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_4>(),
8usize,
concat!(
"Alignment of ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_pid) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
"::",
stringify!(si_pid)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_uid) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
"::",
stringify!(si_uid)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_status) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
"::",
stringify!(si_status)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_utime) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
"::",
stringify!(si_utime)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_stime) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
"::",
stringify!(si_stime)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5 {
pub si_addr: *mut ::std::os::raw::c_void,
pub si_addr_lsb: ::std::os::raw::c_short,
pub _bounds: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1 {
pub _addr_bnd: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
pub _pkey: __uint32_t,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
pub _lower: *mut ::std::os::raw::c_void,
pub _upper: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<
siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1>(),
16usize,
concat!(
"Size of: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1)
)
);
assert_eq!(
::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1>(),
8usize,
concat!(
"Alignment of ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._lower) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(_lower)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._upper) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(_upper)
)
);
}
impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>(),
16usize,
concat!(
"Size of: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1)
)
);
assert_eq!(
::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>(),
8usize,
concat!(
"Alignment of ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._addr_bnd) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1),
"::",
stringify!(_addr_bnd)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._pkey) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1),
"::",
stringify!(_pkey)
)
);
}
impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_5() {
const UNINIT: ::std::mem::MaybeUninit<siginfo_t__bindgen_ty_1__bindgen_ty_5> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5>(),
32usize,
concat!(
"Size of: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5)
)
);
assert_eq!(
::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5>(),
8usize,
concat!(
"Alignment of ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_addr) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5),
"::",
stringify!(si_addr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_addr_lsb) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5),
"::",
stringify!(si_addr_lsb)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._bounds) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5),
"::",
stringify!(_bounds)
)
);
}
impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_5 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct siginfo_t__bindgen_ty_1__bindgen_ty_6 {
pub si_band: ::std::os::raw::c_long,
pub si_fd: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_6() {
const UNINIT: ::std::mem::MaybeUninit<siginfo_t__bindgen_ty_1__bindgen_ty_6> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_6>(),
16usize,
concat!(
"Size of: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6)
)
);
assert_eq!(
::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_6>(),
8usize,
concat!(
"Alignment of ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_band) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6),
"::",
stringify!(si_band)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_fd) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6),
"::",
stringify!(si_fd)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct siginfo_t__bindgen_ty_1__bindgen_ty_7 {
pub _call_addr: *mut ::std::os::raw::c_void,
pub _syscall: ::std::os::raw::c_int,
pub _arch: ::std::os::raw::c_uint,
}
#[test]
fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_7() {
const UNINIT: ::std::mem::MaybeUninit<siginfo_t__bindgen_ty_1__bindgen_ty_7> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_7>(),
16usize,
concat!(
"Size of: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7)
)
);
assert_eq!(
::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_7>(),
8usize,
concat!(
"Alignment of ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._call_addr) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7),
"::",
stringify!(_call_addr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._syscall) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7),
"::",
stringify!(_syscall)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._arch) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7),
"::",
stringify!(_arch)
)
);
}
impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_7 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout_siginfo_t__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<siginfo_t__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<siginfo_t__bindgen_ty_1>(),
112usize,
concat!("Size of: ", stringify!(siginfo_t__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<siginfo_t__bindgen_ty_1>(),
8usize,
concat!("Alignment of ", stringify!(siginfo_t__bindgen_ty_1))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._pad) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1),
"::",
stringify!(_pad)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._kill) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1),
"::",
stringify!(_kill)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._timer) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1),
"::",
stringify!(_timer)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._rt) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1),
"::",
stringify!(_rt)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._sigchld) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1),
"::",
stringify!(_sigchld)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._sigfault) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1),
"::",
stringify!(_sigfault)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._sigpoll) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1),
"::",
stringify!(_sigpoll)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._sigsys) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t__bindgen_ty_1),
"::",
stringify!(_sigsys)
)
);
}
impl Default for siginfo_t__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout_siginfo_t() {
const UNINIT: ::std::mem::MaybeUninit<siginfo_t> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<siginfo_t>(),
128usize,
concat!("Size of: ", stringify!(siginfo_t))
);
assert_eq!(
::std::mem::align_of::<siginfo_t>(),
8usize,
concat!("Alignment of ", stringify!(siginfo_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_signo) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t),
"::",
stringify!(si_signo)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_errno) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t),
"::",
stringify!(si_errno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).si_code) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t),
"::",
stringify!(si_code)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__pad0) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t),
"::",
stringify!(__pad0)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._sifields) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(siginfo_t),
"::",
stringify!(_sifields)
)
);
}
impl Default for siginfo_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type __sighandler_t = ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct sigaction {
pub __sigaction_handler: sigaction__bindgen_ty_1,
pub sa_mask: __sigset_t,
pub sa_flags: ::std::os::raw::c_int,
pub sa_restorer: ::std::option::Option<unsafe extern "C" fn()>,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union sigaction__bindgen_ty_1 {
pub sa_handler: __sighandler_t,
pub sa_sigaction: ::std::option::Option<
unsafe extern "C" fn(
arg1: ::std::os::raw::c_int,
arg2: *mut siginfo_t,
arg3: *mut ::std::os::raw::c_void,
),
>,
}
#[test]
fn bindgen_test_layout_sigaction__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<sigaction__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<sigaction__bindgen_ty_1>(),
8usize,
concat!("Size of: ", stringify!(sigaction__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<sigaction__bindgen_ty_1>(),
8usize,
concat!("Alignment of ", stringify!(sigaction__bindgen_ty_1))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sa_handler) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(sigaction__bindgen_ty_1),
"::",
stringify!(sa_handler)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sa_sigaction) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(sigaction__bindgen_ty_1),
"::",
stringify!(sa_sigaction)
)
);
}
impl Default for sigaction__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout_sigaction() {
const UNINIT: ::std::mem::MaybeUninit<sigaction> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<sigaction>(),
152usize,
concat!("Size of: ", stringify!(sigaction))
);
assert_eq!(
::std::mem::align_of::<sigaction>(),
8usize,
concat!("Alignment of ", stringify!(sigaction))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__sigaction_handler) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(sigaction),
"::",
stringify!(__sigaction_handler)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sa_mask) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(sigaction),
"::",
stringify!(sa_mask)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sa_flags) as usize - ptr as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(sigaction),
"::",
stringify!(sa_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sa_restorer) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(sigaction),
"::",
stringify!(sa_restorer)
)
);
}
impl Default for sigaction {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type socklen_t = __socklen_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_signal_entry_t {
pub flags: ::std::os::raw::c_int,
pub handler: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout__zend_signal_entry_t() {
const UNINIT: ::std::mem::MaybeUninit<_zend_signal_entry_t> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_signal_entry_t>(),
16usize,
concat!("Size of: ", stringify!(_zend_signal_entry_t))
);
assert_eq!(
::std::mem::align_of::<_zend_signal_entry_t>(),
8usize,
concat!("Alignment of ", stringify!(_zend_signal_entry_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_entry_t),
"::",
stringify!(flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handler) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_entry_t),
"::",
stringify!(handler)
)
);
}
impl Default for _zend_signal_entry_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_signal_entry_t = _zend_signal_entry_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_signal_t {
pub signo: ::std::os::raw::c_int,
pub siginfo: *mut siginfo_t,
pub context: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout__zend_signal_t() {
const UNINIT: ::std::mem::MaybeUninit<_zend_signal_t> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_signal_t>(),
24usize,
concat!("Size of: ", stringify!(_zend_signal_t))
);
assert_eq!(
::std::mem::align_of::<_zend_signal_t>(),
8usize,
concat!("Alignment of ", stringify!(_zend_signal_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).signo) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_t),
"::",
stringify!(signo)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).siginfo) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_t),
"::",
stringify!(siginfo)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).context) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_t),
"::",
stringify!(context)
)
);
}
impl Default for _zend_signal_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_signal_t = _zend_signal_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_signal_queue_t {
pub zend_signal: zend_signal_t,
pub next: *mut _zend_signal_queue_t,
}
#[test]
fn bindgen_test_layout__zend_signal_queue_t() {
const UNINIT: ::std::mem::MaybeUninit<_zend_signal_queue_t> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_signal_queue_t>(),
32usize,
concat!("Size of: ", stringify!(_zend_signal_queue_t))
);
assert_eq!(
::std::mem::align_of::<_zend_signal_queue_t>(),
8usize,
concat!("Alignment of ", stringify!(_zend_signal_queue_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zend_signal) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_queue_t),
"::",
stringify!(zend_signal)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_queue_t),
"::",
stringify!(next)
)
);
}
impl Default for _zend_signal_queue_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_signal_queue_t = _zend_signal_queue_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_signal_globals_t {
pub depth: ::std::os::raw::c_int,
pub blocked: ::std::os::raw::c_int,
pub running: ::std::os::raw::c_int,
pub active: ::std::os::raw::c_int,
pub check: bool,
pub reset: bool,
pub handlers: [zend_signal_entry_t; 65usize],
pub pstorage: [zend_signal_queue_t; 64usize],
pub phead: *mut zend_signal_queue_t,
pub ptail: *mut zend_signal_queue_t,
pub pavail: *mut zend_signal_queue_t,
}
#[test]
fn bindgen_test_layout__zend_signal_globals_t() {
const UNINIT: ::std::mem::MaybeUninit<_zend_signal_globals_t> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_signal_globals_t>(),
3136usize,
concat!("Size of: ", stringify!(_zend_signal_globals_t))
);
assert_eq!(
::std::mem::align_of::<_zend_signal_globals_t>(),
8usize,
concat!("Alignment of ", stringify!(_zend_signal_globals_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).depth) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_globals_t),
"::",
stringify!(depth)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).blocked) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_globals_t),
"::",
stringify!(blocked)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).running) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_globals_t),
"::",
stringify!(running)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).active) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_globals_t),
"::",
stringify!(active)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).check) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_globals_t),
"::",
stringify!(check)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).reset) as usize - ptr as usize },
17usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_globals_t),
"::",
stringify!(reset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handlers) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_globals_t),
"::",
stringify!(handlers)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).pstorage) as usize - ptr as usize },
1064usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_globals_t),
"::",
stringify!(pstorage)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).phead) as usize - ptr as usize },
3112usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_globals_t),
"::",
stringify!(phead)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ptail) as usize - ptr as usize },
3120usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_globals_t),
"::",
stringify!(ptail)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).pavail) as usize - ptr as usize },
3128usize,
concat!(
"Offset of field: ",
stringify!(_zend_signal_globals_t),
"::",
stringify!(pavail)
)
);
}
impl Default for _zend_signal_globals_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_signal_globals_t = _zend_signal_globals_t;
extern "C" {
pub static mut zend_signal_globals: zend_signal_globals_t;
}
extern "C" {
pub fn zend_signal_handler_unblock();
}
extern "C" {
pub fn zend_signal_activate();
}
extern "C" {
pub fn zend_signal_deactivate();
}
extern "C" {
pub fn zend_signal_startup();
}
extern "C" {
pub fn zend_signal_init();
}
extern "C" {
pub fn zend_signal(
signo: ::std::os::raw::c_int,
handler: ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>,
);
}
extern "C" {
pub fn zend_sigaction(
signo: ::std::os::raw::c_int,
act: *const sigaction,
oldact: *mut sigaction,
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_serialize_data {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_unserialize_data {
_unused: [u8; 0],
}
pub type zend_serialize_data = _zend_serialize_data;
pub type zend_unserialize_data = _zend_unserialize_data;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_class_name {
pub name: *mut zend_string,
pub lc_name: *mut zend_string,
}
#[test]
fn bindgen_test_layout__zend_class_name() {
const UNINIT: ::std::mem::MaybeUninit<_zend_class_name> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_class_name>(),
16usize,
concat!("Size of: ", stringify!(_zend_class_name))
);
assert_eq!(
::std::mem::align_of::<_zend_class_name>(),
8usize,
concat!("Alignment of ", stringify!(_zend_class_name))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_name),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lc_name) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_name),
"::",
stringify!(lc_name)
)
);
}
impl Default for _zend_class_name {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_class_name = _zend_class_name;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_trait_method_reference {
pub method_name: *mut zend_string,
pub class_name: *mut zend_string,
}
#[test]
fn bindgen_test_layout__zend_trait_method_reference() {
const UNINIT: ::std::mem::MaybeUninit<_zend_trait_method_reference> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_trait_method_reference>(),
16usize,
concat!("Size of: ", stringify!(_zend_trait_method_reference))
);
assert_eq!(
::std::mem::align_of::<_zend_trait_method_reference>(),
8usize,
concat!("Alignment of ", stringify!(_zend_trait_method_reference))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).method_name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_trait_method_reference),
"::",
stringify!(method_name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).class_name) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_trait_method_reference),
"::",
stringify!(class_name)
)
);
}
impl Default for _zend_trait_method_reference {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_trait_method_reference = _zend_trait_method_reference;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_trait_precedence {
pub trait_method: zend_trait_method_reference,
pub num_excludes: u32,
pub exclude_class_names: [*mut zend_string; 1usize],
}
#[test]
fn bindgen_test_layout__zend_trait_precedence() {
const UNINIT: ::std::mem::MaybeUninit<_zend_trait_precedence> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_trait_precedence>(),
32usize,
concat!("Size of: ", stringify!(_zend_trait_precedence))
);
assert_eq!(
::std::mem::align_of::<_zend_trait_precedence>(),
8usize,
concat!("Alignment of ", stringify!(_zend_trait_precedence))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).trait_method) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_trait_precedence),
"::",
stringify!(trait_method)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_excludes) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_trait_precedence),
"::",
stringify!(num_excludes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).exclude_class_names) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_trait_precedence),
"::",
stringify!(exclude_class_names)
)
);
}
impl Default for _zend_trait_precedence {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_trait_precedence = _zend_trait_precedence;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_trait_alias {
pub trait_method: zend_trait_method_reference,
#[doc = " name for method to be added"]
pub alias: *mut zend_string,
#[doc = " modifiers to be set on trait method"]
pub modifiers: u32,
}
#[test]
fn bindgen_test_layout__zend_trait_alias() {
const UNINIT: ::std::mem::MaybeUninit<_zend_trait_alias> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_trait_alias>(),
32usize,
concat!("Size of: ", stringify!(_zend_trait_alias))
);
assert_eq!(
::std::mem::align_of::<_zend_trait_alias>(),
8usize,
concat!("Alignment of ", stringify!(_zend_trait_alias))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).trait_method) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_trait_alias),
"::",
stringify!(trait_method)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).alias) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_trait_alias),
"::",
stringify!(alias)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).modifiers) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_trait_alias),
"::",
stringify!(modifiers)
)
);
}
impl Default for _zend_trait_alias {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_trait_alias = _zend_trait_alias;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_class_mutable_data {
pub default_properties_table: *mut zval,
pub constants_table: *mut HashTable,
pub ce_flags: u32,
}
#[test]
fn bindgen_test_layout__zend_class_mutable_data() {
const UNINIT: ::std::mem::MaybeUninit<_zend_class_mutable_data> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_class_mutable_data>(),
24usize,
concat!("Size of: ", stringify!(_zend_class_mutable_data))
);
assert_eq!(
::std::mem::align_of::<_zend_class_mutable_data>(),
8usize,
concat!("Alignment of ", stringify!(_zend_class_mutable_data))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).default_properties_table) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_mutable_data),
"::",
stringify!(default_properties_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).constants_table) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_mutable_data),
"::",
stringify!(constants_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ce_flags) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_mutable_data),
"::",
stringify!(ce_flags)
)
);
}
impl Default for _zend_class_mutable_data {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_class_mutable_data = _zend_class_mutable_data;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_class_dependency {
pub name: *mut zend_string,
pub ce: *mut zend_class_entry,
}
#[test]
fn bindgen_test_layout__zend_class_dependency() {
const UNINIT: ::std::mem::MaybeUninit<_zend_class_dependency> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_class_dependency>(),
16usize,
concat!("Size of: ", stringify!(_zend_class_dependency))
);
assert_eq!(
::std::mem::align_of::<_zend_class_dependency>(),
8usize,
concat!("Alignment of ", stringify!(_zend_class_dependency))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_dependency),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ce) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_dependency),
"::",
stringify!(ce)
)
);
}
impl Default for _zend_class_dependency {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_class_dependency = _zend_class_dependency;
pub type zend_inheritance_cache_entry = _zend_inheritance_cache_entry;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_error_info {
pub type_: ::std::os::raw::c_int,
pub lineno: u32,
pub filename: *mut zend_string,
pub message: *mut zend_string,
}
#[test]
fn bindgen_test_layout__zend_error_info() {
const UNINIT: ::std::mem::MaybeUninit<_zend_error_info> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_error_info>(),
24usize,
concat!("Size of: ", stringify!(_zend_error_info))
);
assert_eq!(
::std::mem::align_of::<_zend_error_info>(),
8usize,
concat!("Alignment of ", stringify!(_zend_error_info))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_error_info),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lineno) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_error_info),
"::",
stringify!(lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).filename) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_error_info),
"::",
stringify!(filename)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).message) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_error_info),
"::",
stringify!(message)
)
);
}
impl Default for _zend_error_info {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_error_info = _zend_error_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_inheritance_cache_entry {
pub next: *mut zend_inheritance_cache_entry,
pub ce: *mut zend_class_entry,
pub parent: *mut zend_class_entry,
pub dependencies: *mut zend_class_dependency,
pub dependencies_count: u32,
pub num_warnings: u32,
pub warnings: *mut *mut zend_error_info,
pub traits_and_interfaces: [*mut zend_class_entry; 1usize],
}
#[test]
fn bindgen_test_layout__zend_inheritance_cache_entry() {
const UNINIT: ::std::mem::MaybeUninit<_zend_inheritance_cache_entry> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_inheritance_cache_entry>(),
56usize,
concat!("Size of: ", stringify!(_zend_inheritance_cache_entry))
);
assert_eq!(
::std::mem::align_of::<_zend_inheritance_cache_entry>(),
8usize,
concat!("Alignment of ", stringify!(_zend_inheritance_cache_entry))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_inheritance_cache_entry),
"::",
stringify!(next)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ce) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_inheritance_cache_entry),
"::",
stringify!(ce)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).parent) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_inheritance_cache_entry),
"::",
stringify!(parent)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dependencies) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_inheritance_cache_entry),
"::",
stringify!(dependencies)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dependencies_count) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_inheritance_cache_entry),
"::",
stringify!(dependencies_count)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_warnings) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(_zend_inheritance_cache_entry),
"::",
stringify!(num_warnings)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).warnings) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_inheritance_cache_entry),
"::",
stringify!(warnings)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).traits_and_interfaces) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_inheritance_cache_entry),
"::",
stringify!(traits_and_interfaces)
)
);
}
impl Default for _zend_inheritance_cache_entry {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_class_entry {
pub type_: ::std::os::raw::c_char,
pub name: *mut zend_string,
pub __bindgen_anon_1: _zend_class_entry__bindgen_ty_1,
pub refcount: ::std::os::raw::c_int,
pub ce_flags: u32,
pub default_properties_count: ::std::os::raw::c_int,
pub default_static_members_count: ::std::os::raw::c_int,
pub default_properties_table: *mut zval,
pub default_static_members_table: *mut zval,
pub static_members_table__ptr: *mut *mut zval,
pub function_table: HashTable,
pub properties_info: HashTable,
pub constants_table: HashTable,
pub mutable_data__ptr: *mut *mut zend_class_mutable_data,
pub inheritance_cache: *mut zend_inheritance_cache_entry,
pub properties_info_table: *mut *mut _zend_property_info,
pub constructor: *mut zend_function,
pub destructor: *mut zend_function,
pub clone: *mut zend_function,
pub __get: *mut zend_function,
pub __set: *mut zend_function,
pub __unset: *mut zend_function,
pub __isset: *mut zend_function,
pub __call: *mut zend_function,
pub __callstatic: *mut zend_function,
pub __tostring: *mut zend_function,
pub __debugInfo: *mut zend_function,
pub __serialize: *mut zend_function,
pub __unserialize: *mut zend_function,
pub iterator_funcs_ptr: *mut zend_class_iterator_funcs,
pub __bindgen_anon_2: _zend_class_entry__bindgen_ty_2,
pub get_iterator: ::std::option::Option<
unsafe extern "C" fn(
ce: *mut zend_class_entry,
object: *mut zval,
by_ref: ::std::os::raw::c_int,
) -> *mut zend_object_iterator,
>,
pub get_static_method: ::std::option::Option<
unsafe extern "C" fn(
ce: *mut zend_class_entry,
method: *mut zend_string,
) -> *mut zend_function,
>,
pub serialize: ::std::option::Option<
unsafe extern "C" fn(
object: *mut zval,
buffer: *mut *mut ::std::os::raw::c_uchar,
buf_len: *mut usize,
data: *mut zend_serialize_data,
) -> ::std::os::raw::c_int,
>,
pub unserialize: ::std::option::Option<
unsafe extern "C" fn(
object: *mut zval,
ce: *mut zend_class_entry,
buf: *const ::std::os::raw::c_uchar,
buf_len: usize,
data: *mut zend_unserialize_data,
) -> ::std::os::raw::c_int,
>,
pub num_interfaces: u32,
pub num_traits: u32,
pub __bindgen_anon_3: _zend_class_entry__bindgen_ty_3,
pub trait_names: *mut zend_class_name,
pub trait_aliases: *mut *mut zend_trait_alias,
pub trait_precedences: *mut *mut zend_trait_precedence,
pub attributes: *mut HashTable,
pub enum_backing_type: u32,
pub backed_enum_table: *mut HashTable,
pub info: _zend_class_entry__bindgen_ty_4,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_class_entry__bindgen_ty_1 {
pub parent: *mut zend_class_entry,
pub parent_name: *mut zend_string,
}
#[test]
fn bindgen_test_layout__zend_class_entry__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_zend_class_entry__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_class_entry__bindgen_ty_1>(),
8usize,
concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<_zend_class_entry__bindgen_ty_1>(),
8usize,
concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_1))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).parent) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_1),
"::",
stringify!(parent)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).parent_name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_1),
"::",
stringify!(parent_name)
)
);
}
impl Default for _zend_class_entry__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_class_entry__bindgen_ty_2 {
pub create_object: ::std::option::Option<
unsafe extern "C" fn(class_type: *mut zend_class_entry) -> *mut zend_object,
>,
pub interface_gets_implemented: ::std::option::Option<
unsafe extern "C" fn(
iface: *mut zend_class_entry,
class_type: *mut zend_class_entry,
) -> ::std::os::raw::c_int,
>,
}
#[test]
fn bindgen_test_layout__zend_class_entry__bindgen_ty_2() {
const UNINIT: ::std::mem::MaybeUninit<_zend_class_entry__bindgen_ty_2> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_class_entry__bindgen_ty_2>(),
8usize,
concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_2))
);
assert_eq!(
::std::mem::align_of::<_zend_class_entry__bindgen_ty_2>(),
8usize,
concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_2))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).create_object) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_2),
"::",
stringify!(create_object)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).interface_gets_implemented) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_2),
"::",
stringify!(interface_gets_implemented)
)
);
}
impl Default for _zend_class_entry__bindgen_ty_2 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_class_entry__bindgen_ty_3 {
pub interfaces: *mut *mut zend_class_entry,
pub interface_names: *mut zend_class_name,
}
#[test]
fn bindgen_test_layout__zend_class_entry__bindgen_ty_3() {
const UNINIT: ::std::mem::MaybeUninit<_zend_class_entry__bindgen_ty_3> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_class_entry__bindgen_ty_3>(),
8usize,
concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_3))
);
assert_eq!(
::std::mem::align_of::<_zend_class_entry__bindgen_ty_3>(),
8usize,
concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_3))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).interfaces) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_3),
"::",
stringify!(interfaces)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).interface_names) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_3),
"::",
stringify!(interface_names)
)
);
}
impl Default for _zend_class_entry__bindgen_ty_3 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_class_entry__bindgen_ty_4 {
pub user: _zend_class_entry__bindgen_ty_4__bindgen_ty_1,
pub internal: _zend_class_entry__bindgen_ty_4__bindgen_ty_2,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_class_entry__bindgen_ty_4__bindgen_ty_1 {
pub filename: *mut zend_string,
pub line_start: u32,
pub line_end: u32,
pub doc_comment: *mut zend_string,
}
#[test]
fn bindgen_test_layout__zend_class_entry__bindgen_ty_4__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_zend_class_entry__bindgen_ty_4__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_1>(),
24usize,
concat!(
"Size of: ",
stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1)
)
);
assert_eq!(
::std::mem::align_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_1>(),
8usize,
concat!(
"Alignment of ",
stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).filename) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1),
"::",
stringify!(filename)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).line_start) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1),
"::",
stringify!(line_start)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).line_end) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1),
"::",
stringify!(line_end)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).doc_comment) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1),
"::",
stringify!(doc_comment)
)
);
}
impl Default for _zend_class_entry__bindgen_ty_4__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_class_entry__bindgen_ty_4__bindgen_ty_2 {
pub builtin_functions: *const _zend_function_entry,
pub module: *mut _zend_module_entry,
}
#[test]
fn bindgen_test_layout__zend_class_entry__bindgen_ty_4__bindgen_ty_2() {
const UNINIT: ::std::mem::MaybeUninit<_zend_class_entry__bindgen_ty_4__bindgen_ty_2> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_2>(),
16usize,
concat!(
"Size of: ",
stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_2)
)
);
assert_eq!(
::std::mem::align_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_2>(),
8usize,
concat!(
"Alignment of ",
stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_2)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).builtin_functions) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_2),
"::",
stringify!(builtin_functions)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).module) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_2),
"::",
stringify!(module)
)
);
}
impl Default for _zend_class_entry__bindgen_ty_4__bindgen_ty_2 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout__zend_class_entry__bindgen_ty_4() {
const UNINIT: ::std::mem::MaybeUninit<_zend_class_entry__bindgen_ty_4> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_class_entry__bindgen_ty_4>(),
24usize,
concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_4))
);
assert_eq!(
::std::mem::align_of::<_zend_class_entry__bindgen_ty_4>(),
8usize,
concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_4))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).user) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_4),
"::",
stringify!(user)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).internal) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry__bindgen_ty_4),
"::",
stringify!(internal)
)
);
}
impl Default for _zend_class_entry__bindgen_ty_4 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout__zend_class_entry() {
const UNINIT: ::std::mem::MaybeUninit<_zend_class_entry> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_class_entry>(),
496usize,
concat!("Size of: ", stringify!(_zend_class_entry))
);
assert_eq!(
::std::mem::align_of::<_zend_class_entry>(),
8usize,
concat!("Alignment of ", stringify!(_zend_class_entry))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).refcount) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(refcount)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ce_flags) as usize - ptr as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(ce_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).default_properties_count) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(default_properties_count)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).default_static_members_count) as usize - ptr as usize
},
36usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(default_static_members_count)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).default_properties_table) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(default_properties_table)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).default_static_members_table) as usize - ptr as usize
},
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(default_static_members_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).static_members_table__ptr) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(static_members_table__ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).function_table) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(function_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).properties_info) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(properties_info)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).constants_table) as usize - ptr as usize },
176usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(constants_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mutable_data__ptr) as usize - ptr as usize },
232usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(mutable_data__ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).inheritance_cache) as usize - ptr as usize },
240usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(inheritance_cache)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).properties_info_table) as usize - ptr as usize },
248usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(properties_info_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).constructor) as usize - ptr as usize },
256usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(constructor)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).destructor) as usize - ptr as usize },
264usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(destructor)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).clone) as usize - ptr as usize },
272usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(clone)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__get) as usize - ptr as usize },
280usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(__get)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__set) as usize - ptr as usize },
288usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(__set)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__unset) as usize - ptr as usize },
296usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(__unset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__isset) as usize - ptr as usize },
304usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(__isset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__call) as usize - ptr as usize },
312usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(__call)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__callstatic) as usize - ptr as usize },
320usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(__callstatic)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__tostring) as usize - ptr as usize },
328usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(__tostring)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__debugInfo) as usize - ptr as usize },
336usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(__debugInfo)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__serialize) as usize - ptr as usize },
344usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(__serialize)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__unserialize) as usize - ptr as usize },
352usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(__unserialize)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).iterator_funcs_ptr) as usize - ptr as usize },
360usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(iterator_funcs_ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_iterator) as usize - ptr as usize },
376usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(get_iterator)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_static_method) as usize - ptr as usize },
384usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(get_static_method)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).serialize) as usize - ptr as usize },
392usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(serialize)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).unserialize) as usize - ptr as usize },
400usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(unserialize)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_interfaces) as usize - ptr as usize },
408usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(num_interfaces)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_traits) as usize - ptr as usize },
412usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(num_traits)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).trait_names) as usize - ptr as usize },
424usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(trait_names)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).trait_aliases) as usize - ptr as usize },
432usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(trait_aliases)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).trait_precedences) as usize - ptr as usize },
440usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(trait_precedences)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).attributes) as usize - ptr as usize },
448usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(attributes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).enum_backing_type) as usize - ptr as usize },
456usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(enum_backing_type)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).backed_enum_table) as usize - ptr as usize },
464usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(backed_enum_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).info) as usize - ptr as usize },
472usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_entry),
"::",
stringify!(info)
)
);
}
impl Default for _zend_class_entry {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_utility_functions {
pub error_function: ::std::option::Option<
unsafe extern "C" fn(
type_: ::std::os::raw::c_int,
error_filename: *mut zend_string,
error_lineno: u32,
message: *mut zend_string,
),
>,
pub printf_function: ::std::option::Option<
unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> usize,
>,
pub write_function: ::std::option::Option<
unsafe extern "C" fn(str_: *const ::std::os::raw::c_char, str_length: usize) -> usize,
>,
pub fopen_function: ::std::option::Option<
unsafe extern "C" fn(
filename: *mut zend_string,
opened_path: *mut *mut zend_string,
) -> *mut FILE,
>,
pub message_handler: ::std::option::Option<
unsafe extern "C" fn(message: zend_long, data: *const ::std::os::raw::c_void),
>,
pub get_configuration_directive:
::std::option::Option<unsafe extern "C" fn(name: *mut zend_string) -> *mut zval>,
pub ticks_function: ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>,
pub on_timeout: ::std::option::Option<unsafe extern "C" fn(seconds: ::std::os::raw::c_int)>,
pub stream_open_function:
::std::option::Option<unsafe extern "C" fn(handle: *mut zend_file_handle) -> zend_result>,
pub printf_to_smart_string_function: ::std::option::Option<
unsafe extern "C" fn(
buf: *mut smart_string,
format: *const ::std::os::raw::c_char,
ap: *mut __va_list_tag,
),
>,
pub printf_to_smart_str_function: ::std::option::Option<
unsafe extern "C" fn(
buf: *mut smart_str,
format: *const ::std::os::raw::c_char,
ap: *mut __va_list_tag,
),
>,
pub getenv_function: ::std::option::Option<
unsafe extern "C" fn(
name: *const ::std::os::raw::c_char,
name_len: usize,
) -> *mut ::std::os::raw::c_char,
>,
pub resolve_path_function:
::std::option::Option<unsafe extern "C" fn(filename: *mut zend_string) -> *mut zend_string>,
}
#[test]
fn bindgen_test_layout__zend_utility_functions() {
const UNINIT: ::std::mem::MaybeUninit<_zend_utility_functions> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_utility_functions>(),
104usize,
concat!("Size of: ", stringify!(_zend_utility_functions))
);
assert_eq!(
::std::mem::align_of::<_zend_utility_functions>(),
8usize,
concat!("Alignment of ", stringify!(_zend_utility_functions))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).error_function) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(error_function)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).printf_function) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(printf_function)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).write_function) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(write_function)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fopen_function) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(fopen_function)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).message_handler) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(message_handler)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_configuration_directive) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(get_configuration_directive)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ticks_function) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(ticks_function)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).on_timeout) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(on_timeout)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stream_open_function) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(stream_open_function)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).printf_to_smart_string_function) as usize - ptr as usize
},
72usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(printf_to_smart_string_function)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).printf_to_smart_str_function) as usize - ptr as usize
},
80usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(printf_to_smart_str_function)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).getenv_function) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(getenv_function)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).resolve_path_function) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_functions),
"::",
stringify!(resolve_path_function)
)
);
}
pub type zend_utility_functions = _zend_utility_functions;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_utility_values {
pub html_errors: bool,
}
#[test]
fn bindgen_test_layout__zend_utility_values() {
const UNINIT: ::std::mem::MaybeUninit<_zend_utility_values> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_utility_values>(),
1usize,
concat!("Size of: ", stringify!(_zend_utility_values))
);
assert_eq!(
::std::mem::align_of::<_zend_utility_values>(),
1usize,
concat!("Alignment of ", stringify!(_zend_utility_values))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).html_errors) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_utility_values),
"::",
stringify!(html_errors)
)
);
}
pub type zend_utility_values = _zend_utility_values;
pub type zend_write_func_t = ::std::option::Option<
unsafe extern "C" fn(str_: *const ::std::os::raw::c_char, str_length: usize) -> usize,
>;
extern "C" {
pub fn zend_startup(utility_functions: *mut zend_utility_functions);
}
extern "C" {
pub fn zend_shutdown();
}
extern "C" {
pub fn zend_register_standard_ini_entries();
}
extern "C" {
pub fn zend_post_startup() -> zend_result;
}
extern "C" {
pub fn zend_set_utility_values(utility_values: *mut zend_utility_values);
}
extern "C" {
pub fn _zend_bailout(filename: *const ::std::os::raw::c_char, lineno: u32) -> !;
}
extern "C" {
pub fn zend_get_page_size() -> usize;
}
extern "C" {
pub fn zend_vspprintf(
pbuf: *mut *mut ::std::os::raw::c_char,
max_len: usize,
format: *const ::std::os::raw::c_char,
ap: *mut __va_list_tag,
) -> usize;
}
extern "C" {
pub fn zend_spprintf(
message: *mut *mut ::std::os::raw::c_char,
max_len: usize,
format: *const ::std::os::raw::c_char,
...
) -> usize;
}
extern "C" {
pub fn zend_vstrpprintf(
max_len: usize,
format: *const ::std::os::raw::c_char,
ap: *mut __va_list_tag,
) -> *mut zend_string;
}
extern "C" {
pub fn zend_strpprintf(
max_len: usize,
format: *const ::std::os::raw::c_char,
...
) -> *mut zend_string;
}
extern "C" {
pub fn zend_spprintf_unchecked(
message: *mut *mut ::std::os::raw::c_char,
max_len: usize,
format: *const ::std::os::raw::c_char,
...
) -> usize;
}
extern "C" {
pub fn zend_strpprintf_unchecked(
max_len: usize,
format: *const ::std::os::raw::c_char,
...
) -> *mut zend_string;
}
extern "C" {
pub fn get_zend_version() -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_make_printable_zval(expr: *mut zval, expr_copy: *mut zval) -> bool;
}
extern "C" {
pub fn zend_print_zval(expr: *mut zval, indent: ::std::os::raw::c_int) -> usize;
}
extern "C" {
pub fn zend_print_zval_r(expr: *mut zval, indent: ::std::os::raw::c_int);
}
extern "C" {
pub fn zend_print_zval_r_to_str(
expr: *mut zval,
indent: ::std::os::raw::c_int,
) -> *mut zend_string;
}
extern "C" {
pub fn zend_print_flat_zval_r(expr: *mut zval);
}
extern "C" {
pub fn zend_print_flat_zval_r_to_buf(str_: *mut smart_str, expr: *mut zval);
}
extern "C" {
pub fn zend_output_debug_string(
trigger_break: bool,
format: *const ::std::os::raw::c_char,
...
);
}
extern "C" {
pub fn zend_activate();
}
extern "C" {
pub fn zend_deactivate();
}
extern "C" {
pub fn zend_call_destructors();
}
extern "C" {
pub fn zend_activate_modules();
}
extern "C" {
pub fn zend_deactivate_modules();
}
extern "C" {
pub fn zend_post_deactivate_modules();
}
extern "C" {
pub fn free_estring(str_p: *mut *mut ::std::os::raw::c_char);
}
extern "C" {
pub static mut zend_printf: ::std::option::Option<
unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> usize,
>;
}
extern "C" {
pub static mut zend_write: zend_write_func_t;
}
extern "C" {
pub static mut zend_fopen: ::std::option::Option<
unsafe extern "C" fn(
filename: *mut zend_string,
opened_path: *mut *mut zend_string,
) -> *mut FILE,
>;
}
extern "C" {
pub static mut zend_ticks_function:
::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>;
}
extern "C" {
pub static mut zend_interrupt_function:
::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
}
extern "C" {
pub static mut zend_error_cb: ::std::option::Option<
unsafe extern "C" fn(
type_: ::std::os::raw::c_int,
error_filename: *mut zend_string,
error_lineno: u32,
message: *mut zend_string,
),
>;
}
extern "C" {
pub static mut zend_on_timeout:
::std::option::Option<unsafe extern "C" fn(seconds: ::std::os::raw::c_int)>;
}
extern "C" {
pub static mut zend_stream_open_function:
::std::option::Option<unsafe extern "C" fn(handle: *mut zend_file_handle) -> zend_result>;
}
extern "C" {
pub static mut zend_printf_to_smart_string: ::std::option::Option<
unsafe extern "C" fn(
buf: *mut smart_string,
format: *const ::std::os::raw::c_char,
ap: *mut __va_list_tag,
),
>;
}
extern "C" {
pub static mut zend_printf_to_smart_str: ::std::option::Option<
unsafe extern "C" fn(
buf: *mut smart_str,
format: *const ::std::os::raw::c_char,
ap: *mut __va_list_tag,
),
>;
}
extern "C" {
pub static mut zend_getenv: ::std::option::Option<
unsafe extern "C" fn(
name: *const ::std::os::raw::c_char,
name_len: usize,
) -> *mut ::std::os::raw::c_char,
>;
}
extern "C" {
pub static mut zend_resolve_path:
::std::option::Option<unsafe extern "C" fn(filename: *mut zend_string) -> *mut zend_string>;
}
extern "C" {
pub static mut zend_post_startup_cb:
::std::option::Option<unsafe extern "C" fn() -> zend_result>;
}
extern "C" {
pub static mut zend_post_shutdown_cb: ::std::option::Option<unsafe extern "C" fn()>;
}
extern "C" {
pub fn zend_error(type_: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn zend_error_noreturn(
type_: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
...
) -> !;
}
extern "C" {
pub fn zend_error_unchecked(
type_: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
...
);
}
extern "C" {
pub fn zend_error_at(
type_: ::std::os::raw::c_int,
filename: *mut zend_string,
lineno: u32,
format: *const ::std::os::raw::c_char,
...
);
}
extern "C" {
pub fn zend_error_at_noreturn(
type_: ::std::os::raw::c_int,
filename: *mut zend_string,
lineno: u32,
format: *const ::std::os::raw::c_char,
...
) -> !;
}
extern "C" {
pub fn zend_error_zstr(type_: ::std::os::raw::c_int, message: *mut zend_string);
}
extern "C" {
pub fn zend_error_zstr_at(
type_: ::std::os::raw::c_int,
filename: *mut zend_string,
lineno: u32,
message: *mut zend_string,
);
}
extern "C" {
pub fn zend_throw_error(
exception_ce: *mut zend_class_entry,
format: *const ::std::os::raw::c_char,
...
);
}
extern "C" {
pub fn zend_type_error(format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn zend_argument_count_error(format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn zend_value_error(format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn zenderror(error: *const ::std::os::raw::c_char);
}
extern "C" {
pub static mut zend_standard_class_def: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_uv: zend_utility_values;
}
extern "C" {
pub static mut zend_dtrace_enabled: bool;
}
extern "C" {
pub fn zend_message_dispatcher(message: zend_long, data: *const ::std::os::raw::c_void);
}
extern "C" {
pub fn zend_get_configuration_directive(name: *mut zend_string) -> *mut zval;
}
pub const zend_error_handling_t_EH_NORMAL: zend_error_handling_t = 0;
pub const zend_error_handling_t_EH_THROW: zend_error_handling_t = 1;
pub type zend_error_handling_t = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct zend_error_handling {
pub handling: zend_error_handling_t,
pub exception: *mut zend_class_entry,
}
#[test]
fn bindgen_test_layout_zend_error_handling() {
const UNINIT: ::std::mem::MaybeUninit<zend_error_handling> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<zend_error_handling>(),
16usize,
concat!("Size of: ", stringify!(zend_error_handling))
);
assert_eq!(
::std::mem::align_of::<zend_error_handling>(),
8usize,
concat!("Alignment of ", stringify!(zend_error_handling))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handling) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(zend_error_handling),
"::",
stringify!(handling)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).exception) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(zend_error_handling),
"::",
stringify!(exception)
)
);
}
impl Default for zend_error_handling {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub fn zend_save_error_handling(current: *mut zend_error_handling);
}
extern "C" {
pub fn zend_replace_error_handling(
error_handling: zend_error_handling_t,
exception_class: *mut zend_class_entry,
current: *mut zend_error_handling,
);
}
extern "C" {
pub fn zend_restore_error_handling(saved: *mut zend_error_handling);
}
extern "C" {
pub fn zend_begin_record_errors();
}
extern "C" {
pub fn zend_free_recorded_errors();
}
pub type zend_object_read_property_t = ::std::option::Option<
unsafe extern "C" fn(
object: *mut zend_object,
member: *mut zend_string,
type_: ::std::os::raw::c_int,
cache_slot: *mut *mut ::std::os::raw::c_void,
rv: *mut zval,
) -> *mut zval,
>;
pub type zend_object_read_dimension_t = ::std::option::Option<
unsafe extern "C" fn(
object: *mut zend_object,
offset: *mut zval,
type_: ::std::os::raw::c_int,
rv: *mut zval,
) -> *mut zval,
>;
pub type zend_object_write_property_t = ::std::option::Option<
unsafe extern "C" fn(
object: *mut zend_object,
member: *mut zend_string,
value: *mut zval,
cache_slot: *mut *mut ::std::os::raw::c_void,
) -> *mut zval,
>;
pub type zend_object_write_dimension_t = ::std::option::Option<
unsafe extern "C" fn(object: *mut zend_object, offset: *mut zval, value: *mut zval),
>;
pub type zend_object_get_property_ptr_ptr_t = ::std::option::Option<
unsafe extern "C" fn(
object: *mut zend_object,
member: *mut zend_string,
type_: ::std::os::raw::c_int,
cache_slot: *mut *mut ::std::os::raw::c_void,
) -> *mut zval,
>;
pub type zend_object_has_property_t = ::std::option::Option<
unsafe extern "C" fn(
object: *mut zend_object,
member: *mut zend_string,
has_set_exists: ::std::os::raw::c_int,
cache_slot: *mut *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
pub type zend_object_has_dimension_t = ::std::option::Option<
unsafe extern "C" fn(
object: *mut zend_object,
member: *mut zval,
check_empty: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>;
pub type zend_object_unset_property_t = ::std::option::Option<
unsafe extern "C" fn(
object: *mut zend_object,
member: *mut zend_string,
cache_slot: *mut *mut ::std::os::raw::c_void,
),
>;
pub type zend_object_unset_dimension_t =
::std::option::Option<unsafe extern "C" fn(object: *mut zend_object, offset: *mut zval)>;
pub type zend_object_get_properties_t =
::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut HashTable>;
pub type zend_object_get_debug_info_t = ::std::option::Option<
unsafe extern "C" fn(
object: *mut zend_object,
is_temp: *mut ::std::os::raw::c_int,
) -> *mut HashTable,
>;
pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_DEBUG: _zend_prop_purpose = 0;
pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_ARRAY_CAST: _zend_prop_purpose = 1;
pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_SERIALIZE: _zend_prop_purpose = 2;
pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_VAR_EXPORT: _zend_prop_purpose = 3;
pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_JSON: _zend_prop_purpose = 4;
pub const _zend_prop_purpose__ZEND_PROP_PURPOSE_NON_EXHAUSTIVE_ENUM: _zend_prop_purpose = 5;
pub type _zend_prop_purpose = ::std::os::raw::c_uint;
pub use self::_zend_prop_purpose as zend_prop_purpose;
pub type zend_object_get_properties_for_t = ::std::option::Option<
unsafe extern "C" fn(object: *mut zend_object, purpose: zend_prop_purpose) -> *mut zend_array,
>;
pub type zend_object_get_method_t = ::std::option::Option<
unsafe extern "C" fn(
object: *mut *mut zend_object,
method: *mut zend_string,
key: *const zval,
) -> *mut zend_function,
>;
pub type zend_object_get_constructor_t =
::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut zend_function>;
pub type zend_object_free_obj_t =
::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
pub type zend_object_dtor_obj_t =
::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
pub type zend_object_clone_obj_t =
::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut zend_object>;
pub type zend_object_get_class_name_t =
::std::option::Option<unsafe extern "C" fn(object: *const zend_object) -> *mut zend_string>;
pub type zend_object_compare_t = ::std::option::Option<
unsafe extern "C" fn(object1: *mut zval, object2: *mut zval) -> ::std::os::raw::c_int,
>;
pub type zend_object_cast_t = ::std::option::Option<
unsafe extern "C" fn(
readobj: *mut zend_object,
retval: *mut zval,
type_: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>;
pub type zend_object_count_elements_t = ::std::option::Option<
unsafe extern "C" fn(object: *mut zend_object, count: *mut zend_long) -> ::std::os::raw::c_int,
>;
pub type zend_object_get_closure_t = ::std::option::Option<
unsafe extern "C" fn(
obj: *mut zend_object,
ce_ptr: *mut *mut zend_class_entry,
fptr_ptr: *mut *mut zend_function,
obj_ptr: *mut *mut zend_object,
check_only: bool,
) -> ::std::os::raw::c_int,
>;
pub type zend_object_get_gc_t = ::std::option::Option<
unsafe extern "C" fn(
object: *mut zend_object,
table: *mut *mut zval,
n: *mut ::std::os::raw::c_int,
) -> *mut HashTable,
>;
pub type zend_object_do_operation_t = ::std::option::Option<
unsafe extern "C" fn(
opcode: zend_uchar,
result: *mut zval,
op1: *mut zval,
op2: *mut zval,
) -> ::std::os::raw::c_int,
>;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_object_handlers {
pub offset: ::std::os::raw::c_int,
pub free_obj: zend_object_free_obj_t,
pub dtor_obj: zend_object_dtor_obj_t,
pub clone_obj: zend_object_clone_obj_t,
pub read_property: zend_object_read_property_t,
pub write_property: zend_object_write_property_t,
pub read_dimension: zend_object_read_dimension_t,
pub write_dimension: zend_object_write_dimension_t,
pub get_property_ptr_ptr: zend_object_get_property_ptr_ptr_t,
pub has_property: zend_object_has_property_t,
pub unset_property: zend_object_unset_property_t,
pub has_dimension: zend_object_has_dimension_t,
pub unset_dimension: zend_object_unset_dimension_t,
pub get_properties: zend_object_get_properties_t,
pub get_method: zend_object_get_method_t,
pub get_constructor: zend_object_get_constructor_t,
pub get_class_name: zend_object_get_class_name_t,
pub cast_object: zend_object_cast_t,
pub count_elements: zend_object_count_elements_t,
pub get_debug_info: zend_object_get_debug_info_t,
pub get_closure: zend_object_get_closure_t,
pub get_gc: zend_object_get_gc_t,
pub do_operation: zend_object_do_operation_t,
pub compare: zend_object_compare_t,
pub get_properties_for: zend_object_get_properties_for_t,
}
#[test]
fn bindgen_test_layout__zend_object_handlers() {
const UNINIT: ::std::mem::MaybeUninit<_zend_object_handlers> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_object_handlers>(),
200usize,
concat!("Size of: ", stringify!(_zend_object_handlers))
);
assert_eq!(
::std::mem::align_of::<_zend_object_handlers>(),
8usize,
concat!("Alignment of ", stringify!(_zend_object_handlers))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).offset) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(offset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).free_obj) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(free_obj)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dtor_obj) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(dtor_obj)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).clone_obj) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(clone_obj)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).read_property) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(read_property)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).write_property) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(write_property)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).read_dimension) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(read_dimension)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).write_dimension) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(write_dimension)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_property_ptr_ptr) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(get_property_ptr_ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).has_property) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(has_property)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).unset_property) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(unset_property)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).has_dimension) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(has_dimension)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).unset_dimension) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(unset_dimension)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_properties) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(get_properties)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_method) as usize - ptr as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(get_method)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_constructor) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(get_constructor)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_class_name) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(get_class_name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).cast_object) as usize - ptr as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(cast_object)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).count_elements) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(count_elements)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_debug_info) as usize - ptr as usize },
152usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(get_debug_info)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_closure) as usize - ptr as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(get_closure)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_gc) as usize - ptr as usize },
168usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(get_gc)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).do_operation) as usize - ptr as usize },
176usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(do_operation)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).compare) as usize - ptr as usize },
184usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(compare)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_properties_for) as usize - ptr as usize },
192usize,
concat!(
"Offset of field: ",
stringify!(_zend_object_handlers),
"::",
stringify!(get_properties_for)
)
);
}
extern "C" {
pub static std_object_handlers: zend_object_handlers;
}
extern "C" {
pub fn zend_class_init_statics(ce: *mut zend_class_entry);
}
extern "C" {
pub fn zend_std_get_static_method(
ce: *mut zend_class_entry,
function_name_strval: *mut zend_string,
key: *const zval,
) -> *mut zend_function;
}
extern "C" {
pub fn zend_std_get_static_property_with_info(
ce: *mut zend_class_entry,
property_name: *mut zend_string,
type_: ::std::os::raw::c_int,
prop_info: *mut *mut _zend_property_info,
) -> *mut zval;
}
extern "C" {
pub fn zend_std_get_static_property(
ce: *mut zend_class_entry,
property_name: *mut zend_string,
type_: ::std::os::raw::c_int,
) -> *mut zval;
}
extern "C" {
pub fn zend_std_unset_static_property(
ce: *mut zend_class_entry,
property_name: *mut zend_string,
) -> bool;
}
extern "C" {
pub fn zend_std_get_constructor(object: *mut zend_object) -> *mut zend_function;
}
extern "C" {
pub fn zend_get_property_info(
ce: *mut zend_class_entry,
member: *mut zend_string,
silent: ::std::os::raw::c_int,
) -> *mut _zend_property_info;
}
extern "C" {
pub fn zend_std_get_properties(object: *mut zend_object) -> *mut HashTable;
}
extern "C" {
pub fn zend_std_get_gc(
object: *mut zend_object,
table: *mut *mut zval,
n: *mut ::std::os::raw::c_int,
) -> *mut HashTable;
}
extern "C" {
pub fn zend_std_get_debug_info(
object: *mut zend_object,
is_temp: *mut ::std::os::raw::c_int,
) -> *mut HashTable;
}
extern "C" {
pub fn zend_std_cast_object_tostring(
object: *mut zend_object,
writeobj: *mut zval,
type_: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_std_get_property_ptr_ptr(
object: *mut zend_object,
member: *mut zend_string,
type_: ::std::os::raw::c_int,
cache_slot: *mut *mut ::std::os::raw::c_void,
) -> *mut zval;
}
extern "C" {
pub fn zend_std_read_property(
object: *mut zend_object,
member: *mut zend_string,
type_: ::std::os::raw::c_int,
cache_slot: *mut *mut ::std::os::raw::c_void,
rv: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_std_write_property(
object: *mut zend_object,
member: *mut zend_string,
value: *mut zval,
cache_slot: *mut *mut ::std::os::raw::c_void,
) -> *mut zval;
}
extern "C" {
pub fn zend_std_has_property(
object: *mut zend_object,
member: *mut zend_string,
has_set_exists: ::std::os::raw::c_int,
cache_slot: *mut *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_std_unset_property(
object: *mut zend_object,
member: *mut zend_string,
cache_slot: *mut *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn zend_std_read_dimension(
object: *mut zend_object,
offset: *mut zval,
type_: ::std::os::raw::c_int,
rv: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_std_write_dimension(object: *mut zend_object, offset: *mut zval, value: *mut zval);
}
extern "C" {
pub fn zend_std_has_dimension(
object: *mut zend_object,
offset: *mut zval,
check_empty: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_std_unset_dimension(object: *mut zend_object, offset: *mut zval);
}
extern "C" {
pub fn zend_std_get_method(
obj_ptr: *mut *mut zend_object,
method_name: *mut zend_string,
key: *const zval,
) -> *mut zend_function;
}
extern "C" {
pub fn zend_std_get_class_name(zobj: *const zend_object) -> *mut zend_string;
}
extern "C" {
pub fn zend_std_compare_objects(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_std_get_closure(
obj: *mut zend_object,
ce_ptr: *mut *mut zend_class_entry,
fptr_ptr: *mut *mut zend_function,
obj_ptr: *mut *mut zend_object,
check_only: bool,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn rebuild_object_properties(zobj: *mut zend_object);
}
extern "C" {
pub fn zend_std_build_object_properties_array(zobj: *mut zend_object) -> *mut HashTable;
}
extern "C" {
pub fn zend_objects_not_comparable(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_check_protected(
ce: *mut zend_class_entry,
scope: *mut zend_class_entry,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_check_property_access(
zobj: *mut zend_object,
prop_info_name: *mut zend_string,
is_dynamic: bool,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_get_call_trampoline_func(
ce: *mut zend_class_entry,
method_name: *mut zend_string,
is_static: ::std::os::raw::c_int,
) -> *mut zend_function;
}
extern "C" {
pub fn zend_get_property_guard(zobj: *mut zend_object, member: *mut zend_string) -> *mut u32;
}
extern "C" {
pub fn zend_std_get_properties_for(
obj: *mut zend_object,
purpose: zend_prop_purpose,
) -> *mut HashTable;
}
extern "C" {
pub fn zend_get_properties_for(obj: *mut zval, purpose: zend_prop_purpose) -> *mut HashTable;
}
extern "C" {
pub fn zend_freedtoa(s: *mut ::std::os::raw::c_char);
}
extern "C" {
pub fn zend_dtoa(
_d: f64,
mode: ::std::os::raw::c_int,
ndigits: ::std::os::raw::c_int,
decpt: *mut ::std::os::raw::c_int,
sign: *mut bool,
rve: *mut *mut ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_gcvt(
value: f64,
ndigit: ::std::os::raw::c_int,
dec_point: ::std::os::raw::c_char,
exponent: ::std::os::raw::c_char,
buf: *mut ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_strtod(
s00: *const ::std::os::raw::c_char,
se: *mut *const ::std::os::raw::c_char,
) -> f64;
}
extern "C" {
pub fn zend_hex_strtod(
str_: *const ::std::os::raw::c_char,
endptr: *mut *const ::std::os::raw::c_char,
) -> f64;
}
extern "C" {
pub fn zend_oct_strtod(
str_: *const ::std::os::raw::c_char,
endptr: *mut *const ::std::os::raw::c_char,
) -> f64;
}
extern "C" {
pub fn zend_bin_strtod(
str_: *const ::std::os::raw::c_char,
endptr: *mut *const ::std::os::raw::c_char,
) -> f64;
}
extern "C" {
pub fn zend_startup_strtod() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_shutdown_strtod() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn add_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn sub_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn mul_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn pow_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn div_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn mod_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn boolean_xor_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn boolean_not_function(result: *mut zval, op1: *mut zval) -> zend_result;
}
extern "C" {
pub fn bitwise_not_function(result: *mut zval, op1: *mut zval) -> zend_result;
}
extern "C" {
pub fn bitwise_or_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn bitwise_and_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn bitwise_xor_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn shift_left_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn shift_right_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn concat_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn zend_is_identical(op1: *mut zval, op2: *mut zval) -> bool;
}
extern "C" {
pub fn is_equal_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn is_identical_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn is_not_identical_function(
result: *mut zval,
op1: *mut zval,
op2: *mut zval,
) -> zend_result;
}
extern "C" {
pub fn is_not_equal_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn is_smaller_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn is_smaller_or_equal_function(
result: *mut zval,
op1: *mut zval,
op2: *mut zval,
) -> zend_result;
}
extern "C" {
pub fn zend_class_implements_interface(
class_ce: *const zend_class_entry,
interface_ce: *const zend_class_entry,
) -> bool;
}
extern "C" {
pub fn instanceof_function_slow(
instance_ce: *const zend_class_entry,
ce: *const zend_class_entry,
) -> bool;
}
extern "C" {
#[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."]
pub fn _is_numeric_string_ex(
str_: *const ::std::os::raw::c_char,
length: usize,
lval: *mut zend_long,
dval: *mut f64,
allow_errors: bool,
oflow_info: *mut ::std::os::raw::c_int,
trailing_data: *mut bool,
) -> zend_uchar;
}
extern "C" {
pub fn zend_memnstr_ex(
haystack: *const ::std::os::raw::c_char,
needle: *const ::std::os::raw::c_char,
needle_len: usize,
end: *const ::std::os::raw::c_char,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_memnrstr_ex(
haystack: *const ::std::os::raw::c_char,
needle: *const ::std::os::raw::c_char,
needle_len: usize,
end: *const ::std::os::raw::c_char,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_dval_to_lval_slow(d: f64) -> zend_long;
}
extern "C" {
pub fn zend_incompatible_double_to_long_error(d: f64);
}
extern "C" {
pub fn zend_incompatible_string_to_long_error(s: *const zend_string);
}
extern "C" {
pub fn is_numeric_str_function(
str_: *const zend_string,
lval: *mut zend_long,
dval: *mut f64,
) -> zend_uchar;
}
extern "C" {
pub fn increment_function(op1: *mut zval) -> zend_result;
}
extern "C" {
pub fn decrement_function(op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn convert_scalar_to_number(op: *mut zval);
}
extern "C" {
pub fn _convert_to_string(op: *mut zval);
}
extern "C" {
pub fn convert_to_long(op: *mut zval);
}
extern "C" {
pub fn convert_to_double(op: *mut zval);
}
extern "C" {
pub fn convert_to_null(op: *mut zval);
}
extern "C" {
pub fn convert_to_boolean(op: *mut zval);
}
extern "C" {
pub fn convert_to_array(op: *mut zval);
}
extern "C" {
pub fn convert_to_object(op: *mut zval);
}
extern "C" {
pub fn zval_get_long_func(op: *mut zval, is_strict: bool) -> zend_long;
}
extern "C" {
pub fn zval_get_double_func(op: *mut zval) -> f64;
}
extern "C" {
pub fn zval_get_string_func(op: *mut zval) -> *mut zend_string;
}
extern "C" {
pub fn zval_try_get_string_func(op: *mut zval) -> *mut zend_string;
}
extern "C" {
pub fn _try_convert_to_string(op: *mut zval) -> bool;
}
extern "C" {
pub fn zend_is_true(op: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_object_is_true(op: *mut zval) -> bool;
}
extern "C" {
pub fn zend_compare(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn compare_function(result: *mut zval, op1: *mut zval, op2: *mut zval) -> zend_result;
}
extern "C" {
pub fn numeric_compare_function(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn string_compare_function_ex(
op1: *mut zval,
op2: *mut zval,
case_insensitive: bool,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn string_compare_function(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn string_case_compare_function(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn string_locale_compare_function(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_str_tolower(str_: *mut ::std::os::raw::c_char, length: usize);
}
extern "C" {
pub fn zend_str_tolower_copy(
dest: *mut ::std::os::raw::c_char,
source: *const ::std::os::raw::c_char,
length: usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_str_tolower_dup(
source: *const ::std::os::raw::c_char,
length: usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_str_tolower_dup_ex(
source: *const ::std::os::raw::c_char,
length: usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_string_tolower_ex(str_: *mut zend_string, persistent: bool) -> *mut zend_string;
}
extern "C" {
pub fn zend_binary_zval_strcmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_binary_zval_strncmp(
s1: *mut zval,
s2: *mut zval,
s3: *mut zval,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_binary_zval_strcasecmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_binary_zval_strncasecmp(
s1: *mut zval,
s2: *mut zval,
s3: *mut zval,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_binary_strcmp(
s1: *const ::std::os::raw::c_char,
len1: usize,
s2: *const ::std::os::raw::c_char,
len2: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_binary_strncmp(
s1: *const ::std::os::raw::c_char,
len1: usize,
s2: *const ::std::os::raw::c_char,
len2: usize,
length: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_binary_strcasecmp(
s1: *const ::std::os::raw::c_char,
len1: usize,
s2: *const ::std::os::raw::c_char,
len2: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_binary_strncasecmp(
s1: *const ::std::os::raw::c_char,
len1: usize,
s2: *const ::std::os::raw::c_char,
len2: usize,
length: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_binary_strcasecmp_l(
s1: *const ::std::os::raw::c_char,
len1: usize,
s2: *const ::std::os::raw::c_char,
len2: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_binary_strncasecmp_l(
s1: *const ::std::os::raw::c_char,
len1: usize,
s2: *const ::std::os::raw::c_char,
len2: usize,
length: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zendi_smart_streq(s1: *mut zend_string, s2: *mut zend_string) -> bool;
}
extern "C" {
pub fn zendi_smart_strcmp(s1: *mut zend_string, s2: *mut zend_string) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_compare_symbol_tables(
ht1: *mut HashTable,
ht2: *mut HashTable,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_compare_arrays(a1: *mut zval, a2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_compare_objects(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_atoi(str_: *const ::std::os::raw::c_char, str_len: usize) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_atol(str_: *const ::std::os::raw::c_char, str_len: usize) -> zend_long;
}
extern "C" {
pub fn zend_update_current_locale();
}
extern "C" {
pub fn zend_reset_lc_ctype_locale();
}
extern "C" {
pub fn zend_long_to_str(num: zend_long) -> *mut zend_string;
}
extern "C" {
pub fn zend_ulong_to_str(num: zend_ulong) -> *mut zend_string;
}
extern "C" {
pub fn zend_u64_to_str(num: u64) -> *mut zend_string;
}
extern "C" {
pub fn zend_i64_to_str(num: i64) -> *mut zend_string;
}
extern "C" {
pub fn zend_double_to_str(num: f64) -> *mut zend_string;
}
extern "C" {
pub fn zend_sort(
base: *mut ::std::os::raw::c_void,
nmemb: usize,
siz: usize,
cmp: compare_func_t,
swp: swap_func_t,
);
}
extern "C" {
pub fn zend_insert_sort(
base: *mut ::std::os::raw::c_void,
nmemb: usize,
siz: usize,
cmp: compare_func_t,
swp: swap_func_t,
);
}
pub type zend_op_array = _zend_op_array;
pub type zend_op = _zend_op;
#[repr(C)]
#[derive(Copy, Clone)]
pub union _znode_op {
pub constant: u32,
pub var: u32,
pub num: u32,
pub opline_num: u32,
pub jmp_offset: u32,
}
#[test]
fn bindgen_test_layout__znode_op() {
const UNINIT: ::std::mem::MaybeUninit<_znode_op> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_znode_op>(),
4usize,
concat!("Size of: ", stringify!(_znode_op))
);
assert_eq!(
::std::mem::align_of::<_znode_op>(),
4usize,
concat!("Alignment of ", stringify!(_znode_op))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).constant) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_znode_op),
"::",
stringify!(constant)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).var) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_znode_op),
"::",
stringify!(var)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_znode_op),
"::",
stringify!(num)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).opline_num) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_znode_op),
"::",
stringify!(opline_num)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).jmp_offset) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_znode_op),
"::",
stringify!(jmp_offset)
)
);
}
impl Default for _znode_op {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type znode_op = _znode_op;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _znode {
pub op_type: zend_uchar,
pub flag: zend_uchar,
pub u: _znode__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _znode__bindgen_ty_1 {
pub op: znode_op,
pub constant: zval,
}
#[test]
fn bindgen_test_layout__znode__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_znode__bindgen_ty_1> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_znode__bindgen_ty_1>(),
16usize,
concat!("Size of: ", stringify!(_znode__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<_znode__bindgen_ty_1>(),
8usize,
concat!("Alignment of ", stringify!(_znode__bindgen_ty_1))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).op) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_znode__bindgen_ty_1),
"::",
stringify!(op)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).constant) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_znode__bindgen_ty_1),
"::",
stringify!(constant)
)
);
}
impl Default for _znode__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout__znode() {
const UNINIT: ::std::mem::MaybeUninit<_znode> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_znode>(),
24usize,
concat!("Size of: ", stringify!(_znode))
);
assert_eq!(
::std::mem::align_of::<_znode>(),
8usize,
concat!("Alignment of ", stringify!(_znode))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).op_type) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_znode),
"::",
stringify!(op_type)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flag) as usize - ptr as usize },
1usize,
concat!(
"Offset of field: ",
stringify!(_znode),
"::",
stringify!(flag)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize },
8usize,
concat!("Offset of field: ", stringify!(_znode), "::", stringify!(u))
);
}
impl Default for _znode {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type znode = _znode;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_ast_znode {
pub kind: zend_ast_kind,
pub attr: zend_ast_attr,
pub lineno: u32,
pub node: znode,
}
#[test]
fn bindgen_test_layout__zend_ast_znode() {
const UNINIT: ::std::mem::MaybeUninit<_zend_ast_znode> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_ast_znode>(),
32usize,
concat!("Size of: ", stringify!(_zend_ast_znode))
);
assert_eq!(
::std::mem::align_of::<_zend_ast_znode>(),
8usize,
concat!("Alignment of ", stringify!(_zend_ast_znode))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).kind) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_znode),
"::",
stringify!(kind)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).attr) as usize - ptr as usize },
2usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_znode),
"::",
stringify!(attr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lineno) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_znode),
"::",
stringify!(lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).node) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_ast_znode),
"::",
stringify!(node)
)
);
}
impl Default for _zend_ast_znode {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_ast_znode = _zend_ast_znode;
extern "C" {
pub fn zend_ast_create_znode(node: *mut znode) -> *mut zend_ast;
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_declarables {
pub ticks: zend_long,
}
#[test]
fn bindgen_test_layout__zend_declarables() {
const UNINIT: ::std::mem::MaybeUninit<_zend_declarables> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_declarables>(),
8usize,
concat!("Size of: ", stringify!(_zend_declarables))
);
assert_eq!(
::std::mem::align_of::<_zend_declarables>(),
8usize,
concat!("Alignment of ", stringify!(_zend_declarables))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ticks) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_declarables),
"::",
stringify!(ticks)
)
);
}
pub type zend_declarables = _zend_declarables;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_file_context {
pub declarables: zend_declarables,
pub current_namespace: *mut zend_string,
pub in_namespace: bool,
pub has_bracketed_namespaces: bool,
pub imports: *mut HashTable,
pub imports_function: *mut HashTable,
pub imports_const: *mut HashTable,
pub seen_symbols: HashTable,
}
#[test]
fn bindgen_test_layout__zend_file_context() {
const UNINIT: ::std::mem::MaybeUninit<_zend_file_context> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_file_context>(),
104usize,
concat!("Size of: ", stringify!(_zend_file_context))
);
assert_eq!(
::std::mem::align_of::<_zend_file_context>(),
8usize,
concat!("Alignment of ", stringify!(_zend_file_context))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).declarables) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_context),
"::",
stringify!(declarables)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).current_namespace) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_context),
"::",
stringify!(current_namespace)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).in_namespace) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_context),
"::",
stringify!(in_namespace)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).has_bracketed_namespaces) as usize - ptr as usize },
17usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_context),
"::",
stringify!(has_bracketed_namespaces)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).imports) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_context),
"::",
stringify!(imports)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).imports_function) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_context),
"::",
stringify!(imports_function)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).imports_const) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_context),
"::",
stringify!(imports_const)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).seen_symbols) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_file_context),
"::",
stringify!(seen_symbols)
)
);
}
impl Default for _zend_file_context {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_file_context = _zend_file_context;
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_parser_stack_elem {
pub ast: *mut zend_ast,
pub str_: *mut zend_string,
pub num: zend_ulong,
pub ptr: *mut ::std::os::raw::c_uchar,
pub ident: *mut ::std::os::raw::c_uchar,
}
#[test]
fn bindgen_test_layout__zend_parser_stack_elem() {
const UNINIT: ::std::mem::MaybeUninit<_zend_parser_stack_elem> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_parser_stack_elem>(),
8usize,
concat!("Size of: ", stringify!(_zend_parser_stack_elem))
);
assert_eq!(
::std::mem::align_of::<_zend_parser_stack_elem>(),
8usize,
concat!("Alignment of ", stringify!(_zend_parser_stack_elem))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ast) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_parser_stack_elem),
"::",
stringify!(ast)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_parser_stack_elem),
"::",
stringify!(str_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_parser_stack_elem),
"::",
stringify!(num)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_parser_stack_elem),
"::",
stringify!(ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ident) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_parser_stack_elem),
"::",
stringify!(ident)
)
);
}
impl Default for _zend_parser_stack_elem {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_parser_stack_elem = _zend_parser_stack_elem;
extern "C" {
pub fn zend_compile_top_stmt(ast: *mut zend_ast);
}
extern "C" {
pub fn zend_const_expr_to_zval(
result: *mut zval,
ast_ptr: *mut *mut zend_ast,
allow_dynamic: bool,
);
}
pub type user_opcode_handler_t = ::std::option::Option<
unsafe extern "C" fn(execute_data: *mut zend_execute_data) -> ::std::os::raw::c_int,
>;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_op {
pub handler: *const ::std::os::raw::c_void,
pub op1: znode_op,
pub op2: znode_op,
pub result: znode_op,
pub extended_value: u32,
pub lineno: u32,
pub opcode: zend_uchar,
pub op1_type: zend_uchar,
pub op2_type: zend_uchar,
pub result_type: zend_uchar,
}
#[test]
fn bindgen_test_layout__zend_op() {
const UNINIT: ::std::mem::MaybeUninit<_zend_op> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_op>(),
32usize,
concat!("Size of: ", stringify!(_zend_op))
);
assert_eq!(
::std::mem::align_of::<_zend_op>(),
8usize,
concat!("Alignment of ", stringify!(_zend_op))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handler) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_op),
"::",
stringify!(handler)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).op1) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_op),
"::",
stringify!(op1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).op2) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_zend_op),
"::",
stringify!(op2)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).result) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_op),
"::",
stringify!(result)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).extended_value) as usize - ptr as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(_zend_op),
"::",
stringify!(extended_value)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lineno) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_op),
"::",
stringify!(lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).opcode) as usize - ptr as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(_zend_op),
"::",
stringify!(opcode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).op1_type) as usize - ptr as usize },
29usize,
concat!(
"Offset of field: ",
stringify!(_zend_op),
"::",
stringify!(op1_type)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).op2_type) as usize - ptr as usize },
30usize,
concat!(
"Offset of field: ",
stringify!(_zend_op),
"::",
stringify!(op2_type)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).result_type) as usize - ptr as usize },
31usize,
concat!(
"Offset of field: ",
stringify!(_zend_op),
"::",
stringify!(result_type)
)
);
}
impl Default for _zend_op {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_brk_cont_element {
pub start: ::std::os::raw::c_int,
pub cont: ::std::os::raw::c_int,
pub brk: ::std::os::raw::c_int,
pub parent: ::std::os::raw::c_int,
pub is_switch: bool,
}
#[test]
fn bindgen_test_layout__zend_brk_cont_element() {
const UNINIT: ::std::mem::MaybeUninit<_zend_brk_cont_element> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_brk_cont_element>(),
20usize,
concat!("Size of: ", stringify!(_zend_brk_cont_element))
);
assert_eq!(
::std::mem::align_of::<_zend_brk_cont_element>(),
4usize,
concat!("Alignment of ", stringify!(_zend_brk_cont_element))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).start) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_brk_cont_element),
"::",
stringify!(start)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).cont) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_brk_cont_element),
"::",
stringify!(cont)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).brk) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_brk_cont_element),
"::",
stringify!(brk)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).parent) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_zend_brk_cont_element),
"::",
stringify!(parent)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).is_switch) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_brk_cont_element),
"::",
stringify!(is_switch)
)
);
}
pub type zend_brk_cont_element = _zend_brk_cont_element;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_label {
pub brk_cont: ::std::os::raw::c_int,
pub opline_num: u32,
}
#[test]
fn bindgen_test_layout__zend_label() {
const UNINIT: ::std::mem::MaybeUninit<_zend_label> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_label>(),
8usize,
concat!("Size of: ", stringify!(_zend_label))
);
assert_eq!(
::std::mem::align_of::<_zend_label>(),
4usize,
concat!("Alignment of ", stringify!(_zend_label))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).brk_cont) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_label),
"::",
stringify!(brk_cont)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).opline_num) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_label),
"::",
stringify!(opline_num)
)
);
}
pub type zend_label = _zend_label;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_try_catch_element {
pub try_op: u32,
pub catch_op: u32,
pub finally_op: u32,
pub finally_end: u32,
}
#[test]
fn bindgen_test_layout__zend_try_catch_element() {
const UNINIT: ::std::mem::MaybeUninit<_zend_try_catch_element> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_try_catch_element>(),
16usize,
concat!("Size of: ", stringify!(_zend_try_catch_element))
);
assert_eq!(
::std::mem::align_of::<_zend_try_catch_element>(),
4usize,
concat!("Alignment of ", stringify!(_zend_try_catch_element))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).try_op) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_try_catch_element),
"::",
stringify!(try_op)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).catch_op) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_try_catch_element),
"::",
stringify!(catch_op)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).finally_op) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_try_catch_element),
"::",
stringify!(finally_op)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).finally_end) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_zend_try_catch_element),
"::",
stringify!(finally_end)
)
);
}
pub type zend_try_catch_element = _zend_try_catch_element;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_live_range {
pub var: u32,
pub start: u32,
pub end: u32,
}
#[test]
fn bindgen_test_layout__zend_live_range() {
const UNINIT: ::std::mem::MaybeUninit<_zend_live_range> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_live_range>(),
12usize,
concat!("Size of: ", stringify!(_zend_live_range))
);
assert_eq!(
::std::mem::align_of::<_zend_live_range>(),
4usize,
concat!("Alignment of ", stringify!(_zend_live_range))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).var) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_live_range),
"::",
stringify!(var)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).start) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_live_range),
"::",
stringify!(start)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_live_range),
"::",
stringify!(end)
)
);
}
pub type zend_live_range = _zend_live_range;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_oparray_context {
pub opcodes_size: u32,
pub vars_size: ::std::os::raw::c_int,
pub literals_size: ::std::os::raw::c_int,
pub fast_call_var: u32,
pub try_catch_offset: u32,
pub current_brk_cont: ::std::os::raw::c_int,
pub last_brk_cont: ::std::os::raw::c_int,
pub brk_cont_array: *mut zend_brk_cont_element,
pub labels: *mut HashTable,
}
#[test]
fn bindgen_test_layout__zend_oparray_context() {
const UNINIT: ::std::mem::MaybeUninit<_zend_oparray_context> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_oparray_context>(),
48usize,
concat!("Size of: ", stringify!(_zend_oparray_context))
);
assert_eq!(
::std::mem::align_of::<_zend_oparray_context>(),
8usize,
concat!("Alignment of ", stringify!(_zend_oparray_context))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).opcodes_size) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_oparray_context),
"::",
stringify!(opcodes_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).vars_size) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_oparray_context),
"::",
stringify!(vars_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).literals_size) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_oparray_context),
"::",
stringify!(literals_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fast_call_var) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_zend_oparray_context),
"::",
stringify!(fast_call_var)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).try_catch_offset) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_oparray_context),
"::",
stringify!(try_catch_offset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).current_brk_cont) as usize - ptr as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(_zend_oparray_context),
"::",
stringify!(current_brk_cont)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).last_brk_cont) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_oparray_context),
"::",
stringify!(last_brk_cont)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).brk_cont_array) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_oparray_context),
"::",
stringify!(brk_cont_array)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).labels) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_oparray_context),
"::",
stringify!(labels)
)
);
}
impl Default for _zend_oparray_context {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_oparray_context = _zend_oparray_context;
extern "C" {
pub fn zend_visibility_string(fn_flags: u32) -> *mut ::std::os::raw::c_char;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_property_info {
pub offset: u32,
pub flags: u32,
pub name: *mut zend_string,
pub doc_comment: *mut zend_string,
pub attributes: *mut HashTable,
pub ce: *mut zend_class_entry,
pub type_: zend_type,
}
#[test]
fn bindgen_test_layout__zend_property_info() {
const UNINIT: ::std::mem::MaybeUninit<_zend_property_info> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_property_info>(),
56usize,
concat!("Size of: ", stringify!(_zend_property_info))
);
assert_eq!(
::std::mem::align_of::<_zend_property_info>(),
8usize,
concat!("Alignment of ", stringify!(_zend_property_info))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).offset) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_property_info),
"::",
stringify!(offset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_property_info),
"::",
stringify!(flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_property_info),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).doc_comment) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_property_info),
"::",
stringify!(doc_comment)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).attributes) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_property_info),
"::",
stringify!(attributes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ce) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_property_info),
"::",
stringify!(ce)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_property_info),
"::",
stringify!(type_)
)
);
}
impl Default for _zend_property_info {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_property_info = _zend_property_info;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_class_constant {
pub value: zval,
pub doc_comment: *mut zend_string,
pub attributes: *mut HashTable,
pub ce: *mut zend_class_entry,
}
#[test]
fn bindgen_test_layout__zend_class_constant() {
const UNINIT: ::std::mem::MaybeUninit<_zend_class_constant> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_class_constant>(),
40usize,
concat!("Size of: ", stringify!(_zend_class_constant))
);
assert_eq!(
::std::mem::align_of::<_zend_class_constant>(),
8usize,
concat!("Alignment of ", stringify!(_zend_class_constant))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_constant),
"::",
stringify!(value)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).doc_comment) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_constant),
"::",
stringify!(doc_comment)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).attributes) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_constant),
"::",
stringify!(attributes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ce) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_class_constant),
"::",
stringify!(ce)
)
);
}
impl Default for _zend_class_constant {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_class_constant = _zend_class_constant;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_internal_arg_info {
pub name: *const ::std::os::raw::c_char,
pub type_: zend_type,
pub default_value: *const ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout__zend_internal_arg_info() {
const UNINIT: ::std::mem::MaybeUninit<_zend_internal_arg_info> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_internal_arg_info>(),
32usize,
concat!("Size of: ", stringify!(_zend_internal_arg_info))
);
assert_eq!(
::std::mem::align_of::<_zend_internal_arg_info>(),
8usize,
concat!("Alignment of ", stringify!(_zend_internal_arg_info))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_arg_info),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_arg_info),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).default_value) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_arg_info),
"::",
stringify!(default_value)
)
);
}
impl Default for _zend_internal_arg_info {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_internal_arg_info = _zend_internal_arg_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_arg_info {
pub name: *mut zend_string,
pub type_: zend_type,
pub default_value: *mut zend_string,
}
#[test]
fn bindgen_test_layout__zend_arg_info() {
const UNINIT: ::std::mem::MaybeUninit<_zend_arg_info> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_arg_info>(),
32usize,
concat!("Size of: ", stringify!(_zend_arg_info))
);
assert_eq!(
::std::mem::align_of::<_zend_arg_info>(),
8usize,
concat!("Alignment of ", stringify!(_zend_arg_info))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_arg_info),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_arg_info),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).default_value) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_arg_info),
"::",
stringify!(default_value)
)
);
}
impl Default for _zend_arg_info {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_arg_info = _zend_arg_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_internal_function_info {
pub required_num_args: zend_uintptr_t,
pub type_: zend_type,
pub default_value: *const ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout__zend_internal_function_info() {
const UNINIT: ::std::mem::MaybeUninit<_zend_internal_function_info> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_internal_function_info>(),
32usize,
concat!("Size of: ", stringify!(_zend_internal_function_info))
);
assert_eq!(
::std::mem::align_of::<_zend_internal_function_info>(),
8usize,
concat!("Alignment of ", stringify!(_zend_internal_function_info))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).required_num_args) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function_info),
"::",
stringify!(required_num_args)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function_info),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).default_value) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function_info),
"::",
stringify!(default_value)
)
);
}
impl Default for _zend_internal_function_info {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_internal_function_info = _zend_internal_function_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_op_array {
pub type_: zend_uchar,
pub arg_flags: [zend_uchar; 3usize],
pub fn_flags: u32,
pub function_name: *mut zend_string,
pub scope: *mut zend_class_entry,
pub prototype: *mut zend_function,
pub num_args: u32,
pub required_num_args: u32,
pub arg_info: *mut zend_arg_info,
pub attributes: *mut HashTable,
pub cache_size: ::std::os::raw::c_int,
pub last_var: ::std::os::raw::c_int,
pub T: u32,
pub last: u32,
pub opcodes: *mut zend_op,
pub run_time_cache__ptr: *mut *mut *mut ::std::os::raw::c_void,
pub static_variables_ptr__ptr: *mut *mut HashTable,
pub static_variables: *mut HashTable,
pub vars: *mut *mut zend_string,
pub refcount: *mut u32,
pub last_live_range: ::std::os::raw::c_int,
pub last_try_catch: ::std::os::raw::c_int,
pub live_range: *mut zend_live_range,
pub try_catch_array: *mut zend_try_catch_element,
pub filename: *mut zend_string,
pub line_start: u32,
pub line_end: u32,
pub doc_comment: *mut zend_string,
pub last_literal: ::std::os::raw::c_int,
pub num_dynamic_func_defs: u32,
pub literals: *mut zval,
pub dynamic_func_defs: *mut *mut zend_op_array,
pub reserved: [*mut ::std::os::raw::c_void; 6usize],
}
#[test]
fn bindgen_test_layout__zend_op_array() {
const UNINIT: ::std::mem::MaybeUninit<_zend_op_array> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_op_array>(),
240usize,
concat!("Size of: ", stringify!(_zend_op_array))
);
assert_eq!(
::std::mem::align_of::<_zend_op_array>(),
8usize,
concat!("Alignment of ", stringify!(_zend_op_array))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).arg_flags) as usize - ptr as usize },
1usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(arg_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fn_flags) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(fn_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).function_name) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(function_name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).scope) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(scope)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).prototype) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(prototype)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_args) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(num_args)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).required_num_args) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(required_num_args)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).arg_info) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(arg_info)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).attributes) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(attributes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).cache_size) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(cache_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).last_var) as usize - ptr as usize },
60usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(last_var)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).T) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(T)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).last) as usize - ptr as usize },
68usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(last)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).opcodes) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(opcodes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).run_time_cache__ptr) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(run_time_cache__ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).static_variables_ptr__ptr) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(static_variables_ptr__ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).static_variables) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(static_variables)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).vars) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(vars)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).refcount) as usize - ptr as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(refcount)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).last_live_range) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(last_live_range)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).last_try_catch) as usize - ptr as usize },
124usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(last_try_catch)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).live_range) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(live_range)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).try_catch_array) as usize - ptr as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(try_catch_array)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).filename) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(filename)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).line_start) as usize - ptr as usize },
152usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(line_start)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).line_end) as usize - ptr as usize },
156usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(line_end)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).doc_comment) as usize - ptr as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(doc_comment)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).last_literal) as usize - ptr as usize },
168usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(last_literal)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_dynamic_func_defs) as usize - ptr as usize },
172usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(num_dynamic_func_defs)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).literals) as usize - ptr as usize },
176usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(literals)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dynamic_func_defs) as usize - ptr as usize },
184usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(dynamic_func_defs)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize },
192usize,
concat!(
"Offset of field: ",
stringify!(_zend_op_array),
"::",
stringify!(reserved)
)
);
}
impl Default for _zend_op_array {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zif_handler = ::std::option::Option<
unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval),
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_internal_function {
pub type_: zend_uchar,
pub arg_flags: [zend_uchar; 3usize],
pub fn_flags: u32,
pub function_name: *mut zend_string,
pub scope: *mut zend_class_entry,
pub prototype: *mut zend_function,
pub num_args: u32,
pub required_num_args: u32,
pub arg_info: *mut zend_internal_arg_info,
pub attributes: *mut HashTable,
pub handler: zif_handler,
pub module: *mut _zend_module_entry,
pub reserved: [*mut ::std::os::raw::c_void; 6usize],
}
#[test]
fn bindgen_test_layout__zend_internal_function() {
const UNINIT: ::std::mem::MaybeUninit<_zend_internal_function> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_internal_function>(),
120usize,
concat!("Size of: ", stringify!(_zend_internal_function))
);
assert_eq!(
::std::mem::align_of::<_zend_internal_function>(),
8usize,
concat!("Alignment of ", stringify!(_zend_internal_function))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).arg_flags) as usize - ptr as usize },
1usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(arg_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fn_flags) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(fn_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).function_name) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(function_name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).scope) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(scope)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).prototype) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(prototype)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_args) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(num_args)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).required_num_args) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(required_num_args)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).arg_info) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(arg_info)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).attributes) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(attributes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handler) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(handler)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).module) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(module)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_zend_internal_function),
"::",
stringify!(reserved)
)
);
}
impl Default for _zend_internal_function {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_internal_function = _zend_internal_function;
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_function {
pub type_: zend_uchar,
pub quick_arg_flags: u32,
pub common: _zend_function__bindgen_ty_1,
pub op_array: zend_op_array,
pub internal_function: zend_internal_function,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_function__bindgen_ty_1 {
pub type_: zend_uchar,
pub arg_flags: [zend_uchar; 3usize],
pub fn_flags: u32,
pub function_name: *mut zend_string,
pub scope: *mut zend_class_entry,
pub prototype: *mut zend_function,
pub num_args: u32,
pub required_num_args: u32,
pub arg_info: *mut zend_arg_info,
pub attributes: *mut HashTable,
}
#[test]
fn bindgen_test_layout__zend_function__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_zend_function__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_function__bindgen_ty_1>(),
56usize,
concat!("Size of: ", stringify!(_zend_function__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<_zend_function__bindgen_ty_1>(),
8usize,
concat!("Alignment of ", stringify!(_zend_function__bindgen_ty_1))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_function__bindgen_ty_1),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).arg_flags) as usize - ptr as usize },
1usize,
concat!(
"Offset of field: ",
stringify!(_zend_function__bindgen_ty_1),
"::",
stringify!(arg_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fn_flags) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_function__bindgen_ty_1),
"::",
stringify!(fn_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).function_name) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_function__bindgen_ty_1),
"::",
stringify!(function_name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).scope) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_function__bindgen_ty_1),
"::",
stringify!(scope)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).prototype) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_function__bindgen_ty_1),
"::",
stringify!(prototype)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_args) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_function__bindgen_ty_1),
"::",
stringify!(num_args)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).required_num_args) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(_zend_function__bindgen_ty_1),
"::",
stringify!(required_num_args)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).arg_info) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_function__bindgen_ty_1),
"::",
stringify!(arg_info)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).attributes) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_function__bindgen_ty_1),
"::",
stringify!(attributes)
)
);
}
impl Default for _zend_function__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout__zend_function() {
const UNINIT: ::std::mem::MaybeUninit<_zend_function> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_function>(),
240usize,
concat!("Size of: ", stringify!(_zend_function))
);
assert_eq!(
::std::mem::align_of::<_zend_function>(),
8usize,
concat!("Alignment of ", stringify!(_zend_function))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_function),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).quick_arg_flags) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_function),
"::",
stringify!(quick_arg_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).common) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_function),
"::",
stringify!(common)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).op_array) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_function),
"::",
stringify!(op_array)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).internal_function) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_function),
"::",
stringify!(internal_function)
)
);
}
impl Default for _zend_function {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_execute_data {
pub opline: *const zend_op,
pub call: *mut zend_execute_data,
pub return_value: *mut zval,
pub func: *mut zend_function,
pub This: zval,
pub prev_execute_data: *mut zend_execute_data,
pub symbol_table: *mut zend_array,
pub run_time_cache: *mut *mut ::std::os::raw::c_void,
pub extra_named_params: *mut zend_array,
}
#[test]
fn bindgen_test_layout__zend_execute_data() {
const UNINIT: ::std::mem::MaybeUninit<_zend_execute_data> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_execute_data>(),
80usize,
concat!("Size of: ", stringify!(_zend_execute_data))
);
assert_eq!(
::std::mem::align_of::<_zend_execute_data>(),
8usize,
concat!("Alignment of ", stringify!(_zend_execute_data))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).opline) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_execute_data),
"::",
stringify!(opline)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).call) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_execute_data),
"::",
stringify!(call)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).return_value) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_execute_data),
"::",
stringify!(return_value)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).func) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_execute_data),
"::",
stringify!(func)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).This) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_execute_data),
"::",
stringify!(This)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).prev_execute_data) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_execute_data),
"::",
stringify!(prev_execute_data)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).symbol_table) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_execute_data),
"::",
stringify!(symbol_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).run_time_cache) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_execute_data),
"::",
stringify!(run_time_cache)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).extra_named_params) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_zend_execute_data),
"::",
stringify!(extra_named_params)
)
);
}
impl Default for _zend_execute_data {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type __jmp_buf = [::std::os::raw::c_long; 8usize];
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct __jmp_buf_tag {
pub __jmpbuf: __jmp_buf,
pub __mask_was_saved: ::std::os::raw::c_int,
pub __saved_mask: __sigset_t,
}
#[test]
fn bindgen_test_layout___jmp_buf_tag() {
const UNINIT: ::std::mem::MaybeUninit<__jmp_buf_tag> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<__jmp_buf_tag>(),
200usize,
concat!("Size of: ", stringify!(__jmp_buf_tag))
);
assert_eq!(
::std::mem::align_of::<__jmp_buf_tag>(),
8usize,
concat!("Alignment of ", stringify!(__jmp_buf_tag))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__jmpbuf) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__jmp_buf_tag),
"::",
stringify!(__jmpbuf)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__mask_was_saved) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(__jmp_buf_tag),
"::",
stringify!(__mask_was_saved)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__saved_mask) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(__jmp_buf_tag),
"::",
stringify!(__saved_mask)
)
);
}
pub type jmp_buf = [__jmp_buf_tag; 1usize];
pub type zend_compiler_globals = _zend_compiler_globals;
pub type zend_executor_globals = _zend_executor_globals;
pub type zend_php_scanner_globals = _zend_php_scanner_globals;
pub type zend_ini_scanner_globals = _zend_ini_scanner_globals;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_compiler_globals {
pub loop_var_stack: zend_stack,
pub active_class_entry: *mut zend_class_entry,
pub compiled_filename: *mut zend_string,
pub zend_lineno: ::std::os::raw::c_int,
pub active_op_array: *mut zend_op_array,
pub function_table: *mut HashTable,
pub class_table: *mut HashTable,
pub auto_globals: *mut HashTable,
pub parse_error: zend_uchar,
pub in_compilation: bool,
pub short_tags: bool,
pub unclean_shutdown: bool,
pub ini_parser_unbuffered_errors: bool,
pub open_files: zend_llist,
pub ini_parser_param: *mut _zend_ini_parser_param,
pub skip_shebang: bool,
pub increment_lineno: bool,
pub variable_width_locale: bool,
pub ascii_compatible_locale: bool,
pub doc_comment: *mut zend_string,
pub extra_fn_flags: u32,
pub compiler_options: u32,
pub context: zend_oparray_context,
pub file_context: zend_file_context,
pub arena: *mut zend_arena,
pub interned_strings: HashTable,
pub script_encoding_list: *mut *const zend_encoding,
pub script_encoding_list_size: usize,
pub multibyte: bool,
pub detect_unicode: bool,
pub encoding_declared: bool,
pub ast: *mut zend_ast,
pub ast_arena: *mut zend_arena,
pub delayed_oplines_stack: zend_stack,
pub memoized_exprs: *mut HashTable,
pub memoize_mode: ::std::os::raw::c_int,
pub map_ptr_real_base: *mut ::std::os::raw::c_void,
pub map_ptr_base: *mut ::std::os::raw::c_void,
pub map_ptr_size: usize,
pub map_ptr_last: usize,
pub delayed_variance_obligations: *mut HashTable,
pub delayed_autoloads: *mut HashTable,
pub unlinked_uses: *mut HashTable,
pub current_linking_class: *mut zend_class_entry,
pub rtd_key_counter: u32,
pub short_circuiting_opnums: zend_stack,
}
#[test]
fn bindgen_test_layout__zend_compiler_globals() {
const UNINIT: ::std::mem::MaybeUninit<_zend_compiler_globals> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_compiler_globals>(),
568usize,
concat!("Size of: ", stringify!(_zend_compiler_globals))
);
assert_eq!(
::std::mem::align_of::<_zend_compiler_globals>(),
8usize,
concat!("Alignment of ", stringify!(_zend_compiler_globals))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).loop_var_stack) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(loop_var_stack)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).active_class_entry) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(active_class_entry)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).compiled_filename) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(compiled_filename)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zend_lineno) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(zend_lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).active_op_array) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(active_op_array)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).function_table) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(function_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).class_table) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(class_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).auto_globals) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(auto_globals)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).parse_error) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(parse_error)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).in_compilation) as usize - ptr as usize },
81usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(in_compilation)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).short_tags) as usize - ptr as usize },
82usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(short_tags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).unclean_shutdown) as usize - ptr as usize },
83usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(unclean_shutdown)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).ini_parser_unbuffered_errors) as usize - ptr as usize
},
84usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(ini_parser_unbuffered_errors)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).open_files) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(open_files)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ini_parser_param) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(ini_parser_param)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).skip_shebang) as usize - ptr as usize },
152usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(skip_shebang)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).increment_lineno) as usize - ptr as usize },
153usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(increment_lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).variable_width_locale) as usize - ptr as usize },
154usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(variable_width_locale)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ascii_compatible_locale) as usize - ptr as usize },
155usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(ascii_compatible_locale)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).doc_comment) as usize - ptr as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(doc_comment)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).extra_fn_flags) as usize - ptr as usize },
168usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(extra_fn_flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).compiler_options) as usize - ptr as usize },
172usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(compiler_options)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).context) as usize - ptr as usize },
176usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(context)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).file_context) as usize - ptr as usize },
224usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(file_context)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).arena) as usize - ptr as usize },
328usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(arena)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).interned_strings) as usize - ptr as usize },
336usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(interned_strings)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).script_encoding_list) as usize - ptr as usize },
392usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(script_encoding_list)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).script_encoding_list_size) as usize - ptr as usize },
400usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(script_encoding_list_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).multibyte) as usize - ptr as usize },
408usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(multibyte)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).detect_unicode) as usize - ptr as usize },
409usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(detect_unicode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).encoding_declared) as usize - ptr as usize },
410usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(encoding_declared)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ast) as usize - ptr as usize },
416usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(ast)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ast_arena) as usize - ptr as usize },
424usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(ast_arena)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).delayed_oplines_stack) as usize - ptr as usize },
432usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(delayed_oplines_stack)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).memoized_exprs) as usize - ptr as usize },
456usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(memoized_exprs)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).memoize_mode) as usize - ptr as usize },
464usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(memoize_mode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).map_ptr_real_base) as usize - ptr as usize },
472usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(map_ptr_real_base)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).map_ptr_base) as usize - ptr as usize },
480usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(map_ptr_base)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).map_ptr_size) as usize - ptr as usize },
488usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(map_ptr_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).map_ptr_last) as usize - ptr as usize },
496usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(map_ptr_last)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).delayed_variance_obligations) as usize - ptr as usize
},
504usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(delayed_variance_obligations)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).delayed_autoloads) as usize - ptr as usize },
512usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(delayed_autoloads)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).unlinked_uses) as usize - ptr as usize },
520usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(unlinked_uses)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).current_linking_class) as usize - ptr as usize },
528usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(current_linking_class)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).rtd_key_counter) as usize - ptr as usize },
536usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(rtd_key_counter)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).short_circuiting_opnums) as usize - ptr as usize },
544usize,
concat!(
"Offset of field: ",
stringify!(_zend_compiler_globals),
"::",
stringify!(short_circuiting_opnums)
)
);
}
impl Default for _zend_compiler_globals {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub static mut compiler_globals: _zend_compiler_globals;
}
extern "C" {
pub fn zendparse() -> ::std::os::raw::c_int;
}
extern "C" {
pub static mut executor_globals: zend_executor_globals;
}
extern "C" {
pub static mut language_scanner_globals: zend_php_scanner_globals;
}
extern "C" {
pub static mut ini_scanner_globals: zend_ini_scanner_globals;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_stack {
pub size: ::std::os::raw::c_int,
pub top: ::std::os::raw::c_int,
pub max: ::std::os::raw::c_int,
pub elements: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout__zend_stack() {
const UNINIT: ::std::mem::MaybeUninit<_zend_stack> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_stack>(),
24usize,
concat!("Size of: ", stringify!(_zend_stack))
);
assert_eq!(
::std::mem::align_of::<_zend_stack>(),
8usize,
concat!("Alignment of ", stringify!(_zend_stack))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_stack),
"::",
stringify!(size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_stack),
"::",
stringify!(top)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).max) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_stack),
"::",
stringify!(max)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).elements) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_stack),
"::",
stringify!(elements)
)
);
}
impl Default for _zend_stack {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_stack = _zend_stack;
extern "C" {
pub fn zend_stack_init(stack: *mut zend_stack, size: ::std::os::raw::c_int);
}
extern "C" {
pub fn zend_stack_push(
stack: *mut zend_stack,
element: *const ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_stack_top(stack: *const zend_stack) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_stack_del_top(stack: *mut zend_stack);
}
extern "C" {
pub fn zend_stack_int_top(stack: *const zend_stack) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_stack_is_empty(stack: *const zend_stack) -> bool;
}
extern "C" {
pub fn zend_stack_destroy(stack: *mut zend_stack);
}
extern "C" {
pub fn zend_stack_base(stack: *const zend_stack) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_stack_count(stack: *const zend_stack) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_stack_apply(
stack: *mut zend_stack,
type_: ::std::os::raw::c_int,
apply_function: ::std::option::Option<
unsafe extern "C" fn(element: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
>,
);
}
extern "C" {
pub fn zend_stack_apply_with_argument(
stack: *mut zend_stack,
type_: ::std::os::raw::c_int,
apply_function: ::std::option::Option<
unsafe extern "C" fn(
element: *mut ::std::os::raw::c_void,
arg: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
arg: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn zend_stack_clean(
stack: *mut zend_stack,
func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
free_elements: bool,
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ptr_stack {
pub top: ::std::os::raw::c_int,
pub max: ::std::os::raw::c_int,
pub elements: *mut *mut ::std::os::raw::c_void,
pub top_element: *mut *mut ::std::os::raw::c_void,
pub persistent: bool,
}
#[test]
fn bindgen_test_layout__zend_ptr_stack() {
const UNINIT: ::std::mem::MaybeUninit<_zend_ptr_stack> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_ptr_stack>(),
32usize,
concat!("Size of: ", stringify!(_zend_ptr_stack))
);
assert_eq!(
::std::mem::align_of::<_zend_ptr_stack>(),
8usize,
concat!("Alignment of ", stringify!(_zend_ptr_stack))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_ptr_stack),
"::",
stringify!(top)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).max) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_ptr_stack),
"::",
stringify!(max)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).elements) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_ptr_stack),
"::",
stringify!(elements)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).top_element) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_ptr_stack),
"::",
stringify!(top_element)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).persistent) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_ptr_stack),
"::",
stringify!(persistent)
)
);
}
impl Default for _zend_ptr_stack {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_ptr_stack = _zend_ptr_stack;
extern "C" {
pub fn zend_ptr_stack_init(stack: *mut zend_ptr_stack);
}
extern "C" {
pub fn zend_ptr_stack_init_ex(stack: *mut zend_ptr_stack, persistent: bool);
}
extern "C" {
pub fn zend_ptr_stack_n_push(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
}
extern "C" {
pub fn zend_ptr_stack_n_pop(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
}
extern "C" {
pub fn zend_ptr_stack_destroy(stack: *mut zend_ptr_stack);
}
extern "C" {
pub fn zend_ptr_stack_apply(
stack: *mut zend_ptr_stack,
func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
);
}
extern "C" {
pub fn zend_ptr_stack_reverse_apply(
stack: *mut zend_ptr_stack,
func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
);
}
extern "C" {
pub fn zend_ptr_stack_clean(
stack: *mut zend_ptr_stack,
func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
free_elements: bool,
);
}
extern "C" {
pub fn zend_ptr_stack_num_elements(stack: *mut zend_ptr_stack) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_object_std_init(object: *mut zend_object, ce: *mut zend_class_entry);
}
extern "C" {
pub fn zend_objects_new(ce: *mut zend_class_entry) -> *mut zend_object;
}
extern "C" {
pub fn zend_objects_clone_members(new_object: *mut zend_object, old_object: *mut zend_object);
}
extern "C" {
pub fn zend_object_std_dtor(object: *mut zend_object);
}
extern "C" {
pub fn zend_objects_destroy_object(object: *mut zend_object);
}
extern "C" {
pub fn zend_objects_clone_obj(object: *mut zend_object) -> *mut zend_object;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_objects_store {
pub object_buckets: *mut *mut zend_object,
pub top: u32,
pub size: u32,
pub free_list_head: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_objects_store() {
const UNINIT: ::std::mem::MaybeUninit<_zend_objects_store> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_objects_store>(),
24usize,
concat!("Size of: ", stringify!(_zend_objects_store))
);
assert_eq!(
::std::mem::align_of::<_zend_objects_store>(),
8usize,
concat!("Alignment of ", stringify!(_zend_objects_store))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).object_buckets) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_objects_store),
"::",
stringify!(object_buckets)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_objects_store),
"::",
stringify!(top)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_zend_objects_store),
"::",
stringify!(size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).free_list_head) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_objects_store),
"::",
stringify!(free_list_head)
)
);
}
impl Default for _zend_objects_store {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_objects_store = _zend_objects_store;
extern "C" {
pub fn zend_objects_store_init(objects: *mut zend_objects_store, init_size: u32);
}
extern "C" {
pub fn zend_objects_store_call_destructors(objects: *mut zend_objects_store);
}
extern "C" {
pub fn zend_objects_store_mark_destructed(objects: *mut zend_objects_store);
}
extern "C" {
pub fn zend_objects_store_free_object_storage(
objects: *mut zend_objects_store,
fast_shutdown: bool,
);
}
extern "C" {
pub fn zend_objects_store_destroy(objects: *mut zend_objects_store);
}
extern "C" {
pub fn zend_objects_store_put(object: *mut zend_object);
}
extern "C" {
pub fn zend_objects_store_del(object: *mut zend_object);
}
extern "C" {
pub fn zend_init_fpu();
}
extern "C" {
pub fn zend_shutdown_fpu();
}
extern "C" {
pub fn zend_ensure_fpu_mode();
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_encoding {
_unused: [u8; 0],
}
pub type zend_encoding = _zend_encoding;
pub type zend_encoding_filter = ::std::option::Option<
unsafe extern "C" fn(
str_: *mut *mut ::std::os::raw::c_uchar,
str_length: *mut usize,
buf: *const ::std::os::raw::c_uchar,
length: usize,
) -> usize,
>;
pub type zend_encoding_fetcher = ::std::option::Option<
unsafe extern "C" fn(encoding_name: *const ::std::os::raw::c_char) -> *const zend_encoding,
>;
pub type zend_encoding_name_getter = ::std::option::Option<
unsafe extern "C" fn(encoding: *const zend_encoding) -> *const ::std::os::raw::c_char,
>;
pub type zend_encoding_lexer_compatibility_checker =
::std::option::Option<unsafe extern "C" fn(encoding: *const zend_encoding) -> bool>;
pub type zend_encoding_detector = ::std::option::Option<
unsafe extern "C" fn(
string: *const ::std::os::raw::c_uchar,
length: usize,
list: *mut *const zend_encoding,
list_size: usize,
) -> *const zend_encoding,
>;
pub type zend_encoding_converter = ::std::option::Option<
unsafe extern "C" fn(
to: *mut *mut ::std::os::raw::c_uchar,
to_length: *mut usize,
from: *const ::std::os::raw::c_uchar,
from_length: usize,
encoding_to: *const zend_encoding,
encoding_from: *const zend_encoding,
) -> usize,
>;
pub type zend_encoding_list_parser = ::std::option::Option<
unsafe extern "C" fn(
encoding_list: *const ::std::os::raw::c_char,
encoding_list_len: usize,
return_list: *mut *mut *const zend_encoding,
return_size: *mut usize,
persistent: bool,
) -> zend_result,
>;
pub type zend_encoding_internal_encoding_getter =
::std::option::Option<unsafe extern "C" fn() -> *const zend_encoding>;
pub type zend_encoding_internal_encoding_setter =
::std::option::Option<unsafe extern "C" fn(encoding: *const zend_encoding) -> zend_result>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_multibyte_functions {
pub provider_name: *const ::std::os::raw::c_char,
pub encoding_fetcher: zend_encoding_fetcher,
pub encoding_name_getter: zend_encoding_name_getter,
pub lexer_compatibility_checker: zend_encoding_lexer_compatibility_checker,
pub encoding_detector: zend_encoding_detector,
pub encoding_converter: zend_encoding_converter,
pub encoding_list_parser: zend_encoding_list_parser,
pub internal_encoding_getter: zend_encoding_internal_encoding_getter,
pub internal_encoding_setter: zend_encoding_internal_encoding_setter,
}
#[test]
fn bindgen_test_layout__zend_multibyte_functions() {
const UNINIT: ::std::mem::MaybeUninit<_zend_multibyte_functions> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_multibyte_functions>(),
72usize,
concat!("Size of: ", stringify!(_zend_multibyte_functions))
);
assert_eq!(
::std::mem::align_of::<_zend_multibyte_functions>(),
8usize,
concat!("Alignment of ", stringify!(_zend_multibyte_functions))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).provider_name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_multibyte_functions),
"::",
stringify!(provider_name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).encoding_fetcher) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_multibyte_functions),
"::",
stringify!(encoding_fetcher)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).encoding_name_getter) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_multibyte_functions),
"::",
stringify!(encoding_name_getter)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lexer_compatibility_checker) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_multibyte_functions),
"::",
stringify!(lexer_compatibility_checker)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).encoding_detector) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_multibyte_functions),
"::",
stringify!(encoding_detector)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).encoding_converter) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_multibyte_functions),
"::",
stringify!(encoding_converter)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).encoding_list_parser) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_multibyte_functions),
"::",
stringify!(encoding_list_parser)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).internal_encoding_getter) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_multibyte_functions),
"::",
stringify!(internal_encoding_getter)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).internal_encoding_setter) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_multibyte_functions),
"::",
stringify!(internal_encoding_setter)
)
);
}
impl Default for _zend_multibyte_functions {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_multibyte_functions = _zend_multibyte_functions;
extern "C" {
pub static mut zend_multibyte_encoding_utf32be: *const zend_encoding;
}
extern "C" {
pub static mut zend_multibyte_encoding_utf32le: *const zend_encoding;
}
extern "C" {
pub static mut zend_multibyte_encoding_utf16be: *const zend_encoding;
}
extern "C" {
pub static mut zend_multibyte_encoding_utf16le: *const zend_encoding;
}
extern "C" {
pub static mut zend_multibyte_encoding_utf8: *const zend_encoding;
}
extern "C" {
pub fn zend_multibyte_set_functions(functions: *const zend_multibyte_functions) -> zend_result;
}
extern "C" {
pub fn zend_multibyte_restore_functions();
}
extern "C" {
pub fn zend_multibyte_get_functions() -> *const zend_multibyte_functions;
}
extern "C" {
pub fn zend_multibyte_fetch_encoding(
name: *const ::std::os::raw::c_char,
) -> *const zend_encoding;
}
extern "C" {
pub fn zend_multibyte_get_encoding_name(
encoding: *const zend_encoding,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_multibyte_check_lexer_compatibility(
encoding: *const zend_encoding,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_multibyte_encoding_detector(
string: *const ::std::os::raw::c_uchar,
length: usize,
list: *mut *const zend_encoding,
list_size: usize,
) -> *const zend_encoding;
}
extern "C" {
pub fn zend_multibyte_encoding_converter(
to: *mut *mut ::std::os::raw::c_uchar,
to_length: *mut usize,
from: *const ::std::os::raw::c_uchar,
from_length: usize,
encoding_to: *const zend_encoding,
encoding_from: *const zend_encoding,
) -> usize;
}
extern "C" {
pub fn zend_multibyte_parse_encoding_list(
encoding_list: *const ::std::os::raw::c_char,
encoding_list_len: usize,
return_list: *mut *mut *const zend_encoding,
return_size: *mut usize,
persistent: bool,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_multibyte_get_internal_encoding() -> *const zend_encoding;
}
extern "C" {
pub fn zend_multibyte_get_script_encoding() -> *const zend_encoding;
}
extern "C" {
pub fn zend_multibyte_set_script_encoding(
encoding_list: *mut *const zend_encoding,
encoding_list_size: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_multibyte_set_internal_encoding(
encoding: *const zend_encoding,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_multibyte_set_script_encoding_by_string(
new_value: *const ::std::os::raw::c_char,
new_value_length: usize,
) -> zend_result;
}
pub type zend_arena = _zend_arena;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_arena {
pub ptr: *mut ::std::os::raw::c_char,
pub end: *mut ::std::os::raw::c_char,
pub prev: *mut zend_arena,
}
#[test]
fn bindgen_test_layout__zend_arena() {
const UNINIT: ::std::mem::MaybeUninit<_zend_arena> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_arena>(),
24usize,
concat!("Size of: ", stringify!(_zend_arena))
);
assert_eq!(
::std::mem::align_of::<_zend_arena>(),
8usize,
concat!("Alignment of ", stringify!(_zend_arena))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_arena),
"::",
stringify!(ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_arena),
"::",
stringify!(end)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).prev) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_arena),
"::",
stringify!(prev)
)
);
}
impl Default for _zend_arena {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_vm_stack = *mut _zend_vm_stack;
pub type zend_ini_entry = _zend_ini_entry;
pub type zend_fiber_context = _zend_fiber_context;
pub type zend_fiber = _zend_fiber;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_executor_globals {
pub uninitialized_zval: zval,
pub error_zval: zval,
pub symtable_cache: [*mut zend_array; 32usize],
pub symtable_cache_limit: *mut *mut zend_array,
pub symtable_cache_ptr: *mut *mut zend_array,
pub symbol_table: zend_array,
pub included_files: HashTable,
pub bailout: *mut jmp_buf,
pub error_reporting: ::std::os::raw::c_int,
pub exit_status: ::std::os::raw::c_int,
pub function_table: *mut HashTable,
pub class_table: *mut HashTable,
pub zend_constants: *mut HashTable,
pub vm_stack_top: *mut zval,
pub vm_stack_end: *mut zval,
pub vm_stack: zend_vm_stack,
pub vm_stack_page_size: usize,
pub current_execute_data: *mut _zend_execute_data,
pub fake_scope: *mut zend_class_entry,
pub jit_trace_num: u32,
pub precision: zend_long,
pub ticks_count: ::std::os::raw::c_int,
pub persistent_constants_count: u32,
pub persistent_functions_count: u32,
pub persistent_classes_count: u32,
pub in_autoload: *mut HashTable,
pub full_tables_cleanup: bool,
pub no_extensions: bool,
pub vm_interrupt: bool,
pub timed_out: bool,
pub hard_timeout: zend_long,
pub regular_list: HashTable,
pub persistent_list: HashTable,
pub user_error_handler_error_reporting: ::std::os::raw::c_int,
pub user_error_handler: zval,
pub user_exception_handler: zval,
pub user_error_handlers_error_reporting: zend_stack,
pub user_error_handlers: zend_stack,
pub user_exception_handlers: zend_stack,
pub error_handling: zend_error_handling_t,
pub exception_class: *mut zend_class_entry,
pub timeout_seconds: zend_long,
pub capture_warnings_during_sccp: ::std::os::raw::c_int,
pub ini_directives: *mut HashTable,
pub modified_ini_directives: *mut HashTable,
pub error_reporting_ini_entry: *mut zend_ini_entry,
pub objects_store: zend_objects_store,
pub exception: *mut zend_object,
pub prev_exception: *mut zend_object,
pub opline_before_exception: *const zend_op,
pub exception_op: [zend_op; 3usize],
pub current_module: *mut _zend_module_entry,
pub active: bool,
pub flags: zend_uchar,
pub assertions: zend_long,
pub ht_iterators_count: u32,
pub ht_iterators_used: u32,
pub ht_iterators: *mut HashTableIterator,
pub ht_iterators_slots: [HashTableIterator; 16usize],
pub saved_fpu_cw_ptr: *mut ::std::os::raw::c_void,
pub trampoline: zend_function,
pub call_trampoline_op: zend_op,
pub weakrefs: HashTable,
pub exception_ignore_args: bool,
pub exception_string_param_max_len: zend_long,
pub get_gc_buffer: zend_get_gc_buffer,
pub main_fiber_context: *mut zend_fiber_context,
pub current_fiber_context: *mut zend_fiber_context,
pub active_fiber: *mut zend_fiber,
pub fiber_stack_size: zend_long,
pub record_errors: bool,
pub num_errors: u32,
pub errors: *mut *mut zend_error_info,
pub reserved: [*mut ::std::os::raw::c_void; 6usize],
}
#[test]
fn bindgen_test_layout__zend_executor_globals() {
const UNINIT: ::std::mem::MaybeUninit<_zend_executor_globals> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_executor_globals>(),
1752usize,
concat!("Size of: ", stringify!(_zend_executor_globals))
);
assert_eq!(
::std::mem::align_of::<_zend_executor_globals>(),
8usize,
concat!("Alignment of ", stringify!(_zend_executor_globals))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).uninitialized_zval) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(uninitialized_zval)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).error_zval) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(error_zval)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).symtable_cache) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(symtable_cache)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).symtable_cache_limit) as usize - ptr as usize },
288usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(symtable_cache_limit)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).symtable_cache_ptr) as usize - ptr as usize },
296usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(symtable_cache_ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).symbol_table) as usize - ptr as usize },
304usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(symbol_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).included_files) as usize - ptr as usize },
360usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(included_files)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).bailout) as usize - ptr as usize },
416usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(bailout)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).error_reporting) as usize - ptr as usize },
424usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(error_reporting)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).exit_status) as usize - ptr as usize },
428usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(exit_status)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).function_table) as usize - ptr as usize },
432usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(function_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).class_table) as usize - ptr as usize },
440usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(class_table)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zend_constants) as usize - ptr as usize },
448usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(zend_constants)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).vm_stack_top) as usize - ptr as usize },
456usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(vm_stack_top)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).vm_stack_end) as usize - ptr as usize },
464usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(vm_stack_end)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).vm_stack) as usize - ptr as usize },
472usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(vm_stack)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).vm_stack_page_size) as usize - ptr as usize },
480usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(vm_stack_page_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).current_execute_data) as usize - ptr as usize },
488usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(current_execute_data)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fake_scope) as usize - ptr as usize },
496usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(fake_scope)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).jit_trace_num) as usize - ptr as usize },
504usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(jit_trace_num)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).precision) as usize - ptr as usize },
512usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(precision)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ticks_count) as usize - ptr as usize },
520usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(ticks_count)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).persistent_constants_count) as usize - ptr as usize },
524usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(persistent_constants_count)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).persistent_functions_count) as usize - ptr as usize },
528usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(persistent_functions_count)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).persistent_classes_count) as usize - ptr as usize },
532usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(persistent_classes_count)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).in_autoload) as usize - ptr as usize },
536usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(in_autoload)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).full_tables_cleanup) as usize - ptr as usize },
544usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(full_tables_cleanup)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).no_extensions) as usize - ptr as usize },
545usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(no_extensions)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).vm_interrupt) as usize - ptr as usize },
546usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(vm_interrupt)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).timed_out) as usize - ptr as usize },
547usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(timed_out)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).hard_timeout) as usize - ptr as usize },
552usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(hard_timeout)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).regular_list) as usize - ptr as usize },
560usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(regular_list)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).persistent_list) as usize - ptr as usize },
616usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(persistent_list)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).user_error_handler_error_reporting) as usize - ptr as usize
},
672usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(user_error_handler_error_reporting)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).user_error_handler) as usize - ptr as usize },
680usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(user_error_handler)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).user_exception_handler) as usize - ptr as usize },
696usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(user_exception_handler)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).user_error_handlers_error_reporting) as usize - ptr as usize
},
712usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(user_error_handlers_error_reporting)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).user_error_handlers) as usize - ptr as usize },
736usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(user_error_handlers)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).user_exception_handlers) as usize - ptr as usize },
760usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(user_exception_handlers)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).error_handling) as usize - ptr as usize },
784usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(error_handling)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).exception_class) as usize - ptr as usize },
792usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(exception_class)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).timeout_seconds) as usize - ptr as usize },
800usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(timeout_seconds)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).capture_warnings_during_sccp) as usize - ptr as usize
},
808usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(capture_warnings_during_sccp)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ini_directives) as usize - ptr as usize },
816usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(ini_directives)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).modified_ini_directives) as usize - ptr as usize },
824usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(modified_ini_directives)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).error_reporting_ini_entry) as usize - ptr as usize },
832usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(error_reporting_ini_entry)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).objects_store) as usize - ptr as usize },
840usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(objects_store)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).exception) as usize - ptr as usize },
864usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(exception)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).prev_exception) as usize - ptr as usize },
872usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(prev_exception)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).opline_before_exception) as usize - ptr as usize },
880usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(opline_before_exception)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).exception_op) as usize - ptr as usize },
888usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(exception_op)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).current_module) as usize - ptr as usize },
984usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(current_module)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).active) as usize - ptr as usize },
992usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(active)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
993usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).assertions) as usize - ptr as usize },
1000usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(assertions)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ht_iterators_count) as usize - ptr as usize },
1008usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(ht_iterators_count)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ht_iterators_used) as usize - ptr as usize },
1012usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(ht_iterators_used)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ht_iterators) as usize - ptr as usize },
1016usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(ht_iterators)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ht_iterators_slots) as usize - ptr as usize },
1024usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(ht_iterators_slots)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).saved_fpu_cw_ptr) as usize - ptr as usize },
1280usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(saved_fpu_cw_ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).trampoline) as usize - ptr as usize },
1288usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(trampoline)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).call_trampoline_op) as usize - ptr as usize },
1528usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(call_trampoline_op)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).weakrefs) as usize - ptr as usize },
1560usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(weakrefs)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).exception_ignore_args) as usize - ptr as usize },
1616usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(exception_ignore_args)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).exception_string_param_max_len) as usize - ptr as usize
},
1624usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(exception_string_param_max_len)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_gc_buffer) as usize - ptr as usize },
1632usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(get_gc_buffer)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).main_fiber_context) as usize - ptr as usize },
1656usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(main_fiber_context)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).current_fiber_context) as usize - ptr as usize },
1664usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(current_fiber_context)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).active_fiber) as usize - ptr as usize },
1672usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(active_fiber)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fiber_stack_size) as usize - ptr as usize },
1680usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(fiber_stack_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).record_errors) as usize - ptr as usize },
1688usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(record_errors)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_errors) as usize - ptr as usize },
1692usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(num_errors)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).errors) as usize - ptr as usize },
1696usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(errors)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize },
1704usize,
concat!(
"Offset of field: ",
stringify!(_zend_executor_globals),
"::",
stringify!(reserved)
)
);
}
impl Default for _zend_executor_globals {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ini_scanner_globals {
pub yy_in: *mut zend_file_handle,
pub yy_out: *mut zend_file_handle,
pub yy_leng: ::std::os::raw::c_uint,
pub yy_start: *mut ::std::os::raw::c_uchar,
pub yy_text: *mut ::std::os::raw::c_uchar,
pub yy_cursor: *mut ::std::os::raw::c_uchar,
pub yy_marker: *mut ::std::os::raw::c_uchar,
pub yy_limit: *mut ::std::os::raw::c_uchar,
pub yy_state: ::std::os::raw::c_int,
pub state_stack: zend_stack,
pub filename: *mut zend_string,
pub lineno: ::std::os::raw::c_int,
pub scanner_mode: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_ini_scanner_globals() {
const UNINIT: ::std::mem::MaybeUninit<_zend_ini_scanner_globals> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_ini_scanner_globals>(),
112usize,
concat!("Size of: ", stringify!(_zend_ini_scanner_globals))
);
assert_eq!(
::std::mem::align_of::<_zend_ini_scanner_globals>(),
8usize,
concat!("Alignment of ", stringify!(_zend_ini_scanner_globals))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_in) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(yy_in)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_out) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(yy_out)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_leng) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(yy_leng)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_start) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(yy_start)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_text) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(yy_text)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_cursor) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(yy_cursor)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_marker) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(yy_marker)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_limit) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(yy_limit)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_state) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(yy_state)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).state_stack) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(state_stack)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).filename) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(filename)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lineno) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).scanner_mode) as usize - ptr as usize },
108usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_scanner_globals),
"::",
stringify!(scanner_mode)
)
);
}
impl Default for _zend_ini_scanner_globals {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub const zend_php_scanner_event_ON_TOKEN: zend_php_scanner_event = 0;
pub const zend_php_scanner_event_ON_FEEDBACK: zend_php_scanner_event = 1;
pub const zend_php_scanner_event_ON_STOP: zend_php_scanner_event = 2;
pub type zend_php_scanner_event = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_php_scanner_globals {
pub yy_in: *mut zend_file_handle,
pub yy_out: *mut zend_file_handle,
pub yy_leng: ::std::os::raw::c_uint,
pub yy_start: *mut ::std::os::raw::c_uchar,
pub yy_text: *mut ::std::os::raw::c_uchar,
pub yy_cursor: *mut ::std::os::raw::c_uchar,
pub yy_marker: *mut ::std::os::raw::c_uchar,
pub yy_limit: *mut ::std::os::raw::c_uchar,
pub yy_state: ::std::os::raw::c_int,
pub state_stack: zend_stack,
pub heredoc_label_stack: zend_ptr_stack,
pub nest_location_stack: zend_stack,
pub heredoc_scan_ahead: bool,
pub heredoc_indentation: ::std::os::raw::c_int,
pub heredoc_indentation_uses_spaces: bool,
pub script_org: *mut ::std::os::raw::c_uchar,
pub script_org_size: usize,
pub script_filtered: *mut ::std::os::raw::c_uchar,
pub script_filtered_size: usize,
pub input_filter: zend_encoding_filter,
pub output_filter: zend_encoding_filter,
pub script_encoding: *const zend_encoding,
pub scanned_string_len: ::std::os::raw::c_int,
pub on_event: ::std::option::Option<
unsafe extern "C" fn(
event: zend_php_scanner_event,
token: ::std::os::raw::c_int,
line: ::std::os::raw::c_int,
text: *const ::std::os::raw::c_char,
length: usize,
context: *mut ::std::os::raw::c_void,
),
>,
pub on_event_context: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout__zend_php_scanner_globals() {
const UNINIT: ::std::mem::MaybeUninit<_zend_php_scanner_globals> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_php_scanner_globals>(),
248usize,
concat!("Size of: ", stringify!(_zend_php_scanner_globals))
);
assert_eq!(
::std::mem::align_of::<_zend_php_scanner_globals>(),
8usize,
concat!("Alignment of ", stringify!(_zend_php_scanner_globals))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_in) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(yy_in)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_out) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(yy_out)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_leng) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(yy_leng)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_start) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(yy_start)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_text) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(yy_text)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_cursor) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(yy_cursor)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_marker) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(yy_marker)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_limit) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(yy_limit)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).yy_state) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(yy_state)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).state_stack) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(state_stack)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).heredoc_label_stack) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(heredoc_label_stack)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nest_location_stack) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(nest_location_stack)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).heredoc_scan_ahead) as usize - ptr as usize },
152usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(heredoc_scan_ahead)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).heredoc_indentation) as usize - ptr as usize },
156usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(heredoc_indentation)
)
);
assert_eq!(
unsafe {
::std::ptr::addr_of!((*ptr).heredoc_indentation_uses_spaces) as usize - ptr as usize
},
160usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(heredoc_indentation_uses_spaces)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).script_org) as usize - ptr as usize },
168usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(script_org)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).script_org_size) as usize - ptr as usize },
176usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(script_org_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).script_filtered) as usize - ptr as usize },
184usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(script_filtered)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).script_filtered_size) as usize - ptr as usize },
192usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(script_filtered_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).input_filter) as usize - ptr as usize },
200usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(input_filter)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).output_filter) as usize - ptr as usize },
208usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(output_filter)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).script_encoding) as usize - ptr as usize },
216usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(script_encoding)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).scanned_string_len) as usize - ptr as usize },
224usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(scanned_string_len)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).on_event) as usize - ptr as usize },
232usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(on_event)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).on_event_context) as usize - ptr as usize },
240usize,
concat!(
"Offset of field: ",
stringify!(_zend_php_scanner_globals),
"::",
stringify!(on_event_context)
)
);
}
impl Default for _zend_php_scanner_globals {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub fn init_compiler();
}
extern "C" {
pub fn shutdown_compiler();
}
extern "C" {
pub fn zend_init_compiler_data_structures();
}
extern "C" {
pub fn zend_oparray_context_begin(prev_context: *mut zend_oparray_context);
}
extern "C" {
pub fn zend_oparray_context_end(prev_context: *mut zend_oparray_context);
}
extern "C" {
pub fn zend_file_context_begin(prev_context: *mut zend_file_context);
}
extern "C" {
pub fn zend_file_context_end(prev_context: *mut zend_file_context);
}
extern "C" {
pub static mut zend_compile_file: ::std::option::Option<
unsafe extern "C" fn(
file_handle: *mut zend_file_handle,
type_: ::std::os::raw::c_int,
) -> *mut zend_op_array,
>;
}
extern "C" {
pub static mut zend_compile_string: ::std::option::Option<
unsafe extern "C" fn(
source_string: *mut zend_string,
filename: *const ::std::os::raw::c_char,
) -> *mut zend_op_array,
>;
}
extern "C" {
pub fn lex_scan(
zendlval: *mut zval,
elem: *mut zend_parser_stack_elem,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn startup_scanner();
}
extern "C" {
pub fn shutdown_scanner();
}
extern "C" {
pub fn zend_set_compiled_filename(new_compiled_filename: *mut zend_string) -> *mut zend_string;
}
extern "C" {
pub fn zend_restore_compiled_filename(original_compiled_filename: *mut zend_string);
}
extern "C" {
pub fn zend_get_compiled_filename() -> *mut zend_string;
}
extern "C" {
pub fn zend_get_compiled_lineno() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_get_scanned_file_offset() -> usize;
}
extern "C" {
pub fn zend_get_compiled_variable_name(
op_array: *const zend_op_array,
var: u32,
) -> *mut zend_string;
}
pub type unary_op_type =
::std::option::Option<unsafe extern "C" fn(arg1: *mut zval, arg2: *mut zval) -> zend_result>;
pub type binary_op_type = ::std::option::Option<
unsafe extern "C" fn(arg1: *mut zval, arg2: *mut zval, arg3: *mut zval) -> zend_result,
>;
extern "C" {
pub fn get_unary_op(opcode: ::std::os::raw::c_int) -> unary_op_type;
}
extern "C" {
pub fn get_binary_op(opcode: ::std::os::raw::c_int) -> binary_op_type;
}
extern "C" {
pub fn zend_stop_lexing();
}
extern "C" {
pub fn zend_emit_final_return(return_one: bool);
}
extern "C" {
pub fn zend_ast_append_str(left: *mut zend_ast, right: *mut zend_ast) -> *mut zend_ast;
}
extern "C" {
pub fn zend_negate_num_string(ast: *mut zend_ast) -> *mut zend_ast;
}
extern "C" {
pub fn zend_add_class_modifier(flags: u32, new_flag: u32) -> u32;
}
extern "C" {
pub fn zend_add_member_modifier(flags: u32, new_flag: u32) -> u32;
}
extern "C" {
pub fn zend_handle_encoding_declaration(ast: *mut zend_ast) -> bool;
}
extern "C" {
pub fn zend_bind_class_in_slot(
class_table_slot: *mut zval,
lcname: *mut zval,
lc_parent_name: *mut zend_string,
) -> *mut zend_class_entry;
}
extern "C" {
pub fn do_bind_function(func: *mut zend_function, lcname: *mut zval) -> zend_result;
}
extern "C" {
pub fn do_bind_class(lcname: *mut zval, lc_parent_name: *mut zend_string) -> zend_result;
}
extern "C" {
pub fn zend_build_delayed_early_binding_list(op_array: *const zend_op_array) -> u32;
}
extern "C" {
pub fn zend_do_delayed_early_binding(
op_array: *mut zend_op_array,
first_early_binding_opline: u32,
);
}
extern "C" {
pub fn zend_resolve_goto_label(op_array: *mut zend_op_array, opline: *mut zend_op);
}
extern "C" {
pub fn function_add_ref(function: *mut zend_function);
}
extern "C" {
pub fn zend_init_static_variables_map_ptr(op_array: *mut zend_op_array);
}
extern "C" {
pub fn zval_make_interned_string(zv: *mut zval) -> *mut zend_string;
}
extern "C" {
pub fn compile_file(
file_handle: *mut zend_file_handle,
type_: ::std::os::raw::c_int,
) -> *mut zend_op_array;
}
extern "C" {
pub fn compile_string(
source_string: *mut zend_string,
filename: *const ::std::os::raw::c_char,
) -> *mut zend_op_array;
}
extern "C" {
pub fn compile_filename(
type_: ::std::os::raw::c_int,
filename: *mut zend_string,
) -> *mut zend_op_array;
}
extern "C" {
pub fn zend_compile_string_to_ast(
code: *mut zend_string,
ast_arena: *mut *mut _zend_arena,
filename: *mut zend_string,
) -> *mut zend_ast;
}
extern "C" {
pub fn zend_execute_scripts(
type_: ::std::os::raw::c_int,
retval: *mut zval,
file_count: ::std::os::raw::c_int,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn open_file_for_scanning(file_handle: *mut zend_file_handle) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn init_op_array(
op_array: *mut zend_op_array,
type_: zend_uchar,
initial_ops_size: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn destroy_op_array(op_array: *mut zend_op_array);
}
extern "C" {
pub fn zend_destroy_static_vars(op_array: *mut zend_op_array);
}
extern "C" {
pub fn zend_cleanup_mutable_class_data(ce: *mut zend_class_entry);
}
extern "C" {
pub fn zend_cleanup_internal_class_data(ce: *mut zend_class_entry);
}
extern "C" {
pub fn zend_type_release(type_: zend_type, persistent: bool);
}
extern "C" {
pub fn zend_create_member_string(
class_name: *mut zend_string,
member_name: *mut zend_string,
) -> *mut zend_string;
}
extern "C" {
pub fn zend_user_exception_handler();
}
extern "C" {
pub fn zend_free_internal_arg_info(function: *mut zend_internal_function);
}
extern "C" {
pub fn destroy_zend_function(function: *mut zend_function);
}
extern "C" {
pub fn zend_function_dtor(zv: *mut zval);
}
extern "C" {
pub fn destroy_zend_class(zv: *mut zval);
}
extern "C" {
pub fn zend_class_add_ref(zv: *mut zval);
}
extern "C" {
pub fn zend_mangle_property_name(
src1: *const ::std::os::raw::c_char,
src1_length: usize,
src2: *const ::std::os::raw::c_char,
src2_length: usize,
internal: bool,
) -> *mut zend_string;
}
extern "C" {
pub fn zend_unmangle_property_name_ex(
name: *const zend_string,
class_name: *mut *const ::std::os::raw::c_char,
prop_name: *mut *const ::std::os::raw::c_char,
prop_len: *mut usize,
) -> zend_result;
}
pub type zend_needs_live_range_cb = ::std::option::Option<
unsafe extern "C" fn(op_array: *mut zend_op_array, opline: *mut zend_op) -> bool,
>;
extern "C" {
pub fn zend_recalc_live_ranges(
op_array: *mut zend_op_array,
needs_live_range: zend_needs_live_range_cb,
);
}
extern "C" {
pub fn pass_two(op_array: *mut zend_op_array);
}
extern "C" {
pub fn zend_is_compiling() -> bool;
}
extern "C" {
pub fn zend_make_compiled_string_description(
name: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_initialize_class_data(ce: *mut zend_class_entry, nullify_handlers: bool);
}
extern "C" {
pub fn zend_get_class_fetch_type(name: *mut zend_string) -> u32;
}
extern "C" {
pub fn zend_get_call_op(init_op: *const zend_op, fbc: *mut zend_function) -> zend_uchar;
}
extern "C" {
pub fn zend_is_smart_branch(opline: *const zend_op) -> bool;
}
pub type zend_auto_global_callback =
::std::option::Option<unsafe extern "C" fn(name: *mut zend_string) -> bool>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_auto_global {
pub name: *mut zend_string,
pub auto_global_callback: zend_auto_global_callback,
pub jit: bool,
pub armed: bool,
}
#[test]
fn bindgen_test_layout__zend_auto_global() {
const UNINIT: ::std::mem::MaybeUninit<_zend_auto_global> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_auto_global>(),
24usize,
concat!("Size of: ", stringify!(_zend_auto_global))
);
assert_eq!(
::std::mem::align_of::<_zend_auto_global>(),
8usize,
concat!("Alignment of ", stringify!(_zend_auto_global))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_auto_global),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).auto_global_callback) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_auto_global),
"::",
stringify!(auto_global_callback)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).jit) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_auto_global),
"::",
stringify!(jit)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).armed) as usize - ptr as usize },
17usize,
concat!(
"Offset of field: ",
stringify!(_zend_auto_global),
"::",
stringify!(armed)
)
);
}
impl Default for _zend_auto_global {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_auto_global = _zend_auto_global;
extern "C" {
pub fn zend_register_auto_global(
name: *mut zend_string,
jit: bool,
auto_global_callback: zend_auto_global_callback,
) -> zend_result;
}
extern "C" {
pub fn zend_activate_auto_globals();
}
extern "C" {
pub fn zend_is_auto_global(name: *mut zend_string) -> bool;
}
extern "C" {
pub fn zend_is_auto_global_str(name: *const ::std::os::raw::c_char, len: usize) -> bool;
}
extern "C" {
pub fn zend_dirname(path: *mut ::std::os::raw::c_char, len: usize) -> usize;
}
extern "C" {
pub fn zend_set_function_arg_flags(func: *mut zend_function);
}
extern "C" {
pub fn zendlex(elem: *mut zend_parser_stack_elem) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_assert_valid_class_name(const_name: *const zend_string);
}
extern "C" {
pub fn zend_type_to_string_resolved(
type_: zend_type,
scope: *mut zend_class_entry,
) -> *mut zend_string;
}
extern "C" {
pub fn zend_type_to_string(type_: zend_type) -> *mut zend_string;
}
extern "C" {
pub fn zend_get_opcode_name(opcode: zend_uchar) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_get_opcode_flags(opcode: zend_uchar) -> u32;
}
extern "C" {
pub fn zend_get_opcode_id(name: *const ::std::os::raw::c_char, length: usize) -> zend_uchar;
}
extern "C" {
pub fn zend_is_op_long_compatible(op: *mut zval) -> bool;
}
extern "C" {
pub fn zend_binary_op_produces_error(opcode: u32, op1: *mut zval, op2: *mut zval) -> bool;
}
extern "C" {
pub fn zend_unary_op_produces_error(opcode: u32, op: *mut zval) -> bool;
}
pub type zend_module_entry = _zend_module_entry;
pub type zend_module_dep = _zend_module_dep;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_module_entry {
pub size: ::std::os::raw::c_ushort,
pub zend_api: ::std::os::raw::c_uint,
pub zend_debug: ::std::os::raw::c_uchar,
pub zts: ::std::os::raw::c_uchar,
pub ini_entry: *const _zend_ini_entry,
pub deps: *const _zend_module_dep,
pub name: *const ::std::os::raw::c_char,
pub functions: *const _zend_function_entry,
pub module_startup_func: ::std::option::Option<
unsafe extern "C" fn(
type_: ::std::os::raw::c_int,
module_number: ::std::os::raw::c_int,
) -> zend_result,
>,
pub module_shutdown_func: ::std::option::Option<
unsafe extern "C" fn(
type_: ::std::os::raw::c_int,
module_number: ::std::os::raw::c_int,
) -> zend_result,
>,
pub request_startup_func: ::std::option::Option<
unsafe extern "C" fn(
type_: ::std::os::raw::c_int,
module_number: ::std::os::raw::c_int,
) -> zend_result,
>,
pub request_shutdown_func: ::std::option::Option<
unsafe extern "C" fn(
type_: ::std::os::raw::c_int,
module_number: ::std::os::raw::c_int,
) -> zend_result,
>,
pub info_func: ::std::option::Option<unsafe extern "C" fn(zend_module: *mut zend_module_entry)>,
pub version: *const ::std::os::raw::c_char,
pub globals_size: usize,
pub globals_ptr: *mut ::std::os::raw::c_void,
pub globals_ctor:
::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
pub globals_dtor:
::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
pub post_deactivate_func: ::std::option::Option<unsafe extern "C" fn() -> zend_result>,
pub module_started: ::std::os::raw::c_int,
pub type_: ::std::os::raw::c_uchar,
pub handle: *mut ::std::os::raw::c_void,
pub module_number: ::std::os::raw::c_int,
pub build_id: *const ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout__zend_module_entry() {
const UNINIT: ::std::mem::MaybeUninit<_zend_module_entry> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_module_entry>(),
168usize,
concat!("Size of: ", stringify!(_zend_module_entry))
);
assert_eq!(
::std::mem::align_of::<_zend_module_entry>(),
8usize,
concat!("Alignment of ", stringify!(_zend_module_entry))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zend_api) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(zend_api)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zend_debug) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(zend_debug)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zts) as usize - ptr as usize },
9usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(zts)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ini_entry) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(ini_entry)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).deps) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(deps)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).functions) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(functions)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).module_startup_func) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(module_startup_func)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).module_shutdown_func) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(module_shutdown_func)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).request_startup_func) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(request_startup_func)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).request_shutdown_func) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(request_shutdown_func)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).info_func) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(info_func)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(version)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).globals_size) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(globals_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).globals_ptr) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(globals_ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).globals_ctor) as usize - ptr as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(globals_ctor)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).globals_dtor) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(globals_dtor)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).post_deactivate_func) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(post_deactivate_func)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).module_started) as usize - ptr as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(module_started)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
140usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handle) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(handle)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).module_number) as usize - ptr as usize },
152usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(module_number)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).build_id) as usize - ptr as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_entry),
"::",
stringify!(build_id)
)
);
}
impl Default for _zend_module_entry {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_module_dep {
pub name: *const ::std::os::raw::c_char,
pub rel: *const ::std::os::raw::c_char,
pub version: *const ::std::os::raw::c_char,
pub type_: ::std::os::raw::c_uchar,
}
#[test]
fn bindgen_test_layout__zend_module_dep() {
const UNINIT: ::std::mem::MaybeUninit<_zend_module_dep> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_module_dep>(),
32usize,
concat!("Size of: ", stringify!(_zend_module_dep))
);
assert_eq!(
::std::mem::align_of::<_zend_module_dep>(),
8usize,
concat!("Alignment of ", stringify!(_zend_module_dep))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_dep),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).rel) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_dep),
"::",
stringify!(rel)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_dep),
"::",
stringify!(version)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_module_dep),
"::",
stringify!(type_)
)
);
}
impl Default for _zend_module_dep {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub static mut module_registry: HashTable;
}
extern "C" {
pub fn module_destructor(module: *mut zend_module_entry);
}
extern "C" {
pub fn module_registry_request_startup(module: *mut zend_module_entry)
-> ::std::os::raw::c_int;
}
extern "C" {
pub fn module_registry_unload_temp(module: *const zend_module_entry) -> ::std::os::raw::c_int;
}
pub type rsrc_dtor_func_t = ::std::option::Option<unsafe extern "C" fn(res: *mut zend_resource)>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_rsrc_list_dtors_entry {
pub list_dtor_ex: rsrc_dtor_func_t,
pub plist_dtor_ex: rsrc_dtor_func_t,
pub type_name: *const ::std::os::raw::c_char,
pub module_number: ::std::os::raw::c_int,
pub resource_id: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_rsrc_list_dtors_entry() {
const UNINIT: ::std::mem::MaybeUninit<_zend_rsrc_list_dtors_entry> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_rsrc_list_dtors_entry>(),
32usize,
concat!("Size of: ", stringify!(_zend_rsrc_list_dtors_entry))
);
assert_eq!(
::std::mem::align_of::<_zend_rsrc_list_dtors_entry>(),
8usize,
concat!("Alignment of ", stringify!(_zend_rsrc_list_dtors_entry))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).list_dtor_ex) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_rsrc_list_dtors_entry),
"::",
stringify!(list_dtor_ex)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).plist_dtor_ex) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_rsrc_list_dtors_entry),
"::",
stringify!(plist_dtor_ex)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_name) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_rsrc_list_dtors_entry),
"::",
stringify!(type_name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).module_number) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_rsrc_list_dtors_entry),
"::",
stringify!(module_number)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).resource_id) as usize - ptr as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(_zend_rsrc_list_dtors_entry),
"::",
stringify!(resource_id)
)
);
}
impl Default for _zend_rsrc_list_dtors_entry {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_rsrc_list_dtors_entry = _zend_rsrc_list_dtors_entry;
extern "C" {
pub fn zend_register_list_destructors_ex(
ld: rsrc_dtor_func_t,
pld: rsrc_dtor_func_t,
type_name: *const ::std::os::raw::c_char,
module_number: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn list_entry_destructor(ptr: *mut zval);
}
extern "C" {
pub fn plist_entry_destructor(ptr: *mut zval);
}
extern "C" {
pub fn zend_clean_module_rsrc_dtors(module_number: ::std::os::raw::c_int);
}
extern "C" {
pub fn zend_init_rsrc_list();
}
extern "C" {
pub fn zend_init_rsrc_plist();
}
extern "C" {
pub fn zend_close_rsrc_list(ht: *mut HashTable);
}
extern "C" {
pub fn zend_destroy_rsrc_list(ht: *mut HashTable);
}
extern "C" {
pub fn zend_init_rsrc_list_dtors();
}
extern "C" {
pub fn zend_destroy_rsrc_list_dtors();
}
extern "C" {
pub fn zend_list_insert(
ptr: *mut ::std::os::raw::c_void,
type_: ::std::os::raw::c_int,
) -> *mut zval;
}
extern "C" {
pub fn zend_list_free(res: *mut zend_resource);
}
extern "C" {
pub fn zend_list_delete(res: *mut zend_resource) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_list_close(res: *mut zend_resource);
}
extern "C" {
pub fn zend_register_resource(
rsrc_pointer: *mut ::std::os::raw::c_void,
rsrc_type: ::std::os::raw::c_int,
) -> *mut zend_resource;
}
extern "C" {
pub fn zend_fetch_resource(
res: *mut zend_resource,
resource_type_name: *const ::std::os::raw::c_char,
resource_type: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_fetch_resource2(
res: *mut zend_resource,
resource_type_name: *const ::std::os::raw::c_char,
resource_type: ::std::os::raw::c_int,
resource_type2: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_fetch_resource_ex(
res: *mut zval,
resource_type_name: *const ::std::os::raw::c_char,
resource_type: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_fetch_resource2_ex(
res: *mut zval,
resource_type_name: *const ::std::os::raw::c_char,
resource_type: ::std::os::raw::c_int,
resource_type2: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_rsrc_list_get_rsrc_type(res: *mut zend_resource) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_fetch_list_dtor_id(
type_name: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_register_persistent_resource(
key: *const ::std::os::raw::c_char,
key_len: usize,
rsrc_pointer: *mut ::std::os::raw::c_void,
rsrc_type: ::std::os::raw::c_int,
) -> *mut zend_resource;
}
extern "C" {
pub fn zend_register_persistent_resource_ex(
key: *mut zend_string,
rsrc_pointer: *mut ::std::os::raw::c_void,
rsrc_type: ::std::os::raw::c_int,
) -> *mut zend_resource;
}
extern "C" {
pub static mut le_index_ptr: ::std::os::raw::c_int;
}
extern "C" {
pub static mut zend_execute_ex:
::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
}
extern "C" {
pub static mut zend_execute_internal: ::std::option::Option<
unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval),
>;
}
extern "C" {
pub static mut zend_autoload: ::std::option::Option<
unsafe extern "C" fn(
name: *mut zend_string,
lc_name: *mut zend_string,
) -> *mut zend_class_entry,
>;
}
extern "C" {
pub fn init_executor();
}
extern "C" {
pub fn shutdown_executor();
}
extern "C" {
pub fn shutdown_destructors();
}
extern "C" {
pub fn zend_shutdown_executor_values(fast_shutdown: bool);
}
extern "C" {
pub fn zend_init_execute_data(
execute_data: *mut zend_execute_data,
op_array: *mut zend_op_array,
return_value: *mut zval,
);
}
extern "C" {
pub fn zend_init_func_execute_data(
execute_data: *mut zend_execute_data,
op_array: *mut zend_op_array,
return_value: *mut zval,
);
}
extern "C" {
pub fn zend_init_code_execute_data(
execute_data: *mut zend_execute_data,
op_array: *mut zend_op_array,
return_value: *mut zval,
);
}
extern "C" {
pub fn zend_execute(op_array: *mut zend_op_array, return_value: *mut zval);
}
extern "C" {
pub fn execute_ex(execute_data: *mut zend_execute_data);
}
extern "C" {
pub fn execute_internal(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zend_is_valid_class_name(name: *mut zend_string) -> bool;
}
extern "C" {
pub fn zend_lookup_class(name: *mut zend_string) -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_lookup_class_ex(
name: *mut zend_string,
lcname: *mut zend_string,
flags: u32,
) -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_get_called_scope(ex: *mut zend_execute_data) -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_get_this_object(ex: *mut zend_execute_data) -> *mut zend_object;
}
extern "C" {
pub fn zend_eval_string(
str_: *const ::std::os::raw::c_char,
retval_ptr: *mut zval,
string_name: *const ::std::os::raw::c_char,
) -> zend_result;
}
extern "C" {
pub fn zend_eval_stringl(
str_: *const ::std::os::raw::c_char,
str_len: usize,
retval_ptr: *mut zval,
string_name: *const ::std::os::raw::c_char,
) -> zend_result;
}
extern "C" {
pub fn zend_eval_string_ex(
str_: *const ::std::os::raw::c_char,
retval_ptr: *mut zval,
string_name: *const ::std::os::raw::c_char,
handle_exceptions: bool,
) -> zend_result;
}
extern "C" {
pub fn zend_eval_stringl_ex(
str_: *const ::std::os::raw::c_char,
str_len: usize,
retval_ptr: *mut zval,
string_name: *const ::std::os::raw::c_char,
handle_exceptions: bool,
) -> zend_result;
}
extern "C" {
pub static zend_pass_function: zend_internal_function;
}
extern "C" {
pub fn zend_missing_arg_error(execute_data: *mut zend_execute_data);
}
extern "C" {
pub fn zend_deprecated_function(fbc: *const zend_function);
}
extern "C" {
pub fn zend_false_to_array_deprecated();
}
extern "C" {
pub fn zend_param_must_be_ref(func: *const zend_function, arg_num: u32);
}
extern "C" {
pub fn zend_use_resource_as_offset(dim: *const zval);
}
extern "C" {
pub fn zend_verify_ref_assignable_zval(
ref_: *mut zend_reference,
zv: *mut zval,
strict: bool,
) -> bool;
}
extern "C" {
pub fn zend_verify_prop_assignable_by_ref(
prop_info: *mut zend_property_info,
orig_val: *mut zval,
strict: bool,
) -> bool;
}
extern "C" {
pub fn zend_throw_ref_type_error_zval(prop: *mut zend_property_info, zv: *mut zval);
}
extern "C" {
pub fn zend_throw_ref_type_error_type(
prop1: *mut zend_property_info,
prop2: *mut zend_property_info,
zv: *mut zval,
);
}
extern "C" {
pub fn zend_undefined_offset_write(ht: *mut HashTable, lval: zend_long) -> *mut zval;
}
extern "C" {
pub fn zend_undefined_index_write(ht: *mut HashTable, offset: *mut zend_string) -> *mut zval;
}
extern "C" {
pub fn zend_wrong_string_offset_error();
}
extern "C" {
pub fn zend_readonly_property_modification_error(info: *mut zend_property_info);
}
extern "C" {
pub fn zend_verify_scalar_type_hint(
type_mask: u32,
arg: *mut zval,
strict: bool,
is_internal_arg: bool,
) -> bool;
}
extern "C" {
pub fn zend_verify_arg_error(
zf: *const zend_function,
arg_info: *const zend_arg_info,
arg_num: u32,
value: *mut zval,
);
}
extern "C" {
pub fn zend_verify_return_error(zf: *const zend_function, value: *mut zval);
}
extern "C" {
pub fn zend_verify_never_error(zf: *const zend_function);
}
extern "C" {
pub fn zend_verify_ref_array_assignable(ref_: *mut zend_reference) -> bool;
}
extern "C" {
pub fn zend_check_user_type_slow(
type_: *mut zend_type,
arg: *mut zval,
ref_: *mut zend_reference,
cache_slot: *mut *mut ::std::os::raw::c_void,
is_return_type: bool,
) -> bool;
}
extern "C" {
pub fn zend_ref_add_type_source(
source_list: *mut zend_property_info_source_list,
prop: *mut zend_property_info,
);
}
extern "C" {
pub fn zend_ref_del_type_source(
source_list: *mut zend_property_info_source_list,
prop: *mut zend_property_info,
);
}
extern "C" {
pub fn zend_assign_to_typed_ref(
variable_ptr: *mut zval,
value: *mut zval,
value_type: zend_uchar,
strict: bool,
) -> *mut zval;
}
extern "C" {
pub fn zval_update_constant(pp: *mut zval) -> zend_result;
}
extern "C" {
pub fn zval_update_constant_ex(pp: *mut zval, scope: *mut zend_class_entry) -> zend_result;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_vm_stack {
pub top: *mut zval,
pub end: *mut zval,
pub prev: zend_vm_stack,
}
#[test]
fn bindgen_test_layout__zend_vm_stack() {
const UNINIT: ::std::mem::MaybeUninit<_zend_vm_stack> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_vm_stack>(),
24usize,
concat!("Size of: ", stringify!(_zend_vm_stack))
);
assert_eq!(
::std::mem::align_of::<_zend_vm_stack>(),
8usize,
concat!("Alignment of ", stringify!(_zend_vm_stack))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_vm_stack),
"::",
stringify!(top)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_vm_stack),
"::",
stringify!(end)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).prev) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_vm_stack),
"::",
stringify!(prev)
)
);
}
impl Default for _zend_vm_stack {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub fn zend_vm_stack_init();
}
extern "C" {
pub fn zend_vm_stack_init_ex(page_size: usize);
}
extern "C" {
pub fn zend_vm_stack_destroy();
}
extern "C" {
pub fn zend_vm_stack_extend(size: usize) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn zend_vm_stack_copy_call_frame(
call: *mut zend_execute_data,
passed_args: u32,
additional_args: u32,
) -> *mut zend_execute_data;
}
extern "C" {
pub fn zend_free_extra_named_params(extra_named_params: *mut zend_array);
}
extern "C" {
pub fn get_active_class_name(
space: *mut *const ::std::os::raw::c_char,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn get_active_function_name() -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn get_active_function_arg_name(arg_num: u32) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn get_function_arg_name(
func: *const zend_function,
arg_num: u32,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn get_active_function_or_method_name() -> *mut zend_string;
}
extern "C" {
pub fn get_function_or_method_name(func: *const zend_function) -> *mut zend_string;
}
extern "C" {
pub fn zend_get_executed_filename() -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_get_executed_filename_ex() -> *mut zend_string;
}
extern "C" {
pub fn zend_get_executed_lineno() -> u32;
}
extern "C" {
pub fn zend_get_executed_scope() -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_is_executing() -> bool;
}
extern "C" {
pub fn zend_cannot_pass_by_reference(arg_num: u32);
}
extern "C" {
pub fn zend_set_timeout(seconds: zend_long, reset_signals: bool);
}
extern "C" {
pub fn zend_unset_timeout();
}
extern "C" {
pub fn zend_timeout() -> !;
}
extern "C" {
pub fn zend_fetch_class(
class_name: *mut zend_string,
fetch_type: ::std::os::raw::c_int,
) -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_fetch_class_with_scope(
class_name: *mut zend_string,
fetch_type: ::std::os::raw::c_int,
scope: *mut zend_class_entry,
) -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_fetch_class_by_name(
class_name: *mut zend_string,
lcname: *mut zend_string,
fetch_type: ::std::os::raw::c_int,
) -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_fetch_function(name: *mut zend_string) -> *mut zend_function;
}
extern "C" {
pub fn zend_fetch_function_str(
name: *const ::std::os::raw::c_char,
len: usize,
) -> *mut zend_function;
}
extern "C" {
pub fn zend_init_func_run_time_cache(op_array: *mut zend_op_array);
}
extern "C" {
pub fn zend_fetch_dimension_const(
result: *mut zval,
container: *mut zval,
dim: *mut zval,
type_: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_get_compiled_variable_value(
execute_data_ptr: *const zend_execute_data,
var: u32,
) -> *mut zval;
}
extern "C" {
pub fn zend_set_user_opcode_handler(
opcode: zend_uchar,
handler: user_opcode_handler_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_get_user_opcode_handler(opcode: zend_uchar) -> user_opcode_handler_t;
}
extern "C" {
pub fn zend_get_zval_ptr(
opline: *const zend_op,
op_type: ::std::os::raw::c_int,
node: *const znode_op,
execute_data: *const zend_execute_data,
) -> *mut zval;
}
extern "C" {
pub fn zend_clean_and_cache_symbol_table(symbol_table: *mut zend_array);
}
extern "C" {
pub fn zend_free_compiled_variables(execute_data: *mut zend_execute_data);
}
extern "C" {
pub fn zend_cleanup_unfinished_execution(
execute_data: *mut zend_execute_data,
op_num: u32,
catch_op_num: u32,
);
}
extern "C" {
pub fn zend_handle_named_arg(
call_ptr: *mut *mut zend_execute_data,
arg_name: *mut zend_string,
arg_num_ptr: *mut u32,
cache_slot: *mut *mut ::std::os::raw::c_void,
) -> *mut zval;
}
extern "C" {
pub fn zend_handle_undef_args(call: *mut zend_execute_data) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_verify_property_type(
info: *mut zend_property_info,
property: *mut zval,
strict: bool,
) -> bool;
}
extern "C" {
pub fn zend_verify_property_type_error(info: *mut zend_property_info, property: *mut zval);
}
extern "C" {
pub fn zend_match_unhandled_error(value: *mut zval);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_function_entry {
pub fname: *const ::std::os::raw::c_char,
pub handler: zif_handler,
pub arg_info: *const _zend_internal_arg_info,
pub num_args: u32,
pub flags: u32,
}
#[test]
fn bindgen_test_layout__zend_function_entry() {
const UNINIT: ::std::mem::MaybeUninit<_zend_function_entry> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_function_entry>(),
32usize,
concat!("Size of: ", stringify!(_zend_function_entry))
);
assert_eq!(
::std::mem::align_of::<_zend_function_entry>(),
8usize,
concat!("Alignment of ", stringify!(_zend_function_entry))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fname) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_function_entry),
"::",
stringify!(fname)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handler) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_function_entry),
"::",
stringify!(handler)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).arg_info) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_function_entry),
"::",
stringify!(arg_info)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).num_args) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_function_entry),
"::",
stringify!(num_args)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(_zend_function_entry),
"::",
stringify!(flags)
)
);
}
impl Default for _zend_function_entry {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_function_entry = _zend_function_entry;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_fcall_info {
pub size: usize,
pub function_name: zval,
pub retval: *mut zval,
pub params: *mut zval,
pub object: *mut zend_object,
pub param_count: u32,
pub named_params: *mut HashTable,
}
#[test]
fn bindgen_test_layout__zend_fcall_info() {
const UNINIT: ::std::mem::MaybeUninit<_zend_fcall_info> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_fcall_info>(),
64usize,
concat!("Size of: ", stringify!(_zend_fcall_info))
);
assert_eq!(
::std::mem::align_of::<_zend_fcall_info>(),
8usize,
concat!("Alignment of ", stringify!(_zend_fcall_info))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_fcall_info),
"::",
stringify!(size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).function_name) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_fcall_info),
"::",
stringify!(function_name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).retval) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_fcall_info),
"::",
stringify!(retval)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).params) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_fcall_info),
"::",
stringify!(params)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).object) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_fcall_info),
"::",
stringify!(object)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).param_count) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_fcall_info),
"::",
stringify!(param_count)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).named_params) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_fcall_info),
"::",
stringify!(named_params)
)
);
}
impl Default for _zend_fcall_info {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_fcall_info = _zend_fcall_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_fcall_info_cache {
pub function_handler: *mut zend_function,
pub calling_scope: *mut zend_class_entry,
pub called_scope: *mut zend_class_entry,
pub object: *mut zend_object,
}
#[test]
fn bindgen_test_layout__zend_fcall_info_cache() {
const UNINIT: ::std::mem::MaybeUninit<_zend_fcall_info_cache> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_fcall_info_cache>(),
32usize,
concat!("Size of: ", stringify!(_zend_fcall_info_cache))
);
assert_eq!(
::std::mem::align_of::<_zend_fcall_info_cache>(),
8usize,
concat!("Alignment of ", stringify!(_zend_fcall_info_cache))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).function_handler) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_fcall_info_cache),
"::",
stringify!(function_handler)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).calling_scope) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_fcall_info_cache),
"::",
stringify!(calling_scope)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).called_scope) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_fcall_info_cache),
"::",
stringify!(called_scope)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).object) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_fcall_info_cache),
"::",
stringify!(object)
)
);
}
impl Default for _zend_fcall_info_cache {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_fcall_info_cache = _zend_fcall_info_cache;
extern "C" {
pub fn zend_next_free_module() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _zend_get_parameters_array_ex(
param_count: u32,
argument_array: *mut zval,
) -> zend_result;
}
extern "C" {
pub fn zend_copy_parameters_array(param_count: u32, argument_array: *mut zval) -> zend_result;
}
extern "C" {
pub fn zend_parse_parameters(
num_args: u32,
type_spec: *const ::std::os::raw::c_char,
...
) -> zend_result;
}
extern "C" {
pub fn zend_parse_parameters_ex(
flags: ::std::os::raw::c_int,
num_args: u32,
type_spec: *const ::std::os::raw::c_char,
...
) -> zend_result;
}
extern "C" {
pub fn zend_zval_type_name(arg: *const zval) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_zval_get_legacy_type(arg: *const zval) -> *mut zend_string;
}
extern "C" {
pub fn zend_parse_method_parameters(
num_args: u32,
this_ptr: *mut zval,
type_spec: *const ::std::os::raw::c_char,
...
) -> zend_result;
}
extern "C" {
pub fn zend_parse_method_parameters_ex(
flags: ::std::os::raw::c_int,
num_args: u32,
this_ptr: *mut zval,
type_spec: *const ::std::os::raw::c_char,
...
) -> zend_result;
}
extern "C" {
pub fn zend_parse_parameter(
flags: ::std::os::raw::c_int,
arg_num: u32,
arg: *mut zval,
spec: *const ::std::os::raw::c_char,
...
) -> zend_result;
}
extern "C" {
pub fn zend_register_functions(
scope: *mut zend_class_entry,
functions: *const zend_function_entry,
function_table: *mut HashTable,
type_: ::std::os::raw::c_int,
) -> zend_result;
}
extern "C" {
pub fn zend_unregister_functions(
functions: *const zend_function_entry,
count: ::std::os::raw::c_int,
function_table: *mut HashTable,
);
}
extern "C" {
pub fn zend_startup_module(module_entry: *mut zend_module_entry) -> zend_result;
}
extern "C" {
pub fn zend_register_internal_module(
module_entry: *mut zend_module_entry,
) -> *mut zend_module_entry;
}
extern "C" {
pub fn zend_register_module_ex(module: *mut zend_module_entry) -> *mut zend_module_entry;
}
extern "C" {
pub fn zend_startup_module_ex(module: *mut zend_module_entry) -> zend_result;
}
extern "C" {
pub fn zend_startup_modules();
}
extern "C" {
pub fn zend_collect_module_handlers();
}
extern "C" {
pub fn zend_destroy_modules();
}
extern "C" {
pub fn zend_check_magic_method_implementation(
ce: *const zend_class_entry,
fptr: *const zend_function,
lcname: *mut zend_string,
error_type: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_add_magic_method(
ce: *mut zend_class_entry,
fptr: *mut zend_function,
lcname: *mut zend_string,
);
}
extern "C" {
pub fn zend_register_internal_class(
class_entry: *mut zend_class_entry,
) -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_register_internal_class_ex(
class_entry: *mut zend_class_entry,
parent_ce: *mut zend_class_entry,
) -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_register_internal_interface(
orig_class_entry: *mut zend_class_entry,
) -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_class_implements(
class_entry: *mut zend_class_entry,
num_interfaces: ::std::os::raw::c_int,
...
);
}
extern "C" {
pub fn zend_register_class_alias_ex(
name: *const ::std::os::raw::c_char,
name_len: usize,
ce: *mut zend_class_entry,
persistent: bool,
) -> zend_result;
}
extern "C" {
pub fn zend_disable_functions(function_list: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn zend_disable_class(
class_name: *const ::std::os::raw::c_char,
class_name_length: usize,
) -> zend_result;
}
extern "C" {
pub fn zend_wrong_param_count();
}
extern "C" {
pub fn zend_release_fcall_info_cache(fcc: *mut zend_fcall_info_cache);
}
extern "C" {
pub fn zend_get_callable_name_ex(
callable: *mut zval,
object: *mut zend_object,
) -> *mut zend_string;
}
extern "C" {
pub fn zend_get_callable_name(callable: *mut zval) -> *mut zend_string;
}
extern "C" {
pub fn zend_is_callable_at_frame(
callable: *mut zval,
object: *mut zend_object,
frame: *mut zend_execute_data,
check_flags: u32,
fcc: *mut zend_fcall_info_cache,
error: *mut *mut ::std::os::raw::c_char,
) -> bool;
}
extern "C" {
pub fn zend_is_callable_ex(
callable: *mut zval,
object: *mut zend_object,
check_flags: u32,
callable_name: *mut *mut zend_string,
fcc: *mut zend_fcall_info_cache,
error: *mut *mut ::std::os::raw::c_char,
) -> bool;
}
extern "C" {
pub fn zend_is_callable(
callable: *mut zval,
check_flags: u32,
callable_name: *mut *mut zend_string,
) -> bool;
}
extern "C" {
pub fn zend_make_callable(callable: *mut zval, callable_name: *mut *mut zend_string) -> bool;
}
extern "C" {
pub fn zend_get_module_version(
module_name: *const ::std::os::raw::c_char,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_get_module_started(
module_name: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_declare_typed_property(
ce: *mut zend_class_entry,
name: *mut zend_string,
property: *mut zval,
access_type: ::std::os::raw::c_int,
doc_comment: *mut zend_string,
type_: zend_type,
) -> *mut zend_property_info;
}
extern "C" {
pub fn zend_declare_property_ex(
ce: *mut zend_class_entry,
name: *mut zend_string,
property: *mut zval,
access_type: ::std::os::raw::c_int,
doc_comment: *mut zend_string,
);
}
extern "C" {
pub fn zend_declare_property(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
property: *mut zval,
access_type: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_declare_property_null(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
access_type: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_declare_property_bool(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: zend_long,
access_type: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_declare_property_long(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: zend_long,
access_type: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_declare_property_double(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: f64,
access_type: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_declare_property_string(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: *const ::std::os::raw::c_char,
access_type: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_declare_property_stringl(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: *const ::std::os::raw::c_char,
value_len: usize,
access_type: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_declare_class_constant_ex(
ce: *mut zend_class_entry,
name: *mut zend_string,
value: *mut zval,
access_type: ::std::os::raw::c_int,
doc_comment: *mut zend_string,
) -> *mut zend_class_constant;
}
extern "C" {
pub fn zend_declare_class_constant(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: *mut zval,
);
}
extern "C" {
pub fn zend_declare_class_constant_null(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
);
}
extern "C" {
pub fn zend_declare_class_constant_long(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: zend_long,
);
}
extern "C" {
pub fn zend_declare_class_constant_bool(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: bool,
);
}
extern "C" {
pub fn zend_declare_class_constant_double(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: f64,
);
}
extern "C" {
pub fn zend_declare_class_constant_stringl(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: *const ::std::os::raw::c_char,
value_length: usize,
);
}
extern "C" {
pub fn zend_declare_class_constant_string(
ce: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: *const ::std::os::raw::c_char,
);
}
extern "C" {
pub fn zend_update_class_constants(class_type: *mut zend_class_entry) -> zend_result;
}
extern "C" {
pub fn zend_separate_class_constants_table(class_type: *mut zend_class_entry)
-> *mut HashTable;
}
extern "C" {
pub fn zend_update_property_ex(
scope: *mut zend_class_entry,
object: *mut zend_object,
name: *mut zend_string,
value: *mut zval,
);
}
extern "C" {
pub fn zend_update_property(
scope: *mut zend_class_entry,
object: *mut zend_object,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: *mut zval,
);
}
extern "C" {
pub fn zend_update_property_null(
scope: *mut zend_class_entry,
object: *mut zend_object,
name: *const ::std::os::raw::c_char,
name_length: usize,
);
}
extern "C" {
pub fn zend_update_property_bool(
scope: *mut zend_class_entry,
object: *mut zend_object,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: zend_long,
);
}
extern "C" {
pub fn zend_update_property_long(
scope: *mut zend_class_entry,
object: *mut zend_object,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: zend_long,
);
}
extern "C" {
pub fn zend_update_property_double(
scope: *mut zend_class_entry,
object: *mut zend_object,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: f64,
);
}
extern "C" {
pub fn zend_update_property_str(
scope: *mut zend_class_entry,
object: *mut zend_object,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: *mut zend_string,
);
}
extern "C" {
pub fn zend_update_property_string(
scope: *mut zend_class_entry,
object: *mut zend_object,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: *const ::std::os::raw::c_char,
);
}
extern "C" {
pub fn zend_update_property_stringl(
scope: *mut zend_class_entry,
object: *mut zend_object,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: *const ::std::os::raw::c_char,
value_length: usize,
);
}
extern "C" {
pub fn zend_unset_property(
scope: *mut zend_class_entry,
object: *mut zend_object,
name: *const ::std::os::raw::c_char,
name_length: usize,
);
}
extern "C" {
pub fn zend_update_static_property_ex(
scope: *mut zend_class_entry,
name: *mut zend_string,
value: *mut zval,
) -> zend_result;
}
extern "C" {
pub fn zend_update_static_property(
scope: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: *mut zval,
) -> zend_result;
}
extern "C" {
pub fn zend_update_static_property_null(
scope: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
) -> zend_result;
}
extern "C" {
pub fn zend_update_static_property_bool(
scope: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: zend_long,
) -> zend_result;
}
extern "C" {
pub fn zend_update_static_property_long(
scope: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: zend_long,
) -> zend_result;
}
extern "C" {
pub fn zend_update_static_property_double(
scope: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: f64,
) -> zend_result;
}
extern "C" {
pub fn zend_update_static_property_string(
scope: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: *const ::std::os::raw::c_char,
) -> zend_result;
}
extern "C" {
pub fn zend_update_static_property_stringl(
scope: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
value: *const ::std::os::raw::c_char,
value_length: usize,
) -> zend_result;
}
extern "C" {
pub fn zend_read_property_ex(
scope: *mut zend_class_entry,
object: *mut zend_object,
name: *mut zend_string,
silent: bool,
rv: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_read_property(
scope: *mut zend_class_entry,
object: *mut zend_object,
name: *const ::std::os::raw::c_char,
name_length: usize,
silent: bool,
rv: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_read_static_property_ex(
scope: *mut zend_class_entry,
name: *mut zend_string,
silent: bool,
) -> *mut zval;
}
extern "C" {
pub fn zend_read_static_property(
scope: *mut zend_class_entry,
name: *const ::std::os::raw::c_char,
name_length: usize,
silent: bool,
) -> *mut zval;
}
extern "C" {
pub fn zend_get_type_by_const(type_: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn object_init(arg: *mut zval);
}
extern "C" {
pub fn object_init_ex(arg: *mut zval, ce: *mut zend_class_entry) -> zend_result;
}
extern "C" {
pub fn object_and_properties_init(
arg: *mut zval,
ce: *mut zend_class_entry,
properties: *mut HashTable,
) -> zend_result;
}
extern "C" {
pub fn object_properties_init(object: *mut zend_object, class_type: *mut zend_class_entry);
}
extern "C" {
pub fn object_properties_init_ex(object: *mut zend_object, properties: *mut HashTable);
}
extern "C" {
pub fn object_properties_load(object: *mut zend_object, properties: *mut HashTable);
}
extern "C" {
pub fn zend_merge_properties(obj: *mut zval, properties: *mut HashTable);
}
extern "C" {
pub fn add_assoc_long_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
n: zend_long,
);
}
extern "C" {
pub fn add_assoc_null_ex(arg: *mut zval, key: *const ::std::os::raw::c_char, key_len: usize);
}
extern "C" {
pub fn add_assoc_bool_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
b: bool,
);
}
extern "C" {
pub fn add_assoc_resource_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
r: *mut zend_resource,
);
}
extern "C" {
pub fn add_assoc_double_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
d: f64,
);
}
extern "C" {
pub fn add_assoc_str_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
str_: *mut zend_string,
);
}
extern "C" {
pub fn add_assoc_string_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
str_: *const ::std::os::raw::c_char,
);
}
extern "C" {
pub fn add_assoc_stringl_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
str_: *const ::std::os::raw::c_char,
length: usize,
);
}
extern "C" {
pub fn add_assoc_array_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
arr: *mut zend_array,
);
}
extern "C" {
pub fn add_assoc_object_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
obj: *mut zend_object,
);
}
extern "C" {
pub fn add_assoc_reference_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
ref_: *mut zend_reference,
);
}
extern "C" {
pub fn add_assoc_zval_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
value: *mut zval,
);
}
extern "C" {
pub fn add_index_long(arg: *mut zval, index: zend_ulong, n: zend_long);
}
extern "C" {
pub fn add_index_null(arg: *mut zval, index: zend_ulong);
}
extern "C" {
pub fn add_index_bool(arg: *mut zval, index: zend_ulong, b: bool);
}
extern "C" {
pub fn add_index_resource(arg: *mut zval, index: zend_ulong, r: *mut zend_resource);
}
extern "C" {
pub fn add_index_double(arg: *mut zval, index: zend_ulong, d: f64);
}
extern "C" {
pub fn add_index_str(arg: *mut zval, index: zend_ulong, str_: *mut zend_string);
}
extern "C" {
pub fn add_index_string(arg: *mut zval, index: zend_ulong, str_: *const ::std::os::raw::c_char);
}
extern "C" {
pub fn add_index_stringl(
arg: *mut zval,
index: zend_ulong,
str_: *const ::std::os::raw::c_char,
length: usize,
);
}
extern "C" {
pub fn add_index_array(arg: *mut zval, index: zend_ulong, arr: *mut zend_array);
}
extern "C" {
pub fn add_index_object(arg: *mut zval, index: zend_ulong, obj: *mut zend_object);
}
extern "C" {
pub fn add_index_reference(arg: *mut zval, index: zend_ulong, ref_: *mut zend_reference);
}
extern "C" {
pub fn add_next_index_long(arg: *mut zval, n: zend_long) -> zend_result;
}
extern "C" {
pub fn add_next_index_null(arg: *mut zval) -> zend_result;
}
extern "C" {
pub fn add_next_index_bool(arg: *mut zval, b: bool) -> zend_result;
}
extern "C" {
pub fn add_next_index_resource(arg: *mut zval, r: *mut zend_resource) -> zend_result;
}
extern "C" {
pub fn add_next_index_double(arg: *mut zval, d: f64) -> zend_result;
}
extern "C" {
pub fn add_next_index_str(arg: *mut zval, str_: *mut zend_string) -> zend_result;
}
extern "C" {
pub fn add_next_index_string(
arg: *mut zval,
str_: *const ::std::os::raw::c_char,
) -> zend_result;
}
extern "C" {
pub fn add_next_index_stringl(
arg: *mut zval,
str_: *const ::std::os::raw::c_char,
length: usize,
) -> zend_result;
}
extern "C" {
pub fn add_next_index_array(arg: *mut zval, arr: *mut zend_array) -> zend_result;
}
extern "C" {
pub fn add_next_index_object(arg: *mut zval, obj: *mut zend_object) -> zend_result;
}
extern "C" {
pub fn add_next_index_reference(arg: *mut zval, ref_: *mut zend_reference) -> zend_result;
}
extern "C" {
pub fn array_set_zval_key(ht: *mut HashTable, key: *mut zval, value: *mut zval) -> zend_result;
}
extern "C" {
pub fn add_property_long_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
l: zend_long,
);
}
extern "C" {
pub fn add_property_null_ex(arg: *mut zval, key: *const ::std::os::raw::c_char, key_len: usize);
}
extern "C" {
pub fn add_property_bool_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
b: zend_long,
);
}
extern "C" {
pub fn add_property_resource_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
r: *mut zend_resource,
);
}
extern "C" {
pub fn add_property_double_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
d: f64,
);
}
extern "C" {
pub fn add_property_str_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
str_: *mut zend_string,
);
}
extern "C" {
pub fn add_property_string_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
str_: *const ::std::os::raw::c_char,
);
}
extern "C" {
pub fn add_property_stringl_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
str_: *const ::std::os::raw::c_char,
length: usize,
);
}
extern "C" {
pub fn add_property_array_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
arr: *mut zend_array,
);
}
extern "C" {
pub fn add_property_object_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
obj: *mut zend_object,
);
}
extern "C" {
pub fn add_property_reference_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
ref_: *mut zend_reference,
);
}
extern "C" {
pub fn add_property_zval_ex(
arg: *mut zval,
key: *const ::std::os::raw::c_char,
key_len: usize,
value: *mut zval,
);
}
extern "C" {
pub fn _call_user_function_impl(
object: *mut zval,
function_name: *mut zval,
retval_ptr: *mut zval,
param_count: u32,
params: *mut zval,
named_params: *mut HashTable,
) -> zend_result;
}
extern "C" {
pub static empty_fcall_info: zend_fcall_info;
}
extern "C" {
pub static empty_fcall_info_cache: zend_fcall_info_cache;
}
extern "C" {
#[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."]
pub fn zend_fcall_info_init(
callable: *mut zval,
check_flags: u32,
fci: *mut zend_fcall_info,
fcc: *mut zend_fcall_info_cache,
callable_name: *mut *mut zend_string,
error: *mut *mut ::std::os::raw::c_char,
) -> zend_result;
}
extern "C" {
#[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"]
pub fn zend_fcall_info_args_clear(fci: *mut zend_fcall_info, free_mem: bool);
}
extern "C" {
#[doc = " Save current arguments from zend_fcall_info *fci\n params array will be set to NULL"]
pub fn zend_fcall_info_args_save(
fci: *mut zend_fcall_info,
param_count: *mut u32,
params: *mut *mut zval,
);
}
extern "C" {
#[doc = " Free arguments connected with zend_fcall_info *fci and set back saved ones."]
pub fn zend_fcall_info_args_restore(
fci: *mut zend_fcall_info,
param_count: u32,
params: *mut zval,
);
}
extern "C" {
#[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."]
pub fn zend_fcall_info_args(fci: *mut zend_fcall_info, args: *mut zval) -> zend_result;
}
extern "C" {
pub fn zend_fcall_info_args_ex(
fci: *mut zend_fcall_info,
func: *mut zend_function,
args: *mut zval,
) -> zend_result;
}
extern "C" {
#[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."]
pub fn zend_fcall_info_argp(fci: *mut zend_fcall_info, argc: u32, argv: *mut zval);
}
extern "C" {
#[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."]
pub fn zend_fcall_info_argv(fci: *mut zend_fcall_info, argc: u32, argv: *mut va_list);
}
extern "C" {
#[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."]
pub fn zend_fcall_info_argn(fci: *mut zend_fcall_info, argc: u32, ...);
}
extern "C" {
#[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."]
pub fn zend_fcall_info_call(
fci: *mut zend_fcall_info,
fcc: *mut zend_fcall_info_cache,
retval: *mut zval,
args: *mut zval,
) -> zend_result;
}
extern "C" {
pub fn zend_call_function(
fci: *mut zend_fcall_info,
fci_cache: *mut zend_fcall_info_cache,
) -> zend_result;
}
extern "C" {
pub fn zend_call_known_function(
fn_: *mut zend_function,
object: *mut zend_object,
called_scope: *mut zend_class_entry,
retval_ptr: *mut zval,
param_count: u32,
params: *mut zval,
named_params: *mut HashTable,
);
}
extern "C" {
pub fn zend_call_known_instance_method_with_2_params(
fn_: *mut zend_function,
object: *mut zend_object,
retval_ptr: *mut zval,
param1: *mut zval,
param2: *mut zval,
);
}
extern "C" {
pub fn zend_set_hash_symbol(
symbol: *mut zval,
name: *const ::std::os::raw::c_char,
name_length: usize,
is_ref: bool,
num_symbol_tables: ::std::os::raw::c_int,
...
) -> zend_result;
}
extern "C" {
pub fn zend_delete_global_variable(name: *mut zend_string) -> zend_result;
}
extern "C" {
pub fn zend_rebuild_symbol_table() -> *mut zend_array;
}
extern "C" {
pub fn zend_attach_symbol_table(execute_data: *mut zend_execute_data);
}
extern "C" {
pub fn zend_detach_symbol_table(execute_data: *mut zend_execute_data);
}
extern "C" {
pub fn zend_set_local_var(name: *mut zend_string, value: *mut zval, force: bool)
-> zend_result;
}
extern "C" {
pub fn zend_set_local_var_str(
name: *const ::std::os::raw::c_char,
len: usize,
value: *mut zval,
force: bool,
) -> zend_result;
}
extern "C" {
pub fn zend_get_object_type(ce: *const zend_class_entry) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_is_iterable(iterable: *mut zval) -> bool;
}
extern "C" {
pub fn zend_is_countable(countable: *mut zval) -> bool;
}
extern "C" {
pub fn zend_get_default_from_internal_arg_info(
default_value_zval: *mut zval,
arg_info: *mut zend_internal_arg_info,
) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_ex(
ref_: *mut zend_reference,
zv: *mut zval,
strict: bool,
) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref(ref_: *mut zend_reference, zv: *mut zval) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_null(ref_: *mut zend_reference) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_bool(ref_: *mut zend_reference, val: bool) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_long(
ref_: *mut zend_reference,
lval: zend_long,
) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_double(ref_: *mut zend_reference, dval: f64) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_empty_string(ref_: *mut zend_reference) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_str(
ref_: *mut zend_reference,
str_: *mut zend_string,
) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_string(
ref_: *mut zend_reference,
string: *const ::std::os::raw::c_char,
) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_stringl(
ref_: *mut zend_reference,
string: *const ::std::os::raw::c_char,
len: usize,
) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_arr(
ref_: *mut zend_reference,
arr: *mut zend_array,
) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_res(
ref_: *mut zend_reference,
res: *mut zend_resource,
) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_zval(ref_: *mut zend_reference, zv: *mut zval) -> zend_result;
}
extern "C" {
pub fn zend_try_assign_typed_ref_zval_ex(
ref_: *mut zend_reference,
zv: *mut zval,
strict: bool,
) -> zend_result;
}
pub const _zend_expected_type_Z_EXPECTED_LONG: _zend_expected_type = 0;
pub const _zend_expected_type_Z_EXPECTED_LONG_OR_NULL: _zend_expected_type = 1;
pub const _zend_expected_type_Z_EXPECTED_BOOL: _zend_expected_type = 2;
pub const _zend_expected_type_Z_EXPECTED_BOOL_OR_NULL: _zend_expected_type = 3;
pub const _zend_expected_type_Z_EXPECTED_STRING: _zend_expected_type = 4;
pub const _zend_expected_type_Z_EXPECTED_STRING_OR_NULL: _zend_expected_type = 5;
pub const _zend_expected_type_Z_EXPECTED_ARRAY: _zend_expected_type = 6;
pub const _zend_expected_type_Z_EXPECTED_ARRAY_OR_NULL: _zend_expected_type = 7;
pub const _zend_expected_type_Z_EXPECTED_ARRAY_OR_LONG: _zend_expected_type = 8;
pub const _zend_expected_type_Z_EXPECTED_ARRAY_OR_LONG_OR_NULL: _zend_expected_type = 9;
pub const _zend_expected_type_Z_EXPECTED_ITERABLE: _zend_expected_type = 10;
pub const _zend_expected_type_Z_EXPECTED_ITERABLE_OR_NULL: _zend_expected_type = 11;
pub const _zend_expected_type_Z_EXPECTED_FUNC: _zend_expected_type = 12;
pub const _zend_expected_type_Z_EXPECTED_FUNC_OR_NULL: _zend_expected_type = 13;
pub const _zend_expected_type_Z_EXPECTED_RESOURCE: _zend_expected_type = 14;
pub const _zend_expected_type_Z_EXPECTED_RESOURCE_OR_NULL: _zend_expected_type = 15;
pub const _zend_expected_type_Z_EXPECTED_PATH: _zend_expected_type = 16;
pub const _zend_expected_type_Z_EXPECTED_PATH_OR_NULL: _zend_expected_type = 17;
pub const _zend_expected_type_Z_EXPECTED_OBJECT: _zend_expected_type = 18;
pub const _zend_expected_type_Z_EXPECTED_OBJECT_OR_NULL: _zend_expected_type = 19;
pub const _zend_expected_type_Z_EXPECTED_DOUBLE: _zend_expected_type = 20;
pub const _zend_expected_type_Z_EXPECTED_DOUBLE_OR_NULL: _zend_expected_type = 21;
pub const _zend_expected_type_Z_EXPECTED_NUMBER: _zend_expected_type = 22;
pub const _zend_expected_type_Z_EXPECTED_NUMBER_OR_NULL: _zend_expected_type = 23;
pub const _zend_expected_type_Z_EXPECTED_ARRAY_OR_STRING: _zend_expected_type = 24;
pub const _zend_expected_type_Z_EXPECTED_ARRAY_OR_STRING_OR_NULL: _zend_expected_type = 25;
pub const _zend_expected_type_Z_EXPECTED_STRING_OR_LONG: _zend_expected_type = 26;
pub const _zend_expected_type_Z_EXPECTED_STRING_OR_LONG_OR_NULL: _zend_expected_type = 27;
pub const _zend_expected_type_Z_EXPECTED_OBJECT_OR_CLASS_NAME: _zend_expected_type = 28;
pub const _zend_expected_type_Z_EXPECTED_OBJECT_OR_CLASS_NAME_OR_NULL: _zend_expected_type = 29;
pub const _zend_expected_type_Z_EXPECTED_OBJECT_OR_STRING: _zend_expected_type = 30;
pub const _zend_expected_type_Z_EXPECTED_OBJECT_OR_STRING_OR_NULL: _zend_expected_type = 31;
pub const _zend_expected_type_Z_EXPECTED_LAST: _zend_expected_type = 32;
pub type _zend_expected_type = ::std::os::raw::c_uint;
pub use self::_zend_expected_type as zend_expected_type;
extern "C" {
pub fn zend_wrong_parameters_none_error();
}
extern "C" {
pub fn zend_wrong_parameters_count_error(min_num_args: u32, max_num_args: u32);
}
extern "C" {
pub fn zend_wrong_parameter_error(
error_code: ::std::os::raw::c_int,
num: u32,
name: *mut ::std::os::raw::c_char,
expected_type: zend_expected_type,
arg: *mut zval,
);
}
extern "C" {
pub fn zend_wrong_parameter_type_error(
num: u32,
expected_type: zend_expected_type,
arg: *mut zval,
);
}
extern "C" {
pub fn zend_wrong_parameter_class_error(
num: u32,
name: *const ::std::os::raw::c_char,
arg: *mut zval,
);
}
extern "C" {
pub fn zend_wrong_parameter_class_or_null_error(
num: u32,
name: *const ::std::os::raw::c_char,
arg: *mut zval,
);
}
extern "C" {
pub fn zend_wrong_parameter_class_or_long_error(
num: u32,
name: *const ::std::os::raw::c_char,
arg: *mut zval,
);
}
extern "C" {
pub fn zend_wrong_parameter_class_or_long_or_null_error(
num: u32,
name: *const ::std::os::raw::c_char,
arg: *mut zval,
);
}
extern "C" {
pub fn zend_wrong_parameter_class_or_string_error(
num: u32,
name: *const ::std::os::raw::c_char,
arg: *mut zval,
);
}
extern "C" {
pub fn zend_wrong_parameter_class_or_string_or_null_error(
num: u32,
name: *const ::std::os::raw::c_char,
arg: *mut zval,
);
}
extern "C" {
pub fn zend_wrong_callback_error(num: u32, error: *mut ::std::os::raw::c_char);
}
extern "C" {
pub fn zend_wrong_callback_or_null_error(num: u32, error: *mut ::std::os::raw::c_char);
}
extern "C" {
pub fn zend_unexpected_extra_named_error();
}
extern "C" {
pub fn zend_argument_error(
error_ce: *mut zend_class_entry,
arg_num: u32,
format: *const ::std::os::raw::c_char,
...
);
}
extern "C" {
pub fn zend_argument_type_error(arg_num: u32, format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn zend_argument_value_error(arg_num: u32, format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn zend_parse_arg_class(
arg: *mut zval,
pce: *mut *mut zend_class_entry,
num: u32,
check_null: bool,
) -> bool;
}
extern "C" {
pub fn zend_parse_arg_bool_slow(arg: *mut zval, dest: *mut bool, arg_num: u32) -> bool;
}
extern "C" {
pub fn zend_parse_arg_bool_weak(arg: *mut zval, dest: *mut bool, arg_num: u32) -> bool;
}
extern "C" {
pub fn zend_parse_arg_long_slow(arg: *mut zval, dest: *mut zend_long, arg_num: u32) -> bool;
}
extern "C" {
pub fn zend_parse_arg_long_weak(arg: *mut zval, dest: *mut zend_long, arg_num: u32) -> bool;
}
extern "C" {
pub fn zend_parse_arg_double_slow(arg: *mut zval, dest: *mut f64, arg_num: u32) -> bool;
}
extern "C" {
pub fn zend_parse_arg_double_weak(arg: *mut zval, dest: *mut f64, arg_num: u32) -> bool;
}
extern "C" {
pub fn zend_parse_arg_str_slow(
arg: *mut zval,
dest: *mut *mut zend_string,
arg_num: u32,
) -> bool;
}
extern "C" {
pub fn zend_parse_arg_str_weak(
arg: *mut zval,
dest: *mut *mut zend_string,
arg_num: u32,
) -> bool;
}
extern "C" {
pub fn zend_parse_arg_number_slow(arg: *mut zval, dest: *mut *mut zval, arg_num: u32) -> bool;
}
extern "C" {
pub fn zend_parse_arg_str_or_long_slow(
arg: *mut zval,
dest_str: *mut *mut zend_string,
dest_long: *mut zend_long,
arg_num: u32,
) -> bool;
}
extern "C" {
pub fn php_strlcpy(
dst: *mut ::std::os::raw::c_char,
src: *const ::std::os::raw::c_char,
siz: usize,
) -> usize;
}
extern "C" {
pub fn php_strlcat(
dst: *mut ::std::os::raw::c_char,
src: *const ::std::os::raw::c_char,
siz: usize,
) -> usize;
}
extern "C" {
pub fn ap_php_slprintf(
buf: *mut ::std::os::raw::c_char,
len: usize,
format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn ap_php_vslprintf(
buf: *mut ::std::os::raw::c_char,
len: usize,
format: *const ::std::os::raw::c_char,
ap: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn ap_php_snprintf(
arg1: *mut ::std::os::raw::c_char,
arg2: usize,
arg3: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn ap_php_vsnprintf(
arg1: *mut ::std::os::raw::c_char,
arg2: usize,
arg3: *const ::std::os::raw::c_char,
ap: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn ap_php_vasprintf(
buf: *mut *mut ::std::os::raw::c_char,
format: *const ::std::os::raw::c_char,
ap: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn ap_php_asprintf(
buf: *mut *mut ::std::os::raw::c_char,
format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_0cvt(
value: f64,
ndigit: ::std::os::raw::c_int,
dec_point: ::std::os::raw::c_char,
exponent: ::std::os::raw::c_char,
buf: *mut ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn php_conv_fp(
format: ::std::os::raw::c_char,
num: f64,
add_dp: bool,
precision: ::std::os::raw::c_int,
dec_point: ::std::os::raw::c_char,
is_negative: *mut bool,
buf: *mut ::std::os::raw::c_char,
len: *mut usize,
) -> *mut ::std::os::raw::c_char;
}
pub const length_modifier_e_LM_STD: length_modifier_e = 0;
pub const length_modifier_e_LM_INTMAX_T: length_modifier_e = 1;
pub const length_modifier_e_LM_PTRDIFF_T: length_modifier_e = 2;
pub const length_modifier_e_LM_LONG_LONG: length_modifier_e = 3;
pub const length_modifier_e_LM_SIZE_T: length_modifier_e = 4;
pub const length_modifier_e_LM_LONG: length_modifier_e = 5;
pub const length_modifier_e_LM_LONG_DOUBLE: length_modifier_e = 6;
pub type length_modifier_e = ::std::os::raw::c_uint;
extern "C" {
pub fn ap_php_conv_10(
num: i64,
is_unsigned: bool,
is_negative: *mut bool,
buf_end: *mut ::std::os::raw::c_char,
len: *mut usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn ap_php_conv_p2(
num: u64,
nbits: ::std::os::raw::c_int,
format: ::std::os::raw::c_char,
buf_end: *mut ::std::os::raw::c_char,
len: *mut usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn php_printf_to_smart_string(
buf: *mut smart_string,
format: *const ::std::os::raw::c_char,
ap: *mut __va_list_tag,
);
}
extern "C" {
pub fn php_printf_to_smart_str(
buf: *mut smart_str,
format: *const ::std::os::raw::c_char,
ap: *mut __va_list_tag,
);
}
extern "C" {
pub static mut environ: *mut *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn phperror(error: *mut ::std::os::raw::c_char);
}
extern "C" {
pub fn php_write(buf: *mut ::std::os::raw::c_void, size: usize) -> usize;
}
extern "C" {
pub fn php_printf(format: *const ::std::os::raw::c_char, ...) -> usize;
}
extern "C" {
pub fn php_printf_unchecked(format: *const ::std::os::raw::c_char, ...) -> usize;
}
extern "C" {
pub fn php_during_module_startup() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_during_module_shutdown() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_get_module_initialized() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_syslog_str(priority: ::std::os::raw::c_int, message: *const zend_string);
}
extern "C" {
pub fn php_syslog(arg1: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
pub fn php_openlog(
arg1: *const ::std::os::raw::c_char,
arg2: ::std::os::raw::c_int,
arg3: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn php_log_err_with_severity(
log_message: *const ::std::os::raw::c_char,
syslog_type_int: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn Debug(format: *mut ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn cfgparse() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_verror(
docref: *const ::std::os::raw::c_char,
params: *const ::std::os::raw::c_char,
type_: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
args: *mut __va_list_tag,
);
}
extern "C" {
pub fn php_error_docref(
docref: *const ::std::os::raw::c_char,
type_: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
...
);
}
extern "C" {
pub fn php_error_docref1(
docref: *const ::std::os::raw::c_char,
param1: *const ::std::os::raw::c_char,
type_: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
...
);
}
extern "C" {
pub fn php_error_docref2(
docref: *const ::std::os::raw::c_char,
param1: *const ::std::os::raw::c_char,
param2: *const ::std::os::raw::c_char,
type_: ::std::os::raw::c_int,
format: *const ::std::os::raw::c_char,
...
);
}
extern "C" {
pub static mut php_register_internal_extensions_func:
::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
}
extern "C" {
pub fn php_register_internal_extensions() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_register_pre_request_shutdown(
func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
userdata: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn php_com_initialize();
}
extern "C" {
pub fn php_get_current_user() -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn php_get_internal_encoding() -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn php_get_input_encoding() -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn php_get_output_encoding() -> *const ::std::os::raw::c_char;
}
extern "C" {
pub static mut php_internal_encoding_changed: ::std::option::Option<unsafe extern "C" fn()>;
}
pub const _php_output_handler_status_t_PHP_OUTPUT_HANDLER_FAILURE: _php_output_handler_status_t = 0;
pub const _php_output_handler_status_t_PHP_OUTPUT_HANDLER_SUCCESS: _php_output_handler_status_t = 1;
pub const _php_output_handler_status_t_PHP_OUTPUT_HANDLER_NO_DATA: _php_output_handler_status_t = 2;
pub type _php_output_handler_status_t = ::std::os::raw::c_uint;
pub use self::_php_output_handler_status_t as php_output_handler_status_t;
pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_OPAQ: _php_output_handler_hook_t =
0;
pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_FLAGS: _php_output_handler_hook_t =
1;
pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_LEVEL: _php_output_handler_hook_t =
2;
pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_IMMUTABLE: _php_output_handler_hook_t =
3;
pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_DISABLE: _php_output_handler_hook_t =
4;
pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_LAST: _php_output_handler_hook_t = 5;
pub type _php_output_handler_hook_t = ::std::os::raw::c_uint;
pub use self::_php_output_handler_hook_t as php_output_handler_hook_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_output_buffer {
pub data: *mut ::std::os::raw::c_char,
pub size: usize,
pub used: usize,
pub _bitfield_align_1: [u32; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
pub __bindgen_padding_0: u32,
}
#[test]
fn bindgen_test_layout__php_output_buffer() {
const UNINIT: ::std::mem::MaybeUninit<_php_output_buffer> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_output_buffer>(),
32usize,
concat!("Size of: ", stringify!(_php_output_buffer))
);
assert_eq!(
::std::mem::align_of::<_php_output_buffer>(),
8usize,
concat!("Alignment of ", stringify!(_php_output_buffer))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_output_buffer),
"::",
stringify!(data)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_output_buffer),
"::",
stringify!(size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).used) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_output_buffer),
"::",
stringify!(used)
)
);
}
impl Default for _php_output_buffer {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
impl _php_output_buffer {
#[inline]
pub fn free(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
}
#[inline]
pub fn set_free(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 1u8, val as u64)
}
}
#[inline]
pub fn _reserved(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 31u8) as u32) }
}
#[inline]
pub fn set__reserved(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(1usize, 31u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(free: u32, _reserved: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 1u8, {
let free: u32 = unsafe { ::std::mem::transmute(free) };
free as u64
});
__bindgen_bitfield_unit.set(1usize, 31u8, {
let _reserved: u32 = unsafe { ::std::mem::transmute(_reserved) };
_reserved as u64
});
__bindgen_bitfield_unit
}
}
pub type php_output_buffer = _php_output_buffer;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_output_context {
pub op: ::std::os::raw::c_int,
pub in_: php_output_buffer,
pub out: php_output_buffer,
}
#[test]
fn bindgen_test_layout__php_output_context() {
const UNINIT: ::std::mem::MaybeUninit<_php_output_context> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_output_context>(),
72usize,
concat!("Size of: ", stringify!(_php_output_context))
);
assert_eq!(
::std::mem::align_of::<_php_output_context>(),
8usize,
concat!("Alignment of ", stringify!(_php_output_context))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).op) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_output_context),
"::",
stringify!(op)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).in_) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_output_context),
"::",
stringify!(in_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).out) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_php_output_context),
"::",
stringify!(out)
)
);
}
impl Default for _php_output_context {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type php_output_context = _php_output_context;
pub type php_output_handler_func_t = ::std::option::Option<
unsafe extern "C" fn(
output: *mut ::std::os::raw::c_char,
output_len: usize,
handled_output: *mut *mut ::std::os::raw::c_char,
handled_output_len: *mut usize,
mode: ::std::os::raw::c_int,
),
>;
pub type php_output_handler_context_func_t = ::std::option::Option<
unsafe extern "C" fn(
handler_context: *mut *mut ::std::os::raw::c_void,
output_context: *mut php_output_context,
) -> ::std::os::raw::c_int,
>;
pub type php_output_handler_context_dtor_t =
::std::option::Option<unsafe extern "C" fn(opaq: *mut ::std::os::raw::c_void)>;
pub type php_output_handler_conflict_check_t = ::std::option::Option<
unsafe extern "C" fn(
handler_name: *const ::std::os::raw::c_char,
handler_name_len: usize,
) -> ::std::os::raw::c_int,
>;
pub type php_output_handler_alias_ctor_t = ::std::option::Option<
unsafe extern "C" fn(
handler_name: *const ::std::os::raw::c_char,
handler_name_len: usize,
chunk_size: usize,
flags: ::std::os::raw::c_int,
) -> *mut _php_output_handler,
>;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _php_output_handler_user_func_t {
pub fci: zend_fcall_info,
pub fcc: zend_fcall_info_cache,
pub zoh: zval,
}
#[test]
fn bindgen_test_layout__php_output_handler_user_func_t() {
const UNINIT: ::std::mem::MaybeUninit<_php_output_handler_user_func_t> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_output_handler_user_func_t>(),
112usize,
concat!("Size of: ", stringify!(_php_output_handler_user_func_t))
);
assert_eq!(
::std::mem::align_of::<_php_output_handler_user_func_t>(),
8usize,
concat!("Alignment of ", stringify!(_php_output_handler_user_func_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fci) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler_user_func_t),
"::",
stringify!(fci)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fcc) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler_user_func_t),
"::",
stringify!(fcc)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).zoh) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler_user_func_t),
"::",
stringify!(zoh)
)
);
}
impl Default for _php_output_handler_user_func_t {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type php_output_handler_user_func_t = _php_output_handler_user_func_t;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _php_output_handler {
pub name: *mut zend_string,
pub flags: ::std::os::raw::c_int,
pub level: ::std::os::raw::c_int,
pub size: usize,
pub buffer: php_output_buffer,
pub opaq: *mut ::std::os::raw::c_void,
pub dtor: ::std::option::Option<unsafe extern "C" fn(opaq: *mut ::std::os::raw::c_void)>,
pub func: _php_output_handler__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _php_output_handler__bindgen_ty_1 {
pub user: *mut php_output_handler_user_func_t,
pub internal: php_output_handler_context_func_t,
}
#[test]
fn bindgen_test_layout__php_output_handler__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_php_output_handler__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_output_handler__bindgen_ty_1>(),
8usize,
concat!("Size of: ", stringify!(_php_output_handler__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<_php_output_handler__bindgen_ty_1>(),
8usize,
concat!(
"Alignment of ",
stringify!(_php_output_handler__bindgen_ty_1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).user) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler__bindgen_ty_1),
"::",
stringify!(user)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).internal) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler__bindgen_ty_1),
"::",
stringify!(internal)
)
);
}
impl Default for _php_output_handler__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout__php_output_handler() {
const UNINIT: ::std::mem::MaybeUninit<_php_output_handler> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_output_handler>(),
80usize,
concat!("Size of: ", stringify!(_php_output_handler))
);
assert_eq!(
::std::mem::align_of::<_php_output_handler>(),
8usize,
concat!("Alignment of ", stringify!(_php_output_handler))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler),
"::",
stringify!(flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).level) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler),
"::",
stringify!(level)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler),
"::",
stringify!(size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).buffer) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler),
"::",
stringify!(buffer)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).opaq) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler),
"::",
stringify!(opaq)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dtor) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler),
"::",
stringify!(dtor)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).func) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_php_output_handler),
"::",
stringify!(func)
)
);
}
impl Default for _php_output_handler {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type php_output_handler = _php_output_handler;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_output_globals {
pub handlers: zend_stack,
pub active: *mut php_output_handler,
pub running: *mut php_output_handler,
pub output_start_filename: *mut zend_string,
pub output_start_lineno: ::std::os::raw::c_int,
pub flags: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_output_globals() {
const UNINIT: ::std::mem::MaybeUninit<_zend_output_globals> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_output_globals>(),
56usize,
concat!("Size of: ", stringify!(_zend_output_globals))
);
assert_eq!(
::std::mem::align_of::<_zend_output_globals>(),
8usize,
concat!("Alignment of ", stringify!(_zend_output_globals))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handlers) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_output_globals),
"::",
stringify!(handlers)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).active) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_output_globals),
"::",
stringify!(active)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).running) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_output_globals),
"::",
stringify!(running)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).output_start_filename) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_output_globals),
"::",
stringify!(output_start_filename)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).output_start_lineno) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_output_globals),
"::",
stringify!(output_start_lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
52usize,
concat!(
"Offset of field: ",
stringify!(_zend_output_globals),
"::",
stringify!(flags)
)
);
}
impl Default for _zend_output_globals {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_output_globals = _zend_output_globals;
extern "C" {
pub static mut output_globals: zend_output_globals;
}
extern "C" {
pub static php_output_default_handler_name: [::std::os::raw::c_char; 23usize];
}
extern "C" {
pub static php_output_devnull_handler_name: [::std::os::raw::c_char; 20usize];
}
extern "C" {
pub fn php_output_startup();
}
extern "C" {
pub fn php_output_shutdown();
}
extern "C" {
pub fn php_output_register_constants();
}
extern "C" {
pub fn php_output_activate() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_deactivate();
}
extern "C" {
pub fn php_output_set_status(status: ::std::os::raw::c_int);
}
extern "C" {
pub fn php_output_get_status() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_set_implicit_flush(flush: ::std::os::raw::c_int);
}
extern "C" {
pub fn php_output_get_start_filename() -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn php_output_get_start_lineno() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_write_unbuffered(str_: *const ::std::os::raw::c_char, len: usize) -> usize;
}
extern "C" {
pub fn php_output_write(str_: *const ::std::os::raw::c_char, len: usize) -> usize;
}
extern "C" {
pub fn php_output_flush() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_flush_all();
}
extern "C" {
pub fn php_output_clean() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_clean_all();
}
extern "C" {
pub fn php_output_end() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_end_all();
}
extern "C" {
pub fn php_output_discard() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_discard_all();
}
extern "C" {
pub fn php_output_get_contents(p: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_get_length(p: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_get_level() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_get_active_handler() -> *mut php_output_handler;
}
extern "C" {
pub fn php_output_start_default() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_start_devnull() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_start_user(
output_handler: *mut zval,
chunk_size: usize,
flags: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_start_internal(
name: *const ::std::os::raw::c_char,
name_len: usize,
output_handler: php_output_handler_func_t,
chunk_size: usize,
flags: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_handler_create_user(
handler: *mut zval,
chunk_size: usize,
flags: ::std::os::raw::c_int,
) -> *mut php_output_handler;
}
extern "C" {
pub fn php_output_handler_create_internal(
name: *const ::std::os::raw::c_char,
name_len: usize,
handler: php_output_handler_context_func_t,
chunk_size: usize,
flags: ::std::os::raw::c_int,
) -> *mut php_output_handler;
}
extern "C" {
pub fn php_output_handler_set_context(
handler: *mut php_output_handler,
opaq: *mut ::std::os::raw::c_void,
dtor: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
);
}
extern "C" {
pub fn php_output_handler_start(handler: *mut php_output_handler) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_handler_started(
name: *const ::std::os::raw::c_char,
name_len: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_handler_hook(
type_: php_output_handler_hook_t,
arg: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_handler_dtor(handler: *mut php_output_handler);
}
extern "C" {
pub fn php_output_handler_free(handler: *mut *mut php_output_handler);
}
extern "C" {
pub fn php_output_handler_conflict(
handler_new: *const ::std::os::raw::c_char,
handler_new_len: usize,
handler_set: *const ::std::os::raw::c_char,
handler_set_len: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_handler_conflict_register(
handler_name: *const ::std::os::raw::c_char,
handler_name_len: usize,
check_func: php_output_handler_conflict_check_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_handler_reverse_conflict_register(
handler_name: *const ::std::os::raw::c_char,
handler_name_len: usize,
check_func: php_output_handler_conflict_check_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_output_handler_alias(
handler_name: *const ::std::os::raw::c_char,
handler_name_len: usize,
) -> php_output_handler_alias_ctor_t;
}
extern "C" {
pub fn php_output_handler_alias_register(
handler_name: *const ::std::os::raw::c_char,
handler_name_len: usize,
func: php_output_handler_alias_ctor_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zif_ob_start(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_ob_flush(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_ob_clean(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_ob_end_flush(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_ob_end_clean(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_ob_get_flush(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_ob_get_clean(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_ob_get_contents(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_ob_get_length(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_ob_get_level(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_ob_get_status(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_ob_implicit_flush(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_ob_list_handlers(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zif_output_add_rewrite_var(
execute_data: *mut zend_execute_data,
return_value: *mut zval,
);
}
extern "C" {
pub fn zif_output_reset_rewrite_vars(
execute_data: *mut zend_execute_data,
return_value: *mut zval,
);
}
extern "C" {
pub fn php_file_le_stream() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_file_le_pstream() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_file_le_stream_filter() -> ::std::os::raw::c_int;
}
pub type php_stream = _php_stream;
pub type php_stream_wrapper = _php_stream_wrapper;
pub type php_stream_context = _php_stream_context;
pub type php_stream_filter = _php_stream_filter;
pub type php_stream_notification_func = ::std::option::Option<
unsafe extern "C" fn(
context: *mut php_stream_context,
notifycode: ::std::os::raw::c_int,
severity: ::std::os::raw::c_int,
xmsg: *mut ::std::os::raw::c_char,
xcode: ::std::os::raw::c_int,
bytes_sofar: usize,
bytes_max: usize,
ptr: *mut ::std::os::raw::c_void,
),
>;
pub type php_stream_notifier = _php_stream_notifier;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _php_stream_notifier {
pub func: php_stream_notification_func,
pub dtor: ::std::option::Option<unsafe extern "C" fn(notifier: *mut php_stream_notifier)>,
pub ptr: zval,
pub mask: ::std::os::raw::c_int,
pub progress: usize,
pub progress_max: usize,
}
#[test]
fn bindgen_test_layout__php_stream_notifier() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_notifier> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_notifier>(),
56usize,
concat!("Size of: ", stringify!(_php_stream_notifier))
);
assert_eq!(
::std::mem::align_of::<_php_stream_notifier>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_notifier))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).func) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_notifier),
"::",
stringify!(func)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dtor) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_notifier),
"::",
stringify!(dtor)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_notifier),
"::",
stringify!(ptr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mask) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_notifier),
"::",
stringify!(mask)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).progress) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_notifier),
"::",
stringify!(progress)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).progress_max) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_notifier),
"::",
stringify!(progress_max)
)
);
}
impl Default for _php_stream_notifier {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _php_stream_context {
pub notifier: *mut php_stream_notifier,
pub options: zval,
pub res: *mut zend_resource,
}
#[test]
fn bindgen_test_layout__php_stream_context() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_context> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_context>(),
32usize,
concat!("Size of: ", stringify!(_php_stream_context))
);
assert_eq!(
::std::mem::align_of::<_php_stream_context>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_context))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).notifier) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_context),
"::",
stringify!(notifier)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).options) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_context),
"::",
stringify!(options)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_context),
"::",
stringify!(res)
)
);
}
impl Default for _php_stream_context {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub fn php_stream_context_free(context: *mut php_stream_context);
}
extern "C" {
pub fn php_stream_context_alloc() -> *mut php_stream_context;
}
extern "C" {
pub fn php_stream_context_get_option(
context: *mut php_stream_context,
wrappername: *const ::std::os::raw::c_char,
optionname: *const ::std::os::raw::c_char,
) -> *mut zval;
}
extern "C" {
pub fn php_stream_context_set_option(
context: *mut php_stream_context,
wrappername: *const ::std::os::raw::c_char,
optionname: *const ::std::os::raw::c_char,
optionvalue: *mut zval,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_notification_alloc() -> *mut php_stream_notifier;
}
extern "C" {
pub fn php_stream_notification_free(notifier: *mut php_stream_notifier);
}
extern "C" {
pub fn php_stream_notification_notify(
context: *mut php_stream_context,
notifycode: ::std::os::raw::c_int,
severity: ::std::os::raw::c_int,
xmsg: *mut ::std::os::raw::c_char,
xcode: ::std::os::raw::c_int,
bytes_sofar: usize,
bytes_max: usize,
ptr: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn php_stream_context_set(
stream: *mut php_stream,
context: *mut php_stream_context,
) -> *mut php_stream_context;
}
pub type php_stream_bucket = _php_stream_bucket;
pub type php_stream_bucket_brigade = _php_stream_bucket_brigade;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_bucket {
pub next: *mut php_stream_bucket,
pub prev: *mut php_stream_bucket,
pub brigade: *mut php_stream_bucket_brigade,
pub buf: *mut ::std::os::raw::c_char,
pub buflen: usize,
pub own_buf: u8,
pub is_persistent: u8,
pub refcount: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__php_stream_bucket() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_bucket> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_bucket>(),
48usize,
concat!("Size of: ", stringify!(_php_stream_bucket))
);
assert_eq!(
::std::mem::align_of::<_php_stream_bucket>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_bucket))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_bucket),
"::",
stringify!(next)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).prev) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_bucket),
"::",
stringify!(prev)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).brigade) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_bucket),
"::",
stringify!(brigade)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).buf) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_bucket),
"::",
stringify!(buf)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).buflen) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_bucket),
"::",
stringify!(buflen)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).own_buf) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_bucket),
"::",
stringify!(own_buf)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).is_persistent) as usize - ptr as usize },
41usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_bucket),
"::",
stringify!(is_persistent)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).refcount) as usize - ptr as usize },
44usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_bucket),
"::",
stringify!(refcount)
)
);
}
impl Default for _php_stream_bucket {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_bucket_brigade {
pub head: *mut php_stream_bucket,
pub tail: *mut php_stream_bucket,
}
#[test]
fn bindgen_test_layout__php_stream_bucket_brigade() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_bucket_brigade> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_bucket_brigade>(),
16usize,
concat!("Size of: ", stringify!(_php_stream_bucket_brigade))
);
assert_eq!(
::std::mem::align_of::<_php_stream_bucket_brigade>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_bucket_brigade))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).head) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_bucket_brigade),
"::",
stringify!(head)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).tail) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_bucket_brigade),
"::",
stringify!(tail)
)
);
}
impl Default for _php_stream_bucket_brigade {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub const php_stream_filter_status_t_PSFS_ERR_FATAL: php_stream_filter_status_t = 0;
pub const php_stream_filter_status_t_PSFS_FEED_ME: php_stream_filter_status_t = 1;
pub const php_stream_filter_status_t_PSFS_PASS_ON: php_stream_filter_status_t = 2;
pub type php_stream_filter_status_t = ::std::os::raw::c_uint;
extern "C" {
pub fn php_stream_bucket_new(
stream: *mut php_stream,
buf: *mut ::std::os::raw::c_char,
buflen: usize,
own_buf: u8,
buf_persistent: u8,
) -> *mut php_stream_bucket;
}
extern "C" {
pub fn php_stream_bucket_split(
in_: *mut php_stream_bucket,
left: *mut *mut php_stream_bucket,
right: *mut *mut php_stream_bucket,
length: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_bucket_delref(bucket: *mut php_stream_bucket);
}
extern "C" {
pub fn php_stream_bucket_prepend(
brigade: *mut php_stream_bucket_brigade,
bucket: *mut php_stream_bucket,
);
}
extern "C" {
pub fn php_stream_bucket_append(
brigade: *mut php_stream_bucket_brigade,
bucket: *mut php_stream_bucket,
);
}
extern "C" {
pub fn php_stream_bucket_unlink(bucket: *mut php_stream_bucket);
}
extern "C" {
pub fn php_stream_bucket_make_writeable(
bucket: *mut php_stream_bucket,
) -> *mut php_stream_bucket;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_filter_ops {
pub filter: ::std::option::Option<
unsafe extern "C" fn(
stream: *mut php_stream,
thisfilter: *mut php_stream_filter,
buckets_in: *mut php_stream_bucket_brigade,
buckets_out: *mut php_stream_bucket_brigade,
bytes_consumed: *mut usize,
flags: ::std::os::raw::c_int,
) -> php_stream_filter_status_t,
>,
pub dtor: ::std::option::Option<unsafe extern "C" fn(thisfilter: *mut php_stream_filter)>,
pub label: *const ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout__php_stream_filter_ops() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_filter_ops> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_filter_ops>(),
24usize,
concat!("Size of: ", stringify!(_php_stream_filter_ops))
);
assert_eq!(
::std::mem::align_of::<_php_stream_filter_ops>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_filter_ops))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).filter) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter_ops),
"::",
stringify!(filter)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dtor) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter_ops),
"::",
stringify!(dtor)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).label) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter_ops),
"::",
stringify!(label)
)
);
}
impl Default for _php_stream_filter_ops {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type php_stream_filter_ops = _php_stream_filter_ops;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_filter_chain {
pub head: *mut php_stream_filter,
pub tail: *mut php_stream_filter,
pub stream: *mut php_stream,
}
#[test]
fn bindgen_test_layout__php_stream_filter_chain() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_filter_chain> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_filter_chain>(),
24usize,
concat!("Size of: ", stringify!(_php_stream_filter_chain))
);
assert_eq!(
::std::mem::align_of::<_php_stream_filter_chain>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_filter_chain))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).head) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter_chain),
"::",
stringify!(head)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).tail) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter_chain),
"::",
stringify!(tail)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stream) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter_chain),
"::",
stringify!(stream)
)
);
}
impl Default for _php_stream_filter_chain {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type php_stream_filter_chain = _php_stream_filter_chain;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _php_stream_filter {
pub fops: *const php_stream_filter_ops,
pub abstract_: zval,
pub next: *mut php_stream_filter,
pub prev: *mut php_stream_filter,
pub is_persistent: ::std::os::raw::c_int,
pub chain: *mut php_stream_filter_chain,
pub buffer: php_stream_bucket_brigade,
pub res: *mut zend_resource,
}
#[test]
fn bindgen_test_layout__php_stream_filter() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_filter> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_filter>(),
80usize,
concat!("Size of: ", stringify!(_php_stream_filter))
);
assert_eq!(
::std::mem::align_of::<_php_stream_filter>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_filter))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fops) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter),
"::",
stringify!(fops)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).abstract_) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter),
"::",
stringify!(abstract_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter),
"::",
stringify!(next)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).prev) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter),
"::",
stringify!(prev)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).is_persistent) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter),
"::",
stringify!(is_persistent)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).chain) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter),
"::",
stringify!(chain)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).buffer) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter),
"::",
stringify!(buffer)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter),
"::",
stringify!(res)
)
);
}
impl Default for _php_stream_filter {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub fn _php_stream_filter_prepend(
chain: *mut php_stream_filter_chain,
filter: *mut php_stream_filter,
);
}
extern "C" {
pub fn php_stream_filter_prepend_ex(
chain: *mut php_stream_filter_chain,
filter: *mut php_stream_filter,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_filter_append(
chain: *mut php_stream_filter_chain,
filter: *mut php_stream_filter,
);
}
extern "C" {
pub fn php_stream_filter_append_ex(
chain: *mut php_stream_filter_chain,
filter: *mut php_stream_filter,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_filter_flush(
filter: *mut php_stream_filter,
finish: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_filter_remove(
filter: *mut php_stream_filter,
call_dtor: ::std::os::raw::c_int,
) -> *mut php_stream_filter;
}
extern "C" {
pub fn php_stream_filter_free(filter: *mut php_stream_filter);
}
extern "C" {
pub fn _php_stream_filter_alloc(
fops: *const php_stream_filter_ops,
abstract_: *mut ::std::os::raw::c_void,
persistent: u8,
) -> *mut php_stream_filter;
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _php_stream_filter_factory {
pub create_filter: ::std::option::Option<
unsafe extern "C" fn(
filtername: *const ::std::os::raw::c_char,
filterparams: *mut zval,
persistent: u8,
) -> *mut php_stream_filter,
>,
}
#[test]
fn bindgen_test_layout__php_stream_filter_factory() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_filter_factory> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_filter_factory>(),
8usize,
concat!("Size of: ", stringify!(_php_stream_filter_factory))
);
assert_eq!(
::std::mem::align_of::<_php_stream_filter_factory>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_filter_factory))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).create_filter) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_filter_factory),
"::",
stringify!(create_filter)
)
);
}
pub type php_stream_filter_factory = _php_stream_filter_factory;
extern "C" {
pub fn php_stream_filter_register_factory(
filterpattern: *const ::std::os::raw::c_char,
factory: *const php_stream_filter_factory,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_filter_unregister_factory(
filterpattern: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_filter_register_factory_volatile(
filterpattern: *mut zend_string,
factory: *const php_stream_filter_factory,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_filter_create(
filtername: *const ::std::os::raw::c_char,
filterparams: *mut zval,
persistent: u8,
) -> *mut php_stream_filter;
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _php_stream_statbuf {
pub sb: zend_stat_t,
}
#[test]
fn bindgen_test_layout__php_stream_statbuf() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_statbuf> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_statbuf>(),
144usize,
concat!("Size of: ", stringify!(_php_stream_statbuf))
);
assert_eq!(
::std::mem::align_of::<_php_stream_statbuf>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_statbuf))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sb) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_statbuf),
"::",
stringify!(sb)
)
);
}
pub type php_stream_statbuf = _php_stream_statbuf;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_dirent {
pub d_name: [::std::os::raw::c_char; 4096usize],
}
#[test]
fn bindgen_test_layout__php_stream_dirent() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_dirent> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_dirent>(),
4096usize,
concat!("Size of: ", stringify!(_php_stream_dirent))
);
assert_eq!(
::std::mem::align_of::<_php_stream_dirent>(),
1usize,
concat!("Alignment of ", stringify!(_php_stream_dirent))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).d_name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_dirent),
"::",
stringify!(d_name)
)
);
}
impl Default for _php_stream_dirent {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type php_stream_dirent = _php_stream_dirent;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_ops {
pub write: ::std::option::Option<
unsafe extern "C" fn(
stream: *mut php_stream,
buf: *const ::std::os::raw::c_char,
count: usize,
) -> isize,
>,
pub read: ::std::option::Option<
unsafe extern "C" fn(
stream: *mut php_stream,
buf: *mut ::std::os::raw::c_char,
count: usize,
) -> isize,
>,
pub close: ::std::option::Option<
unsafe extern "C" fn(
stream: *mut php_stream,
close_handle: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>,
pub flush: ::std::option::Option<
unsafe extern "C" fn(stream: *mut php_stream) -> ::std::os::raw::c_int,
>,
pub label: *const ::std::os::raw::c_char,
pub seek: ::std::option::Option<
unsafe extern "C" fn(
stream: *mut php_stream,
offset: zend_off_t,
whence: ::std::os::raw::c_int,
newoffset: *mut zend_off_t,
) -> ::std::os::raw::c_int,
>,
pub cast: ::std::option::Option<
unsafe extern "C" fn(
stream: *mut php_stream,
castas: ::std::os::raw::c_int,
ret: *mut *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
pub stat: ::std::option::Option<
unsafe extern "C" fn(
stream: *mut php_stream,
ssb: *mut php_stream_statbuf,
) -> ::std::os::raw::c_int,
>,
pub set_option: ::std::option::Option<
unsafe extern "C" fn(
stream: *mut php_stream,
option: ::std::os::raw::c_int,
value: ::std::os::raw::c_int,
ptrparam: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
}
#[test]
fn bindgen_test_layout__php_stream_ops() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_ops> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_ops>(),
72usize,
concat!("Size of: ", stringify!(_php_stream_ops))
);
assert_eq!(
::std::mem::align_of::<_php_stream_ops>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_ops))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).write) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_ops),
"::",
stringify!(write)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).read) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_ops),
"::",
stringify!(read)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_ops),
"::",
stringify!(close)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flush) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_ops),
"::",
stringify!(flush)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).label) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_ops),
"::",
stringify!(label)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).seek) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_ops),
"::",
stringify!(seek)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).cast) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_ops),
"::",
stringify!(cast)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stat) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_ops),
"::",
stringify!(stat)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).set_option) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_ops),
"::",
stringify!(set_option)
)
);
}
impl Default for _php_stream_ops {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type php_stream_ops = _php_stream_ops;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_wrapper_ops {
pub stream_opener: ::std::option::Option<
unsafe extern "C" fn(
wrapper: *mut php_stream_wrapper,
filename: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
opened_path: *mut *mut zend_string,
context: *mut php_stream_context,
) -> *mut php_stream,
>,
pub stream_closer: ::std::option::Option<
unsafe extern "C" fn(
wrapper: *mut php_stream_wrapper,
stream: *mut php_stream,
) -> ::std::os::raw::c_int,
>,
pub stream_stat: ::std::option::Option<
unsafe extern "C" fn(
wrapper: *mut php_stream_wrapper,
stream: *mut php_stream,
ssb: *mut php_stream_statbuf,
) -> ::std::os::raw::c_int,
>,
pub url_stat: ::std::option::Option<
unsafe extern "C" fn(
wrapper: *mut php_stream_wrapper,
url: *const ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
ssb: *mut php_stream_statbuf,
context: *mut php_stream_context,
) -> ::std::os::raw::c_int,
>,
pub dir_opener: ::std::option::Option<
unsafe extern "C" fn(
wrapper: *mut php_stream_wrapper,
filename: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
opened_path: *mut *mut zend_string,
context: *mut php_stream_context,
) -> *mut php_stream,
>,
pub label: *const ::std::os::raw::c_char,
pub unlink: ::std::option::Option<
unsafe extern "C" fn(
wrapper: *mut php_stream_wrapper,
url: *const ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
context: *mut php_stream_context,
) -> ::std::os::raw::c_int,
>,
pub rename: ::std::option::Option<
unsafe extern "C" fn(
wrapper: *mut php_stream_wrapper,
url_from: *const ::std::os::raw::c_char,
url_to: *const ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
context: *mut php_stream_context,
) -> ::std::os::raw::c_int,
>,
pub stream_mkdir: ::std::option::Option<
unsafe extern "C" fn(
wrapper: *mut php_stream_wrapper,
url: *const ::std::os::raw::c_char,
mode: ::std::os::raw::c_int,
options: ::std::os::raw::c_int,
context: *mut php_stream_context,
) -> ::std::os::raw::c_int,
>,
pub stream_rmdir: ::std::option::Option<
unsafe extern "C" fn(
wrapper: *mut php_stream_wrapper,
url: *const ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
context: *mut php_stream_context,
) -> ::std::os::raw::c_int,
>,
pub stream_metadata: ::std::option::Option<
unsafe extern "C" fn(
wrapper: *mut php_stream_wrapper,
url: *const ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
value: *mut ::std::os::raw::c_void,
context: *mut php_stream_context,
) -> ::std::os::raw::c_int,
>,
}
#[test]
fn bindgen_test_layout__php_stream_wrapper_ops() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_wrapper_ops> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_wrapper_ops>(),
88usize,
concat!("Size of: ", stringify!(_php_stream_wrapper_ops))
);
assert_eq!(
::std::mem::align_of::<_php_stream_wrapper_ops>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_wrapper_ops))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stream_opener) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper_ops),
"::",
stringify!(stream_opener)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stream_closer) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper_ops),
"::",
stringify!(stream_closer)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stream_stat) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper_ops),
"::",
stringify!(stream_stat)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).url_stat) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper_ops),
"::",
stringify!(url_stat)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dir_opener) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper_ops),
"::",
stringify!(dir_opener)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).label) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper_ops),
"::",
stringify!(label)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).unlink) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper_ops),
"::",
stringify!(unlink)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).rename) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper_ops),
"::",
stringify!(rename)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stream_mkdir) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper_ops),
"::",
stringify!(stream_mkdir)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stream_rmdir) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper_ops),
"::",
stringify!(stream_rmdir)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stream_metadata) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper_ops),
"::",
stringify!(stream_metadata)
)
);
}
impl Default for _php_stream_wrapper_ops {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type php_stream_wrapper_ops = _php_stream_wrapper_ops;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_wrapper {
pub wops: *const php_stream_wrapper_ops,
pub abstract_: *mut ::std::os::raw::c_void,
pub is_url: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__php_stream_wrapper() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_wrapper> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_wrapper>(),
24usize,
concat!("Size of: ", stringify!(_php_stream_wrapper))
);
assert_eq!(
::std::mem::align_of::<_php_stream_wrapper>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_wrapper))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).wops) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper),
"::",
stringify!(wops)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).abstract_) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper),
"::",
stringify!(abstract_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).is_url) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_wrapper),
"::",
stringify!(is_url)
)
);
}
impl Default for _php_stream_wrapper {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _php_stream {
pub ops: *const php_stream_ops,
pub abstract_: *mut ::std::os::raw::c_void,
pub readfilters: php_stream_filter_chain,
pub writefilters: php_stream_filter_chain,
pub wrapper: *mut php_stream_wrapper,
pub wrapperthis: *mut ::std::os::raw::c_void,
pub wrapperdata: zval,
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub mode: [::std::os::raw::c_char; 16usize],
pub flags: u32,
pub res: *mut zend_resource,
pub stdiocast: *mut FILE,
pub orig_path: *mut ::std::os::raw::c_char,
pub ctx: *mut zend_resource,
pub position: zend_off_t,
pub readbuf: *mut ::std::os::raw::c_uchar,
pub readbuflen: usize,
pub readpos: zend_off_t,
pub writepos: zend_off_t,
pub chunk_size: usize,
pub enclosing_stream: *mut _php_stream,
}
#[test]
fn bindgen_test_layout__php_stream() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream>(),
208usize,
concat!("Size of: ", stringify!(_php_stream))
);
assert_eq!(
::std::mem::align_of::<_php_stream>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ops) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(ops)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).abstract_) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(abstract_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).readfilters) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(readfilters)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).writefilters) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(writefilters)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).wrapper) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(wrapper)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).wrapperthis) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(wrapperthis)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).wrapperdata) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(wrapperdata)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize },
97usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(mode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
116usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(res)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stdiocast) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(stdiocast)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).orig_path) as usize - ptr as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(orig_path)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ctx) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(ctx)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).position) as usize - ptr as usize },
152usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(position)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).readbuf) as usize - ptr as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(readbuf)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).readbuflen) as usize - ptr as usize },
168usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(readbuflen)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).readpos) as usize - ptr as usize },
176usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(readpos)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).writepos) as usize - ptr as usize },
184usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(writepos)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).chunk_size) as usize - ptr as usize },
192usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(chunk_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).enclosing_stream) as usize - ptr as usize },
200usize,
concat!(
"Offset of field: ",
stringify!(_php_stream),
"::",
stringify!(enclosing_stream)
)
);
}
impl Default for _php_stream {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
impl _php_stream {
#[inline]
pub fn is_persistent(&self) -> u8 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) }
}
#[inline]
pub fn set_is_persistent(&mut self, val: u8) {
unsafe {
let val: u8 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 1u8, val as u64)
}
}
#[inline]
pub fn in_free(&self) -> u8 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 2u8) as u8) }
}
#[inline]
pub fn set_in_free(&mut self, val: u8) {
unsafe {
let val: u8 = ::std::mem::transmute(val);
self._bitfield_1.set(1usize, 2u8, val as u64)
}
}
#[inline]
pub fn eof(&self) -> u8 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) }
}
#[inline]
pub fn set_eof(&mut self, val: u8) {
unsafe {
let val: u8 = ::std::mem::transmute(val);
self._bitfield_1.set(3usize, 1u8, val as u64)
}
}
#[inline]
pub fn __exposed(&self) -> u8 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u8) }
}
#[inline]
pub fn set___exposed(&mut self, val: u8) {
unsafe {
let val: u8 = ::std::mem::transmute(val);
self._bitfield_1.set(4usize, 1u8, val as u64)
}
}
#[inline]
pub fn fclose_stdiocast(&self) -> u8 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(5usize, 2u8) as u8) }
}
#[inline]
pub fn set_fclose_stdiocast(&mut self, val: u8) {
unsafe {
let val: u8 = ::std::mem::transmute(val);
self._bitfield_1.set(5usize, 2u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(
is_persistent: u8,
in_free: u8,
eof: u8,
__exposed: u8,
fclose_stdiocast: u8,
) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 1u8, {
let is_persistent: u8 = unsafe { ::std::mem::transmute(is_persistent) };
is_persistent as u64
});
__bindgen_bitfield_unit.set(1usize, 2u8, {
let in_free: u8 = unsafe { ::std::mem::transmute(in_free) };
in_free as u64
});
__bindgen_bitfield_unit.set(3usize, 1u8, {
let eof: u8 = unsafe { ::std::mem::transmute(eof) };
eof as u64
});
__bindgen_bitfield_unit.set(4usize, 1u8, {
let __exposed: u8 = unsafe { ::std::mem::transmute(__exposed) };
__exposed as u64
});
__bindgen_bitfield_unit.set(5usize, 2u8, {
let fclose_stdiocast: u8 = unsafe { ::std::mem::transmute(fclose_stdiocast) };
fclose_stdiocast as u64
});
__bindgen_bitfield_unit
}
}
extern "C" {
pub fn _php_stream_alloc(
ops: *const php_stream_ops,
abstract_: *mut ::std::os::raw::c_void,
persistent_id: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
) -> *mut php_stream;
}
extern "C" {
pub fn php_stream_encloses(
enclosing: *mut php_stream,
enclosed: *mut php_stream,
) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_free_enclosed(
stream_enclosed: *mut php_stream,
close_options: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_from_persistent_id(
persistent_id: *const ::std::os::raw::c_char,
stream: *mut *mut php_stream,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_free(
stream: *mut php_stream,
close_options: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_seek(
stream: *mut php_stream,
offset: zend_off_t,
whence: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_tell(stream: *mut php_stream) -> zend_off_t;
}
extern "C" {
pub fn _php_stream_read(
stream: *mut php_stream,
buf: *mut ::std::os::raw::c_char,
count: usize,
) -> isize;
}
extern "C" {
pub fn php_stream_read_to_str(stream: *mut php_stream, len: usize) -> *mut zend_string;
}
extern "C" {
pub fn _php_stream_write(
stream: *mut php_stream,
buf: *const ::std::os::raw::c_char,
count: usize,
) -> isize;
}
extern "C" {
pub fn _php_stream_fill_read_buffer(
stream: *mut php_stream,
size: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_printf(
stream: *mut php_stream,
fmt: *const ::std::os::raw::c_char,
...
) -> isize;
}
extern "C" {
pub fn _php_stream_eof(stream: *mut php_stream) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_getc(stream: *mut php_stream) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_putc(
stream: *mut php_stream,
c: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_flush(
stream: *mut php_stream,
closing: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_sync(stream: *mut php_stream, data_only: bool) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_get_line(
stream: *mut php_stream,
buf: *mut ::std::os::raw::c_char,
maxlen: usize,
returned_len: *mut usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn php_stream_get_record(
stream: *mut php_stream,
maxlen: usize,
delim: *const ::std::os::raw::c_char,
delim_len: usize,
) -> *mut zend_string;
}
extern "C" {
pub fn _php_stream_puts(
stream: *mut php_stream,
buf: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_stat(
stream: *mut php_stream,
ssb: *mut php_stream_statbuf,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_stat_path(
path: *const ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
ssb: *mut php_stream_statbuf,
context: *mut php_stream_context,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_mkdir(
path: *const ::std::os::raw::c_char,
mode: ::std::os::raw::c_int,
options: ::std::os::raw::c_int,
context: *mut php_stream_context,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_rmdir(
path: *const ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
context: *mut php_stream_context,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_opendir(
path: *const ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
context: *mut php_stream_context,
) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_readdir(
dirstream: *mut php_stream,
ent: *mut php_stream_dirent,
) -> *mut php_stream_dirent;
}
extern "C" {
pub fn php_stream_dirent_alphasort(
a: *mut *const zend_string,
b: *mut *const zend_string,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_dirent_alphasortr(
a: *mut *const zend_string,
b: *mut *const zend_string,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_scandir(
dirname: *const ::std::os::raw::c_char,
namelist: *mut *mut *mut zend_string,
flags: ::std::os::raw::c_int,
context: *mut php_stream_context,
compare: ::std::option::Option<
unsafe extern "C" fn(
a: *mut *const zend_string,
b: *mut *const zend_string,
) -> ::std::os::raw::c_int,
>,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_set_option(
stream: *mut php_stream,
option: ::std::os::raw::c_int,
value: ::std::os::raw::c_int,
ptrparam: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_truncate_set_size(
stream: *mut php_stream,
newsize: usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_copy_to_stream(
src: *mut php_stream,
dest: *mut php_stream,
maxlen: usize,
) -> usize;
}
extern "C" {
pub fn _php_stream_copy_to_stream_ex(
src: *mut php_stream,
dest: *mut php_stream,
maxlen: usize,
len: *mut usize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_copy_to_mem(
src: *mut php_stream,
maxlen: usize,
persistent: ::std::os::raw::c_int,
) -> *mut zend_string;
}
extern "C" {
pub fn _php_stream_passthru(src: *mut php_stream) -> isize;
}
pub type sa_family_t = ::std::os::raw::c_ushort;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct sockaddr {
pub sa_family: sa_family_t,
pub sa_data: [::std::os::raw::c_char; 14usize],
}
#[test]
fn bindgen_test_layout_sockaddr() {
const UNINIT: ::std::mem::MaybeUninit<sockaddr> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<sockaddr>(),
16usize,
concat!("Size of: ", stringify!(sockaddr))
);
assert_eq!(
::std::mem::align_of::<sockaddr>(),
2usize,
concat!("Alignment of ", stringify!(sockaddr))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sa_family) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(sockaddr),
"::",
stringify!(sa_family)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sa_data) as usize - ptr as usize },
2usize,
concat!(
"Offset of field: ",
stringify!(sockaddr),
"::",
stringify!(sa_data)
)
);
}
pub type php_stream_transport_factory_func = ::std::option::Option<
unsafe extern "C" fn(
proto: *const ::std::os::raw::c_char,
protolen: usize,
resourcename: *const ::std::os::raw::c_char,
resourcenamelen: usize,
persistent_id: *const ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
flags: ::std::os::raw::c_int,
timeout: *mut timeval,
context: *mut php_stream_context,
) -> *mut php_stream,
>;
pub type php_stream_transport_factory = php_stream_transport_factory_func;
extern "C" {
pub fn php_stream_xport_register(
protocol: *const ::std::os::raw::c_char,
factory: php_stream_transport_factory,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_xport_unregister(
protocol: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_xport_create(
name: *const ::std::os::raw::c_char,
namelen: usize,
options: ::std::os::raw::c_int,
flags: ::std::os::raw::c_int,
persistent_id: *const ::std::os::raw::c_char,
timeout: *mut timeval,
context: *mut php_stream_context,
error_string: *mut *mut zend_string,
error_code: *mut ::std::os::raw::c_int,
) -> *mut php_stream;
}
extern "C" {
pub fn php_stream_xport_bind(
stream: *mut php_stream,
name: *const ::std::os::raw::c_char,
namelen: usize,
error_text: *mut *mut zend_string,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_xport_connect(
stream: *mut php_stream,
name: *const ::std::os::raw::c_char,
namelen: usize,
asynchronous: ::std::os::raw::c_int,
timeout: *mut timeval,
error_text: *mut *mut zend_string,
error_code: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_xport_listen(
stream: *mut php_stream,
backlog: ::std::os::raw::c_int,
error_text: *mut *mut zend_string,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_xport_accept(
stream: *mut php_stream,
client: *mut *mut php_stream,
textaddr: *mut *mut zend_string,
addr: *mut *mut ::std::os::raw::c_void,
addrlen: *mut socklen_t,
timeout: *mut timeval,
error_text: *mut *mut zend_string,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_xport_get_name(
stream: *mut php_stream,
want_peer: ::std::os::raw::c_int,
textaddr: *mut *mut zend_string,
addr: *mut *mut ::std::os::raw::c_void,
addrlen: *mut socklen_t,
) -> ::std::os::raw::c_int;
}
pub const php_stream_xport_send_recv_flags_STREAM_OOB: php_stream_xport_send_recv_flags = 1;
pub const php_stream_xport_send_recv_flags_STREAM_PEEK: php_stream_xport_send_recv_flags = 2;
pub type php_stream_xport_send_recv_flags = ::std::os::raw::c_uint;
extern "C" {
pub fn php_stream_xport_recvfrom(
stream: *mut php_stream,
buf: *mut ::std::os::raw::c_char,
buflen: usize,
flags: ::std::os::raw::c_int,
addr: *mut *mut ::std::os::raw::c_void,
addrlen: *mut socklen_t,
textaddr: *mut *mut zend_string,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_xport_sendto(
stream: *mut php_stream,
buf: *const ::std::os::raw::c_char,
buflen: usize,
flags: ::std::os::raw::c_int,
addr: *mut ::std::os::raw::c_void,
addrlen: socklen_t,
) -> ::std::os::raw::c_int;
}
pub const stream_shutdown_t_STREAM_SHUT_RD: stream_shutdown_t = 0;
pub const stream_shutdown_t_STREAM_SHUT_WR: stream_shutdown_t = 1;
pub const stream_shutdown_t_STREAM_SHUT_RDWR: stream_shutdown_t = 2;
pub type stream_shutdown_t = ::std::os::raw::c_uint;
extern "C" {
pub fn php_stream_xport_shutdown(
stream: *mut php_stream,
how: stream_shutdown_t,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_xport_param {
pub op: _php_stream_xport_param__bindgen_ty_1,
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub inputs: _php_stream_xport_param__bindgen_ty_2,
pub outputs: _php_stream_xport_param__bindgen_ty_3,
}
pub const _php_stream_xport_param_STREAM_XPORT_OP_BIND: _php_stream_xport_param__bindgen_ty_1 = 0;
pub const _php_stream_xport_param_STREAM_XPORT_OP_CONNECT: _php_stream_xport_param__bindgen_ty_1 =
1;
pub const _php_stream_xport_param_STREAM_XPORT_OP_LISTEN: _php_stream_xport_param__bindgen_ty_1 = 2;
pub const _php_stream_xport_param_STREAM_XPORT_OP_ACCEPT: _php_stream_xport_param__bindgen_ty_1 = 3;
pub const _php_stream_xport_param_STREAM_XPORT_OP_CONNECT_ASYNC:
_php_stream_xport_param__bindgen_ty_1 = 4;
pub const _php_stream_xport_param_STREAM_XPORT_OP_GET_NAME: _php_stream_xport_param__bindgen_ty_1 =
5;
pub const _php_stream_xport_param_STREAM_XPORT_OP_GET_PEER_NAME:
_php_stream_xport_param__bindgen_ty_1 = 6;
pub const _php_stream_xport_param_STREAM_XPORT_OP_RECV: _php_stream_xport_param__bindgen_ty_1 = 7;
pub const _php_stream_xport_param_STREAM_XPORT_OP_SEND: _php_stream_xport_param__bindgen_ty_1 = 8;
pub const _php_stream_xport_param_STREAM_XPORT_OP_SHUTDOWN: _php_stream_xport_param__bindgen_ty_1 =
9;
pub type _php_stream_xport_param__bindgen_ty_1 = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_xport_param__bindgen_ty_2 {
pub name: *mut ::std::os::raw::c_char,
pub namelen: usize,
pub timeout: *mut timeval,
pub addr: *mut sockaddr,
pub buf: *mut ::std::os::raw::c_char,
pub buflen: usize,
pub addrlen: socklen_t,
pub backlog: ::std::os::raw::c_int,
pub flags: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__php_stream_xport_param__bindgen_ty_2() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_xport_param__bindgen_ty_2> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_xport_param__bindgen_ty_2>(),
64usize,
concat!(
"Size of: ",
stringify!(_php_stream_xport_param__bindgen_ty_2)
)
);
assert_eq!(
::std::mem::align_of::<_php_stream_xport_param__bindgen_ty_2>(),
8usize,
concat!(
"Alignment of ",
stringify!(_php_stream_xport_param__bindgen_ty_2)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_2),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).namelen) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_2),
"::",
stringify!(namelen)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).timeout) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_2),
"::",
stringify!(timeout)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).addr) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_2),
"::",
stringify!(addr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).buf) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_2),
"::",
stringify!(buf)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).buflen) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_2),
"::",
stringify!(buflen)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).addrlen) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_2),
"::",
stringify!(addrlen)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).backlog) as usize - ptr as usize },
52usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_2),
"::",
stringify!(backlog)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_2),
"::",
stringify!(flags)
)
);
}
impl Default for _php_stream_xport_param__bindgen_ty_2 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_xport_param__bindgen_ty_3 {
pub client: *mut php_stream,
pub addr: *mut sockaddr,
pub addrlen: socklen_t,
pub textaddr: *mut zend_string,
pub error_text: *mut zend_string,
pub returncode: ::std::os::raw::c_int,
pub error_code: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__php_stream_xport_param__bindgen_ty_3() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_xport_param__bindgen_ty_3> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_xport_param__bindgen_ty_3>(),
48usize,
concat!(
"Size of: ",
stringify!(_php_stream_xport_param__bindgen_ty_3)
)
);
assert_eq!(
::std::mem::align_of::<_php_stream_xport_param__bindgen_ty_3>(),
8usize,
concat!(
"Alignment of ",
stringify!(_php_stream_xport_param__bindgen_ty_3)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).client) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_3),
"::",
stringify!(client)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).addr) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_3),
"::",
stringify!(addr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).addrlen) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_3),
"::",
stringify!(addrlen)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).textaddr) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_3),
"::",
stringify!(textaddr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).error_text) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_3),
"::",
stringify!(error_text)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).returncode) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_3),
"::",
stringify!(returncode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).error_code) as usize - ptr as usize },
44usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param__bindgen_ty_3),
"::",
stringify!(error_code)
)
);
}
impl Default for _php_stream_xport_param__bindgen_ty_3 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[test]
fn bindgen_test_layout__php_stream_xport_param() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_xport_param> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_xport_param>(),
120usize,
concat!("Size of: ", stringify!(_php_stream_xport_param))
);
assert_eq!(
::std::mem::align_of::<_php_stream_xport_param>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_xport_param))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).op) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param),
"::",
stringify!(op)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).inputs) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param),
"::",
stringify!(inputs)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).outputs) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_param),
"::",
stringify!(outputs)
)
);
}
impl Default for _php_stream_xport_param {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
impl _php_stream_xport_param {
#[inline]
pub fn want_addr(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
}
#[inline]
pub fn set_want_addr(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 1u8, val as u64)
}
}
#[inline]
pub fn want_textaddr(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
}
#[inline]
pub fn set_want_textaddr(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(1usize, 1u8, val as u64)
}
}
#[inline]
pub fn want_errortext(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
}
#[inline]
pub fn set_want_errortext(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(2usize, 1u8, val as u64)
}
}
#[inline]
pub fn how(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 2u8) as u32) }
}
#[inline]
pub fn set_how(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(3usize, 2u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(
want_addr: ::std::os::raw::c_uint,
want_textaddr: ::std::os::raw::c_uint,
want_errortext: ::std::os::raw::c_uint,
how: ::std::os::raw::c_uint,
) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 1u8, {
let want_addr: u32 = unsafe { ::std::mem::transmute(want_addr) };
want_addr as u64
});
__bindgen_bitfield_unit.set(1usize, 1u8, {
let want_textaddr: u32 = unsafe { ::std::mem::transmute(want_textaddr) };
want_textaddr as u64
});
__bindgen_bitfield_unit.set(2usize, 1u8, {
let want_errortext: u32 = unsafe { ::std::mem::transmute(want_errortext) };
want_errortext as u64
});
__bindgen_bitfield_unit.set(3usize, 2u8, {
let how: u32 = unsafe { ::std::mem::transmute(how) };
how as u64
});
__bindgen_bitfield_unit
}
}
pub type php_stream_xport_param = _php_stream_xport_param;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv2_CLIENT:
php_stream_xport_crypt_method_t = 3;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv3_CLIENT:
php_stream_xport_crypt_method_t = 5;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv23_CLIENT:
php_stream_xport_crypt_method_t = 57;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT:
php_stream_xport_crypt_method_t = 9;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT:
php_stream_xport_crypt_method_t = 17;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT:
php_stream_xport_crypt_method_t = 33;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_3_CLIENT:
php_stream_xport_crypt_method_t = 65;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_CLIENT:
php_stream_xport_crypt_method_t = 121;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_ANY_CLIENT:
php_stream_xport_crypt_method_t = 121;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_ANY_CLIENT:
php_stream_xport_crypt_method_t = 127;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv2_SERVER:
php_stream_xport_crypt_method_t = 2;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv3_SERVER:
php_stream_xport_crypt_method_t = 4;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv23_SERVER:
php_stream_xport_crypt_method_t = 120;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_0_SERVER:
php_stream_xport_crypt_method_t = 8;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_1_SERVER:
php_stream_xport_crypt_method_t = 16;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_2_SERVER:
php_stream_xport_crypt_method_t = 32;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_3_SERVER:
php_stream_xport_crypt_method_t = 64;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_SERVER:
php_stream_xport_crypt_method_t = 120;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_ANY_SERVER:
php_stream_xport_crypt_method_t = 120;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_ANY_SERVER:
php_stream_xport_crypt_method_t = 126;
pub type php_stream_xport_crypt_method_t = ::std::os::raw::c_uint;
extern "C" {
pub fn php_stream_xport_crypto_setup(
stream: *mut php_stream,
crypto_method: php_stream_xport_crypt_method_t,
session_stream: *mut php_stream,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_stream_xport_crypto_enable(
stream: *mut php_stream,
activate: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_xport_crypto_param {
pub inputs: _php_stream_xport_crypto_param__bindgen_ty_1,
pub outputs: _php_stream_xport_crypto_param__bindgen_ty_2,
pub op: _php_stream_xport_crypto_param__bindgen_ty_3,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_xport_crypto_param__bindgen_ty_1 {
pub session: *mut php_stream,
pub activate: ::std::os::raw::c_int,
pub method: php_stream_xport_crypt_method_t,
}
#[test]
fn bindgen_test_layout__php_stream_xport_crypto_param__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_xport_crypto_param__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_xport_crypto_param__bindgen_ty_1>(),
16usize,
concat!(
"Size of: ",
stringify!(_php_stream_xport_crypto_param__bindgen_ty_1)
)
);
assert_eq!(
::std::mem::align_of::<_php_stream_xport_crypto_param__bindgen_ty_1>(),
8usize,
concat!(
"Alignment of ",
stringify!(_php_stream_xport_crypto_param__bindgen_ty_1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).session) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_crypto_param__bindgen_ty_1),
"::",
stringify!(session)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_crypto_param__bindgen_ty_1),
"::",
stringify!(activate)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).method) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_crypto_param__bindgen_ty_1),
"::",
stringify!(method)
)
);
}
impl Default for _php_stream_xport_crypto_param__bindgen_ty_1 {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _php_stream_xport_crypto_param__bindgen_ty_2 {
pub returncode: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__php_stream_xport_crypto_param__bindgen_ty_2() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_xport_crypto_param__bindgen_ty_2> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_xport_crypto_param__bindgen_ty_2>(),
4usize,
concat!(
"Size of: ",
stringify!(_php_stream_xport_crypto_param__bindgen_ty_2)
)
);
assert_eq!(
::std::mem::align_of::<_php_stream_xport_crypto_param__bindgen_ty_2>(),
4usize,
concat!(
"Alignment of ",
stringify!(_php_stream_xport_crypto_param__bindgen_ty_2)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).returncode) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_crypto_param__bindgen_ty_2),
"::",
stringify!(returncode)
)
);
}
pub const _php_stream_xport_crypto_param_STREAM_XPORT_CRYPTO_OP_SETUP:
_php_stream_xport_crypto_param__bindgen_ty_3 = 0;
pub const _php_stream_xport_crypto_param_STREAM_XPORT_CRYPTO_OP_ENABLE:
_php_stream_xport_crypto_param__bindgen_ty_3 = 1;
pub type _php_stream_xport_crypto_param__bindgen_ty_3 = ::std::os::raw::c_uint;
#[test]
fn bindgen_test_layout__php_stream_xport_crypto_param() {
const UNINIT: ::std::mem::MaybeUninit<_php_stream_xport_crypto_param> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_stream_xport_crypto_param>(),
24usize,
concat!("Size of: ", stringify!(_php_stream_xport_crypto_param))
);
assert_eq!(
::std::mem::align_of::<_php_stream_xport_crypto_param>(),
8usize,
concat!("Alignment of ", stringify!(_php_stream_xport_crypto_param))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).inputs) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_crypto_param),
"::",
stringify!(inputs)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).outputs) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_crypto_param),
"::",
stringify!(outputs)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).op) as usize - ptr as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(_php_stream_xport_crypto_param),
"::",
stringify!(op)
)
);
}
impl Default for _php_stream_xport_crypto_param {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type php_stream_xport_crypto_param = _php_stream_xport_crypto_param;
extern "C" {
pub fn php_stream_xport_get_hash() -> *mut HashTable;
}
extern "C" {
pub fn php_stream_generic_socket_factory(
proto: *const ::std::os::raw::c_char,
protolen: usize,
resourcename: *const ::std::os::raw::c_char,
resourcenamelen: usize,
persistent_id: *const ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
flags: ::std::os::raw::c_int,
timeout: *mut timeval,
context: *mut php_stream_context,
) -> *mut php_stream;
}
extern "C" {
pub static mut php_stream_stdio_ops: php_stream_ops;
}
extern "C" {
pub static mut php_plain_files_wrapper: php_stream_wrapper;
}
extern "C" {
pub fn _php_stream_fopen(
filename: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
opened_path: *mut *mut zend_string,
options: ::std::os::raw::c_int,
) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_fopen_with_path(
filename: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
path: *const ::std::os::raw::c_char,
opened_path: *mut *mut zend_string,
options: ::std::os::raw::c_int,
) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_fopen_from_file(
file: *mut FILE,
mode: *const ::std::os::raw::c_char,
) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_fopen_from_fd(
fd: ::std::os::raw::c_int,
mode: *const ::std::os::raw::c_char,
persistent_id: *const ::std::os::raw::c_char,
) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_fopen_from_pipe(
file: *mut FILE,
mode: *const ::std::os::raw::c_char,
) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_fopen_tmpfile(dummy: ::std::os::raw::c_int) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_fopen_temporary_file(
dir: *const ::std::os::raw::c_char,
pfx: *const ::std::os::raw::c_char,
opened_path: *mut *mut zend_string,
) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_open_wrapper_as_file(
path: *mut ::std::os::raw::c_char,
mode: *mut ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
opened_path: *mut *mut zend_string,
) -> *mut FILE;
}
extern "C" {
pub fn php_stream_parse_fopen_modes(
mode: *const ::std::os::raw::c_char,
open_flags: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub static php_glob_stream_wrapper: php_stream_wrapper;
}
extern "C" {
pub static php_glob_stream_ops: php_stream_ops;
}
extern "C" {
pub fn _php_glob_stream_get_path(
stream: *mut php_stream,
plen: *mut usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn _php_glob_stream_get_pattern(
stream: *mut php_stream,
plen: *mut usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn _php_glob_stream_get_count(
stream: *mut php_stream,
pflags: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub static php_stream_userspace_ops: php_stream_ops;
}
extern "C" {
pub static php_stream_userspace_dir_ops: php_stream_ops;
}
pub const php_stream_mmap_operation_t_PHP_STREAM_MMAP_SUPPORTED: php_stream_mmap_operation_t = 0;
pub const php_stream_mmap_operation_t_PHP_STREAM_MMAP_MAP_RANGE: php_stream_mmap_operation_t = 1;
pub const php_stream_mmap_operation_t_PHP_STREAM_MMAP_UNMAP: php_stream_mmap_operation_t = 2;
pub type php_stream_mmap_operation_t = ::std::os::raw::c_uint;
pub const php_stream_mmap_access_t_PHP_STREAM_MAP_MODE_READONLY: php_stream_mmap_access_t = 0;
pub const php_stream_mmap_access_t_PHP_STREAM_MAP_MODE_READWRITE: php_stream_mmap_access_t = 1;
pub const php_stream_mmap_access_t_PHP_STREAM_MAP_MODE_SHARED_READONLY: php_stream_mmap_access_t =
2;
pub const php_stream_mmap_access_t_PHP_STREAM_MAP_MODE_SHARED_READWRITE: php_stream_mmap_access_t =
3;
pub type php_stream_mmap_access_t = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct php_stream_mmap_range {
pub offset: usize,
pub length: usize,
pub mode: php_stream_mmap_access_t,
pub mapped: *mut ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout_php_stream_mmap_range() {
const UNINIT: ::std::mem::MaybeUninit<php_stream_mmap_range> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<php_stream_mmap_range>(),
32usize,
concat!("Size of: ", stringify!(php_stream_mmap_range))
);
assert_eq!(
::std::mem::align_of::<php_stream_mmap_range>(),
8usize,
concat!("Alignment of ", stringify!(php_stream_mmap_range))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).offset) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(php_stream_mmap_range),
"::",
stringify!(offset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).length) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(php_stream_mmap_range),
"::",
stringify!(length)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(php_stream_mmap_range),
"::",
stringify!(mode)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mapped) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(php_stream_mmap_range),
"::",
stringify!(mapped)
)
);
}
impl Default for php_stream_mmap_range {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub fn _php_stream_mmap_range(
stream: *mut php_stream,
offset: usize,
length: usize,
mode: php_stream_mmap_access_t,
mapped_len: *mut usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn _php_stream_mmap_unmap(stream: *mut php_stream) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_mmap_unmap_ex(
stream: *mut php_stream,
readden: zend_off_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_cast(
stream: *mut php_stream,
castas: ::std::os::raw::c_int,
ret: *mut *mut ::std::os::raw::c_void,
show_err: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_init_stream_wrappers(module_number: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_shutdown_stream_wrappers(
module_number: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_shutdown_stream_hashes();
}
extern "C" {
pub fn zm_deactivate_streams(
type_: ::std::os::raw::c_int,
module_number: ::std::os::raw::c_int,
) -> zend_result;
}
extern "C" {
pub fn php_register_url_stream_wrapper(
protocol: *const ::std::os::raw::c_char,
wrapper: *const php_stream_wrapper,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_unregister_url_stream_wrapper(
protocol: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_register_url_stream_wrapper_volatile(
protocol: *mut zend_string,
wrapper: *mut php_stream_wrapper,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_unregister_url_stream_wrapper_volatile(
protocol: *mut zend_string,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_open_wrapper_ex(
path: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
opened_path: *mut *mut zend_string,
context: *mut php_stream_context,
) -> *mut php_stream;
}
extern "C" {
pub fn php_stream_locate_url_wrapper(
path: *const ::std::os::raw::c_char,
path_for_open: *mut *const ::std::os::raw::c_char,
options: ::std::os::raw::c_int,
) -> *mut php_stream_wrapper;
}
extern "C" {
pub fn php_stream_locate_eol(
stream: *mut php_stream,
buf: *mut zend_string,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn php_stream_wrapper_log_error(
wrapper: *const php_stream_wrapper,
options: ::std::os::raw::c_int,
fmt: *const ::std::os::raw::c_char,
...
);
}
extern "C" {
pub fn _php_stream_make_seekable(
origstream: *mut php_stream,
newstream: *mut *mut php_stream,
flags: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_get_url_stream_wrappers_hash() -> *mut HashTable;
}
extern "C" {
pub fn php_stream_get_url_stream_wrappers_hash_global() -> *mut HashTable;
}
extern "C" {
pub fn _php_get_stream_filters_hash() -> *mut HashTable;
}
extern "C" {
pub fn php_get_stream_filters_hash_global() -> *mut HashTable;
}
extern "C" {
pub static mut php_stream_user_wrapper_ops: *const php_stream_wrapper_ops;
}
extern "C" {
pub fn _php_stream_memory_create(mode: ::std::os::raw::c_int) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_memory_open(
mode: ::std::os::raw::c_int,
buf: *mut zend_string,
) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_memory_get_buffer(stream: *mut php_stream) -> *mut zend_string;
}
extern "C" {
pub fn _php_stream_temp_create(
mode: ::std::os::raw::c_int,
max_memory_usage: usize,
) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_temp_create_ex(
mode: ::std::os::raw::c_int,
max_memory_usage: usize,
tmpdir: *const ::std::os::raw::c_char,
) -> *mut php_stream;
}
extern "C" {
pub fn _php_stream_temp_open(
mode: ::std::os::raw::c_int,
max_memory_usage: usize,
buf: *const ::std::os::raw::c_char,
length: usize,
) -> *mut php_stream;
}
extern "C" {
pub fn php_stream_mode_from_str(mode: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _php_stream_mode_to_str(mode: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub static php_stream_memory_ops: php_stream_ops;
}
extern "C" {
pub static php_stream_temp_ops: php_stream_ops;
}
extern "C" {
pub static php_stream_rfc2397_ops: php_stream_ops;
}
extern "C" {
pub static php_stream_rfc2397_wrapper: php_stream_wrapper;
}
pub type php_core_globals = _php_core_globals;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _php_core_globals {
pub implicit_flush: bool,
pub output_buffering: zend_long,
pub enable_dl: bool,
pub output_handler: *mut ::std::os::raw::c_char,
pub unserialize_callback_func: *mut ::std::os::raw::c_char,
pub serialize_precision: zend_long,
pub memory_limit: zend_long,
pub max_input_time: zend_long,
pub display_errors: zend_uchar,
pub display_startup_errors: bool,
pub log_errors: bool,
pub ignore_repeated_errors: bool,
pub ignore_repeated_source: bool,
pub report_memleaks: bool,
pub error_log: *mut ::std::os::raw::c_char,
pub doc_root: *mut ::std::os::raw::c_char,
pub user_dir: *mut ::std::os::raw::c_char,
pub include_path: *mut ::std::os::raw::c_char,
pub open_basedir: *mut ::std::os::raw::c_char,
pub extension_dir: *mut ::std::os::raw::c_char,
pub php_binary: *mut ::std::os::raw::c_char,
pub sys_temp_dir: *mut ::std::os::raw::c_char,
pub upload_tmp_dir: *mut ::std::os::raw::c_char,
pub upload_max_filesize: zend_long,
pub error_append_string: *mut ::std::os::raw::c_char,
pub error_prepend_string: *mut ::std::os::raw::c_char,
pub auto_prepend_file: *mut ::std::os::raw::c_char,
pub auto_append_file: *mut ::std::os::raw::c_char,
pub input_encoding: *mut ::std::os::raw::c_char,
pub internal_encoding: *mut ::std::os::raw::c_char,
pub output_encoding: *mut ::std::os::raw::c_char,
pub arg_separator: arg_separators,
pub variables_order: *mut ::std::os::raw::c_char,
pub rfc1867_protected_variables: HashTable,
pub connection_status: ::std::os::raw::c_short,
pub ignore_user_abort: bool,
pub header_is_being_sent: ::std::os::raw::c_uchar,
pub tick_functions: zend_llist,
pub http_globals: [zval; 6usize],
pub expose_php: bool,
pub register_argc_argv: bool,
pub auto_globals_jit: bool,
pub docref_root: *mut ::std::os::raw::c_char,
pub docref_ext: *mut ::std::os::raw::c_char,
pub html_errors: bool,
pub xmlrpc_errors: bool,
pub xmlrpc_error_number: zend_long,
pub activated_auto_globals: [bool; 8usize],
pub modules_activated: bool,
pub file_uploads: bool,
pub during_request_startup: bool,
pub allow_url_fopen: bool,
pub enable_post_data_reading: bool,
pub report_zend_debug: bool,
pub last_error_type: ::std::os::raw::c_int,
pub last_error_message: *mut zend_string,
pub last_error_file: *mut zend_string,
pub last_error_lineno: ::std::os::raw::c_int,
pub php_sys_temp_dir: *mut ::std::os::raw::c_char,
pub disable_classes: *mut ::std::os::raw::c_char,
pub allow_url_include: bool,
pub max_input_nesting_level: zend_long,
pub max_input_vars: zend_long,
pub in_user_include: bool,
pub user_ini_filename: *mut ::std::os::raw::c_char,
pub user_ini_cache_ttl: zend_long,
pub request_order: *mut ::std::os::raw::c_char,
pub mail_x_header: bool,
pub mail_log: *mut ::std::os::raw::c_char,
pub in_error_log: bool,
pub syslog_facility: zend_long,
pub syslog_ident: *mut ::std::os::raw::c_char,
pub have_called_openlog: bool,
pub syslog_filter: zend_long,
}
#[test]
fn bindgen_test_layout__php_core_globals() {
const UNINIT: ::std::mem::MaybeUninit<_php_core_globals> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_php_core_globals>(),
664usize,
concat!("Size of: ", stringify!(_php_core_globals))
);
assert_eq!(
::std::mem::align_of::<_php_core_globals>(),
8usize,
concat!("Alignment of ", stringify!(_php_core_globals))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).implicit_flush) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(implicit_flush)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).output_buffering) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(output_buffering)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).enable_dl) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(enable_dl)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).output_handler) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(output_handler)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).unserialize_callback_func) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(unserialize_callback_func)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).serialize_precision) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(serialize_precision)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).memory_limit) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(memory_limit)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).max_input_time) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(max_input_time)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).display_errors) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(display_errors)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).display_startup_errors) as usize - ptr as usize },
65usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(display_startup_errors)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).log_errors) as usize - ptr as usize },
66usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(log_errors)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ignore_repeated_errors) as usize - ptr as usize },
67usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(ignore_repeated_errors)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ignore_repeated_source) as usize - ptr as usize },
68usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(ignore_repeated_source)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).report_memleaks) as usize - ptr as usize },
69usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(report_memleaks)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).error_log) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(error_log)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).doc_root) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(doc_root)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).user_dir) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(user_dir)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).include_path) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(include_path)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).open_basedir) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(open_basedir)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).extension_dir) as usize - ptr as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(extension_dir)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).php_binary) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(php_binary)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sys_temp_dir) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(sys_temp_dir)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).upload_tmp_dir) as usize - ptr as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(upload_tmp_dir)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).upload_max_filesize) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(upload_max_filesize)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).error_append_string) as usize - ptr as usize },
152usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(error_append_string)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).error_prepend_string) as usize - ptr as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(error_prepend_string)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).auto_prepend_file) as usize - ptr as usize },
168usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(auto_prepend_file)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).auto_append_file) as usize - ptr as usize },
176usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(auto_append_file)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).input_encoding) as usize - ptr as usize },
184usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(input_encoding)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).internal_encoding) as usize - ptr as usize },
192usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(internal_encoding)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).output_encoding) as usize - ptr as usize },
200usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(output_encoding)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).arg_separator) as usize - ptr as usize },
208usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(arg_separator)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).variables_order) as usize - ptr as usize },
224usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(variables_order)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).rfc1867_protected_variables) as usize - ptr as usize },
232usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(rfc1867_protected_variables)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).connection_status) as usize - ptr as usize },
288usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(connection_status)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ignore_user_abort) as usize - ptr as usize },
290usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(ignore_user_abort)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).header_is_being_sent) as usize - ptr as usize },
291usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(header_is_being_sent)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).tick_functions) as usize - ptr as usize },
296usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(tick_functions)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).http_globals) as usize - ptr as usize },
352usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(http_globals)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).expose_php) as usize - ptr as usize },
448usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(expose_php)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).register_argc_argv) as usize - ptr as usize },
449usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(register_argc_argv)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).auto_globals_jit) as usize - ptr as usize },
450usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(auto_globals_jit)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).docref_root) as usize - ptr as usize },
456usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(docref_root)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).docref_ext) as usize - ptr as usize },
464usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(docref_ext)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).html_errors) as usize - ptr as usize },
472usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(html_errors)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).xmlrpc_errors) as usize - ptr as usize },
473usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(xmlrpc_errors)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).xmlrpc_error_number) as usize - ptr as usize },
480usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(xmlrpc_error_number)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).activated_auto_globals) as usize - ptr as usize },
488usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(activated_auto_globals)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).modules_activated) as usize - ptr as usize },
496usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(modules_activated)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).file_uploads) as usize - ptr as usize },
497usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(file_uploads)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).during_request_startup) as usize - ptr as usize },
498usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(during_request_startup)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).allow_url_fopen) as usize - ptr as usize },
499usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(allow_url_fopen)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).enable_post_data_reading) as usize - ptr as usize },
500usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(enable_post_data_reading)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).report_zend_debug) as usize - ptr as usize },
501usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(report_zend_debug)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).last_error_type) as usize - ptr as usize },
504usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(last_error_type)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).last_error_message) as usize - ptr as usize },
512usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(last_error_message)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).last_error_file) as usize - ptr as usize },
520usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(last_error_file)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).last_error_lineno) as usize - ptr as usize },
528usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(last_error_lineno)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).php_sys_temp_dir) as usize - ptr as usize },
536usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(php_sys_temp_dir)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).disable_classes) as usize - ptr as usize },
544usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(disable_classes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).allow_url_include) as usize - ptr as usize },
552usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(allow_url_include)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).max_input_nesting_level) as usize - ptr as usize },
560usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(max_input_nesting_level)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).max_input_vars) as usize - ptr as usize },
568usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(max_input_vars)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).in_user_include) as usize - ptr as usize },
576usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(in_user_include)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).user_ini_filename) as usize - ptr as usize },
584usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(user_ini_filename)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).user_ini_cache_ttl) as usize - ptr as usize },
592usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(user_ini_cache_ttl)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).request_order) as usize - ptr as usize },
600usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(request_order)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mail_x_header) as usize - ptr as usize },
608usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(mail_x_header)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mail_log) as usize - ptr as usize },
616usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(mail_log)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).in_error_log) as usize - ptr as usize },
624usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(in_error_log)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).syslog_facility) as usize - ptr as usize },
632usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(syslog_facility)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).syslog_ident) as usize - ptr as usize },
640usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(syslog_ident)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).have_called_openlog) as usize - ptr as usize },
648usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(have_called_openlog)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).syslog_filter) as usize - ptr as usize },
656usize,
concat!(
"Offset of field: ",
stringify!(_php_core_globals),
"::",
stringify!(syslog_filter)
)
);
}
impl Default for _php_core_globals {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub static mut core_globals: _php_core_globals;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_tick_function_entry {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _arg_separators {
pub output: *mut ::std::os::raw::c_char,
pub input: *mut ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout__arg_separators() {
const UNINIT: ::std::mem::MaybeUninit<_arg_separators> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_arg_separators>(),
16usize,
concat!("Size of: ", stringify!(_arg_separators))
);
assert_eq!(
::std::mem::align_of::<_arg_separators>(),
8usize,
concat!("Alignment of ", stringify!(_arg_separators))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).output) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_arg_separators),
"::",
stringify!(output)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).input) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_arg_separators),
"::",
stringify!(input)
)
);
}
impl Default for _arg_separators {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type arg_separators = _arg_separators;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ini_entry_def {
pub name: *const ::std::os::raw::c_char,
pub on_modify: ::std::option::Option<
unsafe extern "C" fn(
entry: *mut zend_ini_entry,
new_value: *mut zend_string,
mh_arg1: *mut ::std::os::raw::c_void,
mh_arg2: *mut ::std::os::raw::c_void,
mh_arg3: *mut ::std::os::raw::c_void,
stage: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>,
pub mh_arg1: *mut ::std::os::raw::c_void,
pub mh_arg2: *mut ::std::os::raw::c_void,
pub mh_arg3: *mut ::std::os::raw::c_void,
pub value: *const ::std::os::raw::c_char,
pub displayer: ::std::option::Option<
unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
>,
pub value_length: u32,
pub name_length: u16,
pub modifiable: u8,
}
#[test]
fn bindgen_test_layout__zend_ini_entry_def() {
const UNINIT: ::std::mem::MaybeUninit<_zend_ini_entry_def> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_ini_entry_def>(),
64usize,
concat!("Size of: ", stringify!(_zend_ini_entry_def))
);
assert_eq!(
::std::mem::align_of::<_zend_ini_entry_def>(),
8usize,
concat!("Alignment of ", stringify!(_zend_ini_entry_def))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry_def),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).on_modify) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry_def),
"::",
stringify!(on_modify)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mh_arg1) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry_def),
"::",
stringify!(mh_arg1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mh_arg2) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry_def),
"::",
stringify!(mh_arg2)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mh_arg3) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry_def),
"::",
stringify!(mh_arg3)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry_def),
"::",
stringify!(value)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).displayer) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry_def),
"::",
stringify!(displayer)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).value_length) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry_def),
"::",
stringify!(value_length)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name_length) as usize - ptr as usize },
60usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry_def),
"::",
stringify!(name_length)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).modifiable) as usize - ptr as usize },
62usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry_def),
"::",
stringify!(modifiable)
)
);
}
impl Default for _zend_ini_entry_def {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_ini_entry_def = _zend_ini_entry_def;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ini_entry {
pub name: *mut zend_string,
pub on_modify: ::std::option::Option<
unsafe extern "C" fn(
entry: *mut zend_ini_entry,
new_value: *mut zend_string,
mh_arg1: *mut ::std::os::raw::c_void,
mh_arg2: *mut ::std::os::raw::c_void,
mh_arg3: *mut ::std::os::raw::c_void,
stage: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>,
pub mh_arg1: *mut ::std::os::raw::c_void,
pub mh_arg2: *mut ::std::os::raw::c_void,
pub mh_arg3: *mut ::std::os::raw::c_void,
pub value: *mut zend_string,
pub orig_value: *mut zend_string,
pub displayer: ::std::option::Option<
unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
>,
pub module_number: ::std::os::raw::c_int,
pub modifiable: u8,
pub orig_modifiable: u8,
pub modified: u8,
}
#[test]
fn bindgen_test_layout__zend_ini_entry() {
const UNINIT: ::std::mem::MaybeUninit<_zend_ini_entry> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_ini_entry>(),
72usize,
concat!("Size of: ", stringify!(_zend_ini_entry))
);
assert_eq!(
::std::mem::align_of::<_zend_ini_entry>(),
8usize,
concat!("Alignment of ", stringify!(_zend_ini_entry))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).on_modify) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry),
"::",
stringify!(on_modify)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mh_arg1) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry),
"::",
stringify!(mh_arg1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mh_arg2) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry),
"::",
stringify!(mh_arg2)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mh_arg3) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry),
"::",
stringify!(mh_arg3)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry),
"::",
stringify!(value)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).orig_value) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry),
"::",
stringify!(orig_value)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).displayer) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry),
"::",
stringify!(displayer)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).module_number) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry),
"::",
stringify!(module_number)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).modifiable) as usize - ptr as usize },
68usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry),
"::",
stringify!(modifiable)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).orig_modifiable) as usize - ptr as usize },
69usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry),
"::",
stringify!(orig_modifiable)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).modified) as usize - ptr as usize },
70usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_entry),
"::",
stringify!(modified)
)
);
}
impl Default for _zend_ini_entry {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub fn zend_ini_startup();
}
extern "C" {
pub fn zend_ini_shutdown();
}
extern "C" {
pub fn zend_ini_global_shutdown();
}
extern "C" {
pub fn zend_ini_deactivate();
}
extern "C" {
pub fn zend_ini_dtor(ini_directives: *mut HashTable);
}
extern "C" {
pub fn zend_copy_ini_directives();
}
extern "C" {
pub fn zend_ini_sort_entries();
}
extern "C" {
pub fn zend_register_ini_entries(
ini_entry: *const zend_ini_entry_def,
module_number: ::std::os::raw::c_int,
) -> zend_result;
}
extern "C" {
pub fn zend_unregister_ini_entries(module_number: ::std::os::raw::c_int);
}
extern "C" {
pub fn zend_ini_refresh_caches(stage: ::std::os::raw::c_int);
}
extern "C" {
pub fn zend_alter_ini_entry(
name: *mut zend_string,
new_value: *mut zend_string,
modify_type: ::std::os::raw::c_int,
stage: ::std::os::raw::c_int,
) -> zend_result;
}
extern "C" {
pub fn zend_alter_ini_entry_ex(
name: *mut zend_string,
new_value: *mut zend_string,
modify_type: ::std::os::raw::c_int,
stage: ::std::os::raw::c_int,
force_change: bool,
) -> zend_result;
}
extern "C" {
pub fn zend_alter_ini_entry_chars(
name: *mut zend_string,
value: *const ::std::os::raw::c_char,
value_length: usize,
modify_type: ::std::os::raw::c_int,
stage: ::std::os::raw::c_int,
) -> zend_result;
}
extern "C" {
pub fn zend_alter_ini_entry_chars_ex(
name: *mut zend_string,
value: *const ::std::os::raw::c_char,
value_length: usize,
modify_type: ::std::os::raw::c_int,
stage: ::std::os::raw::c_int,
force_change: ::std::os::raw::c_int,
) -> zend_result;
}
extern "C" {
pub fn zend_restore_ini_entry(
name: *mut zend_string,
stage: ::std::os::raw::c_int,
) -> zend_result;
}
extern "C" {
pub fn display_ini_entries(module: *mut zend_module_entry);
}
extern "C" {
pub fn zend_ini_long(
name: *const ::std::os::raw::c_char,
name_length: usize,
orig: ::std::os::raw::c_int,
) -> zend_long;
}
extern "C" {
pub fn zend_ini_double(
name: *const ::std::os::raw::c_char,
name_length: usize,
orig: ::std::os::raw::c_int,
) -> f64;
}
extern "C" {
pub fn zend_ini_string(
name: *const ::std::os::raw::c_char,
name_length: usize,
orig: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_ini_string_ex(
name: *const ::std::os::raw::c_char,
name_length: usize,
orig: ::std::os::raw::c_int,
exists: *mut bool,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn zend_ini_get_value(name: *mut zend_string) -> *mut zend_string;
}
extern "C" {
pub fn zend_ini_parse_bool(str_: *mut zend_string) -> bool;
}
extern "C" {
pub fn zend_ini_register_displayer(
name: *const ::std::os::raw::c_char,
name_length: u32,
displayer: ::std::option::Option<
unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
>,
) -> zend_result;
}
extern "C" {
pub fn zend_ini_boolean_displayer_cb(
ini_entry: *mut zend_ini_entry,
type_: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_ini_color_displayer_cb(
ini_entry: *mut zend_ini_entry,
type_: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn display_link_numbers(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int);
}
extern "C" {
pub fn OnUpdateBool(
entry: *mut zend_ini_entry,
new_value: *mut zend_string,
mh_arg1: *mut ::std::os::raw::c_void,
mh_arg2: *mut ::std::os::raw::c_void,
mh_arg3: *mut ::std::os::raw::c_void,
stage: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn OnUpdateLong(
entry: *mut zend_ini_entry,
new_value: *mut zend_string,
mh_arg1: *mut ::std::os::raw::c_void,
mh_arg2: *mut ::std::os::raw::c_void,
mh_arg3: *mut ::std::os::raw::c_void,
stage: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn OnUpdateLongGEZero(
entry: *mut zend_ini_entry,
new_value: *mut zend_string,
mh_arg1: *mut ::std::os::raw::c_void,
mh_arg2: *mut ::std::os::raw::c_void,
mh_arg3: *mut ::std::os::raw::c_void,
stage: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn OnUpdateReal(
entry: *mut zend_ini_entry,
new_value: *mut zend_string,
mh_arg1: *mut ::std::os::raw::c_void,
mh_arg2: *mut ::std::os::raw::c_void,
mh_arg3: *mut ::std::os::raw::c_void,
stage: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn OnUpdateString(
entry: *mut zend_ini_entry,
new_value: *mut zend_string,
mh_arg1: *mut ::std::os::raw::c_void,
mh_arg2: *mut ::std::os::raw::c_void,
mh_arg3: *mut ::std::os::raw::c_void,
stage: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn OnUpdateStringUnempty(
entry: *mut zend_ini_entry,
new_value: *mut zend_string,
mh_arg1: *mut ::std::os::raw::c_void,
mh_arg2: *mut ::std::os::raw::c_void,
mh_arg3: *mut ::std::os::raw::c_void,
stage: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
pub type zend_ini_parser_cb_t = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut zval,
arg2: *mut zval,
arg3: *mut zval,
callback_type: ::std::os::raw::c_int,
arg: *mut ::std::os::raw::c_void,
),
>;
extern "C" {
pub fn zend_parse_ini_file(
fh: *mut zend_file_handle,
unbuffered_errors: bool,
scanner_mode: ::std::os::raw::c_int,
ini_parser_cb: zend_ini_parser_cb_t,
arg: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_parse_ini_string(
str_: *mut ::std::os::raw::c_char,
unbuffered_errors: bool,
scanner_mode: ::std::os::raw::c_int,
ini_parser_cb: zend_ini_parser_cb_t,
arg: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ini_parser_param {
pub ini_parser_cb: zend_ini_parser_cb_t,
pub arg: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout__zend_ini_parser_param() {
const UNINIT: ::std::mem::MaybeUninit<_zend_ini_parser_param> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_ini_parser_param>(),
16usize,
concat!("Size of: ", stringify!(_zend_ini_parser_param))
);
assert_eq!(
::std::mem::align_of::<_zend_ini_parser_param>(),
8usize,
concat!("Alignment of ", stringify!(_zend_ini_parser_param))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ini_parser_cb) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_parser_param),
"::",
stringify!(ini_parser_cb)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).arg) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_ini_parser_param),
"::",
stringify!(arg)
)
);
}
impl Default for _zend_ini_parser_param {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_ini_parser_param = _zend_ini_parser_param;
extern "C" {
pub fn config_zval_dtor(zvalue: *mut zval);
}
extern "C" {
pub fn php_init_config() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_shutdown_config() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_ini_register_extensions();
}
extern "C" {
pub fn cfg_get_entry_ex(name: *mut zend_string) -> *mut zval;
}
extern "C" {
pub fn cfg_get_entry(name: *const ::std::os::raw::c_char, name_length: usize) -> *mut zval;
}
extern "C" {
pub fn cfg_get_long(
varname: *const ::std::os::raw::c_char,
result: *mut zend_long,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn cfg_get_double(
varname: *const ::std::os::raw::c_char,
result: *mut f64,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn cfg_get_string(
varname: *const ::std::os::raw::c_char,
result: *mut *mut ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_parse_user_ini_file(
dirname: *const ::std::os::raw::c_char,
ini_filename: *const ::std::os::raw::c_char,
target_hash: *mut HashTable,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_ini_activate_config(
source_hash: *mut HashTable,
modify_type: ::std::os::raw::c_int,
stage: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn php_ini_has_per_dir_config() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_ini_has_per_host_config() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_ini_activate_per_dir_config(path: *mut ::std::os::raw::c_char, path_len: usize);
}
extern "C" {
pub fn php_ini_activate_per_host_config(host: *const ::std::os::raw::c_char, host_len: usize);
}
extern "C" {
pub fn php_ini_get_configuration_hash() -> *mut HashTable;
}
extern "C" {
pub fn php_fopen_primary_script(file_handle: *mut zend_file_handle) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn expand_filepath(
filepath: *const ::std::os::raw::c_char,
real_path: *mut ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn expand_filepath_ex(
filepath: *const ::std::os::raw::c_char,
real_path: *mut ::std::os::raw::c_char,
relative_to: *const ::std::os::raw::c_char,
relative_to_len: usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn expand_filepath_with_mode(
filepath: *const ::std::os::raw::c_char,
real_path: *mut ::std::os::raw::c_char,
relative_to: *const ::std::os::raw::c_char,
relative_to_len: usize,
use_realpath: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn php_check_open_basedir(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_check_open_basedir_ex(
path: *const ::std::os::raw::c_char,
warn: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_check_specific_open_basedir(
basedir: *const ::std::os::raw::c_char,
path: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_check_safe_mode_include_dir(
path: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn php_resolve_path(
filename: *const ::std::os::raw::c_char,
filename_len: usize,
path: *const ::std::os::raw::c_char,
) -> *mut zend_string;
}
extern "C" {
pub fn php_fopen_with_path(
filename: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
path: *const ::std::os::raw::c_char,
opened_path: *mut *mut zend_string,
) -> *mut FILE;
}
extern "C" {
pub fn php_strip_url_passwd(path: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn OnUpdateBaseDir(
entry: *mut zend_ini_entry,
new_value: *mut zend_string,
mh_arg1: *mut ::std::os::raw::c_void,
mh_arg2: *mut ::std::os::raw::c_void,
mh_arg3: *mut ::std::os::raw::c_void,
stage: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct utimbuf {
pub actime: __time_t,
pub modtime: __time_t,
}
#[test]
fn bindgen_test_layout_utimbuf() {
const UNINIT: ::std::mem::MaybeUninit<utimbuf> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<utimbuf>(),
16usize,
concat!("Size of: ", stringify!(utimbuf))
);
assert_eq!(
::std::mem::align_of::<utimbuf>(),
8usize,
concat!("Alignment of ", stringify!(utimbuf))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).actime) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(utimbuf),
"::",
stringify!(actime)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).modtime) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(utimbuf),
"::",
stringify!(modtime)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __dirstream {
_unused: [u8; 0],
}
pub type DIR = __dirstream;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _cwd_state {
pub cwd: *mut ::std::os::raw::c_char,
pub cwd_length: usize,
}
#[test]
fn bindgen_test_layout__cwd_state() {
const UNINIT: ::std::mem::MaybeUninit<_cwd_state> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_cwd_state>(),
16usize,
concat!("Size of: ", stringify!(_cwd_state))
);
assert_eq!(
::std::mem::align_of::<_cwd_state>(),
8usize,
concat!("Alignment of ", stringify!(_cwd_state))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).cwd) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_cwd_state),
"::",
stringify!(cwd)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).cwd_length) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_cwd_state),
"::",
stringify!(cwd_length)
)
);
}
impl Default for _cwd_state {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type cwd_state = _cwd_state;
pub type verify_path_func =
::std::option::Option<unsafe extern "C" fn(arg1: *const cwd_state) -> ::std::os::raw::c_int>;
extern "C" {
pub fn virtual_cwd_startup();
}
extern "C" {
pub fn virtual_cwd_shutdown();
}
extern "C" {
pub fn virtual_cwd_activate() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_cwd_deactivate() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_getcwd_ex(length: *mut usize) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn virtual_getcwd(
buf: *mut ::std::os::raw::c_char,
size: usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn virtual_chdir(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_chdir_file(
path: *const ::std::os::raw::c_char,
p_chdir: ::std::option::Option<
unsafe extern "C" fn(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int,
>,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_filepath(
path: *const ::std::os::raw::c_char,
filepath: *mut *mut ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_filepath_ex(
path: *const ::std::os::raw::c_char,
filepath: *mut *mut ::std::os::raw::c_char,
verify_path: verify_path_func,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_realpath(
path: *const ::std::os::raw::c_char,
real_path: *mut ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn virtual_fopen(
path: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
) -> *mut FILE;
}
extern "C" {
pub fn virtual_open(
path: *const ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_creat(
path: *const ::std::os::raw::c_char,
mode: mode_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_rename(
oldname: *const ::std::os::raw::c_char,
newname: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_stat(
path: *const ::std::os::raw::c_char,
buf: *mut zend_stat_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_lstat(
path: *const ::std::os::raw::c_char,
buf: *mut zend_stat_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_unlink(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_mkdir(
pathname: *const ::std::os::raw::c_char,
mode: mode_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_rmdir(pathname: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_opendir(pathname: *const ::std::os::raw::c_char) -> *mut DIR;
}
extern "C" {
pub fn virtual_popen(
command: *const ::std::os::raw::c_char,
type_: *const ::std::os::raw::c_char,
) -> *mut FILE;
}
extern "C" {
pub fn virtual_access(
pathname: *const ::std::os::raw::c_char,
mode: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_utime(
filename: *const ::std::os::raw::c_char,
buf: *mut utimbuf,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_chmod(
filename: *const ::std::os::raw::c_char,
mode: mode_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_chown(
filename: *const ::std::os::raw::c_char,
owner: uid_t,
group: gid_t,
link: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn virtual_file_ex(
state: *mut cwd_state,
path: *const ::std::os::raw::c_char,
verify_path: verify_path_func,
use_realpath: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn tsrm_realpath(
path: *const ::std::os::raw::c_char,
real_path: *mut ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _realpath_cache_bucket {
pub key: zend_ulong,
pub path: *mut ::std::os::raw::c_char,
pub realpath: *mut ::std::os::raw::c_char,
pub next: *mut _realpath_cache_bucket,
pub expires: time_t,
pub path_len: u16,
pub realpath_len: u16,
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub __bindgen_padding_0: [u8; 3usize],
}
#[test]
fn bindgen_test_layout__realpath_cache_bucket() {
const UNINIT: ::std::mem::MaybeUninit<_realpath_cache_bucket> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_realpath_cache_bucket>(),
48usize,
concat!("Size of: ", stringify!(_realpath_cache_bucket))
);
assert_eq!(
::std::mem::align_of::<_realpath_cache_bucket>(),
8usize,
concat!("Alignment of ", stringify!(_realpath_cache_bucket))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_realpath_cache_bucket),
"::",
stringify!(key)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_realpath_cache_bucket),
"::",
stringify!(path)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).realpath) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_realpath_cache_bucket),
"::",
stringify!(realpath)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_realpath_cache_bucket),
"::",
stringify!(next)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).expires) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_realpath_cache_bucket),
"::",
stringify!(expires)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).path_len) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_realpath_cache_bucket),
"::",
stringify!(path_len)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).realpath_len) as usize - ptr as usize },
42usize,
concat!(
"Offset of field: ",
stringify!(_realpath_cache_bucket),
"::",
stringify!(realpath_len)
)
);
}
impl Default for _realpath_cache_bucket {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
impl _realpath_cache_bucket {
#[inline]
pub fn is_dir(&self) -> u8 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) }
}
#[inline]
pub fn set_is_dir(&mut self, val: u8) {
unsafe {
let val: u8 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 1u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(is_dir: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 1u8, {
let is_dir: u8 = unsafe { ::std::mem::transmute(is_dir) };
is_dir as u64
});
__bindgen_bitfield_unit
}
}
pub type realpath_cache_bucket = _realpath_cache_bucket;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _virtual_cwd_globals {
pub cwd: cwd_state,
pub realpath_cache_size: zend_long,
pub realpath_cache_size_limit: zend_long,
pub realpath_cache_ttl: zend_long,
pub realpath_cache: [*mut realpath_cache_bucket; 1024usize],
}
#[test]
fn bindgen_test_layout__virtual_cwd_globals() {
const UNINIT: ::std::mem::MaybeUninit<_virtual_cwd_globals> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_virtual_cwd_globals>(),
8232usize,
concat!("Size of: ", stringify!(_virtual_cwd_globals))
);
assert_eq!(
::std::mem::align_of::<_virtual_cwd_globals>(),
8usize,
concat!("Alignment of ", stringify!(_virtual_cwd_globals))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).cwd) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_virtual_cwd_globals),
"::",
stringify!(cwd)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).realpath_cache_size) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_virtual_cwd_globals),
"::",
stringify!(realpath_cache_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).realpath_cache_size_limit) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_virtual_cwd_globals),
"::",
stringify!(realpath_cache_size_limit)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).realpath_cache_ttl) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_virtual_cwd_globals),
"::",
stringify!(realpath_cache_ttl)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).realpath_cache) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_virtual_cwd_globals),
"::",
stringify!(realpath_cache)
)
);
}
impl Default for _virtual_cwd_globals {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type virtual_cwd_globals = _virtual_cwd_globals;
extern "C" {
pub static mut cwd_globals: virtual_cwd_globals;
}
extern "C" {
pub fn realpath_cache_clean();
}
extern "C" {
pub fn realpath_cache_del(path: *const ::std::os::raw::c_char, path_len: usize);
}
extern "C" {
pub fn realpath_cache_lookup(
path: *const ::std::os::raw::c_char,
path_len: usize,
t: time_t,
) -> *mut realpath_cache_bucket;
}
extern "C" {
pub fn realpath_cache_size() -> zend_long;
}
extern "C" {
pub fn realpath_cache_max_buckets() -> zend_long;
}
extern "C" {
pub fn realpath_cache_get_buckets() -> *mut *mut realpath_cache_bucket;
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_constant {
pub value: zval,
pub name: *mut zend_string,
}
#[test]
fn bindgen_test_layout__zend_constant() {
const UNINIT: ::std::mem::MaybeUninit<_zend_constant> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_constant>(),
24usize,
concat!("Size of: ", stringify!(_zend_constant))
);
assert_eq!(
::std::mem::align_of::<_zend_constant>(),
8usize,
concat!("Alignment of ", stringify!(_zend_constant))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_constant),
"::",
stringify!(value)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_constant),
"::",
stringify!(name)
)
);
}
impl Default for _zend_constant {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_constant = _zend_constant;
extern "C" {
pub fn clean_module_constants(module_number: ::std::os::raw::c_int);
}
extern "C" {
pub fn free_zend_constant(zv: *mut zval);
}
extern "C" {
pub fn zend_startup_constants();
}
extern "C" {
pub fn zend_shutdown_constants();
}
extern "C" {
pub fn zend_register_standard_constants();
}
extern "C" {
pub fn zend_verify_const_access(c: *mut zend_class_constant, ce: *mut zend_class_entry)
-> bool;
}
extern "C" {
pub fn zend_get_constant(name: *mut zend_string) -> *mut zval;
}
extern "C" {
pub fn zend_get_constant_str(name: *const ::std::os::raw::c_char, name_len: usize)
-> *mut zval;
}
extern "C" {
pub fn zend_get_constant_ex(
name: *mut zend_string,
scope: *mut zend_class_entry,
flags: u32,
) -> *mut zval;
}
extern "C" {
pub fn zend_get_class_constant_ex(
class_name: *mut zend_string,
constant_name: *mut zend_string,
scope: *mut zend_class_entry,
flags: u32,
) -> *mut zval;
}
extern "C" {
pub fn zend_register_bool_constant(
name: *const ::std::os::raw::c_char,
name_len: usize,
bval: bool,
flags: ::std::os::raw::c_int,
module_number: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_register_null_constant(
name: *const ::std::os::raw::c_char,
name_len: usize,
flags: ::std::os::raw::c_int,
module_number: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_register_long_constant(
name: *const ::std::os::raw::c_char,
name_len: usize,
lval: zend_long,
flags: ::std::os::raw::c_int,
module_number: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_register_double_constant(
name: *const ::std::os::raw::c_char,
name_len: usize,
dval: f64,
flags: ::std::os::raw::c_int,
module_number: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_register_string_constant(
name: *const ::std::os::raw::c_char,
name_len: usize,
strval: *const ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
module_number: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_register_stringl_constant(
name: *const ::std::os::raw::c_char,
name_len: usize,
strval: *const ::std::os::raw::c_char,
strlen: usize,
flags: ::std::os::raw::c_int,
module_number: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn zend_register_constant(c: *mut zend_constant) -> zend_result;
}
extern "C" {
pub fn _zend_get_special_const(
name: *const ::std::os::raw::c_char,
name_len: usize,
) -> *mut zend_constant;
}
extern "C" {
pub fn php_info_html_esc(string: *const ::std::os::raw::c_char) -> *mut zend_string;
}
extern "C" {
pub fn php_print_info_htmlhead();
}
extern "C" {
pub fn php_print_info(flag: ::std::os::raw::c_int);
}
extern "C" {
pub fn php_print_style();
}
extern "C" {
pub fn php_info_print_style();
}
extern "C" {
pub fn php_info_print_table_colspan_header(
num_cols: ::std::os::raw::c_int,
header: *const ::std::os::raw::c_char,
);
}
extern "C" {
pub fn php_info_print_table_header(num_cols: ::std::os::raw::c_int, ...);
}
extern "C" {
pub fn php_info_print_table_row(num_cols: ::std::os::raw::c_int, ...);
}
extern "C" {
pub fn php_info_print_table_row_ex(
num_cols: ::std::os::raw::c_int,
arg1: *const ::std::os::raw::c_char,
...
);
}
extern "C" {
pub fn php_info_print_table_start();
}
extern "C" {
pub fn php_info_print_table_end();
}
extern "C" {
pub fn php_info_print_box_start(bg: ::std::os::raw::c_int);
}
extern "C" {
pub fn php_info_print_box_end();
}
extern "C" {
pub fn php_info_print_hr();
}
extern "C" {
pub fn php_info_print_module(module: *mut zend_module_entry);
}
extern "C" {
pub fn php_get_uname(mode: ::std::os::raw::c_char) -> *mut zend_string;
}
extern "C" {
pub fn register_phpinfo_constants(
type_: ::std::os::raw::c_int,
module_number: ::std::os::raw::c_int,
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct sapi_header_struct {
pub header: *mut ::std::os::raw::c_char,
pub header_len: usize,
}
#[test]
fn bindgen_test_layout_sapi_header_struct() {
const UNINIT: ::std::mem::MaybeUninit<sapi_header_struct> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<sapi_header_struct>(),
16usize,
concat!("Size of: ", stringify!(sapi_header_struct))
);
assert_eq!(
::std::mem::align_of::<sapi_header_struct>(),
8usize,
concat!("Alignment of ", stringify!(sapi_header_struct))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).header) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(sapi_header_struct),
"::",
stringify!(header)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).header_len) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(sapi_header_struct),
"::",
stringify!(header_len)
)
);
}
impl Default for sapi_header_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct sapi_headers_struct {
pub headers: zend_llist,
pub http_response_code: ::std::os::raw::c_int,
pub send_default_content_type: ::std::os::raw::c_uchar,
pub mimetype: *mut ::std::os::raw::c_char,
pub http_status_line: *mut ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout_sapi_headers_struct() {
const UNINIT: ::std::mem::MaybeUninit<sapi_headers_struct> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<sapi_headers_struct>(),
80usize,
concat!("Size of: ", stringify!(sapi_headers_struct))
);
assert_eq!(
::std::mem::align_of::<sapi_headers_struct>(),
8usize,
concat!("Alignment of ", stringify!(sapi_headers_struct))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).headers) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(sapi_headers_struct),
"::",
stringify!(headers)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).http_response_code) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(sapi_headers_struct),
"::",
stringify!(http_response_code)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).send_default_content_type) as usize - ptr as usize },
60usize,
concat!(
"Offset of field: ",
stringify!(sapi_headers_struct),
"::",
stringify!(send_default_content_type)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mimetype) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(sapi_headers_struct),
"::",
stringify!(mimetype)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).http_status_line) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(sapi_headers_struct),
"::",
stringify!(http_status_line)
)
);
}
impl Default for sapi_headers_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type sapi_post_entry = _sapi_post_entry;
pub type sapi_module_struct = _sapi_module_struct;
extern "C" {
pub static mut sapi_module: sapi_module_struct;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct sapi_request_info {
pub request_method: *const ::std::os::raw::c_char,
pub query_string: *mut ::std::os::raw::c_char,
pub cookie_data: *mut ::std::os::raw::c_char,
pub content_length: zend_long,
pub path_translated: *mut ::std::os::raw::c_char,
pub request_uri: *mut ::std::os::raw::c_char,
pub request_body: *mut _php_stream,
pub content_type: *const ::std::os::raw::c_char,
pub headers_only: bool,
pub no_headers: bool,
pub headers_read: bool,
pub post_entry: *mut sapi_post_entry,
pub content_type_dup: *mut ::std::os::raw::c_char,
pub auth_user: *mut ::std::os::raw::c_char,
pub auth_password: *mut ::std::os::raw::c_char,
pub auth_digest: *mut ::std::os::raw::c_char,
pub argv0: *mut ::std::os::raw::c_char,
pub current_user: *mut ::std::os::raw::c_char,
pub current_user_length: ::std::os::raw::c_int,
pub argc: ::std::os::raw::c_int,
pub argv: *mut *mut ::std::os::raw::c_char,
pub proto_num: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_sapi_request_info() {
const UNINIT: ::std::mem::MaybeUninit<sapi_request_info> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<sapi_request_info>(),
152usize,
concat!("Size of: ", stringify!(sapi_request_info))
);
assert_eq!(
::std::mem::align_of::<sapi_request_info>(),
8usize,
concat!("Alignment of ", stringify!(sapi_request_info))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).request_method) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(request_method)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).query_string) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(query_string)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).cookie_data) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(cookie_data)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).content_length) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(content_length)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).path_translated) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(path_translated)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).request_uri) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(request_uri)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).request_body) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(request_body)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).content_type) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(content_type)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).headers_only) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(headers_only)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).no_headers) as usize - ptr as usize },
65usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(no_headers)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).headers_read) as usize - ptr as usize },
66usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(headers_read)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).post_entry) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(post_entry)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).content_type_dup) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(content_type_dup)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).auth_user) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(auth_user)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).auth_password) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(auth_password)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).auth_digest) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(auth_digest)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).argv0) as usize - ptr as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(argv0)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).current_user) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(current_user)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).current_user_length) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(current_user_length)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).argc) as usize - ptr as usize },
132usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(argc)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).argv) as usize - ptr as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(argv)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).proto_num) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(sapi_request_info),
"::",
stringify!(proto_num)
)
);
}
impl Default for sapi_request_info {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _sapi_globals_struct {
pub server_context: *mut ::std::os::raw::c_void,
pub request_info: sapi_request_info,
pub sapi_headers: sapi_headers_struct,
pub read_post_bytes: i64,
pub post_read: ::std::os::raw::c_uchar,
pub headers_sent: ::std::os::raw::c_uchar,
pub global_stat: zend_stat_t,
pub default_mimetype: *mut ::std::os::raw::c_char,
pub default_charset: *mut ::std::os::raw::c_char,
pub rfc1867_uploaded_files: *mut HashTable,
pub post_max_size: zend_long,
pub options: ::std::os::raw::c_int,
pub sapi_started: bool,
pub global_request_time: f64,
pub known_post_content_types: HashTable,
pub callback_func: zval,
pub fci_cache: zend_fcall_info_cache,
}
#[test]
fn bindgen_test_layout__sapi_globals_struct() {
const UNINIT: ::std::mem::MaybeUninit<_sapi_globals_struct> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_sapi_globals_struct>(),
552usize,
concat!("Size of: ", stringify!(_sapi_globals_struct))
);
assert_eq!(
::std::mem::align_of::<_sapi_globals_struct>(),
8usize,
concat!("Alignment of ", stringify!(_sapi_globals_struct))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).server_context) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(server_context)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).request_info) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(request_info)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sapi_headers) as usize - ptr as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(sapi_headers)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).read_post_bytes) as usize - ptr as usize },
240usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(read_post_bytes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).post_read) as usize - ptr as usize },
248usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(post_read)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).headers_sent) as usize - ptr as usize },
249usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(headers_sent)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).global_stat) as usize - ptr as usize },
256usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(global_stat)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).default_mimetype) as usize - ptr as usize },
400usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(default_mimetype)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).default_charset) as usize - ptr as usize },
408usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(default_charset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).rfc1867_uploaded_files) as usize - ptr as usize },
416usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(rfc1867_uploaded_files)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).post_max_size) as usize - ptr as usize },
424usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(post_max_size)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).options) as usize - ptr as usize },
432usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(options)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sapi_started) as usize - ptr as usize },
436usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(sapi_started)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).global_request_time) as usize - ptr as usize },
440usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(global_request_time)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).known_post_content_types) as usize - ptr as usize },
448usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(known_post_content_types)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).callback_func) as usize - ptr as usize },
504usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(callback_func)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fci_cache) as usize - ptr as usize },
520usize,
concat!(
"Offset of field: ",
stringify!(_sapi_globals_struct),
"::",
stringify!(fci_cache)
)
);
}
impl Default for _sapi_globals_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type sapi_globals_struct = _sapi_globals_struct;
extern "C" {
pub static mut sapi_globals: sapi_globals_struct;
}
extern "C" {
pub fn sapi_startup(sf: *mut sapi_module_struct);
}
extern "C" {
pub fn sapi_shutdown();
}
extern "C" {
pub fn sapi_activate();
}
extern "C" {
pub fn sapi_deactivate();
}
extern "C" {
pub fn sapi_initialize_empty_request();
}
extern "C" {
pub fn sapi_add_request_header(
var: *const ::std::os::raw::c_char,
var_len: ::std::os::raw::c_uint,
val: *mut ::std::os::raw::c_char,
val_len: ::std::os::raw::c_uint,
arg: *mut ::std::os::raw::c_void,
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct sapi_header_line {
pub line: *const ::std::os::raw::c_char,
pub line_len: usize,
pub response_code: zend_long,
}
#[test]
fn bindgen_test_layout_sapi_header_line() {
const UNINIT: ::std::mem::MaybeUninit<sapi_header_line> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<sapi_header_line>(),
24usize,
concat!("Size of: ", stringify!(sapi_header_line))
);
assert_eq!(
::std::mem::align_of::<sapi_header_line>(),
8usize,
concat!("Alignment of ", stringify!(sapi_header_line))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(sapi_header_line),
"::",
stringify!(line)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).line_len) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(sapi_header_line),
"::",
stringify!(line_len)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).response_code) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(sapi_header_line),
"::",
stringify!(response_code)
)
);
}
impl Default for sapi_header_line {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub const sapi_header_op_enum_SAPI_HEADER_REPLACE: sapi_header_op_enum = 0;
pub const sapi_header_op_enum_SAPI_HEADER_ADD: sapi_header_op_enum = 1;
pub const sapi_header_op_enum_SAPI_HEADER_DELETE: sapi_header_op_enum = 2;
pub const sapi_header_op_enum_SAPI_HEADER_DELETE_ALL: sapi_header_op_enum = 3;
pub const sapi_header_op_enum_SAPI_HEADER_SET_STATUS: sapi_header_op_enum = 4;
pub type sapi_header_op_enum = ::std::os::raw::c_uint;
extern "C" {
pub fn sapi_header_op(
op: sapi_header_op_enum,
arg: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_add_header_ex(
header_line: *const ::std::os::raw::c_char,
header_line_len: usize,
duplicate: bool,
replace: bool,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_send_headers() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_free_header(sapi_header: *mut sapi_header_struct);
}
extern "C" {
pub fn sapi_handle_post(arg: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn sapi_read_post_block(buffer: *mut ::std::os::raw::c_char, buflen: usize) -> usize;
}
extern "C" {
pub fn sapi_register_post_entries(post_entry: *const sapi_post_entry) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_register_post_entry(post_entry: *const sapi_post_entry) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_unregister_post_entry(post_entry: *const sapi_post_entry);
}
extern "C" {
pub fn sapi_register_default_post_reader(
default_post_reader: ::std::option::Option<unsafe extern "C" fn()>,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_register_treat_data(
treat_data: ::std::option::Option<
unsafe extern "C" fn(
arg: ::std::os::raw::c_int,
str_: *mut ::std::os::raw::c_char,
destArray: *mut zval,
),
>,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_register_input_filter(
input_filter: ::std::option::Option<
unsafe extern "C" fn(
arg: ::std::os::raw::c_int,
var: *const ::std::os::raw::c_char,
val: *mut *mut ::std::os::raw::c_char,
val_len: usize,
new_val_len: *mut usize,
) -> ::std::os::raw::c_uint,
>,
input_filter_init: ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_uint>,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_flush() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_get_stat() -> *mut zend_stat_t;
}
extern "C" {
pub fn sapi_getenv(
name: *const ::std::os::raw::c_char,
name_len: usize,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn sapi_get_default_content_type() -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn sapi_get_default_content_type_header(default_header: *mut sapi_header_struct);
}
extern "C" {
pub fn sapi_apply_default_charset(
mimetype: *mut *mut ::std::os::raw::c_char,
len: usize,
) -> usize;
}
extern "C" {
pub fn sapi_activate_headers_only();
}
extern "C" {
pub fn sapi_get_fd(fd: *mut ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_force_http_10() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_get_target_uid(arg1: *mut uid_t) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_get_target_gid(arg1: *mut gid_t) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sapi_get_request_time() -> f64;
}
extern "C" {
pub fn sapi_terminate_process();
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _sapi_module_struct {
pub name: *mut ::std::os::raw::c_char,
pub pretty_name: *mut ::std::os::raw::c_char,
pub startup: ::std::option::Option<
unsafe extern "C" fn(sapi_module: *mut _sapi_module_struct) -> ::std::os::raw::c_int,
>,
pub shutdown: ::std::option::Option<
unsafe extern "C" fn(sapi_module: *mut _sapi_module_struct) -> ::std::os::raw::c_int,
>,
pub activate: ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>,
pub deactivate: ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>,
pub ub_write: ::std::option::Option<
unsafe extern "C" fn(str_: *const ::std::os::raw::c_char, str_length: usize) -> usize,
>,
pub flush:
::std::option::Option<unsafe extern "C" fn(server_context: *mut ::std::os::raw::c_void)>,
pub get_stat: ::std::option::Option<unsafe extern "C" fn() -> *mut zend_stat_t>,
pub getenv: ::std::option::Option<
unsafe extern "C" fn(
name: *const ::std::os::raw::c_char,
name_len: usize,
) -> *mut ::std::os::raw::c_char,
>,
pub sapi_error: ::std::option::Option<
unsafe extern "C" fn(
type_: ::std::os::raw::c_int,
error_msg: *const ::std::os::raw::c_char,
...
),
>,
pub header_handler: ::std::option::Option<
unsafe extern "C" fn(
sapi_header: *mut sapi_header_struct,
op: sapi_header_op_enum,
sapi_headers: *mut sapi_headers_struct,
) -> ::std::os::raw::c_int,
>,
pub send_headers: ::std::option::Option<
unsafe extern "C" fn(sapi_headers: *mut sapi_headers_struct) -> ::std::os::raw::c_int,
>,
pub send_header: ::std::option::Option<
unsafe extern "C" fn(
sapi_header: *mut sapi_header_struct,
server_context: *mut ::std::os::raw::c_void,
),
>,
pub read_post: ::std::option::Option<
unsafe extern "C" fn(buffer: *mut ::std::os::raw::c_char, count_bytes: usize) -> usize,
>,
pub read_cookies: ::std::option::Option<unsafe extern "C" fn() -> *mut ::std::os::raw::c_char>,
pub register_server_variables:
::std::option::Option<unsafe extern "C" fn(track_vars_array: *mut zval)>,
pub log_message: ::std::option::Option<
unsafe extern "C" fn(
message: *const ::std::os::raw::c_char,
syslog_type_int: ::std::os::raw::c_int,
),
>,
pub get_request_time: ::std::option::Option<unsafe extern "C" fn() -> f64>,
pub terminate_process: ::std::option::Option<unsafe extern "C" fn()>,
pub php_ini_path_override: *mut ::std::os::raw::c_char,
pub default_post_reader: ::std::option::Option<unsafe extern "C" fn()>,
pub treat_data: ::std::option::Option<
unsafe extern "C" fn(
arg: ::std::os::raw::c_int,
str_: *mut ::std::os::raw::c_char,
destArray: *mut zval,
),
>,
pub executable_location: *mut ::std::os::raw::c_char,
pub php_ini_ignore: ::std::os::raw::c_int,
pub php_ini_ignore_cwd: ::std::os::raw::c_int,
pub get_fd: ::std::option::Option<
unsafe extern "C" fn(fd: *mut ::std::os::raw::c_int) -> ::std::os::raw::c_int,
>,
pub force_http_10: ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>,
pub get_target_uid:
::std::option::Option<unsafe extern "C" fn(arg1: *mut uid_t) -> ::std::os::raw::c_int>,
pub get_target_gid:
::std::option::Option<unsafe extern "C" fn(arg1: *mut gid_t) -> ::std::os::raw::c_int>,
pub input_filter: ::std::option::Option<
unsafe extern "C" fn(
arg: ::std::os::raw::c_int,
var: *const ::std::os::raw::c_char,
val: *mut *mut ::std::os::raw::c_char,
val_len: usize,
new_val_len: *mut usize,
) -> ::std::os::raw::c_uint,
>,
pub ini_defaults:
::std::option::Option<unsafe extern "C" fn(configuration_hash: *mut HashTable)>,
pub phpinfo_as_text: ::std::os::raw::c_int,
pub ini_entries: *mut ::std::os::raw::c_char,
pub additional_functions: *const zend_function_entry,
pub input_filter_init: ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_uint>,
}
#[test]
fn bindgen_test_layout__sapi_module_struct() {
const UNINIT: ::std::mem::MaybeUninit<_sapi_module_struct> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_sapi_module_struct>(),
280usize,
concat!("Size of: ", stringify!(_sapi_module_struct))
);
assert_eq!(
::std::mem::align_of::<_sapi_module_struct>(),
8usize,
concat!("Alignment of ", stringify!(_sapi_module_struct))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).pretty_name) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(pretty_name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).startup) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(startup)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).shutdown) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(shutdown)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(activate)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(deactivate)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ub_write) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(ub_write)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flush) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(flush)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_stat) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(get_stat)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).getenv) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(getenv)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).sapi_error) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(sapi_error)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).header_handler) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(header_handler)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).send_headers) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(send_headers)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).send_header) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(send_header)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).read_post) as usize - ptr as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(read_post)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).read_cookies) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(read_cookies)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).register_server_variables) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(register_server_variables)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).log_message) as usize - ptr as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(log_message)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_request_time) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(get_request_time)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).terminate_process) as usize - ptr as usize },
152usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(terminate_process)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).php_ini_path_override) as usize - ptr as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(php_ini_path_override)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).default_post_reader) as usize - ptr as usize },
168usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(default_post_reader)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).treat_data) as usize - ptr as usize },
176usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(treat_data)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).executable_location) as usize - ptr as usize },
184usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(executable_location)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).php_ini_ignore) as usize - ptr as usize },
192usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(php_ini_ignore)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).php_ini_ignore_cwd) as usize - ptr as usize },
196usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(php_ini_ignore_cwd)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_fd) as usize - ptr as usize },
200usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(get_fd)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).force_http_10) as usize - ptr as usize },
208usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(force_http_10)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_target_uid) as usize - ptr as usize },
216usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(get_target_uid)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).get_target_gid) as usize - ptr as usize },
224usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(get_target_gid)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).input_filter) as usize - ptr as usize },
232usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(input_filter)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ini_defaults) as usize - ptr as usize },
240usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(ini_defaults)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).phpinfo_as_text) as usize - ptr as usize },
248usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(phpinfo_as_text)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ini_entries) as usize - ptr as usize },
256usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(ini_entries)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).additional_functions) as usize - ptr as usize },
264usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(additional_functions)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).input_filter_init) as usize - ptr as usize },
272usize,
concat!(
"Offset of field: ",
stringify!(_sapi_module_struct),
"::",
stringify!(input_filter_init)
)
);
}
impl Default for _sapi_module_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _sapi_post_entry {
pub content_type: *mut ::std::os::raw::c_char,
pub content_type_len: u32,
pub post_reader: ::std::option::Option<unsafe extern "C" fn()>,
pub post_handler: ::std::option::Option<
unsafe extern "C" fn(
content_type_dup: *mut ::std::os::raw::c_char,
arg: *mut ::std::os::raw::c_void,
),
>,
}
#[test]
fn bindgen_test_layout__sapi_post_entry() {
const UNINIT: ::std::mem::MaybeUninit<_sapi_post_entry> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_sapi_post_entry>(),
32usize,
concat!("Size of: ", stringify!(_sapi_post_entry))
);
assert_eq!(
::std::mem::align_of::<_sapi_post_entry>(),
8usize,
concat!("Alignment of ", stringify!(_sapi_post_entry))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).content_type) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_sapi_post_entry),
"::",
stringify!(content_type)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).content_type_len) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_sapi_post_entry),
"::",
stringify!(content_type_len)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).post_reader) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_sapi_post_entry),
"::",
stringify!(post_reader)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).post_handler) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_sapi_post_entry),
"::",
stringify!(post_handler)
)
);
}
impl Default for _sapi_post_entry {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub fn sapi_read_standard_form_data();
}
extern "C" {
pub fn php_default_post_reader();
}
extern "C" {
pub fn php_default_treat_data(
arg: ::std::os::raw::c_int,
str_: *mut ::std::os::raw::c_char,
destArray: *mut zval,
);
}
extern "C" {
pub fn php_default_input_filter(
arg: ::std::os::raw::c_int,
var: *const ::std::os::raw::c_char,
val: *mut *mut ::std::os::raw::c_char,
val_len: usize,
new_val_len: *mut usize,
) -> ::std::os::raw::c_uint;
}
extern "C" {
pub static mut zend_ce_throwable: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_exception: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_error_exception: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_error: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_compile_error: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_parse_error: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_type_error: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_argument_count_error: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_value_error: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_arithmetic_error: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_division_by_zero_error: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_unhandled_match_error: *mut zend_class_entry;
}
extern "C" {
pub fn zend_exception_set_previous(exception: *mut zend_object, add_previous: *mut zend_object);
}
extern "C" {
pub fn zend_exception_save();
}
extern "C" {
pub fn zend_exception_restore();
}
extern "C" {
pub fn zend_throw_exception_internal(exception: *mut zend_object);
}
extern "C" {
pub fn zend_register_default_exception();
}
extern "C" {
pub fn zend_get_exception_base(object: *mut zend_object) -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_exception_get_default() -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_get_error_exception() -> *mut zend_class_entry;
}
extern "C" {
pub fn zend_register_default_classes();
}
extern "C" {
pub fn zend_throw_exception(
exception_ce: *mut zend_class_entry,
message: *const ::std::os::raw::c_char,
code: zend_long,
) -> *mut zend_object;
}
extern "C" {
pub fn zend_throw_exception_ex(
exception_ce: *mut zend_class_entry,
code: zend_long,
format: *const ::std::os::raw::c_char,
...
) -> *mut zend_object;
}
extern "C" {
pub fn zend_throw_exception_object(exception: *mut zval);
}
extern "C" {
pub fn zend_clear_exception();
}
extern "C" {
pub fn zend_throw_error_exception(
exception_ce: *mut zend_class_entry,
message: *mut zend_string,
code: zend_long,
severity: ::std::os::raw::c_int,
) -> *mut zend_object;
}
extern "C" {
pub static mut zend_throw_exception_hook:
::std::option::Option<unsafe extern "C" fn(ex: *mut zend_object)>;
}
extern "C" {
pub fn zend_exception_error(
exception: *mut zend_object,
severity: ::std::os::raw::c_int,
) -> zend_result;
}
extern "C" {
pub fn zend_exception_uncaught_error(prefix: *const ::std::os::raw::c_char, ...) -> !;
}
extern "C" {
pub fn zend_trace_to_string(trace: *mut HashTable, include_main: bool) -> *mut zend_string;
}
extern "C" {
pub fn zend_create_unwind_exit() -> *mut zend_object;
}
extern "C" {
pub fn zend_create_graceful_exit() -> *mut zend_object;
}
extern "C" {
pub fn zend_throw_unwind_exit();
}
extern "C" {
pub fn zend_throw_graceful_exit();
}
extern "C" {
pub fn zend_is_unwind_exit(ex: *const zend_object) -> bool;
}
extern "C" {
pub fn zend_is_graceful_exit(ex: *const zend_object) -> bool;
}
extern "C" {
pub static mut zend_ce_traversable: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_aggregate: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_iterator: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_arrayaccess: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_serializable: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_countable: *mut zend_class_entry;
}
extern "C" {
pub static mut zend_ce_stringable: *mut zend_class_entry;
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_user_iterator {
pub it: zend_object_iterator,
pub ce: *mut zend_class_entry,
pub value: zval,
}
#[test]
fn bindgen_test_layout__zend_user_iterator() {
const UNINIT: ::std::mem::MaybeUninit<_zend_user_iterator> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_user_iterator>(),
112usize,
concat!("Size of: ", stringify!(_zend_user_iterator))
);
assert_eq!(
::std::mem::align_of::<_zend_user_iterator>(),
8usize,
concat!("Alignment of ", stringify!(_zend_user_iterator))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).it) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_user_iterator),
"::",
stringify!(it)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ce) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(_zend_user_iterator),
"::",
stringify!(ce)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_zend_user_iterator),
"::",
stringify!(value)
)
);
}
impl Default for _zend_user_iterator {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_user_iterator = _zend_user_iterator;
extern "C" {
pub fn zend_call_method(
object: *mut zend_object,
obj_ce: *mut zend_class_entry,
fn_proxy: *mut *mut zend_function,
function_name: *const ::std::os::raw::c_char,
function_name_len: usize,
retval: *mut zval,
param_count: u32,
arg1: *mut zval,
arg2: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn zend_user_it_rewind(_iter: *mut zend_object_iterator);
}
extern "C" {
pub fn zend_user_it_valid(_iter: *mut zend_object_iterator) -> zend_result;
}
extern "C" {
pub fn zend_user_it_get_current_key(_iter: *mut zend_object_iterator, key: *mut zval);
}
extern "C" {
pub fn zend_user_it_get_current_data(_iter: *mut zend_object_iterator) -> *mut zval;
}
extern "C" {
pub fn zend_user_it_move_forward(_iter: *mut zend_object_iterator);
}
extern "C" {
pub fn zend_user_it_invalidate_current(_iter: *mut zend_object_iterator);
}
extern "C" {
pub fn zend_user_it_new_iterator(
ce: *mut zend_class_entry,
object: *mut zval,
iterator: *mut zval,
);
}
extern "C" {
pub fn zend_user_it_get_new_iterator(
ce: *mut zend_class_entry,
object: *mut zval,
by_ref: ::std::os::raw::c_int,
) -> *mut zend_object_iterator;
}
extern "C" {
pub fn zend_register_interfaces();
}
extern "C" {
pub fn zend_user_serialize(
object: *mut zval,
buffer: *mut *mut ::std::os::raw::c_uchar,
buf_len: *mut usize,
data: *mut zend_serialize_data,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_user_unserialize(
object: *mut zval,
ce: *mut zend_class_entry,
buf: *const ::std::os::raw::c_uchar,
buf_len: usize,
data: *mut zend_unserialize_data,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn zend_create_internal_iterator_zval(
return_value: *mut zval,
obj: *mut zval,
) -> zend_result;
}
pub const zend_fiber_status_ZEND_FIBER_STATUS_INIT: zend_fiber_status = 0;
pub const zend_fiber_status_ZEND_FIBER_STATUS_RUNNING: zend_fiber_status = 1;
pub const zend_fiber_status_ZEND_FIBER_STATUS_SUSPENDED: zend_fiber_status = 2;
pub const zend_fiber_status_ZEND_FIBER_STATUS_DEAD: zend_fiber_status = 3;
pub type zend_fiber_status = ::std::os::raw::c_uint;
pub const zend_fiber_flag_ZEND_FIBER_FLAG_THREW: zend_fiber_flag = 1;
pub const zend_fiber_flag_ZEND_FIBER_FLAG_BAILOUT: zend_fiber_flag = 2;
pub const zend_fiber_flag_ZEND_FIBER_FLAG_DESTROYED: zend_fiber_flag = 4;
pub type zend_fiber_flag = ::std::os::raw::c_uint;
pub const zend_fiber_transfer_flag_ZEND_FIBER_TRANSFER_FLAG_ERROR: zend_fiber_transfer_flag = 1;
pub const zend_fiber_transfer_flag_ZEND_FIBER_TRANSFER_FLAG_BAILOUT: zend_fiber_transfer_flag = 2;
pub type zend_fiber_transfer_flag = ::std::os::raw::c_uint;
extern "C" {
pub fn zend_register_fiber_ce();
}
extern "C" {
pub fn zend_fiber_init();
}
extern "C" {
pub fn zend_fiber_shutdown();
}
extern "C" {
pub static mut zend_ce_fiber: *mut zend_class_entry;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_fiber_stack {
_unused: [u8; 0],
}
pub type zend_fiber_stack = _zend_fiber_stack;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_fiber_transfer {
pub context: *mut zend_fiber_context,
pub value: zval,
pub flags: u8,
}
#[test]
fn bindgen_test_layout__zend_fiber_transfer() {
const UNINIT: ::std::mem::MaybeUninit<_zend_fiber_transfer> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_fiber_transfer>(),
32usize,
concat!("Size of: ", stringify!(_zend_fiber_transfer))
);
assert_eq!(
::std::mem::align_of::<_zend_fiber_transfer>(),
8usize,
concat!("Alignment of ", stringify!(_zend_fiber_transfer))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).context) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber_transfer),
"::",
stringify!(context)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber_transfer),
"::",
stringify!(value)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber_transfer),
"::",
stringify!(flags)
)
);
}
impl Default for _zend_fiber_transfer {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type zend_fiber_transfer = _zend_fiber_transfer;
pub type zend_fiber_coroutine =
::std::option::Option<unsafe extern "C" fn(transfer: *mut zend_fiber_transfer)>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_fiber_context {
pub handle: *mut ::std::os::raw::c_void,
pub kind: *mut ::std::os::raw::c_void,
pub function: zend_fiber_coroutine,
pub stack: *mut zend_fiber_stack,
pub status: zend_fiber_status,
pub reserved: [*mut ::std::os::raw::c_void; 6usize],
}
#[test]
fn bindgen_test_layout__zend_fiber_context() {
const UNINIT: ::std::mem::MaybeUninit<_zend_fiber_context> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_fiber_context>(),
88usize,
concat!("Size of: ", stringify!(_zend_fiber_context))
);
assert_eq!(
::std::mem::align_of::<_zend_fiber_context>(),
8usize,
concat!("Alignment of ", stringify!(_zend_fiber_context))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).handle) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber_context),
"::",
stringify!(handle)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).kind) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber_context),
"::",
stringify!(kind)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).function) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber_context),
"::",
stringify!(function)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stack) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber_context),
"::",
stringify!(stack)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).status) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber_context),
"::",
stringify!(status)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber_context),
"::",
stringify!(reserved)
)
);
}
impl Default for _zend_fiber_context {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_fiber {
pub std: zend_object,
pub flags: u8,
pub context: zend_fiber_context,
pub caller: *mut zend_fiber_context,
pub previous: *mut zend_fiber_context,
pub fci: zend_fcall_info,
pub fci_cache: zend_fcall_info_cache,
pub execute_data: *mut zend_execute_data,
pub stack_bottom: *mut zend_execute_data,
pub result: zval,
}
#[test]
fn bindgen_test_layout__zend_fiber() {
const UNINIT: ::std::mem::MaybeUninit<_zend_fiber> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_fiber>(),
296usize,
concat!("Size of: ", stringify!(_zend_fiber))
);
assert_eq!(
::std::mem::align_of::<_zend_fiber>(),
8usize,
concat!("Alignment of ", stringify!(_zend_fiber))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).std) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber),
"::",
stringify!(std)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber),
"::",
stringify!(flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).context) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber),
"::",
stringify!(context)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).caller) as usize - ptr as usize },
152usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber),
"::",
stringify!(caller)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).previous) as usize - ptr as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber),
"::",
stringify!(previous)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fci) as usize - ptr as usize },
168usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber),
"::",
stringify!(fci)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fci_cache) as usize - ptr as usize },
232usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber),
"::",
stringify!(fci_cache)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).execute_data) as usize - ptr as usize },
264usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber),
"::",
stringify!(execute_data)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).stack_bottom) as usize - ptr as usize },
272usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber),
"::",
stringify!(stack_bottom)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).result) as usize - ptr as usize },
280usize,
concat!(
"Offset of field: ",
stringify!(_zend_fiber),
"::",
stringify!(result)
)
);
}
impl Default for _zend_fiber {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
extern "C" {
pub fn zend_fiber_init_context(
context: *mut zend_fiber_context,
kind: *mut ::std::os::raw::c_void,
coroutine: zend_fiber_coroutine,
stack_size: usize,
) -> bool;
}
extern "C" {
pub fn zend_fiber_destroy_context(context: *mut zend_fiber_context);
}
extern "C" {
pub fn zend_fiber_switch_context(transfer: *mut zend_fiber_transfer);
}
extern "C" {
pub fn zend_fiber_switch_block();
}
extern "C" {
pub fn zend_fiber_switch_unblock();
}
extern "C" {
pub fn zend_fiber_switch_blocked() -> bool;
}
extern "C" {
pub static mut zend_observer_fcall_op_array_extension: ::std::os::raw::c_int;
}
pub type zend_observer_fcall_begin_handler =
::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
pub type zend_observer_fcall_end_handler = ::std::option::Option<
unsafe extern "C" fn(execute_data: *mut zend_execute_data, retval: *mut zval),
>;
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct _zend_observer_fcall_handlers {
pub begin: zend_observer_fcall_begin_handler,
pub end: zend_observer_fcall_end_handler,
}
#[test]
fn bindgen_test_layout__zend_observer_fcall_handlers() {
const UNINIT: ::std::mem::MaybeUninit<_zend_observer_fcall_handlers> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_zend_observer_fcall_handlers>(),
16usize,
concat!("Size of: ", stringify!(_zend_observer_fcall_handlers))
);
assert_eq!(
::std::mem::align_of::<_zend_observer_fcall_handlers>(),
8usize,
concat!("Alignment of ", stringify!(_zend_observer_fcall_handlers))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_zend_observer_fcall_handlers),
"::",
stringify!(begin)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_zend_observer_fcall_handlers),
"::",
stringify!(end)
)
);
}
pub type zend_observer_fcall_handlers = _zend_observer_fcall_handlers;
pub type zend_observer_fcall_init = ::std::option::Option<
unsafe extern "C" fn(execute_data: *mut zend_execute_data) -> zend_observer_fcall_handlers,
>;
extern "C" {
pub fn zend_observer_fcall_register(arg1: zend_observer_fcall_init);
}
extern "C" {
pub fn zend_observer_startup();
}
extern "C" {
pub fn zend_observer_activate();
}
extern "C" {
pub fn zend_observer_deactivate();
}
extern "C" {
pub fn zend_observer_shutdown();
}
extern "C" {
pub fn zend_observer_fcall_begin(execute_data: *mut zend_execute_data);
}
extern "C" {
pub fn zend_observer_generator_resume(execute_data: *mut zend_execute_data);
}
extern "C" {
pub fn zend_observer_fcall_end(execute_data: *mut zend_execute_data, return_value: *mut zval);
}
extern "C" {
pub fn zend_observer_fcall_end_all();
}
pub type zend_observer_error_cb = ::std::option::Option<
unsafe extern "C" fn(
type_: ::std::os::raw::c_int,
error_filename: *mut zend_string,
error_lineno: u32,
message: *mut zend_string,
),
>;
extern "C" {
pub fn zend_observer_error_register(callback: zend_observer_error_cb);
}
extern "C" {
pub fn zend_observer_error_notify(
type_: ::std::os::raw::c_int,
error_filename: *mut zend_string,
error_lineno: u32,
message: *mut zend_string,
);
}
pub type zend_observer_fiber_init_handler =
::std::option::Option<unsafe extern "C" fn(initializing: *mut zend_fiber_context)>;
pub type zend_observer_fiber_switch_handler = ::std::option::Option<
unsafe extern "C" fn(from: *mut zend_fiber_context, to: *mut zend_fiber_context),
>;
pub type zend_observer_fiber_destroy_handler =
::std::option::Option<unsafe extern "C" fn(destroying: *mut zend_fiber_context)>;
extern "C" {
pub fn zend_observer_fiber_init_register(handler: zend_observer_fiber_init_handler);
}
extern "C" {
pub fn zend_observer_fiber_switch_register(handler: zend_observer_fiber_switch_handler);
}
extern "C" {
pub fn zend_observer_fiber_destroy_register(handler: zend_observer_fiber_destroy_handler);
}
extern "C" {
pub fn zend_observer_fiber_init_notify(initializing: *mut zend_fiber_context);
}
extern "C" {
pub fn zend_observer_fiber_switch_notify(
from: *mut zend_fiber_context,
to: *mut zend_fiber_context,
);
}
extern "C" {
pub fn zend_observer_fiber_destroy_notify(destroying: *mut zend_fiber_context);
}
pub type phper_zend_ini_mh = ::std::option::Option<
unsafe extern "C" fn(
entry: *mut zend_ini_entry,
new_value: *mut zend_string,
mh_arg1: *mut ::std::os::raw::c_void,
mh_arg2: *mut ::std::os::raw::c_void,
mh_arg3: *mut ::std::os::raw::c_void,
stage: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>;
pub type phper_init_class_entry_handler = ::std::option::Option<
unsafe extern "C" fn(
class_ce: *mut zend_class_entry,
argument: *mut ::std::os::raw::c_void,
) -> *mut zend_class_entry,
>;
extern "C" {
pub fn phper_z_lval_p(zv: *mut zval) -> *mut zend_long;
}
extern "C" {
pub fn phper_z_dval_p(zv: *mut zval) -> *mut f64;
}
extern "C" {
pub fn phper_z_str_p(zv: *const zval) -> *mut zend_string;
}
extern "C" {
pub fn phper_z_strval_p(v: *const zval) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn phper_z_arr_p(zv: *const zval) -> *mut zend_array;
}
extern "C" {
pub fn phper_z_refcounted_p(zval_ptr: *mut zval) -> bool;
}
extern "C" {
pub fn phper_z_res_handle_p(val: *const zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn phper_z_type_info_p(zv: *const zval) -> u32;
}
extern "C" {
pub fn phper_z_type_p(zv: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn phper_z_res_p(zv: *const zval) -> *mut zend_resource;
}
extern "C" {
pub fn phper_z_ref_p(zv: *const zval) -> *mut zend_reference;
}
extern "C" {
pub fn phper_z_obj_ht_p(zv: *const zval) -> *const zend_object_handlers;
}
extern "C" {
pub fn phper_z_obj_p(zv: *const zval) -> *mut zend_object;
}
extern "C" {
pub fn phper_z_addref_p(zv: *mut zval) -> u32;
}
extern "C" {
pub fn phper_z_func_p(zv: *const zval) -> *mut zend_function;
}
extern "C" {
pub fn phper_z_ptr_p(zv: *const zval) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn phper_zval_get_type(pz: *const zval) -> zend_uchar;
}
extern "C" {
pub fn phper_zval_arr(val: *mut zval, arr: *mut zend_array);
}
extern "C" {
pub fn phper_zval_new_arr(val: *mut zval);
}
extern "C" {
pub fn phper_zval_stringl(val: *mut zval, s: *const ::std::os::raw::c_char, len: usize);
}
extern "C" {
pub fn phper_zval_zval(
val: *mut zval,
zv: *mut zval,
copy: ::std::os::raw::c_int,
dtor: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn phper_zval_copy(val: *mut zval, zv: *const zval);
}
extern "C" {
pub fn phper_zval_copy_value(val: *mut zval, zv: *const zval);
}
extern "C" {
pub fn phper_zval_get_string(op: *mut zval) -> *mut zend_string;
}
extern "C" {
pub fn phper_zval_get_long(op: *mut zval) -> zend_long;
}
extern "C" {
pub fn phper_zval_obj(z: *mut zval, o: *mut zend_object);
}
extern "C" {
pub fn phper_zval_func(z: *mut zval, f: *mut zend_function);
}
extern "C" {
pub fn phper_zval_ptr_dtor(zv: *mut zval);
}
extern "C" {
pub fn phper_zval_ptr_dtor_nogc(zval_ptr: *mut zval);
}
extern "C" {
pub fn phper_zval_null(zv: *mut zval);
}
extern "C" {
pub fn phper_zval_true(zv: *mut zval);
}
extern "C" {
pub fn phper_zval_false(zv: *mut zval);
}
extern "C" {
pub fn phper_zval_long(zv: *mut zval, l: zend_long);
}
extern "C" {
pub fn phper_zval_double(zv: *mut zval, d: f64);
}
extern "C" {
pub fn phper_zval_str(zv: *mut zval, s: *mut zend_string);
}
extern "C" {
pub fn phper_convert_to_long(op: *mut zval);
}
extern "C" {
pub fn phper_convert_to_string(op: *mut zval);
}
extern "C" {
pub fn phper_separate_array(zv: *mut zval);
}
extern "C" {
pub fn phper_zend_new_interned_string(str_: *mut zend_string) -> *mut zend_string;
}
extern "C" {
pub fn phper_zend_string_init(
str_: *const ::std::os::raw::c_char,
len: usize,
persistent: ::std::os::raw::c_int,
) -> *mut zend_string;
}
extern "C" {
pub fn phper_zend_string_alloc(
len: usize,
persistent: ::std::os::raw::c_int,
) -> *mut zend_string;
}
extern "C" {
pub fn phper_zend_string_release(s: *mut zend_string);
}
extern "C" {
pub fn phper_zstr_len(s: *const zend_string) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn phper_zstr_val(s: *const zend_string) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn phper_separate_string(zv: *mut zval);
}
extern "C" {
pub fn phper_zend_string_copy(s: *mut zend_string) -> *mut zend_string;
}
extern "C" {
pub fn phper_zend_hash_str_update(
ht: *mut HashTable,
key: *const ::std::os::raw::c_char,
len: usize,
pData: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn phper_zend_hash_index_update(
ht: *mut HashTable,
h: zend_ulong,
pData: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn phper_zend_hash_next_index_insert(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
}
extern "C" {
pub fn phper_array_init(arg: *mut zval);
}
extern "C" {
pub fn phper_zend_hash_str_find_ptr(
ht: *const HashTable,
str_: *const ::std::os::raw::c_char,
len: usize,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn phper_zend_hash_str_exists(
ht: *const HashTable,
str_: *const ::std::os::raw::c_char,
len: usize,
) -> bool;
}
extern "C" {
pub fn phper_zend_hash_index_exists(ht: *const HashTable, h: zend_ulong) -> bool;
}
extern "C" {
pub fn phper_zend_new_array(size: u32) -> *mut zend_array;
}
extern "C" {
pub fn phper_zend_array_dup(source: *mut zend_array) -> *mut zend_array;
}
extern "C" {
pub fn phper_zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
}
extern "C" {
pub fn phper_zend_hash_index_del(ht: *mut HashTable, h: zend_ulong) -> bool;
}
extern "C" {
pub fn phper_zend_symtable_str_update(
ht: *mut HashTable,
str_: *const ::std::os::raw::c_char,
len: usize,
pData: *mut zval,
) -> *mut zval;
}
extern "C" {
pub fn phper_zend_symtable_str_del(
ht: *mut HashTable,
str_: *const ::std::os::raw::c_char,
len: usize,
) -> bool;
}
extern "C" {
pub fn phper_zend_symtable_str_find(
ht: *mut HashTable,
str_: *const ::std::os::raw::c_char,
len: usize,
) -> *mut zval;
}
extern "C" {
pub fn phper_zend_symtable_str_exists(
ht: *mut HashTable,
str_: *const ::std::os::raw::c_char,
len: usize,
) -> bool;
}
extern "C" {
pub fn phper_get_this(execute_data: *mut zend_execute_data) -> *mut zval;
}
extern "C" {
pub fn phper_zend_object_properties_size(ce: *mut zend_class_entry) -> usize;
}
extern "C" {
pub fn phper_zend_object_alloc(
obj_size: usize,
ce: *mut zend_class_entry,
) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn phper_get_create_object(
ce: *mut zend_class_entry,
) -> *mut ::std::option::Option<
unsafe extern "C" fn(ce: *mut zend_class_entry) -> *mut zend_object,
>;
}
extern "C" {
pub fn phper_object_init_ex(arg: *mut zval, class_type: *mut zend_class_entry) -> bool;
}
extern "C" {
pub fn phper_zend_object_release(obj: *mut zend_object);
}
extern "C" {
pub fn phper_zend_object_gc_refcount(obj: *const zend_object) -> u32;
}
extern "C" {
pub fn phper_init_class_entry_ex(
class_name: *const ::std::os::raw::c_char,
class_name_len: usize,
functions: *const zend_function_entry,
handler: phper_init_class_entry_handler,
argument: *mut ::std::os::raw::c_void,
) -> *mut zend_class_entry;
}
extern "C" {
pub fn phper_instanceof_function(
instance_ce: *const zend_class_entry,
ce: *const zend_class_entry,
) -> bool;
}
extern "C" {
pub fn phper_get_function_or_method_name(func: *const zend_function) -> *mut zend_string;
}
extern "C" {
pub fn phper_get_function_name(func: *const zend_function) -> *mut zend_string;
}
extern "C" {
pub fn phper_call_user_function(
function_table: *mut HashTable,
object: *mut zval,
function_name: *mut zval,
retval_ptr: *mut zval,
param_count: u32,
params: *mut zval,
) -> bool;
}
extern "C" {
pub fn phper_zend_call_var_num(
execute_data: *mut zend_execute_data,
index: ::std::os::raw::c_int,
) -> *mut zval;
}
extern "C" {
pub fn phper_zend_call_arg(
execute_data: *mut zend_execute_data,
index: ::std::os::raw::c_int,
) -> *mut zval;
}
extern "C" {
pub fn phper_zend_num_args(execute_data: *const zend_execute_data) -> u32;
}
extern "C" {
pub fn phper_zend_get_parameters_array_ex(param_count: u32, argument_array: *mut zval) -> bool;
}
extern "C" {
pub fn phper_emalloc(size: usize) -> *mut ::std::os::raw::c_void;
}
extern "C" {
pub fn phper_efree(ptr: *mut ::std::os::raw::c_void);
}
extern "C" {
pub fn phper_get_zend_module_build_id() -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn phper_zend_begin_arg_info_ex(
return_reference: bool,
required_num_args: usize,
) -> zend_internal_arg_info;
}
extern "C" {
pub fn phper_zend_arg_info(
pass_by_ref: bool,
name: *const ::std::os::raw::c_char,
) -> zend_internal_arg_info;
}
pub type __builtin_va_list = [__va_list_tag; 1usize];
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __va_list_tag {
pub gp_offset: ::std::os::raw::c_uint,
pub fp_offset: ::std::os::raw::c_uint,
pub overflow_arg_area: *mut ::std::os::raw::c_void,
pub reg_save_area: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout___va_list_tag() {
const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<__va_list_tag>(),
24usize,
concat!("Size of: ", stringify!(__va_list_tag))
);
assert_eq!(
::std::mem::align_of::<__va_list_tag>(),
8usize,
concat!("Alignment of ", stringify!(__va_list_tag))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).gp_offset) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__va_list_tag),
"::",
stringify!(gp_offset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(__va_list_tag),
"::",
stringify!(fp_offset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(__va_list_tag),
"::",
stringify!(overflow_arg_area)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(__va_list_tag),
"::",
stringify!(reg_save_area)
)
);
}
impl Default for __va_list_tag {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}