Skip to main content

libxml/opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/libxml-0ce13c2a021edd7e/out/
bindings.rs

1/* automatically generated by rust-bindgen 0.72.1 */
2
3pub const LIBXML_DOTTED_VERSION: &[u8; 7] = b"2.9.14\0";
4pub const LIBXML_VERSION: u32 = 20914;
5pub const LIBXML_VERSION_STRING: &[u8; 6] = b"20914\0";
6pub const LIBXML_VERSION_EXTRA: &[u8; 1] = b"\0";
7pub const LIBXML_MODULE_EXTENSION: &[u8; 4] = b".so\0";
8pub const _STDIO_H: u32 = 1;
9pub const _FEATURES_H: u32 = 1;
10pub const _DEFAULT_SOURCE: u32 = 1;
11pub const __GLIBC_USE_ISOC2X: u32 = 0;
12pub const __USE_ISOC11: u32 = 1;
13pub const __USE_ISOC99: u32 = 1;
14pub const __USE_ISOC95: u32 = 1;
15pub const __USE_POSIX_IMPLICITLY: u32 = 1;
16pub const _POSIX_SOURCE: u32 = 1;
17pub const _POSIX_C_SOURCE: u32 = 200809;
18pub const __USE_POSIX: u32 = 1;
19pub const __USE_POSIX2: u32 = 1;
20pub const __USE_POSIX199309: u32 = 1;
21pub const __USE_POSIX199506: u32 = 1;
22pub const __USE_XOPEN2K: u32 = 1;
23pub const __USE_XOPEN2K8: u32 = 1;
24pub const _ATFILE_SOURCE: u32 = 1;
25pub const __WORDSIZE: u32 = 64;
26pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
27pub const __SYSCALL_WORDSIZE: u32 = 64;
28pub const __TIMESIZE: u32 = 64;
29pub const __USE_MISC: u32 = 1;
30pub const __USE_ATFILE: u32 = 1;
31pub const __USE_FORTIFY_LEVEL: u32 = 0;
32pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0;
33pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0;
34pub const __GLIBC_USE_C2X_STRTOL: u32 = 0;
35pub const _STDC_PREDEF_H: u32 = 1;
36pub const __STDC_IEC_559__: u32 = 1;
37pub const __STDC_IEC_60559_BFP__: u32 = 201404;
38pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
39pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404;
40pub const __STDC_ISO_10646__: u32 = 201706;
41pub const __GNU_LIBRARY__: u32 = 6;
42pub const __GLIBC__: u32 = 2;
43pub const __GLIBC_MINOR__: u32 = 39;
44pub const _SYS_CDEFS_H: u32 = 1;
45pub const __glibc_c99_flexarr_available: u32 = 1;
46pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0;
47pub const __HAVE_GENERIC_SELECTION: u32 = 1;
48pub const __GLIBC_USE_LIB_EXT2: u32 = 0;
49pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0;
50pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0;
51pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0;
52pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
53pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0;
54pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
55pub const _BITS_TYPES_H: u32 = 1;
56pub const _BITS_TYPESIZES_H: u32 = 1;
57pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
58pub const __INO_T_MATCHES_INO64_T: u32 = 1;
59pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
60pub const __STATFS_MATCHES_STATFS64: u32 = 1;
61pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1;
62pub const __FD_SETSIZE: u32 = 1024;
63pub const _BITS_TIME64_H: u32 = 1;
64pub const _____fpos_t_defined: u32 = 1;
65pub const ____mbstate_t_defined: u32 = 1;
66pub const _____fpos64_t_defined: u32 = 1;
67pub const ____FILE_defined: u32 = 1;
68pub const __FILE_defined: u32 = 1;
69pub const __struct_FILE_defined: u32 = 1;
70pub const _IO_EOF_SEEN: u32 = 16;
71pub const _IO_ERR_SEEN: u32 = 32;
72pub const _IO_USER_LOCK: u32 = 32768;
73pub const __cookie_io_functions_t_defined: u32 = 1;
74pub const _IOFBF: u32 = 0;
75pub const _IOLBF: u32 = 1;
76pub const _IONBF: u32 = 2;
77pub const BUFSIZ: u32 = 8192;
78pub const EOF: i32 = -1;
79pub const SEEK_SET: u32 = 0;
80pub const SEEK_CUR: u32 = 1;
81pub const SEEK_END: u32 = 2;
82pub const P_tmpdir: &[u8; 5] = b"/tmp\0";
83pub const L_tmpnam: u32 = 20;
84pub const TMP_MAX: u32 = 238328;
85pub const _BITS_STDIO_LIM_H: u32 = 1;
86pub const FILENAME_MAX: u32 = 4096;
87pub const L_ctermid: u32 = 9;
88pub const FOPEN_MAX: u32 = 16;
89pub const __HAVE_FLOAT128: u32 = 0;
90pub const __HAVE_DISTINCT_FLOAT128: u32 = 0;
91pub const __HAVE_FLOAT64X: u32 = 1;
92pub const __HAVE_FLOAT64X_LONG_DOUBLE: u32 = 1;
93pub const __HAVE_FLOAT16: u32 = 0;
94pub const __HAVE_FLOAT32: u32 = 1;
95pub const __HAVE_FLOAT64: u32 = 1;
96pub const __HAVE_FLOAT32X: u32 = 1;
97pub const __HAVE_FLOAT128X: u32 = 0;
98pub const __HAVE_DISTINCT_FLOAT16: u32 = 0;
99pub const __HAVE_DISTINCT_FLOAT32: u32 = 0;
100pub const __HAVE_DISTINCT_FLOAT64: u32 = 0;
101pub const __HAVE_DISTINCT_FLOAT32X: u32 = 0;
102pub const __HAVE_DISTINCT_FLOAT64X: u32 = 0;
103pub const __HAVE_DISTINCT_FLOAT128X: u32 = 0;
104pub const __HAVE_FLOATN_NOT_TYPEDEF: u32 = 0;
105pub const _LIBC_LIMITS_H_: u32 = 1;
106pub const MB_LEN_MAX: u32 = 16;
107pub const _BITS_POSIX1_LIM_H: u32 = 1;
108pub const _POSIX_AIO_LISTIO_MAX: u32 = 2;
109pub const _POSIX_AIO_MAX: u32 = 1;
110pub const _POSIX_ARG_MAX: u32 = 4096;
111pub const _POSIX_CHILD_MAX: u32 = 25;
112pub const _POSIX_DELAYTIMER_MAX: u32 = 32;
113pub const _POSIX_HOST_NAME_MAX: u32 = 255;
114pub const _POSIX_LINK_MAX: u32 = 8;
115pub const _POSIX_LOGIN_NAME_MAX: u32 = 9;
116pub const _POSIX_MAX_CANON: u32 = 255;
117pub const _POSIX_MAX_INPUT: u32 = 255;
118pub const _POSIX_MQ_OPEN_MAX: u32 = 8;
119pub const _POSIX_MQ_PRIO_MAX: u32 = 32;
120pub const _POSIX_NAME_MAX: u32 = 14;
121pub const _POSIX_NGROUPS_MAX: u32 = 8;
122pub const _POSIX_OPEN_MAX: u32 = 20;
123pub const _POSIX_PATH_MAX: u32 = 256;
124pub const _POSIX_PIPE_BUF: u32 = 512;
125pub const _POSIX_RE_DUP_MAX: u32 = 255;
126pub const _POSIX_RTSIG_MAX: u32 = 8;
127pub const _POSIX_SEM_NSEMS_MAX: u32 = 256;
128pub const _POSIX_SEM_VALUE_MAX: u32 = 32767;
129pub const _POSIX_SIGQUEUE_MAX: u32 = 32;
130pub const _POSIX_SSIZE_MAX: u32 = 32767;
131pub const _POSIX_STREAM_MAX: u32 = 8;
132pub const _POSIX_SYMLINK_MAX: u32 = 255;
133pub const _POSIX_SYMLOOP_MAX: u32 = 8;
134pub const _POSIX_TIMER_MAX: u32 = 32;
135pub const _POSIX_TTY_NAME_MAX: u32 = 9;
136pub const _POSIX_TZNAME_MAX: u32 = 6;
137pub const _POSIX_CLOCKRES_MIN: u32 = 20000000;
138pub const NR_OPEN: u32 = 1024;
139pub const NGROUPS_MAX: u32 = 65536;
140pub const ARG_MAX: u32 = 131072;
141pub const LINK_MAX: u32 = 127;
142pub const MAX_CANON: u32 = 255;
143pub const MAX_INPUT: u32 = 255;
144pub const NAME_MAX: u32 = 255;
145pub const PATH_MAX: u32 = 4096;
146pub const PIPE_BUF: u32 = 4096;
147pub const XATTR_NAME_MAX: u32 = 255;
148pub const XATTR_SIZE_MAX: u32 = 65536;
149pub const XATTR_LIST_MAX: u32 = 65536;
150pub const RTSIG_MAX: u32 = 32;
151pub const _POSIX_THREAD_KEYS_MAX: u32 = 128;
152pub const PTHREAD_KEYS_MAX: u32 = 1024;
153pub const _POSIX_THREAD_DESTRUCTOR_ITERATIONS: u32 = 4;
154pub const PTHREAD_DESTRUCTOR_ITERATIONS: u32 = 4;
155pub const _POSIX_THREAD_THREADS_MAX: u32 = 64;
156pub const AIO_PRIO_DELTA_MAX: u32 = 20;
157pub const PTHREAD_STACK_MIN: u32 = 16384;
158pub const DELAYTIMER_MAX: u32 = 2147483647;
159pub const TTY_NAME_MAX: u32 = 32;
160pub const LOGIN_NAME_MAX: u32 = 256;
161pub const HOST_NAME_MAX: u32 = 64;
162pub const MQ_PRIO_MAX: u32 = 32768;
163pub const SEM_VALUE_MAX: u32 = 2147483647;
164pub const _BITS_POSIX2_LIM_H: u32 = 1;
165pub const _POSIX2_BC_BASE_MAX: u32 = 99;
166pub const _POSIX2_BC_DIM_MAX: u32 = 2048;
167pub const _POSIX2_BC_SCALE_MAX: u32 = 99;
168pub const _POSIX2_BC_STRING_MAX: u32 = 1000;
169pub const _POSIX2_COLL_WEIGHTS_MAX: u32 = 2;
170pub const _POSIX2_EXPR_NEST_MAX: u32 = 32;
171pub const _POSIX2_LINE_MAX: u32 = 2048;
172pub const _POSIX2_RE_DUP_MAX: u32 = 255;
173pub const _POSIX2_CHARCLASS_NAME_MAX: u32 = 14;
174pub const BC_BASE_MAX: u32 = 99;
175pub const BC_DIM_MAX: u32 = 2048;
176pub const BC_SCALE_MAX: u32 = 99;
177pub const BC_STRING_MAX: u32 = 1000;
178pub const COLL_WEIGHTS_MAX: u32 = 255;
179pub const EXPR_NEST_MAX: u32 = 32;
180pub const LINE_MAX: u32 = 2048;
181pub const CHARCLASS_NAME_MAX: u32 = 2048;
182pub const RE_DUP_MAX: u32 = 32767;
183pub const BASE_BUFFER_SIZE: u32 = 4096;
184pub const XML_DEFAULT_VERSION: &[u8; 4] = b"1.0\0";
185pub const XML_DETECT_IDS: u32 = 2;
186pub const XML_COMPLETE_ATTRS: u32 = 4;
187pub const XML_SKIP_IDS: u32 = 8;
188pub const XML_SAX2_MAGIC: u32 = 3740122799;
189pub const _ICONV_H: u32 = 1;
190pub const U_DEBUG: u32 = 0;
191pub const UCLN_NO_AUTO_CLEANUP: u32 = 1;
192pub const U_DISABLE_RENAMING: u32 = 0;
193pub const U_NO_DEFAULT_INCLUDE_UTF_HEADERS: u32 = 0;
194pub const U_OVERRIDE_CXX_ALLOCATION: u32 = 1;
195pub const U_ENABLE_TRACING: u32 = 0;
196pub const UCONFIG_ENABLE_PLUGINS: u32 = 0;
197pub const U_ENABLE_DYLOAD: u32 = 1;
198pub const U_CHECK_DYLOAD: u32 = 1;
199pub const U_DEFAULT_SHOW_DRAFT: u32 = 1;
200pub const U_LIB_SUFFIX_C_NAME_STRING: &[u8; 1] = b"\0";
201pub const UCONFIG_ONLY_COLLATION: u32 = 0;
202pub const UCONFIG_NO_FILE_IO: u32 = 0;
203pub const UCONFIG_NO_CONVERSION: u32 = 0;
204pub const UCONFIG_ONLY_HTML_CONVERSION: u32 = 0;
205pub const UCONFIG_NO_LEGACY_CONVERSION: u32 = 0;
206pub const UCONFIG_NO_NORMALIZATION: u32 = 0;
207pub const UCONFIG_USE_ML_PHRASE_BREAKING: u32 = 0;
208pub const UCONFIG_NO_BREAK_ITERATION: u32 = 0;
209pub const UCONFIG_NO_IDNA: u32 = 0;
210pub const UCONFIG_USE_WINDOWS_LCID_MAPPING_API: u32 = 1;
211pub const UCONFIG_NO_COLLATION: u32 = 0;
212pub const UCONFIG_NO_FORMATTING: u32 = 0;
213pub const UCONFIG_NO_TRANSLITERATION: u32 = 0;
214pub const UCONFIG_NO_REGULAR_EXPRESSIONS: u32 = 0;
215pub const UCONFIG_NO_SERVICE: u32 = 0;
216pub const UCONFIG_HAVE_PARSEALLINPUT: u32 = 1;
217pub const UCONFIG_NO_FILTERED_BREAK_ITERATION: u32 = 0;
218pub const U_COPYRIGHT_STRING : & [u8 ; 120] = b" Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html \0" ;
219pub const U_ICU_VERSION_MAJOR_NUM: u32 = 74;
220pub const U_ICU_VERSION_MINOR_NUM: u32 = 2;
221pub const U_ICU_VERSION_PATCHLEVEL_NUM: u32 = 0;
222pub const U_ICU_VERSION_BUILDLEVEL_NUM: u32 = 0;
223pub const U_DISABLE_VERSION_SUFFIX: u32 = 0;
224pub const U_ICU_VERSION: &[u8; 5] = b"74.2\0";
225pub const U_ICU_VERSION_SHORT: &[u8; 3] = b"74\0";
226pub const U_ICU_DATA_VERSION: &[u8; 5] = b"74.2\0";
227pub const UCOL_RUNTIME_VERSION: u32 = 9;
228pub const UCOL_BUILDER_VERSION: u32 = 9;
229pub const UCOL_TAILORINGS_VERSION: u32 = 1;
230pub const U_PF_UNKNOWN: u32 = 0;
231pub const U_PF_WINDOWS: u32 = 1000;
232pub const U_PF_MINGW: u32 = 1800;
233pub const U_PF_CYGWIN: u32 = 1900;
234pub const U_PF_HPUX: u32 = 2100;
235pub const U_PF_SOLARIS: u32 = 2600;
236pub const U_PF_BSD: u32 = 3000;
237pub const U_PF_AIX: u32 = 3100;
238pub const U_PF_IRIX: u32 = 3200;
239pub const U_PF_DARWIN: u32 = 3500;
240pub const U_PF_IPHONE: u32 = 3550;
241pub const U_PF_QNX: u32 = 3700;
242pub const U_PF_LINUX: u32 = 4000;
243pub const U_PF_BROWSER_NATIVE_CLIENT: u32 = 4020;
244pub const U_PF_ANDROID: u32 = 4050;
245pub const U_PF_FUCHSIA: u32 = 4100;
246pub const U_PF_EMSCRIPTEN: u32 = 5010;
247pub const U_PF_OS390: u32 = 9000;
248pub const U_PF_OS400: u32 = 9400;
249pub const U_PLATFORM: u32 = 4000;
250pub const U_PLATFORM_USES_ONLY_WIN32_API: u32 = 0;
251pub const U_PLATFORM_HAS_WIN32_API: u32 = 0;
252pub const U_PLATFORM_HAS_WINUWP_API: u32 = 0;
253pub const U_PLATFORM_IMPLEMENTS_POSIX: u32 = 1;
254pub const U_PLATFORM_IS_LINUX_BASED: u32 = 1;
255pub const U_PLATFORM_IS_DARWIN_BASED: u32 = 0;
256pub const U_HAVE_STDINT_H: u32 = 1;
257pub const U_HAVE_INTTYPES_H: u32 = 1;
258pub const U_HAVE_PLACEMENT_NEW: u32 = 1;
259pub const U_HAVE_DEBUG_LOCATION_NEW: u32 = 0;
260pub const U_CPLUSPLUS_VERSION: u32 = 0;
261pub const U_ASCII_FAMILY: u32 = 0;
262pub const U_EBCDIC_FAMILY: u32 = 1;
263pub const U_CHARSET_FAMILY: u32 = 0;
264pub const U_CHARSET_IS_UTF8: u32 = 1;
265pub const U_HAVE_WCHAR_H: u32 = 1;
266pub const U_SIZEOF_WCHAR_T: u32 = 4;
267pub const U_HAVE_WCSCPY: u32 = 1;
268pub const U_HAVE_CHAR16_T: u32 = 1;
269pub const _STDINT_H: u32 = 1;
270pub const _BITS_WCHAR_H: u32 = 1;
271pub const _BITS_STDINT_INTN_H: u32 = 1;
272pub const _BITS_STDINT_UINTN_H: u32 = 1;
273pub const _BITS_STDINT_LEAST_H: u32 = 1;
274pub const INT8_MIN: i32 = -128;
275pub const INT16_MIN: i32 = -32768;
276pub const INT32_MIN: i32 = -2147483648;
277pub const INT8_MAX: u32 = 127;
278pub const INT16_MAX: u32 = 32767;
279pub const INT32_MAX: u32 = 2147483647;
280pub const UINT8_MAX: u32 = 255;
281pub const UINT16_MAX: u32 = 65535;
282pub const UINT32_MAX: u32 = 4294967295;
283pub const INT_LEAST8_MIN: i32 = -128;
284pub const INT_LEAST16_MIN: i32 = -32768;
285pub const INT_LEAST32_MIN: i32 = -2147483648;
286pub const INT_LEAST8_MAX: u32 = 127;
287pub const INT_LEAST16_MAX: u32 = 32767;
288pub const INT_LEAST32_MAX: u32 = 2147483647;
289pub const UINT_LEAST8_MAX: u32 = 255;
290pub const UINT_LEAST16_MAX: u32 = 65535;
291pub const UINT_LEAST32_MAX: u32 = 4294967295;
292pub const INT_FAST8_MIN: i32 = -128;
293pub const INT_FAST16_MIN: i64 = -9223372036854775808;
294pub const INT_FAST32_MIN: i64 = -9223372036854775808;
295pub const INT_FAST8_MAX: u32 = 127;
296pub const INT_FAST16_MAX: u64 = 9223372036854775807;
297pub const INT_FAST32_MAX: u64 = 9223372036854775807;
298pub const UINT_FAST8_MAX: u32 = 255;
299pub const UINT_FAST16_MAX: i32 = -1;
300pub const UINT_FAST32_MAX: i32 = -1;
301pub const INTPTR_MIN: i64 = -9223372036854775808;
302pub const INTPTR_MAX: u64 = 9223372036854775807;
303pub const UINTPTR_MAX: i32 = -1;
304pub const PTRDIFF_MIN: i64 = -9223372036854775808;
305pub const PTRDIFF_MAX: u64 = 9223372036854775807;
306pub const SIG_ATOMIC_MIN: i32 = -2147483648;
307pub const SIG_ATOMIC_MAX: u32 = 2147483647;
308pub const SIZE_MAX: i32 = -1;
309pub const WINT_MIN: u32 = 0;
310pub const WINT_MAX: u32 = 4294967295;
311pub const __bool_true_false_are_defined: u32 = 1;
312pub const true_: u32 = 1;
313pub const false_: u32 = 0;
314pub const U_DEFINE_FALSE_AND_TRUE: u32 = 0;
315pub const U_SIZEOF_UCHAR: u32 = 2;
316pub const U_CHAR16_IS_TYPEDEF: u32 = 0;
317pub const U_SENTINEL: i32 = -1;
318pub const U_COPYRIGHT_STRING_LENGTH: u32 = 128;
319pub const U_MAX_VERSION_LENGTH: u32 = 4;
320pub const U_VERSION_DELIMITER: u8 = 46u8;
321pub const U_MAX_VERSION_STRING_LENGTH: u32 = 20;
322pub const U8_LEAD3_T1_BITS: &[u8; 17] = b" 000000000000\x1000\0";
323pub const U8_LEAD4_T1_BITS: &[u8; 17] = b"\0\0\0\0\0\0\0\0\x1E\x0F\x0F\x0F\0\0\0\0\0";
324pub const U8_MAX_LENGTH: u32 = 4;
325pub const U16_SURROGATE_OFFSET: u32 = 56613888;
326pub const U16_MAX_LENGTH: u32 = 2;
327pub const U_HIDE_OBSOLETE_UTF_OLD_H: u32 = 0;
328pub const UTF_SIZE: u32 = 16;
329pub const UTF8_ERROR_VALUE_1: u32 = 21;
330pub const UTF8_ERROR_VALUE_2: u32 = 159;
331pub const UTF_ERROR_VALUE: u32 = 65535;
332pub const UTF8_MAX_CHAR_LENGTH: u32 = 4;
333pub const UTF_SURROGATE_OFFSET: u32 = 56613888;
334pub const UTF16_MAX_CHAR_LENGTH: u32 = 2;
335pub const UTF32_MAX_CHAR_LENGTH: u32 = 1;
336pub const UTF_MAX_CHAR_LENGTH: u32 = 2;
337pub const U_SHOW_CPLUSPLUS_API: u32 = 0;
338pub const U_ICUDATA_TYPE_LETTER: &[u8; 2] = b"l\0";
339pub const U_ICUDATA_NAME: &[u8; 9] = b"icudt74l\0";
340pub const U_USRDATA_NAME: &[u8; 9] = b"usrdt74l\0";
341pub const U_USE_USRDATA: u32 = 0;
342pub const U_MILLIS_PER_SECOND: u32 = 1000;
343pub const U_MILLIS_PER_MINUTE: u32 = 60000;
344pub const U_MILLIS_PER_HOUR: u32 = 3600000;
345pub const U_MILLIS_PER_DAY: u32 = 86400000;
346pub const UCNV_SUB_STOP_ON_ILLEGAL: &[u8; 2] = b"i\0";
347pub const UCNV_SKIP_STOP_ON_ILLEGAL: &[u8; 2] = b"i\0";
348pub const UCNV_ESCAPE_JAVA: &[u8; 2] = b"J\0";
349pub const UCNV_ESCAPE_C: &[u8; 2] = b"C\0";
350pub const UCNV_ESCAPE_XML_DEC: &[u8; 2] = b"D\0";
351pub const UCNV_ESCAPE_XML_HEX: &[u8; 2] = b"X\0";
352pub const UCNV_ESCAPE_UNICODE: &[u8; 2] = b"U\0";
353pub const UCNV_ESCAPE_CSS2: &[u8; 2] = b"S\0";
354pub const UCNV_MAX_CONVERTER_NAME_LENGTH: u32 = 60;
355pub const UCNV_MAX_FULL_FILE_NAME_LENGTH: u32 = 660;
356pub const UCNV_SI: u32 = 15;
357pub const UCNV_SO: u32 = 14;
358pub const UCNV_OPTION_SEP_CHAR: u8 = 44u8;
359pub const UCNV_OPTION_SEP_STRING: &[u8; 2] = b",\0";
360pub const UCNV_VALUE_SEP_CHAR: u8 = 61u8;
361pub const UCNV_VALUE_SEP_STRING: &[u8; 2] = b"=\0";
362pub const UCNV_LOCALE_OPTION_STRING: &[u8; 9] = b",locale=\0";
363pub const UCNV_VERSION_OPTION_STRING: &[u8; 10] = b",version=\0";
364pub const UCNV_SWAP_LFNL_OPTION_STRING: &[u8; 10] = b",swaplfnl\0";
365pub const U_CNV_SAFECLONE_BUFFERSIZE: u32 = 1024;
366pub const ICU_PIVOT_BUF_SIZE: u32 = 1024;
367pub const _STDLIB_H: u32 = 1;
368pub const WNOHANG: u32 = 1;
369pub const WUNTRACED: u32 = 2;
370pub const WSTOPPED: u32 = 2;
371pub const WEXITED: u32 = 4;
372pub const WCONTINUED: u32 = 8;
373pub const WNOWAIT: u32 = 16777216;
374pub const __WNOTHREAD: u32 = 536870912;
375pub const __WALL: u32 = 1073741824;
376pub const __WCLONE: u32 = 2147483648;
377pub const __W_CONTINUED: u32 = 65535;
378pub const __WCOREFLAG: u32 = 128;
379pub const __ldiv_t_defined: u32 = 1;
380pub const __lldiv_t_defined: u32 = 1;
381pub const RAND_MAX: u32 = 2147483647;
382pub const EXIT_FAILURE: u32 = 1;
383pub const EXIT_SUCCESS: u32 = 0;
384pub const _SYS_TYPES_H: u32 = 1;
385pub const __clock_t_defined: u32 = 1;
386pub const __clockid_t_defined: u32 = 1;
387pub const __time_t_defined: u32 = 1;
388pub const __timer_t_defined: u32 = 1;
389pub const __BIT_TYPES_DEFINED__: u32 = 1;
390pub const _ENDIAN_H: u32 = 1;
391pub const _BITS_ENDIAN_H: u32 = 1;
392pub const __LITTLE_ENDIAN: u32 = 1234;
393pub const __BIG_ENDIAN: u32 = 4321;
394pub const __PDP_ENDIAN: u32 = 3412;
395pub const _BITS_ENDIANNESS_H: u32 = 1;
396pub const __BYTE_ORDER: u32 = 1234;
397pub const __FLOAT_WORD_ORDER: u32 = 1234;
398pub const LITTLE_ENDIAN: u32 = 1234;
399pub const BIG_ENDIAN: u32 = 4321;
400pub const PDP_ENDIAN: u32 = 3412;
401pub const BYTE_ORDER: u32 = 1234;
402pub const _BITS_BYTESWAP_H: u32 = 1;
403pub const _BITS_UINTN_IDENTITY_H: u32 = 1;
404pub const _SYS_SELECT_H: u32 = 1;
405pub const __sigset_t_defined: u32 = 1;
406pub const __timeval_defined: u32 = 1;
407pub const _STRUCT_TIMESPEC: u32 = 1;
408pub const FD_SETSIZE: u32 = 1024;
409pub const _BITS_PTHREADTYPES_COMMON_H: u32 = 1;
410pub const _THREAD_SHARED_TYPES_H: u32 = 1;
411pub const _BITS_PTHREADTYPES_ARCH_H: u32 = 1;
412pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40;
413pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56;
414pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56;
415pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32;
416pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4;
417pub const __SIZEOF_PTHREAD_COND_T: u32 = 48;
418pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4;
419pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8;
420pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4;
421pub const _THREAD_MUTEX_INTERNAL_H: u32 = 1;
422pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1;
423pub const __have_pthread_attr_t: u32 = 1;
424pub const _ALLOCA_H: u32 = 1;
425pub const XML_XPATH_CHECKNS: u32 = 1;
426pub const XML_XPATH_NOVAR: u32 = 2;
427pub const INVALID_SOCKET: i32 = -1;
428pub const XML_MAX_TEXT_LENGTH: u32 = 10000000;
429pub const XML_MAX_NAME_LENGTH: u32 = 50000;
430pub const XML_MAX_DICTIONARY_LIMIT: u32 = 10000000;
431pub const XML_MAX_LOOKUP_LIMIT: u32 = 10000000;
432pub const XML_MAX_NAMELEN: u32 = 100;
433pub const INPUT_CHUNK: u32 = 250;
434pub const XML_SUBSTITUTE_NONE: u32 = 0;
435pub const XML_SUBSTITUTE_REF: u32 = 1;
436pub const XML_SUBSTITUTE_PEREF: u32 = 2;
437pub const XML_SUBSTITUTE_BOTH: u32 = 3;
438pub const XML_SCHEMAS_ANYATTR_SKIP: u32 = 1;
439pub const XML_SCHEMAS_ANYATTR_LAX: u32 = 2;
440pub const XML_SCHEMAS_ANYATTR_STRICT: u32 = 3;
441pub const XML_SCHEMAS_ANY_SKIP: u32 = 1;
442pub const XML_SCHEMAS_ANY_LAX: u32 = 2;
443pub const XML_SCHEMAS_ANY_STRICT: u32 = 3;
444pub const XML_SCHEMAS_ATTR_USE_PROHIBITED: u32 = 0;
445pub const XML_SCHEMAS_ATTR_USE_REQUIRED: u32 = 1;
446pub const XML_SCHEMAS_ATTR_USE_OPTIONAL: u32 = 2;
447pub const XML_SCHEMAS_ATTR_GLOBAL: u32 = 1;
448pub const XML_SCHEMAS_ATTR_NSDEFAULT: u32 = 128;
449pub const XML_SCHEMAS_ATTR_INTERNAL_RESOLVED: u32 = 256;
450pub const XML_SCHEMAS_ATTR_FIXED: u32 = 512;
451pub const XML_SCHEMAS_WILDCARD_COMPLETE: u32 = 1;
452pub const XML_SCHEMAS_ATTRGROUP_WILDCARD_BUILDED: u32 = 1;
453pub const XML_SCHEMAS_ATTRGROUP_GLOBAL: u32 = 2;
454pub const XML_SCHEMAS_ATTRGROUP_MARKED: u32 = 4;
455pub const XML_SCHEMAS_ATTRGROUP_REDEFINED: u32 = 8;
456pub const XML_SCHEMAS_ATTRGROUP_HAS_REFS: u32 = 16;
457pub const XML_SCHEMAS_TYPE_MIXED: u32 = 1;
458pub const XML_SCHEMAS_TYPE_DERIVATION_METHOD_EXTENSION: u32 = 2;
459pub const XML_SCHEMAS_TYPE_DERIVATION_METHOD_RESTRICTION: u32 = 4;
460pub const XML_SCHEMAS_TYPE_GLOBAL: u32 = 8;
461pub const XML_SCHEMAS_TYPE_OWNED_ATTR_WILDCARD: u32 = 16;
462pub const XML_SCHEMAS_TYPE_VARIETY_ABSENT: u32 = 32;
463pub const XML_SCHEMAS_TYPE_VARIETY_LIST: u32 = 64;
464pub const XML_SCHEMAS_TYPE_VARIETY_UNION: u32 = 128;
465pub const XML_SCHEMAS_TYPE_VARIETY_ATOMIC: u32 = 256;
466pub const XML_SCHEMAS_TYPE_FINAL_EXTENSION: u32 = 512;
467pub const XML_SCHEMAS_TYPE_FINAL_RESTRICTION: u32 = 1024;
468pub const XML_SCHEMAS_TYPE_FINAL_LIST: u32 = 2048;
469pub const XML_SCHEMAS_TYPE_FINAL_UNION: u32 = 4096;
470pub const XML_SCHEMAS_TYPE_FINAL_DEFAULT: u32 = 8192;
471pub const XML_SCHEMAS_TYPE_BUILTIN_PRIMITIVE: u32 = 16384;
472pub const XML_SCHEMAS_TYPE_MARKED: u32 = 65536;
473pub const XML_SCHEMAS_TYPE_BLOCK_DEFAULT: u32 = 131072;
474pub const XML_SCHEMAS_TYPE_BLOCK_EXTENSION: u32 = 262144;
475pub const XML_SCHEMAS_TYPE_BLOCK_RESTRICTION: u32 = 524288;
476pub const XML_SCHEMAS_TYPE_ABSTRACT: u32 = 1048576;
477pub const XML_SCHEMAS_TYPE_FACETSNEEDVALUE: u32 = 2097152;
478pub const XML_SCHEMAS_TYPE_INTERNAL_RESOLVED: u32 = 4194304;
479pub const XML_SCHEMAS_TYPE_INTERNAL_INVALID: u32 = 8388608;
480pub const XML_SCHEMAS_TYPE_WHITESPACE_PRESERVE: u32 = 16777216;
481pub const XML_SCHEMAS_TYPE_WHITESPACE_REPLACE: u32 = 33554432;
482pub const XML_SCHEMAS_TYPE_WHITESPACE_COLLAPSE: u32 = 67108864;
483pub const XML_SCHEMAS_TYPE_HAS_FACETS: u32 = 134217728;
484pub const XML_SCHEMAS_TYPE_NORMVALUENEEDED: u32 = 268435456;
485pub const XML_SCHEMAS_TYPE_FIXUP_1: u32 = 536870912;
486pub const XML_SCHEMAS_TYPE_REDEFINED: u32 = 1073741824;
487pub const XML_SCHEMAS_ELEM_NILLABLE: u32 = 1;
488pub const XML_SCHEMAS_ELEM_GLOBAL: u32 = 2;
489pub const XML_SCHEMAS_ELEM_DEFAULT: u32 = 4;
490pub const XML_SCHEMAS_ELEM_FIXED: u32 = 8;
491pub const XML_SCHEMAS_ELEM_ABSTRACT: u32 = 16;
492pub const XML_SCHEMAS_ELEM_TOPLEVEL: u32 = 32;
493pub const XML_SCHEMAS_ELEM_REF: u32 = 64;
494pub const XML_SCHEMAS_ELEM_NSDEFAULT: u32 = 128;
495pub const XML_SCHEMAS_ELEM_INTERNAL_RESOLVED: u32 = 256;
496pub const XML_SCHEMAS_ELEM_CIRCULAR: u32 = 512;
497pub const XML_SCHEMAS_ELEM_BLOCK_ABSENT: u32 = 1024;
498pub const XML_SCHEMAS_ELEM_BLOCK_EXTENSION: u32 = 2048;
499pub const XML_SCHEMAS_ELEM_BLOCK_RESTRICTION: u32 = 4096;
500pub const XML_SCHEMAS_ELEM_BLOCK_SUBSTITUTION: u32 = 8192;
501pub const XML_SCHEMAS_ELEM_FINAL_ABSENT: u32 = 16384;
502pub const XML_SCHEMAS_ELEM_FINAL_EXTENSION: u32 = 32768;
503pub const XML_SCHEMAS_ELEM_FINAL_RESTRICTION: u32 = 65536;
504pub const XML_SCHEMAS_ELEM_SUBST_GROUP_HEAD: u32 = 131072;
505pub const XML_SCHEMAS_ELEM_INTERNAL_CHECKED: u32 = 262144;
506pub const XML_SCHEMAS_FACET_UNKNOWN: u32 = 0;
507pub const XML_SCHEMAS_FACET_PRESERVE: u32 = 1;
508pub const XML_SCHEMAS_FACET_REPLACE: u32 = 2;
509pub const XML_SCHEMAS_FACET_COLLAPSE: u32 = 3;
510pub const XML_SCHEMAS_QUALIF_ELEM: u32 = 1;
511pub const XML_SCHEMAS_QUALIF_ATTR: u32 = 2;
512pub const XML_SCHEMAS_FINAL_DEFAULT_EXTENSION: u32 = 4;
513pub const XML_SCHEMAS_FINAL_DEFAULT_RESTRICTION: u32 = 8;
514pub const XML_SCHEMAS_FINAL_DEFAULT_LIST: u32 = 16;
515pub const XML_SCHEMAS_FINAL_DEFAULT_UNION: u32 = 32;
516pub const XML_SCHEMAS_BLOCK_DEFAULT_EXTENSION: u32 = 64;
517pub const XML_SCHEMAS_BLOCK_DEFAULT_RESTRICTION: u32 = 128;
518pub const XML_SCHEMAS_BLOCK_DEFAULT_SUBSTITUTION: u32 = 256;
519pub const XML_SCHEMAS_INCLUDING_CONVERT_NS: u32 = 512;
520unsafe extern "C" {
521  pub fn xmlCheckVersion(version: ::std::os::raw::c_int);
522}
523pub type __gnuc_va_list = __builtin_va_list;
524pub type __u_char = ::std::os::raw::c_uchar;
525pub type __u_short = ::std::os::raw::c_ushort;
526pub type __u_int = ::std::os::raw::c_uint;
527pub type __u_long = ::std::os::raw::c_ulong;
528pub type __int8_t = ::std::os::raw::c_schar;
529pub type __uint8_t = ::std::os::raw::c_uchar;
530pub type __int16_t = ::std::os::raw::c_short;
531pub type __uint16_t = ::std::os::raw::c_ushort;
532pub type __int32_t = ::std::os::raw::c_int;
533pub type __uint32_t = ::std::os::raw::c_uint;
534pub type __int64_t = ::std::os::raw::c_long;
535pub type __uint64_t = ::std::os::raw::c_ulong;
536pub type __int_least8_t = __int8_t;
537pub type __uint_least8_t = __uint8_t;
538pub type __int_least16_t = __int16_t;
539pub type __uint_least16_t = __uint16_t;
540pub type __int_least32_t = __int32_t;
541pub type __uint_least32_t = __uint32_t;
542pub type __int_least64_t = __int64_t;
543pub type __uint_least64_t = __uint64_t;
544pub type __quad_t = ::std::os::raw::c_long;
545pub type __u_quad_t = ::std::os::raw::c_ulong;
546pub type __intmax_t = ::std::os::raw::c_long;
547pub type __uintmax_t = ::std::os::raw::c_ulong;
548pub type __dev_t = ::std::os::raw::c_ulong;
549pub type __uid_t = ::std::os::raw::c_uint;
550pub type __gid_t = ::std::os::raw::c_uint;
551pub type __ino_t = ::std::os::raw::c_ulong;
552pub type __ino64_t = ::std::os::raw::c_ulong;
553pub type __mode_t = ::std::os::raw::c_uint;
554pub type __nlink_t = ::std::os::raw::c_ulong;
555pub type __off_t = ::std::os::raw::c_long;
556pub type __off64_t = ::std::os::raw::c_long;
557pub type __pid_t = ::std::os::raw::c_int;
558#[repr(C)]
559#[derive(Debug, Copy, Clone)]
560pub struct __fsid_t {
561  pub __val: [::std::os::raw::c_int; 2usize],
562}
563#[allow(clippy::unnecessary_operation, clippy::identity_op)]
564const _: () = {
565  ["Size of __fsid_t"][::std::mem::size_of::<__fsid_t>() - 8usize];
566  ["Alignment of __fsid_t"][::std::mem::align_of::<__fsid_t>() - 4usize];
567  ["Offset of field: __fsid_t::__val"][::std::mem::offset_of!(__fsid_t, __val) - 0usize];
568};
569pub type __clock_t = ::std::os::raw::c_long;
570pub type __rlim_t = ::std::os::raw::c_ulong;
571pub type __rlim64_t = ::std::os::raw::c_ulong;
572pub type __id_t = ::std::os::raw::c_uint;
573pub type __time_t = ::std::os::raw::c_long;
574pub type __useconds_t = ::std::os::raw::c_uint;
575pub type __suseconds_t = ::std::os::raw::c_long;
576pub type __suseconds64_t = ::std::os::raw::c_long;
577pub type __daddr_t = ::std::os::raw::c_int;
578pub type __key_t = ::std::os::raw::c_int;
579pub type __clockid_t = ::std::os::raw::c_int;
580pub type __timer_t = *mut ::std::os::raw::c_void;
581pub type __blksize_t = ::std::os::raw::c_long;
582pub type __blkcnt_t = ::std::os::raw::c_long;
583pub type __blkcnt64_t = ::std::os::raw::c_long;
584pub type __fsblkcnt_t = ::std::os::raw::c_ulong;
585pub type __fsblkcnt64_t = ::std::os::raw::c_ulong;
586pub type __fsfilcnt_t = ::std::os::raw::c_ulong;
587pub type __fsfilcnt64_t = ::std::os::raw::c_ulong;
588pub type __fsword_t = ::std::os::raw::c_long;
589pub type __ssize_t = ::std::os::raw::c_long;
590pub type __syscall_slong_t = ::std::os::raw::c_long;
591pub type __syscall_ulong_t = ::std::os::raw::c_ulong;
592pub type __loff_t = __off64_t;
593pub type __caddr_t = *mut ::std::os::raw::c_char;
594pub type __intptr_t = ::std::os::raw::c_long;
595pub type __socklen_t = ::std::os::raw::c_uint;
596pub type __sig_atomic_t = ::std::os::raw::c_int;
597#[repr(C)]
598#[derive(Copy, Clone)]
599pub struct __mbstate_t {
600  pub __count: ::std::os::raw::c_int,
601  pub __value: __mbstate_t__bindgen_ty_1,
602}
603#[repr(C)]
604#[derive(Copy, Clone)]
605pub union __mbstate_t__bindgen_ty_1 {
606  pub __wch: ::std::os::raw::c_uint,
607  pub __wchb: [::std::os::raw::c_char; 4usize],
608}
609#[allow(clippy::unnecessary_operation, clippy::identity_op)]
610const _: () = {
611  ["Size of __mbstate_t__bindgen_ty_1"]
612    [::std::mem::size_of::<__mbstate_t__bindgen_ty_1>() - 4usize];
613  ["Alignment of __mbstate_t__bindgen_ty_1"]
614    [::std::mem::align_of::<__mbstate_t__bindgen_ty_1>() - 4usize];
615  ["Offset of field: __mbstate_t__bindgen_ty_1::__wch"]
616    [::std::mem::offset_of!(__mbstate_t__bindgen_ty_1, __wch) - 0usize];
617  ["Offset of field: __mbstate_t__bindgen_ty_1::__wchb"]
618    [::std::mem::offset_of!(__mbstate_t__bindgen_ty_1, __wchb) - 0usize];
619};
620#[allow(clippy::unnecessary_operation, clippy::identity_op)]
621const _: () = {
622  ["Size of __mbstate_t"][::std::mem::size_of::<__mbstate_t>() - 8usize];
623  ["Alignment of __mbstate_t"][::std::mem::align_of::<__mbstate_t>() - 4usize];
624  ["Offset of field: __mbstate_t::__count"][::std::mem::offset_of!(__mbstate_t, __count) - 0usize];
625  ["Offset of field: __mbstate_t::__value"][::std::mem::offset_of!(__mbstate_t, __value) - 4usize];
626};
627#[repr(C)]
628#[derive(Copy, Clone)]
629pub struct _G_fpos_t {
630  pub __pos: __off_t,
631  pub __state: __mbstate_t,
632}
633#[allow(clippy::unnecessary_operation, clippy::identity_op)]
634const _: () = {
635  ["Size of _G_fpos_t"][::std::mem::size_of::<_G_fpos_t>() - 16usize];
636  ["Alignment of _G_fpos_t"][::std::mem::align_of::<_G_fpos_t>() - 8usize];
637  ["Offset of field: _G_fpos_t::__pos"][::std::mem::offset_of!(_G_fpos_t, __pos) - 0usize];
638  ["Offset of field: _G_fpos_t::__state"][::std::mem::offset_of!(_G_fpos_t, __state) - 8usize];
639};
640pub type __fpos_t = _G_fpos_t;
641#[repr(C)]
642#[derive(Copy, Clone)]
643pub struct _G_fpos64_t {
644  pub __pos: __off64_t,
645  pub __state: __mbstate_t,
646}
647#[allow(clippy::unnecessary_operation, clippy::identity_op)]
648const _: () = {
649  ["Size of _G_fpos64_t"][::std::mem::size_of::<_G_fpos64_t>() - 16usize];
650  ["Alignment of _G_fpos64_t"][::std::mem::align_of::<_G_fpos64_t>() - 8usize];
651  ["Offset of field: _G_fpos64_t::__pos"][::std::mem::offset_of!(_G_fpos64_t, __pos) - 0usize];
652  ["Offset of field: _G_fpos64_t::__state"][::std::mem::offset_of!(_G_fpos64_t, __state) - 8usize];
653};
654pub type __fpos64_t = _G_fpos64_t;
655pub type __FILE = _IO_FILE;
656pub type FILE = _IO_FILE;
657#[repr(C)]
658#[derive(Debug, Copy, Clone)]
659pub struct _IO_marker {
660  _unused: [u8; 0],
661}
662#[repr(C)]
663#[derive(Debug, Copy, Clone)]
664pub struct _IO_codecvt {
665  _unused: [u8; 0],
666}
667#[repr(C)]
668#[derive(Debug, Copy, Clone)]
669pub struct _IO_wide_data {
670  _unused: [u8; 0],
671}
672pub type _IO_lock_t = ::std::os::raw::c_void;
673#[repr(C)]
674#[derive(Debug, Copy, Clone)]
675pub struct _IO_FILE {
676  pub _flags: ::std::os::raw::c_int,
677  pub _IO_read_ptr: *mut ::std::os::raw::c_char,
678  pub _IO_read_end: *mut ::std::os::raw::c_char,
679  pub _IO_read_base: *mut ::std::os::raw::c_char,
680  pub _IO_write_base: *mut ::std::os::raw::c_char,
681  pub _IO_write_ptr: *mut ::std::os::raw::c_char,
682  pub _IO_write_end: *mut ::std::os::raw::c_char,
683  pub _IO_buf_base: *mut ::std::os::raw::c_char,
684  pub _IO_buf_end: *mut ::std::os::raw::c_char,
685  pub _IO_save_base: *mut ::std::os::raw::c_char,
686  pub _IO_backup_base: *mut ::std::os::raw::c_char,
687  pub _IO_save_end: *mut ::std::os::raw::c_char,
688  pub _markers: *mut _IO_marker,
689  pub _chain: *mut _IO_FILE,
690  pub _fileno: ::std::os::raw::c_int,
691  pub _flags2: ::std::os::raw::c_int,
692  pub _old_offset: __off_t,
693  pub _cur_column: ::std::os::raw::c_ushort,
694  pub _vtable_offset: ::std::os::raw::c_schar,
695  pub _shortbuf: [::std::os::raw::c_char; 1usize],
696  pub _lock: *mut _IO_lock_t,
697  pub _offset: __off64_t,
698  pub _codecvt: *mut _IO_codecvt,
699  pub _wide_data: *mut _IO_wide_data,
700  pub _freeres_list: *mut _IO_FILE,
701  pub _freeres_buf: *mut ::std::os::raw::c_void,
702  pub __pad5: usize,
703  pub _mode: ::std::os::raw::c_int,
704  pub _unused2: [::std::os::raw::c_char; 20usize],
705}
706#[allow(clippy::unnecessary_operation, clippy::identity_op)]
707const _: () = {
708  ["Size of _IO_FILE"][::std::mem::size_of::<_IO_FILE>() - 216usize];
709  ["Alignment of _IO_FILE"][::std::mem::align_of::<_IO_FILE>() - 8usize];
710  ["Offset of field: _IO_FILE::_flags"][::std::mem::offset_of!(_IO_FILE, _flags) - 0usize];
711  ["Offset of field: _IO_FILE::_IO_read_ptr"]
712    [::std::mem::offset_of!(_IO_FILE, _IO_read_ptr) - 8usize];
713  ["Offset of field: _IO_FILE::_IO_read_end"]
714    [::std::mem::offset_of!(_IO_FILE, _IO_read_end) - 16usize];
715  ["Offset of field: _IO_FILE::_IO_read_base"]
716    [::std::mem::offset_of!(_IO_FILE, _IO_read_base) - 24usize];
717  ["Offset of field: _IO_FILE::_IO_write_base"]
718    [::std::mem::offset_of!(_IO_FILE, _IO_write_base) - 32usize];
719  ["Offset of field: _IO_FILE::_IO_write_ptr"]
720    [::std::mem::offset_of!(_IO_FILE, _IO_write_ptr) - 40usize];
721  ["Offset of field: _IO_FILE::_IO_write_end"]
722    [::std::mem::offset_of!(_IO_FILE, _IO_write_end) - 48usize];
723  ["Offset of field: _IO_FILE::_IO_buf_base"]
724    [::std::mem::offset_of!(_IO_FILE, _IO_buf_base) - 56usize];
725  ["Offset of field: _IO_FILE::_IO_buf_end"]
726    [::std::mem::offset_of!(_IO_FILE, _IO_buf_end) - 64usize];
727  ["Offset of field: _IO_FILE::_IO_save_base"]
728    [::std::mem::offset_of!(_IO_FILE, _IO_save_base) - 72usize];
729  ["Offset of field: _IO_FILE::_IO_backup_base"]
730    [::std::mem::offset_of!(_IO_FILE, _IO_backup_base) - 80usize];
731  ["Offset of field: _IO_FILE::_IO_save_end"]
732    [::std::mem::offset_of!(_IO_FILE, _IO_save_end) - 88usize];
733  ["Offset of field: _IO_FILE::_markers"][::std::mem::offset_of!(_IO_FILE, _markers) - 96usize];
734  ["Offset of field: _IO_FILE::_chain"][::std::mem::offset_of!(_IO_FILE, _chain) - 104usize];
735  ["Offset of field: _IO_FILE::_fileno"][::std::mem::offset_of!(_IO_FILE, _fileno) - 112usize];
736  ["Offset of field: _IO_FILE::_flags2"][::std::mem::offset_of!(_IO_FILE, _flags2) - 116usize];
737  ["Offset of field: _IO_FILE::_old_offset"]
738    [::std::mem::offset_of!(_IO_FILE, _old_offset) - 120usize];
739  ["Offset of field: _IO_FILE::_cur_column"]
740    [::std::mem::offset_of!(_IO_FILE, _cur_column) - 128usize];
741  ["Offset of field: _IO_FILE::_vtable_offset"]
742    [::std::mem::offset_of!(_IO_FILE, _vtable_offset) - 130usize];
743  ["Offset of field: _IO_FILE::_shortbuf"][::std::mem::offset_of!(_IO_FILE, _shortbuf) - 131usize];
744  ["Offset of field: _IO_FILE::_lock"][::std::mem::offset_of!(_IO_FILE, _lock) - 136usize];
745  ["Offset of field: _IO_FILE::_offset"][::std::mem::offset_of!(_IO_FILE, _offset) - 144usize];
746  ["Offset of field: _IO_FILE::_codecvt"][::std::mem::offset_of!(_IO_FILE, _codecvt) - 152usize];
747  ["Offset of field: _IO_FILE::_wide_data"]
748    [::std::mem::offset_of!(_IO_FILE, _wide_data) - 160usize];
749  ["Offset of field: _IO_FILE::_freeres_list"]
750    [::std::mem::offset_of!(_IO_FILE, _freeres_list) - 168usize];
751  ["Offset of field: _IO_FILE::_freeres_buf"]
752    [::std::mem::offset_of!(_IO_FILE, _freeres_buf) - 176usize];
753  ["Offset of field: _IO_FILE::__pad5"][::std::mem::offset_of!(_IO_FILE, __pad5) - 184usize];
754  ["Offset of field: _IO_FILE::_mode"][::std::mem::offset_of!(_IO_FILE, _mode) - 192usize];
755  ["Offset of field: _IO_FILE::_unused2"][::std::mem::offset_of!(_IO_FILE, _unused2) - 196usize];
756};
757pub type cookie_read_function_t = ::std::option::Option<
758  unsafe extern "C" fn(
759    __cookie: *mut ::std::os::raw::c_void,
760    __buf: *mut ::std::os::raw::c_char,
761    __nbytes: usize,
762  ) -> __ssize_t,
763>;
764pub type cookie_write_function_t = ::std::option::Option<
765  unsafe extern "C" fn(
766    __cookie: *mut ::std::os::raw::c_void,
767    __buf: *const ::std::os::raw::c_char,
768    __nbytes: usize,
769  ) -> __ssize_t,
770>;
771pub type cookie_seek_function_t = ::std::option::Option<
772  unsafe extern "C" fn(
773    __cookie: *mut ::std::os::raw::c_void,
774    __pos: *mut __off64_t,
775    __w: ::std::os::raw::c_int,
776  ) -> ::std::os::raw::c_int,
777>;
778pub type cookie_close_function_t = ::std::option::Option<
779  unsafe extern "C" fn(__cookie: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
780>;
781#[repr(C)]
782#[derive(Debug, Copy, Clone)]
783pub struct _IO_cookie_io_functions_t {
784  pub read: cookie_read_function_t,
785  pub write: cookie_write_function_t,
786  pub seek: cookie_seek_function_t,
787  pub close: cookie_close_function_t,
788}
789#[allow(clippy::unnecessary_operation, clippy::identity_op)]
790const _: () = {
791  ["Size of _IO_cookie_io_functions_t"]
792    [::std::mem::size_of::<_IO_cookie_io_functions_t>() - 32usize];
793  ["Alignment of _IO_cookie_io_functions_t"]
794    [::std::mem::align_of::<_IO_cookie_io_functions_t>() - 8usize];
795  ["Offset of field: _IO_cookie_io_functions_t::read"]
796    [::std::mem::offset_of!(_IO_cookie_io_functions_t, read) - 0usize];
797  ["Offset of field: _IO_cookie_io_functions_t::write"]
798    [::std::mem::offset_of!(_IO_cookie_io_functions_t, write) - 8usize];
799  ["Offset of field: _IO_cookie_io_functions_t::seek"]
800    [::std::mem::offset_of!(_IO_cookie_io_functions_t, seek) - 16usize];
801  ["Offset of field: _IO_cookie_io_functions_t::close"]
802    [::std::mem::offset_of!(_IO_cookie_io_functions_t, close) - 24usize];
803};
804pub type cookie_io_functions_t = _IO_cookie_io_functions_t;
805pub type va_list = __gnuc_va_list;
806pub type off_t = __off_t;
807pub type fpos_t = __fpos_t;
808unsafe extern "C" {
809  pub static mut stdin: *mut FILE;
810}
811unsafe extern "C" {
812  pub static mut stdout: *mut FILE;
813}
814unsafe extern "C" {
815  pub static mut stderr: *mut FILE;
816}
817unsafe extern "C" {
818  pub fn remove(__filename: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
819}
820unsafe extern "C" {
821  pub fn rename(
822    __old: *const ::std::os::raw::c_char,
823    __new: *const ::std::os::raw::c_char,
824  ) -> ::std::os::raw::c_int;
825}
826unsafe extern "C" {
827  pub fn renameat(
828    __oldfd: ::std::os::raw::c_int,
829    __old: *const ::std::os::raw::c_char,
830    __newfd: ::std::os::raw::c_int,
831    __new: *const ::std::os::raw::c_char,
832  ) -> ::std::os::raw::c_int;
833}
834unsafe extern "C" {
835  pub fn fclose(__stream: *mut FILE) -> ::std::os::raw::c_int;
836}
837unsafe extern "C" {
838  pub fn tmpfile() -> *mut FILE;
839}
840unsafe extern "C" {
841  pub fn tmpnam(arg1: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
842}
843unsafe extern "C" {
844  pub fn tmpnam_r(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
845}
846unsafe extern "C" {
847  pub fn tempnam(
848    __dir: *const ::std::os::raw::c_char,
849    __pfx: *const ::std::os::raw::c_char,
850  ) -> *mut ::std::os::raw::c_char;
851}
852unsafe extern "C" {
853  pub fn fflush(__stream: *mut FILE) -> ::std::os::raw::c_int;
854}
855unsafe extern "C" {
856  pub fn fflush_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
857}
858unsafe extern "C" {
859  pub fn fopen(
860    __filename: *const ::std::os::raw::c_char,
861    __modes: *const ::std::os::raw::c_char,
862  ) -> *mut FILE;
863}
864unsafe extern "C" {
865  pub fn freopen(
866    __filename: *const ::std::os::raw::c_char,
867    __modes: *const ::std::os::raw::c_char,
868    __stream: *mut FILE,
869  ) -> *mut FILE;
870}
871unsafe extern "C" {
872  pub fn fdopen(__fd: ::std::os::raw::c_int, __modes: *const ::std::os::raw::c_char) -> *mut FILE;
873}
874unsafe extern "C" {
875  pub fn fopencookie(
876    __magic_cookie: *mut ::std::os::raw::c_void,
877    __modes: *const ::std::os::raw::c_char,
878    __io_funcs: cookie_io_functions_t,
879  ) -> *mut FILE;
880}
881unsafe extern "C" {
882  pub fn fmemopen(
883    __s: *mut ::std::os::raw::c_void,
884    __len: usize,
885    __modes: *const ::std::os::raw::c_char,
886  ) -> *mut FILE;
887}
888unsafe extern "C" {
889  pub fn open_memstream(
890    __bufloc: *mut *mut ::std::os::raw::c_char,
891    __sizeloc: *mut usize,
892  ) -> *mut FILE;
893}
894unsafe extern "C" {
895  pub fn setbuf(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char);
896}
897unsafe extern "C" {
898  pub fn setvbuf(
899    __stream: *mut FILE,
900    __buf: *mut ::std::os::raw::c_char,
901    __modes: ::std::os::raw::c_int,
902    __n: usize,
903  ) -> ::std::os::raw::c_int;
904}
905unsafe extern "C" {
906  pub fn setbuffer(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char, __size: usize);
907}
908unsafe extern "C" {
909  pub fn setlinebuf(__stream: *mut FILE);
910}
911unsafe extern "C" {
912  pub fn fprintf(
913    __stream: *mut FILE,
914    __format: *const ::std::os::raw::c_char,
915    ...
916  ) -> ::std::os::raw::c_int;
917}
918unsafe extern "C" {
919  pub fn printf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
920}
921unsafe extern "C" {
922  pub fn sprintf(
923    __s: *mut ::std::os::raw::c_char,
924    __format: *const ::std::os::raw::c_char,
925    ...
926  ) -> ::std::os::raw::c_int;
927}
928unsafe extern "C" {
929  pub fn vfprintf(
930    __s: *mut FILE,
931    __format: *const ::std::os::raw::c_char,
932    __arg: *mut __va_list_tag,
933  ) -> ::std::os::raw::c_int;
934}
935unsafe extern "C" {
936  pub fn vprintf(
937    __format: *const ::std::os::raw::c_char,
938    __arg: *mut __va_list_tag,
939  ) -> ::std::os::raw::c_int;
940}
941unsafe extern "C" {
942  pub fn vsprintf(
943    __s: *mut ::std::os::raw::c_char,
944    __format: *const ::std::os::raw::c_char,
945    __arg: *mut __va_list_tag,
946  ) -> ::std::os::raw::c_int;
947}
948unsafe extern "C" {
949  pub fn snprintf(
950    __s: *mut ::std::os::raw::c_char,
951    __maxlen: ::std::os::raw::c_ulong,
952    __format: *const ::std::os::raw::c_char,
953    ...
954  ) -> ::std::os::raw::c_int;
955}
956unsafe extern "C" {
957  pub fn vsnprintf(
958    __s: *mut ::std::os::raw::c_char,
959    __maxlen: ::std::os::raw::c_ulong,
960    __format: *const ::std::os::raw::c_char,
961    __arg: *mut __va_list_tag,
962  ) -> ::std::os::raw::c_int;
963}
964unsafe extern "C" {
965  pub fn vasprintf(
966    __ptr: *mut *mut ::std::os::raw::c_char,
967    __f: *const ::std::os::raw::c_char,
968    __arg: *mut __va_list_tag,
969  ) -> ::std::os::raw::c_int;
970}
971unsafe extern "C" {
972  pub fn __asprintf(
973    __ptr: *mut *mut ::std::os::raw::c_char,
974    __fmt: *const ::std::os::raw::c_char,
975    ...
976  ) -> ::std::os::raw::c_int;
977}
978unsafe extern "C" {
979  pub fn asprintf(
980    __ptr: *mut *mut ::std::os::raw::c_char,
981    __fmt: *const ::std::os::raw::c_char,
982    ...
983  ) -> ::std::os::raw::c_int;
984}
985unsafe extern "C" {
986  pub fn vdprintf(
987    __fd: ::std::os::raw::c_int,
988    __fmt: *const ::std::os::raw::c_char,
989    __arg: *mut __va_list_tag,
990  ) -> ::std::os::raw::c_int;
991}
992unsafe extern "C" {
993  pub fn dprintf(
994    __fd: ::std::os::raw::c_int,
995    __fmt: *const ::std::os::raw::c_char,
996    ...
997  ) -> ::std::os::raw::c_int;
998}
999unsafe extern "C" {
1000  pub fn fscanf(
1001    __stream: *mut FILE,
1002    __format: *const ::std::os::raw::c_char,
1003    ...
1004  ) -> ::std::os::raw::c_int;
1005}
1006unsafe extern "C" {
1007  pub fn scanf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
1008}
1009unsafe extern "C" {
1010  pub fn sscanf(
1011    __s: *const ::std::os::raw::c_char,
1012    __format: *const ::std::os::raw::c_char,
1013    ...
1014  ) -> ::std::os::raw::c_int;
1015}
1016pub type _Float32 = f32;
1017pub type _Float64 = f64;
1018pub type _Float32x = f64;
1019pub type _Float64x = u128;
1020unsafe extern "C" {
1021  #[link_name = "\u{1}__isoc99_fscanf"]
1022  pub fn fscanf1(
1023    __stream: *mut FILE,
1024    __format: *const ::std::os::raw::c_char,
1025    ...
1026  ) -> ::std::os::raw::c_int;
1027}
1028unsafe extern "C" {
1029  #[link_name = "\u{1}__isoc99_scanf"]
1030  pub fn scanf1(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
1031}
1032unsafe extern "C" {
1033  #[link_name = "\u{1}__isoc99_sscanf"]
1034  pub fn sscanf1(
1035    __s: *const ::std::os::raw::c_char,
1036    __format: *const ::std::os::raw::c_char,
1037    ...
1038  ) -> ::std::os::raw::c_int;
1039}
1040unsafe extern "C" {
1041  pub fn vfscanf(
1042    __s: *mut FILE,
1043    __format: *const ::std::os::raw::c_char,
1044    __arg: *mut __va_list_tag,
1045  ) -> ::std::os::raw::c_int;
1046}
1047unsafe extern "C" {
1048  pub fn vscanf(
1049    __format: *const ::std::os::raw::c_char,
1050    __arg: *mut __va_list_tag,
1051  ) -> ::std::os::raw::c_int;
1052}
1053unsafe extern "C" {
1054  pub fn vsscanf(
1055    __s: *const ::std::os::raw::c_char,
1056    __format: *const ::std::os::raw::c_char,
1057    __arg: *mut __va_list_tag,
1058  ) -> ::std::os::raw::c_int;
1059}
1060unsafe extern "C" {
1061  #[link_name = "\u{1}__isoc99_vfscanf"]
1062  pub fn vfscanf1(
1063    __s: *mut FILE,
1064    __format: *const ::std::os::raw::c_char,
1065    __arg: *mut __va_list_tag,
1066  ) -> ::std::os::raw::c_int;
1067}
1068unsafe extern "C" {
1069  #[link_name = "\u{1}__isoc99_vscanf"]
1070  pub fn vscanf1(
1071    __format: *const ::std::os::raw::c_char,
1072    __arg: *mut __va_list_tag,
1073  ) -> ::std::os::raw::c_int;
1074}
1075unsafe extern "C" {
1076  #[link_name = "\u{1}__isoc99_vsscanf"]
1077  pub fn vsscanf1(
1078    __s: *const ::std::os::raw::c_char,
1079    __format: *const ::std::os::raw::c_char,
1080    __arg: *mut __va_list_tag,
1081  ) -> ::std::os::raw::c_int;
1082}
1083unsafe extern "C" {
1084  pub fn fgetc(__stream: *mut FILE) -> ::std::os::raw::c_int;
1085}
1086unsafe extern "C" {
1087  pub fn getc(__stream: *mut FILE) -> ::std::os::raw::c_int;
1088}
1089unsafe extern "C" {
1090  pub fn getchar() -> ::std::os::raw::c_int;
1091}
1092unsafe extern "C" {
1093  pub fn getc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
1094}
1095unsafe extern "C" {
1096  pub fn getchar_unlocked() -> ::std::os::raw::c_int;
1097}
1098unsafe extern "C" {
1099  pub fn fgetc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
1100}
1101unsafe extern "C" {
1102  pub fn fputc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
1103}
1104unsafe extern "C" {
1105  pub fn putc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
1106}
1107unsafe extern "C" {
1108  pub fn putchar(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
1109}
1110unsafe extern "C" {
1111  pub fn fputc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
1112}
1113unsafe extern "C" {
1114  pub fn putc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
1115}
1116unsafe extern "C" {
1117  pub fn putchar_unlocked(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
1118}
1119unsafe extern "C" {
1120  pub fn getw(__stream: *mut FILE) -> ::std::os::raw::c_int;
1121}
1122unsafe extern "C" {
1123  pub fn putw(__w: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
1124}
1125unsafe extern "C" {
1126  pub fn fgets(
1127    __s: *mut ::std::os::raw::c_char,
1128    __n: ::std::os::raw::c_int,
1129    __stream: *mut FILE,
1130  ) -> *mut ::std::os::raw::c_char;
1131}
1132unsafe extern "C" {
1133  pub fn __getdelim(
1134    __lineptr: *mut *mut ::std::os::raw::c_char,
1135    __n: *mut usize,
1136    __delimiter: ::std::os::raw::c_int,
1137    __stream: *mut FILE,
1138  ) -> __ssize_t;
1139}
1140unsafe extern "C" {
1141  pub fn getdelim(
1142    __lineptr: *mut *mut ::std::os::raw::c_char,
1143    __n: *mut usize,
1144    __delimiter: ::std::os::raw::c_int,
1145    __stream: *mut FILE,
1146  ) -> __ssize_t;
1147}
1148unsafe extern "C" {
1149  pub fn getline(
1150    __lineptr: *mut *mut ::std::os::raw::c_char,
1151    __n: *mut usize,
1152    __stream: *mut FILE,
1153  ) -> __ssize_t;
1154}
1155unsafe extern "C" {
1156  pub fn fputs(__s: *const ::std::os::raw::c_char, __stream: *mut FILE) -> ::std::os::raw::c_int;
1157}
1158unsafe extern "C" {
1159  pub fn puts(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
1160}
1161unsafe extern "C" {
1162  pub fn ungetc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
1163}
1164unsafe extern "C" {
1165  pub fn fread(
1166    __ptr: *mut ::std::os::raw::c_void,
1167    __size: ::std::os::raw::c_ulong,
1168    __n: ::std::os::raw::c_ulong,
1169    __stream: *mut FILE,
1170  ) -> ::std::os::raw::c_ulong;
1171}
1172unsafe extern "C" {
1173  pub fn fwrite(
1174    __ptr: *const ::std::os::raw::c_void,
1175    __size: ::std::os::raw::c_ulong,
1176    __n: ::std::os::raw::c_ulong,
1177    __s: *mut FILE,
1178  ) -> ::std::os::raw::c_ulong;
1179}
1180unsafe extern "C" {
1181  pub fn fread_unlocked(
1182    __ptr: *mut ::std::os::raw::c_void,
1183    __size: usize,
1184    __n: usize,
1185    __stream: *mut FILE,
1186  ) -> usize;
1187}
1188unsafe extern "C" {
1189  pub fn fwrite_unlocked(
1190    __ptr: *const ::std::os::raw::c_void,
1191    __size: usize,
1192    __n: usize,
1193    __stream: *mut FILE,
1194  ) -> usize;
1195}
1196unsafe extern "C" {
1197  pub fn fseek(
1198    __stream: *mut FILE,
1199    __off: ::std::os::raw::c_long,
1200    __whence: ::std::os::raw::c_int,
1201  ) -> ::std::os::raw::c_int;
1202}
1203unsafe extern "C" {
1204  pub fn ftell(__stream: *mut FILE) -> ::std::os::raw::c_long;
1205}
1206unsafe extern "C" {
1207  pub fn rewind(__stream: *mut FILE);
1208}
1209unsafe extern "C" {
1210  pub fn fseeko(
1211    __stream: *mut FILE,
1212    __off: __off_t,
1213    __whence: ::std::os::raw::c_int,
1214  ) -> ::std::os::raw::c_int;
1215}
1216unsafe extern "C" {
1217  pub fn ftello(__stream: *mut FILE) -> __off_t;
1218}
1219unsafe extern "C" {
1220  pub fn fgetpos(__stream: *mut FILE, __pos: *mut fpos_t) -> ::std::os::raw::c_int;
1221}
1222unsafe extern "C" {
1223  pub fn fsetpos(__stream: *mut FILE, __pos: *const fpos_t) -> ::std::os::raw::c_int;
1224}
1225unsafe extern "C" {
1226  pub fn clearerr(__stream: *mut FILE);
1227}
1228unsafe extern "C" {
1229  pub fn feof(__stream: *mut FILE) -> ::std::os::raw::c_int;
1230}
1231unsafe extern "C" {
1232  pub fn ferror(__stream: *mut FILE) -> ::std::os::raw::c_int;
1233}
1234unsafe extern "C" {
1235  pub fn clearerr_unlocked(__stream: *mut FILE);
1236}
1237unsafe extern "C" {
1238  pub fn feof_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
1239}
1240unsafe extern "C" {
1241  pub fn ferror_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
1242}
1243unsafe extern "C" {
1244  pub fn perror(__s: *const ::std::os::raw::c_char);
1245}
1246unsafe extern "C" {
1247  pub fn fileno(__stream: *mut FILE) -> ::std::os::raw::c_int;
1248}
1249unsafe extern "C" {
1250  pub fn fileno_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
1251}
1252unsafe extern "C" {
1253  pub fn pclose(__stream: *mut FILE) -> ::std::os::raw::c_int;
1254}
1255unsafe extern "C" {
1256  pub fn popen(
1257    __command: *const ::std::os::raw::c_char,
1258    __modes: *const ::std::os::raw::c_char,
1259  ) -> *mut FILE;
1260}
1261unsafe extern "C" {
1262  pub fn ctermid(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
1263}
1264unsafe extern "C" {
1265  pub fn flockfile(__stream: *mut FILE);
1266}
1267unsafe extern "C" {
1268  pub fn ftrylockfile(__stream: *mut FILE) -> ::std::os::raw::c_int;
1269}
1270unsafe extern "C" {
1271  pub fn funlockfile(__stream: *mut FILE);
1272}
1273unsafe extern "C" {
1274  pub fn __uflow(arg1: *mut FILE) -> ::std::os::raw::c_int;
1275}
1276unsafe extern "C" {
1277  pub fn __overflow(arg1: *mut FILE, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
1278}
1279#[doc = " xmlChar:\n\n This is a basic byte in an UTF-8 encoded string.\n It's unsigned allowing to pinpoint case where char * are assigned\n to xmlChar * (possibly making serialization back impossible)."]
1280pub type xmlChar = ::std::os::raw::c_uchar;
1281unsafe extern "C" {
1282  pub fn xmlStrdup(cur: *const xmlChar) -> *mut xmlChar;
1283}
1284unsafe extern "C" {
1285  pub fn xmlStrndup(cur: *const xmlChar, len: ::std::os::raw::c_int) -> *mut xmlChar;
1286}
1287unsafe extern "C" {
1288  pub fn xmlCharStrndup(
1289    cur: *const ::std::os::raw::c_char,
1290    len: ::std::os::raw::c_int,
1291  ) -> *mut xmlChar;
1292}
1293unsafe extern "C" {
1294  pub fn xmlCharStrdup(cur: *const ::std::os::raw::c_char) -> *mut xmlChar;
1295}
1296unsafe extern "C" {
1297  pub fn xmlStrsub(
1298    str_: *const xmlChar,
1299    start: ::std::os::raw::c_int,
1300    len: ::std::os::raw::c_int,
1301  ) -> *mut xmlChar;
1302}
1303unsafe extern "C" {
1304  pub fn xmlStrchr(str_: *const xmlChar, val: xmlChar) -> *const xmlChar;
1305}
1306unsafe extern "C" {
1307  pub fn xmlStrstr(str_: *const xmlChar, val: *const xmlChar) -> *const xmlChar;
1308}
1309unsafe extern "C" {
1310  pub fn xmlStrcasestr(str_: *const xmlChar, val: *const xmlChar) -> *const xmlChar;
1311}
1312unsafe extern "C" {
1313  pub fn xmlStrcmp(str1: *const xmlChar, str2: *const xmlChar) -> ::std::os::raw::c_int;
1314}
1315unsafe extern "C" {
1316  pub fn xmlStrncmp(
1317    str1: *const xmlChar,
1318    str2: *const xmlChar,
1319    len: ::std::os::raw::c_int,
1320  ) -> ::std::os::raw::c_int;
1321}
1322unsafe extern "C" {
1323  pub fn xmlStrcasecmp(str1: *const xmlChar, str2: *const xmlChar) -> ::std::os::raw::c_int;
1324}
1325unsafe extern "C" {
1326  pub fn xmlStrncasecmp(
1327    str1: *const xmlChar,
1328    str2: *const xmlChar,
1329    len: ::std::os::raw::c_int,
1330  ) -> ::std::os::raw::c_int;
1331}
1332unsafe extern "C" {
1333  pub fn xmlStrEqual(str1: *const xmlChar, str2: *const xmlChar) -> ::std::os::raw::c_int;
1334}
1335unsafe extern "C" {
1336  pub fn xmlStrQEqual(
1337    pref: *const xmlChar,
1338    name: *const xmlChar,
1339    str_: *const xmlChar,
1340  ) -> ::std::os::raw::c_int;
1341}
1342unsafe extern "C" {
1343  pub fn xmlStrlen(str_: *const xmlChar) -> ::std::os::raw::c_int;
1344}
1345unsafe extern "C" {
1346  pub fn xmlStrcat(cur: *mut xmlChar, add: *const xmlChar) -> *mut xmlChar;
1347}
1348unsafe extern "C" {
1349  pub fn xmlStrncat(
1350    cur: *mut xmlChar,
1351    add: *const xmlChar,
1352    len: ::std::os::raw::c_int,
1353  ) -> *mut xmlChar;
1354}
1355unsafe extern "C" {
1356  pub fn xmlStrncatNew(
1357    str1: *const xmlChar,
1358    str2: *const xmlChar,
1359    len: ::std::os::raw::c_int,
1360  ) -> *mut xmlChar;
1361}
1362unsafe extern "C" {
1363  pub fn xmlStrPrintf(
1364    buf: *mut xmlChar,
1365    len: ::std::os::raw::c_int,
1366    msg: *const ::std::os::raw::c_char,
1367    ...
1368  ) -> ::std::os::raw::c_int;
1369}
1370unsafe extern "C" {
1371  pub fn xmlStrVPrintf(
1372    buf: *mut xmlChar,
1373    len: ::std::os::raw::c_int,
1374    msg: *const ::std::os::raw::c_char,
1375    ap: *mut __va_list_tag,
1376  ) -> ::std::os::raw::c_int;
1377}
1378unsafe extern "C" {
1379  pub fn xmlGetUTF8Char(
1380    utf: *const ::std::os::raw::c_uchar,
1381    len: *mut ::std::os::raw::c_int,
1382  ) -> ::std::os::raw::c_int;
1383}
1384unsafe extern "C" {
1385  pub fn xmlCheckUTF8(utf: *const ::std::os::raw::c_uchar) -> ::std::os::raw::c_int;
1386}
1387unsafe extern "C" {
1388  pub fn xmlUTF8Strsize(utf: *const xmlChar, len: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
1389}
1390unsafe extern "C" {
1391  pub fn xmlUTF8Strndup(utf: *const xmlChar, len: ::std::os::raw::c_int) -> *mut xmlChar;
1392}
1393unsafe extern "C" {
1394  pub fn xmlUTF8Strpos(utf: *const xmlChar, pos: ::std::os::raw::c_int) -> *const xmlChar;
1395}
1396unsafe extern "C" {
1397  pub fn xmlUTF8Strloc(utf: *const xmlChar, utfchar: *const xmlChar) -> ::std::os::raw::c_int;
1398}
1399unsafe extern "C" {
1400  pub fn xmlUTF8Strsub(
1401    utf: *const xmlChar,
1402    start: ::std::os::raw::c_int,
1403    len: ::std::os::raw::c_int,
1404  ) -> *mut xmlChar;
1405}
1406unsafe extern "C" {
1407  pub fn xmlUTF8Strlen(utf: *const xmlChar) -> ::std::os::raw::c_int;
1408}
1409unsafe extern "C" {
1410  pub fn xmlUTF8Size(utf: *const xmlChar) -> ::std::os::raw::c_int;
1411}
1412unsafe extern "C" {
1413  pub fn xmlUTF8Charcmp(utf1: *const xmlChar, utf2: *const xmlChar) -> ::std::os::raw::c_int;
1414}
1415pub type xmlParserInputBuffer = _xmlParserInputBuffer;
1416pub type xmlParserInputBufferPtr = *mut xmlParserInputBuffer;
1417pub type xmlOutputBuffer = _xmlOutputBuffer;
1418pub type xmlOutputBufferPtr = *mut xmlOutputBuffer;
1419pub type xmlParserInput = _xmlParserInput;
1420pub type xmlParserInputPtr = *mut xmlParserInput;
1421#[doc = " xmlParserCtxt:\n\n The parser context.\n NOTE This doesn't completely define the parser state, the (current ?)\n      design of the parser uses recursive function calls since this allow\n      and easy mapping from the production rules of the specification\n      to the actual code. The drawback is that the actual function call\n      also reflect the parser state. However most of the parsing routines\n      takes as the only argument the parser context pointer, so migrating\n      to a state based parser for progressive parsing shouldn't be too hard."]
1422pub type xmlParserCtxt = _xmlParserCtxt;
1423pub type xmlParserCtxtPtr = *mut xmlParserCtxt;
1424#[doc = " xmlSAXLocator:\n\n A SAX Locator."]
1425pub type xmlSAXLocator = _xmlSAXLocator;
1426pub type xmlSAXLocatorPtr = *mut xmlSAXLocator;
1427pub type xmlSAXHandler = _xmlSAXHandler;
1428pub type xmlSAXHandlerPtr = *mut xmlSAXHandler;
1429pub type xmlEntity = _xmlEntity;
1430pub type xmlEntityPtr = *mut xmlEntity;
1431pub const xmlBufferAllocationScheme_XML_BUFFER_ALLOC_DOUBLEIT: xmlBufferAllocationScheme = 0;
1432pub const xmlBufferAllocationScheme_XML_BUFFER_ALLOC_EXACT: xmlBufferAllocationScheme = 1;
1433pub const xmlBufferAllocationScheme_XML_BUFFER_ALLOC_IMMUTABLE: xmlBufferAllocationScheme = 2;
1434pub const xmlBufferAllocationScheme_XML_BUFFER_ALLOC_IO: xmlBufferAllocationScheme = 3;
1435pub const xmlBufferAllocationScheme_XML_BUFFER_ALLOC_HYBRID: xmlBufferAllocationScheme = 4;
1436pub const xmlBufferAllocationScheme_XML_BUFFER_ALLOC_BOUNDED: xmlBufferAllocationScheme = 5;
1437#[doc = " xmlBufferAllocationScheme:\n\n A buffer allocation scheme can be defined to either match exactly the\n need or double it's allocated size each time it is found too small."]
1438pub type xmlBufferAllocationScheme = ::std::os::raw::c_uint;
1439#[doc = " xmlBuffer:\n\n A buffer structure, this old construct is limited to 2GB and\n is being deprecated, use API with xmlBuf instead"]
1440pub type xmlBuffer = _xmlBuffer;
1441pub type xmlBufferPtr = *mut xmlBuffer;
1442#[repr(C)]
1443#[derive(Debug, Copy, Clone)]
1444pub struct _xmlBuffer {
1445  pub content: *mut xmlChar,
1446  pub use_: ::std::os::raw::c_uint,
1447  pub size: ::std::os::raw::c_uint,
1448  pub alloc: xmlBufferAllocationScheme,
1449  pub contentIO: *mut xmlChar,
1450}
1451#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1452const _: () = {
1453  ["Size of _xmlBuffer"][::std::mem::size_of::<_xmlBuffer>() - 32usize];
1454  ["Alignment of _xmlBuffer"][::std::mem::align_of::<_xmlBuffer>() - 8usize];
1455  ["Offset of field: _xmlBuffer::content"][::std::mem::offset_of!(_xmlBuffer, content) - 0usize];
1456  ["Offset of field: _xmlBuffer::use_"][::std::mem::offset_of!(_xmlBuffer, use_) - 8usize];
1457  ["Offset of field: _xmlBuffer::size"][::std::mem::offset_of!(_xmlBuffer, size) - 12usize];
1458  ["Offset of field: _xmlBuffer::alloc"][::std::mem::offset_of!(_xmlBuffer, alloc) - 16usize];
1459  ["Offset of field: _xmlBuffer::contentIO"]
1460    [::std::mem::offset_of!(_xmlBuffer, contentIO) - 24usize];
1461};
1462#[repr(C)]
1463#[derive(Debug, Copy, Clone)]
1464pub struct _xmlBuf {
1465  _unused: [u8; 0],
1466}
1467#[doc = " xmlBuf:\n\n A buffer structure, new one, the actual structure internals are not public"]
1468pub type xmlBuf = _xmlBuf;
1469#[doc = " xmlBufPtr:\n\n A pointer to a buffer structure, the actual structure internals are not\n public"]
1470pub type xmlBufPtr = *mut xmlBuf;
1471unsafe extern "C" {
1472  pub fn xmlBufContent(buf: *const xmlBuf) -> *mut xmlChar;
1473}
1474unsafe extern "C" {
1475  pub fn xmlBufEnd(buf: xmlBufPtr) -> *mut xmlChar;
1476}
1477unsafe extern "C" {
1478  pub fn xmlBufUse(buf: xmlBufPtr) -> usize;
1479}
1480unsafe extern "C" {
1481  pub fn xmlBufShrink(buf: xmlBufPtr, len: usize) -> usize;
1482}
1483pub const xmlElementType_XML_ELEMENT_NODE: xmlElementType = 1;
1484pub const xmlElementType_XML_ATTRIBUTE_NODE: xmlElementType = 2;
1485pub const xmlElementType_XML_TEXT_NODE: xmlElementType = 3;
1486pub const xmlElementType_XML_CDATA_SECTION_NODE: xmlElementType = 4;
1487pub const xmlElementType_XML_ENTITY_REF_NODE: xmlElementType = 5;
1488pub const xmlElementType_XML_ENTITY_NODE: xmlElementType = 6;
1489pub const xmlElementType_XML_PI_NODE: xmlElementType = 7;
1490pub const xmlElementType_XML_COMMENT_NODE: xmlElementType = 8;
1491pub const xmlElementType_XML_DOCUMENT_NODE: xmlElementType = 9;
1492pub const xmlElementType_XML_DOCUMENT_TYPE_NODE: xmlElementType = 10;
1493pub const xmlElementType_XML_DOCUMENT_FRAG_NODE: xmlElementType = 11;
1494pub const xmlElementType_XML_NOTATION_NODE: xmlElementType = 12;
1495pub const xmlElementType_XML_HTML_DOCUMENT_NODE: xmlElementType = 13;
1496pub const xmlElementType_XML_DTD_NODE: xmlElementType = 14;
1497pub const xmlElementType_XML_ELEMENT_DECL: xmlElementType = 15;
1498pub const xmlElementType_XML_ATTRIBUTE_DECL: xmlElementType = 16;
1499pub const xmlElementType_XML_ENTITY_DECL: xmlElementType = 17;
1500pub const xmlElementType_XML_NAMESPACE_DECL: xmlElementType = 18;
1501pub const xmlElementType_XML_XINCLUDE_START: xmlElementType = 19;
1502pub const xmlElementType_XML_XINCLUDE_END: xmlElementType = 20;
1503pub const xmlElementType_XML_DOCB_DOCUMENT_NODE: xmlElementType = 21;
1504pub type xmlElementType = ::std::os::raw::c_uint;
1505#[doc = " xmlNotation:\n\n A DTD Notation definition."]
1506pub type xmlNotation = _xmlNotation;
1507pub type xmlNotationPtr = *mut xmlNotation;
1508#[repr(C)]
1509#[derive(Debug, Copy, Clone)]
1510pub struct _xmlNotation {
1511  pub name: *const xmlChar,
1512  pub PublicID: *const xmlChar,
1513  pub SystemID: *const xmlChar,
1514}
1515#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1516const _: () = {
1517  ["Size of _xmlNotation"][::std::mem::size_of::<_xmlNotation>() - 24usize];
1518  ["Alignment of _xmlNotation"][::std::mem::align_of::<_xmlNotation>() - 8usize];
1519  ["Offset of field: _xmlNotation::name"][::std::mem::offset_of!(_xmlNotation, name) - 0usize];
1520  ["Offset of field: _xmlNotation::PublicID"]
1521    [::std::mem::offset_of!(_xmlNotation, PublicID) - 8usize];
1522  ["Offset of field: _xmlNotation::SystemID"]
1523    [::std::mem::offset_of!(_xmlNotation, SystemID) - 16usize];
1524};
1525pub const xmlAttributeType_XML_ATTRIBUTE_CDATA: xmlAttributeType = 1;
1526pub const xmlAttributeType_XML_ATTRIBUTE_ID: xmlAttributeType = 2;
1527pub const xmlAttributeType_XML_ATTRIBUTE_IDREF: xmlAttributeType = 3;
1528pub const xmlAttributeType_XML_ATTRIBUTE_IDREFS: xmlAttributeType = 4;
1529pub const xmlAttributeType_XML_ATTRIBUTE_ENTITY: xmlAttributeType = 5;
1530pub const xmlAttributeType_XML_ATTRIBUTE_ENTITIES: xmlAttributeType = 6;
1531pub const xmlAttributeType_XML_ATTRIBUTE_NMTOKEN: xmlAttributeType = 7;
1532pub const xmlAttributeType_XML_ATTRIBUTE_NMTOKENS: xmlAttributeType = 8;
1533pub const xmlAttributeType_XML_ATTRIBUTE_ENUMERATION: xmlAttributeType = 9;
1534pub const xmlAttributeType_XML_ATTRIBUTE_NOTATION: xmlAttributeType = 10;
1535#[doc = " xmlAttributeType:\n\n A DTD Attribute type definition."]
1536pub type xmlAttributeType = ::std::os::raw::c_uint;
1537pub const xmlAttributeDefault_XML_ATTRIBUTE_NONE: xmlAttributeDefault = 1;
1538pub const xmlAttributeDefault_XML_ATTRIBUTE_REQUIRED: xmlAttributeDefault = 2;
1539pub const xmlAttributeDefault_XML_ATTRIBUTE_IMPLIED: xmlAttributeDefault = 3;
1540pub const xmlAttributeDefault_XML_ATTRIBUTE_FIXED: xmlAttributeDefault = 4;
1541#[doc = " xmlAttributeDefault:\n\n A DTD Attribute default definition."]
1542pub type xmlAttributeDefault = ::std::os::raw::c_uint;
1543#[doc = " xmlEnumeration:\n\n List structure used when there is an enumeration in DTDs."]
1544pub type xmlEnumeration = _xmlEnumeration;
1545pub type xmlEnumerationPtr = *mut xmlEnumeration;
1546#[repr(C)]
1547#[derive(Debug, Copy, Clone)]
1548pub struct _xmlEnumeration {
1549  pub next: *mut _xmlEnumeration,
1550  pub name: *const xmlChar,
1551}
1552#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1553const _: () = {
1554  ["Size of _xmlEnumeration"][::std::mem::size_of::<_xmlEnumeration>() - 16usize];
1555  ["Alignment of _xmlEnumeration"][::std::mem::align_of::<_xmlEnumeration>() - 8usize];
1556  ["Offset of field: _xmlEnumeration::next"]
1557    [::std::mem::offset_of!(_xmlEnumeration, next) - 0usize];
1558  ["Offset of field: _xmlEnumeration::name"]
1559    [::std::mem::offset_of!(_xmlEnumeration, name) - 8usize];
1560};
1561#[doc = " xmlAttribute:\n\n An Attribute declaration in a DTD."]
1562pub type xmlAttribute = _xmlAttribute;
1563pub type xmlAttributePtr = *mut xmlAttribute;
1564#[repr(C)]
1565#[derive(Debug, Copy, Clone)]
1566pub struct _xmlAttribute {
1567  pub _private: *mut ::std::os::raw::c_void,
1568  pub type_: xmlElementType,
1569  pub name: *const xmlChar,
1570  pub children: *mut _xmlNode,
1571  pub last: *mut _xmlNode,
1572  pub parent: *mut _xmlDtd,
1573  pub next: *mut _xmlNode,
1574  pub prev: *mut _xmlNode,
1575  pub doc: *mut _xmlDoc,
1576  pub nexth: *mut _xmlAttribute,
1577  pub atype: xmlAttributeType,
1578  pub def: xmlAttributeDefault,
1579  pub defaultValue: *const xmlChar,
1580  pub tree: xmlEnumerationPtr,
1581  pub prefix: *const xmlChar,
1582  pub elem: *const xmlChar,
1583}
1584#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1585const _: () = {
1586  ["Size of _xmlAttribute"][::std::mem::size_of::<_xmlAttribute>() - 120usize];
1587  ["Alignment of _xmlAttribute"][::std::mem::align_of::<_xmlAttribute>() - 8usize];
1588  ["Offset of field: _xmlAttribute::_private"]
1589    [::std::mem::offset_of!(_xmlAttribute, _private) - 0usize];
1590  ["Offset of field: _xmlAttribute::type_"][::std::mem::offset_of!(_xmlAttribute, type_) - 8usize];
1591  ["Offset of field: _xmlAttribute::name"][::std::mem::offset_of!(_xmlAttribute, name) - 16usize];
1592  ["Offset of field: _xmlAttribute::children"]
1593    [::std::mem::offset_of!(_xmlAttribute, children) - 24usize];
1594  ["Offset of field: _xmlAttribute::last"][::std::mem::offset_of!(_xmlAttribute, last) - 32usize];
1595  ["Offset of field: _xmlAttribute::parent"]
1596    [::std::mem::offset_of!(_xmlAttribute, parent) - 40usize];
1597  ["Offset of field: _xmlAttribute::next"][::std::mem::offset_of!(_xmlAttribute, next) - 48usize];
1598  ["Offset of field: _xmlAttribute::prev"][::std::mem::offset_of!(_xmlAttribute, prev) - 56usize];
1599  ["Offset of field: _xmlAttribute::doc"][::std::mem::offset_of!(_xmlAttribute, doc) - 64usize];
1600  ["Offset of field: _xmlAttribute::nexth"][::std::mem::offset_of!(_xmlAttribute, nexth) - 72usize];
1601  ["Offset of field: _xmlAttribute::atype"][::std::mem::offset_of!(_xmlAttribute, atype) - 80usize];
1602  ["Offset of field: _xmlAttribute::def"][::std::mem::offset_of!(_xmlAttribute, def) - 84usize];
1603  ["Offset of field: _xmlAttribute::defaultValue"]
1604    [::std::mem::offset_of!(_xmlAttribute, defaultValue) - 88usize];
1605  ["Offset of field: _xmlAttribute::tree"][::std::mem::offset_of!(_xmlAttribute, tree) - 96usize];
1606  ["Offset of field: _xmlAttribute::prefix"]
1607    [::std::mem::offset_of!(_xmlAttribute, prefix) - 104usize];
1608  ["Offset of field: _xmlAttribute::elem"][::std::mem::offset_of!(_xmlAttribute, elem) - 112usize];
1609};
1610pub const xmlElementContentType_XML_ELEMENT_CONTENT_PCDATA: xmlElementContentType = 1;
1611pub const xmlElementContentType_XML_ELEMENT_CONTENT_ELEMENT: xmlElementContentType = 2;
1612pub const xmlElementContentType_XML_ELEMENT_CONTENT_SEQ: xmlElementContentType = 3;
1613pub const xmlElementContentType_XML_ELEMENT_CONTENT_OR: xmlElementContentType = 4;
1614#[doc = " xmlElementContentType:\n\n Possible definitions of element content types."]
1615pub type xmlElementContentType = ::std::os::raw::c_uint;
1616pub const xmlElementContentOccur_XML_ELEMENT_CONTENT_ONCE: xmlElementContentOccur = 1;
1617pub const xmlElementContentOccur_XML_ELEMENT_CONTENT_OPT: xmlElementContentOccur = 2;
1618pub const xmlElementContentOccur_XML_ELEMENT_CONTENT_MULT: xmlElementContentOccur = 3;
1619pub const xmlElementContentOccur_XML_ELEMENT_CONTENT_PLUS: xmlElementContentOccur = 4;
1620#[doc = " xmlElementContentOccur:\n\n Possible definitions of element content occurrences."]
1621pub type xmlElementContentOccur = ::std::os::raw::c_uint;
1622#[doc = " xmlElementContent:\n\n An XML Element content as stored after parsing an element definition\n in a DTD."]
1623pub type xmlElementContent = _xmlElementContent;
1624pub type xmlElementContentPtr = *mut xmlElementContent;
1625#[repr(C)]
1626#[derive(Debug, Copy, Clone)]
1627pub struct _xmlElementContent {
1628  pub type_: xmlElementContentType,
1629  pub ocur: xmlElementContentOccur,
1630  pub name: *const xmlChar,
1631  pub c1: *mut _xmlElementContent,
1632  pub c2: *mut _xmlElementContent,
1633  pub parent: *mut _xmlElementContent,
1634  pub prefix: *const xmlChar,
1635}
1636#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1637const _: () = {
1638  ["Size of _xmlElementContent"][::std::mem::size_of::<_xmlElementContent>() - 48usize];
1639  ["Alignment of _xmlElementContent"][::std::mem::align_of::<_xmlElementContent>() - 8usize];
1640  ["Offset of field: _xmlElementContent::type_"]
1641    [::std::mem::offset_of!(_xmlElementContent, type_) - 0usize];
1642  ["Offset of field: _xmlElementContent::ocur"]
1643    [::std::mem::offset_of!(_xmlElementContent, ocur) - 4usize];
1644  ["Offset of field: _xmlElementContent::name"]
1645    [::std::mem::offset_of!(_xmlElementContent, name) - 8usize];
1646  ["Offset of field: _xmlElementContent::c1"]
1647    [::std::mem::offset_of!(_xmlElementContent, c1) - 16usize];
1648  ["Offset of field: _xmlElementContent::c2"]
1649    [::std::mem::offset_of!(_xmlElementContent, c2) - 24usize];
1650  ["Offset of field: _xmlElementContent::parent"]
1651    [::std::mem::offset_of!(_xmlElementContent, parent) - 32usize];
1652  ["Offset of field: _xmlElementContent::prefix"]
1653    [::std::mem::offset_of!(_xmlElementContent, prefix) - 40usize];
1654};
1655pub const xmlElementTypeVal_XML_ELEMENT_TYPE_UNDEFINED: xmlElementTypeVal = 0;
1656pub const xmlElementTypeVal_XML_ELEMENT_TYPE_EMPTY: xmlElementTypeVal = 1;
1657pub const xmlElementTypeVal_XML_ELEMENT_TYPE_ANY: xmlElementTypeVal = 2;
1658pub const xmlElementTypeVal_XML_ELEMENT_TYPE_MIXED: xmlElementTypeVal = 3;
1659pub const xmlElementTypeVal_XML_ELEMENT_TYPE_ELEMENT: xmlElementTypeVal = 4;
1660#[doc = " xmlElementTypeVal:\n\n The different possibilities for an element content type."]
1661pub type xmlElementTypeVal = ::std::os::raw::c_uint;
1662#[repr(C)]
1663#[derive(Debug, Copy, Clone)]
1664pub struct _xmlRegexp {
1665  _unused: [u8; 0],
1666}
1667#[doc = " xmlRegexpPtr:\n\n A libxml regular expression, they can actually be far more complex\n thank the POSIX regex expressions."]
1668pub type xmlRegexp = _xmlRegexp;
1669pub type xmlRegexpPtr = *mut xmlRegexp;
1670#[repr(C)]
1671#[derive(Debug, Copy, Clone)]
1672pub struct _xmlRegExecCtxt {
1673  _unused: [u8; 0],
1674}
1675#[doc = " xmlRegExecCtxtPtr:\n\n A libxml progressive regular expression evaluation context"]
1676pub type xmlRegExecCtxt = _xmlRegExecCtxt;
1677pub type xmlRegExecCtxtPtr = *mut xmlRegExecCtxt;
1678pub type wchar_t = ::std::os::raw::c_int;
1679#[repr(C)]
1680#[repr(align(16))]
1681#[derive(Debug, Copy, Clone)]
1682pub struct max_align_t {
1683  pub _bindgen_opaque_blob: [u128; 2usize],
1684}
1685#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1686const _: () = {
1687  ["Size of max_align_t"][::std::mem::size_of::<max_align_t>() - 32usize];
1688  ["Alignment of max_align_t"][::std::mem::align_of::<max_align_t>() - 16usize];
1689};
1690#[repr(C)]
1691#[derive(Debug, Copy, Clone)]
1692pub struct _xmlDict {
1693  _unused: [u8; 0],
1694}
1695pub type xmlDict = _xmlDict;
1696pub type xmlDictPtr = *mut xmlDict;
1697unsafe extern "C" {
1698  pub fn xmlInitializeDict() -> ::std::os::raw::c_int;
1699}
1700unsafe extern "C" {
1701  pub fn xmlDictCreate() -> xmlDictPtr;
1702}
1703unsafe extern "C" {
1704  pub fn xmlDictSetLimit(dict: xmlDictPtr, limit: usize) -> usize;
1705}
1706unsafe extern "C" {
1707  pub fn xmlDictGetUsage(dict: xmlDictPtr) -> usize;
1708}
1709unsafe extern "C" {
1710  pub fn xmlDictCreateSub(sub: xmlDictPtr) -> xmlDictPtr;
1711}
1712unsafe extern "C" {
1713  pub fn xmlDictReference(dict: xmlDictPtr) -> ::std::os::raw::c_int;
1714}
1715unsafe extern "C" {
1716  pub fn xmlDictFree(dict: xmlDictPtr);
1717}
1718unsafe extern "C" {
1719  pub fn xmlDictLookup(
1720    dict: xmlDictPtr,
1721    name: *const xmlChar,
1722    len: ::std::os::raw::c_int,
1723  ) -> *const xmlChar;
1724}
1725unsafe extern "C" {
1726  pub fn xmlDictExists(
1727    dict: xmlDictPtr,
1728    name: *const xmlChar,
1729    len: ::std::os::raw::c_int,
1730  ) -> *const xmlChar;
1731}
1732unsafe extern "C" {
1733  pub fn xmlDictQLookup(
1734    dict: xmlDictPtr,
1735    prefix: *const xmlChar,
1736    name: *const xmlChar,
1737  ) -> *const xmlChar;
1738}
1739unsafe extern "C" {
1740  pub fn xmlDictOwns(dict: xmlDictPtr, str_: *const xmlChar) -> ::std::os::raw::c_int;
1741}
1742unsafe extern "C" {
1743  pub fn xmlDictSize(dict: xmlDictPtr) -> ::std::os::raw::c_int;
1744}
1745unsafe extern "C" {
1746  pub fn xmlDictCleanup();
1747}
1748unsafe extern "C" {
1749  pub fn xmlRegexpCompile(regexp: *const xmlChar) -> xmlRegexpPtr;
1750}
1751unsafe extern "C" {
1752  pub fn xmlRegFreeRegexp(regexp: xmlRegexpPtr);
1753}
1754unsafe extern "C" {
1755  pub fn xmlRegexpExec(comp: xmlRegexpPtr, value: *const xmlChar) -> ::std::os::raw::c_int;
1756}
1757unsafe extern "C" {
1758  pub fn xmlRegexpPrint(output: *mut FILE, regexp: xmlRegexpPtr);
1759}
1760unsafe extern "C" {
1761  pub fn xmlRegexpIsDeterminist(comp: xmlRegexpPtr) -> ::std::os::raw::c_int;
1762}
1763#[doc = " xmlRegExecCallbacks:\n @exec: the regular expression context\n @token: the current token string\n @transdata: transition data\n @inputdata: input data\n\n Callback function when doing a transition in the automata"]
1764pub type xmlRegExecCallbacks = ::std::option::Option<
1765  unsafe extern "C" fn(
1766    exec: xmlRegExecCtxtPtr,
1767    token: *const xmlChar,
1768    transdata: *mut ::std::os::raw::c_void,
1769    inputdata: *mut ::std::os::raw::c_void,
1770  ),
1771>;
1772unsafe extern "C" {
1773  pub fn xmlRegNewExecCtxt(
1774    comp: xmlRegexpPtr,
1775    callback: xmlRegExecCallbacks,
1776    data: *mut ::std::os::raw::c_void,
1777  ) -> xmlRegExecCtxtPtr;
1778}
1779unsafe extern "C" {
1780  pub fn xmlRegFreeExecCtxt(exec: xmlRegExecCtxtPtr);
1781}
1782unsafe extern "C" {
1783  pub fn xmlRegExecPushString(
1784    exec: xmlRegExecCtxtPtr,
1785    value: *const xmlChar,
1786    data: *mut ::std::os::raw::c_void,
1787  ) -> ::std::os::raw::c_int;
1788}
1789unsafe extern "C" {
1790  pub fn xmlRegExecPushString2(
1791    exec: xmlRegExecCtxtPtr,
1792    value: *const xmlChar,
1793    value2: *const xmlChar,
1794    data: *mut ::std::os::raw::c_void,
1795  ) -> ::std::os::raw::c_int;
1796}
1797unsafe extern "C" {
1798  pub fn xmlRegExecNextValues(
1799    exec: xmlRegExecCtxtPtr,
1800    nbval: *mut ::std::os::raw::c_int,
1801    nbneg: *mut ::std::os::raw::c_int,
1802    values: *mut *mut xmlChar,
1803    terminal: *mut ::std::os::raw::c_int,
1804  ) -> ::std::os::raw::c_int;
1805}
1806unsafe extern "C" {
1807  pub fn xmlRegExecErrInfo(
1808    exec: xmlRegExecCtxtPtr,
1809    string: *mut *const xmlChar,
1810    nbval: *mut ::std::os::raw::c_int,
1811    nbneg: *mut ::std::os::raw::c_int,
1812    values: *mut *mut xmlChar,
1813    terminal: *mut ::std::os::raw::c_int,
1814  ) -> ::std::os::raw::c_int;
1815}
1816#[doc = " xmlElement:\n\n An XML Element declaration from a DTD."]
1817pub type xmlElement = _xmlElement;
1818pub type xmlElementPtr = *mut xmlElement;
1819#[repr(C)]
1820#[derive(Debug, Copy, Clone)]
1821pub struct _xmlElement {
1822  pub _private: *mut ::std::os::raw::c_void,
1823  pub type_: xmlElementType,
1824  pub name: *const xmlChar,
1825  pub children: *mut _xmlNode,
1826  pub last: *mut _xmlNode,
1827  pub parent: *mut _xmlDtd,
1828  pub next: *mut _xmlNode,
1829  pub prev: *mut _xmlNode,
1830  pub doc: *mut _xmlDoc,
1831  pub etype: xmlElementTypeVal,
1832  pub content: xmlElementContentPtr,
1833  pub attributes: xmlAttributePtr,
1834  pub prefix: *const xmlChar,
1835  pub contModel: xmlRegexpPtr,
1836}
1837#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1838const _: () = {
1839  ["Size of _xmlElement"][::std::mem::size_of::<_xmlElement>() - 112usize];
1840  ["Alignment of _xmlElement"][::std::mem::align_of::<_xmlElement>() - 8usize];
1841  ["Offset of field: _xmlElement::_private"]
1842    [::std::mem::offset_of!(_xmlElement, _private) - 0usize];
1843  ["Offset of field: _xmlElement::type_"][::std::mem::offset_of!(_xmlElement, type_) - 8usize];
1844  ["Offset of field: _xmlElement::name"][::std::mem::offset_of!(_xmlElement, name) - 16usize];
1845  ["Offset of field: _xmlElement::children"]
1846    [::std::mem::offset_of!(_xmlElement, children) - 24usize];
1847  ["Offset of field: _xmlElement::last"][::std::mem::offset_of!(_xmlElement, last) - 32usize];
1848  ["Offset of field: _xmlElement::parent"][::std::mem::offset_of!(_xmlElement, parent) - 40usize];
1849  ["Offset of field: _xmlElement::next"][::std::mem::offset_of!(_xmlElement, next) - 48usize];
1850  ["Offset of field: _xmlElement::prev"][::std::mem::offset_of!(_xmlElement, prev) - 56usize];
1851  ["Offset of field: _xmlElement::doc"][::std::mem::offset_of!(_xmlElement, doc) - 64usize];
1852  ["Offset of field: _xmlElement::etype"][::std::mem::offset_of!(_xmlElement, etype) - 72usize];
1853  ["Offset of field: _xmlElement::content"][::std::mem::offset_of!(_xmlElement, content) - 80usize];
1854  ["Offset of field: _xmlElement::attributes"]
1855    [::std::mem::offset_of!(_xmlElement, attributes) - 88usize];
1856  ["Offset of field: _xmlElement::prefix"][::std::mem::offset_of!(_xmlElement, prefix) - 96usize];
1857  ["Offset of field: _xmlElement::contModel"]
1858    [::std::mem::offset_of!(_xmlElement, contModel) - 104usize];
1859};
1860pub use self::xmlElementType as xmlNsType;
1861#[doc = " xmlNs:\n\n An XML namespace.\n Note that prefix == NULL is valid, it defines the default namespace\n within the subtree (until overridden).\n\n xmlNsType is unified with xmlElementType."]
1862pub type xmlNs = _xmlNs;
1863pub type xmlNsPtr = *mut xmlNs;
1864#[repr(C)]
1865#[derive(Debug, Copy, Clone)]
1866pub struct _xmlNs {
1867  pub next: *mut _xmlNs,
1868  pub type_: xmlNsType,
1869  pub href: *const xmlChar,
1870  pub prefix: *const xmlChar,
1871  pub _private: *mut ::std::os::raw::c_void,
1872  pub context: *mut _xmlDoc,
1873}
1874#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1875const _: () = {
1876  ["Size of _xmlNs"][::std::mem::size_of::<_xmlNs>() - 48usize];
1877  ["Alignment of _xmlNs"][::std::mem::align_of::<_xmlNs>() - 8usize];
1878  ["Offset of field: _xmlNs::next"][::std::mem::offset_of!(_xmlNs, next) - 0usize];
1879  ["Offset of field: _xmlNs::type_"][::std::mem::offset_of!(_xmlNs, type_) - 8usize];
1880  ["Offset of field: _xmlNs::href"][::std::mem::offset_of!(_xmlNs, href) - 16usize];
1881  ["Offset of field: _xmlNs::prefix"][::std::mem::offset_of!(_xmlNs, prefix) - 24usize];
1882  ["Offset of field: _xmlNs::_private"][::std::mem::offset_of!(_xmlNs, _private) - 32usize];
1883  ["Offset of field: _xmlNs::context"][::std::mem::offset_of!(_xmlNs, context) - 40usize];
1884};
1885#[doc = " xmlDtd:\n\n An XML DTD, as defined by <!DOCTYPE ... There is actually one for\n the internal subset and for the external subset."]
1886pub type xmlDtd = _xmlDtd;
1887pub type xmlDtdPtr = *mut xmlDtd;
1888#[repr(C)]
1889#[derive(Debug, Copy, Clone)]
1890pub struct _xmlDtd {
1891  pub _private: *mut ::std::os::raw::c_void,
1892  pub type_: xmlElementType,
1893  pub name: *const xmlChar,
1894  pub children: *mut _xmlNode,
1895  pub last: *mut _xmlNode,
1896  pub parent: *mut _xmlDoc,
1897  pub next: *mut _xmlNode,
1898  pub prev: *mut _xmlNode,
1899  pub doc: *mut _xmlDoc,
1900  pub notations: *mut ::std::os::raw::c_void,
1901  pub elements: *mut ::std::os::raw::c_void,
1902  pub attributes: *mut ::std::os::raw::c_void,
1903  pub entities: *mut ::std::os::raw::c_void,
1904  pub ExternalID: *const xmlChar,
1905  pub SystemID: *const xmlChar,
1906  pub pentities: *mut ::std::os::raw::c_void,
1907}
1908#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1909const _: () = {
1910  ["Size of _xmlDtd"][::std::mem::size_of::<_xmlDtd>() - 128usize];
1911  ["Alignment of _xmlDtd"][::std::mem::align_of::<_xmlDtd>() - 8usize];
1912  ["Offset of field: _xmlDtd::_private"][::std::mem::offset_of!(_xmlDtd, _private) - 0usize];
1913  ["Offset of field: _xmlDtd::type_"][::std::mem::offset_of!(_xmlDtd, type_) - 8usize];
1914  ["Offset of field: _xmlDtd::name"][::std::mem::offset_of!(_xmlDtd, name) - 16usize];
1915  ["Offset of field: _xmlDtd::children"][::std::mem::offset_of!(_xmlDtd, children) - 24usize];
1916  ["Offset of field: _xmlDtd::last"][::std::mem::offset_of!(_xmlDtd, last) - 32usize];
1917  ["Offset of field: _xmlDtd::parent"][::std::mem::offset_of!(_xmlDtd, parent) - 40usize];
1918  ["Offset of field: _xmlDtd::next"][::std::mem::offset_of!(_xmlDtd, next) - 48usize];
1919  ["Offset of field: _xmlDtd::prev"][::std::mem::offset_of!(_xmlDtd, prev) - 56usize];
1920  ["Offset of field: _xmlDtd::doc"][::std::mem::offset_of!(_xmlDtd, doc) - 64usize];
1921  ["Offset of field: _xmlDtd::notations"][::std::mem::offset_of!(_xmlDtd, notations) - 72usize];
1922  ["Offset of field: _xmlDtd::elements"][::std::mem::offset_of!(_xmlDtd, elements) - 80usize];
1923  ["Offset of field: _xmlDtd::attributes"][::std::mem::offset_of!(_xmlDtd, attributes) - 88usize];
1924  ["Offset of field: _xmlDtd::entities"][::std::mem::offset_of!(_xmlDtd, entities) - 96usize];
1925  ["Offset of field: _xmlDtd::ExternalID"][::std::mem::offset_of!(_xmlDtd, ExternalID) - 104usize];
1926  ["Offset of field: _xmlDtd::SystemID"][::std::mem::offset_of!(_xmlDtd, SystemID) - 112usize];
1927  ["Offset of field: _xmlDtd::pentities"][::std::mem::offset_of!(_xmlDtd, pentities) - 120usize];
1928};
1929#[doc = " xmlAttr:\n\n An attribute on an XML node."]
1930pub type xmlAttr = _xmlAttr;
1931pub type xmlAttrPtr = *mut xmlAttr;
1932#[repr(C)]
1933#[derive(Debug, Copy, Clone)]
1934pub struct _xmlAttr {
1935  pub _private: *mut ::std::os::raw::c_void,
1936  pub type_: xmlElementType,
1937  pub name: *const xmlChar,
1938  pub children: *mut _xmlNode,
1939  pub last: *mut _xmlNode,
1940  pub parent: *mut _xmlNode,
1941  pub next: *mut _xmlAttr,
1942  pub prev: *mut _xmlAttr,
1943  pub doc: *mut _xmlDoc,
1944  pub ns: *mut xmlNs,
1945  pub atype: xmlAttributeType,
1946  pub psvi: *mut ::std::os::raw::c_void,
1947}
1948#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1949const _: () = {
1950  ["Size of _xmlAttr"][::std::mem::size_of::<_xmlAttr>() - 96usize];
1951  ["Alignment of _xmlAttr"][::std::mem::align_of::<_xmlAttr>() - 8usize];
1952  ["Offset of field: _xmlAttr::_private"][::std::mem::offset_of!(_xmlAttr, _private) - 0usize];
1953  ["Offset of field: _xmlAttr::type_"][::std::mem::offset_of!(_xmlAttr, type_) - 8usize];
1954  ["Offset of field: _xmlAttr::name"][::std::mem::offset_of!(_xmlAttr, name) - 16usize];
1955  ["Offset of field: _xmlAttr::children"][::std::mem::offset_of!(_xmlAttr, children) - 24usize];
1956  ["Offset of field: _xmlAttr::last"][::std::mem::offset_of!(_xmlAttr, last) - 32usize];
1957  ["Offset of field: _xmlAttr::parent"][::std::mem::offset_of!(_xmlAttr, parent) - 40usize];
1958  ["Offset of field: _xmlAttr::next"][::std::mem::offset_of!(_xmlAttr, next) - 48usize];
1959  ["Offset of field: _xmlAttr::prev"][::std::mem::offset_of!(_xmlAttr, prev) - 56usize];
1960  ["Offset of field: _xmlAttr::doc"][::std::mem::offset_of!(_xmlAttr, doc) - 64usize];
1961  ["Offset of field: _xmlAttr::ns"][::std::mem::offset_of!(_xmlAttr, ns) - 72usize];
1962  ["Offset of field: _xmlAttr::atype"][::std::mem::offset_of!(_xmlAttr, atype) - 80usize];
1963  ["Offset of field: _xmlAttr::psvi"][::std::mem::offset_of!(_xmlAttr, psvi) - 88usize];
1964};
1965#[doc = " xmlID:\n\n An XML ID instance."]
1966pub type xmlID = _xmlID;
1967pub type xmlIDPtr = *mut xmlID;
1968#[repr(C)]
1969#[derive(Debug, Copy, Clone)]
1970pub struct _xmlID {
1971  pub next: *mut _xmlID,
1972  pub value: *const xmlChar,
1973  pub attr: xmlAttrPtr,
1974  pub name: *const xmlChar,
1975  pub lineno: ::std::os::raw::c_int,
1976  pub doc: *mut _xmlDoc,
1977}
1978#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1979const _: () = {
1980  ["Size of _xmlID"][::std::mem::size_of::<_xmlID>() - 48usize];
1981  ["Alignment of _xmlID"][::std::mem::align_of::<_xmlID>() - 8usize];
1982  ["Offset of field: _xmlID::next"][::std::mem::offset_of!(_xmlID, next) - 0usize];
1983  ["Offset of field: _xmlID::value"][::std::mem::offset_of!(_xmlID, value) - 8usize];
1984  ["Offset of field: _xmlID::attr"][::std::mem::offset_of!(_xmlID, attr) - 16usize];
1985  ["Offset of field: _xmlID::name"][::std::mem::offset_of!(_xmlID, name) - 24usize];
1986  ["Offset of field: _xmlID::lineno"][::std::mem::offset_of!(_xmlID, lineno) - 32usize];
1987  ["Offset of field: _xmlID::doc"][::std::mem::offset_of!(_xmlID, doc) - 40usize];
1988};
1989#[doc = " xmlRef:\n\n An XML IDREF instance."]
1990pub type xmlRef = _xmlRef;
1991pub type xmlRefPtr = *mut xmlRef;
1992#[repr(C)]
1993#[derive(Debug, Copy, Clone)]
1994pub struct _xmlRef {
1995  pub next: *mut _xmlRef,
1996  pub value: *const xmlChar,
1997  pub attr: xmlAttrPtr,
1998  pub name: *const xmlChar,
1999  pub lineno: ::std::os::raw::c_int,
2000}
2001#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2002const _: () = {
2003  ["Size of _xmlRef"][::std::mem::size_of::<_xmlRef>() - 40usize];
2004  ["Alignment of _xmlRef"][::std::mem::align_of::<_xmlRef>() - 8usize];
2005  ["Offset of field: _xmlRef::next"][::std::mem::offset_of!(_xmlRef, next) - 0usize];
2006  ["Offset of field: _xmlRef::value"][::std::mem::offset_of!(_xmlRef, value) - 8usize];
2007  ["Offset of field: _xmlRef::attr"][::std::mem::offset_of!(_xmlRef, attr) - 16usize];
2008  ["Offset of field: _xmlRef::name"][::std::mem::offset_of!(_xmlRef, name) - 24usize];
2009  ["Offset of field: _xmlRef::lineno"][::std::mem::offset_of!(_xmlRef, lineno) - 32usize];
2010};
2011#[doc = " xmlNode:\n\n A node in an XML tree."]
2012pub type xmlNode = _xmlNode;
2013pub type xmlNodePtr = *mut xmlNode;
2014#[repr(C)]
2015#[derive(Debug, Copy, Clone)]
2016pub struct _xmlNode {
2017  pub _private: *mut ::std::os::raw::c_void,
2018  pub type_: xmlElementType,
2019  pub name: *const xmlChar,
2020  pub children: *mut _xmlNode,
2021  pub last: *mut _xmlNode,
2022  pub parent: *mut _xmlNode,
2023  pub next: *mut _xmlNode,
2024  pub prev: *mut _xmlNode,
2025  pub doc: *mut _xmlDoc,
2026  pub ns: *mut xmlNs,
2027  pub content: *mut xmlChar,
2028  pub properties: *mut _xmlAttr,
2029  pub nsDef: *mut xmlNs,
2030  pub psvi: *mut ::std::os::raw::c_void,
2031  pub line: ::std::os::raw::c_ushort,
2032  pub extra: ::std::os::raw::c_ushort,
2033}
2034#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2035const _: () = {
2036  ["Size of _xmlNode"][::std::mem::size_of::<_xmlNode>() - 120usize];
2037  ["Alignment of _xmlNode"][::std::mem::align_of::<_xmlNode>() - 8usize];
2038  ["Offset of field: _xmlNode::_private"][::std::mem::offset_of!(_xmlNode, _private) - 0usize];
2039  ["Offset of field: _xmlNode::type_"][::std::mem::offset_of!(_xmlNode, type_) - 8usize];
2040  ["Offset of field: _xmlNode::name"][::std::mem::offset_of!(_xmlNode, name) - 16usize];
2041  ["Offset of field: _xmlNode::children"][::std::mem::offset_of!(_xmlNode, children) - 24usize];
2042  ["Offset of field: _xmlNode::last"][::std::mem::offset_of!(_xmlNode, last) - 32usize];
2043  ["Offset of field: _xmlNode::parent"][::std::mem::offset_of!(_xmlNode, parent) - 40usize];
2044  ["Offset of field: _xmlNode::next"][::std::mem::offset_of!(_xmlNode, next) - 48usize];
2045  ["Offset of field: _xmlNode::prev"][::std::mem::offset_of!(_xmlNode, prev) - 56usize];
2046  ["Offset of field: _xmlNode::doc"][::std::mem::offset_of!(_xmlNode, doc) - 64usize];
2047  ["Offset of field: _xmlNode::ns"][::std::mem::offset_of!(_xmlNode, ns) - 72usize];
2048  ["Offset of field: _xmlNode::content"][::std::mem::offset_of!(_xmlNode, content) - 80usize];
2049  ["Offset of field: _xmlNode::properties"][::std::mem::offset_of!(_xmlNode, properties) - 88usize];
2050  ["Offset of field: _xmlNode::nsDef"][::std::mem::offset_of!(_xmlNode, nsDef) - 96usize];
2051  ["Offset of field: _xmlNode::psvi"][::std::mem::offset_of!(_xmlNode, psvi) - 104usize];
2052  ["Offset of field: _xmlNode::line"][::std::mem::offset_of!(_xmlNode, line) - 112usize];
2053  ["Offset of field: _xmlNode::extra"][::std::mem::offset_of!(_xmlNode, extra) - 114usize];
2054};
2055pub const xmlDocProperties_XML_DOC_WELLFORMED: xmlDocProperties = 1;
2056pub const xmlDocProperties_XML_DOC_NSVALID: xmlDocProperties = 2;
2057pub const xmlDocProperties_XML_DOC_OLD10: xmlDocProperties = 4;
2058pub const xmlDocProperties_XML_DOC_DTDVALID: xmlDocProperties = 8;
2059pub const xmlDocProperties_XML_DOC_XINCLUDE: xmlDocProperties = 16;
2060pub const xmlDocProperties_XML_DOC_USERBUILT: xmlDocProperties = 32;
2061pub const xmlDocProperties_XML_DOC_INTERNAL: xmlDocProperties = 64;
2062pub const xmlDocProperties_XML_DOC_HTML: xmlDocProperties = 128;
2063#[doc = " xmlDocProperty\n\n Set of properties of the document as found by the parser\n Some of them are linked to similarly named xmlParserOption"]
2064pub type xmlDocProperties = ::std::os::raw::c_uint;
2065#[doc = " xmlDoc:\n\n An XML document."]
2066pub type xmlDoc = _xmlDoc;
2067pub type xmlDocPtr = *mut xmlDoc;
2068#[repr(C)]
2069#[derive(Debug, Copy, Clone)]
2070pub struct _xmlDoc {
2071  pub _private: *mut ::std::os::raw::c_void,
2072  pub type_: xmlElementType,
2073  pub name: *mut ::std::os::raw::c_char,
2074  pub children: *mut _xmlNode,
2075  pub last: *mut _xmlNode,
2076  pub parent: *mut _xmlNode,
2077  pub next: *mut _xmlNode,
2078  pub prev: *mut _xmlNode,
2079  pub doc: *mut _xmlDoc,
2080  pub compression: ::std::os::raw::c_int,
2081  pub standalone: ::std::os::raw::c_int,
2082  pub intSubset: *mut _xmlDtd,
2083  pub extSubset: *mut _xmlDtd,
2084  pub oldNs: *mut _xmlNs,
2085  pub version: *const xmlChar,
2086  pub encoding: *const xmlChar,
2087  pub ids: *mut ::std::os::raw::c_void,
2088  pub refs: *mut ::std::os::raw::c_void,
2089  pub URL: *const xmlChar,
2090  pub charset: ::std::os::raw::c_int,
2091  pub dict: *mut _xmlDict,
2092  pub psvi: *mut ::std::os::raw::c_void,
2093  pub parseFlags: ::std::os::raw::c_int,
2094  pub properties: ::std::os::raw::c_int,
2095}
2096#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2097const _: () = {
2098  ["Size of _xmlDoc"][::std::mem::size_of::<_xmlDoc>() - 176usize];
2099  ["Alignment of _xmlDoc"][::std::mem::align_of::<_xmlDoc>() - 8usize];
2100  ["Offset of field: _xmlDoc::_private"][::std::mem::offset_of!(_xmlDoc, _private) - 0usize];
2101  ["Offset of field: _xmlDoc::type_"][::std::mem::offset_of!(_xmlDoc, type_) - 8usize];
2102  ["Offset of field: _xmlDoc::name"][::std::mem::offset_of!(_xmlDoc, name) - 16usize];
2103  ["Offset of field: _xmlDoc::children"][::std::mem::offset_of!(_xmlDoc, children) - 24usize];
2104  ["Offset of field: _xmlDoc::last"][::std::mem::offset_of!(_xmlDoc, last) - 32usize];
2105  ["Offset of field: _xmlDoc::parent"][::std::mem::offset_of!(_xmlDoc, parent) - 40usize];
2106  ["Offset of field: _xmlDoc::next"][::std::mem::offset_of!(_xmlDoc, next) - 48usize];
2107  ["Offset of field: _xmlDoc::prev"][::std::mem::offset_of!(_xmlDoc, prev) - 56usize];
2108  ["Offset of field: _xmlDoc::doc"][::std::mem::offset_of!(_xmlDoc, doc) - 64usize];
2109  ["Offset of field: _xmlDoc::compression"][::std::mem::offset_of!(_xmlDoc, compression) - 72usize];
2110  ["Offset of field: _xmlDoc::standalone"][::std::mem::offset_of!(_xmlDoc, standalone) - 76usize];
2111  ["Offset of field: _xmlDoc::intSubset"][::std::mem::offset_of!(_xmlDoc, intSubset) - 80usize];
2112  ["Offset of field: _xmlDoc::extSubset"][::std::mem::offset_of!(_xmlDoc, extSubset) - 88usize];
2113  ["Offset of field: _xmlDoc::oldNs"][::std::mem::offset_of!(_xmlDoc, oldNs) - 96usize];
2114  ["Offset of field: _xmlDoc::version"][::std::mem::offset_of!(_xmlDoc, version) - 104usize];
2115  ["Offset of field: _xmlDoc::encoding"][::std::mem::offset_of!(_xmlDoc, encoding) - 112usize];
2116  ["Offset of field: _xmlDoc::ids"][::std::mem::offset_of!(_xmlDoc, ids) - 120usize];
2117  ["Offset of field: _xmlDoc::refs"][::std::mem::offset_of!(_xmlDoc, refs) - 128usize];
2118  ["Offset of field: _xmlDoc::URL"][::std::mem::offset_of!(_xmlDoc, URL) - 136usize];
2119  ["Offset of field: _xmlDoc::charset"][::std::mem::offset_of!(_xmlDoc, charset) - 144usize];
2120  ["Offset of field: _xmlDoc::dict"][::std::mem::offset_of!(_xmlDoc, dict) - 152usize];
2121  ["Offset of field: _xmlDoc::psvi"][::std::mem::offset_of!(_xmlDoc, psvi) - 160usize];
2122  ["Offset of field: _xmlDoc::parseFlags"][::std::mem::offset_of!(_xmlDoc, parseFlags) - 168usize];
2123  ["Offset of field: _xmlDoc::properties"][::std::mem::offset_of!(_xmlDoc, properties) - 172usize];
2124};
2125#[doc = " xmlDOMWrapCtxt:\n\n Context for DOM wrapper-operations."]
2126pub type xmlDOMWrapCtxt = _xmlDOMWrapCtxt;
2127pub type xmlDOMWrapCtxtPtr = *mut xmlDOMWrapCtxt;
2128#[doc = " xmlDOMWrapAcquireNsFunction:\n @ctxt:  a DOM wrapper context\n @node:  the context node (element or attribute)\n @nsName:  the requested namespace name\n @nsPrefix:  the requested namespace prefix\n\n A function called to acquire namespaces (xmlNs) from the wrapper.\n\n Returns an xmlNsPtr or NULL in case of an error."]
2129pub type xmlDOMWrapAcquireNsFunction = ::std::option::Option<
2130  unsafe extern "C" fn(
2131    ctxt: xmlDOMWrapCtxtPtr,
2132    node: xmlNodePtr,
2133    nsName: *const xmlChar,
2134    nsPrefix: *const xmlChar,
2135  ) -> xmlNsPtr,
2136>;
2137#[doc = " xmlDOMWrapCtxt:\n\n Context for DOM wrapper-operations."]
2138#[repr(C)]
2139#[derive(Debug, Copy, Clone)]
2140pub struct _xmlDOMWrapCtxt {
2141  pub _private: *mut ::std::os::raw::c_void,
2142  pub type_: ::std::os::raw::c_int,
2143  pub namespaceMap: *mut ::std::os::raw::c_void,
2144  pub getNsForNodeFunc: xmlDOMWrapAcquireNsFunction,
2145}
2146#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2147const _: () = {
2148  ["Size of _xmlDOMWrapCtxt"][::std::mem::size_of::<_xmlDOMWrapCtxt>() - 32usize];
2149  ["Alignment of _xmlDOMWrapCtxt"][::std::mem::align_of::<_xmlDOMWrapCtxt>() - 8usize];
2150  ["Offset of field: _xmlDOMWrapCtxt::_private"]
2151    [::std::mem::offset_of!(_xmlDOMWrapCtxt, _private) - 0usize];
2152  ["Offset of field: _xmlDOMWrapCtxt::type_"]
2153    [::std::mem::offset_of!(_xmlDOMWrapCtxt, type_) - 8usize];
2154  ["Offset of field: _xmlDOMWrapCtxt::namespaceMap"]
2155    [::std::mem::offset_of!(_xmlDOMWrapCtxt, namespaceMap) - 16usize];
2156  ["Offset of field: _xmlDOMWrapCtxt::getNsForNodeFunc"]
2157    [::std::mem::offset_of!(_xmlDOMWrapCtxt, getNsForNodeFunc) - 24usize];
2158};
2159unsafe extern "C" {
2160  pub fn xmlValidateNCName(
2161    value: *const xmlChar,
2162    space: ::std::os::raw::c_int,
2163  ) -> ::std::os::raw::c_int;
2164}
2165unsafe extern "C" {
2166  pub fn xmlValidateQName(
2167    value: *const xmlChar,
2168    space: ::std::os::raw::c_int,
2169  ) -> ::std::os::raw::c_int;
2170}
2171unsafe extern "C" {
2172  pub fn xmlValidateName(
2173    value: *const xmlChar,
2174    space: ::std::os::raw::c_int,
2175  ) -> ::std::os::raw::c_int;
2176}
2177unsafe extern "C" {
2178  pub fn xmlValidateNMToken(
2179    value: *const xmlChar,
2180    space: ::std::os::raw::c_int,
2181  ) -> ::std::os::raw::c_int;
2182}
2183unsafe extern "C" {
2184  pub fn xmlBuildQName(
2185    ncname: *const xmlChar,
2186    prefix: *const xmlChar,
2187    memory: *mut xmlChar,
2188    len: ::std::os::raw::c_int,
2189  ) -> *mut xmlChar;
2190}
2191unsafe extern "C" {
2192  pub fn xmlSplitQName2(name: *const xmlChar, prefix: *mut *mut xmlChar) -> *mut xmlChar;
2193}
2194unsafe extern "C" {
2195  pub fn xmlSplitQName3(name: *const xmlChar, len: *mut ::std::os::raw::c_int) -> *const xmlChar;
2196}
2197unsafe extern "C" {
2198  pub fn xmlSetBufferAllocationScheme(scheme: xmlBufferAllocationScheme);
2199}
2200unsafe extern "C" {
2201  pub fn xmlGetBufferAllocationScheme() -> xmlBufferAllocationScheme;
2202}
2203unsafe extern "C" {
2204  pub fn xmlBufferCreate() -> xmlBufferPtr;
2205}
2206unsafe extern "C" {
2207  pub fn xmlBufferCreateSize(size: usize) -> xmlBufferPtr;
2208}
2209unsafe extern "C" {
2210  pub fn xmlBufferCreateStatic(mem: *mut ::std::os::raw::c_void, size: usize) -> xmlBufferPtr;
2211}
2212unsafe extern "C" {
2213  pub fn xmlBufferResize(buf: xmlBufferPtr, size: ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
2214}
2215unsafe extern "C" {
2216  pub fn xmlBufferFree(buf: xmlBufferPtr);
2217}
2218unsafe extern "C" {
2219  pub fn xmlBufferDump(file: *mut FILE, buf: xmlBufferPtr) -> ::std::os::raw::c_int;
2220}
2221unsafe extern "C" {
2222  pub fn xmlBufferAdd(
2223    buf: xmlBufferPtr,
2224    str_: *const xmlChar,
2225    len: ::std::os::raw::c_int,
2226  ) -> ::std::os::raw::c_int;
2227}
2228unsafe extern "C" {
2229  pub fn xmlBufferAddHead(
2230    buf: xmlBufferPtr,
2231    str_: *const xmlChar,
2232    len: ::std::os::raw::c_int,
2233  ) -> ::std::os::raw::c_int;
2234}
2235unsafe extern "C" {
2236  pub fn xmlBufferCat(buf: xmlBufferPtr, str_: *const xmlChar) -> ::std::os::raw::c_int;
2237}
2238unsafe extern "C" {
2239  pub fn xmlBufferCCat(
2240    buf: xmlBufferPtr,
2241    str_: *const ::std::os::raw::c_char,
2242  ) -> ::std::os::raw::c_int;
2243}
2244unsafe extern "C" {
2245  pub fn xmlBufferShrink(buf: xmlBufferPtr, len: ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
2246}
2247unsafe extern "C" {
2248  pub fn xmlBufferGrow(buf: xmlBufferPtr, len: ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
2249}
2250unsafe extern "C" {
2251  pub fn xmlBufferEmpty(buf: xmlBufferPtr);
2252}
2253unsafe extern "C" {
2254  pub fn xmlBufferContent(buf: *const xmlBuffer) -> *const xmlChar;
2255}
2256unsafe extern "C" {
2257  pub fn xmlBufferDetach(buf: xmlBufferPtr) -> *mut xmlChar;
2258}
2259unsafe extern "C" {
2260  pub fn xmlBufferSetAllocationScheme(buf: xmlBufferPtr, scheme: xmlBufferAllocationScheme);
2261}
2262unsafe extern "C" {
2263  pub fn xmlBufferLength(buf: *const xmlBuffer) -> ::std::os::raw::c_int;
2264}
2265unsafe extern "C" {
2266  pub fn xmlCreateIntSubset(
2267    doc: xmlDocPtr,
2268    name: *const xmlChar,
2269    ExternalID: *const xmlChar,
2270    SystemID: *const xmlChar,
2271  ) -> xmlDtdPtr;
2272}
2273unsafe extern "C" {
2274  pub fn xmlNewDtd(
2275    doc: xmlDocPtr,
2276    name: *const xmlChar,
2277    ExternalID: *const xmlChar,
2278    SystemID: *const xmlChar,
2279  ) -> xmlDtdPtr;
2280}
2281unsafe extern "C" {
2282  pub fn xmlGetIntSubset(doc: *const xmlDoc) -> xmlDtdPtr;
2283}
2284unsafe extern "C" {
2285  pub fn xmlFreeDtd(cur: xmlDtdPtr);
2286}
2287unsafe extern "C" {
2288  pub fn xmlNewGlobalNs(doc: xmlDocPtr, href: *const xmlChar, prefix: *const xmlChar) -> xmlNsPtr;
2289}
2290unsafe extern "C" {
2291  pub fn xmlNewNs(node: xmlNodePtr, href: *const xmlChar, prefix: *const xmlChar) -> xmlNsPtr;
2292}
2293unsafe extern "C" {
2294  pub fn xmlFreeNs(cur: xmlNsPtr);
2295}
2296unsafe extern "C" {
2297  pub fn xmlFreeNsList(cur: xmlNsPtr);
2298}
2299unsafe extern "C" {
2300  pub fn xmlNewDoc(version: *const xmlChar) -> xmlDocPtr;
2301}
2302unsafe extern "C" {
2303  pub fn xmlFreeDoc(cur: xmlDocPtr);
2304}
2305unsafe extern "C" {
2306  pub fn xmlNewDocProp(doc: xmlDocPtr, name: *const xmlChar, value: *const xmlChar) -> xmlAttrPtr;
2307}
2308unsafe extern "C" {
2309  pub fn xmlNewProp(node: xmlNodePtr, name: *const xmlChar, value: *const xmlChar) -> xmlAttrPtr;
2310}
2311unsafe extern "C" {
2312  pub fn xmlNewNsProp(
2313    node: xmlNodePtr,
2314    ns: xmlNsPtr,
2315    name: *const xmlChar,
2316    value: *const xmlChar,
2317  ) -> xmlAttrPtr;
2318}
2319unsafe extern "C" {
2320  pub fn xmlNewNsPropEatName(
2321    node: xmlNodePtr,
2322    ns: xmlNsPtr,
2323    name: *mut xmlChar,
2324    value: *const xmlChar,
2325  ) -> xmlAttrPtr;
2326}
2327unsafe extern "C" {
2328  pub fn xmlFreePropList(cur: xmlAttrPtr);
2329}
2330unsafe extern "C" {
2331  pub fn xmlFreeProp(cur: xmlAttrPtr);
2332}
2333unsafe extern "C" {
2334  pub fn xmlCopyProp(target: xmlNodePtr, cur: xmlAttrPtr) -> xmlAttrPtr;
2335}
2336unsafe extern "C" {
2337  pub fn xmlCopyPropList(target: xmlNodePtr, cur: xmlAttrPtr) -> xmlAttrPtr;
2338}
2339unsafe extern "C" {
2340  pub fn xmlCopyDtd(dtd: xmlDtdPtr) -> xmlDtdPtr;
2341}
2342unsafe extern "C" {
2343  pub fn xmlCopyDoc(doc: xmlDocPtr, recursive: ::std::os::raw::c_int) -> xmlDocPtr;
2344}
2345unsafe extern "C" {
2346  pub fn xmlNewDocNode(
2347    doc: xmlDocPtr,
2348    ns: xmlNsPtr,
2349    name: *const xmlChar,
2350    content: *const xmlChar,
2351  ) -> xmlNodePtr;
2352}
2353unsafe extern "C" {
2354  pub fn xmlNewDocNodeEatName(
2355    doc: xmlDocPtr,
2356    ns: xmlNsPtr,
2357    name: *mut xmlChar,
2358    content: *const xmlChar,
2359  ) -> xmlNodePtr;
2360}
2361unsafe extern "C" {
2362  pub fn xmlNewNode(ns: xmlNsPtr, name: *const xmlChar) -> xmlNodePtr;
2363}
2364unsafe extern "C" {
2365  pub fn xmlNewNodeEatName(ns: xmlNsPtr, name: *mut xmlChar) -> xmlNodePtr;
2366}
2367unsafe extern "C" {
2368  pub fn xmlNewChild(
2369    parent: xmlNodePtr,
2370    ns: xmlNsPtr,
2371    name: *const xmlChar,
2372    content: *const xmlChar,
2373  ) -> xmlNodePtr;
2374}
2375unsafe extern "C" {
2376  pub fn xmlNewDocText(doc: *const xmlDoc, content: *const xmlChar) -> xmlNodePtr;
2377}
2378unsafe extern "C" {
2379  pub fn xmlNewText(content: *const xmlChar) -> xmlNodePtr;
2380}
2381unsafe extern "C" {
2382  pub fn xmlNewDocPI(doc: xmlDocPtr, name: *const xmlChar, content: *const xmlChar) -> xmlNodePtr;
2383}
2384unsafe extern "C" {
2385  pub fn xmlNewPI(name: *const xmlChar, content: *const xmlChar) -> xmlNodePtr;
2386}
2387unsafe extern "C" {
2388  pub fn xmlNewDocTextLen(
2389    doc: xmlDocPtr,
2390    content: *const xmlChar,
2391    len: ::std::os::raw::c_int,
2392  ) -> xmlNodePtr;
2393}
2394unsafe extern "C" {
2395  pub fn xmlNewTextLen(content: *const xmlChar, len: ::std::os::raw::c_int) -> xmlNodePtr;
2396}
2397unsafe extern "C" {
2398  pub fn xmlNewDocComment(doc: xmlDocPtr, content: *const xmlChar) -> xmlNodePtr;
2399}
2400unsafe extern "C" {
2401  pub fn xmlNewComment(content: *const xmlChar) -> xmlNodePtr;
2402}
2403unsafe extern "C" {
2404  pub fn xmlNewCDataBlock(
2405    doc: xmlDocPtr,
2406    content: *const xmlChar,
2407    len: ::std::os::raw::c_int,
2408  ) -> xmlNodePtr;
2409}
2410unsafe extern "C" {
2411  pub fn xmlNewCharRef(doc: xmlDocPtr, name: *const xmlChar) -> xmlNodePtr;
2412}
2413unsafe extern "C" {
2414  pub fn xmlNewReference(doc: *const xmlDoc, name: *const xmlChar) -> xmlNodePtr;
2415}
2416unsafe extern "C" {
2417  pub fn xmlCopyNode(node: xmlNodePtr, recursive: ::std::os::raw::c_int) -> xmlNodePtr;
2418}
2419unsafe extern "C" {
2420  pub fn xmlDocCopyNode(
2421    node: xmlNodePtr,
2422    doc: xmlDocPtr,
2423    recursive: ::std::os::raw::c_int,
2424  ) -> xmlNodePtr;
2425}
2426unsafe extern "C" {
2427  pub fn xmlDocCopyNodeList(doc: xmlDocPtr, node: xmlNodePtr) -> xmlNodePtr;
2428}
2429unsafe extern "C" {
2430  pub fn xmlCopyNodeList(node: xmlNodePtr) -> xmlNodePtr;
2431}
2432unsafe extern "C" {
2433  pub fn xmlNewTextChild(
2434    parent: xmlNodePtr,
2435    ns: xmlNsPtr,
2436    name: *const xmlChar,
2437    content: *const xmlChar,
2438  ) -> xmlNodePtr;
2439}
2440unsafe extern "C" {
2441  pub fn xmlNewDocRawNode(
2442    doc: xmlDocPtr,
2443    ns: xmlNsPtr,
2444    name: *const xmlChar,
2445    content: *const xmlChar,
2446  ) -> xmlNodePtr;
2447}
2448unsafe extern "C" {
2449  pub fn xmlNewDocFragment(doc: xmlDocPtr) -> xmlNodePtr;
2450}
2451unsafe extern "C" {
2452  pub fn xmlGetLineNo(node: *const xmlNode) -> ::std::os::raw::c_long;
2453}
2454unsafe extern "C" {
2455  pub fn xmlGetNodePath(node: *const xmlNode) -> *mut xmlChar;
2456}
2457unsafe extern "C" {
2458  pub fn xmlDocGetRootElement(doc: *const xmlDoc) -> xmlNodePtr;
2459}
2460unsafe extern "C" {
2461  pub fn xmlGetLastChild(parent: *const xmlNode) -> xmlNodePtr;
2462}
2463unsafe extern "C" {
2464  pub fn xmlNodeIsText(node: *const xmlNode) -> ::std::os::raw::c_int;
2465}
2466unsafe extern "C" {
2467  pub fn xmlIsBlankNode(node: *const xmlNode) -> ::std::os::raw::c_int;
2468}
2469unsafe extern "C" {
2470  pub fn xmlDocSetRootElement(doc: xmlDocPtr, root: xmlNodePtr) -> xmlNodePtr;
2471}
2472unsafe extern "C" {
2473  pub fn xmlNodeSetName(cur: xmlNodePtr, name: *const xmlChar);
2474}
2475unsafe extern "C" {
2476  pub fn xmlAddChild(parent: xmlNodePtr, cur: xmlNodePtr) -> xmlNodePtr;
2477}
2478unsafe extern "C" {
2479  pub fn xmlAddChildList(parent: xmlNodePtr, cur: xmlNodePtr) -> xmlNodePtr;
2480}
2481unsafe extern "C" {
2482  pub fn xmlReplaceNode(old: xmlNodePtr, cur: xmlNodePtr) -> xmlNodePtr;
2483}
2484unsafe extern "C" {
2485  pub fn xmlAddPrevSibling(cur: xmlNodePtr, elem: xmlNodePtr) -> xmlNodePtr;
2486}
2487unsafe extern "C" {
2488  pub fn xmlAddSibling(cur: xmlNodePtr, elem: xmlNodePtr) -> xmlNodePtr;
2489}
2490unsafe extern "C" {
2491  pub fn xmlAddNextSibling(cur: xmlNodePtr, elem: xmlNodePtr) -> xmlNodePtr;
2492}
2493unsafe extern "C" {
2494  pub fn xmlUnlinkNode(cur: xmlNodePtr);
2495}
2496unsafe extern "C" {
2497  pub fn xmlTextMerge(first: xmlNodePtr, second: xmlNodePtr) -> xmlNodePtr;
2498}
2499unsafe extern "C" {
2500  pub fn xmlTextConcat(
2501    node: xmlNodePtr,
2502    content: *const xmlChar,
2503    len: ::std::os::raw::c_int,
2504  ) -> ::std::os::raw::c_int;
2505}
2506unsafe extern "C" {
2507  pub fn xmlFreeNodeList(cur: xmlNodePtr);
2508}
2509unsafe extern "C" {
2510  pub fn xmlFreeNode(cur: xmlNodePtr);
2511}
2512unsafe extern "C" {
2513  pub fn xmlSetTreeDoc(tree: xmlNodePtr, doc: xmlDocPtr);
2514}
2515unsafe extern "C" {
2516  pub fn xmlSetListDoc(list: xmlNodePtr, doc: xmlDocPtr);
2517}
2518unsafe extern "C" {
2519  pub fn xmlSearchNs(doc: xmlDocPtr, node: xmlNodePtr, nameSpace: *const xmlChar) -> xmlNsPtr;
2520}
2521unsafe extern "C" {
2522  pub fn xmlSearchNsByHref(doc: xmlDocPtr, node: xmlNodePtr, href: *const xmlChar) -> xmlNsPtr;
2523}
2524unsafe extern "C" {
2525  pub fn xmlGetNsList(doc: *const xmlDoc, node: *const xmlNode) -> *mut xmlNsPtr;
2526}
2527unsafe extern "C" {
2528  pub fn xmlSetNs(node: xmlNodePtr, ns: xmlNsPtr);
2529}
2530unsafe extern "C" {
2531  pub fn xmlCopyNamespace(cur: xmlNsPtr) -> xmlNsPtr;
2532}
2533unsafe extern "C" {
2534  pub fn xmlCopyNamespaceList(cur: xmlNsPtr) -> xmlNsPtr;
2535}
2536unsafe extern "C" {
2537  pub fn xmlSetProp(node: xmlNodePtr, name: *const xmlChar, value: *const xmlChar) -> xmlAttrPtr;
2538}
2539unsafe extern "C" {
2540  pub fn xmlSetNsProp(
2541    node: xmlNodePtr,
2542    ns: xmlNsPtr,
2543    name: *const xmlChar,
2544    value: *const xmlChar,
2545  ) -> xmlAttrPtr;
2546}
2547unsafe extern "C" {
2548  pub fn xmlGetNoNsProp(node: *const xmlNode, name: *const xmlChar) -> *mut xmlChar;
2549}
2550unsafe extern "C" {
2551  pub fn xmlGetProp(node: *const xmlNode, name: *const xmlChar) -> *mut xmlChar;
2552}
2553unsafe extern "C" {
2554  pub fn xmlHasProp(node: *const xmlNode, name: *const xmlChar) -> xmlAttrPtr;
2555}
2556unsafe extern "C" {
2557  pub fn xmlHasNsProp(
2558    node: *const xmlNode,
2559    name: *const xmlChar,
2560    nameSpace: *const xmlChar,
2561  ) -> xmlAttrPtr;
2562}
2563unsafe extern "C" {
2564  pub fn xmlGetNsProp(
2565    node: *const xmlNode,
2566    name: *const xmlChar,
2567    nameSpace: *const xmlChar,
2568  ) -> *mut xmlChar;
2569}
2570unsafe extern "C" {
2571  pub fn xmlStringGetNodeList(doc: *const xmlDoc, value: *const xmlChar) -> xmlNodePtr;
2572}
2573unsafe extern "C" {
2574  pub fn xmlStringLenGetNodeList(
2575    doc: *const xmlDoc,
2576    value: *const xmlChar,
2577    len: ::std::os::raw::c_int,
2578  ) -> xmlNodePtr;
2579}
2580unsafe extern "C" {
2581  pub fn xmlNodeListGetString(
2582    doc: xmlDocPtr,
2583    list: *const xmlNode,
2584    inLine: ::std::os::raw::c_int,
2585  ) -> *mut xmlChar;
2586}
2587unsafe extern "C" {
2588  pub fn xmlNodeListGetRawString(
2589    doc: *const xmlDoc,
2590    list: *const xmlNode,
2591    inLine: ::std::os::raw::c_int,
2592  ) -> *mut xmlChar;
2593}
2594unsafe extern "C" {
2595  pub fn xmlNodeSetContent(cur: xmlNodePtr, content: *const xmlChar);
2596}
2597unsafe extern "C" {
2598  pub fn xmlNodeSetContentLen(cur: xmlNodePtr, content: *const xmlChar, len: ::std::os::raw::c_int);
2599}
2600unsafe extern "C" {
2601  pub fn xmlNodeAddContent(cur: xmlNodePtr, content: *const xmlChar);
2602}
2603unsafe extern "C" {
2604  pub fn xmlNodeAddContentLen(cur: xmlNodePtr, content: *const xmlChar, len: ::std::os::raw::c_int);
2605}
2606unsafe extern "C" {
2607  pub fn xmlNodeGetContent(cur: *const xmlNode) -> *mut xmlChar;
2608}
2609unsafe extern "C" {
2610  pub fn xmlNodeBufGetContent(buffer: xmlBufferPtr, cur: *const xmlNode) -> ::std::os::raw::c_int;
2611}
2612unsafe extern "C" {
2613  pub fn xmlBufGetNodeContent(buf: xmlBufPtr, cur: *const xmlNode) -> ::std::os::raw::c_int;
2614}
2615unsafe extern "C" {
2616  pub fn xmlNodeGetLang(cur: *const xmlNode) -> *mut xmlChar;
2617}
2618unsafe extern "C" {
2619  pub fn xmlNodeGetSpacePreserve(cur: *const xmlNode) -> ::std::os::raw::c_int;
2620}
2621unsafe extern "C" {
2622  pub fn xmlNodeSetLang(cur: xmlNodePtr, lang: *const xmlChar);
2623}
2624unsafe extern "C" {
2625  pub fn xmlNodeSetSpacePreserve(cur: xmlNodePtr, val: ::std::os::raw::c_int);
2626}
2627unsafe extern "C" {
2628  pub fn xmlNodeGetBase(doc: *const xmlDoc, cur: *const xmlNode) -> *mut xmlChar;
2629}
2630unsafe extern "C" {
2631  pub fn xmlNodeSetBase(cur: xmlNodePtr, uri: *const xmlChar);
2632}
2633unsafe extern "C" {
2634  pub fn xmlRemoveProp(cur: xmlAttrPtr) -> ::std::os::raw::c_int;
2635}
2636unsafe extern "C" {
2637  pub fn xmlUnsetNsProp(
2638    node: xmlNodePtr,
2639    ns: xmlNsPtr,
2640    name: *const xmlChar,
2641  ) -> ::std::os::raw::c_int;
2642}
2643unsafe extern "C" {
2644  pub fn xmlUnsetProp(node: xmlNodePtr, name: *const xmlChar) -> ::std::os::raw::c_int;
2645}
2646unsafe extern "C" {
2647  pub fn xmlBufferWriteCHAR(buf: xmlBufferPtr, string: *const xmlChar);
2648}
2649unsafe extern "C" {
2650  pub fn xmlBufferWriteChar(buf: xmlBufferPtr, string: *const ::std::os::raw::c_char);
2651}
2652unsafe extern "C" {
2653  pub fn xmlBufferWriteQuotedString(buf: xmlBufferPtr, string: *const xmlChar);
2654}
2655unsafe extern "C" {
2656  pub fn xmlAttrSerializeTxtContent(
2657    buf: xmlBufferPtr,
2658    doc: xmlDocPtr,
2659    attr: xmlAttrPtr,
2660    string: *const xmlChar,
2661  );
2662}
2663unsafe extern "C" {
2664  pub fn xmlReconciliateNs(doc: xmlDocPtr, tree: xmlNodePtr) -> ::std::os::raw::c_int;
2665}
2666unsafe extern "C" {
2667  pub fn xmlDocDumpFormatMemory(
2668    cur: xmlDocPtr,
2669    mem: *mut *mut xmlChar,
2670    size: *mut ::std::os::raw::c_int,
2671    format: ::std::os::raw::c_int,
2672  );
2673}
2674unsafe extern "C" {
2675  pub fn xmlDocDumpMemory(cur: xmlDocPtr, mem: *mut *mut xmlChar, size: *mut ::std::os::raw::c_int);
2676}
2677unsafe extern "C" {
2678  pub fn xmlDocDumpMemoryEnc(
2679    out_doc: xmlDocPtr,
2680    doc_txt_ptr: *mut *mut xmlChar,
2681    doc_txt_len: *mut ::std::os::raw::c_int,
2682    txt_encoding: *const ::std::os::raw::c_char,
2683  );
2684}
2685unsafe extern "C" {
2686  pub fn xmlDocDumpFormatMemoryEnc(
2687    out_doc: xmlDocPtr,
2688    doc_txt_ptr: *mut *mut xmlChar,
2689    doc_txt_len: *mut ::std::os::raw::c_int,
2690    txt_encoding: *const ::std::os::raw::c_char,
2691    format: ::std::os::raw::c_int,
2692  );
2693}
2694unsafe extern "C" {
2695  pub fn xmlDocFormatDump(
2696    f: *mut FILE,
2697    cur: xmlDocPtr,
2698    format: ::std::os::raw::c_int,
2699  ) -> ::std::os::raw::c_int;
2700}
2701unsafe extern "C" {
2702  pub fn xmlDocDump(f: *mut FILE, cur: xmlDocPtr) -> ::std::os::raw::c_int;
2703}
2704unsafe extern "C" {
2705  pub fn xmlElemDump(f: *mut FILE, doc: xmlDocPtr, cur: xmlNodePtr);
2706}
2707unsafe extern "C" {
2708  pub fn xmlSaveFile(
2709    filename: *const ::std::os::raw::c_char,
2710    cur: xmlDocPtr,
2711  ) -> ::std::os::raw::c_int;
2712}
2713unsafe extern "C" {
2714  pub fn xmlSaveFormatFile(
2715    filename: *const ::std::os::raw::c_char,
2716    cur: xmlDocPtr,
2717    format: ::std::os::raw::c_int,
2718  ) -> ::std::os::raw::c_int;
2719}
2720unsafe extern "C" {
2721  pub fn xmlBufNodeDump(
2722    buf: xmlBufPtr,
2723    doc: xmlDocPtr,
2724    cur: xmlNodePtr,
2725    level: ::std::os::raw::c_int,
2726    format: ::std::os::raw::c_int,
2727  ) -> usize;
2728}
2729unsafe extern "C" {
2730  pub fn xmlNodeDump(
2731    buf: xmlBufferPtr,
2732    doc: xmlDocPtr,
2733    cur: xmlNodePtr,
2734    level: ::std::os::raw::c_int,
2735    format: ::std::os::raw::c_int,
2736  ) -> ::std::os::raw::c_int;
2737}
2738unsafe extern "C" {
2739  pub fn xmlSaveFileTo(
2740    buf: xmlOutputBufferPtr,
2741    cur: xmlDocPtr,
2742    encoding: *const ::std::os::raw::c_char,
2743  ) -> ::std::os::raw::c_int;
2744}
2745unsafe extern "C" {
2746  pub fn xmlSaveFormatFileTo(
2747    buf: xmlOutputBufferPtr,
2748    cur: xmlDocPtr,
2749    encoding: *const ::std::os::raw::c_char,
2750    format: ::std::os::raw::c_int,
2751  ) -> ::std::os::raw::c_int;
2752}
2753unsafe extern "C" {
2754  pub fn xmlNodeDumpOutput(
2755    buf: xmlOutputBufferPtr,
2756    doc: xmlDocPtr,
2757    cur: xmlNodePtr,
2758    level: ::std::os::raw::c_int,
2759    format: ::std::os::raw::c_int,
2760    encoding: *const ::std::os::raw::c_char,
2761  );
2762}
2763unsafe extern "C" {
2764  pub fn xmlSaveFormatFileEnc(
2765    filename: *const ::std::os::raw::c_char,
2766    cur: xmlDocPtr,
2767    encoding: *const ::std::os::raw::c_char,
2768    format: ::std::os::raw::c_int,
2769  ) -> ::std::os::raw::c_int;
2770}
2771unsafe extern "C" {
2772  pub fn xmlSaveFileEnc(
2773    filename: *const ::std::os::raw::c_char,
2774    cur: xmlDocPtr,
2775    encoding: *const ::std::os::raw::c_char,
2776  ) -> ::std::os::raw::c_int;
2777}
2778unsafe extern "C" {
2779  pub fn xmlIsXHTML(systemID: *const xmlChar, publicID: *const xmlChar) -> ::std::os::raw::c_int;
2780}
2781unsafe extern "C" {
2782  pub fn xmlGetDocCompressMode(doc: *const xmlDoc) -> ::std::os::raw::c_int;
2783}
2784unsafe extern "C" {
2785  pub fn xmlSetDocCompressMode(doc: xmlDocPtr, mode: ::std::os::raw::c_int);
2786}
2787unsafe extern "C" {
2788  pub fn xmlGetCompressMode() -> ::std::os::raw::c_int;
2789}
2790unsafe extern "C" {
2791  pub fn xmlSetCompressMode(mode: ::std::os::raw::c_int);
2792}
2793unsafe extern "C" {
2794  pub fn xmlDOMWrapNewCtxt() -> xmlDOMWrapCtxtPtr;
2795}
2796unsafe extern "C" {
2797  pub fn xmlDOMWrapFreeCtxt(ctxt: xmlDOMWrapCtxtPtr);
2798}
2799unsafe extern "C" {
2800  pub fn xmlDOMWrapReconcileNamespaces(
2801    ctxt: xmlDOMWrapCtxtPtr,
2802    elem: xmlNodePtr,
2803    options: ::std::os::raw::c_int,
2804  ) -> ::std::os::raw::c_int;
2805}
2806unsafe extern "C" {
2807  pub fn xmlDOMWrapAdoptNode(
2808    ctxt: xmlDOMWrapCtxtPtr,
2809    sourceDoc: xmlDocPtr,
2810    node: xmlNodePtr,
2811    destDoc: xmlDocPtr,
2812    destParent: xmlNodePtr,
2813    options: ::std::os::raw::c_int,
2814  ) -> ::std::os::raw::c_int;
2815}
2816unsafe extern "C" {
2817  pub fn xmlDOMWrapRemoveNode(
2818    ctxt: xmlDOMWrapCtxtPtr,
2819    doc: xmlDocPtr,
2820    node: xmlNodePtr,
2821    options: ::std::os::raw::c_int,
2822  ) -> ::std::os::raw::c_int;
2823}
2824unsafe extern "C" {
2825  pub fn xmlDOMWrapCloneNode(
2826    ctxt: xmlDOMWrapCtxtPtr,
2827    sourceDoc: xmlDocPtr,
2828    node: xmlNodePtr,
2829    clonedNode: *mut xmlNodePtr,
2830    destDoc: xmlDocPtr,
2831    destParent: xmlNodePtr,
2832    deep: ::std::os::raw::c_int,
2833    options: ::std::os::raw::c_int,
2834  ) -> ::std::os::raw::c_int;
2835}
2836unsafe extern "C" {
2837  pub fn xmlChildElementCount(parent: xmlNodePtr) -> ::std::os::raw::c_ulong;
2838}
2839unsafe extern "C" {
2840  pub fn xmlNextElementSibling(node: xmlNodePtr) -> xmlNodePtr;
2841}
2842unsafe extern "C" {
2843  pub fn xmlFirstElementChild(parent: xmlNodePtr) -> xmlNodePtr;
2844}
2845unsafe extern "C" {
2846  pub fn xmlLastElementChild(parent: xmlNodePtr) -> xmlNodePtr;
2847}
2848unsafe extern "C" {
2849  pub fn xmlPreviousElementSibling(node: xmlNodePtr) -> xmlNodePtr;
2850}
2851#[doc = " xmlFreeFunc:\n @mem: an already allocated block of memory\n\n Signature for a free() implementation."]
2852pub type xmlFreeFunc =
2853  ::std::option::Option<unsafe extern "C" fn(mem: *mut ::std::os::raw::c_void)>;
2854#[doc = " xmlMallocFunc:\n @size:  the size requested in bytes\n\n Signature for a malloc() implementation.\n\n Returns a pointer to the newly allocated block or NULL in case of error."]
2855pub type xmlMallocFunc =
2856  ::std::option::Option<unsafe extern "C" fn(size: usize) -> *mut ::std::os::raw::c_void>;
2857#[doc = " xmlReallocFunc:\n @mem: an already allocated block of memory\n @size:  the new size requested in bytes\n\n Signature for a realloc() implementation.\n\n Returns a pointer to the newly reallocated block or NULL in case of error."]
2858pub type xmlReallocFunc = ::std::option::Option<
2859  unsafe extern "C" fn(
2860    mem: *mut ::std::os::raw::c_void,
2861    size: usize,
2862  ) -> *mut ::std::os::raw::c_void,
2863>;
2864#[doc = " xmlStrdupFunc:\n @str: a zero terminated string\n\n Signature for an strdup() implementation.\n\n Returns the copy of the string or NULL in case of error."]
2865pub type xmlStrdupFunc = ::std::option::Option<
2866  unsafe extern "C" fn(str_: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char,
2867>;
2868unsafe extern "C" {
2869  pub fn xmlMemSetup(
2870    freeFunc: xmlFreeFunc,
2871    mallocFunc: xmlMallocFunc,
2872    reallocFunc: xmlReallocFunc,
2873    strdupFunc: xmlStrdupFunc,
2874  ) -> ::std::os::raw::c_int;
2875}
2876unsafe extern "C" {
2877  pub fn xmlMemGet(
2878    freeFunc: *mut xmlFreeFunc,
2879    mallocFunc: *mut xmlMallocFunc,
2880    reallocFunc: *mut xmlReallocFunc,
2881    strdupFunc: *mut xmlStrdupFunc,
2882  ) -> ::std::os::raw::c_int;
2883}
2884unsafe extern "C" {
2885  pub fn xmlGcMemSetup(
2886    freeFunc: xmlFreeFunc,
2887    mallocFunc: xmlMallocFunc,
2888    mallocAtomicFunc: xmlMallocFunc,
2889    reallocFunc: xmlReallocFunc,
2890    strdupFunc: xmlStrdupFunc,
2891  ) -> ::std::os::raw::c_int;
2892}
2893unsafe extern "C" {
2894  pub fn xmlGcMemGet(
2895    freeFunc: *mut xmlFreeFunc,
2896    mallocFunc: *mut xmlMallocFunc,
2897    mallocAtomicFunc: *mut xmlMallocFunc,
2898    reallocFunc: *mut xmlReallocFunc,
2899    strdupFunc: *mut xmlStrdupFunc,
2900  ) -> ::std::os::raw::c_int;
2901}
2902unsafe extern "C" {
2903  pub fn xmlInitMemory() -> ::std::os::raw::c_int;
2904}
2905unsafe extern "C" {
2906  pub fn xmlCleanupMemory();
2907}
2908unsafe extern "C" {
2909  pub fn xmlMemUsed() -> ::std::os::raw::c_int;
2910}
2911unsafe extern "C" {
2912  pub fn xmlMemBlocks() -> ::std::os::raw::c_int;
2913}
2914unsafe extern "C" {
2915  pub fn xmlMemDisplay(fp: *mut FILE);
2916}
2917unsafe extern "C" {
2918  pub fn xmlMemDisplayLast(fp: *mut FILE, nbBytes: ::std::os::raw::c_long);
2919}
2920unsafe extern "C" {
2921  pub fn xmlMemShow(fp: *mut FILE, nr: ::std::os::raw::c_int);
2922}
2923unsafe extern "C" {
2924  pub fn xmlMemoryDump();
2925}
2926unsafe extern "C" {
2927  pub fn xmlMemMalloc(size: usize) -> *mut ::std::os::raw::c_void;
2928}
2929unsafe extern "C" {
2930  pub fn xmlMemRealloc(
2931    ptr: *mut ::std::os::raw::c_void,
2932    size: usize,
2933  ) -> *mut ::std::os::raw::c_void;
2934}
2935unsafe extern "C" {
2936  pub fn xmlMemFree(ptr: *mut ::std::os::raw::c_void);
2937}
2938unsafe extern "C" {
2939  pub fn xmlMemoryStrdup(str_: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
2940}
2941unsafe extern "C" {
2942  pub fn xmlMallocLoc(
2943    size: usize,
2944    file: *const ::std::os::raw::c_char,
2945    line: ::std::os::raw::c_int,
2946  ) -> *mut ::std::os::raw::c_void;
2947}
2948unsafe extern "C" {
2949  pub fn xmlReallocLoc(
2950    ptr: *mut ::std::os::raw::c_void,
2951    size: usize,
2952    file: *const ::std::os::raw::c_char,
2953    line: ::std::os::raw::c_int,
2954  ) -> *mut ::std::os::raw::c_void;
2955}
2956unsafe extern "C" {
2957  pub fn xmlMallocAtomicLoc(
2958    size: usize,
2959    file: *const ::std::os::raw::c_char,
2960    line: ::std::os::raw::c_int,
2961  ) -> *mut ::std::os::raw::c_void;
2962}
2963unsafe extern "C" {
2964  pub fn xmlMemStrdupLoc(
2965    str_: *const ::std::os::raw::c_char,
2966    file: *const ::std::os::raw::c_char,
2967    line: ::std::os::raw::c_int,
2968  ) -> *mut ::std::os::raw::c_char;
2969}
2970#[repr(C)]
2971#[derive(Debug, Copy, Clone)]
2972pub struct _xmlMutex {
2973  _unused: [u8; 0],
2974}
2975pub type xmlMutex = _xmlMutex;
2976pub type xmlMutexPtr = *mut xmlMutex;
2977#[repr(C)]
2978#[derive(Debug, Copy, Clone)]
2979pub struct _xmlRMutex {
2980  _unused: [u8; 0],
2981}
2982pub type xmlRMutex = _xmlRMutex;
2983pub type xmlRMutexPtr = *mut xmlRMutex;
2984#[repr(C)]
2985#[derive(Debug, Copy, Clone)]
2986pub struct _xmlHashTable {
2987  _unused: [u8; 0],
2988}
2989pub type xmlHashTable = _xmlHashTable;
2990pub type xmlHashTablePtr = *mut xmlHashTable;
2991#[doc = " xmlHashDeallocator:\n @payload:  the data in the hash\n @name:  the name associated\n\n Callback to free data from a hash."]
2992pub type xmlHashDeallocator = ::std::option::Option<
2993  unsafe extern "C" fn(payload: *mut ::std::os::raw::c_void, name: *const xmlChar),
2994>;
2995#[doc = " xmlHashCopier:\n @payload:  the data in the hash\n @name:  the name associated\n\n Callback to copy data from a hash.\n\n Returns a copy of the data or NULL in case of error."]
2996pub type xmlHashCopier = ::std::option::Option<
2997  unsafe extern "C" fn(
2998    payload: *mut ::std::os::raw::c_void,
2999    name: *const xmlChar,
3000  ) -> *mut ::std::os::raw::c_void,
3001>;
3002#[doc = " xmlHashScanner:\n @payload:  the data in the hash\n @data:  extra scanner data\n @name:  the name associated\n\n Callback when scanning data in a hash with the simple scanner."]
3003pub type xmlHashScanner = ::std::option::Option<
3004  unsafe extern "C" fn(
3005    payload: *mut ::std::os::raw::c_void,
3006    data: *mut ::std::os::raw::c_void,
3007    name: *const xmlChar,
3008  ),
3009>;
3010#[doc = " xmlHashScannerFull:\n @payload:  the data in the hash\n @data:  extra scanner data\n @name:  the name associated\n @name2:  the second name associated\n @name3:  the third name associated\n\n Callback when scanning data in a hash with the full scanner."]
3011pub type xmlHashScannerFull = ::std::option::Option<
3012  unsafe extern "C" fn(
3013    payload: *mut ::std::os::raw::c_void,
3014    data: *mut ::std::os::raw::c_void,
3015    name: *const xmlChar,
3016    name2: *const xmlChar,
3017    name3: *const xmlChar,
3018  ),
3019>;
3020unsafe extern "C" {
3021  pub fn xmlHashCreate(size: ::std::os::raw::c_int) -> xmlHashTablePtr;
3022}
3023unsafe extern "C" {
3024  pub fn xmlHashCreateDict(size: ::std::os::raw::c_int, dict: xmlDictPtr) -> xmlHashTablePtr;
3025}
3026unsafe extern "C" {
3027  pub fn xmlHashFree(table: xmlHashTablePtr, f: xmlHashDeallocator);
3028}
3029unsafe extern "C" {
3030  pub fn xmlHashDefaultDeallocator(entry: *mut ::std::os::raw::c_void, name: *const xmlChar);
3031}
3032unsafe extern "C" {
3033  pub fn xmlHashAddEntry(
3034    table: xmlHashTablePtr,
3035    name: *const xmlChar,
3036    userdata: *mut ::std::os::raw::c_void,
3037  ) -> ::std::os::raw::c_int;
3038}
3039unsafe extern "C" {
3040  pub fn xmlHashUpdateEntry(
3041    table: xmlHashTablePtr,
3042    name: *const xmlChar,
3043    userdata: *mut ::std::os::raw::c_void,
3044    f: xmlHashDeallocator,
3045  ) -> ::std::os::raw::c_int;
3046}
3047unsafe extern "C" {
3048  pub fn xmlHashAddEntry2(
3049    table: xmlHashTablePtr,
3050    name: *const xmlChar,
3051    name2: *const xmlChar,
3052    userdata: *mut ::std::os::raw::c_void,
3053  ) -> ::std::os::raw::c_int;
3054}
3055unsafe extern "C" {
3056  pub fn xmlHashUpdateEntry2(
3057    table: xmlHashTablePtr,
3058    name: *const xmlChar,
3059    name2: *const xmlChar,
3060    userdata: *mut ::std::os::raw::c_void,
3061    f: xmlHashDeallocator,
3062  ) -> ::std::os::raw::c_int;
3063}
3064unsafe extern "C" {
3065  pub fn xmlHashAddEntry3(
3066    table: xmlHashTablePtr,
3067    name: *const xmlChar,
3068    name2: *const xmlChar,
3069    name3: *const xmlChar,
3070    userdata: *mut ::std::os::raw::c_void,
3071  ) -> ::std::os::raw::c_int;
3072}
3073unsafe extern "C" {
3074  pub fn xmlHashUpdateEntry3(
3075    table: xmlHashTablePtr,
3076    name: *const xmlChar,
3077    name2: *const xmlChar,
3078    name3: *const xmlChar,
3079    userdata: *mut ::std::os::raw::c_void,
3080    f: xmlHashDeallocator,
3081  ) -> ::std::os::raw::c_int;
3082}
3083unsafe extern "C" {
3084  pub fn xmlHashRemoveEntry(
3085    table: xmlHashTablePtr,
3086    name: *const xmlChar,
3087    f: xmlHashDeallocator,
3088  ) -> ::std::os::raw::c_int;
3089}
3090unsafe extern "C" {
3091  pub fn xmlHashRemoveEntry2(
3092    table: xmlHashTablePtr,
3093    name: *const xmlChar,
3094    name2: *const xmlChar,
3095    f: xmlHashDeallocator,
3096  ) -> ::std::os::raw::c_int;
3097}
3098unsafe extern "C" {
3099  pub fn xmlHashRemoveEntry3(
3100    table: xmlHashTablePtr,
3101    name: *const xmlChar,
3102    name2: *const xmlChar,
3103    name3: *const xmlChar,
3104    f: xmlHashDeallocator,
3105  ) -> ::std::os::raw::c_int;
3106}
3107unsafe extern "C" {
3108  pub fn xmlHashLookup(table: xmlHashTablePtr, name: *const xmlChar)
3109  -> *mut ::std::os::raw::c_void;
3110}
3111unsafe extern "C" {
3112  pub fn xmlHashLookup2(
3113    table: xmlHashTablePtr,
3114    name: *const xmlChar,
3115    name2: *const xmlChar,
3116  ) -> *mut ::std::os::raw::c_void;
3117}
3118unsafe extern "C" {
3119  pub fn xmlHashLookup3(
3120    table: xmlHashTablePtr,
3121    name: *const xmlChar,
3122    name2: *const xmlChar,
3123    name3: *const xmlChar,
3124  ) -> *mut ::std::os::raw::c_void;
3125}
3126unsafe extern "C" {
3127  pub fn xmlHashQLookup(
3128    table: xmlHashTablePtr,
3129    name: *const xmlChar,
3130    prefix: *const xmlChar,
3131  ) -> *mut ::std::os::raw::c_void;
3132}
3133unsafe extern "C" {
3134  pub fn xmlHashQLookup2(
3135    table: xmlHashTablePtr,
3136    name: *const xmlChar,
3137    prefix: *const xmlChar,
3138    name2: *const xmlChar,
3139    prefix2: *const xmlChar,
3140  ) -> *mut ::std::os::raw::c_void;
3141}
3142unsafe extern "C" {
3143  pub fn xmlHashQLookup3(
3144    table: xmlHashTablePtr,
3145    name: *const xmlChar,
3146    prefix: *const xmlChar,
3147    name2: *const xmlChar,
3148    prefix2: *const xmlChar,
3149    name3: *const xmlChar,
3150    prefix3: *const xmlChar,
3151  ) -> *mut ::std::os::raw::c_void;
3152}
3153unsafe extern "C" {
3154  pub fn xmlHashCopy(table: xmlHashTablePtr, f: xmlHashCopier) -> xmlHashTablePtr;
3155}
3156unsafe extern "C" {
3157  pub fn xmlHashSize(table: xmlHashTablePtr) -> ::std::os::raw::c_int;
3158}
3159unsafe extern "C" {
3160  pub fn xmlHashScan(table: xmlHashTablePtr, f: xmlHashScanner, data: *mut ::std::os::raw::c_void);
3161}
3162unsafe extern "C" {
3163  pub fn xmlHashScan3(
3164    table: xmlHashTablePtr,
3165    name: *const xmlChar,
3166    name2: *const xmlChar,
3167    name3: *const xmlChar,
3168    f: xmlHashScanner,
3169    data: *mut ::std::os::raw::c_void,
3170  );
3171}
3172unsafe extern "C" {
3173  pub fn xmlHashScanFull(
3174    table: xmlHashTablePtr,
3175    f: xmlHashScannerFull,
3176    data: *mut ::std::os::raw::c_void,
3177  );
3178}
3179unsafe extern "C" {
3180  pub fn xmlHashScanFull3(
3181    table: xmlHashTablePtr,
3182    name: *const xmlChar,
3183    name2: *const xmlChar,
3184    name3: *const xmlChar,
3185    f: xmlHashScannerFull,
3186    data: *mut ::std::os::raw::c_void,
3187  );
3188}
3189pub const xmlErrorLevel_XML_ERR_NONE: xmlErrorLevel = 0;
3190pub const xmlErrorLevel_XML_ERR_WARNING: xmlErrorLevel = 1;
3191pub const xmlErrorLevel_XML_ERR_ERROR: xmlErrorLevel = 2;
3192pub const xmlErrorLevel_XML_ERR_FATAL: xmlErrorLevel = 3;
3193#[doc = " xmlErrorLevel:\n\n Indicates the level of an error"]
3194pub type xmlErrorLevel = ::std::os::raw::c_uint;
3195pub const xmlErrorDomain_XML_FROM_NONE: xmlErrorDomain = 0;
3196pub const xmlErrorDomain_XML_FROM_PARSER: xmlErrorDomain = 1;
3197pub const xmlErrorDomain_XML_FROM_TREE: xmlErrorDomain = 2;
3198pub const xmlErrorDomain_XML_FROM_NAMESPACE: xmlErrorDomain = 3;
3199pub const xmlErrorDomain_XML_FROM_DTD: xmlErrorDomain = 4;
3200pub const xmlErrorDomain_XML_FROM_HTML: xmlErrorDomain = 5;
3201pub const xmlErrorDomain_XML_FROM_MEMORY: xmlErrorDomain = 6;
3202pub const xmlErrorDomain_XML_FROM_OUTPUT: xmlErrorDomain = 7;
3203pub const xmlErrorDomain_XML_FROM_IO: xmlErrorDomain = 8;
3204pub const xmlErrorDomain_XML_FROM_FTP: xmlErrorDomain = 9;
3205pub const xmlErrorDomain_XML_FROM_HTTP: xmlErrorDomain = 10;
3206pub const xmlErrorDomain_XML_FROM_XINCLUDE: xmlErrorDomain = 11;
3207pub const xmlErrorDomain_XML_FROM_XPATH: xmlErrorDomain = 12;
3208pub const xmlErrorDomain_XML_FROM_XPOINTER: xmlErrorDomain = 13;
3209pub const xmlErrorDomain_XML_FROM_REGEXP: xmlErrorDomain = 14;
3210pub const xmlErrorDomain_XML_FROM_DATATYPE: xmlErrorDomain = 15;
3211pub const xmlErrorDomain_XML_FROM_SCHEMASP: xmlErrorDomain = 16;
3212pub const xmlErrorDomain_XML_FROM_SCHEMASV: xmlErrorDomain = 17;
3213pub const xmlErrorDomain_XML_FROM_RELAXNGP: xmlErrorDomain = 18;
3214pub const xmlErrorDomain_XML_FROM_RELAXNGV: xmlErrorDomain = 19;
3215pub const xmlErrorDomain_XML_FROM_CATALOG: xmlErrorDomain = 20;
3216pub const xmlErrorDomain_XML_FROM_C14N: xmlErrorDomain = 21;
3217pub const xmlErrorDomain_XML_FROM_XSLT: xmlErrorDomain = 22;
3218pub const xmlErrorDomain_XML_FROM_VALID: xmlErrorDomain = 23;
3219pub const xmlErrorDomain_XML_FROM_CHECK: xmlErrorDomain = 24;
3220pub const xmlErrorDomain_XML_FROM_WRITER: xmlErrorDomain = 25;
3221pub const xmlErrorDomain_XML_FROM_MODULE: xmlErrorDomain = 26;
3222pub const xmlErrorDomain_XML_FROM_I18N: xmlErrorDomain = 27;
3223pub const xmlErrorDomain_XML_FROM_SCHEMATRONV: xmlErrorDomain = 28;
3224pub const xmlErrorDomain_XML_FROM_BUFFER: xmlErrorDomain = 29;
3225pub const xmlErrorDomain_XML_FROM_URI: xmlErrorDomain = 30;
3226#[doc = " xmlErrorDomain:\n\n Indicates where an error may have come from"]
3227pub type xmlErrorDomain = ::std::os::raw::c_uint;
3228#[doc = " xmlError:\n\n An XML Error instance."]
3229pub type xmlError = _xmlError;
3230pub type xmlErrorPtr = *mut xmlError;
3231#[repr(C)]
3232#[derive(Debug, Copy, Clone)]
3233pub struct _xmlError {
3234  pub domain: ::std::os::raw::c_int,
3235  pub code: ::std::os::raw::c_int,
3236  pub message: *mut ::std::os::raw::c_char,
3237  pub level: xmlErrorLevel,
3238  pub file: *mut ::std::os::raw::c_char,
3239  pub line: ::std::os::raw::c_int,
3240  pub str1: *mut ::std::os::raw::c_char,
3241  pub str2: *mut ::std::os::raw::c_char,
3242  pub str3: *mut ::std::os::raw::c_char,
3243  pub int1: ::std::os::raw::c_int,
3244  pub int2: ::std::os::raw::c_int,
3245  pub ctxt: *mut ::std::os::raw::c_void,
3246  pub node: *mut ::std::os::raw::c_void,
3247}
3248#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3249const _: () = {
3250  ["Size of _xmlError"][::std::mem::size_of::<_xmlError>() - 88usize];
3251  ["Alignment of _xmlError"][::std::mem::align_of::<_xmlError>() - 8usize];
3252  ["Offset of field: _xmlError::domain"][::std::mem::offset_of!(_xmlError, domain) - 0usize];
3253  ["Offset of field: _xmlError::code"][::std::mem::offset_of!(_xmlError, code) - 4usize];
3254  ["Offset of field: _xmlError::message"][::std::mem::offset_of!(_xmlError, message) - 8usize];
3255  ["Offset of field: _xmlError::level"][::std::mem::offset_of!(_xmlError, level) - 16usize];
3256  ["Offset of field: _xmlError::file"][::std::mem::offset_of!(_xmlError, file) - 24usize];
3257  ["Offset of field: _xmlError::line"][::std::mem::offset_of!(_xmlError, line) - 32usize];
3258  ["Offset of field: _xmlError::str1"][::std::mem::offset_of!(_xmlError, str1) - 40usize];
3259  ["Offset of field: _xmlError::str2"][::std::mem::offset_of!(_xmlError, str2) - 48usize];
3260  ["Offset of field: _xmlError::str3"][::std::mem::offset_of!(_xmlError, str3) - 56usize];
3261  ["Offset of field: _xmlError::int1"][::std::mem::offset_of!(_xmlError, int1) - 64usize];
3262  ["Offset of field: _xmlError::int2"][::std::mem::offset_of!(_xmlError, int2) - 68usize];
3263  ["Offset of field: _xmlError::ctxt"][::std::mem::offset_of!(_xmlError, ctxt) - 72usize];
3264  ["Offset of field: _xmlError::node"][::std::mem::offset_of!(_xmlError, node) - 80usize];
3265};
3266pub const xmlParserErrors_XML_ERR_OK: xmlParserErrors = 0;
3267pub const xmlParserErrors_XML_ERR_INTERNAL_ERROR: xmlParserErrors = 1;
3268pub const xmlParserErrors_XML_ERR_NO_MEMORY: xmlParserErrors = 2;
3269pub const xmlParserErrors_XML_ERR_DOCUMENT_START: xmlParserErrors = 3;
3270pub const xmlParserErrors_XML_ERR_DOCUMENT_EMPTY: xmlParserErrors = 4;
3271pub const xmlParserErrors_XML_ERR_DOCUMENT_END: xmlParserErrors = 5;
3272pub const xmlParserErrors_XML_ERR_INVALID_HEX_CHARREF: xmlParserErrors = 6;
3273pub const xmlParserErrors_XML_ERR_INVALID_DEC_CHARREF: xmlParserErrors = 7;
3274pub const xmlParserErrors_XML_ERR_INVALID_CHARREF: xmlParserErrors = 8;
3275pub const xmlParserErrors_XML_ERR_INVALID_CHAR: xmlParserErrors = 9;
3276pub const xmlParserErrors_XML_ERR_CHARREF_AT_EOF: xmlParserErrors = 10;
3277pub const xmlParserErrors_XML_ERR_CHARREF_IN_PROLOG: xmlParserErrors = 11;
3278pub const xmlParserErrors_XML_ERR_CHARREF_IN_EPILOG: xmlParserErrors = 12;
3279pub const xmlParserErrors_XML_ERR_CHARREF_IN_DTD: xmlParserErrors = 13;
3280pub const xmlParserErrors_XML_ERR_ENTITYREF_AT_EOF: xmlParserErrors = 14;
3281pub const xmlParserErrors_XML_ERR_ENTITYREF_IN_PROLOG: xmlParserErrors = 15;
3282pub const xmlParserErrors_XML_ERR_ENTITYREF_IN_EPILOG: xmlParserErrors = 16;
3283pub const xmlParserErrors_XML_ERR_ENTITYREF_IN_DTD: xmlParserErrors = 17;
3284pub const xmlParserErrors_XML_ERR_PEREF_AT_EOF: xmlParserErrors = 18;
3285pub const xmlParserErrors_XML_ERR_PEREF_IN_PROLOG: xmlParserErrors = 19;
3286pub const xmlParserErrors_XML_ERR_PEREF_IN_EPILOG: xmlParserErrors = 20;
3287pub const xmlParserErrors_XML_ERR_PEREF_IN_INT_SUBSET: xmlParserErrors = 21;
3288pub const xmlParserErrors_XML_ERR_ENTITYREF_NO_NAME: xmlParserErrors = 22;
3289pub const xmlParserErrors_XML_ERR_ENTITYREF_SEMICOL_MISSING: xmlParserErrors = 23;
3290pub const xmlParserErrors_XML_ERR_PEREF_NO_NAME: xmlParserErrors = 24;
3291pub const xmlParserErrors_XML_ERR_PEREF_SEMICOL_MISSING: xmlParserErrors = 25;
3292pub const xmlParserErrors_XML_ERR_UNDECLARED_ENTITY: xmlParserErrors = 26;
3293pub const xmlParserErrors_XML_WAR_UNDECLARED_ENTITY: xmlParserErrors = 27;
3294pub const xmlParserErrors_XML_ERR_UNPARSED_ENTITY: xmlParserErrors = 28;
3295pub const xmlParserErrors_XML_ERR_ENTITY_IS_EXTERNAL: xmlParserErrors = 29;
3296pub const xmlParserErrors_XML_ERR_ENTITY_IS_PARAMETER: xmlParserErrors = 30;
3297pub const xmlParserErrors_XML_ERR_UNKNOWN_ENCODING: xmlParserErrors = 31;
3298pub const xmlParserErrors_XML_ERR_UNSUPPORTED_ENCODING: xmlParserErrors = 32;
3299pub const xmlParserErrors_XML_ERR_STRING_NOT_STARTED: xmlParserErrors = 33;
3300pub const xmlParserErrors_XML_ERR_STRING_NOT_CLOSED: xmlParserErrors = 34;
3301pub const xmlParserErrors_XML_ERR_NS_DECL_ERROR: xmlParserErrors = 35;
3302pub const xmlParserErrors_XML_ERR_ENTITY_NOT_STARTED: xmlParserErrors = 36;
3303pub const xmlParserErrors_XML_ERR_ENTITY_NOT_FINISHED: xmlParserErrors = 37;
3304pub const xmlParserErrors_XML_ERR_LT_IN_ATTRIBUTE: xmlParserErrors = 38;
3305pub const xmlParserErrors_XML_ERR_ATTRIBUTE_NOT_STARTED: xmlParserErrors = 39;
3306pub const xmlParserErrors_XML_ERR_ATTRIBUTE_NOT_FINISHED: xmlParserErrors = 40;
3307pub const xmlParserErrors_XML_ERR_ATTRIBUTE_WITHOUT_VALUE: xmlParserErrors = 41;
3308pub const xmlParserErrors_XML_ERR_ATTRIBUTE_REDEFINED: xmlParserErrors = 42;
3309pub const xmlParserErrors_XML_ERR_LITERAL_NOT_STARTED: xmlParserErrors = 43;
3310pub const xmlParserErrors_XML_ERR_LITERAL_NOT_FINISHED: xmlParserErrors = 44;
3311pub const xmlParserErrors_XML_ERR_COMMENT_NOT_FINISHED: xmlParserErrors = 45;
3312pub const xmlParserErrors_XML_ERR_PI_NOT_STARTED: xmlParserErrors = 46;
3313pub const xmlParserErrors_XML_ERR_PI_NOT_FINISHED: xmlParserErrors = 47;
3314pub const xmlParserErrors_XML_ERR_NOTATION_NOT_STARTED: xmlParserErrors = 48;
3315pub const xmlParserErrors_XML_ERR_NOTATION_NOT_FINISHED: xmlParserErrors = 49;
3316pub const xmlParserErrors_XML_ERR_ATTLIST_NOT_STARTED: xmlParserErrors = 50;
3317pub const xmlParserErrors_XML_ERR_ATTLIST_NOT_FINISHED: xmlParserErrors = 51;
3318pub const xmlParserErrors_XML_ERR_MIXED_NOT_STARTED: xmlParserErrors = 52;
3319pub const xmlParserErrors_XML_ERR_MIXED_NOT_FINISHED: xmlParserErrors = 53;
3320pub const xmlParserErrors_XML_ERR_ELEMCONTENT_NOT_STARTED: xmlParserErrors = 54;
3321pub const xmlParserErrors_XML_ERR_ELEMCONTENT_NOT_FINISHED: xmlParserErrors = 55;
3322pub const xmlParserErrors_XML_ERR_XMLDECL_NOT_STARTED: xmlParserErrors = 56;
3323pub const xmlParserErrors_XML_ERR_XMLDECL_NOT_FINISHED: xmlParserErrors = 57;
3324pub const xmlParserErrors_XML_ERR_CONDSEC_NOT_STARTED: xmlParserErrors = 58;
3325pub const xmlParserErrors_XML_ERR_CONDSEC_NOT_FINISHED: xmlParserErrors = 59;
3326pub const xmlParserErrors_XML_ERR_EXT_SUBSET_NOT_FINISHED: xmlParserErrors = 60;
3327pub const xmlParserErrors_XML_ERR_DOCTYPE_NOT_FINISHED: xmlParserErrors = 61;
3328pub const xmlParserErrors_XML_ERR_MISPLACED_CDATA_END: xmlParserErrors = 62;
3329pub const xmlParserErrors_XML_ERR_CDATA_NOT_FINISHED: xmlParserErrors = 63;
3330pub const xmlParserErrors_XML_ERR_RESERVED_XML_NAME: xmlParserErrors = 64;
3331pub const xmlParserErrors_XML_ERR_SPACE_REQUIRED: xmlParserErrors = 65;
3332pub const xmlParserErrors_XML_ERR_SEPARATOR_REQUIRED: xmlParserErrors = 66;
3333pub const xmlParserErrors_XML_ERR_NMTOKEN_REQUIRED: xmlParserErrors = 67;
3334pub const xmlParserErrors_XML_ERR_NAME_REQUIRED: xmlParserErrors = 68;
3335pub const xmlParserErrors_XML_ERR_PCDATA_REQUIRED: xmlParserErrors = 69;
3336pub const xmlParserErrors_XML_ERR_URI_REQUIRED: xmlParserErrors = 70;
3337pub const xmlParserErrors_XML_ERR_PUBID_REQUIRED: xmlParserErrors = 71;
3338pub const xmlParserErrors_XML_ERR_LT_REQUIRED: xmlParserErrors = 72;
3339pub const xmlParserErrors_XML_ERR_GT_REQUIRED: xmlParserErrors = 73;
3340pub const xmlParserErrors_XML_ERR_LTSLASH_REQUIRED: xmlParserErrors = 74;
3341pub const xmlParserErrors_XML_ERR_EQUAL_REQUIRED: xmlParserErrors = 75;
3342pub const xmlParserErrors_XML_ERR_TAG_NAME_MISMATCH: xmlParserErrors = 76;
3343pub const xmlParserErrors_XML_ERR_TAG_NOT_FINISHED: xmlParserErrors = 77;
3344pub const xmlParserErrors_XML_ERR_STANDALONE_VALUE: xmlParserErrors = 78;
3345pub const xmlParserErrors_XML_ERR_ENCODING_NAME: xmlParserErrors = 79;
3346pub const xmlParserErrors_XML_ERR_HYPHEN_IN_COMMENT: xmlParserErrors = 80;
3347pub const xmlParserErrors_XML_ERR_INVALID_ENCODING: xmlParserErrors = 81;
3348pub const xmlParserErrors_XML_ERR_EXT_ENTITY_STANDALONE: xmlParserErrors = 82;
3349pub const xmlParserErrors_XML_ERR_CONDSEC_INVALID: xmlParserErrors = 83;
3350pub const xmlParserErrors_XML_ERR_VALUE_REQUIRED: xmlParserErrors = 84;
3351pub const xmlParserErrors_XML_ERR_NOT_WELL_BALANCED: xmlParserErrors = 85;
3352pub const xmlParserErrors_XML_ERR_EXTRA_CONTENT: xmlParserErrors = 86;
3353pub const xmlParserErrors_XML_ERR_ENTITY_CHAR_ERROR: xmlParserErrors = 87;
3354pub const xmlParserErrors_XML_ERR_ENTITY_PE_INTERNAL: xmlParserErrors = 88;
3355pub const xmlParserErrors_XML_ERR_ENTITY_LOOP: xmlParserErrors = 89;
3356pub const xmlParserErrors_XML_ERR_ENTITY_BOUNDARY: xmlParserErrors = 90;
3357pub const xmlParserErrors_XML_ERR_INVALID_URI: xmlParserErrors = 91;
3358pub const xmlParserErrors_XML_ERR_URI_FRAGMENT: xmlParserErrors = 92;
3359pub const xmlParserErrors_XML_WAR_CATALOG_PI: xmlParserErrors = 93;
3360pub const xmlParserErrors_XML_ERR_NO_DTD: xmlParserErrors = 94;
3361pub const xmlParserErrors_XML_ERR_CONDSEC_INVALID_KEYWORD: xmlParserErrors = 95;
3362pub const xmlParserErrors_XML_ERR_VERSION_MISSING: xmlParserErrors = 96;
3363pub const xmlParserErrors_XML_WAR_UNKNOWN_VERSION: xmlParserErrors = 97;
3364pub const xmlParserErrors_XML_WAR_LANG_VALUE: xmlParserErrors = 98;
3365pub const xmlParserErrors_XML_WAR_NS_URI: xmlParserErrors = 99;
3366pub const xmlParserErrors_XML_WAR_NS_URI_RELATIVE: xmlParserErrors = 100;
3367pub const xmlParserErrors_XML_ERR_MISSING_ENCODING: xmlParserErrors = 101;
3368pub const xmlParserErrors_XML_WAR_SPACE_VALUE: xmlParserErrors = 102;
3369pub const xmlParserErrors_XML_ERR_NOT_STANDALONE: xmlParserErrors = 103;
3370pub const xmlParserErrors_XML_ERR_ENTITY_PROCESSING: xmlParserErrors = 104;
3371pub const xmlParserErrors_XML_ERR_NOTATION_PROCESSING: xmlParserErrors = 105;
3372pub const xmlParserErrors_XML_WAR_NS_COLUMN: xmlParserErrors = 106;
3373pub const xmlParserErrors_XML_WAR_ENTITY_REDEFINED: xmlParserErrors = 107;
3374pub const xmlParserErrors_XML_ERR_UNKNOWN_VERSION: xmlParserErrors = 108;
3375pub const xmlParserErrors_XML_ERR_VERSION_MISMATCH: xmlParserErrors = 109;
3376pub const xmlParserErrors_XML_ERR_NAME_TOO_LONG: xmlParserErrors = 110;
3377pub const xmlParserErrors_XML_ERR_USER_STOP: xmlParserErrors = 111;
3378pub const xmlParserErrors_XML_NS_ERR_XML_NAMESPACE: xmlParserErrors = 200;
3379pub const xmlParserErrors_XML_NS_ERR_UNDEFINED_NAMESPACE: xmlParserErrors = 201;
3380pub const xmlParserErrors_XML_NS_ERR_QNAME: xmlParserErrors = 202;
3381pub const xmlParserErrors_XML_NS_ERR_ATTRIBUTE_REDEFINED: xmlParserErrors = 203;
3382pub const xmlParserErrors_XML_NS_ERR_EMPTY: xmlParserErrors = 204;
3383pub const xmlParserErrors_XML_NS_ERR_COLON: xmlParserErrors = 205;
3384pub const xmlParserErrors_XML_DTD_ATTRIBUTE_DEFAULT: xmlParserErrors = 500;
3385pub const xmlParserErrors_XML_DTD_ATTRIBUTE_REDEFINED: xmlParserErrors = 501;
3386pub const xmlParserErrors_XML_DTD_ATTRIBUTE_VALUE: xmlParserErrors = 502;
3387pub const xmlParserErrors_XML_DTD_CONTENT_ERROR: xmlParserErrors = 503;
3388pub const xmlParserErrors_XML_DTD_CONTENT_MODEL: xmlParserErrors = 504;
3389pub const xmlParserErrors_XML_DTD_CONTENT_NOT_DETERMINIST: xmlParserErrors = 505;
3390pub const xmlParserErrors_XML_DTD_DIFFERENT_PREFIX: xmlParserErrors = 506;
3391pub const xmlParserErrors_XML_DTD_ELEM_DEFAULT_NAMESPACE: xmlParserErrors = 507;
3392pub const xmlParserErrors_XML_DTD_ELEM_NAMESPACE: xmlParserErrors = 508;
3393pub const xmlParserErrors_XML_DTD_ELEM_REDEFINED: xmlParserErrors = 509;
3394pub const xmlParserErrors_XML_DTD_EMPTY_NOTATION: xmlParserErrors = 510;
3395pub const xmlParserErrors_XML_DTD_ENTITY_TYPE: xmlParserErrors = 511;
3396pub const xmlParserErrors_XML_DTD_ID_FIXED: xmlParserErrors = 512;
3397pub const xmlParserErrors_XML_DTD_ID_REDEFINED: xmlParserErrors = 513;
3398pub const xmlParserErrors_XML_DTD_ID_SUBSET: xmlParserErrors = 514;
3399pub const xmlParserErrors_XML_DTD_INVALID_CHILD: xmlParserErrors = 515;
3400pub const xmlParserErrors_XML_DTD_INVALID_DEFAULT: xmlParserErrors = 516;
3401pub const xmlParserErrors_XML_DTD_LOAD_ERROR: xmlParserErrors = 517;
3402pub const xmlParserErrors_XML_DTD_MISSING_ATTRIBUTE: xmlParserErrors = 518;
3403pub const xmlParserErrors_XML_DTD_MIXED_CORRUPT: xmlParserErrors = 519;
3404pub const xmlParserErrors_XML_DTD_MULTIPLE_ID: xmlParserErrors = 520;
3405pub const xmlParserErrors_XML_DTD_NO_DOC: xmlParserErrors = 521;
3406pub const xmlParserErrors_XML_DTD_NO_DTD: xmlParserErrors = 522;
3407pub const xmlParserErrors_XML_DTD_NO_ELEM_NAME: xmlParserErrors = 523;
3408pub const xmlParserErrors_XML_DTD_NO_PREFIX: xmlParserErrors = 524;
3409pub const xmlParserErrors_XML_DTD_NO_ROOT: xmlParserErrors = 525;
3410pub const xmlParserErrors_XML_DTD_NOTATION_REDEFINED: xmlParserErrors = 526;
3411pub const xmlParserErrors_XML_DTD_NOTATION_VALUE: xmlParserErrors = 527;
3412pub const xmlParserErrors_XML_DTD_NOT_EMPTY: xmlParserErrors = 528;
3413pub const xmlParserErrors_XML_DTD_NOT_PCDATA: xmlParserErrors = 529;
3414pub const xmlParserErrors_XML_DTD_NOT_STANDALONE: xmlParserErrors = 530;
3415pub const xmlParserErrors_XML_DTD_ROOT_NAME: xmlParserErrors = 531;
3416pub const xmlParserErrors_XML_DTD_STANDALONE_WHITE_SPACE: xmlParserErrors = 532;
3417pub const xmlParserErrors_XML_DTD_UNKNOWN_ATTRIBUTE: xmlParserErrors = 533;
3418pub const xmlParserErrors_XML_DTD_UNKNOWN_ELEM: xmlParserErrors = 534;
3419pub const xmlParserErrors_XML_DTD_UNKNOWN_ENTITY: xmlParserErrors = 535;
3420pub const xmlParserErrors_XML_DTD_UNKNOWN_ID: xmlParserErrors = 536;
3421pub const xmlParserErrors_XML_DTD_UNKNOWN_NOTATION: xmlParserErrors = 537;
3422pub const xmlParserErrors_XML_DTD_STANDALONE_DEFAULTED: xmlParserErrors = 538;
3423pub const xmlParserErrors_XML_DTD_XMLID_VALUE: xmlParserErrors = 539;
3424pub const xmlParserErrors_XML_DTD_XMLID_TYPE: xmlParserErrors = 540;
3425pub const xmlParserErrors_XML_DTD_DUP_TOKEN: xmlParserErrors = 541;
3426pub const xmlParserErrors_XML_HTML_STRUCURE_ERROR: xmlParserErrors = 800;
3427pub const xmlParserErrors_XML_HTML_UNKNOWN_TAG: xmlParserErrors = 801;
3428pub const xmlParserErrors_XML_RNGP_ANYNAME_ATTR_ANCESTOR: xmlParserErrors = 1000;
3429pub const xmlParserErrors_XML_RNGP_ATTR_CONFLICT: xmlParserErrors = 1001;
3430pub const xmlParserErrors_XML_RNGP_ATTRIBUTE_CHILDREN: xmlParserErrors = 1002;
3431pub const xmlParserErrors_XML_RNGP_ATTRIBUTE_CONTENT: xmlParserErrors = 1003;
3432pub const xmlParserErrors_XML_RNGP_ATTRIBUTE_EMPTY: xmlParserErrors = 1004;
3433pub const xmlParserErrors_XML_RNGP_ATTRIBUTE_NOOP: xmlParserErrors = 1005;
3434pub const xmlParserErrors_XML_RNGP_CHOICE_CONTENT: xmlParserErrors = 1006;
3435pub const xmlParserErrors_XML_RNGP_CHOICE_EMPTY: xmlParserErrors = 1007;
3436pub const xmlParserErrors_XML_RNGP_CREATE_FAILURE: xmlParserErrors = 1008;
3437pub const xmlParserErrors_XML_RNGP_DATA_CONTENT: xmlParserErrors = 1009;
3438pub const xmlParserErrors_XML_RNGP_DEF_CHOICE_AND_INTERLEAVE: xmlParserErrors = 1010;
3439pub const xmlParserErrors_XML_RNGP_DEFINE_CREATE_FAILED: xmlParserErrors = 1011;
3440pub const xmlParserErrors_XML_RNGP_DEFINE_EMPTY: xmlParserErrors = 1012;
3441pub const xmlParserErrors_XML_RNGP_DEFINE_MISSING: xmlParserErrors = 1013;
3442pub const xmlParserErrors_XML_RNGP_DEFINE_NAME_MISSING: xmlParserErrors = 1014;
3443pub const xmlParserErrors_XML_RNGP_ELEM_CONTENT_EMPTY: xmlParserErrors = 1015;
3444pub const xmlParserErrors_XML_RNGP_ELEM_CONTENT_ERROR: xmlParserErrors = 1016;
3445pub const xmlParserErrors_XML_RNGP_ELEMENT_EMPTY: xmlParserErrors = 1017;
3446pub const xmlParserErrors_XML_RNGP_ELEMENT_CONTENT: xmlParserErrors = 1018;
3447pub const xmlParserErrors_XML_RNGP_ELEMENT_NAME: xmlParserErrors = 1019;
3448pub const xmlParserErrors_XML_RNGP_ELEMENT_NO_CONTENT: xmlParserErrors = 1020;
3449pub const xmlParserErrors_XML_RNGP_ELEM_TEXT_CONFLICT: xmlParserErrors = 1021;
3450pub const xmlParserErrors_XML_RNGP_EMPTY: xmlParserErrors = 1022;
3451pub const xmlParserErrors_XML_RNGP_EMPTY_CONSTRUCT: xmlParserErrors = 1023;
3452pub const xmlParserErrors_XML_RNGP_EMPTY_CONTENT: xmlParserErrors = 1024;
3453pub const xmlParserErrors_XML_RNGP_EMPTY_NOT_EMPTY: xmlParserErrors = 1025;
3454pub const xmlParserErrors_XML_RNGP_ERROR_TYPE_LIB: xmlParserErrors = 1026;
3455pub const xmlParserErrors_XML_RNGP_EXCEPT_EMPTY: xmlParserErrors = 1027;
3456pub const xmlParserErrors_XML_RNGP_EXCEPT_MISSING: xmlParserErrors = 1028;
3457pub const xmlParserErrors_XML_RNGP_EXCEPT_MULTIPLE: xmlParserErrors = 1029;
3458pub const xmlParserErrors_XML_RNGP_EXCEPT_NO_CONTENT: xmlParserErrors = 1030;
3459pub const xmlParserErrors_XML_RNGP_EXTERNALREF_EMTPY: xmlParserErrors = 1031;
3460pub const xmlParserErrors_XML_RNGP_EXTERNAL_REF_FAILURE: xmlParserErrors = 1032;
3461pub const xmlParserErrors_XML_RNGP_EXTERNALREF_RECURSE: xmlParserErrors = 1033;
3462pub const xmlParserErrors_XML_RNGP_FORBIDDEN_ATTRIBUTE: xmlParserErrors = 1034;
3463pub const xmlParserErrors_XML_RNGP_FOREIGN_ELEMENT: xmlParserErrors = 1035;
3464pub const xmlParserErrors_XML_RNGP_GRAMMAR_CONTENT: xmlParserErrors = 1036;
3465pub const xmlParserErrors_XML_RNGP_GRAMMAR_EMPTY: xmlParserErrors = 1037;
3466pub const xmlParserErrors_XML_RNGP_GRAMMAR_MISSING: xmlParserErrors = 1038;
3467pub const xmlParserErrors_XML_RNGP_GRAMMAR_NO_START: xmlParserErrors = 1039;
3468pub const xmlParserErrors_XML_RNGP_GROUP_ATTR_CONFLICT: xmlParserErrors = 1040;
3469pub const xmlParserErrors_XML_RNGP_HREF_ERROR: xmlParserErrors = 1041;
3470pub const xmlParserErrors_XML_RNGP_INCLUDE_EMPTY: xmlParserErrors = 1042;
3471pub const xmlParserErrors_XML_RNGP_INCLUDE_FAILURE: xmlParserErrors = 1043;
3472pub const xmlParserErrors_XML_RNGP_INCLUDE_RECURSE: xmlParserErrors = 1044;
3473pub const xmlParserErrors_XML_RNGP_INTERLEAVE_ADD: xmlParserErrors = 1045;
3474pub const xmlParserErrors_XML_RNGP_INTERLEAVE_CREATE_FAILED: xmlParserErrors = 1046;
3475pub const xmlParserErrors_XML_RNGP_INTERLEAVE_EMPTY: xmlParserErrors = 1047;
3476pub const xmlParserErrors_XML_RNGP_INTERLEAVE_NO_CONTENT: xmlParserErrors = 1048;
3477pub const xmlParserErrors_XML_RNGP_INVALID_DEFINE_NAME: xmlParserErrors = 1049;
3478pub const xmlParserErrors_XML_RNGP_INVALID_URI: xmlParserErrors = 1050;
3479pub const xmlParserErrors_XML_RNGP_INVALID_VALUE: xmlParserErrors = 1051;
3480pub const xmlParserErrors_XML_RNGP_MISSING_HREF: xmlParserErrors = 1052;
3481pub const xmlParserErrors_XML_RNGP_NAME_MISSING: xmlParserErrors = 1053;
3482pub const xmlParserErrors_XML_RNGP_NEED_COMBINE: xmlParserErrors = 1054;
3483pub const xmlParserErrors_XML_RNGP_NOTALLOWED_NOT_EMPTY: xmlParserErrors = 1055;
3484pub const xmlParserErrors_XML_RNGP_NSNAME_ATTR_ANCESTOR: xmlParserErrors = 1056;
3485pub const xmlParserErrors_XML_RNGP_NSNAME_NO_NS: xmlParserErrors = 1057;
3486pub const xmlParserErrors_XML_RNGP_PARAM_FORBIDDEN: xmlParserErrors = 1058;
3487pub const xmlParserErrors_XML_RNGP_PARAM_NAME_MISSING: xmlParserErrors = 1059;
3488pub const xmlParserErrors_XML_RNGP_PARENTREF_CREATE_FAILED: xmlParserErrors = 1060;
3489pub const xmlParserErrors_XML_RNGP_PARENTREF_NAME_INVALID: xmlParserErrors = 1061;
3490pub const xmlParserErrors_XML_RNGP_PARENTREF_NO_NAME: xmlParserErrors = 1062;
3491pub const xmlParserErrors_XML_RNGP_PARENTREF_NO_PARENT: xmlParserErrors = 1063;
3492pub const xmlParserErrors_XML_RNGP_PARENTREF_NOT_EMPTY: xmlParserErrors = 1064;
3493pub const xmlParserErrors_XML_RNGP_PARSE_ERROR: xmlParserErrors = 1065;
3494pub const xmlParserErrors_XML_RNGP_PAT_ANYNAME_EXCEPT_ANYNAME: xmlParserErrors = 1066;
3495pub const xmlParserErrors_XML_RNGP_PAT_ATTR_ATTR: xmlParserErrors = 1067;
3496pub const xmlParserErrors_XML_RNGP_PAT_ATTR_ELEM: xmlParserErrors = 1068;
3497pub const xmlParserErrors_XML_RNGP_PAT_DATA_EXCEPT_ATTR: xmlParserErrors = 1069;
3498pub const xmlParserErrors_XML_RNGP_PAT_DATA_EXCEPT_ELEM: xmlParserErrors = 1070;
3499pub const xmlParserErrors_XML_RNGP_PAT_DATA_EXCEPT_EMPTY: xmlParserErrors = 1071;
3500pub const xmlParserErrors_XML_RNGP_PAT_DATA_EXCEPT_GROUP: xmlParserErrors = 1072;
3501pub const xmlParserErrors_XML_RNGP_PAT_DATA_EXCEPT_INTERLEAVE: xmlParserErrors = 1073;
3502pub const xmlParserErrors_XML_RNGP_PAT_DATA_EXCEPT_LIST: xmlParserErrors = 1074;
3503pub const xmlParserErrors_XML_RNGP_PAT_DATA_EXCEPT_ONEMORE: xmlParserErrors = 1075;
3504pub const xmlParserErrors_XML_RNGP_PAT_DATA_EXCEPT_REF: xmlParserErrors = 1076;
3505pub const xmlParserErrors_XML_RNGP_PAT_DATA_EXCEPT_TEXT: xmlParserErrors = 1077;
3506pub const xmlParserErrors_XML_RNGP_PAT_LIST_ATTR: xmlParserErrors = 1078;
3507pub const xmlParserErrors_XML_RNGP_PAT_LIST_ELEM: xmlParserErrors = 1079;
3508pub const xmlParserErrors_XML_RNGP_PAT_LIST_INTERLEAVE: xmlParserErrors = 1080;
3509pub const xmlParserErrors_XML_RNGP_PAT_LIST_LIST: xmlParserErrors = 1081;
3510pub const xmlParserErrors_XML_RNGP_PAT_LIST_REF: xmlParserErrors = 1082;
3511pub const xmlParserErrors_XML_RNGP_PAT_LIST_TEXT: xmlParserErrors = 1083;
3512pub const xmlParserErrors_XML_RNGP_PAT_NSNAME_EXCEPT_ANYNAME: xmlParserErrors = 1084;
3513pub const xmlParserErrors_XML_RNGP_PAT_NSNAME_EXCEPT_NSNAME: xmlParserErrors = 1085;
3514pub const xmlParserErrors_XML_RNGP_PAT_ONEMORE_GROUP_ATTR: xmlParserErrors = 1086;
3515pub const xmlParserErrors_XML_RNGP_PAT_ONEMORE_INTERLEAVE_ATTR: xmlParserErrors = 1087;
3516pub const xmlParserErrors_XML_RNGP_PAT_START_ATTR: xmlParserErrors = 1088;
3517pub const xmlParserErrors_XML_RNGP_PAT_START_DATA: xmlParserErrors = 1089;
3518pub const xmlParserErrors_XML_RNGP_PAT_START_EMPTY: xmlParserErrors = 1090;
3519pub const xmlParserErrors_XML_RNGP_PAT_START_GROUP: xmlParserErrors = 1091;
3520pub const xmlParserErrors_XML_RNGP_PAT_START_INTERLEAVE: xmlParserErrors = 1092;
3521pub const xmlParserErrors_XML_RNGP_PAT_START_LIST: xmlParserErrors = 1093;
3522pub const xmlParserErrors_XML_RNGP_PAT_START_ONEMORE: xmlParserErrors = 1094;
3523pub const xmlParserErrors_XML_RNGP_PAT_START_TEXT: xmlParserErrors = 1095;
3524pub const xmlParserErrors_XML_RNGP_PAT_START_VALUE: xmlParserErrors = 1096;
3525pub const xmlParserErrors_XML_RNGP_PREFIX_UNDEFINED: xmlParserErrors = 1097;
3526pub const xmlParserErrors_XML_RNGP_REF_CREATE_FAILED: xmlParserErrors = 1098;
3527pub const xmlParserErrors_XML_RNGP_REF_CYCLE: xmlParserErrors = 1099;
3528pub const xmlParserErrors_XML_RNGP_REF_NAME_INVALID: xmlParserErrors = 1100;
3529pub const xmlParserErrors_XML_RNGP_REF_NO_DEF: xmlParserErrors = 1101;
3530pub const xmlParserErrors_XML_RNGP_REF_NO_NAME: xmlParserErrors = 1102;
3531pub const xmlParserErrors_XML_RNGP_REF_NOT_EMPTY: xmlParserErrors = 1103;
3532pub const xmlParserErrors_XML_RNGP_START_CHOICE_AND_INTERLEAVE: xmlParserErrors = 1104;
3533pub const xmlParserErrors_XML_RNGP_START_CONTENT: xmlParserErrors = 1105;
3534pub const xmlParserErrors_XML_RNGP_START_EMPTY: xmlParserErrors = 1106;
3535pub const xmlParserErrors_XML_RNGP_START_MISSING: xmlParserErrors = 1107;
3536pub const xmlParserErrors_XML_RNGP_TEXT_EXPECTED: xmlParserErrors = 1108;
3537pub const xmlParserErrors_XML_RNGP_TEXT_HAS_CHILD: xmlParserErrors = 1109;
3538pub const xmlParserErrors_XML_RNGP_TYPE_MISSING: xmlParserErrors = 1110;
3539pub const xmlParserErrors_XML_RNGP_TYPE_NOT_FOUND: xmlParserErrors = 1111;
3540pub const xmlParserErrors_XML_RNGP_TYPE_VALUE: xmlParserErrors = 1112;
3541pub const xmlParserErrors_XML_RNGP_UNKNOWN_ATTRIBUTE: xmlParserErrors = 1113;
3542pub const xmlParserErrors_XML_RNGP_UNKNOWN_COMBINE: xmlParserErrors = 1114;
3543pub const xmlParserErrors_XML_RNGP_UNKNOWN_CONSTRUCT: xmlParserErrors = 1115;
3544pub const xmlParserErrors_XML_RNGP_UNKNOWN_TYPE_LIB: xmlParserErrors = 1116;
3545pub const xmlParserErrors_XML_RNGP_URI_FRAGMENT: xmlParserErrors = 1117;
3546pub const xmlParserErrors_XML_RNGP_URI_NOT_ABSOLUTE: xmlParserErrors = 1118;
3547pub const xmlParserErrors_XML_RNGP_VALUE_EMPTY: xmlParserErrors = 1119;
3548pub const xmlParserErrors_XML_RNGP_VALUE_NO_CONTENT: xmlParserErrors = 1120;
3549pub const xmlParserErrors_XML_RNGP_XMLNS_NAME: xmlParserErrors = 1121;
3550pub const xmlParserErrors_XML_RNGP_XML_NS: xmlParserErrors = 1122;
3551pub const xmlParserErrors_XML_XPATH_EXPRESSION_OK: xmlParserErrors = 1200;
3552pub const xmlParserErrors_XML_XPATH_NUMBER_ERROR: xmlParserErrors = 1201;
3553pub const xmlParserErrors_XML_XPATH_UNFINISHED_LITERAL_ERROR: xmlParserErrors = 1202;
3554pub const xmlParserErrors_XML_XPATH_START_LITERAL_ERROR: xmlParserErrors = 1203;
3555pub const xmlParserErrors_XML_XPATH_VARIABLE_REF_ERROR: xmlParserErrors = 1204;
3556pub const xmlParserErrors_XML_XPATH_UNDEF_VARIABLE_ERROR: xmlParserErrors = 1205;
3557pub const xmlParserErrors_XML_XPATH_INVALID_PREDICATE_ERROR: xmlParserErrors = 1206;
3558pub const xmlParserErrors_XML_XPATH_EXPR_ERROR: xmlParserErrors = 1207;
3559pub const xmlParserErrors_XML_XPATH_UNCLOSED_ERROR: xmlParserErrors = 1208;
3560pub const xmlParserErrors_XML_XPATH_UNKNOWN_FUNC_ERROR: xmlParserErrors = 1209;
3561pub const xmlParserErrors_XML_XPATH_INVALID_OPERAND: xmlParserErrors = 1210;
3562pub const xmlParserErrors_XML_XPATH_INVALID_TYPE: xmlParserErrors = 1211;
3563pub const xmlParserErrors_XML_XPATH_INVALID_ARITY: xmlParserErrors = 1212;
3564pub const xmlParserErrors_XML_XPATH_INVALID_CTXT_SIZE: xmlParserErrors = 1213;
3565pub const xmlParserErrors_XML_XPATH_INVALID_CTXT_POSITION: xmlParserErrors = 1214;
3566pub const xmlParserErrors_XML_XPATH_MEMORY_ERROR: xmlParserErrors = 1215;
3567pub const xmlParserErrors_XML_XPTR_SYNTAX_ERROR: xmlParserErrors = 1216;
3568pub const xmlParserErrors_XML_XPTR_RESOURCE_ERROR: xmlParserErrors = 1217;
3569pub const xmlParserErrors_XML_XPTR_SUB_RESOURCE_ERROR: xmlParserErrors = 1218;
3570pub const xmlParserErrors_XML_XPATH_UNDEF_PREFIX_ERROR: xmlParserErrors = 1219;
3571pub const xmlParserErrors_XML_XPATH_ENCODING_ERROR: xmlParserErrors = 1220;
3572pub const xmlParserErrors_XML_XPATH_INVALID_CHAR_ERROR: xmlParserErrors = 1221;
3573pub const xmlParserErrors_XML_TREE_INVALID_HEX: xmlParserErrors = 1300;
3574pub const xmlParserErrors_XML_TREE_INVALID_DEC: xmlParserErrors = 1301;
3575pub const xmlParserErrors_XML_TREE_UNTERMINATED_ENTITY: xmlParserErrors = 1302;
3576pub const xmlParserErrors_XML_TREE_NOT_UTF8: xmlParserErrors = 1303;
3577pub const xmlParserErrors_XML_SAVE_NOT_UTF8: xmlParserErrors = 1400;
3578pub const xmlParserErrors_XML_SAVE_CHAR_INVALID: xmlParserErrors = 1401;
3579pub const xmlParserErrors_XML_SAVE_NO_DOCTYPE: xmlParserErrors = 1402;
3580pub const xmlParserErrors_XML_SAVE_UNKNOWN_ENCODING: xmlParserErrors = 1403;
3581pub const xmlParserErrors_XML_REGEXP_COMPILE_ERROR: xmlParserErrors = 1450;
3582pub const xmlParserErrors_XML_IO_UNKNOWN: xmlParserErrors = 1500;
3583pub const xmlParserErrors_XML_IO_EACCES: xmlParserErrors = 1501;
3584pub const xmlParserErrors_XML_IO_EAGAIN: xmlParserErrors = 1502;
3585pub const xmlParserErrors_XML_IO_EBADF: xmlParserErrors = 1503;
3586pub const xmlParserErrors_XML_IO_EBADMSG: xmlParserErrors = 1504;
3587pub const xmlParserErrors_XML_IO_EBUSY: xmlParserErrors = 1505;
3588pub const xmlParserErrors_XML_IO_ECANCELED: xmlParserErrors = 1506;
3589pub const xmlParserErrors_XML_IO_ECHILD: xmlParserErrors = 1507;
3590pub const xmlParserErrors_XML_IO_EDEADLK: xmlParserErrors = 1508;
3591pub const xmlParserErrors_XML_IO_EDOM: xmlParserErrors = 1509;
3592pub const xmlParserErrors_XML_IO_EEXIST: xmlParserErrors = 1510;
3593pub const xmlParserErrors_XML_IO_EFAULT: xmlParserErrors = 1511;
3594pub const xmlParserErrors_XML_IO_EFBIG: xmlParserErrors = 1512;
3595pub const xmlParserErrors_XML_IO_EINPROGRESS: xmlParserErrors = 1513;
3596pub const xmlParserErrors_XML_IO_EINTR: xmlParserErrors = 1514;
3597pub const xmlParserErrors_XML_IO_EINVAL: xmlParserErrors = 1515;
3598pub const xmlParserErrors_XML_IO_EIO: xmlParserErrors = 1516;
3599pub const xmlParserErrors_XML_IO_EISDIR: xmlParserErrors = 1517;
3600pub const xmlParserErrors_XML_IO_EMFILE: xmlParserErrors = 1518;
3601pub const xmlParserErrors_XML_IO_EMLINK: xmlParserErrors = 1519;
3602pub const xmlParserErrors_XML_IO_EMSGSIZE: xmlParserErrors = 1520;
3603pub const xmlParserErrors_XML_IO_ENAMETOOLONG: xmlParserErrors = 1521;
3604pub const xmlParserErrors_XML_IO_ENFILE: xmlParserErrors = 1522;
3605pub const xmlParserErrors_XML_IO_ENODEV: xmlParserErrors = 1523;
3606pub const xmlParserErrors_XML_IO_ENOENT: xmlParserErrors = 1524;
3607pub const xmlParserErrors_XML_IO_ENOEXEC: xmlParserErrors = 1525;
3608pub const xmlParserErrors_XML_IO_ENOLCK: xmlParserErrors = 1526;
3609pub const xmlParserErrors_XML_IO_ENOMEM: xmlParserErrors = 1527;
3610pub const xmlParserErrors_XML_IO_ENOSPC: xmlParserErrors = 1528;
3611pub const xmlParserErrors_XML_IO_ENOSYS: xmlParserErrors = 1529;
3612pub const xmlParserErrors_XML_IO_ENOTDIR: xmlParserErrors = 1530;
3613pub const xmlParserErrors_XML_IO_ENOTEMPTY: xmlParserErrors = 1531;
3614pub const xmlParserErrors_XML_IO_ENOTSUP: xmlParserErrors = 1532;
3615pub const xmlParserErrors_XML_IO_ENOTTY: xmlParserErrors = 1533;
3616pub const xmlParserErrors_XML_IO_ENXIO: xmlParserErrors = 1534;
3617pub const xmlParserErrors_XML_IO_EPERM: xmlParserErrors = 1535;
3618pub const xmlParserErrors_XML_IO_EPIPE: xmlParserErrors = 1536;
3619pub const xmlParserErrors_XML_IO_ERANGE: xmlParserErrors = 1537;
3620pub const xmlParserErrors_XML_IO_EROFS: xmlParserErrors = 1538;
3621pub const xmlParserErrors_XML_IO_ESPIPE: xmlParserErrors = 1539;
3622pub const xmlParserErrors_XML_IO_ESRCH: xmlParserErrors = 1540;
3623pub const xmlParserErrors_XML_IO_ETIMEDOUT: xmlParserErrors = 1541;
3624pub const xmlParserErrors_XML_IO_EXDEV: xmlParserErrors = 1542;
3625pub const xmlParserErrors_XML_IO_NETWORK_ATTEMPT: xmlParserErrors = 1543;
3626pub const xmlParserErrors_XML_IO_ENCODER: xmlParserErrors = 1544;
3627pub const xmlParserErrors_XML_IO_FLUSH: xmlParserErrors = 1545;
3628pub const xmlParserErrors_XML_IO_WRITE: xmlParserErrors = 1546;
3629pub const xmlParserErrors_XML_IO_NO_INPUT: xmlParserErrors = 1547;
3630pub const xmlParserErrors_XML_IO_BUFFER_FULL: xmlParserErrors = 1548;
3631pub const xmlParserErrors_XML_IO_LOAD_ERROR: xmlParserErrors = 1549;
3632pub const xmlParserErrors_XML_IO_ENOTSOCK: xmlParserErrors = 1550;
3633pub const xmlParserErrors_XML_IO_EISCONN: xmlParserErrors = 1551;
3634pub const xmlParserErrors_XML_IO_ECONNREFUSED: xmlParserErrors = 1552;
3635pub const xmlParserErrors_XML_IO_ENETUNREACH: xmlParserErrors = 1553;
3636pub const xmlParserErrors_XML_IO_EADDRINUSE: xmlParserErrors = 1554;
3637pub const xmlParserErrors_XML_IO_EALREADY: xmlParserErrors = 1555;
3638pub const xmlParserErrors_XML_IO_EAFNOSUPPORT: xmlParserErrors = 1556;
3639pub const xmlParserErrors_XML_XINCLUDE_RECURSION: xmlParserErrors = 1600;
3640pub const xmlParserErrors_XML_XINCLUDE_PARSE_VALUE: xmlParserErrors = 1601;
3641pub const xmlParserErrors_XML_XINCLUDE_ENTITY_DEF_MISMATCH: xmlParserErrors = 1602;
3642pub const xmlParserErrors_XML_XINCLUDE_NO_HREF: xmlParserErrors = 1603;
3643pub const xmlParserErrors_XML_XINCLUDE_NO_FALLBACK: xmlParserErrors = 1604;
3644pub const xmlParserErrors_XML_XINCLUDE_HREF_URI: xmlParserErrors = 1605;
3645pub const xmlParserErrors_XML_XINCLUDE_TEXT_FRAGMENT: xmlParserErrors = 1606;
3646pub const xmlParserErrors_XML_XINCLUDE_TEXT_DOCUMENT: xmlParserErrors = 1607;
3647pub const xmlParserErrors_XML_XINCLUDE_INVALID_CHAR: xmlParserErrors = 1608;
3648pub const xmlParserErrors_XML_XINCLUDE_BUILD_FAILED: xmlParserErrors = 1609;
3649pub const xmlParserErrors_XML_XINCLUDE_UNKNOWN_ENCODING: xmlParserErrors = 1610;
3650pub const xmlParserErrors_XML_XINCLUDE_MULTIPLE_ROOT: xmlParserErrors = 1611;
3651pub const xmlParserErrors_XML_XINCLUDE_XPTR_FAILED: xmlParserErrors = 1612;
3652pub const xmlParserErrors_XML_XINCLUDE_XPTR_RESULT: xmlParserErrors = 1613;
3653pub const xmlParserErrors_XML_XINCLUDE_INCLUDE_IN_INCLUDE: xmlParserErrors = 1614;
3654pub const xmlParserErrors_XML_XINCLUDE_FALLBACKS_IN_INCLUDE: xmlParserErrors = 1615;
3655pub const xmlParserErrors_XML_XINCLUDE_FALLBACK_NOT_IN_INCLUDE: xmlParserErrors = 1616;
3656pub const xmlParserErrors_XML_XINCLUDE_DEPRECATED_NS: xmlParserErrors = 1617;
3657pub const xmlParserErrors_XML_XINCLUDE_FRAGMENT_ID: xmlParserErrors = 1618;
3658pub const xmlParserErrors_XML_CATALOG_MISSING_ATTR: xmlParserErrors = 1650;
3659pub const xmlParserErrors_XML_CATALOG_ENTRY_BROKEN: xmlParserErrors = 1651;
3660pub const xmlParserErrors_XML_CATALOG_PREFER_VALUE: xmlParserErrors = 1652;
3661pub const xmlParserErrors_XML_CATALOG_NOT_CATALOG: xmlParserErrors = 1653;
3662pub const xmlParserErrors_XML_CATALOG_RECURSION: xmlParserErrors = 1654;
3663pub const xmlParserErrors_XML_SCHEMAP_PREFIX_UNDEFINED: xmlParserErrors = 1700;
3664pub const xmlParserErrors_XML_SCHEMAP_ATTRFORMDEFAULT_VALUE: xmlParserErrors = 1701;
3665pub const xmlParserErrors_XML_SCHEMAP_ATTRGRP_NONAME_NOREF: xmlParserErrors = 1702;
3666pub const xmlParserErrors_XML_SCHEMAP_ATTR_NONAME_NOREF: xmlParserErrors = 1703;
3667pub const xmlParserErrors_XML_SCHEMAP_COMPLEXTYPE_NONAME_NOREF: xmlParserErrors = 1704;
3668pub const xmlParserErrors_XML_SCHEMAP_ELEMFORMDEFAULT_VALUE: xmlParserErrors = 1705;
3669pub const xmlParserErrors_XML_SCHEMAP_ELEM_NONAME_NOREF: xmlParserErrors = 1706;
3670pub const xmlParserErrors_XML_SCHEMAP_EXTENSION_NO_BASE: xmlParserErrors = 1707;
3671pub const xmlParserErrors_XML_SCHEMAP_FACET_NO_VALUE: xmlParserErrors = 1708;
3672pub const xmlParserErrors_XML_SCHEMAP_FAILED_BUILD_IMPORT: xmlParserErrors = 1709;
3673pub const xmlParserErrors_XML_SCHEMAP_GROUP_NONAME_NOREF: xmlParserErrors = 1710;
3674pub const xmlParserErrors_XML_SCHEMAP_IMPORT_NAMESPACE_NOT_URI: xmlParserErrors = 1711;
3675pub const xmlParserErrors_XML_SCHEMAP_IMPORT_REDEFINE_NSNAME: xmlParserErrors = 1712;
3676pub const xmlParserErrors_XML_SCHEMAP_IMPORT_SCHEMA_NOT_URI: xmlParserErrors = 1713;
3677pub const xmlParserErrors_XML_SCHEMAP_INVALID_BOOLEAN: xmlParserErrors = 1714;
3678pub const xmlParserErrors_XML_SCHEMAP_INVALID_ENUM: xmlParserErrors = 1715;
3679pub const xmlParserErrors_XML_SCHEMAP_INVALID_FACET: xmlParserErrors = 1716;
3680pub const xmlParserErrors_XML_SCHEMAP_INVALID_FACET_VALUE: xmlParserErrors = 1717;
3681pub const xmlParserErrors_XML_SCHEMAP_INVALID_MAXOCCURS: xmlParserErrors = 1718;
3682pub const xmlParserErrors_XML_SCHEMAP_INVALID_MINOCCURS: xmlParserErrors = 1719;
3683pub const xmlParserErrors_XML_SCHEMAP_INVALID_REF_AND_SUBTYPE: xmlParserErrors = 1720;
3684pub const xmlParserErrors_XML_SCHEMAP_INVALID_WHITE_SPACE: xmlParserErrors = 1721;
3685pub const xmlParserErrors_XML_SCHEMAP_NOATTR_NOREF: xmlParserErrors = 1722;
3686pub const xmlParserErrors_XML_SCHEMAP_NOTATION_NO_NAME: xmlParserErrors = 1723;
3687pub const xmlParserErrors_XML_SCHEMAP_NOTYPE_NOREF: xmlParserErrors = 1724;
3688pub const xmlParserErrors_XML_SCHEMAP_REF_AND_SUBTYPE: xmlParserErrors = 1725;
3689pub const xmlParserErrors_XML_SCHEMAP_RESTRICTION_NONAME_NOREF: xmlParserErrors = 1726;
3690pub const xmlParserErrors_XML_SCHEMAP_SIMPLETYPE_NONAME: xmlParserErrors = 1727;
3691pub const xmlParserErrors_XML_SCHEMAP_TYPE_AND_SUBTYPE: xmlParserErrors = 1728;
3692pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_ALL_CHILD: xmlParserErrors = 1729;
3693pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_ANYATTRIBUTE_CHILD: xmlParserErrors = 1730;
3694pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_ATTR_CHILD: xmlParserErrors = 1731;
3695pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_ATTRGRP_CHILD: xmlParserErrors = 1732;
3696pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_ATTRIBUTE_GROUP: xmlParserErrors = 1733;
3697pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_BASE_TYPE: xmlParserErrors = 1734;
3698pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_CHOICE_CHILD: xmlParserErrors = 1735;
3699pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_COMPLEXCONTENT_CHILD: xmlParserErrors = 1736;
3700pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_COMPLEXTYPE_CHILD: xmlParserErrors = 1737;
3701pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_ELEM_CHILD: xmlParserErrors = 1738;
3702pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_EXTENSION_CHILD: xmlParserErrors = 1739;
3703pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_FACET_CHILD: xmlParserErrors = 1740;
3704pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_FACET_TYPE: xmlParserErrors = 1741;
3705pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_GROUP_CHILD: xmlParserErrors = 1742;
3706pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_IMPORT_CHILD: xmlParserErrors = 1743;
3707pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_LIST_CHILD: xmlParserErrors = 1744;
3708pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_NOTATION_CHILD: xmlParserErrors = 1745;
3709pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_PROCESSCONTENT_CHILD: xmlParserErrors = 1746;
3710pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_REF: xmlParserErrors = 1747;
3711pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_RESTRICTION_CHILD: xmlParserErrors = 1748;
3712pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_SCHEMAS_CHILD: xmlParserErrors = 1749;
3713pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_SEQUENCE_CHILD: xmlParserErrors = 1750;
3714pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_SIMPLECONTENT_CHILD: xmlParserErrors = 1751;
3715pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_SIMPLETYPE_CHILD: xmlParserErrors = 1752;
3716pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_TYPE: xmlParserErrors = 1753;
3717pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_UNION_CHILD: xmlParserErrors = 1754;
3718pub const xmlParserErrors_XML_SCHEMAP_ELEM_DEFAULT_FIXED: xmlParserErrors = 1755;
3719pub const xmlParserErrors_XML_SCHEMAP_REGEXP_INVALID: xmlParserErrors = 1756;
3720pub const xmlParserErrors_XML_SCHEMAP_FAILED_LOAD: xmlParserErrors = 1757;
3721pub const xmlParserErrors_XML_SCHEMAP_NOTHING_TO_PARSE: xmlParserErrors = 1758;
3722pub const xmlParserErrors_XML_SCHEMAP_NOROOT: xmlParserErrors = 1759;
3723pub const xmlParserErrors_XML_SCHEMAP_REDEFINED_GROUP: xmlParserErrors = 1760;
3724pub const xmlParserErrors_XML_SCHEMAP_REDEFINED_TYPE: xmlParserErrors = 1761;
3725pub const xmlParserErrors_XML_SCHEMAP_REDEFINED_ELEMENT: xmlParserErrors = 1762;
3726pub const xmlParserErrors_XML_SCHEMAP_REDEFINED_ATTRGROUP: xmlParserErrors = 1763;
3727pub const xmlParserErrors_XML_SCHEMAP_REDEFINED_ATTR: xmlParserErrors = 1764;
3728pub const xmlParserErrors_XML_SCHEMAP_REDEFINED_NOTATION: xmlParserErrors = 1765;
3729pub const xmlParserErrors_XML_SCHEMAP_FAILED_PARSE: xmlParserErrors = 1766;
3730pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_PREFIX: xmlParserErrors = 1767;
3731pub const xmlParserErrors_XML_SCHEMAP_DEF_AND_PREFIX: xmlParserErrors = 1768;
3732pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_INCLUDE_CHILD: xmlParserErrors = 1769;
3733pub const xmlParserErrors_XML_SCHEMAP_INCLUDE_SCHEMA_NOT_URI: xmlParserErrors = 1770;
3734pub const xmlParserErrors_XML_SCHEMAP_INCLUDE_SCHEMA_NO_URI: xmlParserErrors = 1771;
3735pub const xmlParserErrors_XML_SCHEMAP_NOT_SCHEMA: xmlParserErrors = 1772;
3736pub const xmlParserErrors_XML_SCHEMAP_UNKNOWN_MEMBER_TYPE: xmlParserErrors = 1773;
3737pub const xmlParserErrors_XML_SCHEMAP_INVALID_ATTR_USE: xmlParserErrors = 1774;
3738pub const xmlParserErrors_XML_SCHEMAP_RECURSIVE: xmlParserErrors = 1775;
3739pub const xmlParserErrors_XML_SCHEMAP_SUPERNUMEROUS_LIST_ITEM_TYPE: xmlParserErrors = 1776;
3740pub const xmlParserErrors_XML_SCHEMAP_INVALID_ATTR_COMBINATION: xmlParserErrors = 1777;
3741pub const xmlParserErrors_XML_SCHEMAP_INVALID_ATTR_INLINE_COMBINATION: xmlParserErrors = 1778;
3742pub const xmlParserErrors_XML_SCHEMAP_MISSING_SIMPLETYPE_CHILD: xmlParserErrors = 1779;
3743pub const xmlParserErrors_XML_SCHEMAP_INVALID_ATTR_NAME: xmlParserErrors = 1780;
3744pub const xmlParserErrors_XML_SCHEMAP_REF_AND_CONTENT: xmlParserErrors = 1781;
3745pub const xmlParserErrors_XML_SCHEMAP_CT_PROPS_CORRECT_1: xmlParserErrors = 1782;
3746pub const xmlParserErrors_XML_SCHEMAP_CT_PROPS_CORRECT_2: xmlParserErrors = 1783;
3747pub const xmlParserErrors_XML_SCHEMAP_CT_PROPS_CORRECT_3: xmlParserErrors = 1784;
3748pub const xmlParserErrors_XML_SCHEMAP_CT_PROPS_CORRECT_4: xmlParserErrors = 1785;
3749pub const xmlParserErrors_XML_SCHEMAP_CT_PROPS_CORRECT_5: xmlParserErrors = 1786;
3750pub const xmlParserErrors_XML_SCHEMAP_DERIVATION_OK_RESTRICTION_1: xmlParserErrors = 1787;
3751pub const xmlParserErrors_XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_1: xmlParserErrors = 1788;
3752pub const xmlParserErrors_XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_2: xmlParserErrors = 1789;
3753pub const xmlParserErrors_XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_2: xmlParserErrors = 1790;
3754pub const xmlParserErrors_XML_SCHEMAP_DERIVATION_OK_RESTRICTION_3: xmlParserErrors = 1791;
3755pub const xmlParserErrors_XML_SCHEMAP_WILDCARD_INVALID_NS_MEMBER: xmlParserErrors = 1792;
3756pub const xmlParserErrors_XML_SCHEMAP_INTERSECTION_NOT_EXPRESSIBLE: xmlParserErrors = 1793;
3757pub const xmlParserErrors_XML_SCHEMAP_UNION_NOT_EXPRESSIBLE: xmlParserErrors = 1794;
3758pub const xmlParserErrors_XML_SCHEMAP_SRC_IMPORT_3_1: xmlParserErrors = 1795;
3759pub const xmlParserErrors_XML_SCHEMAP_SRC_IMPORT_3_2: xmlParserErrors = 1796;
3760pub const xmlParserErrors_XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_1: xmlParserErrors = 1797;
3761pub const xmlParserErrors_XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_2: xmlParserErrors = 1798;
3762pub const xmlParserErrors_XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_3: xmlParserErrors = 1799;
3763pub const xmlParserErrors_XML_SCHEMAP_COS_CT_EXTENDS_1_3: xmlParserErrors = 1800;
3764pub const xmlParserErrors_XML_SCHEMAV_NOROOT: xmlParserErrors = 1801;
3765pub const xmlParserErrors_XML_SCHEMAV_UNDECLAREDELEM: xmlParserErrors = 1802;
3766pub const xmlParserErrors_XML_SCHEMAV_NOTTOPLEVEL: xmlParserErrors = 1803;
3767pub const xmlParserErrors_XML_SCHEMAV_MISSING: xmlParserErrors = 1804;
3768pub const xmlParserErrors_XML_SCHEMAV_WRONGELEM: xmlParserErrors = 1805;
3769pub const xmlParserErrors_XML_SCHEMAV_NOTYPE: xmlParserErrors = 1806;
3770pub const xmlParserErrors_XML_SCHEMAV_NOROLLBACK: xmlParserErrors = 1807;
3771pub const xmlParserErrors_XML_SCHEMAV_ISABSTRACT: xmlParserErrors = 1808;
3772pub const xmlParserErrors_XML_SCHEMAV_NOTEMPTY: xmlParserErrors = 1809;
3773pub const xmlParserErrors_XML_SCHEMAV_ELEMCONT: xmlParserErrors = 1810;
3774pub const xmlParserErrors_XML_SCHEMAV_HAVEDEFAULT: xmlParserErrors = 1811;
3775pub const xmlParserErrors_XML_SCHEMAV_NOTNILLABLE: xmlParserErrors = 1812;
3776pub const xmlParserErrors_XML_SCHEMAV_EXTRACONTENT: xmlParserErrors = 1813;
3777pub const xmlParserErrors_XML_SCHEMAV_INVALIDATTR: xmlParserErrors = 1814;
3778pub const xmlParserErrors_XML_SCHEMAV_INVALIDELEM: xmlParserErrors = 1815;
3779pub const xmlParserErrors_XML_SCHEMAV_NOTDETERMINIST: xmlParserErrors = 1816;
3780pub const xmlParserErrors_XML_SCHEMAV_CONSTRUCT: xmlParserErrors = 1817;
3781pub const xmlParserErrors_XML_SCHEMAV_INTERNAL: xmlParserErrors = 1818;
3782pub const xmlParserErrors_XML_SCHEMAV_NOTSIMPLE: xmlParserErrors = 1819;
3783pub const xmlParserErrors_XML_SCHEMAV_ATTRUNKNOWN: xmlParserErrors = 1820;
3784pub const xmlParserErrors_XML_SCHEMAV_ATTRINVALID: xmlParserErrors = 1821;
3785pub const xmlParserErrors_XML_SCHEMAV_VALUE: xmlParserErrors = 1822;
3786pub const xmlParserErrors_XML_SCHEMAV_FACET: xmlParserErrors = 1823;
3787pub const xmlParserErrors_XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_1: xmlParserErrors = 1824;
3788pub const xmlParserErrors_XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_2: xmlParserErrors = 1825;
3789pub const xmlParserErrors_XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_3: xmlParserErrors = 1826;
3790pub const xmlParserErrors_XML_SCHEMAV_CVC_TYPE_3_1_1: xmlParserErrors = 1827;
3791pub const xmlParserErrors_XML_SCHEMAV_CVC_TYPE_3_1_2: xmlParserErrors = 1828;
3792pub const xmlParserErrors_XML_SCHEMAV_CVC_FACET_VALID: xmlParserErrors = 1829;
3793pub const xmlParserErrors_XML_SCHEMAV_CVC_LENGTH_VALID: xmlParserErrors = 1830;
3794pub const xmlParserErrors_XML_SCHEMAV_CVC_MINLENGTH_VALID: xmlParserErrors = 1831;
3795pub const xmlParserErrors_XML_SCHEMAV_CVC_MAXLENGTH_VALID: xmlParserErrors = 1832;
3796pub const xmlParserErrors_XML_SCHEMAV_CVC_MININCLUSIVE_VALID: xmlParserErrors = 1833;
3797pub const xmlParserErrors_XML_SCHEMAV_CVC_MAXINCLUSIVE_VALID: xmlParserErrors = 1834;
3798pub const xmlParserErrors_XML_SCHEMAV_CVC_MINEXCLUSIVE_VALID: xmlParserErrors = 1835;
3799pub const xmlParserErrors_XML_SCHEMAV_CVC_MAXEXCLUSIVE_VALID: xmlParserErrors = 1836;
3800pub const xmlParserErrors_XML_SCHEMAV_CVC_TOTALDIGITS_VALID: xmlParserErrors = 1837;
3801pub const xmlParserErrors_XML_SCHEMAV_CVC_FRACTIONDIGITS_VALID: xmlParserErrors = 1838;
3802pub const xmlParserErrors_XML_SCHEMAV_CVC_PATTERN_VALID: xmlParserErrors = 1839;
3803pub const xmlParserErrors_XML_SCHEMAV_CVC_ENUMERATION_VALID: xmlParserErrors = 1840;
3804pub const xmlParserErrors_XML_SCHEMAV_CVC_COMPLEX_TYPE_2_1: xmlParserErrors = 1841;
3805pub const xmlParserErrors_XML_SCHEMAV_CVC_COMPLEX_TYPE_2_2: xmlParserErrors = 1842;
3806pub const xmlParserErrors_XML_SCHEMAV_CVC_COMPLEX_TYPE_2_3: xmlParserErrors = 1843;
3807pub const xmlParserErrors_XML_SCHEMAV_CVC_COMPLEX_TYPE_2_4: xmlParserErrors = 1844;
3808pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_1: xmlParserErrors = 1845;
3809pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_2: xmlParserErrors = 1846;
3810pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_3_1: xmlParserErrors = 1847;
3811pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_3_2_1: xmlParserErrors = 1848;
3812pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_3_2_2: xmlParserErrors = 1849;
3813pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_4_1: xmlParserErrors = 1850;
3814pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_4_2: xmlParserErrors = 1851;
3815pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_4_3: xmlParserErrors = 1852;
3816pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_5_1_1: xmlParserErrors = 1853;
3817pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_5_1_2: xmlParserErrors = 1854;
3818pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_5_2_1: xmlParserErrors = 1855;
3819pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_5_2_2_1: xmlParserErrors = 1856;
3820pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_5_2_2_2_1: xmlParserErrors = 1857;
3821pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_5_2_2_2_2: xmlParserErrors = 1858;
3822pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_6: xmlParserErrors = 1859;
3823pub const xmlParserErrors_XML_SCHEMAV_CVC_ELT_7: xmlParserErrors = 1860;
3824pub const xmlParserErrors_XML_SCHEMAV_CVC_ATTRIBUTE_1: xmlParserErrors = 1861;
3825pub const xmlParserErrors_XML_SCHEMAV_CVC_ATTRIBUTE_2: xmlParserErrors = 1862;
3826pub const xmlParserErrors_XML_SCHEMAV_CVC_ATTRIBUTE_3: xmlParserErrors = 1863;
3827pub const xmlParserErrors_XML_SCHEMAV_CVC_ATTRIBUTE_4: xmlParserErrors = 1864;
3828pub const xmlParserErrors_XML_SCHEMAV_CVC_COMPLEX_TYPE_3_1: xmlParserErrors = 1865;
3829pub const xmlParserErrors_XML_SCHEMAV_CVC_COMPLEX_TYPE_3_2_1: xmlParserErrors = 1866;
3830pub const xmlParserErrors_XML_SCHEMAV_CVC_COMPLEX_TYPE_3_2_2: xmlParserErrors = 1867;
3831pub const xmlParserErrors_XML_SCHEMAV_CVC_COMPLEX_TYPE_4: xmlParserErrors = 1868;
3832pub const xmlParserErrors_XML_SCHEMAV_CVC_COMPLEX_TYPE_5_1: xmlParserErrors = 1869;
3833pub const xmlParserErrors_XML_SCHEMAV_CVC_COMPLEX_TYPE_5_2: xmlParserErrors = 1870;
3834pub const xmlParserErrors_XML_SCHEMAV_ELEMENT_CONTENT: xmlParserErrors = 1871;
3835pub const xmlParserErrors_XML_SCHEMAV_DOCUMENT_ELEMENT_MISSING: xmlParserErrors = 1872;
3836pub const xmlParserErrors_XML_SCHEMAV_CVC_COMPLEX_TYPE_1: xmlParserErrors = 1873;
3837pub const xmlParserErrors_XML_SCHEMAV_CVC_AU: xmlParserErrors = 1874;
3838pub const xmlParserErrors_XML_SCHEMAV_CVC_TYPE_1: xmlParserErrors = 1875;
3839pub const xmlParserErrors_XML_SCHEMAV_CVC_TYPE_2: xmlParserErrors = 1876;
3840pub const xmlParserErrors_XML_SCHEMAV_CVC_IDC: xmlParserErrors = 1877;
3841pub const xmlParserErrors_XML_SCHEMAV_CVC_WILDCARD: xmlParserErrors = 1878;
3842pub const xmlParserErrors_XML_SCHEMAV_MISC: xmlParserErrors = 1879;
3843pub const xmlParserErrors_XML_XPTR_UNKNOWN_SCHEME: xmlParserErrors = 1900;
3844pub const xmlParserErrors_XML_XPTR_CHILDSEQ_START: xmlParserErrors = 1901;
3845pub const xmlParserErrors_XML_XPTR_EVAL_FAILED: xmlParserErrors = 1902;
3846pub const xmlParserErrors_XML_XPTR_EXTRA_OBJECTS: xmlParserErrors = 1903;
3847pub const xmlParserErrors_XML_C14N_CREATE_CTXT: xmlParserErrors = 1950;
3848pub const xmlParserErrors_XML_C14N_REQUIRES_UTF8: xmlParserErrors = 1951;
3849pub const xmlParserErrors_XML_C14N_CREATE_STACK: xmlParserErrors = 1952;
3850pub const xmlParserErrors_XML_C14N_INVALID_NODE: xmlParserErrors = 1953;
3851pub const xmlParserErrors_XML_C14N_UNKNOW_NODE: xmlParserErrors = 1954;
3852pub const xmlParserErrors_XML_C14N_RELATIVE_NAMESPACE: xmlParserErrors = 1955;
3853pub const xmlParserErrors_XML_FTP_PASV_ANSWER: xmlParserErrors = 2000;
3854pub const xmlParserErrors_XML_FTP_EPSV_ANSWER: xmlParserErrors = 2001;
3855pub const xmlParserErrors_XML_FTP_ACCNT: xmlParserErrors = 2002;
3856pub const xmlParserErrors_XML_FTP_URL_SYNTAX: xmlParserErrors = 2003;
3857pub const xmlParserErrors_XML_HTTP_URL_SYNTAX: xmlParserErrors = 2020;
3858pub const xmlParserErrors_XML_HTTP_USE_IP: xmlParserErrors = 2021;
3859pub const xmlParserErrors_XML_HTTP_UNKNOWN_HOST: xmlParserErrors = 2022;
3860pub const xmlParserErrors_XML_SCHEMAP_SRC_SIMPLE_TYPE_1: xmlParserErrors = 3000;
3861pub const xmlParserErrors_XML_SCHEMAP_SRC_SIMPLE_TYPE_2: xmlParserErrors = 3001;
3862pub const xmlParserErrors_XML_SCHEMAP_SRC_SIMPLE_TYPE_3: xmlParserErrors = 3002;
3863pub const xmlParserErrors_XML_SCHEMAP_SRC_SIMPLE_TYPE_4: xmlParserErrors = 3003;
3864pub const xmlParserErrors_XML_SCHEMAP_SRC_RESOLVE: xmlParserErrors = 3004;
3865pub const xmlParserErrors_XML_SCHEMAP_SRC_RESTRICTION_BASE_OR_SIMPLETYPE: xmlParserErrors = 3005;
3866pub const xmlParserErrors_XML_SCHEMAP_SRC_LIST_ITEMTYPE_OR_SIMPLETYPE: xmlParserErrors = 3006;
3867pub const xmlParserErrors_XML_SCHEMAP_SRC_UNION_MEMBERTYPES_OR_SIMPLETYPES: xmlParserErrors = 3007;
3868pub const xmlParserErrors_XML_SCHEMAP_ST_PROPS_CORRECT_1: xmlParserErrors = 3008;
3869pub const xmlParserErrors_XML_SCHEMAP_ST_PROPS_CORRECT_2: xmlParserErrors = 3009;
3870pub const xmlParserErrors_XML_SCHEMAP_ST_PROPS_CORRECT_3: xmlParserErrors = 3010;
3871pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_1_1: xmlParserErrors = 3011;
3872pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_1_2: xmlParserErrors = 3012;
3873pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_1_3_1: xmlParserErrors = 3013;
3874pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_1_3_2: xmlParserErrors = 3014;
3875pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_2_1: xmlParserErrors = 3015;
3876pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_2_3_1_1: xmlParserErrors = 3016;
3877pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_2_3_1_2: xmlParserErrors = 3017;
3878pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_1: xmlParserErrors = 3018;
3879pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_2: xmlParserErrors = 3019;
3880pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_3: xmlParserErrors = 3020;
3881pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_4: xmlParserErrors = 3021;
3882pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_5: xmlParserErrors = 3022;
3883pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_3_1: xmlParserErrors = 3023;
3884pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_3_3_1: xmlParserErrors = 3024;
3885pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_3_3_1_2: xmlParserErrors = 3025;
3886pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_2: xmlParserErrors = 3026;
3887pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_1: xmlParserErrors = 3027;
3888pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_3: xmlParserErrors = 3028;
3889pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_4: xmlParserErrors = 3029;
3890pub const xmlParserErrors_XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_5: xmlParserErrors = 3030;
3891pub const xmlParserErrors_XML_SCHEMAP_COS_ST_DERIVED_OK_2_1: xmlParserErrors = 3031;
3892pub const xmlParserErrors_XML_SCHEMAP_COS_ST_DERIVED_OK_2_2: xmlParserErrors = 3032;
3893pub const xmlParserErrors_XML_SCHEMAP_S4S_ELEM_NOT_ALLOWED: xmlParserErrors = 3033;
3894pub const xmlParserErrors_XML_SCHEMAP_S4S_ELEM_MISSING: xmlParserErrors = 3034;
3895pub const xmlParserErrors_XML_SCHEMAP_S4S_ATTR_NOT_ALLOWED: xmlParserErrors = 3035;
3896pub const xmlParserErrors_XML_SCHEMAP_S4S_ATTR_MISSING: xmlParserErrors = 3036;
3897pub const xmlParserErrors_XML_SCHEMAP_S4S_ATTR_INVALID_VALUE: xmlParserErrors = 3037;
3898pub const xmlParserErrors_XML_SCHEMAP_SRC_ELEMENT_1: xmlParserErrors = 3038;
3899pub const xmlParserErrors_XML_SCHEMAP_SRC_ELEMENT_2_1: xmlParserErrors = 3039;
3900pub const xmlParserErrors_XML_SCHEMAP_SRC_ELEMENT_2_2: xmlParserErrors = 3040;
3901pub const xmlParserErrors_XML_SCHEMAP_SRC_ELEMENT_3: xmlParserErrors = 3041;
3902pub const xmlParserErrors_XML_SCHEMAP_P_PROPS_CORRECT_1: xmlParserErrors = 3042;
3903pub const xmlParserErrors_XML_SCHEMAP_P_PROPS_CORRECT_2_1: xmlParserErrors = 3043;
3904pub const xmlParserErrors_XML_SCHEMAP_P_PROPS_CORRECT_2_2: xmlParserErrors = 3044;
3905pub const xmlParserErrors_XML_SCHEMAP_E_PROPS_CORRECT_2: xmlParserErrors = 3045;
3906pub const xmlParserErrors_XML_SCHEMAP_E_PROPS_CORRECT_3: xmlParserErrors = 3046;
3907pub const xmlParserErrors_XML_SCHEMAP_E_PROPS_CORRECT_4: xmlParserErrors = 3047;
3908pub const xmlParserErrors_XML_SCHEMAP_E_PROPS_CORRECT_5: xmlParserErrors = 3048;
3909pub const xmlParserErrors_XML_SCHEMAP_E_PROPS_CORRECT_6: xmlParserErrors = 3049;
3910pub const xmlParserErrors_XML_SCHEMAP_SRC_INCLUDE: xmlParserErrors = 3050;
3911pub const xmlParserErrors_XML_SCHEMAP_SRC_ATTRIBUTE_1: xmlParserErrors = 3051;
3912pub const xmlParserErrors_XML_SCHEMAP_SRC_ATTRIBUTE_2: xmlParserErrors = 3052;
3913pub const xmlParserErrors_XML_SCHEMAP_SRC_ATTRIBUTE_3_1: xmlParserErrors = 3053;
3914pub const xmlParserErrors_XML_SCHEMAP_SRC_ATTRIBUTE_3_2: xmlParserErrors = 3054;
3915pub const xmlParserErrors_XML_SCHEMAP_SRC_ATTRIBUTE_4: xmlParserErrors = 3055;
3916pub const xmlParserErrors_XML_SCHEMAP_NO_XMLNS: xmlParserErrors = 3056;
3917pub const xmlParserErrors_XML_SCHEMAP_NO_XSI: xmlParserErrors = 3057;
3918pub const xmlParserErrors_XML_SCHEMAP_COS_VALID_DEFAULT_1: xmlParserErrors = 3058;
3919pub const xmlParserErrors_XML_SCHEMAP_COS_VALID_DEFAULT_2_1: xmlParserErrors = 3059;
3920pub const xmlParserErrors_XML_SCHEMAP_COS_VALID_DEFAULT_2_2_1: xmlParserErrors = 3060;
3921pub const xmlParserErrors_XML_SCHEMAP_COS_VALID_DEFAULT_2_2_2: xmlParserErrors = 3061;
3922pub const xmlParserErrors_XML_SCHEMAP_CVC_SIMPLE_TYPE: xmlParserErrors = 3062;
3923pub const xmlParserErrors_XML_SCHEMAP_COS_CT_EXTENDS_1_1: xmlParserErrors = 3063;
3924pub const xmlParserErrors_XML_SCHEMAP_SRC_IMPORT_1_1: xmlParserErrors = 3064;
3925pub const xmlParserErrors_XML_SCHEMAP_SRC_IMPORT_1_2: xmlParserErrors = 3065;
3926pub const xmlParserErrors_XML_SCHEMAP_SRC_IMPORT_2: xmlParserErrors = 3066;
3927pub const xmlParserErrors_XML_SCHEMAP_SRC_IMPORT_2_1: xmlParserErrors = 3067;
3928pub const xmlParserErrors_XML_SCHEMAP_SRC_IMPORT_2_2: xmlParserErrors = 3068;
3929pub const xmlParserErrors_XML_SCHEMAP_INTERNAL: xmlParserErrors = 3069;
3930pub const xmlParserErrors_XML_SCHEMAP_NOT_DETERMINISTIC: xmlParserErrors = 3070;
3931pub const xmlParserErrors_XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_1: xmlParserErrors = 3071;
3932pub const xmlParserErrors_XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_2: xmlParserErrors = 3072;
3933pub const xmlParserErrors_XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_3: xmlParserErrors = 3073;
3934pub const xmlParserErrors_XML_SCHEMAP_MG_PROPS_CORRECT_1: xmlParserErrors = 3074;
3935pub const xmlParserErrors_XML_SCHEMAP_MG_PROPS_CORRECT_2: xmlParserErrors = 3075;
3936pub const xmlParserErrors_XML_SCHEMAP_SRC_CT_1: xmlParserErrors = 3076;
3937pub const xmlParserErrors_XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_3: xmlParserErrors = 3077;
3938pub const xmlParserErrors_XML_SCHEMAP_AU_PROPS_CORRECT_2: xmlParserErrors = 3078;
3939pub const xmlParserErrors_XML_SCHEMAP_A_PROPS_CORRECT_2: xmlParserErrors = 3079;
3940pub const xmlParserErrors_XML_SCHEMAP_C_PROPS_CORRECT: xmlParserErrors = 3080;
3941pub const xmlParserErrors_XML_SCHEMAP_SRC_REDEFINE: xmlParserErrors = 3081;
3942pub const xmlParserErrors_XML_SCHEMAP_SRC_IMPORT: xmlParserErrors = 3082;
3943pub const xmlParserErrors_XML_SCHEMAP_WARN_SKIP_SCHEMA: xmlParserErrors = 3083;
3944pub const xmlParserErrors_XML_SCHEMAP_WARN_UNLOCATED_SCHEMA: xmlParserErrors = 3084;
3945pub const xmlParserErrors_XML_SCHEMAP_WARN_ATTR_REDECL_PROH: xmlParserErrors = 3085;
3946pub const xmlParserErrors_XML_SCHEMAP_WARN_ATTR_POINTLESS_PROH: xmlParserErrors = 3086;
3947pub const xmlParserErrors_XML_SCHEMAP_AG_PROPS_CORRECT: xmlParserErrors = 3087;
3948pub const xmlParserErrors_XML_SCHEMAP_COS_CT_EXTENDS_1_2: xmlParserErrors = 3088;
3949pub const xmlParserErrors_XML_SCHEMAP_AU_PROPS_CORRECT: xmlParserErrors = 3089;
3950pub const xmlParserErrors_XML_SCHEMAP_A_PROPS_CORRECT_3: xmlParserErrors = 3090;
3951pub const xmlParserErrors_XML_SCHEMAP_COS_ALL_LIMITED: xmlParserErrors = 3091;
3952pub const xmlParserErrors_XML_SCHEMATRONV_ASSERT: xmlParserErrors = 4000;
3953pub const xmlParserErrors_XML_SCHEMATRONV_REPORT: xmlParserErrors = 4001;
3954pub const xmlParserErrors_XML_MODULE_OPEN: xmlParserErrors = 4900;
3955pub const xmlParserErrors_XML_MODULE_CLOSE: xmlParserErrors = 4901;
3956pub const xmlParserErrors_XML_CHECK_FOUND_ELEMENT: xmlParserErrors = 5000;
3957pub const xmlParserErrors_XML_CHECK_FOUND_ATTRIBUTE: xmlParserErrors = 5001;
3958pub const xmlParserErrors_XML_CHECK_FOUND_TEXT: xmlParserErrors = 5002;
3959pub const xmlParserErrors_XML_CHECK_FOUND_CDATA: xmlParserErrors = 5003;
3960pub const xmlParserErrors_XML_CHECK_FOUND_ENTITYREF: xmlParserErrors = 5004;
3961pub const xmlParserErrors_XML_CHECK_FOUND_ENTITY: xmlParserErrors = 5005;
3962pub const xmlParserErrors_XML_CHECK_FOUND_PI: xmlParserErrors = 5006;
3963pub const xmlParserErrors_XML_CHECK_FOUND_COMMENT: xmlParserErrors = 5007;
3964pub const xmlParserErrors_XML_CHECK_FOUND_DOCTYPE: xmlParserErrors = 5008;
3965pub const xmlParserErrors_XML_CHECK_FOUND_FRAGMENT: xmlParserErrors = 5009;
3966pub const xmlParserErrors_XML_CHECK_FOUND_NOTATION: xmlParserErrors = 5010;
3967pub const xmlParserErrors_XML_CHECK_UNKNOWN_NODE: xmlParserErrors = 5011;
3968pub const xmlParserErrors_XML_CHECK_ENTITY_TYPE: xmlParserErrors = 5012;
3969pub const xmlParserErrors_XML_CHECK_NO_PARENT: xmlParserErrors = 5013;
3970pub const xmlParserErrors_XML_CHECK_NO_DOC: xmlParserErrors = 5014;
3971pub const xmlParserErrors_XML_CHECK_NO_NAME: xmlParserErrors = 5015;
3972pub const xmlParserErrors_XML_CHECK_NO_ELEM: xmlParserErrors = 5016;
3973pub const xmlParserErrors_XML_CHECK_WRONG_DOC: xmlParserErrors = 5017;
3974pub const xmlParserErrors_XML_CHECK_NO_PREV: xmlParserErrors = 5018;
3975pub const xmlParserErrors_XML_CHECK_WRONG_PREV: xmlParserErrors = 5019;
3976pub const xmlParserErrors_XML_CHECK_NO_NEXT: xmlParserErrors = 5020;
3977pub const xmlParserErrors_XML_CHECK_WRONG_NEXT: xmlParserErrors = 5021;
3978pub const xmlParserErrors_XML_CHECK_NOT_DTD: xmlParserErrors = 5022;
3979pub const xmlParserErrors_XML_CHECK_NOT_ATTR: xmlParserErrors = 5023;
3980pub const xmlParserErrors_XML_CHECK_NOT_ATTR_DECL: xmlParserErrors = 5024;
3981pub const xmlParserErrors_XML_CHECK_NOT_ELEM_DECL: xmlParserErrors = 5025;
3982pub const xmlParserErrors_XML_CHECK_NOT_ENTITY_DECL: xmlParserErrors = 5026;
3983pub const xmlParserErrors_XML_CHECK_NOT_NS_DECL: xmlParserErrors = 5027;
3984pub const xmlParserErrors_XML_CHECK_NO_HREF: xmlParserErrors = 5028;
3985pub const xmlParserErrors_XML_CHECK_WRONG_PARENT: xmlParserErrors = 5029;
3986pub const xmlParserErrors_XML_CHECK_NS_SCOPE: xmlParserErrors = 5030;
3987pub const xmlParserErrors_XML_CHECK_NS_ANCESTOR: xmlParserErrors = 5031;
3988pub const xmlParserErrors_XML_CHECK_NOT_UTF8: xmlParserErrors = 5032;
3989pub const xmlParserErrors_XML_CHECK_NO_DICT: xmlParserErrors = 5033;
3990pub const xmlParserErrors_XML_CHECK_NOT_NCNAME: xmlParserErrors = 5034;
3991pub const xmlParserErrors_XML_CHECK_OUTSIDE_DICT: xmlParserErrors = 5035;
3992pub const xmlParserErrors_XML_CHECK_WRONG_NAME: xmlParserErrors = 5036;
3993pub const xmlParserErrors_XML_CHECK_NAME_NOT_NULL: xmlParserErrors = 5037;
3994pub const xmlParserErrors_XML_I18N_NO_NAME: xmlParserErrors = 6000;
3995pub const xmlParserErrors_XML_I18N_NO_HANDLER: xmlParserErrors = 6001;
3996pub const xmlParserErrors_XML_I18N_EXCESS_HANDLER: xmlParserErrors = 6002;
3997pub const xmlParserErrors_XML_I18N_CONV_FAILED: xmlParserErrors = 6003;
3998pub const xmlParserErrors_XML_I18N_NO_OUTPUT: xmlParserErrors = 6004;
3999pub const xmlParserErrors_XML_BUF_OVERFLOW: xmlParserErrors = 7000;
4000#[doc = " xmlParserError:\n\n This is an error that the XML (or HTML) parser can generate"]
4001pub type xmlParserErrors = ::std::os::raw::c_uint;
4002#[doc = " xmlGenericErrorFunc:\n @ctx:  a parsing context\n @msg:  the message\n @...:  the extra arguments of the varargs to format the message\n\n Signature of the function to use when there is an error and\n no parsing or validity context available ."]
4003pub type xmlGenericErrorFunc = ::std::option::Option<
4004  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...),
4005>;
4006#[doc = " xmlStructuredErrorFunc:\n @userData:  user provided data for the error callback\n @error:  the error being raised.\n\n Signature of the function to use when there is an error and\n the module handles the new error reporting mechanism."]
4007pub type xmlStructuredErrorFunc = ::std::option::Option<
4008  unsafe extern "C" fn(userData: *mut ::std::os::raw::c_void, error: xmlErrorPtr),
4009>;
4010unsafe extern "C" {
4011  pub fn xmlSetGenericErrorFunc(ctx: *mut ::std::os::raw::c_void, handler: xmlGenericErrorFunc);
4012}
4013unsafe extern "C" {
4014  pub fn initGenericErrorDefaultFunc(handler: *mut xmlGenericErrorFunc);
4015}
4016unsafe extern "C" {
4017  pub fn xmlSetStructuredErrorFunc(
4018    ctx: *mut ::std::os::raw::c_void,
4019    handler: xmlStructuredErrorFunc,
4020  );
4021}
4022unsafe extern "C" {
4023  pub fn xmlParserError(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...);
4024}
4025unsafe extern "C" {
4026  pub fn xmlParserWarning(
4027    ctx: *mut ::std::os::raw::c_void,
4028    msg: *const ::std::os::raw::c_char,
4029    ...
4030  );
4031}
4032unsafe extern "C" {
4033  pub fn xmlParserValidityError(
4034    ctx: *mut ::std::os::raw::c_void,
4035    msg: *const ::std::os::raw::c_char,
4036    ...
4037  );
4038}
4039unsafe extern "C" {
4040  pub fn xmlParserValidityWarning(
4041    ctx: *mut ::std::os::raw::c_void,
4042    msg: *const ::std::os::raw::c_char,
4043    ...
4044  );
4045}
4046unsafe extern "C" {
4047  pub fn xmlParserPrintFileInfo(input: xmlParserInputPtr);
4048}
4049unsafe extern "C" {
4050  pub fn xmlParserPrintFileContext(input: xmlParserInputPtr);
4051}
4052unsafe extern "C" {
4053  pub fn xmlGetLastError() -> xmlErrorPtr;
4054}
4055unsafe extern "C" {
4056  pub fn xmlResetLastError();
4057}
4058unsafe extern "C" {
4059  pub fn xmlCtxtGetLastError(ctx: *mut ::std::os::raw::c_void) -> xmlErrorPtr;
4060}
4061unsafe extern "C" {
4062  pub fn xmlCtxtResetLastError(ctx: *mut ::std::os::raw::c_void);
4063}
4064unsafe extern "C" {
4065  pub fn xmlResetError(err: xmlErrorPtr);
4066}
4067unsafe extern "C" {
4068  pub fn xmlCopyError(from: xmlErrorPtr, to: xmlErrorPtr) -> ::std::os::raw::c_int;
4069}
4070#[repr(C)]
4071#[derive(Debug, Copy, Clone)]
4072pub struct _xmlLink {
4073  _unused: [u8; 0],
4074}
4075pub type xmlLink = _xmlLink;
4076pub type xmlLinkPtr = *mut xmlLink;
4077#[repr(C)]
4078#[derive(Debug, Copy, Clone)]
4079pub struct _xmlList {
4080  _unused: [u8; 0],
4081}
4082pub type xmlList = _xmlList;
4083pub type xmlListPtr = *mut xmlList;
4084#[doc = " xmlListDeallocator:\n @lk:  the data to deallocate\n\n Callback function used to free data from a list."]
4085pub type xmlListDeallocator = ::std::option::Option<unsafe extern "C" fn(lk: xmlLinkPtr)>;
4086#[doc = " xmlListDataCompare:\n @data0: the first data\n @data1: the second data\n\n Callback function used to compare 2 data.\n\n Returns 0 is equality, -1 or 1 otherwise depending on the ordering."]
4087pub type xmlListDataCompare = ::std::option::Option<
4088  unsafe extern "C" fn(
4089    data0: *const ::std::os::raw::c_void,
4090    data1: *const ::std::os::raw::c_void,
4091  ) -> ::std::os::raw::c_int,
4092>;
4093#[doc = " xmlListWalker:\n @data: the data found in the list\n @user: extra user provided data to the walker\n\n Callback function used when walking a list with xmlListWalk().\n\n Returns 0 to stop walking the list, 1 otherwise."]
4094pub type xmlListWalker = ::std::option::Option<
4095  unsafe extern "C" fn(
4096    data: *const ::std::os::raw::c_void,
4097    user: *mut ::std::os::raw::c_void,
4098  ) -> ::std::os::raw::c_int,
4099>;
4100unsafe extern "C" {
4101  pub fn xmlListCreate(deallocator: xmlListDeallocator, compare: xmlListDataCompare) -> xmlListPtr;
4102}
4103unsafe extern "C" {
4104  pub fn xmlListDelete(l: xmlListPtr);
4105}
4106unsafe extern "C" {
4107  pub fn xmlListSearch(
4108    l: xmlListPtr,
4109    data: *mut ::std::os::raw::c_void,
4110  ) -> *mut ::std::os::raw::c_void;
4111}
4112unsafe extern "C" {
4113  pub fn xmlListReverseSearch(
4114    l: xmlListPtr,
4115    data: *mut ::std::os::raw::c_void,
4116  ) -> *mut ::std::os::raw::c_void;
4117}
4118unsafe extern "C" {
4119  pub fn xmlListInsert(l: xmlListPtr, data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
4120}
4121unsafe extern "C" {
4122  pub fn xmlListAppend(l: xmlListPtr, data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
4123}
4124unsafe extern "C" {
4125  pub fn xmlListRemoveFirst(
4126    l: xmlListPtr,
4127    data: *mut ::std::os::raw::c_void,
4128  ) -> ::std::os::raw::c_int;
4129}
4130unsafe extern "C" {
4131  pub fn xmlListRemoveLast(
4132    l: xmlListPtr,
4133    data: *mut ::std::os::raw::c_void,
4134  ) -> ::std::os::raw::c_int;
4135}
4136unsafe extern "C" {
4137  pub fn xmlListRemoveAll(
4138    l: xmlListPtr,
4139    data: *mut ::std::os::raw::c_void,
4140  ) -> ::std::os::raw::c_int;
4141}
4142unsafe extern "C" {
4143  pub fn xmlListClear(l: xmlListPtr);
4144}
4145unsafe extern "C" {
4146  pub fn xmlListEmpty(l: xmlListPtr) -> ::std::os::raw::c_int;
4147}
4148unsafe extern "C" {
4149  pub fn xmlListFront(l: xmlListPtr) -> xmlLinkPtr;
4150}
4151unsafe extern "C" {
4152  pub fn xmlListEnd(l: xmlListPtr) -> xmlLinkPtr;
4153}
4154unsafe extern "C" {
4155  pub fn xmlListSize(l: xmlListPtr) -> ::std::os::raw::c_int;
4156}
4157unsafe extern "C" {
4158  pub fn xmlListPopFront(l: xmlListPtr);
4159}
4160unsafe extern "C" {
4161  pub fn xmlListPopBack(l: xmlListPtr);
4162}
4163unsafe extern "C" {
4164  pub fn xmlListPushFront(
4165    l: xmlListPtr,
4166    data: *mut ::std::os::raw::c_void,
4167  ) -> ::std::os::raw::c_int;
4168}
4169unsafe extern "C" {
4170  pub fn xmlListPushBack(l: xmlListPtr, data: *mut ::std::os::raw::c_void)
4171  -> ::std::os::raw::c_int;
4172}
4173unsafe extern "C" {
4174  pub fn xmlListReverse(l: xmlListPtr);
4175}
4176unsafe extern "C" {
4177  pub fn xmlListSort(l: xmlListPtr);
4178}
4179unsafe extern "C" {
4180  pub fn xmlListWalk(l: xmlListPtr, walker: xmlListWalker, user: *mut ::std::os::raw::c_void);
4181}
4182unsafe extern "C" {
4183  pub fn xmlListReverseWalk(
4184    l: xmlListPtr,
4185    walker: xmlListWalker,
4186    user: *mut ::std::os::raw::c_void,
4187  );
4188}
4189unsafe extern "C" {
4190  pub fn xmlListMerge(l1: xmlListPtr, l2: xmlListPtr);
4191}
4192unsafe extern "C" {
4193  pub fn xmlListDup(old: xmlListPtr) -> xmlListPtr;
4194}
4195unsafe extern "C" {
4196  pub fn xmlListCopy(cur: xmlListPtr, old: xmlListPtr) -> ::std::os::raw::c_int;
4197}
4198unsafe extern "C" {
4199  pub fn xmlLinkGetData(lk: xmlLinkPtr) -> *mut ::std::os::raw::c_void;
4200}
4201#[repr(C)]
4202#[derive(Debug, Copy, Clone)]
4203pub struct _xmlAutomata {
4204  _unused: [u8; 0],
4205}
4206#[doc = " xmlAutomataPtr:\n\n A libxml automata description, It can be compiled into a regexp"]
4207pub type xmlAutomata = _xmlAutomata;
4208pub type xmlAutomataPtr = *mut xmlAutomata;
4209#[repr(C)]
4210#[derive(Debug, Copy, Clone)]
4211pub struct _xmlAutomataState {
4212  _unused: [u8; 0],
4213}
4214#[doc = " xmlAutomataStatePtr:\n\n A state int the automata description,"]
4215pub type xmlAutomataState = _xmlAutomataState;
4216pub type xmlAutomataStatePtr = *mut xmlAutomataState;
4217unsafe extern "C" {
4218  pub fn xmlNewAutomata() -> xmlAutomataPtr;
4219}
4220unsafe extern "C" {
4221  pub fn xmlFreeAutomata(am: xmlAutomataPtr);
4222}
4223unsafe extern "C" {
4224  pub fn xmlAutomataGetInitState(am: xmlAutomataPtr) -> xmlAutomataStatePtr;
4225}
4226unsafe extern "C" {
4227  pub fn xmlAutomataSetFinalState(
4228    am: xmlAutomataPtr,
4229    state: xmlAutomataStatePtr,
4230  ) -> ::std::os::raw::c_int;
4231}
4232unsafe extern "C" {
4233  pub fn xmlAutomataNewState(am: xmlAutomataPtr) -> xmlAutomataStatePtr;
4234}
4235unsafe extern "C" {
4236  pub fn xmlAutomataNewTransition(
4237    am: xmlAutomataPtr,
4238    from: xmlAutomataStatePtr,
4239    to: xmlAutomataStatePtr,
4240    token: *const xmlChar,
4241    data: *mut ::std::os::raw::c_void,
4242  ) -> xmlAutomataStatePtr;
4243}
4244unsafe extern "C" {
4245  pub fn xmlAutomataNewTransition2(
4246    am: xmlAutomataPtr,
4247    from: xmlAutomataStatePtr,
4248    to: xmlAutomataStatePtr,
4249    token: *const xmlChar,
4250    token2: *const xmlChar,
4251    data: *mut ::std::os::raw::c_void,
4252  ) -> xmlAutomataStatePtr;
4253}
4254unsafe extern "C" {
4255  pub fn xmlAutomataNewNegTrans(
4256    am: xmlAutomataPtr,
4257    from: xmlAutomataStatePtr,
4258    to: xmlAutomataStatePtr,
4259    token: *const xmlChar,
4260    token2: *const xmlChar,
4261    data: *mut ::std::os::raw::c_void,
4262  ) -> xmlAutomataStatePtr;
4263}
4264unsafe extern "C" {
4265  pub fn xmlAutomataNewCountTrans(
4266    am: xmlAutomataPtr,
4267    from: xmlAutomataStatePtr,
4268    to: xmlAutomataStatePtr,
4269    token: *const xmlChar,
4270    min: ::std::os::raw::c_int,
4271    max: ::std::os::raw::c_int,
4272    data: *mut ::std::os::raw::c_void,
4273  ) -> xmlAutomataStatePtr;
4274}
4275unsafe extern "C" {
4276  pub fn xmlAutomataNewCountTrans2(
4277    am: xmlAutomataPtr,
4278    from: xmlAutomataStatePtr,
4279    to: xmlAutomataStatePtr,
4280    token: *const xmlChar,
4281    token2: *const xmlChar,
4282    min: ::std::os::raw::c_int,
4283    max: ::std::os::raw::c_int,
4284    data: *mut ::std::os::raw::c_void,
4285  ) -> xmlAutomataStatePtr;
4286}
4287unsafe extern "C" {
4288  pub fn xmlAutomataNewOnceTrans(
4289    am: xmlAutomataPtr,
4290    from: xmlAutomataStatePtr,
4291    to: xmlAutomataStatePtr,
4292    token: *const xmlChar,
4293    min: ::std::os::raw::c_int,
4294    max: ::std::os::raw::c_int,
4295    data: *mut ::std::os::raw::c_void,
4296  ) -> xmlAutomataStatePtr;
4297}
4298unsafe extern "C" {
4299  pub fn xmlAutomataNewOnceTrans2(
4300    am: xmlAutomataPtr,
4301    from: xmlAutomataStatePtr,
4302    to: xmlAutomataStatePtr,
4303    token: *const xmlChar,
4304    token2: *const xmlChar,
4305    min: ::std::os::raw::c_int,
4306    max: ::std::os::raw::c_int,
4307    data: *mut ::std::os::raw::c_void,
4308  ) -> xmlAutomataStatePtr;
4309}
4310unsafe extern "C" {
4311  pub fn xmlAutomataNewAllTrans(
4312    am: xmlAutomataPtr,
4313    from: xmlAutomataStatePtr,
4314    to: xmlAutomataStatePtr,
4315    lax: ::std::os::raw::c_int,
4316  ) -> xmlAutomataStatePtr;
4317}
4318unsafe extern "C" {
4319  pub fn xmlAutomataNewEpsilon(
4320    am: xmlAutomataPtr,
4321    from: xmlAutomataStatePtr,
4322    to: xmlAutomataStatePtr,
4323  ) -> xmlAutomataStatePtr;
4324}
4325unsafe extern "C" {
4326  pub fn xmlAutomataNewCountedTrans(
4327    am: xmlAutomataPtr,
4328    from: xmlAutomataStatePtr,
4329    to: xmlAutomataStatePtr,
4330    counter: ::std::os::raw::c_int,
4331  ) -> xmlAutomataStatePtr;
4332}
4333unsafe extern "C" {
4334  pub fn xmlAutomataNewCounterTrans(
4335    am: xmlAutomataPtr,
4336    from: xmlAutomataStatePtr,
4337    to: xmlAutomataStatePtr,
4338    counter: ::std::os::raw::c_int,
4339  ) -> xmlAutomataStatePtr;
4340}
4341unsafe extern "C" {
4342  pub fn xmlAutomataNewCounter(
4343    am: xmlAutomataPtr,
4344    min: ::std::os::raw::c_int,
4345    max: ::std::os::raw::c_int,
4346  ) -> ::std::os::raw::c_int;
4347}
4348unsafe extern "C" {
4349  pub fn xmlAutomataCompile(am: xmlAutomataPtr) -> xmlRegexpPtr;
4350}
4351unsafe extern "C" {
4352  pub fn xmlAutomataIsDeterminist(am: xmlAutomataPtr) -> ::std::os::raw::c_int;
4353}
4354#[repr(C)]
4355#[derive(Debug, Copy, Clone)]
4356pub struct _xmlValidState {
4357  _unused: [u8; 0],
4358}
4359pub type xmlValidState = _xmlValidState;
4360pub type xmlValidStatePtr = *mut xmlValidState;
4361#[doc = " xmlValidityErrorFunc:\n @ctx:  usually an xmlValidCtxtPtr to a validity error context,\n        but comes from ctxt->userData (which normally contains such\n        a pointer); ctxt->userData can be changed by the user.\n @msg:  the string to format *printf like vararg\n @...:  remaining arguments to the format\n\n Callback called when a validity error is found. This is a message\n oriented function similar to an *printf function."]
4362pub type xmlValidityErrorFunc = ::std::option::Option<
4363  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...),
4364>;
4365#[doc = " xmlValidityWarningFunc:\n @ctx:  usually an xmlValidCtxtPtr to a validity error context,\n        but comes from ctxt->userData (which normally contains such\n        a pointer); ctxt->userData can be changed by the user.\n @msg:  the string to format *printf like vararg\n @...:  remaining arguments to the format\n\n Callback called when a validity warning is found. This is a message\n oriented function similar to an *printf function."]
4366pub type xmlValidityWarningFunc = ::std::option::Option<
4367  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...),
4368>;
4369pub type xmlValidCtxt = _xmlValidCtxt;
4370pub type xmlValidCtxtPtr = *mut xmlValidCtxt;
4371#[repr(C)]
4372#[derive(Debug, Copy, Clone)]
4373pub struct _xmlValidCtxt {
4374  pub userData: *mut ::std::os::raw::c_void,
4375  pub error: xmlValidityErrorFunc,
4376  pub warning: xmlValidityWarningFunc,
4377  pub node: xmlNodePtr,
4378  pub nodeNr: ::std::os::raw::c_int,
4379  pub nodeMax: ::std::os::raw::c_int,
4380  pub nodeTab: *mut xmlNodePtr,
4381  pub finishDtd: ::std::os::raw::c_uint,
4382  pub doc: xmlDocPtr,
4383  pub valid: ::std::os::raw::c_int,
4384  pub vstate: *mut xmlValidState,
4385  pub vstateNr: ::std::os::raw::c_int,
4386  pub vstateMax: ::std::os::raw::c_int,
4387  pub vstateTab: *mut xmlValidState,
4388  pub am: xmlAutomataPtr,
4389  pub state: xmlAutomataStatePtr,
4390}
4391#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4392const _: () = {
4393  ["Size of _xmlValidCtxt"][::std::mem::size_of::<_xmlValidCtxt>() - 112usize];
4394  ["Alignment of _xmlValidCtxt"][::std::mem::align_of::<_xmlValidCtxt>() - 8usize];
4395  ["Offset of field: _xmlValidCtxt::userData"]
4396    [::std::mem::offset_of!(_xmlValidCtxt, userData) - 0usize];
4397  ["Offset of field: _xmlValidCtxt::error"][::std::mem::offset_of!(_xmlValidCtxt, error) - 8usize];
4398  ["Offset of field: _xmlValidCtxt::warning"]
4399    [::std::mem::offset_of!(_xmlValidCtxt, warning) - 16usize];
4400  ["Offset of field: _xmlValidCtxt::node"][::std::mem::offset_of!(_xmlValidCtxt, node) - 24usize];
4401  ["Offset of field: _xmlValidCtxt::nodeNr"]
4402    [::std::mem::offset_of!(_xmlValidCtxt, nodeNr) - 32usize];
4403  ["Offset of field: _xmlValidCtxt::nodeMax"]
4404    [::std::mem::offset_of!(_xmlValidCtxt, nodeMax) - 36usize];
4405  ["Offset of field: _xmlValidCtxt::nodeTab"]
4406    [::std::mem::offset_of!(_xmlValidCtxt, nodeTab) - 40usize];
4407  ["Offset of field: _xmlValidCtxt::finishDtd"]
4408    [::std::mem::offset_of!(_xmlValidCtxt, finishDtd) - 48usize];
4409  ["Offset of field: _xmlValidCtxt::doc"][::std::mem::offset_of!(_xmlValidCtxt, doc) - 56usize];
4410  ["Offset of field: _xmlValidCtxt::valid"][::std::mem::offset_of!(_xmlValidCtxt, valid) - 64usize];
4411  ["Offset of field: _xmlValidCtxt::vstate"]
4412    [::std::mem::offset_of!(_xmlValidCtxt, vstate) - 72usize];
4413  ["Offset of field: _xmlValidCtxt::vstateNr"]
4414    [::std::mem::offset_of!(_xmlValidCtxt, vstateNr) - 80usize];
4415  ["Offset of field: _xmlValidCtxt::vstateMax"]
4416    [::std::mem::offset_of!(_xmlValidCtxt, vstateMax) - 84usize];
4417  ["Offset of field: _xmlValidCtxt::vstateTab"]
4418    [::std::mem::offset_of!(_xmlValidCtxt, vstateTab) - 88usize];
4419  ["Offset of field: _xmlValidCtxt::am"][::std::mem::offset_of!(_xmlValidCtxt, am) - 96usize];
4420  ["Offset of field: _xmlValidCtxt::state"]
4421    [::std::mem::offset_of!(_xmlValidCtxt, state) - 104usize];
4422};
4423pub type xmlNotationTable = _xmlHashTable;
4424pub type xmlNotationTablePtr = *mut xmlNotationTable;
4425pub type xmlElementTable = _xmlHashTable;
4426pub type xmlElementTablePtr = *mut xmlElementTable;
4427pub type xmlAttributeTable = _xmlHashTable;
4428pub type xmlAttributeTablePtr = *mut xmlAttributeTable;
4429pub type xmlIDTable = _xmlHashTable;
4430pub type xmlIDTablePtr = *mut xmlIDTable;
4431pub type xmlRefTable = _xmlHashTable;
4432pub type xmlRefTablePtr = *mut xmlRefTable;
4433unsafe extern "C" {
4434  pub fn xmlAddNotationDecl(
4435    ctxt: xmlValidCtxtPtr,
4436    dtd: xmlDtdPtr,
4437    name: *const xmlChar,
4438    PublicID: *const xmlChar,
4439    SystemID: *const xmlChar,
4440  ) -> xmlNotationPtr;
4441}
4442unsafe extern "C" {
4443  pub fn xmlCopyNotationTable(table: xmlNotationTablePtr) -> xmlNotationTablePtr;
4444}
4445unsafe extern "C" {
4446  pub fn xmlFreeNotationTable(table: xmlNotationTablePtr);
4447}
4448unsafe extern "C" {
4449  pub fn xmlDumpNotationDecl(buf: xmlBufferPtr, nota: xmlNotationPtr);
4450}
4451unsafe extern "C" {
4452  pub fn xmlDumpNotationTable(buf: xmlBufferPtr, table: xmlNotationTablePtr);
4453}
4454unsafe extern "C" {
4455  pub fn xmlNewElementContent(
4456    name: *const xmlChar,
4457    type_: xmlElementContentType,
4458  ) -> xmlElementContentPtr;
4459}
4460unsafe extern "C" {
4461  pub fn xmlCopyElementContent(content: xmlElementContentPtr) -> xmlElementContentPtr;
4462}
4463unsafe extern "C" {
4464  pub fn xmlFreeElementContent(cur: xmlElementContentPtr);
4465}
4466unsafe extern "C" {
4467  pub fn xmlNewDocElementContent(
4468    doc: xmlDocPtr,
4469    name: *const xmlChar,
4470    type_: xmlElementContentType,
4471  ) -> xmlElementContentPtr;
4472}
4473unsafe extern "C" {
4474  pub fn xmlCopyDocElementContent(
4475    doc: xmlDocPtr,
4476    content: xmlElementContentPtr,
4477  ) -> xmlElementContentPtr;
4478}
4479unsafe extern "C" {
4480  pub fn xmlFreeDocElementContent(doc: xmlDocPtr, cur: xmlElementContentPtr);
4481}
4482unsafe extern "C" {
4483  pub fn xmlSnprintfElementContent(
4484    buf: *mut ::std::os::raw::c_char,
4485    size: ::std::os::raw::c_int,
4486    content: xmlElementContentPtr,
4487    englob: ::std::os::raw::c_int,
4488  );
4489}
4490unsafe extern "C" {
4491  pub fn xmlSprintfElementContent(
4492    buf: *mut ::std::os::raw::c_char,
4493    content: xmlElementContentPtr,
4494    englob: ::std::os::raw::c_int,
4495  );
4496}
4497unsafe extern "C" {
4498  pub fn xmlAddElementDecl(
4499    ctxt: xmlValidCtxtPtr,
4500    dtd: xmlDtdPtr,
4501    name: *const xmlChar,
4502    type_: xmlElementTypeVal,
4503    content: xmlElementContentPtr,
4504  ) -> xmlElementPtr;
4505}
4506unsafe extern "C" {
4507  pub fn xmlCopyElementTable(table: xmlElementTablePtr) -> xmlElementTablePtr;
4508}
4509unsafe extern "C" {
4510  pub fn xmlFreeElementTable(table: xmlElementTablePtr);
4511}
4512unsafe extern "C" {
4513  pub fn xmlDumpElementTable(buf: xmlBufferPtr, table: xmlElementTablePtr);
4514}
4515unsafe extern "C" {
4516  pub fn xmlDumpElementDecl(buf: xmlBufferPtr, elem: xmlElementPtr);
4517}
4518unsafe extern "C" {
4519  pub fn xmlCreateEnumeration(name: *const xmlChar) -> xmlEnumerationPtr;
4520}
4521unsafe extern "C" {
4522  pub fn xmlFreeEnumeration(cur: xmlEnumerationPtr);
4523}
4524unsafe extern "C" {
4525  pub fn xmlCopyEnumeration(cur: xmlEnumerationPtr) -> xmlEnumerationPtr;
4526}
4527unsafe extern "C" {
4528  pub fn xmlAddAttributeDecl(
4529    ctxt: xmlValidCtxtPtr,
4530    dtd: xmlDtdPtr,
4531    elem: *const xmlChar,
4532    name: *const xmlChar,
4533    ns: *const xmlChar,
4534    type_: xmlAttributeType,
4535    def: xmlAttributeDefault,
4536    defaultValue: *const xmlChar,
4537    tree: xmlEnumerationPtr,
4538  ) -> xmlAttributePtr;
4539}
4540unsafe extern "C" {
4541  pub fn xmlCopyAttributeTable(table: xmlAttributeTablePtr) -> xmlAttributeTablePtr;
4542}
4543unsafe extern "C" {
4544  pub fn xmlFreeAttributeTable(table: xmlAttributeTablePtr);
4545}
4546unsafe extern "C" {
4547  pub fn xmlDumpAttributeTable(buf: xmlBufferPtr, table: xmlAttributeTablePtr);
4548}
4549unsafe extern "C" {
4550  pub fn xmlDumpAttributeDecl(buf: xmlBufferPtr, attr: xmlAttributePtr);
4551}
4552unsafe extern "C" {
4553  pub fn xmlAddID(
4554    ctxt: xmlValidCtxtPtr,
4555    doc: xmlDocPtr,
4556    value: *const xmlChar,
4557    attr: xmlAttrPtr,
4558  ) -> xmlIDPtr;
4559}
4560unsafe extern "C" {
4561  pub fn xmlFreeIDTable(table: xmlIDTablePtr);
4562}
4563unsafe extern "C" {
4564  pub fn xmlGetID(doc: xmlDocPtr, ID: *const xmlChar) -> xmlAttrPtr;
4565}
4566unsafe extern "C" {
4567  pub fn xmlIsID(doc: xmlDocPtr, elem: xmlNodePtr, attr: xmlAttrPtr) -> ::std::os::raw::c_int;
4568}
4569unsafe extern "C" {
4570  pub fn xmlRemoveID(doc: xmlDocPtr, attr: xmlAttrPtr) -> ::std::os::raw::c_int;
4571}
4572unsafe extern "C" {
4573  pub fn xmlAddRef(
4574    ctxt: xmlValidCtxtPtr,
4575    doc: xmlDocPtr,
4576    value: *const xmlChar,
4577    attr: xmlAttrPtr,
4578  ) -> xmlRefPtr;
4579}
4580unsafe extern "C" {
4581  pub fn xmlFreeRefTable(table: xmlRefTablePtr);
4582}
4583unsafe extern "C" {
4584  pub fn xmlIsRef(doc: xmlDocPtr, elem: xmlNodePtr, attr: xmlAttrPtr) -> ::std::os::raw::c_int;
4585}
4586unsafe extern "C" {
4587  pub fn xmlRemoveRef(doc: xmlDocPtr, attr: xmlAttrPtr) -> ::std::os::raw::c_int;
4588}
4589unsafe extern "C" {
4590  pub fn xmlGetRefs(doc: xmlDocPtr, ID: *const xmlChar) -> xmlListPtr;
4591}
4592unsafe extern "C" {
4593  pub fn xmlNewValidCtxt() -> xmlValidCtxtPtr;
4594}
4595unsafe extern "C" {
4596  pub fn xmlFreeValidCtxt(arg1: xmlValidCtxtPtr);
4597}
4598unsafe extern "C" {
4599  pub fn xmlValidateRoot(ctxt: xmlValidCtxtPtr, doc: xmlDocPtr) -> ::std::os::raw::c_int;
4600}
4601unsafe extern "C" {
4602  pub fn xmlValidateElementDecl(
4603    ctxt: xmlValidCtxtPtr,
4604    doc: xmlDocPtr,
4605    elem: xmlElementPtr,
4606  ) -> ::std::os::raw::c_int;
4607}
4608unsafe extern "C" {
4609  pub fn xmlValidNormalizeAttributeValue(
4610    doc: xmlDocPtr,
4611    elem: xmlNodePtr,
4612    name: *const xmlChar,
4613    value: *const xmlChar,
4614  ) -> *mut xmlChar;
4615}
4616unsafe extern "C" {
4617  pub fn xmlValidCtxtNormalizeAttributeValue(
4618    ctxt: xmlValidCtxtPtr,
4619    doc: xmlDocPtr,
4620    elem: xmlNodePtr,
4621    name: *const xmlChar,
4622    value: *const xmlChar,
4623  ) -> *mut xmlChar;
4624}
4625unsafe extern "C" {
4626  pub fn xmlValidateAttributeDecl(
4627    ctxt: xmlValidCtxtPtr,
4628    doc: xmlDocPtr,
4629    attr: xmlAttributePtr,
4630  ) -> ::std::os::raw::c_int;
4631}
4632unsafe extern "C" {
4633  pub fn xmlValidateAttributeValue(
4634    type_: xmlAttributeType,
4635    value: *const xmlChar,
4636  ) -> ::std::os::raw::c_int;
4637}
4638unsafe extern "C" {
4639  pub fn xmlValidateNotationDecl(
4640    ctxt: xmlValidCtxtPtr,
4641    doc: xmlDocPtr,
4642    nota: xmlNotationPtr,
4643  ) -> ::std::os::raw::c_int;
4644}
4645unsafe extern "C" {
4646  pub fn xmlValidateDtd(
4647    ctxt: xmlValidCtxtPtr,
4648    doc: xmlDocPtr,
4649    dtd: xmlDtdPtr,
4650  ) -> ::std::os::raw::c_int;
4651}
4652unsafe extern "C" {
4653  pub fn xmlValidateDtdFinal(ctxt: xmlValidCtxtPtr, doc: xmlDocPtr) -> ::std::os::raw::c_int;
4654}
4655unsafe extern "C" {
4656  pub fn xmlValidateDocument(ctxt: xmlValidCtxtPtr, doc: xmlDocPtr) -> ::std::os::raw::c_int;
4657}
4658unsafe extern "C" {
4659  pub fn xmlValidateElement(
4660    ctxt: xmlValidCtxtPtr,
4661    doc: xmlDocPtr,
4662    elem: xmlNodePtr,
4663  ) -> ::std::os::raw::c_int;
4664}
4665unsafe extern "C" {
4666  pub fn xmlValidateOneElement(
4667    ctxt: xmlValidCtxtPtr,
4668    doc: xmlDocPtr,
4669    elem: xmlNodePtr,
4670  ) -> ::std::os::raw::c_int;
4671}
4672unsafe extern "C" {
4673  pub fn xmlValidateOneAttribute(
4674    ctxt: xmlValidCtxtPtr,
4675    doc: xmlDocPtr,
4676    elem: xmlNodePtr,
4677    attr: xmlAttrPtr,
4678    value: *const xmlChar,
4679  ) -> ::std::os::raw::c_int;
4680}
4681unsafe extern "C" {
4682  pub fn xmlValidateOneNamespace(
4683    ctxt: xmlValidCtxtPtr,
4684    doc: xmlDocPtr,
4685    elem: xmlNodePtr,
4686    prefix: *const xmlChar,
4687    ns: xmlNsPtr,
4688    value: *const xmlChar,
4689  ) -> ::std::os::raw::c_int;
4690}
4691unsafe extern "C" {
4692  pub fn xmlValidateDocumentFinal(ctxt: xmlValidCtxtPtr, doc: xmlDocPtr) -> ::std::os::raw::c_int;
4693}
4694unsafe extern "C" {
4695  pub fn xmlValidateNotationUse(
4696    ctxt: xmlValidCtxtPtr,
4697    doc: xmlDocPtr,
4698    notationName: *const xmlChar,
4699  ) -> ::std::os::raw::c_int;
4700}
4701unsafe extern "C" {
4702  pub fn xmlIsMixedElement(doc: xmlDocPtr, name: *const xmlChar) -> ::std::os::raw::c_int;
4703}
4704unsafe extern "C" {
4705  pub fn xmlGetDtdAttrDesc(
4706    dtd: xmlDtdPtr,
4707    elem: *const xmlChar,
4708    name: *const xmlChar,
4709  ) -> xmlAttributePtr;
4710}
4711unsafe extern "C" {
4712  pub fn xmlGetDtdQAttrDesc(
4713    dtd: xmlDtdPtr,
4714    elem: *const xmlChar,
4715    name: *const xmlChar,
4716    prefix: *const xmlChar,
4717  ) -> xmlAttributePtr;
4718}
4719unsafe extern "C" {
4720  pub fn xmlGetDtdNotationDesc(dtd: xmlDtdPtr, name: *const xmlChar) -> xmlNotationPtr;
4721}
4722unsafe extern "C" {
4723  pub fn xmlGetDtdQElementDesc(
4724    dtd: xmlDtdPtr,
4725    name: *const xmlChar,
4726    prefix: *const xmlChar,
4727  ) -> xmlElementPtr;
4728}
4729unsafe extern "C" {
4730  pub fn xmlGetDtdElementDesc(dtd: xmlDtdPtr, name: *const xmlChar) -> xmlElementPtr;
4731}
4732unsafe extern "C" {
4733  pub fn xmlValidGetPotentialChildren(
4734    ctree: *mut xmlElementContent,
4735    names: *mut *const xmlChar,
4736    len: *mut ::std::os::raw::c_int,
4737    max: ::std::os::raw::c_int,
4738  ) -> ::std::os::raw::c_int;
4739}
4740unsafe extern "C" {
4741  pub fn xmlValidGetValidElements(
4742    prev: *mut xmlNode,
4743    next: *mut xmlNode,
4744    names: *mut *const xmlChar,
4745    max: ::std::os::raw::c_int,
4746  ) -> ::std::os::raw::c_int;
4747}
4748unsafe extern "C" {
4749  pub fn xmlValidateNameValue(value: *const xmlChar) -> ::std::os::raw::c_int;
4750}
4751unsafe extern "C" {
4752  pub fn xmlValidateNamesValue(value: *const xmlChar) -> ::std::os::raw::c_int;
4753}
4754unsafe extern "C" {
4755  pub fn xmlValidateNmtokenValue(value: *const xmlChar) -> ::std::os::raw::c_int;
4756}
4757unsafe extern "C" {
4758  pub fn xmlValidateNmtokensValue(value: *const xmlChar) -> ::std::os::raw::c_int;
4759}
4760unsafe extern "C" {
4761  pub fn xmlValidBuildContentModel(
4762    ctxt: xmlValidCtxtPtr,
4763    elem: xmlElementPtr,
4764  ) -> ::std::os::raw::c_int;
4765}
4766unsafe extern "C" {
4767  pub fn xmlValidatePushElement(
4768    ctxt: xmlValidCtxtPtr,
4769    doc: xmlDocPtr,
4770    elem: xmlNodePtr,
4771    qname: *const xmlChar,
4772  ) -> ::std::os::raw::c_int;
4773}
4774unsafe extern "C" {
4775  pub fn xmlValidatePushCData(
4776    ctxt: xmlValidCtxtPtr,
4777    data: *const xmlChar,
4778    len: ::std::os::raw::c_int,
4779  ) -> ::std::os::raw::c_int;
4780}
4781unsafe extern "C" {
4782  pub fn xmlValidatePopElement(
4783    ctxt: xmlValidCtxtPtr,
4784    doc: xmlDocPtr,
4785    elem: xmlNodePtr,
4786    qname: *const xmlChar,
4787  ) -> ::std::os::raw::c_int;
4788}
4789pub const xmlEntityType_XML_INTERNAL_GENERAL_ENTITY: xmlEntityType = 1;
4790pub const xmlEntityType_XML_EXTERNAL_GENERAL_PARSED_ENTITY: xmlEntityType = 2;
4791pub const xmlEntityType_XML_EXTERNAL_GENERAL_UNPARSED_ENTITY: xmlEntityType = 3;
4792pub const xmlEntityType_XML_INTERNAL_PARAMETER_ENTITY: xmlEntityType = 4;
4793pub const xmlEntityType_XML_EXTERNAL_PARAMETER_ENTITY: xmlEntityType = 5;
4794pub const xmlEntityType_XML_INTERNAL_PREDEFINED_ENTITY: xmlEntityType = 6;
4795pub type xmlEntityType = ::std::os::raw::c_uint;
4796#[repr(C)]
4797#[derive(Debug, Copy, Clone)]
4798pub struct _xmlEntity {
4799  pub _private: *mut ::std::os::raw::c_void,
4800  pub type_: xmlElementType,
4801  pub name: *const xmlChar,
4802  pub children: *mut _xmlNode,
4803  pub last: *mut _xmlNode,
4804  pub parent: *mut _xmlDtd,
4805  pub next: *mut _xmlNode,
4806  pub prev: *mut _xmlNode,
4807  pub doc: *mut _xmlDoc,
4808  pub orig: *mut xmlChar,
4809  pub content: *mut xmlChar,
4810  pub length: ::std::os::raw::c_int,
4811  pub etype: xmlEntityType,
4812  pub ExternalID: *const xmlChar,
4813  pub SystemID: *const xmlChar,
4814  pub nexte: *mut _xmlEntity,
4815  pub URI: *const xmlChar,
4816  pub owner: ::std::os::raw::c_int,
4817  pub checked: ::std::os::raw::c_int,
4818}
4819#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4820const _: () = {
4821  ["Size of _xmlEntity"][::std::mem::size_of::<_xmlEntity>() - 136usize];
4822  ["Alignment of _xmlEntity"][::std::mem::align_of::<_xmlEntity>() - 8usize];
4823  ["Offset of field: _xmlEntity::_private"][::std::mem::offset_of!(_xmlEntity, _private) - 0usize];
4824  ["Offset of field: _xmlEntity::type_"][::std::mem::offset_of!(_xmlEntity, type_) - 8usize];
4825  ["Offset of field: _xmlEntity::name"][::std::mem::offset_of!(_xmlEntity, name) - 16usize];
4826  ["Offset of field: _xmlEntity::children"][::std::mem::offset_of!(_xmlEntity, children) - 24usize];
4827  ["Offset of field: _xmlEntity::last"][::std::mem::offset_of!(_xmlEntity, last) - 32usize];
4828  ["Offset of field: _xmlEntity::parent"][::std::mem::offset_of!(_xmlEntity, parent) - 40usize];
4829  ["Offset of field: _xmlEntity::next"][::std::mem::offset_of!(_xmlEntity, next) - 48usize];
4830  ["Offset of field: _xmlEntity::prev"][::std::mem::offset_of!(_xmlEntity, prev) - 56usize];
4831  ["Offset of field: _xmlEntity::doc"][::std::mem::offset_of!(_xmlEntity, doc) - 64usize];
4832  ["Offset of field: _xmlEntity::orig"][::std::mem::offset_of!(_xmlEntity, orig) - 72usize];
4833  ["Offset of field: _xmlEntity::content"][::std::mem::offset_of!(_xmlEntity, content) - 80usize];
4834  ["Offset of field: _xmlEntity::length"][::std::mem::offset_of!(_xmlEntity, length) - 88usize];
4835  ["Offset of field: _xmlEntity::etype"][::std::mem::offset_of!(_xmlEntity, etype) - 92usize];
4836  ["Offset of field: _xmlEntity::ExternalID"]
4837    [::std::mem::offset_of!(_xmlEntity, ExternalID) - 96usize];
4838  ["Offset of field: _xmlEntity::SystemID"]
4839    [::std::mem::offset_of!(_xmlEntity, SystemID) - 104usize];
4840  ["Offset of field: _xmlEntity::nexte"][::std::mem::offset_of!(_xmlEntity, nexte) - 112usize];
4841  ["Offset of field: _xmlEntity::URI"][::std::mem::offset_of!(_xmlEntity, URI) - 120usize];
4842  ["Offset of field: _xmlEntity::owner"][::std::mem::offset_of!(_xmlEntity, owner) - 128usize];
4843  ["Offset of field: _xmlEntity::checked"][::std::mem::offset_of!(_xmlEntity, checked) - 132usize];
4844};
4845pub type xmlEntitiesTable = _xmlHashTable;
4846pub type xmlEntitiesTablePtr = *mut xmlEntitiesTable;
4847unsafe extern "C" {
4848  pub fn xmlInitializePredefinedEntities();
4849}
4850unsafe extern "C" {
4851  pub fn xmlNewEntity(
4852    doc: xmlDocPtr,
4853    name: *const xmlChar,
4854    type_: ::std::os::raw::c_int,
4855    ExternalID: *const xmlChar,
4856    SystemID: *const xmlChar,
4857    content: *const xmlChar,
4858  ) -> xmlEntityPtr;
4859}
4860unsafe extern "C" {
4861  pub fn xmlAddDocEntity(
4862    doc: xmlDocPtr,
4863    name: *const xmlChar,
4864    type_: ::std::os::raw::c_int,
4865    ExternalID: *const xmlChar,
4866    SystemID: *const xmlChar,
4867    content: *const xmlChar,
4868  ) -> xmlEntityPtr;
4869}
4870unsafe extern "C" {
4871  pub fn xmlAddDtdEntity(
4872    doc: xmlDocPtr,
4873    name: *const xmlChar,
4874    type_: ::std::os::raw::c_int,
4875    ExternalID: *const xmlChar,
4876    SystemID: *const xmlChar,
4877    content: *const xmlChar,
4878  ) -> xmlEntityPtr;
4879}
4880unsafe extern "C" {
4881  pub fn xmlGetPredefinedEntity(name: *const xmlChar) -> xmlEntityPtr;
4882}
4883unsafe extern "C" {
4884  pub fn xmlGetDocEntity(doc: *const xmlDoc, name: *const xmlChar) -> xmlEntityPtr;
4885}
4886unsafe extern "C" {
4887  pub fn xmlGetDtdEntity(doc: xmlDocPtr, name: *const xmlChar) -> xmlEntityPtr;
4888}
4889unsafe extern "C" {
4890  pub fn xmlGetParameterEntity(doc: xmlDocPtr, name: *const xmlChar) -> xmlEntityPtr;
4891}
4892unsafe extern "C" {
4893  pub fn xmlEncodeEntities(doc: xmlDocPtr, input: *const xmlChar) -> *const xmlChar;
4894}
4895unsafe extern "C" {
4896  pub fn xmlEncodeEntitiesReentrant(doc: xmlDocPtr, input: *const xmlChar) -> *mut xmlChar;
4897}
4898unsafe extern "C" {
4899  pub fn xmlEncodeSpecialChars(doc: *const xmlDoc, input: *const xmlChar) -> *mut xmlChar;
4900}
4901unsafe extern "C" {
4902  pub fn xmlCreateEntitiesTable() -> xmlEntitiesTablePtr;
4903}
4904unsafe extern "C" {
4905  pub fn xmlCopyEntitiesTable(table: xmlEntitiesTablePtr) -> xmlEntitiesTablePtr;
4906}
4907unsafe extern "C" {
4908  pub fn xmlFreeEntitiesTable(table: xmlEntitiesTablePtr);
4909}
4910unsafe extern "C" {
4911  pub fn xmlDumpEntitiesTable(buf: xmlBufferPtr, table: xmlEntitiesTablePtr);
4912}
4913unsafe extern "C" {
4914  pub fn xmlDumpEntityDecl(buf: xmlBufferPtr, ent: xmlEntityPtr);
4915}
4916unsafe extern "C" {
4917  pub fn xmlCleanupPredefinedEntities();
4918}
4919#[doc = " xmlParserInputDeallocate:\n @str:  the string to deallocate\n\n Callback for freeing some parser input allocations."]
4920pub type xmlParserInputDeallocate = ::std::option::Option<unsafe extern "C" fn(str_: *mut xmlChar)>;
4921#[repr(C)]
4922#[derive(Debug, Copy, Clone)]
4923pub struct _xmlParserInput {
4924  pub buf: xmlParserInputBufferPtr,
4925  pub filename: *const ::std::os::raw::c_char,
4926  pub directory: *const ::std::os::raw::c_char,
4927  pub base: *const xmlChar,
4928  pub cur: *const xmlChar,
4929  pub end: *const xmlChar,
4930  pub length: ::std::os::raw::c_int,
4931  pub line: ::std::os::raw::c_int,
4932  pub col: ::std::os::raw::c_int,
4933  pub consumed: ::std::os::raw::c_ulong,
4934  pub free: xmlParserInputDeallocate,
4935  pub encoding: *const xmlChar,
4936  pub version: *const xmlChar,
4937  pub standalone: ::std::os::raw::c_int,
4938  pub id: ::std::os::raw::c_int,
4939}
4940#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4941const _: () = {
4942  ["Size of _xmlParserInput"][::std::mem::size_of::<_xmlParserInput>() - 104usize];
4943  ["Alignment of _xmlParserInput"][::std::mem::align_of::<_xmlParserInput>() - 8usize];
4944  ["Offset of field: _xmlParserInput::buf"][::std::mem::offset_of!(_xmlParserInput, buf) - 0usize];
4945  ["Offset of field: _xmlParserInput::filename"]
4946    [::std::mem::offset_of!(_xmlParserInput, filename) - 8usize];
4947  ["Offset of field: _xmlParserInput::directory"]
4948    [::std::mem::offset_of!(_xmlParserInput, directory) - 16usize];
4949  ["Offset of field: _xmlParserInput::base"]
4950    [::std::mem::offset_of!(_xmlParserInput, base) - 24usize];
4951  ["Offset of field: _xmlParserInput::cur"][::std::mem::offset_of!(_xmlParserInput, cur) - 32usize];
4952  ["Offset of field: _xmlParserInput::end"][::std::mem::offset_of!(_xmlParserInput, end) - 40usize];
4953  ["Offset of field: _xmlParserInput::length"]
4954    [::std::mem::offset_of!(_xmlParserInput, length) - 48usize];
4955  ["Offset of field: _xmlParserInput::line"]
4956    [::std::mem::offset_of!(_xmlParserInput, line) - 52usize];
4957  ["Offset of field: _xmlParserInput::col"][::std::mem::offset_of!(_xmlParserInput, col) - 56usize];
4958  ["Offset of field: _xmlParserInput::consumed"]
4959    [::std::mem::offset_of!(_xmlParserInput, consumed) - 64usize];
4960  ["Offset of field: _xmlParserInput::free"]
4961    [::std::mem::offset_of!(_xmlParserInput, free) - 72usize];
4962  ["Offset of field: _xmlParserInput::encoding"]
4963    [::std::mem::offset_of!(_xmlParserInput, encoding) - 80usize];
4964  ["Offset of field: _xmlParserInput::version"]
4965    [::std::mem::offset_of!(_xmlParserInput, version) - 88usize];
4966  ["Offset of field: _xmlParserInput::standalone"]
4967    [::std::mem::offset_of!(_xmlParserInput, standalone) - 96usize];
4968  ["Offset of field: _xmlParserInput::id"][::std::mem::offset_of!(_xmlParserInput, id) - 100usize];
4969};
4970#[doc = " xmlParserNodeInfo:\n\n The parser can be asked to collect Node information, i.e. at what\n place in the file they were detected.\n NOTE: This is off by default and not very well tested."]
4971pub type xmlParserNodeInfo = _xmlParserNodeInfo;
4972pub type xmlParserNodeInfoPtr = *mut xmlParserNodeInfo;
4973#[repr(C)]
4974#[derive(Debug, Copy, Clone)]
4975pub struct _xmlParserNodeInfo {
4976  pub node: *const _xmlNode,
4977  pub begin_pos: ::std::os::raw::c_ulong,
4978  pub begin_line: ::std::os::raw::c_ulong,
4979  pub end_pos: ::std::os::raw::c_ulong,
4980  pub end_line: ::std::os::raw::c_ulong,
4981}
4982#[allow(clippy::unnecessary_operation, clippy::identity_op)]
4983const _: () = {
4984  ["Size of _xmlParserNodeInfo"][::std::mem::size_of::<_xmlParserNodeInfo>() - 40usize];
4985  ["Alignment of _xmlParserNodeInfo"][::std::mem::align_of::<_xmlParserNodeInfo>() - 8usize];
4986  ["Offset of field: _xmlParserNodeInfo::node"]
4987    [::std::mem::offset_of!(_xmlParserNodeInfo, node) - 0usize];
4988  ["Offset of field: _xmlParserNodeInfo::begin_pos"]
4989    [::std::mem::offset_of!(_xmlParserNodeInfo, begin_pos) - 8usize];
4990  ["Offset of field: _xmlParserNodeInfo::begin_line"]
4991    [::std::mem::offset_of!(_xmlParserNodeInfo, begin_line) - 16usize];
4992  ["Offset of field: _xmlParserNodeInfo::end_pos"]
4993    [::std::mem::offset_of!(_xmlParserNodeInfo, end_pos) - 24usize];
4994  ["Offset of field: _xmlParserNodeInfo::end_line"]
4995    [::std::mem::offset_of!(_xmlParserNodeInfo, end_line) - 32usize];
4996};
4997pub type xmlParserNodeInfoSeq = _xmlParserNodeInfoSeq;
4998pub type xmlParserNodeInfoSeqPtr = *mut xmlParserNodeInfoSeq;
4999#[repr(C)]
5000#[derive(Debug, Copy, Clone)]
5001pub struct _xmlParserNodeInfoSeq {
5002  pub maximum: ::std::os::raw::c_ulong,
5003  pub length: ::std::os::raw::c_ulong,
5004  pub buffer: *mut xmlParserNodeInfo,
5005}
5006#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5007const _: () = {
5008  ["Size of _xmlParserNodeInfoSeq"][::std::mem::size_of::<_xmlParserNodeInfoSeq>() - 24usize];
5009  ["Alignment of _xmlParserNodeInfoSeq"][::std::mem::align_of::<_xmlParserNodeInfoSeq>() - 8usize];
5010  ["Offset of field: _xmlParserNodeInfoSeq::maximum"]
5011    [::std::mem::offset_of!(_xmlParserNodeInfoSeq, maximum) - 0usize];
5012  ["Offset of field: _xmlParserNodeInfoSeq::length"]
5013    [::std::mem::offset_of!(_xmlParserNodeInfoSeq, length) - 8usize];
5014  ["Offset of field: _xmlParserNodeInfoSeq::buffer"]
5015    [::std::mem::offset_of!(_xmlParserNodeInfoSeq, buffer) - 16usize];
5016};
5017pub const xmlParserInputState_XML_PARSER_EOF: xmlParserInputState = -1;
5018pub const xmlParserInputState_XML_PARSER_START: xmlParserInputState = 0;
5019pub const xmlParserInputState_XML_PARSER_MISC: xmlParserInputState = 1;
5020pub const xmlParserInputState_XML_PARSER_PI: xmlParserInputState = 2;
5021pub const xmlParserInputState_XML_PARSER_DTD: xmlParserInputState = 3;
5022pub const xmlParserInputState_XML_PARSER_PROLOG: xmlParserInputState = 4;
5023pub const xmlParserInputState_XML_PARSER_COMMENT: xmlParserInputState = 5;
5024pub const xmlParserInputState_XML_PARSER_START_TAG: xmlParserInputState = 6;
5025pub const xmlParserInputState_XML_PARSER_CONTENT: xmlParserInputState = 7;
5026pub const xmlParserInputState_XML_PARSER_CDATA_SECTION: xmlParserInputState = 8;
5027pub const xmlParserInputState_XML_PARSER_END_TAG: xmlParserInputState = 9;
5028pub const xmlParserInputState_XML_PARSER_ENTITY_DECL: xmlParserInputState = 10;
5029pub const xmlParserInputState_XML_PARSER_ENTITY_VALUE: xmlParserInputState = 11;
5030pub const xmlParserInputState_XML_PARSER_ATTRIBUTE_VALUE: xmlParserInputState = 12;
5031pub const xmlParserInputState_XML_PARSER_SYSTEM_LITERAL: xmlParserInputState = 13;
5032pub const xmlParserInputState_XML_PARSER_EPILOG: xmlParserInputState = 14;
5033pub const xmlParserInputState_XML_PARSER_IGNORE: xmlParserInputState = 15;
5034pub const xmlParserInputState_XML_PARSER_PUBLIC_LITERAL: xmlParserInputState = 16;
5035#[doc = " xmlParserInputState:\n\n The parser is now working also as a state based parser.\n The recursive one use the state info for entities processing."]
5036pub type xmlParserInputState = ::std::os::raw::c_int;
5037pub const xmlParserMode_XML_PARSE_UNKNOWN: xmlParserMode = 0;
5038pub const xmlParserMode_XML_PARSE_DOM: xmlParserMode = 1;
5039pub const xmlParserMode_XML_PARSE_SAX: xmlParserMode = 2;
5040pub const xmlParserMode_XML_PARSE_PUSH_DOM: xmlParserMode = 3;
5041pub const xmlParserMode_XML_PARSE_PUSH_SAX: xmlParserMode = 4;
5042pub const xmlParserMode_XML_PARSE_READER: xmlParserMode = 5;
5043#[doc = " xmlParserMode:\n\n A parser can operate in various modes"]
5044pub type xmlParserMode = ::std::os::raw::c_uint;
5045#[repr(C)]
5046#[derive(Debug, Copy, Clone)]
5047pub struct _xmlStartTag {
5048  _unused: [u8; 0],
5049}
5050pub type xmlStartTag = _xmlStartTag;
5051#[doc = " xmlParserCtxt:\n\n The parser context.\n NOTE This doesn't completely define the parser state, the (current ?)\n      design of the parser uses recursive function calls since this allow\n      and easy mapping from the production rules of the specification\n      to the actual code. The drawback is that the actual function call\n      also reflect the parser state. However most of the parsing routines\n      takes as the only argument the parser context pointer, so migrating\n      to a state based parser for progressive parsing shouldn't be too hard."]
5052#[repr(C)]
5053#[derive(Debug, Copy, Clone)]
5054pub struct _xmlParserCtxt {
5055  pub sax: *mut _xmlSAXHandler,
5056  pub userData: *mut ::std::os::raw::c_void,
5057  pub myDoc: xmlDocPtr,
5058  pub wellFormed: ::std::os::raw::c_int,
5059  pub replaceEntities: ::std::os::raw::c_int,
5060  pub version: *const xmlChar,
5061  pub encoding: *const xmlChar,
5062  pub standalone: ::std::os::raw::c_int,
5063  pub html: ::std::os::raw::c_int,
5064  pub input: xmlParserInputPtr,
5065  pub inputNr: ::std::os::raw::c_int,
5066  pub inputMax: ::std::os::raw::c_int,
5067  pub inputTab: *mut xmlParserInputPtr,
5068  pub node: xmlNodePtr,
5069  pub nodeNr: ::std::os::raw::c_int,
5070  pub nodeMax: ::std::os::raw::c_int,
5071  pub nodeTab: *mut xmlNodePtr,
5072  pub record_info: ::std::os::raw::c_int,
5073  pub node_seq: xmlParserNodeInfoSeq,
5074  pub errNo: ::std::os::raw::c_int,
5075  pub hasExternalSubset: ::std::os::raw::c_int,
5076  pub hasPErefs: ::std::os::raw::c_int,
5077  pub external: ::std::os::raw::c_int,
5078  pub valid: ::std::os::raw::c_int,
5079  pub validate: ::std::os::raw::c_int,
5080  pub vctxt: xmlValidCtxt,
5081  pub instate: xmlParserInputState,
5082  pub token: ::std::os::raw::c_int,
5083  pub directory: *mut ::std::os::raw::c_char,
5084  pub name: *const xmlChar,
5085  pub nameNr: ::std::os::raw::c_int,
5086  pub nameMax: ::std::os::raw::c_int,
5087  pub nameTab: *mut *const xmlChar,
5088  pub nbChars: ::std::os::raw::c_long,
5089  pub checkIndex: ::std::os::raw::c_long,
5090  pub keepBlanks: ::std::os::raw::c_int,
5091  pub disableSAX: ::std::os::raw::c_int,
5092  pub inSubset: ::std::os::raw::c_int,
5093  pub intSubName: *const xmlChar,
5094  pub extSubURI: *mut xmlChar,
5095  pub extSubSystem: *mut xmlChar,
5096  pub space: *mut ::std::os::raw::c_int,
5097  pub spaceNr: ::std::os::raw::c_int,
5098  pub spaceMax: ::std::os::raw::c_int,
5099  pub spaceTab: *mut ::std::os::raw::c_int,
5100  pub depth: ::std::os::raw::c_int,
5101  pub entity: xmlParserInputPtr,
5102  pub charset: ::std::os::raw::c_int,
5103  pub nodelen: ::std::os::raw::c_int,
5104  pub nodemem: ::std::os::raw::c_int,
5105  pub pedantic: ::std::os::raw::c_int,
5106  pub _private: *mut ::std::os::raw::c_void,
5107  pub loadsubset: ::std::os::raw::c_int,
5108  pub linenumbers: ::std::os::raw::c_int,
5109  pub catalogs: *mut ::std::os::raw::c_void,
5110  pub recovery: ::std::os::raw::c_int,
5111  pub progressive: ::std::os::raw::c_int,
5112  pub dict: xmlDictPtr,
5113  pub atts: *mut *const xmlChar,
5114  pub maxatts: ::std::os::raw::c_int,
5115  pub docdict: ::std::os::raw::c_int,
5116  pub str_xml: *const xmlChar,
5117  pub str_xmlns: *const xmlChar,
5118  pub str_xml_ns: *const xmlChar,
5119  pub sax2: ::std::os::raw::c_int,
5120  pub nsNr: ::std::os::raw::c_int,
5121  pub nsMax: ::std::os::raw::c_int,
5122  pub nsTab: *mut *const xmlChar,
5123  pub attallocs: *mut ::std::os::raw::c_int,
5124  pub pushTab: *mut xmlStartTag,
5125  pub attsDefault: xmlHashTablePtr,
5126  pub attsSpecial: xmlHashTablePtr,
5127  pub nsWellFormed: ::std::os::raw::c_int,
5128  pub options: ::std::os::raw::c_int,
5129  pub dictNames: ::std::os::raw::c_int,
5130  pub freeElemsNr: ::std::os::raw::c_int,
5131  pub freeElems: xmlNodePtr,
5132  pub freeAttrsNr: ::std::os::raw::c_int,
5133  pub freeAttrs: xmlAttrPtr,
5134  pub lastError: xmlError,
5135  pub parseMode: xmlParserMode,
5136  pub nbentities: ::std::os::raw::c_ulong,
5137  pub sizeentities: ::std::os::raw::c_ulong,
5138  pub nodeInfo: *mut xmlParserNodeInfo,
5139  pub nodeInfoNr: ::std::os::raw::c_int,
5140  pub nodeInfoMax: ::std::os::raw::c_int,
5141  pub nodeInfoTab: *mut xmlParserNodeInfo,
5142  pub input_id: ::std::os::raw::c_int,
5143  pub sizeentcopy: ::std::os::raw::c_ulong,
5144}
5145#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5146const _: () = {
5147  ["Size of _xmlParserCtxt"][::std::mem::size_of::<_xmlParserCtxt>() - 752usize];
5148  ["Alignment of _xmlParserCtxt"][::std::mem::align_of::<_xmlParserCtxt>() - 8usize];
5149  ["Offset of field: _xmlParserCtxt::sax"][::std::mem::offset_of!(_xmlParserCtxt, sax) - 0usize];
5150  ["Offset of field: _xmlParserCtxt::userData"]
5151    [::std::mem::offset_of!(_xmlParserCtxt, userData) - 8usize];
5152  ["Offset of field: _xmlParserCtxt::myDoc"]
5153    [::std::mem::offset_of!(_xmlParserCtxt, myDoc) - 16usize];
5154  ["Offset of field: _xmlParserCtxt::wellFormed"]
5155    [::std::mem::offset_of!(_xmlParserCtxt, wellFormed) - 24usize];
5156  ["Offset of field: _xmlParserCtxt::replaceEntities"]
5157    [::std::mem::offset_of!(_xmlParserCtxt, replaceEntities) - 28usize];
5158  ["Offset of field: _xmlParserCtxt::version"]
5159    [::std::mem::offset_of!(_xmlParserCtxt, version) - 32usize];
5160  ["Offset of field: _xmlParserCtxt::encoding"]
5161    [::std::mem::offset_of!(_xmlParserCtxt, encoding) - 40usize];
5162  ["Offset of field: _xmlParserCtxt::standalone"]
5163    [::std::mem::offset_of!(_xmlParserCtxt, standalone) - 48usize];
5164  ["Offset of field: _xmlParserCtxt::html"][::std::mem::offset_of!(_xmlParserCtxt, html) - 52usize];
5165  ["Offset of field: _xmlParserCtxt::input"]
5166    [::std::mem::offset_of!(_xmlParserCtxt, input) - 56usize];
5167  ["Offset of field: _xmlParserCtxt::inputNr"]
5168    [::std::mem::offset_of!(_xmlParserCtxt, inputNr) - 64usize];
5169  ["Offset of field: _xmlParserCtxt::inputMax"]
5170    [::std::mem::offset_of!(_xmlParserCtxt, inputMax) - 68usize];
5171  ["Offset of field: _xmlParserCtxt::inputTab"]
5172    [::std::mem::offset_of!(_xmlParserCtxt, inputTab) - 72usize];
5173  ["Offset of field: _xmlParserCtxt::node"][::std::mem::offset_of!(_xmlParserCtxt, node) - 80usize];
5174  ["Offset of field: _xmlParserCtxt::nodeNr"]
5175    [::std::mem::offset_of!(_xmlParserCtxt, nodeNr) - 88usize];
5176  ["Offset of field: _xmlParserCtxt::nodeMax"]
5177    [::std::mem::offset_of!(_xmlParserCtxt, nodeMax) - 92usize];
5178  ["Offset of field: _xmlParserCtxt::nodeTab"]
5179    [::std::mem::offset_of!(_xmlParserCtxt, nodeTab) - 96usize];
5180  ["Offset of field: _xmlParserCtxt::record_info"]
5181    [::std::mem::offset_of!(_xmlParserCtxt, record_info) - 104usize];
5182  ["Offset of field: _xmlParserCtxt::node_seq"]
5183    [::std::mem::offset_of!(_xmlParserCtxt, node_seq) - 112usize];
5184  ["Offset of field: _xmlParserCtxt::errNo"]
5185    [::std::mem::offset_of!(_xmlParserCtxt, errNo) - 136usize];
5186  ["Offset of field: _xmlParserCtxt::hasExternalSubset"]
5187    [::std::mem::offset_of!(_xmlParserCtxt, hasExternalSubset) - 140usize];
5188  ["Offset of field: _xmlParserCtxt::hasPErefs"]
5189    [::std::mem::offset_of!(_xmlParserCtxt, hasPErefs) - 144usize];
5190  ["Offset of field: _xmlParserCtxt::external"]
5191    [::std::mem::offset_of!(_xmlParserCtxt, external) - 148usize];
5192  ["Offset of field: _xmlParserCtxt::valid"]
5193    [::std::mem::offset_of!(_xmlParserCtxt, valid) - 152usize];
5194  ["Offset of field: _xmlParserCtxt::validate"]
5195    [::std::mem::offset_of!(_xmlParserCtxt, validate) - 156usize];
5196  ["Offset of field: _xmlParserCtxt::vctxt"]
5197    [::std::mem::offset_of!(_xmlParserCtxt, vctxt) - 160usize];
5198  ["Offset of field: _xmlParserCtxt::instate"]
5199    [::std::mem::offset_of!(_xmlParserCtxt, instate) - 272usize];
5200  ["Offset of field: _xmlParserCtxt::token"]
5201    [::std::mem::offset_of!(_xmlParserCtxt, token) - 276usize];
5202  ["Offset of field: _xmlParserCtxt::directory"]
5203    [::std::mem::offset_of!(_xmlParserCtxt, directory) - 280usize];
5204  ["Offset of field: _xmlParserCtxt::name"]
5205    [::std::mem::offset_of!(_xmlParserCtxt, name) - 288usize];
5206  ["Offset of field: _xmlParserCtxt::nameNr"]
5207    [::std::mem::offset_of!(_xmlParserCtxt, nameNr) - 296usize];
5208  ["Offset of field: _xmlParserCtxt::nameMax"]
5209    [::std::mem::offset_of!(_xmlParserCtxt, nameMax) - 300usize];
5210  ["Offset of field: _xmlParserCtxt::nameTab"]
5211    [::std::mem::offset_of!(_xmlParserCtxt, nameTab) - 304usize];
5212  ["Offset of field: _xmlParserCtxt::nbChars"]
5213    [::std::mem::offset_of!(_xmlParserCtxt, nbChars) - 312usize];
5214  ["Offset of field: _xmlParserCtxt::checkIndex"]
5215    [::std::mem::offset_of!(_xmlParserCtxt, checkIndex) - 320usize];
5216  ["Offset of field: _xmlParserCtxt::keepBlanks"]
5217    [::std::mem::offset_of!(_xmlParserCtxt, keepBlanks) - 328usize];
5218  ["Offset of field: _xmlParserCtxt::disableSAX"]
5219    [::std::mem::offset_of!(_xmlParserCtxt, disableSAX) - 332usize];
5220  ["Offset of field: _xmlParserCtxt::inSubset"]
5221    [::std::mem::offset_of!(_xmlParserCtxt, inSubset) - 336usize];
5222  ["Offset of field: _xmlParserCtxt::intSubName"]
5223    [::std::mem::offset_of!(_xmlParserCtxt, intSubName) - 344usize];
5224  ["Offset of field: _xmlParserCtxt::extSubURI"]
5225    [::std::mem::offset_of!(_xmlParserCtxt, extSubURI) - 352usize];
5226  ["Offset of field: _xmlParserCtxt::extSubSystem"]
5227    [::std::mem::offset_of!(_xmlParserCtxt, extSubSystem) - 360usize];
5228  ["Offset of field: _xmlParserCtxt::space"]
5229    [::std::mem::offset_of!(_xmlParserCtxt, space) - 368usize];
5230  ["Offset of field: _xmlParserCtxt::spaceNr"]
5231    [::std::mem::offset_of!(_xmlParserCtxt, spaceNr) - 376usize];
5232  ["Offset of field: _xmlParserCtxt::spaceMax"]
5233    [::std::mem::offset_of!(_xmlParserCtxt, spaceMax) - 380usize];
5234  ["Offset of field: _xmlParserCtxt::spaceTab"]
5235    [::std::mem::offset_of!(_xmlParserCtxt, spaceTab) - 384usize];
5236  ["Offset of field: _xmlParserCtxt::depth"]
5237    [::std::mem::offset_of!(_xmlParserCtxt, depth) - 392usize];
5238  ["Offset of field: _xmlParserCtxt::entity"]
5239    [::std::mem::offset_of!(_xmlParserCtxt, entity) - 400usize];
5240  ["Offset of field: _xmlParserCtxt::charset"]
5241    [::std::mem::offset_of!(_xmlParserCtxt, charset) - 408usize];
5242  ["Offset of field: _xmlParserCtxt::nodelen"]
5243    [::std::mem::offset_of!(_xmlParserCtxt, nodelen) - 412usize];
5244  ["Offset of field: _xmlParserCtxt::nodemem"]
5245    [::std::mem::offset_of!(_xmlParserCtxt, nodemem) - 416usize];
5246  ["Offset of field: _xmlParserCtxt::pedantic"]
5247    [::std::mem::offset_of!(_xmlParserCtxt, pedantic) - 420usize];
5248  ["Offset of field: _xmlParserCtxt::_private"]
5249    [::std::mem::offset_of!(_xmlParserCtxt, _private) - 424usize];
5250  ["Offset of field: _xmlParserCtxt::loadsubset"]
5251    [::std::mem::offset_of!(_xmlParserCtxt, loadsubset) - 432usize];
5252  ["Offset of field: _xmlParserCtxt::linenumbers"]
5253    [::std::mem::offset_of!(_xmlParserCtxt, linenumbers) - 436usize];
5254  ["Offset of field: _xmlParserCtxt::catalogs"]
5255    [::std::mem::offset_of!(_xmlParserCtxt, catalogs) - 440usize];
5256  ["Offset of field: _xmlParserCtxt::recovery"]
5257    [::std::mem::offset_of!(_xmlParserCtxt, recovery) - 448usize];
5258  ["Offset of field: _xmlParserCtxt::progressive"]
5259    [::std::mem::offset_of!(_xmlParserCtxt, progressive) - 452usize];
5260  ["Offset of field: _xmlParserCtxt::dict"]
5261    [::std::mem::offset_of!(_xmlParserCtxt, dict) - 456usize];
5262  ["Offset of field: _xmlParserCtxt::atts"]
5263    [::std::mem::offset_of!(_xmlParserCtxt, atts) - 464usize];
5264  ["Offset of field: _xmlParserCtxt::maxatts"]
5265    [::std::mem::offset_of!(_xmlParserCtxt, maxatts) - 472usize];
5266  ["Offset of field: _xmlParserCtxt::docdict"]
5267    [::std::mem::offset_of!(_xmlParserCtxt, docdict) - 476usize];
5268  ["Offset of field: _xmlParserCtxt::str_xml"]
5269    [::std::mem::offset_of!(_xmlParserCtxt, str_xml) - 480usize];
5270  ["Offset of field: _xmlParserCtxt::str_xmlns"]
5271    [::std::mem::offset_of!(_xmlParserCtxt, str_xmlns) - 488usize];
5272  ["Offset of field: _xmlParserCtxt::str_xml_ns"]
5273    [::std::mem::offset_of!(_xmlParserCtxt, str_xml_ns) - 496usize];
5274  ["Offset of field: _xmlParserCtxt::sax2"]
5275    [::std::mem::offset_of!(_xmlParserCtxt, sax2) - 504usize];
5276  ["Offset of field: _xmlParserCtxt::nsNr"]
5277    [::std::mem::offset_of!(_xmlParserCtxt, nsNr) - 508usize];
5278  ["Offset of field: _xmlParserCtxt::nsMax"]
5279    [::std::mem::offset_of!(_xmlParserCtxt, nsMax) - 512usize];
5280  ["Offset of field: _xmlParserCtxt::nsTab"]
5281    [::std::mem::offset_of!(_xmlParserCtxt, nsTab) - 520usize];
5282  ["Offset of field: _xmlParserCtxt::attallocs"]
5283    [::std::mem::offset_of!(_xmlParserCtxt, attallocs) - 528usize];
5284  ["Offset of field: _xmlParserCtxt::pushTab"]
5285    [::std::mem::offset_of!(_xmlParserCtxt, pushTab) - 536usize];
5286  ["Offset of field: _xmlParserCtxt::attsDefault"]
5287    [::std::mem::offset_of!(_xmlParserCtxt, attsDefault) - 544usize];
5288  ["Offset of field: _xmlParserCtxt::attsSpecial"]
5289    [::std::mem::offset_of!(_xmlParserCtxt, attsSpecial) - 552usize];
5290  ["Offset of field: _xmlParserCtxt::nsWellFormed"]
5291    [::std::mem::offset_of!(_xmlParserCtxt, nsWellFormed) - 560usize];
5292  ["Offset of field: _xmlParserCtxt::options"]
5293    [::std::mem::offset_of!(_xmlParserCtxt, options) - 564usize];
5294  ["Offset of field: _xmlParserCtxt::dictNames"]
5295    [::std::mem::offset_of!(_xmlParserCtxt, dictNames) - 568usize];
5296  ["Offset of field: _xmlParserCtxt::freeElemsNr"]
5297    [::std::mem::offset_of!(_xmlParserCtxt, freeElemsNr) - 572usize];
5298  ["Offset of field: _xmlParserCtxt::freeElems"]
5299    [::std::mem::offset_of!(_xmlParserCtxt, freeElems) - 576usize];
5300  ["Offset of field: _xmlParserCtxt::freeAttrsNr"]
5301    [::std::mem::offset_of!(_xmlParserCtxt, freeAttrsNr) - 584usize];
5302  ["Offset of field: _xmlParserCtxt::freeAttrs"]
5303    [::std::mem::offset_of!(_xmlParserCtxt, freeAttrs) - 592usize];
5304  ["Offset of field: _xmlParserCtxt::lastError"]
5305    [::std::mem::offset_of!(_xmlParserCtxt, lastError) - 600usize];
5306  ["Offset of field: _xmlParserCtxt::parseMode"]
5307    [::std::mem::offset_of!(_xmlParserCtxt, parseMode) - 688usize];
5308  ["Offset of field: _xmlParserCtxt::nbentities"]
5309    [::std::mem::offset_of!(_xmlParserCtxt, nbentities) - 696usize];
5310  ["Offset of field: _xmlParserCtxt::sizeentities"]
5311    [::std::mem::offset_of!(_xmlParserCtxt, sizeentities) - 704usize];
5312  ["Offset of field: _xmlParserCtxt::nodeInfo"]
5313    [::std::mem::offset_of!(_xmlParserCtxt, nodeInfo) - 712usize];
5314  ["Offset of field: _xmlParserCtxt::nodeInfoNr"]
5315    [::std::mem::offset_of!(_xmlParserCtxt, nodeInfoNr) - 720usize];
5316  ["Offset of field: _xmlParserCtxt::nodeInfoMax"]
5317    [::std::mem::offset_of!(_xmlParserCtxt, nodeInfoMax) - 724usize];
5318  ["Offset of field: _xmlParserCtxt::nodeInfoTab"]
5319    [::std::mem::offset_of!(_xmlParserCtxt, nodeInfoTab) - 728usize];
5320  ["Offset of field: _xmlParserCtxt::input_id"]
5321    [::std::mem::offset_of!(_xmlParserCtxt, input_id) - 736usize];
5322  ["Offset of field: _xmlParserCtxt::sizeentcopy"]
5323    [::std::mem::offset_of!(_xmlParserCtxt, sizeentcopy) - 744usize];
5324};
5325#[doc = " xmlSAXLocator:\n\n A SAX Locator."]
5326#[repr(C)]
5327#[derive(Debug, Copy, Clone)]
5328pub struct _xmlSAXLocator {
5329  pub getPublicId:
5330    ::std::option::Option<unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void) -> *const xmlChar>,
5331  pub getSystemId:
5332    ::std::option::Option<unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void) -> *const xmlChar>,
5333  pub getLineNumber: ::std::option::Option<
5334    unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
5335  >,
5336  pub getColumnNumber: ::std::option::Option<
5337    unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
5338  >,
5339}
5340#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5341const _: () = {
5342  ["Size of _xmlSAXLocator"][::std::mem::size_of::<_xmlSAXLocator>() - 32usize];
5343  ["Alignment of _xmlSAXLocator"][::std::mem::align_of::<_xmlSAXLocator>() - 8usize];
5344  ["Offset of field: _xmlSAXLocator::getPublicId"]
5345    [::std::mem::offset_of!(_xmlSAXLocator, getPublicId) - 0usize];
5346  ["Offset of field: _xmlSAXLocator::getSystemId"]
5347    [::std::mem::offset_of!(_xmlSAXLocator, getSystemId) - 8usize];
5348  ["Offset of field: _xmlSAXLocator::getLineNumber"]
5349    [::std::mem::offset_of!(_xmlSAXLocator, getLineNumber) - 16usize];
5350  ["Offset of field: _xmlSAXLocator::getColumnNumber"]
5351    [::std::mem::offset_of!(_xmlSAXLocator, getColumnNumber) - 24usize];
5352};
5353#[doc = " resolveEntitySAXFunc:\n @ctx:  the user data (XML parser context)\n @publicId: The public ID of the entity\n @systemId: The system ID of the entity\n\n Callback:\n The entity loader, to control the loading of external entities,\n the application can either:\n    - override this resolveEntity() callback in the SAX block\n    - or better use the xmlSetExternalEntityLoader() function to\n      set up it's own entity resolution routine\n\n Returns the xmlParserInputPtr if inlined or NULL for DOM behaviour."]
5354pub type resolveEntitySAXFunc = ::std::option::Option<
5355  unsafe extern "C" fn(
5356    ctx: *mut ::std::os::raw::c_void,
5357    publicId: *const xmlChar,
5358    systemId: *const xmlChar,
5359  ) -> xmlParserInputPtr,
5360>;
5361#[doc = " internalSubsetSAXFunc:\n @ctx:  the user data (XML parser context)\n @name:  the root element name\n @ExternalID:  the external ID\n @SystemID:  the SYSTEM ID (e.g. filename or URL)\n\n Callback on internal subset declaration."]
5362pub type internalSubsetSAXFunc = ::std::option::Option<
5363  unsafe extern "C" fn(
5364    ctx: *mut ::std::os::raw::c_void,
5365    name: *const xmlChar,
5366    ExternalID: *const xmlChar,
5367    SystemID: *const xmlChar,
5368  ),
5369>;
5370#[doc = " externalSubsetSAXFunc:\n @ctx:  the user data (XML parser context)\n @name:  the root element name\n @ExternalID:  the external ID\n @SystemID:  the SYSTEM ID (e.g. filename or URL)\n\n Callback on external subset declaration."]
5371pub type externalSubsetSAXFunc = ::std::option::Option<
5372  unsafe extern "C" fn(
5373    ctx: *mut ::std::os::raw::c_void,
5374    name: *const xmlChar,
5375    ExternalID: *const xmlChar,
5376    SystemID: *const xmlChar,
5377  ),
5378>;
5379#[doc = " getEntitySAXFunc:\n @ctx:  the user data (XML parser context)\n @name: The entity name\n\n Get an entity by name.\n\n Returns the xmlEntityPtr if found."]
5380pub type getEntitySAXFunc = ::std::option::Option<
5381  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, name: *const xmlChar) -> xmlEntityPtr,
5382>;
5383#[doc = " getParameterEntitySAXFunc:\n @ctx:  the user data (XML parser context)\n @name: The entity name\n\n Get a parameter entity by name.\n\n Returns the xmlEntityPtr if found."]
5384pub type getParameterEntitySAXFunc = ::std::option::Option<
5385  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, name: *const xmlChar) -> xmlEntityPtr,
5386>;
5387#[doc = " entityDeclSAXFunc:\n @ctx:  the user data (XML parser context)\n @name:  the entity name\n @type:  the entity type\n @publicId: The public ID of the entity\n @systemId: The system ID of the entity\n @content: the entity value (without processing).\n\n An entity definition has been parsed."]
5388pub type entityDeclSAXFunc = ::std::option::Option<
5389  unsafe extern "C" fn(
5390    ctx: *mut ::std::os::raw::c_void,
5391    name: *const xmlChar,
5392    type_: ::std::os::raw::c_int,
5393    publicId: *const xmlChar,
5394    systemId: *const xmlChar,
5395    content: *mut xmlChar,
5396  ),
5397>;
5398#[doc = " notationDeclSAXFunc:\n @ctx:  the user data (XML parser context)\n @name: The name of the notation\n @publicId: The public ID of the entity\n @systemId: The system ID of the entity\n\n What to do when a notation declaration has been parsed."]
5399pub type notationDeclSAXFunc = ::std::option::Option<
5400  unsafe extern "C" fn(
5401    ctx: *mut ::std::os::raw::c_void,
5402    name: *const xmlChar,
5403    publicId: *const xmlChar,
5404    systemId: *const xmlChar,
5405  ),
5406>;
5407#[doc = " attributeDeclSAXFunc:\n @ctx:  the user data (XML parser context)\n @elem:  the name of the element\n @fullname:  the attribute name\n @type:  the attribute type\n @def:  the type of default value\n @defaultValue: the attribute default value\n @tree:  the tree of enumerated value set\n\n An attribute definition has been parsed."]
5408pub type attributeDeclSAXFunc = ::std::option::Option<
5409  unsafe extern "C" fn(
5410    ctx: *mut ::std::os::raw::c_void,
5411    elem: *const xmlChar,
5412    fullname: *const xmlChar,
5413    type_: ::std::os::raw::c_int,
5414    def: ::std::os::raw::c_int,
5415    defaultValue: *const xmlChar,
5416    tree: xmlEnumerationPtr,
5417  ),
5418>;
5419#[doc = " elementDeclSAXFunc:\n @ctx:  the user data (XML parser context)\n @name:  the element name\n @type:  the element type\n @content: the element value tree\n\n An element definition has been parsed."]
5420pub type elementDeclSAXFunc = ::std::option::Option<
5421  unsafe extern "C" fn(
5422    ctx: *mut ::std::os::raw::c_void,
5423    name: *const xmlChar,
5424    type_: ::std::os::raw::c_int,
5425    content: xmlElementContentPtr,
5426  ),
5427>;
5428#[doc = " unparsedEntityDeclSAXFunc:\n @ctx:  the user data (XML parser context)\n @name: The name of the entity\n @publicId: The public ID of the entity\n @systemId: The system ID of the entity\n @notationName: the name of the notation\n\n What to do when an unparsed entity declaration is parsed."]
5429pub type unparsedEntityDeclSAXFunc = ::std::option::Option<
5430  unsafe extern "C" fn(
5431    ctx: *mut ::std::os::raw::c_void,
5432    name: *const xmlChar,
5433    publicId: *const xmlChar,
5434    systemId: *const xmlChar,
5435    notationName: *const xmlChar,
5436  ),
5437>;
5438#[doc = " setDocumentLocatorSAXFunc:\n @ctx:  the user data (XML parser context)\n @loc: A SAX Locator\n\n Receive the document locator at startup, actually xmlDefaultSAXLocator.\n Everything is available on the context, so this is useless in our case."]
5439pub type setDocumentLocatorSAXFunc = ::std::option::Option<
5440  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, loc: xmlSAXLocatorPtr),
5441>;
5442#[doc = " startDocumentSAXFunc:\n @ctx:  the user data (XML parser context)\n\n Called when the document start being processed."]
5443pub type startDocumentSAXFunc =
5444  ::std::option::Option<unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void)>;
5445#[doc = " endDocumentSAXFunc:\n @ctx:  the user data (XML parser context)\n\n Called when the document end has been detected."]
5446pub type endDocumentSAXFunc =
5447  ::std::option::Option<unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void)>;
5448#[doc = " startElementSAXFunc:\n @ctx:  the user data (XML parser context)\n @name:  The element name, including namespace prefix\n @atts:  An array of name/value attributes pairs, NULL terminated\n\n Called when an opening tag has been processed."]
5449pub type startElementSAXFunc = ::std::option::Option<
5450  unsafe extern "C" fn(
5451    ctx: *mut ::std::os::raw::c_void,
5452    name: *const xmlChar,
5453    atts: *mut *const xmlChar,
5454  ),
5455>;
5456#[doc = " endElementSAXFunc:\n @ctx:  the user data (XML parser context)\n @name:  The element name\n\n Called when the end of an element has been detected."]
5457pub type endElementSAXFunc = ::std::option::Option<
5458  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, name: *const xmlChar),
5459>;
5460#[doc = " attributeSAXFunc:\n @ctx:  the user data (XML parser context)\n @name:  The attribute name, including namespace prefix\n @value:  The attribute value\n\n Handle an attribute that has been read by the parser.\n The default handling is to convert the attribute into an\n DOM subtree and past it in a new xmlAttr element added to\n the element."]
5461pub type attributeSAXFunc = ::std::option::Option<
5462  unsafe extern "C" fn(
5463    ctx: *mut ::std::os::raw::c_void,
5464    name: *const xmlChar,
5465    value: *const xmlChar,
5466  ),
5467>;
5468#[doc = " referenceSAXFunc:\n @ctx:  the user data (XML parser context)\n @name:  The entity name\n\n Called when an entity reference is detected."]
5469pub type referenceSAXFunc = ::std::option::Option<
5470  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, name: *const xmlChar),
5471>;
5472#[doc = " charactersSAXFunc:\n @ctx:  the user data (XML parser context)\n @ch:  a xmlChar string\n @len: the number of xmlChar\n\n Receiving some chars from the parser."]
5473pub type charactersSAXFunc = ::std::option::Option<
5474  unsafe extern "C" fn(
5475    ctx: *mut ::std::os::raw::c_void,
5476    ch: *const xmlChar,
5477    len: ::std::os::raw::c_int,
5478  ),
5479>;
5480#[doc = " ignorableWhitespaceSAXFunc:\n @ctx:  the user data (XML parser context)\n @ch:  a xmlChar string\n @len: the number of xmlChar\n\n Receiving some ignorable whitespaces from the parser.\n UNUSED: by default the DOM building will use characters."]
5481pub type ignorableWhitespaceSAXFunc = ::std::option::Option<
5482  unsafe extern "C" fn(
5483    ctx: *mut ::std::os::raw::c_void,
5484    ch: *const xmlChar,
5485    len: ::std::os::raw::c_int,
5486  ),
5487>;
5488#[doc = " processingInstructionSAXFunc:\n @ctx:  the user data (XML parser context)\n @target:  the target name\n @data: the PI data's\n\n A processing instruction has been parsed."]
5489pub type processingInstructionSAXFunc = ::std::option::Option<
5490  unsafe extern "C" fn(
5491    ctx: *mut ::std::os::raw::c_void,
5492    target: *const xmlChar,
5493    data: *const xmlChar,
5494  ),
5495>;
5496#[doc = " commentSAXFunc:\n @ctx:  the user data (XML parser context)\n @value:  the comment content\n\n A comment has been parsed."]
5497pub type commentSAXFunc = ::std::option::Option<
5498  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, value: *const xmlChar),
5499>;
5500#[doc = " cdataBlockSAXFunc:\n @ctx:  the user data (XML parser context)\n @value:  The pcdata content\n @len:  the block length\n\n Called when a pcdata block has been parsed."]
5501pub type cdataBlockSAXFunc = ::std::option::Option<
5502  unsafe extern "C" fn(
5503    ctx: *mut ::std::os::raw::c_void,
5504    value: *const xmlChar,
5505    len: ::std::os::raw::c_int,
5506  ),
5507>;
5508#[doc = " warningSAXFunc:\n @ctx:  an XML parser context\n @msg:  the message to display/transmit\n @...:  extra parameters for the message display\n\n Display and format a warning messages, callback."]
5509pub type warningSAXFunc = ::std::option::Option<
5510  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...),
5511>;
5512#[doc = " errorSAXFunc:\n @ctx:  an XML parser context\n @msg:  the message to display/transmit\n @...:  extra parameters for the message display\n\n Display and format an error messages, callback."]
5513pub type errorSAXFunc = ::std::option::Option<
5514  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...),
5515>;
5516#[doc = " fatalErrorSAXFunc:\n @ctx:  an XML parser context\n @msg:  the message to display/transmit\n @...:  extra parameters for the message display\n\n Display and format fatal error messages, callback.\n Note: so far fatalError() SAX callbacks are not used, error()\n       get all the callbacks for errors."]
5517pub type fatalErrorSAXFunc = ::std::option::Option<
5518  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...),
5519>;
5520#[doc = " isStandaloneSAXFunc:\n @ctx:  the user data (XML parser context)\n\n Is this document tagged standalone?\n\n Returns 1 if true"]
5521pub type isStandaloneSAXFunc = ::std::option::Option<
5522  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
5523>;
5524#[doc = " hasInternalSubsetSAXFunc:\n @ctx:  the user data (XML parser context)\n\n Does this document has an internal subset.\n\n Returns 1 if true"]
5525pub type hasInternalSubsetSAXFunc = ::std::option::Option<
5526  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
5527>;
5528#[doc = " hasExternalSubsetSAXFunc:\n @ctx:  the user data (XML parser context)\n\n Does this document has an external subset?\n\n Returns 1 if true"]
5529pub type hasExternalSubsetSAXFunc = ::std::option::Option<
5530  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
5531>;
5532#[doc = " startElementNsSAX2Func:\n @ctx:  the user data (XML parser context)\n @localname:  the local name of the element\n @prefix:  the element namespace prefix if available\n @URI:  the element namespace name if available\n @nb_namespaces:  number of namespace definitions on that node\n @namespaces:  pointer to the array of prefix/URI pairs namespace definitions\n @nb_attributes:  the number of attributes on that node\n @nb_defaulted:  the number of defaulted attributes. The defaulted\n                  ones are at the end of the array\n @attributes:  pointer to the array of (localname/prefix/URI/value/end)\n               attribute values.\n\n SAX2 callback when an element start has been detected by the parser.\n It provides the namespace information for the element, as well as\n the new namespace declarations on the element."]
5533pub type startElementNsSAX2Func = ::std::option::Option<
5534  unsafe extern "C" fn(
5535    ctx: *mut ::std::os::raw::c_void,
5536    localname: *const xmlChar,
5537    prefix: *const xmlChar,
5538    URI: *const xmlChar,
5539    nb_namespaces: ::std::os::raw::c_int,
5540    namespaces: *mut *const xmlChar,
5541    nb_attributes: ::std::os::raw::c_int,
5542    nb_defaulted: ::std::os::raw::c_int,
5543    attributes: *mut *const xmlChar,
5544  ),
5545>;
5546#[doc = " endElementNsSAX2Func:\n @ctx:  the user data (XML parser context)\n @localname:  the local name of the element\n @prefix:  the element namespace prefix if available\n @URI:  the element namespace name if available\n\n SAX2 callback when an element end has been detected by the parser.\n It provides the namespace information for the element."]
5547pub type endElementNsSAX2Func = ::std::option::Option<
5548  unsafe extern "C" fn(
5549    ctx: *mut ::std::os::raw::c_void,
5550    localname: *const xmlChar,
5551    prefix: *const xmlChar,
5552    URI: *const xmlChar,
5553  ),
5554>;
5555#[repr(C)]
5556#[derive(Debug, Copy, Clone)]
5557pub struct _xmlSAXHandler {
5558  pub internalSubset: internalSubsetSAXFunc,
5559  pub isStandalone: isStandaloneSAXFunc,
5560  pub hasInternalSubset: hasInternalSubsetSAXFunc,
5561  pub hasExternalSubset: hasExternalSubsetSAXFunc,
5562  pub resolveEntity: resolveEntitySAXFunc,
5563  pub getEntity: getEntitySAXFunc,
5564  pub entityDecl: entityDeclSAXFunc,
5565  pub notationDecl: notationDeclSAXFunc,
5566  pub attributeDecl: attributeDeclSAXFunc,
5567  pub elementDecl: elementDeclSAXFunc,
5568  pub unparsedEntityDecl: unparsedEntityDeclSAXFunc,
5569  pub setDocumentLocator: setDocumentLocatorSAXFunc,
5570  pub startDocument: startDocumentSAXFunc,
5571  pub endDocument: endDocumentSAXFunc,
5572  pub startElement: startElementSAXFunc,
5573  pub endElement: endElementSAXFunc,
5574  pub reference: referenceSAXFunc,
5575  pub characters: charactersSAXFunc,
5576  pub ignorableWhitespace: ignorableWhitespaceSAXFunc,
5577  pub processingInstruction: processingInstructionSAXFunc,
5578  pub comment: commentSAXFunc,
5579  pub warning: warningSAXFunc,
5580  pub error: errorSAXFunc,
5581  pub fatalError: fatalErrorSAXFunc,
5582  pub getParameterEntity: getParameterEntitySAXFunc,
5583  pub cdataBlock: cdataBlockSAXFunc,
5584  pub externalSubset: externalSubsetSAXFunc,
5585  pub initialized: ::std::os::raw::c_uint,
5586  pub _private: *mut ::std::os::raw::c_void,
5587  pub startElementNs: startElementNsSAX2Func,
5588  pub endElementNs: endElementNsSAX2Func,
5589  pub serror: xmlStructuredErrorFunc,
5590}
5591#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5592const _: () = {
5593  ["Size of _xmlSAXHandler"][::std::mem::size_of::<_xmlSAXHandler>() - 256usize];
5594  ["Alignment of _xmlSAXHandler"][::std::mem::align_of::<_xmlSAXHandler>() - 8usize];
5595  ["Offset of field: _xmlSAXHandler::internalSubset"]
5596    [::std::mem::offset_of!(_xmlSAXHandler, internalSubset) - 0usize];
5597  ["Offset of field: _xmlSAXHandler::isStandalone"]
5598    [::std::mem::offset_of!(_xmlSAXHandler, isStandalone) - 8usize];
5599  ["Offset of field: _xmlSAXHandler::hasInternalSubset"]
5600    [::std::mem::offset_of!(_xmlSAXHandler, hasInternalSubset) - 16usize];
5601  ["Offset of field: _xmlSAXHandler::hasExternalSubset"]
5602    [::std::mem::offset_of!(_xmlSAXHandler, hasExternalSubset) - 24usize];
5603  ["Offset of field: _xmlSAXHandler::resolveEntity"]
5604    [::std::mem::offset_of!(_xmlSAXHandler, resolveEntity) - 32usize];
5605  ["Offset of field: _xmlSAXHandler::getEntity"]
5606    [::std::mem::offset_of!(_xmlSAXHandler, getEntity) - 40usize];
5607  ["Offset of field: _xmlSAXHandler::entityDecl"]
5608    [::std::mem::offset_of!(_xmlSAXHandler, entityDecl) - 48usize];
5609  ["Offset of field: _xmlSAXHandler::notationDecl"]
5610    [::std::mem::offset_of!(_xmlSAXHandler, notationDecl) - 56usize];
5611  ["Offset of field: _xmlSAXHandler::attributeDecl"]
5612    [::std::mem::offset_of!(_xmlSAXHandler, attributeDecl) - 64usize];
5613  ["Offset of field: _xmlSAXHandler::elementDecl"]
5614    [::std::mem::offset_of!(_xmlSAXHandler, elementDecl) - 72usize];
5615  ["Offset of field: _xmlSAXHandler::unparsedEntityDecl"]
5616    [::std::mem::offset_of!(_xmlSAXHandler, unparsedEntityDecl) - 80usize];
5617  ["Offset of field: _xmlSAXHandler::setDocumentLocator"]
5618    [::std::mem::offset_of!(_xmlSAXHandler, setDocumentLocator) - 88usize];
5619  ["Offset of field: _xmlSAXHandler::startDocument"]
5620    [::std::mem::offset_of!(_xmlSAXHandler, startDocument) - 96usize];
5621  ["Offset of field: _xmlSAXHandler::endDocument"]
5622    [::std::mem::offset_of!(_xmlSAXHandler, endDocument) - 104usize];
5623  ["Offset of field: _xmlSAXHandler::startElement"]
5624    [::std::mem::offset_of!(_xmlSAXHandler, startElement) - 112usize];
5625  ["Offset of field: _xmlSAXHandler::endElement"]
5626    [::std::mem::offset_of!(_xmlSAXHandler, endElement) - 120usize];
5627  ["Offset of field: _xmlSAXHandler::reference"]
5628    [::std::mem::offset_of!(_xmlSAXHandler, reference) - 128usize];
5629  ["Offset of field: _xmlSAXHandler::characters"]
5630    [::std::mem::offset_of!(_xmlSAXHandler, characters) - 136usize];
5631  ["Offset of field: _xmlSAXHandler::ignorableWhitespace"]
5632    [::std::mem::offset_of!(_xmlSAXHandler, ignorableWhitespace) - 144usize];
5633  ["Offset of field: _xmlSAXHandler::processingInstruction"]
5634    [::std::mem::offset_of!(_xmlSAXHandler, processingInstruction) - 152usize];
5635  ["Offset of field: _xmlSAXHandler::comment"]
5636    [::std::mem::offset_of!(_xmlSAXHandler, comment) - 160usize];
5637  ["Offset of field: _xmlSAXHandler::warning"]
5638    [::std::mem::offset_of!(_xmlSAXHandler, warning) - 168usize];
5639  ["Offset of field: _xmlSAXHandler::error"]
5640    [::std::mem::offset_of!(_xmlSAXHandler, error) - 176usize];
5641  ["Offset of field: _xmlSAXHandler::fatalError"]
5642    [::std::mem::offset_of!(_xmlSAXHandler, fatalError) - 184usize];
5643  ["Offset of field: _xmlSAXHandler::getParameterEntity"]
5644    [::std::mem::offset_of!(_xmlSAXHandler, getParameterEntity) - 192usize];
5645  ["Offset of field: _xmlSAXHandler::cdataBlock"]
5646    [::std::mem::offset_of!(_xmlSAXHandler, cdataBlock) - 200usize];
5647  ["Offset of field: _xmlSAXHandler::externalSubset"]
5648    [::std::mem::offset_of!(_xmlSAXHandler, externalSubset) - 208usize];
5649  ["Offset of field: _xmlSAXHandler::initialized"]
5650    [::std::mem::offset_of!(_xmlSAXHandler, initialized) - 216usize];
5651  ["Offset of field: _xmlSAXHandler::_private"]
5652    [::std::mem::offset_of!(_xmlSAXHandler, _private) - 224usize];
5653  ["Offset of field: _xmlSAXHandler::startElementNs"]
5654    [::std::mem::offset_of!(_xmlSAXHandler, startElementNs) - 232usize];
5655  ["Offset of field: _xmlSAXHandler::endElementNs"]
5656    [::std::mem::offset_of!(_xmlSAXHandler, endElementNs) - 240usize];
5657  ["Offset of field: _xmlSAXHandler::serror"]
5658    [::std::mem::offset_of!(_xmlSAXHandler, serror) - 248usize];
5659};
5660pub type xmlSAXHandlerV1 = _xmlSAXHandlerV1;
5661pub type xmlSAXHandlerV1Ptr = *mut xmlSAXHandlerV1;
5662#[repr(C)]
5663#[derive(Debug, Copy, Clone)]
5664pub struct _xmlSAXHandlerV1 {
5665  pub internalSubset: internalSubsetSAXFunc,
5666  pub isStandalone: isStandaloneSAXFunc,
5667  pub hasInternalSubset: hasInternalSubsetSAXFunc,
5668  pub hasExternalSubset: hasExternalSubsetSAXFunc,
5669  pub resolveEntity: resolveEntitySAXFunc,
5670  pub getEntity: getEntitySAXFunc,
5671  pub entityDecl: entityDeclSAXFunc,
5672  pub notationDecl: notationDeclSAXFunc,
5673  pub attributeDecl: attributeDeclSAXFunc,
5674  pub elementDecl: elementDeclSAXFunc,
5675  pub unparsedEntityDecl: unparsedEntityDeclSAXFunc,
5676  pub setDocumentLocator: setDocumentLocatorSAXFunc,
5677  pub startDocument: startDocumentSAXFunc,
5678  pub endDocument: endDocumentSAXFunc,
5679  pub startElement: startElementSAXFunc,
5680  pub endElement: endElementSAXFunc,
5681  pub reference: referenceSAXFunc,
5682  pub characters: charactersSAXFunc,
5683  pub ignorableWhitespace: ignorableWhitespaceSAXFunc,
5684  pub processingInstruction: processingInstructionSAXFunc,
5685  pub comment: commentSAXFunc,
5686  pub warning: warningSAXFunc,
5687  pub error: errorSAXFunc,
5688  pub fatalError: fatalErrorSAXFunc,
5689  pub getParameterEntity: getParameterEntitySAXFunc,
5690  pub cdataBlock: cdataBlockSAXFunc,
5691  pub externalSubset: externalSubsetSAXFunc,
5692  pub initialized: ::std::os::raw::c_uint,
5693}
5694#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5695const _: () = {
5696  ["Size of _xmlSAXHandlerV1"][::std::mem::size_of::<_xmlSAXHandlerV1>() - 224usize];
5697  ["Alignment of _xmlSAXHandlerV1"][::std::mem::align_of::<_xmlSAXHandlerV1>() - 8usize];
5698  ["Offset of field: _xmlSAXHandlerV1::internalSubset"]
5699    [::std::mem::offset_of!(_xmlSAXHandlerV1, internalSubset) - 0usize];
5700  ["Offset of field: _xmlSAXHandlerV1::isStandalone"]
5701    [::std::mem::offset_of!(_xmlSAXHandlerV1, isStandalone) - 8usize];
5702  ["Offset of field: _xmlSAXHandlerV1::hasInternalSubset"]
5703    [::std::mem::offset_of!(_xmlSAXHandlerV1, hasInternalSubset) - 16usize];
5704  ["Offset of field: _xmlSAXHandlerV1::hasExternalSubset"]
5705    [::std::mem::offset_of!(_xmlSAXHandlerV1, hasExternalSubset) - 24usize];
5706  ["Offset of field: _xmlSAXHandlerV1::resolveEntity"]
5707    [::std::mem::offset_of!(_xmlSAXHandlerV1, resolveEntity) - 32usize];
5708  ["Offset of field: _xmlSAXHandlerV1::getEntity"]
5709    [::std::mem::offset_of!(_xmlSAXHandlerV1, getEntity) - 40usize];
5710  ["Offset of field: _xmlSAXHandlerV1::entityDecl"]
5711    [::std::mem::offset_of!(_xmlSAXHandlerV1, entityDecl) - 48usize];
5712  ["Offset of field: _xmlSAXHandlerV1::notationDecl"]
5713    [::std::mem::offset_of!(_xmlSAXHandlerV1, notationDecl) - 56usize];
5714  ["Offset of field: _xmlSAXHandlerV1::attributeDecl"]
5715    [::std::mem::offset_of!(_xmlSAXHandlerV1, attributeDecl) - 64usize];
5716  ["Offset of field: _xmlSAXHandlerV1::elementDecl"]
5717    [::std::mem::offset_of!(_xmlSAXHandlerV1, elementDecl) - 72usize];
5718  ["Offset of field: _xmlSAXHandlerV1::unparsedEntityDecl"]
5719    [::std::mem::offset_of!(_xmlSAXHandlerV1, unparsedEntityDecl) - 80usize];
5720  ["Offset of field: _xmlSAXHandlerV1::setDocumentLocator"]
5721    [::std::mem::offset_of!(_xmlSAXHandlerV1, setDocumentLocator) - 88usize];
5722  ["Offset of field: _xmlSAXHandlerV1::startDocument"]
5723    [::std::mem::offset_of!(_xmlSAXHandlerV1, startDocument) - 96usize];
5724  ["Offset of field: _xmlSAXHandlerV1::endDocument"]
5725    [::std::mem::offset_of!(_xmlSAXHandlerV1, endDocument) - 104usize];
5726  ["Offset of field: _xmlSAXHandlerV1::startElement"]
5727    [::std::mem::offset_of!(_xmlSAXHandlerV1, startElement) - 112usize];
5728  ["Offset of field: _xmlSAXHandlerV1::endElement"]
5729    [::std::mem::offset_of!(_xmlSAXHandlerV1, endElement) - 120usize];
5730  ["Offset of field: _xmlSAXHandlerV1::reference"]
5731    [::std::mem::offset_of!(_xmlSAXHandlerV1, reference) - 128usize];
5732  ["Offset of field: _xmlSAXHandlerV1::characters"]
5733    [::std::mem::offset_of!(_xmlSAXHandlerV1, characters) - 136usize];
5734  ["Offset of field: _xmlSAXHandlerV1::ignorableWhitespace"]
5735    [::std::mem::offset_of!(_xmlSAXHandlerV1, ignorableWhitespace) - 144usize];
5736  ["Offset of field: _xmlSAXHandlerV1::processingInstruction"]
5737    [::std::mem::offset_of!(_xmlSAXHandlerV1, processingInstruction) - 152usize];
5738  ["Offset of field: _xmlSAXHandlerV1::comment"]
5739    [::std::mem::offset_of!(_xmlSAXHandlerV1, comment) - 160usize];
5740  ["Offset of field: _xmlSAXHandlerV1::warning"]
5741    [::std::mem::offset_of!(_xmlSAXHandlerV1, warning) - 168usize];
5742  ["Offset of field: _xmlSAXHandlerV1::error"]
5743    [::std::mem::offset_of!(_xmlSAXHandlerV1, error) - 176usize];
5744  ["Offset of field: _xmlSAXHandlerV1::fatalError"]
5745    [::std::mem::offset_of!(_xmlSAXHandlerV1, fatalError) - 184usize];
5746  ["Offset of field: _xmlSAXHandlerV1::getParameterEntity"]
5747    [::std::mem::offset_of!(_xmlSAXHandlerV1, getParameterEntity) - 192usize];
5748  ["Offset of field: _xmlSAXHandlerV1::cdataBlock"]
5749    [::std::mem::offset_of!(_xmlSAXHandlerV1, cdataBlock) - 200usize];
5750  ["Offset of field: _xmlSAXHandlerV1::externalSubset"]
5751    [::std::mem::offset_of!(_xmlSAXHandlerV1, externalSubset) - 208usize];
5752  ["Offset of field: _xmlSAXHandlerV1::initialized"]
5753    [::std::mem::offset_of!(_xmlSAXHandlerV1, initialized) - 216usize];
5754};
5755#[doc = " xmlExternalEntityLoader:\n @URL: The System ID of the resource requested\n @ID: The Public ID of the resource requested\n @context: the XML parser context\n\n External entity loaders types.\n\n Returns the entity input parser."]
5756pub type xmlExternalEntityLoader = ::std::option::Option<
5757  unsafe extern "C" fn(
5758    URL: *const ::std::os::raw::c_char,
5759    ID: *const ::std::os::raw::c_char,
5760    context: xmlParserCtxtPtr,
5761  ) -> xmlParserInputPtr,
5762>;
5763pub type iconv_t = *mut ::std::os::raw::c_void;
5764unsafe extern "C" {
5765  pub fn iconv_close(__cd: iconv_t) -> ::std::os::raw::c_int;
5766}
5767unsafe extern "C" {
5768  pub fn iconv_open(
5769    __tocode: *const ::std::os::raw::c_char,
5770    __fromcode: *const ::std::os::raw::c_char,
5771  ) -> iconv_t;
5772}
5773unsafe extern "C" {
5774  pub fn iconv(
5775    __cd: iconv_t,
5776    __inbuf: *mut *mut ::std::os::raw::c_char,
5777    __inbytesleft: *mut usize,
5778    __outbuf: *mut *mut ::std::os::raw::c_char,
5779    __outbytesleft: *mut usize,
5780  ) -> usize;
5781}
5782pub type int_least8_t = __int_least8_t;
5783pub type int_least16_t = __int_least16_t;
5784pub type int_least32_t = __int_least32_t;
5785pub type int_least64_t = __int_least64_t;
5786pub type uint_least8_t = __uint_least8_t;
5787pub type uint_least16_t = __uint_least16_t;
5788pub type uint_least32_t = __uint_least32_t;
5789pub type uint_least64_t = __uint_least64_t;
5790pub type int_fast8_t = ::std::os::raw::c_schar;
5791pub type int_fast16_t = ::std::os::raw::c_long;
5792pub type int_fast32_t = ::std::os::raw::c_long;
5793pub type int_fast64_t = ::std::os::raw::c_long;
5794pub type uint_fast8_t = ::std::os::raw::c_uchar;
5795pub type uint_fast16_t = ::std::os::raw::c_ulong;
5796pub type uint_fast32_t = ::std::os::raw::c_ulong;
5797pub type uint_fast64_t = ::std::os::raw::c_ulong;
5798pub type intmax_t = __intmax_t;
5799pub type uintmax_t = __uintmax_t;
5800pub type UBool = i8;
5801pub type UChar = u16;
5802pub type OldUChar = ::std::os::raw::c_ushort;
5803pub type UChar32 = i32;
5804pub type UVersionInfo = [u8; 4usize];
5805unsafe extern "C" {
5806  pub fn u_versionFromString_74(
5807    versionArray: *mut u8,
5808    versionString: *const ::std::os::raw::c_char,
5809  );
5810}
5811unsafe extern "C" {
5812  pub fn u_versionFromUString_74(versionArray: *mut u8, versionString: *const UChar);
5813}
5814unsafe extern "C" {
5815  pub fn u_versionToString_74(versionArray: *const u8, versionString: *mut ::std::os::raw::c_char);
5816}
5817unsafe extern "C" {
5818  pub fn u_getVersion_74(versionArray: *mut u8);
5819}
5820unsafe extern "C" {
5821  pub fn utf8_nextCharSafeBody_74(
5822    s: *const u8,
5823    pi: *mut i32,
5824    length: i32,
5825    c: UChar32,
5826    strict: UBool,
5827  ) -> UChar32;
5828}
5829unsafe extern "C" {
5830  pub fn utf8_appendCharSafeBody_74(
5831    s: *mut u8,
5832    i: i32,
5833    length: i32,
5834    c: UChar32,
5835    pIsError: *mut UBool,
5836  ) -> i32;
5837}
5838unsafe extern "C" {
5839  pub fn utf8_prevCharSafeBody_74(
5840    s: *const u8,
5841    start: i32,
5842    pi: *mut i32,
5843    c: UChar32,
5844    strict: UBool,
5845  ) -> UChar32;
5846}
5847unsafe extern "C" {
5848  pub fn utf8_back1SafeBody_74(s: *const u8, start: i32, i: i32) -> i32;
5849}
5850unsafe extern "C" {
5851  pub static utf8_countTrailBytes_74: [u8; 0usize];
5852}
5853pub type UDate = f64;
5854pub const UErrorCode_U_USING_FALLBACK_WARNING: UErrorCode = -128;
5855pub const UErrorCode_U_ERROR_WARNING_START: UErrorCode = -128;
5856pub const UErrorCode_U_USING_DEFAULT_WARNING: UErrorCode = -127;
5857pub const UErrorCode_U_SAFECLONE_ALLOCATED_WARNING: UErrorCode = -126;
5858pub const UErrorCode_U_STATE_OLD_WARNING: UErrorCode = -125;
5859pub const UErrorCode_U_STRING_NOT_TERMINATED_WARNING: UErrorCode = -124;
5860pub const UErrorCode_U_SORT_KEY_TOO_SHORT_WARNING: UErrorCode = -123;
5861pub const UErrorCode_U_AMBIGUOUS_ALIAS_WARNING: UErrorCode = -122;
5862pub const UErrorCode_U_DIFFERENT_UCA_VERSION: UErrorCode = -121;
5863pub const UErrorCode_U_PLUGIN_CHANGED_LEVEL_WARNING: UErrorCode = -120;
5864pub const UErrorCode_U_ERROR_WARNING_LIMIT: UErrorCode = -119;
5865pub const UErrorCode_U_ZERO_ERROR: UErrorCode = 0;
5866pub const UErrorCode_U_ILLEGAL_ARGUMENT_ERROR: UErrorCode = 1;
5867pub const UErrorCode_U_MISSING_RESOURCE_ERROR: UErrorCode = 2;
5868pub const UErrorCode_U_INVALID_FORMAT_ERROR: UErrorCode = 3;
5869pub const UErrorCode_U_FILE_ACCESS_ERROR: UErrorCode = 4;
5870pub const UErrorCode_U_INTERNAL_PROGRAM_ERROR: UErrorCode = 5;
5871pub const UErrorCode_U_MESSAGE_PARSE_ERROR: UErrorCode = 6;
5872pub const UErrorCode_U_MEMORY_ALLOCATION_ERROR: UErrorCode = 7;
5873pub const UErrorCode_U_INDEX_OUTOFBOUNDS_ERROR: UErrorCode = 8;
5874pub const UErrorCode_U_PARSE_ERROR: UErrorCode = 9;
5875pub const UErrorCode_U_INVALID_CHAR_FOUND: UErrorCode = 10;
5876pub const UErrorCode_U_TRUNCATED_CHAR_FOUND: UErrorCode = 11;
5877pub const UErrorCode_U_ILLEGAL_CHAR_FOUND: UErrorCode = 12;
5878pub const UErrorCode_U_INVALID_TABLE_FORMAT: UErrorCode = 13;
5879pub const UErrorCode_U_INVALID_TABLE_FILE: UErrorCode = 14;
5880pub const UErrorCode_U_BUFFER_OVERFLOW_ERROR: UErrorCode = 15;
5881pub const UErrorCode_U_UNSUPPORTED_ERROR: UErrorCode = 16;
5882pub const UErrorCode_U_RESOURCE_TYPE_MISMATCH: UErrorCode = 17;
5883pub const UErrorCode_U_ILLEGAL_ESCAPE_SEQUENCE: UErrorCode = 18;
5884pub const UErrorCode_U_UNSUPPORTED_ESCAPE_SEQUENCE: UErrorCode = 19;
5885pub const UErrorCode_U_NO_SPACE_AVAILABLE: UErrorCode = 20;
5886pub const UErrorCode_U_CE_NOT_FOUND_ERROR: UErrorCode = 21;
5887pub const UErrorCode_U_PRIMARY_TOO_LONG_ERROR: UErrorCode = 22;
5888pub const UErrorCode_U_STATE_TOO_OLD_ERROR: UErrorCode = 23;
5889pub const UErrorCode_U_TOO_MANY_ALIASES_ERROR: UErrorCode = 24;
5890pub const UErrorCode_U_ENUM_OUT_OF_SYNC_ERROR: UErrorCode = 25;
5891pub const UErrorCode_U_INVARIANT_CONVERSION_ERROR: UErrorCode = 26;
5892pub const UErrorCode_U_INVALID_STATE_ERROR: UErrorCode = 27;
5893pub const UErrorCode_U_COLLATOR_VERSION_MISMATCH: UErrorCode = 28;
5894pub const UErrorCode_U_USELESS_COLLATOR_ERROR: UErrorCode = 29;
5895pub const UErrorCode_U_NO_WRITE_PERMISSION: UErrorCode = 30;
5896pub const UErrorCode_U_INPUT_TOO_LONG_ERROR: UErrorCode = 31;
5897pub const UErrorCode_U_STANDARD_ERROR_LIMIT: UErrorCode = 32;
5898pub const UErrorCode_U_BAD_VARIABLE_DEFINITION: UErrorCode = 65536;
5899pub const UErrorCode_U_PARSE_ERROR_START: UErrorCode = 65536;
5900pub const UErrorCode_U_MALFORMED_RULE: UErrorCode = 65537;
5901pub const UErrorCode_U_MALFORMED_SET: UErrorCode = 65538;
5902pub const UErrorCode_U_MALFORMED_SYMBOL_REFERENCE: UErrorCode = 65539;
5903pub const UErrorCode_U_MALFORMED_UNICODE_ESCAPE: UErrorCode = 65540;
5904pub const UErrorCode_U_MALFORMED_VARIABLE_DEFINITION: UErrorCode = 65541;
5905pub const UErrorCode_U_MALFORMED_VARIABLE_REFERENCE: UErrorCode = 65542;
5906pub const UErrorCode_U_MISMATCHED_SEGMENT_DELIMITERS: UErrorCode = 65543;
5907pub const UErrorCode_U_MISPLACED_ANCHOR_START: UErrorCode = 65544;
5908pub const UErrorCode_U_MISPLACED_CURSOR_OFFSET: UErrorCode = 65545;
5909pub const UErrorCode_U_MISPLACED_QUANTIFIER: UErrorCode = 65546;
5910pub const UErrorCode_U_MISSING_OPERATOR: UErrorCode = 65547;
5911pub const UErrorCode_U_MISSING_SEGMENT_CLOSE: UErrorCode = 65548;
5912pub const UErrorCode_U_MULTIPLE_ANTE_CONTEXTS: UErrorCode = 65549;
5913pub const UErrorCode_U_MULTIPLE_CURSORS: UErrorCode = 65550;
5914pub const UErrorCode_U_MULTIPLE_POST_CONTEXTS: UErrorCode = 65551;
5915pub const UErrorCode_U_TRAILING_BACKSLASH: UErrorCode = 65552;
5916pub const UErrorCode_U_UNDEFINED_SEGMENT_REFERENCE: UErrorCode = 65553;
5917pub const UErrorCode_U_UNDEFINED_VARIABLE: UErrorCode = 65554;
5918pub const UErrorCode_U_UNQUOTED_SPECIAL: UErrorCode = 65555;
5919pub const UErrorCode_U_UNTERMINATED_QUOTE: UErrorCode = 65556;
5920pub const UErrorCode_U_RULE_MASK_ERROR: UErrorCode = 65557;
5921pub const UErrorCode_U_MISPLACED_COMPOUND_FILTER: UErrorCode = 65558;
5922pub const UErrorCode_U_MULTIPLE_COMPOUND_FILTERS: UErrorCode = 65559;
5923pub const UErrorCode_U_INVALID_RBT_SYNTAX: UErrorCode = 65560;
5924pub const UErrorCode_U_INVALID_PROPERTY_PATTERN: UErrorCode = 65561;
5925pub const UErrorCode_U_MALFORMED_PRAGMA: UErrorCode = 65562;
5926pub const UErrorCode_U_UNCLOSED_SEGMENT: UErrorCode = 65563;
5927pub const UErrorCode_U_ILLEGAL_CHAR_IN_SEGMENT: UErrorCode = 65564;
5928pub const UErrorCode_U_VARIABLE_RANGE_EXHAUSTED: UErrorCode = 65565;
5929pub const UErrorCode_U_VARIABLE_RANGE_OVERLAP: UErrorCode = 65566;
5930pub const UErrorCode_U_ILLEGAL_CHARACTER: UErrorCode = 65567;
5931pub const UErrorCode_U_INTERNAL_TRANSLITERATOR_ERROR: UErrorCode = 65568;
5932pub const UErrorCode_U_INVALID_ID: UErrorCode = 65569;
5933pub const UErrorCode_U_INVALID_FUNCTION: UErrorCode = 65570;
5934pub const UErrorCode_U_PARSE_ERROR_LIMIT: UErrorCode = 65571;
5935pub const UErrorCode_U_UNEXPECTED_TOKEN: UErrorCode = 65792;
5936pub const UErrorCode_U_FMT_PARSE_ERROR_START: UErrorCode = 65792;
5937pub const UErrorCode_U_MULTIPLE_DECIMAL_SEPARATORS: UErrorCode = 65793;
5938pub const UErrorCode_U_MULTIPLE_DECIMAL_SEPERATORS: UErrorCode = 65793;
5939pub const UErrorCode_U_MULTIPLE_EXPONENTIAL_SYMBOLS: UErrorCode = 65794;
5940pub const UErrorCode_U_MALFORMED_EXPONENTIAL_PATTERN: UErrorCode = 65795;
5941pub const UErrorCode_U_MULTIPLE_PERCENT_SYMBOLS: UErrorCode = 65796;
5942pub const UErrorCode_U_MULTIPLE_PERMILL_SYMBOLS: UErrorCode = 65797;
5943pub const UErrorCode_U_MULTIPLE_PAD_SPECIFIERS: UErrorCode = 65798;
5944pub const UErrorCode_U_PATTERN_SYNTAX_ERROR: UErrorCode = 65799;
5945pub const UErrorCode_U_ILLEGAL_PAD_POSITION: UErrorCode = 65800;
5946pub const UErrorCode_U_UNMATCHED_BRACES: UErrorCode = 65801;
5947pub const UErrorCode_U_UNSUPPORTED_PROPERTY: UErrorCode = 65802;
5948pub const UErrorCode_U_UNSUPPORTED_ATTRIBUTE: UErrorCode = 65803;
5949pub const UErrorCode_U_ARGUMENT_TYPE_MISMATCH: UErrorCode = 65804;
5950pub const UErrorCode_U_DUPLICATE_KEYWORD: UErrorCode = 65805;
5951pub const UErrorCode_U_UNDEFINED_KEYWORD: UErrorCode = 65806;
5952pub const UErrorCode_U_DEFAULT_KEYWORD_MISSING: UErrorCode = 65807;
5953pub const UErrorCode_U_DECIMAL_NUMBER_SYNTAX_ERROR: UErrorCode = 65808;
5954pub const UErrorCode_U_FORMAT_INEXACT_ERROR: UErrorCode = 65809;
5955pub const UErrorCode_U_NUMBER_ARG_OUTOFBOUNDS_ERROR: UErrorCode = 65810;
5956pub const UErrorCode_U_NUMBER_SKELETON_SYNTAX_ERROR: UErrorCode = 65811;
5957pub const UErrorCode_U_FMT_PARSE_ERROR_LIMIT: UErrorCode = 65812;
5958pub const UErrorCode_U_BRK_INTERNAL_ERROR: UErrorCode = 66048;
5959pub const UErrorCode_U_BRK_ERROR_START: UErrorCode = 66048;
5960pub const UErrorCode_U_BRK_HEX_DIGITS_EXPECTED: UErrorCode = 66049;
5961pub const UErrorCode_U_BRK_SEMICOLON_EXPECTED: UErrorCode = 66050;
5962pub const UErrorCode_U_BRK_RULE_SYNTAX: UErrorCode = 66051;
5963pub const UErrorCode_U_BRK_UNCLOSED_SET: UErrorCode = 66052;
5964pub const UErrorCode_U_BRK_ASSIGN_ERROR: UErrorCode = 66053;
5965pub const UErrorCode_U_BRK_VARIABLE_REDFINITION: UErrorCode = 66054;
5966pub const UErrorCode_U_BRK_MISMATCHED_PAREN: UErrorCode = 66055;
5967pub const UErrorCode_U_BRK_NEW_LINE_IN_QUOTED_STRING: UErrorCode = 66056;
5968pub const UErrorCode_U_BRK_UNDEFINED_VARIABLE: UErrorCode = 66057;
5969pub const UErrorCode_U_BRK_INIT_ERROR: UErrorCode = 66058;
5970pub const UErrorCode_U_BRK_RULE_EMPTY_SET: UErrorCode = 66059;
5971pub const UErrorCode_U_BRK_UNRECOGNIZED_OPTION: UErrorCode = 66060;
5972pub const UErrorCode_U_BRK_MALFORMED_RULE_TAG: UErrorCode = 66061;
5973pub const UErrorCode_U_BRK_ERROR_LIMIT: UErrorCode = 66062;
5974pub const UErrorCode_U_REGEX_INTERNAL_ERROR: UErrorCode = 66304;
5975pub const UErrorCode_U_REGEX_ERROR_START: UErrorCode = 66304;
5976pub const UErrorCode_U_REGEX_RULE_SYNTAX: UErrorCode = 66305;
5977pub const UErrorCode_U_REGEX_INVALID_STATE: UErrorCode = 66306;
5978pub const UErrorCode_U_REGEX_BAD_ESCAPE_SEQUENCE: UErrorCode = 66307;
5979pub const UErrorCode_U_REGEX_PROPERTY_SYNTAX: UErrorCode = 66308;
5980pub const UErrorCode_U_REGEX_UNIMPLEMENTED: UErrorCode = 66309;
5981pub const UErrorCode_U_REGEX_MISMATCHED_PAREN: UErrorCode = 66310;
5982pub const UErrorCode_U_REGEX_NUMBER_TOO_BIG: UErrorCode = 66311;
5983pub const UErrorCode_U_REGEX_BAD_INTERVAL: UErrorCode = 66312;
5984pub const UErrorCode_U_REGEX_MAX_LT_MIN: UErrorCode = 66313;
5985pub const UErrorCode_U_REGEX_INVALID_BACK_REF: UErrorCode = 66314;
5986pub const UErrorCode_U_REGEX_INVALID_FLAG: UErrorCode = 66315;
5987pub const UErrorCode_U_REGEX_LOOK_BEHIND_LIMIT: UErrorCode = 66316;
5988pub const UErrorCode_U_REGEX_SET_CONTAINS_STRING: UErrorCode = 66317;
5989pub const UErrorCode_U_REGEX_OCTAL_TOO_BIG: UErrorCode = 66318;
5990pub const UErrorCode_U_REGEX_MISSING_CLOSE_BRACKET: UErrorCode = 66319;
5991pub const UErrorCode_U_REGEX_INVALID_RANGE: UErrorCode = 66320;
5992pub const UErrorCode_U_REGEX_STACK_OVERFLOW: UErrorCode = 66321;
5993pub const UErrorCode_U_REGEX_TIME_OUT: UErrorCode = 66322;
5994pub const UErrorCode_U_REGEX_STOPPED_BY_CALLER: UErrorCode = 66323;
5995pub const UErrorCode_U_REGEX_PATTERN_TOO_BIG: UErrorCode = 66324;
5996pub const UErrorCode_U_REGEX_INVALID_CAPTURE_GROUP_NAME: UErrorCode = 66325;
5997pub const UErrorCode_U_REGEX_ERROR_LIMIT: UErrorCode = 66326;
5998pub const UErrorCode_U_IDNA_PROHIBITED_ERROR: UErrorCode = 66560;
5999pub const UErrorCode_U_IDNA_ERROR_START: UErrorCode = 66560;
6000pub const UErrorCode_U_IDNA_UNASSIGNED_ERROR: UErrorCode = 66561;
6001pub const UErrorCode_U_IDNA_CHECK_BIDI_ERROR: UErrorCode = 66562;
6002pub const UErrorCode_U_IDNA_STD3_ASCII_RULES_ERROR: UErrorCode = 66563;
6003pub const UErrorCode_U_IDNA_ACE_PREFIX_ERROR: UErrorCode = 66564;
6004pub const UErrorCode_U_IDNA_VERIFICATION_ERROR: UErrorCode = 66565;
6005pub const UErrorCode_U_IDNA_LABEL_TOO_LONG_ERROR: UErrorCode = 66566;
6006pub const UErrorCode_U_IDNA_ZERO_LENGTH_LABEL_ERROR: UErrorCode = 66567;
6007pub const UErrorCode_U_IDNA_DOMAIN_NAME_TOO_LONG_ERROR: UErrorCode = 66568;
6008pub const UErrorCode_U_IDNA_ERROR_LIMIT: UErrorCode = 66569;
6009pub const UErrorCode_U_STRINGPREP_PROHIBITED_ERROR: UErrorCode = 66560;
6010pub const UErrorCode_U_STRINGPREP_UNASSIGNED_ERROR: UErrorCode = 66561;
6011pub const UErrorCode_U_STRINGPREP_CHECK_BIDI_ERROR: UErrorCode = 66562;
6012pub const UErrorCode_U_PLUGIN_ERROR_START: UErrorCode = 66816;
6013pub const UErrorCode_U_PLUGIN_TOO_HIGH: UErrorCode = 66816;
6014pub const UErrorCode_U_PLUGIN_DIDNT_SET_LEVEL: UErrorCode = 66817;
6015pub const UErrorCode_U_PLUGIN_ERROR_LIMIT: UErrorCode = 66818;
6016pub const UErrorCode_U_ERROR_LIMIT: UErrorCode = 66818;
6017pub type UErrorCode = ::std::os::raw::c_int;
6018unsafe extern "C" {
6019  pub fn u_errorName_74(code: UErrorCode) -> *const ::std::os::raw::c_char;
6020}
6021#[repr(C)]
6022#[derive(Debug, Copy, Clone)]
6023pub struct UConverter {
6024  _unused: [u8; 0],
6025}
6026pub const UConverterCallbackReason_UCNV_UNASSIGNED: UConverterCallbackReason = 0;
6027pub const UConverterCallbackReason_UCNV_ILLEGAL: UConverterCallbackReason = 1;
6028pub const UConverterCallbackReason_UCNV_IRREGULAR: UConverterCallbackReason = 2;
6029pub const UConverterCallbackReason_UCNV_RESET: UConverterCallbackReason = 3;
6030pub const UConverterCallbackReason_UCNV_CLOSE: UConverterCallbackReason = 4;
6031pub const UConverterCallbackReason_UCNV_CLONE: UConverterCallbackReason = 5;
6032pub type UConverterCallbackReason = ::std::os::raw::c_uint;
6033#[repr(C)]
6034#[derive(Debug, Copy, Clone)]
6035pub struct UConverterFromUnicodeArgs {
6036  pub size: u16,
6037  pub flush: UBool,
6038  pub converter: *mut UConverter,
6039  pub source: *const UChar,
6040  pub sourceLimit: *const UChar,
6041  pub target: *mut ::std::os::raw::c_char,
6042  pub targetLimit: *const ::std::os::raw::c_char,
6043  pub offsets: *mut i32,
6044}
6045#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6046const _: () = {
6047  ["Size of UConverterFromUnicodeArgs"]
6048    [::std::mem::size_of::<UConverterFromUnicodeArgs>() - 56usize];
6049  ["Alignment of UConverterFromUnicodeArgs"]
6050    [::std::mem::align_of::<UConverterFromUnicodeArgs>() - 8usize];
6051  ["Offset of field: UConverterFromUnicodeArgs::size"]
6052    [::std::mem::offset_of!(UConverterFromUnicodeArgs, size) - 0usize];
6053  ["Offset of field: UConverterFromUnicodeArgs::flush"]
6054    [::std::mem::offset_of!(UConverterFromUnicodeArgs, flush) - 2usize];
6055  ["Offset of field: UConverterFromUnicodeArgs::converter"]
6056    [::std::mem::offset_of!(UConverterFromUnicodeArgs, converter) - 8usize];
6057  ["Offset of field: UConverterFromUnicodeArgs::source"]
6058    [::std::mem::offset_of!(UConverterFromUnicodeArgs, source) - 16usize];
6059  ["Offset of field: UConverterFromUnicodeArgs::sourceLimit"]
6060    [::std::mem::offset_of!(UConverterFromUnicodeArgs, sourceLimit) - 24usize];
6061  ["Offset of field: UConverterFromUnicodeArgs::target"]
6062    [::std::mem::offset_of!(UConverterFromUnicodeArgs, target) - 32usize];
6063  ["Offset of field: UConverterFromUnicodeArgs::targetLimit"]
6064    [::std::mem::offset_of!(UConverterFromUnicodeArgs, targetLimit) - 40usize];
6065  ["Offset of field: UConverterFromUnicodeArgs::offsets"]
6066    [::std::mem::offset_of!(UConverterFromUnicodeArgs, offsets) - 48usize];
6067};
6068#[repr(C)]
6069#[derive(Debug, Copy, Clone)]
6070pub struct UConverterToUnicodeArgs {
6071  pub size: u16,
6072  pub flush: UBool,
6073  pub converter: *mut UConverter,
6074  pub source: *const ::std::os::raw::c_char,
6075  pub sourceLimit: *const ::std::os::raw::c_char,
6076  pub target: *mut UChar,
6077  pub targetLimit: *const UChar,
6078  pub offsets: *mut i32,
6079}
6080#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6081const _: () = {
6082  ["Size of UConverterToUnicodeArgs"][::std::mem::size_of::<UConverterToUnicodeArgs>() - 56usize];
6083  ["Alignment of UConverterToUnicodeArgs"]
6084    [::std::mem::align_of::<UConverterToUnicodeArgs>() - 8usize];
6085  ["Offset of field: UConverterToUnicodeArgs::size"]
6086    [::std::mem::offset_of!(UConverterToUnicodeArgs, size) - 0usize];
6087  ["Offset of field: UConverterToUnicodeArgs::flush"]
6088    [::std::mem::offset_of!(UConverterToUnicodeArgs, flush) - 2usize];
6089  ["Offset of field: UConverterToUnicodeArgs::converter"]
6090    [::std::mem::offset_of!(UConverterToUnicodeArgs, converter) - 8usize];
6091  ["Offset of field: UConverterToUnicodeArgs::source"]
6092    [::std::mem::offset_of!(UConverterToUnicodeArgs, source) - 16usize];
6093  ["Offset of field: UConverterToUnicodeArgs::sourceLimit"]
6094    [::std::mem::offset_of!(UConverterToUnicodeArgs, sourceLimit) - 24usize];
6095  ["Offset of field: UConverterToUnicodeArgs::target"]
6096    [::std::mem::offset_of!(UConverterToUnicodeArgs, target) - 32usize];
6097  ["Offset of field: UConverterToUnicodeArgs::targetLimit"]
6098    [::std::mem::offset_of!(UConverterToUnicodeArgs, targetLimit) - 40usize];
6099  ["Offset of field: UConverterToUnicodeArgs::offsets"]
6100    [::std::mem::offset_of!(UConverterToUnicodeArgs, offsets) - 48usize];
6101};
6102unsafe extern "C" {
6103  pub fn UCNV_FROM_U_CALLBACK_STOP_74(
6104    context: *const ::std::os::raw::c_void,
6105    fromUArgs: *mut UConverterFromUnicodeArgs,
6106    codeUnits: *const UChar,
6107    length: i32,
6108    codePoint: UChar32,
6109    reason: UConverterCallbackReason,
6110    err: *mut UErrorCode,
6111  );
6112}
6113unsafe extern "C" {
6114  pub fn UCNV_TO_U_CALLBACK_STOP_74(
6115    context: *const ::std::os::raw::c_void,
6116    toUArgs: *mut UConverterToUnicodeArgs,
6117    codeUnits: *const ::std::os::raw::c_char,
6118    length: i32,
6119    reason: UConverterCallbackReason,
6120    err: *mut UErrorCode,
6121  );
6122}
6123unsafe extern "C" {
6124  pub fn UCNV_FROM_U_CALLBACK_SKIP_74(
6125    context: *const ::std::os::raw::c_void,
6126    fromUArgs: *mut UConverterFromUnicodeArgs,
6127    codeUnits: *const UChar,
6128    length: i32,
6129    codePoint: UChar32,
6130    reason: UConverterCallbackReason,
6131    err: *mut UErrorCode,
6132  );
6133}
6134unsafe extern "C" {
6135  pub fn UCNV_FROM_U_CALLBACK_SUBSTITUTE_74(
6136    context: *const ::std::os::raw::c_void,
6137    fromUArgs: *mut UConverterFromUnicodeArgs,
6138    codeUnits: *const UChar,
6139    length: i32,
6140    codePoint: UChar32,
6141    reason: UConverterCallbackReason,
6142    err: *mut UErrorCode,
6143  );
6144}
6145unsafe extern "C" {
6146  pub fn UCNV_FROM_U_CALLBACK_ESCAPE_74(
6147    context: *const ::std::os::raw::c_void,
6148    fromUArgs: *mut UConverterFromUnicodeArgs,
6149    codeUnits: *const UChar,
6150    length: i32,
6151    codePoint: UChar32,
6152    reason: UConverterCallbackReason,
6153    err: *mut UErrorCode,
6154  );
6155}
6156unsafe extern "C" {
6157  pub fn UCNV_TO_U_CALLBACK_SKIP_74(
6158    context: *const ::std::os::raw::c_void,
6159    toUArgs: *mut UConverterToUnicodeArgs,
6160    codeUnits: *const ::std::os::raw::c_char,
6161    length: i32,
6162    reason: UConverterCallbackReason,
6163    err: *mut UErrorCode,
6164  );
6165}
6166unsafe extern "C" {
6167  pub fn UCNV_TO_U_CALLBACK_SUBSTITUTE_74(
6168    context: *const ::std::os::raw::c_void,
6169    toUArgs: *mut UConverterToUnicodeArgs,
6170    codeUnits: *const ::std::os::raw::c_char,
6171    length: i32,
6172    reason: UConverterCallbackReason,
6173    err: *mut UErrorCode,
6174  );
6175}
6176unsafe extern "C" {
6177  pub fn UCNV_TO_U_CALLBACK_ESCAPE_74(
6178    context: *const ::std::os::raw::c_void,
6179    toUArgs: *mut UConverterToUnicodeArgs,
6180    codeUnits: *const ::std::os::raw::c_char,
6181    length: i32,
6182    reason: UConverterCallbackReason,
6183    err: *mut UErrorCode,
6184  );
6185}
6186#[repr(C)]
6187#[derive(Debug, Copy, Clone)]
6188pub struct UEnumeration {
6189  _unused: [u8; 0],
6190}
6191unsafe extern "C" {
6192  pub fn uenum_close_74(en: *mut UEnumeration);
6193}
6194unsafe extern "C" {
6195  pub fn uenum_count_74(en: *mut UEnumeration, status: *mut UErrorCode) -> i32;
6196}
6197unsafe extern "C" {
6198  pub fn uenum_unext_74(
6199    en: *mut UEnumeration,
6200    resultLength: *mut i32,
6201    status: *mut UErrorCode,
6202  ) -> *const UChar;
6203}
6204unsafe extern "C" {
6205  pub fn uenum_next_74(
6206    en: *mut UEnumeration,
6207    resultLength: *mut i32,
6208    status: *mut UErrorCode,
6209  ) -> *const ::std::os::raw::c_char;
6210}
6211unsafe extern "C" {
6212  pub fn uenum_reset_74(en: *mut UEnumeration, status: *mut UErrorCode);
6213}
6214unsafe extern "C" {
6215  pub fn uenum_openUCharStringsEnumeration_74(
6216    strings: *const *const UChar,
6217    count: i32,
6218    ec: *mut UErrorCode,
6219  ) -> *mut UEnumeration;
6220}
6221unsafe extern "C" {
6222  pub fn uenum_openCharStringsEnumeration_74(
6223    strings: *const *const ::std::os::raw::c_char,
6224    count: i32,
6225    ec: *mut UErrorCode,
6226  ) -> *mut UEnumeration;
6227}
6228#[repr(C)]
6229#[derive(Debug, Copy, Clone)]
6230pub struct USet {
6231  _unused: [u8; 0],
6232}
6233pub const UConverterType_UCNV_UNSUPPORTED_CONVERTER: UConverterType = -1;
6234pub const UConverterType_UCNV_SBCS: UConverterType = 0;
6235pub const UConverterType_UCNV_DBCS: UConverterType = 1;
6236pub const UConverterType_UCNV_MBCS: UConverterType = 2;
6237pub const UConverterType_UCNV_LATIN_1: UConverterType = 3;
6238pub const UConverterType_UCNV_UTF8: UConverterType = 4;
6239pub const UConverterType_UCNV_UTF16_BigEndian: UConverterType = 5;
6240pub const UConverterType_UCNV_UTF16_LittleEndian: UConverterType = 6;
6241pub const UConverterType_UCNV_UTF32_BigEndian: UConverterType = 7;
6242pub const UConverterType_UCNV_UTF32_LittleEndian: UConverterType = 8;
6243pub const UConverterType_UCNV_EBCDIC_STATEFUL: UConverterType = 9;
6244pub const UConverterType_UCNV_ISO_2022: UConverterType = 10;
6245pub const UConverterType_UCNV_LMBCS_1: UConverterType = 11;
6246pub const UConverterType_UCNV_LMBCS_2: UConverterType = 12;
6247pub const UConverterType_UCNV_LMBCS_3: UConverterType = 13;
6248pub const UConverterType_UCNV_LMBCS_4: UConverterType = 14;
6249pub const UConverterType_UCNV_LMBCS_5: UConverterType = 15;
6250pub const UConverterType_UCNV_LMBCS_6: UConverterType = 16;
6251pub const UConverterType_UCNV_LMBCS_8: UConverterType = 17;
6252pub const UConverterType_UCNV_LMBCS_11: UConverterType = 18;
6253pub const UConverterType_UCNV_LMBCS_16: UConverterType = 19;
6254pub const UConverterType_UCNV_LMBCS_17: UConverterType = 20;
6255pub const UConverterType_UCNV_LMBCS_18: UConverterType = 21;
6256pub const UConverterType_UCNV_LMBCS_19: UConverterType = 22;
6257pub const UConverterType_UCNV_LMBCS_LAST: UConverterType = 22;
6258pub const UConverterType_UCNV_HZ: UConverterType = 23;
6259pub const UConverterType_UCNV_SCSU: UConverterType = 24;
6260pub const UConverterType_UCNV_ISCII: UConverterType = 25;
6261pub const UConverterType_UCNV_US_ASCII: UConverterType = 26;
6262pub const UConverterType_UCNV_UTF7: UConverterType = 27;
6263pub const UConverterType_UCNV_BOCU1: UConverterType = 28;
6264pub const UConverterType_UCNV_UTF16: UConverterType = 29;
6265pub const UConverterType_UCNV_UTF32: UConverterType = 30;
6266pub const UConverterType_UCNV_CESU8: UConverterType = 31;
6267pub const UConverterType_UCNV_IMAP_MAILBOX: UConverterType = 32;
6268pub const UConverterType_UCNV_COMPOUND_TEXT: UConverterType = 33;
6269pub const UConverterType_UCNV_NUMBER_OF_SUPPORTED_CONVERTER_TYPES: UConverterType = 34;
6270pub type UConverterType = ::std::os::raw::c_int;
6271pub const UConverterPlatform_UCNV_UNKNOWN: UConverterPlatform = -1;
6272pub const UConverterPlatform_UCNV_IBM: UConverterPlatform = 0;
6273pub type UConverterPlatform = ::std::os::raw::c_int;
6274pub type UConverterToUCallback = ::std::option::Option<
6275  unsafe extern "C" fn(
6276    context: *const ::std::os::raw::c_void,
6277    args: *mut UConverterToUnicodeArgs,
6278    codeUnits: *const ::std::os::raw::c_char,
6279    length: i32,
6280    reason: UConverterCallbackReason,
6281    pErrorCode: *mut UErrorCode,
6282  ),
6283>;
6284pub type UConverterFromUCallback = ::std::option::Option<
6285  unsafe extern "C" fn(
6286    context: *const ::std::os::raw::c_void,
6287    args: *mut UConverterFromUnicodeArgs,
6288    codeUnits: *const UChar,
6289    length: i32,
6290    codePoint: UChar32,
6291    reason: UConverterCallbackReason,
6292    pErrorCode: *mut UErrorCode,
6293  ),
6294>;
6295unsafe extern "C" {
6296  pub fn ucnv_compareNames_74(
6297    name1: *const ::std::os::raw::c_char,
6298    name2: *const ::std::os::raw::c_char,
6299  ) -> ::std::os::raw::c_int;
6300}
6301unsafe extern "C" {
6302  pub fn ucnv_open_74(
6303    converterName: *const ::std::os::raw::c_char,
6304    err: *mut UErrorCode,
6305  ) -> *mut UConverter;
6306}
6307unsafe extern "C" {
6308  pub fn ucnv_openU_74(name: *const UChar, err: *mut UErrorCode) -> *mut UConverter;
6309}
6310unsafe extern "C" {
6311  pub fn ucnv_openCCSID_74(
6312    codepage: i32,
6313    platform: UConverterPlatform,
6314    err: *mut UErrorCode,
6315  ) -> *mut UConverter;
6316}
6317unsafe extern "C" {
6318  pub fn ucnv_openPackage_74(
6319    packageName: *const ::std::os::raw::c_char,
6320    converterName: *const ::std::os::raw::c_char,
6321    err: *mut UErrorCode,
6322  ) -> *mut UConverter;
6323}
6324unsafe extern "C" {
6325  pub fn ucnv_clone_74(cnv: *const UConverter, status: *mut UErrorCode) -> *mut UConverter;
6326}
6327unsafe extern "C" {
6328  pub fn ucnv_safeClone_74(
6329    cnv: *const UConverter,
6330    stackBuffer: *mut ::std::os::raw::c_void,
6331    pBufferSize: *mut i32,
6332    status: *mut UErrorCode,
6333  ) -> *mut UConverter;
6334}
6335unsafe extern "C" {
6336  pub fn ucnv_close_74(converter: *mut UConverter);
6337}
6338unsafe extern "C" {
6339  pub fn ucnv_getSubstChars_74(
6340    converter: *const UConverter,
6341    subChars: *mut ::std::os::raw::c_char,
6342    len: *mut i8,
6343    err: *mut UErrorCode,
6344  );
6345}
6346unsafe extern "C" {
6347  pub fn ucnv_setSubstChars_74(
6348    converter: *mut UConverter,
6349    subChars: *const ::std::os::raw::c_char,
6350    len: i8,
6351    err: *mut UErrorCode,
6352  );
6353}
6354unsafe extern "C" {
6355  pub fn ucnv_setSubstString_74(
6356    cnv: *mut UConverter,
6357    s: *const UChar,
6358    length: i32,
6359    err: *mut UErrorCode,
6360  );
6361}
6362unsafe extern "C" {
6363  pub fn ucnv_getInvalidChars_74(
6364    converter: *const UConverter,
6365    errBytes: *mut ::std::os::raw::c_char,
6366    len: *mut i8,
6367    err: *mut UErrorCode,
6368  );
6369}
6370unsafe extern "C" {
6371  pub fn ucnv_getInvalidUChars_74(
6372    converter: *const UConverter,
6373    errUChars: *mut UChar,
6374    len: *mut i8,
6375    err: *mut UErrorCode,
6376  );
6377}
6378unsafe extern "C" {
6379  pub fn ucnv_reset_74(converter: *mut UConverter);
6380}
6381unsafe extern "C" {
6382  pub fn ucnv_resetToUnicode_74(converter: *mut UConverter);
6383}
6384unsafe extern "C" {
6385  pub fn ucnv_resetFromUnicode_74(converter: *mut UConverter);
6386}
6387unsafe extern "C" {
6388  pub fn ucnv_getMaxCharSize_74(converter: *const UConverter) -> i8;
6389}
6390unsafe extern "C" {
6391  pub fn ucnv_getMinCharSize_74(converter: *const UConverter) -> i8;
6392}
6393unsafe extern "C" {
6394  pub fn ucnv_getDisplayName_74(
6395    converter: *const UConverter,
6396    displayLocale: *const ::std::os::raw::c_char,
6397    displayName: *mut UChar,
6398    displayNameCapacity: i32,
6399    err: *mut UErrorCode,
6400  ) -> i32;
6401}
6402unsafe extern "C" {
6403  pub fn ucnv_getName_74(
6404    converter: *const UConverter,
6405    err: *mut UErrorCode,
6406  ) -> *const ::std::os::raw::c_char;
6407}
6408unsafe extern "C" {
6409  pub fn ucnv_getCCSID_74(converter: *const UConverter, err: *mut UErrorCode) -> i32;
6410}
6411unsafe extern "C" {
6412  pub fn ucnv_getPlatform_74(
6413    converter: *const UConverter,
6414    err: *mut UErrorCode,
6415  ) -> UConverterPlatform;
6416}
6417unsafe extern "C" {
6418  pub fn ucnv_getType_74(converter: *const UConverter) -> UConverterType;
6419}
6420unsafe extern "C" {
6421  pub fn ucnv_getStarters_74(
6422    converter: *const UConverter,
6423    starters: *mut UBool,
6424    err: *mut UErrorCode,
6425  );
6426}
6427pub const UConverterUnicodeSet_UCNV_ROUNDTRIP_SET: UConverterUnicodeSet = 0;
6428pub const UConverterUnicodeSet_UCNV_ROUNDTRIP_AND_FALLBACK_SET: UConverterUnicodeSet = 1;
6429pub const UConverterUnicodeSet_UCNV_SET_COUNT: UConverterUnicodeSet = 2;
6430pub type UConverterUnicodeSet = ::std::os::raw::c_uint;
6431unsafe extern "C" {
6432  pub fn ucnv_getUnicodeSet_74(
6433    cnv: *const UConverter,
6434    setFillIn: *mut USet,
6435    whichSet: UConverterUnicodeSet,
6436    pErrorCode: *mut UErrorCode,
6437  );
6438}
6439unsafe extern "C" {
6440  pub fn ucnv_getToUCallBack_74(
6441    converter: *const UConverter,
6442    action: *mut UConverterToUCallback,
6443    context: *mut *const ::std::os::raw::c_void,
6444  );
6445}
6446unsafe extern "C" {
6447  pub fn ucnv_getFromUCallBack_74(
6448    converter: *const UConverter,
6449    action: *mut UConverterFromUCallback,
6450    context: *mut *const ::std::os::raw::c_void,
6451  );
6452}
6453unsafe extern "C" {
6454  pub fn ucnv_setToUCallBack_74(
6455    converter: *mut UConverter,
6456    newAction: UConverterToUCallback,
6457    newContext: *const ::std::os::raw::c_void,
6458    oldAction: *mut UConverterToUCallback,
6459    oldContext: *mut *const ::std::os::raw::c_void,
6460    err: *mut UErrorCode,
6461  );
6462}
6463unsafe extern "C" {
6464  pub fn ucnv_setFromUCallBack_74(
6465    converter: *mut UConverter,
6466    newAction: UConverterFromUCallback,
6467    newContext: *const ::std::os::raw::c_void,
6468    oldAction: *mut UConverterFromUCallback,
6469    oldContext: *mut *const ::std::os::raw::c_void,
6470    err: *mut UErrorCode,
6471  );
6472}
6473unsafe extern "C" {
6474  pub fn ucnv_fromUnicode_74(
6475    converter: *mut UConverter,
6476    target: *mut *mut ::std::os::raw::c_char,
6477    targetLimit: *const ::std::os::raw::c_char,
6478    source: *mut *const UChar,
6479    sourceLimit: *const UChar,
6480    offsets: *mut i32,
6481    flush: UBool,
6482    err: *mut UErrorCode,
6483  );
6484}
6485unsafe extern "C" {
6486  pub fn ucnv_toUnicode_74(
6487    converter: *mut UConverter,
6488    target: *mut *mut UChar,
6489    targetLimit: *const UChar,
6490    source: *mut *const ::std::os::raw::c_char,
6491    sourceLimit: *const ::std::os::raw::c_char,
6492    offsets: *mut i32,
6493    flush: UBool,
6494    err: *mut UErrorCode,
6495  );
6496}
6497unsafe extern "C" {
6498  pub fn ucnv_fromUChars_74(
6499    cnv: *mut UConverter,
6500    dest: *mut ::std::os::raw::c_char,
6501    destCapacity: i32,
6502    src: *const UChar,
6503    srcLength: i32,
6504    pErrorCode: *mut UErrorCode,
6505  ) -> i32;
6506}
6507unsafe extern "C" {
6508  pub fn ucnv_toUChars_74(
6509    cnv: *mut UConverter,
6510    dest: *mut UChar,
6511    destCapacity: i32,
6512    src: *const ::std::os::raw::c_char,
6513    srcLength: i32,
6514    pErrorCode: *mut UErrorCode,
6515  ) -> i32;
6516}
6517unsafe extern "C" {
6518  pub fn ucnv_getNextUChar_74(
6519    converter: *mut UConverter,
6520    source: *mut *const ::std::os::raw::c_char,
6521    sourceLimit: *const ::std::os::raw::c_char,
6522    err: *mut UErrorCode,
6523  ) -> UChar32;
6524}
6525unsafe extern "C" {
6526  pub fn ucnv_convertEx_74(
6527    targetCnv: *mut UConverter,
6528    sourceCnv: *mut UConverter,
6529    target: *mut *mut ::std::os::raw::c_char,
6530    targetLimit: *const ::std::os::raw::c_char,
6531    source: *mut *const ::std::os::raw::c_char,
6532    sourceLimit: *const ::std::os::raw::c_char,
6533    pivotStart: *mut UChar,
6534    pivotSource: *mut *mut UChar,
6535    pivotTarget: *mut *mut UChar,
6536    pivotLimit: *const UChar,
6537    reset: UBool,
6538    flush: UBool,
6539    pErrorCode: *mut UErrorCode,
6540  );
6541}
6542unsafe extern "C" {
6543  pub fn ucnv_convert_74(
6544    toConverterName: *const ::std::os::raw::c_char,
6545    fromConverterName: *const ::std::os::raw::c_char,
6546    target: *mut ::std::os::raw::c_char,
6547    targetCapacity: i32,
6548    source: *const ::std::os::raw::c_char,
6549    sourceLength: i32,
6550    pErrorCode: *mut UErrorCode,
6551  ) -> i32;
6552}
6553unsafe extern "C" {
6554  pub fn ucnv_toAlgorithmic_74(
6555    algorithmicType: UConverterType,
6556    cnv: *mut UConverter,
6557    target: *mut ::std::os::raw::c_char,
6558    targetCapacity: i32,
6559    source: *const ::std::os::raw::c_char,
6560    sourceLength: i32,
6561    pErrorCode: *mut UErrorCode,
6562  ) -> i32;
6563}
6564unsafe extern "C" {
6565  pub fn ucnv_fromAlgorithmic_74(
6566    cnv: *mut UConverter,
6567    algorithmicType: UConverterType,
6568    target: *mut ::std::os::raw::c_char,
6569    targetCapacity: i32,
6570    source: *const ::std::os::raw::c_char,
6571    sourceLength: i32,
6572    pErrorCode: *mut UErrorCode,
6573  ) -> i32;
6574}
6575unsafe extern "C" {
6576  pub fn ucnv_flushCache_74() -> i32;
6577}
6578unsafe extern "C" {
6579  pub fn ucnv_countAvailable_74() -> i32;
6580}
6581unsafe extern "C" {
6582  pub fn ucnv_getAvailableName_74(n: i32) -> *const ::std::os::raw::c_char;
6583}
6584unsafe extern "C" {
6585  pub fn ucnv_openAllNames_74(pErrorCode: *mut UErrorCode) -> *mut UEnumeration;
6586}
6587unsafe extern "C" {
6588  pub fn ucnv_countAliases_74(
6589    alias: *const ::std::os::raw::c_char,
6590    pErrorCode: *mut UErrorCode,
6591  ) -> u16;
6592}
6593unsafe extern "C" {
6594  pub fn ucnv_getAlias_74(
6595    alias: *const ::std::os::raw::c_char,
6596    n: u16,
6597    pErrorCode: *mut UErrorCode,
6598  ) -> *const ::std::os::raw::c_char;
6599}
6600unsafe extern "C" {
6601  pub fn ucnv_getAliases_74(
6602    alias: *const ::std::os::raw::c_char,
6603    aliases: *mut *const ::std::os::raw::c_char,
6604    pErrorCode: *mut UErrorCode,
6605  );
6606}
6607unsafe extern "C" {
6608  pub fn ucnv_openStandardNames_74(
6609    convName: *const ::std::os::raw::c_char,
6610    standard: *const ::std::os::raw::c_char,
6611    pErrorCode: *mut UErrorCode,
6612  ) -> *mut UEnumeration;
6613}
6614unsafe extern "C" {
6615  pub fn ucnv_countStandards_74() -> u16;
6616}
6617unsafe extern "C" {
6618  pub fn ucnv_getStandard_74(n: u16, pErrorCode: *mut UErrorCode) -> *const ::std::os::raw::c_char;
6619}
6620unsafe extern "C" {
6621  pub fn ucnv_getStandardName_74(
6622    name: *const ::std::os::raw::c_char,
6623    standard: *const ::std::os::raw::c_char,
6624    pErrorCode: *mut UErrorCode,
6625  ) -> *const ::std::os::raw::c_char;
6626}
6627unsafe extern "C" {
6628  pub fn ucnv_getCanonicalName_74(
6629    alias: *const ::std::os::raw::c_char,
6630    standard: *const ::std::os::raw::c_char,
6631    pErrorCode: *mut UErrorCode,
6632  ) -> *const ::std::os::raw::c_char;
6633}
6634unsafe extern "C" {
6635  pub fn ucnv_getDefaultName_74() -> *const ::std::os::raw::c_char;
6636}
6637unsafe extern "C" {
6638  pub fn ucnv_setDefaultName_74(name: *const ::std::os::raw::c_char);
6639}
6640unsafe extern "C" {
6641  pub fn ucnv_fixFileSeparator_74(cnv: *const UConverter, source: *mut UChar, sourceLen: i32);
6642}
6643unsafe extern "C" {
6644  pub fn ucnv_isAmbiguous_74(cnv: *const UConverter) -> UBool;
6645}
6646unsafe extern "C" {
6647  pub fn ucnv_setFallback_74(cnv: *mut UConverter, usesFallback: UBool);
6648}
6649unsafe extern "C" {
6650  pub fn ucnv_usesFallback_74(cnv: *const UConverter) -> UBool;
6651}
6652unsafe extern "C" {
6653  pub fn ucnv_detectUnicodeSignature_74(
6654    source: *const ::std::os::raw::c_char,
6655    sourceLength: i32,
6656    signatureLength: *mut i32,
6657    pErrorCode: *mut UErrorCode,
6658  ) -> *const ::std::os::raw::c_char;
6659}
6660unsafe extern "C" {
6661  pub fn ucnv_fromUCountPending_74(cnv: *const UConverter, status: *mut UErrorCode) -> i32;
6662}
6663unsafe extern "C" {
6664  pub fn ucnv_toUCountPending_74(cnv: *const UConverter, status: *mut UErrorCode) -> i32;
6665}
6666unsafe extern "C" {
6667  pub fn ucnv_isFixedWidth_74(cnv: *mut UConverter, status: *mut UErrorCode) -> UBool;
6668}
6669pub const xmlCharEncoding_XML_CHAR_ENCODING_ERROR: xmlCharEncoding = -1;
6670pub const xmlCharEncoding_XML_CHAR_ENCODING_NONE: xmlCharEncoding = 0;
6671pub const xmlCharEncoding_XML_CHAR_ENCODING_UTF8: xmlCharEncoding = 1;
6672pub const xmlCharEncoding_XML_CHAR_ENCODING_UTF16LE: xmlCharEncoding = 2;
6673pub const xmlCharEncoding_XML_CHAR_ENCODING_UTF16BE: xmlCharEncoding = 3;
6674pub const xmlCharEncoding_XML_CHAR_ENCODING_UCS4LE: xmlCharEncoding = 4;
6675pub const xmlCharEncoding_XML_CHAR_ENCODING_UCS4BE: xmlCharEncoding = 5;
6676pub const xmlCharEncoding_XML_CHAR_ENCODING_EBCDIC: xmlCharEncoding = 6;
6677pub const xmlCharEncoding_XML_CHAR_ENCODING_UCS4_2143: xmlCharEncoding = 7;
6678pub const xmlCharEncoding_XML_CHAR_ENCODING_UCS4_3412: xmlCharEncoding = 8;
6679pub const xmlCharEncoding_XML_CHAR_ENCODING_UCS2: xmlCharEncoding = 9;
6680pub const xmlCharEncoding_XML_CHAR_ENCODING_8859_1: xmlCharEncoding = 10;
6681pub const xmlCharEncoding_XML_CHAR_ENCODING_8859_2: xmlCharEncoding = 11;
6682pub const xmlCharEncoding_XML_CHAR_ENCODING_8859_3: xmlCharEncoding = 12;
6683pub const xmlCharEncoding_XML_CHAR_ENCODING_8859_4: xmlCharEncoding = 13;
6684pub const xmlCharEncoding_XML_CHAR_ENCODING_8859_5: xmlCharEncoding = 14;
6685pub const xmlCharEncoding_XML_CHAR_ENCODING_8859_6: xmlCharEncoding = 15;
6686pub const xmlCharEncoding_XML_CHAR_ENCODING_8859_7: xmlCharEncoding = 16;
6687pub const xmlCharEncoding_XML_CHAR_ENCODING_8859_8: xmlCharEncoding = 17;
6688pub const xmlCharEncoding_XML_CHAR_ENCODING_8859_9: xmlCharEncoding = 18;
6689pub const xmlCharEncoding_XML_CHAR_ENCODING_2022_JP: xmlCharEncoding = 19;
6690pub const xmlCharEncoding_XML_CHAR_ENCODING_SHIFT_JIS: xmlCharEncoding = 20;
6691pub const xmlCharEncoding_XML_CHAR_ENCODING_EUC_JP: xmlCharEncoding = 21;
6692pub const xmlCharEncoding_XML_CHAR_ENCODING_ASCII: xmlCharEncoding = 22;
6693pub type xmlCharEncoding = ::std::os::raw::c_int;
6694#[doc = " xmlCharEncodingInputFunc:\n @out:  a pointer to an array of bytes to store the UTF-8 result\n @outlen:  the length of @out\n @in:  a pointer to an array of chars in the original encoding\n @inlen:  the length of @in\n\n Take a block of chars in the original encoding and try to convert\n it to an UTF-8 block of chars out.\n\n Returns the number of bytes written, -1 if lack of space, or -2\n     if the transcoding failed.\n The value of @inlen after return is the number of octets consumed\n     if the return value is positive, else unpredictiable.\n The value of @outlen after return is the number of octets consumed."]
6695pub type xmlCharEncodingInputFunc = ::std::option::Option<
6696  unsafe extern "C" fn(
6697    out: *mut ::std::os::raw::c_uchar,
6698    outlen: *mut ::std::os::raw::c_int,
6699    in_: *const ::std::os::raw::c_uchar,
6700    inlen: *mut ::std::os::raw::c_int,
6701  ) -> ::std::os::raw::c_int,
6702>;
6703#[doc = " xmlCharEncodingOutputFunc:\n @out:  a pointer to an array of bytes to store the result\n @outlen:  the length of @out\n @in:  a pointer to an array of UTF-8 chars\n @inlen:  the length of @in\n\n Take a block of UTF-8 chars in and try to convert it to another\n encoding.\n Note: a first call designed to produce heading info is called with\n in = NULL. If stateful this should also initialize the encoder state.\n\n Returns the number of bytes written, -1 if lack of space, or -2\n     if the transcoding failed.\n The value of @inlen after return is the number of octets consumed\n     if the return value is positive, else unpredictiable.\n The value of @outlen after return is the number of octets produced."]
6704pub type xmlCharEncodingOutputFunc = ::std::option::Option<
6705  unsafe extern "C" fn(
6706    out: *mut ::std::os::raw::c_uchar,
6707    outlen: *mut ::std::os::raw::c_int,
6708    in_: *const ::std::os::raw::c_uchar,
6709    inlen: *mut ::std::os::raw::c_int,
6710  ) -> ::std::os::raw::c_int,
6711>;
6712#[repr(C)]
6713#[derive(Debug, Copy, Clone)]
6714pub struct _uconv_t {
6715  pub uconv: *mut UConverter,
6716  pub utf8: *mut UConverter,
6717  pub pivot_buf: [UChar; 1024usize],
6718  pub pivot_source: *mut UChar,
6719  pub pivot_target: *mut UChar,
6720}
6721#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6722const _: () = {
6723  ["Size of _uconv_t"][::std::mem::size_of::<_uconv_t>() - 2080usize];
6724  ["Alignment of _uconv_t"][::std::mem::align_of::<_uconv_t>() - 8usize];
6725  ["Offset of field: _uconv_t::uconv"][::std::mem::offset_of!(_uconv_t, uconv) - 0usize];
6726  ["Offset of field: _uconv_t::utf8"][::std::mem::offset_of!(_uconv_t, utf8) - 8usize];
6727  ["Offset of field: _uconv_t::pivot_buf"][::std::mem::offset_of!(_uconv_t, pivot_buf) - 16usize];
6728  ["Offset of field: _uconv_t::pivot_source"]
6729    [::std::mem::offset_of!(_uconv_t, pivot_source) - 2064usize];
6730  ["Offset of field: _uconv_t::pivot_target"]
6731    [::std::mem::offset_of!(_uconv_t, pivot_target) - 2072usize];
6732};
6733pub type uconv_t = _uconv_t;
6734pub type xmlCharEncodingHandler = _xmlCharEncodingHandler;
6735pub type xmlCharEncodingHandlerPtr = *mut xmlCharEncodingHandler;
6736#[repr(C)]
6737#[derive(Debug, Copy, Clone)]
6738pub struct _xmlCharEncodingHandler {
6739  pub name: *mut ::std::os::raw::c_char,
6740  pub input: xmlCharEncodingInputFunc,
6741  pub output: xmlCharEncodingOutputFunc,
6742  pub iconv_in: iconv_t,
6743  pub iconv_out: iconv_t,
6744  pub uconv_in: *mut uconv_t,
6745  pub uconv_out: *mut uconv_t,
6746}
6747#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6748const _: () = {
6749  ["Size of _xmlCharEncodingHandler"][::std::mem::size_of::<_xmlCharEncodingHandler>() - 56usize];
6750  ["Alignment of _xmlCharEncodingHandler"]
6751    [::std::mem::align_of::<_xmlCharEncodingHandler>() - 8usize];
6752  ["Offset of field: _xmlCharEncodingHandler::name"]
6753    [::std::mem::offset_of!(_xmlCharEncodingHandler, name) - 0usize];
6754  ["Offset of field: _xmlCharEncodingHandler::input"]
6755    [::std::mem::offset_of!(_xmlCharEncodingHandler, input) - 8usize];
6756  ["Offset of field: _xmlCharEncodingHandler::output"]
6757    [::std::mem::offset_of!(_xmlCharEncodingHandler, output) - 16usize];
6758  ["Offset of field: _xmlCharEncodingHandler::iconv_in"]
6759    [::std::mem::offset_of!(_xmlCharEncodingHandler, iconv_in) - 24usize];
6760  ["Offset of field: _xmlCharEncodingHandler::iconv_out"]
6761    [::std::mem::offset_of!(_xmlCharEncodingHandler, iconv_out) - 32usize];
6762  ["Offset of field: _xmlCharEncodingHandler::uconv_in"]
6763    [::std::mem::offset_of!(_xmlCharEncodingHandler, uconv_in) - 40usize];
6764  ["Offset of field: _xmlCharEncodingHandler::uconv_out"]
6765    [::std::mem::offset_of!(_xmlCharEncodingHandler, uconv_out) - 48usize];
6766};
6767unsafe extern "C" {
6768  pub fn xmlInitCharEncodingHandlers();
6769}
6770unsafe extern "C" {
6771  pub fn xmlCleanupCharEncodingHandlers();
6772}
6773unsafe extern "C" {
6774  pub fn xmlRegisterCharEncodingHandler(handler: xmlCharEncodingHandlerPtr);
6775}
6776unsafe extern "C" {
6777  pub fn xmlGetCharEncodingHandler(enc: xmlCharEncoding) -> xmlCharEncodingHandlerPtr;
6778}
6779unsafe extern "C" {
6780  pub fn xmlFindCharEncodingHandler(
6781    name: *const ::std::os::raw::c_char,
6782  ) -> xmlCharEncodingHandlerPtr;
6783}
6784unsafe extern "C" {
6785  pub fn xmlNewCharEncodingHandler(
6786    name: *const ::std::os::raw::c_char,
6787    input: xmlCharEncodingInputFunc,
6788    output: xmlCharEncodingOutputFunc,
6789  ) -> xmlCharEncodingHandlerPtr;
6790}
6791unsafe extern "C" {
6792  pub fn xmlAddEncodingAlias(
6793    name: *const ::std::os::raw::c_char,
6794    alias: *const ::std::os::raw::c_char,
6795  ) -> ::std::os::raw::c_int;
6796}
6797unsafe extern "C" {
6798  pub fn xmlDelEncodingAlias(alias: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
6799}
6800unsafe extern "C" {
6801  pub fn xmlGetEncodingAlias(alias: *const ::std::os::raw::c_char)
6802  -> *const ::std::os::raw::c_char;
6803}
6804unsafe extern "C" {
6805  pub fn xmlCleanupEncodingAliases();
6806}
6807unsafe extern "C" {
6808  pub fn xmlParseCharEncoding(name: *const ::std::os::raw::c_char) -> xmlCharEncoding;
6809}
6810unsafe extern "C" {
6811  pub fn xmlGetCharEncodingName(enc: xmlCharEncoding) -> *const ::std::os::raw::c_char;
6812}
6813unsafe extern "C" {
6814  pub fn xmlDetectCharEncoding(
6815    in_: *const ::std::os::raw::c_uchar,
6816    len: ::std::os::raw::c_int,
6817  ) -> xmlCharEncoding;
6818}
6819unsafe extern "C" {
6820  pub fn xmlCharEncOutFunc(
6821    handler: *mut xmlCharEncodingHandler,
6822    out: xmlBufferPtr,
6823    in_: xmlBufferPtr,
6824  ) -> ::std::os::raw::c_int;
6825}
6826unsafe extern "C" {
6827  pub fn xmlCharEncInFunc(
6828    handler: *mut xmlCharEncodingHandler,
6829    out: xmlBufferPtr,
6830    in_: xmlBufferPtr,
6831  ) -> ::std::os::raw::c_int;
6832}
6833unsafe extern "C" {
6834  pub fn xmlCharEncFirstLine(
6835    handler: *mut xmlCharEncodingHandler,
6836    out: xmlBufferPtr,
6837    in_: xmlBufferPtr,
6838  ) -> ::std::os::raw::c_int;
6839}
6840unsafe extern "C" {
6841  pub fn xmlCharEncCloseFunc(handler: *mut xmlCharEncodingHandler) -> ::std::os::raw::c_int;
6842}
6843unsafe extern "C" {
6844  pub fn UTF8Toisolat1(
6845    out: *mut ::std::os::raw::c_uchar,
6846    outlen: *mut ::std::os::raw::c_int,
6847    in_: *const ::std::os::raw::c_uchar,
6848    inlen: *mut ::std::os::raw::c_int,
6849  ) -> ::std::os::raw::c_int;
6850}
6851unsafe extern "C" {
6852  pub fn isolat1ToUTF8(
6853    out: *mut ::std::os::raw::c_uchar,
6854    outlen: *mut ::std::os::raw::c_int,
6855    in_: *const ::std::os::raw::c_uchar,
6856    inlen: *mut ::std::os::raw::c_int,
6857  ) -> ::std::os::raw::c_int;
6858}
6859#[doc = " xmlInputMatchCallback:\n @filename: the filename or URI\n\n Callback used in the I/O Input API to detect if the current handler\n can provide input functionality for this resource.\n\n Returns 1 if yes and 0 if another Input module should be used"]
6860pub type xmlInputMatchCallback = ::std::option::Option<
6861  unsafe extern "C" fn(filename: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int,
6862>;
6863#[doc = " xmlInputOpenCallback:\n @filename: the filename or URI\n\n Callback used in the I/O Input API to open the resource\n\n Returns an Input context or NULL in case or error"]
6864pub type xmlInputOpenCallback = ::std::option::Option<
6865  unsafe extern "C" fn(filename: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_void,
6866>;
6867#[doc = " xmlInputReadCallback:\n @context:  an Input context\n @buffer:  the buffer to store data read\n @len:  the length of the buffer in bytes\n\n Callback used in the I/O Input API to read the resource\n\n Returns the number of bytes read or -1 in case of error"]
6868pub type xmlInputReadCallback = ::std::option::Option<
6869  unsafe extern "C" fn(
6870    context: *mut ::std::os::raw::c_void,
6871    buffer: *mut ::std::os::raw::c_char,
6872    len: ::std::os::raw::c_int,
6873  ) -> ::std::os::raw::c_int,
6874>;
6875#[doc = " xmlInputCloseCallback:\n @context:  an Input context\n\n Callback used in the I/O Input API to close the resource\n\n Returns 0 or -1 in case of error"]
6876pub type xmlInputCloseCallback = ::std::option::Option<
6877  unsafe extern "C" fn(context: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
6878>;
6879#[doc = " xmlOutputMatchCallback:\n @filename: the filename or URI\n\n Callback used in the I/O Output API to detect if the current handler\n can provide output functionality for this resource.\n\n Returns 1 if yes and 0 if another Output module should be used"]
6880pub type xmlOutputMatchCallback = ::std::option::Option<
6881  unsafe extern "C" fn(filename: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int,
6882>;
6883#[doc = " xmlOutputOpenCallback:\n @filename: the filename or URI\n\n Callback used in the I/O Output API to open the resource\n\n Returns an Output context or NULL in case or error"]
6884pub type xmlOutputOpenCallback = ::std::option::Option<
6885  unsafe extern "C" fn(filename: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_void,
6886>;
6887#[doc = " xmlOutputWriteCallback:\n @context:  an Output context\n @buffer:  the buffer of data to write\n @len:  the length of the buffer in bytes\n\n Callback used in the I/O Output API to write to the resource\n\n Returns the number of bytes written or -1 in case of error"]
6888pub type xmlOutputWriteCallback = ::std::option::Option<
6889  unsafe extern "C" fn(
6890    context: *mut ::std::os::raw::c_void,
6891    buffer: *const ::std::os::raw::c_char,
6892    len: ::std::os::raw::c_int,
6893  ) -> ::std::os::raw::c_int,
6894>;
6895#[doc = " xmlOutputCloseCallback:\n @context:  an Output context\n\n Callback used in the I/O Output API to close the resource\n\n Returns 0 or -1 in case of error"]
6896pub type xmlOutputCloseCallback = ::std::option::Option<
6897  unsafe extern "C" fn(context: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
6898>;
6899#[repr(C)]
6900#[derive(Debug, Copy, Clone)]
6901pub struct _xmlParserInputBuffer {
6902  pub context: *mut ::std::os::raw::c_void,
6903  pub readcallback: xmlInputReadCallback,
6904  pub closecallback: xmlInputCloseCallback,
6905  pub encoder: xmlCharEncodingHandlerPtr,
6906  pub buffer: xmlBufPtr,
6907  pub raw: xmlBufPtr,
6908  pub compressed: ::std::os::raw::c_int,
6909  pub error: ::std::os::raw::c_int,
6910  pub rawconsumed: ::std::os::raw::c_ulong,
6911}
6912#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6913const _: () = {
6914  ["Size of _xmlParserInputBuffer"][::std::mem::size_of::<_xmlParserInputBuffer>() - 64usize];
6915  ["Alignment of _xmlParserInputBuffer"][::std::mem::align_of::<_xmlParserInputBuffer>() - 8usize];
6916  ["Offset of field: _xmlParserInputBuffer::context"]
6917    [::std::mem::offset_of!(_xmlParserInputBuffer, context) - 0usize];
6918  ["Offset of field: _xmlParserInputBuffer::readcallback"]
6919    [::std::mem::offset_of!(_xmlParserInputBuffer, readcallback) - 8usize];
6920  ["Offset of field: _xmlParserInputBuffer::closecallback"]
6921    [::std::mem::offset_of!(_xmlParserInputBuffer, closecallback) - 16usize];
6922  ["Offset of field: _xmlParserInputBuffer::encoder"]
6923    [::std::mem::offset_of!(_xmlParserInputBuffer, encoder) - 24usize];
6924  ["Offset of field: _xmlParserInputBuffer::buffer"]
6925    [::std::mem::offset_of!(_xmlParserInputBuffer, buffer) - 32usize];
6926  ["Offset of field: _xmlParserInputBuffer::raw"]
6927    [::std::mem::offset_of!(_xmlParserInputBuffer, raw) - 40usize];
6928  ["Offset of field: _xmlParserInputBuffer::compressed"]
6929    [::std::mem::offset_of!(_xmlParserInputBuffer, compressed) - 48usize];
6930  ["Offset of field: _xmlParserInputBuffer::error"]
6931    [::std::mem::offset_of!(_xmlParserInputBuffer, error) - 52usize];
6932  ["Offset of field: _xmlParserInputBuffer::rawconsumed"]
6933    [::std::mem::offset_of!(_xmlParserInputBuffer, rawconsumed) - 56usize];
6934};
6935#[repr(C)]
6936#[derive(Debug, Copy, Clone)]
6937pub struct _xmlOutputBuffer {
6938  pub context: *mut ::std::os::raw::c_void,
6939  pub writecallback: xmlOutputWriteCallback,
6940  pub closecallback: xmlOutputCloseCallback,
6941  pub encoder: xmlCharEncodingHandlerPtr,
6942  pub buffer: xmlBufPtr,
6943  pub conv: xmlBufPtr,
6944  pub written: ::std::os::raw::c_int,
6945  pub error: ::std::os::raw::c_int,
6946}
6947#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6948const _: () = {
6949  ["Size of _xmlOutputBuffer"][::std::mem::size_of::<_xmlOutputBuffer>() - 56usize];
6950  ["Alignment of _xmlOutputBuffer"][::std::mem::align_of::<_xmlOutputBuffer>() - 8usize];
6951  ["Offset of field: _xmlOutputBuffer::context"]
6952    [::std::mem::offset_of!(_xmlOutputBuffer, context) - 0usize];
6953  ["Offset of field: _xmlOutputBuffer::writecallback"]
6954    [::std::mem::offset_of!(_xmlOutputBuffer, writecallback) - 8usize];
6955  ["Offset of field: _xmlOutputBuffer::closecallback"]
6956    [::std::mem::offset_of!(_xmlOutputBuffer, closecallback) - 16usize];
6957  ["Offset of field: _xmlOutputBuffer::encoder"]
6958    [::std::mem::offset_of!(_xmlOutputBuffer, encoder) - 24usize];
6959  ["Offset of field: _xmlOutputBuffer::buffer"]
6960    [::std::mem::offset_of!(_xmlOutputBuffer, buffer) - 32usize];
6961  ["Offset of field: _xmlOutputBuffer::conv"]
6962    [::std::mem::offset_of!(_xmlOutputBuffer, conv) - 40usize];
6963  ["Offset of field: _xmlOutputBuffer::written"]
6964    [::std::mem::offset_of!(_xmlOutputBuffer, written) - 48usize];
6965  ["Offset of field: _xmlOutputBuffer::error"]
6966    [::std::mem::offset_of!(_xmlOutputBuffer, error) - 52usize];
6967};
6968unsafe extern "C" {
6969  pub fn xmlCleanupInputCallbacks();
6970}
6971unsafe extern "C" {
6972  pub fn xmlPopInputCallbacks() -> ::std::os::raw::c_int;
6973}
6974unsafe extern "C" {
6975  pub fn xmlRegisterDefaultInputCallbacks();
6976}
6977unsafe extern "C" {
6978  pub fn xmlAllocParserInputBuffer(enc: xmlCharEncoding) -> xmlParserInputBufferPtr;
6979}
6980unsafe extern "C" {
6981  pub fn xmlParserInputBufferCreateFilename(
6982    URI: *const ::std::os::raw::c_char,
6983    enc: xmlCharEncoding,
6984  ) -> xmlParserInputBufferPtr;
6985}
6986unsafe extern "C" {
6987  pub fn xmlParserInputBufferCreateFile(
6988    file: *mut FILE,
6989    enc: xmlCharEncoding,
6990  ) -> xmlParserInputBufferPtr;
6991}
6992unsafe extern "C" {
6993  pub fn xmlParserInputBufferCreateFd(
6994    fd: ::std::os::raw::c_int,
6995    enc: xmlCharEncoding,
6996  ) -> xmlParserInputBufferPtr;
6997}
6998unsafe extern "C" {
6999  pub fn xmlParserInputBufferCreateMem(
7000    mem: *const ::std::os::raw::c_char,
7001    size: ::std::os::raw::c_int,
7002    enc: xmlCharEncoding,
7003  ) -> xmlParserInputBufferPtr;
7004}
7005unsafe extern "C" {
7006  pub fn xmlParserInputBufferCreateStatic(
7007    mem: *const ::std::os::raw::c_char,
7008    size: ::std::os::raw::c_int,
7009    enc: xmlCharEncoding,
7010  ) -> xmlParserInputBufferPtr;
7011}
7012unsafe extern "C" {
7013  pub fn xmlParserInputBufferCreateIO(
7014    ioread: xmlInputReadCallback,
7015    ioclose: xmlInputCloseCallback,
7016    ioctx: *mut ::std::os::raw::c_void,
7017    enc: xmlCharEncoding,
7018  ) -> xmlParserInputBufferPtr;
7019}
7020unsafe extern "C" {
7021  pub fn xmlParserInputBufferRead(
7022    in_: xmlParserInputBufferPtr,
7023    len: ::std::os::raw::c_int,
7024  ) -> ::std::os::raw::c_int;
7025}
7026unsafe extern "C" {
7027  pub fn xmlParserInputBufferGrow(
7028    in_: xmlParserInputBufferPtr,
7029    len: ::std::os::raw::c_int,
7030  ) -> ::std::os::raw::c_int;
7031}
7032unsafe extern "C" {
7033  pub fn xmlParserInputBufferPush(
7034    in_: xmlParserInputBufferPtr,
7035    len: ::std::os::raw::c_int,
7036    buf: *const ::std::os::raw::c_char,
7037  ) -> ::std::os::raw::c_int;
7038}
7039unsafe extern "C" {
7040  pub fn xmlFreeParserInputBuffer(in_: xmlParserInputBufferPtr);
7041}
7042unsafe extern "C" {
7043  pub fn xmlParserGetDirectory(
7044    filename: *const ::std::os::raw::c_char,
7045  ) -> *mut ::std::os::raw::c_char;
7046}
7047unsafe extern "C" {
7048  pub fn xmlRegisterInputCallbacks(
7049    matchFunc: xmlInputMatchCallback,
7050    openFunc: xmlInputOpenCallback,
7051    readFunc: xmlInputReadCallback,
7052    closeFunc: xmlInputCloseCallback,
7053  ) -> ::std::os::raw::c_int;
7054}
7055unsafe extern "C" {
7056  pub fn __xmlParserInputBufferCreateFilename(
7057    URI: *const ::std::os::raw::c_char,
7058    enc: xmlCharEncoding,
7059  ) -> xmlParserInputBufferPtr;
7060}
7061unsafe extern "C" {
7062  pub fn xmlCleanupOutputCallbacks();
7063}
7064unsafe extern "C" {
7065  pub fn xmlPopOutputCallbacks() -> ::std::os::raw::c_int;
7066}
7067unsafe extern "C" {
7068  pub fn xmlRegisterDefaultOutputCallbacks();
7069}
7070unsafe extern "C" {
7071  pub fn xmlAllocOutputBuffer(encoder: xmlCharEncodingHandlerPtr) -> xmlOutputBufferPtr;
7072}
7073unsafe extern "C" {
7074  pub fn xmlOutputBufferCreateFilename(
7075    URI: *const ::std::os::raw::c_char,
7076    encoder: xmlCharEncodingHandlerPtr,
7077    compression: ::std::os::raw::c_int,
7078  ) -> xmlOutputBufferPtr;
7079}
7080unsafe extern "C" {
7081  pub fn xmlOutputBufferCreateFile(
7082    file: *mut FILE,
7083    encoder: xmlCharEncodingHandlerPtr,
7084  ) -> xmlOutputBufferPtr;
7085}
7086unsafe extern "C" {
7087  pub fn xmlOutputBufferCreateBuffer(
7088    buffer: xmlBufferPtr,
7089    encoder: xmlCharEncodingHandlerPtr,
7090  ) -> xmlOutputBufferPtr;
7091}
7092unsafe extern "C" {
7093  pub fn xmlOutputBufferCreateFd(
7094    fd: ::std::os::raw::c_int,
7095    encoder: xmlCharEncodingHandlerPtr,
7096  ) -> xmlOutputBufferPtr;
7097}
7098unsafe extern "C" {
7099  pub fn xmlOutputBufferCreateIO(
7100    iowrite: xmlOutputWriteCallback,
7101    ioclose: xmlOutputCloseCallback,
7102    ioctx: *mut ::std::os::raw::c_void,
7103    encoder: xmlCharEncodingHandlerPtr,
7104  ) -> xmlOutputBufferPtr;
7105}
7106unsafe extern "C" {
7107  pub fn xmlOutputBufferGetContent(out: xmlOutputBufferPtr) -> *const xmlChar;
7108}
7109unsafe extern "C" {
7110  pub fn xmlOutputBufferGetSize(out: xmlOutputBufferPtr) -> usize;
7111}
7112unsafe extern "C" {
7113  pub fn xmlOutputBufferWrite(
7114    out: xmlOutputBufferPtr,
7115    len: ::std::os::raw::c_int,
7116    buf: *const ::std::os::raw::c_char,
7117  ) -> ::std::os::raw::c_int;
7118}
7119unsafe extern "C" {
7120  pub fn xmlOutputBufferWriteString(
7121    out: xmlOutputBufferPtr,
7122    str_: *const ::std::os::raw::c_char,
7123  ) -> ::std::os::raw::c_int;
7124}
7125unsafe extern "C" {
7126  pub fn xmlOutputBufferWriteEscape(
7127    out: xmlOutputBufferPtr,
7128    str_: *const xmlChar,
7129    escaping: xmlCharEncodingOutputFunc,
7130  ) -> ::std::os::raw::c_int;
7131}
7132unsafe extern "C" {
7133  pub fn xmlOutputBufferFlush(out: xmlOutputBufferPtr) -> ::std::os::raw::c_int;
7134}
7135unsafe extern "C" {
7136  pub fn xmlOutputBufferClose(out: xmlOutputBufferPtr) -> ::std::os::raw::c_int;
7137}
7138unsafe extern "C" {
7139  pub fn xmlRegisterOutputCallbacks(
7140    matchFunc: xmlOutputMatchCallback,
7141    openFunc: xmlOutputOpenCallback,
7142    writeFunc: xmlOutputWriteCallback,
7143    closeFunc: xmlOutputCloseCallback,
7144  ) -> ::std::os::raw::c_int;
7145}
7146unsafe extern "C" {
7147  pub fn __xmlOutputBufferCreateFilename(
7148    URI: *const ::std::os::raw::c_char,
7149    encoder: xmlCharEncodingHandlerPtr,
7150    compression: ::std::os::raw::c_int,
7151  ) -> xmlOutputBufferPtr;
7152}
7153unsafe extern "C" {
7154  pub fn xmlRegisterHTTPPostCallbacks();
7155}
7156unsafe extern "C" {
7157  pub fn xmlCheckHTTPInput(ctxt: xmlParserCtxtPtr, ret: xmlParserInputPtr) -> xmlParserInputPtr;
7158}
7159unsafe extern "C" {
7160  pub fn xmlNoNetExternalEntityLoader(
7161    URL: *const ::std::os::raw::c_char,
7162    ID: *const ::std::os::raw::c_char,
7163    ctxt: xmlParserCtxtPtr,
7164  ) -> xmlParserInputPtr;
7165}
7166unsafe extern "C" {
7167  pub fn xmlNormalizeWindowsPath(path: *const xmlChar) -> *mut xmlChar;
7168}
7169unsafe extern "C" {
7170  pub fn xmlCheckFilename(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
7171}
7172unsafe extern "C" {
7173  #[doc = " Default 'file://' protocol callbacks"]
7174  pub fn xmlFileMatch(filename: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
7175}
7176unsafe extern "C" {
7177  pub fn xmlFileOpen(filename: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_void;
7178}
7179unsafe extern "C" {
7180  pub fn xmlFileRead(
7181    context: *mut ::std::os::raw::c_void,
7182    buffer: *mut ::std::os::raw::c_char,
7183    len: ::std::os::raw::c_int,
7184  ) -> ::std::os::raw::c_int;
7185}
7186unsafe extern "C" {
7187  pub fn xmlFileClose(context: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
7188}
7189unsafe extern "C" {
7190  pub fn xmlIOHTTPMatch(filename: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
7191}
7192unsafe extern "C" {
7193  pub fn xmlIOHTTPOpen(filename: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_void;
7194}
7195unsafe extern "C" {
7196  pub fn xmlIOHTTPOpenW(
7197    post_uri: *const ::std::os::raw::c_char,
7198    compression: ::std::os::raw::c_int,
7199  ) -> *mut ::std::os::raw::c_void;
7200}
7201unsafe extern "C" {
7202  pub fn xmlIOHTTPRead(
7203    context: *mut ::std::os::raw::c_void,
7204    buffer: *mut ::std::os::raw::c_char,
7205    len: ::std::os::raw::c_int,
7206  ) -> ::std::os::raw::c_int;
7207}
7208unsafe extern "C" {
7209  pub fn xmlIOHTTPClose(context: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
7210}
7211unsafe extern "C" {
7212  pub fn xmlIOFTPMatch(filename: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
7213}
7214unsafe extern "C" {
7215  pub fn xmlIOFTPOpen(filename: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_void;
7216}
7217unsafe extern "C" {
7218  pub fn xmlIOFTPRead(
7219    context: *mut ::std::os::raw::c_void,
7220    buffer: *mut ::std::os::raw::c_char,
7221    len: ::std::os::raw::c_int,
7222  ) -> ::std::os::raw::c_int;
7223}
7224unsafe extern "C" {
7225  pub fn xmlIOFTPClose(context: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
7226}
7227unsafe extern "C" {
7228  pub fn xmlInitParser();
7229}
7230unsafe extern "C" {
7231  pub fn xmlCleanupParser();
7232}
7233unsafe extern "C" {
7234  pub fn xmlParserInputRead(
7235    in_: xmlParserInputPtr,
7236    len: ::std::os::raw::c_int,
7237  ) -> ::std::os::raw::c_int;
7238}
7239unsafe extern "C" {
7240  pub fn xmlParserInputGrow(
7241    in_: xmlParserInputPtr,
7242    len: ::std::os::raw::c_int,
7243  ) -> ::std::os::raw::c_int;
7244}
7245unsafe extern "C" {
7246  pub fn xmlParseDoc(cur: *const xmlChar) -> xmlDocPtr;
7247}
7248unsafe extern "C" {
7249  pub fn xmlParseFile(filename: *const ::std::os::raw::c_char) -> xmlDocPtr;
7250}
7251unsafe extern "C" {
7252  pub fn xmlParseMemory(
7253    buffer: *const ::std::os::raw::c_char,
7254    size: ::std::os::raw::c_int,
7255  ) -> xmlDocPtr;
7256}
7257unsafe extern "C" {
7258  pub fn xmlSubstituteEntitiesDefault(val: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
7259}
7260unsafe extern "C" {
7261  pub fn xmlKeepBlanksDefault(val: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
7262}
7263unsafe extern "C" {
7264  pub fn xmlStopParser(ctxt: xmlParserCtxtPtr);
7265}
7266unsafe extern "C" {
7267  pub fn xmlPedanticParserDefault(val: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
7268}
7269unsafe extern "C" {
7270  pub fn xmlLineNumbersDefault(val: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
7271}
7272unsafe extern "C" {
7273  pub fn xmlRecoverDoc(cur: *const xmlChar) -> xmlDocPtr;
7274}
7275unsafe extern "C" {
7276  pub fn xmlRecoverMemory(
7277    buffer: *const ::std::os::raw::c_char,
7278    size: ::std::os::raw::c_int,
7279  ) -> xmlDocPtr;
7280}
7281unsafe extern "C" {
7282  pub fn xmlRecoverFile(filename: *const ::std::os::raw::c_char) -> xmlDocPtr;
7283}
7284unsafe extern "C" {
7285  pub fn xmlParseDocument(ctxt: xmlParserCtxtPtr) -> ::std::os::raw::c_int;
7286}
7287unsafe extern "C" {
7288  pub fn xmlParseExtParsedEnt(ctxt: xmlParserCtxtPtr) -> ::std::os::raw::c_int;
7289}
7290unsafe extern "C" {
7291  pub fn xmlSAXUserParseFile(
7292    sax: xmlSAXHandlerPtr,
7293    user_data: *mut ::std::os::raw::c_void,
7294    filename: *const ::std::os::raw::c_char,
7295  ) -> ::std::os::raw::c_int;
7296}
7297unsafe extern "C" {
7298  pub fn xmlSAXUserParseMemory(
7299    sax: xmlSAXHandlerPtr,
7300    user_data: *mut ::std::os::raw::c_void,
7301    buffer: *const ::std::os::raw::c_char,
7302    size: ::std::os::raw::c_int,
7303  ) -> ::std::os::raw::c_int;
7304}
7305unsafe extern "C" {
7306  pub fn xmlSAXParseDoc(
7307    sax: xmlSAXHandlerPtr,
7308    cur: *const xmlChar,
7309    recovery: ::std::os::raw::c_int,
7310  ) -> xmlDocPtr;
7311}
7312unsafe extern "C" {
7313  pub fn xmlSAXParseMemory(
7314    sax: xmlSAXHandlerPtr,
7315    buffer: *const ::std::os::raw::c_char,
7316    size: ::std::os::raw::c_int,
7317    recovery: ::std::os::raw::c_int,
7318  ) -> xmlDocPtr;
7319}
7320unsafe extern "C" {
7321  pub fn xmlSAXParseMemoryWithData(
7322    sax: xmlSAXHandlerPtr,
7323    buffer: *const ::std::os::raw::c_char,
7324    size: ::std::os::raw::c_int,
7325    recovery: ::std::os::raw::c_int,
7326    data: *mut ::std::os::raw::c_void,
7327  ) -> xmlDocPtr;
7328}
7329unsafe extern "C" {
7330  pub fn xmlSAXParseFile(
7331    sax: xmlSAXHandlerPtr,
7332    filename: *const ::std::os::raw::c_char,
7333    recovery: ::std::os::raw::c_int,
7334  ) -> xmlDocPtr;
7335}
7336unsafe extern "C" {
7337  pub fn xmlSAXParseFileWithData(
7338    sax: xmlSAXHandlerPtr,
7339    filename: *const ::std::os::raw::c_char,
7340    recovery: ::std::os::raw::c_int,
7341    data: *mut ::std::os::raw::c_void,
7342  ) -> xmlDocPtr;
7343}
7344unsafe extern "C" {
7345  pub fn xmlSAXParseEntity(
7346    sax: xmlSAXHandlerPtr,
7347    filename: *const ::std::os::raw::c_char,
7348  ) -> xmlDocPtr;
7349}
7350unsafe extern "C" {
7351  pub fn xmlParseEntity(filename: *const ::std::os::raw::c_char) -> xmlDocPtr;
7352}
7353unsafe extern "C" {
7354  pub fn xmlSAXParseDTD(
7355    sax: xmlSAXHandlerPtr,
7356    ExternalID: *const xmlChar,
7357    SystemID: *const xmlChar,
7358  ) -> xmlDtdPtr;
7359}
7360unsafe extern "C" {
7361  pub fn xmlParseDTD(ExternalID: *const xmlChar, SystemID: *const xmlChar) -> xmlDtdPtr;
7362}
7363unsafe extern "C" {
7364  pub fn xmlIOParseDTD(
7365    sax: xmlSAXHandlerPtr,
7366    input: xmlParserInputBufferPtr,
7367    enc: xmlCharEncoding,
7368  ) -> xmlDtdPtr;
7369}
7370unsafe extern "C" {
7371  pub fn xmlParseBalancedChunkMemory(
7372    doc: xmlDocPtr,
7373    sax: xmlSAXHandlerPtr,
7374    user_data: *mut ::std::os::raw::c_void,
7375    depth: ::std::os::raw::c_int,
7376    string: *const xmlChar,
7377    lst: *mut xmlNodePtr,
7378  ) -> ::std::os::raw::c_int;
7379}
7380unsafe extern "C" {
7381  pub fn xmlParseInNodeContext(
7382    node: xmlNodePtr,
7383    data: *const ::std::os::raw::c_char,
7384    datalen: ::std::os::raw::c_int,
7385    options: ::std::os::raw::c_int,
7386    lst: *mut xmlNodePtr,
7387  ) -> xmlParserErrors;
7388}
7389unsafe extern "C" {
7390  pub fn xmlParseBalancedChunkMemoryRecover(
7391    doc: xmlDocPtr,
7392    sax: xmlSAXHandlerPtr,
7393    user_data: *mut ::std::os::raw::c_void,
7394    depth: ::std::os::raw::c_int,
7395    string: *const xmlChar,
7396    lst: *mut xmlNodePtr,
7397    recover: ::std::os::raw::c_int,
7398  ) -> ::std::os::raw::c_int;
7399}
7400unsafe extern "C" {
7401  pub fn xmlParseExternalEntity(
7402    doc: xmlDocPtr,
7403    sax: xmlSAXHandlerPtr,
7404    user_data: *mut ::std::os::raw::c_void,
7405    depth: ::std::os::raw::c_int,
7406    URL: *const xmlChar,
7407    ID: *const xmlChar,
7408    lst: *mut xmlNodePtr,
7409  ) -> ::std::os::raw::c_int;
7410}
7411unsafe extern "C" {
7412  pub fn xmlParseCtxtExternalEntity(
7413    ctx: xmlParserCtxtPtr,
7414    URL: *const xmlChar,
7415    ID: *const xmlChar,
7416    lst: *mut xmlNodePtr,
7417  ) -> ::std::os::raw::c_int;
7418}
7419unsafe extern "C" {
7420  pub fn xmlNewParserCtxt() -> xmlParserCtxtPtr;
7421}
7422unsafe extern "C" {
7423  pub fn xmlInitParserCtxt(ctxt: xmlParserCtxtPtr) -> ::std::os::raw::c_int;
7424}
7425unsafe extern "C" {
7426  pub fn xmlClearParserCtxt(ctxt: xmlParserCtxtPtr);
7427}
7428unsafe extern "C" {
7429  pub fn xmlFreeParserCtxt(ctxt: xmlParserCtxtPtr);
7430}
7431unsafe extern "C" {
7432  pub fn xmlSetupParserForBuffer(
7433    ctxt: xmlParserCtxtPtr,
7434    buffer: *const xmlChar,
7435    filename: *const ::std::os::raw::c_char,
7436  );
7437}
7438unsafe extern "C" {
7439  pub fn xmlCreateDocParserCtxt(cur: *const xmlChar) -> xmlParserCtxtPtr;
7440}
7441unsafe extern "C" {
7442  pub fn xmlGetFeaturesList(
7443    len: *mut ::std::os::raw::c_int,
7444    result: *mut *const ::std::os::raw::c_char,
7445  ) -> ::std::os::raw::c_int;
7446}
7447unsafe extern "C" {
7448  pub fn xmlGetFeature(
7449    ctxt: xmlParserCtxtPtr,
7450    name: *const ::std::os::raw::c_char,
7451    result: *mut ::std::os::raw::c_void,
7452  ) -> ::std::os::raw::c_int;
7453}
7454unsafe extern "C" {
7455  pub fn xmlSetFeature(
7456    ctxt: xmlParserCtxtPtr,
7457    name: *const ::std::os::raw::c_char,
7458    value: *mut ::std::os::raw::c_void,
7459  ) -> ::std::os::raw::c_int;
7460}
7461unsafe extern "C" {
7462  pub fn xmlCreatePushParserCtxt(
7463    sax: xmlSAXHandlerPtr,
7464    user_data: *mut ::std::os::raw::c_void,
7465    chunk: *const ::std::os::raw::c_char,
7466    size: ::std::os::raw::c_int,
7467    filename: *const ::std::os::raw::c_char,
7468  ) -> xmlParserCtxtPtr;
7469}
7470unsafe extern "C" {
7471  pub fn xmlParseChunk(
7472    ctxt: xmlParserCtxtPtr,
7473    chunk: *const ::std::os::raw::c_char,
7474    size: ::std::os::raw::c_int,
7475    terminate: ::std::os::raw::c_int,
7476  ) -> ::std::os::raw::c_int;
7477}
7478unsafe extern "C" {
7479  pub fn xmlCreateIOParserCtxt(
7480    sax: xmlSAXHandlerPtr,
7481    user_data: *mut ::std::os::raw::c_void,
7482    ioread: xmlInputReadCallback,
7483    ioclose: xmlInputCloseCallback,
7484    ioctx: *mut ::std::os::raw::c_void,
7485    enc: xmlCharEncoding,
7486  ) -> xmlParserCtxtPtr;
7487}
7488unsafe extern "C" {
7489  pub fn xmlNewIOInputStream(
7490    ctxt: xmlParserCtxtPtr,
7491    input: xmlParserInputBufferPtr,
7492    enc: xmlCharEncoding,
7493  ) -> xmlParserInputPtr;
7494}
7495unsafe extern "C" {
7496  pub fn xmlParserFindNodeInfo(
7497    ctxt: xmlParserCtxtPtr,
7498    node: xmlNodePtr,
7499  ) -> *const xmlParserNodeInfo;
7500}
7501unsafe extern "C" {
7502  pub fn xmlInitNodeInfoSeq(seq: xmlParserNodeInfoSeqPtr);
7503}
7504unsafe extern "C" {
7505  pub fn xmlClearNodeInfoSeq(seq: xmlParserNodeInfoSeqPtr);
7506}
7507unsafe extern "C" {
7508  pub fn xmlParserFindNodeInfoIndex(
7509    seq: xmlParserNodeInfoSeqPtr,
7510    node: xmlNodePtr,
7511  ) -> ::std::os::raw::c_ulong;
7512}
7513unsafe extern "C" {
7514  pub fn xmlParserAddNodeInfo(ctxt: xmlParserCtxtPtr, info: xmlParserNodeInfoPtr);
7515}
7516unsafe extern "C" {
7517  pub fn xmlSetExternalEntityLoader(f: xmlExternalEntityLoader);
7518}
7519unsafe extern "C" {
7520  pub fn xmlGetExternalEntityLoader() -> xmlExternalEntityLoader;
7521}
7522unsafe extern "C" {
7523  pub fn xmlLoadExternalEntity(
7524    URL: *const ::std::os::raw::c_char,
7525    ID: *const ::std::os::raw::c_char,
7526    ctxt: xmlParserCtxtPtr,
7527  ) -> xmlParserInputPtr;
7528}
7529unsafe extern "C" {
7530  pub fn xmlByteConsumed(ctxt: xmlParserCtxtPtr) -> ::std::os::raw::c_long;
7531}
7532pub const xmlParserOption_XML_PARSE_RECOVER: xmlParserOption = 1;
7533pub const xmlParserOption_XML_PARSE_NOENT: xmlParserOption = 2;
7534pub const xmlParserOption_XML_PARSE_DTDLOAD: xmlParserOption = 4;
7535pub const xmlParserOption_XML_PARSE_DTDATTR: xmlParserOption = 8;
7536pub const xmlParserOption_XML_PARSE_DTDVALID: xmlParserOption = 16;
7537pub const xmlParserOption_XML_PARSE_NOERROR: xmlParserOption = 32;
7538pub const xmlParserOption_XML_PARSE_NOWARNING: xmlParserOption = 64;
7539pub const xmlParserOption_XML_PARSE_PEDANTIC: xmlParserOption = 128;
7540pub const xmlParserOption_XML_PARSE_NOBLANKS: xmlParserOption = 256;
7541pub const xmlParserOption_XML_PARSE_SAX1: xmlParserOption = 512;
7542pub const xmlParserOption_XML_PARSE_XINCLUDE: xmlParserOption = 1024;
7543pub const xmlParserOption_XML_PARSE_NONET: xmlParserOption = 2048;
7544pub const xmlParserOption_XML_PARSE_NODICT: xmlParserOption = 4096;
7545pub const xmlParserOption_XML_PARSE_NSCLEAN: xmlParserOption = 8192;
7546pub const xmlParserOption_XML_PARSE_NOCDATA: xmlParserOption = 16384;
7547pub const xmlParserOption_XML_PARSE_NOXINCNODE: xmlParserOption = 32768;
7548pub const xmlParserOption_XML_PARSE_COMPACT: xmlParserOption = 65536;
7549pub const xmlParserOption_XML_PARSE_OLD10: xmlParserOption = 131072;
7550pub const xmlParserOption_XML_PARSE_NOBASEFIX: xmlParserOption = 262144;
7551pub const xmlParserOption_XML_PARSE_HUGE: xmlParserOption = 524288;
7552pub const xmlParserOption_XML_PARSE_OLDSAX: xmlParserOption = 1048576;
7553pub const xmlParserOption_XML_PARSE_IGNORE_ENC: xmlParserOption = 2097152;
7554pub const xmlParserOption_XML_PARSE_BIG_LINES: xmlParserOption = 4194304;
7555#[doc = " xmlParserOption:\n\n This is the set of XML parser options that can be passed down\n to the xmlReadDoc() and similar calls."]
7556pub type xmlParserOption = ::std::os::raw::c_uint;
7557unsafe extern "C" {
7558  pub fn xmlCtxtReset(ctxt: xmlParserCtxtPtr);
7559}
7560unsafe extern "C" {
7561  pub fn xmlCtxtResetPush(
7562    ctxt: xmlParserCtxtPtr,
7563    chunk: *const ::std::os::raw::c_char,
7564    size: ::std::os::raw::c_int,
7565    filename: *const ::std::os::raw::c_char,
7566    encoding: *const ::std::os::raw::c_char,
7567  ) -> ::std::os::raw::c_int;
7568}
7569unsafe extern "C" {
7570  pub fn xmlCtxtUseOptions(
7571    ctxt: xmlParserCtxtPtr,
7572    options: ::std::os::raw::c_int,
7573  ) -> ::std::os::raw::c_int;
7574}
7575unsafe extern "C" {
7576  pub fn xmlReadDoc(
7577    cur: *const xmlChar,
7578    URL: *const ::std::os::raw::c_char,
7579    encoding: *const ::std::os::raw::c_char,
7580    options: ::std::os::raw::c_int,
7581  ) -> xmlDocPtr;
7582}
7583unsafe extern "C" {
7584  pub fn xmlReadFile(
7585    URL: *const ::std::os::raw::c_char,
7586    encoding: *const ::std::os::raw::c_char,
7587    options: ::std::os::raw::c_int,
7588  ) -> xmlDocPtr;
7589}
7590unsafe extern "C" {
7591  pub fn xmlReadMemory(
7592    buffer: *const ::std::os::raw::c_char,
7593    size: ::std::os::raw::c_int,
7594    URL: *const ::std::os::raw::c_char,
7595    encoding: *const ::std::os::raw::c_char,
7596    options: ::std::os::raw::c_int,
7597  ) -> xmlDocPtr;
7598}
7599unsafe extern "C" {
7600  pub fn xmlReadFd(
7601    fd: ::std::os::raw::c_int,
7602    URL: *const ::std::os::raw::c_char,
7603    encoding: *const ::std::os::raw::c_char,
7604    options: ::std::os::raw::c_int,
7605  ) -> xmlDocPtr;
7606}
7607unsafe extern "C" {
7608  pub fn xmlReadIO(
7609    ioread: xmlInputReadCallback,
7610    ioclose: xmlInputCloseCallback,
7611    ioctx: *mut ::std::os::raw::c_void,
7612    URL: *const ::std::os::raw::c_char,
7613    encoding: *const ::std::os::raw::c_char,
7614    options: ::std::os::raw::c_int,
7615  ) -> xmlDocPtr;
7616}
7617unsafe extern "C" {
7618  pub fn xmlCtxtReadDoc(
7619    ctxt: xmlParserCtxtPtr,
7620    cur: *const xmlChar,
7621    URL: *const ::std::os::raw::c_char,
7622    encoding: *const ::std::os::raw::c_char,
7623    options: ::std::os::raw::c_int,
7624  ) -> xmlDocPtr;
7625}
7626unsafe extern "C" {
7627  pub fn xmlCtxtReadFile(
7628    ctxt: xmlParserCtxtPtr,
7629    filename: *const ::std::os::raw::c_char,
7630    encoding: *const ::std::os::raw::c_char,
7631    options: ::std::os::raw::c_int,
7632  ) -> xmlDocPtr;
7633}
7634unsafe extern "C" {
7635  pub fn xmlCtxtReadMemory(
7636    ctxt: xmlParserCtxtPtr,
7637    buffer: *const ::std::os::raw::c_char,
7638    size: ::std::os::raw::c_int,
7639    URL: *const ::std::os::raw::c_char,
7640    encoding: *const ::std::os::raw::c_char,
7641    options: ::std::os::raw::c_int,
7642  ) -> xmlDocPtr;
7643}
7644unsafe extern "C" {
7645  pub fn xmlCtxtReadFd(
7646    ctxt: xmlParserCtxtPtr,
7647    fd: ::std::os::raw::c_int,
7648    URL: *const ::std::os::raw::c_char,
7649    encoding: *const ::std::os::raw::c_char,
7650    options: ::std::os::raw::c_int,
7651  ) -> xmlDocPtr;
7652}
7653unsafe extern "C" {
7654  pub fn xmlCtxtReadIO(
7655    ctxt: xmlParserCtxtPtr,
7656    ioread: xmlInputReadCallback,
7657    ioclose: xmlInputCloseCallback,
7658    ioctx: *mut ::std::os::raw::c_void,
7659    URL: *const ::std::os::raw::c_char,
7660    encoding: *const ::std::os::raw::c_char,
7661    options: ::std::os::raw::c_int,
7662  ) -> xmlDocPtr;
7663}
7664pub const xmlFeature_XML_WITH_THREAD: xmlFeature = 1;
7665pub const xmlFeature_XML_WITH_TREE: xmlFeature = 2;
7666pub const xmlFeature_XML_WITH_OUTPUT: xmlFeature = 3;
7667pub const xmlFeature_XML_WITH_PUSH: xmlFeature = 4;
7668pub const xmlFeature_XML_WITH_READER: xmlFeature = 5;
7669pub const xmlFeature_XML_WITH_PATTERN: xmlFeature = 6;
7670pub const xmlFeature_XML_WITH_WRITER: xmlFeature = 7;
7671pub const xmlFeature_XML_WITH_SAX1: xmlFeature = 8;
7672pub const xmlFeature_XML_WITH_FTP: xmlFeature = 9;
7673pub const xmlFeature_XML_WITH_HTTP: xmlFeature = 10;
7674pub const xmlFeature_XML_WITH_VALID: xmlFeature = 11;
7675pub const xmlFeature_XML_WITH_HTML: xmlFeature = 12;
7676pub const xmlFeature_XML_WITH_LEGACY: xmlFeature = 13;
7677pub const xmlFeature_XML_WITH_C14N: xmlFeature = 14;
7678pub const xmlFeature_XML_WITH_CATALOG: xmlFeature = 15;
7679pub const xmlFeature_XML_WITH_XPATH: xmlFeature = 16;
7680pub const xmlFeature_XML_WITH_XPTR: xmlFeature = 17;
7681pub const xmlFeature_XML_WITH_XINCLUDE: xmlFeature = 18;
7682pub const xmlFeature_XML_WITH_ICONV: xmlFeature = 19;
7683pub const xmlFeature_XML_WITH_ISO8859X: xmlFeature = 20;
7684pub const xmlFeature_XML_WITH_UNICODE: xmlFeature = 21;
7685pub const xmlFeature_XML_WITH_REGEXP: xmlFeature = 22;
7686pub const xmlFeature_XML_WITH_AUTOMATA: xmlFeature = 23;
7687pub const xmlFeature_XML_WITH_EXPR: xmlFeature = 24;
7688pub const xmlFeature_XML_WITH_SCHEMAS: xmlFeature = 25;
7689pub const xmlFeature_XML_WITH_SCHEMATRON: xmlFeature = 26;
7690pub const xmlFeature_XML_WITH_MODULES: xmlFeature = 27;
7691pub const xmlFeature_XML_WITH_DEBUG: xmlFeature = 28;
7692pub const xmlFeature_XML_WITH_DEBUG_MEM: xmlFeature = 29;
7693pub const xmlFeature_XML_WITH_DEBUG_RUN: xmlFeature = 30;
7694pub const xmlFeature_XML_WITH_ZLIB: xmlFeature = 31;
7695pub const xmlFeature_XML_WITH_ICU: xmlFeature = 32;
7696pub const xmlFeature_XML_WITH_LZMA: xmlFeature = 33;
7697pub const xmlFeature_XML_WITH_NONE: xmlFeature = 99999;
7698#[doc = " xmlFeature:\n\n Used to examine the existence of features that can be enabled\n or disabled at compile-time.\n They used to be called XML_FEATURE_xxx but this clashed with Expat"]
7699pub type xmlFeature = ::std::os::raw::c_uint;
7700unsafe extern "C" {
7701  pub fn xmlHasFeature(feature: xmlFeature) -> ::std::os::raw::c_int;
7702}
7703#[repr(C)]
7704#[derive(Debug, Copy, Clone)]
7705pub struct div_t {
7706  pub quot: ::std::os::raw::c_int,
7707  pub rem: ::std::os::raw::c_int,
7708}
7709#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7710const _: () = {
7711  ["Size of div_t"][::std::mem::size_of::<div_t>() - 8usize];
7712  ["Alignment of div_t"][::std::mem::align_of::<div_t>() - 4usize];
7713  ["Offset of field: div_t::quot"][::std::mem::offset_of!(div_t, quot) - 0usize];
7714  ["Offset of field: div_t::rem"][::std::mem::offset_of!(div_t, rem) - 4usize];
7715};
7716#[repr(C)]
7717#[derive(Debug, Copy, Clone)]
7718pub struct ldiv_t {
7719  pub quot: ::std::os::raw::c_long,
7720  pub rem: ::std::os::raw::c_long,
7721}
7722#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7723const _: () = {
7724  ["Size of ldiv_t"][::std::mem::size_of::<ldiv_t>() - 16usize];
7725  ["Alignment of ldiv_t"][::std::mem::align_of::<ldiv_t>() - 8usize];
7726  ["Offset of field: ldiv_t::quot"][::std::mem::offset_of!(ldiv_t, quot) - 0usize];
7727  ["Offset of field: ldiv_t::rem"][::std::mem::offset_of!(ldiv_t, rem) - 8usize];
7728};
7729#[repr(C)]
7730#[derive(Debug, Copy, Clone)]
7731pub struct lldiv_t {
7732  pub quot: ::std::os::raw::c_longlong,
7733  pub rem: ::std::os::raw::c_longlong,
7734}
7735#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7736const _: () = {
7737  ["Size of lldiv_t"][::std::mem::size_of::<lldiv_t>() - 16usize];
7738  ["Alignment of lldiv_t"][::std::mem::align_of::<lldiv_t>() - 8usize];
7739  ["Offset of field: lldiv_t::quot"][::std::mem::offset_of!(lldiv_t, quot) - 0usize];
7740  ["Offset of field: lldiv_t::rem"][::std::mem::offset_of!(lldiv_t, rem) - 8usize];
7741};
7742unsafe extern "C" {
7743  pub fn __ctype_get_mb_cur_max() -> usize;
7744}
7745unsafe extern "C" {
7746  pub fn atof(__nptr: *const ::std::os::raw::c_char) -> f64;
7747}
7748unsafe extern "C" {
7749  pub fn atoi(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
7750}
7751unsafe extern "C" {
7752  pub fn atol(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
7753}
7754unsafe extern "C" {
7755  pub fn atoll(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_longlong;
7756}
7757unsafe extern "C" {
7758  pub fn strtod(
7759    __nptr: *const ::std::os::raw::c_char,
7760    __endptr: *mut *mut ::std::os::raw::c_char,
7761  ) -> f64;
7762}
7763unsafe extern "C" {
7764  pub fn strtof(
7765    __nptr: *const ::std::os::raw::c_char,
7766    __endptr: *mut *mut ::std::os::raw::c_char,
7767  ) -> f32;
7768}
7769unsafe extern "C" {
7770  pub fn strtold(
7771    __nptr: *const ::std::os::raw::c_char,
7772    __endptr: *mut *mut ::std::os::raw::c_char,
7773  ) -> u128;
7774}
7775unsafe extern "C" {
7776  pub fn strtol(
7777    __nptr: *const ::std::os::raw::c_char,
7778    __endptr: *mut *mut ::std::os::raw::c_char,
7779    __base: ::std::os::raw::c_int,
7780  ) -> ::std::os::raw::c_long;
7781}
7782unsafe extern "C" {
7783  pub fn strtoul(
7784    __nptr: *const ::std::os::raw::c_char,
7785    __endptr: *mut *mut ::std::os::raw::c_char,
7786    __base: ::std::os::raw::c_int,
7787  ) -> ::std::os::raw::c_ulong;
7788}
7789unsafe extern "C" {
7790  pub fn strtoq(
7791    __nptr: *const ::std::os::raw::c_char,
7792    __endptr: *mut *mut ::std::os::raw::c_char,
7793    __base: ::std::os::raw::c_int,
7794  ) -> ::std::os::raw::c_longlong;
7795}
7796unsafe extern "C" {
7797  pub fn strtouq(
7798    __nptr: *const ::std::os::raw::c_char,
7799    __endptr: *mut *mut ::std::os::raw::c_char,
7800    __base: ::std::os::raw::c_int,
7801  ) -> ::std::os::raw::c_ulonglong;
7802}
7803unsafe extern "C" {
7804  pub fn strtoll(
7805    __nptr: *const ::std::os::raw::c_char,
7806    __endptr: *mut *mut ::std::os::raw::c_char,
7807    __base: ::std::os::raw::c_int,
7808  ) -> ::std::os::raw::c_longlong;
7809}
7810unsafe extern "C" {
7811  pub fn strtoull(
7812    __nptr: *const ::std::os::raw::c_char,
7813    __endptr: *mut *mut ::std::os::raw::c_char,
7814    __base: ::std::os::raw::c_int,
7815  ) -> ::std::os::raw::c_ulonglong;
7816}
7817unsafe extern "C" {
7818  pub fn l64a(__n: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char;
7819}
7820unsafe extern "C" {
7821  pub fn a64l(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
7822}
7823pub type u_char = __u_char;
7824pub type u_short = __u_short;
7825pub type u_int = __u_int;
7826pub type u_long = __u_long;
7827pub type quad_t = __quad_t;
7828pub type u_quad_t = __u_quad_t;
7829pub type fsid_t = __fsid_t;
7830pub type loff_t = __loff_t;
7831pub type ino_t = __ino_t;
7832pub type dev_t = __dev_t;
7833pub type gid_t = __gid_t;
7834pub type mode_t = __mode_t;
7835pub type nlink_t = __nlink_t;
7836pub type uid_t = __uid_t;
7837pub type pid_t = __pid_t;
7838pub type id_t = __id_t;
7839pub type daddr_t = __daddr_t;
7840pub type caddr_t = __caddr_t;
7841pub type key_t = __key_t;
7842pub type clock_t = __clock_t;
7843pub type clockid_t = __clockid_t;
7844pub type time_t = __time_t;
7845pub type timer_t = __timer_t;
7846pub type ulong = ::std::os::raw::c_ulong;
7847pub type ushort = ::std::os::raw::c_ushort;
7848pub type uint = ::std::os::raw::c_uint;
7849pub type u_int8_t = __uint8_t;
7850pub type u_int16_t = __uint16_t;
7851pub type u_int32_t = __uint32_t;
7852pub type u_int64_t = __uint64_t;
7853pub type register_t = ::std::os::raw::c_long;
7854#[repr(C)]
7855#[derive(Debug, Copy, Clone)]
7856pub struct __sigset_t {
7857  pub __val: [::std::os::raw::c_ulong; 16usize],
7858}
7859#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7860const _: () = {
7861  ["Size of __sigset_t"][::std::mem::size_of::<__sigset_t>() - 128usize];
7862  ["Alignment of __sigset_t"][::std::mem::align_of::<__sigset_t>() - 8usize];
7863  ["Offset of field: __sigset_t::__val"][::std::mem::offset_of!(__sigset_t, __val) - 0usize];
7864};
7865pub type sigset_t = __sigset_t;
7866#[repr(C)]
7867#[derive(Debug, Copy, Clone)]
7868pub struct timeval {
7869  pub tv_sec: __time_t,
7870  pub tv_usec: __suseconds_t,
7871}
7872#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7873const _: () = {
7874  ["Size of timeval"][::std::mem::size_of::<timeval>() - 16usize];
7875  ["Alignment of timeval"][::std::mem::align_of::<timeval>() - 8usize];
7876  ["Offset of field: timeval::tv_sec"][::std::mem::offset_of!(timeval, tv_sec) - 0usize];
7877  ["Offset of field: timeval::tv_usec"][::std::mem::offset_of!(timeval, tv_usec) - 8usize];
7878};
7879#[repr(C)]
7880#[derive(Debug, Copy, Clone)]
7881pub struct timespec {
7882  pub tv_sec: __time_t,
7883  pub tv_nsec: __syscall_slong_t,
7884}
7885#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7886const _: () = {
7887  ["Size of timespec"][::std::mem::size_of::<timespec>() - 16usize];
7888  ["Alignment of timespec"][::std::mem::align_of::<timespec>() - 8usize];
7889  ["Offset of field: timespec::tv_sec"][::std::mem::offset_of!(timespec, tv_sec) - 0usize];
7890  ["Offset of field: timespec::tv_nsec"][::std::mem::offset_of!(timespec, tv_nsec) - 8usize];
7891};
7892pub type suseconds_t = __suseconds_t;
7893pub type __fd_mask = ::std::os::raw::c_long;
7894#[repr(C)]
7895#[derive(Debug, Copy, Clone)]
7896pub struct fd_set {
7897  pub __fds_bits: [__fd_mask; 16usize],
7898}
7899#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7900const _: () = {
7901  ["Size of fd_set"][::std::mem::size_of::<fd_set>() - 128usize];
7902  ["Alignment of fd_set"][::std::mem::align_of::<fd_set>() - 8usize];
7903  ["Offset of field: fd_set::__fds_bits"][::std::mem::offset_of!(fd_set, __fds_bits) - 0usize];
7904};
7905pub type fd_mask = __fd_mask;
7906unsafe extern "C" {
7907  pub fn select(
7908    __nfds: ::std::os::raw::c_int,
7909    __readfds: *mut fd_set,
7910    __writefds: *mut fd_set,
7911    __exceptfds: *mut fd_set,
7912    __timeout: *mut timeval,
7913  ) -> ::std::os::raw::c_int;
7914}
7915unsafe extern "C" {
7916  pub fn pselect(
7917    __nfds: ::std::os::raw::c_int,
7918    __readfds: *mut fd_set,
7919    __writefds: *mut fd_set,
7920    __exceptfds: *mut fd_set,
7921    __timeout: *const timespec,
7922    __sigmask: *const __sigset_t,
7923  ) -> ::std::os::raw::c_int;
7924}
7925pub type blksize_t = __blksize_t;
7926pub type blkcnt_t = __blkcnt_t;
7927pub type fsblkcnt_t = __fsblkcnt_t;
7928pub type fsfilcnt_t = __fsfilcnt_t;
7929#[repr(C)]
7930#[derive(Copy, Clone)]
7931pub union __atomic_wide_counter {
7932  pub __value64: ::std::os::raw::c_ulonglong,
7933  pub __value32: __atomic_wide_counter__bindgen_ty_1,
7934}
7935#[repr(C)]
7936#[derive(Debug, Copy, Clone)]
7937pub struct __atomic_wide_counter__bindgen_ty_1 {
7938  pub __low: ::std::os::raw::c_uint,
7939  pub __high: ::std::os::raw::c_uint,
7940}
7941#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7942const _: () = {
7943  ["Size of __atomic_wide_counter__bindgen_ty_1"]
7944    [::std::mem::size_of::<__atomic_wide_counter__bindgen_ty_1>() - 8usize];
7945  ["Alignment of __atomic_wide_counter__bindgen_ty_1"]
7946    [::std::mem::align_of::<__atomic_wide_counter__bindgen_ty_1>() - 4usize];
7947  ["Offset of field: __atomic_wide_counter__bindgen_ty_1::__low"]
7948    [::std::mem::offset_of!(__atomic_wide_counter__bindgen_ty_1, __low) - 0usize];
7949  ["Offset of field: __atomic_wide_counter__bindgen_ty_1::__high"]
7950    [::std::mem::offset_of!(__atomic_wide_counter__bindgen_ty_1, __high) - 4usize];
7951};
7952#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7953const _: () = {
7954  ["Size of __atomic_wide_counter"][::std::mem::size_of::<__atomic_wide_counter>() - 8usize];
7955  ["Alignment of __atomic_wide_counter"][::std::mem::align_of::<__atomic_wide_counter>() - 8usize];
7956  ["Offset of field: __atomic_wide_counter::__value64"]
7957    [::std::mem::offset_of!(__atomic_wide_counter, __value64) - 0usize];
7958  ["Offset of field: __atomic_wide_counter::__value32"]
7959    [::std::mem::offset_of!(__atomic_wide_counter, __value32) - 0usize];
7960};
7961#[repr(C)]
7962#[derive(Debug, Copy, Clone)]
7963pub struct __pthread_internal_list {
7964  pub __prev: *mut __pthread_internal_list,
7965  pub __next: *mut __pthread_internal_list,
7966}
7967#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7968const _: () = {
7969  ["Size of __pthread_internal_list"][::std::mem::size_of::<__pthread_internal_list>() - 16usize];
7970  ["Alignment of __pthread_internal_list"]
7971    [::std::mem::align_of::<__pthread_internal_list>() - 8usize];
7972  ["Offset of field: __pthread_internal_list::__prev"]
7973    [::std::mem::offset_of!(__pthread_internal_list, __prev) - 0usize];
7974  ["Offset of field: __pthread_internal_list::__next"]
7975    [::std::mem::offset_of!(__pthread_internal_list, __next) - 8usize];
7976};
7977pub type __pthread_list_t = __pthread_internal_list;
7978#[repr(C)]
7979#[derive(Debug, Copy, Clone)]
7980pub struct __pthread_internal_slist {
7981  pub __next: *mut __pthread_internal_slist,
7982}
7983#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7984const _: () = {
7985  ["Size of __pthread_internal_slist"][::std::mem::size_of::<__pthread_internal_slist>() - 8usize];
7986  ["Alignment of __pthread_internal_slist"]
7987    [::std::mem::align_of::<__pthread_internal_slist>() - 8usize];
7988  ["Offset of field: __pthread_internal_slist::__next"]
7989    [::std::mem::offset_of!(__pthread_internal_slist, __next) - 0usize];
7990};
7991pub type __pthread_slist_t = __pthread_internal_slist;
7992#[repr(C)]
7993#[derive(Debug, Copy, Clone)]
7994pub struct __pthread_mutex_s {
7995  pub __lock: ::std::os::raw::c_int,
7996  pub __count: ::std::os::raw::c_uint,
7997  pub __owner: ::std::os::raw::c_int,
7998  pub __nusers: ::std::os::raw::c_uint,
7999  pub __kind: ::std::os::raw::c_int,
8000  pub __spins: ::std::os::raw::c_short,
8001  pub __elision: ::std::os::raw::c_short,
8002  pub __list: __pthread_list_t,
8003}
8004#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8005const _: () = {
8006  ["Size of __pthread_mutex_s"][::std::mem::size_of::<__pthread_mutex_s>() - 40usize];
8007  ["Alignment of __pthread_mutex_s"][::std::mem::align_of::<__pthread_mutex_s>() - 8usize];
8008  ["Offset of field: __pthread_mutex_s::__lock"]
8009    [::std::mem::offset_of!(__pthread_mutex_s, __lock) - 0usize];
8010  ["Offset of field: __pthread_mutex_s::__count"]
8011    [::std::mem::offset_of!(__pthread_mutex_s, __count) - 4usize];
8012  ["Offset of field: __pthread_mutex_s::__owner"]
8013    [::std::mem::offset_of!(__pthread_mutex_s, __owner) - 8usize];
8014  ["Offset of field: __pthread_mutex_s::__nusers"]
8015    [::std::mem::offset_of!(__pthread_mutex_s, __nusers) - 12usize];
8016  ["Offset of field: __pthread_mutex_s::__kind"]
8017    [::std::mem::offset_of!(__pthread_mutex_s, __kind) - 16usize];
8018  ["Offset of field: __pthread_mutex_s::__spins"]
8019    [::std::mem::offset_of!(__pthread_mutex_s, __spins) - 20usize];
8020  ["Offset of field: __pthread_mutex_s::__elision"]
8021    [::std::mem::offset_of!(__pthread_mutex_s, __elision) - 22usize];
8022  ["Offset of field: __pthread_mutex_s::__list"]
8023    [::std::mem::offset_of!(__pthread_mutex_s, __list) - 24usize];
8024};
8025#[repr(C)]
8026#[derive(Debug, Copy, Clone)]
8027pub struct __pthread_rwlock_arch_t {
8028  pub __readers: ::std::os::raw::c_uint,
8029  pub __writers: ::std::os::raw::c_uint,
8030  pub __wrphase_futex: ::std::os::raw::c_uint,
8031  pub __writers_futex: ::std::os::raw::c_uint,
8032  pub __pad3: ::std::os::raw::c_uint,
8033  pub __pad4: ::std::os::raw::c_uint,
8034  pub __cur_writer: ::std::os::raw::c_int,
8035  pub __shared: ::std::os::raw::c_int,
8036  pub __rwelision: ::std::os::raw::c_schar,
8037  pub __pad1: [::std::os::raw::c_uchar; 7usize],
8038  pub __pad2: ::std::os::raw::c_ulong,
8039  pub __flags: ::std::os::raw::c_uint,
8040}
8041#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8042const _: () = {
8043  ["Size of __pthread_rwlock_arch_t"][::std::mem::size_of::<__pthread_rwlock_arch_t>() - 56usize];
8044  ["Alignment of __pthread_rwlock_arch_t"]
8045    [::std::mem::align_of::<__pthread_rwlock_arch_t>() - 8usize];
8046  ["Offset of field: __pthread_rwlock_arch_t::__readers"]
8047    [::std::mem::offset_of!(__pthread_rwlock_arch_t, __readers) - 0usize];
8048  ["Offset of field: __pthread_rwlock_arch_t::__writers"]
8049    [::std::mem::offset_of!(__pthread_rwlock_arch_t, __writers) - 4usize];
8050  ["Offset of field: __pthread_rwlock_arch_t::__wrphase_futex"]
8051    [::std::mem::offset_of!(__pthread_rwlock_arch_t, __wrphase_futex) - 8usize];
8052  ["Offset of field: __pthread_rwlock_arch_t::__writers_futex"]
8053    [::std::mem::offset_of!(__pthread_rwlock_arch_t, __writers_futex) - 12usize];
8054  ["Offset of field: __pthread_rwlock_arch_t::__pad3"]
8055    [::std::mem::offset_of!(__pthread_rwlock_arch_t, __pad3) - 16usize];
8056  ["Offset of field: __pthread_rwlock_arch_t::__pad4"]
8057    [::std::mem::offset_of!(__pthread_rwlock_arch_t, __pad4) - 20usize];
8058  ["Offset of field: __pthread_rwlock_arch_t::__cur_writer"]
8059    [::std::mem::offset_of!(__pthread_rwlock_arch_t, __cur_writer) - 24usize];
8060  ["Offset of field: __pthread_rwlock_arch_t::__shared"]
8061    [::std::mem::offset_of!(__pthread_rwlock_arch_t, __shared) - 28usize];
8062  ["Offset of field: __pthread_rwlock_arch_t::__rwelision"]
8063    [::std::mem::offset_of!(__pthread_rwlock_arch_t, __rwelision) - 32usize];
8064  ["Offset of field: __pthread_rwlock_arch_t::__pad1"]
8065    [::std::mem::offset_of!(__pthread_rwlock_arch_t, __pad1) - 33usize];
8066  ["Offset of field: __pthread_rwlock_arch_t::__pad2"]
8067    [::std::mem::offset_of!(__pthread_rwlock_arch_t, __pad2) - 40usize];
8068  ["Offset of field: __pthread_rwlock_arch_t::__flags"]
8069    [::std::mem::offset_of!(__pthread_rwlock_arch_t, __flags) - 48usize];
8070};
8071#[repr(C)]
8072#[derive(Copy, Clone)]
8073pub struct __pthread_cond_s {
8074  pub __wseq: __atomic_wide_counter,
8075  pub __g1_start: __atomic_wide_counter,
8076  pub __g_refs: [::std::os::raw::c_uint; 2usize],
8077  pub __g_size: [::std::os::raw::c_uint; 2usize],
8078  pub __g1_orig_size: ::std::os::raw::c_uint,
8079  pub __wrefs: ::std::os::raw::c_uint,
8080  pub __g_signals: [::std::os::raw::c_uint; 2usize],
8081}
8082#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8083const _: () = {
8084  ["Size of __pthread_cond_s"][::std::mem::size_of::<__pthread_cond_s>() - 48usize];
8085  ["Alignment of __pthread_cond_s"][::std::mem::align_of::<__pthread_cond_s>() - 8usize];
8086  ["Offset of field: __pthread_cond_s::__wseq"]
8087    [::std::mem::offset_of!(__pthread_cond_s, __wseq) - 0usize];
8088  ["Offset of field: __pthread_cond_s::__g1_start"]
8089    [::std::mem::offset_of!(__pthread_cond_s, __g1_start) - 8usize];
8090  ["Offset of field: __pthread_cond_s::__g_refs"]
8091    [::std::mem::offset_of!(__pthread_cond_s, __g_refs) - 16usize];
8092  ["Offset of field: __pthread_cond_s::__g_size"]
8093    [::std::mem::offset_of!(__pthread_cond_s, __g_size) - 24usize];
8094  ["Offset of field: __pthread_cond_s::__g1_orig_size"]
8095    [::std::mem::offset_of!(__pthread_cond_s, __g1_orig_size) - 32usize];
8096  ["Offset of field: __pthread_cond_s::__wrefs"]
8097    [::std::mem::offset_of!(__pthread_cond_s, __wrefs) - 36usize];
8098  ["Offset of field: __pthread_cond_s::__g_signals"]
8099    [::std::mem::offset_of!(__pthread_cond_s, __g_signals) - 40usize];
8100};
8101pub type __tss_t = ::std::os::raw::c_uint;
8102pub type __thrd_t = ::std::os::raw::c_ulong;
8103#[repr(C)]
8104#[derive(Debug, Copy, Clone)]
8105pub struct __once_flag {
8106  pub __data: ::std::os::raw::c_int,
8107}
8108#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8109const _: () = {
8110  ["Size of __once_flag"][::std::mem::size_of::<__once_flag>() - 4usize];
8111  ["Alignment of __once_flag"][::std::mem::align_of::<__once_flag>() - 4usize];
8112  ["Offset of field: __once_flag::__data"][::std::mem::offset_of!(__once_flag, __data) - 0usize];
8113};
8114pub type pthread_t = ::std::os::raw::c_ulong;
8115#[repr(C)]
8116#[derive(Copy, Clone)]
8117pub union pthread_mutexattr_t {
8118  pub __size: [::std::os::raw::c_char; 4usize],
8119  pub __align: ::std::os::raw::c_int,
8120}
8121#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8122const _: () = {
8123  ["Size of pthread_mutexattr_t"][::std::mem::size_of::<pthread_mutexattr_t>() - 4usize];
8124  ["Alignment of pthread_mutexattr_t"][::std::mem::align_of::<pthread_mutexattr_t>() - 4usize];
8125  ["Offset of field: pthread_mutexattr_t::__size"]
8126    [::std::mem::offset_of!(pthread_mutexattr_t, __size) - 0usize];
8127  ["Offset of field: pthread_mutexattr_t::__align"]
8128    [::std::mem::offset_of!(pthread_mutexattr_t, __align) - 0usize];
8129};
8130#[repr(C)]
8131#[derive(Copy, Clone)]
8132pub union pthread_condattr_t {
8133  pub __size: [::std::os::raw::c_char; 4usize],
8134  pub __align: ::std::os::raw::c_int,
8135}
8136#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8137const _: () = {
8138  ["Size of pthread_condattr_t"][::std::mem::size_of::<pthread_condattr_t>() - 4usize];
8139  ["Alignment of pthread_condattr_t"][::std::mem::align_of::<pthread_condattr_t>() - 4usize];
8140  ["Offset of field: pthread_condattr_t::__size"]
8141    [::std::mem::offset_of!(pthread_condattr_t, __size) - 0usize];
8142  ["Offset of field: pthread_condattr_t::__align"]
8143    [::std::mem::offset_of!(pthread_condattr_t, __align) - 0usize];
8144};
8145pub type pthread_key_t = ::std::os::raw::c_uint;
8146pub type pthread_once_t = ::std::os::raw::c_int;
8147#[repr(C)]
8148#[derive(Copy, Clone)]
8149pub union pthread_attr_t {
8150  pub __size: [::std::os::raw::c_char; 56usize],
8151  pub __align: ::std::os::raw::c_long,
8152}
8153#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8154const _: () = {
8155  ["Size of pthread_attr_t"][::std::mem::size_of::<pthread_attr_t>() - 56usize];
8156  ["Alignment of pthread_attr_t"][::std::mem::align_of::<pthread_attr_t>() - 8usize];
8157  ["Offset of field: pthread_attr_t::__size"]
8158    [::std::mem::offset_of!(pthread_attr_t, __size) - 0usize];
8159  ["Offset of field: pthread_attr_t::__align"]
8160    [::std::mem::offset_of!(pthread_attr_t, __align) - 0usize];
8161};
8162#[repr(C)]
8163#[derive(Copy, Clone)]
8164pub union pthread_mutex_t {
8165  pub __data: __pthread_mutex_s,
8166  pub __size: [::std::os::raw::c_char; 40usize],
8167  pub __align: ::std::os::raw::c_long,
8168}
8169#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8170const _: () = {
8171  ["Size of pthread_mutex_t"][::std::mem::size_of::<pthread_mutex_t>() - 40usize];
8172  ["Alignment of pthread_mutex_t"][::std::mem::align_of::<pthread_mutex_t>() - 8usize];
8173  ["Offset of field: pthread_mutex_t::__data"]
8174    [::std::mem::offset_of!(pthread_mutex_t, __data) - 0usize];
8175  ["Offset of field: pthread_mutex_t::__size"]
8176    [::std::mem::offset_of!(pthread_mutex_t, __size) - 0usize];
8177  ["Offset of field: pthread_mutex_t::__align"]
8178    [::std::mem::offset_of!(pthread_mutex_t, __align) - 0usize];
8179};
8180#[repr(C)]
8181#[derive(Copy, Clone)]
8182pub union pthread_cond_t {
8183  pub __data: __pthread_cond_s,
8184  pub __size: [::std::os::raw::c_char; 48usize],
8185  pub __align: ::std::os::raw::c_longlong,
8186}
8187#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8188const _: () = {
8189  ["Size of pthread_cond_t"][::std::mem::size_of::<pthread_cond_t>() - 48usize];
8190  ["Alignment of pthread_cond_t"][::std::mem::align_of::<pthread_cond_t>() - 8usize];
8191  ["Offset of field: pthread_cond_t::__data"]
8192    [::std::mem::offset_of!(pthread_cond_t, __data) - 0usize];
8193  ["Offset of field: pthread_cond_t::__size"]
8194    [::std::mem::offset_of!(pthread_cond_t, __size) - 0usize];
8195  ["Offset of field: pthread_cond_t::__align"]
8196    [::std::mem::offset_of!(pthread_cond_t, __align) - 0usize];
8197};
8198#[repr(C)]
8199#[derive(Copy, Clone)]
8200pub union pthread_rwlock_t {
8201  pub __data: __pthread_rwlock_arch_t,
8202  pub __size: [::std::os::raw::c_char; 56usize],
8203  pub __align: ::std::os::raw::c_long,
8204}
8205#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8206const _: () = {
8207  ["Size of pthread_rwlock_t"][::std::mem::size_of::<pthread_rwlock_t>() - 56usize];
8208  ["Alignment of pthread_rwlock_t"][::std::mem::align_of::<pthread_rwlock_t>() - 8usize];
8209  ["Offset of field: pthread_rwlock_t::__data"]
8210    [::std::mem::offset_of!(pthread_rwlock_t, __data) - 0usize];
8211  ["Offset of field: pthread_rwlock_t::__size"]
8212    [::std::mem::offset_of!(pthread_rwlock_t, __size) - 0usize];
8213  ["Offset of field: pthread_rwlock_t::__align"]
8214    [::std::mem::offset_of!(pthread_rwlock_t, __align) - 0usize];
8215};
8216#[repr(C)]
8217#[derive(Copy, Clone)]
8218pub union pthread_rwlockattr_t {
8219  pub __size: [::std::os::raw::c_char; 8usize],
8220  pub __align: ::std::os::raw::c_long,
8221}
8222#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8223const _: () = {
8224  ["Size of pthread_rwlockattr_t"][::std::mem::size_of::<pthread_rwlockattr_t>() - 8usize];
8225  ["Alignment of pthread_rwlockattr_t"][::std::mem::align_of::<pthread_rwlockattr_t>() - 8usize];
8226  ["Offset of field: pthread_rwlockattr_t::__size"]
8227    [::std::mem::offset_of!(pthread_rwlockattr_t, __size) - 0usize];
8228  ["Offset of field: pthread_rwlockattr_t::__align"]
8229    [::std::mem::offset_of!(pthread_rwlockattr_t, __align) - 0usize];
8230};
8231pub type pthread_spinlock_t = ::std::os::raw::c_int;
8232#[repr(C)]
8233#[derive(Copy, Clone)]
8234pub union pthread_barrier_t {
8235  pub __size: [::std::os::raw::c_char; 32usize],
8236  pub __align: ::std::os::raw::c_long,
8237}
8238#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8239const _: () = {
8240  ["Size of pthread_barrier_t"][::std::mem::size_of::<pthread_barrier_t>() - 32usize];
8241  ["Alignment of pthread_barrier_t"][::std::mem::align_of::<pthread_barrier_t>() - 8usize];
8242  ["Offset of field: pthread_barrier_t::__size"]
8243    [::std::mem::offset_of!(pthread_barrier_t, __size) - 0usize];
8244  ["Offset of field: pthread_barrier_t::__align"]
8245    [::std::mem::offset_of!(pthread_barrier_t, __align) - 0usize];
8246};
8247#[repr(C)]
8248#[derive(Copy, Clone)]
8249pub union pthread_barrierattr_t {
8250  pub __size: [::std::os::raw::c_char; 4usize],
8251  pub __align: ::std::os::raw::c_int,
8252}
8253#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8254const _: () = {
8255  ["Size of pthread_barrierattr_t"][::std::mem::size_of::<pthread_barrierattr_t>() - 4usize];
8256  ["Alignment of pthread_barrierattr_t"][::std::mem::align_of::<pthread_barrierattr_t>() - 4usize];
8257  ["Offset of field: pthread_barrierattr_t::__size"]
8258    [::std::mem::offset_of!(pthread_barrierattr_t, __size) - 0usize];
8259  ["Offset of field: pthread_barrierattr_t::__align"]
8260    [::std::mem::offset_of!(pthread_barrierattr_t, __align) - 0usize];
8261};
8262unsafe extern "C" {
8263  pub fn random() -> ::std::os::raw::c_long;
8264}
8265unsafe extern "C" {
8266  pub fn srandom(__seed: ::std::os::raw::c_uint);
8267}
8268unsafe extern "C" {
8269  pub fn initstate(
8270    __seed: ::std::os::raw::c_uint,
8271    __statebuf: *mut ::std::os::raw::c_char,
8272    __statelen: usize,
8273  ) -> *mut ::std::os::raw::c_char;
8274}
8275unsafe extern "C" {
8276  pub fn setstate(__statebuf: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
8277}
8278#[repr(C)]
8279#[derive(Debug, Copy, Clone)]
8280pub struct random_data {
8281  pub fptr: *mut i32,
8282  pub rptr: *mut i32,
8283  pub state: *mut i32,
8284  pub rand_type: ::std::os::raw::c_int,
8285  pub rand_deg: ::std::os::raw::c_int,
8286  pub rand_sep: ::std::os::raw::c_int,
8287  pub end_ptr: *mut i32,
8288}
8289#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8290const _: () = {
8291  ["Size of random_data"][::std::mem::size_of::<random_data>() - 48usize];
8292  ["Alignment of random_data"][::std::mem::align_of::<random_data>() - 8usize];
8293  ["Offset of field: random_data::fptr"][::std::mem::offset_of!(random_data, fptr) - 0usize];
8294  ["Offset of field: random_data::rptr"][::std::mem::offset_of!(random_data, rptr) - 8usize];
8295  ["Offset of field: random_data::state"][::std::mem::offset_of!(random_data, state) - 16usize];
8296  ["Offset of field: random_data::rand_type"]
8297    [::std::mem::offset_of!(random_data, rand_type) - 24usize];
8298  ["Offset of field: random_data::rand_deg"]
8299    [::std::mem::offset_of!(random_data, rand_deg) - 28usize];
8300  ["Offset of field: random_data::rand_sep"]
8301    [::std::mem::offset_of!(random_data, rand_sep) - 32usize];
8302  ["Offset of field: random_data::end_ptr"][::std::mem::offset_of!(random_data, end_ptr) - 40usize];
8303};
8304unsafe extern "C" {
8305  pub fn random_r(__buf: *mut random_data, __result: *mut i32) -> ::std::os::raw::c_int;
8306}
8307unsafe extern "C" {
8308  pub fn srandom_r(
8309    __seed: ::std::os::raw::c_uint,
8310    __buf: *mut random_data,
8311  ) -> ::std::os::raw::c_int;
8312}
8313unsafe extern "C" {
8314  pub fn initstate_r(
8315    __seed: ::std::os::raw::c_uint,
8316    __statebuf: *mut ::std::os::raw::c_char,
8317    __statelen: usize,
8318    __buf: *mut random_data,
8319  ) -> ::std::os::raw::c_int;
8320}
8321unsafe extern "C" {
8322  pub fn setstate_r(
8323    __statebuf: *mut ::std::os::raw::c_char,
8324    __buf: *mut random_data,
8325  ) -> ::std::os::raw::c_int;
8326}
8327unsafe extern "C" {
8328  pub fn rand() -> ::std::os::raw::c_int;
8329}
8330unsafe extern "C" {
8331  pub fn srand(__seed: ::std::os::raw::c_uint);
8332}
8333unsafe extern "C" {
8334  pub fn rand_r(__seed: *mut ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
8335}
8336unsafe extern "C" {
8337  pub fn drand48() -> f64;
8338}
8339unsafe extern "C" {
8340  pub fn erand48(__xsubi: *mut ::std::os::raw::c_ushort) -> f64;
8341}
8342unsafe extern "C" {
8343  pub fn lrand48() -> ::std::os::raw::c_long;
8344}
8345unsafe extern "C" {
8346  pub fn nrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long;
8347}
8348unsafe extern "C" {
8349  pub fn mrand48() -> ::std::os::raw::c_long;
8350}
8351unsafe extern "C" {
8352  pub fn jrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long;
8353}
8354unsafe extern "C" {
8355  pub fn srand48(__seedval: ::std::os::raw::c_long);
8356}
8357unsafe extern "C" {
8358  pub fn seed48(__seed16v: *mut ::std::os::raw::c_ushort) -> *mut ::std::os::raw::c_ushort;
8359}
8360unsafe extern "C" {
8361  pub fn lcong48(__param: *mut ::std::os::raw::c_ushort);
8362}
8363#[repr(C)]
8364#[derive(Debug, Copy, Clone)]
8365pub struct drand48_data {
8366  pub __x: [::std::os::raw::c_ushort; 3usize],
8367  pub __old_x: [::std::os::raw::c_ushort; 3usize],
8368  pub __c: ::std::os::raw::c_ushort,
8369  pub __init: ::std::os::raw::c_ushort,
8370  pub __a: ::std::os::raw::c_ulonglong,
8371}
8372#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8373const _: () = {
8374  ["Size of drand48_data"][::std::mem::size_of::<drand48_data>() - 24usize];
8375  ["Alignment of drand48_data"][::std::mem::align_of::<drand48_data>() - 8usize];
8376  ["Offset of field: drand48_data::__x"][::std::mem::offset_of!(drand48_data, __x) - 0usize];
8377  ["Offset of field: drand48_data::__old_x"]
8378    [::std::mem::offset_of!(drand48_data, __old_x) - 6usize];
8379  ["Offset of field: drand48_data::__c"][::std::mem::offset_of!(drand48_data, __c) - 12usize];
8380  ["Offset of field: drand48_data::__init"][::std::mem::offset_of!(drand48_data, __init) - 14usize];
8381  ["Offset of field: drand48_data::__a"][::std::mem::offset_of!(drand48_data, __a) - 16usize];
8382};
8383unsafe extern "C" {
8384  pub fn drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> ::std::os::raw::c_int;
8385}
8386unsafe extern "C" {
8387  pub fn erand48_r(
8388    __xsubi: *mut ::std::os::raw::c_ushort,
8389    __buffer: *mut drand48_data,
8390    __result: *mut f64,
8391  ) -> ::std::os::raw::c_int;
8392}
8393unsafe extern "C" {
8394  pub fn lrand48_r(
8395    __buffer: *mut drand48_data,
8396    __result: *mut ::std::os::raw::c_long,
8397  ) -> ::std::os::raw::c_int;
8398}
8399unsafe extern "C" {
8400  pub fn nrand48_r(
8401    __xsubi: *mut ::std::os::raw::c_ushort,
8402    __buffer: *mut drand48_data,
8403    __result: *mut ::std::os::raw::c_long,
8404  ) -> ::std::os::raw::c_int;
8405}
8406unsafe extern "C" {
8407  pub fn mrand48_r(
8408    __buffer: *mut drand48_data,
8409    __result: *mut ::std::os::raw::c_long,
8410  ) -> ::std::os::raw::c_int;
8411}
8412unsafe extern "C" {
8413  pub fn jrand48_r(
8414    __xsubi: *mut ::std::os::raw::c_ushort,
8415    __buffer: *mut drand48_data,
8416    __result: *mut ::std::os::raw::c_long,
8417  ) -> ::std::os::raw::c_int;
8418}
8419unsafe extern "C" {
8420  pub fn srand48_r(
8421    __seedval: ::std::os::raw::c_long,
8422    __buffer: *mut drand48_data,
8423  ) -> ::std::os::raw::c_int;
8424}
8425unsafe extern "C" {
8426  pub fn seed48_r(
8427    __seed16v: *mut ::std::os::raw::c_ushort,
8428    __buffer: *mut drand48_data,
8429  ) -> ::std::os::raw::c_int;
8430}
8431unsafe extern "C" {
8432  pub fn lcong48_r(
8433    __param: *mut ::std::os::raw::c_ushort,
8434    __buffer: *mut drand48_data,
8435  ) -> ::std::os::raw::c_int;
8436}
8437unsafe extern "C" {
8438  pub fn arc4random() -> __uint32_t;
8439}
8440unsafe extern "C" {
8441  pub fn arc4random_buf(__buf: *mut ::std::os::raw::c_void, __size: usize);
8442}
8443unsafe extern "C" {
8444  pub fn arc4random_uniform(__upper_bound: __uint32_t) -> __uint32_t;
8445}
8446unsafe extern "C" {
8447  pub fn malloc(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void;
8448}
8449unsafe extern "C" {
8450  pub fn calloc(
8451    __nmemb: ::std::os::raw::c_ulong,
8452    __size: ::std::os::raw::c_ulong,
8453  ) -> *mut ::std::os::raw::c_void;
8454}
8455unsafe extern "C" {
8456  pub fn realloc(
8457    __ptr: *mut ::std::os::raw::c_void,
8458    __size: ::std::os::raw::c_ulong,
8459  ) -> *mut ::std::os::raw::c_void;
8460}
8461unsafe extern "C" {
8462  pub fn free(__ptr: *mut ::std::os::raw::c_void);
8463}
8464unsafe extern "C" {
8465  pub fn reallocarray(
8466    __ptr: *mut ::std::os::raw::c_void,
8467    __nmemb: usize,
8468    __size: usize,
8469  ) -> *mut ::std::os::raw::c_void;
8470}
8471unsafe extern "C" {
8472  pub fn alloca(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void;
8473}
8474unsafe extern "C" {
8475  pub fn valloc(__size: usize) -> *mut ::std::os::raw::c_void;
8476}
8477unsafe extern "C" {
8478  pub fn posix_memalign(
8479    __memptr: *mut *mut ::std::os::raw::c_void,
8480    __alignment: usize,
8481    __size: usize,
8482  ) -> ::std::os::raw::c_int;
8483}
8484unsafe extern "C" {
8485  pub fn aligned_alloc(
8486    __alignment: ::std::os::raw::c_ulong,
8487    __size: ::std::os::raw::c_ulong,
8488  ) -> *mut ::std::os::raw::c_void;
8489}
8490unsafe extern "C" {
8491  pub fn abort() -> !;
8492}
8493unsafe extern "C" {
8494  pub fn atexit(__func: ::std::option::Option<unsafe extern "C" fn()>) -> ::std::os::raw::c_int;
8495}
8496unsafe extern "C" {
8497  pub fn at_quick_exit(
8498    __func: ::std::option::Option<unsafe extern "C" fn()>,
8499  ) -> ::std::os::raw::c_int;
8500}
8501unsafe extern "C" {
8502  pub fn on_exit(
8503    __func: ::std::option::Option<
8504      unsafe extern "C" fn(__status: ::std::os::raw::c_int, __arg: *mut ::std::os::raw::c_void),
8505    >,
8506    __arg: *mut ::std::os::raw::c_void,
8507  ) -> ::std::os::raw::c_int;
8508}
8509unsafe extern "C" {
8510  pub fn exit(__status: ::std::os::raw::c_int) -> !;
8511}
8512unsafe extern "C" {
8513  pub fn quick_exit(__status: ::std::os::raw::c_int) -> !;
8514}
8515unsafe extern "C" {
8516  pub fn _Exit(__status: ::std::os::raw::c_int) -> !;
8517}
8518unsafe extern "C" {
8519  pub fn getenv(__name: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
8520}
8521unsafe extern "C" {
8522  pub fn putenv(__string: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
8523}
8524unsafe extern "C" {
8525  pub fn setenv(
8526    __name: *const ::std::os::raw::c_char,
8527    __value: *const ::std::os::raw::c_char,
8528    __replace: ::std::os::raw::c_int,
8529  ) -> ::std::os::raw::c_int;
8530}
8531unsafe extern "C" {
8532  pub fn unsetenv(__name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
8533}
8534unsafe extern "C" {
8535  pub fn clearenv() -> ::std::os::raw::c_int;
8536}
8537unsafe extern "C" {
8538  pub fn mktemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
8539}
8540unsafe extern "C" {
8541  pub fn mkstemp(__template: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
8542}
8543unsafe extern "C" {
8544  pub fn mkstemps(
8545    __template: *mut ::std::os::raw::c_char,
8546    __suffixlen: ::std::os::raw::c_int,
8547  ) -> ::std::os::raw::c_int;
8548}
8549unsafe extern "C" {
8550  pub fn mkdtemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
8551}
8552unsafe extern "C" {
8553  pub fn system(__command: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
8554}
8555unsafe extern "C" {
8556  pub fn realpath(
8557    __name: *const ::std::os::raw::c_char,
8558    __resolved: *mut ::std::os::raw::c_char,
8559  ) -> *mut ::std::os::raw::c_char;
8560}
8561pub type __compar_fn_t = ::std::option::Option<
8562  unsafe extern "C" fn(
8563    arg1: *const ::std::os::raw::c_void,
8564    arg2: *const ::std::os::raw::c_void,
8565  ) -> ::std::os::raw::c_int,
8566>;
8567unsafe extern "C" {
8568  pub fn bsearch(
8569    __key: *const ::std::os::raw::c_void,
8570    __base: *const ::std::os::raw::c_void,
8571    __nmemb: usize,
8572    __size: usize,
8573    __compar: __compar_fn_t,
8574  ) -> *mut ::std::os::raw::c_void;
8575}
8576unsafe extern "C" {
8577  pub fn qsort(
8578    __base: *mut ::std::os::raw::c_void,
8579    __nmemb: usize,
8580    __size: usize,
8581    __compar: __compar_fn_t,
8582  );
8583}
8584unsafe extern "C" {
8585  pub fn abs(__x: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
8586}
8587unsafe extern "C" {
8588  pub fn labs(__x: ::std::os::raw::c_long) -> ::std::os::raw::c_long;
8589}
8590unsafe extern "C" {
8591  pub fn llabs(__x: ::std::os::raw::c_longlong) -> ::std::os::raw::c_longlong;
8592}
8593unsafe extern "C" {
8594  pub fn div(__numer: ::std::os::raw::c_int, __denom: ::std::os::raw::c_int) -> div_t;
8595}
8596unsafe extern "C" {
8597  pub fn ldiv(__numer: ::std::os::raw::c_long, __denom: ::std::os::raw::c_long) -> ldiv_t;
8598}
8599unsafe extern "C" {
8600  pub fn lldiv(__numer: ::std::os::raw::c_longlong, __denom: ::std::os::raw::c_longlong)
8601  -> lldiv_t;
8602}
8603unsafe extern "C" {
8604  pub fn ecvt(
8605    __value: f64,
8606    __ndigit: ::std::os::raw::c_int,
8607    __decpt: *mut ::std::os::raw::c_int,
8608    __sign: *mut ::std::os::raw::c_int,
8609  ) -> *mut ::std::os::raw::c_char;
8610}
8611unsafe extern "C" {
8612  pub fn fcvt(
8613    __value: f64,
8614    __ndigit: ::std::os::raw::c_int,
8615    __decpt: *mut ::std::os::raw::c_int,
8616    __sign: *mut ::std::os::raw::c_int,
8617  ) -> *mut ::std::os::raw::c_char;
8618}
8619unsafe extern "C" {
8620  pub fn gcvt(
8621    __value: f64,
8622    __ndigit: ::std::os::raw::c_int,
8623    __buf: *mut ::std::os::raw::c_char,
8624  ) -> *mut ::std::os::raw::c_char;
8625}
8626unsafe extern "C" {
8627  pub fn qecvt(
8628    __value: u128,
8629    __ndigit: ::std::os::raw::c_int,
8630    __decpt: *mut ::std::os::raw::c_int,
8631    __sign: *mut ::std::os::raw::c_int,
8632  ) -> *mut ::std::os::raw::c_char;
8633}
8634unsafe extern "C" {
8635  pub fn qfcvt(
8636    __value: u128,
8637    __ndigit: ::std::os::raw::c_int,
8638    __decpt: *mut ::std::os::raw::c_int,
8639    __sign: *mut ::std::os::raw::c_int,
8640  ) -> *mut ::std::os::raw::c_char;
8641}
8642unsafe extern "C" {
8643  pub fn qgcvt(
8644    __value: u128,
8645    __ndigit: ::std::os::raw::c_int,
8646    __buf: *mut ::std::os::raw::c_char,
8647  ) -> *mut ::std::os::raw::c_char;
8648}
8649unsafe extern "C" {
8650  pub fn ecvt_r(
8651    __value: f64,
8652    __ndigit: ::std::os::raw::c_int,
8653    __decpt: *mut ::std::os::raw::c_int,
8654    __sign: *mut ::std::os::raw::c_int,
8655    __buf: *mut ::std::os::raw::c_char,
8656    __len: usize,
8657  ) -> ::std::os::raw::c_int;
8658}
8659unsafe extern "C" {
8660  pub fn fcvt_r(
8661    __value: f64,
8662    __ndigit: ::std::os::raw::c_int,
8663    __decpt: *mut ::std::os::raw::c_int,
8664    __sign: *mut ::std::os::raw::c_int,
8665    __buf: *mut ::std::os::raw::c_char,
8666    __len: usize,
8667  ) -> ::std::os::raw::c_int;
8668}
8669unsafe extern "C" {
8670  pub fn qecvt_r(
8671    __value: u128,
8672    __ndigit: ::std::os::raw::c_int,
8673    __decpt: *mut ::std::os::raw::c_int,
8674    __sign: *mut ::std::os::raw::c_int,
8675    __buf: *mut ::std::os::raw::c_char,
8676    __len: usize,
8677  ) -> ::std::os::raw::c_int;
8678}
8679unsafe extern "C" {
8680  pub fn qfcvt_r(
8681    __value: u128,
8682    __ndigit: ::std::os::raw::c_int,
8683    __decpt: *mut ::std::os::raw::c_int,
8684    __sign: *mut ::std::os::raw::c_int,
8685    __buf: *mut ::std::os::raw::c_char,
8686    __len: usize,
8687  ) -> ::std::os::raw::c_int;
8688}
8689unsafe extern "C" {
8690  pub fn mblen(__s: *const ::std::os::raw::c_char, __n: usize) -> ::std::os::raw::c_int;
8691}
8692unsafe extern "C" {
8693  pub fn mbtowc(
8694    __pwc: *mut wchar_t,
8695    __s: *const ::std::os::raw::c_char,
8696    __n: usize,
8697  ) -> ::std::os::raw::c_int;
8698}
8699unsafe extern "C" {
8700  pub fn wctomb(__s: *mut ::std::os::raw::c_char, __wchar: wchar_t) -> ::std::os::raw::c_int;
8701}
8702unsafe extern "C" {
8703  pub fn mbstowcs(__pwcs: *mut wchar_t, __s: *const ::std::os::raw::c_char, __n: usize) -> usize;
8704}
8705unsafe extern "C" {
8706  pub fn wcstombs(__s: *mut ::std::os::raw::c_char, __pwcs: *const wchar_t, __n: usize) -> usize;
8707}
8708unsafe extern "C" {
8709  pub fn rpmatch(__response: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
8710}
8711unsafe extern "C" {
8712  pub fn getsubopt(
8713    __optionp: *mut *mut ::std::os::raw::c_char,
8714    __tokens: *const *mut ::std::os::raw::c_char,
8715    __valuep: *mut *mut ::std::os::raw::c_char,
8716  ) -> ::std::os::raw::c_int;
8717}
8718unsafe extern "C" {
8719  pub fn getloadavg(__loadavg: *mut f64, __nelem: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
8720}
8721#[doc = " Various defines for the various Link properties.\n\n NOTE: the link detection layer will try to resolve QName expansion\n       of namespaces. If \"foo\" is the prefix for \"http://foo.com/\"\n       then the link detection layer will expand role=\"foo:myrole\"\n       to \"http://foo.com/:myrole\".\n NOTE: the link detection layer will expand URI-References found on\n       href attributes by using the base mechanism if found."]
8722pub type xlinkHRef = *mut xmlChar;
8723pub type xlinkRole = *mut xmlChar;
8724pub type xlinkTitle = *mut xmlChar;
8725pub const xlinkType_XLINK_TYPE_NONE: xlinkType = 0;
8726pub const xlinkType_XLINK_TYPE_SIMPLE: xlinkType = 1;
8727pub const xlinkType_XLINK_TYPE_EXTENDED: xlinkType = 2;
8728pub const xlinkType_XLINK_TYPE_EXTENDED_SET: xlinkType = 3;
8729pub type xlinkType = ::std::os::raw::c_uint;
8730pub const xlinkShow_XLINK_SHOW_NONE: xlinkShow = 0;
8731pub const xlinkShow_XLINK_SHOW_NEW: xlinkShow = 1;
8732pub const xlinkShow_XLINK_SHOW_EMBED: xlinkShow = 2;
8733pub const xlinkShow_XLINK_SHOW_REPLACE: xlinkShow = 3;
8734pub type xlinkShow = ::std::os::raw::c_uint;
8735pub const xlinkActuate_XLINK_ACTUATE_NONE: xlinkActuate = 0;
8736pub const xlinkActuate_XLINK_ACTUATE_AUTO: xlinkActuate = 1;
8737pub const xlinkActuate_XLINK_ACTUATE_ONREQUEST: xlinkActuate = 2;
8738pub type xlinkActuate = ::std::os::raw::c_uint;
8739#[doc = " xlinkNodeDetectFunc:\n @ctx:  user data pointer\n @node:  the node to check\n\n This is the prototype for the link detection routine.\n It calls the default link detection callbacks upon link detection."]
8740pub type xlinkNodeDetectFunc =
8741  ::std::option::Option<unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, node: xmlNodePtr)>;
8742#[doc = " xlinkSimpleLinkFunk:\n @ctx:  user data pointer\n @node:  the node carrying the link\n @href:  the target of the link\n @role:  the role string\n @title:  the link title\n\n This is the prototype for a simple link detection callback."]
8743pub type xlinkSimpleLinkFunk = ::std::option::Option<
8744  unsafe extern "C" fn(
8745    ctx: *mut ::std::os::raw::c_void,
8746    node: xmlNodePtr,
8747    href: xlinkHRef,
8748    role: xlinkRole,
8749    title: xlinkTitle,
8750  ),
8751>;
8752#[doc = " xlinkExtendedLinkFunk:\n @ctx:  user data pointer\n @node:  the node carrying the link\n @nbLocators: the number of locators detected on the link\n @hrefs:  pointer to the array of locator hrefs\n @roles:  pointer to the array of locator roles\n @nbArcs: the number of arcs detected on the link\n @from:  pointer to the array of source roles found on the arcs\n @to:  pointer to the array of target roles found on the arcs\n @show:  array of values for the show attributes found on the arcs\n @actuate:  array of values for the actuate attributes found on the arcs\n @nbTitles: the number of titles detected on the link\n @title:  array of titles detected on the link\n @langs:  array of xml:lang values for the titles\n\n This is the prototype for a extended link detection callback."]
8753pub type xlinkExtendedLinkFunk = ::std::option::Option<
8754  unsafe extern "C" fn(
8755    ctx: *mut ::std::os::raw::c_void,
8756    node: xmlNodePtr,
8757    nbLocators: ::std::os::raw::c_int,
8758    hrefs: *const xlinkHRef,
8759    roles: *const xlinkRole,
8760    nbArcs: ::std::os::raw::c_int,
8761    from: *const xlinkRole,
8762    to: *const xlinkRole,
8763    show: *mut xlinkShow,
8764    actuate: *mut xlinkActuate,
8765    nbTitles: ::std::os::raw::c_int,
8766    titles: *const xlinkTitle,
8767    langs: *mut *const xmlChar,
8768  ),
8769>;
8770#[doc = " xlinkExtendedLinkSetFunk:\n @ctx:  user data pointer\n @node:  the node carrying the link\n @nbLocators: the number of locators detected on the link\n @hrefs:  pointer to the array of locator hrefs\n @roles:  pointer to the array of locator roles\n @nbTitles: the number of titles detected on the link\n @title:  array of titles detected on the link\n @langs:  array of xml:lang values for the titles\n\n This is the prototype for a extended link set detection callback."]
8771pub type xlinkExtendedLinkSetFunk = ::std::option::Option<
8772  unsafe extern "C" fn(
8773    ctx: *mut ::std::os::raw::c_void,
8774    node: xmlNodePtr,
8775    nbLocators: ::std::os::raw::c_int,
8776    hrefs: *const xlinkHRef,
8777    roles: *const xlinkRole,
8778    nbTitles: ::std::os::raw::c_int,
8779    titles: *const xlinkTitle,
8780    langs: *mut *const xmlChar,
8781  ),
8782>;
8783#[doc = " This is the structure containing a set of Links detection callbacks.\n\n There is no default xlink callbacks, if one want to get link\n recognition activated, those call backs must be provided before parsing."]
8784pub type xlinkHandler = _xlinkHandler;
8785pub type xlinkHandlerPtr = *mut xlinkHandler;
8786#[repr(C)]
8787#[derive(Copy, Clone)]
8788pub struct _xlinkHandler {
8789  pub simple: xlinkSimpleLinkFunk,
8790  pub extended: xlinkExtendedLinkFunk,
8791  pub set: xlinkExtendedLinkSetFunk,
8792}
8793#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8794const _: () = {
8795  ["Size of _xlinkHandler"][::std::mem::size_of::<_xlinkHandler>() - 24usize];
8796  ["Alignment of _xlinkHandler"][::std::mem::align_of::<_xlinkHandler>() - 8usize];
8797  ["Offset of field: _xlinkHandler::simple"]
8798    [::std::mem::offset_of!(_xlinkHandler, simple) - 0usize];
8799  ["Offset of field: _xlinkHandler::extended"]
8800    [::std::mem::offset_of!(_xlinkHandler, extended) - 8usize];
8801  ["Offset of field: _xlinkHandler::set"][::std::mem::offset_of!(_xlinkHandler, set) - 16usize];
8802};
8803unsafe extern "C" {
8804  pub fn xlinkGetDefaultDetect() -> xlinkNodeDetectFunc;
8805}
8806unsafe extern "C" {
8807  pub fn xlinkSetDefaultDetect(func: xlinkNodeDetectFunc);
8808}
8809unsafe extern "C" {
8810  pub fn xlinkGetDefaultHandler() -> xlinkHandlerPtr;
8811}
8812unsafe extern "C" {
8813  pub fn xlinkSetDefaultHandler(handler: xlinkHandlerPtr);
8814}
8815unsafe extern "C" {
8816  pub fn xlinkIsLink(doc: xmlDocPtr, node: xmlNodePtr) -> xlinkType;
8817}
8818unsafe extern "C" {
8819  pub fn xmlSAX2GetPublicId(ctx: *mut ::std::os::raw::c_void) -> *const xmlChar;
8820}
8821unsafe extern "C" {
8822  pub fn xmlSAX2GetSystemId(ctx: *mut ::std::os::raw::c_void) -> *const xmlChar;
8823}
8824unsafe extern "C" {
8825  pub fn xmlSAX2SetDocumentLocator(ctx: *mut ::std::os::raw::c_void, loc: xmlSAXLocatorPtr);
8826}
8827unsafe extern "C" {
8828  pub fn xmlSAX2GetLineNumber(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
8829}
8830unsafe extern "C" {
8831  pub fn xmlSAX2GetColumnNumber(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
8832}
8833unsafe extern "C" {
8834  pub fn xmlSAX2IsStandalone(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
8835}
8836unsafe extern "C" {
8837  pub fn xmlSAX2HasInternalSubset(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
8838}
8839unsafe extern "C" {
8840  pub fn xmlSAX2HasExternalSubset(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
8841}
8842unsafe extern "C" {
8843  pub fn xmlSAX2InternalSubset(
8844    ctx: *mut ::std::os::raw::c_void,
8845    name: *const xmlChar,
8846    ExternalID: *const xmlChar,
8847    SystemID: *const xmlChar,
8848  );
8849}
8850unsafe extern "C" {
8851  pub fn xmlSAX2ExternalSubset(
8852    ctx: *mut ::std::os::raw::c_void,
8853    name: *const xmlChar,
8854    ExternalID: *const xmlChar,
8855    SystemID: *const xmlChar,
8856  );
8857}
8858unsafe extern "C" {
8859  pub fn xmlSAX2GetEntity(ctx: *mut ::std::os::raw::c_void, name: *const xmlChar) -> xmlEntityPtr;
8860}
8861unsafe extern "C" {
8862  pub fn xmlSAX2GetParameterEntity(
8863    ctx: *mut ::std::os::raw::c_void,
8864    name: *const xmlChar,
8865  ) -> xmlEntityPtr;
8866}
8867unsafe extern "C" {
8868  pub fn xmlSAX2ResolveEntity(
8869    ctx: *mut ::std::os::raw::c_void,
8870    publicId: *const xmlChar,
8871    systemId: *const xmlChar,
8872  ) -> xmlParserInputPtr;
8873}
8874unsafe extern "C" {
8875  pub fn xmlSAX2EntityDecl(
8876    ctx: *mut ::std::os::raw::c_void,
8877    name: *const xmlChar,
8878    type_: ::std::os::raw::c_int,
8879    publicId: *const xmlChar,
8880    systemId: *const xmlChar,
8881    content: *mut xmlChar,
8882  );
8883}
8884unsafe extern "C" {
8885  pub fn xmlSAX2AttributeDecl(
8886    ctx: *mut ::std::os::raw::c_void,
8887    elem: *const xmlChar,
8888    fullname: *const xmlChar,
8889    type_: ::std::os::raw::c_int,
8890    def: ::std::os::raw::c_int,
8891    defaultValue: *const xmlChar,
8892    tree: xmlEnumerationPtr,
8893  );
8894}
8895unsafe extern "C" {
8896  pub fn xmlSAX2ElementDecl(
8897    ctx: *mut ::std::os::raw::c_void,
8898    name: *const xmlChar,
8899    type_: ::std::os::raw::c_int,
8900    content: xmlElementContentPtr,
8901  );
8902}
8903unsafe extern "C" {
8904  pub fn xmlSAX2NotationDecl(
8905    ctx: *mut ::std::os::raw::c_void,
8906    name: *const xmlChar,
8907    publicId: *const xmlChar,
8908    systemId: *const xmlChar,
8909  );
8910}
8911unsafe extern "C" {
8912  pub fn xmlSAX2UnparsedEntityDecl(
8913    ctx: *mut ::std::os::raw::c_void,
8914    name: *const xmlChar,
8915    publicId: *const xmlChar,
8916    systemId: *const xmlChar,
8917    notationName: *const xmlChar,
8918  );
8919}
8920unsafe extern "C" {
8921  pub fn xmlSAX2StartDocument(ctx: *mut ::std::os::raw::c_void);
8922}
8923unsafe extern "C" {
8924  pub fn xmlSAX2EndDocument(ctx: *mut ::std::os::raw::c_void);
8925}
8926unsafe extern "C" {
8927  pub fn xmlSAX2StartElement(
8928    ctx: *mut ::std::os::raw::c_void,
8929    fullname: *const xmlChar,
8930    atts: *mut *const xmlChar,
8931  );
8932}
8933unsafe extern "C" {
8934  pub fn xmlSAX2EndElement(ctx: *mut ::std::os::raw::c_void, name: *const xmlChar);
8935}
8936unsafe extern "C" {
8937  pub fn xmlSAX2StartElementNs(
8938    ctx: *mut ::std::os::raw::c_void,
8939    localname: *const xmlChar,
8940    prefix: *const xmlChar,
8941    URI: *const xmlChar,
8942    nb_namespaces: ::std::os::raw::c_int,
8943    namespaces: *mut *const xmlChar,
8944    nb_attributes: ::std::os::raw::c_int,
8945    nb_defaulted: ::std::os::raw::c_int,
8946    attributes: *mut *const xmlChar,
8947  );
8948}
8949unsafe extern "C" {
8950  pub fn xmlSAX2EndElementNs(
8951    ctx: *mut ::std::os::raw::c_void,
8952    localname: *const xmlChar,
8953    prefix: *const xmlChar,
8954    URI: *const xmlChar,
8955  );
8956}
8957unsafe extern "C" {
8958  pub fn xmlSAX2Reference(ctx: *mut ::std::os::raw::c_void, name: *const xmlChar);
8959}
8960unsafe extern "C" {
8961  pub fn xmlSAX2Characters(
8962    ctx: *mut ::std::os::raw::c_void,
8963    ch: *const xmlChar,
8964    len: ::std::os::raw::c_int,
8965  );
8966}
8967unsafe extern "C" {
8968  pub fn xmlSAX2IgnorableWhitespace(
8969    ctx: *mut ::std::os::raw::c_void,
8970    ch: *const xmlChar,
8971    len: ::std::os::raw::c_int,
8972  );
8973}
8974unsafe extern "C" {
8975  pub fn xmlSAX2ProcessingInstruction(
8976    ctx: *mut ::std::os::raw::c_void,
8977    target: *const xmlChar,
8978    data: *const xmlChar,
8979  );
8980}
8981unsafe extern "C" {
8982  pub fn xmlSAX2Comment(ctx: *mut ::std::os::raw::c_void, value: *const xmlChar);
8983}
8984unsafe extern "C" {
8985  pub fn xmlSAX2CDataBlock(
8986    ctx: *mut ::std::os::raw::c_void,
8987    value: *const xmlChar,
8988    len: ::std::os::raw::c_int,
8989  );
8990}
8991unsafe extern "C" {
8992  pub fn xmlSAXDefaultVersion(version: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
8993}
8994unsafe extern "C" {
8995  pub fn xmlSAXVersion(
8996    hdlr: *mut xmlSAXHandler,
8997    version: ::std::os::raw::c_int,
8998  ) -> ::std::os::raw::c_int;
8999}
9000unsafe extern "C" {
9001  pub fn xmlSAX2InitDefaultSAXHandler(hdlr: *mut xmlSAXHandler, warning: ::std::os::raw::c_int);
9002}
9003unsafe extern "C" {
9004  pub fn xmlSAX2InitHtmlDefaultSAXHandler(hdlr: *mut xmlSAXHandler);
9005}
9006unsafe extern "C" {
9007  pub fn htmlDefaultSAXHandlerInit();
9008}
9009unsafe extern "C" {
9010  pub fn xmlSAX2InitDocbDefaultSAXHandler(hdlr: *mut xmlSAXHandler);
9011}
9012unsafe extern "C" {
9013  pub fn docbDefaultSAXHandlerInit();
9014}
9015unsafe extern "C" {
9016  pub fn xmlDefaultSAXHandlerInit();
9017}
9018unsafe extern "C" {
9019  pub fn xmlInitGlobals();
9020}
9021unsafe extern "C" {
9022  pub fn xmlCleanupGlobals();
9023}
9024#[doc = " xmlParserInputBufferCreateFilenameFunc:\n @URI: the URI to read from\n @enc: the requested source encoding\n\n Signature for the function doing the lookup for a suitable input method\n corresponding to an URI.\n\n Returns the new xmlParserInputBufferPtr in case of success or NULL if no\n         method was found."]
9025pub type xmlParserInputBufferCreateFilenameFunc = ::std::option::Option<
9026  unsafe extern "C" fn(
9027    URI: *const ::std::os::raw::c_char,
9028    enc: xmlCharEncoding,
9029  ) -> xmlParserInputBufferPtr,
9030>;
9031#[doc = " xmlOutputBufferCreateFilenameFunc:\n @URI: the URI to write to\n @enc: the requested target encoding\n\n Signature for the function doing the lookup for a suitable output method\n corresponding to an URI.\n\n Returns the new xmlOutputBufferPtr in case of success or NULL if no\n         method was found."]
9032pub type xmlOutputBufferCreateFilenameFunc = ::std::option::Option<
9033  unsafe extern "C" fn(
9034    URI: *const ::std::os::raw::c_char,
9035    encoder: xmlCharEncodingHandlerPtr,
9036    compression: ::std::os::raw::c_int,
9037  ) -> xmlOutputBufferPtr,
9038>;
9039unsafe extern "C" {
9040  pub fn xmlParserInputBufferCreateFilenameDefault(
9041    func: xmlParserInputBufferCreateFilenameFunc,
9042  ) -> xmlParserInputBufferCreateFilenameFunc;
9043}
9044unsafe extern "C" {
9045  pub fn xmlOutputBufferCreateFilenameDefault(
9046    func: xmlOutputBufferCreateFilenameFunc,
9047  ) -> xmlOutputBufferCreateFilenameFunc;
9048}
9049#[doc = " xmlRegisterNodeFunc:\n @node: the current node\n\n Signature for the registration callback of a created node"]
9050pub type xmlRegisterNodeFunc = ::std::option::Option<unsafe extern "C" fn(node: xmlNodePtr)>;
9051#[doc = " xmlDeregisterNodeFunc:\n @node: the current node\n\n Signature for the deregistration callback of a discarded node"]
9052pub type xmlDeregisterNodeFunc = ::std::option::Option<unsafe extern "C" fn(node: xmlNodePtr)>;
9053pub type xmlGlobalState = _xmlGlobalState;
9054pub type xmlGlobalStatePtr = *mut xmlGlobalState;
9055#[repr(C)]
9056#[derive(Debug, Copy, Clone)]
9057pub struct _xmlGlobalState {
9058  pub xmlParserVersion: *const ::std::os::raw::c_char,
9059  pub xmlDefaultSAXLocator: xmlSAXLocator,
9060  pub xmlDefaultSAXHandler: xmlSAXHandlerV1,
9061  pub docbDefaultSAXHandler: xmlSAXHandlerV1,
9062  pub htmlDefaultSAXHandler: xmlSAXHandlerV1,
9063  pub xmlFree: xmlFreeFunc,
9064  pub xmlMalloc: xmlMallocFunc,
9065  pub xmlMemStrdup: xmlStrdupFunc,
9066  pub xmlRealloc: xmlReallocFunc,
9067  pub xmlGenericError: xmlGenericErrorFunc,
9068  pub xmlStructuredError: xmlStructuredErrorFunc,
9069  pub xmlGenericErrorContext: *mut ::std::os::raw::c_void,
9070  pub oldXMLWDcompatibility: ::std::os::raw::c_int,
9071  pub xmlBufferAllocScheme: xmlBufferAllocationScheme,
9072  pub xmlDefaultBufferSize: ::std::os::raw::c_int,
9073  pub xmlSubstituteEntitiesDefaultValue: ::std::os::raw::c_int,
9074  pub xmlDoValidityCheckingDefaultValue: ::std::os::raw::c_int,
9075  pub xmlGetWarningsDefaultValue: ::std::os::raw::c_int,
9076  pub xmlKeepBlanksDefaultValue: ::std::os::raw::c_int,
9077  pub xmlLineNumbersDefaultValue: ::std::os::raw::c_int,
9078  pub xmlLoadExtDtdDefaultValue: ::std::os::raw::c_int,
9079  pub xmlParserDebugEntities: ::std::os::raw::c_int,
9080  pub xmlPedanticParserDefaultValue: ::std::os::raw::c_int,
9081  pub xmlSaveNoEmptyTags: ::std::os::raw::c_int,
9082  pub xmlIndentTreeOutput: ::std::os::raw::c_int,
9083  pub xmlTreeIndentString: *const ::std::os::raw::c_char,
9084  pub xmlRegisterNodeDefaultValue: xmlRegisterNodeFunc,
9085  pub xmlDeregisterNodeDefaultValue: xmlDeregisterNodeFunc,
9086  pub xmlMallocAtomic: xmlMallocFunc,
9087  pub xmlLastError: xmlError,
9088  pub xmlParserInputBufferCreateFilenameValue: xmlParserInputBufferCreateFilenameFunc,
9089  pub xmlOutputBufferCreateFilenameValue: xmlOutputBufferCreateFilenameFunc,
9090  pub xmlStructuredErrorContext: *mut ::std::os::raw::c_void,
9091}
9092#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9093const _: () = {
9094  ["Size of _xmlGlobalState"][::std::mem::size_of::<_xmlGlobalState>() - 968usize];
9095  ["Alignment of _xmlGlobalState"][::std::mem::align_of::<_xmlGlobalState>() - 8usize];
9096  ["Offset of field: _xmlGlobalState::xmlParserVersion"]
9097    [::std::mem::offset_of!(_xmlGlobalState, xmlParserVersion) - 0usize];
9098  ["Offset of field: _xmlGlobalState::xmlDefaultSAXLocator"]
9099    [::std::mem::offset_of!(_xmlGlobalState, xmlDefaultSAXLocator) - 8usize];
9100  ["Offset of field: _xmlGlobalState::xmlDefaultSAXHandler"]
9101    [::std::mem::offset_of!(_xmlGlobalState, xmlDefaultSAXHandler) - 40usize];
9102  ["Offset of field: _xmlGlobalState::docbDefaultSAXHandler"]
9103    [::std::mem::offset_of!(_xmlGlobalState, docbDefaultSAXHandler) - 264usize];
9104  ["Offset of field: _xmlGlobalState::htmlDefaultSAXHandler"]
9105    [::std::mem::offset_of!(_xmlGlobalState, htmlDefaultSAXHandler) - 488usize];
9106  ["Offset of field: _xmlGlobalState::xmlFree"]
9107    [::std::mem::offset_of!(_xmlGlobalState, xmlFree) - 712usize];
9108  ["Offset of field: _xmlGlobalState::xmlMalloc"]
9109    [::std::mem::offset_of!(_xmlGlobalState, xmlMalloc) - 720usize];
9110  ["Offset of field: _xmlGlobalState::xmlMemStrdup"]
9111    [::std::mem::offset_of!(_xmlGlobalState, xmlMemStrdup) - 728usize];
9112  ["Offset of field: _xmlGlobalState::xmlRealloc"]
9113    [::std::mem::offset_of!(_xmlGlobalState, xmlRealloc) - 736usize];
9114  ["Offset of field: _xmlGlobalState::xmlGenericError"]
9115    [::std::mem::offset_of!(_xmlGlobalState, xmlGenericError) - 744usize];
9116  ["Offset of field: _xmlGlobalState::xmlStructuredError"]
9117    [::std::mem::offset_of!(_xmlGlobalState, xmlStructuredError) - 752usize];
9118  ["Offset of field: _xmlGlobalState::xmlGenericErrorContext"]
9119    [::std::mem::offset_of!(_xmlGlobalState, xmlGenericErrorContext) - 760usize];
9120  ["Offset of field: _xmlGlobalState::oldXMLWDcompatibility"]
9121    [::std::mem::offset_of!(_xmlGlobalState, oldXMLWDcompatibility) - 768usize];
9122  ["Offset of field: _xmlGlobalState::xmlBufferAllocScheme"]
9123    [::std::mem::offset_of!(_xmlGlobalState, xmlBufferAllocScheme) - 772usize];
9124  ["Offset of field: _xmlGlobalState::xmlDefaultBufferSize"]
9125    [::std::mem::offset_of!(_xmlGlobalState, xmlDefaultBufferSize) - 776usize];
9126  ["Offset of field: _xmlGlobalState::xmlSubstituteEntitiesDefaultValue"]
9127    [::std::mem::offset_of!(_xmlGlobalState, xmlSubstituteEntitiesDefaultValue) - 780usize];
9128  ["Offset of field: _xmlGlobalState::xmlDoValidityCheckingDefaultValue"]
9129    [::std::mem::offset_of!(_xmlGlobalState, xmlDoValidityCheckingDefaultValue) - 784usize];
9130  ["Offset of field: _xmlGlobalState::xmlGetWarningsDefaultValue"]
9131    [::std::mem::offset_of!(_xmlGlobalState, xmlGetWarningsDefaultValue) - 788usize];
9132  ["Offset of field: _xmlGlobalState::xmlKeepBlanksDefaultValue"]
9133    [::std::mem::offset_of!(_xmlGlobalState, xmlKeepBlanksDefaultValue) - 792usize];
9134  ["Offset of field: _xmlGlobalState::xmlLineNumbersDefaultValue"]
9135    [::std::mem::offset_of!(_xmlGlobalState, xmlLineNumbersDefaultValue) - 796usize];
9136  ["Offset of field: _xmlGlobalState::xmlLoadExtDtdDefaultValue"]
9137    [::std::mem::offset_of!(_xmlGlobalState, xmlLoadExtDtdDefaultValue) - 800usize];
9138  ["Offset of field: _xmlGlobalState::xmlParserDebugEntities"]
9139    [::std::mem::offset_of!(_xmlGlobalState, xmlParserDebugEntities) - 804usize];
9140  ["Offset of field: _xmlGlobalState::xmlPedanticParserDefaultValue"]
9141    [::std::mem::offset_of!(_xmlGlobalState, xmlPedanticParserDefaultValue) - 808usize];
9142  ["Offset of field: _xmlGlobalState::xmlSaveNoEmptyTags"]
9143    [::std::mem::offset_of!(_xmlGlobalState, xmlSaveNoEmptyTags) - 812usize];
9144  ["Offset of field: _xmlGlobalState::xmlIndentTreeOutput"]
9145    [::std::mem::offset_of!(_xmlGlobalState, xmlIndentTreeOutput) - 816usize];
9146  ["Offset of field: _xmlGlobalState::xmlTreeIndentString"]
9147    [::std::mem::offset_of!(_xmlGlobalState, xmlTreeIndentString) - 824usize];
9148  ["Offset of field: _xmlGlobalState::xmlRegisterNodeDefaultValue"]
9149    [::std::mem::offset_of!(_xmlGlobalState, xmlRegisterNodeDefaultValue) - 832usize];
9150  ["Offset of field: _xmlGlobalState::xmlDeregisterNodeDefaultValue"]
9151    [::std::mem::offset_of!(_xmlGlobalState, xmlDeregisterNodeDefaultValue) - 840usize];
9152  ["Offset of field: _xmlGlobalState::xmlMallocAtomic"]
9153    [::std::mem::offset_of!(_xmlGlobalState, xmlMallocAtomic) - 848usize];
9154  ["Offset of field: _xmlGlobalState::xmlLastError"]
9155    [::std::mem::offset_of!(_xmlGlobalState, xmlLastError) - 856usize];
9156  ["Offset of field: _xmlGlobalState::xmlParserInputBufferCreateFilenameValue"]
9157    [::std::mem::offset_of!(_xmlGlobalState, xmlParserInputBufferCreateFilenameValue) - 944usize];
9158  ["Offset of field: _xmlGlobalState::xmlOutputBufferCreateFilenameValue"]
9159    [::std::mem::offset_of!(_xmlGlobalState, xmlOutputBufferCreateFilenameValue) - 952usize];
9160  ["Offset of field: _xmlGlobalState::xmlStructuredErrorContext"]
9161    [::std::mem::offset_of!(_xmlGlobalState, xmlStructuredErrorContext) - 960usize];
9162};
9163unsafe extern "C" {
9164  pub fn xmlInitializeGlobalState(gs: xmlGlobalStatePtr);
9165}
9166unsafe extern "C" {
9167  pub fn xmlThrDefSetGenericErrorFunc(
9168    ctx: *mut ::std::os::raw::c_void,
9169    handler: xmlGenericErrorFunc,
9170  );
9171}
9172unsafe extern "C" {
9173  pub fn xmlThrDefSetStructuredErrorFunc(
9174    ctx: *mut ::std::os::raw::c_void,
9175    handler: xmlStructuredErrorFunc,
9176  );
9177}
9178unsafe extern "C" {
9179  pub fn xmlRegisterNodeDefault(func: xmlRegisterNodeFunc) -> xmlRegisterNodeFunc;
9180}
9181unsafe extern "C" {
9182  pub fn xmlThrDefRegisterNodeDefault(func: xmlRegisterNodeFunc) -> xmlRegisterNodeFunc;
9183}
9184unsafe extern "C" {
9185  pub fn xmlDeregisterNodeDefault(func: xmlDeregisterNodeFunc) -> xmlDeregisterNodeFunc;
9186}
9187unsafe extern "C" {
9188  pub fn xmlThrDefDeregisterNodeDefault(func: xmlDeregisterNodeFunc) -> xmlDeregisterNodeFunc;
9189}
9190unsafe extern "C" {
9191  pub fn xmlThrDefOutputBufferCreateFilenameDefault(
9192    func: xmlOutputBufferCreateFilenameFunc,
9193  ) -> xmlOutputBufferCreateFilenameFunc;
9194}
9195unsafe extern "C" {
9196  pub fn xmlThrDefParserInputBufferCreateFilenameDefault(
9197    func: xmlParserInputBufferCreateFilenameFunc,
9198  ) -> xmlParserInputBufferCreateFilenameFunc;
9199}
9200unsafe extern "C" {
9201  pub static mut xmlMalloc: xmlMallocFunc;
9202}
9203unsafe extern "C" {
9204  pub static mut xmlMallocAtomic: xmlMallocFunc;
9205}
9206unsafe extern "C" {
9207  pub static mut xmlRealloc: xmlReallocFunc;
9208}
9209unsafe extern "C" {
9210  pub static mut xmlFree: xmlFreeFunc;
9211}
9212unsafe extern "C" {
9213  pub static mut xmlMemStrdup: xmlStrdupFunc;
9214}
9215unsafe extern "C" {
9216  pub fn __docbDefaultSAXHandler() -> *mut xmlSAXHandlerV1;
9217}
9218unsafe extern "C" {
9219  pub fn __htmlDefaultSAXHandler() -> *mut xmlSAXHandlerV1;
9220}
9221unsafe extern "C" {
9222  pub fn __xmlLastError() -> *mut xmlError;
9223}
9224unsafe extern "C" {
9225  pub fn __oldXMLWDcompatibility() -> *mut ::std::os::raw::c_int;
9226}
9227unsafe extern "C" {
9228  pub fn __xmlBufferAllocScheme() -> *mut xmlBufferAllocationScheme;
9229}
9230unsafe extern "C" {
9231  pub fn xmlThrDefBufferAllocScheme(v: xmlBufferAllocationScheme) -> xmlBufferAllocationScheme;
9232}
9233unsafe extern "C" {
9234  pub fn __xmlDefaultBufferSize() -> *mut ::std::os::raw::c_int;
9235}
9236unsafe extern "C" {
9237  pub fn xmlThrDefDefaultBufferSize(v: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
9238}
9239unsafe extern "C" {
9240  pub fn __xmlDefaultSAXHandler() -> *mut xmlSAXHandlerV1;
9241}
9242unsafe extern "C" {
9243  pub fn __xmlDefaultSAXLocator() -> *mut xmlSAXLocator;
9244}
9245unsafe extern "C" {
9246  pub fn __xmlDoValidityCheckingDefaultValue() -> *mut ::std::os::raw::c_int;
9247}
9248unsafe extern "C" {
9249  pub fn xmlThrDefDoValidityCheckingDefaultValue(v: ::std::os::raw::c_int)
9250  -> ::std::os::raw::c_int;
9251}
9252unsafe extern "C" {
9253  pub fn __xmlGenericError() -> *mut xmlGenericErrorFunc;
9254}
9255unsafe extern "C" {
9256  pub fn __xmlStructuredError() -> *mut xmlStructuredErrorFunc;
9257}
9258unsafe extern "C" {
9259  pub fn __xmlGenericErrorContext() -> *mut *mut ::std::os::raw::c_void;
9260}
9261unsafe extern "C" {
9262  pub fn __xmlStructuredErrorContext() -> *mut *mut ::std::os::raw::c_void;
9263}
9264unsafe extern "C" {
9265  pub fn __xmlGetWarningsDefaultValue() -> *mut ::std::os::raw::c_int;
9266}
9267unsafe extern "C" {
9268  pub fn xmlThrDefGetWarningsDefaultValue(v: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
9269}
9270unsafe extern "C" {
9271  pub fn __xmlIndentTreeOutput() -> *mut ::std::os::raw::c_int;
9272}
9273unsafe extern "C" {
9274  pub fn xmlThrDefIndentTreeOutput(v: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
9275}
9276unsafe extern "C" {
9277  pub fn __xmlTreeIndentString() -> *mut *const ::std::os::raw::c_char;
9278}
9279unsafe extern "C" {
9280  pub fn xmlThrDefTreeIndentString(
9281    v: *const ::std::os::raw::c_char,
9282  ) -> *const ::std::os::raw::c_char;
9283}
9284unsafe extern "C" {
9285  pub fn __xmlKeepBlanksDefaultValue() -> *mut ::std::os::raw::c_int;
9286}
9287unsafe extern "C" {
9288  pub fn xmlThrDefKeepBlanksDefaultValue(v: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
9289}
9290unsafe extern "C" {
9291  pub fn __xmlLineNumbersDefaultValue() -> *mut ::std::os::raw::c_int;
9292}
9293unsafe extern "C" {
9294  pub fn xmlThrDefLineNumbersDefaultValue(v: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
9295}
9296unsafe extern "C" {
9297  pub fn __xmlLoadExtDtdDefaultValue() -> *mut ::std::os::raw::c_int;
9298}
9299unsafe extern "C" {
9300  pub fn xmlThrDefLoadExtDtdDefaultValue(v: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
9301}
9302unsafe extern "C" {
9303  pub fn __xmlParserDebugEntities() -> *mut ::std::os::raw::c_int;
9304}
9305unsafe extern "C" {
9306  pub fn xmlThrDefParserDebugEntities(v: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
9307}
9308unsafe extern "C" {
9309  pub fn __xmlParserVersion() -> *mut *const ::std::os::raw::c_char;
9310}
9311unsafe extern "C" {
9312  pub fn __xmlPedanticParserDefaultValue() -> *mut ::std::os::raw::c_int;
9313}
9314unsafe extern "C" {
9315  pub fn xmlThrDefPedanticParserDefaultValue(v: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
9316}
9317unsafe extern "C" {
9318  pub fn __xmlSaveNoEmptyTags() -> *mut ::std::os::raw::c_int;
9319}
9320unsafe extern "C" {
9321  pub fn xmlThrDefSaveNoEmptyTags(v: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
9322}
9323unsafe extern "C" {
9324  pub fn __xmlSubstituteEntitiesDefaultValue() -> *mut ::std::os::raw::c_int;
9325}
9326unsafe extern "C" {
9327  pub fn xmlThrDefSubstituteEntitiesDefaultValue(v: ::std::os::raw::c_int)
9328  -> ::std::os::raw::c_int;
9329}
9330unsafe extern "C" {
9331  pub fn __xmlRegisterNodeDefaultValue() -> *mut xmlRegisterNodeFunc;
9332}
9333unsafe extern "C" {
9334  pub fn __xmlDeregisterNodeDefaultValue() -> *mut xmlDeregisterNodeFunc;
9335}
9336unsafe extern "C" {
9337  pub fn __xmlParserInputBufferCreateFilenameValue() -> *mut xmlParserInputBufferCreateFilenameFunc;
9338}
9339unsafe extern "C" {
9340  pub fn __xmlOutputBufferCreateFilenameValue() -> *mut xmlOutputBufferCreateFilenameFunc;
9341}
9342unsafe extern "C" {
9343  pub fn xmlNewMutex() -> xmlMutexPtr;
9344}
9345unsafe extern "C" {
9346  pub fn xmlMutexLock(tok: xmlMutexPtr);
9347}
9348unsafe extern "C" {
9349  pub fn xmlMutexUnlock(tok: xmlMutexPtr);
9350}
9351unsafe extern "C" {
9352  pub fn xmlFreeMutex(tok: xmlMutexPtr);
9353}
9354unsafe extern "C" {
9355  pub fn xmlNewRMutex() -> xmlRMutexPtr;
9356}
9357unsafe extern "C" {
9358  pub fn xmlRMutexLock(tok: xmlRMutexPtr);
9359}
9360unsafe extern "C" {
9361  pub fn xmlRMutexUnlock(tok: xmlRMutexPtr);
9362}
9363unsafe extern "C" {
9364  pub fn xmlFreeRMutex(tok: xmlRMutexPtr);
9365}
9366unsafe extern "C" {
9367  pub fn xmlInitThreads();
9368}
9369unsafe extern "C" {
9370  pub fn xmlLockLibrary();
9371}
9372unsafe extern "C" {
9373  pub fn xmlUnlockLibrary();
9374}
9375unsafe extern "C" {
9376  pub fn xmlGetThreadId() -> ::std::os::raw::c_int;
9377}
9378unsafe extern "C" {
9379  pub fn xmlIsMainThread() -> ::std::os::raw::c_int;
9380}
9381unsafe extern "C" {
9382  pub fn xmlCleanupThreads();
9383}
9384unsafe extern "C" {
9385  pub fn xmlGetGlobalState() -> xmlGlobalStatePtr;
9386}
9387#[doc = " xmlXPathContext:\n\n Expression evaluation occurs with respect to a context.\n he context consists of:\n    - a node (the context node)\n    - a node list (the context node list)\n    - a set of variable bindings\n    - a function library\n    - the set of namespace declarations in scope for the expression\n Following the switch to hash tables, this need to be trimmed up at\n the next binary incompatible release.\n The node may be modified when the context is passed to libxml2\n for an XPath evaluation so you may need to initialize it again\n before the next call."]
9388pub type xmlXPathContext = _xmlXPathContext;
9389pub type xmlXPathContextPtr = *mut xmlXPathContext;
9390#[doc = " xmlXPathParserContext:\n\n An XPath parser context. It contains pure parsing information,\n an xmlXPathContext, and the stack of objects."]
9391pub type xmlXPathParserContext = _xmlXPathParserContext;
9392pub type xmlXPathParserContextPtr = *mut xmlXPathParserContext;
9393pub const xmlXPathError_XPATH_EXPRESSION_OK: xmlXPathError = 0;
9394pub const xmlXPathError_XPATH_NUMBER_ERROR: xmlXPathError = 1;
9395pub const xmlXPathError_XPATH_UNFINISHED_LITERAL_ERROR: xmlXPathError = 2;
9396pub const xmlXPathError_XPATH_START_LITERAL_ERROR: xmlXPathError = 3;
9397pub const xmlXPathError_XPATH_VARIABLE_REF_ERROR: xmlXPathError = 4;
9398pub const xmlXPathError_XPATH_UNDEF_VARIABLE_ERROR: xmlXPathError = 5;
9399pub const xmlXPathError_XPATH_INVALID_PREDICATE_ERROR: xmlXPathError = 6;
9400pub const xmlXPathError_XPATH_EXPR_ERROR: xmlXPathError = 7;
9401pub const xmlXPathError_XPATH_UNCLOSED_ERROR: xmlXPathError = 8;
9402pub const xmlXPathError_XPATH_UNKNOWN_FUNC_ERROR: xmlXPathError = 9;
9403pub const xmlXPathError_XPATH_INVALID_OPERAND: xmlXPathError = 10;
9404pub const xmlXPathError_XPATH_INVALID_TYPE: xmlXPathError = 11;
9405pub const xmlXPathError_XPATH_INVALID_ARITY: xmlXPathError = 12;
9406pub const xmlXPathError_XPATH_INVALID_CTXT_SIZE: xmlXPathError = 13;
9407pub const xmlXPathError_XPATH_INVALID_CTXT_POSITION: xmlXPathError = 14;
9408pub const xmlXPathError_XPATH_MEMORY_ERROR: xmlXPathError = 15;
9409pub const xmlXPathError_XPTR_SYNTAX_ERROR: xmlXPathError = 16;
9410pub const xmlXPathError_XPTR_RESOURCE_ERROR: xmlXPathError = 17;
9411pub const xmlXPathError_XPTR_SUB_RESOURCE_ERROR: xmlXPathError = 18;
9412pub const xmlXPathError_XPATH_UNDEF_PREFIX_ERROR: xmlXPathError = 19;
9413pub const xmlXPathError_XPATH_ENCODING_ERROR: xmlXPathError = 20;
9414pub const xmlXPathError_XPATH_INVALID_CHAR_ERROR: xmlXPathError = 21;
9415pub const xmlXPathError_XPATH_INVALID_CTXT: xmlXPathError = 22;
9416pub const xmlXPathError_XPATH_STACK_ERROR: xmlXPathError = 23;
9417pub const xmlXPathError_XPATH_FORBID_VARIABLE_ERROR: xmlXPathError = 24;
9418pub const xmlXPathError_XPATH_OP_LIMIT_EXCEEDED: xmlXPathError = 25;
9419pub const xmlXPathError_XPATH_RECURSION_LIMIT_EXCEEDED: xmlXPathError = 26;
9420#[doc = " The set of XPath error codes."]
9421pub type xmlXPathError = ::std::os::raw::c_uint;
9422pub type xmlNodeSet = _xmlNodeSet;
9423pub type xmlNodeSetPtr = *mut xmlNodeSet;
9424#[repr(C)]
9425#[derive(Debug, Copy, Clone)]
9426pub struct _xmlNodeSet {
9427  pub nodeNr: ::std::os::raw::c_int,
9428  pub nodeMax: ::std::os::raw::c_int,
9429  pub nodeTab: *mut xmlNodePtr,
9430}
9431#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9432const _: () = {
9433  ["Size of _xmlNodeSet"][::std::mem::size_of::<_xmlNodeSet>() - 16usize];
9434  ["Alignment of _xmlNodeSet"][::std::mem::align_of::<_xmlNodeSet>() - 8usize];
9435  ["Offset of field: _xmlNodeSet::nodeNr"][::std::mem::offset_of!(_xmlNodeSet, nodeNr) - 0usize];
9436  ["Offset of field: _xmlNodeSet::nodeMax"][::std::mem::offset_of!(_xmlNodeSet, nodeMax) - 4usize];
9437  ["Offset of field: _xmlNodeSet::nodeTab"][::std::mem::offset_of!(_xmlNodeSet, nodeTab) - 8usize];
9438};
9439pub const xmlXPathObjectType_XPATH_UNDEFINED: xmlXPathObjectType = 0;
9440pub const xmlXPathObjectType_XPATH_NODESET: xmlXPathObjectType = 1;
9441pub const xmlXPathObjectType_XPATH_BOOLEAN: xmlXPathObjectType = 2;
9442pub const xmlXPathObjectType_XPATH_NUMBER: xmlXPathObjectType = 3;
9443pub const xmlXPathObjectType_XPATH_STRING: xmlXPathObjectType = 4;
9444pub const xmlXPathObjectType_XPATH_POINT: xmlXPathObjectType = 5;
9445pub const xmlXPathObjectType_XPATH_RANGE: xmlXPathObjectType = 6;
9446pub const xmlXPathObjectType_XPATH_LOCATIONSET: xmlXPathObjectType = 7;
9447pub const xmlXPathObjectType_XPATH_USERS: xmlXPathObjectType = 8;
9448pub const xmlXPathObjectType_XPATH_XSLT_TREE: xmlXPathObjectType = 9;
9449pub type xmlXPathObjectType = ::std::os::raw::c_uint;
9450pub type xmlXPathObject = _xmlXPathObject;
9451pub type xmlXPathObjectPtr = *mut xmlXPathObject;
9452#[repr(C)]
9453#[derive(Debug, Copy, Clone)]
9454pub struct _xmlXPathObject {
9455  pub type_: xmlXPathObjectType,
9456  pub nodesetval: xmlNodeSetPtr,
9457  pub boolval: ::std::os::raw::c_int,
9458  pub floatval: f64,
9459  pub stringval: *mut xmlChar,
9460  pub user: *mut ::std::os::raw::c_void,
9461  pub index: ::std::os::raw::c_int,
9462  pub user2: *mut ::std::os::raw::c_void,
9463  pub index2: ::std::os::raw::c_int,
9464}
9465#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9466const _: () = {
9467  ["Size of _xmlXPathObject"][::std::mem::size_of::<_xmlXPathObject>() - 72usize];
9468  ["Alignment of _xmlXPathObject"][::std::mem::align_of::<_xmlXPathObject>() - 8usize];
9469  ["Offset of field: _xmlXPathObject::type_"]
9470    [::std::mem::offset_of!(_xmlXPathObject, type_) - 0usize];
9471  ["Offset of field: _xmlXPathObject::nodesetval"]
9472    [::std::mem::offset_of!(_xmlXPathObject, nodesetval) - 8usize];
9473  ["Offset of field: _xmlXPathObject::boolval"]
9474    [::std::mem::offset_of!(_xmlXPathObject, boolval) - 16usize];
9475  ["Offset of field: _xmlXPathObject::floatval"]
9476    [::std::mem::offset_of!(_xmlXPathObject, floatval) - 24usize];
9477  ["Offset of field: _xmlXPathObject::stringval"]
9478    [::std::mem::offset_of!(_xmlXPathObject, stringval) - 32usize];
9479  ["Offset of field: _xmlXPathObject::user"]
9480    [::std::mem::offset_of!(_xmlXPathObject, user) - 40usize];
9481  ["Offset of field: _xmlXPathObject::index"]
9482    [::std::mem::offset_of!(_xmlXPathObject, index) - 48usize];
9483  ["Offset of field: _xmlXPathObject::user2"]
9484    [::std::mem::offset_of!(_xmlXPathObject, user2) - 56usize];
9485  ["Offset of field: _xmlXPathObject::index2"]
9486    [::std::mem::offset_of!(_xmlXPathObject, index2) - 64usize];
9487};
9488#[doc = " xmlXPathConvertFunc:\n @obj:  an XPath object\n @type:  the number of the target type\n\n A conversion function is associated to a type and used to cast\n the new type to primitive values.\n\n Returns -1 in case of error, 0 otherwise"]
9489pub type xmlXPathConvertFunc = ::std::option::Option<
9490  unsafe extern "C" fn(
9491    obj: xmlXPathObjectPtr,
9492    type_: ::std::os::raw::c_int,
9493  ) -> ::std::os::raw::c_int,
9494>;
9495pub type xmlXPathType = _xmlXPathType;
9496pub type xmlXPathTypePtr = *mut xmlXPathType;
9497#[repr(C)]
9498#[derive(Debug, Copy, Clone)]
9499pub struct _xmlXPathType {
9500  pub name: *const xmlChar,
9501  pub func: xmlXPathConvertFunc,
9502}
9503#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9504const _: () = {
9505  ["Size of _xmlXPathType"][::std::mem::size_of::<_xmlXPathType>() - 16usize];
9506  ["Alignment of _xmlXPathType"][::std::mem::align_of::<_xmlXPathType>() - 8usize];
9507  ["Offset of field: _xmlXPathType::name"][::std::mem::offset_of!(_xmlXPathType, name) - 0usize];
9508  ["Offset of field: _xmlXPathType::func"][::std::mem::offset_of!(_xmlXPathType, func) - 8usize];
9509};
9510pub type xmlXPathVariable = _xmlXPathVariable;
9511pub type xmlXPathVariablePtr = *mut xmlXPathVariable;
9512#[repr(C)]
9513#[derive(Debug, Copy, Clone)]
9514pub struct _xmlXPathVariable {
9515  pub name: *const xmlChar,
9516  pub value: xmlXPathObjectPtr,
9517}
9518#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9519const _: () = {
9520  ["Size of _xmlXPathVariable"][::std::mem::size_of::<_xmlXPathVariable>() - 16usize];
9521  ["Alignment of _xmlXPathVariable"][::std::mem::align_of::<_xmlXPathVariable>() - 8usize];
9522  ["Offset of field: _xmlXPathVariable::name"]
9523    [::std::mem::offset_of!(_xmlXPathVariable, name) - 0usize];
9524  ["Offset of field: _xmlXPathVariable::value"]
9525    [::std::mem::offset_of!(_xmlXPathVariable, value) - 8usize];
9526};
9527#[doc = " xmlXPathEvalFunc:\n @ctxt: an XPath parser context\n @nargs: the number of arguments passed to the function\n\n An XPath evaluation function, the parameters are on the XPath context stack."]
9528pub type xmlXPathEvalFunc = ::std::option::Option<
9529  unsafe extern "C" fn(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int),
9530>;
9531pub type xmlXPathFunct = _xmlXPathFunct;
9532pub type xmlXPathFuncPtr = *mut xmlXPathFunct;
9533#[repr(C)]
9534#[derive(Debug, Copy, Clone)]
9535pub struct _xmlXPathFunct {
9536  pub name: *const xmlChar,
9537  pub func: xmlXPathEvalFunc,
9538}
9539#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9540const _: () = {
9541  ["Size of _xmlXPathFunct"][::std::mem::size_of::<_xmlXPathFunct>() - 16usize];
9542  ["Alignment of _xmlXPathFunct"][::std::mem::align_of::<_xmlXPathFunct>() - 8usize];
9543  ["Offset of field: _xmlXPathFunct::name"][::std::mem::offset_of!(_xmlXPathFunct, name) - 0usize];
9544  ["Offset of field: _xmlXPathFunct::func"][::std::mem::offset_of!(_xmlXPathFunct, func) - 8usize];
9545};
9546#[doc = " xmlXPathAxisFunc:\n @ctxt:  the XPath interpreter context\n @cur:  the previous node being explored on that axis\n\n An axis traversal function. To traverse an axis, the engine calls\n the first time with cur == NULL and repeat until the function returns\n NULL indicating the end of the axis traversal.\n\n Returns the next node in that axis or NULL if at the end of the axis."]
9547pub type xmlXPathAxisFunc = ::std::option::Option<
9548  unsafe extern "C" fn(ctxt: xmlXPathParserContextPtr, cur: xmlXPathObjectPtr) -> xmlXPathObjectPtr,
9549>;
9550pub type xmlXPathAxis = _xmlXPathAxis;
9551pub type xmlXPathAxisPtr = *mut xmlXPathAxis;
9552#[repr(C)]
9553#[derive(Debug, Copy, Clone)]
9554pub struct _xmlXPathAxis {
9555  pub name: *const xmlChar,
9556  pub func: xmlXPathAxisFunc,
9557}
9558#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9559const _: () = {
9560  ["Size of _xmlXPathAxis"][::std::mem::size_of::<_xmlXPathAxis>() - 16usize];
9561  ["Alignment of _xmlXPathAxis"][::std::mem::align_of::<_xmlXPathAxis>() - 8usize];
9562  ["Offset of field: _xmlXPathAxis::name"][::std::mem::offset_of!(_xmlXPathAxis, name) - 0usize];
9563  ["Offset of field: _xmlXPathAxis::func"][::std::mem::offset_of!(_xmlXPathAxis, func) - 8usize];
9564};
9565#[doc = " xmlXPathFunction:\n @ctxt:  the XPath interprestation context\n @nargs:  the number of arguments\n\n An XPath function.\n The arguments (if any) are popped out from the context stack\n and the result is pushed on the stack."]
9566pub type xmlXPathFunction = ::std::option::Option<
9567  unsafe extern "C" fn(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int),
9568>;
9569#[doc = " xmlXPathVariableLookupFunc:\n @ctxt:  an XPath context\n @name:  name of the variable\n @ns_uri:  the namespace name hosting this variable\n\n Prototype for callbacks used to plug variable lookup in the XPath\n engine.\n\n Returns the XPath object value or NULL if not found."]
9570pub type xmlXPathVariableLookupFunc = ::std::option::Option<
9571  unsafe extern "C" fn(
9572    ctxt: *mut ::std::os::raw::c_void,
9573    name: *const xmlChar,
9574    ns_uri: *const xmlChar,
9575  ) -> xmlXPathObjectPtr,
9576>;
9577#[doc = " xmlXPathFuncLookupFunc:\n @ctxt:  an XPath context\n @name:  name of the function\n @ns_uri:  the namespace name hosting this function\n\n Prototype for callbacks used to plug function lookup in the XPath\n engine.\n\n Returns the XPath function or NULL if not found."]
9578pub type xmlXPathFuncLookupFunc = ::std::option::Option<
9579  unsafe extern "C" fn(
9580    ctxt: *mut ::std::os::raw::c_void,
9581    name: *const xmlChar,
9582    ns_uri: *const xmlChar,
9583  ) -> xmlXPathFunction,
9584>;
9585#[doc = " xmlXPathContext:\n\n Expression evaluation occurs with respect to a context.\n he context consists of:\n    - a node (the context node)\n    - a node list (the context node list)\n    - a set of variable bindings\n    - a function library\n    - the set of namespace declarations in scope for the expression\n Following the switch to hash tables, this need to be trimmed up at\n the next binary incompatible release.\n The node may be modified when the context is passed to libxml2\n for an XPath evaluation so you may need to initialize it again\n before the next call."]
9586#[repr(C)]
9587#[derive(Debug, Copy, Clone)]
9588pub struct _xmlXPathContext {
9589  pub doc: xmlDocPtr,
9590  pub node: xmlNodePtr,
9591  pub nb_variables_unused: ::std::os::raw::c_int,
9592  pub max_variables_unused: ::std::os::raw::c_int,
9593  pub varHash: xmlHashTablePtr,
9594  pub nb_types: ::std::os::raw::c_int,
9595  pub max_types: ::std::os::raw::c_int,
9596  pub types: xmlXPathTypePtr,
9597  pub nb_funcs_unused: ::std::os::raw::c_int,
9598  pub max_funcs_unused: ::std::os::raw::c_int,
9599  pub funcHash: xmlHashTablePtr,
9600  pub nb_axis: ::std::os::raw::c_int,
9601  pub max_axis: ::std::os::raw::c_int,
9602  pub axis: xmlXPathAxisPtr,
9603  pub namespaces: *mut xmlNsPtr,
9604  pub nsNr: ::std::os::raw::c_int,
9605  pub user: *mut ::std::os::raw::c_void,
9606  pub contextSize: ::std::os::raw::c_int,
9607  pub proximityPosition: ::std::os::raw::c_int,
9608  pub xptr: ::std::os::raw::c_int,
9609  pub here: xmlNodePtr,
9610  pub origin: xmlNodePtr,
9611  pub nsHash: xmlHashTablePtr,
9612  pub varLookupFunc: xmlXPathVariableLookupFunc,
9613  pub varLookupData: *mut ::std::os::raw::c_void,
9614  pub extra: *mut ::std::os::raw::c_void,
9615  pub function: *const xmlChar,
9616  pub functionURI: *const xmlChar,
9617  pub funcLookupFunc: xmlXPathFuncLookupFunc,
9618  pub funcLookupData: *mut ::std::os::raw::c_void,
9619  pub tmpNsList: *mut xmlNsPtr,
9620  pub tmpNsNr: ::std::os::raw::c_int,
9621  pub userData: *mut ::std::os::raw::c_void,
9622  pub error: xmlStructuredErrorFunc,
9623  pub lastError: xmlError,
9624  pub debugNode: xmlNodePtr,
9625  pub dict: xmlDictPtr,
9626  pub flags: ::std::os::raw::c_int,
9627  pub cache: *mut ::std::os::raw::c_void,
9628  pub opLimit: ::std::os::raw::c_ulong,
9629  pub opCount: ::std::os::raw::c_ulong,
9630  pub depth: ::std::os::raw::c_int,
9631}
9632#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9633const _: () = {
9634  ["Size of _xmlXPathContext"][::std::mem::size_of::<_xmlXPathContext>() - 376usize];
9635  ["Alignment of _xmlXPathContext"][::std::mem::align_of::<_xmlXPathContext>() - 8usize];
9636  ["Offset of field: _xmlXPathContext::doc"]
9637    [::std::mem::offset_of!(_xmlXPathContext, doc) - 0usize];
9638  ["Offset of field: _xmlXPathContext::node"]
9639    [::std::mem::offset_of!(_xmlXPathContext, node) - 8usize];
9640  ["Offset of field: _xmlXPathContext::nb_variables_unused"]
9641    [::std::mem::offset_of!(_xmlXPathContext, nb_variables_unused) - 16usize];
9642  ["Offset of field: _xmlXPathContext::max_variables_unused"]
9643    [::std::mem::offset_of!(_xmlXPathContext, max_variables_unused) - 20usize];
9644  ["Offset of field: _xmlXPathContext::varHash"]
9645    [::std::mem::offset_of!(_xmlXPathContext, varHash) - 24usize];
9646  ["Offset of field: _xmlXPathContext::nb_types"]
9647    [::std::mem::offset_of!(_xmlXPathContext, nb_types) - 32usize];
9648  ["Offset of field: _xmlXPathContext::max_types"]
9649    [::std::mem::offset_of!(_xmlXPathContext, max_types) - 36usize];
9650  ["Offset of field: _xmlXPathContext::types"]
9651    [::std::mem::offset_of!(_xmlXPathContext, types) - 40usize];
9652  ["Offset of field: _xmlXPathContext::nb_funcs_unused"]
9653    [::std::mem::offset_of!(_xmlXPathContext, nb_funcs_unused) - 48usize];
9654  ["Offset of field: _xmlXPathContext::max_funcs_unused"]
9655    [::std::mem::offset_of!(_xmlXPathContext, max_funcs_unused) - 52usize];
9656  ["Offset of field: _xmlXPathContext::funcHash"]
9657    [::std::mem::offset_of!(_xmlXPathContext, funcHash) - 56usize];
9658  ["Offset of field: _xmlXPathContext::nb_axis"]
9659    [::std::mem::offset_of!(_xmlXPathContext, nb_axis) - 64usize];
9660  ["Offset of field: _xmlXPathContext::max_axis"]
9661    [::std::mem::offset_of!(_xmlXPathContext, max_axis) - 68usize];
9662  ["Offset of field: _xmlXPathContext::axis"]
9663    [::std::mem::offset_of!(_xmlXPathContext, axis) - 72usize];
9664  ["Offset of field: _xmlXPathContext::namespaces"]
9665    [::std::mem::offset_of!(_xmlXPathContext, namespaces) - 80usize];
9666  ["Offset of field: _xmlXPathContext::nsNr"]
9667    [::std::mem::offset_of!(_xmlXPathContext, nsNr) - 88usize];
9668  ["Offset of field: _xmlXPathContext::user"]
9669    [::std::mem::offset_of!(_xmlXPathContext, user) - 96usize];
9670  ["Offset of field: _xmlXPathContext::contextSize"]
9671    [::std::mem::offset_of!(_xmlXPathContext, contextSize) - 104usize];
9672  ["Offset of field: _xmlXPathContext::proximityPosition"]
9673    [::std::mem::offset_of!(_xmlXPathContext, proximityPosition) - 108usize];
9674  ["Offset of field: _xmlXPathContext::xptr"]
9675    [::std::mem::offset_of!(_xmlXPathContext, xptr) - 112usize];
9676  ["Offset of field: _xmlXPathContext::here"]
9677    [::std::mem::offset_of!(_xmlXPathContext, here) - 120usize];
9678  ["Offset of field: _xmlXPathContext::origin"]
9679    [::std::mem::offset_of!(_xmlXPathContext, origin) - 128usize];
9680  ["Offset of field: _xmlXPathContext::nsHash"]
9681    [::std::mem::offset_of!(_xmlXPathContext, nsHash) - 136usize];
9682  ["Offset of field: _xmlXPathContext::varLookupFunc"]
9683    [::std::mem::offset_of!(_xmlXPathContext, varLookupFunc) - 144usize];
9684  ["Offset of field: _xmlXPathContext::varLookupData"]
9685    [::std::mem::offset_of!(_xmlXPathContext, varLookupData) - 152usize];
9686  ["Offset of field: _xmlXPathContext::extra"]
9687    [::std::mem::offset_of!(_xmlXPathContext, extra) - 160usize];
9688  ["Offset of field: _xmlXPathContext::function"]
9689    [::std::mem::offset_of!(_xmlXPathContext, function) - 168usize];
9690  ["Offset of field: _xmlXPathContext::functionURI"]
9691    [::std::mem::offset_of!(_xmlXPathContext, functionURI) - 176usize];
9692  ["Offset of field: _xmlXPathContext::funcLookupFunc"]
9693    [::std::mem::offset_of!(_xmlXPathContext, funcLookupFunc) - 184usize];
9694  ["Offset of field: _xmlXPathContext::funcLookupData"]
9695    [::std::mem::offset_of!(_xmlXPathContext, funcLookupData) - 192usize];
9696  ["Offset of field: _xmlXPathContext::tmpNsList"]
9697    [::std::mem::offset_of!(_xmlXPathContext, tmpNsList) - 200usize];
9698  ["Offset of field: _xmlXPathContext::tmpNsNr"]
9699    [::std::mem::offset_of!(_xmlXPathContext, tmpNsNr) - 208usize];
9700  ["Offset of field: _xmlXPathContext::userData"]
9701    [::std::mem::offset_of!(_xmlXPathContext, userData) - 216usize];
9702  ["Offset of field: _xmlXPathContext::error"]
9703    [::std::mem::offset_of!(_xmlXPathContext, error) - 224usize];
9704  ["Offset of field: _xmlXPathContext::lastError"]
9705    [::std::mem::offset_of!(_xmlXPathContext, lastError) - 232usize];
9706  ["Offset of field: _xmlXPathContext::debugNode"]
9707    [::std::mem::offset_of!(_xmlXPathContext, debugNode) - 320usize];
9708  ["Offset of field: _xmlXPathContext::dict"]
9709    [::std::mem::offset_of!(_xmlXPathContext, dict) - 328usize];
9710  ["Offset of field: _xmlXPathContext::flags"]
9711    [::std::mem::offset_of!(_xmlXPathContext, flags) - 336usize];
9712  ["Offset of field: _xmlXPathContext::cache"]
9713    [::std::mem::offset_of!(_xmlXPathContext, cache) - 344usize];
9714  ["Offset of field: _xmlXPathContext::opLimit"]
9715    [::std::mem::offset_of!(_xmlXPathContext, opLimit) - 352usize];
9716  ["Offset of field: _xmlXPathContext::opCount"]
9717    [::std::mem::offset_of!(_xmlXPathContext, opCount) - 360usize];
9718  ["Offset of field: _xmlXPathContext::depth"]
9719    [::std::mem::offset_of!(_xmlXPathContext, depth) - 368usize];
9720};
9721#[repr(C)]
9722#[derive(Debug, Copy, Clone)]
9723pub struct _xmlXPathCompExpr {
9724  _unused: [u8; 0],
9725}
9726pub type xmlXPathCompExpr = _xmlXPathCompExpr;
9727pub type xmlXPathCompExprPtr = *mut xmlXPathCompExpr;
9728#[doc = " xmlXPathParserContext:\n\n An XPath parser context. It contains pure parsing information,\n an xmlXPathContext, and the stack of objects."]
9729#[repr(C)]
9730#[derive(Debug, Copy, Clone)]
9731pub struct _xmlXPathParserContext {
9732  pub cur: *const xmlChar,
9733  pub base: *const xmlChar,
9734  pub error: ::std::os::raw::c_int,
9735  pub context: xmlXPathContextPtr,
9736  pub value: xmlXPathObjectPtr,
9737  pub valueNr: ::std::os::raw::c_int,
9738  pub valueMax: ::std::os::raw::c_int,
9739  pub valueTab: *mut xmlXPathObjectPtr,
9740  pub comp: xmlXPathCompExprPtr,
9741  pub xptr: ::std::os::raw::c_int,
9742  pub ancestor: xmlNodePtr,
9743  pub valueFrame: ::std::os::raw::c_int,
9744}
9745#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9746const _: () = {
9747  ["Size of _xmlXPathParserContext"][::std::mem::size_of::<_xmlXPathParserContext>() - 88usize];
9748  ["Alignment of _xmlXPathParserContext"]
9749    [::std::mem::align_of::<_xmlXPathParserContext>() - 8usize];
9750  ["Offset of field: _xmlXPathParserContext::cur"]
9751    [::std::mem::offset_of!(_xmlXPathParserContext, cur) - 0usize];
9752  ["Offset of field: _xmlXPathParserContext::base"]
9753    [::std::mem::offset_of!(_xmlXPathParserContext, base) - 8usize];
9754  ["Offset of field: _xmlXPathParserContext::error"]
9755    [::std::mem::offset_of!(_xmlXPathParserContext, error) - 16usize];
9756  ["Offset of field: _xmlXPathParserContext::context"]
9757    [::std::mem::offset_of!(_xmlXPathParserContext, context) - 24usize];
9758  ["Offset of field: _xmlXPathParserContext::value"]
9759    [::std::mem::offset_of!(_xmlXPathParserContext, value) - 32usize];
9760  ["Offset of field: _xmlXPathParserContext::valueNr"]
9761    [::std::mem::offset_of!(_xmlXPathParserContext, valueNr) - 40usize];
9762  ["Offset of field: _xmlXPathParserContext::valueMax"]
9763    [::std::mem::offset_of!(_xmlXPathParserContext, valueMax) - 44usize];
9764  ["Offset of field: _xmlXPathParserContext::valueTab"]
9765    [::std::mem::offset_of!(_xmlXPathParserContext, valueTab) - 48usize];
9766  ["Offset of field: _xmlXPathParserContext::comp"]
9767    [::std::mem::offset_of!(_xmlXPathParserContext, comp) - 56usize];
9768  ["Offset of field: _xmlXPathParserContext::xptr"]
9769    [::std::mem::offset_of!(_xmlXPathParserContext, xptr) - 64usize];
9770  ["Offset of field: _xmlXPathParserContext::ancestor"]
9771    [::std::mem::offset_of!(_xmlXPathParserContext, ancestor) - 72usize];
9772  ["Offset of field: _xmlXPathParserContext::valueFrame"]
9773    [::std::mem::offset_of!(_xmlXPathParserContext, valueFrame) - 80usize];
9774};
9775unsafe extern "C" {
9776  #[doc = " Objects and Nodesets handling"]
9777  pub static mut xmlXPathNAN: f64;
9778}
9779unsafe extern "C" {
9780  pub static mut xmlXPathPINF: f64;
9781}
9782unsafe extern "C" {
9783  pub static mut xmlXPathNINF: f64;
9784}
9785unsafe extern "C" {
9786  pub fn xmlXPathFreeObject(obj: xmlXPathObjectPtr);
9787}
9788unsafe extern "C" {
9789  pub fn xmlXPathNodeSetCreate(val: xmlNodePtr) -> xmlNodeSetPtr;
9790}
9791unsafe extern "C" {
9792  pub fn xmlXPathFreeNodeSetList(obj: xmlXPathObjectPtr);
9793}
9794unsafe extern "C" {
9795  pub fn xmlXPathFreeNodeSet(obj: xmlNodeSetPtr);
9796}
9797unsafe extern "C" {
9798  pub fn xmlXPathObjectCopy(val: xmlXPathObjectPtr) -> xmlXPathObjectPtr;
9799}
9800unsafe extern "C" {
9801  pub fn xmlXPathCmpNodes(node1: xmlNodePtr, node2: xmlNodePtr) -> ::std::os::raw::c_int;
9802}
9803unsafe extern "C" {
9804  #[doc = " Conversion functions to basic types."]
9805  pub fn xmlXPathCastNumberToBoolean(val: f64) -> ::std::os::raw::c_int;
9806}
9807unsafe extern "C" {
9808  pub fn xmlXPathCastStringToBoolean(val: *const xmlChar) -> ::std::os::raw::c_int;
9809}
9810unsafe extern "C" {
9811  pub fn xmlXPathCastNodeSetToBoolean(ns: xmlNodeSetPtr) -> ::std::os::raw::c_int;
9812}
9813unsafe extern "C" {
9814  pub fn xmlXPathCastToBoolean(val: xmlXPathObjectPtr) -> ::std::os::raw::c_int;
9815}
9816unsafe extern "C" {
9817  pub fn xmlXPathCastBooleanToNumber(val: ::std::os::raw::c_int) -> f64;
9818}
9819unsafe extern "C" {
9820  pub fn xmlXPathCastStringToNumber(val: *const xmlChar) -> f64;
9821}
9822unsafe extern "C" {
9823  pub fn xmlXPathCastNodeToNumber(node: xmlNodePtr) -> f64;
9824}
9825unsafe extern "C" {
9826  pub fn xmlXPathCastNodeSetToNumber(ns: xmlNodeSetPtr) -> f64;
9827}
9828unsafe extern "C" {
9829  pub fn xmlXPathCastToNumber(val: xmlXPathObjectPtr) -> f64;
9830}
9831unsafe extern "C" {
9832  pub fn xmlXPathCastBooleanToString(val: ::std::os::raw::c_int) -> *mut xmlChar;
9833}
9834unsafe extern "C" {
9835  pub fn xmlXPathCastNumberToString(val: f64) -> *mut xmlChar;
9836}
9837unsafe extern "C" {
9838  pub fn xmlXPathCastNodeToString(node: xmlNodePtr) -> *mut xmlChar;
9839}
9840unsafe extern "C" {
9841  pub fn xmlXPathCastNodeSetToString(ns: xmlNodeSetPtr) -> *mut xmlChar;
9842}
9843unsafe extern "C" {
9844  pub fn xmlXPathCastToString(val: xmlXPathObjectPtr) -> *mut xmlChar;
9845}
9846unsafe extern "C" {
9847  pub fn xmlXPathConvertBoolean(val: xmlXPathObjectPtr) -> xmlXPathObjectPtr;
9848}
9849unsafe extern "C" {
9850  pub fn xmlXPathConvertNumber(val: xmlXPathObjectPtr) -> xmlXPathObjectPtr;
9851}
9852unsafe extern "C" {
9853  pub fn xmlXPathConvertString(val: xmlXPathObjectPtr) -> xmlXPathObjectPtr;
9854}
9855unsafe extern "C" {
9856  #[doc = " Context handling."]
9857  pub fn xmlXPathNewContext(doc: xmlDocPtr) -> xmlXPathContextPtr;
9858}
9859unsafe extern "C" {
9860  pub fn xmlXPathFreeContext(ctxt: xmlXPathContextPtr);
9861}
9862unsafe extern "C" {
9863  pub fn xmlXPathContextSetCache(
9864    ctxt: xmlXPathContextPtr,
9865    active: ::std::os::raw::c_int,
9866    value: ::std::os::raw::c_int,
9867    options: ::std::os::raw::c_int,
9868  ) -> ::std::os::raw::c_int;
9869}
9870unsafe extern "C" {
9871  #[doc = " Evaluation functions."]
9872  pub fn xmlXPathOrderDocElems(doc: xmlDocPtr) -> ::std::os::raw::c_long;
9873}
9874unsafe extern "C" {
9875  pub fn xmlXPathSetContextNode(node: xmlNodePtr, ctx: xmlXPathContextPtr)
9876  -> ::std::os::raw::c_int;
9877}
9878unsafe extern "C" {
9879  pub fn xmlXPathNodeEval(
9880    node: xmlNodePtr,
9881    str_: *const xmlChar,
9882    ctx: xmlXPathContextPtr,
9883  ) -> xmlXPathObjectPtr;
9884}
9885unsafe extern "C" {
9886  pub fn xmlXPathEval(str_: *const xmlChar, ctx: xmlXPathContextPtr) -> xmlXPathObjectPtr;
9887}
9888unsafe extern "C" {
9889  pub fn xmlXPathEvalExpression(
9890    str_: *const xmlChar,
9891    ctxt: xmlXPathContextPtr,
9892  ) -> xmlXPathObjectPtr;
9893}
9894unsafe extern "C" {
9895  pub fn xmlXPathEvalPredicate(
9896    ctxt: xmlXPathContextPtr,
9897    res: xmlXPathObjectPtr,
9898  ) -> ::std::os::raw::c_int;
9899}
9900unsafe extern "C" {
9901  #[doc = " Separate compilation/evaluation entry points."]
9902  pub fn xmlXPathCompile(str_: *const xmlChar) -> xmlXPathCompExprPtr;
9903}
9904unsafe extern "C" {
9905  pub fn xmlXPathCtxtCompile(ctxt: xmlXPathContextPtr, str_: *const xmlChar)
9906  -> xmlXPathCompExprPtr;
9907}
9908unsafe extern "C" {
9909  pub fn xmlXPathCompiledEval(
9910    comp: xmlXPathCompExprPtr,
9911    ctx: xmlXPathContextPtr,
9912  ) -> xmlXPathObjectPtr;
9913}
9914unsafe extern "C" {
9915  pub fn xmlXPathCompiledEvalToBoolean(
9916    comp: xmlXPathCompExprPtr,
9917    ctxt: xmlXPathContextPtr,
9918  ) -> ::std::os::raw::c_int;
9919}
9920unsafe extern "C" {
9921  pub fn xmlXPathFreeCompExpr(comp: xmlXPathCompExprPtr);
9922}
9923unsafe extern "C" {
9924  pub fn xmlXPathInit();
9925}
9926unsafe extern "C" {
9927  pub fn xmlXPathIsNaN(val: f64) -> ::std::os::raw::c_int;
9928}
9929unsafe extern "C" {
9930  pub fn xmlXPathIsInf(val: f64) -> ::std::os::raw::c_int;
9931}
9932pub const xmlC14NMode_XML_C14N_1_0: xmlC14NMode = 0;
9933pub const xmlC14NMode_XML_C14N_EXCLUSIVE_1_0: xmlC14NMode = 1;
9934pub const xmlC14NMode_XML_C14N_1_1: xmlC14NMode = 2;
9935pub type xmlC14NMode = ::std::os::raw::c_uint;
9936unsafe extern "C" {
9937  pub fn xmlC14NDocSaveTo(
9938    doc: xmlDocPtr,
9939    nodes: xmlNodeSetPtr,
9940    mode: ::std::os::raw::c_int,
9941    inclusive_ns_prefixes: *mut *mut xmlChar,
9942    with_comments: ::std::os::raw::c_int,
9943    buf: xmlOutputBufferPtr,
9944  ) -> ::std::os::raw::c_int;
9945}
9946unsafe extern "C" {
9947  pub fn xmlC14NDocDumpMemory(
9948    doc: xmlDocPtr,
9949    nodes: xmlNodeSetPtr,
9950    mode: ::std::os::raw::c_int,
9951    inclusive_ns_prefixes: *mut *mut xmlChar,
9952    with_comments: ::std::os::raw::c_int,
9953    doc_txt_ptr: *mut *mut xmlChar,
9954  ) -> ::std::os::raw::c_int;
9955}
9956unsafe extern "C" {
9957  pub fn xmlC14NDocSave(
9958    doc: xmlDocPtr,
9959    nodes: xmlNodeSetPtr,
9960    mode: ::std::os::raw::c_int,
9961    inclusive_ns_prefixes: *mut *mut xmlChar,
9962    with_comments: ::std::os::raw::c_int,
9963    filename: *const ::std::os::raw::c_char,
9964    compression: ::std::os::raw::c_int,
9965  ) -> ::std::os::raw::c_int;
9966}
9967#[doc = " This is the core C14N function\n/\n/**\n xmlC14NIsVisibleCallback:\n @user_data: user data\n @node: the current node\n @parent: the parent node\n\n Signature for a C14N callback on visible nodes\n\n Returns 1 if the node should be included"]
9968pub type xmlC14NIsVisibleCallback = ::std::option::Option<
9969  unsafe extern "C" fn(
9970    user_data: *mut ::std::os::raw::c_void,
9971    node: xmlNodePtr,
9972    parent: xmlNodePtr,
9973  ) -> ::std::os::raw::c_int,
9974>;
9975unsafe extern "C" {
9976  pub fn xmlC14NExecute(
9977    doc: xmlDocPtr,
9978    is_visible_callback: xmlC14NIsVisibleCallback,
9979    user_data: *mut ::std::os::raw::c_void,
9980    mode: ::std::os::raw::c_int,
9981    inclusive_ns_prefixes: *mut *mut xmlChar,
9982    with_comments: ::std::os::raw::c_int,
9983    buf: xmlOutputBufferPtr,
9984  ) -> ::std::os::raw::c_int;
9985}
9986pub const xmlCatalogPrefer_XML_CATA_PREFER_NONE: xmlCatalogPrefer = 0;
9987pub const xmlCatalogPrefer_XML_CATA_PREFER_PUBLIC: xmlCatalogPrefer = 1;
9988pub const xmlCatalogPrefer_XML_CATA_PREFER_SYSTEM: xmlCatalogPrefer = 2;
9989pub type xmlCatalogPrefer = ::std::os::raw::c_uint;
9990pub const xmlCatalogAllow_XML_CATA_ALLOW_NONE: xmlCatalogAllow = 0;
9991pub const xmlCatalogAllow_XML_CATA_ALLOW_GLOBAL: xmlCatalogAllow = 1;
9992pub const xmlCatalogAllow_XML_CATA_ALLOW_DOCUMENT: xmlCatalogAllow = 2;
9993pub const xmlCatalogAllow_XML_CATA_ALLOW_ALL: xmlCatalogAllow = 3;
9994pub type xmlCatalogAllow = ::std::os::raw::c_uint;
9995#[repr(C)]
9996#[derive(Debug, Copy, Clone)]
9997pub struct _xmlCatalog {
9998  _unused: [u8; 0],
9999}
10000pub type xmlCatalog = _xmlCatalog;
10001pub type xmlCatalogPtr = *mut xmlCatalog;
10002unsafe extern "C" {
10003  pub fn xmlNewCatalog(sgml: ::std::os::raw::c_int) -> xmlCatalogPtr;
10004}
10005unsafe extern "C" {
10006  pub fn xmlLoadACatalog(filename: *const ::std::os::raw::c_char) -> xmlCatalogPtr;
10007}
10008unsafe extern "C" {
10009  pub fn xmlLoadSGMLSuperCatalog(filename: *const ::std::os::raw::c_char) -> xmlCatalogPtr;
10010}
10011unsafe extern "C" {
10012  pub fn xmlConvertSGMLCatalog(catal: xmlCatalogPtr) -> ::std::os::raw::c_int;
10013}
10014unsafe extern "C" {
10015  pub fn xmlACatalogAdd(
10016    catal: xmlCatalogPtr,
10017    type_: *const xmlChar,
10018    orig: *const xmlChar,
10019    replace: *const xmlChar,
10020  ) -> ::std::os::raw::c_int;
10021}
10022unsafe extern "C" {
10023  pub fn xmlACatalogRemove(catal: xmlCatalogPtr, value: *const xmlChar) -> ::std::os::raw::c_int;
10024}
10025unsafe extern "C" {
10026  pub fn xmlACatalogResolve(
10027    catal: xmlCatalogPtr,
10028    pubID: *const xmlChar,
10029    sysID: *const xmlChar,
10030  ) -> *mut xmlChar;
10031}
10032unsafe extern "C" {
10033  pub fn xmlACatalogResolveSystem(catal: xmlCatalogPtr, sysID: *const xmlChar) -> *mut xmlChar;
10034}
10035unsafe extern "C" {
10036  pub fn xmlACatalogResolvePublic(catal: xmlCatalogPtr, pubID: *const xmlChar) -> *mut xmlChar;
10037}
10038unsafe extern "C" {
10039  pub fn xmlACatalogResolveURI(catal: xmlCatalogPtr, URI: *const xmlChar) -> *mut xmlChar;
10040}
10041unsafe extern "C" {
10042  pub fn xmlACatalogDump(catal: xmlCatalogPtr, out: *mut FILE);
10043}
10044unsafe extern "C" {
10045  pub fn xmlFreeCatalog(catal: xmlCatalogPtr);
10046}
10047unsafe extern "C" {
10048  pub fn xmlCatalogIsEmpty(catal: xmlCatalogPtr) -> ::std::os::raw::c_int;
10049}
10050unsafe extern "C" {
10051  pub fn xmlInitializeCatalog();
10052}
10053unsafe extern "C" {
10054  pub fn xmlLoadCatalog(filename: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
10055}
10056unsafe extern "C" {
10057  pub fn xmlLoadCatalogs(paths: *const ::std::os::raw::c_char);
10058}
10059unsafe extern "C" {
10060  pub fn xmlCatalogCleanup();
10061}
10062unsafe extern "C" {
10063  pub fn xmlCatalogDump(out: *mut FILE);
10064}
10065unsafe extern "C" {
10066  pub fn xmlCatalogResolve(pubID: *const xmlChar, sysID: *const xmlChar) -> *mut xmlChar;
10067}
10068unsafe extern "C" {
10069  pub fn xmlCatalogResolveSystem(sysID: *const xmlChar) -> *mut xmlChar;
10070}
10071unsafe extern "C" {
10072  pub fn xmlCatalogResolvePublic(pubID: *const xmlChar) -> *mut xmlChar;
10073}
10074unsafe extern "C" {
10075  pub fn xmlCatalogResolveURI(URI: *const xmlChar) -> *mut xmlChar;
10076}
10077unsafe extern "C" {
10078  pub fn xmlCatalogAdd(
10079    type_: *const xmlChar,
10080    orig: *const xmlChar,
10081    replace: *const xmlChar,
10082  ) -> ::std::os::raw::c_int;
10083}
10084unsafe extern "C" {
10085  pub fn xmlCatalogRemove(value: *const xmlChar) -> ::std::os::raw::c_int;
10086}
10087unsafe extern "C" {
10088  pub fn xmlParseCatalogFile(filename: *const ::std::os::raw::c_char) -> xmlDocPtr;
10089}
10090unsafe extern "C" {
10091  pub fn xmlCatalogConvert() -> ::std::os::raw::c_int;
10092}
10093unsafe extern "C" {
10094  pub fn xmlCatalogFreeLocal(catalogs: *mut ::std::os::raw::c_void);
10095}
10096unsafe extern "C" {
10097  pub fn xmlCatalogAddLocal(
10098    catalogs: *mut ::std::os::raw::c_void,
10099    URL: *const xmlChar,
10100  ) -> *mut ::std::os::raw::c_void;
10101}
10102unsafe extern "C" {
10103  pub fn xmlCatalogLocalResolve(
10104    catalogs: *mut ::std::os::raw::c_void,
10105    pubID: *const xmlChar,
10106    sysID: *const xmlChar,
10107  ) -> *mut xmlChar;
10108}
10109unsafe extern "C" {
10110  pub fn xmlCatalogLocalResolveURI(
10111    catalogs: *mut ::std::os::raw::c_void,
10112    URI: *const xmlChar,
10113  ) -> *mut xmlChar;
10114}
10115unsafe extern "C" {
10116  pub fn xmlCatalogSetDebug(level: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
10117}
10118unsafe extern "C" {
10119  pub fn xmlCatalogSetDefaultPrefer(prefer: xmlCatalogPrefer) -> xmlCatalogPrefer;
10120}
10121unsafe extern "C" {
10122  pub fn xmlCatalogSetDefaults(allow: xmlCatalogAllow);
10123}
10124unsafe extern "C" {
10125  pub fn xmlCatalogGetDefaults() -> xmlCatalogAllow;
10126}
10127unsafe extern "C" {
10128  pub fn xmlCatalogGetSystem(sysID: *const xmlChar) -> *const xmlChar;
10129}
10130unsafe extern "C" {
10131  pub fn xmlCatalogGetPublic(pubID: *const xmlChar) -> *const xmlChar;
10132}
10133pub type xmlChSRange = _xmlChSRange;
10134pub type xmlChSRangePtr = *mut xmlChSRange;
10135#[repr(C)]
10136#[derive(Debug, Copy, Clone)]
10137pub struct _xmlChSRange {
10138  pub low: ::std::os::raw::c_ushort,
10139  pub high: ::std::os::raw::c_ushort,
10140}
10141#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10142const _: () = {
10143  ["Size of _xmlChSRange"][::std::mem::size_of::<_xmlChSRange>() - 4usize];
10144  ["Alignment of _xmlChSRange"][::std::mem::align_of::<_xmlChSRange>() - 2usize];
10145  ["Offset of field: _xmlChSRange::low"][::std::mem::offset_of!(_xmlChSRange, low) - 0usize];
10146  ["Offset of field: _xmlChSRange::high"][::std::mem::offset_of!(_xmlChSRange, high) - 2usize];
10147};
10148pub type xmlChLRange = _xmlChLRange;
10149pub type xmlChLRangePtr = *mut xmlChLRange;
10150#[repr(C)]
10151#[derive(Debug, Copy, Clone)]
10152pub struct _xmlChLRange {
10153  pub low: ::std::os::raw::c_uint,
10154  pub high: ::std::os::raw::c_uint,
10155}
10156#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10157const _: () = {
10158  ["Size of _xmlChLRange"][::std::mem::size_of::<_xmlChLRange>() - 8usize];
10159  ["Alignment of _xmlChLRange"][::std::mem::align_of::<_xmlChLRange>() - 4usize];
10160  ["Offset of field: _xmlChLRange::low"][::std::mem::offset_of!(_xmlChLRange, low) - 0usize];
10161  ["Offset of field: _xmlChLRange::high"][::std::mem::offset_of!(_xmlChLRange, high) - 4usize];
10162};
10163pub type xmlChRangeGroup = _xmlChRangeGroup;
10164pub type xmlChRangeGroupPtr = *mut xmlChRangeGroup;
10165#[repr(C)]
10166#[derive(Debug, Copy, Clone)]
10167pub struct _xmlChRangeGroup {
10168  pub nbShortRange: ::std::os::raw::c_int,
10169  pub nbLongRange: ::std::os::raw::c_int,
10170  pub shortRange: *const xmlChSRange,
10171  pub longRange: *const xmlChLRange,
10172}
10173#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10174const _: () = {
10175  ["Size of _xmlChRangeGroup"][::std::mem::size_of::<_xmlChRangeGroup>() - 24usize];
10176  ["Alignment of _xmlChRangeGroup"][::std::mem::align_of::<_xmlChRangeGroup>() - 8usize];
10177  ["Offset of field: _xmlChRangeGroup::nbShortRange"]
10178    [::std::mem::offset_of!(_xmlChRangeGroup, nbShortRange) - 0usize];
10179  ["Offset of field: _xmlChRangeGroup::nbLongRange"]
10180    [::std::mem::offset_of!(_xmlChRangeGroup, nbLongRange) - 4usize];
10181  ["Offset of field: _xmlChRangeGroup::shortRange"]
10182    [::std::mem::offset_of!(_xmlChRangeGroup, shortRange) - 8usize];
10183  ["Offset of field: _xmlChRangeGroup::longRange"]
10184    [::std::mem::offset_of!(_xmlChRangeGroup, longRange) - 16usize];
10185};
10186unsafe extern "C" {
10187  #[doc = " Range checking routine"]
10188  pub fn xmlCharInRange(
10189    val: ::std::os::raw::c_uint,
10190    group: *const xmlChRangeGroup,
10191  ) -> ::std::os::raw::c_int;
10192}
10193unsafe extern "C" {
10194  pub static xmlIsBaseCharGroup: xmlChRangeGroup;
10195}
10196unsafe extern "C" {
10197  pub static xmlIsCharGroup: xmlChRangeGroup;
10198}
10199unsafe extern "C" {
10200  pub static xmlIsCombiningGroup: xmlChRangeGroup;
10201}
10202unsafe extern "C" {
10203  pub static xmlIsDigitGroup: xmlChRangeGroup;
10204}
10205unsafe extern "C" {
10206  pub static xmlIsExtenderGroup: xmlChRangeGroup;
10207}
10208unsafe extern "C" {
10209  pub static xmlIsIdeographicGroup: xmlChRangeGroup;
10210}
10211unsafe extern "C" {
10212  pub static xmlIsPubidChar_tab: [::std::os::raw::c_uchar; 256usize];
10213}
10214unsafe extern "C" {
10215  pub fn xmlIsBaseChar(ch: ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
10216}
10217unsafe extern "C" {
10218  pub fn xmlIsBlank(ch: ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
10219}
10220unsafe extern "C" {
10221  pub fn xmlIsChar(ch: ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
10222}
10223unsafe extern "C" {
10224  pub fn xmlIsCombining(ch: ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
10225}
10226unsafe extern "C" {
10227  pub fn xmlIsDigit(ch: ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
10228}
10229unsafe extern "C" {
10230  pub fn xmlIsExtender(ch: ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
10231}
10232unsafe extern "C" {
10233  pub fn xmlIsIdeographic(ch: ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
10234}
10235unsafe extern "C" {
10236  pub fn xmlIsPubidChar(ch: ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
10237}
10238#[doc = " xmlParserCtxt:\n\n The parser context.\n NOTE This doesn't completely define the parser state, the (current ?)\n      design of the parser uses recursive function calls since this allow\n      and easy mapping from the production rules of the specification\n      to the actual code. The drawback is that the actual function call\n      also reflect the parser state. However most of the parsing routines\n      takes as the only argument the parser context pointer, so migrating\n      to a state based parser for progressive parsing shouldn't be too hard."]
10239pub type htmlParserCtxt = xmlParserCtxt;
10240pub type htmlParserCtxtPtr = xmlParserCtxtPtr;
10241pub type htmlParserNodeInfo = xmlParserNodeInfo;
10242pub type htmlSAXHandler = xmlSAXHandler;
10243pub type htmlSAXHandlerPtr = xmlSAXHandlerPtr;
10244pub type htmlParserInput = xmlParserInput;
10245pub type htmlParserInputPtr = xmlParserInputPtr;
10246pub type htmlDocPtr = xmlDocPtr;
10247pub type htmlNodePtr = xmlNodePtr;
10248pub type htmlElemDesc = _htmlElemDesc;
10249pub type htmlElemDescPtr = *mut htmlElemDesc;
10250#[repr(C)]
10251#[derive(Debug, Copy, Clone)]
10252pub struct _htmlElemDesc {
10253  pub name: *const ::std::os::raw::c_char,
10254  pub startTag: ::std::os::raw::c_char,
10255  pub endTag: ::std::os::raw::c_char,
10256  pub saveEndTag: ::std::os::raw::c_char,
10257  pub empty: ::std::os::raw::c_char,
10258  pub depr: ::std::os::raw::c_char,
10259  pub dtd: ::std::os::raw::c_char,
10260  pub isinline: ::std::os::raw::c_char,
10261  pub desc: *const ::std::os::raw::c_char,
10262  pub subelts: *mut *const ::std::os::raw::c_char,
10263  pub defaultsubelt: *const ::std::os::raw::c_char,
10264  pub attrs_opt: *mut *const ::std::os::raw::c_char,
10265  pub attrs_depr: *mut *const ::std::os::raw::c_char,
10266  pub attrs_req: *mut *const ::std::os::raw::c_char,
10267}
10268#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10269const _: () = {
10270  ["Size of _htmlElemDesc"][::std::mem::size_of::<_htmlElemDesc>() - 64usize];
10271  ["Alignment of _htmlElemDesc"][::std::mem::align_of::<_htmlElemDesc>() - 8usize];
10272  ["Offset of field: _htmlElemDesc::name"][::std::mem::offset_of!(_htmlElemDesc, name) - 0usize];
10273  ["Offset of field: _htmlElemDesc::startTag"]
10274    [::std::mem::offset_of!(_htmlElemDesc, startTag) - 8usize];
10275  ["Offset of field: _htmlElemDesc::endTag"]
10276    [::std::mem::offset_of!(_htmlElemDesc, endTag) - 9usize];
10277  ["Offset of field: _htmlElemDesc::saveEndTag"]
10278    [::std::mem::offset_of!(_htmlElemDesc, saveEndTag) - 10usize];
10279  ["Offset of field: _htmlElemDesc::empty"][::std::mem::offset_of!(_htmlElemDesc, empty) - 11usize];
10280  ["Offset of field: _htmlElemDesc::depr"][::std::mem::offset_of!(_htmlElemDesc, depr) - 12usize];
10281  ["Offset of field: _htmlElemDesc::dtd"][::std::mem::offset_of!(_htmlElemDesc, dtd) - 13usize];
10282  ["Offset of field: _htmlElemDesc::isinline"]
10283    [::std::mem::offset_of!(_htmlElemDesc, isinline) - 14usize];
10284  ["Offset of field: _htmlElemDesc::desc"][::std::mem::offset_of!(_htmlElemDesc, desc) - 16usize];
10285  ["Offset of field: _htmlElemDesc::subelts"]
10286    [::std::mem::offset_of!(_htmlElemDesc, subelts) - 24usize];
10287  ["Offset of field: _htmlElemDesc::defaultsubelt"]
10288    [::std::mem::offset_of!(_htmlElemDesc, defaultsubelt) - 32usize];
10289  ["Offset of field: _htmlElemDesc::attrs_opt"]
10290    [::std::mem::offset_of!(_htmlElemDesc, attrs_opt) - 40usize];
10291  ["Offset of field: _htmlElemDesc::attrs_depr"]
10292    [::std::mem::offset_of!(_htmlElemDesc, attrs_depr) - 48usize];
10293  ["Offset of field: _htmlElemDesc::attrs_req"]
10294    [::std::mem::offset_of!(_htmlElemDesc, attrs_req) - 56usize];
10295};
10296pub type htmlEntityDesc = _htmlEntityDesc;
10297pub type htmlEntityDescPtr = *mut htmlEntityDesc;
10298#[repr(C)]
10299#[derive(Debug, Copy, Clone)]
10300pub struct _htmlEntityDesc {
10301  pub value: ::std::os::raw::c_uint,
10302  pub name: *const ::std::os::raw::c_char,
10303  pub desc: *const ::std::os::raw::c_char,
10304}
10305#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10306const _: () = {
10307  ["Size of _htmlEntityDesc"][::std::mem::size_of::<_htmlEntityDesc>() - 24usize];
10308  ["Alignment of _htmlEntityDesc"][::std::mem::align_of::<_htmlEntityDesc>() - 8usize];
10309  ["Offset of field: _htmlEntityDesc::value"]
10310    [::std::mem::offset_of!(_htmlEntityDesc, value) - 0usize];
10311  ["Offset of field: _htmlEntityDesc::name"]
10312    [::std::mem::offset_of!(_htmlEntityDesc, name) - 8usize];
10313  ["Offset of field: _htmlEntityDesc::desc"]
10314    [::std::mem::offset_of!(_htmlEntityDesc, desc) - 16usize];
10315};
10316unsafe extern "C" {
10317  pub fn htmlTagLookup(tag: *const xmlChar) -> *const htmlElemDesc;
10318}
10319unsafe extern "C" {
10320  pub fn htmlEntityLookup(name: *const xmlChar) -> *const htmlEntityDesc;
10321}
10322unsafe extern "C" {
10323  pub fn htmlEntityValueLookup(value: ::std::os::raw::c_uint) -> *const htmlEntityDesc;
10324}
10325unsafe extern "C" {
10326  pub fn htmlIsAutoClosed(doc: htmlDocPtr, elem: htmlNodePtr) -> ::std::os::raw::c_int;
10327}
10328unsafe extern "C" {
10329  pub fn htmlAutoCloseTag(
10330    doc: htmlDocPtr,
10331    name: *const xmlChar,
10332    elem: htmlNodePtr,
10333  ) -> ::std::os::raw::c_int;
10334}
10335unsafe extern "C" {
10336  pub fn htmlParseEntityRef(
10337    ctxt: htmlParserCtxtPtr,
10338    str_: *mut *const xmlChar,
10339  ) -> *const htmlEntityDesc;
10340}
10341unsafe extern "C" {
10342  pub fn htmlParseCharRef(ctxt: htmlParserCtxtPtr) -> ::std::os::raw::c_int;
10343}
10344unsafe extern "C" {
10345  pub fn htmlParseElement(ctxt: htmlParserCtxtPtr);
10346}
10347unsafe extern "C" {
10348  pub fn htmlNewParserCtxt() -> htmlParserCtxtPtr;
10349}
10350unsafe extern "C" {
10351  pub fn htmlCreateMemoryParserCtxt(
10352    buffer: *const ::std::os::raw::c_char,
10353    size: ::std::os::raw::c_int,
10354  ) -> htmlParserCtxtPtr;
10355}
10356unsafe extern "C" {
10357  pub fn htmlParseDocument(ctxt: htmlParserCtxtPtr) -> ::std::os::raw::c_int;
10358}
10359unsafe extern "C" {
10360  pub fn htmlSAXParseDoc(
10361    cur: *const xmlChar,
10362    encoding: *const ::std::os::raw::c_char,
10363    sax: htmlSAXHandlerPtr,
10364    userData: *mut ::std::os::raw::c_void,
10365  ) -> htmlDocPtr;
10366}
10367unsafe extern "C" {
10368  pub fn htmlParseDoc(cur: *const xmlChar, encoding: *const ::std::os::raw::c_char) -> htmlDocPtr;
10369}
10370unsafe extern "C" {
10371  pub fn htmlSAXParseFile(
10372    filename: *const ::std::os::raw::c_char,
10373    encoding: *const ::std::os::raw::c_char,
10374    sax: htmlSAXHandlerPtr,
10375    userData: *mut ::std::os::raw::c_void,
10376  ) -> htmlDocPtr;
10377}
10378unsafe extern "C" {
10379  pub fn htmlParseFile(
10380    filename: *const ::std::os::raw::c_char,
10381    encoding: *const ::std::os::raw::c_char,
10382  ) -> htmlDocPtr;
10383}
10384unsafe extern "C" {
10385  pub fn UTF8ToHtml(
10386    out: *mut ::std::os::raw::c_uchar,
10387    outlen: *mut ::std::os::raw::c_int,
10388    in_: *const ::std::os::raw::c_uchar,
10389    inlen: *mut ::std::os::raw::c_int,
10390  ) -> ::std::os::raw::c_int;
10391}
10392unsafe extern "C" {
10393  pub fn htmlEncodeEntities(
10394    out: *mut ::std::os::raw::c_uchar,
10395    outlen: *mut ::std::os::raw::c_int,
10396    in_: *const ::std::os::raw::c_uchar,
10397    inlen: *mut ::std::os::raw::c_int,
10398    quoteChar: ::std::os::raw::c_int,
10399  ) -> ::std::os::raw::c_int;
10400}
10401unsafe extern "C" {
10402  pub fn htmlIsScriptAttribute(name: *const xmlChar) -> ::std::os::raw::c_int;
10403}
10404unsafe extern "C" {
10405  pub fn htmlHandleOmittedElem(val: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
10406}
10407unsafe extern "C" {
10408  #[doc = " Interfaces for the Push mode."]
10409  pub fn htmlCreatePushParserCtxt(
10410    sax: htmlSAXHandlerPtr,
10411    user_data: *mut ::std::os::raw::c_void,
10412    chunk: *const ::std::os::raw::c_char,
10413    size: ::std::os::raw::c_int,
10414    filename: *const ::std::os::raw::c_char,
10415    enc: xmlCharEncoding,
10416  ) -> htmlParserCtxtPtr;
10417}
10418unsafe extern "C" {
10419  pub fn htmlParseChunk(
10420    ctxt: htmlParserCtxtPtr,
10421    chunk: *const ::std::os::raw::c_char,
10422    size: ::std::os::raw::c_int,
10423    terminate: ::std::os::raw::c_int,
10424  ) -> ::std::os::raw::c_int;
10425}
10426unsafe extern "C" {
10427  pub fn htmlFreeParserCtxt(ctxt: htmlParserCtxtPtr);
10428}
10429pub const htmlParserOption_HTML_PARSE_RECOVER: htmlParserOption = 1;
10430pub const htmlParserOption_HTML_PARSE_NODEFDTD: htmlParserOption = 4;
10431pub const htmlParserOption_HTML_PARSE_NOERROR: htmlParserOption = 32;
10432pub const htmlParserOption_HTML_PARSE_NOWARNING: htmlParserOption = 64;
10433pub const htmlParserOption_HTML_PARSE_PEDANTIC: htmlParserOption = 128;
10434pub const htmlParserOption_HTML_PARSE_NOBLANKS: htmlParserOption = 256;
10435pub const htmlParserOption_HTML_PARSE_NONET: htmlParserOption = 2048;
10436pub const htmlParserOption_HTML_PARSE_NOIMPLIED: htmlParserOption = 8192;
10437pub const htmlParserOption_HTML_PARSE_COMPACT: htmlParserOption = 65536;
10438pub const htmlParserOption_HTML_PARSE_IGNORE_ENC: htmlParserOption = 2097152;
10439#[doc = " xmlParserOption:\n\n This is the set of XML parser options that can be passed down\n to the xmlReadDoc() and similar calls."]
10440pub type htmlParserOption = ::std::os::raw::c_uint;
10441unsafe extern "C" {
10442  pub fn htmlCtxtReset(ctxt: htmlParserCtxtPtr);
10443}
10444unsafe extern "C" {
10445  pub fn htmlCtxtUseOptions(
10446    ctxt: htmlParserCtxtPtr,
10447    options: ::std::os::raw::c_int,
10448  ) -> ::std::os::raw::c_int;
10449}
10450unsafe extern "C" {
10451  pub fn htmlReadDoc(
10452    cur: *const xmlChar,
10453    URL: *const ::std::os::raw::c_char,
10454    encoding: *const ::std::os::raw::c_char,
10455    options: ::std::os::raw::c_int,
10456  ) -> htmlDocPtr;
10457}
10458unsafe extern "C" {
10459  pub fn htmlReadFile(
10460    URL: *const ::std::os::raw::c_char,
10461    encoding: *const ::std::os::raw::c_char,
10462    options: ::std::os::raw::c_int,
10463  ) -> htmlDocPtr;
10464}
10465unsafe extern "C" {
10466  pub fn htmlReadMemory(
10467    buffer: *const ::std::os::raw::c_char,
10468    size: ::std::os::raw::c_int,
10469    URL: *const ::std::os::raw::c_char,
10470    encoding: *const ::std::os::raw::c_char,
10471    options: ::std::os::raw::c_int,
10472  ) -> htmlDocPtr;
10473}
10474unsafe extern "C" {
10475  pub fn htmlReadFd(
10476    fd: ::std::os::raw::c_int,
10477    URL: *const ::std::os::raw::c_char,
10478    encoding: *const ::std::os::raw::c_char,
10479    options: ::std::os::raw::c_int,
10480  ) -> htmlDocPtr;
10481}
10482unsafe extern "C" {
10483  pub fn htmlReadIO(
10484    ioread: xmlInputReadCallback,
10485    ioclose: xmlInputCloseCallback,
10486    ioctx: *mut ::std::os::raw::c_void,
10487    URL: *const ::std::os::raw::c_char,
10488    encoding: *const ::std::os::raw::c_char,
10489    options: ::std::os::raw::c_int,
10490  ) -> htmlDocPtr;
10491}
10492unsafe extern "C" {
10493  pub fn htmlCtxtReadDoc(
10494    ctxt: xmlParserCtxtPtr,
10495    cur: *const xmlChar,
10496    URL: *const ::std::os::raw::c_char,
10497    encoding: *const ::std::os::raw::c_char,
10498    options: ::std::os::raw::c_int,
10499  ) -> htmlDocPtr;
10500}
10501unsafe extern "C" {
10502  pub fn htmlCtxtReadFile(
10503    ctxt: xmlParserCtxtPtr,
10504    filename: *const ::std::os::raw::c_char,
10505    encoding: *const ::std::os::raw::c_char,
10506    options: ::std::os::raw::c_int,
10507  ) -> htmlDocPtr;
10508}
10509unsafe extern "C" {
10510  pub fn htmlCtxtReadMemory(
10511    ctxt: xmlParserCtxtPtr,
10512    buffer: *const ::std::os::raw::c_char,
10513    size: ::std::os::raw::c_int,
10514    URL: *const ::std::os::raw::c_char,
10515    encoding: *const ::std::os::raw::c_char,
10516    options: ::std::os::raw::c_int,
10517  ) -> htmlDocPtr;
10518}
10519unsafe extern "C" {
10520  pub fn htmlCtxtReadFd(
10521    ctxt: xmlParserCtxtPtr,
10522    fd: ::std::os::raw::c_int,
10523    URL: *const ::std::os::raw::c_char,
10524    encoding: *const ::std::os::raw::c_char,
10525    options: ::std::os::raw::c_int,
10526  ) -> htmlDocPtr;
10527}
10528unsafe extern "C" {
10529  pub fn htmlCtxtReadIO(
10530    ctxt: xmlParserCtxtPtr,
10531    ioread: xmlInputReadCallback,
10532    ioclose: xmlInputCloseCallback,
10533    ioctx: *mut ::std::os::raw::c_void,
10534    URL: *const ::std::os::raw::c_char,
10535    encoding: *const ::std::os::raw::c_char,
10536    options: ::std::os::raw::c_int,
10537  ) -> htmlDocPtr;
10538}
10539pub const htmlStatus_HTML_NA: htmlStatus = 0;
10540pub const htmlStatus_HTML_INVALID: htmlStatus = 1;
10541pub const htmlStatus_HTML_DEPRECATED: htmlStatus = 2;
10542pub const htmlStatus_HTML_VALID: htmlStatus = 4;
10543pub const htmlStatus_HTML_REQUIRED: htmlStatus = 12;
10544pub type htmlStatus = ::std::os::raw::c_uint;
10545unsafe extern "C" {
10546  pub fn htmlAttrAllowed(
10547    arg1: *const htmlElemDesc,
10548    arg2: *const xmlChar,
10549    arg3: ::std::os::raw::c_int,
10550  ) -> htmlStatus;
10551}
10552unsafe extern "C" {
10553  pub fn htmlElementAllowedHere(
10554    arg1: *const htmlElemDesc,
10555    arg2: *const xmlChar,
10556  ) -> ::std::os::raw::c_int;
10557}
10558unsafe extern "C" {
10559  pub fn htmlElementStatusHere(arg1: *const htmlElemDesc, arg2: *const htmlElemDesc) -> htmlStatus;
10560}
10561unsafe extern "C" {
10562  pub fn htmlNodeStatus(arg1: htmlNodePtr, arg2: ::std::os::raw::c_int) -> htmlStatus;
10563}
10564unsafe extern "C" {
10565  pub fn htmlNewDoc(URI: *const xmlChar, ExternalID: *const xmlChar) -> htmlDocPtr;
10566}
10567unsafe extern "C" {
10568  pub fn htmlNewDocNoDtD(URI: *const xmlChar, ExternalID: *const xmlChar) -> htmlDocPtr;
10569}
10570unsafe extern "C" {
10571  pub fn htmlGetMetaEncoding(doc: htmlDocPtr) -> *const xmlChar;
10572}
10573unsafe extern "C" {
10574  pub fn htmlSetMetaEncoding(doc: htmlDocPtr, encoding: *const xmlChar) -> ::std::os::raw::c_int;
10575}
10576unsafe extern "C" {
10577  pub fn htmlDocDumpMemory(
10578    cur: xmlDocPtr,
10579    mem: *mut *mut xmlChar,
10580    size: *mut ::std::os::raw::c_int,
10581  );
10582}
10583unsafe extern "C" {
10584  pub fn htmlDocDumpMemoryFormat(
10585    cur: xmlDocPtr,
10586    mem: *mut *mut xmlChar,
10587    size: *mut ::std::os::raw::c_int,
10588    format: ::std::os::raw::c_int,
10589  );
10590}
10591unsafe extern "C" {
10592  pub fn htmlDocDump(f: *mut FILE, cur: xmlDocPtr) -> ::std::os::raw::c_int;
10593}
10594unsafe extern "C" {
10595  pub fn htmlSaveFile(
10596    filename: *const ::std::os::raw::c_char,
10597    cur: xmlDocPtr,
10598  ) -> ::std::os::raw::c_int;
10599}
10600unsafe extern "C" {
10601  pub fn htmlNodeDump(buf: xmlBufferPtr, doc: xmlDocPtr, cur: xmlNodePtr) -> ::std::os::raw::c_int;
10602}
10603unsafe extern "C" {
10604  pub fn htmlNodeDumpFile(out: *mut FILE, doc: xmlDocPtr, cur: xmlNodePtr);
10605}
10606unsafe extern "C" {
10607  pub fn htmlNodeDumpFileFormat(
10608    out: *mut FILE,
10609    doc: xmlDocPtr,
10610    cur: xmlNodePtr,
10611    encoding: *const ::std::os::raw::c_char,
10612    format: ::std::os::raw::c_int,
10613  ) -> ::std::os::raw::c_int;
10614}
10615unsafe extern "C" {
10616  pub fn htmlSaveFileEnc(
10617    filename: *const ::std::os::raw::c_char,
10618    cur: xmlDocPtr,
10619    encoding: *const ::std::os::raw::c_char,
10620  ) -> ::std::os::raw::c_int;
10621}
10622unsafe extern "C" {
10623  pub fn htmlSaveFileFormat(
10624    filename: *const ::std::os::raw::c_char,
10625    cur: xmlDocPtr,
10626    encoding: *const ::std::os::raw::c_char,
10627    format: ::std::os::raw::c_int,
10628  ) -> ::std::os::raw::c_int;
10629}
10630unsafe extern "C" {
10631  pub fn htmlNodeDumpFormatOutput(
10632    buf: xmlOutputBufferPtr,
10633    doc: xmlDocPtr,
10634    cur: xmlNodePtr,
10635    encoding: *const ::std::os::raw::c_char,
10636    format: ::std::os::raw::c_int,
10637  );
10638}
10639unsafe extern "C" {
10640  pub fn htmlDocContentDumpOutput(
10641    buf: xmlOutputBufferPtr,
10642    cur: xmlDocPtr,
10643    encoding: *const ::std::os::raw::c_char,
10644  );
10645}
10646unsafe extern "C" {
10647  pub fn htmlDocContentDumpFormatOutput(
10648    buf: xmlOutputBufferPtr,
10649    cur: xmlDocPtr,
10650    encoding: *const ::std::os::raw::c_char,
10651    format: ::std::os::raw::c_int,
10652  );
10653}
10654unsafe extern "C" {
10655  pub fn htmlNodeDumpOutput(
10656    buf: xmlOutputBufferPtr,
10657    doc: xmlDocPtr,
10658    cur: xmlNodePtr,
10659    encoding: *const ::std::os::raw::c_char,
10660  );
10661}
10662unsafe extern "C" {
10663  pub fn htmlIsBooleanAttr(name: *const xmlChar) -> ::std::os::raw::c_int;
10664}
10665#[doc = " ftpListCallback:\n @userData:  user provided data for the callback\n @filename:  the file name (including \"->\" when links are shown)\n @attrib:  the attribute string\n @owner:  the owner string\n @group:  the group string\n @size:  the file size\n @links:  the link count\n @year:  the year\n @month:  the month\n @day:  the day\n @hour:  the hour\n @minute:  the minute\n\n A callback for the xmlNanoFTPList command.\n Note that only one of year and day:minute are specified."]
10666pub type ftpListCallback = ::std::option::Option<
10667  unsafe extern "C" fn(
10668    userData: *mut ::std::os::raw::c_void,
10669    filename: *const ::std::os::raw::c_char,
10670    attrib: *const ::std::os::raw::c_char,
10671    owner: *const ::std::os::raw::c_char,
10672    group: *const ::std::os::raw::c_char,
10673    size: ::std::os::raw::c_ulong,
10674    links: ::std::os::raw::c_int,
10675    year: ::std::os::raw::c_int,
10676    month: *const ::std::os::raw::c_char,
10677    day: ::std::os::raw::c_int,
10678    hour: ::std::os::raw::c_int,
10679    minute: ::std::os::raw::c_int,
10680  ),
10681>;
10682#[doc = " ftpDataCallback:\n @userData: the user provided context\n @data: the data received\n @len: its size in bytes\n\n A callback for the xmlNanoFTPGet command."]
10683pub type ftpDataCallback = ::std::option::Option<
10684  unsafe extern "C" fn(
10685    userData: *mut ::std::os::raw::c_void,
10686    data: *const ::std::os::raw::c_char,
10687    len: ::std::os::raw::c_int,
10688  ),
10689>;
10690unsafe extern "C" {
10691  pub fn xmlNanoFTPInit();
10692}
10693unsafe extern "C" {
10694  pub fn xmlNanoFTPCleanup();
10695}
10696unsafe extern "C" {
10697  pub fn xmlNanoFTPNewCtxt(URL: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_void;
10698}
10699unsafe extern "C" {
10700  pub fn xmlNanoFTPFreeCtxt(ctx: *mut ::std::os::raw::c_void);
10701}
10702unsafe extern "C" {
10703  pub fn xmlNanoFTPConnectTo(
10704    server: *const ::std::os::raw::c_char,
10705    port: ::std::os::raw::c_int,
10706  ) -> *mut ::std::os::raw::c_void;
10707}
10708unsafe extern "C" {
10709  pub fn xmlNanoFTPOpen(URL: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_void;
10710}
10711unsafe extern "C" {
10712  pub fn xmlNanoFTPConnect(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
10713}
10714unsafe extern "C" {
10715  pub fn xmlNanoFTPClose(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
10716}
10717unsafe extern "C" {
10718  pub fn xmlNanoFTPQuit(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
10719}
10720unsafe extern "C" {
10721  pub fn xmlNanoFTPScanProxy(URL: *const ::std::os::raw::c_char);
10722}
10723unsafe extern "C" {
10724  pub fn xmlNanoFTPProxy(
10725    host: *const ::std::os::raw::c_char,
10726    port: ::std::os::raw::c_int,
10727    user: *const ::std::os::raw::c_char,
10728    passwd: *const ::std::os::raw::c_char,
10729    type_: ::std::os::raw::c_int,
10730  );
10731}
10732unsafe extern "C" {
10733  pub fn xmlNanoFTPUpdateURL(
10734    ctx: *mut ::std::os::raw::c_void,
10735    URL: *const ::std::os::raw::c_char,
10736  ) -> ::std::os::raw::c_int;
10737}
10738unsafe extern "C" {
10739  pub fn xmlNanoFTPGetResponse(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
10740}
10741unsafe extern "C" {
10742  pub fn xmlNanoFTPCheckResponse(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
10743}
10744unsafe extern "C" {
10745  pub fn xmlNanoFTPCwd(
10746    ctx: *mut ::std::os::raw::c_void,
10747    directory: *const ::std::os::raw::c_char,
10748  ) -> ::std::os::raw::c_int;
10749}
10750unsafe extern "C" {
10751  pub fn xmlNanoFTPDele(
10752    ctx: *mut ::std::os::raw::c_void,
10753    file: *const ::std::os::raw::c_char,
10754  ) -> ::std::os::raw::c_int;
10755}
10756unsafe extern "C" {
10757  pub fn xmlNanoFTPGetConnection(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
10758}
10759unsafe extern "C" {
10760  pub fn xmlNanoFTPCloseConnection(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
10761}
10762unsafe extern "C" {
10763  pub fn xmlNanoFTPList(
10764    ctx: *mut ::std::os::raw::c_void,
10765    callback: ftpListCallback,
10766    userData: *mut ::std::os::raw::c_void,
10767    filename: *const ::std::os::raw::c_char,
10768  ) -> ::std::os::raw::c_int;
10769}
10770unsafe extern "C" {
10771  pub fn xmlNanoFTPGetSocket(
10772    ctx: *mut ::std::os::raw::c_void,
10773    filename: *const ::std::os::raw::c_char,
10774  ) -> ::std::os::raw::c_int;
10775}
10776unsafe extern "C" {
10777  pub fn xmlNanoFTPGet(
10778    ctx: *mut ::std::os::raw::c_void,
10779    callback: ftpDataCallback,
10780    userData: *mut ::std::os::raw::c_void,
10781    filename: *const ::std::os::raw::c_char,
10782  ) -> ::std::os::raw::c_int;
10783}
10784unsafe extern "C" {
10785  pub fn xmlNanoFTPRead(
10786    ctx: *mut ::std::os::raw::c_void,
10787    dest: *mut ::std::os::raw::c_void,
10788    len: ::std::os::raw::c_int,
10789  ) -> ::std::os::raw::c_int;
10790}
10791unsafe extern "C" {
10792  pub fn xmlNanoHTTPInit();
10793}
10794unsafe extern "C" {
10795  pub fn xmlNanoHTTPCleanup();
10796}
10797unsafe extern "C" {
10798  pub fn xmlNanoHTTPScanProxy(URL: *const ::std::os::raw::c_char);
10799}
10800unsafe extern "C" {
10801  pub fn xmlNanoHTTPFetch(
10802    URL: *const ::std::os::raw::c_char,
10803    filename: *const ::std::os::raw::c_char,
10804    contentType: *mut *mut ::std::os::raw::c_char,
10805  ) -> ::std::os::raw::c_int;
10806}
10807unsafe extern "C" {
10808  pub fn xmlNanoHTTPMethod(
10809    URL: *const ::std::os::raw::c_char,
10810    method: *const ::std::os::raw::c_char,
10811    input: *const ::std::os::raw::c_char,
10812    contentType: *mut *mut ::std::os::raw::c_char,
10813    headers: *const ::std::os::raw::c_char,
10814    ilen: ::std::os::raw::c_int,
10815  ) -> *mut ::std::os::raw::c_void;
10816}
10817unsafe extern "C" {
10818  pub fn xmlNanoHTTPMethodRedir(
10819    URL: *const ::std::os::raw::c_char,
10820    method: *const ::std::os::raw::c_char,
10821    input: *const ::std::os::raw::c_char,
10822    contentType: *mut *mut ::std::os::raw::c_char,
10823    redir: *mut *mut ::std::os::raw::c_char,
10824    headers: *const ::std::os::raw::c_char,
10825    ilen: ::std::os::raw::c_int,
10826  ) -> *mut ::std::os::raw::c_void;
10827}
10828unsafe extern "C" {
10829  pub fn xmlNanoHTTPOpen(
10830    URL: *const ::std::os::raw::c_char,
10831    contentType: *mut *mut ::std::os::raw::c_char,
10832  ) -> *mut ::std::os::raw::c_void;
10833}
10834unsafe extern "C" {
10835  pub fn xmlNanoHTTPOpenRedir(
10836    URL: *const ::std::os::raw::c_char,
10837    contentType: *mut *mut ::std::os::raw::c_char,
10838    redir: *mut *mut ::std::os::raw::c_char,
10839  ) -> *mut ::std::os::raw::c_void;
10840}
10841unsafe extern "C" {
10842  pub fn xmlNanoHTTPReturnCode(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
10843}
10844unsafe extern "C" {
10845  pub fn xmlNanoHTTPAuthHeader(ctx: *mut ::std::os::raw::c_void) -> *const ::std::os::raw::c_char;
10846}
10847unsafe extern "C" {
10848  pub fn xmlNanoHTTPRedir(ctx: *mut ::std::os::raw::c_void) -> *const ::std::os::raw::c_char;
10849}
10850unsafe extern "C" {
10851  pub fn xmlNanoHTTPContentLength(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
10852}
10853unsafe extern "C" {
10854  pub fn xmlNanoHTTPEncoding(ctx: *mut ::std::os::raw::c_void) -> *const ::std::os::raw::c_char;
10855}
10856unsafe extern "C" {
10857  pub fn xmlNanoHTTPMimeType(ctx: *mut ::std::os::raw::c_void) -> *const ::std::os::raw::c_char;
10858}
10859unsafe extern "C" {
10860  pub fn xmlNanoHTTPRead(
10861    ctx: *mut ::std::os::raw::c_void,
10862    dest: *mut ::std::os::raw::c_void,
10863    len: ::std::os::raw::c_int,
10864  ) -> ::std::os::raw::c_int;
10865}
10866unsafe extern "C" {
10867  pub fn xmlNanoHTTPSave(
10868    ctxt: *mut ::std::os::raw::c_void,
10869    filename: *const ::std::os::raw::c_char,
10870  ) -> ::std::os::raw::c_int;
10871}
10872unsafe extern "C" {
10873  pub fn xmlNanoHTTPClose(ctx: *mut ::std::os::raw::c_void);
10874}
10875unsafe extern "C" {
10876  #[doc = " xmlParserMaxDepth:\n\n arbitrary depth limit for the XML documents that we allow to\n process. This is not a limitation of the parser but a safety\n boundary feature, use XML_PARSE_HUGE option to override it."]
10877  pub static mut xmlParserMaxDepth: ::std::os::raw::c_uint;
10878}
10879unsafe extern "C" {
10880  #[doc = " Global variables used for predefined strings."]
10881  pub static xmlStringText: [xmlChar; 0usize];
10882}
10883unsafe extern "C" {
10884  pub static xmlStringTextNoenc: [xmlChar; 0usize];
10885}
10886unsafe extern "C" {
10887  pub static xmlStringComment: [xmlChar; 0usize];
10888}
10889unsafe extern "C" {
10890  pub fn xmlIsLetter(c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
10891}
10892unsafe extern "C" {
10893  #[doc = " Parser context."]
10894  pub fn xmlCreateFileParserCtxt(filename: *const ::std::os::raw::c_char) -> xmlParserCtxtPtr;
10895}
10896unsafe extern "C" {
10897  pub fn xmlCreateURLParserCtxt(
10898    filename: *const ::std::os::raw::c_char,
10899    options: ::std::os::raw::c_int,
10900  ) -> xmlParserCtxtPtr;
10901}
10902unsafe extern "C" {
10903  pub fn xmlCreateMemoryParserCtxt(
10904    buffer: *const ::std::os::raw::c_char,
10905    size: ::std::os::raw::c_int,
10906  ) -> xmlParserCtxtPtr;
10907}
10908unsafe extern "C" {
10909  pub fn xmlCreateEntityParserCtxt(
10910    URL: *const xmlChar,
10911    ID: *const xmlChar,
10912    base: *const xmlChar,
10913  ) -> xmlParserCtxtPtr;
10914}
10915unsafe extern "C" {
10916  pub fn xmlSwitchEncoding(ctxt: xmlParserCtxtPtr, enc: xmlCharEncoding) -> ::std::os::raw::c_int;
10917}
10918unsafe extern "C" {
10919  pub fn xmlSwitchToEncoding(
10920    ctxt: xmlParserCtxtPtr,
10921    handler: xmlCharEncodingHandlerPtr,
10922  ) -> ::std::os::raw::c_int;
10923}
10924unsafe extern "C" {
10925  pub fn xmlSwitchInputEncoding(
10926    ctxt: xmlParserCtxtPtr,
10927    input: xmlParserInputPtr,
10928    handler: xmlCharEncodingHandlerPtr,
10929  ) -> ::std::os::raw::c_int;
10930}
10931unsafe extern "C" {
10932  #[doc = " Input Streams."]
10933  pub fn xmlNewStringInputStream(
10934    ctxt: xmlParserCtxtPtr,
10935    buffer: *const xmlChar,
10936  ) -> xmlParserInputPtr;
10937}
10938unsafe extern "C" {
10939  pub fn xmlNewEntityInputStream(ctxt: xmlParserCtxtPtr, entity: xmlEntityPtr)
10940  -> xmlParserInputPtr;
10941}
10942unsafe extern "C" {
10943  pub fn xmlPushInput(ctxt: xmlParserCtxtPtr, input: xmlParserInputPtr) -> ::std::os::raw::c_int;
10944}
10945unsafe extern "C" {
10946  pub fn xmlPopInput(ctxt: xmlParserCtxtPtr) -> xmlChar;
10947}
10948unsafe extern "C" {
10949  pub fn xmlFreeInputStream(input: xmlParserInputPtr);
10950}
10951unsafe extern "C" {
10952  pub fn xmlNewInputFromFile(
10953    ctxt: xmlParserCtxtPtr,
10954    filename: *const ::std::os::raw::c_char,
10955  ) -> xmlParserInputPtr;
10956}
10957unsafe extern "C" {
10958  pub fn xmlNewInputStream(ctxt: xmlParserCtxtPtr) -> xmlParserInputPtr;
10959}
10960unsafe extern "C" {
10961  #[doc = " Namespaces."]
10962  pub fn xmlSplitQName(
10963    ctxt: xmlParserCtxtPtr,
10964    name: *const xmlChar,
10965    prefix: *mut *mut xmlChar,
10966  ) -> *mut xmlChar;
10967}
10968unsafe extern "C" {
10969  #[doc = " Generic production rules."]
10970  pub fn xmlParseName(ctxt: xmlParserCtxtPtr) -> *const xmlChar;
10971}
10972unsafe extern "C" {
10973  pub fn xmlParseNmtoken(ctxt: xmlParserCtxtPtr) -> *mut xmlChar;
10974}
10975unsafe extern "C" {
10976  pub fn xmlParseEntityValue(ctxt: xmlParserCtxtPtr, orig: *mut *mut xmlChar) -> *mut xmlChar;
10977}
10978unsafe extern "C" {
10979  pub fn xmlParseAttValue(ctxt: xmlParserCtxtPtr) -> *mut xmlChar;
10980}
10981unsafe extern "C" {
10982  pub fn xmlParseSystemLiteral(ctxt: xmlParserCtxtPtr) -> *mut xmlChar;
10983}
10984unsafe extern "C" {
10985  pub fn xmlParsePubidLiteral(ctxt: xmlParserCtxtPtr) -> *mut xmlChar;
10986}
10987unsafe extern "C" {
10988  pub fn xmlParseCharData(ctxt: xmlParserCtxtPtr, cdata: ::std::os::raw::c_int);
10989}
10990unsafe extern "C" {
10991  pub fn xmlParseExternalID(
10992    ctxt: xmlParserCtxtPtr,
10993    publicID: *mut *mut xmlChar,
10994    strict: ::std::os::raw::c_int,
10995  ) -> *mut xmlChar;
10996}
10997unsafe extern "C" {
10998  pub fn xmlParseComment(ctxt: xmlParserCtxtPtr);
10999}
11000unsafe extern "C" {
11001  pub fn xmlParsePITarget(ctxt: xmlParserCtxtPtr) -> *const xmlChar;
11002}
11003unsafe extern "C" {
11004  pub fn xmlParsePI(ctxt: xmlParserCtxtPtr);
11005}
11006unsafe extern "C" {
11007  pub fn xmlParseNotationDecl(ctxt: xmlParserCtxtPtr);
11008}
11009unsafe extern "C" {
11010  pub fn xmlParseEntityDecl(ctxt: xmlParserCtxtPtr);
11011}
11012unsafe extern "C" {
11013  pub fn xmlParseDefaultDecl(
11014    ctxt: xmlParserCtxtPtr,
11015    value: *mut *mut xmlChar,
11016  ) -> ::std::os::raw::c_int;
11017}
11018unsafe extern "C" {
11019  pub fn xmlParseNotationType(ctxt: xmlParserCtxtPtr) -> xmlEnumerationPtr;
11020}
11021unsafe extern "C" {
11022  pub fn xmlParseEnumerationType(ctxt: xmlParserCtxtPtr) -> xmlEnumerationPtr;
11023}
11024unsafe extern "C" {
11025  pub fn xmlParseEnumeratedType(
11026    ctxt: xmlParserCtxtPtr,
11027    tree: *mut xmlEnumerationPtr,
11028  ) -> ::std::os::raw::c_int;
11029}
11030unsafe extern "C" {
11031  pub fn xmlParseAttributeType(
11032    ctxt: xmlParserCtxtPtr,
11033    tree: *mut xmlEnumerationPtr,
11034  ) -> ::std::os::raw::c_int;
11035}
11036unsafe extern "C" {
11037  pub fn xmlParseAttributeListDecl(ctxt: xmlParserCtxtPtr);
11038}
11039unsafe extern "C" {
11040  pub fn xmlParseElementMixedContentDecl(
11041    ctxt: xmlParserCtxtPtr,
11042    inputchk: ::std::os::raw::c_int,
11043  ) -> xmlElementContentPtr;
11044}
11045unsafe extern "C" {
11046  pub fn xmlParseElementChildrenContentDecl(
11047    ctxt: xmlParserCtxtPtr,
11048    inputchk: ::std::os::raw::c_int,
11049  ) -> xmlElementContentPtr;
11050}
11051unsafe extern "C" {
11052  pub fn xmlParseElementContentDecl(
11053    ctxt: xmlParserCtxtPtr,
11054    name: *const xmlChar,
11055    result: *mut xmlElementContentPtr,
11056  ) -> ::std::os::raw::c_int;
11057}
11058unsafe extern "C" {
11059  pub fn xmlParseElementDecl(ctxt: xmlParserCtxtPtr) -> ::std::os::raw::c_int;
11060}
11061unsafe extern "C" {
11062  pub fn xmlParseMarkupDecl(ctxt: xmlParserCtxtPtr);
11063}
11064unsafe extern "C" {
11065  pub fn xmlParseCharRef(ctxt: xmlParserCtxtPtr) -> ::std::os::raw::c_int;
11066}
11067unsafe extern "C" {
11068  pub fn xmlParseEntityRef(ctxt: xmlParserCtxtPtr) -> xmlEntityPtr;
11069}
11070unsafe extern "C" {
11071  pub fn xmlParseReference(ctxt: xmlParserCtxtPtr);
11072}
11073unsafe extern "C" {
11074  pub fn xmlParsePEReference(ctxt: xmlParserCtxtPtr);
11075}
11076unsafe extern "C" {
11077  pub fn xmlParseDocTypeDecl(ctxt: xmlParserCtxtPtr);
11078}
11079unsafe extern "C" {
11080  pub fn xmlParseAttribute(ctxt: xmlParserCtxtPtr, value: *mut *mut xmlChar) -> *const xmlChar;
11081}
11082unsafe extern "C" {
11083  pub fn xmlParseStartTag(ctxt: xmlParserCtxtPtr) -> *const xmlChar;
11084}
11085unsafe extern "C" {
11086  pub fn xmlParseEndTag(ctxt: xmlParserCtxtPtr);
11087}
11088unsafe extern "C" {
11089  pub fn xmlParseCDSect(ctxt: xmlParserCtxtPtr);
11090}
11091unsafe extern "C" {
11092  pub fn xmlParseContent(ctxt: xmlParserCtxtPtr);
11093}
11094unsafe extern "C" {
11095  pub fn xmlParseElement(ctxt: xmlParserCtxtPtr);
11096}
11097unsafe extern "C" {
11098  pub fn xmlParseVersionNum(ctxt: xmlParserCtxtPtr) -> *mut xmlChar;
11099}
11100unsafe extern "C" {
11101  pub fn xmlParseVersionInfo(ctxt: xmlParserCtxtPtr) -> *mut xmlChar;
11102}
11103unsafe extern "C" {
11104  pub fn xmlParseEncName(ctxt: xmlParserCtxtPtr) -> *mut xmlChar;
11105}
11106unsafe extern "C" {
11107  pub fn xmlParseEncodingDecl(ctxt: xmlParserCtxtPtr) -> *const xmlChar;
11108}
11109unsafe extern "C" {
11110  pub fn xmlParseSDDecl(ctxt: xmlParserCtxtPtr) -> ::std::os::raw::c_int;
11111}
11112unsafe extern "C" {
11113  pub fn xmlParseXMLDecl(ctxt: xmlParserCtxtPtr);
11114}
11115unsafe extern "C" {
11116  pub fn xmlParseTextDecl(ctxt: xmlParserCtxtPtr);
11117}
11118unsafe extern "C" {
11119  pub fn xmlParseMisc(ctxt: xmlParserCtxtPtr);
11120}
11121unsafe extern "C" {
11122  pub fn xmlParseExternalSubset(
11123    ctxt: xmlParserCtxtPtr,
11124    ExternalID: *const xmlChar,
11125    SystemID: *const xmlChar,
11126  );
11127}
11128unsafe extern "C" {
11129  pub fn xmlStringDecodeEntities(
11130    ctxt: xmlParserCtxtPtr,
11131    str_: *const xmlChar,
11132    what: ::std::os::raw::c_int,
11133    end: xmlChar,
11134    end2: xmlChar,
11135    end3: xmlChar,
11136  ) -> *mut xmlChar;
11137}
11138unsafe extern "C" {
11139  pub fn xmlStringLenDecodeEntities(
11140    ctxt: xmlParserCtxtPtr,
11141    str_: *const xmlChar,
11142    len: ::std::os::raw::c_int,
11143    what: ::std::os::raw::c_int,
11144    end: xmlChar,
11145    end2: xmlChar,
11146    end3: xmlChar,
11147  ) -> *mut xmlChar;
11148}
11149unsafe extern "C" {
11150  pub fn nodePush(ctxt: xmlParserCtxtPtr, value: xmlNodePtr) -> ::std::os::raw::c_int;
11151}
11152unsafe extern "C" {
11153  pub fn nodePop(ctxt: xmlParserCtxtPtr) -> xmlNodePtr;
11154}
11155unsafe extern "C" {
11156  pub fn inputPush(ctxt: xmlParserCtxtPtr, value: xmlParserInputPtr) -> ::std::os::raw::c_int;
11157}
11158unsafe extern "C" {
11159  pub fn inputPop(ctxt: xmlParserCtxtPtr) -> xmlParserInputPtr;
11160}
11161unsafe extern "C" {
11162  pub fn namePop(ctxt: xmlParserCtxtPtr) -> *const xmlChar;
11163}
11164unsafe extern "C" {
11165  pub fn namePush(ctxt: xmlParserCtxtPtr, value: *const xmlChar) -> ::std::os::raw::c_int;
11166}
11167unsafe extern "C" {
11168  pub fn xmlSkipBlankChars(ctxt: xmlParserCtxtPtr) -> ::std::os::raw::c_int;
11169}
11170unsafe extern "C" {
11171  pub fn xmlStringCurrentChar(
11172    ctxt: xmlParserCtxtPtr,
11173    cur: *const xmlChar,
11174    len: *mut ::std::os::raw::c_int,
11175  ) -> ::std::os::raw::c_int;
11176}
11177unsafe extern "C" {
11178  pub fn xmlParserHandlePEReference(ctxt: xmlParserCtxtPtr);
11179}
11180unsafe extern "C" {
11181  pub fn xmlCheckLanguageID(lang: *const xmlChar) -> ::std::os::raw::c_int;
11182}
11183unsafe extern "C" {
11184  pub fn xmlCurrentChar(
11185    ctxt: xmlParserCtxtPtr,
11186    len: *mut ::std::os::raw::c_int,
11187  ) -> ::std::os::raw::c_int;
11188}
11189unsafe extern "C" {
11190  pub fn xmlCopyCharMultiByte(
11191    out: *mut xmlChar,
11192    val: ::std::os::raw::c_int,
11193  ) -> ::std::os::raw::c_int;
11194}
11195unsafe extern "C" {
11196  pub fn xmlCopyChar(
11197    len: ::std::os::raw::c_int,
11198    out: *mut xmlChar,
11199    val: ::std::os::raw::c_int,
11200  ) -> ::std::os::raw::c_int;
11201}
11202unsafe extern "C" {
11203  pub fn xmlNextChar(ctxt: xmlParserCtxtPtr);
11204}
11205unsafe extern "C" {
11206  pub fn xmlParserInputShrink(in_: xmlParserInputPtr);
11207}
11208unsafe extern "C" {
11209  pub fn htmlInitAutoClose();
11210}
11211unsafe extern "C" {
11212  pub fn htmlCreateFileParserCtxt(
11213    filename: *const ::std::os::raw::c_char,
11214    encoding: *const ::std::os::raw::c_char,
11215  ) -> htmlParserCtxtPtr;
11216}
11217#[doc = " xmlEntityReferenceFunc:\n @ent: the entity\n @firstNode:  the fist node in the chunk\n @lastNode:  the last nod in the chunk\n\n Callback function used when one needs to be able to track back the\n provenance of a chunk of nodes inherited from an entity replacement."]
11218pub type xmlEntityReferenceFunc = ::std::option::Option<
11219  unsafe extern "C" fn(ent: xmlEntityPtr, firstNode: xmlNodePtr, lastNode: xmlNodePtr),
11220>;
11221unsafe extern "C" {
11222  pub fn xmlSetEntityReferenceFunc(func: xmlEntityReferenceFunc);
11223}
11224unsafe extern "C" {
11225  pub fn xmlParseQuotedString(ctxt: xmlParserCtxtPtr) -> *mut xmlChar;
11226}
11227unsafe extern "C" {
11228  pub fn xmlParseNamespace(ctxt: xmlParserCtxtPtr);
11229}
11230unsafe extern "C" {
11231  pub fn xmlNamespaceParseNSDef(ctxt: xmlParserCtxtPtr) -> *mut xmlChar;
11232}
11233unsafe extern "C" {
11234  pub fn xmlScanName(ctxt: xmlParserCtxtPtr) -> *mut xmlChar;
11235}
11236unsafe extern "C" {
11237  pub fn xmlNamespaceParseNCName(ctxt: xmlParserCtxtPtr) -> *mut xmlChar;
11238}
11239unsafe extern "C" {
11240  pub fn xmlParserHandleReference(ctxt: xmlParserCtxtPtr);
11241}
11242unsafe extern "C" {
11243  pub fn xmlNamespaceParseQName(ctxt: xmlParserCtxtPtr, prefix: *mut *mut xmlChar) -> *mut xmlChar;
11244}
11245unsafe extern "C" {
11246  #[doc = " Entities"]
11247  pub fn xmlDecodeEntities(
11248    ctxt: xmlParserCtxtPtr,
11249    len: ::std::os::raw::c_int,
11250    what: ::std::os::raw::c_int,
11251    end: xmlChar,
11252    end2: xmlChar,
11253    end3: xmlChar,
11254  ) -> *mut xmlChar;
11255}
11256unsafe extern "C" {
11257  pub fn xmlHandleEntity(ctxt: xmlParserCtxtPtr, entity: xmlEntityPtr);
11258}
11259#[repr(C)]
11260#[derive(Debug, Copy, Clone)]
11261pub struct _xmlPattern {
11262  _unused: [u8; 0],
11263}
11264#[doc = " xmlPattern:\n\n A compiled (XPath based) pattern to select nodes"]
11265pub type xmlPattern = _xmlPattern;
11266pub type xmlPatternPtr = *mut xmlPattern;
11267pub const xmlPatternFlags_XML_PATTERN_DEFAULT: xmlPatternFlags = 0;
11268pub const xmlPatternFlags_XML_PATTERN_XPATH: xmlPatternFlags = 1;
11269pub const xmlPatternFlags_XML_PATTERN_XSSEL: xmlPatternFlags = 2;
11270pub const xmlPatternFlags_XML_PATTERN_XSFIELD: xmlPatternFlags = 4;
11271#[doc = " xmlPatternFlags:\n\n This is the set of options affecting the behaviour of pattern\n matching with this module\n"]
11272pub type xmlPatternFlags = ::std::os::raw::c_uint;
11273unsafe extern "C" {
11274  pub fn xmlFreePattern(comp: xmlPatternPtr);
11275}
11276unsafe extern "C" {
11277  pub fn xmlFreePatternList(comp: xmlPatternPtr);
11278}
11279unsafe extern "C" {
11280  pub fn xmlPatterncompile(
11281    pattern: *const xmlChar,
11282    dict: *mut xmlDict,
11283    flags: ::std::os::raw::c_int,
11284    namespaces: *mut *const xmlChar,
11285  ) -> xmlPatternPtr;
11286}
11287unsafe extern "C" {
11288  pub fn xmlPatternMatch(comp: xmlPatternPtr, node: xmlNodePtr) -> ::std::os::raw::c_int;
11289}
11290#[repr(C)]
11291#[derive(Debug, Copy, Clone)]
11292pub struct _xmlStreamCtxt {
11293  _unused: [u8; 0],
11294}
11295pub type xmlStreamCtxt = _xmlStreamCtxt;
11296pub type xmlStreamCtxtPtr = *mut xmlStreamCtxt;
11297unsafe extern "C" {
11298  pub fn xmlPatternStreamable(comp: xmlPatternPtr) -> ::std::os::raw::c_int;
11299}
11300unsafe extern "C" {
11301  pub fn xmlPatternMaxDepth(comp: xmlPatternPtr) -> ::std::os::raw::c_int;
11302}
11303unsafe extern "C" {
11304  pub fn xmlPatternMinDepth(comp: xmlPatternPtr) -> ::std::os::raw::c_int;
11305}
11306unsafe extern "C" {
11307  pub fn xmlPatternFromRoot(comp: xmlPatternPtr) -> ::std::os::raw::c_int;
11308}
11309unsafe extern "C" {
11310  pub fn xmlPatternGetStreamCtxt(comp: xmlPatternPtr) -> xmlStreamCtxtPtr;
11311}
11312unsafe extern "C" {
11313  pub fn xmlFreeStreamCtxt(stream: xmlStreamCtxtPtr);
11314}
11315unsafe extern "C" {
11316  pub fn xmlStreamPushNode(
11317    stream: xmlStreamCtxtPtr,
11318    name: *const xmlChar,
11319    ns: *const xmlChar,
11320    nodeType: ::std::os::raw::c_int,
11321  ) -> ::std::os::raw::c_int;
11322}
11323unsafe extern "C" {
11324  pub fn xmlStreamPush(
11325    stream: xmlStreamCtxtPtr,
11326    name: *const xmlChar,
11327    ns: *const xmlChar,
11328  ) -> ::std::os::raw::c_int;
11329}
11330unsafe extern "C" {
11331  pub fn xmlStreamPushAttr(
11332    stream: xmlStreamCtxtPtr,
11333    name: *const xmlChar,
11334    ns: *const xmlChar,
11335  ) -> ::std::os::raw::c_int;
11336}
11337unsafe extern "C" {
11338  pub fn xmlStreamPop(stream: xmlStreamCtxtPtr) -> ::std::os::raw::c_int;
11339}
11340unsafe extern "C" {
11341  pub fn xmlStreamWantsAnyNode(stream: xmlStreamCtxtPtr) -> ::std::os::raw::c_int;
11342}
11343#[repr(C)]
11344#[derive(Debug, Copy, Clone)]
11345pub struct _xmlRelaxNG {
11346  _unused: [u8; 0],
11347}
11348pub type xmlRelaxNG = _xmlRelaxNG;
11349pub type xmlRelaxNGPtr = *mut xmlRelaxNG;
11350#[doc = " xmlRelaxNGValidityErrorFunc:\n @ctx: the validation context\n @msg: the message\n @...: extra arguments\n\n Signature of an error callback from a Relax-NG validation"]
11351pub type xmlRelaxNGValidityErrorFunc = ::std::option::Option<
11352  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...),
11353>;
11354#[doc = " xmlRelaxNGValidityWarningFunc:\n @ctx: the validation context\n @msg: the message\n @...: extra arguments\n\n Signature of a warning callback from a Relax-NG validation"]
11355pub type xmlRelaxNGValidityWarningFunc = ::std::option::Option<
11356  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...),
11357>;
11358#[repr(C)]
11359#[derive(Debug, Copy, Clone)]
11360pub struct _xmlRelaxNGParserCtxt {
11361  _unused: [u8; 0],
11362}
11363#[doc = " A schemas validation context"]
11364pub type xmlRelaxNGParserCtxt = _xmlRelaxNGParserCtxt;
11365pub type xmlRelaxNGParserCtxtPtr = *mut xmlRelaxNGParserCtxt;
11366#[repr(C)]
11367#[derive(Debug, Copy, Clone)]
11368pub struct _xmlRelaxNGValidCtxt {
11369  _unused: [u8; 0],
11370}
11371pub type xmlRelaxNGValidCtxt = _xmlRelaxNGValidCtxt;
11372pub type xmlRelaxNGValidCtxtPtr = *mut xmlRelaxNGValidCtxt;
11373pub const xmlRelaxNGValidErr_XML_RELAXNG_OK: xmlRelaxNGValidErr = 0;
11374pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_MEMORY: xmlRelaxNGValidErr = 1;
11375pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_TYPE: xmlRelaxNGValidErr = 2;
11376pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_TYPEVAL: xmlRelaxNGValidErr = 3;
11377pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_DUPID: xmlRelaxNGValidErr = 4;
11378pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_TYPECMP: xmlRelaxNGValidErr = 5;
11379pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_NOSTATE: xmlRelaxNGValidErr = 6;
11380pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_NODEFINE: xmlRelaxNGValidErr = 7;
11381pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_LISTEXTRA: xmlRelaxNGValidErr = 8;
11382pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_LISTEMPTY: xmlRelaxNGValidErr = 9;
11383pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_INTERNODATA: xmlRelaxNGValidErr = 10;
11384pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_INTERSEQ: xmlRelaxNGValidErr = 11;
11385pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_INTEREXTRA: xmlRelaxNGValidErr = 12;
11386pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_ELEMNAME: xmlRelaxNGValidErr = 13;
11387pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_ATTRNAME: xmlRelaxNGValidErr = 14;
11388pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_ELEMNONS: xmlRelaxNGValidErr = 15;
11389pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_ATTRNONS: xmlRelaxNGValidErr = 16;
11390pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_ELEMWRONGNS: xmlRelaxNGValidErr = 17;
11391pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_ATTRWRONGNS: xmlRelaxNGValidErr = 18;
11392pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_ELEMEXTRANS: xmlRelaxNGValidErr = 19;
11393pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_ATTREXTRANS: xmlRelaxNGValidErr = 20;
11394pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_ELEMNOTEMPTY: xmlRelaxNGValidErr = 21;
11395pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_NOELEM: xmlRelaxNGValidErr = 22;
11396pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_NOTELEM: xmlRelaxNGValidErr = 23;
11397pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_ATTRVALID: xmlRelaxNGValidErr = 24;
11398pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_CONTENTVALID: xmlRelaxNGValidErr = 25;
11399pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_EXTRACONTENT: xmlRelaxNGValidErr = 26;
11400pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_INVALIDATTR: xmlRelaxNGValidErr = 27;
11401pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_DATAELEM: xmlRelaxNGValidErr = 28;
11402pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_VALELEM: xmlRelaxNGValidErr = 29;
11403pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_LISTELEM: xmlRelaxNGValidErr = 30;
11404pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_DATATYPE: xmlRelaxNGValidErr = 31;
11405pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_VALUE: xmlRelaxNGValidErr = 32;
11406pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_LIST: xmlRelaxNGValidErr = 33;
11407pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_NOGRAMMAR: xmlRelaxNGValidErr = 34;
11408pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_EXTRADATA: xmlRelaxNGValidErr = 35;
11409pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_LACKDATA: xmlRelaxNGValidErr = 36;
11410pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_INTERNAL: xmlRelaxNGValidErr = 37;
11411pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_ELEMWRONG: xmlRelaxNGValidErr = 38;
11412pub const xmlRelaxNGValidErr_XML_RELAXNG_ERR_TEXTWRONG: xmlRelaxNGValidErr = 39;
11413pub type xmlRelaxNGValidErr = ::std::os::raw::c_uint;
11414pub const xmlRelaxNGParserFlag_XML_RELAXNGP_NONE: xmlRelaxNGParserFlag = 0;
11415pub const xmlRelaxNGParserFlag_XML_RELAXNGP_FREE_DOC: xmlRelaxNGParserFlag = 1;
11416pub const xmlRelaxNGParserFlag_XML_RELAXNGP_CRNG: xmlRelaxNGParserFlag = 2;
11417pub type xmlRelaxNGParserFlag = ::std::os::raw::c_uint;
11418unsafe extern "C" {
11419  pub fn xmlRelaxNGInitTypes() -> ::std::os::raw::c_int;
11420}
11421unsafe extern "C" {
11422  pub fn xmlRelaxNGCleanupTypes();
11423}
11424unsafe extern "C" {
11425  pub fn xmlRelaxNGNewParserCtxt(URL: *const ::std::os::raw::c_char) -> xmlRelaxNGParserCtxtPtr;
11426}
11427unsafe extern "C" {
11428  pub fn xmlRelaxNGNewMemParserCtxt(
11429    buffer: *const ::std::os::raw::c_char,
11430    size: ::std::os::raw::c_int,
11431  ) -> xmlRelaxNGParserCtxtPtr;
11432}
11433unsafe extern "C" {
11434  pub fn xmlRelaxNGNewDocParserCtxt(doc: xmlDocPtr) -> xmlRelaxNGParserCtxtPtr;
11435}
11436unsafe extern "C" {
11437  pub fn xmlRelaxParserSetFlag(
11438    ctxt: xmlRelaxNGParserCtxtPtr,
11439    flag: ::std::os::raw::c_int,
11440  ) -> ::std::os::raw::c_int;
11441}
11442unsafe extern "C" {
11443  pub fn xmlRelaxParserSetIncLImit(
11444    ctxt: *mut xmlRelaxNGParserCtxt,
11445    limit: ::std::os::raw::c_int,
11446  ) -> ::std::os::raw::c_int;
11447}
11448unsafe extern "C" {
11449  pub fn xmlRelaxNGFreeParserCtxt(ctxt: xmlRelaxNGParserCtxtPtr);
11450}
11451unsafe extern "C" {
11452  pub fn xmlRelaxNGSetParserErrors(
11453    ctxt: xmlRelaxNGParserCtxtPtr,
11454    err: xmlRelaxNGValidityErrorFunc,
11455    warn: xmlRelaxNGValidityWarningFunc,
11456    ctx: *mut ::std::os::raw::c_void,
11457  );
11458}
11459unsafe extern "C" {
11460  pub fn xmlRelaxNGGetParserErrors(
11461    ctxt: xmlRelaxNGParserCtxtPtr,
11462    err: *mut xmlRelaxNGValidityErrorFunc,
11463    warn: *mut xmlRelaxNGValidityWarningFunc,
11464    ctx: *mut *mut ::std::os::raw::c_void,
11465  ) -> ::std::os::raw::c_int;
11466}
11467unsafe extern "C" {
11468  pub fn xmlRelaxNGSetParserStructuredErrors(
11469    ctxt: xmlRelaxNGParserCtxtPtr,
11470    serror: xmlStructuredErrorFunc,
11471    ctx: *mut ::std::os::raw::c_void,
11472  );
11473}
11474unsafe extern "C" {
11475  pub fn xmlRelaxNGParse(ctxt: xmlRelaxNGParserCtxtPtr) -> xmlRelaxNGPtr;
11476}
11477unsafe extern "C" {
11478  pub fn xmlRelaxNGFree(schema: xmlRelaxNGPtr);
11479}
11480unsafe extern "C" {
11481  pub fn xmlRelaxNGDump(output: *mut FILE, schema: xmlRelaxNGPtr);
11482}
11483unsafe extern "C" {
11484  pub fn xmlRelaxNGDumpTree(output: *mut FILE, schema: xmlRelaxNGPtr);
11485}
11486unsafe extern "C" {
11487  pub fn xmlRelaxNGSetValidErrors(
11488    ctxt: xmlRelaxNGValidCtxtPtr,
11489    err: xmlRelaxNGValidityErrorFunc,
11490    warn: xmlRelaxNGValidityWarningFunc,
11491    ctx: *mut ::std::os::raw::c_void,
11492  );
11493}
11494unsafe extern "C" {
11495  pub fn xmlRelaxNGGetValidErrors(
11496    ctxt: xmlRelaxNGValidCtxtPtr,
11497    err: *mut xmlRelaxNGValidityErrorFunc,
11498    warn: *mut xmlRelaxNGValidityWarningFunc,
11499    ctx: *mut *mut ::std::os::raw::c_void,
11500  ) -> ::std::os::raw::c_int;
11501}
11502unsafe extern "C" {
11503  pub fn xmlRelaxNGSetValidStructuredErrors(
11504    ctxt: xmlRelaxNGValidCtxtPtr,
11505    serror: xmlStructuredErrorFunc,
11506    ctx: *mut ::std::os::raw::c_void,
11507  );
11508}
11509unsafe extern "C" {
11510  pub fn xmlRelaxNGNewValidCtxt(schema: xmlRelaxNGPtr) -> xmlRelaxNGValidCtxtPtr;
11511}
11512unsafe extern "C" {
11513  pub fn xmlRelaxNGFreeValidCtxt(ctxt: xmlRelaxNGValidCtxtPtr);
11514}
11515unsafe extern "C" {
11516  pub fn xmlRelaxNGValidateDoc(
11517    ctxt: xmlRelaxNGValidCtxtPtr,
11518    doc: xmlDocPtr,
11519  ) -> ::std::os::raw::c_int;
11520}
11521unsafe extern "C" {
11522  pub fn xmlRelaxNGValidatePushElement(
11523    ctxt: xmlRelaxNGValidCtxtPtr,
11524    doc: xmlDocPtr,
11525    elem: xmlNodePtr,
11526  ) -> ::std::os::raw::c_int;
11527}
11528unsafe extern "C" {
11529  pub fn xmlRelaxNGValidatePushCData(
11530    ctxt: xmlRelaxNGValidCtxtPtr,
11531    data: *const xmlChar,
11532    len: ::std::os::raw::c_int,
11533  ) -> ::std::os::raw::c_int;
11534}
11535unsafe extern "C" {
11536  pub fn xmlRelaxNGValidatePopElement(
11537    ctxt: xmlRelaxNGValidCtxtPtr,
11538    doc: xmlDocPtr,
11539    elem: xmlNodePtr,
11540  ) -> ::std::os::raw::c_int;
11541}
11542unsafe extern "C" {
11543  pub fn xmlRelaxNGValidateFullElement(
11544    ctxt: xmlRelaxNGValidCtxtPtr,
11545    doc: xmlDocPtr,
11546    elem: xmlNodePtr,
11547  ) -> ::std::os::raw::c_int;
11548}
11549unsafe extern "C" {
11550  pub fn getPublicId(ctx: *mut ::std::os::raw::c_void) -> *const xmlChar;
11551}
11552unsafe extern "C" {
11553  pub fn getSystemId(ctx: *mut ::std::os::raw::c_void) -> *const xmlChar;
11554}
11555unsafe extern "C" {
11556  pub fn setDocumentLocator(ctx: *mut ::std::os::raw::c_void, loc: xmlSAXLocatorPtr);
11557}
11558unsafe extern "C" {
11559  pub fn getLineNumber(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
11560}
11561unsafe extern "C" {
11562  pub fn getColumnNumber(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
11563}
11564unsafe extern "C" {
11565  pub fn isStandalone(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
11566}
11567unsafe extern "C" {
11568  pub fn hasInternalSubset(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
11569}
11570unsafe extern "C" {
11571  pub fn hasExternalSubset(ctx: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
11572}
11573unsafe extern "C" {
11574  pub fn internalSubset(
11575    ctx: *mut ::std::os::raw::c_void,
11576    name: *const xmlChar,
11577    ExternalID: *const xmlChar,
11578    SystemID: *const xmlChar,
11579  );
11580}
11581unsafe extern "C" {
11582  pub fn externalSubset(
11583    ctx: *mut ::std::os::raw::c_void,
11584    name: *const xmlChar,
11585    ExternalID: *const xmlChar,
11586    SystemID: *const xmlChar,
11587  );
11588}
11589unsafe extern "C" {
11590  pub fn getEntity(ctx: *mut ::std::os::raw::c_void, name: *const xmlChar) -> xmlEntityPtr;
11591}
11592unsafe extern "C" {
11593  pub fn getParameterEntity(ctx: *mut ::std::os::raw::c_void, name: *const xmlChar)
11594  -> xmlEntityPtr;
11595}
11596unsafe extern "C" {
11597  pub fn resolveEntity(
11598    ctx: *mut ::std::os::raw::c_void,
11599    publicId: *const xmlChar,
11600    systemId: *const xmlChar,
11601  ) -> xmlParserInputPtr;
11602}
11603unsafe extern "C" {
11604  pub fn entityDecl(
11605    ctx: *mut ::std::os::raw::c_void,
11606    name: *const xmlChar,
11607    type_: ::std::os::raw::c_int,
11608    publicId: *const xmlChar,
11609    systemId: *const xmlChar,
11610    content: *mut xmlChar,
11611  );
11612}
11613unsafe extern "C" {
11614  pub fn attributeDecl(
11615    ctx: *mut ::std::os::raw::c_void,
11616    elem: *const xmlChar,
11617    fullname: *const xmlChar,
11618    type_: ::std::os::raw::c_int,
11619    def: ::std::os::raw::c_int,
11620    defaultValue: *const xmlChar,
11621    tree: xmlEnumerationPtr,
11622  );
11623}
11624unsafe extern "C" {
11625  pub fn elementDecl(
11626    ctx: *mut ::std::os::raw::c_void,
11627    name: *const xmlChar,
11628    type_: ::std::os::raw::c_int,
11629    content: xmlElementContentPtr,
11630  );
11631}
11632unsafe extern "C" {
11633  pub fn notationDecl(
11634    ctx: *mut ::std::os::raw::c_void,
11635    name: *const xmlChar,
11636    publicId: *const xmlChar,
11637    systemId: *const xmlChar,
11638  );
11639}
11640unsafe extern "C" {
11641  pub fn unparsedEntityDecl(
11642    ctx: *mut ::std::os::raw::c_void,
11643    name: *const xmlChar,
11644    publicId: *const xmlChar,
11645    systemId: *const xmlChar,
11646    notationName: *const xmlChar,
11647  );
11648}
11649unsafe extern "C" {
11650  pub fn startDocument(ctx: *mut ::std::os::raw::c_void);
11651}
11652unsafe extern "C" {
11653  pub fn endDocument(ctx: *mut ::std::os::raw::c_void);
11654}
11655unsafe extern "C" {
11656  pub fn attribute(
11657    ctx: *mut ::std::os::raw::c_void,
11658    fullname: *const xmlChar,
11659    value: *const xmlChar,
11660  );
11661}
11662unsafe extern "C" {
11663  pub fn startElement(
11664    ctx: *mut ::std::os::raw::c_void,
11665    fullname: *const xmlChar,
11666    atts: *mut *const xmlChar,
11667  );
11668}
11669unsafe extern "C" {
11670  pub fn endElement(ctx: *mut ::std::os::raw::c_void, name: *const xmlChar);
11671}
11672unsafe extern "C" {
11673  pub fn reference(ctx: *mut ::std::os::raw::c_void, name: *const xmlChar);
11674}
11675unsafe extern "C" {
11676  pub fn characters(
11677    ctx: *mut ::std::os::raw::c_void,
11678    ch: *const xmlChar,
11679    len: ::std::os::raw::c_int,
11680  );
11681}
11682unsafe extern "C" {
11683  pub fn ignorableWhitespace(
11684    ctx: *mut ::std::os::raw::c_void,
11685    ch: *const xmlChar,
11686    len: ::std::os::raw::c_int,
11687  );
11688}
11689unsafe extern "C" {
11690  pub fn processingInstruction(
11691    ctx: *mut ::std::os::raw::c_void,
11692    target: *const xmlChar,
11693    data: *const xmlChar,
11694  );
11695}
11696unsafe extern "C" {
11697  pub fn globalNamespace(
11698    ctx: *mut ::std::os::raw::c_void,
11699    href: *const xmlChar,
11700    prefix: *const xmlChar,
11701  );
11702}
11703unsafe extern "C" {
11704  pub fn setNamespace(ctx: *mut ::std::os::raw::c_void, name: *const xmlChar);
11705}
11706unsafe extern "C" {
11707  pub fn getNamespace(ctx: *mut ::std::os::raw::c_void) -> xmlNsPtr;
11708}
11709unsafe extern "C" {
11710  pub fn checkNamespace(
11711    ctx: *mut ::std::os::raw::c_void,
11712    nameSpace: *mut xmlChar,
11713  ) -> ::std::os::raw::c_int;
11714}
11715unsafe extern "C" {
11716  pub fn namespaceDecl(
11717    ctx: *mut ::std::os::raw::c_void,
11718    href: *const xmlChar,
11719    prefix: *const xmlChar,
11720  );
11721}
11722unsafe extern "C" {
11723  pub fn comment(ctx: *mut ::std::os::raw::c_void, value: *const xmlChar);
11724}
11725unsafe extern "C" {
11726  pub fn cdataBlock(
11727    ctx: *mut ::std::os::raw::c_void,
11728    value: *const xmlChar,
11729    len: ::std::os::raw::c_int,
11730  );
11731}
11732unsafe extern "C" {
11733  pub fn initxmlDefaultSAXHandler(hdlr: *mut xmlSAXHandlerV1, warning: ::std::os::raw::c_int);
11734}
11735unsafe extern "C" {
11736  pub fn inithtmlDefaultSAXHandler(hdlr: *mut xmlSAXHandlerV1);
11737}
11738unsafe extern "C" {
11739  pub fn initdocbDefaultSAXHandler(hdlr: *mut xmlSAXHandlerV1);
11740}
11741pub const xmlSchemaValType_XML_SCHEMAS_UNKNOWN: xmlSchemaValType = 0;
11742pub const xmlSchemaValType_XML_SCHEMAS_STRING: xmlSchemaValType = 1;
11743pub const xmlSchemaValType_XML_SCHEMAS_NORMSTRING: xmlSchemaValType = 2;
11744pub const xmlSchemaValType_XML_SCHEMAS_DECIMAL: xmlSchemaValType = 3;
11745pub const xmlSchemaValType_XML_SCHEMAS_TIME: xmlSchemaValType = 4;
11746pub const xmlSchemaValType_XML_SCHEMAS_GDAY: xmlSchemaValType = 5;
11747pub const xmlSchemaValType_XML_SCHEMAS_GMONTH: xmlSchemaValType = 6;
11748pub const xmlSchemaValType_XML_SCHEMAS_GMONTHDAY: xmlSchemaValType = 7;
11749pub const xmlSchemaValType_XML_SCHEMAS_GYEAR: xmlSchemaValType = 8;
11750pub const xmlSchemaValType_XML_SCHEMAS_GYEARMONTH: xmlSchemaValType = 9;
11751pub const xmlSchemaValType_XML_SCHEMAS_DATE: xmlSchemaValType = 10;
11752pub const xmlSchemaValType_XML_SCHEMAS_DATETIME: xmlSchemaValType = 11;
11753pub const xmlSchemaValType_XML_SCHEMAS_DURATION: xmlSchemaValType = 12;
11754pub const xmlSchemaValType_XML_SCHEMAS_FLOAT: xmlSchemaValType = 13;
11755pub const xmlSchemaValType_XML_SCHEMAS_DOUBLE: xmlSchemaValType = 14;
11756pub const xmlSchemaValType_XML_SCHEMAS_BOOLEAN: xmlSchemaValType = 15;
11757pub const xmlSchemaValType_XML_SCHEMAS_TOKEN: xmlSchemaValType = 16;
11758pub const xmlSchemaValType_XML_SCHEMAS_LANGUAGE: xmlSchemaValType = 17;
11759pub const xmlSchemaValType_XML_SCHEMAS_NMTOKEN: xmlSchemaValType = 18;
11760pub const xmlSchemaValType_XML_SCHEMAS_NMTOKENS: xmlSchemaValType = 19;
11761pub const xmlSchemaValType_XML_SCHEMAS_NAME: xmlSchemaValType = 20;
11762pub const xmlSchemaValType_XML_SCHEMAS_QNAME: xmlSchemaValType = 21;
11763pub const xmlSchemaValType_XML_SCHEMAS_NCNAME: xmlSchemaValType = 22;
11764pub const xmlSchemaValType_XML_SCHEMAS_ID: xmlSchemaValType = 23;
11765pub const xmlSchemaValType_XML_SCHEMAS_IDREF: xmlSchemaValType = 24;
11766pub const xmlSchemaValType_XML_SCHEMAS_IDREFS: xmlSchemaValType = 25;
11767pub const xmlSchemaValType_XML_SCHEMAS_ENTITY: xmlSchemaValType = 26;
11768pub const xmlSchemaValType_XML_SCHEMAS_ENTITIES: xmlSchemaValType = 27;
11769pub const xmlSchemaValType_XML_SCHEMAS_NOTATION: xmlSchemaValType = 28;
11770pub const xmlSchemaValType_XML_SCHEMAS_ANYURI: xmlSchemaValType = 29;
11771pub const xmlSchemaValType_XML_SCHEMAS_INTEGER: xmlSchemaValType = 30;
11772pub const xmlSchemaValType_XML_SCHEMAS_NPINTEGER: xmlSchemaValType = 31;
11773pub const xmlSchemaValType_XML_SCHEMAS_NINTEGER: xmlSchemaValType = 32;
11774pub const xmlSchemaValType_XML_SCHEMAS_NNINTEGER: xmlSchemaValType = 33;
11775pub const xmlSchemaValType_XML_SCHEMAS_PINTEGER: xmlSchemaValType = 34;
11776pub const xmlSchemaValType_XML_SCHEMAS_INT: xmlSchemaValType = 35;
11777pub const xmlSchemaValType_XML_SCHEMAS_UINT: xmlSchemaValType = 36;
11778pub const xmlSchemaValType_XML_SCHEMAS_LONG: xmlSchemaValType = 37;
11779pub const xmlSchemaValType_XML_SCHEMAS_ULONG: xmlSchemaValType = 38;
11780pub const xmlSchemaValType_XML_SCHEMAS_SHORT: xmlSchemaValType = 39;
11781pub const xmlSchemaValType_XML_SCHEMAS_USHORT: xmlSchemaValType = 40;
11782pub const xmlSchemaValType_XML_SCHEMAS_BYTE: xmlSchemaValType = 41;
11783pub const xmlSchemaValType_XML_SCHEMAS_UBYTE: xmlSchemaValType = 42;
11784pub const xmlSchemaValType_XML_SCHEMAS_HEXBINARY: xmlSchemaValType = 43;
11785pub const xmlSchemaValType_XML_SCHEMAS_BASE64BINARY: xmlSchemaValType = 44;
11786pub const xmlSchemaValType_XML_SCHEMAS_ANYTYPE: xmlSchemaValType = 45;
11787pub const xmlSchemaValType_XML_SCHEMAS_ANYSIMPLETYPE: xmlSchemaValType = 46;
11788pub type xmlSchemaValType = ::std::os::raw::c_uint;
11789pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_BASIC: xmlSchemaTypeType = 1;
11790pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_ANY: xmlSchemaTypeType = 2;
11791pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_FACET: xmlSchemaTypeType = 3;
11792pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_SIMPLE: xmlSchemaTypeType = 4;
11793pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_COMPLEX: xmlSchemaTypeType = 5;
11794pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_SEQUENCE: xmlSchemaTypeType = 6;
11795pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_CHOICE: xmlSchemaTypeType = 7;
11796pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_ALL: xmlSchemaTypeType = 8;
11797pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_SIMPLE_CONTENT: xmlSchemaTypeType = 9;
11798pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_COMPLEX_CONTENT: xmlSchemaTypeType = 10;
11799pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_UR: xmlSchemaTypeType = 11;
11800pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_RESTRICTION: xmlSchemaTypeType = 12;
11801pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_EXTENSION: xmlSchemaTypeType = 13;
11802pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_ELEMENT: xmlSchemaTypeType = 14;
11803pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_ATTRIBUTE: xmlSchemaTypeType = 15;
11804pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_ATTRIBUTEGROUP: xmlSchemaTypeType = 16;
11805pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_GROUP: xmlSchemaTypeType = 17;
11806pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_NOTATION: xmlSchemaTypeType = 18;
11807pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_LIST: xmlSchemaTypeType = 19;
11808pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_UNION: xmlSchemaTypeType = 20;
11809pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_ANY_ATTRIBUTE: xmlSchemaTypeType = 21;
11810pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_IDC_UNIQUE: xmlSchemaTypeType = 22;
11811pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_IDC_KEY: xmlSchemaTypeType = 23;
11812pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_IDC_KEYREF: xmlSchemaTypeType = 24;
11813pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_PARTICLE: xmlSchemaTypeType = 25;
11814pub const xmlSchemaTypeType_XML_SCHEMA_TYPE_ATTRIBUTE_USE: xmlSchemaTypeType = 26;
11815pub const xmlSchemaTypeType_XML_SCHEMA_FACET_MININCLUSIVE: xmlSchemaTypeType = 1000;
11816pub const xmlSchemaTypeType_XML_SCHEMA_FACET_MINEXCLUSIVE: xmlSchemaTypeType = 1001;
11817pub const xmlSchemaTypeType_XML_SCHEMA_FACET_MAXINCLUSIVE: xmlSchemaTypeType = 1002;
11818pub const xmlSchemaTypeType_XML_SCHEMA_FACET_MAXEXCLUSIVE: xmlSchemaTypeType = 1003;
11819pub const xmlSchemaTypeType_XML_SCHEMA_FACET_TOTALDIGITS: xmlSchemaTypeType = 1004;
11820pub const xmlSchemaTypeType_XML_SCHEMA_FACET_FRACTIONDIGITS: xmlSchemaTypeType = 1005;
11821pub const xmlSchemaTypeType_XML_SCHEMA_FACET_PATTERN: xmlSchemaTypeType = 1006;
11822pub const xmlSchemaTypeType_XML_SCHEMA_FACET_ENUMERATION: xmlSchemaTypeType = 1007;
11823pub const xmlSchemaTypeType_XML_SCHEMA_FACET_WHITESPACE: xmlSchemaTypeType = 1008;
11824pub const xmlSchemaTypeType_XML_SCHEMA_FACET_LENGTH: xmlSchemaTypeType = 1009;
11825pub const xmlSchemaTypeType_XML_SCHEMA_FACET_MAXLENGTH: xmlSchemaTypeType = 1010;
11826pub const xmlSchemaTypeType_XML_SCHEMA_FACET_MINLENGTH: xmlSchemaTypeType = 1011;
11827pub const xmlSchemaTypeType_XML_SCHEMA_EXTRA_QNAMEREF: xmlSchemaTypeType = 2000;
11828pub const xmlSchemaTypeType_XML_SCHEMA_EXTRA_ATTR_USE_PROHIB: xmlSchemaTypeType = 2001;
11829pub type xmlSchemaTypeType = ::std::os::raw::c_uint;
11830pub const xmlSchemaContentType_XML_SCHEMA_CONTENT_UNKNOWN: xmlSchemaContentType = 0;
11831pub const xmlSchemaContentType_XML_SCHEMA_CONTENT_EMPTY: xmlSchemaContentType = 1;
11832pub const xmlSchemaContentType_XML_SCHEMA_CONTENT_ELEMENTS: xmlSchemaContentType = 2;
11833pub const xmlSchemaContentType_XML_SCHEMA_CONTENT_MIXED: xmlSchemaContentType = 3;
11834pub const xmlSchemaContentType_XML_SCHEMA_CONTENT_SIMPLE: xmlSchemaContentType = 4;
11835pub const xmlSchemaContentType_XML_SCHEMA_CONTENT_MIXED_OR_ELEMENTS: xmlSchemaContentType = 5;
11836pub const xmlSchemaContentType_XML_SCHEMA_CONTENT_BASIC: xmlSchemaContentType = 6;
11837pub const xmlSchemaContentType_XML_SCHEMA_CONTENT_ANY: xmlSchemaContentType = 7;
11838pub type xmlSchemaContentType = ::std::os::raw::c_uint;
11839#[repr(C)]
11840#[derive(Debug, Copy, Clone)]
11841pub struct _xmlSchemaVal {
11842  _unused: [u8; 0],
11843}
11844pub type xmlSchemaVal = _xmlSchemaVal;
11845pub type xmlSchemaValPtr = *mut xmlSchemaVal;
11846#[doc = " _xmlSchemaType:\n\n Schemas type definition."]
11847pub type xmlSchemaType = _xmlSchemaType;
11848pub type xmlSchemaTypePtr = *mut xmlSchemaType;
11849#[doc = " A facet definition."]
11850pub type xmlSchemaFacet = _xmlSchemaFacet;
11851pub type xmlSchemaFacetPtr = *mut xmlSchemaFacet;
11852#[doc = " Annotation"]
11853pub type xmlSchemaAnnot = _xmlSchemaAnnot;
11854pub type xmlSchemaAnnotPtr = *mut xmlSchemaAnnot;
11855#[repr(C)]
11856#[derive(Debug, Copy, Clone)]
11857pub struct _xmlSchemaAnnot {
11858  pub next: *mut _xmlSchemaAnnot,
11859  pub content: xmlNodePtr,
11860}
11861#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11862const _: () = {
11863  ["Size of _xmlSchemaAnnot"][::std::mem::size_of::<_xmlSchemaAnnot>() - 16usize];
11864  ["Alignment of _xmlSchemaAnnot"][::std::mem::align_of::<_xmlSchemaAnnot>() - 8usize];
11865  ["Offset of field: _xmlSchemaAnnot::next"]
11866    [::std::mem::offset_of!(_xmlSchemaAnnot, next) - 0usize];
11867  ["Offset of field: _xmlSchemaAnnot::content"]
11868    [::std::mem::offset_of!(_xmlSchemaAnnot, content) - 8usize];
11869};
11870#[doc = " xmlSchemaAttribute:\n An attribute definition."]
11871pub type xmlSchemaAttribute = _xmlSchemaAttribute;
11872pub type xmlSchemaAttributePtr = *mut xmlSchemaAttribute;
11873#[repr(C)]
11874#[derive(Debug, Copy, Clone)]
11875pub struct _xmlSchemaAttribute {
11876  pub type_: xmlSchemaTypeType,
11877  pub next: *mut _xmlSchemaAttribute,
11878  pub name: *const xmlChar,
11879  pub id: *const xmlChar,
11880  pub ref_: *const xmlChar,
11881  pub refNs: *const xmlChar,
11882  pub typeName: *const xmlChar,
11883  pub typeNs: *const xmlChar,
11884  pub annot: xmlSchemaAnnotPtr,
11885  pub base: xmlSchemaTypePtr,
11886  pub occurs: ::std::os::raw::c_int,
11887  pub defValue: *const xmlChar,
11888  pub subtypes: xmlSchemaTypePtr,
11889  pub node: xmlNodePtr,
11890  pub targetNamespace: *const xmlChar,
11891  pub flags: ::std::os::raw::c_int,
11892  pub refPrefix: *const xmlChar,
11893  pub defVal: xmlSchemaValPtr,
11894  pub refDecl: xmlSchemaAttributePtr,
11895}
11896#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11897const _: () = {
11898  ["Size of _xmlSchemaAttribute"][::std::mem::size_of::<_xmlSchemaAttribute>() - 152usize];
11899  ["Alignment of _xmlSchemaAttribute"][::std::mem::align_of::<_xmlSchemaAttribute>() - 8usize];
11900  ["Offset of field: _xmlSchemaAttribute::type_"]
11901    [::std::mem::offset_of!(_xmlSchemaAttribute, type_) - 0usize];
11902  ["Offset of field: _xmlSchemaAttribute::next"]
11903    [::std::mem::offset_of!(_xmlSchemaAttribute, next) - 8usize];
11904  ["Offset of field: _xmlSchemaAttribute::name"]
11905    [::std::mem::offset_of!(_xmlSchemaAttribute, name) - 16usize];
11906  ["Offset of field: _xmlSchemaAttribute::id"]
11907    [::std::mem::offset_of!(_xmlSchemaAttribute, id) - 24usize];
11908  ["Offset of field: _xmlSchemaAttribute::ref_"]
11909    [::std::mem::offset_of!(_xmlSchemaAttribute, ref_) - 32usize];
11910  ["Offset of field: _xmlSchemaAttribute::refNs"]
11911    [::std::mem::offset_of!(_xmlSchemaAttribute, refNs) - 40usize];
11912  ["Offset of field: _xmlSchemaAttribute::typeName"]
11913    [::std::mem::offset_of!(_xmlSchemaAttribute, typeName) - 48usize];
11914  ["Offset of field: _xmlSchemaAttribute::typeNs"]
11915    [::std::mem::offset_of!(_xmlSchemaAttribute, typeNs) - 56usize];
11916  ["Offset of field: _xmlSchemaAttribute::annot"]
11917    [::std::mem::offset_of!(_xmlSchemaAttribute, annot) - 64usize];
11918  ["Offset of field: _xmlSchemaAttribute::base"]
11919    [::std::mem::offset_of!(_xmlSchemaAttribute, base) - 72usize];
11920  ["Offset of field: _xmlSchemaAttribute::occurs"]
11921    [::std::mem::offset_of!(_xmlSchemaAttribute, occurs) - 80usize];
11922  ["Offset of field: _xmlSchemaAttribute::defValue"]
11923    [::std::mem::offset_of!(_xmlSchemaAttribute, defValue) - 88usize];
11924  ["Offset of field: _xmlSchemaAttribute::subtypes"]
11925    [::std::mem::offset_of!(_xmlSchemaAttribute, subtypes) - 96usize];
11926  ["Offset of field: _xmlSchemaAttribute::node"]
11927    [::std::mem::offset_of!(_xmlSchemaAttribute, node) - 104usize];
11928  ["Offset of field: _xmlSchemaAttribute::targetNamespace"]
11929    [::std::mem::offset_of!(_xmlSchemaAttribute, targetNamespace) - 112usize];
11930  ["Offset of field: _xmlSchemaAttribute::flags"]
11931    [::std::mem::offset_of!(_xmlSchemaAttribute, flags) - 120usize];
11932  ["Offset of field: _xmlSchemaAttribute::refPrefix"]
11933    [::std::mem::offset_of!(_xmlSchemaAttribute, refPrefix) - 128usize];
11934  ["Offset of field: _xmlSchemaAttribute::defVal"]
11935    [::std::mem::offset_of!(_xmlSchemaAttribute, defVal) - 136usize];
11936  ["Offset of field: _xmlSchemaAttribute::refDecl"]
11937    [::std::mem::offset_of!(_xmlSchemaAttribute, refDecl) - 144usize];
11938};
11939#[doc = " xmlSchemaAttributeLink:\n Used to build a list of attribute uses on complexType definitions.\n WARNING: Deprecated; not used."]
11940pub type xmlSchemaAttributeLink = _xmlSchemaAttributeLink;
11941pub type xmlSchemaAttributeLinkPtr = *mut xmlSchemaAttributeLink;
11942#[repr(C)]
11943#[derive(Debug, Copy, Clone)]
11944pub struct _xmlSchemaAttributeLink {
11945  pub next: *mut _xmlSchemaAttributeLink,
11946  pub attr: *mut _xmlSchemaAttribute,
11947}
11948#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11949const _: () = {
11950  ["Size of _xmlSchemaAttributeLink"][::std::mem::size_of::<_xmlSchemaAttributeLink>() - 16usize];
11951  ["Alignment of _xmlSchemaAttributeLink"]
11952    [::std::mem::align_of::<_xmlSchemaAttributeLink>() - 8usize];
11953  ["Offset of field: _xmlSchemaAttributeLink::next"]
11954    [::std::mem::offset_of!(_xmlSchemaAttributeLink, next) - 0usize];
11955  ["Offset of field: _xmlSchemaAttributeLink::attr"]
11956    [::std::mem::offset_of!(_xmlSchemaAttributeLink, attr) - 8usize];
11957};
11958#[doc = " xmlSchemaCharValueLink:\n Used to build a list of namespaces on wildcards."]
11959pub type xmlSchemaWildcardNs = _xmlSchemaWildcardNs;
11960pub type xmlSchemaWildcardNsPtr = *mut xmlSchemaWildcardNs;
11961#[repr(C)]
11962#[derive(Debug, Copy, Clone)]
11963pub struct _xmlSchemaWildcardNs {
11964  pub next: *mut _xmlSchemaWildcardNs,
11965  pub value: *const xmlChar,
11966}
11967#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11968const _: () = {
11969  ["Size of _xmlSchemaWildcardNs"][::std::mem::size_of::<_xmlSchemaWildcardNs>() - 16usize];
11970  ["Alignment of _xmlSchemaWildcardNs"][::std::mem::align_of::<_xmlSchemaWildcardNs>() - 8usize];
11971  ["Offset of field: _xmlSchemaWildcardNs::next"]
11972    [::std::mem::offset_of!(_xmlSchemaWildcardNs, next) - 0usize];
11973  ["Offset of field: _xmlSchemaWildcardNs::value"]
11974    [::std::mem::offset_of!(_xmlSchemaWildcardNs, value) - 8usize];
11975};
11976#[doc = " xmlSchemaWildcard.\n A wildcard."]
11977pub type xmlSchemaWildcard = _xmlSchemaWildcard;
11978pub type xmlSchemaWildcardPtr = *mut xmlSchemaWildcard;
11979#[repr(C)]
11980#[derive(Debug, Copy, Clone)]
11981pub struct _xmlSchemaWildcard {
11982  pub type_: xmlSchemaTypeType,
11983  pub id: *const xmlChar,
11984  pub annot: xmlSchemaAnnotPtr,
11985  pub node: xmlNodePtr,
11986  pub minOccurs: ::std::os::raw::c_int,
11987  pub maxOccurs: ::std::os::raw::c_int,
11988  pub processContents: ::std::os::raw::c_int,
11989  pub any: ::std::os::raw::c_int,
11990  pub nsSet: xmlSchemaWildcardNsPtr,
11991  pub negNsSet: xmlSchemaWildcardNsPtr,
11992  pub flags: ::std::os::raw::c_int,
11993}
11994#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11995const _: () = {
11996  ["Size of _xmlSchemaWildcard"][::std::mem::size_of::<_xmlSchemaWildcard>() - 72usize];
11997  ["Alignment of _xmlSchemaWildcard"][::std::mem::align_of::<_xmlSchemaWildcard>() - 8usize];
11998  ["Offset of field: _xmlSchemaWildcard::type_"]
11999    [::std::mem::offset_of!(_xmlSchemaWildcard, type_) - 0usize];
12000  ["Offset of field: _xmlSchemaWildcard::id"]
12001    [::std::mem::offset_of!(_xmlSchemaWildcard, id) - 8usize];
12002  ["Offset of field: _xmlSchemaWildcard::annot"]
12003    [::std::mem::offset_of!(_xmlSchemaWildcard, annot) - 16usize];
12004  ["Offset of field: _xmlSchemaWildcard::node"]
12005    [::std::mem::offset_of!(_xmlSchemaWildcard, node) - 24usize];
12006  ["Offset of field: _xmlSchemaWildcard::minOccurs"]
12007    [::std::mem::offset_of!(_xmlSchemaWildcard, minOccurs) - 32usize];
12008  ["Offset of field: _xmlSchemaWildcard::maxOccurs"]
12009    [::std::mem::offset_of!(_xmlSchemaWildcard, maxOccurs) - 36usize];
12010  ["Offset of field: _xmlSchemaWildcard::processContents"]
12011    [::std::mem::offset_of!(_xmlSchemaWildcard, processContents) - 40usize];
12012  ["Offset of field: _xmlSchemaWildcard::any"]
12013    [::std::mem::offset_of!(_xmlSchemaWildcard, any) - 44usize];
12014  ["Offset of field: _xmlSchemaWildcard::nsSet"]
12015    [::std::mem::offset_of!(_xmlSchemaWildcard, nsSet) - 48usize];
12016  ["Offset of field: _xmlSchemaWildcard::negNsSet"]
12017    [::std::mem::offset_of!(_xmlSchemaWildcard, negNsSet) - 56usize];
12018  ["Offset of field: _xmlSchemaWildcard::flags"]
12019    [::std::mem::offset_of!(_xmlSchemaWildcard, flags) - 64usize];
12020};
12021#[doc = " An attribute group definition.\n\n xmlSchemaAttribute and xmlSchemaAttributeGroup start of structures\n must be kept similar"]
12022pub type xmlSchemaAttributeGroup = _xmlSchemaAttributeGroup;
12023pub type xmlSchemaAttributeGroupPtr = *mut xmlSchemaAttributeGroup;
12024#[repr(C)]
12025#[derive(Debug, Copy, Clone)]
12026pub struct _xmlSchemaAttributeGroup {
12027  pub type_: xmlSchemaTypeType,
12028  pub next: *mut _xmlSchemaAttribute,
12029  pub name: *const xmlChar,
12030  pub id: *const xmlChar,
12031  pub ref_: *const xmlChar,
12032  pub refNs: *const xmlChar,
12033  pub annot: xmlSchemaAnnotPtr,
12034  pub attributes: xmlSchemaAttributePtr,
12035  pub node: xmlNodePtr,
12036  pub flags: ::std::os::raw::c_int,
12037  pub attributeWildcard: xmlSchemaWildcardPtr,
12038  pub refPrefix: *const xmlChar,
12039  pub refItem: xmlSchemaAttributeGroupPtr,
12040  pub targetNamespace: *const xmlChar,
12041  pub attrUses: *mut ::std::os::raw::c_void,
12042}
12043#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12044const _: () = {
12045  ["Size of _xmlSchemaAttributeGroup"]
12046    [::std::mem::size_of::<_xmlSchemaAttributeGroup>() - 120usize];
12047  ["Alignment of _xmlSchemaAttributeGroup"]
12048    [::std::mem::align_of::<_xmlSchemaAttributeGroup>() - 8usize];
12049  ["Offset of field: _xmlSchemaAttributeGroup::type_"]
12050    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, type_) - 0usize];
12051  ["Offset of field: _xmlSchemaAttributeGroup::next"]
12052    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, next) - 8usize];
12053  ["Offset of field: _xmlSchemaAttributeGroup::name"]
12054    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, name) - 16usize];
12055  ["Offset of field: _xmlSchemaAttributeGroup::id"]
12056    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, id) - 24usize];
12057  ["Offset of field: _xmlSchemaAttributeGroup::ref_"]
12058    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, ref_) - 32usize];
12059  ["Offset of field: _xmlSchemaAttributeGroup::refNs"]
12060    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, refNs) - 40usize];
12061  ["Offset of field: _xmlSchemaAttributeGroup::annot"]
12062    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, annot) - 48usize];
12063  ["Offset of field: _xmlSchemaAttributeGroup::attributes"]
12064    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, attributes) - 56usize];
12065  ["Offset of field: _xmlSchemaAttributeGroup::node"]
12066    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, node) - 64usize];
12067  ["Offset of field: _xmlSchemaAttributeGroup::flags"]
12068    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, flags) - 72usize];
12069  ["Offset of field: _xmlSchemaAttributeGroup::attributeWildcard"]
12070    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, attributeWildcard) - 80usize];
12071  ["Offset of field: _xmlSchemaAttributeGroup::refPrefix"]
12072    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, refPrefix) - 88usize];
12073  ["Offset of field: _xmlSchemaAttributeGroup::refItem"]
12074    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, refItem) - 96usize];
12075  ["Offset of field: _xmlSchemaAttributeGroup::targetNamespace"]
12076    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, targetNamespace) - 104usize];
12077  ["Offset of field: _xmlSchemaAttributeGroup::attrUses"]
12078    [::std::mem::offset_of!(_xmlSchemaAttributeGroup, attrUses) - 112usize];
12079};
12080#[doc = " xmlSchemaTypeLink:\n Used to build a list of types (e.g. member types of\n simpleType with variety \"union\")."]
12081pub type xmlSchemaTypeLink = _xmlSchemaTypeLink;
12082pub type xmlSchemaTypeLinkPtr = *mut xmlSchemaTypeLink;
12083#[repr(C)]
12084#[derive(Debug, Copy, Clone)]
12085pub struct _xmlSchemaTypeLink {
12086  pub next: *mut _xmlSchemaTypeLink,
12087  pub type_: xmlSchemaTypePtr,
12088}
12089#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12090const _: () = {
12091  ["Size of _xmlSchemaTypeLink"][::std::mem::size_of::<_xmlSchemaTypeLink>() - 16usize];
12092  ["Alignment of _xmlSchemaTypeLink"][::std::mem::align_of::<_xmlSchemaTypeLink>() - 8usize];
12093  ["Offset of field: _xmlSchemaTypeLink::next"]
12094    [::std::mem::offset_of!(_xmlSchemaTypeLink, next) - 0usize];
12095  ["Offset of field: _xmlSchemaTypeLink::type_"]
12096    [::std::mem::offset_of!(_xmlSchemaTypeLink, type_) - 8usize];
12097};
12098#[doc = " xmlSchemaFacetLink:\n Used to build a list of facets."]
12099pub type xmlSchemaFacetLink = _xmlSchemaFacetLink;
12100pub type xmlSchemaFacetLinkPtr = *mut xmlSchemaFacetLink;
12101#[repr(C)]
12102#[derive(Debug, Copy, Clone)]
12103pub struct _xmlSchemaFacetLink {
12104  pub next: *mut _xmlSchemaFacetLink,
12105  pub facet: xmlSchemaFacetPtr,
12106}
12107#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12108const _: () = {
12109  ["Size of _xmlSchemaFacetLink"][::std::mem::size_of::<_xmlSchemaFacetLink>() - 16usize];
12110  ["Alignment of _xmlSchemaFacetLink"][::std::mem::align_of::<_xmlSchemaFacetLink>() - 8usize];
12111  ["Offset of field: _xmlSchemaFacetLink::next"]
12112    [::std::mem::offset_of!(_xmlSchemaFacetLink, next) - 0usize];
12113  ["Offset of field: _xmlSchemaFacetLink::facet"]
12114    [::std::mem::offset_of!(_xmlSchemaFacetLink, facet) - 8usize];
12115};
12116#[doc = " _xmlSchemaType:\n\n Schemas type definition."]
12117#[repr(C)]
12118#[derive(Debug, Copy, Clone)]
12119pub struct _xmlSchemaType {
12120  pub type_: xmlSchemaTypeType,
12121  pub next: *mut _xmlSchemaType,
12122  pub name: *const xmlChar,
12123  pub id: *const xmlChar,
12124  pub ref_: *const xmlChar,
12125  pub refNs: *const xmlChar,
12126  pub annot: xmlSchemaAnnotPtr,
12127  pub subtypes: xmlSchemaTypePtr,
12128  pub attributes: xmlSchemaAttributePtr,
12129  pub node: xmlNodePtr,
12130  pub minOccurs: ::std::os::raw::c_int,
12131  pub maxOccurs: ::std::os::raw::c_int,
12132  pub flags: ::std::os::raw::c_int,
12133  pub contentType: xmlSchemaContentType,
12134  pub base: *const xmlChar,
12135  pub baseNs: *const xmlChar,
12136  pub baseType: xmlSchemaTypePtr,
12137  pub facets: xmlSchemaFacetPtr,
12138  pub redef: *mut _xmlSchemaType,
12139  pub recurse: ::std::os::raw::c_int,
12140  pub attributeUses: *mut xmlSchemaAttributeLinkPtr,
12141  pub attributeWildcard: xmlSchemaWildcardPtr,
12142  pub builtInType: ::std::os::raw::c_int,
12143  pub memberTypes: xmlSchemaTypeLinkPtr,
12144  pub facetSet: xmlSchemaFacetLinkPtr,
12145  pub refPrefix: *const xmlChar,
12146  pub contentTypeDef: xmlSchemaTypePtr,
12147  pub contModel: xmlRegexpPtr,
12148  pub targetNamespace: *const xmlChar,
12149  pub attrUses: *mut ::std::os::raw::c_void,
12150}
12151#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12152const _: () = {
12153  ["Size of _xmlSchemaType"][::std::mem::size_of::<_xmlSchemaType>() - 224usize];
12154  ["Alignment of _xmlSchemaType"][::std::mem::align_of::<_xmlSchemaType>() - 8usize];
12155  ["Offset of field: _xmlSchemaType::type_"]
12156    [::std::mem::offset_of!(_xmlSchemaType, type_) - 0usize];
12157  ["Offset of field: _xmlSchemaType::next"][::std::mem::offset_of!(_xmlSchemaType, next) - 8usize];
12158  ["Offset of field: _xmlSchemaType::name"][::std::mem::offset_of!(_xmlSchemaType, name) - 16usize];
12159  ["Offset of field: _xmlSchemaType::id"][::std::mem::offset_of!(_xmlSchemaType, id) - 24usize];
12160  ["Offset of field: _xmlSchemaType::ref_"][::std::mem::offset_of!(_xmlSchemaType, ref_) - 32usize];
12161  ["Offset of field: _xmlSchemaType::refNs"]
12162    [::std::mem::offset_of!(_xmlSchemaType, refNs) - 40usize];
12163  ["Offset of field: _xmlSchemaType::annot"]
12164    [::std::mem::offset_of!(_xmlSchemaType, annot) - 48usize];
12165  ["Offset of field: _xmlSchemaType::subtypes"]
12166    [::std::mem::offset_of!(_xmlSchemaType, subtypes) - 56usize];
12167  ["Offset of field: _xmlSchemaType::attributes"]
12168    [::std::mem::offset_of!(_xmlSchemaType, attributes) - 64usize];
12169  ["Offset of field: _xmlSchemaType::node"][::std::mem::offset_of!(_xmlSchemaType, node) - 72usize];
12170  ["Offset of field: _xmlSchemaType::minOccurs"]
12171    [::std::mem::offset_of!(_xmlSchemaType, minOccurs) - 80usize];
12172  ["Offset of field: _xmlSchemaType::maxOccurs"]
12173    [::std::mem::offset_of!(_xmlSchemaType, maxOccurs) - 84usize];
12174  ["Offset of field: _xmlSchemaType::flags"]
12175    [::std::mem::offset_of!(_xmlSchemaType, flags) - 88usize];
12176  ["Offset of field: _xmlSchemaType::contentType"]
12177    [::std::mem::offset_of!(_xmlSchemaType, contentType) - 92usize];
12178  ["Offset of field: _xmlSchemaType::base"][::std::mem::offset_of!(_xmlSchemaType, base) - 96usize];
12179  ["Offset of field: _xmlSchemaType::baseNs"]
12180    [::std::mem::offset_of!(_xmlSchemaType, baseNs) - 104usize];
12181  ["Offset of field: _xmlSchemaType::baseType"]
12182    [::std::mem::offset_of!(_xmlSchemaType, baseType) - 112usize];
12183  ["Offset of field: _xmlSchemaType::facets"]
12184    [::std::mem::offset_of!(_xmlSchemaType, facets) - 120usize];
12185  ["Offset of field: _xmlSchemaType::redef"]
12186    [::std::mem::offset_of!(_xmlSchemaType, redef) - 128usize];
12187  ["Offset of field: _xmlSchemaType::recurse"]
12188    [::std::mem::offset_of!(_xmlSchemaType, recurse) - 136usize];
12189  ["Offset of field: _xmlSchemaType::attributeUses"]
12190    [::std::mem::offset_of!(_xmlSchemaType, attributeUses) - 144usize];
12191  ["Offset of field: _xmlSchemaType::attributeWildcard"]
12192    [::std::mem::offset_of!(_xmlSchemaType, attributeWildcard) - 152usize];
12193  ["Offset of field: _xmlSchemaType::builtInType"]
12194    [::std::mem::offset_of!(_xmlSchemaType, builtInType) - 160usize];
12195  ["Offset of field: _xmlSchemaType::memberTypes"]
12196    [::std::mem::offset_of!(_xmlSchemaType, memberTypes) - 168usize];
12197  ["Offset of field: _xmlSchemaType::facetSet"]
12198    [::std::mem::offset_of!(_xmlSchemaType, facetSet) - 176usize];
12199  ["Offset of field: _xmlSchemaType::refPrefix"]
12200    [::std::mem::offset_of!(_xmlSchemaType, refPrefix) - 184usize];
12201  ["Offset of field: _xmlSchemaType::contentTypeDef"]
12202    [::std::mem::offset_of!(_xmlSchemaType, contentTypeDef) - 192usize];
12203  ["Offset of field: _xmlSchemaType::contModel"]
12204    [::std::mem::offset_of!(_xmlSchemaType, contModel) - 200usize];
12205  ["Offset of field: _xmlSchemaType::targetNamespace"]
12206    [::std::mem::offset_of!(_xmlSchemaType, targetNamespace) - 208usize];
12207  ["Offset of field: _xmlSchemaType::attrUses"]
12208    [::std::mem::offset_of!(_xmlSchemaType, attrUses) - 216usize];
12209};
12210pub type xmlSchemaElement = _xmlSchemaElement;
12211pub type xmlSchemaElementPtr = *mut xmlSchemaElement;
12212#[repr(C)]
12213#[derive(Debug, Copy, Clone)]
12214pub struct _xmlSchemaElement {
12215  pub type_: xmlSchemaTypeType,
12216  pub next: *mut _xmlSchemaType,
12217  pub name: *const xmlChar,
12218  pub id: *const xmlChar,
12219  pub ref_: *const xmlChar,
12220  pub refNs: *const xmlChar,
12221  pub annot: xmlSchemaAnnotPtr,
12222  pub subtypes: xmlSchemaTypePtr,
12223  pub attributes: xmlSchemaAttributePtr,
12224  pub node: xmlNodePtr,
12225  pub minOccurs: ::std::os::raw::c_int,
12226  pub maxOccurs: ::std::os::raw::c_int,
12227  pub flags: ::std::os::raw::c_int,
12228  pub targetNamespace: *const xmlChar,
12229  pub namedType: *const xmlChar,
12230  pub namedTypeNs: *const xmlChar,
12231  pub substGroup: *const xmlChar,
12232  pub substGroupNs: *const xmlChar,
12233  pub scope: *const xmlChar,
12234  pub value: *const xmlChar,
12235  pub refDecl: *mut _xmlSchemaElement,
12236  pub contModel: xmlRegexpPtr,
12237  pub contentType: xmlSchemaContentType,
12238  pub refPrefix: *const xmlChar,
12239  pub defVal: xmlSchemaValPtr,
12240  pub idcs: *mut ::std::os::raw::c_void,
12241}
12242#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12243const _: () = {
12244  ["Size of _xmlSchemaElement"][::std::mem::size_of::<_xmlSchemaElement>() - 200usize];
12245  ["Alignment of _xmlSchemaElement"][::std::mem::align_of::<_xmlSchemaElement>() - 8usize];
12246  ["Offset of field: _xmlSchemaElement::type_"]
12247    [::std::mem::offset_of!(_xmlSchemaElement, type_) - 0usize];
12248  ["Offset of field: _xmlSchemaElement::next"]
12249    [::std::mem::offset_of!(_xmlSchemaElement, next) - 8usize];
12250  ["Offset of field: _xmlSchemaElement::name"]
12251    [::std::mem::offset_of!(_xmlSchemaElement, name) - 16usize];
12252  ["Offset of field: _xmlSchemaElement::id"]
12253    [::std::mem::offset_of!(_xmlSchemaElement, id) - 24usize];
12254  ["Offset of field: _xmlSchemaElement::ref_"]
12255    [::std::mem::offset_of!(_xmlSchemaElement, ref_) - 32usize];
12256  ["Offset of field: _xmlSchemaElement::refNs"]
12257    [::std::mem::offset_of!(_xmlSchemaElement, refNs) - 40usize];
12258  ["Offset of field: _xmlSchemaElement::annot"]
12259    [::std::mem::offset_of!(_xmlSchemaElement, annot) - 48usize];
12260  ["Offset of field: _xmlSchemaElement::subtypes"]
12261    [::std::mem::offset_of!(_xmlSchemaElement, subtypes) - 56usize];
12262  ["Offset of field: _xmlSchemaElement::attributes"]
12263    [::std::mem::offset_of!(_xmlSchemaElement, attributes) - 64usize];
12264  ["Offset of field: _xmlSchemaElement::node"]
12265    [::std::mem::offset_of!(_xmlSchemaElement, node) - 72usize];
12266  ["Offset of field: _xmlSchemaElement::minOccurs"]
12267    [::std::mem::offset_of!(_xmlSchemaElement, minOccurs) - 80usize];
12268  ["Offset of field: _xmlSchemaElement::maxOccurs"]
12269    [::std::mem::offset_of!(_xmlSchemaElement, maxOccurs) - 84usize];
12270  ["Offset of field: _xmlSchemaElement::flags"]
12271    [::std::mem::offset_of!(_xmlSchemaElement, flags) - 88usize];
12272  ["Offset of field: _xmlSchemaElement::targetNamespace"]
12273    [::std::mem::offset_of!(_xmlSchemaElement, targetNamespace) - 96usize];
12274  ["Offset of field: _xmlSchemaElement::namedType"]
12275    [::std::mem::offset_of!(_xmlSchemaElement, namedType) - 104usize];
12276  ["Offset of field: _xmlSchemaElement::namedTypeNs"]
12277    [::std::mem::offset_of!(_xmlSchemaElement, namedTypeNs) - 112usize];
12278  ["Offset of field: _xmlSchemaElement::substGroup"]
12279    [::std::mem::offset_of!(_xmlSchemaElement, substGroup) - 120usize];
12280  ["Offset of field: _xmlSchemaElement::substGroupNs"]
12281    [::std::mem::offset_of!(_xmlSchemaElement, substGroupNs) - 128usize];
12282  ["Offset of field: _xmlSchemaElement::scope"]
12283    [::std::mem::offset_of!(_xmlSchemaElement, scope) - 136usize];
12284  ["Offset of field: _xmlSchemaElement::value"]
12285    [::std::mem::offset_of!(_xmlSchemaElement, value) - 144usize];
12286  ["Offset of field: _xmlSchemaElement::refDecl"]
12287    [::std::mem::offset_of!(_xmlSchemaElement, refDecl) - 152usize];
12288  ["Offset of field: _xmlSchemaElement::contModel"]
12289    [::std::mem::offset_of!(_xmlSchemaElement, contModel) - 160usize];
12290  ["Offset of field: _xmlSchemaElement::contentType"]
12291    [::std::mem::offset_of!(_xmlSchemaElement, contentType) - 168usize];
12292  ["Offset of field: _xmlSchemaElement::refPrefix"]
12293    [::std::mem::offset_of!(_xmlSchemaElement, refPrefix) - 176usize];
12294  ["Offset of field: _xmlSchemaElement::defVal"]
12295    [::std::mem::offset_of!(_xmlSchemaElement, defVal) - 184usize];
12296  ["Offset of field: _xmlSchemaElement::idcs"]
12297    [::std::mem::offset_of!(_xmlSchemaElement, idcs) - 192usize];
12298};
12299#[doc = " A facet definition."]
12300#[repr(C)]
12301#[derive(Debug, Copy, Clone)]
12302pub struct _xmlSchemaFacet {
12303  pub type_: xmlSchemaTypeType,
12304  pub next: *mut _xmlSchemaFacet,
12305  pub value: *const xmlChar,
12306  pub id: *const xmlChar,
12307  pub annot: xmlSchemaAnnotPtr,
12308  pub node: xmlNodePtr,
12309  pub fixed: ::std::os::raw::c_int,
12310  pub whitespace: ::std::os::raw::c_int,
12311  pub val: xmlSchemaValPtr,
12312  pub regexp: xmlRegexpPtr,
12313}
12314#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12315const _: () = {
12316  ["Size of _xmlSchemaFacet"][::std::mem::size_of::<_xmlSchemaFacet>() - 72usize];
12317  ["Alignment of _xmlSchemaFacet"][::std::mem::align_of::<_xmlSchemaFacet>() - 8usize];
12318  ["Offset of field: _xmlSchemaFacet::type_"]
12319    [::std::mem::offset_of!(_xmlSchemaFacet, type_) - 0usize];
12320  ["Offset of field: _xmlSchemaFacet::next"]
12321    [::std::mem::offset_of!(_xmlSchemaFacet, next) - 8usize];
12322  ["Offset of field: _xmlSchemaFacet::value"]
12323    [::std::mem::offset_of!(_xmlSchemaFacet, value) - 16usize];
12324  ["Offset of field: _xmlSchemaFacet::id"][::std::mem::offset_of!(_xmlSchemaFacet, id) - 24usize];
12325  ["Offset of field: _xmlSchemaFacet::annot"]
12326    [::std::mem::offset_of!(_xmlSchemaFacet, annot) - 32usize];
12327  ["Offset of field: _xmlSchemaFacet::node"]
12328    [::std::mem::offset_of!(_xmlSchemaFacet, node) - 40usize];
12329  ["Offset of field: _xmlSchemaFacet::fixed"]
12330    [::std::mem::offset_of!(_xmlSchemaFacet, fixed) - 48usize];
12331  ["Offset of field: _xmlSchemaFacet::whitespace"]
12332    [::std::mem::offset_of!(_xmlSchemaFacet, whitespace) - 52usize];
12333  ["Offset of field: _xmlSchemaFacet::val"][::std::mem::offset_of!(_xmlSchemaFacet, val) - 56usize];
12334  ["Offset of field: _xmlSchemaFacet::regexp"]
12335    [::std::mem::offset_of!(_xmlSchemaFacet, regexp) - 64usize];
12336};
12337#[doc = " A notation definition."]
12338pub type xmlSchemaNotation = _xmlSchemaNotation;
12339pub type xmlSchemaNotationPtr = *mut xmlSchemaNotation;
12340#[repr(C)]
12341#[derive(Debug, Copy, Clone)]
12342pub struct _xmlSchemaNotation {
12343  pub type_: xmlSchemaTypeType,
12344  pub name: *const xmlChar,
12345  pub annot: xmlSchemaAnnotPtr,
12346  pub identifier: *const xmlChar,
12347  pub targetNamespace: *const xmlChar,
12348}
12349#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12350const _: () = {
12351  ["Size of _xmlSchemaNotation"][::std::mem::size_of::<_xmlSchemaNotation>() - 40usize];
12352  ["Alignment of _xmlSchemaNotation"][::std::mem::align_of::<_xmlSchemaNotation>() - 8usize];
12353  ["Offset of field: _xmlSchemaNotation::type_"]
12354    [::std::mem::offset_of!(_xmlSchemaNotation, type_) - 0usize];
12355  ["Offset of field: _xmlSchemaNotation::name"]
12356    [::std::mem::offset_of!(_xmlSchemaNotation, name) - 8usize];
12357  ["Offset of field: _xmlSchemaNotation::annot"]
12358    [::std::mem::offset_of!(_xmlSchemaNotation, annot) - 16usize];
12359  ["Offset of field: _xmlSchemaNotation::identifier"]
12360    [::std::mem::offset_of!(_xmlSchemaNotation, identifier) - 24usize];
12361  ["Offset of field: _xmlSchemaNotation::targetNamespace"]
12362    [::std::mem::offset_of!(_xmlSchemaNotation, targetNamespace) - 32usize];
12363};
12364#[doc = " _xmlSchema:\n\n A Schemas definition"]
12365#[repr(C)]
12366#[derive(Debug, Copy, Clone)]
12367pub struct _xmlSchema {
12368  pub name: *const xmlChar,
12369  pub targetNamespace: *const xmlChar,
12370  pub version: *const xmlChar,
12371  pub id: *const xmlChar,
12372  pub doc: xmlDocPtr,
12373  pub annot: xmlSchemaAnnotPtr,
12374  pub flags: ::std::os::raw::c_int,
12375  pub typeDecl: xmlHashTablePtr,
12376  pub attrDecl: xmlHashTablePtr,
12377  pub attrgrpDecl: xmlHashTablePtr,
12378  pub elemDecl: xmlHashTablePtr,
12379  pub notaDecl: xmlHashTablePtr,
12380  pub schemasImports: xmlHashTablePtr,
12381  pub _private: *mut ::std::os::raw::c_void,
12382  pub groupDecl: xmlHashTablePtr,
12383  pub dict: xmlDictPtr,
12384  pub includes: *mut ::std::os::raw::c_void,
12385  pub preserve: ::std::os::raw::c_int,
12386  pub counter: ::std::os::raw::c_int,
12387  pub idcDef: xmlHashTablePtr,
12388  pub volatiles: *mut ::std::os::raw::c_void,
12389}
12390#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12391const _: () = {
12392  ["Size of _xmlSchema"][::std::mem::size_of::<_xmlSchema>() - 160usize];
12393  ["Alignment of _xmlSchema"][::std::mem::align_of::<_xmlSchema>() - 8usize];
12394  ["Offset of field: _xmlSchema::name"][::std::mem::offset_of!(_xmlSchema, name) - 0usize];
12395  ["Offset of field: _xmlSchema::targetNamespace"]
12396    [::std::mem::offset_of!(_xmlSchema, targetNamespace) - 8usize];
12397  ["Offset of field: _xmlSchema::version"][::std::mem::offset_of!(_xmlSchema, version) - 16usize];
12398  ["Offset of field: _xmlSchema::id"][::std::mem::offset_of!(_xmlSchema, id) - 24usize];
12399  ["Offset of field: _xmlSchema::doc"][::std::mem::offset_of!(_xmlSchema, doc) - 32usize];
12400  ["Offset of field: _xmlSchema::annot"][::std::mem::offset_of!(_xmlSchema, annot) - 40usize];
12401  ["Offset of field: _xmlSchema::flags"][::std::mem::offset_of!(_xmlSchema, flags) - 48usize];
12402  ["Offset of field: _xmlSchema::typeDecl"][::std::mem::offset_of!(_xmlSchema, typeDecl) - 56usize];
12403  ["Offset of field: _xmlSchema::attrDecl"][::std::mem::offset_of!(_xmlSchema, attrDecl) - 64usize];
12404  ["Offset of field: _xmlSchema::attrgrpDecl"]
12405    [::std::mem::offset_of!(_xmlSchema, attrgrpDecl) - 72usize];
12406  ["Offset of field: _xmlSchema::elemDecl"][::std::mem::offset_of!(_xmlSchema, elemDecl) - 80usize];
12407  ["Offset of field: _xmlSchema::notaDecl"][::std::mem::offset_of!(_xmlSchema, notaDecl) - 88usize];
12408  ["Offset of field: _xmlSchema::schemasImports"]
12409    [::std::mem::offset_of!(_xmlSchema, schemasImports) - 96usize];
12410  ["Offset of field: _xmlSchema::_private"]
12411    [::std::mem::offset_of!(_xmlSchema, _private) - 104usize];
12412  ["Offset of field: _xmlSchema::groupDecl"]
12413    [::std::mem::offset_of!(_xmlSchema, groupDecl) - 112usize];
12414  ["Offset of field: _xmlSchema::dict"][::std::mem::offset_of!(_xmlSchema, dict) - 120usize];
12415  ["Offset of field: _xmlSchema::includes"]
12416    [::std::mem::offset_of!(_xmlSchema, includes) - 128usize];
12417  ["Offset of field: _xmlSchema::preserve"]
12418    [::std::mem::offset_of!(_xmlSchema, preserve) - 136usize];
12419  ["Offset of field: _xmlSchema::counter"][::std::mem::offset_of!(_xmlSchema, counter) - 140usize];
12420  ["Offset of field: _xmlSchema::idcDef"][::std::mem::offset_of!(_xmlSchema, idcDef) - 144usize];
12421  ["Offset of field: _xmlSchema::volatiles"]
12422    [::std::mem::offset_of!(_xmlSchema, volatiles) - 152usize];
12423};
12424unsafe extern "C" {
12425  pub fn xmlSchemaFreeType(type_: xmlSchemaTypePtr);
12426}
12427unsafe extern "C" {
12428  pub fn xmlSchemaFreeWildcard(wildcard: xmlSchemaWildcardPtr);
12429}
12430pub const xmlSchematronValidOptions_XML_SCHEMATRON_OUT_QUIET: xmlSchematronValidOptions = 1;
12431pub const xmlSchematronValidOptions_XML_SCHEMATRON_OUT_TEXT: xmlSchematronValidOptions = 2;
12432pub const xmlSchematronValidOptions_XML_SCHEMATRON_OUT_XML: xmlSchematronValidOptions = 4;
12433pub const xmlSchematronValidOptions_XML_SCHEMATRON_OUT_ERROR: xmlSchematronValidOptions = 8;
12434pub const xmlSchematronValidOptions_XML_SCHEMATRON_OUT_FILE: xmlSchematronValidOptions = 256;
12435pub const xmlSchematronValidOptions_XML_SCHEMATRON_OUT_BUFFER: xmlSchematronValidOptions = 512;
12436pub const xmlSchematronValidOptions_XML_SCHEMATRON_OUT_IO: xmlSchematronValidOptions = 1024;
12437pub type xmlSchematronValidOptions = ::std::os::raw::c_uint;
12438#[repr(C)]
12439#[derive(Debug, Copy, Clone)]
12440pub struct _xmlSchematron {
12441  _unused: [u8; 0],
12442}
12443#[doc = " The schemas related types are kept internal"]
12444pub type xmlSchematron = _xmlSchematron;
12445pub type xmlSchematronPtr = *mut xmlSchematron;
12446#[doc = " xmlSchematronValidityErrorFunc:\n @ctx: the validation context\n @msg: the message\n @...: extra arguments\n\n Signature of an error callback from a Schematron validation"]
12447pub type xmlSchematronValidityErrorFunc = ::std::option::Option<
12448  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...),
12449>;
12450#[doc = " xmlSchematronValidityWarningFunc:\n @ctx: the validation context\n @msg: the message\n @...: extra arguments\n\n Signature of a warning callback from a Schematron validation"]
12451pub type xmlSchematronValidityWarningFunc = ::std::option::Option<
12452  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...),
12453>;
12454#[repr(C)]
12455#[derive(Debug, Copy, Clone)]
12456pub struct _xmlSchematronParserCtxt {
12457  _unused: [u8; 0],
12458}
12459#[doc = " A schemas validation context"]
12460pub type xmlSchematronParserCtxt = _xmlSchematronParserCtxt;
12461pub type xmlSchematronParserCtxtPtr = *mut xmlSchematronParserCtxt;
12462#[repr(C)]
12463#[derive(Debug, Copy, Clone)]
12464pub struct _xmlSchematronValidCtxt {
12465  _unused: [u8; 0],
12466}
12467pub type xmlSchematronValidCtxt = _xmlSchematronValidCtxt;
12468pub type xmlSchematronValidCtxtPtr = *mut xmlSchematronValidCtxt;
12469unsafe extern "C" {
12470  pub fn xmlSchematronNewParserCtxt(
12471    URL: *const ::std::os::raw::c_char,
12472  ) -> xmlSchematronParserCtxtPtr;
12473}
12474unsafe extern "C" {
12475  pub fn xmlSchematronNewMemParserCtxt(
12476    buffer: *const ::std::os::raw::c_char,
12477    size: ::std::os::raw::c_int,
12478  ) -> xmlSchematronParserCtxtPtr;
12479}
12480unsafe extern "C" {
12481  pub fn xmlSchematronNewDocParserCtxt(doc: xmlDocPtr) -> xmlSchematronParserCtxtPtr;
12482}
12483unsafe extern "C" {
12484  pub fn xmlSchematronFreeParserCtxt(ctxt: xmlSchematronParserCtxtPtr);
12485}
12486unsafe extern "C" {
12487  #[doc = "XMLPUBFUN void XMLCALL\nxmlSchematronSetParserErrors(xmlSchematronParserCtxtPtr ctxt,\nxmlSchematronValidityErrorFunc err,\nxmlSchematronValidityWarningFunc warn,\nvoid *ctx);\nXMLPUBFUN int XMLCALL\nxmlSchematronGetParserErrors(xmlSchematronParserCtxtPtr ctxt,\nxmlSchematronValidityErrorFunc * err,\nxmlSchematronValidityWarningFunc * warn,\nvoid **ctx);\nXMLPUBFUN int XMLCALL\nxmlSchematronIsValid\t(xmlSchematronValidCtxtPtr ctxt);"]
12488  pub fn xmlSchematronParse(ctxt: xmlSchematronParserCtxtPtr) -> xmlSchematronPtr;
12489}
12490unsafe extern "C" {
12491  pub fn xmlSchematronFree(schema: xmlSchematronPtr);
12492}
12493unsafe extern "C" {
12494  pub fn xmlSchematronSetValidStructuredErrors(
12495    ctxt: xmlSchematronValidCtxtPtr,
12496    serror: xmlStructuredErrorFunc,
12497    ctx: *mut ::std::os::raw::c_void,
12498  );
12499}
12500unsafe extern "C" {
12501  #[doc = "XMLPUBFUN void XMLCALL\nxmlSchematronSetValidErrors\t(xmlSchematronValidCtxtPtr ctxt,\nxmlSchematronValidityErrorFunc err,\nxmlSchematronValidityWarningFunc warn,\nvoid *ctx);\nXMLPUBFUN int XMLCALL\nxmlSchematronGetValidErrors\t(xmlSchematronValidCtxtPtr ctxt,\nxmlSchematronValidityErrorFunc *err,\nxmlSchematronValidityWarningFunc *warn,\nvoid **ctx);\nXMLPUBFUN int XMLCALL\nxmlSchematronSetValidOptions(xmlSchematronValidCtxtPtr ctxt,\nint options);\nXMLPUBFUN int XMLCALL\nxmlSchematronValidCtxtGetOptions(xmlSchematronValidCtxtPtr ctxt);\nXMLPUBFUN int XMLCALL\nxmlSchematronValidateOneElement (xmlSchematronValidCtxtPtr ctxt,\nxmlNodePtr elem);"]
12502  pub fn xmlSchematronNewValidCtxt(
12503    schema: xmlSchematronPtr,
12504    options: ::std::os::raw::c_int,
12505  ) -> xmlSchematronValidCtxtPtr;
12506}
12507unsafe extern "C" {
12508  pub fn xmlSchematronFreeValidCtxt(ctxt: xmlSchematronValidCtxtPtr);
12509}
12510unsafe extern "C" {
12511  pub fn xmlSchematronValidateDoc(
12512    ctxt: xmlSchematronValidCtxtPtr,
12513    instance: xmlDocPtr,
12514  ) -> ::std::os::raw::c_int;
12515}
12516#[doc = " xmlURI:\n\n A parsed URI reference. This is a struct containing the various fields\n as described in RFC 2396 but separated for further processing.\n\n Note: query is a deprecated field which is incorrectly unescaped.\n query_raw takes precedence over query if the former is set.\n See: http://mail.gnome.org/archives/xml/2007-April/thread.html#00127"]
12517pub type xmlURI = _xmlURI;
12518pub type xmlURIPtr = *mut xmlURI;
12519#[repr(C)]
12520#[derive(Debug, Copy, Clone)]
12521pub struct _xmlURI {
12522  pub scheme: *mut ::std::os::raw::c_char,
12523  pub opaque: *mut ::std::os::raw::c_char,
12524  pub authority: *mut ::std::os::raw::c_char,
12525  pub server: *mut ::std::os::raw::c_char,
12526  pub user: *mut ::std::os::raw::c_char,
12527  pub port: ::std::os::raw::c_int,
12528  pub path: *mut ::std::os::raw::c_char,
12529  pub query: *mut ::std::os::raw::c_char,
12530  pub fragment: *mut ::std::os::raw::c_char,
12531  pub cleanup: ::std::os::raw::c_int,
12532  pub query_raw: *mut ::std::os::raw::c_char,
12533}
12534#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12535const _: () = {
12536  ["Size of _xmlURI"][::std::mem::size_of::<_xmlURI>() - 88usize];
12537  ["Alignment of _xmlURI"][::std::mem::align_of::<_xmlURI>() - 8usize];
12538  ["Offset of field: _xmlURI::scheme"][::std::mem::offset_of!(_xmlURI, scheme) - 0usize];
12539  ["Offset of field: _xmlURI::opaque"][::std::mem::offset_of!(_xmlURI, opaque) - 8usize];
12540  ["Offset of field: _xmlURI::authority"][::std::mem::offset_of!(_xmlURI, authority) - 16usize];
12541  ["Offset of field: _xmlURI::server"][::std::mem::offset_of!(_xmlURI, server) - 24usize];
12542  ["Offset of field: _xmlURI::user"][::std::mem::offset_of!(_xmlURI, user) - 32usize];
12543  ["Offset of field: _xmlURI::port"][::std::mem::offset_of!(_xmlURI, port) - 40usize];
12544  ["Offset of field: _xmlURI::path"][::std::mem::offset_of!(_xmlURI, path) - 48usize];
12545  ["Offset of field: _xmlURI::query"][::std::mem::offset_of!(_xmlURI, query) - 56usize];
12546  ["Offset of field: _xmlURI::fragment"][::std::mem::offset_of!(_xmlURI, fragment) - 64usize];
12547  ["Offset of field: _xmlURI::cleanup"][::std::mem::offset_of!(_xmlURI, cleanup) - 72usize];
12548  ["Offset of field: _xmlURI::query_raw"][::std::mem::offset_of!(_xmlURI, query_raw) - 80usize];
12549};
12550unsafe extern "C" {
12551  pub fn xmlCreateURI() -> xmlURIPtr;
12552}
12553unsafe extern "C" {
12554  pub fn xmlBuildURI(URI: *const xmlChar, base: *const xmlChar) -> *mut xmlChar;
12555}
12556unsafe extern "C" {
12557  pub fn xmlBuildRelativeURI(URI: *const xmlChar, base: *const xmlChar) -> *mut xmlChar;
12558}
12559unsafe extern "C" {
12560  pub fn xmlParseURI(str_: *const ::std::os::raw::c_char) -> xmlURIPtr;
12561}
12562unsafe extern "C" {
12563  pub fn xmlParseURIRaw(
12564    str_: *const ::std::os::raw::c_char,
12565    raw: ::std::os::raw::c_int,
12566  ) -> xmlURIPtr;
12567}
12568unsafe extern "C" {
12569  pub fn xmlParseURIReference(
12570    uri: xmlURIPtr,
12571    str_: *const ::std::os::raw::c_char,
12572  ) -> ::std::os::raw::c_int;
12573}
12574unsafe extern "C" {
12575  pub fn xmlSaveUri(uri: xmlURIPtr) -> *mut xmlChar;
12576}
12577unsafe extern "C" {
12578  pub fn xmlPrintURI(stream: *mut FILE, uri: xmlURIPtr);
12579}
12580unsafe extern "C" {
12581  pub fn xmlURIEscapeStr(str_: *const xmlChar, list: *const xmlChar) -> *mut xmlChar;
12582}
12583unsafe extern "C" {
12584  pub fn xmlURIUnescapeString(
12585    str_: *const ::std::os::raw::c_char,
12586    len: ::std::os::raw::c_int,
12587    target: *mut ::std::os::raw::c_char,
12588  ) -> *mut ::std::os::raw::c_char;
12589}
12590unsafe extern "C" {
12591  pub fn xmlNormalizeURIPath(path: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
12592}
12593unsafe extern "C" {
12594  pub fn xmlURIEscape(str_: *const xmlChar) -> *mut xmlChar;
12595}
12596unsafe extern "C" {
12597  pub fn xmlFreeURI(uri: xmlURIPtr);
12598}
12599unsafe extern "C" {
12600  pub fn xmlCanonicPath(path: *const xmlChar) -> *mut xmlChar;
12601}
12602unsafe extern "C" {
12603  pub fn xmlPathToURI(path: *const xmlChar) -> *mut xmlChar;
12604}
12605#[repr(C)]
12606#[derive(Debug, Copy, Clone)]
12607pub struct _xmlXIncludeCtxt {
12608  _unused: [u8; 0],
12609}
12610pub type xmlXIncludeCtxt = _xmlXIncludeCtxt;
12611pub type xmlXIncludeCtxtPtr = *mut xmlXIncludeCtxt;
12612unsafe extern "C" {
12613  pub fn xmlXIncludeProcess(doc: xmlDocPtr) -> ::std::os::raw::c_int;
12614}
12615unsafe extern "C" {
12616  pub fn xmlXIncludeProcessFlags(
12617    doc: xmlDocPtr,
12618    flags: ::std::os::raw::c_int,
12619  ) -> ::std::os::raw::c_int;
12620}
12621unsafe extern "C" {
12622  pub fn xmlXIncludeProcessFlagsData(
12623    doc: xmlDocPtr,
12624    flags: ::std::os::raw::c_int,
12625    data: *mut ::std::os::raw::c_void,
12626  ) -> ::std::os::raw::c_int;
12627}
12628unsafe extern "C" {
12629  pub fn xmlXIncludeProcessTreeFlagsData(
12630    tree: xmlNodePtr,
12631    flags: ::std::os::raw::c_int,
12632    data: *mut ::std::os::raw::c_void,
12633  ) -> ::std::os::raw::c_int;
12634}
12635unsafe extern "C" {
12636  pub fn xmlXIncludeProcessTree(tree: xmlNodePtr) -> ::std::os::raw::c_int;
12637}
12638unsafe extern "C" {
12639  pub fn xmlXIncludeProcessTreeFlags(
12640    tree: xmlNodePtr,
12641    flags: ::std::os::raw::c_int,
12642  ) -> ::std::os::raw::c_int;
12643}
12644unsafe extern "C" {
12645  pub fn xmlXIncludeNewContext(doc: xmlDocPtr) -> xmlXIncludeCtxtPtr;
12646}
12647unsafe extern "C" {
12648  pub fn xmlXIncludeSetFlags(
12649    ctxt: xmlXIncludeCtxtPtr,
12650    flags: ::std::os::raw::c_int,
12651  ) -> ::std::os::raw::c_int;
12652}
12653unsafe extern "C" {
12654  pub fn xmlXIncludeFreeContext(ctxt: xmlXIncludeCtxtPtr);
12655}
12656unsafe extern "C" {
12657  pub fn xmlXIncludeProcessNode(
12658    ctxt: xmlXIncludeCtxtPtr,
12659    tree: xmlNodePtr,
12660  ) -> ::std::os::raw::c_int;
12661}
12662#[repr(C)]
12663#[derive(Debug, Copy, Clone)]
12664pub struct _xmlModule {
12665  _unused: [u8; 0],
12666}
12667#[doc = " xmlModulePtr:\n\n A handle to a dynamically loaded module"]
12668pub type xmlModule = _xmlModule;
12669pub type xmlModulePtr = *mut xmlModule;
12670pub const xmlModuleOption_XML_MODULE_LAZY: xmlModuleOption = 1;
12671pub const xmlModuleOption_XML_MODULE_LOCAL: xmlModuleOption = 2;
12672#[doc = " xmlModuleOption:\n\n enumeration of options that can be passed down to xmlModuleOpen()"]
12673pub type xmlModuleOption = ::std::os::raw::c_uint;
12674unsafe extern "C" {
12675  pub fn xmlModuleOpen(
12676    filename: *const ::std::os::raw::c_char,
12677    options: ::std::os::raw::c_int,
12678  ) -> xmlModulePtr;
12679}
12680unsafe extern "C" {
12681  pub fn xmlModuleSymbol(
12682    module: xmlModulePtr,
12683    name: *const ::std::os::raw::c_char,
12684    result: *mut *mut ::std::os::raw::c_void,
12685  ) -> ::std::os::raw::c_int;
12686}
12687unsafe extern "C" {
12688  pub fn xmlModuleClose(module: xmlModulePtr) -> ::std::os::raw::c_int;
12689}
12690unsafe extern "C" {
12691  pub fn xmlModuleFree(module: xmlModulePtr) -> ::std::os::raw::c_int;
12692}
12693pub const xmlSchemaValidError_XML_SCHEMAS_ERR_OK: xmlSchemaValidError = 0;
12694pub const xmlSchemaValidError_XML_SCHEMAS_ERR_NOROOT: xmlSchemaValidError = 1;
12695pub const xmlSchemaValidError_XML_SCHEMAS_ERR_UNDECLAREDELEM: xmlSchemaValidError = 2;
12696pub const xmlSchemaValidError_XML_SCHEMAS_ERR_NOTTOPLEVEL: xmlSchemaValidError = 3;
12697pub const xmlSchemaValidError_XML_SCHEMAS_ERR_MISSING: xmlSchemaValidError = 4;
12698pub const xmlSchemaValidError_XML_SCHEMAS_ERR_WRONGELEM: xmlSchemaValidError = 5;
12699pub const xmlSchemaValidError_XML_SCHEMAS_ERR_NOTYPE: xmlSchemaValidError = 6;
12700pub const xmlSchemaValidError_XML_SCHEMAS_ERR_NOROLLBACK: xmlSchemaValidError = 7;
12701pub const xmlSchemaValidError_XML_SCHEMAS_ERR_ISABSTRACT: xmlSchemaValidError = 8;
12702pub const xmlSchemaValidError_XML_SCHEMAS_ERR_NOTEMPTY: xmlSchemaValidError = 9;
12703pub const xmlSchemaValidError_XML_SCHEMAS_ERR_ELEMCONT: xmlSchemaValidError = 10;
12704pub const xmlSchemaValidError_XML_SCHEMAS_ERR_HAVEDEFAULT: xmlSchemaValidError = 11;
12705pub const xmlSchemaValidError_XML_SCHEMAS_ERR_NOTNILLABLE: xmlSchemaValidError = 12;
12706pub const xmlSchemaValidError_XML_SCHEMAS_ERR_EXTRACONTENT: xmlSchemaValidError = 13;
12707pub const xmlSchemaValidError_XML_SCHEMAS_ERR_INVALIDATTR: xmlSchemaValidError = 14;
12708pub const xmlSchemaValidError_XML_SCHEMAS_ERR_INVALIDELEM: xmlSchemaValidError = 15;
12709pub const xmlSchemaValidError_XML_SCHEMAS_ERR_NOTDETERMINIST: xmlSchemaValidError = 16;
12710pub const xmlSchemaValidError_XML_SCHEMAS_ERR_CONSTRUCT: xmlSchemaValidError = 17;
12711pub const xmlSchemaValidError_XML_SCHEMAS_ERR_INTERNAL: xmlSchemaValidError = 18;
12712pub const xmlSchemaValidError_XML_SCHEMAS_ERR_NOTSIMPLE: xmlSchemaValidError = 19;
12713pub const xmlSchemaValidError_XML_SCHEMAS_ERR_ATTRUNKNOWN: xmlSchemaValidError = 20;
12714pub const xmlSchemaValidError_XML_SCHEMAS_ERR_ATTRINVALID: xmlSchemaValidError = 21;
12715pub const xmlSchemaValidError_XML_SCHEMAS_ERR_VALUE: xmlSchemaValidError = 22;
12716pub const xmlSchemaValidError_XML_SCHEMAS_ERR_FACET: xmlSchemaValidError = 23;
12717pub const xmlSchemaValidError_XML_SCHEMAS_ERR_: xmlSchemaValidError = 24;
12718pub const xmlSchemaValidError_XML_SCHEMAS_ERR_XXX: xmlSchemaValidError = 25;
12719#[doc = " This error codes are obsolete; not used any more."]
12720pub type xmlSchemaValidError = ::std::os::raw::c_uint;
12721pub const xmlSchemaValidOption_XML_SCHEMA_VAL_VC_I_CREATE: xmlSchemaValidOption = 1;
12722#[doc = " xmlSchemaValidOption:\n\n This is the set of XML Schema validation options."]
12723pub type xmlSchemaValidOption = ::std::os::raw::c_uint;
12724#[doc = " The schemas related types are kept internal"]
12725pub type xmlSchema = _xmlSchema;
12726pub type xmlSchemaPtr = *mut xmlSchema;
12727#[doc = " xmlSchemaValidityErrorFunc:\n @ctx: the validation context\n @msg: the message\n @...: extra arguments\n\n Signature of an error callback from an XSD validation"]
12728pub type xmlSchemaValidityErrorFunc = ::std::option::Option<
12729  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...),
12730>;
12731#[doc = " xmlSchemaValidityWarningFunc:\n @ctx: the validation context\n @msg: the message\n @...: extra arguments\n\n Signature of a warning callback from an XSD validation"]
12732pub type xmlSchemaValidityWarningFunc = ::std::option::Option<
12733  unsafe extern "C" fn(ctx: *mut ::std::os::raw::c_void, msg: *const ::std::os::raw::c_char, ...),
12734>;
12735#[repr(C)]
12736#[derive(Debug, Copy, Clone)]
12737pub struct _xmlSchemaParserCtxt {
12738  _unused: [u8; 0],
12739}
12740#[doc = " A schemas validation context"]
12741pub type xmlSchemaParserCtxt = _xmlSchemaParserCtxt;
12742pub type xmlSchemaParserCtxtPtr = *mut xmlSchemaParserCtxt;
12743#[repr(C)]
12744#[derive(Debug, Copy, Clone)]
12745pub struct _xmlSchemaValidCtxt {
12746  _unused: [u8; 0],
12747}
12748pub type xmlSchemaValidCtxt = _xmlSchemaValidCtxt;
12749pub type xmlSchemaValidCtxtPtr = *mut xmlSchemaValidCtxt;
12750#[doc = " xmlSchemaValidityLocatorFunc:\n @ctx: user provided context\n @file: returned file information\n @line: returned line information\n\n A schemas validation locator, a callback called by the validator.\n This is used when file or node information are not available\n to find out what file and line number are affected\n\n Returns: 0 in case of success and -1 in case of error"]
12751pub type xmlSchemaValidityLocatorFunc = ::std::option::Option<
12752  unsafe extern "C" fn(
12753    ctx: *mut ::std::os::raw::c_void,
12754    file: *mut *const ::std::os::raw::c_char,
12755    line: *mut ::std::os::raw::c_ulong,
12756  ) -> ::std::os::raw::c_int,
12757>;
12758unsafe extern "C" {
12759  pub fn xmlSchemaNewParserCtxt(URL: *const ::std::os::raw::c_char) -> xmlSchemaParserCtxtPtr;
12760}
12761unsafe extern "C" {
12762  pub fn xmlSchemaNewMemParserCtxt(
12763    buffer: *const ::std::os::raw::c_char,
12764    size: ::std::os::raw::c_int,
12765  ) -> xmlSchemaParserCtxtPtr;
12766}
12767unsafe extern "C" {
12768  pub fn xmlSchemaNewDocParserCtxt(doc: xmlDocPtr) -> xmlSchemaParserCtxtPtr;
12769}
12770unsafe extern "C" {
12771  pub fn xmlSchemaFreeParserCtxt(ctxt: xmlSchemaParserCtxtPtr);
12772}
12773unsafe extern "C" {
12774  pub fn xmlSchemaSetParserErrors(
12775    ctxt: xmlSchemaParserCtxtPtr,
12776    err: xmlSchemaValidityErrorFunc,
12777    warn: xmlSchemaValidityWarningFunc,
12778    ctx: *mut ::std::os::raw::c_void,
12779  );
12780}
12781unsafe extern "C" {
12782  pub fn xmlSchemaSetParserStructuredErrors(
12783    ctxt: xmlSchemaParserCtxtPtr,
12784    serror: xmlStructuredErrorFunc,
12785    ctx: *mut ::std::os::raw::c_void,
12786  );
12787}
12788unsafe extern "C" {
12789  pub fn xmlSchemaGetParserErrors(
12790    ctxt: xmlSchemaParserCtxtPtr,
12791    err: *mut xmlSchemaValidityErrorFunc,
12792    warn: *mut xmlSchemaValidityWarningFunc,
12793    ctx: *mut *mut ::std::os::raw::c_void,
12794  ) -> ::std::os::raw::c_int;
12795}
12796unsafe extern "C" {
12797  pub fn xmlSchemaIsValid(ctxt: xmlSchemaValidCtxtPtr) -> ::std::os::raw::c_int;
12798}
12799unsafe extern "C" {
12800  pub fn xmlSchemaParse(ctxt: xmlSchemaParserCtxtPtr) -> xmlSchemaPtr;
12801}
12802unsafe extern "C" {
12803  pub fn xmlSchemaFree(schema: xmlSchemaPtr);
12804}
12805unsafe extern "C" {
12806  pub fn xmlSchemaDump(output: *mut FILE, schema: xmlSchemaPtr);
12807}
12808unsafe extern "C" {
12809  pub fn xmlSchemaSetValidErrors(
12810    ctxt: xmlSchemaValidCtxtPtr,
12811    err: xmlSchemaValidityErrorFunc,
12812    warn: xmlSchemaValidityWarningFunc,
12813    ctx: *mut ::std::os::raw::c_void,
12814  );
12815}
12816unsafe extern "C" {
12817  pub fn xmlSchemaSetValidStructuredErrors(
12818    ctxt: xmlSchemaValidCtxtPtr,
12819    serror: xmlStructuredErrorFunc,
12820    ctx: *mut ::std::os::raw::c_void,
12821  );
12822}
12823unsafe extern "C" {
12824  pub fn xmlSchemaGetValidErrors(
12825    ctxt: xmlSchemaValidCtxtPtr,
12826    err: *mut xmlSchemaValidityErrorFunc,
12827    warn: *mut xmlSchemaValidityWarningFunc,
12828    ctx: *mut *mut ::std::os::raw::c_void,
12829  ) -> ::std::os::raw::c_int;
12830}
12831unsafe extern "C" {
12832  pub fn xmlSchemaSetValidOptions(
12833    ctxt: xmlSchemaValidCtxtPtr,
12834    options: ::std::os::raw::c_int,
12835  ) -> ::std::os::raw::c_int;
12836}
12837unsafe extern "C" {
12838  pub fn xmlSchemaValidateSetFilename(
12839    vctxt: xmlSchemaValidCtxtPtr,
12840    filename: *const ::std::os::raw::c_char,
12841  );
12842}
12843unsafe extern "C" {
12844  pub fn xmlSchemaValidCtxtGetOptions(ctxt: xmlSchemaValidCtxtPtr) -> ::std::os::raw::c_int;
12845}
12846unsafe extern "C" {
12847  pub fn xmlSchemaNewValidCtxt(schema: xmlSchemaPtr) -> xmlSchemaValidCtxtPtr;
12848}
12849unsafe extern "C" {
12850  pub fn xmlSchemaFreeValidCtxt(ctxt: xmlSchemaValidCtxtPtr);
12851}
12852unsafe extern "C" {
12853  pub fn xmlSchemaValidateDoc(
12854    ctxt: xmlSchemaValidCtxtPtr,
12855    instance: xmlDocPtr,
12856  ) -> ::std::os::raw::c_int;
12857}
12858unsafe extern "C" {
12859  pub fn xmlSchemaValidateOneElement(
12860    ctxt: xmlSchemaValidCtxtPtr,
12861    elem: xmlNodePtr,
12862  ) -> ::std::os::raw::c_int;
12863}
12864unsafe extern "C" {
12865  pub fn xmlSchemaValidateStream(
12866    ctxt: xmlSchemaValidCtxtPtr,
12867    input: xmlParserInputBufferPtr,
12868    enc: xmlCharEncoding,
12869    sax: xmlSAXHandlerPtr,
12870    user_data: *mut ::std::os::raw::c_void,
12871  ) -> ::std::os::raw::c_int;
12872}
12873unsafe extern "C" {
12874  pub fn xmlSchemaValidateFile(
12875    ctxt: xmlSchemaValidCtxtPtr,
12876    filename: *const ::std::os::raw::c_char,
12877    options: ::std::os::raw::c_int,
12878  ) -> ::std::os::raw::c_int;
12879}
12880unsafe extern "C" {
12881  pub fn xmlSchemaValidCtxtGetParserCtxt(ctxt: xmlSchemaValidCtxtPtr) -> xmlParserCtxtPtr;
12882}
12883#[repr(C)]
12884#[derive(Debug, Copy, Clone)]
12885pub struct _xmlSchemaSAXPlug {
12886  _unused: [u8; 0],
12887}
12888pub type xmlSchemaSAXPlugStruct = _xmlSchemaSAXPlug;
12889pub type xmlSchemaSAXPlugPtr = *mut xmlSchemaSAXPlugStruct;
12890unsafe extern "C" {
12891  pub fn xmlSchemaSAXPlug(
12892    ctxt: xmlSchemaValidCtxtPtr,
12893    sax: *mut xmlSAXHandlerPtr,
12894    user_data: *mut *mut ::std::os::raw::c_void,
12895  ) -> xmlSchemaSAXPlugPtr;
12896}
12897unsafe extern "C" {
12898  pub fn xmlSchemaSAXUnplug(plug: xmlSchemaSAXPlugPtr) -> ::std::os::raw::c_int;
12899}
12900unsafe extern "C" {
12901  pub fn xmlSchemaValidateSetLocator(
12902    vctxt: xmlSchemaValidCtxtPtr,
12903    f: xmlSchemaValidityLocatorFunc,
12904    ctxt: *mut ::std::os::raw::c_void,
12905  );
12906}
12907pub const xmlParserSeverities_XML_PARSER_SEVERITY_VALIDITY_WARNING: xmlParserSeverities = 1;
12908pub const xmlParserSeverities_XML_PARSER_SEVERITY_VALIDITY_ERROR: xmlParserSeverities = 2;
12909pub const xmlParserSeverities_XML_PARSER_SEVERITY_WARNING: xmlParserSeverities = 3;
12910pub const xmlParserSeverities_XML_PARSER_SEVERITY_ERROR: xmlParserSeverities = 4;
12911#[doc = " xmlParserSeverities:\n\n How severe an error callback is when the per-reader error callback API\n is used."]
12912pub type xmlParserSeverities = ::std::os::raw::c_uint;
12913pub const xmlTextReaderMode_XML_TEXTREADER_MODE_INITIAL: xmlTextReaderMode = 0;
12914pub const xmlTextReaderMode_XML_TEXTREADER_MODE_INTERACTIVE: xmlTextReaderMode = 1;
12915pub const xmlTextReaderMode_XML_TEXTREADER_MODE_ERROR: xmlTextReaderMode = 2;
12916pub const xmlTextReaderMode_XML_TEXTREADER_MODE_EOF: xmlTextReaderMode = 3;
12917pub const xmlTextReaderMode_XML_TEXTREADER_MODE_CLOSED: xmlTextReaderMode = 4;
12918pub const xmlTextReaderMode_XML_TEXTREADER_MODE_READING: xmlTextReaderMode = 5;
12919#[doc = " xmlTextReaderMode:\n\n Internal state values for the reader."]
12920pub type xmlTextReaderMode = ::std::os::raw::c_uint;
12921pub const xmlParserProperties_XML_PARSER_LOADDTD: xmlParserProperties = 1;
12922pub const xmlParserProperties_XML_PARSER_DEFAULTATTRS: xmlParserProperties = 2;
12923pub const xmlParserProperties_XML_PARSER_VALIDATE: xmlParserProperties = 3;
12924pub const xmlParserProperties_XML_PARSER_SUBST_ENTITIES: xmlParserProperties = 4;
12925#[doc = " xmlParserProperties:\n\n Some common options to use with xmlTextReaderSetParserProp, but it\n is better to use xmlParserOption and the xmlReaderNewxxx and\n xmlReaderForxxx APIs now."]
12926pub type xmlParserProperties = ::std::os::raw::c_uint;
12927pub const xmlReaderTypes_XML_READER_TYPE_NONE: xmlReaderTypes = 0;
12928pub const xmlReaderTypes_XML_READER_TYPE_ELEMENT: xmlReaderTypes = 1;
12929pub const xmlReaderTypes_XML_READER_TYPE_ATTRIBUTE: xmlReaderTypes = 2;
12930pub const xmlReaderTypes_XML_READER_TYPE_TEXT: xmlReaderTypes = 3;
12931pub const xmlReaderTypes_XML_READER_TYPE_CDATA: xmlReaderTypes = 4;
12932pub const xmlReaderTypes_XML_READER_TYPE_ENTITY_REFERENCE: xmlReaderTypes = 5;
12933pub const xmlReaderTypes_XML_READER_TYPE_ENTITY: xmlReaderTypes = 6;
12934pub const xmlReaderTypes_XML_READER_TYPE_PROCESSING_INSTRUCTION: xmlReaderTypes = 7;
12935pub const xmlReaderTypes_XML_READER_TYPE_COMMENT: xmlReaderTypes = 8;
12936pub const xmlReaderTypes_XML_READER_TYPE_DOCUMENT: xmlReaderTypes = 9;
12937pub const xmlReaderTypes_XML_READER_TYPE_DOCUMENT_TYPE: xmlReaderTypes = 10;
12938pub const xmlReaderTypes_XML_READER_TYPE_DOCUMENT_FRAGMENT: xmlReaderTypes = 11;
12939pub const xmlReaderTypes_XML_READER_TYPE_NOTATION: xmlReaderTypes = 12;
12940pub const xmlReaderTypes_XML_READER_TYPE_WHITESPACE: xmlReaderTypes = 13;
12941pub const xmlReaderTypes_XML_READER_TYPE_SIGNIFICANT_WHITESPACE: xmlReaderTypes = 14;
12942pub const xmlReaderTypes_XML_READER_TYPE_END_ELEMENT: xmlReaderTypes = 15;
12943pub const xmlReaderTypes_XML_READER_TYPE_END_ENTITY: xmlReaderTypes = 16;
12944pub const xmlReaderTypes_XML_READER_TYPE_XML_DECLARATION: xmlReaderTypes = 17;
12945#[doc = " xmlReaderTypes:\n\n Predefined constants for the different types of nodes."]
12946pub type xmlReaderTypes = ::std::os::raw::c_uint;
12947#[repr(C)]
12948#[derive(Debug, Copy, Clone)]
12949pub struct _xmlTextReader {
12950  _unused: [u8; 0],
12951}
12952#[doc = " xmlTextReader:\n\n Structure for an xmlReader context."]
12953pub type xmlTextReader = _xmlTextReader;
12954#[doc = " xmlTextReaderPtr:\n\n Pointer to an xmlReader context."]
12955pub type xmlTextReaderPtr = *mut xmlTextReader;
12956unsafe extern "C" {
12957  pub fn xmlNewTextReader(
12958    input: xmlParserInputBufferPtr,
12959    URI: *const ::std::os::raw::c_char,
12960  ) -> xmlTextReaderPtr;
12961}
12962unsafe extern "C" {
12963  pub fn xmlNewTextReaderFilename(URI: *const ::std::os::raw::c_char) -> xmlTextReaderPtr;
12964}
12965unsafe extern "C" {
12966  pub fn xmlFreeTextReader(reader: xmlTextReaderPtr);
12967}
12968unsafe extern "C" {
12969  pub fn xmlTextReaderSetup(
12970    reader: xmlTextReaderPtr,
12971    input: xmlParserInputBufferPtr,
12972    URL: *const ::std::os::raw::c_char,
12973    encoding: *const ::std::os::raw::c_char,
12974    options: ::std::os::raw::c_int,
12975  ) -> ::std::os::raw::c_int;
12976}
12977unsafe extern "C" {
12978  pub fn xmlTextReaderRead(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
12979}
12980unsafe extern "C" {
12981  pub fn xmlTextReaderReadInnerXml(reader: xmlTextReaderPtr) -> *mut xmlChar;
12982}
12983unsafe extern "C" {
12984  pub fn xmlTextReaderReadOuterXml(reader: xmlTextReaderPtr) -> *mut xmlChar;
12985}
12986unsafe extern "C" {
12987  pub fn xmlTextReaderReadString(reader: xmlTextReaderPtr) -> *mut xmlChar;
12988}
12989unsafe extern "C" {
12990  pub fn xmlTextReaderReadAttributeValue(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
12991}
12992unsafe extern "C" {
12993  pub fn xmlTextReaderAttributeCount(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
12994}
12995unsafe extern "C" {
12996  pub fn xmlTextReaderDepth(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
12997}
12998unsafe extern "C" {
12999  pub fn xmlTextReaderHasAttributes(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13000}
13001unsafe extern "C" {
13002  pub fn xmlTextReaderHasValue(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13003}
13004unsafe extern "C" {
13005  pub fn xmlTextReaderIsDefault(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13006}
13007unsafe extern "C" {
13008  pub fn xmlTextReaderIsEmptyElement(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13009}
13010unsafe extern "C" {
13011  pub fn xmlTextReaderNodeType(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13012}
13013unsafe extern "C" {
13014  pub fn xmlTextReaderQuoteChar(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13015}
13016unsafe extern "C" {
13017  pub fn xmlTextReaderReadState(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13018}
13019unsafe extern "C" {
13020  pub fn xmlTextReaderIsNamespaceDecl(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13021}
13022unsafe extern "C" {
13023  pub fn xmlTextReaderConstBaseUri(reader: xmlTextReaderPtr) -> *const xmlChar;
13024}
13025unsafe extern "C" {
13026  pub fn xmlTextReaderConstLocalName(reader: xmlTextReaderPtr) -> *const xmlChar;
13027}
13028unsafe extern "C" {
13029  pub fn xmlTextReaderConstName(reader: xmlTextReaderPtr) -> *const xmlChar;
13030}
13031unsafe extern "C" {
13032  pub fn xmlTextReaderConstNamespaceUri(reader: xmlTextReaderPtr) -> *const xmlChar;
13033}
13034unsafe extern "C" {
13035  pub fn xmlTextReaderConstPrefix(reader: xmlTextReaderPtr) -> *const xmlChar;
13036}
13037unsafe extern "C" {
13038  pub fn xmlTextReaderConstXmlLang(reader: xmlTextReaderPtr) -> *const xmlChar;
13039}
13040unsafe extern "C" {
13041  pub fn xmlTextReaderConstString(reader: xmlTextReaderPtr, str_: *const xmlChar)
13042  -> *const xmlChar;
13043}
13044unsafe extern "C" {
13045  pub fn xmlTextReaderConstValue(reader: xmlTextReaderPtr) -> *const xmlChar;
13046}
13047unsafe extern "C" {
13048  pub fn xmlTextReaderBaseUri(reader: xmlTextReaderPtr) -> *mut xmlChar;
13049}
13050unsafe extern "C" {
13051  pub fn xmlTextReaderLocalName(reader: xmlTextReaderPtr) -> *mut xmlChar;
13052}
13053unsafe extern "C" {
13054  pub fn xmlTextReaderName(reader: xmlTextReaderPtr) -> *mut xmlChar;
13055}
13056unsafe extern "C" {
13057  pub fn xmlTextReaderNamespaceUri(reader: xmlTextReaderPtr) -> *mut xmlChar;
13058}
13059unsafe extern "C" {
13060  pub fn xmlTextReaderPrefix(reader: xmlTextReaderPtr) -> *mut xmlChar;
13061}
13062unsafe extern "C" {
13063  pub fn xmlTextReaderXmlLang(reader: xmlTextReaderPtr) -> *mut xmlChar;
13064}
13065unsafe extern "C" {
13066  pub fn xmlTextReaderValue(reader: xmlTextReaderPtr) -> *mut xmlChar;
13067}
13068unsafe extern "C" {
13069  pub fn xmlTextReaderClose(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13070}
13071unsafe extern "C" {
13072  pub fn xmlTextReaderGetAttributeNo(
13073    reader: xmlTextReaderPtr,
13074    no: ::std::os::raw::c_int,
13075  ) -> *mut xmlChar;
13076}
13077unsafe extern "C" {
13078  pub fn xmlTextReaderGetAttribute(reader: xmlTextReaderPtr, name: *const xmlChar) -> *mut xmlChar;
13079}
13080unsafe extern "C" {
13081  pub fn xmlTextReaderGetAttributeNs(
13082    reader: xmlTextReaderPtr,
13083    localName: *const xmlChar,
13084    namespaceURI: *const xmlChar,
13085  ) -> *mut xmlChar;
13086}
13087unsafe extern "C" {
13088  pub fn xmlTextReaderGetRemainder(reader: xmlTextReaderPtr) -> xmlParserInputBufferPtr;
13089}
13090unsafe extern "C" {
13091  pub fn xmlTextReaderLookupNamespace(
13092    reader: xmlTextReaderPtr,
13093    prefix: *const xmlChar,
13094  ) -> *mut xmlChar;
13095}
13096unsafe extern "C" {
13097  pub fn xmlTextReaderMoveToAttributeNo(
13098    reader: xmlTextReaderPtr,
13099    no: ::std::os::raw::c_int,
13100  ) -> ::std::os::raw::c_int;
13101}
13102unsafe extern "C" {
13103  pub fn xmlTextReaderMoveToAttribute(
13104    reader: xmlTextReaderPtr,
13105    name: *const xmlChar,
13106  ) -> ::std::os::raw::c_int;
13107}
13108unsafe extern "C" {
13109  pub fn xmlTextReaderMoveToAttributeNs(
13110    reader: xmlTextReaderPtr,
13111    localName: *const xmlChar,
13112    namespaceURI: *const xmlChar,
13113  ) -> ::std::os::raw::c_int;
13114}
13115unsafe extern "C" {
13116  pub fn xmlTextReaderMoveToFirstAttribute(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13117}
13118unsafe extern "C" {
13119  pub fn xmlTextReaderMoveToNextAttribute(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13120}
13121unsafe extern "C" {
13122  pub fn xmlTextReaderMoveToElement(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13123}
13124unsafe extern "C" {
13125  pub fn xmlTextReaderNormalization(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13126}
13127unsafe extern "C" {
13128  pub fn xmlTextReaderConstEncoding(reader: xmlTextReaderPtr) -> *const xmlChar;
13129}
13130unsafe extern "C" {
13131  pub fn xmlTextReaderSetParserProp(
13132    reader: xmlTextReaderPtr,
13133    prop: ::std::os::raw::c_int,
13134    value: ::std::os::raw::c_int,
13135  ) -> ::std::os::raw::c_int;
13136}
13137unsafe extern "C" {
13138  pub fn xmlTextReaderGetParserProp(
13139    reader: xmlTextReaderPtr,
13140    prop: ::std::os::raw::c_int,
13141  ) -> ::std::os::raw::c_int;
13142}
13143unsafe extern "C" {
13144  pub fn xmlTextReaderCurrentNode(reader: xmlTextReaderPtr) -> xmlNodePtr;
13145}
13146unsafe extern "C" {
13147  pub fn xmlTextReaderGetParserLineNumber(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13148}
13149unsafe extern "C" {
13150  pub fn xmlTextReaderGetParserColumnNumber(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13151}
13152unsafe extern "C" {
13153  pub fn xmlTextReaderPreserve(reader: xmlTextReaderPtr) -> xmlNodePtr;
13154}
13155unsafe extern "C" {
13156  pub fn xmlTextReaderPreservePattern(
13157    reader: xmlTextReaderPtr,
13158    pattern: *const xmlChar,
13159    namespaces: *mut *const xmlChar,
13160  ) -> ::std::os::raw::c_int;
13161}
13162unsafe extern "C" {
13163  pub fn xmlTextReaderCurrentDoc(reader: xmlTextReaderPtr) -> xmlDocPtr;
13164}
13165unsafe extern "C" {
13166  pub fn xmlTextReaderExpand(reader: xmlTextReaderPtr) -> xmlNodePtr;
13167}
13168unsafe extern "C" {
13169  pub fn xmlTextReaderNext(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13170}
13171unsafe extern "C" {
13172  pub fn xmlTextReaderNextSibling(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13173}
13174unsafe extern "C" {
13175  pub fn xmlTextReaderIsValid(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13176}
13177unsafe extern "C" {
13178  pub fn xmlTextReaderRelaxNGValidate(
13179    reader: xmlTextReaderPtr,
13180    rng: *const ::std::os::raw::c_char,
13181  ) -> ::std::os::raw::c_int;
13182}
13183unsafe extern "C" {
13184  pub fn xmlTextReaderRelaxNGValidateCtxt(
13185    reader: xmlTextReaderPtr,
13186    ctxt: xmlRelaxNGValidCtxtPtr,
13187    options: ::std::os::raw::c_int,
13188  ) -> ::std::os::raw::c_int;
13189}
13190unsafe extern "C" {
13191  pub fn xmlTextReaderRelaxNGSetSchema(
13192    reader: xmlTextReaderPtr,
13193    schema: xmlRelaxNGPtr,
13194  ) -> ::std::os::raw::c_int;
13195}
13196unsafe extern "C" {
13197  pub fn xmlTextReaderSchemaValidate(
13198    reader: xmlTextReaderPtr,
13199    xsd: *const ::std::os::raw::c_char,
13200  ) -> ::std::os::raw::c_int;
13201}
13202unsafe extern "C" {
13203  pub fn xmlTextReaderSchemaValidateCtxt(
13204    reader: xmlTextReaderPtr,
13205    ctxt: xmlSchemaValidCtxtPtr,
13206    options: ::std::os::raw::c_int,
13207  ) -> ::std::os::raw::c_int;
13208}
13209unsafe extern "C" {
13210  pub fn xmlTextReaderSetSchema(
13211    reader: xmlTextReaderPtr,
13212    schema: xmlSchemaPtr,
13213  ) -> ::std::os::raw::c_int;
13214}
13215unsafe extern "C" {
13216  pub fn xmlTextReaderConstXmlVersion(reader: xmlTextReaderPtr) -> *const xmlChar;
13217}
13218unsafe extern "C" {
13219  pub fn xmlTextReaderStandalone(reader: xmlTextReaderPtr) -> ::std::os::raw::c_int;
13220}
13221unsafe extern "C" {
13222  pub fn xmlTextReaderByteConsumed(reader: xmlTextReaderPtr) -> ::std::os::raw::c_long;
13223}
13224unsafe extern "C" {
13225  pub fn xmlReaderWalker(doc: xmlDocPtr) -> xmlTextReaderPtr;
13226}
13227unsafe extern "C" {
13228  pub fn xmlReaderForDoc(
13229    cur: *const xmlChar,
13230    URL: *const ::std::os::raw::c_char,
13231    encoding: *const ::std::os::raw::c_char,
13232    options: ::std::os::raw::c_int,
13233  ) -> xmlTextReaderPtr;
13234}
13235unsafe extern "C" {
13236  pub fn xmlReaderForFile(
13237    filename: *const ::std::os::raw::c_char,
13238    encoding: *const ::std::os::raw::c_char,
13239    options: ::std::os::raw::c_int,
13240  ) -> xmlTextReaderPtr;
13241}
13242unsafe extern "C" {
13243  pub fn xmlReaderForMemory(
13244    buffer: *const ::std::os::raw::c_char,
13245    size: ::std::os::raw::c_int,
13246    URL: *const ::std::os::raw::c_char,
13247    encoding: *const ::std::os::raw::c_char,
13248    options: ::std::os::raw::c_int,
13249  ) -> xmlTextReaderPtr;
13250}
13251unsafe extern "C" {
13252  pub fn xmlReaderForFd(
13253    fd: ::std::os::raw::c_int,
13254    URL: *const ::std::os::raw::c_char,
13255    encoding: *const ::std::os::raw::c_char,
13256    options: ::std::os::raw::c_int,
13257  ) -> xmlTextReaderPtr;
13258}
13259unsafe extern "C" {
13260  pub fn xmlReaderForIO(
13261    ioread: xmlInputReadCallback,
13262    ioclose: xmlInputCloseCallback,
13263    ioctx: *mut ::std::os::raw::c_void,
13264    URL: *const ::std::os::raw::c_char,
13265    encoding: *const ::std::os::raw::c_char,
13266    options: ::std::os::raw::c_int,
13267  ) -> xmlTextReaderPtr;
13268}
13269unsafe extern "C" {
13270  pub fn xmlReaderNewWalker(reader: xmlTextReaderPtr, doc: xmlDocPtr) -> ::std::os::raw::c_int;
13271}
13272unsafe extern "C" {
13273  pub fn xmlReaderNewDoc(
13274    reader: xmlTextReaderPtr,
13275    cur: *const xmlChar,
13276    URL: *const ::std::os::raw::c_char,
13277    encoding: *const ::std::os::raw::c_char,
13278    options: ::std::os::raw::c_int,
13279  ) -> ::std::os::raw::c_int;
13280}
13281unsafe extern "C" {
13282  pub fn xmlReaderNewFile(
13283    reader: xmlTextReaderPtr,
13284    filename: *const ::std::os::raw::c_char,
13285    encoding: *const ::std::os::raw::c_char,
13286    options: ::std::os::raw::c_int,
13287  ) -> ::std::os::raw::c_int;
13288}
13289unsafe extern "C" {
13290  pub fn xmlReaderNewMemory(
13291    reader: xmlTextReaderPtr,
13292    buffer: *const ::std::os::raw::c_char,
13293    size: ::std::os::raw::c_int,
13294    URL: *const ::std::os::raw::c_char,
13295    encoding: *const ::std::os::raw::c_char,
13296    options: ::std::os::raw::c_int,
13297  ) -> ::std::os::raw::c_int;
13298}
13299unsafe extern "C" {
13300  pub fn xmlReaderNewFd(
13301    reader: xmlTextReaderPtr,
13302    fd: ::std::os::raw::c_int,
13303    URL: *const ::std::os::raw::c_char,
13304    encoding: *const ::std::os::raw::c_char,
13305    options: ::std::os::raw::c_int,
13306  ) -> ::std::os::raw::c_int;
13307}
13308unsafe extern "C" {
13309  pub fn xmlReaderNewIO(
13310    reader: xmlTextReaderPtr,
13311    ioread: xmlInputReadCallback,
13312    ioclose: xmlInputCloseCallback,
13313    ioctx: *mut ::std::os::raw::c_void,
13314    URL: *const ::std::os::raw::c_char,
13315    encoding: *const ::std::os::raw::c_char,
13316    options: ::std::os::raw::c_int,
13317  ) -> ::std::os::raw::c_int;
13318}
13319pub type xmlTextReaderLocatorPtr = *mut ::std::os::raw::c_void;
13320#[doc = " xmlTextReaderErrorFunc:\n @arg: the user argument\n @msg: the message\n @severity: the severity of the error\n @locator: a locator indicating where the error occurred\n\n Signature of an error callback from a reader parser"]
13321pub type xmlTextReaderErrorFunc = ::std::option::Option<
13322  unsafe extern "C" fn(
13323    arg: *mut ::std::os::raw::c_void,
13324    msg: *const ::std::os::raw::c_char,
13325    severity: xmlParserSeverities,
13326    locator: xmlTextReaderLocatorPtr,
13327  ),
13328>;
13329unsafe extern "C" {
13330  pub fn xmlTextReaderLocatorLineNumber(locator: xmlTextReaderLocatorPtr) -> ::std::os::raw::c_int;
13331}
13332unsafe extern "C" {
13333  pub fn xmlTextReaderLocatorBaseURI(locator: xmlTextReaderLocatorPtr) -> *mut xmlChar;
13334}
13335unsafe extern "C" {
13336  pub fn xmlTextReaderSetErrorHandler(
13337    reader: xmlTextReaderPtr,
13338    f: xmlTextReaderErrorFunc,
13339    arg: *mut ::std::os::raw::c_void,
13340  );
13341}
13342unsafe extern "C" {
13343  pub fn xmlTextReaderSetStructuredErrorHandler(
13344    reader: xmlTextReaderPtr,
13345    f: xmlStructuredErrorFunc,
13346    arg: *mut ::std::os::raw::c_void,
13347  );
13348}
13349unsafe extern "C" {
13350  pub fn xmlTextReaderGetErrorHandler(
13351    reader: xmlTextReaderPtr,
13352    f: *mut xmlTextReaderErrorFunc,
13353    arg: *mut *mut ::std::os::raw::c_void,
13354  );
13355}
13356pub const xmlSaveOption_XML_SAVE_FORMAT: xmlSaveOption = 1;
13357pub const xmlSaveOption_XML_SAVE_NO_DECL: xmlSaveOption = 2;
13358pub const xmlSaveOption_XML_SAVE_NO_EMPTY: xmlSaveOption = 4;
13359pub const xmlSaveOption_XML_SAVE_NO_XHTML: xmlSaveOption = 8;
13360pub const xmlSaveOption_XML_SAVE_XHTML: xmlSaveOption = 16;
13361pub const xmlSaveOption_XML_SAVE_AS_XML: xmlSaveOption = 32;
13362pub const xmlSaveOption_XML_SAVE_AS_HTML: xmlSaveOption = 64;
13363pub const xmlSaveOption_XML_SAVE_WSNONSIG: xmlSaveOption = 128;
13364#[doc = " xmlSaveOption:\n\n This is the set of XML save options that can be passed down\n to the xmlSaveToFd() and similar calls."]
13365pub type xmlSaveOption = ::std::os::raw::c_uint;
13366#[repr(C)]
13367#[derive(Debug, Copy, Clone)]
13368pub struct _xmlSaveCtxt {
13369  _unused: [u8; 0],
13370}
13371pub type xmlSaveCtxt = _xmlSaveCtxt;
13372pub type xmlSaveCtxtPtr = *mut xmlSaveCtxt;
13373unsafe extern "C" {
13374  pub fn xmlSaveToFd(
13375    fd: ::std::os::raw::c_int,
13376    encoding: *const ::std::os::raw::c_char,
13377    options: ::std::os::raw::c_int,
13378  ) -> xmlSaveCtxtPtr;
13379}
13380unsafe extern "C" {
13381  pub fn xmlSaveToFilename(
13382    filename: *const ::std::os::raw::c_char,
13383    encoding: *const ::std::os::raw::c_char,
13384    options: ::std::os::raw::c_int,
13385  ) -> xmlSaveCtxtPtr;
13386}
13387unsafe extern "C" {
13388  pub fn xmlSaveToBuffer(
13389    buffer: xmlBufferPtr,
13390    encoding: *const ::std::os::raw::c_char,
13391    options: ::std::os::raw::c_int,
13392  ) -> xmlSaveCtxtPtr;
13393}
13394unsafe extern "C" {
13395  pub fn xmlSaveToIO(
13396    iowrite: xmlOutputWriteCallback,
13397    ioclose: xmlOutputCloseCallback,
13398    ioctx: *mut ::std::os::raw::c_void,
13399    encoding: *const ::std::os::raw::c_char,
13400    options: ::std::os::raw::c_int,
13401  ) -> xmlSaveCtxtPtr;
13402}
13403unsafe extern "C" {
13404  pub fn xmlSaveDoc(ctxt: xmlSaveCtxtPtr, doc: xmlDocPtr) -> ::std::os::raw::c_long;
13405}
13406unsafe extern "C" {
13407  pub fn xmlSaveTree(ctxt: xmlSaveCtxtPtr, node: xmlNodePtr) -> ::std::os::raw::c_long;
13408}
13409unsafe extern "C" {
13410  pub fn xmlSaveFlush(ctxt: xmlSaveCtxtPtr) -> ::std::os::raw::c_int;
13411}
13412unsafe extern "C" {
13413  pub fn xmlSaveClose(ctxt: xmlSaveCtxtPtr) -> ::std::os::raw::c_int;
13414}
13415unsafe extern "C" {
13416  pub fn xmlSaveSetEscape(
13417    ctxt: xmlSaveCtxtPtr,
13418    escape: xmlCharEncodingOutputFunc,
13419  ) -> ::std::os::raw::c_int;
13420}
13421unsafe extern "C" {
13422  pub fn xmlSaveSetAttrEscape(
13423    ctxt: xmlSaveCtxtPtr,
13424    escape: xmlCharEncodingOutputFunc,
13425  ) -> ::std::os::raw::c_int;
13426}
13427pub const xmlSchemaWhitespaceValueType_XML_SCHEMA_WHITESPACE_UNKNOWN: xmlSchemaWhitespaceValueType =
13428  0;
13429pub const xmlSchemaWhitespaceValueType_XML_SCHEMA_WHITESPACE_PRESERVE:
13430  xmlSchemaWhitespaceValueType = 1;
13431pub const xmlSchemaWhitespaceValueType_XML_SCHEMA_WHITESPACE_REPLACE: xmlSchemaWhitespaceValueType =
13432  2;
13433pub const xmlSchemaWhitespaceValueType_XML_SCHEMA_WHITESPACE_COLLAPSE:
13434  xmlSchemaWhitespaceValueType = 3;
13435pub type xmlSchemaWhitespaceValueType = ::std::os::raw::c_uint;
13436unsafe extern "C" {
13437  pub fn xmlSchemaInitTypes();
13438}
13439unsafe extern "C" {
13440  pub fn xmlSchemaCleanupTypes();
13441}
13442unsafe extern "C" {
13443  pub fn xmlSchemaGetPredefinedType(name: *const xmlChar, ns: *const xmlChar) -> xmlSchemaTypePtr;
13444}
13445unsafe extern "C" {
13446  pub fn xmlSchemaValidatePredefinedType(
13447    type_: xmlSchemaTypePtr,
13448    value: *const xmlChar,
13449    val: *mut xmlSchemaValPtr,
13450  ) -> ::std::os::raw::c_int;
13451}
13452unsafe extern "C" {
13453  pub fn xmlSchemaValPredefTypeNode(
13454    type_: xmlSchemaTypePtr,
13455    value: *const xmlChar,
13456    val: *mut xmlSchemaValPtr,
13457    node: xmlNodePtr,
13458  ) -> ::std::os::raw::c_int;
13459}
13460unsafe extern "C" {
13461  pub fn xmlSchemaValidateFacet(
13462    base: xmlSchemaTypePtr,
13463    facet: xmlSchemaFacetPtr,
13464    value: *const xmlChar,
13465    val: xmlSchemaValPtr,
13466  ) -> ::std::os::raw::c_int;
13467}
13468unsafe extern "C" {
13469  pub fn xmlSchemaValidateFacetWhtsp(
13470    facet: xmlSchemaFacetPtr,
13471    fws: xmlSchemaWhitespaceValueType,
13472    valType: xmlSchemaValType,
13473    value: *const xmlChar,
13474    val: xmlSchemaValPtr,
13475    ws: xmlSchemaWhitespaceValueType,
13476  ) -> ::std::os::raw::c_int;
13477}
13478unsafe extern "C" {
13479  pub fn xmlSchemaFreeValue(val: xmlSchemaValPtr);
13480}
13481unsafe extern "C" {
13482  pub fn xmlSchemaNewFacet() -> xmlSchemaFacetPtr;
13483}
13484unsafe extern "C" {
13485  pub fn xmlSchemaCheckFacet(
13486    facet: xmlSchemaFacetPtr,
13487    typeDecl: xmlSchemaTypePtr,
13488    ctxt: xmlSchemaParserCtxtPtr,
13489    name: *const xmlChar,
13490  ) -> ::std::os::raw::c_int;
13491}
13492unsafe extern "C" {
13493  pub fn xmlSchemaFreeFacet(facet: xmlSchemaFacetPtr);
13494}
13495unsafe extern "C" {
13496  pub fn xmlSchemaCompareValues(x: xmlSchemaValPtr, y: xmlSchemaValPtr) -> ::std::os::raw::c_int;
13497}
13498unsafe extern "C" {
13499  pub fn xmlSchemaGetBuiltInListSimpleTypeItemType(type_: xmlSchemaTypePtr) -> xmlSchemaTypePtr;
13500}
13501unsafe extern "C" {
13502  pub fn xmlSchemaValidateListSimpleTypeFacet(
13503    facet: xmlSchemaFacetPtr,
13504    value: *const xmlChar,
13505    actualLen: ::std::os::raw::c_ulong,
13506    expectedLen: *mut ::std::os::raw::c_ulong,
13507  ) -> ::std::os::raw::c_int;
13508}
13509unsafe extern "C" {
13510  pub fn xmlSchemaGetBuiltInType(type_: xmlSchemaValType) -> xmlSchemaTypePtr;
13511}
13512unsafe extern "C" {
13513  pub fn xmlSchemaIsBuiltInTypeFacet(
13514    type_: xmlSchemaTypePtr,
13515    facetType: ::std::os::raw::c_int,
13516  ) -> ::std::os::raw::c_int;
13517}
13518unsafe extern "C" {
13519  pub fn xmlSchemaCollapseString(value: *const xmlChar) -> *mut xmlChar;
13520}
13521unsafe extern "C" {
13522  pub fn xmlSchemaWhiteSpaceReplace(value: *const xmlChar) -> *mut xmlChar;
13523}
13524unsafe extern "C" {
13525  pub fn xmlSchemaGetFacetValueAsULong(facet: xmlSchemaFacetPtr) -> ::std::os::raw::c_ulong;
13526}
13527unsafe extern "C" {
13528  pub fn xmlSchemaValidateLengthFacet(
13529    type_: xmlSchemaTypePtr,
13530    facet: xmlSchemaFacetPtr,
13531    value: *const xmlChar,
13532    val: xmlSchemaValPtr,
13533    length: *mut ::std::os::raw::c_ulong,
13534  ) -> ::std::os::raw::c_int;
13535}
13536unsafe extern "C" {
13537  pub fn xmlSchemaValidateLengthFacetWhtsp(
13538    facet: xmlSchemaFacetPtr,
13539    valType: xmlSchemaValType,
13540    value: *const xmlChar,
13541    val: xmlSchemaValPtr,
13542    length: *mut ::std::os::raw::c_ulong,
13543    ws: xmlSchemaWhitespaceValueType,
13544  ) -> ::std::os::raw::c_int;
13545}
13546unsafe extern "C" {
13547  pub fn xmlSchemaValPredefTypeNodeNoNorm(
13548    type_: xmlSchemaTypePtr,
13549    value: *const xmlChar,
13550    val: *mut xmlSchemaValPtr,
13551    node: xmlNodePtr,
13552  ) -> ::std::os::raw::c_int;
13553}
13554unsafe extern "C" {
13555  pub fn xmlSchemaGetCanonValue(
13556    val: xmlSchemaValPtr,
13557    retValue: *mut *const xmlChar,
13558  ) -> ::std::os::raw::c_int;
13559}
13560unsafe extern "C" {
13561  pub fn xmlSchemaGetCanonValueWhtsp(
13562    val: xmlSchemaValPtr,
13563    retValue: *mut *const xmlChar,
13564    ws: xmlSchemaWhitespaceValueType,
13565  ) -> ::std::os::raw::c_int;
13566}
13567unsafe extern "C" {
13568  pub fn xmlSchemaValueAppend(prev: xmlSchemaValPtr, cur: xmlSchemaValPtr)
13569  -> ::std::os::raw::c_int;
13570}
13571unsafe extern "C" {
13572  pub fn xmlSchemaValueGetNext(cur: xmlSchemaValPtr) -> xmlSchemaValPtr;
13573}
13574unsafe extern "C" {
13575  pub fn xmlSchemaValueGetAsString(val: xmlSchemaValPtr) -> *const xmlChar;
13576}
13577unsafe extern "C" {
13578  pub fn xmlSchemaValueGetAsBoolean(val: xmlSchemaValPtr) -> ::std::os::raw::c_int;
13579}
13580unsafe extern "C" {
13581  pub fn xmlSchemaNewStringValue(type_: xmlSchemaValType, value: *const xmlChar)
13582  -> xmlSchemaValPtr;
13583}
13584unsafe extern "C" {
13585  pub fn xmlSchemaNewNOTATIONValue(name: *const xmlChar, ns: *const xmlChar) -> xmlSchemaValPtr;
13586}
13587unsafe extern "C" {
13588  pub fn xmlSchemaNewQNameValue(
13589    namespaceName: *const xmlChar,
13590    localName: *const xmlChar,
13591  ) -> xmlSchemaValPtr;
13592}
13593unsafe extern "C" {
13594  pub fn xmlSchemaCompareValuesWhtsp(
13595    x: xmlSchemaValPtr,
13596    xws: xmlSchemaWhitespaceValueType,
13597    y: xmlSchemaValPtr,
13598    yws: xmlSchemaWhitespaceValueType,
13599  ) -> ::std::os::raw::c_int;
13600}
13601unsafe extern "C" {
13602  pub fn xmlSchemaCopyValue(val: xmlSchemaValPtr) -> xmlSchemaValPtr;
13603}
13604unsafe extern "C" {
13605  pub fn xmlSchemaGetValType(val: xmlSchemaValPtr) -> xmlSchemaValType;
13606}
13607unsafe extern "C" {
13608  pub fn xmlUCSIsAegeanNumbers(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13609}
13610unsafe extern "C" {
13611  pub fn xmlUCSIsAlphabeticPresentationForms(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13612}
13613unsafe extern "C" {
13614  pub fn xmlUCSIsArabic(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13615}
13616unsafe extern "C" {
13617  pub fn xmlUCSIsArabicPresentationFormsA(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13618}
13619unsafe extern "C" {
13620  pub fn xmlUCSIsArabicPresentationFormsB(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13621}
13622unsafe extern "C" {
13623  pub fn xmlUCSIsArmenian(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13624}
13625unsafe extern "C" {
13626  pub fn xmlUCSIsArrows(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13627}
13628unsafe extern "C" {
13629  pub fn xmlUCSIsBasicLatin(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13630}
13631unsafe extern "C" {
13632  pub fn xmlUCSIsBengali(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13633}
13634unsafe extern "C" {
13635  pub fn xmlUCSIsBlockElements(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13636}
13637unsafe extern "C" {
13638  pub fn xmlUCSIsBopomofo(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13639}
13640unsafe extern "C" {
13641  pub fn xmlUCSIsBopomofoExtended(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13642}
13643unsafe extern "C" {
13644  pub fn xmlUCSIsBoxDrawing(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13645}
13646unsafe extern "C" {
13647  pub fn xmlUCSIsBraillePatterns(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13648}
13649unsafe extern "C" {
13650  pub fn xmlUCSIsBuhid(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13651}
13652unsafe extern "C" {
13653  pub fn xmlUCSIsByzantineMusicalSymbols(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13654}
13655unsafe extern "C" {
13656  pub fn xmlUCSIsCJKCompatibility(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13657}
13658unsafe extern "C" {
13659  pub fn xmlUCSIsCJKCompatibilityForms(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13660}
13661unsafe extern "C" {
13662  pub fn xmlUCSIsCJKCompatibilityIdeographs(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13663}
13664unsafe extern "C" {
13665  pub fn xmlUCSIsCJKCompatibilityIdeographsSupplement(
13666    code: ::std::os::raw::c_int,
13667  ) -> ::std::os::raw::c_int;
13668}
13669unsafe extern "C" {
13670  pub fn xmlUCSIsCJKRadicalsSupplement(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13671}
13672unsafe extern "C" {
13673  pub fn xmlUCSIsCJKSymbolsandPunctuation(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13674}
13675unsafe extern "C" {
13676  pub fn xmlUCSIsCJKUnifiedIdeographs(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13677}
13678unsafe extern "C" {
13679  pub fn xmlUCSIsCJKUnifiedIdeographsExtensionA(
13680    code: ::std::os::raw::c_int,
13681  ) -> ::std::os::raw::c_int;
13682}
13683unsafe extern "C" {
13684  pub fn xmlUCSIsCJKUnifiedIdeographsExtensionB(
13685    code: ::std::os::raw::c_int,
13686  ) -> ::std::os::raw::c_int;
13687}
13688unsafe extern "C" {
13689  pub fn xmlUCSIsCherokee(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13690}
13691unsafe extern "C" {
13692  pub fn xmlUCSIsCombiningDiacriticalMarks(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13693}
13694unsafe extern "C" {
13695  pub fn xmlUCSIsCombiningDiacriticalMarksforSymbols(
13696    code: ::std::os::raw::c_int,
13697  ) -> ::std::os::raw::c_int;
13698}
13699unsafe extern "C" {
13700  pub fn xmlUCSIsCombiningHalfMarks(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13701}
13702unsafe extern "C" {
13703  pub fn xmlUCSIsCombiningMarksforSymbols(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13704}
13705unsafe extern "C" {
13706  pub fn xmlUCSIsControlPictures(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13707}
13708unsafe extern "C" {
13709  pub fn xmlUCSIsCurrencySymbols(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13710}
13711unsafe extern "C" {
13712  pub fn xmlUCSIsCypriotSyllabary(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13713}
13714unsafe extern "C" {
13715  pub fn xmlUCSIsCyrillic(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13716}
13717unsafe extern "C" {
13718  pub fn xmlUCSIsCyrillicSupplement(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13719}
13720unsafe extern "C" {
13721  pub fn xmlUCSIsDeseret(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13722}
13723unsafe extern "C" {
13724  pub fn xmlUCSIsDevanagari(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13725}
13726unsafe extern "C" {
13727  pub fn xmlUCSIsDingbats(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13728}
13729unsafe extern "C" {
13730  pub fn xmlUCSIsEnclosedAlphanumerics(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13731}
13732unsafe extern "C" {
13733  pub fn xmlUCSIsEnclosedCJKLettersandMonths(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13734}
13735unsafe extern "C" {
13736  pub fn xmlUCSIsEthiopic(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13737}
13738unsafe extern "C" {
13739  pub fn xmlUCSIsGeneralPunctuation(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13740}
13741unsafe extern "C" {
13742  pub fn xmlUCSIsGeometricShapes(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13743}
13744unsafe extern "C" {
13745  pub fn xmlUCSIsGeorgian(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13746}
13747unsafe extern "C" {
13748  pub fn xmlUCSIsGothic(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13749}
13750unsafe extern "C" {
13751  pub fn xmlUCSIsGreek(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13752}
13753unsafe extern "C" {
13754  pub fn xmlUCSIsGreekExtended(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13755}
13756unsafe extern "C" {
13757  pub fn xmlUCSIsGreekandCoptic(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13758}
13759unsafe extern "C" {
13760  pub fn xmlUCSIsGujarati(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13761}
13762unsafe extern "C" {
13763  pub fn xmlUCSIsGurmukhi(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13764}
13765unsafe extern "C" {
13766  pub fn xmlUCSIsHalfwidthandFullwidthForms(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13767}
13768unsafe extern "C" {
13769  pub fn xmlUCSIsHangulCompatibilityJamo(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13770}
13771unsafe extern "C" {
13772  pub fn xmlUCSIsHangulJamo(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13773}
13774unsafe extern "C" {
13775  pub fn xmlUCSIsHangulSyllables(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13776}
13777unsafe extern "C" {
13778  pub fn xmlUCSIsHanunoo(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13779}
13780unsafe extern "C" {
13781  pub fn xmlUCSIsHebrew(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13782}
13783unsafe extern "C" {
13784  pub fn xmlUCSIsHighPrivateUseSurrogates(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13785}
13786unsafe extern "C" {
13787  pub fn xmlUCSIsHighSurrogates(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13788}
13789unsafe extern "C" {
13790  pub fn xmlUCSIsHiragana(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13791}
13792unsafe extern "C" {
13793  pub fn xmlUCSIsIPAExtensions(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13794}
13795unsafe extern "C" {
13796  pub fn xmlUCSIsIdeographicDescriptionCharacters(
13797    code: ::std::os::raw::c_int,
13798  ) -> ::std::os::raw::c_int;
13799}
13800unsafe extern "C" {
13801  pub fn xmlUCSIsKanbun(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13802}
13803unsafe extern "C" {
13804  pub fn xmlUCSIsKangxiRadicals(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13805}
13806unsafe extern "C" {
13807  pub fn xmlUCSIsKannada(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13808}
13809unsafe extern "C" {
13810  pub fn xmlUCSIsKatakana(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13811}
13812unsafe extern "C" {
13813  pub fn xmlUCSIsKatakanaPhoneticExtensions(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13814}
13815unsafe extern "C" {
13816  pub fn xmlUCSIsKhmer(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13817}
13818unsafe extern "C" {
13819  pub fn xmlUCSIsKhmerSymbols(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13820}
13821unsafe extern "C" {
13822  pub fn xmlUCSIsLao(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13823}
13824unsafe extern "C" {
13825  pub fn xmlUCSIsLatin1Supplement(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13826}
13827unsafe extern "C" {
13828  pub fn xmlUCSIsLatinExtendedA(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13829}
13830unsafe extern "C" {
13831  pub fn xmlUCSIsLatinExtendedB(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13832}
13833unsafe extern "C" {
13834  pub fn xmlUCSIsLatinExtendedAdditional(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13835}
13836unsafe extern "C" {
13837  pub fn xmlUCSIsLetterlikeSymbols(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13838}
13839unsafe extern "C" {
13840  pub fn xmlUCSIsLimbu(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13841}
13842unsafe extern "C" {
13843  pub fn xmlUCSIsLinearBIdeograms(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13844}
13845unsafe extern "C" {
13846  pub fn xmlUCSIsLinearBSyllabary(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13847}
13848unsafe extern "C" {
13849  pub fn xmlUCSIsLowSurrogates(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13850}
13851unsafe extern "C" {
13852  pub fn xmlUCSIsMalayalam(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13853}
13854unsafe extern "C" {
13855  pub fn xmlUCSIsMathematicalAlphanumericSymbols(
13856    code: ::std::os::raw::c_int,
13857  ) -> ::std::os::raw::c_int;
13858}
13859unsafe extern "C" {
13860  pub fn xmlUCSIsMathematicalOperators(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13861}
13862unsafe extern "C" {
13863  pub fn xmlUCSIsMiscellaneousMathematicalSymbolsA(
13864    code: ::std::os::raw::c_int,
13865  ) -> ::std::os::raw::c_int;
13866}
13867unsafe extern "C" {
13868  pub fn xmlUCSIsMiscellaneousMathematicalSymbolsB(
13869    code: ::std::os::raw::c_int,
13870  ) -> ::std::os::raw::c_int;
13871}
13872unsafe extern "C" {
13873  pub fn xmlUCSIsMiscellaneousSymbols(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13874}
13875unsafe extern "C" {
13876  pub fn xmlUCSIsMiscellaneousSymbolsandArrows(
13877    code: ::std::os::raw::c_int,
13878  ) -> ::std::os::raw::c_int;
13879}
13880unsafe extern "C" {
13881  pub fn xmlUCSIsMiscellaneousTechnical(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13882}
13883unsafe extern "C" {
13884  pub fn xmlUCSIsMongolian(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13885}
13886unsafe extern "C" {
13887  pub fn xmlUCSIsMusicalSymbols(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13888}
13889unsafe extern "C" {
13890  pub fn xmlUCSIsMyanmar(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13891}
13892unsafe extern "C" {
13893  pub fn xmlUCSIsNumberForms(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13894}
13895unsafe extern "C" {
13896  pub fn xmlUCSIsOgham(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13897}
13898unsafe extern "C" {
13899  pub fn xmlUCSIsOldItalic(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13900}
13901unsafe extern "C" {
13902  pub fn xmlUCSIsOpticalCharacterRecognition(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13903}
13904unsafe extern "C" {
13905  pub fn xmlUCSIsOriya(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13906}
13907unsafe extern "C" {
13908  pub fn xmlUCSIsOsmanya(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13909}
13910unsafe extern "C" {
13911  pub fn xmlUCSIsPhoneticExtensions(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13912}
13913unsafe extern "C" {
13914  pub fn xmlUCSIsPrivateUse(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13915}
13916unsafe extern "C" {
13917  pub fn xmlUCSIsPrivateUseArea(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13918}
13919unsafe extern "C" {
13920  pub fn xmlUCSIsRunic(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13921}
13922unsafe extern "C" {
13923  pub fn xmlUCSIsShavian(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13924}
13925unsafe extern "C" {
13926  pub fn xmlUCSIsSinhala(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13927}
13928unsafe extern "C" {
13929  pub fn xmlUCSIsSmallFormVariants(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13930}
13931unsafe extern "C" {
13932  pub fn xmlUCSIsSpacingModifierLetters(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13933}
13934unsafe extern "C" {
13935  pub fn xmlUCSIsSpecials(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13936}
13937unsafe extern "C" {
13938  pub fn xmlUCSIsSuperscriptsandSubscripts(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13939}
13940unsafe extern "C" {
13941  pub fn xmlUCSIsSupplementalArrowsA(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13942}
13943unsafe extern "C" {
13944  pub fn xmlUCSIsSupplementalArrowsB(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13945}
13946unsafe extern "C" {
13947  pub fn xmlUCSIsSupplementalMathematicalOperators(
13948    code: ::std::os::raw::c_int,
13949  ) -> ::std::os::raw::c_int;
13950}
13951unsafe extern "C" {
13952  pub fn xmlUCSIsSupplementaryPrivateUseAreaA(code: ::std::os::raw::c_int)
13953  -> ::std::os::raw::c_int;
13954}
13955unsafe extern "C" {
13956  pub fn xmlUCSIsSupplementaryPrivateUseAreaB(code: ::std::os::raw::c_int)
13957  -> ::std::os::raw::c_int;
13958}
13959unsafe extern "C" {
13960  pub fn xmlUCSIsSyriac(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13961}
13962unsafe extern "C" {
13963  pub fn xmlUCSIsTagalog(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13964}
13965unsafe extern "C" {
13966  pub fn xmlUCSIsTagbanwa(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13967}
13968unsafe extern "C" {
13969  pub fn xmlUCSIsTags(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13970}
13971unsafe extern "C" {
13972  pub fn xmlUCSIsTaiLe(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13973}
13974unsafe extern "C" {
13975  pub fn xmlUCSIsTaiXuanJingSymbols(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13976}
13977unsafe extern "C" {
13978  pub fn xmlUCSIsTamil(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13979}
13980unsafe extern "C" {
13981  pub fn xmlUCSIsTelugu(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13982}
13983unsafe extern "C" {
13984  pub fn xmlUCSIsThaana(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13985}
13986unsafe extern "C" {
13987  pub fn xmlUCSIsThai(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13988}
13989unsafe extern "C" {
13990  pub fn xmlUCSIsTibetan(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13991}
13992unsafe extern "C" {
13993  pub fn xmlUCSIsUgaritic(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
13994}
13995unsafe extern "C" {
13996  pub fn xmlUCSIsUnifiedCanadianAboriginalSyllabics(
13997    code: ::std::os::raw::c_int,
13998  ) -> ::std::os::raw::c_int;
13999}
14000unsafe extern "C" {
14001  pub fn xmlUCSIsVariationSelectors(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14002}
14003unsafe extern "C" {
14004  pub fn xmlUCSIsVariationSelectorsSupplement(code: ::std::os::raw::c_int)
14005  -> ::std::os::raw::c_int;
14006}
14007unsafe extern "C" {
14008  pub fn xmlUCSIsYiRadicals(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14009}
14010unsafe extern "C" {
14011  pub fn xmlUCSIsYiSyllables(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14012}
14013unsafe extern "C" {
14014  pub fn xmlUCSIsYijingHexagramSymbols(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14015}
14016unsafe extern "C" {
14017  pub fn xmlUCSIsBlock(
14018    code: ::std::os::raw::c_int,
14019    block: *const ::std::os::raw::c_char,
14020  ) -> ::std::os::raw::c_int;
14021}
14022unsafe extern "C" {
14023  pub fn xmlUCSIsCatC(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14024}
14025unsafe extern "C" {
14026  pub fn xmlUCSIsCatCc(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14027}
14028unsafe extern "C" {
14029  pub fn xmlUCSIsCatCf(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14030}
14031unsafe extern "C" {
14032  pub fn xmlUCSIsCatCo(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14033}
14034unsafe extern "C" {
14035  pub fn xmlUCSIsCatCs(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14036}
14037unsafe extern "C" {
14038  pub fn xmlUCSIsCatL(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14039}
14040unsafe extern "C" {
14041  pub fn xmlUCSIsCatLl(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14042}
14043unsafe extern "C" {
14044  pub fn xmlUCSIsCatLm(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14045}
14046unsafe extern "C" {
14047  pub fn xmlUCSIsCatLo(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14048}
14049unsafe extern "C" {
14050  pub fn xmlUCSIsCatLt(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14051}
14052unsafe extern "C" {
14053  pub fn xmlUCSIsCatLu(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14054}
14055unsafe extern "C" {
14056  pub fn xmlUCSIsCatM(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14057}
14058unsafe extern "C" {
14059  pub fn xmlUCSIsCatMc(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14060}
14061unsafe extern "C" {
14062  pub fn xmlUCSIsCatMe(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14063}
14064unsafe extern "C" {
14065  pub fn xmlUCSIsCatMn(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14066}
14067unsafe extern "C" {
14068  pub fn xmlUCSIsCatN(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14069}
14070unsafe extern "C" {
14071  pub fn xmlUCSIsCatNd(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14072}
14073unsafe extern "C" {
14074  pub fn xmlUCSIsCatNl(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14075}
14076unsafe extern "C" {
14077  pub fn xmlUCSIsCatNo(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14078}
14079unsafe extern "C" {
14080  pub fn xmlUCSIsCatP(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14081}
14082unsafe extern "C" {
14083  pub fn xmlUCSIsCatPc(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14084}
14085unsafe extern "C" {
14086  pub fn xmlUCSIsCatPd(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14087}
14088unsafe extern "C" {
14089  pub fn xmlUCSIsCatPe(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14090}
14091unsafe extern "C" {
14092  pub fn xmlUCSIsCatPf(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14093}
14094unsafe extern "C" {
14095  pub fn xmlUCSIsCatPi(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14096}
14097unsafe extern "C" {
14098  pub fn xmlUCSIsCatPo(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14099}
14100unsafe extern "C" {
14101  pub fn xmlUCSIsCatPs(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14102}
14103unsafe extern "C" {
14104  pub fn xmlUCSIsCatS(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14105}
14106unsafe extern "C" {
14107  pub fn xmlUCSIsCatSc(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14108}
14109unsafe extern "C" {
14110  pub fn xmlUCSIsCatSk(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14111}
14112unsafe extern "C" {
14113  pub fn xmlUCSIsCatSm(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14114}
14115unsafe extern "C" {
14116  pub fn xmlUCSIsCatSo(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14117}
14118unsafe extern "C" {
14119  pub fn xmlUCSIsCatZ(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14120}
14121unsafe extern "C" {
14122  pub fn xmlUCSIsCatZl(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14123}
14124unsafe extern "C" {
14125  pub fn xmlUCSIsCatZp(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14126}
14127unsafe extern "C" {
14128  pub fn xmlUCSIsCatZs(code: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14129}
14130unsafe extern "C" {
14131  pub fn xmlUCSIsCat(
14132    code: ::std::os::raw::c_int,
14133    cat: *const ::std::os::raw::c_char,
14134  ) -> ::std::os::raw::c_int;
14135}
14136#[repr(C)]
14137#[derive(Debug, Copy, Clone)]
14138pub struct _xmlTextWriter {
14139  _unused: [u8; 0],
14140}
14141pub type xmlTextWriter = _xmlTextWriter;
14142pub type xmlTextWriterPtr = *mut xmlTextWriter;
14143unsafe extern "C" {
14144  pub fn xmlNewTextWriter(out: xmlOutputBufferPtr) -> xmlTextWriterPtr;
14145}
14146unsafe extern "C" {
14147  pub fn xmlNewTextWriterFilename(
14148    uri: *const ::std::os::raw::c_char,
14149    compression: ::std::os::raw::c_int,
14150  ) -> xmlTextWriterPtr;
14151}
14152unsafe extern "C" {
14153  pub fn xmlNewTextWriterMemory(
14154    buf: xmlBufferPtr,
14155    compression: ::std::os::raw::c_int,
14156  ) -> xmlTextWriterPtr;
14157}
14158unsafe extern "C" {
14159  pub fn xmlNewTextWriterPushParser(
14160    ctxt: xmlParserCtxtPtr,
14161    compression: ::std::os::raw::c_int,
14162  ) -> xmlTextWriterPtr;
14163}
14164unsafe extern "C" {
14165  pub fn xmlNewTextWriterDoc(
14166    doc: *mut xmlDocPtr,
14167    compression: ::std::os::raw::c_int,
14168  ) -> xmlTextWriterPtr;
14169}
14170unsafe extern "C" {
14171  pub fn xmlNewTextWriterTree(
14172    doc: xmlDocPtr,
14173    node: xmlNodePtr,
14174    compression: ::std::os::raw::c_int,
14175  ) -> xmlTextWriterPtr;
14176}
14177unsafe extern "C" {
14178  pub fn xmlFreeTextWriter(writer: xmlTextWriterPtr);
14179}
14180unsafe extern "C" {
14181  pub fn xmlTextWriterStartDocument(
14182    writer: xmlTextWriterPtr,
14183    version: *const ::std::os::raw::c_char,
14184    encoding: *const ::std::os::raw::c_char,
14185    standalone: *const ::std::os::raw::c_char,
14186  ) -> ::std::os::raw::c_int;
14187}
14188unsafe extern "C" {
14189  pub fn xmlTextWriterEndDocument(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14190}
14191unsafe extern "C" {
14192  pub fn xmlTextWriterStartComment(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14193}
14194unsafe extern "C" {
14195  pub fn xmlTextWriterEndComment(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14196}
14197unsafe extern "C" {
14198  pub fn xmlTextWriterWriteFormatComment(
14199    writer: xmlTextWriterPtr,
14200    format: *const ::std::os::raw::c_char,
14201    ...
14202  ) -> ::std::os::raw::c_int;
14203}
14204unsafe extern "C" {
14205  pub fn xmlTextWriterWriteVFormatComment(
14206    writer: xmlTextWriterPtr,
14207    format: *const ::std::os::raw::c_char,
14208    argptr: *mut __va_list_tag,
14209  ) -> ::std::os::raw::c_int;
14210}
14211unsafe extern "C" {
14212  pub fn xmlTextWriterWriteComment(
14213    writer: xmlTextWriterPtr,
14214    content: *const xmlChar,
14215  ) -> ::std::os::raw::c_int;
14216}
14217unsafe extern "C" {
14218  pub fn xmlTextWriterStartElement(
14219    writer: xmlTextWriterPtr,
14220    name: *const xmlChar,
14221  ) -> ::std::os::raw::c_int;
14222}
14223unsafe extern "C" {
14224  pub fn xmlTextWriterStartElementNS(
14225    writer: xmlTextWriterPtr,
14226    prefix: *const xmlChar,
14227    name: *const xmlChar,
14228    namespaceURI: *const xmlChar,
14229  ) -> ::std::os::raw::c_int;
14230}
14231unsafe extern "C" {
14232  pub fn xmlTextWriterEndElement(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14233}
14234unsafe extern "C" {
14235  pub fn xmlTextWriterFullEndElement(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14236}
14237unsafe extern "C" {
14238  pub fn xmlTextWriterWriteFormatElement(
14239    writer: xmlTextWriterPtr,
14240    name: *const xmlChar,
14241    format: *const ::std::os::raw::c_char,
14242    ...
14243  ) -> ::std::os::raw::c_int;
14244}
14245unsafe extern "C" {
14246  pub fn xmlTextWriterWriteVFormatElement(
14247    writer: xmlTextWriterPtr,
14248    name: *const xmlChar,
14249    format: *const ::std::os::raw::c_char,
14250    argptr: *mut __va_list_tag,
14251  ) -> ::std::os::raw::c_int;
14252}
14253unsafe extern "C" {
14254  pub fn xmlTextWriterWriteElement(
14255    writer: xmlTextWriterPtr,
14256    name: *const xmlChar,
14257    content: *const xmlChar,
14258  ) -> ::std::os::raw::c_int;
14259}
14260unsafe extern "C" {
14261  pub fn xmlTextWriterWriteFormatElementNS(
14262    writer: xmlTextWriterPtr,
14263    prefix: *const xmlChar,
14264    name: *const xmlChar,
14265    namespaceURI: *const xmlChar,
14266    format: *const ::std::os::raw::c_char,
14267    ...
14268  ) -> ::std::os::raw::c_int;
14269}
14270unsafe extern "C" {
14271  pub fn xmlTextWriterWriteVFormatElementNS(
14272    writer: xmlTextWriterPtr,
14273    prefix: *const xmlChar,
14274    name: *const xmlChar,
14275    namespaceURI: *const xmlChar,
14276    format: *const ::std::os::raw::c_char,
14277    argptr: *mut __va_list_tag,
14278  ) -> ::std::os::raw::c_int;
14279}
14280unsafe extern "C" {
14281  pub fn xmlTextWriterWriteElementNS(
14282    writer: xmlTextWriterPtr,
14283    prefix: *const xmlChar,
14284    name: *const xmlChar,
14285    namespaceURI: *const xmlChar,
14286    content: *const xmlChar,
14287  ) -> ::std::os::raw::c_int;
14288}
14289unsafe extern "C" {
14290  pub fn xmlTextWriterWriteFormatRaw(
14291    writer: xmlTextWriterPtr,
14292    format: *const ::std::os::raw::c_char,
14293    ...
14294  ) -> ::std::os::raw::c_int;
14295}
14296unsafe extern "C" {
14297  pub fn xmlTextWriterWriteVFormatRaw(
14298    writer: xmlTextWriterPtr,
14299    format: *const ::std::os::raw::c_char,
14300    argptr: *mut __va_list_tag,
14301  ) -> ::std::os::raw::c_int;
14302}
14303unsafe extern "C" {
14304  pub fn xmlTextWriterWriteRawLen(
14305    writer: xmlTextWriterPtr,
14306    content: *const xmlChar,
14307    len: ::std::os::raw::c_int,
14308  ) -> ::std::os::raw::c_int;
14309}
14310unsafe extern "C" {
14311  pub fn xmlTextWriterWriteRaw(
14312    writer: xmlTextWriterPtr,
14313    content: *const xmlChar,
14314  ) -> ::std::os::raw::c_int;
14315}
14316unsafe extern "C" {
14317  pub fn xmlTextWriterWriteFormatString(
14318    writer: xmlTextWriterPtr,
14319    format: *const ::std::os::raw::c_char,
14320    ...
14321  ) -> ::std::os::raw::c_int;
14322}
14323unsafe extern "C" {
14324  pub fn xmlTextWriterWriteVFormatString(
14325    writer: xmlTextWriterPtr,
14326    format: *const ::std::os::raw::c_char,
14327    argptr: *mut __va_list_tag,
14328  ) -> ::std::os::raw::c_int;
14329}
14330unsafe extern "C" {
14331  pub fn xmlTextWriterWriteString(
14332    writer: xmlTextWriterPtr,
14333    content: *const xmlChar,
14334  ) -> ::std::os::raw::c_int;
14335}
14336unsafe extern "C" {
14337  pub fn xmlTextWriterWriteBase64(
14338    writer: xmlTextWriterPtr,
14339    data: *const ::std::os::raw::c_char,
14340    start: ::std::os::raw::c_int,
14341    len: ::std::os::raw::c_int,
14342  ) -> ::std::os::raw::c_int;
14343}
14344unsafe extern "C" {
14345  pub fn xmlTextWriterWriteBinHex(
14346    writer: xmlTextWriterPtr,
14347    data: *const ::std::os::raw::c_char,
14348    start: ::std::os::raw::c_int,
14349    len: ::std::os::raw::c_int,
14350  ) -> ::std::os::raw::c_int;
14351}
14352unsafe extern "C" {
14353  pub fn xmlTextWriterStartAttribute(
14354    writer: xmlTextWriterPtr,
14355    name: *const xmlChar,
14356  ) -> ::std::os::raw::c_int;
14357}
14358unsafe extern "C" {
14359  pub fn xmlTextWriterStartAttributeNS(
14360    writer: xmlTextWriterPtr,
14361    prefix: *const xmlChar,
14362    name: *const xmlChar,
14363    namespaceURI: *const xmlChar,
14364  ) -> ::std::os::raw::c_int;
14365}
14366unsafe extern "C" {
14367  pub fn xmlTextWriterEndAttribute(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14368}
14369unsafe extern "C" {
14370  pub fn xmlTextWriterWriteFormatAttribute(
14371    writer: xmlTextWriterPtr,
14372    name: *const xmlChar,
14373    format: *const ::std::os::raw::c_char,
14374    ...
14375  ) -> ::std::os::raw::c_int;
14376}
14377unsafe extern "C" {
14378  pub fn xmlTextWriterWriteVFormatAttribute(
14379    writer: xmlTextWriterPtr,
14380    name: *const xmlChar,
14381    format: *const ::std::os::raw::c_char,
14382    argptr: *mut __va_list_tag,
14383  ) -> ::std::os::raw::c_int;
14384}
14385unsafe extern "C" {
14386  pub fn xmlTextWriterWriteAttribute(
14387    writer: xmlTextWriterPtr,
14388    name: *const xmlChar,
14389    content: *const xmlChar,
14390  ) -> ::std::os::raw::c_int;
14391}
14392unsafe extern "C" {
14393  pub fn xmlTextWriterWriteFormatAttributeNS(
14394    writer: xmlTextWriterPtr,
14395    prefix: *const xmlChar,
14396    name: *const xmlChar,
14397    namespaceURI: *const xmlChar,
14398    format: *const ::std::os::raw::c_char,
14399    ...
14400  ) -> ::std::os::raw::c_int;
14401}
14402unsafe extern "C" {
14403  pub fn xmlTextWriterWriteVFormatAttributeNS(
14404    writer: xmlTextWriterPtr,
14405    prefix: *const xmlChar,
14406    name: *const xmlChar,
14407    namespaceURI: *const xmlChar,
14408    format: *const ::std::os::raw::c_char,
14409    argptr: *mut __va_list_tag,
14410  ) -> ::std::os::raw::c_int;
14411}
14412unsafe extern "C" {
14413  pub fn xmlTextWriterWriteAttributeNS(
14414    writer: xmlTextWriterPtr,
14415    prefix: *const xmlChar,
14416    name: *const xmlChar,
14417    namespaceURI: *const xmlChar,
14418    content: *const xmlChar,
14419  ) -> ::std::os::raw::c_int;
14420}
14421unsafe extern "C" {
14422  pub fn xmlTextWriterStartPI(
14423    writer: xmlTextWriterPtr,
14424    target: *const xmlChar,
14425  ) -> ::std::os::raw::c_int;
14426}
14427unsafe extern "C" {
14428  pub fn xmlTextWriterEndPI(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14429}
14430unsafe extern "C" {
14431  pub fn xmlTextWriterWriteFormatPI(
14432    writer: xmlTextWriterPtr,
14433    target: *const xmlChar,
14434    format: *const ::std::os::raw::c_char,
14435    ...
14436  ) -> ::std::os::raw::c_int;
14437}
14438unsafe extern "C" {
14439  pub fn xmlTextWriterWriteVFormatPI(
14440    writer: xmlTextWriterPtr,
14441    target: *const xmlChar,
14442    format: *const ::std::os::raw::c_char,
14443    argptr: *mut __va_list_tag,
14444  ) -> ::std::os::raw::c_int;
14445}
14446unsafe extern "C" {
14447  pub fn xmlTextWriterWritePI(
14448    writer: xmlTextWriterPtr,
14449    target: *const xmlChar,
14450    content: *const xmlChar,
14451  ) -> ::std::os::raw::c_int;
14452}
14453unsafe extern "C" {
14454  pub fn xmlTextWriterStartCDATA(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14455}
14456unsafe extern "C" {
14457  pub fn xmlTextWriterEndCDATA(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14458}
14459unsafe extern "C" {
14460  pub fn xmlTextWriterWriteFormatCDATA(
14461    writer: xmlTextWriterPtr,
14462    format: *const ::std::os::raw::c_char,
14463    ...
14464  ) -> ::std::os::raw::c_int;
14465}
14466unsafe extern "C" {
14467  pub fn xmlTextWriterWriteVFormatCDATA(
14468    writer: xmlTextWriterPtr,
14469    format: *const ::std::os::raw::c_char,
14470    argptr: *mut __va_list_tag,
14471  ) -> ::std::os::raw::c_int;
14472}
14473unsafe extern "C" {
14474  pub fn xmlTextWriterWriteCDATA(
14475    writer: xmlTextWriterPtr,
14476    content: *const xmlChar,
14477  ) -> ::std::os::raw::c_int;
14478}
14479unsafe extern "C" {
14480  pub fn xmlTextWriterStartDTD(
14481    writer: xmlTextWriterPtr,
14482    name: *const xmlChar,
14483    pubid: *const xmlChar,
14484    sysid: *const xmlChar,
14485  ) -> ::std::os::raw::c_int;
14486}
14487unsafe extern "C" {
14488  pub fn xmlTextWriterEndDTD(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14489}
14490unsafe extern "C" {
14491  pub fn xmlTextWriterWriteFormatDTD(
14492    writer: xmlTextWriterPtr,
14493    name: *const xmlChar,
14494    pubid: *const xmlChar,
14495    sysid: *const xmlChar,
14496    format: *const ::std::os::raw::c_char,
14497    ...
14498  ) -> ::std::os::raw::c_int;
14499}
14500unsafe extern "C" {
14501  pub fn xmlTextWriterWriteVFormatDTD(
14502    writer: xmlTextWriterPtr,
14503    name: *const xmlChar,
14504    pubid: *const xmlChar,
14505    sysid: *const xmlChar,
14506    format: *const ::std::os::raw::c_char,
14507    argptr: *mut __va_list_tag,
14508  ) -> ::std::os::raw::c_int;
14509}
14510unsafe extern "C" {
14511  pub fn xmlTextWriterWriteDTD(
14512    writer: xmlTextWriterPtr,
14513    name: *const xmlChar,
14514    pubid: *const xmlChar,
14515    sysid: *const xmlChar,
14516    subset: *const xmlChar,
14517  ) -> ::std::os::raw::c_int;
14518}
14519unsafe extern "C" {
14520  pub fn xmlTextWriterStartDTDElement(
14521    writer: xmlTextWriterPtr,
14522    name: *const xmlChar,
14523  ) -> ::std::os::raw::c_int;
14524}
14525unsafe extern "C" {
14526  pub fn xmlTextWriterEndDTDElement(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14527}
14528unsafe extern "C" {
14529  pub fn xmlTextWriterWriteFormatDTDElement(
14530    writer: xmlTextWriterPtr,
14531    name: *const xmlChar,
14532    format: *const ::std::os::raw::c_char,
14533    ...
14534  ) -> ::std::os::raw::c_int;
14535}
14536unsafe extern "C" {
14537  pub fn xmlTextWriterWriteVFormatDTDElement(
14538    writer: xmlTextWriterPtr,
14539    name: *const xmlChar,
14540    format: *const ::std::os::raw::c_char,
14541    argptr: *mut __va_list_tag,
14542  ) -> ::std::os::raw::c_int;
14543}
14544unsafe extern "C" {
14545  pub fn xmlTextWriterWriteDTDElement(
14546    writer: xmlTextWriterPtr,
14547    name: *const xmlChar,
14548    content: *const xmlChar,
14549  ) -> ::std::os::raw::c_int;
14550}
14551unsafe extern "C" {
14552  pub fn xmlTextWriterStartDTDAttlist(
14553    writer: xmlTextWriterPtr,
14554    name: *const xmlChar,
14555  ) -> ::std::os::raw::c_int;
14556}
14557unsafe extern "C" {
14558  pub fn xmlTextWriterEndDTDAttlist(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14559}
14560unsafe extern "C" {
14561  pub fn xmlTextWriterWriteFormatDTDAttlist(
14562    writer: xmlTextWriterPtr,
14563    name: *const xmlChar,
14564    format: *const ::std::os::raw::c_char,
14565    ...
14566  ) -> ::std::os::raw::c_int;
14567}
14568unsafe extern "C" {
14569  pub fn xmlTextWriterWriteVFormatDTDAttlist(
14570    writer: xmlTextWriterPtr,
14571    name: *const xmlChar,
14572    format: *const ::std::os::raw::c_char,
14573    argptr: *mut __va_list_tag,
14574  ) -> ::std::os::raw::c_int;
14575}
14576unsafe extern "C" {
14577  pub fn xmlTextWriterWriteDTDAttlist(
14578    writer: xmlTextWriterPtr,
14579    name: *const xmlChar,
14580    content: *const xmlChar,
14581  ) -> ::std::os::raw::c_int;
14582}
14583unsafe extern "C" {
14584  pub fn xmlTextWriterStartDTDEntity(
14585    writer: xmlTextWriterPtr,
14586    pe: ::std::os::raw::c_int,
14587    name: *const xmlChar,
14588  ) -> ::std::os::raw::c_int;
14589}
14590unsafe extern "C" {
14591  pub fn xmlTextWriterEndDTDEntity(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14592}
14593unsafe extern "C" {
14594  pub fn xmlTextWriterWriteFormatDTDInternalEntity(
14595    writer: xmlTextWriterPtr,
14596    pe: ::std::os::raw::c_int,
14597    name: *const xmlChar,
14598    format: *const ::std::os::raw::c_char,
14599    ...
14600  ) -> ::std::os::raw::c_int;
14601}
14602unsafe extern "C" {
14603  pub fn xmlTextWriterWriteVFormatDTDInternalEntity(
14604    writer: xmlTextWriterPtr,
14605    pe: ::std::os::raw::c_int,
14606    name: *const xmlChar,
14607    format: *const ::std::os::raw::c_char,
14608    argptr: *mut __va_list_tag,
14609  ) -> ::std::os::raw::c_int;
14610}
14611unsafe extern "C" {
14612  pub fn xmlTextWriterWriteDTDInternalEntity(
14613    writer: xmlTextWriterPtr,
14614    pe: ::std::os::raw::c_int,
14615    name: *const xmlChar,
14616    content: *const xmlChar,
14617  ) -> ::std::os::raw::c_int;
14618}
14619unsafe extern "C" {
14620  pub fn xmlTextWriterWriteDTDExternalEntity(
14621    writer: xmlTextWriterPtr,
14622    pe: ::std::os::raw::c_int,
14623    name: *const xmlChar,
14624    pubid: *const xmlChar,
14625    sysid: *const xmlChar,
14626    ndataid: *const xmlChar,
14627  ) -> ::std::os::raw::c_int;
14628}
14629unsafe extern "C" {
14630  pub fn xmlTextWriterWriteDTDExternalEntityContents(
14631    writer: xmlTextWriterPtr,
14632    pubid: *const xmlChar,
14633    sysid: *const xmlChar,
14634    ndataid: *const xmlChar,
14635  ) -> ::std::os::raw::c_int;
14636}
14637unsafe extern "C" {
14638  pub fn xmlTextWriterWriteDTDEntity(
14639    writer: xmlTextWriterPtr,
14640    pe: ::std::os::raw::c_int,
14641    name: *const xmlChar,
14642    pubid: *const xmlChar,
14643    sysid: *const xmlChar,
14644    ndataid: *const xmlChar,
14645    content: *const xmlChar,
14646  ) -> ::std::os::raw::c_int;
14647}
14648unsafe extern "C" {
14649  pub fn xmlTextWriterWriteDTDNotation(
14650    writer: xmlTextWriterPtr,
14651    name: *const xmlChar,
14652    pubid: *const xmlChar,
14653    sysid: *const xmlChar,
14654  ) -> ::std::os::raw::c_int;
14655}
14656unsafe extern "C" {
14657  pub fn xmlTextWriterSetIndent(
14658    writer: xmlTextWriterPtr,
14659    indent: ::std::os::raw::c_int,
14660  ) -> ::std::os::raw::c_int;
14661}
14662unsafe extern "C" {
14663  pub fn xmlTextWriterSetIndentString(
14664    writer: xmlTextWriterPtr,
14665    str_: *const xmlChar,
14666  ) -> ::std::os::raw::c_int;
14667}
14668unsafe extern "C" {
14669  pub fn xmlTextWriterSetQuoteChar(
14670    writer: xmlTextWriterPtr,
14671    quotechar: xmlChar,
14672  ) -> ::std::os::raw::c_int;
14673}
14674unsafe extern "C" {
14675  pub fn xmlTextWriterFlush(writer: xmlTextWriterPtr) -> ::std::os::raw::c_int;
14676}
14677unsafe extern "C" {
14678  pub fn xmlXPathPopBoolean(ctxt: xmlXPathParserContextPtr) -> ::std::os::raw::c_int;
14679}
14680unsafe extern "C" {
14681  pub fn xmlXPathPopNumber(ctxt: xmlXPathParserContextPtr) -> f64;
14682}
14683unsafe extern "C" {
14684  pub fn xmlXPathPopString(ctxt: xmlXPathParserContextPtr) -> *mut xmlChar;
14685}
14686unsafe extern "C" {
14687  pub fn xmlXPathPopNodeSet(ctxt: xmlXPathParserContextPtr) -> xmlNodeSetPtr;
14688}
14689unsafe extern "C" {
14690  pub fn xmlXPathPopExternal(ctxt: xmlXPathParserContextPtr) -> *mut ::std::os::raw::c_void;
14691}
14692unsafe extern "C" {
14693  pub fn xmlXPathRegisterVariableLookup(
14694    ctxt: xmlXPathContextPtr,
14695    f: xmlXPathVariableLookupFunc,
14696    data: *mut ::std::os::raw::c_void,
14697  );
14698}
14699unsafe extern "C" {
14700  pub fn xmlXPathRegisterFuncLookup(
14701    ctxt: xmlXPathContextPtr,
14702    f: xmlXPathFuncLookupFunc,
14703    funcCtxt: *mut ::std::os::raw::c_void,
14704  );
14705}
14706unsafe extern "C" {
14707  pub fn xmlXPatherror(
14708    ctxt: xmlXPathParserContextPtr,
14709    file: *const ::std::os::raw::c_char,
14710    line: ::std::os::raw::c_int,
14711    no: ::std::os::raw::c_int,
14712  );
14713}
14714unsafe extern "C" {
14715  pub fn xmlXPathErr(ctxt: xmlXPathParserContextPtr, error: ::std::os::raw::c_int);
14716}
14717unsafe extern "C" {
14718  pub fn xmlXPathDebugDumpObject(
14719    output: *mut FILE,
14720    cur: xmlXPathObjectPtr,
14721    depth: ::std::os::raw::c_int,
14722  );
14723}
14724unsafe extern "C" {
14725  pub fn xmlXPathDebugDumpCompExpr(
14726    output: *mut FILE,
14727    comp: xmlXPathCompExprPtr,
14728    depth: ::std::os::raw::c_int,
14729  );
14730}
14731unsafe extern "C" {
14732  #[doc = " NodeSet handling."]
14733  pub fn xmlXPathNodeSetContains(cur: xmlNodeSetPtr, val: xmlNodePtr) -> ::std::os::raw::c_int;
14734}
14735unsafe extern "C" {
14736  pub fn xmlXPathDifference(nodes1: xmlNodeSetPtr, nodes2: xmlNodeSetPtr) -> xmlNodeSetPtr;
14737}
14738unsafe extern "C" {
14739  pub fn xmlXPathIntersection(nodes1: xmlNodeSetPtr, nodes2: xmlNodeSetPtr) -> xmlNodeSetPtr;
14740}
14741unsafe extern "C" {
14742  pub fn xmlXPathDistinctSorted(nodes: xmlNodeSetPtr) -> xmlNodeSetPtr;
14743}
14744unsafe extern "C" {
14745  pub fn xmlXPathDistinct(nodes: xmlNodeSetPtr) -> xmlNodeSetPtr;
14746}
14747unsafe extern "C" {
14748  pub fn xmlXPathHasSameNodes(
14749    nodes1: xmlNodeSetPtr,
14750    nodes2: xmlNodeSetPtr,
14751  ) -> ::std::os::raw::c_int;
14752}
14753unsafe extern "C" {
14754  pub fn xmlXPathNodeLeadingSorted(nodes: xmlNodeSetPtr, node: xmlNodePtr) -> xmlNodeSetPtr;
14755}
14756unsafe extern "C" {
14757  pub fn xmlXPathLeadingSorted(nodes1: xmlNodeSetPtr, nodes2: xmlNodeSetPtr) -> xmlNodeSetPtr;
14758}
14759unsafe extern "C" {
14760  pub fn xmlXPathNodeLeading(nodes: xmlNodeSetPtr, node: xmlNodePtr) -> xmlNodeSetPtr;
14761}
14762unsafe extern "C" {
14763  pub fn xmlXPathLeading(nodes1: xmlNodeSetPtr, nodes2: xmlNodeSetPtr) -> xmlNodeSetPtr;
14764}
14765unsafe extern "C" {
14766  pub fn xmlXPathNodeTrailingSorted(nodes: xmlNodeSetPtr, node: xmlNodePtr) -> xmlNodeSetPtr;
14767}
14768unsafe extern "C" {
14769  pub fn xmlXPathTrailingSorted(nodes1: xmlNodeSetPtr, nodes2: xmlNodeSetPtr) -> xmlNodeSetPtr;
14770}
14771unsafe extern "C" {
14772  pub fn xmlXPathNodeTrailing(nodes: xmlNodeSetPtr, node: xmlNodePtr) -> xmlNodeSetPtr;
14773}
14774unsafe extern "C" {
14775  pub fn xmlXPathTrailing(nodes1: xmlNodeSetPtr, nodes2: xmlNodeSetPtr) -> xmlNodeSetPtr;
14776}
14777unsafe extern "C" {
14778  #[doc = " Extending a context."]
14779  pub fn xmlXPathRegisterNs(
14780    ctxt: xmlXPathContextPtr,
14781    prefix: *const xmlChar,
14782    ns_uri: *const xmlChar,
14783  ) -> ::std::os::raw::c_int;
14784}
14785unsafe extern "C" {
14786  pub fn xmlXPathNsLookup(ctxt: xmlXPathContextPtr, prefix: *const xmlChar) -> *const xmlChar;
14787}
14788unsafe extern "C" {
14789  pub fn xmlXPathRegisteredNsCleanup(ctxt: xmlXPathContextPtr);
14790}
14791unsafe extern "C" {
14792  pub fn xmlXPathRegisterFunc(
14793    ctxt: xmlXPathContextPtr,
14794    name: *const xmlChar,
14795    f: xmlXPathFunction,
14796  ) -> ::std::os::raw::c_int;
14797}
14798unsafe extern "C" {
14799  pub fn xmlXPathRegisterFuncNS(
14800    ctxt: xmlXPathContextPtr,
14801    name: *const xmlChar,
14802    ns_uri: *const xmlChar,
14803    f: xmlXPathFunction,
14804  ) -> ::std::os::raw::c_int;
14805}
14806unsafe extern "C" {
14807  pub fn xmlXPathRegisterVariable(
14808    ctxt: xmlXPathContextPtr,
14809    name: *const xmlChar,
14810    value: xmlXPathObjectPtr,
14811  ) -> ::std::os::raw::c_int;
14812}
14813unsafe extern "C" {
14814  pub fn xmlXPathRegisterVariableNS(
14815    ctxt: xmlXPathContextPtr,
14816    name: *const xmlChar,
14817    ns_uri: *const xmlChar,
14818    value: xmlXPathObjectPtr,
14819  ) -> ::std::os::raw::c_int;
14820}
14821unsafe extern "C" {
14822  pub fn xmlXPathFunctionLookup(ctxt: xmlXPathContextPtr, name: *const xmlChar)
14823  -> xmlXPathFunction;
14824}
14825unsafe extern "C" {
14826  pub fn xmlXPathFunctionLookupNS(
14827    ctxt: xmlXPathContextPtr,
14828    name: *const xmlChar,
14829    ns_uri: *const xmlChar,
14830  ) -> xmlXPathFunction;
14831}
14832unsafe extern "C" {
14833  pub fn xmlXPathRegisteredFuncsCleanup(ctxt: xmlXPathContextPtr);
14834}
14835unsafe extern "C" {
14836  pub fn xmlXPathVariableLookup(
14837    ctxt: xmlXPathContextPtr,
14838    name: *const xmlChar,
14839  ) -> xmlXPathObjectPtr;
14840}
14841unsafe extern "C" {
14842  pub fn xmlXPathVariableLookupNS(
14843    ctxt: xmlXPathContextPtr,
14844    name: *const xmlChar,
14845    ns_uri: *const xmlChar,
14846  ) -> xmlXPathObjectPtr;
14847}
14848unsafe extern "C" {
14849  pub fn xmlXPathRegisteredVariablesCleanup(ctxt: xmlXPathContextPtr);
14850}
14851unsafe extern "C" {
14852  #[doc = " Utilities to extend XPath."]
14853  pub fn xmlXPathNewParserContext(
14854    str_: *const xmlChar,
14855    ctxt: xmlXPathContextPtr,
14856  ) -> xmlXPathParserContextPtr;
14857}
14858unsafe extern "C" {
14859  pub fn xmlXPathFreeParserContext(ctxt: xmlXPathParserContextPtr);
14860}
14861unsafe extern "C" {
14862  pub fn valuePop(ctxt: xmlXPathParserContextPtr) -> xmlXPathObjectPtr;
14863}
14864unsafe extern "C" {
14865  pub fn valuePush(
14866    ctxt: xmlXPathParserContextPtr,
14867    value: xmlXPathObjectPtr,
14868  ) -> ::std::os::raw::c_int;
14869}
14870unsafe extern "C" {
14871  pub fn xmlXPathNewString(val: *const xmlChar) -> xmlXPathObjectPtr;
14872}
14873unsafe extern "C" {
14874  pub fn xmlXPathNewCString(val: *const ::std::os::raw::c_char) -> xmlXPathObjectPtr;
14875}
14876unsafe extern "C" {
14877  pub fn xmlXPathWrapString(val: *mut xmlChar) -> xmlXPathObjectPtr;
14878}
14879unsafe extern "C" {
14880  pub fn xmlXPathWrapCString(val: *mut ::std::os::raw::c_char) -> xmlXPathObjectPtr;
14881}
14882unsafe extern "C" {
14883  pub fn xmlXPathNewFloat(val: f64) -> xmlXPathObjectPtr;
14884}
14885unsafe extern "C" {
14886  pub fn xmlXPathNewBoolean(val: ::std::os::raw::c_int) -> xmlXPathObjectPtr;
14887}
14888unsafe extern "C" {
14889  pub fn xmlXPathNewNodeSet(val: xmlNodePtr) -> xmlXPathObjectPtr;
14890}
14891unsafe extern "C" {
14892  pub fn xmlXPathNewValueTree(val: xmlNodePtr) -> xmlXPathObjectPtr;
14893}
14894unsafe extern "C" {
14895  pub fn xmlXPathNodeSetAdd(cur: xmlNodeSetPtr, val: xmlNodePtr) -> ::std::os::raw::c_int;
14896}
14897unsafe extern "C" {
14898  pub fn xmlXPathNodeSetAddUnique(cur: xmlNodeSetPtr, val: xmlNodePtr) -> ::std::os::raw::c_int;
14899}
14900unsafe extern "C" {
14901  pub fn xmlXPathNodeSetAddNs(
14902    cur: xmlNodeSetPtr,
14903    node: xmlNodePtr,
14904    ns: xmlNsPtr,
14905  ) -> ::std::os::raw::c_int;
14906}
14907unsafe extern "C" {
14908  pub fn xmlXPathNodeSetSort(set: xmlNodeSetPtr);
14909}
14910unsafe extern "C" {
14911  pub fn xmlXPathRoot(ctxt: xmlXPathParserContextPtr);
14912}
14913unsafe extern "C" {
14914  pub fn xmlXPathEvalExpr(ctxt: xmlXPathParserContextPtr);
14915}
14916unsafe extern "C" {
14917  pub fn xmlXPathParseName(ctxt: xmlXPathParserContextPtr) -> *mut xmlChar;
14918}
14919unsafe extern "C" {
14920  pub fn xmlXPathParseNCName(ctxt: xmlXPathParserContextPtr) -> *mut xmlChar;
14921}
14922unsafe extern "C" {
14923  pub fn xmlXPathStringEvalNumber(str_: *const xmlChar) -> f64;
14924}
14925unsafe extern "C" {
14926  pub fn xmlXPathEvaluatePredicateResult(
14927    ctxt: xmlXPathParserContextPtr,
14928    res: xmlXPathObjectPtr,
14929  ) -> ::std::os::raw::c_int;
14930}
14931unsafe extern "C" {
14932  pub fn xmlXPathRegisterAllFunctions(ctxt: xmlXPathContextPtr);
14933}
14934unsafe extern "C" {
14935  pub fn xmlXPathNodeSetMerge(val1: xmlNodeSetPtr, val2: xmlNodeSetPtr) -> xmlNodeSetPtr;
14936}
14937unsafe extern "C" {
14938  pub fn xmlXPathNodeSetDel(cur: xmlNodeSetPtr, val: xmlNodePtr);
14939}
14940unsafe extern "C" {
14941  pub fn xmlXPathNodeSetRemove(cur: xmlNodeSetPtr, val: ::std::os::raw::c_int);
14942}
14943unsafe extern "C" {
14944  pub fn xmlXPathNewNodeSetList(val: xmlNodeSetPtr) -> xmlXPathObjectPtr;
14945}
14946unsafe extern "C" {
14947  pub fn xmlXPathWrapNodeSet(val: xmlNodeSetPtr) -> xmlXPathObjectPtr;
14948}
14949unsafe extern "C" {
14950  pub fn xmlXPathWrapExternal(val: *mut ::std::os::raw::c_void) -> xmlXPathObjectPtr;
14951}
14952unsafe extern "C" {
14953  pub fn xmlXPathEqualValues(ctxt: xmlXPathParserContextPtr) -> ::std::os::raw::c_int;
14954}
14955unsafe extern "C" {
14956  pub fn xmlXPathNotEqualValues(ctxt: xmlXPathParserContextPtr) -> ::std::os::raw::c_int;
14957}
14958unsafe extern "C" {
14959  pub fn xmlXPathCompareValues(
14960    ctxt: xmlXPathParserContextPtr,
14961    inf: ::std::os::raw::c_int,
14962    strict: ::std::os::raw::c_int,
14963  ) -> ::std::os::raw::c_int;
14964}
14965unsafe extern "C" {
14966  pub fn xmlXPathValueFlipSign(ctxt: xmlXPathParserContextPtr);
14967}
14968unsafe extern "C" {
14969  pub fn xmlXPathAddValues(ctxt: xmlXPathParserContextPtr);
14970}
14971unsafe extern "C" {
14972  pub fn xmlXPathSubValues(ctxt: xmlXPathParserContextPtr);
14973}
14974unsafe extern "C" {
14975  pub fn xmlXPathMultValues(ctxt: xmlXPathParserContextPtr);
14976}
14977unsafe extern "C" {
14978  pub fn xmlXPathDivValues(ctxt: xmlXPathParserContextPtr);
14979}
14980unsafe extern "C" {
14981  pub fn xmlXPathModValues(ctxt: xmlXPathParserContextPtr);
14982}
14983unsafe extern "C" {
14984  pub fn xmlXPathIsNodeType(name: *const xmlChar) -> ::std::os::raw::c_int;
14985}
14986unsafe extern "C" {
14987  pub fn xmlXPathNextSelf(ctxt: xmlXPathParserContextPtr, cur: xmlNodePtr) -> xmlNodePtr;
14988}
14989unsafe extern "C" {
14990  pub fn xmlXPathNextChild(ctxt: xmlXPathParserContextPtr, cur: xmlNodePtr) -> xmlNodePtr;
14991}
14992unsafe extern "C" {
14993  pub fn xmlXPathNextDescendant(ctxt: xmlXPathParserContextPtr, cur: xmlNodePtr) -> xmlNodePtr;
14994}
14995unsafe extern "C" {
14996  pub fn xmlXPathNextDescendantOrSelf(
14997    ctxt: xmlXPathParserContextPtr,
14998    cur: xmlNodePtr,
14999  ) -> xmlNodePtr;
15000}
15001unsafe extern "C" {
15002  pub fn xmlXPathNextParent(ctxt: xmlXPathParserContextPtr, cur: xmlNodePtr) -> xmlNodePtr;
15003}
15004unsafe extern "C" {
15005  pub fn xmlXPathNextAncestorOrSelf(ctxt: xmlXPathParserContextPtr, cur: xmlNodePtr) -> xmlNodePtr;
15006}
15007unsafe extern "C" {
15008  pub fn xmlXPathNextFollowingSibling(
15009    ctxt: xmlXPathParserContextPtr,
15010    cur: xmlNodePtr,
15011  ) -> xmlNodePtr;
15012}
15013unsafe extern "C" {
15014  pub fn xmlXPathNextFollowing(ctxt: xmlXPathParserContextPtr, cur: xmlNodePtr) -> xmlNodePtr;
15015}
15016unsafe extern "C" {
15017  pub fn xmlXPathNextNamespace(ctxt: xmlXPathParserContextPtr, cur: xmlNodePtr) -> xmlNodePtr;
15018}
15019unsafe extern "C" {
15020  pub fn xmlXPathNextAttribute(ctxt: xmlXPathParserContextPtr, cur: xmlNodePtr) -> xmlNodePtr;
15021}
15022unsafe extern "C" {
15023  pub fn xmlXPathNextPreceding(ctxt: xmlXPathParserContextPtr, cur: xmlNodePtr) -> xmlNodePtr;
15024}
15025unsafe extern "C" {
15026  pub fn xmlXPathNextAncestor(ctxt: xmlXPathParserContextPtr, cur: xmlNodePtr) -> xmlNodePtr;
15027}
15028unsafe extern "C" {
15029  pub fn xmlXPathNextPrecedingSibling(
15030    ctxt: xmlXPathParserContextPtr,
15031    cur: xmlNodePtr,
15032  ) -> xmlNodePtr;
15033}
15034unsafe extern "C" {
15035  pub fn xmlXPathLastFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15036}
15037unsafe extern "C" {
15038  pub fn xmlXPathPositionFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15039}
15040unsafe extern "C" {
15041  pub fn xmlXPathCountFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15042}
15043unsafe extern "C" {
15044  pub fn xmlXPathIdFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15045}
15046unsafe extern "C" {
15047  pub fn xmlXPathLocalNameFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15048}
15049unsafe extern "C" {
15050  pub fn xmlXPathNamespaceURIFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15051}
15052unsafe extern "C" {
15053  pub fn xmlXPathStringFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15054}
15055unsafe extern "C" {
15056  pub fn xmlXPathStringLengthFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15057}
15058unsafe extern "C" {
15059  pub fn xmlXPathConcatFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15060}
15061unsafe extern "C" {
15062  pub fn xmlXPathContainsFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15063}
15064unsafe extern "C" {
15065  pub fn xmlXPathStartsWithFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15066}
15067unsafe extern "C" {
15068  pub fn xmlXPathSubstringFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15069}
15070unsafe extern "C" {
15071  pub fn xmlXPathSubstringBeforeFunction(
15072    ctxt: xmlXPathParserContextPtr,
15073    nargs: ::std::os::raw::c_int,
15074  );
15075}
15076unsafe extern "C" {
15077  pub fn xmlXPathSubstringAfterFunction(
15078    ctxt: xmlXPathParserContextPtr,
15079    nargs: ::std::os::raw::c_int,
15080  );
15081}
15082unsafe extern "C" {
15083  pub fn xmlXPathNormalizeFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15084}
15085unsafe extern "C" {
15086  pub fn xmlXPathTranslateFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15087}
15088unsafe extern "C" {
15089  pub fn xmlXPathNotFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15090}
15091unsafe extern "C" {
15092  pub fn xmlXPathTrueFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15093}
15094unsafe extern "C" {
15095  pub fn xmlXPathFalseFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15096}
15097unsafe extern "C" {
15098  pub fn xmlXPathLangFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15099}
15100unsafe extern "C" {
15101  pub fn xmlXPathNumberFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15102}
15103unsafe extern "C" {
15104  pub fn xmlXPathSumFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15105}
15106unsafe extern "C" {
15107  pub fn xmlXPathFloorFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15108}
15109unsafe extern "C" {
15110  pub fn xmlXPathCeilingFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15111}
15112unsafe extern "C" {
15113  pub fn xmlXPathRoundFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15114}
15115unsafe extern "C" {
15116  pub fn xmlXPathBooleanFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15117}
15118unsafe extern "C" {
15119  #[doc = " Really internal functions"]
15120  pub fn xmlXPathNodeSetFreeNs(ns: xmlNsPtr);
15121}
15122pub type xmlLocationSet = _xmlLocationSet;
15123pub type xmlLocationSetPtr = *mut xmlLocationSet;
15124#[repr(C)]
15125#[derive(Debug, Copy, Clone)]
15126pub struct _xmlLocationSet {
15127  pub locNr: ::std::os::raw::c_int,
15128  pub locMax: ::std::os::raw::c_int,
15129  pub locTab: *mut xmlXPathObjectPtr,
15130}
15131#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15132const _: () = {
15133  ["Size of _xmlLocationSet"][::std::mem::size_of::<_xmlLocationSet>() - 16usize];
15134  ["Alignment of _xmlLocationSet"][::std::mem::align_of::<_xmlLocationSet>() - 8usize];
15135  ["Offset of field: _xmlLocationSet::locNr"]
15136    [::std::mem::offset_of!(_xmlLocationSet, locNr) - 0usize];
15137  ["Offset of field: _xmlLocationSet::locMax"]
15138    [::std::mem::offset_of!(_xmlLocationSet, locMax) - 4usize];
15139  ["Offset of field: _xmlLocationSet::locTab"]
15140    [::std::mem::offset_of!(_xmlLocationSet, locTab) - 8usize];
15141};
15142unsafe extern "C" {
15143  pub fn xmlXPtrLocationSetCreate(val: xmlXPathObjectPtr) -> xmlLocationSetPtr;
15144}
15145unsafe extern "C" {
15146  pub fn xmlXPtrFreeLocationSet(obj: xmlLocationSetPtr);
15147}
15148unsafe extern "C" {
15149  pub fn xmlXPtrLocationSetMerge(
15150    val1: xmlLocationSetPtr,
15151    val2: xmlLocationSetPtr,
15152  ) -> xmlLocationSetPtr;
15153}
15154unsafe extern "C" {
15155  pub fn xmlXPtrNewRange(
15156    start: xmlNodePtr,
15157    startindex: ::std::os::raw::c_int,
15158    end: xmlNodePtr,
15159    endindex: ::std::os::raw::c_int,
15160  ) -> xmlXPathObjectPtr;
15161}
15162unsafe extern "C" {
15163  pub fn xmlXPtrNewRangePoints(
15164    start: xmlXPathObjectPtr,
15165    end: xmlXPathObjectPtr,
15166  ) -> xmlXPathObjectPtr;
15167}
15168unsafe extern "C" {
15169  pub fn xmlXPtrNewRangeNodePoint(start: xmlNodePtr, end: xmlXPathObjectPtr) -> xmlXPathObjectPtr;
15170}
15171unsafe extern "C" {
15172  pub fn xmlXPtrNewRangePointNode(start: xmlXPathObjectPtr, end: xmlNodePtr) -> xmlXPathObjectPtr;
15173}
15174unsafe extern "C" {
15175  pub fn xmlXPtrNewRangeNodes(start: xmlNodePtr, end: xmlNodePtr) -> xmlXPathObjectPtr;
15176}
15177unsafe extern "C" {
15178  pub fn xmlXPtrNewLocationSetNodes(start: xmlNodePtr, end: xmlNodePtr) -> xmlXPathObjectPtr;
15179}
15180unsafe extern "C" {
15181  pub fn xmlXPtrNewLocationSetNodeSet(set: xmlNodeSetPtr) -> xmlXPathObjectPtr;
15182}
15183unsafe extern "C" {
15184  pub fn xmlXPtrNewRangeNodeObject(start: xmlNodePtr, end: xmlXPathObjectPtr) -> xmlXPathObjectPtr;
15185}
15186unsafe extern "C" {
15187  pub fn xmlXPtrNewCollapsedRange(start: xmlNodePtr) -> xmlXPathObjectPtr;
15188}
15189unsafe extern "C" {
15190  pub fn xmlXPtrLocationSetAdd(cur: xmlLocationSetPtr, val: xmlXPathObjectPtr);
15191}
15192unsafe extern "C" {
15193  pub fn xmlXPtrWrapLocationSet(val: xmlLocationSetPtr) -> xmlXPathObjectPtr;
15194}
15195unsafe extern "C" {
15196  pub fn xmlXPtrLocationSetDel(cur: xmlLocationSetPtr, val: xmlXPathObjectPtr);
15197}
15198unsafe extern "C" {
15199  pub fn xmlXPtrLocationSetRemove(cur: xmlLocationSetPtr, val: ::std::os::raw::c_int);
15200}
15201unsafe extern "C" {
15202  pub fn xmlXPtrNewContext(
15203    doc: xmlDocPtr,
15204    here: xmlNodePtr,
15205    origin: xmlNodePtr,
15206  ) -> xmlXPathContextPtr;
15207}
15208unsafe extern "C" {
15209  pub fn xmlXPtrEval(str_: *const xmlChar, ctx: xmlXPathContextPtr) -> xmlXPathObjectPtr;
15210}
15211unsafe extern "C" {
15212  pub fn xmlXPtrRangeToFunction(ctxt: xmlXPathParserContextPtr, nargs: ::std::os::raw::c_int);
15213}
15214unsafe extern "C" {
15215  pub fn xmlXPtrBuildNodeList(obj: xmlXPathObjectPtr) -> xmlNodePtr;
15216}
15217unsafe extern "C" {
15218  pub fn xmlXPtrEvalRangePredicate(ctxt: xmlXPathParserContextPtr);
15219}
15220pub type __builtin_va_list = [__va_list_tag; 1usize];
15221#[repr(C)]
15222#[derive(Debug, Copy, Clone)]
15223pub struct __va_list_tag {
15224  pub gp_offset: ::std::os::raw::c_uint,
15225  pub fp_offset: ::std::os::raw::c_uint,
15226  pub overflow_arg_area: *mut ::std::os::raw::c_void,
15227  pub reg_save_area: *mut ::std::os::raw::c_void,
15228}
15229#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15230const _: () = {
15231  ["Size of __va_list_tag"][::std::mem::size_of::<__va_list_tag>() - 24usize];
15232  ["Alignment of __va_list_tag"][::std::mem::align_of::<__va_list_tag>() - 8usize];
15233  ["Offset of field: __va_list_tag::gp_offset"]
15234    [::std::mem::offset_of!(__va_list_tag, gp_offset) - 0usize];
15235  ["Offset of field: __va_list_tag::fp_offset"]
15236    [::std::mem::offset_of!(__va_list_tag, fp_offset) - 4usize];
15237  ["Offset of field: __va_list_tag::overflow_arg_area"]
15238    [::std::mem::offset_of!(__va_list_tag, overflow_arg_area) - 8usize];
15239  ["Offset of field: __va_list_tag::reg_save_area"]
15240    [::std::mem::offset_of!(__va_list_tag, reg_save_area) - 16usize];
15241};