1pub const _STDIO_H: u32 = 1;
4pub const _FEATURES_H: u32 = 1;
5pub const _DEFAULT_SOURCE: u32 = 1;
6pub const __GLIBC_USE_ISOC2X: u32 = 0;
7pub const __USE_ISOC11: u32 = 1;
8pub const __USE_ISOC99: u32 = 1;
9pub const __USE_ISOC95: u32 = 1;
10pub const __USE_POSIX_IMPLICITLY: u32 = 1;
11pub const _POSIX_SOURCE: u32 = 1;
12pub const _POSIX_C_SOURCE: u32 = 200809;
13pub const __USE_POSIX: u32 = 1;
14pub const __USE_POSIX2: u32 = 1;
15pub const __USE_POSIX199309: u32 = 1;
16pub const __USE_POSIX199506: u32 = 1;
17pub const __USE_XOPEN2K: u32 = 1;
18pub const __USE_XOPEN2K8: u32 = 1;
19pub const _ATFILE_SOURCE: u32 = 1;
20pub const __WORDSIZE: u32 = 64;
21pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
22pub const __SYSCALL_WORDSIZE: u32 = 64;
23pub const __TIMESIZE: u32 = 64;
24pub const __USE_MISC: u32 = 1;
25pub const __USE_ATFILE: u32 = 1;
26pub const __USE_FORTIFY_LEVEL: u32 = 0;
27pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0;
28pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0;
29pub const __GLIBC_USE_C2X_STRTOL: u32 = 0;
30pub const _STDC_PREDEF_H: u32 = 1;
31pub const __STDC_IEC_559__: u32 = 1;
32pub const __STDC_IEC_60559_BFP__: u32 = 201404;
33pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
34pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404;
35pub const __STDC_ISO_10646__: u32 = 201706;
36pub const __GNU_LIBRARY__: u32 = 6;
37pub const __GLIBC__: u32 = 2;
38pub const __GLIBC_MINOR__: u32 = 39;
39pub const _SYS_CDEFS_H: u32 = 1;
40pub const __glibc_c99_flexarr_available: u32 = 1;
41pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0;
42pub const __HAVE_GENERIC_SELECTION: u32 = 1;
43pub const __GLIBC_USE_LIB_EXT2: u32 = 0;
44pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0;
45pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0;
46pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0;
47pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
48pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0;
49pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
50pub const _BITS_TYPES_H: u32 = 1;
51pub const _BITS_TYPESIZES_H: u32 = 1;
52pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
53pub const __INO_T_MATCHES_INO64_T: u32 = 1;
54pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
55pub const __STATFS_MATCHES_STATFS64: u32 = 1;
56pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1;
57pub const __FD_SETSIZE: u32 = 1024;
58pub const _BITS_TIME64_H: u32 = 1;
59pub const _____fpos_t_defined: u32 = 1;
60pub const ____mbstate_t_defined: u32 = 1;
61pub const _____fpos64_t_defined: u32 = 1;
62pub const ____FILE_defined: u32 = 1;
63pub const __FILE_defined: u32 = 1;
64pub const __struct_FILE_defined: u32 = 1;
65pub const _IO_EOF_SEEN: u32 = 16;
66pub const _IO_ERR_SEEN: u32 = 32;
67pub const _IO_USER_LOCK: u32 = 32768;
68pub const __cookie_io_functions_t_defined: u32 = 1;
69pub const _IOFBF: u32 = 0;
70pub const _IOLBF: u32 = 1;
71pub const _IONBF: u32 = 2;
72pub const BUFSIZ: u32 = 8192;
73pub const EOF: i32 = -1;
74pub const SEEK_SET: u32 = 0;
75pub const SEEK_CUR: u32 = 1;
76pub const SEEK_END: u32 = 2;
77pub const P_tmpdir: &[u8; 5] = b"/tmp\0";
78pub const L_tmpnam: u32 = 20;
79pub const TMP_MAX: u32 = 238328;
80pub const _BITS_STDIO_LIM_H: u32 = 1;
81pub const FILENAME_MAX: u32 = 4096;
82pub const L_ctermid: u32 = 9;
83pub const FOPEN_MAX: u32 = 16;
84pub const __HAVE_FLOAT128: u32 = 0;
85pub const __HAVE_DISTINCT_FLOAT128: u32 = 0;
86pub const __HAVE_FLOAT64X: u32 = 1;
87pub const __HAVE_FLOAT64X_LONG_DOUBLE: u32 = 1;
88pub const __HAVE_FLOAT16: u32 = 0;
89pub const __HAVE_FLOAT32: u32 = 1;
90pub const __HAVE_FLOAT64: u32 = 1;
91pub const __HAVE_FLOAT32X: u32 = 1;
92pub const __HAVE_FLOAT128X: u32 = 0;
93pub const __HAVE_DISTINCT_FLOAT16: u32 = 0;
94pub const __HAVE_DISTINCT_FLOAT32: u32 = 0;
95pub const __HAVE_DISTINCT_FLOAT64: u32 = 0;
96pub const __HAVE_DISTINCT_FLOAT32X: u32 = 0;
97pub const __HAVE_DISTINCT_FLOAT64X: u32 = 0;
98pub const __HAVE_DISTINCT_FLOAT128X: u32 = 0;
99pub const __HAVE_FLOATN_NOT_TYPEDEF: u32 = 0;
100pub const _STDLIB_H: u32 = 1;
101pub const WNOHANG: u32 = 1;
102pub const WUNTRACED: u32 = 2;
103pub const WSTOPPED: u32 = 2;
104pub const WEXITED: u32 = 4;
105pub const WCONTINUED: u32 = 8;
106pub const WNOWAIT: u32 = 16777216;
107pub const __WNOTHREAD: u32 = 536870912;
108pub const __WALL: u32 = 1073741824;
109pub const __WCLONE: u32 = 2147483648;
110pub const __W_CONTINUED: u32 = 65535;
111pub const __WCOREFLAG: u32 = 128;
112pub const __ldiv_t_defined: u32 = 1;
113pub const __lldiv_t_defined: u32 = 1;
114pub const RAND_MAX: u32 = 2147483647;
115pub const EXIT_FAILURE: u32 = 1;
116pub const EXIT_SUCCESS: u32 = 0;
117pub const _SYS_TYPES_H: u32 = 1;
118pub const __clock_t_defined: u32 = 1;
119pub const __clockid_t_defined: u32 = 1;
120pub const __time_t_defined: u32 = 1;
121pub const __timer_t_defined: u32 = 1;
122pub const _BITS_STDINT_INTN_H: u32 = 1;
123pub const __BIT_TYPES_DEFINED__: u32 = 1;
124pub const _ENDIAN_H: u32 = 1;
125pub const _BITS_ENDIAN_H: u32 = 1;
126pub const __LITTLE_ENDIAN: u32 = 1234;
127pub const __BIG_ENDIAN: u32 = 4321;
128pub const __PDP_ENDIAN: u32 = 3412;
129pub const _BITS_ENDIANNESS_H: u32 = 1;
130pub const __BYTE_ORDER: u32 = 1234;
131pub const __FLOAT_WORD_ORDER: u32 = 1234;
132pub const LITTLE_ENDIAN: u32 = 1234;
133pub const BIG_ENDIAN: u32 = 4321;
134pub const PDP_ENDIAN: u32 = 3412;
135pub const BYTE_ORDER: u32 = 1234;
136pub const _BITS_BYTESWAP_H: u32 = 1;
137pub const _BITS_UINTN_IDENTITY_H: u32 = 1;
138pub const _SYS_SELECT_H: u32 = 1;
139pub const __sigset_t_defined: u32 = 1;
140pub const __timeval_defined: u32 = 1;
141pub const _STRUCT_TIMESPEC: u32 = 1;
142pub const FD_SETSIZE: u32 = 1024;
143pub const _BITS_PTHREADTYPES_COMMON_H: u32 = 1;
144pub const _THREAD_SHARED_TYPES_H: u32 = 1;
145pub const _BITS_PTHREADTYPES_ARCH_H: u32 = 1;
146pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40;
147pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56;
148pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56;
149pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32;
150pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4;
151pub const __SIZEOF_PTHREAD_COND_T: u32 = 48;
152pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4;
153pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8;
154pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4;
155pub const _THREAD_MUTEX_INTERNAL_H: u32 = 1;
156pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1;
157pub const __have_pthread_attr_t: u32 = 1;
158pub const _ALLOCA_H: u32 = 1;
159pub const _STRING_H: u32 = 1;
160pub const _BITS_TYPES_LOCALE_T_H: u32 = 1;
161pub const _BITS_TYPES___LOCALE_T_H: u32 = 1;
162pub const _STRINGS_H: u32 = 1;
163pub const _SYS_TIME_H: u32 = 1;
164pub const _MATH_H: u32 = 1;
165pub const _BITS_LIBM_SIMD_DECL_STUBS_H: u32 = 1;
166pub const __FP_LOGB0_IS_MIN: u32 = 1;
167pub const __FP_LOGBNAN_IS_MIN: u32 = 1;
168pub const FP_ILOGB0: i32 = -2147483648;
169pub const FP_ILOGBNAN: i32 = -2147483648;
170pub const __MATH_DECLARING_DOUBLE: u32 = 1;
171pub const __MATH_DECLARING_FLOATN: u32 = 0;
172pub const __MATH_DECLARE_LDOUBLE: u32 = 1;
173pub const MATH_ERRNO: u32 = 1;
174pub const MATH_ERREXCEPT: u32 = 2;
175pub const math_errhandling: u32 = 3;
176pub const M_E: f64 = 2.718281828459045;
177pub const M_LOG2E: f64 = 1.4426950408889634;
178pub const M_LOG10E: f64 = 0.4342944819032518;
179pub const M_LN2: f64 = 0.6931471805599453;
180pub const M_LN10: f64 = 2.302585092994046;
181pub const M_PI: f64 = 3.141592653589793;
182pub const M_PI_2: f64 = 1.5707963267948966;
183pub const M_PI_4: f64 = 0.7853981633974483;
184pub const M_1_PI: f64 = 0.3183098861837907;
185pub const M_2_PI: f64 = 0.6366197723675814;
186pub const M_2_SQRTPI: f64 = 1.1283791670955126;
187pub const M_SQRT2: f64 = 1.4142135623730951;
188pub const M_SQRT1_2: f64 = 0.7071067811865476;
189pub const ECCODES_VERSION_STR: &[u8; 7] = b"2.34.1\0";
190pub const ECCODES_MAJOR_VERSION: u32 = 2;
191pub const ECCODES_MINOR_VERSION: u32 = 34;
192pub const ECCODES_REVISION_VERSION: u32 = 1;
193pub const ECCODES_VERSION: u32 = 23401;
194pub const GRIB_SECTION_PRODUCT: u32 = 1;
195pub const GRIB_SECTION_GRID: u32 = 2;
196pub const GRIB_SECTION_LOCAL: u32 = 4;
197pub const GRIB_SECTION_DATA: u32 = 8;
198pub const GRIB_SECTION_BITMAP: u32 = 16;
199pub const GRIB_LOG_INFO: u32 = 0;
200pub const GRIB_LOG_WARNING: u32 = 1;
201pub const GRIB_LOG_ERROR: u32 = 2;
202pub const GRIB_LOG_FATAL: u32 = 3;
203pub const GRIB_LOG_DEBUG: u32 = 4;
204pub const GRIB_TYPE_UNDEFINED: u32 = 0;
205pub const GRIB_TYPE_LONG: u32 = 1;
206pub const GRIB_TYPE_DOUBLE: u32 = 2;
207pub const GRIB_TYPE_STRING: u32 = 3;
208pub const GRIB_TYPE_BYTES: u32 = 4;
209pub const GRIB_TYPE_SECTION: u32 = 5;
210pub const GRIB_TYPE_LABEL: u32 = 6;
211pub const GRIB_TYPE_MISSING: u32 = 7;
212pub const GRIB_MISSING_LONG: u32 = 2147483647;
213pub const GRIB_MISSING_DOUBLE : f64 = - 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0 ;
214pub const GRIB_DUMP_FLAG_READ_ONLY: u32 = 1;
215pub const GRIB_DUMP_FLAG_DUMP_OK: u32 = 2;
216pub const GRIB_DUMP_FLAG_VALUES: u32 = 4;
217pub const GRIB_DUMP_FLAG_CODED: u32 = 8;
218pub const GRIB_DUMP_FLAG_OCTET: u32 = 16;
219pub const GRIB_DUMP_FLAG_ALIASES: u32 = 32;
220pub const GRIB_DUMP_FLAG_TYPE: u32 = 64;
221pub const GRIB_DUMP_FLAG_HEXADECIMAL: u32 = 128;
222pub const GRIB_DUMP_FLAG_NO_DATA: u32 = 256;
223pub const GRIB_DUMP_FLAG_ALL_DATA: u32 = 512;
224pub const GRIB_DUMP_FLAG_ALL_ATTRIBUTES: u32 = 1024;
225pub const GRIB_NEAREST_SAME_GRID: u32 = 1;
226pub const GRIB_NEAREST_SAME_DATA: u32 = 2;
227pub const GRIB_NEAREST_SAME_POINT: u32 = 4;
228pub const GRIB_GEOITERATOR_NO_VALUES: u32 = 1;
229pub const GRIB_KEYS_ITERATOR_ALL_KEYS: u32 = 0;
230pub const GRIB_KEYS_ITERATOR_SKIP_READ_ONLY: u32 = 1;
231pub const GRIB_KEYS_ITERATOR_SKIP_OPTIONAL: u32 = 2;
232pub const GRIB_KEYS_ITERATOR_SKIP_EDITION_SPECIFIC: u32 = 4;
233pub const GRIB_KEYS_ITERATOR_SKIP_CODED: u32 = 8;
234pub const GRIB_KEYS_ITERATOR_SKIP_COMPUTED: u32 = 16;
235pub const GRIB_KEYS_ITERATOR_SKIP_DUPLICATES: u32 = 32;
236pub const GRIB_KEYS_ITERATOR_SKIP_FUNCTION: u32 = 64;
237pub const GRIB_KEYS_ITERATOR_DUMP_ONLY: u32 = 128;
238pub const GRIB_UTIL_GRID_SPEC_REGULAR_LL: u32 = 1;
239pub const GRIB_UTIL_GRID_SPEC_ROTATED_LL: u32 = 2;
240pub const GRIB_UTIL_GRID_SPEC_REGULAR_GG: u32 = 3;
241pub const GRIB_UTIL_GRID_SPEC_ROTATED_GG: u32 = 4;
242pub const GRIB_UTIL_GRID_SPEC_REDUCED_GG: u32 = 5;
243pub const GRIB_UTIL_GRID_SPEC_SH: u32 = 6;
244pub const GRIB_UTIL_GRID_SPEC_REDUCED_LL: u32 = 7;
245pub const GRIB_UTIL_GRID_SPEC_POLAR_STEREOGRAPHIC: u32 = 8;
246pub const GRIB_UTIL_GRID_SPEC_REDUCED_ROTATED_GG: u32 = 9;
247pub const GRIB_UTIL_GRID_SPEC_LAMBERT_AZIMUTHAL_EQUAL_AREA: u32 = 10;
248pub const GRIB_UTIL_GRID_SPEC_LAMBERT_CONFORMAL: u32 = 11;
249pub const GRIB_UTIL_GRID_SPEC_UNSTRUCTURED: u32 = 12;
250pub const GRIB_UTIL_GRID_SPEC_HEALPIX: u32 = 13;
251pub const GRIB_UTIL_PACKING_TYPE_SAME_AS_INPUT: u32 = 0;
252pub const GRIB_UTIL_PACKING_TYPE_SPECTRAL_COMPLEX: u32 = 1;
253pub const GRIB_UTIL_PACKING_TYPE_SPECTRAL_SIMPLE: u32 = 2;
254pub const GRIB_UTIL_PACKING_TYPE_JPEG: u32 = 3;
255pub const GRIB_UTIL_PACKING_TYPE_GRID_COMPLEX: u32 = 4;
256pub const GRIB_UTIL_PACKING_TYPE_GRID_SIMPLE: u32 = 5;
257pub const GRIB_UTIL_PACKING_TYPE_GRID_SIMPLE_MATRIX: u32 = 6;
258pub const GRIB_UTIL_PACKING_TYPE_GRID_SECOND_ORDER: u32 = 7;
259pub const GRIB_UTIL_PACKING_TYPE_CCSDS: u32 = 8;
260pub const GRIB_UTIL_PACKING_TYPE_IEEE: u32 = 9;
261pub const GRIB_UTIL_PACKING_SAME_AS_INPUT: u32 = 0;
262pub const GRIB_UTIL_PACKING_USE_PROVIDED: u32 = 1;
263pub const GRIB_UTIL_ACCURACY_SAME_BITS_PER_VALUES_AS_INPUT: u32 = 0;
264pub const GRIB_UTIL_ACCURACY_USE_PROVIDED_BITS_PER_VALUES: u32 = 1;
265pub const GRIB_UTIL_ACCURACY_SAME_DECIMAL_SCALE_FACTOR_AS_INPUT: u32 = 2;
266pub const GRIB_UTIL_ACCURACY_USE_PROVIDED_DECIMAL_SCALE_FACTOR: u32 = 3;
267pub const GRIB_SUCCESS: u32 = 0;
268pub const GRIB_END_OF_FILE: i32 = -1;
269pub const GRIB_INTERNAL_ERROR: i32 = -2;
270pub const GRIB_BUFFER_TOO_SMALL: i32 = -3;
271pub const GRIB_NOT_IMPLEMENTED: i32 = -4;
272pub const GRIB_7777_NOT_FOUND: i32 = -5;
273pub const GRIB_ARRAY_TOO_SMALL: i32 = -6;
274pub const GRIB_FILE_NOT_FOUND: i32 = -7;
275pub const GRIB_CODE_NOT_FOUND_IN_TABLE: i32 = -8;
276pub const GRIB_WRONG_ARRAY_SIZE: i32 = -9;
277pub const GRIB_NOT_FOUND: i32 = -10;
278pub const GRIB_IO_PROBLEM: i32 = -11;
279pub const GRIB_INVALID_MESSAGE: i32 = -12;
280pub const GRIB_DECODING_ERROR: i32 = -13;
281pub const GRIB_ENCODING_ERROR: i32 = -14;
282pub const GRIB_NO_MORE_IN_SET: i32 = -15;
283pub const GRIB_GEOCALCULUS_PROBLEM: i32 = -16;
284pub const GRIB_OUT_OF_MEMORY: i32 = -17;
285pub const GRIB_READ_ONLY: i32 = -18;
286pub const GRIB_INVALID_ARGUMENT: i32 = -19;
287pub const GRIB_NULL_HANDLE: i32 = -20;
288pub const GRIB_INVALID_SECTION_NUMBER: i32 = -21;
289pub const GRIB_VALUE_CANNOT_BE_MISSING: i32 = -22;
290pub const GRIB_WRONG_LENGTH: i32 = -23;
291pub const GRIB_INVALID_TYPE: i32 = -24;
292pub const GRIB_WRONG_STEP: i32 = -25;
293pub const GRIB_WRONG_STEP_UNIT: i32 = -26;
294pub const GRIB_INVALID_FILE: i32 = -27;
295pub const GRIB_INVALID_GRIB: i32 = -28;
296pub const GRIB_INVALID_INDEX: i32 = -29;
297pub const GRIB_INVALID_ITERATOR: i32 = -30;
298pub const GRIB_INVALID_KEYS_ITERATOR: i32 = -31;
299pub const GRIB_INVALID_NEAREST: i32 = -32;
300pub const GRIB_INVALID_ORDERBY: i32 = -33;
301pub const GRIB_MISSING_KEY: i32 = -34;
302pub const GRIB_OUT_OF_AREA: i32 = -35;
303pub const GRIB_CONCEPT_NO_MATCH: i32 = -36;
304pub const GRIB_HASH_ARRAY_NO_MATCH: i32 = -37;
305pub const GRIB_NO_DEFINITIONS: i32 = -38;
306pub const GRIB_WRONG_TYPE: i32 = -39;
307pub const GRIB_END: i32 = -40;
308pub const GRIB_NO_VALUES: i32 = -41;
309pub const GRIB_WRONG_GRID: i32 = -42;
310pub const GRIB_END_OF_INDEX: i32 = -43;
311pub const GRIB_NULL_INDEX: i32 = -44;
312pub const GRIB_PREMATURE_END_OF_FILE: i32 = -45;
313pub const GRIB_INTERNAL_ARRAY_TOO_SMALL: i32 = -46;
314pub const GRIB_MESSAGE_TOO_LARGE: i32 = -47;
315pub const GRIB_CONSTANT_FIELD: i32 = -48;
316pub const GRIB_SWITCH_NO_MATCH: i32 = -49;
317pub const GRIB_UNDERFLOW: i32 = -50;
318pub const GRIB_MESSAGE_MALFORMED: i32 = -51;
319pub const GRIB_CORRUPTED_INDEX: i32 = -52;
320pub const GRIB_INVALID_BPV: i32 = -53;
321pub const GRIB_DIFFERENT_EDITION: i32 = -54;
322pub const GRIB_VALUE_DIFFERENT: i32 = -55;
323pub const GRIB_INVALID_KEY_VALUE: i32 = -56;
324pub const GRIB_STRING_TOO_SMALL: i32 = -57;
325pub const GRIB_WRONG_CONVERSION: i32 = -58;
326pub const GRIB_MISSING_BUFR_ENTRY: i32 = -59;
327pub const GRIB_NULL_POINTER: i32 = -60;
328pub const GRIB_ATTRIBUTE_CLASH: i32 = -61;
329pub const GRIB_TOO_MANY_ATTRIBUTES: i32 = -62;
330pub const GRIB_ATTRIBUTE_NOT_FOUND: i32 = -63;
331pub const GRIB_UNSUPPORTED_EDITION: i32 = -64;
332pub const GRIB_OUT_OF_RANGE: i32 = -65;
333pub const GRIB_WRONG_BITMAP_SIZE: i32 = -66;
334pub const GRIB_FUNCTIONALITY_NOT_ENABLED: i32 = -67;
335pub const GRIB_VALUE_MISMATCH: i32 = -68;
336pub const GRIB_DOUBLE_VALUE_MISMATCH: i32 = -69;
337pub const GRIB_LONG_VALUE_MISMATCH: i32 = -70;
338pub const GRIB_BYTE_VALUE_MISMATCH: i32 = -71;
339pub const GRIB_STRING_VALUE_MISMATCH: i32 = -72;
340pub const GRIB_OFFSET_MISMATCH: i32 = -73;
341pub const GRIB_COUNT_MISMATCH: i32 = -74;
342pub const GRIB_NAME_MISMATCH: i32 = -75;
343pub const GRIB_TYPE_MISMATCH: i32 = -76;
344pub const GRIB_TYPE_AND_VALUE_MISMATCH: i32 = -77;
345pub const GRIB_UNABLE_TO_COMPARE_ACCESSORS: i32 = -78;
346pub const GRIB_ASSERTION_FAILURE: i32 = -79;
347pub const CODES_VERSION: u32 = 23401;
348pub const CODES_SECTION_PRODUCT: u32 = 1;
349pub const CODES_SECTION_GRID: u32 = 2;
350pub const CODES_SECTION_LOCAL: u32 = 4;
351pub const CODES_SECTION_DATA: u32 = 8;
352pub const CODES_SECTION_BITMAP: u32 = 16;
353pub const CODES_LOG_INFO: u32 = 0;
354pub const CODES_LOG_WARNING: u32 = 1;
355pub const CODES_LOG_ERROR: u32 = 2;
356pub const CODES_LOG_FATAL: u32 = 3;
357pub const CODES_LOG_DEBUG: u32 = 4;
358pub const CODES_TYPE_UNDEFINED: u32 = 0;
359pub const CODES_TYPE_LONG: u32 = 1;
360pub const CODES_TYPE_DOUBLE: u32 = 2;
361pub const CODES_TYPE_STRING: u32 = 3;
362pub const CODES_TYPE_BYTES: u32 = 4;
363pub const CODES_TYPE_SECTION: u32 = 5;
364pub const CODES_TYPE_LABEL: u32 = 6;
365pub const CODES_TYPE_MISSING: u32 = 7;
366pub const CODES_MISSING_LONG: u32 = 2147483647;
367pub const CODES_MISSING_DOUBLE : f64 = - 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0 ;
368pub const CODES_DUMP_FLAG_READ_ONLY: u32 = 1;
369pub const CODES_DUMP_FLAG_DUMP_OK: u32 = 2;
370pub const CODES_DUMP_FLAG_VALUES: u32 = 4;
371pub const CODES_DUMP_FLAG_CODED: u32 = 8;
372pub const CODES_DUMP_FLAG_OCTET: u32 = 16;
373pub const CODES_DUMP_FLAG_ALIASES: u32 = 32;
374pub const CODES_DUMP_FLAG_TYPE: u32 = 64;
375pub const CODES_DUMP_FLAG_HEXADECIMAL: u32 = 128;
376pub const CODES_DUMP_FLAG_NO_DATA: u32 = 256;
377pub const CODES_DUMP_FLAG_ALL_DATA: u32 = 512;
378pub const CODES_DUMP_FLAG_ALL_ATTRIBUTES: u32 = 1024;
379pub const CODES_NEAREST_SAME_GRID: u32 = 1;
380pub const CODES_NEAREST_SAME_DATA: u32 = 2;
381pub const CODES_NEAREST_SAME_POINT: u32 = 4;
382pub const CODES_GEOITERATOR_NO_VALUES: u32 = 1;
383pub const CODES_KEYS_ITERATOR_ALL_KEYS: u32 = 0;
384pub const CODES_KEYS_ITERATOR_SKIP_READ_ONLY: u32 = 1;
385pub const CODES_KEYS_ITERATOR_SKIP_OPTIONAL: u32 = 2;
386pub const CODES_KEYS_ITERATOR_SKIP_EDITION_SPECIFIC: u32 = 4;
387pub const CODES_KEYS_ITERATOR_SKIP_CODED: u32 = 8;
388pub const CODES_KEYS_ITERATOR_SKIP_COMPUTED: u32 = 16;
389pub const CODES_KEYS_ITERATOR_SKIP_DUPLICATES: u32 = 32;
390pub const CODES_KEYS_ITERATOR_SKIP_FUNCTION: u32 = 64;
391pub const CODES_KEYS_ITERATOR_DUMP_ONLY: u32 = 128;
392pub const CODES_UTIL_GRID_SPEC_REGULAR_LL: u32 = 1;
393pub const CODES_UTIL_GRID_SPEC_ROTATED_LL: u32 = 2;
394pub const CODES_UTIL_GRID_SPEC_REGULAR_GG: u32 = 3;
395pub const CODES_UTIL_GRID_SPEC_ROTATED_GG: u32 = 4;
396pub const CODES_UTIL_GRID_SPEC_REDUCED_GG: u32 = 5;
397pub const CODES_UTIL_GRID_SPEC_SH: u32 = 6;
398pub const CODES_UTIL_GRID_SPEC_REDUCED_LL: u32 = 7;
399pub const CODES_UTIL_GRID_SPEC_POLAR_STEREOGRAPHIC: u32 = 8;
400pub const CODES_UTIL_GRID_SPEC_REDUCED_ROTATED_GG: u32 = 9;
401pub const CODES_UTIL_GRID_SPEC_LAMBERT_AZIMUTHAL_EQUAL_AREA: u32 = 10;
402pub const CODES_UTIL_GRID_SPEC_LAMBERT_CONFORMAL: u32 = 11;
403pub const CODES_UTIL_GRID_SPEC_UNSTRUCTURED: u32 = 12;
404pub const CODES_UTIL_GRID_SPEC_HEALPIX: u32 = 13;
405pub const CODES_UTIL_PACKING_TYPE_SAME_AS_INPUT: u32 = 0;
406pub const CODES_UTIL_PACKING_TYPE_SPECTRAL_COMPLEX: u32 = 1;
407pub const CODES_UTIL_PACKING_TYPE_SPECTRAL_SIMPLE: u32 = 2;
408pub const CODES_UTIL_PACKING_TYPE_JPEG: u32 = 3;
409pub const CODES_UTIL_PACKING_TYPE_GRID_COMPLEX: u32 = 4;
410pub const CODES_UTIL_PACKING_TYPE_GRID_SIMPLE: u32 = 5;
411pub const CODES_UTIL_PACKING_TYPE_GRID_SIMPLE_MATRIX: u32 = 6;
412pub const CODES_UTIL_PACKING_TYPE_GRID_SECOND_ORDER: u32 = 7;
413pub const CODES_UTIL_PACKING_TYPE_CCSDS: u32 = 8;
414pub const CODES_UTIL_PACKING_TYPE_IEEE: u32 = 9;
415pub const CODES_UTIL_PACKING_SAME_AS_INPUT: u32 = 0;
416pub const CODES_UTIL_PACKING_USE_PROVIDED: u32 = 1;
417pub const CODES_UTIL_ACCURACY_SAME_BITS_PER_VALUES_AS_INPUT: u32 = 0;
418pub const CODES_UTIL_ACCURACY_USE_PROVIDED_BITS_PER_VALUES: u32 = 1;
419pub const CODES_UTIL_ACCURACY_SAME_DECIMAL_SCALE_FACTOR_AS_INPUT: u32 = 2;
420pub const CODES_UTIL_ACCURACY_USE_PROVIDED_DECIMAL_SCALE_FACTOR: u32 = 3;
421pub const CODES_SUCCESS: u32 = 0;
422pub const CODES_END_OF_FILE: i32 = -1;
423pub const CODES_INTERNAL_ERROR: i32 = -2;
424pub const CODES_BUFFER_TOO_SMALL: i32 = -3;
425pub const CODES_NOT_IMPLEMENTED: i32 = -4;
426pub const CODES_7777_NOT_FOUND: i32 = -5;
427pub const CODES_ARRAY_TOO_SMALL: i32 = -6;
428pub const CODES_FILE_NOT_FOUND: i32 = -7;
429pub const CODES_CODE_NOT_FOUND_IN_TABLE: i32 = -8;
430pub const CODES_WRONG_ARRAY_SIZE: i32 = -9;
431pub const CODES_NOT_FOUND: i32 = -10;
432pub const CODES_IO_PROBLEM: i32 = -11;
433pub const CODES_INVALID_MESSAGE: i32 = -12;
434pub const CODES_DECODING_ERROR: i32 = -13;
435pub const CODES_ENCODING_ERROR: i32 = -14;
436pub const CODES_NO_MORE_IN_SET: i32 = -15;
437pub const CODES_GEOCALCULUS_PROBLEM: i32 = -16;
438pub const CODES_OUT_OF_MEMORY: i32 = -17;
439pub const CODES_READ_ONLY: i32 = -18;
440pub const CODES_INVALID_ARGUMENT: i32 = -19;
441pub const CODES_NULL_HANDLE: i32 = -20;
442pub const CODES_INVALID_SECTION_NUMBER: i32 = -21;
443pub const CODES_VALUE_CANNOT_BE_MISSING: i32 = -22;
444pub const CODES_WRONG_LENGTH: i32 = -23;
445pub const CODES_INVALID_TYPE: i32 = -24;
446pub const CODES_WRONG_STEP: i32 = -25;
447pub const CODES_WRONG_STEP_UNIT: i32 = -26;
448pub const CODES_INVALID_FILE: i32 = -27;
449pub const CODES_INVALID_GRIB: i32 = -28;
450pub const CODES_INVALID_INDEX: i32 = -29;
451pub const CODES_INVALID_ITERATOR: i32 = -30;
452pub const CODES_INVALID_KEYS_ITERATOR: i32 = -31;
453pub const CODES_INVALID_NEAREST: i32 = -32;
454pub const CODES_INVALID_ORDERBY: i32 = -33;
455pub const CODES_MISSING_KEY: i32 = -34;
456pub const CODES_OUT_OF_AREA: i32 = -35;
457pub const CODES_CONCEPT_NO_MATCH: i32 = -36;
458pub const CODES_HASH_ARRAY_NO_MATCH: i32 = -37;
459pub const CODES_NO_DEFINITIONS: i32 = -38;
460pub const CODES_WRONG_TYPE: i32 = -39;
461pub const CODES_END: i32 = -40;
462pub const CODES_NO_VALUES: i32 = -41;
463pub const CODES_WRONG_GRID: i32 = -42;
464pub const CODES_END_OF_INDEX: i32 = -43;
465pub const CODES_NULL_INDEX: i32 = -44;
466pub const CODES_PREMATURE_END_OF_FILE: i32 = -45;
467pub const CODES_INTERNAL_ARRAY_TOO_SMALL: i32 = -46;
468pub const CODES_MESSAGE_TOO_LARGE: i32 = -47;
469pub const CODES_CONSTANT_FIELD: i32 = -48;
470pub const CODES_SWITCH_NO_MATCH: i32 = -49;
471pub const CODES_UNDERFLOW: i32 = -50;
472pub const CODES_MESSAGE_MALFORMED: i32 = -51;
473pub const CODES_CORRUPTED_INDEX: i32 = -52;
474pub const CODES_INVALID_BPV: i32 = -53;
475pub const CODES_DIFFERENT_EDITION: i32 = -54;
476pub const CODES_VALUE_DIFFERENT: i32 = -55;
477pub const CODES_INVALID_KEY_VALUE: i32 = -56;
478pub const CODES_STRING_TOO_SMALL: i32 = -57;
479pub const CODES_WRONG_CONVERSION: i32 = -58;
480pub const CODES_MISSING_BUFR_ENTRY: i32 = -59;
481pub const CODES_NULL_POINTER: i32 = -60;
482pub const CODES_ATTRIBUTE_CLASH: i32 = -61;
483pub const CODES_TOO_MANY_ATTRIBUTES: i32 = -62;
484pub const CODES_ATTRIBUTE_NOT_FOUND: i32 = -63;
485pub const CODES_UNSUPPORTED_EDITION: i32 = -64;
486pub const CODES_OUT_OF_RANGE: i32 = -65;
487pub const CODES_WRONG_BITMAP_SIZE: i32 = -66;
488pub const CODES_FUNCTIONALITY_NOT_ENABLED: i32 = -67;
489pub const CODES_VALUE_MISMATCH: i32 = -68;
490pub const CODES_DOUBLE_VALUE_MISMATCH: i32 = -69;
491pub const CODES_LONG_VALUE_MISMATCH: i32 = -70;
492pub const CODES_BYTE_VALUE_MISMATCH: i32 = -71;
493pub const CODES_STRING_VALUE_MISMATCH: i32 = -72;
494pub const CODES_OFFSET_MISMATCH: i32 = -73;
495pub const CODES_COUNT_MISMATCH: i32 = -74;
496pub const CODES_NAME_MISMATCH: i32 = -75;
497pub const CODES_TYPE_MISMATCH: i32 = -76;
498pub const CODES_TYPE_AND_VALUE_MISMATCH: i32 = -77;
499pub const CODES_UNABLE_TO_COMPARE_ACCESSORS: i32 = -78;
500pub const CODES_ASSERTION_FAILURE: i32 = -79;
501pub type __gnuc_va_list = __builtin_va_list;
502pub type __u_char = ::std::os::raw::c_uchar;
503pub type __u_short = ::std::os::raw::c_ushort;
504pub type __u_int = ::std::os::raw::c_uint;
505pub type __u_long = ::std::os::raw::c_ulong;
506pub type __int8_t = ::std::os::raw::c_schar;
507pub type __uint8_t = ::std::os::raw::c_uchar;
508pub type __int16_t = ::std::os::raw::c_short;
509pub type __uint16_t = ::std::os::raw::c_ushort;
510pub type __int32_t = ::std::os::raw::c_int;
511pub type __uint32_t = ::std::os::raw::c_uint;
512pub type __int64_t = ::std::os::raw::c_long;
513pub type __uint64_t = ::std::os::raw::c_ulong;
514pub type __int_least8_t = __int8_t;
515pub type __uint_least8_t = __uint8_t;
516pub type __int_least16_t = __int16_t;
517pub type __uint_least16_t = __uint16_t;
518pub type __int_least32_t = __int32_t;
519pub type __uint_least32_t = __uint32_t;
520pub type __int_least64_t = __int64_t;
521pub type __uint_least64_t = __uint64_t;
522pub type __quad_t = ::std::os::raw::c_long;
523pub type __u_quad_t = ::std::os::raw::c_ulong;
524pub type __intmax_t = ::std::os::raw::c_long;
525pub type __uintmax_t = ::std::os::raw::c_ulong;
526pub type __dev_t = ::std::os::raw::c_ulong;
527pub type __uid_t = ::std::os::raw::c_uint;
528pub type __gid_t = ::std::os::raw::c_uint;
529pub type __ino_t = ::std::os::raw::c_ulong;
530pub type __ino64_t = ::std::os::raw::c_ulong;
531pub type __mode_t = ::std::os::raw::c_uint;
532pub type __nlink_t = ::std::os::raw::c_ulong;
533pub type __off_t = ::std::os::raw::c_long;
534pub type __off64_t = ::std::os::raw::c_long;
535pub type __pid_t = ::std::os::raw::c_int;
536#[repr(C)]
537#[derive(Debug, Copy, Clone)]
538pub struct __fsid_t {
539 pub __val: [::std::os::raw::c_int; 2usize],
540}
541pub type __clock_t = ::std::os::raw::c_long;
542pub type __rlim_t = ::std::os::raw::c_ulong;
543pub type __rlim64_t = ::std::os::raw::c_ulong;
544pub type __id_t = ::std::os::raw::c_uint;
545pub type __time_t = ::std::os::raw::c_long;
546pub type __useconds_t = ::std::os::raw::c_uint;
547pub type __suseconds_t = ::std::os::raw::c_long;
548pub type __suseconds64_t = ::std::os::raw::c_long;
549pub type __daddr_t = ::std::os::raw::c_int;
550pub type __key_t = ::std::os::raw::c_int;
551pub type __clockid_t = ::std::os::raw::c_int;
552pub type __timer_t = *mut ::std::os::raw::c_void;
553pub type __blksize_t = ::std::os::raw::c_long;
554pub type __blkcnt_t = ::std::os::raw::c_long;
555pub type __blkcnt64_t = ::std::os::raw::c_long;
556pub type __fsblkcnt_t = ::std::os::raw::c_ulong;
557pub type __fsblkcnt64_t = ::std::os::raw::c_ulong;
558pub type __fsfilcnt_t = ::std::os::raw::c_ulong;
559pub type __fsfilcnt64_t = ::std::os::raw::c_ulong;
560pub type __fsword_t = ::std::os::raw::c_long;
561pub type __ssize_t = ::std::os::raw::c_long;
562pub type __syscall_slong_t = ::std::os::raw::c_long;
563pub type __syscall_ulong_t = ::std::os::raw::c_ulong;
564pub type __loff_t = __off64_t;
565pub type __caddr_t = *mut ::std::os::raw::c_char;
566pub type __intptr_t = ::std::os::raw::c_long;
567pub type __socklen_t = ::std::os::raw::c_uint;
568pub type __sig_atomic_t = ::std::os::raw::c_int;
569#[repr(C)]
570#[derive(Copy, Clone)]
571pub struct __mbstate_t {
572 pub __count: ::std::os::raw::c_int,
573 pub __value: __mbstate_t__bindgen_ty_1,
574}
575#[repr(C)]
576#[derive(Copy, Clone)]
577pub union __mbstate_t__bindgen_ty_1 {
578 pub __wch: ::std::os::raw::c_uint,
579 pub __wchb: [::std::os::raw::c_char; 4usize],
580}
581#[repr(C)]
582#[derive(Copy, Clone)]
583pub struct _G_fpos_t {
584 pub __pos: __off_t,
585 pub __state: __mbstate_t,
586}
587pub type __fpos_t = _G_fpos_t;
588#[repr(C)]
589#[derive(Copy, Clone)]
590pub struct _G_fpos64_t {
591 pub __pos: __off64_t,
592 pub __state: __mbstate_t,
593}
594pub type __fpos64_t = _G_fpos64_t;
595pub type __FILE = _IO_FILE;
596pub type FILE = _IO_FILE;
597#[repr(C)]
598#[derive(Debug, Copy, Clone)]
599pub struct _IO_marker {
600 _unused: [u8; 0],
601}
602#[repr(C)]
603#[derive(Debug, Copy, Clone)]
604pub struct _IO_codecvt {
605 _unused: [u8; 0],
606}
607#[repr(C)]
608#[derive(Debug, Copy, Clone)]
609pub struct _IO_wide_data {
610 _unused: [u8; 0],
611}
612pub type _IO_lock_t = ::std::os::raw::c_void;
613#[repr(C)]
614#[derive(Debug, Copy, Clone)]
615pub struct _IO_FILE {
616 pub _flags: ::std::os::raw::c_int,
617 pub _IO_read_ptr: *mut ::std::os::raw::c_char,
618 pub _IO_read_end: *mut ::std::os::raw::c_char,
619 pub _IO_read_base: *mut ::std::os::raw::c_char,
620 pub _IO_write_base: *mut ::std::os::raw::c_char,
621 pub _IO_write_ptr: *mut ::std::os::raw::c_char,
622 pub _IO_write_end: *mut ::std::os::raw::c_char,
623 pub _IO_buf_base: *mut ::std::os::raw::c_char,
624 pub _IO_buf_end: *mut ::std::os::raw::c_char,
625 pub _IO_save_base: *mut ::std::os::raw::c_char,
626 pub _IO_backup_base: *mut ::std::os::raw::c_char,
627 pub _IO_save_end: *mut ::std::os::raw::c_char,
628 pub _markers: *mut _IO_marker,
629 pub _chain: *mut _IO_FILE,
630 pub _fileno: ::std::os::raw::c_int,
631 pub _flags2: ::std::os::raw::c_int,
632 pub _old_offset: __off_t,
633 pub _cur_column: ::std::os::raw::c_ushort,
634 pub _vtable_offset: ::std::os::raw::c_schar,
635 pub _shortbuf: [::std::os::raw::c_char; 1usize],
636 pub _lock: *mut _IO_lock_t,
637 pub _offset: __off64_t,
638 pub _codecvt: *mut _IO_codecvt,
639 pub _wide_data: *mut _IO_wide_data,
640 pub _freeres_list: *mut _IO_FILE,
641 pub _freeres_buf: *mut ::std::os::raw::c_void,
642 pub __pad5: usize,
643 pub _mode: ::std::os::raw::c_int,
644 pub _unused2: [::std::os::raw::c_char; 20usize],
645}
646pub type cookie_read_function_t = ::std::option::Option<
647 unsafe extern "C" fn(
648 __cookie: *mut ::std::os::raw::c_void,
649 __buf: *mut ::std::os::raw::c_char,
650 __nbytes: usize,
651 ) -> __ssize_t,
652>;
653pub type cookie_write_function_t = ::std::option::Option<
654 unsafe extern "C" fn(
655 __cookie: *mut ::std::os::raw::c_void,
656 __buf: *const ::std::os::raw::c_char,
657 __nbytes: usize,
658 ) -> __ssize_t,
659>;
660pub type cookie_seek_function_t = ::std::option::Option<
661 unsafe extern "C" fn(
662 __cookie: *mut ::std::os::raw::c_void,
663 __pos: *mut __off64_t,
664 __w: ::std::os::raw::c_int,
665 ) -> ::std::os::raw::c_int,
666>;
667pub type cookie_close_function_t = ::std::option::Option<
668 unsafe extern "C" fn(__cookie: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
669>;
670#[repr(C)]
671#[derive(Debug, Copy, Clone)]
672pub struct _IO_cookie_io_functions_t {
673 pub read: cookie_read_function_t,
674 pub write: cookie_write_function_t,
675 pub seek: cookie_seek_function_t,
676 pub close: cookie_close_function_t,
677}
678pub type cookie_io_functions_t = _IO_cookie_io_functions_t;
679pub type va_list = __gnuc_va_list;
680pub type off_t = __off_t;
681pub type fpos_t = __fpos_t;
682unsafe extern "C" {
683 pub static mut stdin: *mut FILE;
684}
685unsafe extern "C" {
686 pub static mut stdout: *mut FILE;
687}
688unsafe extern "C" {
689 pub static mut stderr: *mut FILE;
690}
691unsafe extern "C" {
692 pub fn remove(__filename: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
693}
694unsafe extern "C" {
695 pub fn rename(
696 __old: *const ::std::os::raw::c_char,
697 __new: *const ::std::os::raw::c_char,
698 ) -> ::std::os::raw::c_int;
699}
700unsafe extern "C" {
701 pub fn renameat(
702 __oldfd: ::std::os::raw::c_int,
703 __old: *const ::std::os::raw::c_char,
704 __newfd: ::std::os::raw::c_int,
705 __new: *const ::std::os::raw::c_char,
706 ) -> ::std::os::raw::c_int;
707}
708unsafe extern "C" {
709 pub fn fclose(__stream: *mut FILE) -> ::std::os::raw::c_int;
710}
711unsafe extern "C" {
712 pub fn tmpfile() -> *mut FILE;
713}
714unsafe extern "C" {
715 pub fn tmpnam(arg1: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
716}
717unsafe extern "C" {
718 pub fn tmpnam_r(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
719}
720unsafe extern "C" {
721 pub fn tempnam(
722 __dir: *const ::std::os::raw::c_char,
723 __pfx: *const ::std::os::raw::c_char,
724 ) -> *mut ::std::os::raw::c_char;
725}
726unsafe extern "C" {
727 pub fn fflush(__stream: *mut FILE) -> ::std::os::raw::c_int;
728}
729unsafe extern "C" {
730 pub fn fflush_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
731}
732unsafe extern "C" {
733 pub fn fopen(
734 __filename: *const ::std::os::raw::c_char,
735 __modes: *const ::std::os::raw::c_char,
736 ) -> *mut FILE;
737}
738unsafe extern "C" {
739 pub fn freopen(
740 __filename: *const ::std::os::raw::c_char,
741 __modes: *const ::std::os::raw::c_char,
742 __stream: *mut FILE,
743 ) -> *mut FILE;
744}
745unsafe extern "C" {
746 pub fn fdopen(__fd: ::std::os::raw::c_int, __modes: *const ::std::os::raw::c_char)
747 -> *mut FILE;
748}
749unsafe extern "C" {
750 pub fn fopencookie(
751 __magic_cookie: *mut ::std::os::raw::c_void,
752 __modes: *const ::std::os::raw::c_char,
753 __io_funcs: cookie_io_functions_t,
754 ) -> *mut FILE;
755}
756unsafe extern "C" {
757 pub fn fmemopen(
758 __s: *mut ::std::os::raw::c_void,
759 __len: usize,
760 __modes: *const ::std::os::raw::c_char,
761 ) -> *mut FILE;
762}
763unsafe extern "C" {
764 pub fn open_memstream(
765 __bufloc: *mut *mut ::std::os::raw::c_char,
766 __sizeloc: *mut usize,
767 ) -> *mut FILE;
768}
769unsafe extern "C" {
770 pub fn setbuf(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char);
771}
772unsafe extern "C" {
773 pub fn setvbuf(
774 __stream: *mut FILE,
775 __buf: *mut ::std::os::raw::c_char,
776 __modes: ::std::os::raw::c_int,
777 __n: usize,
778 ) -> ::std::os::raw::c_int;
779}
780unsafe extern "C" {
781 pub fn setbuffer(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char, __size: usize);
782}
783unsafe extern "C" {
784 pub fn setlinebuf(__stream: *mut FILE);
785}
786unsafe extern "C" {
787 pub fn fprintf(
788 __stream: *mut FILE,
789 __format: *const ::std::os::raw::c_char,
790 ...
791 ) -> ::std::os::raw::c_int;
792}
793unsafe extern "C" {
794 pub fn printf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
795}
796unsafe extern "C" {
797 pub fn sprintf(
798 __s: *mut ::std::os::raw::c_char,
799 __format: *const ::std::os::raw::c_char,
800 ...
801 ) -> ::std::os::raw::c_int;
802}
803unsafe extern "C" {
804 pub fn vfprintf(
805 __s: *mut FILE,
806 __format: *const ::std::os::raw::c_char,
807 __arg: *mut __va_list_tag,
808 ) -> ::std::os::raw::c_int;
809}
810unsafe extern "C" {
811 pub fn vprintf(
812 __format: *const ::std::os::raw::c_char,
813 __arg: *mut __va_list_tag,
814 ) -> ::std::os::raw::c_int;
815}
816unsafe extern "C" {
817 pub fn vsprintf(
818 __s: *mut ::std::os::raw::c_char,
819 __format: *const ::std::os::raw::c_char,
820 __arg: *mut __va_list_tag,
821 ) -> ::std::os::raw::c_int;
822}
823unsafe extern "C" {
824 pub fn snprintf(
825 __s: *mut ::std::os::raw::c_char,
826 __maxlen: ::std::os::raw::c_ulong,
827 __format: *const ::std::os::raw::c_char,
828 ...
829 ) -> ::std::os::raw::c_int;
830}
831unsafe extern "C" {
832 pub fn vsnprintf(
833 __s: *mut ::std::os::raw::c_char,
834 __maxlen: ::std::os::raw::c_ulong,
835 __format: *const ::std::os::raw::c_char,
836 __arg: *mut __va_list_tag,
837 ) -> ::std::os::raw::c_int;
838}
839unsafe extern "C" {
840 pub fn vasprintf(
841 __ptr: *mut *mut ::std::os::raw::c_char,
842 __f: *const ::std::os::raw::c_char,
843 __arg: *mut __va_list_tag,
844 ) -> ::std::os::raw::c_int;
845}
846unsafe extern "C" {
847 pub fn __asprintf(
848 __ptr: *mut *mut ::std::os::raw::c_char,
849 __fmt: *const ::std::os::raw::c_char,
850 ...
851 ) -> ::std::os::raw::c_int;
852}
853unsafe extern "C" {
854 pub fn asprintf(
855 __ptr: *mut *mut ::std::os::raw::c_char,
856 __fmt: *const ::std::os::raw::c_char,
857 ...
858 ) -> ::std::os::raw::c_int;
859}
860unsafe extern "C" {
861 pub fn vdprintf(
862 __fd: ::std::os::raw::c_int,
863 __fmt: *const ::std::os::raw::c_char,
864 __arg: *mut __va_list_tag,
865 ) -> ::std::os::raw::c_int;
866}
867unsafe extern "C" {
868 pub fn dprintf(
869 __fd: ::std::os::raw::c_int,
870 __fmt: *const ::std::os::raw::c_char,
871 ...
872 ) -> ::std::os::raw::c_int;
873}
874unsafe extern "C" {
875 pub fn fscanf(
876 __stream: *mut FILE,
877 __format: *const ::std::os::raw::c_char,
878 ...
879 ) -> ::std::os::raw::c_int;
880}
881unsafe extern "C" {
882 pub fn scanf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
883}
884unsafe extern "C" {
885 pub fn sscanf(
886 __s: *const ::std::os::raw::c_char,
887 __format: *const ::std::os::raw::c_char,
888 ...
889 ) -> ::std::os::raw::c_int;
890}
891pub type _Float32 = f32;
892pub type _Float64 = f64;
893pub type _Float32x = f64;
894pub type _Float64x = u128;
895unsafe extern "C" {
896 pub fn vfscanf(
897 __s: *mut FILE,
898 __format: *const ::std::os::raw::c_char,
899 __arg: *mut __va_list_tag,
900 ) -> ::std::os::raw::c_int;
901}
902unsafe extern "C" {
903 pub fn vscanf(
904 __format: *const ::std::os::raw::c_char,
905 __arg: *mut __va_list_tag,
906 ) -> ::std::os::raw::c_int;
907}
908unsafe extern "C" {
909 pub fn vsscanf(
910 __s: *const ::std::os::raw::c_char,
911 __format: *const ::std::os::raw::c_char,
912 __arg: *mut __va_list_tag,
913 ) -> ::std::os::raw::c_int;
914}
915unsafe extern "C" {
916 pub fn fgetc(__stream: *mut FILE) -> ::std::os::raw::c_int;
917}
918unsafe extern "C" {
919 pub fn getc(__stream: *mut FILE) -> ::std::os::raw::c_int;
920}
921unsafe extern "C" {
922 pub fn getchar() -> ::std::os::raw::c_int;
923}
924unsafe extern "C" {
925 pub fn getc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
926}
927unsafe extern "C" {
928 pub fn getchar_unlocked() -> ::std::os::raw::c_int;
929}
930unsafe extern "C" {
931 pub fn fgetc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
932}
933unsafe extern "C" {
934 pub fn fputc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
935}
936unsafe extern "C" {
937 pub fn putc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
938}
939unsafe extern "C" {
940 pub fn putchar(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
941}
942unsafe extern "C" {
943 pub fn fputc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE)
944 -> ::std::os::raw::c_int;
945}
946unsafe extern "C" {
947 pub fn putc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
948}
949unsafe extern "C" {
950 pub fn putchar_unlocked(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
951}
952unsafe extern "C" {
953 pub fn getw(__stream: *mut FILE) -> ::std::os::raw::c_int;
954}
955unsafe extern "C" {
956 pub fn putw(__w: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
957}
958unsafe extern "C" {
959 pub fn fgets(
960 __s: *mut ::std::os::raw::c_char,
961 __n: ::std::os::raw::c_int,
962 __stream: *mut FILE,
963 ) -> *mut ::std::os::raw::c_char;
964}
965unsafe extern "C" {
966 pub fn __getdelim(
967 __lineptr: *mut *mut ::std::os::raw::c_char,
968 __n: *mut usize,
969 __delimiter: ::std::os::raw::c_int,
970 __stream: *mut FILE,
971 ) -> __ssize_t;
972}
973unsafe extern "C" {
974 pub fn getdelim(
975 __lineptr: *mut *mut ::std::os::raw::c_char,
976 __n: *mut usize,
977 __delimiter: ::std::os::raw::c_int,
978 __stream: *mut FILE,
979 ) -> __ssize_t;
980}
981unsafe extern "C" {
982 pub fn getline(
983 __lineptr: *mut *mut ::std::os::raw::c_char,
984 __n: *mut usize,
985 __stream: *mut FILE,
986 ) -> __ssize_t;
987}
988unsafe extern "C" {
989 pub fn fputs(__s: *const ::std::os::raw::c_char, __stream: *mut FILE) -> ::std::os::raw::c_int;
990}
991unsafe extern "C" {
992 pub fn puts(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
993}
994unsafe extern "C" {
995 pub fn ungetc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
996}
997unsafe extern "C" {
998 pub fn fread(
999 __ptr: *mut ::std::os::raw::c_void,
1000 __size: ::std::os::raw::c_ulong,
1001 __n: ::std::os::raw::c_ulong,
1002 __stream: *mut FILE,
1003 ) -> ::std::os::raw::c_ulong;
1004}
1005unsafe extern "C" {
1006 pub fn fwrite(
1007 __ptr: *const ::std::os::raw::c_void,
1008 __size: ::std::os::raw::c_ulong,
1009 __n: ::std::os::raw::c_ulong,
1010 __s: *mut FILE,
1011 ) -> ::std::os::raw::c_ulong;
1012}
1013unsafe extern "C" {
1014 pub fn fread_unlocked(
1015 __ptr: *mut ::std::os::raw::c_void,
1016 __size: usize,
1017 __n: usize,
1018 __stream: *mut FILE,
1019 ) -> usize;
1020}
1021unsafe extern "C" {
1022 pub fn fwrite_unlocked(
1023 __ptr: *const ::std::os::raw::c_void,
1024 __size: usize,
1025 __n: usize,
1026 __stream: *mut FILE,
1027 ) -> usize;
1028}
1029unsafe extern "C" {
1030 pub fn fseek(
1031 __stream: *mut FILE,
1032 __off: ::std::os::raw::c_long,
1033 __whence: ::std::os::raw::c_int,
1034 ) -> ::std::os::raw::c_int;
1035}
1036unsafe extern "C" {
1037 pub fn ftell(__stream: *mut FILE) -> ::std::os::raw::c_long;
1038}
1039unsafe extern "C" {
1040 pub fn rewind(__stream: *mut FILE);
1041}
1042unsafe extern "C" {
1043 pub fn fseeko(
1044 __stream: *mut FILE,
1045 __off: __off_t,
1046 __whence: ::std::os::raw::c_int,
1047 ) -> ::std::os::raw::c_int;
1048}
1049unsafe extern "C" {
1050 pub fn ftello(__stream: *mut FILE) -> __off_t;
1051}
1052unsafe extern "C" {
1053 pub fn fgetpos(__stream: *mut FILE, __pos: *mut fpos_t) -> ::std::os::raw::c_int;
1054}
1055unsafe extern "C" {
1056 pub fn fsetpos(__stream: *mut FILE, __pos: *const fpos_t) -> ::std::os::raw::c_int;
1057}
1058unsafe extern "C" {
1059 pub fn clearerr(__stream: *mut FILE);
1060}
1061unsafe extern "C" {
1062 pub fn feof(__stream: *mut FILE) -> ::std::os::raw::c_int;
1063}
1064unsafe extern "C" {
1065 pub fn ferror(__stream: *mut FILE) -> ::std::os::raw::c_int;
1066}
1067unsafe extern "C" {
1068 pub fn clearerr_unlocked(__stream: *mut FILE);
1069}
1070unsafe extern "C" {
1071 pub fn feof_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
1072}
1073unsafe extern "C" {
1074 pub fn ferror_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
1075}
1076unsafe extern "C" {
1077 pub fn perror(__s: *const ::std::os::raw::c_char);
1078}
1079unsafe extern "C" {
1080 pub fn fileno(__stream: *mut FILE) -> ::std::os::raw::c_int;
1081}
1082unsafe extern "C" {
1083 pub fn fileno_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
1084}
1085unsafe extern "C" {
1086 pub fn pclose(__stream: *mut FILE) -> ::std::os::raw::c_int;
1087}
1088unsafe extern "C" {
1089 pub fn popen(
1090 __command: *const ::std::os::raw::c_char,
1091 __modes: *const ::std::os::raw::c_char,
1092 ) -> *mut FILE;
1093}
1094unsafe extern "C" {
1095 pub fn ctermid(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
1096}
1097unsafe extern "C" {
1098 pub fn flockfile(__stream: *mut FILE);
1099}
1100unsafe extern "C" {
1101 pub fn ftrylockfile(__stream: *mut FILE) -> ::std::os::raw::c_int;
1102}
1103unsafe extern "C" {
1104 pub fn funlockfile(__stream: *mut FILE);
1105}
1106unsafe extern "C" {
1107 pub fn __uflow(arg1: *mut FILE) -> ::std::os::raw::c_int;
1108}
1109unsafe extern "C" {
1110 pub fn __overflow(arg1: *mut FILE, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
1111}
1112pub type wchar_t = ::std::os::raw::c_int;
1113#[repr(C)]
1114#[derive(Debug, Copy, Clone)]
1115pub struct div_t {
1116 pub quot: ::std::os::raw::c_int,
1117 pub rem: ::std::os::raw::c_int,
1118}
1119#[repr(C)]
1120#[derive(Debug, Copy, Clone)]
1121pub struct ldiv_t {
1122 pub quot: ::std::os::raw::c_long,
1123 pub rem: ::std::os::raw::c_long,
1124}
1125#[repr(C)]
1126#[derive(Debug, Copy, Clone)]
1127pub struct lldiv_t {
1128 pub quot: ::std::os::raw::c_longlong,
1129 pub rem: ::std::os::raw::c_longlong,
1130}
1131unsafe extern "C" {
1132 pub fn __ctype_get_mb_cur_max() -> usize;
1133}
1134unsafe extern "C" {
1135 pub fn atof(__nptr: *const ::std::os::raw::c_char) -> f64;
1136}
1137unsafe extern "C" {
1138 pub fn atoi(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
1139}
1140unsafe extern "C" {
1141 pub fn atol(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
1142}
1143unsafe extern "C" {
1144 pub fn atoll(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_longlong;
1145}
1146unsafe extern "C" {
1147 pub fn strtod(
1148 __nptr: *const ::std::os::raw::c_char,
1149 __endptr: *mut *mut ::std::os::raw::c_char,
1150 ) -> f64;
1151}
1152unsafe extern "C" {
1153 pub fn strtof(
1154 __nptr: *const ::std::os::raw::c_char,
1155 __endptr: *mut *mut ::std::os::raw::c_char,
1156 ) -> f32;
1157}
1158unsafe extern "C" {
1159 pub fn strtold(
1160 __nptr: *const ::std::os::raw::c_char,
1161 __endptr: *mut *mut ::std::os::raw::c_char,
1162 ) -> u128;
1163}
1164unsafe extern "C" {
1165 pub fn strtol(
1166 __nptr: *const ::std::os::raw::c_char,
1167 __endptr: *mut *mut ::std::os::raw::c_char,
1168 __base: ::std::os::raw::c_int,
1169 ) -> ::std::os::raw::c_long;
1170}
1171unsafe extern "C" {
1172 pub fn strtoul(
1173 __nptr: *const ::std::os::raw::c_char,
1174 __endptr: *mut *mut ::std::os::raw::c_char,
1175 __base: ::std::os::raw::c_int,
1176 ) -> ::std::os::raw::c_ulong;
1177}
1178unsafe extern "C" {
1179 pub fn strtoq(
1180 __nptr: *const ::std::os::raw::c_char,
1181 __endptr: *mut *mut ::std::os::raw::c_char,
1182 __base: ::std::os::raw::c_int,
1183 ) -> ::std::os::raw::c_longlong;
1184}
1185unsafe extern "C" {
1186 pub fn strtouq(
1187 __nptr: *const ::std::os::raw::c_char,
1188 __endptr: *mut *mut ::std::os::raw::c_char,
1189 __base: ::std::os::raw::c_int,
1190 ) -> ::std::os::raw::c_ulonglong;
1191}
1192unsafe extern "C" {
1193 pub fn strtoll(
1194 __nptr: *const ::std::os::raw::c_char,
1195 __endptr: *mut *mut ::std::os::raw::c_char,
1196 __base: ::std::os::raw::c_int,
1197 ) -> ::std::os::raw::c_longlong;
1198}
1199unsafe extern "C" {
1200 pub fn strtoull(
1201 __nptr: *const ::std::os::raw::c_char,
1202 __endptr: *mut *mut ::std::os::raw::c_char,
1203 __base: ::std::os::raw::c_int,
1204 ) -> ::std::os::raw::c_ulonglong;
1205}
1206unsafe extern "C" {
1207 pub fn l64a(__n: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char;
1208}
1209unsafe extern "C" {
1210 pub fn a64l(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
1211}
1212pub type u_char = __u_char;
1213pub type u_short = __u_short;
1214pub type u_int = __u_int;
1215pub type u_long = __u_long;
1216pub type quad_t = __quad_t;
1217pub type u_quad_t = __u_quad_t;
1218pub type fsid_t = __fsid_t;
1219pub type loff_t = __loff_t;
1220pub type ino_t = __ino_t;
1221pub type dev_t = __dev_t;
1222pub type gid_t = __gid_t;
1223pub type mode_t = __mode_t;
1224pub type nlink_t = __nlink_t;
1225pub type uid_t = __uid_t;
1226pub type pid_t = __pid_t;
1227pub type id_t = __id_t;
1228pub type daddr_t = __daddr_t;
1229pub type caddr_t = __caddr_t;
1230pub type key_t = __key_t;
1231pub type clock_t = __clock_t;
1232pub type clockid_t = __clockid_t;
1233pub type time_t = __time_t;
1234pub type timer_t = __timer_t;
1235pub type ulong = ::std::os::raw::c_ulong;
1236pub type ushort = ::std::os::raw::c_ushort;
1237pub type uint = ::std::os::raw::c_uint;
1238pub type u_int8_t = __uint8_t;
1239pub type u_int16_t = __uint16_t;
1240pub type u_int32_t = __uint32_t;
1241pub type u_int64_t = __uint64_t;
1242pub type register_t = ::std::os::raw::c_long;
1243#[repr(C)]
1244#[derive(Debug, Copy, Clone)]
1245pub struct __sigset_t {
1246 pub __val: [::std::os::raw::c_ulong; 16usize],
1247}
1248pub type sigset_t = __sigset_t;
1249#[repr(C)]
1250#[derive(Debug, Copy, Clone)]
1251pub struct timeval {
1252 pub tv_sec: __time_t,
1253 pub tv_usec: __suseconds_t,
1254}
1255#[repr(C)]
1256#[derive(Debug, Copy, Clone)]
1257pub struct timespec {
1258 pub tv_sec: __time_t,
1259 pub tv_nsec: __syscall_slong_t,
1260}
1261pub type suseconds_t = __suseconds_t;
1262pub type __fd_mask = ::std::os::raw::c_long;
1263#[repr(C)]
1264#[derive(Debug, Copy, Clone)]
1265pub struct fd_set {
1266 pub __fds_bits: [__fd_mask; 16usize],
1267}
1268pub type fd_mask = __fd_mask;
1269unsafe extern "C" {
1270 pub fn select(
1271 __nfds: ::std::os::raw::c_int,
1272 __readfds: *mut fd_set,
1273 __writefds: *mut fd_set,
1274 __exceptfds: *mut fd_set,
1275 __timeout: *mut timeval,
1276 ) -> ::std::os::raw::c_int;
1277}
1278unsafe extern "C" {
1279 pub fn pselect(
1280 __nfds: ::std::os::raw::c_int,
1281 __readfds: *mut fd_set,
1282 __writefds: *mut fd_set,
1283 __exceptfds: *mut fd_set,
1284 __timeout: *const timespec,
1285 __sigmask: *const __sigset_t,
1286 ) -> ::std::os::raw::c_int;
1287}
1288pub type blksize_t = __blksize_t;
1289pub type blkcnt_t = __blkcnt_t;
1290pub type fsblkcnt_t = __fsblkcnt_t;
1291pub type fsfilcnt_t = __fsfilcnt_t;
1292#[repr(C)]
1293#[derive(Copy, Clone)]
1294pub union __atomic_wide_counter {
1295 pub __value64: ::std::os::raw::c_ulonglong,
1296 pub __value32: __atomic_wide_counter__bindgen_ty_1,
1297}
1298#[repr(C)]
1299#[derive(Debug, Copy, Clone)]
1300pub struct __atomic_wide_counter__bindgen_ty_1 {
1301 pub __low: ::std::os::raw::c_uint,
1302 pub __high: ::std::os::raw::c_uint,
1303}
1304#[repr(C)]
1305#[derive(Debug, Copy, Clone)]
1306pub struct __pthread_internal_list {
1307 pub __prev: *mut __pthread_internal_list,
1308 pub __next: *mut __pthread_internal_list,
1309}
1310pub type __pthread_list_t = __pthread_internal_list;
1311#[repr(C)]
1312#[derive(Debug, Copy, Clone)]
1313pub struct __pthread_internal_slist {
1314 pub __next: *mut __pthread_internal_slist,
1315}
1316pub type __pthread_slist_t = __pthread_internal_slist;
1317#[repr(C)]
1318#[derive(Debug, Copy, Clone)]
1319pub struct __pthread_mutex_s {
1320 pub __lock: ::std::os::raw::c_int,
1321 pub __count: ::std::os::raw::c_uint,
1322 pub __owner: ::std::os::raw::c_int,
1323 pub __nusers: ::std::os::raw::c_uint,
1324 pub __kind: ::std::os::raw::c_int,
1325 pub __spins: ::std::os::raw::c_short,
1326 pub __elision: ::std::os::raw::c_short,
1327 pub __list: __pthread_list_t,
1328}
1329#[repr(C)]
1330#[derive(Debug, Copy, Clone)]
1331pub struct __pthread_rwlock_arch_t {
1332 pub __readers: ::std::os::raw::c_uint,
1333 pub __writers: ::std::os::raw::c_uint,
1334 pub __wrphase_futex: ::std::os::raw::c_uint,
1335 pub __writers_futex: ::std::os::raw::c_uint,
1336 pub __pad3: ::std::os::raw::c_uint,
1337 pub __pad4: ::std::os::raw::c_uint,
1338 pub __cur_writer: ::std::os::raw::c_int,
1339 pub __shared: ::std::os::raw::c_int,
1340 pub __rwelision: ::std::os::raw::c_schar,
1341 pub __pad1: [::std::os::raw::c_uchar; 7usize],
1342 pub __pad2: ::std::os::raw::c_ulong,
1343 pub __flags: ::std::os::raw::c_uint,
1344}
1345#[repr(C)]
1346#[derive(Copy, Clone)]
1347pub struct __pthread_cond_s {
1348 pub __wseq: __atomic_wide_counter,
1349 pub __g1_start: __atomic_wide_counter,
1350 pub __g_refs: [::std::os::raw::c_uint; 2usize],
1351 pub __g_size: [::std::os::raw::c_uint; 2usize],
1352 pub __g1_orig_size: ::std::os::raw::c_uint,
1353 pub __wrefs: ::std::os::raw::c_uint,
1354 pub __g_signals: [::std::os::raw::c_uint; 2usize],
1355}
1356pub type __tss_t = ::std::os::raw::c_uint;
1357pub type __thrd_t = ::std::os::raw::c_ulong;
1358#[repr(C)]
1359#[derive(Debug, Copy, Clone)]
1360pub struct __once_flag {
1361 pub __data: ::std::os::raw::c_int,
1362}
1363pub type pthread_t = ::std::os::raw::c_ulong;
1364#[repr(C)]
1365#[derive(Copy, Clone)]
1366pub union pthread_mutexattr_t {
1367 pub __size: [::std::os::raw::c_char; 4usize],
1368 pub __align: ::std::os::raw::c_int,
1369}
1370#[repr(C)]
1371#[derive(Copy, Clone)]
1372pub union pthread_condattr_t {
1373 pub __size: [::std::os::raw::c_char; 4usize],
1374 pub __align: ::std::os::raw::c_int,
1375}
1376pub type pthread_key_t = ::std::os::raw::c_uint;
1377pub type pthread_once_t = ::std::os::raw::c_int;
1378#[repr(C)]
1379#[derive(Copy, Clone)]
1380pub union pthread_attr_t {
1381 pub __size: [::std::os::raw::c_char; 56usize],
1382 pub __align: ::std::os::raw::c_long,
1383}
1384#[repr(C)]
1385#[derive(Copy, Clone)]
1386pub union pthread_mutex_t {
1387 pub __data: __pthread_mutex_s,
1388 pub __size: [::std::os::raw::c_char; 40usize],
1389 pub __align: ::std::os::raw::c_long,
1390}
1391#[repr(C)]
1392#[derive(Copy, Clone)]
1393pub union pthread_cond_t {
1394 pub __data: __pthread_cond_s,
1395 pub __size: [::std::os::raw::c_char; 48usize],
1396 pub __align: ::std::os::raw::c_longlong,
1397}
1398#[repr(C)]
1399#[derive(Copy, Clone)]
1400pub union pthread_rwlock_t {
1401 pub __data: __pthread_rwlock_arch_t,
1402 pub __size: [::std::os::raw::c_char; 56usize],
1403 pub __align: ::std::os::raw::c_long,
1404}
1405#[repr(C)]
1406#[derive(Copy, Clone)]
1407pub union pthread_rwlockattr_t {
1408 pub __size: [::std::os::raw::c_char; 8usize],
1409 pub __align: ::std::os::raw::c_long,
1410}
1411pub type pthread_spinlock_t = ::std::os::raw::c_int;
1412#[repr(C)]
1413#[derive(Copy, Clone)]
1414pub union pthread_barrier_t {
1415 pub __size: [::std::os::raw::c_char; 32usize],
1416 pub __align: ::std::os::raw::c_long,
1417}
1418#[repr(C)]
1419#[derive(Copy, Clone)]
1420pub union pthread_barrierattr_t {
1421 pub __size: [::std::os::raw::c_char; 4usize],
1422 pub __align: ::std::os::raw::c_int,
1423}
1424unsafe extern "C" {
1425 pub fn random() -> ::std::os::raw::c_long;
1426}
1427unsafe extern "C" {
1428 pub fn srandom(__seed: ::std::os::raw::c_uint);
1429}
1430unsafe extern "C" {
1431 pub fn initstate(
1432 __seed: ::std::os::raw::c_uint,
1433 __statebuf: *mut ::std::os::raw::c_char,
1434 __statelen: usize,
1435 ) -> *mut ::std::os::raw::c_char;
1436}
1437unsafe extern "C" {
1438 pub fn setstate(__statebuf: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
1439}
1440#[repr(C)]
1441#[derive(Debug, Copy, Clone)]
1442pub struct random_data {
1443 pub fptr: *mut i32,
1444 pub rptr: *mut i32,
1445 pub state: *mut i32,
1446 pub rand_type: ::std::os::raw::c_int,
1447 pub rand_deg: ::std::os::raw::c_int,
1448 pub rand_sep: ::std::os::raw::c_int,
1449 pub end_ptr: *mut i32,
1450}
1451unsafe extern "C" {
1452 pub fn random_r(__buf: *mut random_data, __result: *mut i32) -> ::std::os::raw::c_int;
1453}
1454unsafe extern "C" {
1455 pub fn srandom_r(
1456 __seed: ::std::os::raw::c_uint,
1457 __buf: *mut random_data,
1458 ) -> ::std::os::raw::c_int;
1459}
1460unsafe extern "C" {
1461 pub fn initstate_r(
1462 __seed: ::std::os::raw::c_uint,
1463 __statebuf: *mut ::std::os::raw::c_char,
1464 __statelen: usize,
1465 __buf: *mut random_data,
1466 ) -> ::std::os::raw::c_int;
1467}
1468unsafe extern "C" {
1469 pub fn setstate_r(
1470 __statebuf: *mut ::std::os::raw::c_char,
1471 __buf: *mut random_data,
1472 ) -> ::std::os::raw::c_int;
1473}
1474unsafe extern "C" {
1475 pub fn rand() -> ::std::os::raw::c_int;
1476}
1477unsafe extern "C" {
1478 pub fn srand(__seed: ::std::os::raw::c_uint);
1479}
1480unsafe extern "C" {
1481 pub fn rand_r(__seed: *mut ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
1482}
1483unsafe extern "C" {
1484 pub fn drand48() -> f64;
1485}
1486unsafe extern "C" {
1487 pub fn erand48(__xsubi: *mut ::std::os::raw::c_ushort) -> f64;
1488}
1489unsafe extern "C" {
1490 pub fn lrand48() -> ::std::os::raw::c_long;
1491}
1492unsafe extern "C" {
1493 pub fn nrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long;
1494}
1495unsafe extern "C" {
1496 pub fn mrand48() -> ::std::os::raw::c_long;
1497}
1498unsafe extern "C" {
1499 pub fn jrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long;
1500}
1501unsafe extern "C" {
1502 pub fn srand48(__seedval: ::std::os::raw::c_long);
1503}
1504unsafe extern "C" {
1505 pub fn seed48(__seed16v: *mut ::std::os::raw::c_ushort) -> *mut ::std::os::raw::c_ushort;
1506}
1507unsafe extern "C" {
1508 pub fn lcong48(__param: *mut ::std::os::raw::c_ushort);
1509}
1510#[repr(C)]
1511#[derive(Debug, Copy, Clone)]
1512pub struct drand48_data {
1513 pub __x: [::std::os::raw::c_ushort; 3usize],
1514 pub __old_x: [::std::os::raw::c_ushort; 3usize],
1515 pub __c: ::std::os::raw::c_ushort,
1516 pub __init: ::std::os::raw::c_ushort,
1517 pub __a: ::std::os::raw::c_ulonglong,
1518}
1519unsafe extern "C" {
1520 pub fn drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> ::std::os::raw::c_int;
1521}
1522unsafe extern "C" {
1523 pub fn erand48_r(
1524 __xsubi: *mut ::std::os::raw::c_ushort,
1525 __buffer: *mut drand48_data,
1526 __result: *mut f64,
1527 ) -> ::std::os::raw::c_int;
1528}
1529unsafe extern "C" {
1530 pub fn lrand48_r(
1531 __buffer: *mut drand48_data,
1532 __result: *mut ::std::os::raw::c_long,
1533 ) -> ::std::os::raw::c_int;
1534}
1535unsafe extern "C" {
1536 pub fn nrand48_r(
1537 __xsubi: *mut ::std::os::raw::c_ushort,
1538 __buffer: *mut drand48_data,
1539 __result: *mut ::std::os::raw::c_long,
1540 ) -> ::std::os::raw::c_int;
1541}
1542unsafe extern "C" {
1543 pub fn mrand48_r(
1544 __buffer: *mut drand48_data,
1545 __result: *mut ::std::os::raw::c_long,
1546 ) -> ::std::os::raw::c_int;
1547}
1548unsafe extern "C" {
1549 pub fn jrand48_r(
1550 __xsubi: *mut ::std::os::raw::c_ushort,
1551 __buffer: *mut drand48_data,
1552 __result: *mut ::std::os::raw::c_long,
1553 ) -> ::std::os::raw::c_int;
1554}
1555unsafe extern "C" {
1556 pub fn srand48_r(
1557 __seedval: ::std::os::raw::c_long,
1558 __buffer: *mut drand48_data,
1559 ) -> ::std::os::raw::c_int;
1560}
1561unsafe extern "C" {
1562 pub fn seed48_r(
1563 __seed16v: *mut ::std::os::raw::c_ushort,
1564 __buffer: *mut drand48_data,
1565 ) -> ::std::os::raw::c_int;
1566}
1567unsafe extern "C" {
1568 pub fn lcong48_r(
1569 __param: *mut ::std::os::raw::c_ushort,
1570 __buffer: *mut drand48_data,
1571 ) -> ::std::os::raw::c_int;
1572}
1573unsafe extern "C" {
1574 pub fn arc4random() -> __uint32_t;
1575}
1576unsafe extern "C" {
1577 pub fn arc4random_buf(__buf: *mut ::std::os::raw::c_void, __size: usize);
1578}
1579unsafe extern "C" {
1580 pub fn arc4random_uniform(__upper_bound: __uint32_t) -> __uint32_t;
1581}
1582unsafe extern "C" {
1583 pub fn malloc(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void;
1584}
1585unsafe extern "C" {
1586 pub fn calloc(
1587 __nmemb: ::std::os::raw::c_ulong,
1588 __size: ::std::os::raw::c_ulong,
1589 ) -> *mut ::std::os::raw::c_void;
1590}
1591unsafe extern "C" {
1592 pub fn realloc(
1593 __ptr: *mut ::std::os::raw::c_void,
1594 __size: ::std::os::raw::c_ulong,
1595 ) -> *mut ::std::os::raw::c_void;
1596}
1597unsafe extern "C" {
1598 pub fn free(__ptr: *mut ::std::os::raw::c_void);
1599}
1600unsafe extern "C" {
1601 pub fn reallocarray(
1602 __ptr: *mut ::std::os::raw::c_void,
1603 __nmemb: usize,
1604 __size: usize,
1605 ) -> *mut ::std::os::raw::c_void;
1606}
1607unsafe extern "C" {
1608 pub fn alloca(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void;
1609}
1610unsafe extern "C" {
1611 pub fn valloc(__size: usize) -> *mut ::std::os::raw::c_void;
1612}
1613unsafe extern "C" {
1614 pub fn posix_memalign(
1615 __memptr: *mut *mut ::std::os::raw::c_void,
1616 __alignment: usize,
1617 __size: usize,
1618 ) -> ::std::os::raw::c_int;
1619}
1620unsafe extern "C" {
1621 pub fn aligned_alloc(
1622 __alignment: ::std::os::raw::c_ulong,
1623 __size: ::std::os::raw::c_ulong,
1624 ) -> *mut ::std::os::raw::c_void;
1625}
1626unsafe extern "C" {
1627 pub fn abort() -> !;
1628}
1629unsafe extern "C" {
1630 pub fn atexit(__func: ::std::option::Option<unsafe extern "C" fn()>) -> ::std::os::raw::c_int;
1631}
1632unsafe extern "C" {
1633 pub fn at_quick_exit(
1634 __func: ::std::option::Option<unsafe extern "C" fn()>,
1635 ) -> ::std::os::raw::c_int;
1636}
1637unsafe extern "C" {
1638 pub fn on_exit(
1639 __func: ::std::option::Option<
1640 unsafe extern "C" fn(
1641 __status: ::std::os::raw::c_int,
1642 __arg: *mut ::std::os::raw::c_void,
1643 ),
1644 >,
1645 __arg: *mut ::std::os::raw::c_void,
1646 ) -> ::std::os::raw::c_int;
1647}
1648unsafe extern "C" {
1649 pub fn exit(__status: ::std::os::raw::c_int) -> !;
1650}
1651unsafe extern "C" {
1652 pub fn quick_exit(__status: ::std::os::raw::c_int) -> !;
1653}
1654unsafe extern "C" {
1655 pub fn _Exit(__status: ::std::os::raw::c_int) -> !;
1656}
1657unsafe extern "C" {
1658 pub fn getenv(__name: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
1659}
1660unsafe extern "C" {
1661 pub fn putenv(__string: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
1662}
1663unsafe extern "C" {
1664 pub fn setenv(
1665 __name: *const ::std::os::raw::c_char,
1666 __value: *const ::std::os::raw::c_char,
1667 __replace: ::std::os::raw::c_int,
1668 ) -> ::std::os::raw::c_int;
1669}
1670unsafe extern "C" {
1671 pub fn unsetenv(__name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
1672}
1673unsafe extern "C" {
1674 pub fn clearenv() -> ::std::os::raw::c_int;
1675}
1676unsafe extern "C" {
1677 pub fn mktemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
1678}
1679unsafe extern "C" {
1680 pub fn mkstemp(__template: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
1681}
1682unsafe extern "C" {
1683 pub fn mkstemps(
1684 __template: *mut ::std::os::raw::c_char,
1685 __suffixlen: ::std::os::raw::c_int,
1686 ) -> ::std::os::raw::c_int;
1687}
1688unsafe extern "C" {
1689 pub fn mkdtemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
1690}
1691unsafe extern "C" {
1692 pub fn system(__command: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
1693}
1694unsafe extern "C" {
1695 pub fn realpath(
1696 __name: *const ::std::os::raw::c_char,
1697 __resolved: *mut ::std::os::raw::c_char,
1698 ) -> *mut ::std::os::raw::c_char;
1699}
1700pub type __compar_fn_t = ::std::option::Option<
1701 unsafe extern "C" fn(
1702 arg1: *const ::std::os::raw::c_void,
1703 arg2: *const ::std::os::raw::c_void,
1704 ) -> ::std::os::raw::c_int,
1705>;
1706unsafe extern "C" {
1707 pub fn bsearch(
1708 __key: *const ::std::os::raw::c_void,
1709 __base: *const ::std::os::raw::c_void,
1710 __nmemb: usize,
1711 __size: usize,
1712 __compar: __compar_fn_t,
1713 ) -> *mut ::std::os::raw::c_void;
1714}
1715unsafe extern "C" {
1716 pub fn qsort(
1717 __base: *mut ::std::os::raw::c_void,
1718 __nmemb: usize,
1719 __size: usize,
1720 __compar: __compar_fn_t,
1721 );
1722}
1723unsafe extern "C" {
1724 pub fn abs(__x: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
1725}
1726unsafe extern "C" {
1727 pub fn labs(__x: ::std::os::raw::c_long) -> ::std::os::raw::c_long;
1728}
1729unsafe extern "C" {
1730 pub fn llabs(__x: ::std::os::raw::c_longlong) -> ::std::os::raw::c_longlong;
1731}
1732unsafe extern "C" {
1733 pub fn div(__numer: ::std::os::raw::c_int, __denom: ::std::os::raw::c_int) -> div_t;
1734}
1735unsafe extern "C" {
1736 pub fn ldiv(__numer: ::std::os::raw::c_long, __denom: ::std::os::raw::c_long) -> ldiv_t;
1737}
1738unsafe extern "C" {
1739 pub fn lldiv(
1740 __numer: ::std::os::raw::c_longlong,
1741 __denom: ::std::os::raw::c_longlong,
1742 ) -> lldiv_t;
1743}
1744unsafe extern "C" {
1745 pub fn ecvt(
1746 __value: f64,
1747 __ndigit: ::std::os::raw::c_int,
1748 __decpt: *mut ::std::os::raw::c_int,
1749 __sign: *mut ::std::os::raw::c_int,
1750 ) -> *mut ::std::os::raw::c_char;
1751}
1752unsafe extern "C" {
1753 pub fn fcvt(
1754 __value: f64,
1755 __ndigit: ::std::os::raw::c_int,
1756 __decpt: *mut ::std::os::raw::c_int,
1757 __sign: *mut ::std::os::raw::c_int,
1758 ) -> *mut ::std::os::raw::c_char;
1759}
1760unsafe extern "C" {
1761 pub fn gcvt(
1762 __value: f64,
1763 __ndigit: ::std::os::raw::c_int,
1764 __buf: *mut ::std::os::raw::c_char,
1765 ) -> *mut ::std::os::raw::c_char;
1766}
1767unsafe extern "C" {
1768 pub fn qecvt(
1769 __value: u128,
1770 __ndigit: ::std::os::raw::c_int,
1771 __decpt: *mut ::std::os::raw::c_int,
1772 __sign: *mut ::std::os::raw::c_int,
1773 ) -> *mut ::std::os::raw::c_char;
1774}
1775unsafe extern "C" {
1776 pub fn qfcvt(
1777 __value: u128,
1778 __ndigit: ::std::os::raw::c_int,
1779 __decpt: *mut ::std::os::raw::c_int,
1780 __sign: *mut ::std::os::raw::c_int,
1781 ) -> *mut ::std::os::raw::c_char;
1782}
1783unsafe extern "C" {
1784 pub fn qgcvt(
1785 __value: u128,
1786 __ndigit: ::std::os::raw::c_int,
1787 __buf: *mut ::std::os::raw::c_char,
1788 ) -> *mut ::std::os::raw::c_char;
1789}
1790unsafe extern "C" {
1791 pub fn ecvt_r(
1792 __value: f64,
1793 __ndigit: ::std::os::raw::c_int,
1794 __decpt: *mut ::std::os::raw::c_int,
1795 __sign: *mut ::std::os::raw::c_int,
1796 __buf: *mut ::std::os::raw::c_char,
1797 __len: usize,
1798 ) -> ::std::os::raw::c_int;
1799}
1800unsafe extern "C" {
1801 pub fn fcvt_r(
1802 __value: f64,
1803 __ndigit: ::std::os::raw::c_int,
1804 __decpt: *mut ::std::os::raw::c_int,
1805 __sign: *mut ::std::os::raw::c_int,
1806 __buf: *mut ::std::os::raw::c_char,
1807 __len: usize,
1808 ) -> ::std::os::raw::c_int;
1809}
1810unsafe extern "C" {
1811 pub fn qecvt_r(
1812 __value: u128,
1813 __ndigit: ::std::os::raw::c_int,
1814 __decpt: *mut ::std::os::raw::c_int,
1815 __sign: *mut ::std::os::raw::c_int,
1816 __buf: *mut ::std::os::raw::c_char,
1817 __len: usize,
1818 ) -> ::std::os::raw::c_int;
1819}
1820unsafe extern "C" {
1821 pub fn qfcvt_r(
1822 __value: u128,
1823 __ndigit: ::std::os::raw::c_int,
1824 __decpt: *mut ::std::os::raw::c_int,
1825 __sign: *mut ::std::os::raw::c_int,
1826 __buf: *mut ::std::os::raw::c_char,
1827 __len: usize,
1828 ) -> ::std::os::raw::c_int;
1829}
1830unsafe extern "C" {
1831 pub fn mblen(__s: *const ::std::os::raw::c_char, __n: usize) -> ::std::os::raw::c_int;
1832}
1833unsafe extern "C" {
1834 pub fn mbtowc(
1835 __pwc: *mut wchar_t,
1836 __s: *const ::std::os::raw::c_char,
1837 __n: usize,
1838 ) -> ::std::os::raw::c_int;
1839}
1840unsafe extern "C" {
1841 pub fn wctomb(__s: *mut ::std::os::raw::c_char, __wchar: wchar_t) -> ::std::os::raw::c_int;
1842}
1843unsafe extern "C" {
1844 pub fn mbstowcs(__pwcs: *mut wchar_t, __s: *const ::std::os::raw::c_char, __n: usize) -> usize;
1845}
1846unsafe extern "C" {
1847 pub fn wcstombs(__s: *mut ::std::os::raw::c_char, __pwcs: *const wchar_t, __n: usize) -> usize;
1848}
1849unsafe extern "C" {
1850 pub fn rpmatch(__response: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
1851}
1852unsafe extern "C" {
1853 pub fn getsubopt(
1854 __optionp: *mut *mut ::std::os::raw::c_char,
1855 __tokens: *const *mut ::std::os::raw::c_char,
1856 __valuep: *mut *mut ::std::os::raw::c_char,
1857 ) -> ::std::os::raw::c_int;
1858}
1859unsafe extern "C" {
1860 pub fn getloadavg(__loadavg: *mut f64, __nelem: ::std::os::raw::c_int)
1861 -> ::std::os::raw::c_int;
1862}
1863unsafe extern "C" {
1864 pub fn memcpy(
1865 __dest: *mut ::std::os::raw::c_void,
1866 __src: *const ::std::os::raw::c_void,
1867 __n: ::std::os::raw::c_ulong,
1868 ) -> *mut ::std::os::raw::c_void;
1869}
1870unsafe extern "C" {
1871 pub fn memmove(
1872 __dest: *mut ::std::os::raw::c_void,
1873 __src: *const ::std::os::raw::c_void,
1874 __n: ::std::os::raw::c_ulong,
1875 ) -> *mut ::std::os::raw::c_void;
1876}
1877unsafe extern "C" {
1878 pub fn memccpy(
1879 __dest: *mut ::std::os::raw::c_void,
1880 __src: *const ::std::os::raw::c_void,
1881 __c: ::std::os::raw::c_int,
1882 __n: ::std::os::raw::c_ulong,
1883 ) -> *mut ::std::os::raw::c_void;
1884}
1885unsafe extern "C" {
1886 pub fn memset(
1887 __s: *mut ::std::os::raw::c_void,
1888 __c: ::std::os::raw::c_int,
1889 __n: ::std::os::raw::c_ulong,
1890 ) -> *mut ::std::os::raw::c_void;
1891}
1892unsafe extern "C" {
1893 pub fn memcmp(
1894 __s1: *const ::std::os::raw::c_void,
1895 __s2: *const ::std::os::raw::c_void,
1896 __n: ::std::os::raw::c_ulong,
1897 ) -> ::std::os::raw::c_int;
1898}
1899unsafe extern "C" {
1900 pub fn __memcmpeq(
1901 __s1: *const ::std::os::raw::c_void,
1902 __s2: *const ::std::os::raw::c_void,
1903 __n: usize,
1904 ) -> ::std::os::raw::c_int;
1905}
1906unsafe extern "C" {
1907 pub fn memchr(
1908 __s: *const ::std::os::raw::c_void,
1909 __c: ::std::os::raw::c_int,
1910 __n: ::std::os::raw::c_ulong,
1911 ) -> *mut ::std::os::raw::c_void;
1912}
1913unsafe extern "C" {
1914 pub fn strcpy(
1915 __dest: *mut ::std::os::raw::c_char,
1916 __src: *const ::std::os::raw::c_char,
1917 ) -> *mut ::std::os::raw::c_char;
1918}
1919unsafe extern "C" {
1920 pub fn strncpy(
1921 __dest: *mut ::std::os::raw::c_char,
1922 __src: *const ::std::os::raw::c_char,
1923 __n: ::std::os::raw::c_ulong,
1924 ) -> *mut ::std::os::raw::c_char;
1925}
1926unsafe extern "C" {
1927 pub fn strcat(
1928 __dest: *mut ::std::os::raw::c_char,
1929 __src: *const ::std::os::raw::c_char,
1930 ) -> *mut ::std::os::raw::c_char;
1931}
1932unsafe extern "C" {
1933 pub fn strncat(
1934 __dest: *mut ::std::os::raw::c_char,
1935 __src: *const ::std::os::raw::c_char,
1936 __n: ::std::os::raw::c_ulong,
1937 ) -> *mut ::std::os::raw::c_char;
1938}
1939unsafe extern "C" {
1940 pub fn strcmp(
1941 __s1: *const ::std::os::raw::c_char,
1942 __s2: *const ::std::os::raw::c_char,
1943 ) -> ::std::os::raw::c_int;
1944}
1945unsafe extern "C" {
1946 pub fn strncmp(
1947 __s1: *const ::std::os::raw::c_char,
1948 __s2: *const ::std::os::raw::c_char,
1949 __n: ::std::os::raw::c_ulong,
1950 ) -> ::std::os::raw::c_int;
1951}
1952unsafe extern "C" {
1953 pub fn strcoll(
1954 __s1: *const ::std::os::raw::c_char,
1955 __s2: *const ::std::os::raw::c_char,
1956 ) -> ::std::os::raw::c_int;
1957}
1958unsafe extern "C" {
1959 pub fn strxfrm(
1960 __dest: *mut ::std::os::raw::c_char,
1961 __src: *const ::std::os::raw::c_char,
1962 __n: ::std::os::raw::c_ulong,
1963 ) -> ::std::os::raw::c_ulong;
1964}
1965#[repr(C)]
1966#[derive(Debug, Copy, Clone)]
1967pub struct __locale_struct {
1968 pub __locales: [*mut __locale_data; 13usize],
1969 pub __ctype_b: *const ::std::os::raw::c_ushort,
1970 pub __ctype_tolower: *const ::std::os::raw::c_int,
1971 pub __ctype_toupper: *const ::std::os::raw::c_int,
1972 pub __names: [*const ::std::os::raw::c_char; 13usize],
1973}
1974pub type __locale_t = *mut __locale_struct;
1975pub type locale_t = __locale_t;
1976unsafe extern "C" {
1977 pub fn strcoll_l(
1978 __s1: *const ::std::os::raw::c_char,
1979 __s2: *const ::std::os::raw::c_char,
1980 __l: locale_t,
1981 ) -> ::std::os::raw::c_int;
1982}
1983unsafe extern "C" {
1984 pub fn strxfrm_l(
1985 __dest: *mut ::std::os::raw::c_char,
1986 __src: *const ::std::os::raw::c_char,
1987 __n: usize,
1988 __l: locale_t,
1989 ) -> usize;
1990}
1991unsafe extern "C" {
1992 pub fn strdup(__s: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
1993}
1994unsafe extern "C" {
1995 pub fn strndup(
1996 __string: *const ::std::os::raw::c_char,
1997 __n: ::std::os::raw::c_ulong,
1998 ) -> *mut ::std::os::raw::c_char;
1999}
2000unsafe extern "C" {
2001 pub fn strchr(
2002 __s: *const ::std::os::raw::c_char,
2003 __c: ::std::os::raw::c_int,
2004 ) -> *mut ::std::os::raw::c_char;
2005}
2006unsafe extern "C" {
2007 pub fn strrchr(
2008 __s: *const ::std::os::raw::c_char,
2009 __c: ::std::os::raw::c_int,
2010 ) -> *mut ::std::os::raw::c_char;
2011}
2012unsafe extern "C" {
2013 pub fn strchrnul(
2014 __s: *const ::std::os::raw::c_char,
2015 __c: ::std::os::raw::c_int,
2016 ) -> *mut ::std::os::raw::c_char;
2017}
2018unsafe extern "C" {
2019 pub fn strcspn(
2020 __s: *const ::std::os::raw::c_char,
2021 __reject: *const ::std::os::raw::c_char,
2022 ) -> ::std::os::raw::c_ulong;
2023}
2024unsafe extern "C" {
2025 pub fn strspn(
2026 __s: *const ::std::os::raw::c_char,
2027 __accept: *const ::std::os::raw::c_char,
2028 ) -> ::std::os::raw::c_ulong;
2029}
2030unsafe extern "C" {
2031 pub fn strpbrk(
2032 __s: *const ::std::os::raw::c_char,
2033 __accept: *const ::std::os::raw::c_char,
2034 ) -> *mut ::std::os::raw::c_char;
2035}
2036unsafe extern "C" {
2037 pub fn strstr(
2038 __haystack: *const ::std::os::raw::c_char,
2039 __needle: *const ::std::os::raw::c_char,
2040 ) -> *mut ::std::os::raw::c_char;
2041}
2042unsafe extern "C" {
2043 pub fn strtok(
2044 __s: *mut ::std::os::raw::c_char,
2045 __delim: *const ::std::os::raw::c_char,
2046 ) -> *mut ::std::os::raw::c_char;
2047}
2048unsafe extern "C" {
2049 pub fn __strtok_r(
2050 __s: *mut ::std::os::raw::c_char,
2051 __delim: *const ::std::os::raw::c_char,
2052 __save_ptr: *mut *mut ::std::os::raw::c_char,
2053 ) -> *mut ::std::os::raw::c_char;
2054}
2055unsafe extern "C" {
2056 pub fn strtok_r(
2057 __s: *mut ::std::os::raw::c_char,
2058 __delim: *const ::std::os::raw::c_char,
2059 __save_ptr: *mut *mut ::std::os::raw::c_char,
2060 ) -> *mut ::std::os::raw::c_char;
2061}
2062unsafe extern "C" {
2063 pub fn strcasestr(
2064 __haystack: *const ::std::os::raw::c_char,
2065 __needle: *const ::std::os::raw::c_char,
2066 ) -> *mut ::std::os::raw::c_char;
2067}
2068unsafe extern "C" {
2069 pub fn memmem(
2070 __haystack: *const ::std::os::raw::c_void,
2071 __haystacklen: usize,
2072 __needle: *const ::std::os::raw::c_void,
2073 __needlelen: usize,
2074 ) -> *mut ::std::os::raw::c_void;
2075}
2076unsafe extern "C" {
2077 pub fn __mempcpy(
2078 __dest: *mut ::std::os::raw::c_void,
2079 __src: *const ::std::os::raw::c_void,
2080 __n: usize,
2081 ) -> *mut ::std::os::raw::c_void;
2082}
2083unsafe extern "C" {
2084 pub fn mempcpy(
2085 __dest: *mut ::std::os::raw::c_void,
2086 __src: *const ::std::os::raw::c_void,
2087 __n: ::std::os::raw::c_ulong,
2088 ) -> *mut ::std::os::raw::c_void;
2089}
2090unsafe extern "C" {
2091 pub fn strlen(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_ulong;
2092}
2093unsafe extern "C" {
2094 pub fn strnlen(__string: *const ::std::os::raw::c_char, __maxlen: usize) -> usize;
2095}
2096unsafe extern "C" {
2097 pub fn strerror(__errnum: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char;
2098}
2099unsafe extern "C" {
2100 pub fn strerror_r(
2101 __errnum: ::std::os::raw::c_int,
2102 __buf: *mut ::std::os::raw::c_char,
2103 __buflen: usize,
2104 ) -> ::std::os::raw::c_int;
2105}
2106unsafe extern "C" {
2107 pub fn strerror_l(
2108 __errnum: ::std::os::raw::c_int,
2109 __l: locale_t,
2110 ) -> *mut ::std::os::raw::c_char;
2111}
2112unsafe extern "C" {
2113 pub fn bcmp(
2114 __s1: *const ::std::os::raw::c_void,
2115 __s2: *const ::std::os::raw::c_void,
2116 __n: ::std::os::raw::c_ulong,
2117 ) -> ::std::os::raw::c_int;
2118}
2119unsafe extern "C" {
2120 pub fn bcopy(
2121 __src: *const ::std::os::raw::c_void,
2122 __dest: *mut ::std::os::raw::c_void,
2123 __n: ::std::os::raw::c_ulong,
2124 );
2125}
2126unsafe extern "C" {
2127 pub fn bzero(__s: *mut ::std::os::raw::c_void, __n: ::std::os::raw::c_ulong);
2128}
2129unsafe extern "C" {
2130 pub fn index(
2131 __s: *const ::std::os::raw::c_char,
2132 __c: ::std::os::raw::c_int,
2133 ) -> *mut ::std::os::raw::c_char;
2134}
2135unsafe extern "C" {
2136 pub fn rindex(
2137 __s: *const ::std::os::raw::c_char,
2138 __c: ::std::os::raw::c_int,
2139 ) -> *mut ::std::os::raw::c_char;
2140}
2141unsafe extern "C" {
2142 pub fn ffs(__i: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
2143}
2144unsafe extern "C" {
2145 pub fn ffsl(__l: ::std::os::raw::c_long) -> ::std::os::raw::c_int;
2146}
2147unsafe extern "C" {
2148 pub fn ffsll(__ll: ::std::os::raw::c_longlong) -> ::std::os::raw::c_int;
2149}
2150unsafe extern "C" {
2151 pub fn strcasecmp(
2152 __s1: *const ::std::os::raw::c_char,
2153 __s2: *const ::std::os::raw::c_char,
2154 ) -> ::std::os::raw::c_int;
2155}
2156unsafe extern "C" {
2157 pub fn strncasecmp(
2158 __s1: *const ::std::os::raw::c_char,
2159 __s2: *const ::std::os::raw::c_char,
2160 __n: ::std::os::raw::c_ulong,
2161 ) -> ::std::os::raw::c_int;
2162}
2163unsafe extern "C" {
2164 pub fn strcasecmp_l(
2165 __s1: *const ::std::os::raw::c_char,
2166 __s2: *const ::std::os::raw::c_char,
2167 __loc: locale_t,
2168 ) -> ::std::os::raw::c_int;
2169}
2170unsafe extern "C" {
2171 pub fn strncasecmp_l(
2172 __s1: *const ::std::os::raw::c_char,
2173 __s2: *const ::std::os::raw::c_char,
2174 __n: usize,
2175 __loc: locale_t,
2176 ) -> ::std::os::raw::c_int;
2177}
2178unsafe extern "C" {
2179 pub fn explicit_bzero(__s: *mut ::std::os::raw::c_void, __n: usize);
2180}
2181unsafe extern "C" {
2182 pub fn strsep(
2183 __stringp: *mut *mut ::std::os::raw::c_char,
2184 __delim: *const ::std::os::raw::c_char,
2185 ) -> *mut ::std::os::raw::c_char;
2186}
2187unsafe extern "C" {
2188 pub fn strsignal(__sig: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char;
2189}
2190unsafe extern "C" {
2191 pub fn __stpcpy(
2192 __dest: *mut ::std::os::raw::c_char,
2193 __src: *const ::std::os::raw::c_char,
2194 ) -> *mut ::std::os::raw::c_char;
2195}
2196unsafe extern "C" {
2197 pub fn stpcpy(
2198 __dest: *mut ::std::os::raw::c_char,
2199 __src: *const ::std::os::raw::c_char,
2200 ) -> *mut ::std::os::raw::c_char;
2201}
2202unsafe extern "C" {
2203 pub fn __stpncpy(
2204 __dest: *mut ::std::os::raw::c_char,
2205 __src: *const ::std::os::raw::c_char,
2206 __n: usize,
2207 ) -> *mut ::std::os::raw::c_char;
2208}
2209unsafe extern "C" {
2210 pub fn stpncpy(
2211 __dest: *mut ::std::os::raw::c_char,
2212 __src: *const ::std::os::raw::c_char,
2213 __n: ::std::os::raw::c_ulong,
2214 ) -> *mut ::std::os::raw::c_char;
2215}
2216unsafe extern "C" {
2217 pub fn strlcpy(
2218 __dest: *mut ::std::os::raw::c_char,
2219 __src: *const ::std::os::raw::c_char,
2220 __n: usize,
2221 ) -> usize;
2222}
2223unsafe extern "C" {
2224 pub fn strlcat(
2225 __dest: *mut ::std::os::raw::c_char,
2226 __src: *const ::std::os::raw::c_char,
2227 __n: usize,
2228 ) -> usize;
2229}
2230#[repr(C)]
2231#[derive(Debug, Copy, Clone)]
2232pub struct timezone {
2233 pub tz_minuteswest: ::std::os::raw::c_int,
2234 pub tz_dsttime: ::std::os::raw::c_int,
2235}
2236unsafe extern "C" {
2237 pub fn gettimeofday(
2238 __tv: *mut timeval,
2239 __tz: *mut ::std::os::raw::c_void,
2240 ) -> ::std::os::raw::c_int;
2241}
2242unsafe extern "C" {
2243 pub fn settimeofday(__tv: *const timeval, __tz: *const timezone) -> ::std::os::raw::c_int;
2244}
2245unsafe extern "C" {
2246 pub fn adjtime(__delta: *const timeval, __olddelta: *mut timeval) -> ::std::os::raw::c_int;
2247}
2248pub const __itimer_which_ITIMER_REAL: __itimer_which = 0;
2249pub const __itimer_which_ITIMER_VIRTUAL: __itimer_which = 1;
2250pub const __itimer_which_ITIMER_PROF: __itimer_which = 2;
2251pub type __itimer_which = ::std::os::raw::c_uint;
2252#[repr(C)]
2253#[derive(Debug, Copy, Clone)]
2254pub struct itimerval {
2255 pub it_interval: timeval,
2256 pub it_value: timeval,
2257}
2258pub type __itimer_which_t = ::std::os::raw::c_int;
2259unsafe extern "C" {
2260 pub fn getitimer(__which: __itimer_which_t, __value: *mut itimerval) -> ::std::os::raw::c_int;
2261}
2262unsafe extern "C" {
2263 pub fn setitimer(
2264 __which: __itimer_which_t,
2265 __new: *const itimerval,
2266 __old: *mut itimerval,
2267 ) -> ::std::os::raw::c_int;
2268}
2269unsafe extern "C" {
2270 pub fn utimes(
2271 __file: *const ::std::os::raw::c_char,
2272 __tvp: *const timeval,
2273 ) -> ::std::os::raw::c_int;
2274}
2275unsafe extern "C" {
2276 pub fn lutimes(
2277 __file: *const ::std::os::raw::c_char,
2278 __tvp: *const timeval,
2279 ) -> ::std::os::raw::c_int;
2280}
2281unsafe extern "C" {
2282 pub fn futimes(__fd: ::std::os::raw::c_int, __tvp: *const timeval) -> ::std::os::raw::c_int;
2283}
2284pub type float_t = f32;
2285pub type double_t = f64;
2286unsafe extern "C" {
2287 pub fn __fpclassify(__value: f64) -> ::std::os::raw::c_int;
2288}
2289unsafe extern "C" {
2290 pub fn __signbit(__value: f64) -> ::std::os::raw::c_int;
2291}
2292unsafe extern "C" {
2293 pub fn __isinf(__value: f64) -> ::std::os::raw::c_int;
2294}
2295unsafe extern "C" {
2296 pub fn __finite(__value: f64) -> ::std::os::raw::c_int;
2297}
2298unsafe extern "C" {
2299 pub fn __isnan(__value: f64) -> ::std::os::raw::c_int;
2300}
2301unsafe extern "C" {
2302 pub fn __iseqsig(__x: f64, __y: f64) -> ::std::os::raw::c_int;
2303}
2304unsafe extern "C" {
2305 pub fn __issignaling(__value: f64) -> ::std::os::raw::c_int;
2306}
2307unsafe extern "C" {
2308 pub fn acos(__x: f64) -> f64;
2309}
2310unsafe extern "C" {
2311 pub fn __acos(__x: f64) -> f64;
2312}
2313unsafe extern "C" {
2314 pub fn asin(__x: f64) -> f64;
2315}
2316unsafe extern "C" {
2317 pub fn __asin(__x: f64) -> f64;
2318}
2319unsafe extern "C" {
2320 pub fn atan(__x: f64) -> f64;
2321}
2322unsafe extern "C" {
2323 pub fn __atan(__x: f64) -> f64;
2324}
2325unsafe extern "C" {
2326 pub fn atan2(__y: f64, __x: f64) -> f64;
2327}
2328unsafe extern "C" {
2329 pub fn __atan2(__y: f64, __x: f64) -> f64;
2330}
2331unsafe extern "C" {
2332 pub fn cos(__x: f64) -> f64;
2333}
2334unsafe extern "C" {
2335 pub fn __cos(__x: f64) -> f64;
2336}
2337unsafe extern "C" {
2338 pub fn sin(__x: f64) -> f64;
2339}
2340unsafe extern "C" {
2341 pub fn __sin(__x: f64) -> f64;
2342}
2343unsafe extern "C" {
2344 pub fn tan(__x: f64) -> f64;
2345}
2346unsafe extern "C" {
2347 pub fn __tan(__x: f64) -> f64;
2348}
2349unsafe extern "C" {
2350 pub fn cosh(__x: f64) -> f64;
2351}
2352unsafe extern "C" {
2353 pub fn __cosh(__x: f64) -> f64;
2354}
2355unsafe extern "C" {
2356 pub fn sinh(__x: f64) -> f64;
2357}
2358unsafe extern "C" {
2359 pub fn __sinh(__x: f64) -> f64;
2360}
2361unsafe extern "C" {
2362 pub fn tanh(__x: f64) -> f64;
2363}
2364unsafe extern "C" {
2365 pub fn __tanh(__x: f64) -> f64;
2366}
2367unsafe extern "C" {
2368 pub fn acosh(__x: f64) -> f64;
2369}
2370unsafe extern "C" {
2371 pub fn __acosh(__x: f64) -> f64;
2372}
2373unsafe extern "C" {
2374 pub fn asinh(__x: f64) -> f64;
2375}
2376unsafe extern "C" {
2377 pub fn __asinh(__x: f64) -> f64;
2378}
2379unsafe extern "C" {
2380 pub fn atanh(__x: f64) -> f64;
2381}
2382unsafe extern "C" {
2383 pub fn __atanh(__x: f64) -> f64;
2384}
2385unsafe extern "C" {
2386 pub fn exp(__x: f64) -> f64;
2387}
2388unsafe extern "C" {
2389 pub fn __exp(__x: f64) -> f64;
2390}
2391unsafe extern "C" {
2392 pub fn frexp(__x: f64, __exponent: *mut ::std::os::raw::c_int) -> f64;
2393}
2394unsafe extern "C" {
2395 pub fn __frexp(__x: f64, __exponent: *mut ::std::os::raw::c_int) -> f64;
2396}
2397unsafe extern "C" {
2398 pub fn ldexp(__x: f64, __exponent: ::std::os::raw::c_int) -> f64;
2399}
2400unsafe extern "C" {
2401 pub fn __ldexp(__x: f64, __exponent: ::std::os::raw::c_int) -> f64;
2402}
2403unsafe extern "C" {
2404 pub fn log(__x: f64) -> f64;
2405}
2406unsafe extern "C" {
2407 pub fn __log(__x: f64) -> f64;
2408}
2409unsafe extern "C" {
2410 pub fn log10(__x: f64) -> f64;
2411}
2412unsafe extern "C" {
2413 pub fn __log10(__x: f64) -> f64;
2414}
2415unsafe extern "C" {
2416 pub fn modf(__x: f64, __iptr: *mut f64) -> f64;
2417}
2418unsafe extern "C" {
2419 pub fn __modf(__x: f64, __iptr: *mut f64) -> f64;
2420}
2421unsafe extern "C" {
2422 pub fn expm1(__x: f64) -> f64;
2423}
2424unsafe extern "C" {
2425 pub fn __expm1(__x: f64) -> f64;
2426}
2427unsafe extern "C" {
2428 pub fn log1p(__x: f64) -> f64;
2429}
2430unsafe extern "C" {
2431 pub fn __log1p(__x: f64) -> f64;
2432}
2433unsafe extern "C" {
2434 pub fn logb(__x: f64) -> f64;
2435}
2436unsafe extern "C" {
2437 pub fn __logb(__x: f64) -> f64;
2438}
2439unsafe extern "C" {
2440 pub fn exp2(__x: f64) -> f64;
2441}
2442unsafe extern "C" {
2443 pub fn __exp2(__x: f64) -> f64;
2444}
2445unsafe extern "C" {
2446 pub fn log2(__x: f64) -> f64;
2447}
2448unsafe extern "C" {
2449 pub fn __log2(__x: f64) -> f64;
2450}
2451unsafe extern "C" {
2452 pub fn pow(__x: f64, __y: f64) -> f64;
2453}
2454unsafe extern "C" {
2455 pub fn __pow(__x: f64, __y: f64) -> f64;
2456}
2457unsafe extern "C" {
2458 pub fn sqrt(__x: f64) -> f64;
2459}
2460unsafe extern "C" {
2461 pub fn __sqrt(__x: f64) -> f64;
2462}
2463unsafe extern "C" {
2464 pub fn hypot(__x: f64, __y: f64) -> f64;
2465}
2466unsafe extern "C" {
2467 pub fn __hypot(__x: f64, __y: f64) -> f64;
2468}
2469unsafe extern "C" {
2470 pub fn cbrt(__x: f64) -> f64;
2471}
2472unsafe extern "C" {
2473 pub fn __cbrt(__x: f64) -> f64;
2474}
2475unsafe extern "C" {
2476 pub fn ceil(__x: f64) -> f64;
2477}
2478unsafe extern "C" {
2479 pub fn __ceil(__x: f64) -> f64;
2480}
2481unsafe extern "C" {
2482 pub fn fabs(__x: f64) -> f64;
2483}
2484unsafe extern "C" {
2485 pub fn __fabs(__x: f64) -> f64;
2486}
2487unsafe extern "C" {
2488 pub fn floor(__x: f64) -> f64;
2489}
2490unsafe extern "C" {
2491 pub fn __floor(__x: f64) -> f64;
2492}
2493unsafe extern "C" {
2494 pub fn fmod(__x: f64, __y: f64) -> f64;
2495}
2496unsafe extern "C" {
2497 pub fn __fmod(__x: f64, __y: f64) -> f64;
2498}
2499unsafe extern "C" {
2500 pub fn isinf(__value: f64) -> ::std::os::raw::c_int;
2501}
2502unsafe extern "C" {
2503 pub fn finite(__value: f64) -> ::std::os::raw::c_int;
2504}
2505unsafe extern "C" {
2506 pub fn drem(__x: f64, __y: f64) -> f64;
2507}
2508unsafe extern "C" {
2509 pub fn __drem(__x: f64, __y: f64) -> f64;
2510}
2511unsafe extern "C" {
2512 pub fn significand(__x: f64) -> f64;
2513}
2514unsafe extern "C" {
2515 pub fn __significand(__x: f64) -> f64;
2516}
2517unsafe extern "C" {
2518 pub fn copysign(__x: f64, __y: f64) -> f64;
2519}
2520unsafe extern "C" {
2521 pub fn __copysign(__x: f64, __y: f64) -> f64;
2522}
2523unsafe extern "C" {
2524 pub fn nan(__tagb: *const ::std::os::raw::c_char) -> f64;
2525}
2526unsafe extern "C" {
2527 pub fn __nan(__tagb: *const ::std::os::raw::c_char) -> f64;
2528}
2529unsafe extern "C" {
2530 pub fn isnan(__value: f64) -> ::std::os::raw::c_int;
2531}
2532unsafe extern "C" {
2533 pub fn j0(arg1: f64) -> f64;
2534}
2535unsafe extern "C" {
2536 pub fn __j0(arg1: f64) -> f64;
2537}
2538unsafe extern "C" {
2539 pub fn j1(arg1: f64) -> f64;
2540}
2541unsafe extern "C" {
2542 pub fn __j1(arg1: f64) -> f64;
2543}
2544unsafe extern "C" {
2545 pub fn jn(arg1: ::std::os::raw::c_int, arg2: f64) -> f64;
2546}
2547unsafe extern "C" {
2548 pub fn __jn(arg1: ::std::os::raw::c_int, arg2: f64) -> f64;
2549}
2550unsafe extern "C" {
2551 pub fn y0(arg1: f64) -> f64;
2552}
2553unsafe extern "C" {
2554 pub fn __y0(arg1: f64) -> f64;
2555}
2556unsafe extern "C" {
2557 pub fn y1(arg1: f64) -> f64;
2558}
2559unsafe extern "C" {
2560 pub fn __y1(arg1: f64) -> f64;
2561}
2562unsafe extern "C" {
2563 pub fn yn(arg1: ::std::os::raw::c_int, arg2: f64) -> f64;
2564}
2565unsafe extern "C" {
2566 pub fn __yn(arg1: ::std::os::raw::c_int, arg2: f64) -> f64;
2567}
2568unsafe extern "C" {
2569 pub fn erf(arg1: f64) -> f64;
2570}
2571unsafe extern "C" {
2572 pub fn __erf(arg1: f64) -> f64;
2573}
2574unsafe extern "C" {
2575 pub fn erfc(arg1: f64) -> f64;
2576}
2577unsafe extern "C" {
2578 pub fn __erfc(arg1: f64) -> f64;
2579}
2580unsafe extern "C" {
2581 pub fn lgamma(arg1: f64) -> f64;
2582}
2583unsafe extern "C" {
2584 pub fn __lgamma(arg1: f64) -> f64;
2585}
2586unsafe extern "C" {
2587 pub fn tgamma(arg1: f64) -> f64;
2588}
2589unsafe extern "C" {
2590 pub fn __tgamma(arg1: f64) -> f64;
2591}
2592unsafe extern "C" {
2593 pub fn gamma(arg1: f64) -> f64;
2594}
2595unsafe extern "C" {
2596 pub fn __gamma(arg1: f64) -> f64;
2597}
2598unsafe extern "C" {
2599 pub fn lgamma_r(arg1: f64, __signgamp: *mut ::std::os::raw::c_int) -> f64;
2600}
2601unsafe extern "C" {
2602 pub fn __lgamma_r(arg1: f64, __signgamp: *mut ::std::os::raw::c_int) -> f64;
2603}
2604unsafe extern "C" {
2605 pub fn rint(__x: f64) -> f64;
2606}
2607unsafe extern "C" {
2608 pub fn __rint(__x: f64) -> f64;
2609}
2610unsafe extern "C" {
2611 pub fn nextafter(__x: f64, __y: f64) -> f64;
2612}
2613unsafe extern "C" {
2614 pub fn __nextafter(__x: f64, __y: f64) -> f64;
2615}
2616unsafe extern "C" {
2617 pub fn nexttoward(__x: f64, __y: u128) -> f64;
2618}
2619unsafe extern "C" {
2620 pub fn __nexttoward(__x: f64, __y: u128) -> f64;
2621}
2622unsafe extern "C" {
2623 pub fn remainder(__x: f64, __y: f64) -> f64;
2624}
2625unsafe extern "C" {
2626 pub fn __remainder(__x: f64, __y: f64) -> f64;
2627}
2628unsafe extern "C" {
2629 pub fn scalbn(__x: f64, __n: ::std::os::raw::c_int) -> f64;
2630}
2631unsafe extern "C" {
2632 pub fn __scalbn(__x: f64, __n: ::std::os::raw::c_int) -> f64;
2633}
2634unsafe extern "C" {
2635 pub fn ilogb(__x: f64) -> ::std::os::raw::c_int;
2636}
2637unsafe extern "C" {
2638 pub fn __ilogb(__x: f64) -> ::std::os::raw::c_int;
2639}
2640unsafe extern "C" {
2641 pub fn scalbln(__x: f64, __n: ::std::os::raw::c_long) -> f64;
2642}
2643unsafe extern "C" {
2644 pub fn __scalbln(__x: f64, __n: ::std::os::raw::c_long) -> f64;
2645}
2646unsafe extern "C" {
2647 pub fn nearbyint(__x: f64) -> f64;
2648}
2649unsafe extern "C" {
2650 pub fn __nearbyint(__x: f64) -> f64;
2651}
2652unsafe extern "C" {
2653 pub fn round(__x: f64) -> f64;
2654}
2655unsafe extern "C" {
2656 pub fn __round(__x: f64) -> f64;
2657}
2658unsafe extern "C" {
2659 pub fn trunc(__x: f64) -> f64;
2660}
2661unsafe extern "C" {
2662 pub fn __trunc(__x: f64) -> f64;
2663}
2664unsafe extern "C" {
2665 pub fn remquo(__x: f64, __y: f64, __quo: *mut ::std::os::raw::c_int) -> f64;
2666}
2667unsafe extern "C" {
2668 pub fn __remquo(__x: f64, __y: f64, __quo: *mut ::std::os::raw::c_int) -> f64;
2669}
2670unsafe extern "C" {
2671 pub fn lrint(__x: f64) -> ::std::os::raw::c_long;
2672}
2673unsafe extern "C" {
2674 pub fn __lrint(__x: f64) -> ::std::os::raw::c_long;
2675}
2676unsafe extern "C" {
2677 pub fn llrint(__x: f64) -> ::std::os::raw::c_longlong;
2678}
2679unsafe extern "C" {
2680 pub fn __llrint(__x: f64) -> ::std::os::raw::c_longlong;
2681}
2682unsafe extern "C" {
2683 pub fn lround(__x: f64) -> ::std::os::raw::c_long;
2684}
2685unsafe extern "C" {
2686 pub fn __lround(__x: f64) -> ::std::os::raw::c_long;
2687}
2688unsafe extern "C" {
2689 pub fn llround(__x: f64) -> ::std::os::raw::c_longlong;
2690}
2691unsafe extern "C" {
2692 pub fn __llround(__x: f64) -> ::std::os::raw::c_longlong;
2693}
2694unsafe extern "C" {
2695 pub fn fdim(__x: f64, __y: f64) -> f64;
2696}
2697unsafe extern "C" {
2698 pub fn __fdim(__x: f64, __y: f64) -> f64;
2699}
2700unsafe extern "C" {
2701 pub fn fmax(__x: f64, __y: f64) -> f64;
2702}
2703unsafe extern "C" {
2704 pub fn __fmax(__x: f64, __y: f64) -> f64;
2705}
2706unsafe extern "C" {
2707 pub fn fmin(__x: f64, __y: f64) -> f64;
2708}
2709unsafe extern "C" {
2710 pub fn __fmin(__x: f64, __y: f64) -> f64;
2711}
2712unsafe extern "C" {
2713 pub fn fma(__x: f64, __y: f64, __z: f64) -> f64;
2714}
2715unsafe extern "C" {
2716 pub fn __fma(__x: f64, __y: f64, __z: f64) -> f64;
2717}
2718unsafe extern "C" {
2719 pub fn scalb(__x: f64, __n: f64) -> f64;
2720}
2721unsafe extern "C" {
2722 pub fn __scalb(__x: f64, __n: f64) -> f64;
2723}
2724unsafe extern "C" {
2725 pub fn __fpclassifyf(__value: f32) -> ::std::os::raw::c_int;
2726}
2727unsafe extern "C" {
2728 pub fn __signbitf(__value: f32) -> ::std::os::raw::c_int;
2729}
2730unsafe extern "C" {
2731 pub fn __isinff(__value: f32) -> ::std::os::raw::c_int;
2732}
2733unsafe extern "C" {
2734 pub fn __finitef(__value: f32) -> ::std::os::raw::c_int;
2735}
2736unsafe extern "C" {
2737 pub fn __isnanf(__value: f32) -> ::std::os::raw::c_int;
2738}
2739unsafe extern "C" {
2740 pub fn __iseqsigf(__x: f32, __y: f32) -> ::std::os::raw::c_int;
2741}
2742unsafe extern "C" {
2743 pub fn __issignalingf(__value: f32) -> ::std::os::raw::c_int;
2744}
2745unsafe extern "C" {
2746 pub fn acosf(__x: f32) -> f32;
2747}
2748unsafe extern "C" {
2749 pub fn __acosf(__x: f32) -> f32;
2750}
2751unsafe extern "C" {
2752 pub fn asinf(__x: f32) -> f32;
2753}
2754unsafe extern "C" {
2755 pub fn __asinf(__x: f32) -> f32;
2756}
2757unsafe extern "C" {
2758 pub fn atanf(__x: f32) -> f32;
2759}
2760unsafe extern "C" {
2761 pub fn __atanf(__x: f32) -> f32;
2762}
2763unsafe extern "C" {
2764 pub fn atan2f(__y: f32, __x: f32) -> f32;
2765}
2766unsafe extern "C" {
2767 pub fn __atan2f(__y: f32, __x: f32) -> f32;
2768}
2769unsafe extern "C" {
2770 pub fn cosf(__x: f32) -> f32;
2771}
2772unsafe extern "C" {
2773 pub fn __cosf(__x: f32) -> f32;
2774}
2775unsafe extern "C" {
2776 pub fn sinf(__x: f32) -> f32;
2777}
2778unsafe extern "C" {
2779 pub fn __sinf(__x: f32) -> f32;
2780}
2781unsafe extern "C" {
2782 pub fn tanf(__x: f32) -> f32;
2783}
2784unsafe extern "C" {
2785 pub fn __tanf(__x: f32) -> f32;
2786}
2787unsafe extern "C" {
2788 pub fn coshf(__x: f32) -> f32;
2789}
2790unsafe extern "C" {
2791 pub fn __coshf(__x: f32) -> f32;
2792}
2793unsafe extern "C" {
2794 pub fn sinhf(__x: f32) -> f32;
2795}
2796unsafe extern "C" {
2797 pub fn __sinhf(__x: f32) -> f32;
2798}
2799unsafe extern "C" {
2800 pub fn tanhf(__x: f32) -> f32;
2801}
2802unsafe extern "C" {
2803 pub fn __tanhf(__x: f32) -> f32;
2804}
2805unsafe extern "C" {
2806 pub fn acoshf(__x: f32) -> f32;
2807}
2808unsafe extern "C" {
2809 pub fn __acoshf(__x: f32) -> f32;
2810}
2811unsafe extern "C" {
2812 pub fn asinhf(__x: f32) -> f32;
2813}
2814unsafe extern "C" {
2815 pub fn __asinhf(__x: f32) -> f32;
2816}
2817unsafe extern "C" {
2818 pub fn atanhf(__x: f32) -> f32;
2819}
2820unsafe extern "C" {
2821 pub fn __atanhf(__x: f32) -> f32;
2822}
2823unsafe extern "C" {
2824 pub fn expf(__x: f32) -> f32;
2825}
2826unsafe extern "C" {
2827 pub fn __expf(__x: f32) -> f32;
2828}
2829unsafe extern "C" {
2830 pub fn frexpf(__x: f32, __exponent: *mut ::std::os::raw::c_int) -> f32;
2831}
2832unsafe extern "C" {
2833 pub fn __frexpf(__x: f32, __exponent: *mut ::std::os::raw::c_int) -> f32;
2834}
2835unsafe extern "C" {
2836 pub fn ldexpf(__x: f32, __exponent: ::std::os::raw::c_int) -> f32;
2837}
2838unsafe extern "C" {
2839 pub fn __ldexpf(__x: f32, __exponent: ::std::os::raw::c_int) -> f32;
2840}
2841unsafe extern "C" {
2842 pub fn logf(__x: f32) -> f32;
2843}
2844unsafe extern "C" {
2845 pub fn __logf(__x: f32) -> f32;
2846}
2847unsafe extern "C" {
2848 pub fn log10f(__x: f32) -> f32;
2849}
2850unsafe extern "C" {
2851 pub fn __log10f(__x: f32) -> f32;
2852}
2853unsafe extern "C" {
2854 pub fn modff(__x: f32, __iptr: *mut f32) -> f32;
2855}
2856unsafe extern "C" {
2857 pub fn __modff(__x: f32, __iptr: *mut f32) -> f32;
2858}
2859unsafe extern "C" {
2860 pub fn expm1f(__x: f32) -> f32;
2861}
2862unsafe extern "C" {
2863 pub fn __expm1f(__x: f32) -> f32;
2864}
2865unsafe extern "C" {
2866 pub fn log1pf(__x: f32) -> f32;
2867}
2868unsafe extern "C" {
2869 pub fn __log1pf(__x: f32) -> f32;
2870}
2871unsafe extern "C" {
2872 pub fn logbf(__x: f32) -> f32;
2873}
2874unsafe extern "C" {
2875 pub fn __logbf(__x: f32) -> f32;
2876}
2877unsafe extern "C" {
2878 pub fn exp2f(__x: f32) -> f32;
2879}
2880unsafe extern "C" {
2881 pub fn __exp2f(__x: f32) -> f32;
2882}
2883unsafe extern "C" {
2884 pub fn log2f(__x: f32) -> f32;
2885}
2886unsafe extern "C" {
2887 pub fn __log2f(__x: f32) -> f32;
2888}
2889unsafe extern "C" {
2890 pub fn powf(__x: f32, __y: f32) -> f32;
2891}
2892unsafe extern "C" {
2893 pub fn __powf(__x: f32, __y: f32) -> f32;
2894}
2895unsafe extern "C" {
2896 pub fn sqrtf(__x: f32) -> f32;
2897}
2898unsafe extern "C" {
2899 pub fn __sqrtf(__x: f32) -> f32;
2900}
2901unsafe extern "C" {
2902 pub fn hypotf(__x: f32, __y: f32) -> f32;
2903}
2904unsafe extern "C" {
2905 pub fn __hypotf(__x: f32, __y: f32) -> f32;
2906}
2907unsafe extern "C" {
2908 pub fn cbrtf(__x: f32) -> f32;
2909}
2910unsafe extern "C" {
2911 pub fn __cbrtf(__x: f32) -> f32;
2912}
2913unsafe extern "C" {
2914 pub fn ceilf(__x: f32) -> f32;
2915}
2916unsafe extern "C" {
2917 pub fn __ceilf(__x: f32) -> f32;
2918}
2919unsafe extern "C" {
2920 pub fn fabsf(__x: f32) -> f32;
2921}
2922unsafe extern "C" {
2923 pub fn __fabsf(__x: f32) -> f32;
2924}
2925unsafe extern "C" {
2926 pub fn floorf(__x: f32) -> f32;
2927}
2928unsafe extern "C" {
2929 pub fn __floorf(__x: f32) -> f32;
2930}
2931unsafe extern "C" {
2932 pub fn fmodf(__x: f32, __y: f32) -> f32;
2933}
2934unsafe extern "C" {
2935 pub fn __fmodf(__x: f32, __y: f32) -> f32;
2936}
2937unsafe extern "C" {
2938 pub fn isinff(__value: f32) -> ::std::os::raw::c_int;
2939}
2940unsafe extern "C" {
2941 pub fn finitef(__value: f32) -> ::std::os::raw::c_int;
2942}
2943unsafe extern "C" {
2944 pub fn dremf(__x: f32, __y: f32) -> f32;
2945}
2946unsafe extern "C" {
2947 pub fn __dremf(__x: f32, __y: f32) -> f32;
2948}
2949unsafe extern "C" {
2950 pub fn significandf(__x: f32) -> f32;
2951}
2952unsafe extern "C" {
2953 pub fn __significandf(__x: f32) -> f32;
2954}
2955unsafe extern "C" {
2956 pub fn copysignf(__x: f32, __y: f32) -> f32;
2957}
2958unsafe extern "C" {
2959 pub fn __copysignf(__x: f32, __y: f32) -> f32;
2960}
2961unsafe extern "C" {
2962 pub fn nanf(__tagb: *const ::std::os::raw::c_char) -> f32;
2963}
2964unsafe extern "C" {
2965 pub fn __nanf(__tagb: *const ::std::os::raw::c_char) -> f32;
2966}
2967unsafe extern "C" {
2968 pub fn isnanf(__value: f32) -> ::std::os::raw::c_int;
2969}
2970unsafe extern "C" {
2971 pub fn j0f(arg1: f32) -> f32;
2972}
2973unsafe extern "C" {
2974 pub fn __j0f(arg1: f32) -> f32;
2975}
2976unsafe extern "C" {
2977 pub fn j1f(arg1: f32) -> f32;
2978}
2979unsafe extern "C" {
2980 pub fn __j1f(arg1: f32) -> f32;
2981}
2982unsafe extern "C" {
2983 pub fn jnf(arg1: ::std::os::raw::c_int, arg2: f32) -> f32;
2984}
2985unsafe extern "C" {
2986 pub fn __jnf(arg1: ::std::os::raw::c_int, arg2: f32) -> f32;
2987}
2988unsafe extern "C" {
2989 pub fn y0f(arg1: f32) -> f32;
2990}
2991unsafe extern "C" {
2992 pub fn __y0f(arg1: f32) -> f32;
2993}
2994unsafe extern "C" {
2995 pub fn y1f(arg1: f32) -> f32;
2996}
2997unsafe extern "C" {
2998 pub fn __y1f(arg1: f32) -> f32;
2999}
3000unsafe extern "C" {
3001 pub fn ynf(arg1: ::std::os::raw::c_int, arg2: f32) -> f32;
3002}
3003unsafe extern "C" {
3004 pub fn __ynf(arg1: ::std::os::raw::c_int, arg2: f32) -> f32;
3005}
3006unsafe extern "C" {
3007 pub fn erff(arg1: f32) -> f32;
3008}
3009unsafe extern "C" {
3010 pub fn __erff(arg1: f32) -> f32;
3011}
3012unsafe extern "C" {
3013 pub fn erfcf(arg1: f32) -> f32;
3014}
3015unsafe extern "C" {
3016 pub fn __erfcf(arg1: f32) -> f32;
3017}
3018unsafe extern "C" {
3019 pub fn lgammaf(arg1: f32) -> f32;
3020}
3021unsafe extern "C" {
3022 pub fn __lgammaf(arg1: f32) -> f32;
3023}
3024unsafe extern "C" {
3025 pub fn tgammaf(arg1: f32) -> f32;
3026}
3027unsafe extern "C" {
3028 pub fn __tgammaf(arg1: f32) -> f32;
3029}
3030unsafe extern "C" {
3031 pub fn gammaf(arg1: f32) -> f32;
3032}
3033unsafe extern "C" {
3034 pub fn __gammaf(arg1: f32) -> f32;
3035}
3036unsafe extern "C" {
3037 pub fn lgammaf_r(arg1: f32, __signgamp: *mut ::std::os::raw::c_int) -> f32;
3038}
3039unsafe extern "C" {
3040 pub fn __lgammaf_r(arg1: f32, __signgamp: *mut ::std::os::raw::c_int) -> f32;
3041}
3042unsafe extern "C" {
3043 pub fn rintf(__x: f32) -> f32;
3044}
3045unsafe extern "C" {
3046 pub fn __rintf(__x: f32) -> f32;
3047}
3048unsafe extern "C" {
3049 pub fn nextafterf(__x: f32, __y: f32) -> f32;
3050}
3051unsafe extern "C" {
3052 pub fn __nextafterf(__x: f32, __y: f32) -> f32;
3053}
3054unsafe extern "C" {
3055 pub fn nexttowardf(__x: f32, __y: u128) -> f32;
3056}
3057unsafe extern "C" {
3058 pub fn __nexttowardf(__x: f32, __y: u128) -> f32;
3059}
3060unsafe extern "C" {
3061 pub fn remainderf(__x: f32, __y: f32) -> f32;
3062}
3063unsafe extern "C" {
3064 pub fn __remainderf(__x: f32, __y: f32) -> f32;
3065}
3066unsafe extern "C" {
3067 pub fn scalbnf(__x: f32, __n: ::std::os::raw::c_int) -> f32;
3068}
3069unsafe extern "C" {
3070 pub fn __scalbnf(__x: f32, __n: ::std::os::raw::c_int) -> f32;
3071}
3072unsafe extern "C" {
3073 pub fn ilogbf(__x: f32) -> ::std::os::raw::c_int;
3074}
3075unsafe extern "C" {
3076 pub fn __ilogbf(__x: f32) -> ::std::os::raw::c_int;
3077}
3078unsafe extern "C" {
3079 pub fn scalblnf(__x: f32, __n: ::std::os::raw::c_long) -> f32;
3080}
3081unsafe extern "C" {
3082 pub fn __scalblnf(__x: f32, __n: ::std::os::raw::c_long) -> f32;
3083}
3084unsafe extern "C" {
3085 pub fn nearbyintf(__x: f32) -> f32;
3086}
3087unsafe extern "C" {
3088 pub fn __nearbyintf(__x: f32) -> f32;
3089}
3090unsafe extern "C" {
3091 pub fn roundf(__x: f32) -> f32;
3092}
3093unsafe extern "C" {
3094 pub fn __roundf(__x: f32) -> f32;
3095}
3096unsafe extern "C" {
3097 pub fn truncf(__x: f32) -> f32;
3098}
3099unsafe extern "C" {
3100 pub fn __truncf(__x: f32) -> f32;
3101}
3102unsafe extern "C" {
3103 pub fn remquof(__x: f32, __y: f32, __quo: *mut ::std::os::raw::c_int) -> f32;
3104}
3105unsafe extern "C" {
3106 pub fn __remquof(__x: f32, __y: f32, __quo: *mut ::std::os::raw::c_int) -> f32;
3107}
3108unsafe extern "C" {
3109 pub fn lrintf(__x: f32) -> ::std::os::raw::c_long;
3110}
3111unsafe extern "C" {
3112 pub fn __lrintf(__x: f32) -> ::std::os::raw::c_long;
3113}
3114unsafe extern "C" {
3115 pub fn llrintf(__x: f32) -> ::std::os::raw::c_longlong;
3116}
3117unsafe extern "C" {
3118 pub fn __llrintf(__x: f32) -> ::std::os::raw::c_longlong;
3119}
3120unsafe extern "C" {
3121 pub fn lroundf(__x: f32) -> ::std::os::raw::c_long;
3122}
3123unsafe extern "C" {
3124 pub fn __lroundf(__x: f32) -> ::std::os::raw::c_long;
3125}
3126unsafe extern "C" {
3127 pub fn llroundf(__x: f32) -> ::std::os::raw::c_longlong;
3128}
3129unsafe extern "C" {
3130 pub fn __llroundf(__x: f32) -> ::std::os::raw::c_longlong;
3131}
3132unsafe extern "C" {
3133 pub fn fdimf(__x: f32, __y: f32) -> f32;
3134}
3135unsafe extern "C" {
3136 pub fn __fdimf(__x: f32, __y: f32) -> f32;
3137}
3138unsafe extern "C" {
3139 pub fn fmaxf(__x: f32, __y: f32) -> f32;
3140}
3141unsafe extern "C" {
3142 pub fn __fmaxf(__x: f32, __y: f32) -> f32;
3143}
3144unsafe extern "C" {
3145 pub fn fminf(__x: f32, __y: f32) -> f32;
3146}
3147unsafe extern "C" {
3148 pub fn __fminf(__x: f32, __y: f32) -> f32;
3149}
3150unsafe extern "C" {
3151 pub fn fmaf(__x: f32, __y: f32, __z: f32) -> f32;
3152}
3153unsafe extern "C" {
3154 pub fn __fmaf(__x: f32, __y: f32, __z: f32) -> f32;
3155}
3156unsafe extern "C" {
3157 pub fn scalbf(__x: f32, __n: f32) -> f32;
3158}
3159unsafe extern "C" {
3160 pub fn __scalbf(__x: f32, __n: f32) -> f32;
3161}
3162unsafe extern "C" {
3163 pub fn __fpclassifyl(__value: u128) -> ::std::os::raw::c_int;
3164}
3165unsafe extern "C" {
3166 pub fn __signbitl(__value: u128) -> ::std::os::raw::c_int;
3167}
3168unsafe extern "C" {
3169 pub fn __isinfl(__value: u128) -> ::std::os::raw::c_int;
3170}
3171unsafe extern "C" {
3172 pub fn __finitel(__value: u128) -> ::std::os::raw::c_int;
3173}
3174unsafe extern "C" {
3175 pub fn __isnanl(__value: u128) -> ::std::os::raw::c_int;
3176}
3177unsafe extern "C" {
3178 pub fn __iseqsigl(__x: u128, __y: u128) -> ::std::os::raw::c_int;
3179}
3180unsafe extern "C" {
3181 pub fn __issignalingl(__value: u128) -> ::std::os::raw::c_int;
3182}
3183unsafe extern "C" {
3184 pub fn acosl(__x: u128) -> u128;
3185}
3186unsafe extern "C" {
3187 pub fn __acosl(__x: u128) -> u128;
3188}
3189unsafe extern "C" {
3190 pub fn asinl(__x: u128) -> u128;
3191}
3192unsafe extern "C" {
3193 pub fn __asinl(__x: u128) -> u128;
3194}
3195unsafe extern "C" {
3196 pub fn atanl(__x: u128) -> u128;
3197}
3198unsafe extern "C" {
3199 pub fn __atanl(__x: u128) -> u128;
3200}
3201unsafe extern "C" {
3202 pub fn atan2l(__y: u128, __x: u128) -> u128;
3203}
3204unsafe extern "C" {
3205 pub fn __atan2l(__y: u128, __x: u128) -> u128;
3206}
3207unsafe extern "C" {
3208 pub fn cosl(__x: u128) -> u128;
3209}
3210unsafe extern "C" {
3211 pub fn __cosl(__x: u128) -> u128;
3212}
3213unsafe extern "C" {
3214 pub fn sinl(__x: u128) -> u128;
3215}
3216unsafe extern "C" {
3217 pub fn __sinl(__x: u128) -> u128;
3218}
3219unsafe extern "C" {
3220 pub fn tanl(__x: u128) -> u128;
3221}
3222unsafe extern "C" {
3223 pub fn __tanl(__x: u128) -> u128;
3224}
3225unsafe extern "C" {
3226 pub fn coshl(__x: u128) -> u128;
3227}
3228unsafe extern "C" {
3229 pub fn __coshl(__x: u128) -> u128;
3230}
3231unsafe extern "C" {
3232 pub fn sinhl(__x: u128) -> u128;
3233}
3234unsafe extern "C" {
3235 pub fn __sinhl(__x: u128) -> u128;
3236}
3237unsafe extern "C" {
3238 pub fn tanhl(__x: u128) -> u128;
3239}
3240unsafe extern "C" {
3241 pub fn __tanhl(__x: u128) -> u128;
3242}
3243unsafe extern "C" {
3244 pub fn acoshl(__x: u128) -> u128;
3245}
3246unsafe extern "C" {
3247 pub fn __acoshl(__x: u128) -> u128;
3248}
3249unsafe extern "C" {
3250 pub fn asinhl(__x: u128) -> u128;
3251}
3252unsafe extern "C" {
3253 pub fn __asinhl(__x: u128) -> u128;
3254}
3255unsafe extern "C" {
3256 pub fn atanhl(__x: u128) -> u128;
3257}
3258unsafe extern "C" {
3259 pub fn __atanhl(__x: u128) -> u128;
3260}
3261unsafe extern "C" {
3262 pub fn expl(__x: u128) -> u128;
3263}
3264unsafe extern "C" {
3265 pub fn __expl(__x: u128) -> u128;
3266}
3267unsafe extern "C" {
3268 pub fn frexpl(__x: u128, __exponent: *mut ::std::os::raw::c_int) -> u128;
3269}
3270unsafe extern "C" {
3271 pub fn __frexpl(__x: u128, __exponent: *mut ::std::os::raw::c_int) -> u128;
3272}
3273unsafe extern "C" {
3274 pub fn ldexpl(__x: u128, __exponent: ::std::os::raw::c_int) -> u128;
3275}
3276unsafe extern "C" {
3277 pub fn __ldexpl(__x: u128, __exponent: ::std::os::raw::c_int) -> u128;
3278}
3279unsafe extern "C" {
3280 pub fn logl(__x: u128) -> u128;
3281}
3282unsafe extern "C" {
3283 pub fn __logl(__x: u128) -> u128;
3284}
3285unsafe extern "C" {
3286 pub fn log10l(__x: u128) -> u128;
3287}
3288unsafe extern "C" {
3289 pub fn __log10l(__x: u128) -> u128;
3290}
3291unsafe extern "C" {
3292 pub fn modfl(__x: u128, __iptr: *mut u128) -> u128;
3293}
3294unsafe extern "C" {
3295 pub fn __modfl(__x: u128, __iptr: *mut u128) -> u128;
3296}
3297unsafe extern "C" {
3298 pub fn expm1l(__x: u128) -> u128;
3299}
3300unsafe extern "C" {
3301 pub fn __expm1l(__x: u128) -> u128;
3302}
3303unsafe extern "C" {
3304 pub fn log1pl(__x: u128) -> u128;
3305}
3306unsafe extern "C" {
3307 pub fn __log1pl(__x: u128) -> u128;
3308}
3309unsafe extern "C" {
3310 pub fn logbl(__x: u128) -> u128;
3311}
3312unsafe extern "C" {
3313 pub fn __logbl(__x: u128) -> u128;
3314}
3315unsafe extern "C" {
3316 pub fn exp2l(__x: u128) -> u128;
3317}
3318unsafe extern "C" {
3319 pub fn __exp2l(__x: u128) -> u128;
3320}
3321unsafe extern "C" {
3322 pub fn log2l(__x: u128) -> u128;
3323}
3324unsafe extern "C" {
3325 pub fn __log2l(__x: u128) -> u128;
3326}
3327unsafe extern "C" {
3328 pub fn powl(__x: u128, __y: u128) -> u128;
3329}
3330unsafe extern "C" {
3331 pub fn __powl(__x: u128, __y: u128) -> u128;
3332}
3333unsafe extern "C" {
3334 pub fn sqrtl(__x: u128) -> u128;
3335}
3336unsafe extern "C" {
3337 pub fn __sqrtl(__x: u128) -> u128;
3338}
3339unsafe extern "C" {
3340 pub fn hypotl(__x: u128, __y: u128) -> u128;
3341}
3342unsafe extern "C" {
3343 pub fn __hypotl(__x: u128, __y: u128) -> u128;
3344}
3345unsafe extern "C" {
3346 pub fn cbrtl(__x: u128) -> u128;
3347}
3348unsafe extern "C" {
3349 pub fn __cbrtl(__x: u128) -> u128;
3350}
3351unsafe extern "C" {
3352 pub fn ceill(__x: u128) -> u128;
3353}
3354unsafe extern "C" {
3355 pub fn __ceill(__x: u128) -> u128;
3356}
3357unsafe extern "C" {
3358 pub fn fabsl(__x: u128) -> u128;
3359}
3360unsafe extern "C" {
3361 pub fn __fabsl(__x: u128) -> u128;
3362}
3363unsafe extern "C" {
3364 pub fn floorl(__x: u128) -> u128;
3365}
3366unsafe extern "C" {
3367 pub fn __floorl(__x: u128) -> u128;
3368}
3369unsafe extern "C" {
3370 pub fn fmodl(__x: u128, __y: u128) -> u128;
3371}
3372unsafe extern "C" {
3373 pub fn __fmodl(__x: u128, __y: u128) -> u128;
3374}
3375unsafe extern "C" {
3376 pub fn isinfl(__value: u128) -> ::std::os::raw::c_int;
3377}
3378unsafe extern "C" {
3379 pub fn finitel(__value: u128) -> ::std::os::raw::c_int;
3380}
3381unsafe extern "C" {
3382 pub fn dreml(__x: u128, __y: u128) -> u128;
3383}
3384unsafe extern "C" {
3385 pub fn __dreml(__x: u128, __y: u128) -> u128;
3386}
3387unsafe extern "C" {
3388 pub fn significandl(__x: u128) -> u128;
3389}
3390unsafe extern "C" {
3391 pub fn __significandl(__x: u128) -> u128;
3392}
3393unsafe extern "C" {
3394 pub fn copysignl(__x: u128, __y: u128) -> u128;
3395}
3396unsafe extern "C" {
3397 pub fn __copysignl(__x: u128, __y: u128) -> u128;
3398}
3399unsafe extern "C" {
3400 pub fn nanl(__tagb: *const ::std::os::raw::c_char) -> u128;
3401}
3402unsafe extern "C" {
3403 pub fn __nanl(__tagb: *const ::std::os::raw::c_char) -> u128;
3404}
3405unsafe extern "C" {
3406 pub fn isnanl(__value: u128) -> ::std::os::raw::c_int;
3407}
3408unsafe extern "C" {
3409 pub fn j0l(arg1: u128) -> u128;
3410}
3411unsafe extern "C" {
3412 pub fn __j0l(arg1: u128) -> u128;
3413}
3414unsafe extern "C" {
3415 pub fn j1l(arg1: u128) -> u128;
3416}
3417unsafe extern "C" {
3418 pub fn __j1l(arg1: u128) -> u128;
3419}
3420unsafe extern "C" {
3421 pub fn jnl(arg1: ::std::os::raw::c_int, arg2: u128) -> u128;
3422}
3423unsafe extern "C" {
3424 pub fn __jnl(arg1: ::std::os::raw::c_int, arg2: u128) -> u128;
3425}
3426unsafe extern "C" {
3427 pub fn y0l(arg1: u128) -> u128;
3428}
3429unsafe extern "C" {
3430 pub fn __y0l(arg1: u128) -> u128;
3431}
3432unsafe extern "C" {
3433 pub fn y1l(arg1: u128) -> u128;
3434}
3435unsafe extern "C" {
3436 pub fn __y1l(arg1: u128) -> u128;
3437}
3438unsafe extern "C" {
3439 pub fn ynl(arg1: ::std::os::raw::c_int, arg2: u128) -> u128;
3440}
3441unsafe extern "C" {
3442 pub fn __ynl(arg1: ::std::os::raw::c_int, arg2: u128) -> u128;
3443}
3444unsafe extern "C" {
3445 pub fn erfl(arg1: u128) -> u128;
3446}
3447unsafe extern "C" {
3448 pub fn __erfl(arg1: u128) -> u128;
3449}
3450unsafe extern "C" {
3451 pub fn erfcl(arg1: u128) -> u128;
3452}
3453unsafe extern "C" {
3454 pub fn __erfcl(arg1: u128) -> u128;
3455}
3456unsafe extern "C" {
3457 pub fn lgammal(arg1: u128) -> u128;
3458}
3459unsafe extern "C" {
3460 pub fn __lgammal(arg1: u128) -> u128;
3461}
3462unsafe extern "C" {
3463 pub fn tgammal(arg1: u128) -> u128;
3464}
3465unsafe extern "C" {
3466 pub fn __tgammal(arg1: u128) -> u128;
3467}
3468unsafe extern "C" {
3469 pub fn gammal(arg1: u128) -> u128;
3470}
3471unsafe extern "C" {
3472 pub fn __gammal(arg1: u128) -> u128;
3473}
3474unsafe extern "C" {
3475 pub fn lgammal_r(arg1: u128, __signgamp: *mut ::std::os::raw::c_int) -> u128;
3476}
3477unsafe extern "C" {
3478 pub fn __lgammal_r(arg1: u128, __signgamp: *mut ::std::os::raw::c_int) -> u128;
3479}
3480unsafe extern "C" {
3481 pub fn rintl(__x: u128) -> u128;
3482}
3483unsafe extern "C" {
3484 pub fn __rintl(__x: u128) -> u128;
3485}
3486unsafe extern "C" {
3487 pub fn nextafterl(__x: u128, __y: u128) -> u128;
3488}
3489unsafe extern "C" {
3490 pub fn __nextafterl(__x: u128, __y: u128) -> u128;
3491}
3492unsafe extern "C" {
3493 pub fn nexttowardl(__x: u128, __y: u128) -> u128;
3494}
3495unsafe extern "C" {
3496 pub fn __nexttowardl(__x: u128, __y: u128) -> u128;
3497}
3498unsafe extern "C" {
3499 pub fn remainderl(__x: u128, __y: u128) -> u128;
3500}
3501unsafe extern "C" {
3502 pub fn __remainderl(__x: u128, __y: u128) -> u128;
3503}
3504unsafe extern "C" {
3505 pub fn scalbnl(__x: u128, __n: ::std::os::raw::c_int) -> u128;
3506}
3507unsafe extern "C" {
3508 pub fn __scalbnl(__x: u128, __n: ::std::os::raw::c_int) -> u128;
3509}
3510unsafe extern "C" {
3511 pub fn ilogbl(__x: u128) -> ::std::os::raw::c_int;
3512}
3513unsafe extern "C" {
3514 pub fn __ilogbl(__x: u128) -> ::std::os::raw::c_int;
3515}
3516unsafe extern "C" {
3517 pub fn scalblnl(__x: u128, __n: ::std::os::raw::c_long) -> u128;
3518}
3519unsafe extern "C" {
3520 pub fn __scalblnl(__x: u128, __n: ::std::os::raw::c_long) -> u128;
3521}
3522unsafe extern "C" {
3523 pub fn nearbyintl(__x: u128) -> u128;
3524}
3525unsafe extern "C" {
3526 pub fn __nearbyintl(__x: u128) -> u128;
3527}
3528unsafe extern "C" {
3529 pub fn roundl(__x: u128) -> u128;
3530}
3531unsafe extern "C" {
3532 pub fn __roundl(__x: u128) -> u128;
3533}
3534unsafe extern "C" {
3535 pub fn truncl(__x: u128) -> u128;
3536}
3537unsafe extern "C" {
3538 pub fn __truncl(__x: u128) -> u128;
3539}
3540unsafe extern "C" {
3541 pub fn remquol(__x: u128, __y: u128, __quo: *mut ::std::os::raw::c_int) -> u128;
3542}
3543unsafe extern "C" {
3544 pub fn __remquol(__x: u128, __y: u128, __quo: *mut ::std::os::raw::c_int) -> u128;
3545}
3546unsafe extern "C" {
3547 pub fn lrintl(__x: u128) -> ::std::os::raw::c_long;
3548}
3549unsafe extern "C" {
3550 pub fn __lrintl(__x: u128) -> ::std::os::raw::c_long;
3551}
3552unsafe extern "C" {
3553 pub fn llrintl(__x: u128) -> ::std::os::raw::c_longlong;
3554}
3555unsafe extern "C" {
3556 pub fn __llrintl(__x: u128) -> ::std::os::raw::c_longlong;
3557}
3558unsafe extern "C" {
3559 pub fn lroundl(__x: u128) -> ::std::os::raw::c_long;
3560}
3561unsafe extern "C" {
3562 pub fn __lroundl(__x: u128) -> ::std::os::raw::c_long;
3563}
3564unsafe extern "C" {
3565 pub fn llroundl(__x: u128) -> ::std::os::raw::c_longlong;
3566}
3567unsafe extern "C" {
3568 pub fn __llroundl(__x: u128) -> ::std::os::raw::c_longlong;
3569}
3570unsafe extern "C" {
3571 pub fn fdiml(__x: u128, __y: u128) -> u128;
3572}
3573unsafe extern "C" {
3574 pub fn __fdiml(__x: u128, __y: u128) -> u128;
3575}
3576unsafe extern "C" {
3577 pub fn fmaxl(__x: u128, __y: u128) -> u128;
3578}
3579unsafe extern "C" {
3580 pub fn __fmaxl(__x: u128, __y: u128) -> u128;
3581}
3582unsafe extern "C" {
3583 pub fn fminl(__x: u128, __y: u128) -> u128;
3584}
3585unsafe extern "C" {
3586 pub fn __fminl(__x: u128, __y: u128) -> u128;
3587}
3588unsafe extern "C" {
3589 pub fn fmal(__x: u128, __y: u128, __z: u128) -> u128;
3590}
3591unsafe extern "C" {
3592 pub fn __fmal(__x: u128, __y: u128, __z: u128) -> u128;
3593}
3594unsafe extern "C" {
3595 pub fn scalbl(__x: u128, __n: u128) -> u128;
3596}
3597unsafe extern "C" {
3598 pub fn __scalbl(__x: u128, __n: u128) -> u128;
3599}
3600unsafe extern "C" {
3601 pub static mut signgam: ::std::os::raw::c_int;
3602}
3603pub const FP_NAN: _bindgen_ty_1 = 0;
3604pub const FP_INFINITE: _bindgen_ty_1 = 1;
3605pub const FP_ZERO: _bindgen_ty_1 = 2;
3606pub const FP_SUBNORMAL: _bindgen_ty_1 = 3;
3607pub const FP_NORMAL: _bindgen_ty_1 = 4;
3608pub type _bindgen_ty_1 = ::std::os::raw::c_uint;
3609pub const ProductKind_PRODUCT_ANY: ProductKind = 0;
3610pub const ProductKind_PRODUCT_GRIB: ProductKind = 1;
3611pub const ProductKind_PRODUCT_BUFR: ProductKind = 2;
3612pub const ProductKind_PRODUCT_METAR: ProductKind = 3;
3613pub const ProductKind_PRODUCT_GTS: ProductKind = 4;
3614pub const ProductKind_PRODUCT_TAF: ProductKind = 5;
3615pub type ProductKind = ::std::os::raw::c_uint;
3616#[repr(C)]
3617#[derive(Debug, Copy, Clone)]
3618pub struct grib_key_value_list {
3619 _unused: [u8; 0],
3620}
3621#[repr(C)]
3622#[derive(Debug, Copy, Clone)]
3623pub struct grib_values {
3624 pub name: *const ::std::os::raw::c_char,
3625 pub type_: ::std::os::raw::c_int,
3626 pub long_value: ::std::os::raw::c_long,
3627 pub double_value: f64,
3628 pub string_value: *const ::std::os::raw::c_char,
3629 pub error: ::std::os::raw::c_int,
3630 pub has_value: ::std::os::raw::c_int,
3631 pub equal: ::std::os::raw::c_int,
3632 pub next: *mut grib_values,
3633}
3634#[repr(C)]
3635#[derive(Debug, Copy, Clone)]
3636pub struct grib_handle {
3637 _unused: [u8; 0],
3638}
3639#[repr(C)]
3640#[derive(Debug, Copy, Clone)]
3641pub struct grib_multi_handle {
3642 _unused: [u8; 0],
3643}
3644#[repr(C)]
3645#[derive(Debug, Copy, Clone)]
3646pub struct grib_context {
3647 _unused: [u8; 0],
3648}
3649#[repr(C)]
3650#[derive(Debug, Copy, Clone)]
3651pub struct grib_iterator {
3652 _unused: [u8; 0],
3653}
3654#[repr(C)]
3655#[derive(Debug, Copy, Clone)]
3656pub struct grib_nearest {
3657 _unused: [u8; 0],
3658}
3659#[repr(C)]
3660#[derive(Debug, Copy, Clone)]
3661pub struct grib_keys_iterator {
3662 _unused: [u8; 0],
3663}
3664#[repr(C)]
3665#[derive(Debug, Copy, Clone)]
3666pub struct bufr_keys_iterator {
3667 _unused: [u8; 0],
3668}
3669#[repr(C)]
3670#[derive(Debug, Copy, Clone)]
3671pub struct grib_fieldset {
3672 _unused: [u8; 0],
3673}
3674#[repr(C)]
3675#[derive(Debug, Copy, Clone)]
3676pub struct grib_order_by {
3677 _unused: [u8; 0],
3678}
3679#[repr(C)]
3680#[derive(Debug, Copy, Clone)]
3681pub struct grib_where {
3682 _unused: [u8; 0],
3683}
3684#[repr(C)]
3685#[derive(Debug, Copy, Clone)]
3686pub struct grib_sarray {
3687 _unused: [u8; 0],
3688}
3689#[repr(C)]
3690#[derive(Debug, Copy, Clone)]
3691pub struct grib_oarray {
3692 _unused: [u8; 0],
3693}
3694#[repr(C)]
3695#[derive(Debug, Copy, Clone)]
3696pub struct grib_darray {
3697 _unused: [u8; 0],
3698}
3699#[repr(C)]
3700#[derive(Debug, Copy, Clone)]
3701pub struct grib_iarray {
3702 _unused: [u8; 0],
3703}
3704#[repr(C)]
3705#[derive(Debug, Copy, Clone)]
3706pub struct grib_vdarray {
3707 _unused: [u8; 0],
3708}
3709#[repr(C)]
3710#[derive(Debug, Copy, Clone)]
3711pub struct grib_vsarray {
3712 _unused: [u8; 0],
3713}
3714#[repr(C)]
3715#[derive(Debug, Copy, Clone)]
3716pub struct grib_viarray {
3717 _unused: [u8; 0],
3718}
3719#[repr(C)]
3720#[derive(Debug, Copy, Clone)]
3721pub struct bufr_descriptor {
3722 _unused: [u8; 0],
3723}
3724#[repr(C)]
3725#[derive(Debug, Copy, Clone)]
3726pub struct bufr_descriptors_array {
3727 _unused: [u8; 0],
3728}
3729#[repr(C)]
3730#[derive(Debug, Copy, Clone)]
3731pub struct bufr_descriptors_map_list {
3732 _unused: [u8; 0],
3733}
3734unsafe extern "C" {
3735 pub fn grib_fieldset_new_from_files(
3736 c: *mut grib_context,
3737 filenames: *mut *const ::std::os::raw::c_char,
3738 nfiles: ::std::os::raw::c_int,
3739 keys: *mut *const ::std::os::raw::c_char,
3740 nkeys: ::std::os::raw::c_int,
3741 where_string: *const ::std::os::raw::c_char,
3742 order_by_string: *const ::std::os::raw::c_char,
3743 err: *mut ::std::os::raw::c_int,
3744 ) -> *mut grib_fieldset;
3745}
3746unsafe extern "C" {
3747 pub fn grib_fieldset_delete(set: *mut grib_fieldset);
3748}
3749unsafe extern "C" {
3750 pub fn grib_fieldset_rewind(set: *mut grib_fieldset);
3751}
3752unsafe extern "C" {
3753 pub fn grib_fieldset_apply_order_by(
3754 set: *mut grib_fieldset,
3755 order_by_string: *const ::std::os::raw::c_char,
3756 ) -> ::std::os::raw::c_int;
3757}
3758unsafe extern "C" {
3759 pub fn grib_fieldset_next_handle(
3760 set: *mut grib_fieldset,
3761 err: *mut ::std::os::raw::c_int,
3762 ) -> *mut grib_handle;
3763}
3764unsafe extern "C" {
3765 pub fn grib_fieldset_count(set: *const grib_fieldset) -> ::std::os::raw::c_int;
3766}
3767unsafe extern "C" {
3768 pub fn grib_values_check(
3769 h: *mut grib_handle,
3770 values: *mut grib_values,
3771 count: ::std::os::raw::c_int,
3772 ) -> ::std::os::raw::c_int;
3773}
3774#[repr(C)]
3775#[derive(Debug, Copy, Clone)]
3776pub struct grib_index {
3777 _unused: [u8; 0],
3778}
3779unsafe extern "C" {
3780 pub fn grib_index_new_from_file(
3781 c: *mut grib_context,
3782 filename: *const ::std::os::raw::c_char,
3783 keys: *const ::std::os::raw::c_char,
3784 err: *mut ::std::os::raw::c_int,
3785 ) -> *mut grib_index;
3786}
3787unsafe extern "C" {
3788 pub fn grib_index_new(
3789 c: *mut grib_context,
3790 keys: *const ::std::os::raw::c_char,
3791 err: *mut ::std::os::raw::c_int,
3792 ) -> *mut grib_index;
3793}
3794unsafe extern "C" {
3795 pub fn codes_index_set_product_kind(
3796 index: *mut grib_index,
3797 product_kind: ProductKind,
3798 ) -> ::std::os::raw::c_int;
3799}
3800unsafe extern "C" {
3801 pub fn codes_index_set_unpack_bufr(
3802 index: *mut grib_index,
3803 unpack: ::std::os::raw::c_int,
3804 ) -> ::std::os::raw::c_int;
3805}
3806unsafe extern "C" {
3807 pub fn grib_index_add_file(
3808 index: *mut grib_index,
3809 filename: *const ::std::os::raw::c_char,
3810 ) -> ::std::os::raw::c_int;
3811}
3812unsafe extern "C" {
3813 pub fn grib_index_write(
3814 index: *mut grib_index,
3815 filename: *const ::std::os::raw::c_char,
3816 ) -> ::std::os::raw::c_int;
3817}
3818unsafe extern "C" {
3819 pub fn grib_index_read(
3820 c: *mut grib_context,
3821 filename: *const ::std::os::raw::c_char,
3822 err: *mut ::std::os::raw::c_int,
3823 ) -> *mut grib_index;
3824}
3825unsafe extern "C" {
3826 pub fn grib_index_get_size(
3827 index: *const grib_index,
3828 key: *const ::std::os::raw::c_char,
3829 size: *mut usize,
3830 ) -> ::std::os::raw::c_int;
3831}
3832unsafe extern "C" {
3833 pub fn grib_index_get_long(
3834 index: *const grib_index,
3835 key: *const ::std::os::raw::c_char,
3836 values: *mut ::std::os::raw::c_long,
3837 size: *mut usize,
3838 ) -> ::std::os::raw::c_int;
3839}
3840unsafe extern "C" {
3841 pub fn grib_index_get_double(
3842 index: *const grib_index,
3843 key: *const ::std::os::raw::c_char,
3844 values: *mut f64,
3845 size: *mut usize,
3846 ) -> ::std::os::raw::c_int;
3847}
3848unsafe extern "C" {
3849 pub fn grib_index_get_string(
3850 index: *const grib_index,
3851 key: *const ::std::os::raw::c_char,
3852 values: *mut *mut ::std::os::raw::c_char,
3853 size: *mut usize,
3854 ) -> ::std::os::raw::c_int;
3855}
3856unsafe extern "C" {
3857 pub fn grib_index_select_long(
3858 index: *mut grib_index,
3859 key: *const ::std::os::raw::c_char,
3860 value: ::std::os::raw::c_long,
3861 ) -> ::std::os::raw::c_int;
3862}
3863unsafe extern "C" {
3864 pub fn grib_index_select_double(
3865 index: *mut grib_index,
3866 key: *const ::std::os::raw::c_char,
3867 value: f64,
3868 ) -> ::std::os::raw::c_int;
3869}
3870unsafe extern "C" {
3871 pub fn grib_index_select_string(
3872 index: *mut grib_index,
3873 key: *const ::std::os::raw::c_char,
3874 value: *const ::std::os::raw::c_char,
3875 ) -> ::std::os::raw::c_int;
3876}
3877unsafe extern "C" {
3878 pub fn grib_handle_new_from_index(
3879 index: *mut grib_index,
3880 err: *mut ::std::os::raw::c_int,
3881 ) -> *mut grib_handle;
3882}
3883unsafe extern "C" {
3884 pub fn grib_index_delete(index: *mut grib_index);
3885}
3886unsafe extern "C" {
3887 pub fn grib_count_in_file(
3888 c: *mut grib_context,
3889 f: *mut FILE,
3890 n: *mut ::std::os::raw::c_int,
3891 ) -> ::std::os::raw::c_int;
3892}
3893unsafe extern "C" {
3894 pub fn grib_count_in_filename(
3895 c: *mut grib_context,
3896 filename: *const ::std::os::raw::c_char,
3897 n: *mut ::std::os::raw::c_int,
3898 ) -> ::std::os::raw::c_int;
3899}
3900unsafe extern "C" {
3901 pub fn grib_handle_new_from_file(
3902 c: *mut grib_context,
3903 f: *mut FILE,
3904 error: *mut ::std::os::raw::c_int,
3905 ) -> *mut grib_handle;
3906}
3907unsafe extern "C" {
3908 pub fn grib_write_message(
3909 h: *const grib_handle,
3910 file: *const ::std::os::raw::c_char,
3911 mode: *const ::std::os::raw::c_char,
3912 ) -> ::std::os::raw::c_int;
3913}
3914#[repr(C)]
3915#[derive(Debug, Copy, Clone)]
3916pub struct grib_string_list {
3917 pub value: *mut ::std::os::raw::c_char,
3918 pub count: ::std::os::raw::c_int,
3919 pub next: *mut grib_string_list,
3920}
3921unsafe extern "C" {
3922 pub fn grib_util_sections_copy(
3923 hfrom: *mut grib_handle,
3924 hto: *mut grib_handle,
3925 what: ::std::os::raw::c_int,
3926 err: *mut ::std::os::raw::c_int,
3927 ) -> *mut grib_handle;
3928}
3929unsafe extern "C" {
3930 pub fn grib_util_get_param_id(
3931 mars_param: *const ::std::os::raw::c_char,
3932 ) -> *mut grib_string_list;
3933}
3934unsafe extern "C" {
3935 pub fn grib_util_get_mars_param(
3936 param_id: *const ::std::os::raw::c_char,
3937 ) -> *mut grib_string_list;
3938}
3939unsafe extern "C" {
3940 pub fn grib_handle_new_from_message(
3941 c: *mut grib_context,
3942 data: *const ::std::os::raw::c_void,
3943 data_len: usize,
3944 ) -> *mut grib_handle;
3945}
3946unsafe extern "C" {
3947 pub fn grib_handle_new_from_multi_message(
3948 c: *mut grib_context,
3949 data: *mut *mut ::std::os::raw::c_void,
3950 data_len: *mut usize,
3951 error: *mut ::std::os::raw::c_int,
3952 ) -> *mut grib_handle;
3953}
3954unsafe extern "C" {
3955 pub fn grib_handle_new_from_message_copy(
3956 c: *mut grib_context,
3957 data: *const ::std::os::raw::c_void,
3958 data_len: usize,
3959 ) -> *mut grib_handle;
3960}
3961unsafe extern "C" {
3962 pub fn grib_handle_new_from_samples(
3963 c: *mut grib_context,
3964 sample_name: *const ::std::os::raw::c_char,
3965 ) -> *mut grib_handle;
3966}
3967unsafe extern "C" {
3968 pub fn grib_handle_clone(h: *const grib_handle) -> *mut grib_handle;
3969}
3970unsafe extern "C" {
3971 pub fn grib_handle_clone_headers_only(h: *const grib_handle) -> *mut grib_handle;
3972}
3973unsafe extern "C" {
3974 pub fn grib_handle_delete(h: *mut grib_handle) -> ::std::os::raw::c_int;
3975}
3976unsafe extern "C" {
3977 pub fn grib_multi_handle_new(c: *mut grib_context) -> *mut grib_multi_handle;
3978}
3979unsafe extern "C" {
3980 pub fn grib_multi_handle_append(
3981 h: *mut grib_handle,
3982 start_section: ::std::os::raw::c_int,
3983 mh: *mut grib_multi_handle,
3984 ) -> ::std::os::raw::c_int;
3985}
3986unsafe extern "C" {
3987 pub fn grib_multi_handle_delete(mh: *mut grib_multi_handle) -> ::std::os::raw::c_int;
3988}
3989unsafe extern "C" {
3990 pub fn grib_multi_handle_write(
3991 mh: *mut grib_multi_handle,
3992 f: *mut FILE,
3993 ) -> ::std::os::raw::c_int;
3994}
3995unsafe extern "C" {
3996 pub fn grib_get_message(
3997 h: *const grib_handle,
3998 message: *mut *const ::std::os::raw::c_void,
3999 message_length: *mut usize,
4000 ) -> ::std::os::raw::c_int;
4001}
4002unsafe extern "C" {
4003 pub fn grib_get_message_copy(
4004 h: *const grib_handle,
4005 message: *mut ::std::os::raw::c_void,
4006 message_length: *mut usize,
4007 ) -> ::std::os::raw::c_int;
4008}
4009unsafe extern "C" {
4010 pub fn grib_iterator_new(
4011 h: *const grib_handle,
4012 flags: ::std::os::raw::c_ulong,
4013 error: *mut ::std::os::raw::c_int,
4014 ) -> *mut grib_iterator;
4015}
4016unsafe extern "C" {
4017 pub fn grib_get_data(
4018 h: *const grib_handle,
4019 lats: *mut f64,
4020 lons: *mut f64,
4021 values: *mut f64,
4022 ) -> ::std::os::raw::c_int;
4023}
4024unsafe extern "C" {
4025 pub fn grib_iterator_next(
4026 i: *mut grib_iterator,
4027 lat: *mut f64,
4028 lon: *mut f64,
4029 value: *mut f64,
4030 ) -> ::std::os::raw::c_int;
4031}
4032unsafe extern "C" {
4033 pub fn grib_iterator_previous(
4034 i: *mut grib_iterator,
4035 lat: *mut f64,
4036 lon: *mut f64,
4037 value: *mut f64,
4038 ) -> ::std::os::raw::c_int;
4039}
4040unsafe extern "C" {
4041 pub fn grib_iterator_has_next(i: *mut grib_iterator) -> ::std::os::raw::c_int;
4042}
4043unsafe extern "C" {
4044 pub fn grib_iterator_reset(i: *mut grib_iterator) -> ::std::os::raw::c_int;
4045}
4046unsafe extern "C" {
4047 pub fn grib_iterator_delete(i: *mut grib_iterator) -> ::std::os::raw::c_int;
4048}
4049unsafe extern "C" {
4050 pub fn grib_nearest_new(
4051 h: *const grib_handle,
4052 error: *mut ::std::os::raw::c_int,
4053 ) -> *mut grib_nearest;
4054}
4055unsafe extern "C" {
4056 pub fn grib_nearest_find(
4057 nearest: *mut grib_nearest,
4058 h: *const grib_handle,
4059 inlat: f64,
4060 inlon: f64,
4061 flags: ::std::os::raw::c_ulong,
4062 outlats: *mut f64,
4063 outlons: *mut f64,
4064 values: *mut f64,
4065 distances: *mut f64,
4066 indexes: *mut ::std::os::raw::c_int,
4067 len: *mut usize,
4068 ) -> ::std::os::raw::c_int;
4069}
4070unsafe extern "C" {
4071 pub fn grib_nearest_delete(nearest: *mut grib_nearest) -> ::std::os::raw::c_int;
4072}
4073unsafe extern "C" {
4074 pub fn grib_nearest_find_multiple(
4075 h: *const grib_handle,
4076 is_lsm: ::std::os::raw::c_int,
4077 inlats: *const f64,
4078 inlons: *const f64,
4079 npoints: ::std::os::raw::c_long,
4080 outlats: *mut f64,
4081 outlons: *mut f64,
4082 values: *mut f64,
4083 distances: *mut f64,
4084 indexes: *mut ::std::os::raw::c_int,
4085 ) -> ::std::os::raw::c_int;
4086}
4087unsafe extern "C" {
4088 pub fn grib_get_offset(
4089 h: *const grib_handle,
4090 key: *const ::std::os::raw::c_char,
4091 offset: *mut usize,
4092 ) -> ::std::os::raw::c_int;
4093}
4094unsafe extern "C" {
4095 pub fn grib_get_size(
4096 h: *const grib_handle,
4097 key: *const ::std::os::raw::c_char,
4098 size: *mut usize,
4099 ) -> ::std::os::raw::c_int;
4100}
4101unsafe extern "C" {
4102 pub fn grib_get_length(
4103 h: *const grib_handle,
4104 key: *const ::std::os::raw::c_char,
4105 length: *mut usize,
4106 ) -> ::std::os::raw::c_int;
4107}
4108unsafe extern "C" {
4109 pub fn grib_get_long(
4110 h: *const grib_handle,
4111 key: *const ::std::os::raw::c_char,
4112 value: *mut ::std::os::raw::c_long,
4113 ) -> ::std::os::raw::c_int;
4114}
4115unsafe extern "C" {
4116 pub fn grib_get_double(
4117 h: *const grib_handle,
4118 key: *const ::std::os::raw::c_char,
4119 value: *mut f64,
4120 ) -> ::std::os::raw::c_int;
4121}
4122unsafe extern "C" {
4123 pub fn grib_get_float(
4124 h: *const grib_handle,
4125 key: *const ::std::os::raw::c_char,
4126 value: *mut f32,
4127 ) -> ::std::os::raw::c_int;
4128}
4129unsafe extern "C" {
4130 pub fn grib_get_double_element(
4131 h: *const grib_handle,
4132 key: *const ::std::os::raw::c_char,
4133 i: ::std::os::raw::c_int,
4134 value: *mut f64,
4135 ) -> ::std::os::raw::c_int;
4136}
4137unsafe extern "C" {
4138 pub fn grib_get_float_element(
4139 h: *const grib_handle,
4140 key: *const ::std::os::raw::c_char,
4141 i: ::std::os::raw::c_int,
4142 value: *mut f32,
4143 ) -> ::std::os::raw::c_int;
4144}
4145unsafe extern "C" {
4146 pub fn grib_get_double_elements(
4147 h: *const grib_handle,
4148 key: *const ::std::os::raw::c_char,
4149 index_array: *const ::std::os::raw::c_int,
4150 size: ::std::os::raw::c_long,
4151 value: *mut f64,
4152 ) -> ::std::os::raw::c_int;
4153}
4154unsafe extern "C" {
4155 pub fn grib_get_float_elements(
4156 h: *const grib_handle,
4157 key: *const ::std::os::raw::c_char,
4158 index_array: *const ::std::os::raw::c_int,
4159 size: ::std::os::raw::c_long,
4160 value: *mut f32,
4161 ) -> ::std::os::raw::c_int;
4162}
4163unsafe extern "C" {
4164 pub fn grib_get_string(
4165 h: *const grib_handle,
4166 key: *const ::std::os::raw::c_char,
4167 mesg: *mut ::std::os::raw::c_char,
4168 length: *mut usize,
4169 ) -> ::std::os::raw::c_int;
4170}
4171unsafe extern "C" {
4172 pub fn grib_get_string_array(
4173 h: *const grib_handle,
4174 key: *const ::std::os::raw::c_char,
4175 vals: *mut *mut ::std::os::raw::c_char,
4176 length: *mut usize,
4177 ) -> ::std::os::raw::c_int;
4178}
4179unsafe extern "C" {
4180 pub fn grib_get_bytes(
4181 h: *const grib_handle,
4182 key: *const ::std::os::raw::c_char,
4183 bytes: *mut ::std::os::raw::c_uchar,
4184 length: *mut usize,
4185 ) -> ::std::os::raw::c_int;
4186}
4187unsafe extern "C" {
4188 pub fn grib_get_double_array(
4189 h: *const grib_handle,
4190 key: *const ::std::os::raw::c_char,
4191 vals: *mut f64,
4192 length: *mut usize,
4193 ) -> ::std::os::raw::c_int;
4194}
4195unsafe extern "C" {
4196 pub fn grib_get_float_array(
4197 h: *const grib_handle,
4198 key: *const ::std::os::raw::c_char,
4199 vals: *mut f32,
4200 length: *mut usize,
4201 ) -> ::std::os::raw::c_int;
4202}
4203unsafe extern "C" {
4204 pub fn grib_get_long_array(
4205 h: *const grib_handle,
4206 key: *const ::std::os::raw::c_char,
4207 vals: *mut ::std::os::raw::c_long,
4208 length: *mut usize,
4209 ) -> ::std::os::raw::c_int;
4210}
4211unsafe extern "C" {
4212 pub fn grib_copy_namespace(
4213 dest: *mut grib_handle,
4214 name: *const ::std::os::raw::c_char,
4215 src: *mut grib_handle,
4216 ) -> ::std::os::raw::c_int;
4217}
4218unsafe extern "C" {
4219 pub fn grib_set_long(
4220 h: *mut grib_handle,
4221 key: *const ::std::os::raw::c_char,
4222 val: ::std::os::raw::c_long,
4223 ) -> ::std::os::raw::c_int;
4224}
4225unsafe extern "C" {
4226 pub fn grib_set_double(
4227 h: *mut grib_handle,
4228 key: *const ::std::os::raw::c_char,
4229 val: f64,
4230 ) -> ::std::os::raw::c_int;
4231}
4232unsafe extern "C" {
4233 pub fn grib_set_string(
4234 h: *mut grib_handle,
4235 key: *const ::std::os::raw::c_char,
4236 mesg: *const ::std::os::raw::c_char,
4237 length: *mut usize,
4238 ) -> ::std::os::raw::c_int;
4239}
4240unsafe extern "C" {
4241 pub fn grib_set_bytes(
4242 h: *mut grib_handle,
4243 key: *const ::std::os::raw::c_char,
4244 bytes: *const ::std::os::raw::c_uchar,
4245 length: *mut usize,
4246 ) -> ::std::os::raw::c_int;
4247}
4248unsafe extern "C" {
4249 pub fn grib_set_double_array(
4250 h: *mut grib_handle,
4251 key: *const ::std::os::raw::c_char,
4252 vals: *const f64,
4253 length: usize,
4254 ) -> ::std::os::raw::c_int;
4255}
4256unsafe extern "C" {
4257 pub fn grib_set_float_array(
4258 h: *mut grib_handle,
4259 key: *const ::std::os::raw::c_char,
4260 vals: *const f32,
4261 length: usize,
4262 ) -> ::std::os::raw::c_int;
4263}
4264unsafe extern "C" {
4265 pub fn grib_set_force_double_array(
4266 h: *mut grib_handle,
4267 key: *const ::std::os::raw::c_char,
4268 vals: *const f64,
4269 length: usize,
4270 ) -> ::std::os::raw::c_int;
4271}
4272unsafe extern "C" {
4273 pub fn grib_set_force_float_array(
4274 h: *mut grib_handle,
4275 key: *const ::std::os::raw::c_char,
4276 vals: *const f32,
4277 length: usize,
4278 ) -> ::std::os::raw::c_int;
4279}
4280unsafe extern "C" {
4281 pub fn grib_set_long_array(
4282 h: *mut grib_handle,
4283 key: *const ::std::os::raw::c_char,
4284 vals: *const ::std::os::raw::c_long,
4285 length: usize,
4286 ) -> ::std::os::raw::c_int;
4287}
4288unsafe extern "C" {
4289 pub fn grib_set_string_array(
4290 h: *mut grib_handle,
4291 key: *const ::std::os::raw::c_char,
4292 vals: *mut *const ::std::os::raw::c_char,
4293 length: usize,
4294 ) -> ::std::os::raw::c_int;
4295}
4296unsafe extern "C" {
4297 pub fn grib_dump_content(
4298 h: *const grib_handle,
4299 out: *mut FILE,
4300 mode: *const ::std::os::raw::c_char,
4301 option_flags: ::std::os::raw::c_ulong,
4302 arg: *mut ::std::os::raw::c_void,
4303 );
4304}
4305unsafe extern "C" {
4306 pub fn grib_dump_action_tree(c: *mut grib_context, f: *mut FILE);
4307}
4308pub type grib_free_proc = ::std::option::Option<
4309 unsafe extern "C" fn(c: *const grib_context, data: *mut ::std::os::raw::c_void),
4310>;
4311pub type grib_malloc_proc = ::std::option::Option<
4312 unsafe extern "C" fn(c: *const grib_context, length: usize) -> *mut ::std::os::raw::c_void,
4313>;
4314pub type grib_realloc_proc = ::std::option::Option<
4315 unsafe extern "C" fn(
4316 c: *const grib_context,
4317 data: *mut ::std::os::raw::c_void,
4318 length: usize,
4319 ) -> *mut ::std::os::raw::c_void,
4320>;
4321pub type grib_log_proc = ::std::option::Option<
4322 unsafe extern "C" fn(
4323 c: *const grib_context,
4324 level: ::std::os::raw::c_int,
4325 mesg: *const ::std::os::raw::c_char,
4326 ),
4327>;
4328pub type grib_print_proc = ::std::option::Option<
4329 unsafe extern "C" fn(
4330 c: *const grib_context,
4331 descriptor: *mut ::std::os::raw::c_void,
4332 mesg: *const ::std::os::raw::c_char,
4333 ),
4334>;
4335pub type grib_data_read_proc = ::std::option::Option<
4336 unsafe extern "C" fn(
4337 c: *const grib_context,
4338 ptr: *mut ::std::os::raw::c_void,
4339 size: usize,
4340 stream: *mut ::std::os::raw::c_void,
4341 ) -> usize,
4342>;
4343pub type grib_data_write_proc = ::std::option::Option<
4344 unsafe extern "C" fn(
4345 c: *const grib_context,
4346 ptr: *const ::std::os::raw::c_void,
4347 size: usize,
4348 stream: *mut ::std::os::raw::c_void,
4349 ) -> usize,
4350>;
4351pub type grib_data_tell_proc = ::std::option::Option<
4352 unsafe extern "C" fn(c: *const grib_context, stream: *mut ::std::os::raw::c_void) -> off_t,
4353>;
4354pub type grib_data_seek_proc = ::std::option::Option<
4355 unsafe extern "C" fn(
4356 c: *const grib_context,
4357 offset: off_t,
4358 whence: ::std::os::raw::c_int,
4359 stream: *mut ::std::os::raw::c_void,
4360 ) -> off_t,
4361>;
4362pub type grib_data_eof_proc = ::std::option::Option<
4363 unsafe extern "C" fn(
4364 c: *const grib_context,
4365 stream: *mut ::std::os::raw::c_void,
4366 ) -> ::std::os::raw::c_int,
4367>;
4368unsafe extern "C" {
4369 pub fn grib_context_get_default() -> *mut grib_context;
4370}
4371unsafe extern "C" {
4372 pub fn grib_context_delete(c: *mut grib_context);
4373}
4374unsafe extern "C" {
4375 pub fn grib_gts_header_on(c: *mut grib_context);
4376}
4377unsafe extern "C" {
4378 pub fn grib_gts_header_off(c: *mut grib_context);
4379}
4380unsafe extern "C" {
4381 pub fn grib_gribex_mode_on(c: *mut grib_context);
4382}
4383unsafe extern "C" {
4384 pub fn grib_get_gribex_mode(c: *mut grib_context) -> ::std::os::raw::c_int;
4385}
4386unsafe extern "C" {
4387 pub fn grib_gribex_mode_off(c: *mut grib_context);
4388}
4389unsafe extern "C" {
4390 pub fn grib_context_set_definitions_path(
4391 c: *mut grib_context,
4392 path: *const ::std::os::raw::c_char,
4393 );
4394}
4395unsafe extern "C" {
4396 pub fn grib_context_set_samples_path(c: *mut grib_context, path: *const ::std::os::raw::c_char);
4397}
4398unsafe extern "C" {
4399 pub fn grib_context_set_memory_proc(
4400 c: *mut grib_context,
4401 griballoc: grib_malloc_proc,
4402 gribfree: grib_free_proc,
4403 gribrealloc: grib_realloc_proc,
4404 );
4405}
4406unsafe extern "C" {
4407 pub fn grib_context_set_persistent_memory_proc(
4408 c: *mut grib_context,
4409 griballoc: grib_malloc_proc,
4410 gribfree: grib_free_proc,
4411 );
4412}
4413unsafe extern "C" {
4414 pub fn grib_context_set_buffer_memory_proc(
4415 c: *mut grib_context,
4416 griballoc: grib_malloc_proc,
4417 gribfree: grib_free_proc,
4418 gribrealloc: grib_realloc_proc,
4419 );
4420}
4421unsafe extern "C" {
4422 pub fn grib_context_set_print_proc(c: *mut grib_context, printp: grib_print_proc);
4423}
4424unsafe extern "C" {
4425 pub fn grib_context_set_logging_proc(c: *mut grib_context, logp: grib_log_proc);
4426}
4427unsafe extern "C" {
4428 pub fn grib_multi_support_on(c: *mut grib_context);
4429}
4430unsafe extern "C" {
4431 pub fn grib_multi_support_off(c: *mut grib_context);
4432}
4433unsafe extern "C" {
4434 pub fn grib_multi_support_reset_file(c: *mut grib_context, f: *mut FILE);
4435}
4436unsafe extern "C" {
4437 pub fn grib_samples_path(c: *const grib_context) -> *mut ::std::os::raw::c_char;
4438}
4439unsafe extern "C" {
4440 pub fn grib_definition_path(c: *const grib_context) -> *mut ::std::os::raw::c_char;
4441}
4442unsafe extern "C" {
4443 pub fn grib_get_api_version() -> ::std::os::raw::c_long;
4444}
4445unsafe extern "C" {
4446 pub fn grib_get_git_sha1() -> *const ::std::os::raw::c_char;
4447}
4448unsafe extern "C" {
4449 pub fn grib_get_package_name() -> *const ::std::os::raw::c_char;
4450}
4451unsafe extern "C" {
4452 pub fn grib_print_api_version(out: *mut FILE);
4453}
4454unsafe extern "C" {
4455 pub fn grib_keys_iterator_new(
4456 h: *mut grib_handle,
4457 filter_flags: ::std::os::raw::c_ulong,
4458 name_space: *const ::std::os::raw::c_char,
4459 ) -> *mut grib_keys_iterator;
4460}
4461unsafe extern "C" {
4462 pub fn codes_bufr_keys_iterator_new(
4463 h: *mut grib_handle,
4464 filter_flags: ::std::os::raw::c_ulong,
4465 ) -> *mut bufr_keys_iterator;
4466}
4467unsafe extern "C" {
4468 pub fn codes_bufr_data_section_keys_iterator_new(
4469 h: *mut grib_handle,
4470 ) -> *mut bufr_keys_iterator;
4471}
4472unsafe extern "C" {
4473 pub fn grib_keys_iterator_next(kiter: *mut grib_keys_iterator) -> ::std::os::raw::c_int;
4474}
4475unsafe extern "C" {
4476 pub fn codes_bufr_keys_iterator_next(kiter: *mut bufr_keys_iterator) -> ::std::os::raw::c_int;
4477}
4478unsafe extern "C" {
4479 pub fn grib_keys_iterator_get_name(
4480 kiter: *const grib_keys_iterator,
4481 ) -> *const ::std::os::raw::c_char;
4482}
4483unsafe extern "C" {
4484 pub fn codes_bufr_keys_iterator_get_name(
4485 kiter: *const bufr_keys_iterator,
4486 ) -> *mut ::std::os::raw::c_char;
4487}
4488unsafe extern "C" {
4489 pub fn grib_keys_iterator_delete(kiter: *mut grib_keys_iterator) -> ::std::os::raw::c_int;
4490}
4491unsafe extern "C" {
4492 pub fn codes_bufr_keys_iterator_delete(kiter: *mut bufr_keys_iterator)
4493 -> ::std::os::raw::c_int;
4494}
4495unsafe extern "C" {
4496 pub fn grib_keys_iterator_rewind(kiter: *mut grib_keys_iterator) -> ::std::os::raw::c_int;
4497}
4498unsafe extern "C" {
4499 pub fn codes_bufr_keys_iterator_rewind(kiter: *mut bufr_keys_iterator)
4500 -> ::std::os::raw::c_int;
4501}
4502unsafe extern "C" {
4503 pub fn grib_keys_iterator_set_flags(
4504 kiter: *mut grib_keys_iterator,
4505 flags: ::std::os::raw::c_ulong,
4506 ) -> ::std::os::raw::c_int;
4507}
4508unsafe extern "C" {
4509 pub fn grib_keys_iterator_get_long(
4510 kiter: *const grib_keys_iterator,
4511 v: *mut ::std::os::raw::c_long,
4512 len: *mut usize,
4513 ) -> ::std::os::raw::c_int;
4514}
4515unsafe extern "C" {
4516 pub fn grib_keys_iterator_get_double(
4517 kiter: *const grib_keys_iterator,
4518 v: *mut f64,
4519 len: *mut usize,
4520 ) -> ::std::os::raw::c_int;
4521}
4522unsafe extern "C" {
4523 pub fn grib_keys_iterator_get_float(
4524 kiter: *const grib_keys_iterator,
4525 v: *mut f32,
4526 len: *mut usize,
4527 ) -> ::std::os::raw::c_int;
4528}
4529unsafe extern "C" {
4530 pub fn grib_keys_iterator_get_string(
4531 kiter: *const grib_keys_iterator,
4532 v: *mut ::std::os::raw::c_char,
4533 len: *mut usize,
4534 ) -> ::std::os::raw::c_int;
4535}
4536unsafe extern "C" {
4537 pub fn grib_keys_iterator_get_bytes(
4538 kiter: *const grib_keys_iterator,
4539 v: *mut ::std::os::raw::c_uchar,
4540 len: *mut usize,
4541 ) -> ::std::os::raw::c_int;
4542}
4543unsafe extern "C" {
4544 pub fn codes_copy_key(
4545 h1: *mut grib_handle,
4546 h2: *mut grib_handle,
4547 key: *const ::std::os::raw::c_char,
4548 type_: ::std::os::raw::c_int,
4549 ) -> ::std::os::raw::c_int;
4550}
4551unsafe extern "C" {
4552 pub fn grib_update_sections_lengths(h: *mut grib_handle);
4553}
4554unsafe extern "C" {
4555 pub fn grib_get_error_message(code: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
4556}
4557unsafe extern "C" {
4558 pub fn grib_get_type_name(type_: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
4559}
4560unsafe extern "C" {
4561 pub fn grib_get_native_type(
4562 h: *const grib_handle,
4563 name: *const ::std::os::raw::c_char,
4564 type_: *mut ::std::os::raw::c_int,
4565 ) -> ::std::os::raw::c_int;
4566}
4567unsafe extern "C" {
4568 pub fn grib_check(
4569 call: *const ::std::os::raw::c_char,
4570 file: *const ::std::os::raw::c_char,
4571 line: ::std::os::raw::c_int,
4572 e: ::std::os::raw::c_int,
4573 msg: *const ::std::os::raw::c_char,
4574 );
4575}
4576unsafe extern "C" {
4577 pub fn grib_set_values(
4578 h: *mut grib_handle,
4579 grib_values: *mut grib_values,
4580 arg_count: usize,
4581 ) -> ::std::os::raw::c_int;
4582}
4583unsafe extern "C" {
4584 pub fn grib_handle_new_from_partial_message_copy(
4585 c: *mut grib_context,
4586 data: *const ::std::os::raw::c_void,
4587 size: usize,
4588 ) -> *mut grib_handle;
4589}
4590unsafe extern "C" {
4591 pub fn grib_handle_new_from_partial_message(
4592 c: *mut grib_context,
4593 data: *const ::std::os::raw::c_void,
4594 buflen: usize,
4595 ) -> *mut grib_handle;
4596}
4597unsafe extern "C" {
4598 pub fn grib_is_missing(
4599 h: *const grib_handle,
4600 key: *const ::std::os::raw::c_char,
4601 err: *mut ::std::os::raw::c_int,
4602 ) -> ::std::os::raw::c_int;
4603}
4604unsafe extern "C" {
4605 pub fn grib_is_defined(
4606 h: *const grib_handle,
4607 key: *const ::std::os::raw::c_char,
4608 ) -> ::std::os::raw::c_int;
4609}
4610unsafe extern "C" {
4611 pub fn grib_set_missing(
4612 h: *mut grib_handle,
4613 key: *const ::std::os::raw::c_char,
4614 ) -> ::std::os::raw::c_int;
4615}
4616unsafe extern "C" {
4617 pub fn grib_get_gaussian_latitudes(
4618 truncation: ::std::os::raw::c_long,
4619 latitudes: *mut f64,
4620 ) -> ::std::os::raw::c_int;
4621}
4622unsafe extern "C" {
4623 pub fn grib_julian_to_datetime(
4624 jd: f64,
4625 year: *mut ::std::os::raw::c_long,
4626 month: *mut ::std::os::raw::c_long,
4627 day: *mut ::std::os::raw::c_long,
4628 hour: *mut ::std::os::raw::c_long,
4629 minute: *mut ::std::os::raw::c_long,
4630 second: *mut ::std::os::raw::c_long,
4631 ) -> ::std::os::raw::c_int;
4632}
4633unsafe extern "C" {
4634 pub fn grib_datetime_to_julian(
4635 year: ::std::os::raw::c_long,
4636 month: ::std::os::raw::c_long,
4637 day: ::std::os::raw::c_long,
4638 hour: ::std::os::raw::c_long,
4639 minute: ::std::os::raw::c_long,
4640 second: ::std::os::raw::c_long,
4641 jd: *mut f64,
4642 ) -> ::std::os::raw::c_int;
4643}
4644unsafe extern "C" {
4645 pub fn grib_julian_to_date(jdate: ::std::os::raw::c_long) -> ::std::os::raw::c_long;
4646}
4647unsafe extern "C" {
4648 pub fn grib_date_to_julian(ddate: ::std::os::raw::c_long) -> ::std::os::raw::c_long;
4649}
4650unsafe extern "C" {
4651 pub fn grib_get_reduced_row(
4652 pl: ::std::os::raw::c_long,
4653 lon_first: f64,
4654 lon_last: f64,
4655 npoints: *mut ::std::os::raw::c_long,
4656 ilon_first: *mut ::std::os::raw::c_long,
4657 ilon_last: *mut ::std::os::raw::c_long,
4658 );
4659}
4660unsafe extern "C" {
4661 pub fn grib_get_reduced_row_p(
4662 pl: ::std::os::raw::c_long,
4663 lon_first: f64,
4664 lon_last: f64,
4665 npoints: *mut ::std::os::raw::c_long,
4666 olon_first: *mut f64,
4667 olon_last: *mut f64,
4668 );
4669}
4670unsafe extern "C" {
4671 pub fn wmo_read_any_from_file(
4672 f: *mut FILE,
4673 buffer: *mut ::std::os::raw::c_void,
4674 len: *mut usize,
4675 ) -> ::std::os::raw::c_int;
4676}
4677unsafe extern "C" {
4678 pub fn wmo_read_grib_from_file(
4679 f: *mut FILE,
4680 buffer: *mut ::std::os::raw::c_void,
4681 len: *mut usize,
4682 ) -> ::std::os::raw::c_int;
4683}
4684unsafe extern "C" {
4685 pub fn wmo_read_bufr_from_file(
4686 f: *mut FILE,
4687 buffer: *mut ::std::os::raw::c_void,
4688 len: *mut usize,
4689 ) -> ::std::os::raw::c_int;
4690}
4691unsafe extern "C" {
4692 pub fn wmo_read_gts_from_file(
4693 f: *mut FILE,
4694 buffer: *mut ::std::os::raw::c_void,
4695 len: *mut usize,
4696 ) -> ::std::os::raw::c_int;
4697}
4698unsafe extern "C" {
4699 pub fn wmo_read_any_from_stream(
4700 stream_data: *mut ::std::os::raw::c_void,
4701 stream_proc: ::std::option::Option<
4702 unsafe extern "C" fn(
4703 arg1: *mut ::std::os::raw::c_void,
4704 buffer: *mut ::std::os::raw::c_void,
4705 len: ::std::os::raw::c_long,
4706 ) -> ::std::os::raw::c_long,
4707 >,
4708 buffer: *mut ::std::os::raw::c_void,
4709 len: *mut usize,
4710 ) -> ::std::os::raw::c_int;
4711}
4712unsafe extern "C" {
4713 pub fn wmo_read_any_from_stream_malloc(
4714 stream_data: *mut ::std::os::raw::c_void,
4715 stream_proc: ::std::option::Option<
4716 unsafe extern "C" fn(
4717 arg1: *mut ::std::os::raw::c_void,
4718 buffer: *mut ::std::os::raw::c_void,
4719 len: ::std::os::raw::c_long,
4720 ) -> ::std::os::raw::c_long,
4721 >,
4722 size: *mut usize,
4723 err: *mut ::std::os::raw::c_int,
4724 ) -> *mut ::std::os::raw::c_void;
4725}
4726unsafe extern "C" {
4727 pub fn wmo_read_any_from_file_malloc(
4728 f: *mut FILE,
4729 headers_only: ::std::os::raw::c_int,
4730 size: *mut usize,
4731 offset: *mut off_t,
4732 err: *mut ::std::os::raw::c_int,
4733 ) -> *mut ::std::os::raw::c_void;
4734}
4735unsafe extern "C" {
4736 pub fn wmo_read_gts_from_file_malloc(
4737 f: *mut FILE,
4738 headers_only: ::std::os::raw::c_int,
4739 size: *mut usize,
4740 offset: *mut off_t,
4741 err: *mut ::std::os::raw::c_int,
4742 ) -> *mut ::std::os::raw::c_void;
4743}
4744unsafe extern "C" {
4745 pub fn wmo_read_bufr_from_file_malloc(
4746 f: *mut FILE,
4747 headers_only: ::std::os::raw::c_int,
4748 size: *mut usize,
4749 offset: *mut off_t,
4750 err: *mut ::std::os::raw::c_int,
4751 ) -> *mut ::std::os::raw::c_void;
4752}
4753unsafe extern "C" {
4754 pub fn wmo_read_grib_from_file_malloc(
4755 f: *mut FILE,
4756 headers_only: ::std::os::raw::c_int,
4757 size: *mut usize,
4758 offset: *mut off_t,
4759 err: *mut ::std::os::raw::c_int,
4760 ) -> *mut ::std::os::raw::c_void;
4761}
4762unsafe extern "C" {
4763 pub fn grib_read_any_from_file(
4764 ctx: *mut grib_context,
4765 f: *mut FILE,
4766 buffer: *mut ::std::os::raw::c_void,
4767 len: *mut usize,
4768 ) -> ::std::os::raw::c_int;
4769}
4770unsafe extern "C" {
4771 pub fn grib_get_message_offset(
4772 h: *const grib_handle,
4773 offset: *mut off_t,
4774 ) -> ::std::os::raw::c_int;
4775}
4776unsafe extern "C" {
4777 pub fn grib_get_message_size(h: *const grib_handle, size: *mut usize) -> ::std::os::raw::c_int;
4778}
4779#[repr(C)]
4780#[derive(Debug, Copy, Clone)]
4781pub struct grib_util_grid_spec {
4782 pub grid_type: ::std::os::raw::c_int,
4783 pub grid_name: *const ::std::os::raw::c_char,
4784 pub Ni: ::std::os::raw::c_long,
4785 pub Nj: ::std::os::raw::c_long,
4786 pub iDirectionIncrementInDegrees: f64,
4787 pub jDirectionIncrementInDegrees: f64,
4788 pub longitudeOfFirstGridPointInDegrees: f64,
4789 pub longitudeOfLastGridPointInDegrees: f64,
4790 pub latitudeOfFirstGridPointInDegrees: f64,
4791 pub latitudeOfLastGridPointInDegrees: f64,
4792 pub uvRelativeToGrid: ::std::os::raw::c_long,
4793 pub latitudeOfSouthernPoleInDegrees: f64,
4794 pub longitudeOfSouthernPoleInDegrees: f64,
4795 pub angleOfRotationInDegrees: f64,
4796 pub iScansNegatively: ::std::os::raw::c_long,
4797 pub jScansPositively: ::std::os::raw::c_long,
4798 pub N: ::std::os::raw::c_long,
4799 pub bitmapPresent: ::std::os::raw::c_long,
4800 pub missingValue: f64,
4801 pub pl: *const ::std::os::raw::c_long,
4802 pub pl_size: ::std::os::raw::c_long,
4803 pub truncation: ::std::os::raw::c_long,
4804 pub orientationOfTheGridInDegrees: f64,
4805 pub DyInMetres: ::std::os::raw::c_long,
4806 pub DxInMetres: ::std::os::raw::c_long,
4807}
4808#[repr(C)]
4809#[derive(Debug, Copy, Clone)]
4810pub struct grib_util_packing_spec {
4811 pub packing_type: ::std::os::raw::c_long,
4812 pub packing: ::std::os::raw::c_long,
4813 pub boustrophedonic: ::std::os::raw::c_long,
4814 pub editionNumber: ::std::os::raw::c_long,
4815 pub accuracy: ::std::os::raw::c_long,
4816 pub bitsPerValue: ::std::os::raw::c_long,
4817 pub decimalScaleFactor: ::std::os::raw::c_long,
4818 pub computeLaplacianOperator: ::std::os::raw::c_long,
4819 pub truncateLaplacian: ::std::os::raw::c_int,
4820 pub laplacianOperator: f64,
4821 pub deleteLocalDefinition: ::std::os::raw::c_long,
4822 pub extra_settings: [grib_values; 80usize],
4823 pub extra_settings_count: ::std::os::raw::c_long,
4824}
4825unsafe extern "C" {
4826 pub fn grib_util_set_spec(
4827 h: *mut grib_handle,
4828 grid_spec: *const grib_util_grid_spec,
4829 packing_spec: *const grib_util_packing_spec,
4830 flags: ::std::os::raw::c_int,
4831 data_values: *const f64,
4832 data_values_count: usize,
4833 err: *mut ::std::os::raw::c_int,
4834 ) -> *mut grib_handle;
4835}
4836unsafe extern "C" {
4837 pub fn parse_keyval_string(
4838 grib_tool: *const ::std::os::raw::c_char,
4839 arg: *mut ::std::os::raw::c_char,
4840 values_required: ::std::os::raw::c_int,
4841 default_type: ::std::os::raw::c_int,
4842 values: *mut grib_values,
4843 count: *mut ::std::os::raw::c_int,
4844 ) -> ::std::os::raw::c_int;
4845}
4846unsafe extern "C" {
4847 pub fn grib_new_from_file(
4848 c: *mut grib_context,
4849 f: *mut FILE,
4850 headers_only: ::std::os::raw::c_int,
4851 error: *mut ::std::os::raw::c_int,
4852 ) -> *mut grib_handle;
4853}
4854#[repr(C)]
4855#[derive(Debug, Copy, Clone)]
4856pub struct codes_bufr_header {
4857 pub message_offset: ::std::os::raw::c_ulong,
4858 pub message_size: ::std::os::raw::c_ulong,
4859 pub edition: ::std::os::raw::c_long,
4860 pub masterTableNumber: ::std::os::raw::c_long,
4861 pub bufrHeaderSubCentre: ::std::os::raw::c_long,
4862 pub bufrHeaderCentre: ::std::os::raw::c_long,
4863 pub updateSequenceNumber: ::std::os::raw::c_long,
4864 pub dataCategory: ::std::os::raw::c_long,
4865 pub dataSubCategory: ::std::os::raw::c_long,
4866 pub masterTablesVersionNumber: ::std::os::raw::c_long,
4867 pub localTablesVersionNumber: ::std::os::raw::c_long,
4868 pub typicalYear: ::std::os::raw::c_long,
4869 pub typicalMonth: ::std::os::raw::c_long,
4870 pub typicalDay: ::std::os::raw::c_long,
4871 pub typicalHour: ::std::os::raw::c_long,
4872 pub typicalMinute: ::std::os::raw::c_long,
4873 pub typicalSecond: ::std::os::raw::c_long,
4874 pub typicalDate: ::std::os::raw::c_long,
4875 pub typicalTime: ::std::os::raw::c_long,
4876 pub internationalDataSubCategory: ::std::os::raw::c_long,
4877 pub localSectionPresent: ::std::os::raw::c_long,
4878 pub ecmwfLocalSectionPresent: ::std::os::raw::c_long,
4879 pub rdbType: ::std::os::raw::c_long,
4880 pub oldSubtype: ::std::os::raw::c_long,
4881 pub rdbSubtype: ::std::os::raw::c_long,
4882 pub ident: [::std::os::raw::c_char; 9usize],
4883 pub localYear: ::std::os::raw::c_long,
4884 pub localMonth: ::std::os::raw::c_long,
4885 pub localDay: ::std::os::raw::c_long,
4886 pub localHour: ::std::os::raw::c_long,
4887 pub localMinute: ::std::os::raw::c_long,
4888 pub localSecond: ::std::os::raw::c_long,
4889 pub rdbtimeDay: ::std::os::raw::c_long,
4890 pub rdbtimeHour: ::std::os::raw::c_long,
4891 pub rdbtimeMinute: ::std::os::raw::c_long,
4892 pub rdbtimeSecond: ::std::os::raw::c_long,
4893 pub rectimeDay: ::std::os::raw::c_long,
4894 pub rectimeHour: ::std::os::raw::c_long,
4895 pub rectimeMinute: ::std::os::raw::c_long,
4896 pub rectimeSecond: ::std::os::raw::c_long,
4897 pub restricted: ::std::os::raw::c_long,
4898 pub isSatellite: ::std::os::raw::c_long,
4899 pub localLongitude1: f64,
4900 pub localLatitude1: f64,
4901 pub localLongitude2: f64,
4902 pub localLatitude2: f64,
4903 pub localLatitude: f64,
4904 pub localLongitude: f64,
4905 pub localNumberOfObservations: ::std::os::raw::c_long,
4906 pub satelliteID: ::std::os::raw::c_long,
4907 pub qualityControl: ::std::os::raw::c_long,
4908 pub newSubtype: ::std::os::raw::c_long,
4909 pub daLoop: ::std::os::raw::c_long,
4910 pub numberOfSubsets: ::std::os::raw::c_ulong,
4911 pub observedData: ::std::os::raw::c_long,
4912 pub compressedData: ::std::os::raw::c_long,
4913}
4914pub type codes_assertion_failed_proc =
4915 ::std::option::Option<unsafe extern "C" fn(message: *const ::std::os::raw::c_char)>;
4916unsafe extern "C" {
4917 pub fn codes_set_codes_assertion_failed_proc(proc_: codes_assertion_failed_proc);
4918}
4919pub type codes_values = grib_values;
4920pub type codes_key_value_list = grib_key_value_list;
4921pub type codes_handle = grib_handle;
4922pub type codes_multi_handle = grib_multi_handle;
4923pub type codes_context = grib_context;
4924pub type codes_iterator = grib_iterator;
4925pub type codes_nearest = grib_nearest;
4926pub type codes_keys_iterator = grib_keys_iterator;
4927pub type codes_bufr_keys_iterator = bufr_keys_iterator;
4928pub type codes_fieldset = grib_fieldset;
4929pub type codes_order_by = grib_order_by;
4930pub type codes_where = grib_where;
4931pub type codes_sarray = grib_sarray;
4932pub type codes_oarray = grib_oarray;
4933pub type codes_darray = grib_darray;
4934pub type codes_iarray = grib_iarray;
4935pub type codes_vdarray = grib_vdarray;
4936pub type codes_vsarray = grib_vsarray;
4937pub type codes_viarray = grib_viarray;
4938pub type codes_string_list = grib_string_list;
4939pub type codes_util_packing_spec = grib_util_packing_spec;
4940pub type codes_util_grid_spec = grib_util_grid_spec;
4941unsafe extern "C" {
4942 pub fn codes_fieldset_new_from_files(
4943 c: *mut codes_context,
4944 filenames: *mut *const ::std::os::raw::c_char,
4945 nfiles: ::std::os::raw::c_int,
4946 keys: *mut *const ::std::os::raw::c_char,
4947 nkeys: ::std::os::raw::c_int,
4948 where_string: *const ::std::os::raw::c_char,
4949 order_by_string: *const ::std::os::raw::c_char,
4950 err: *mut ::std::os::raw::c_int,
4951 ) -> *mut codes_fieldset;
4952}
4953unsafe extern "C" {
4954 pub fn codes_fieldset_delete(set: *mut codes_fieldset);
4955}
4956unsafe extern "C" {
4957 pub fn codes_fieldset_rewind(set: *mut codes_fieldset);
4958}
4959unsafe extern "C" {
4960 pub fn codes_fieldset_apply_order_by(
4961 set: *mut codes_fieldset,
4962 order_by_string: *const ::std::os::raw::c_char,
4963 ) -> ::std::os::raw::c_int;
4964}
4965unsafe extern "C" {
4966 pub fn codes_fieldset_next_handle(
4967 set: *mut codes_fieldset,
4968 err: *mut ::std::os::raw::c_int,
4969 ) -> *mut codes_handle;
4970}
4971unsafe extern "C" {
4972 pub fn codes_fieldset_count(set: *const codes_fieldset) -> ::std::os::raw::c_int;
4973}
4974unsafe extern "C" {
4975 pub fn codes_values_check(
4976 h: *mut codes_handle,
4977 values: *mut codes_values,
4978 count: ::std::os::raw::c_int,
4979 ) -> ::std::os::raw::c_int;
4980}
4981pub type codes_index = grib_index;
4982unsafe extern "C" {
4983 pub fn codes_index_new_from_file(
4984 c: *mut codes_context,
4985 filename: *const ::std::os::raw::c_char,
4986 keys: *const ::std::os::raw::c_char,
4987 err: *mut ::std::os::raw::c_int,
4988 ) -> *mut codes_index;
4989}
4990unsafe extern "C" {
4991 pub fn codes_index_new(
4992 c: *mut codes_context,
4993 keys: *const ::std::os::raw::c_char,
4994 err: *mut ::std::os::raw::c_int,
4995 ) -> *mut codes_index;
4996}
4997unsafe extern "C" {
4998 pub fn codes_index_add_file(
4999 index: *mut codes_index,
5000 filename: *const ::std::os::raw::c_char,
5001 ) -> ::std::os::raw::c_int;
5002}
5003unsafe extern "C" {
5004 pub fn codes_index_write(
5005 index: *mut codes_index,
5006 filename: *const ::std::os::raw::c_char,
5007 ) -> ::std::os::raw::c_int;
5008}
5009unsafe extern "C" {
5010 pub fn codes_index_read(
5011 c: *mut codes_context,
5012 filename: *const ::std::os::raw::c_char,
5013 err: *mut ::std::os::raw::c_int,
5014 ) -> *mut codes_index;
5015}
5016unsafe extern "C" {
5017 pub fn codes_index_get_size(
5018 index: *const codes_index,
5019 key: *const ::std::os::raw::c_char,
5020 size: *mut usize,
5021 ) -> ::std::os::raw::c_int;
5022}
5023unsafe extern "C" {
5024 pub fn codes_index_get_long(
5025 index: *const codes_index,
5026 key: *const ::std::os::raw::c_char,
5027 values: *mut ::std::os::raw::c_long,
5028 size: *mut usize,
5029 ) -> ::std::os::raw::c_int;
5030}
5031unsafe extern "C" {
5032 pub fn codes_index_get_double(
5033 index: *const codes_index,
5034 key: *const ::std::os::raw::c_char,
5035 values: *mut f64,
5036 size: *mut usize,
5037 ) -> ::std::os::raw::c_int;
5038}
5039unsafe extern "C" {
5040 pub fn codes_index_get_string(
5041 index: *const codes_index,
5042 key: *const ::std::os::raw::c_char,
5043 values: *mut *mut ::std::os::raw::c_char,
5044 size: *mut usize,
5045 ) -> ::std::os::raw::c_int;
5046}
5047unsafe extern "C" {
5048 pub fn codes_index_select_long(
5049 index: *mut codes_index,
5050 key: *const ::std::os::raw::c_char,
5051 value: ::std::os::raw::c_long,
5052 ) -> ::std::os::raw::c_int;
5053}
5054unsafe extern "C" {
5055 pub fn codes_index_select_double(
5056 index: *mut codes_index,
5057 key: *const ::std::os::raw::c_char,
5058 value: f64,
5059 ) -> ::std::os::raw::c_int;
5060}
5061unsafe extern "C" {
5062 pub fn codes_index_select_string(
5063 index: *mut codes_index,
5064 key: *const ::std::os::raw::c_char,
5065 value: *const ::std::os::raw::c_char,
5066 ) -> ::std::os::raw::c_int;
5067}
5068unsafe extern "C" {
5069 pub fn codes_handle_new_from_index(
5070 index: *mut codes_index,
5071 err: *mut ::std::os::raw::c_int,
5072 ) -> *mut codes_handle;
5073}
5074unsafe extern "C" {
5075 pub fn codes_index_delete(index: *mut codes_index);
5076}
5077unsafe extern "C" {
5078 pub fn codes_count_in_file(
5079 c: *mut codes_context,
5080 f: *mut FILE,
5081 n: *mut ::std::os::raw::c_int,
5082 ) -> ::std::os::raw::c_int;
5083}
5084unsafe extern "C" {
5085 pub fn codes_count_in_filename(
5086 c: *mut codes_context,
5087 filename: *const ::std::os::raw::c_char,
5088 n: *mut ::std::os::raw::c_int,
5089 ) -> ::std::os::raw::c_int;
5090}
5091unsafe extern "C" {
5092 pub fn codes_handle_new_from_file(
5093 c: *mut codes_context,
5094 f: *mut FILE,
5095 product: ProductKind,
5096 error: *mut ::std::os::raw::c_int,
5097 ) -> *mut codes_handle;
5098}
5099unsafe extern "C" {
5100 pub fn codes_grib_handle_new_from_file(
5101 c: *mut codes_context,
5102 f: *mut FILE,
5103 error: *mut ::std::os::raw::c_int,
5104 ) -> *mut codes_handle;
5105}
5106unsafe extern "C" {
5107 pub fn codes_bufr_handle_new_from_file(
5108 c: *mut codes_context,
5109 f: *mut FILE,
5110 error: *mut ::std::os::raw::c_int,
5111 ) -> *mut codes_handle;
5112}
5113unsafe extern "C" {
5114 pub fn codes_write_message(
5115 h: *const codes_handle,
5116 file: *const ::std::os::raw::c_char,
5117 mode: *const ::std::os::raw::c_char,
5118 ) -> ::std::os::raw::c_int;
5119}
5120unsafe extern "C" {
5121 pub fn codes_grib_util_sections_copy(
5122 hfrom: *mut codes_handle,
5123 hto: *mut codes_handle,
5124 what: ::std::os::raw::c_int,
5125 err: *mut ::std::os::raw::c_int,
5126 ) -> *mut codes_handle;
5127}
5128unsafe extern "C" {
5129 pub fn codes_grib_util_get_param_id(
5130 mars_param: *const ::std::os::raw::c_char,
5131 ) -> *mut codes_string_list;
5132}
5133unsafe extern "C" {
5134 pub fn codes_grib_util_get_mars_param(
5135 param_id: *const ::std::os::raw::c_char,
5136 ) -> *mut codes_string_list;
5137}
5138unsafe extern "C" {
5139 pub fn codes_handle_new_from_message(
5140 c: *mut codes_context,
5141 data: *const ::std::os::raw::c_void,
5142 data_len: usize,
5143 ) -> *mut codes_handle;
5144}
5145unsafe extern "C" {
5146 pub fn codes_grib_handle_new_from_multi_message(
5147 c: *mut codes_context,
5148 data: *mut *mut ::std::os::raw::c_void,
5149 data_len: *mut usize,
5150 error: *mut ::std::os::raw::c_int,
5151 ) -> *mut codes_handle;
5152}
5153unsafe extern "C" {
5154 pub fn codes_handle_new_from_message_copy(
5155 c: *mut codes_context,
5156 data: *const ::std::os::raw::c_void,
5157 data_len: usize,
5158 ) -> *mut codes_handle;
5159}
5160unsafe extern "C" {
5161 pub fn codes_grib_handle_new_from_samples(
5162 c: *mut codes_context,
5163 sample_name: *const ::std::os::raw::c_char,
5164 ) -> *mut codes_handle;
5165}
5166unsafe extern "C" {
5167 pub fn codes_bufr_handle_new_from_samples(
5168 c: *mut codes_context,
5169 sample_name: *const ::std::os::raw::c_char,
5170 ) -> *mut codes_handle;
5171}
5172unsafe extern "C" {
5173 pub fn codes_handle_new_from_samples(
5174 c: *mut codes_context,
5175 sample_name: *const ::std::os::raw::c_char,
5176 ) -> *mut codes_handle;
5177}
5178unsafe extern "C" {
5179 pub fn codes_handle_clone(h: *const codes_handle) -> *mut codes_handle;
5180}
5181unsafe extern "C" {
5182 pub fn codes_handle_clone_headers_only(h: *const codes_handle) -> *mut codes_handle;
5183}
5184unsafe extern "C" {
5185 pub fn codes_handle_delete(h: *mut codes_handle) -> ::std::os::raw::c_int;
5186}
5187unsafe extern "C" {
5188 pub fn codes_grib_multi_handle_new(c: *mut codes_context) -> *mut codes_multi_handle;
5189}
5190unsafe extern "C" {
5191 pub fn codes_grib_multi_handle_append(
5192 h: *mut codes_handle,
5193 start_section: ::std::os::raw::c_int,
5194 mh: *mut codes_multi_handle,
5195 ) -> ::std::os::raw::c_int;
5196}
5197unsafe extern "C" {
5198 pub fn codes_grib_multi_handle_delete(mh: *mut codes_multi_handle) -> ::std::os::raw::c_int;
5199}
5200unsafe extern "C" {
5201 pub fn codes_grib_multi_handle_write(
5202 mh: *mut codes_multi_handle,
5203 f: *mut FILE,
5204 ) -> ::std::os::raw::c_int;
5205}
5206unsafe extern "C" {
5207 pub fn codes_get_message(
5208 h: *const codes_handle,
5209 message: *mut *const ::std::os::raw::c_void,
5210 message_length: *mut usize,
5211 ) -> ::std::os::raw::c_int;
5212}
5213unsafe extern "C" {
5214 pub fn codes_get_message_copy(
5215 h: *const codes_handle,
5216 message: *mut ::std::os::raw::c_void,
5217 message_length: *mut usize,
5218 ) -> ::std::os::raw::c_int;
5219}
5220unsafe extern "C" {
5221 pub fn codes_grib_iterator_new(
5222 h: *const codes_handle,
5223 flags: ::std::os::raw::c_ulong,
5224 error: *mut ::std::os::raw::c_int,
5225 ) -> *mut codes_iterator;
5226}
5227unsafe extern "C" {
5228 pub fn codes_grib_get_data(
5229 h: *const codes_handle,
5230 lats: *mut f64,
5231 lons: *mut f64,
5232 values: *mut f64,
5233 ) -> ::std::os::raw::c_int;
5234}
5235unsafe extern "C" {
5236 pub fn codes_grib_iterator_next(
5237 i: *mut codes_iterator,
5238 lat: *mut f64,
5239 lon: *mut f64,
5240 value: *mut f64,
5241 ) -> ::std::os::raw::c_int;
5242}
5243unsafe extern "C" {
5244 pub fn codes_grib_iterator_previous(
5245 i: *mut codes_iterator,
5246 lat: *mut f64,
5247 lon: *mut f64,
5248 value: *mut f64,
5249 ) -> ::std::os::raw::c_int;
5250}
5251unsafe extern "C" {
5252 pub fn codes_grib_iterator_has_next(i: *mut codes_iterator) -> ::std::os::raw::c_int;
5253}
5254unsafe extern "C" {
5255 pub fn codes_grib_iterator_reset(i: *mut codes_iterator) -> ::std::os::raw::c_int;
5256}
5257unsafe extern "C" {
5258 pub fn codes_grib_iterator_delete(i: *mut codes_iterator) -> ::std::os::raw::c_int;
5259}
5260unsafe extern "C" {
5261 pub fn codes_grib_nearest_new(
5262 h: *const codes_handle,
5263 error: *mut ::std::os::raw::c_int,
5264 ) -> *mut codes_nearest;
5265}
5266unsafe extern "C" {
5267 pub fn codes_grib_nearest_find(
5268 nearest: *mut codes_nearest,
5269 h: *const codes_handle,
5270 inlat: f64,
5271 inlon: f64,
5272 flags: ::std::os::raw::c_ulong,
5273 outlats: *mut f64,
5274 outlons: *mut f64,
5275 values: *mut f64,
5276 distances: *mut f64,
5277 indexes: *mut ::std::os::raw::c_int,
5278 len: *mut usize,
5279 ) -> ::std::os::raw::c_int;
5280}
5281unsafe extern "C" {
5282 pub fn codes_grib_nearest_delete(nearest: *mut codes_nearest) -> ::std::os::raw::c_int;
5283}
5284unsafe extern "C" {
5285 pub fn codes_grib_nearest_find_multiple(
5286 h: *const codes_handle,
5287 is_lsm: ::std::os::raw::c_int,
5288 inlats: *const f64,
5289 inlons: *const f64,
5290 npoints: ::std::os::raw::c_long,
5291 outlats: *mut f64,
5292 outlons: *mut f64,
5293 values: *mut f64,
5294 distances: *mut f64,
5295 indexes: *mut ::std::os::raw::c_int,
5296 ) -> ::std::os::raw::c_int;
5297}
5298unsafe extern "C" {
5299 pub fn codes_get_offset(
5300 h: *const codes_handle,
5301 key: *const ::std::os::raw::c_char,
5302 offset: *mut usize,
5303 ) -> ::std::os::raw::c_int;
5304}
5305unsafe extern "C" {
5306 pub fn codes_get_size(
5307 h: *const codes_handle,
5308 key: *const ::std::os::raw::c_char,
5309 size: *mut usize,
5310 ) -> ::std::os::raw::c_int;
5311}
5312unsafe extern "C" {
5313 pub fn codes_get_length(
5314 h: *const codes_handle,
5315 key: *const ::std::os::raw::c_char,
5316 length: *mut usize,
5317 ) -> ::std::os::raw::c_int;
5318}
5319unsafe extern "C" {
5320 pub fn codes_get_long(
5321 h: *const codes_handle,
5322 key: *const ::std::os::raw::c_char,
5323 value: *mut ::std::os::raw::c_long,
5324 ) -> ::std::os::raw::c_int;
5325}
5326unsafe extern "C" {
5327 pub fn codes_get_double(
5328 h: *const codes_handle,
5329 key: *const ::std::os::raw::c_char,
5330 value: *mut f64,
5331 ) -> ::std::os::raw::c_int;
5332}
5333unsafe extern "C" {
5334 pub fn codes_get_float(
5335 h: *const codes_handle,
5336 key: *const ::std::os::raw::c_char,
5337 value: *mut f32,
5338 ) -> ::std::os::raw::c_int;
5339}
5340unsafe extern "C" {
5341 pub fn codes_get_double_element(
5342 h: *const codes_handle,
5343 key: *const ::std::os::raw::c_char,
5344 i: ::std::os::raw::c_int,
5345 value: *mut f64,
5346 ) -> ::std::os::raw::c_int;
5347}
5348unsafe extern "C" {
5349 pub fn codes_get_float_element(
5350 h: *const codes_handle,
5351 key: *const ::std::os::raw::c_char,
5352 i: ::std::os::raw::c_int,
5353 value: *mut f32,
5354 ) -> ::std::os::raw::c_int;
5355}
5356unsafe extern "C" {
5357 pub fn codes_get_double_elements(
5358 h: *const codes_handle,
5359 key: *const ::std::os::raw::c_char,
5360 index_array: *const ::std::os::raw::c_int,
5361 size: ::std::os::raw::c_long,
5362 value: *mut f64,
5363 ) -> ::std::os::raw::c_int;
5364}
5365unsafe extern "C" {
5366 pub fn codes_get_float_elements(
5367 h: *const codes_handle,
5368 key: *const ::std::os::raw::c_char,
5369 index_array: *const ::std::os::raw::c_int,
5370 size: ::std::os::raw::c_long,
5371 value: *mut f32,
5372 ) -> ::std::os::raw::c_int;
5373}
5374unsafe extern "C" {
5375 pub fn codes_get_string(
5376 h: *const codes_handle,
5377 key: *const ::std::os::raw::c_char,
5378 mesg: *mut ::std::os::raw::c_char,
5379 length: *mut usize,
5380 ) -> ::std::os::raw::c_int;
5381}
5382unsafe extern "C" {
5383 pub fn codes_get_string_array(
5384 h: *const codes_handle,
5385 key: *const ::std::os::raw::c_char,
5386 vals: *mut *mut ::std::os::raw::c_char,
5387 length: *mut usize,
5388 ) -> ::std::os::raw::c_int;
5389}
5390unsafe extern "C" {
5391 pub fn codes_get_bytes(
5392 h: *const codes_handle,
5393 key: *const ::std::os::raw::c_char,
5394 bytes: *mut ::std::os::raw::c_uchar,
5395 length: *mut usize,
5396 ) -> ::std::os::raw::c_int;
5397}
5398unsafe extern "C" {
5399 pub fn codes_get_double_array(
5400 h: *const codes_handle,
5401 key: *const ::std::os::raw::c_char,
5402 vals: *mut f64,
5403 length: *mut usize,
5404 ) -> ::std::os::raw::c_int;
5405}
5406unsafe extern "C" {
5407 pub fn codes_get_float_array(
5408 h: *const codes_handle,
5409 key: *const ::std::os::raw::c_char,
5410 vals: *mut f32,
5411 length: *mut usize,
5412 ) -> ::std::os::raw::c_int;
5413}
5414unsafe extern "C" {
5415 pub fn codes_get_long_array(
5416 h: *const codes_handle,
5417 key: *const ::std::os::raw::c_char,
5418 vals: *mut ::std::os::raw::c_long,
5419 length: *mut usize,
5420 ) -> ::std::os::raw::c_int;
5421}
5422unsafe extern "C" {
5423 pub fn codes_copy_namespace(
5424 dest: *mut codes_handle,
5425 name: *const ::std::os::raw::c_char,
5426 src: *mut codes_handle,
5427 ) -> ::std::os::raw::c_int;
5428}
5429unsafe extern "C" {
5430 pub fn codes_set_long(
5431 h: *mut codes_handle,
5432 key: *const ::std::os::raw::c_char,
5433 val: ::std::os::raw::c_long,
5434 ) -> ::std::os::raw::c_int;
5435}
5436unsafe extern "C" {
5437 pub fn codes_set_double(
5438 h: *mut codes_handle,
5439 key: *const ::std::os::raw::c_char,
5440 val: f64,
5441 ) -> ::std::os::raw::c_int;
5442}
5443unsafe extern "C" {
5444 pub fn codes_set_string(
5445 h: *mut codes_handle,
5446 key: *const ::std::os::raw::c_char,
5447 mesg: *const ::std::os::raw::c_char,
5448 length: *mut usize,
5449 ) -> ::std::os::raw::c_int;
5450}
5451unsafe extern "C" {
5452 pub fn codes_set_bytes(
5453 h: *mut codes_handle,
5454 key: *const ::std::os::raw::c_char,
5455 bytes: *const ::std::os::raw::c_uchar,
5456 length: *mut usize,
5457 ) -> ::std::os::raw::c_int;
5458}
5459unsafe extern "C" {
5460 pub fn codes_set_double_array(
5461 h: *mut codes_handle,
5462 key: *const ::std::os::raw::c_char,
5463 vals: *const f64,
5464 length: usize,
5465 ) -> ::std::os::raw::c_int;
5466}
5467unsafe extern "C" {
5468 pub fn codes_set_float_array(
5469 h: *mut codes_handle,
5470 key: *const ::std::os::raw::c_char,
5471 vals: *const f32,
5472 length: usize,
5473 ) -> ::std::os::raw::c_int;
5474}
5475unsafe extern "C" {
5476 pub fn codes_set_force_double_array(
5477 h: *mut codes_handle,
5478 key: *const ::std::os::raw::c_char,
5479 vals: *const f64,
5480 length: usize,
5481 ) -> ::std::os::raw::c_int;
5482}
5483unsafe extern "C" {
5484 pub fn codes_set_force_float_array(
5485 h: *mut codes_handle,
5486 key: *const ::std::os::raw::c_char,
5487 vals: *const f32,
5488 length: usize,
5489 ) -> ::std::os::raw::c_int;
5490}
5491unsafe extern "C" {
5492 pub fn codes_set_long_array(
5493 h: *mut codes_handle,
5494 key: *const ::std::os::raw::c_char,
5495 vals: *const ::std::os::raw::c_long,
5496 length: usize,
5497 ) -> ::std::os::raw::c_int;
5498}
5499unsafe extern "C" {
5500 pub fn codes_set_string_array(
5501 h: *mut codes_handle,
5502 key: *const ::std::os::raw::c_char,
5503 vals: *mut *const ::std::os::raw::c_char,
5504 length: usize,
5505 ) -> ::std::os::raw::c_int;
5506}
5507unsafe extern "C" {
5508 pub fn codes_dump_content(
5509 h: *const codes_handle,
5510 out: *mut FILE,
5511 mode: *const ::std::os::raw::c_char,
5512 option_flags: ::std::os::raw::c_ulong,
5513 arg: *mut ::std::os::raw::c_void,
5514 );
5515}
5516unsafe extern "C" {
5517 pub fn codes_dump_action_tree(c: *mut codes_context, f: *mut FILE);
5518}
5519pub type codes_free_proc = ::std::option::Option<
5520 unsafe extern "C" fn(c: *const codes_context, data: *mut ::std::os::raw::c_void),
5521>;
5522pub type codes_malloc_proc = ::std::option::Option<
5523 unsafe extern "C" fn(c: *const codes_context, length: usize) -> *mut ::std::os::raw::c_void,
5524>;
5525pub type codes_realloc_proc = ::std::option::Option<
5526 unsafe extern "C" fn(
5527 c: *const codes_context,
5528 data: *mut ::std::os::raw::c_void,
5529 length: usize,
5530 ) -> *mut ::std::os::raw::c_void,
5531>;
5532pub type codes_log_proc = ::std::option::Option<
5533 unsafe extern "C" fn(
5534 c: *const codes_context,
5535 level: ::std::os::raw::c_int,
5536 mesg: *const ::std::os::raw::c_char,
5537 ),
5538>;
5539pub type codes_print_proc = ::std::option::Option<
5540 unsafe extern "C" fn(
5541 c: *const codes_context,
5542 descriptor: *mut ::std::os::raw::c_void,
5543 mesg: *const ::std::os::raw::c_char,
5544 ),
5545>;
5546pub type codes_data_read_proc = ::std::option::Option<
5547 unsafe extern "C" fn(
5548 c: *const codes_context,
5549 ptr: *mut ::std::os::raw::c_void,
5550 size: usize,
5551 stream: *mut ::std::os::raw::c_void,
5552 ) -> usize,
5553>;
5554pub type codes_data_write_proc = ::std::option::Option<
5555 unsafe extern "C" fn(
5556 c: *const codes_context,
5557 ptr: *const ::std::os::raw::c_void,
5558 size: usize,
5559 stream: *mut ::std::os::raw::c_void,
5560 ) -> usize,
5561>;
5562pub type codes_data_tell_proc = ::std::option::Option<
5563 unsafe extern "C" fn(c: *const codes_context, stream: *mut ::std::os::raw::c_void) -> off_t,
5564>;
5565pub type codes_data_seek_proc = ::std::option::Option<
5566 unsafe extern "C" fn(
5567 c: *const codes_context,
5568 offset: off_t,
5569 whence: ::std::os::raw::c_int,
5570 stream: *mut ::std::os::raw::c_void,
5571 ) -> off_t,
5572>;
5573pub type codes_data_eof_proc = ::std::option::Option<
5574 unsafe extern "C" fn(
5575 c: *const codes_context,
5576 stream: *mut ::std::os::raw::c_void,
5577 ) -> ::std::os::raw::c_int,
5578>;
5579unsafe extern "C" {
5580 pub fn codes_context_get_default() -> *mut codes_context;
5581}
5582unsafe extern "C" {
5583 pub fn codes_context_delete(c: *mut codes_context);
5584}
5585unsafe extern "C" {
5586 pub fn codes_gts_header_on(c: *mut codes_context);
5587}
5588unsafe extern "C" {
5589 pub fn codes_gts_header_off(c: *mut codes_context);
5590}
5591unsafe extern "C" {
5592 pub fn codes_gribex_mode_on(c: *mut codes_context);
5593}
5594unsafe extern "C" {
5595 pub fn codes_get_gribex_mode(c: *mut codes_context) -> ::std::os::raw::c_int;
5596}
5597unsafe extern "C" {
5598 pub fn codes_gribex_mode_off(c: *mut codes_context);
5599}
5600unsafe extern "C" {
5601 pub fn codes_bufr_multi_element_constant_arrays_on(c: *mut codes_context);
5602}
5603unsafe extern "C" {
5604 pub fn codes_bufr_multi_element_constant_arrays_off(c: *mut codes_context);
5605}
5606unsafe extern "C" {
5607 pub fn codes_context_set_definitions_path(
5608 c: *mut codes_context,
5609 path: *const ::std::os::raw::c_char,
5610 );
5611}
5612unsafe extern "C" {
5613 pub fn codes_context_set_samples_path(
5614 c: *mut codes_context,
5615 path: *const ::std::os::raw::c_char,
5616 );
5617}
5618unsafe extern "C" {
5619 pub fn codes_context_set_memory_proc(
5620 c: *mut codes_context,
5621 p_malloc: codes_malloc_proc,
5622 p_free: codes_free_proc,
5623 p_realloc: codes_realloc_proc,
5624 );
5625}
5626unsafe extern "C" {
5627 pub fn codes_context_set_persistent_memory_proc(
5628 c: *mut codes_context,
5629 p_malloc: codes_malloc_proc,
5630 p_free: codes_free_proc,
5631 );
5632}
5633unsafe extern "C" {
5634 pub fn codes_context_set_buffer_memory_proc(
5635 c: *mut codes_context,
5636 p_malloc: codes_malloc_proc,
5637 p_free: codes_free_proc,
5638 p_realloc: codes_realloc_proc,
5639 );
5640}
5641unsafe extern "C" {
5642 pub fn codes_context_set_print_proc(c: *mut codes_context, p_print: codes_print_proc);
5643}
5644unsafe extern "C" {
5645 pub fn codes_context_set_logging_proc(c: *mut codes_context, p_log: codes_log_proc);
5646}
5647unsafe extern "C" {
5648 pub fn codes_grib_multi_support_on(c: *mut codes_context);
5649}
5650unsafe extern "C" {
5651 pub fn codes_grib_multi_support_off(c: *mut codes_context);
5652}
5653unsafe extern "C" {
5654 pub fn codes_grib_multi_support_reset_file(c: *mut codes_context, f: *mut FILE);
5655}
5656unsafe extern "C" {
5657 pub fn codes_samples_path(c: *const codes_context) -> *mut ::std::os::raw::c_char;
5658}
5659unsafe extern "C" {
5660 pub fn codes_definition_path(c: *const codes_context) -> *mut ::std::os::raw::c_char;
5661}
5662unsafe extern "C" {
5663 pub fn codes_get_api_version() -> ::std::os::raw::c_long;
5664}
5665unsafe extern "C" {
5666 pub fn codes_get_git_sha1() -> *const ::std::os::raw::c_char;
5667}
5668unsafe extern "C" {
5669 pub fn codes_get_build_date() -> *const ::std::os::raw::c_char;
5670}
5671unsafe extern "C" {
5672 pub fn codes_get_package_name() -> *const ::std::os::raw::c_char;
5673}
5674unsafe extern "C" {
5675 pub fn codes_print_api_version(out: *mut FILE);
5676}
5677unsafe extern "C" {
5678 pub fn codes_keys_iterator_new(
5679 h: *mut codes_handle,
5680 filter_flags: ::std::os::raw::c_ulong,
5681 name_space: *const ::std::os::raw::c_char,
5682 ) -> *mut codes_keys_iterator;
5683}
5684unsafe extern "C" {
5685 pub fn codes_bufr_copy_data_return_copied_keys(
5686 hin: *mut codes_handle,
5687 hout: *mut codes_handle,
5688 nkeys: *mut usize,
5689 err: *mut ::std::os::raw::c_int,
5690 ) -> *mut *mut ::std::os::raw::c_char;
5691}
5692unsafe extern "C" {
5693 pub fn codes_bufr_copy_data(
5694 hin: *mut codes_handle,
5695 hout: *mut codes_handle,
5696 ) -> ::std::os::raw::c_int;
5697}
5698unsafe extern "C" {
5699 pub fn codes_keys_iterator_next(kiter: *mut codes_keys_iterator) -> ::std::os::raw::c_int;
5700}
5701unsafe extern "C" {
5702 pub fn codes_keys_iterator_get_name(
5703 kiter: *const codes_keys_iterator,
5704 ) -> *const ::std::os::raw::c_char;
5705}
5706unsafe extern "C" {
5707 pub fn codes_keys_iterator_delete(kiter: *mut codes_keys_iterator) -> ::std::os::raw::c_int;
5708}
5709unsafe extern "C" {
5710 pub fn codes_keys_iterator_rewind(kiter: *mut codes_keys_iterator) -> ::std::os::raw::c_int;
5711}
5712unsafe extern "C" {
5713 pub fn codes_keys_iterator_set_flags(
5714 kiter: *mut codes_keys_iterator,
5715 flags: ::std::os::raw::c_ulong,
5716 ) -> ::std::os::raw::c_int;
5717}
5718unsafe extern "C" {
5719 pub fn codes_keys_iterator_get_long(
5720 kiter: *const codes_keys_iterator,
5721 v: *mut ::std::os::raw::c_long,
5722 len: *mut usize,
5723 ) -> ::std::os::raw::c_int;
5724}
5725unsafe extern "C" {
5726 pub fn codes_keys_iterator_get_double(
5727 kiter: *const codes_keys_iterator,
5728 v: *mut f64,
5729 len: *mut usize,
5730 ) -> ::std::os::raw::c_int;
5731}
5732unsafe extern "C" {
5733 pub fn codes_keys_iterator_get_float(
5734 kiter: *const codes_keys_iterator,
5735 v: *mut f32,
5736 len: *mut usize,
5737 ) -> ::std::os::raw::c_int;
5738}
5739unsafe extern "C" {
5740 pub fn codes_keys_iterator_get_string(
5741 kiter: *const codes_keys_iterator,
5742 v: *mut ::std::os::raw::c_char,
5743 len: *mut usize,
5744 ) -> ::std::os::raw::c_int;
5745}
5746unsafe extern "C" {
5747 pub fn codes_keys_iterator_get_bytes(
5748 kiter: *const codes_keys_iterator,
5749 v: *mut ::std::os::raw::c_uchar,
5750 len: *mut usize,
5751 ) -> ::std::os::raw::c_int;
5752}
5753unsafe extern "C" {
5754 pub fn codes_update_sections_lengths(h: *mut codes_handle);
5755}
5756unsafe extern "C" {
5757 pub fn codes_get_error_message(code: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
5758}
5759unsafe extern "C" {
5760 pub fn codes_get_type_name(type_: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
5761}
5762unsafe extern "C" {
5763 pub fn codes_get_native_type(
5764 h: *const codes_handle,
5765 name: *const ::std::os::raw::c_char,
5766 type_: *mut ::std::os::raw::c_int,
5767 ) -> ::std::os::raw::c_int;
5768}
5769unsafe extern "C" {
5770 pub fn codes_check(
5771 call: *const ::std::os::raw::c_char,
5772 file: *const ::std::os::raw::c_char,
5773 line: ::std::os::raw::c_int,
5774 e: ::std::os::raw::c_int,
5775 msg: *const ::std::os::raw::c_char,
5776 );
5777}
5778unsafe extern "C" {
5779 pub fn codes_set_values(
5780 h: *mut codes_handle,
5781 codes_values: *mut codes_values,
5782 arg_count: usize,
5783 ) -> ::std::os::raw::c_int;
5784}
5785unsafe extern "C" {
5786 pub fn codes_handle_new_from_partial_message_copy(
5787 c: *mut codes_context,
5788 data: *const ::std::os::raw::c_void,
5789 size: usize,
5790 ) -> *mut codes_handle;
5791}
5792unsafe extern "C" {
5793 pub fn codes_handle_new_from_partial_message(
5794 c: *mut codes_context,
5795 data: *const ::std::os::raw::c_void,
5796 buflen: usize,
5797 ) -> *mut codes_handle;
5798}
5799unsafe extern "C" {
5800 pub fn codes_is_missing(
5801 h: *const codes_handle,
5802 key: *const ::std::os::raw::c_char,
5803 err: *mut ::std::os::raw::c_int,
5804 ) -> ::std::os::raw::c_int;
5805}
5806unsafe extern "C" {
5807 pub fn codes_is_defined(
5808 h: *const codes_handle,
5809 key: *const ::std::os::raw::c_char,
5810 ) -> ::std::os::raw::c_int;
5811}
5812unsafe extern "C" {
5813 pub fn codes_bufr_key_is_header(
5814 h: *const codes_handle,
5815 key: *const ::std::os::raw::c_char,
5816 err: *mut ::std::os::raw::c_int,
5817 ) -> ::std::os::raw::c_int;
5818}
5819unsafe extern "C" {
5820 pub fn codes_bufr_key_is_coordinate(
5821 h: *const codes_handle,
5822 key: *const ::std::os::raw::c_char,
5823 err: *mut ::std::os::raw::c_int,
5824 ) -> ::std::os::raw::c_int;
5825}
5826unsafe extern "C" {
5827 pub fn codes_set_missing(
5828 h: *mut codes_handle,
5829 key: *const ::std::os::raw::c_char,
5830 ) -> ::std::os::raw::c_int;
5831}
5832unsafe extern "C" {
5833 pub fn codes_get_gaussian_latitudes(
5834 truncation: ::std::os::raw::c_long,
5835 latitudes: *mut f64,
5836 ) -> ::std::os::raw::c_int;
5837}
5838unsafe extern "C" {
5839 pub fn codes_julian_to_datetime(
5840 jd: f64,
5841 year: *mut ::std::os::raw::c_long,
5842 month: *mut ::std::os::raw::c_long,
5843 day: *mut ::std::os::raw::c_long,
5844 hour: *mut ::std::os::raw::c_long,
5845 minute: *mut ::std::os::raw::c_long,
5846 second: *mut ::std::os::raw::c_long,
5847 ) -> ::std::os::raw::c_int;
5848}
5849unsafe extern "C" {
5850 pub fn codes_datetime_to_julian(
5851 year: ::std::os::raw::c_long,
5852 month: ::std::os::raw::c_long,
5853 day: ::std::os::raw::c_long,
5854 hour: ::std::os::raw::c_long,
5855 minute: ::std::os::raw::c_long,
5856 second: ::std::os::raw::c_long,
5857 jd: *mut f64,
5858 ) -> ::std::os::raw::c_int;
5859}
5860unsafe extern "C" {
5861 pub fn codes_julian_to_date(jdate: ::std::os::raw::c_long) -> ::std::os::raw::c_long;
5862}
5863unsafe extern "C" {
5864 pub fn codes_date_to_julian(ddate: ::std::os::raw::c_long) -> ::std::os::raw::c_long;
5865}
5866unsafe extern "C" {
5867 pub fn codes_get_reduced_row(
5868 pl: ::std::os::raw::c_long,
5869 lon_first: f64,
5870 lon_last: f64,
5871 npoints: *mut ::std::os::raw::c_long,
5872 ilon_first: *mut ::std::os::raw::c_long,
5873 ilon_last: *mut ::std::os::raw::c_long,
5874 );
5875}
5876unsafe extern "C" {
5877 pub fn codes_get_reduced_row_p(
5878 pl: ::std::os::raw::c_long,
5879 lon_first: f64,
5880 lon_last: f64,
5881 npoints: *mut ::std::os::raw::c_long,
5882 olon_first: *mut f64,
5883 olon_last: *mut f64,
5884 );
5885}
5886unsafe extern "C" {
5887 pub fn codes_get_message_offset(
5888 h: *const codes_handle,
5889 offset: *mut off_t,
5890 ) -> ::std::os::raw::c_int;
5891}
5892unsafe extern "C" {
5893 pub fn codes_get_message_size(
5894 h: *const codes_handle,
5895 size: *mut usize,
5896 ) -> ::std::os::raw::c_int;
5897}
5898unsafe extern "C" {
5899 pub fn codes_get_product_kind(
5900 h: *const codes_handle,
5901 product_kind: *mut ProductKind,
5902 ) -> ::std::os::raw::c_int;
5903}
5904unsafe extern "C" {
5905 pub fn codes_check_message_header(
5906 bytes: *const ::std::os::raw::c_void,
5907 length: usize,
5908 product: ProductKind,
5909 ) -> ::std::os::raw::c_int;
5910}
5911unsafe extern "C" {
5912 pub fn codes_check_message_footer(
5913 bytes: *const ::std::os::raw::c_void,
5914 length: usize,
5915 product: ProductKind,
5916 ) -> ::std::os::raw::c_int;
5917}
5918unsafe extern "C" {
5919 pub fn codes_grib_util_set_spec(
5920 h: *mut codes_handle,
5921 grid_spec: *const codes_util_grid_spec,
5922 packing_spec: *const codes_util_packing_spec,
5923 flags: ::std::os::raw::c_int,
5924 data_values: *const f64,
5925 data_values_count: usize,
5926 err: *mut ::std::os::raw::c_int,
5927 ) -> *mut codes_handle;
5928}
5929unsafe extern "C" {
5930 pub fn codes_bufr_extract_headers_malloc(
5931 c: *mut codes_context,
5932 filename: *const ::std::os::raw::c_char,
5933 result: *mut *mut codes_bufr_header,
5934 num_messages: *mut ::std::os::raw::c_int,
5935 strict_mode: ::std::os::raw::c_int,
5936 ) -> ::std::os::raw::c_int;
5937}
5938unsafe extern "C" {
5939 pub fn codes_bufr_header_get_string(
5940 bh: *mut codes_bufr_header,
5941 key: *const ::std::os::raw::c_char,
5942 val: *mut ::std::os::raw::c_char,
5943 len: *mut usize,
5944 ) -> ::std::os::raw::c_int;
5945}
5946unsafe extern "C" {
5947 pub fn codes_extract_offsets_malloc(
5948 c: *mut codes_context,
5949 filename: *const ::std::os::raw::c_char,
5950 product: ProductKind,
5951 offsets: *mut *mut off_t,
5952 num_messages: *mut ::std::os::raw::c_int,
5953 strict_mode: ::std::os::raw::c_int,
5954 ) -> ::std::os::raw::c_int;
5955}
5956unsafe extern "C" {
5957 pub fn codes_extract_offsets_sizes_malloc(
5958 c: *mut codes_context,
5959 filename: *const ::std::os::raw::c_char,
5960 product: ProductKind,
5961 offsets: *mut *mut off_t,
5962 sizes: *mut *mut usize,
5963 num_messages: *mut ::std::os::raw::c_int,
5964 strict_mode: ::std::os::raw::c_int,
5965 ) -> ::std::os::raw::c_int;
5966}
5967pub type __builtin_va_list = [__va_list_tag; 1usize];
5968#[repr(C)]
5969#[derive(Debug, Copy, Clone)]
5970pub struct __va_list_tag {
5971 pub gp_offset: ::std::os::raw::c_uint,
5972 pub fp_offset: ::std::os::raw::c_uint,
5973 pub overflow_arg_area: *mut ::std::os::raw::c_void,
5974 pub reg_save_area: *mut ::std::os::raw::c_void,
5975}
5976#[repr(C)]
5977#[derive(Debug, Copy, Clone)]
5978pub struct __locale_data {
5979 pub _address: u8,
5980}