1#[repr(C)]
4#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
5pub struct __BindgenBitfieldUnit<Storage> {
6 storage: Storage,
7}
8impl<Storage> __BindgenBitfieldUnit<Storage> {
9 #[inline]
10 pub const fn new(storage: Storage) -> Self {
11 Self { storage }
12 }
13}
14impl<Storage> __BindgenBitfieldUnit<Storage>
15where
16 Storage: AsRef<[u8]> + AsMut<[u8]>,
17{
18 #[inline]
19 fn extract_bit(byte: u8, index: usize) -> bool {
20 let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 };
21 let mask = 1 << bit_index;
22 byte & mask == mask
23 }
24 #[inline]
25 pub fn get_bit(&self, index: usize) -> bool {
26 debug_assert!(index / 8 < self.storage.as_ref().len());
27 let byte_index = index / 8;
28 let byte = self.storage.as_ref()[byte_index];
29 Self::extract_bit(byte, index)
30 }
31 #[inline]
32 pub unsafe fn raw_get_bit(this: *const Self, index: usize) -> bool {
33 debug_assert!(index / 8 < core::mem::size_of::<Storage>());
34 let byte_index = index / 8;
35 let byte = *(core::ptr::addr_of!((*this).storage) as *const u8).offset(byte_index as isize);
36 Self::extract_bit(byte, index)
37 }
38 #[inline]
39 fn change_bit(byte: u8, index: usize, val: bool) -> u8 {
40 let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 };
41 let mask = 1 << bit_index;
42 if val {
43 byte | mask
44 } else {
45 byte & !mask
46 }
47 }
48 #[inline]
49 pub fn set_bit(&mut self, index: usize, val: bool) {
50 debug_assert!(index / 8 < self.storage.as_ref().len());
51 let byte_index = index / 8;
52 let byte = &mut self.storage.as_mut()[byte_index];
53 *byte = Self::change_bit(*byte, index, val);
54 }
55 #[inline]
56 pub unsafe fn raw_set_bit(this: *mut Self, index: usize, val: bool) {
57 debug_assert!(index / 8 < core::mem::size_of::<Storage>());
58 let byte_index = index / 8;
59 let byte =
60 (core::ptr::addr_of_mut!((*this).storage) as *mut u8).offset(byte_index as isize);
61 *byte = Self::change_bit(*byte, index, val);
62 }
63 #[inline]
64 pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
65 debug_assert!(bit_width <= 64);
66 debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
67 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
68 let mut val = 0;
69 for i in 0..(bit_width as usize) {
70 if self.get_bit(i + bit_offset) {
71 let index =
72 if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i };
73 val |= 1 << index;
74 }
75 }
76 val
77 }
78 #[inline]
79 pub unsafe fn raw_get(this: *const Self, bit_offset: usize, bit_width: u8) -> u64 {
80 debug_assert!(bit_width <= 64);
81 debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
82 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
83 let mut val = 0;
84 for i in 0..(bit_width as usize) {
85 if Self::raw_get_bit(this, i + bit_offset) {
86 let index =
87 if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i };
88 val |= 1 << index;
89 }
90 }
91 val
92 }
93 #[inline]
94 pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
95 debug_assert!(bit_width <= 64);
96 debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
97 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
98 for i in 0..(bit_width as usize) {
99 let mask = 1 << i;
100 let val_bit_is_set = val & mask == mask;
101 let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i };
102 self.set_bit(index + bit_offset, val_bit_is_set);
103 }
104 }
105 #[inline]
106 pub unsafe fn raw_set(this: *mut Self, bit_offset: usize, bit_width: u8, val: u64) {
107 debug_assert!(bit_width <= 64);
108 debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
109 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
110 for i in 0..(bit_width as usize) {
111 let mask = 1 << i;
112 let val_bit_is_set = val & mask == mask;
113 let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i };
114 Self::raw_set_bit(this, index + bit_offset, val_bit_is_set);
115 }
116 }
117}
118pub const __bool_true_false_are_defined: u32 = 1;
119pub const true_: u32 = 1;
120pub const false_: u32 = 0;
121pub const __WORDSIZE: u32 = 64;
122pub const __has_safe_buffers: u32 = 1;
123pub const __DARWIN_ONLY_64_BIT_INO_T: u32 = 1;
124pub const __DARWIN_ONLY_UNIX_CONFORMANCE: u32 = 1;
125pub const __DARWIN_ONLY_VERS_1050: u32 = 1;
126pub const __DARWIN_UNIX03: u32 = 1;
127pub const __DARWIN_64_BIT_INO_T: u32 = 1;
128pub const __DARWIN_VERS_1050: u32 = 1;
129pub const __DARWIN_NON_CANCELABLE: u32 = 0;
130pub const __DARWIN_SUF_EXTSN: &[u8; 14] = b"$DARWIN_EXTSN\0";
131pub const __DARWIN_C_ANSI: u32 = 4096;
132pub const __DARWIN_C_FULL: u32 = 900000;
133pub const __DARWIN_C_LEVEL: u32 = 900000;
134pub const __STDC_WANT_LIB_EXT1__: u32 = 1;
135pub const __DARWIN_NO_LONG_LONG: u32 = 0;
136pub const _DARWIN_FEATURE_64_BIT_INODE: u32 = 1;
137pub const _DARWIN_FEATURE_ONLY_64_BIT_INODE: u32 = 1;
138pub const _DARWIN_FEATURE_ONLY_VERS_1050: u32 = 1;
139pub const _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE: u32 = 1;
140pub const _DARWIN_FEATURE_UNIX_CONFORMANCE: u32 = 3;
141pub const __has_ptrcheck: u32 = 0;
142pub const USE_CLANG_TYPES: u32 = 0;
143pub const __PTHREAD_SIZE__: u32 = 8176;
144pub const __PTHREAD_ATTR_SIZE__: u32 = 56;
145pub const __PTHREAD_MUTEXATTR_SIZE__: u32 = 8;
146pub const __PTHREAD_MUTEX_SIZE__: u32 = 56;
147pub const __PTHREAD_CONDATTR_SIZE__: u32 = 8;
148pub const __PTHREAD_COND_SIZE__: u32 = 40;
149pub const __PTHREAD_ONCE_SIZE__: u32 = 8;
150pub const __PTHREAD_RWLOCK_SIZE__: u32 = 192;
151pub const __PTHREAD_RWLOCKATTR_SIZE__: u32 = 16;
152pub const INT8_MAX: u32 = 127;
153pub const INT16_MAX: u32 = 32767;
154pub const INT32_MAX: u32 = 2147483647;
155pub const INT64_MAX: u64 = 9223372036854775807;
156pub const INT8_MIN: i32 = -128;
157pub const INT16_MIN: i32 = -32768;
158pub const INT32_MIN: i32 = -2147483648;
159pub const INT64_MIN: i64 = -9223372036854775808;
160pub const UINT8_MAX: u32 = 255;
161pub const UINT16_MAX: u32 = 65535;
162pub const UINT32_MAX: u32 = 4294967295;
163pub const UINT64_MAX: i32 = -1;
164pub const INT_LEAST8_MIN: i32 = -128;
165pub const INT_LEAST16_MIN: i32 = -32768;
166pub const INT_LEAST32_MIN: i32 = -2147483648;
167pub const INT_LEAST64_MIN: i64 = -9223372036854775808;
168pub const INT_LEAST8_MAX: u32 = 127;
169pub const INT_LEAST16_MAX: u32 = 32767;
170pub const INT_LEAST32_MAX: u32 = 2147483647;
171pub const INT_LEAST64_MAX: u64 = 9223372036854775807;
172pub const UINT_LEAST8_MAX: u32 = 255;
173pub const UINT_LEAST16_MAX: u32 = 65535;
174pub const UINT_LEAST32_MAX: u32 = 4294967295;
175pub const UINT_LEAST64_MAX: i32 = -1;
176pub const INT_FAST8_MIN: i32 = -128;
177pub const INT_FAST16_MIN: i32 = -32768;
178pub const INT_FAST32_MIN: i32 = -2147483648;
179pub const INT_FAST64_MIN: i64 = -9223372036854775808;
180pub const INT_FAST8_MAX: u32 = 127;
181pub const INT_FAST16_MAX: u32 = 32767;
182pub const INT_FAST32_MAX: u32 = 2147483647;
183pub const INT_FAST64_MAX: u64 = 9223372036854775807;
184pub const UINT_FAST8_MAX: u32 = 255;
185pub const UINT_FAST16_MAX: u32 = 65535;
186pub const UINT_FAST32_MAX: u32 = 4294967295;
187pub const UINT_FAST64_MAX: i32 = -1;
188pub const INTPTR_MAX: u64 = 9223372036854775807;
189pub const INTPTR_MIN: i64 = -9223372036854775808;
190pub const UINTPTR_MAX: i32 = -1;
191pub const SIZE_MAX: i32 = -1;
192pub const RSIZE_MAX: i32 = -1;
193pub const WINT_MIN: i32 = -2147483648;
194pub const WINT_MAX: u32 = 2147483647;
195pub const SIG_ATOMIC_MIN: i32 = -2147483648;
196pub const SIG_ATOMIC_MAX: u32 = 2147483647;
197pub const __API_TO_BE_DEPRECATED: u32 = 100000;
198pub const __API_TO_BE_DEPRECATED_MACOS: u32 = 100000;
199pub const __API_TO_BE_DEPRECATED_MACOSAPPLICATIONEXTENSION: u32 = 100000;
200pub const __API_TO_BE_DEPRECATED_IOS: u32 = 100000;
201pub const __API_TO_BE_DEPRECATED_IOSAPPLICATIONEXTENSION: u32 = 100000;
202pub const __API_TO_BE_DEPRECATED_MACCATALYST: u32 = 100000;
203pub const __API_TO_BE_DEPRECATED_MACCATALYSTAPPLICATIONEXTENSION: u32 = 100000;
204pub const __API_TO_BE_DEPRECATED_WATCHOS: u32 = 100000;
205pub const __API_TO_BE_DEPRECATED_WATCHOSAPPLICATIONEXTENSION: u32 = 100000;
206pub const __API_TO_BE_DEPRECATED_TVOS: u32 = 100000;
207pub const __API_TO_BE_DEPRECATED_TVOSAPPLICATIONEXTENSION: u32 = 100000;
208pub const __API_TO_BE_DEPRECATED_DRIVERKIT: u32 = 100000;
209pub const __API_TO_BE_DEPRECATED_VISIONOS: u32 = 100000;
210pub const __API_TO_BE_DEPRECATED_VISIONOSAPPLICATIONEXTENSION: u32 = 100000;
211pub const __API_TO_BE_DEPRECATED_KERNELKIT: u32 = 100000;
212pub const __MAC_10_0: u32 = 1000;
213pub const __MAC_10_1: u32 = 1010;
214pub const __MAC_10_2: u32 = 1020;
215pub const __MAC_10_3: u32 = 1030;
216pub const __MAC_10_4: u32 = 1040;
217pub const __MAC_10_5: u32 = 1050;
218pub const __MAC_10_6: u32 = 1060;
219pub const __MAC_10_7: u32 = 1070;
220pub const __MAC_10_8: u32 = 1080;
221pub const __MAC_10_9: u32 = 1090;
222pub const __MAC_10_10: u32 = 101000;
223pub const __MAC_10_10_2: u32 = 101002;
224pub const __MAC_10_10_3: u32 = 101003;
225pub const __MAC_10_11: u32 = 101100;
226pub const __MAC_10_11_2: u32 = 101102;
227pub const __MAC_10_11_3: u32 = 101103;
228pub const __MAC_10_11_4: u32 = 101104;
229pub const __MAC_10_12: u32 = 101200;
230pub const __MAC_10_12_1: u32 = 101201;
231pub const __MAC_10_12_2: u32 = 101202;
232pub const __MAC_10_12_4: u32 = 101204;
233pub const __MAC_10_13: u32 = 101300;
234pub const __MAC_10_13_1: u32 = 101301;
235pub const __MAC_10_13_2: u32 = 101302;
236pub const __MAC_10_13_4: u32 = 101304;
237pub const __MAC_10_14: u32 = 101400;
238pub const __MAC_10_14_1: u32 = 101401;
239pub const __MAC_10_14_4: u32 = 101404;
240pub const __MAC_10_14_5: u32 = 101405;
241pub const __MAC_10_14_6: u32 = 101406;
242pub const __MAC_10_15: u32 = 101500;
243pub const __MAC_10_15_1: u32 = 101501;
244pub const __MAC_10_15_4: u32 = 101504;
245pub const __MAC_10_16: u32 = 101600;
246pub const __MAC_11_0: u32 = 110000;
247pub const __MAC_11_1: u32 = 110100;
248pub const __MAC_11_3: u32 = 110300;
249pub const __MAC_11_4: u32 = 110400;
250pub const __MAC_11_5: u32 = 110500;
251pub const __MAC_11_6: u32 = 110600;
252pub const __MAC_12_0: u32 = 120000;
253pub const __MAC_12_1: u32 = 120100;
254pub const __MAC_12_2: u32 = 120200;
255pub const __MAC_12_3: u32 = 120300;
256pub const __MAC_12_4: u32 = 120400;
257pub const __MAC_12_5: u32 = 120500;
258pub const __MAC_12_6: u32 = 120600;
259pub const __MAC_12_7: u32 = 120700;
260pub const __MAC_13_0: u32 = 130000;
261pub const __MAC_13_1: u32 = 130100;
262pub const __MAC_13_2: u32 = 130200;
263pub const __MAC_13_3: u32 = 130300;
264pub const __MAC_13_4: u32 = 130400;
265pub const __MAC_13_5: u32 = 130500;
266pub const __MAC_13_6: u32 = 130600;
267pub const __MAC_13_7: u32 = 130700;
268pub const __MAC_14_0: u32 = 140000;
269pub const __MAC_14_1: u32 = 140100;
270pub const __MAC_14_2: u32 = 140200;
271pub const __MAC_14_3: u32 = 140300;
272pub const __MAC_14_4: u32 = 140400;
273pub const __MAC_14_5: u32 = 140500;
274pub const __MAC_14_6: u32 = 140600;
275pub const __MAC_14_7: u32 = 140700;
276pub const __MAC_15_0: u32 = 150000;
277pub const __MAC_15_1: u32 = 150100;
278pub const __MAC_15_2: u32 = 150200;
279pub const __MAC_15_3: u32 = 150300;
280pub const __MAC_15_4: u32 = 150400;
281pub const __IPHONE_2_0: u32 = 20000;
282pub const __IPHONE_2_1: u32 = 20100;
283pub const __IPHONE_2_2: u32 = 20200;
284pub const __IPHONE_3_0: u32 = 30000;
285pub const __IPHONE_3_1: u32 = 30100;
286pub const __IPHONE_3_2: u32 = 30200;
287pub const __IPHONE_4_0: u32 = 40000;
288pub const __IPHONE_4_1: u32 = 40100;
289pub const __IPHONE_4_2: u32 = 40200;
290pub const __IPHONE_4_3: u32 = 40300;
291pub const __IPHONE_5_0: u32 = 50000;
292pub const __IPHONE_5_1: u32 = 50100;
293pub const __IPHONE_6_0: u32 = 60000;
294pub const __IPHONE_6_1: u32 = 60100;
295pub const __IPHONE_7_0: u32 = 70000;
296pub const __IPHONE_7_1: u32 = 70100;
297pub const __IPHONE_8_0: u32 = 80000;
298pub const __IPHONE_8_1: u32 = 80100;
299pub const __IPHONE_8_2: u32 = 80200;
300pub const __IPHONE_8_3: u32 = 80300;
301pub const __IPHONE_8_4: u32 = 80400;
302pub const __IPHONE_9_0: u32 = 90000;
303pub const __IPHONE_9_1: u32 = 90100;
304pub const __IPHONE_9_2: u32 = 90200;
305pub const __IPHONE_9_3: u32 = 90300;
306pub const __IPHONE_10_0: u32 = 100000;
307pub const __IPHONE_10_1: u32 = 100100;
308pub const __IPHONE_10_2: u32 = 100200;
309pub const __IPHONE_10_3: u32 = 100300;
310pub const __IPHONE_11_0: u32 = 110000;
311pub const __IPHONE_11_1: u32 = 110100;
312pub const __IPHONE_11_2: u32 = 110200;
313pub const __IPHONE_11_3: u32 = 110300;
314pub const __IPHONE_11_4: u32 = 110400;
315pub const __IPHONE_12_0: u32 = 120000;
316pub const __IPHONE_12_1: u32 = 120100;
317pub const __IPHONE_12_2: u32 = 120200;
318pub const __IPHONE_12_3: u32 = 120300;
319pub const __IPHONE_12_4: u32 = 120400;
320pub const __IPHONE_13_0: u32 = 130000;
321pub const __IPHONE_13_1: u32 = 130100;
322pub const __IPHONE_13_2: u32 = 130200;
323pub const __IPHONE_13_3: u32 = 130300;
324pub const __IPHONE_13_4: u32 = 130400;
325pub const __IPHONE_13_5: u32 = 130500;
326pub const __IPHONE_13_6: u32 = 130600;
327pub const __IPHONE_13_7: u32 = 130700;
328pub const __IPHONE_14_0: u32 = 140000;
329pub const __IPHONE_14_1: u32 = 140100;
330pub const __IPHONE_14_2: u32 = 140200;
331pub const __IPHONE_14_3: u32 = 140300;
332pub const __IPHONE_14_5: u32 = 140500;
333pub const __IPHONE_14_4: u32 = 140400;
334pub const __IPHONE_14_6: u32 = 140600;
335pub const __IPHONE_14_7: u32 = 140700;
336pub const __IPHONE_14_8: u32 = 140800;
337pub const __IPHONE_15_0: u32 = 150000;
338pub const __IPHONE_15_1: u32 = 150100;
339pub const __IPHONE_15_2: u32 = 150200;
340pub const __IPHONE_15_3: u32 = 150300;
341pub const __IPHONE_15_4: u32 = 150400;
342pub const __IPHONE_15_5: u32 = 150500;
343pub const __IPHONE_15_6: u32 = 150600;
344pub const __IPHONE_15_7: u32 = 150700;
345pub const __IPHONE_15_8: u32 = 150800;
346pub const __IPHONE_16_0: u32 = 160000;
347pub const __IPHONE_16_1: u32 = 160100;
348pub const __IPHONE_16_2: u32 = 160200;
349pub const __IPHONE_16_3: u32 = 160300;
350pub const __IPHONE_16_4: u32 = 160400;
351pub const __IPHONE_16_5: u32 = 160500;
352pub const __IPHONE_16_6: u32 = 160600;
353pub const __IPHONE_16_7: u32 = 160700;
354pub const __IPHONE_17_0: u32 = 170000;
355pub const __IPHONE_17_1: u32 = 170100;
356pub const __IPHONE_17_2: u32 = 170200;
357pub const __IPHONE_17_3: u32 = 170300;
358pub const __IPHONE_17_4: u32 = 170400;
359pub const __IPHONE_17_5: u32 = 170500;
360pub const __IPHONE_17_6: u32 = 170600;
361pub const __IPHONE_17_7: u32 = 170700;
362pub const __IPHONE_18_0: u32 = 180000;
363pub const __IPHONE_18_1: u32 = 180100;
364pub const __IPHONE_18_2: u32 = 180200;
365pub const __IPHONE_18_3: u32 = 180300;
366pub const __IPHONE_18_4: u32 = 180400;
367pub const __WATCHOS_1_0: u32 = 10000;
368pub const __WATCHOS_2_0: u32 = 20000;
369pub const __WATCHOS_2_1: u32 = 20100;
370pub const __WATCHOS_2_2: u32 = 20200;
371pub const __WATCHOS_3_0: u32 = 30000;
372pub const __WATCHOS_3_1: u32 = 30100;
373pub const __WATCHOS_3_1_1: u32 = 30101;
374pub const __WATCHOS_3_2: u32 = 30200;
375pub const __WATCHOS_4_0: u32 = 40000;
376pub const __WATCHOS_4_1: u32 = 40100;
377pub const __WATCHOS_4_2: u32 = 40200;
378pub const __WATCHOS_4_3: u32 = 40300;
379pub const __WATCHOS_5_0: u32 = 50000;
380pub const __WATCHOS_5_1: u32 = 50100;
381pub const __WATCHOS_5_2: u32 = 50200;
382pub const __WATCHOS_5_3: u32 = 50300;
383pub const __WATCHOS_6_0: u32 = 60000;
384pub const __WATCHOS_6_1: u32 = 60100;
385pub const __WATCHOS_6_2: u32 = 60200;
386pub const __WATCHOS_7_0: u32 = 70000;
387pub const __WATCHOS_7_1: u32 = 70100;
388pub const __WATCHOS_7_2: u32 = 70200;
389pub const __WATCHOS_7_3: u32 = 70300;
390pub const __WATCHOS_7_4: u32 = 70400;
391pub const __WATCHOS_7_5: u32 = 70500;
392pub const __WATCHOS_7_6: u32 = 70600;
393pub const __WATCHOS_8_0: u32 = 80000;
394pub const __WATCHOS_8_1: u32 = 80100;
395pub const __WATCHOS_8_3: u32 = 80300;
396pub const __WATCHOS_8_4: u32 = 80400;
397pub const __WATCHOS_8_5: u32 = 80500;
398pub const __WATCHOS_8_6: u32 = 80600;
399pub const __WATCHOS_8_7: u32 = 80700;
400pub const __WATCHOS_8_8: u32 = 80800;
401pub const __WATCHOS_9_0: u32 = 90000;
402pub const __WATCHOS_9_1: u32 = 90100;
403pub const __WATCHOS_9_2: u32 = 90200;
404pub const __WATCHOS_9_3: u32 = 90300;
405pub const __WATCHOS_9_4: u32 = 90400;
406pub const __WATCHOS_9_5: u32 = 90500;
407pub const __WATCHOS_9_6: u32 = 90600;
408pub const __WATCHOS_10_0: u32 = 100000;
409pub const __WATCHOS_10_1: u32 = 100100;
410pub const __WATCHOS_10_2: u32 = 100200;
411pub const __WATCHOS_10_3: u32 = 100300;
412pub const __WATCHOS_10_4: u32 = 100400;
413pub const __WATCHOS_10_5: u32 = 100500;
414pub const __WATCHOS_10_6: u32 = 100600;
415pub const __WATCHOS_10_7: u32 = 100700;
416pub const __WATCHOS_11_0: u32 = 110000;
417pub const __WATCHOS_11_1: u32 = 110100;
418pub const __WATCHOS_11_2: u32 = 110200;
419pub const __WATCHOS_11_3: u32 = 110300;
420pub const __WATCHOS_11_4: u32 = 110400;
421pub const __TVOS_9_0: u32 = 90000;
422pub const __TVOS_9_1: u32 = 90100;
423pub const __TVOS_9_2: u32 = 90200;
424pub const __TVOS_10_0: u32 = 100000;
425pub const __TVOS_10_0_1: u32 = 100001;
426pub const __TVOS_10_1: u32 = 100100;
427pub const __TVOS_10_2: u32 = 100200;
428pub const __TVOS_11_0: u32 = 110000;
429pub const __TVOS_11_1: u32 = 110100;
430pub const __TVOS_11_2: u32 = 110200;
431pub const __TVOS_11_3: u32 = 110300;
432pub const __TVOS_11_4: u32 = 110400;
433pub const __TVOS_12_0: u32 = 120000;
434pub const __TVOS_12_1: u32 = 120100;
435pub const __TVOS_12_2: u32 = 120200;
436pub const __TVOS_12_3: u32 = 120300;
437pub const __TVOS_12_4: u32 = 120400;
438pub const __TVOS_13_0: u32 = 130000;
439pub const __TVOS_13_2: u32 = 130200;
440pub const __TVOS_13_3: u32 = 130300;
441pub const __TVOS_13_4: u32 = 130400;
442pub const __TVOS_14_0: u32 = 140000;
443pub const __TVOS_14_1: u32 = 140100;
444pub const __TVOS_14_2: u32 = 140200;
445pub const __TVOS_14_3: u32 = 140300;
446pub const __TVOS_14_5: u32 = 140500;
447pub const __TVOS_14_6: u32 = 140600;
448pub const __TVOS_14_7: u32 = 140700;
449pub const __TVOS_15_0: u32 = 150000;
450pub const __TVOS_15_1: u32 = 150100;
451pub const __TVOS_15_2: u32 = 150200;
452pub const __TVOS_15_3: u32 = 150300;
453pub const __TVOS_15_4: u32 = 150400;
454pub const __TVOS_15_5: u32 = 150500;
455pub const __TVOS_15_6: u32 = 150600;
456pub const __TVOS_16_0: u32 = 160000;
457pub const __TVOS_16_1: u32 = 160100;
458pub const __TVOS_16_2: u32 = 160200;
459pub const __TVOS_16_3: u32 = 160300;
460pub const __TVOS_16_4: u32 = 160400;
461pub const __TVOS_16_5: u32 = 160500;
462pub const __TVOS_16_6: u32 = 160600;
463pub const __TVOS_17_0: u32 = 170000;
464pub const __TVOS_17_1: u32 = 170100;
465pub const __TVOS_17_2: u32 = 170200;
466pub const __TVOS_17_3: u32 = 170300;
467pub const __TVOS_17_4: u32 = 170400;
468pub const __TVOS_17_5: u32 = 170500;
469pub const __TVOS_17_6: u32 = 170600;
470pub const __TVOS_18_0: u32 = 180000;
471pub const __TVOS_18_1: u32 = 180100;
472pub const __TVOS_18_2: u32 = 180200;
473pub const __TVOS_18_3: u32 = 180300;
474pub const __TVOS_18_4: u32 = 180400;
475pub const __BRIDGEOS_2_0: u32 = 20000;
476pub const __BRIDGEOS_3_0: u32 = 30000;
477pub const __BRIDGEOS_3_1: u32 = 30100;
478pub const __BRIDGEOS_3_4: u32 = 30400;
479pub const __BRIDGEOS_4_0: u32 = 40000;
480pub const __BRIDGEOS_4_1: u32 = 40100;
481pub const __BRIDGEOS_5_0: u32 = 50000;
482pub const __BRIDGEOS_5_1: u32 = 50100;
483pub const __BRIDGEOS_5_3: u32 = 50300;
484pub const __BRIDGEOS_6_0: u32 = 60000;
485pub const __BRIDGEOS_6_2: u32 = 60200;
486pub const __BRIDGEOS_6_4: u32 = 60400;
487pub const __BRIDGEOS_6_5: u32 = 60500;
488pub const __BRIDGEOS_6_6: u32 = 60600;
489pub const __BRIDGEOS_7_0: u32 = 70000;
490pub const __BRIDGEOS_7_1: u32 = 70100;
491pub const __BRIDGEOS_7_2: u32 = 70200;
492pub const __BRIDGEOS_7_3: u32 = 70300;
493pub const __BRIDGEOS_7_4: u32 = 70400;
494pub const __BRIDGEOS_7_6: u32 = 70600;
495pub const __BRIDGEOS_8_0: u32 = 80000;
496pub const __BRIDGEOS_8_1: u32 = 80100;
497pub const __BRIDGEOS_8_2: u32 = 80200;
498pub const __BRIDGEOS_8_3: u32 = 80300;
499pub const __BRIDGEOS_8_4: u32 = 80400;
500pub const __BRIDGEOS_8_5: u32 = 80500;
501pub const __BRIDGEOS_8_6: u32 = 80600;
502pub const __BRIDGEOS_9_0: u32 = 90000;
503pub const __BRIDGEOS_9_1: u32 = 90100;
504pub const __BRIDGEOS_9_2: u32 = 90200;
505pub const __BRIDGEOS_9_3: u32 = 90300;
506pub const __BRIDGEOS_9_4: u32 = 90400;
507pub const __DRIVERKIT_19_0: u32 = 190000;
508pub const __DRIVERKIT_20_0: u32 = 200000;
509pub const __DRIVERKIT_21_0: u32 = 210000;
510pub const __DRIVERKIT_22_0: u32 = 220000;
511pub const __DRIVERKIT_22_4: u32 = 220400;
512pub const __DRIVERKIT_22_5: u32 = 220500;
513pub const __DRIVERKIT_22_6: u32 = 220600;
514pub const __DRIVERKIT_23_0: u32 = 230000;
515pub const __DRIVERKIT_23_1: u32 = 230100;
516pub const __DRIVERKIT_23_2: u32 = 230200;
517pub const __DRIVERKIT_23_3: u32 = 230300;
518pub const __DRIVERKIT_23_4: u32 = 230400;
519pub const __DRIVERKIT_23_5: u32 = 230500;
520pub const __DRIVERKIT_23_6: u32 = 230600;
521pub const __DRIVERKIT_24_0: u32 = 240000;
522pub const __DRIVERKIT_24_1: u32 = 240100;
523pub const __DRIVERKIT_24_2: u32 = 240200;
524pub const __DRIVERKIT_24_3: u32 = 240300;
525pub const __DRIVERKIT_24_4: u32 = 240400;
526pub const __VISIONOS_1_0: u32 = 10000;
527pub const __VISIONOS_1_1: u32 = 10100;
528pub const __VISIONOS_1_2: u32 = 10200;
529pub const __VISIONOS_1_3: u32 = 10300;
530pub const __VISIONOS_2_0: u32 = 20000;
531pub const __VISIONOS_2_1: u32 = 20100;
532pub const __VISIONOS_2_2: u32 = 20200;
533pub const __VISIONOS_2_3: u32 = 20300;
534pub const __VISIONOS_2_4: u32 = 20400;
535pub const MAC_OS_X_VERSION_10_0: u32 = 1000;
536pub const MAC_OS_X_VERSION_10_1: u32 = 1010;
537pub const MAC_OS_X_VERSION_10_2: u32 = 1020;
538pub const MAC_OS_X_VERSION_10_3: u32 = 1030;
539pub const MAC_OS_X_VERSION_10_4: u32 = 1040;
540pub const MAC_OS_X_VERSION_10_5: u32 = 1050;
541pub const MAC_OS_X_VERSION_10_6: u32 = 1060;
542pub const MAC_OS_X_VERSION_10_7: u32 = 1070;
543pub const MAC_OS_X_VERSION_10_8: u32 = 1080;
544pub const MAC_OS_X_VERSION_10_9: u32 = 1090;
545pub const MAC_OS_X_VERSION_10_10: u32 = 101000;
546pub const MAC_OS_X_VERSION_10_10_2: u32 = 101002;
547pub const MAC_OS_X_VERSION_10_10_3: u32 = 101003;
548pub const MAC_OS_X_VERSION_10_11: u32 = 101100;
549pub const MAC_OS_X_VERSION_10_11_2: u32 = 101102;
550pub const MAC_OS_X_VERSION_10_11_3: u32 = 101103;
551pub const MAC_OS_X_VERSION_10_11_4: u32 = 101104;
552pub const MAC_OS_X_VERSION_10_12: u32 = 101200;
553pub const MAC_OS_X_VERSION_10_12_1: u32 = 101201;
554pub const MAC_OS_X_VERSION_10_12_2: u32 = 101202;
555pub const MAC_OS_X_VERSION_10_12_4: u32 = 101204;
556pub const MAC_OS_X_VERSION_10_13: u32 = 101300;
557pub const MAC_OS_X_VERSION_10_13_1: u32 = 101301;
558pub const MAC_OS_X_VERSION_10_13_2: u32 = 101302;
559pub const MAC_OS_X_VERSION_10_13_4: u32 = 101304;
560pub const MAC_OS_X_VERSION_10_14: u32 = 101400;
561pub const MAC_OS_X_VERSION_10_14_1: u32 = 101401;
562pub const MAC_OS_X_VERSION_10_14_4: u32 = 101404;
563pub const MAC_OS_X_VERSION_10_14_5: u32 = 101405;
564pub const MAC_OS_X_VERSION_10_14_6: u32 = 101406;
565pub const MAC_OS_X_VERSION_10_15: u32 = 101500;
566pub const MAC_OS_X_VERSION_10_15_1: u32 = 101501;
567pub const MAC_OS_X_VERSION_10_15_4: u32 = 101504;
568pub const MAC_OS_X_VERSION_10_16: u32 = 101600;
569pub const MAC_OS_VERSION_11_0: u32 = 110000;
570pub const MAC_OS_VERSION_11_1: u32 = 110100;
571pub const MAC_OS_VERSION_11_3: u32 = 110300;
572pub const MAC_OS_VERSION_11_4: u32 = 110400;
573pub const MAC_OS_VERSION_11_5: u32 = 110500;
574pub const MAC_OS_VERSION_11_6: u32 = 110600;
575pub const MAC_OS_VERSION_12_0: u32 = 120000;
576pub const MAC_OS_VERSION_12_1: u32 = 120100;
577pub const MAC_OS_VERSION_12_2: u32 = 120200;
578pub const MAC_OS_VERSION_12_3: u32 = 120300;
579pub const MAC_OS_VERSION_12_4: u32 = 120400;
580pub const MAC_OS_VERSION_12_5: u32 = 120500;
581pub const MAC_OS_VERSION_12_6: u32 = 120600;
582pub const MAC_OS_VERSION_12_7: u32 = 120700;
583pub const MAC_OS_VERSION_13_0: u32 = 130000;
584pub const MAC_OS_VERSION_13_1: u32 = 130100;
585pub const MAC_OS_VERSION_13_2: u32 = 130200;
586pub const MAC_OS_VERSION_13_3: u32 = 130300;
587pub const MAC_OS_VERSION_13_4: u32 = 130400;
588pub const MAC_OS_VERSION_13_5: u32 = 130500;
589pub const MAC_OS_VERSION_13_6: u32 = 130600;
590pub const MAC_OS_VERSION_13_7: u32 = 130700;
591pub const MAC_OS_VERSION_14_0: u32 = 140000;
592pub const MAC_OS_VERSION_14_1: u32 = 140100;
593pub const MAC_OS_VERSION_14_2: u32 = 140200;
594pub const MAC_OS_VERSION_14_3: u32 = 140300;
595pub const MAC_OS_VERSION_14_4: u32 = 140400;
596pub const MAC_OS_VERSION_14_5: u32 = 140500;
597pub const MAC_OS_VERSION_14_6: u32 = 140600;
598pub const MAC_OS_VERSION_14_7: u32 = 140700;
599pub const MAC_OS_VERSION_15_0: u32 = 150000;
600pub const MAC_OS_VERSION_15_1: u32 = 150100;
601pub const MAC_OS_VERSION_15_2: u32 = 150200;
602pub const MAC_OS_VERSION_15_3: u32 = 150300;
603pub const MAC_OS_VERSION_15_4: u32 = 150400;
604pub const __AVAILABILITY_VERSIONS_VERSION_HASH: u32 = 93585900;
605pub const __AVAILABILITY_VERSIONS_VERSION_STRING: &[u8; 6] = b"Local\0";
606pub const __AVAILABILITY_FILE: &[u8; 23] = b"AvailabilityVersions.h\0";
607pub const __MAC_OS_X_VERSION_MAX_ALLOWED: u32 = 150400;
608pub const __ENABLE_LEGACY_MAC_AVAILABILITY: u32 = 1;
609pub const __DARWIN_WCHAR_MIN: i32 = -2147483648;
610pub const _FORTIFY_SOURCE: u32 = 2;
611pub const __DARWIN_NSIG: u32 = 32;
612pub const NSIG: u32 = 32;
613pub const _ARM_SIGNAL_: u32 = 1;
614pub const SIGHUP: u32 = 1;
615pub const SIGINT: u32 = 2;
616pub const SIGQUIT: u32 = 3;
617pub const SIGILL: u32 = 4;
618pub const SIGTRAP: u32 = 5;
619pub const SIGABRT: u32 = 6;
620pub const SIGIOT: u32 = 6;
621pub const SIGEMT: u32 = 7;
622pub const SIGFPE: u32 = 8;
623pub const SIGKILL: u32 = 9;
624pub const SIGBUS: u32 = 10;
625pub const SIGSEGV: u32 = 11;
626pub const SIGSYS: u32 = 12;
627pub const SIGPIPE: u32 = 13;
628pub const SIGALRM: u32 = 14;
629pub const SIGTERM: u32 = 15;
630pub const SIGURG: u32 = 16;
631pub const SIGSTOP: u32 = 17;
632pub const SIGTSTP: u32 = 18;
633pub const SIGCONT: u32 = 19;
634pub const SIGCHLD: u32 = 20;
635pub const SIGTTIN: u32 = 21;
636pub const SIGTTOU: u32 = 22;
637pub const SIGIO: u32 = 23;
638pub const SIGXCPU: u32 = 24;
639pub const SIGXFSZ: u32 = 25;
640pub const SIGVTALRM: u32 = 26;
641pub const SIGPROF: u32 = 27;
642pub const SIGWINCH: u32 = 28;
643pub const SIGINFO: u32 = 29;
644pub const SIGUSR1: u32 = 30;
645pub const SIGUSR2: u32 = 31;
646pub const __DARWIN_OPAQUE_ARM_THREAD_STATE64: u32 = 0;
647pub const USE_CLANG_STDDEF: u32 = 0;
648pub const SIGEV_NONE: u32 = 0;
649pub const SIGEV_SIGNAL: u32 = 1;
650pub const SIGEV_THREAD: u32 = 3;
651pub const ILL_NOOP: u32 = 0;
652pub const ILL_ILLOPC: u32 = 1;
653pub const ILL_ILLTRP: u32 = 2;
654pub const ILL_PRVOPC: u32 = 3;
655pub const ILL_ILLOPN: u32 = 4;
656pub const ILL_ILLADR: u32 = 5;
657pub const ILL_PRVREG: u32 = 6;
658pub const ILL_COPROC: u32 = 7;
659pub const ILL_BADSTK: u32 = 8;
660pub const FPE_NOOP: u32 = 0;
661pub const FPE_FLTDIV: u32 = 1;
662pub const FPE_FLTOVF: u32 = 2;
663pub const FPE_FLTUND: u32 = 3;
664pub const FPE_FLTRES: u32 = 4;
665pub const FPE_FLTINV: u32 = 5;
666pub const FPE_FLTSUB: u32 = 6;
667pub const FPE_INTDIV: u32 = 7;
668pub const FPE_INTOVF: u32 = 8;
669pub const SEGV_NOOP: u32 = 0;
670pub const SEGV_MAPERR: u32 = 1;
671pub const SEGV_ACCERR: u32 = 2;
672pub const BUS_NOOP: u32 = 0;
673pub const BUS_ADRALN: u32 = 1;
674pub const BUS_ADRERR: u32 = 2;
675pub const BUS_OBJERR: u32 = 3;
676pub const TRAP_BRKPT: u32 = 1;
677pub const TRAP_TRACE: u32 = 2;
678pub const CLD_NOOP: u32 = 0;
679pub const CLD_EXITED: u32 = 1;
680pub const CLD_KILLED: u32 = 2;
681pub const CLD_DUMPED: u32 = 3;
682pub const CLD_TRAPPED: u32 = 4;
683pub const CLD_STOPPED: u32 = 5;
684pub const CLD_CONTINUED: u32 = 6;
685pub const POLL_IN: u32 = 1;
686pub const POLL_OUT: u32 = 2;
687pub const POLL_MSG: u32 = 3;
688pub const POLL_ERR: u32 = 4;
689pub const POLL_PRI: u32 = 5;
690pub const POLL_HUP: u32 = 6;
691pub const SA_ONSTACK: u32 = 1;
692pub const SA_RESTART: u32 = 2;
693pub const SA_RESETHAND: u32 = 4;
694pub const SA_NOCLDSTOP: u32 = 8;
695pub const SA_NODEFER: u32 = 16;
696pub const SA_NOCLDWAIT: u32 = 32;
697pub const SA_SIGINFO: u32 = 64;
698pub const SA_USERTRAMP: u32 = 256;
699pub const SA_64REGSET: u32 = 512;
700pub const SA_USERSPACE_MASK: u32 = 127;
701pub const SIG_BLOCK: u32 = 1;
702pub const SIG_UNBLOCK: u32 = 2;
703pub const SIG_SETMASK: u32 = 3;
704pub const SI_USER: u32 = 65537;
705pub const SI_QUEUE: u32 = 65538;
706pub const SI_TIMER: u32 = 65539;
707pub const SI_ASYNCIO: u32 = 65540;
708pub const SI_MESGQ: u32 = 65541;
709pub const SS_ONSTACK: u32 = 1;
710pub const SS_DISABLE: u32 = 4;
711pub const MINSIGSTKSZ: u32 = 32768;
712pub const SIGSTKSZ: u32 = 131072;
713pub const SV_ONSTACK: u32 = 1;
714pub const SV_INTERRUPT: u32 = 2;
715pub const SV_RESETHAND: u32 = 4;
716pub const SV_NODEFER: u32 = 16;
717pub const SV_NOCLDSTOP: u32 = 8;
718pub const SV_SIGINFO: u32 = 64;
719pub const PRIO_PROCESS: u32 = 0;
720pub const PRIO_PGRP: u32 = 1;
721pub const PRIO_USER: u32 = 2;
722pub const PRIO_DARWIN_THREAD: u32 = 3;
723pub const PRIO_DARWIN_PROCESS: u32 = 4;
724pub const PRIO_MIN: i32 = -20;
725pub const PRIO_MAX: u32 = 20;
726pub const PRIO_DARWIN_BG: u32 = 4096;
727pub const PRIO_DARWIN_NONUI: u32 = 4097;
728pub const RUSAGE_SELF: u32 = 0;
729pub const RUSAGE_CHILDREN: i32 = -1;
730pub const RUSAGE_INFO_V0: u32 = 0;
731pub const RUSAGE_INFO_V1: u32 = 1;
732pub const RUSAGE_INFO_V2: u32 = 2;
733pub const RUSAGE_INFO_V3: u32 = 3;
734pub const RUSAGE_INFO_V4: u32 = 4;
735pub const RUSAGE_INFO_V5: u32 = 5;
736pub const RUSAGE_INFO_V6: u32 = 6;
737pub const RUSAGE_INFO_CURRENT: u32 = 6;
738pub const RU_PROC_RUNS_RESLIDE: u32 = 1;
739pub const RLIMIT_CPU: u32 = 0;
740pub const RLIMIT_FSIZE: u32 = 1;
741pub const RLIMIT_DATA: u32 = 2;
742pub const RLIMIT_STACK: u32 = 3;
743pub const RLIMIT_CORE: u32 = 4;
744pub const RLIMIT_AS: u32 = 5;
745pub const RLIMIT_RSS: u32 = 5;
746pub const RLIMIT_MEMLOCK: u32 = 6;
747pub const RLIMIT_NPROC: u32 = 7;
748pub const RLIMIT_NOFILE: u32 = 8;
749pub const RLIM_NLIMITS: u32 = 9;
750pub const _RLIMIT_POSIX_FLAG: u32 = 4096;
751pub const RLIMIT_WAKEUPS_MONITOR: u32 = 1;
752pub const RLIMIT_CPU_USAGE_MONITOR: u32 = 2;
753pub const RLIMIT_THREAD_CPULIMITS: u32 = 3;
754pub const RLIMIT_FOOTPRINT_INTERVAL: u32 = 4;
755pub const WAKEMON_ENABLE: u32 = 1;
756pub const WAKEMON_DISABLE: u32 = 2;
757pub const WAKEMON_GET_PARAMS: u32 = 4;
758pub const WAKEMON_SET_DEFAULTS: u32 = 8;
759pub const WAKEMON_MAKE_FATAL: u32 = 16;
760pub const CPUMON_MAKE_FATAL: u32 = 4096;
761pub const FOOTPRINT_INTERVAL_RESET: u32 = 1;
762pub const IOPOL_TYPE_DISK: u32 = 0;
763pub const IOPOL_TYPE_VFS_ATIME_UPDATES: u32 = 2;
764pub const IOPOL_TYPE_VFS_MATERIALIZE_DATALESS_FILES: u32 = 3;
765pub const IOPOL_TYPE_VFS_STATFS_NO_DATA_VOLUME: u32 = 4;
766pub const IOPOL_TYPE_VFS_TRIGGER_RESOLVE: u32 = 5;
767pub const IOPOL_TYPE_VFS_IGNORE_CONTENT_PROTECTION: u32 = 6;
768pub const IOPOL_TYPE_VFS_IGNORE_PERMISSIONS: u32 = 7;
769pub const IOPOL_TYPE_VFS_SKIP_MTIME_UPDATE: u32 = 8;
770pub const IOPOL_TYPE_VFS_ALLOW_LOW_SPACE_WRITES: u32 = 9;
771pub const IOPOL_TYPE_VFS_DISALLOW_RW_FOR_O_EVTONLY: u32 = 10;
772pub const IOPOL_SCOPE_PROCESS: u32 = 0;
773pub const IOPOL_SCOPE_THREAD: u32 = 1;
774pub const IOPOL_SCOPE_DARWIN_BG: u32 = 2;
775pub const IOPOL_DEFAULT: u32 = 0;
776pub const IOPOL_IMPORTANT: u32 = 1;
777pub const IOPOL_PASSIVE: u32 = 2;
778pub const IOPOL_THROTTLE: u32 = 3;
779pub const IOPOL_UTILITY: u32 = 4;
780pub const IOPOL_STANDARD: u32 = 5;
781pub const IOPOL_APPLICATION: u32 = 5;
782pub const IOPOL_NORMAL: u32 = 1;
783pub const IOPOL_ATIME_UPDATES_DEFAULT: u32 = 0;
784pub const IOPOL_ATIME_UPDATES_OFF: u32 = 1;
785pub const IOPOL_MATERIALIZE_DATALESS_FILES_DEFAULT: u32 = 0;
786pub const IOPOL_MATERIALIZE_DATALESS_FILES_OFF: u32 = 1;
787pub const IOPOL_MATERIALIZE_DATALESS_FILES_ON: u32 = 2;
788pub const IOPOL_VFS_STATFS_NO_DATA_VOLUME_DEFAULT: u32 = 0;
789pub const IOPOL_VFS_STATFS_FORCE_NO_DATA_VOLUME: u32 = 1;
790pub const IOPOL_VFS_TRIGGER_RESOLVE_DEFAULT: u32 = 0;
791pub const IOPOL_VFS_TRIGGER_RESOLVE_OFF: u32 = 1;
792pub const IOPOL_VFS_CONTENT_PROTECTION_DEFAULT: u32 = 0;
793pub const IOPOL_VFS_CONTENT_PROTECTION_IGNORE: u32 = 1;
794pub const IOPOL_VFS_IGNORE_PERMISSIONS_OFF: u32 = 0;
795pub const IOPOL_VFS_IGNORE_PERMISSIONS_ON: u32 = 1;
796pub const IOPOL_VFS_SKIP_MTIME_UPDATE_OFF: u32 = 0;
797pub const IOPOL_VFS_SKIP_MTIME_UPDATE_ON: u32 = 1;
798pub const IOPOL_VFS_SKIP_MTIME_UPDATE_IGNORE: u32 = 2;
799pub const IOPOL_VFS_ALLOW_LOW_SPACE_WRITES_OFF: u32 = 0;
800pub const IOPOL_VFS_ALLOW_LOW_SPACE_WRITES_ON: u32 = 1;
801pub const IOPOL_VFS_DISALLOW_RW_FOR_O_EVTONLY_DEFAULT: u32 = 0;
802pub const IOPOL_VFS_DISALLOW_RW_FOR_O_EVTONLY_ON: u32 = 1;
803pub const IOPOL_VFS_NOCACHE_WRITE_FS_BLKSIZE_DEFAULT: u32 = 0;
804pub const IOPOL_VFS_NOCACHE_WRITE_FS_BLKSIZE_ON: u32 = 1;
805pub const WNOHANG: u32 = 1;
806pub const WUNTRACED: u32 = 2;
807pub const WCOREFLAG: u32 = 128;
808pub const _WSTOPPED: u32 = 127;
809pub const WEXITED: u32 = 4;
810pub const WSTOPPED: u32 = 8;
811pub const WCONTINUED: u32 = 16;
812pub const WNOWAIT: u32 = 32;
813pub const WAIT_ANY: i32 = -1;
814pub const WAIT_MYPGRP: u32 = 0;
815pub const _QUAD_HIGHWORD: u32 = 1;
816pub const _QUAD_LOWWORD: u32 = 0;
817pub const __DARWIN_LITTLE_ENDIAN: u32 = 1234;
818pub const __DARWIN_BIG_ENDIAN: u32 = 4321;
819pub const __DARWIN_PDP_ENDIAN: u32 = 3412;
820pub const LITTLE_ENDIAN: u32 = 1234;
821pub const BIG_ENDIAN: u32 = 4321;
822pub const PDP_ENDIAN: u32 = 3412;
823pub const __DARWIN_BYTE_ORDER: u32 = 1234;
824pub const BYTE_ORDER: u32 = 1234;
825pub const EXIT_FAILURE: u32 = 1;
826pub const EXIT_SUCCESS: u32 = 0;
827pub const RAND_MAX: u32 = 2147483647;
828pub type __gnuc_va_list = __builtin_va_list;
829pub type va_list = __builtin_va_list;
830pub type int_least8_t = i8;
831pub type int_least16_t = i16;
832pub type int_least32_t = i32;
833pub type int_least64_t = i64;
834pub type uint_least8_t = u8;
835pub type uint_least16_t = u16;
836pub type uint_least32_t = u32;
837pub type uint_least64_t = u64;
838pub type int_fast8_t = i8;
839pub type int_fast16_t = i16;
840pub type int_fast32_t = i32;
841pub type int_fast64_t = i64;
842pub type uint_fast8_t = u8;
843pub type uint_fast16_t = u16;
844pub type uint_fast32_t = u32;
845pub type uint_fast64_t = u64;
846pub type __int8_t = ::std::os::raw::c_schar;
847pub type __uint8_t = ::std::os::raw::c_uchar;
848pub type __int16_t = ::std::os::raw::c_short;
849pub type __uint16_t = ::std::os::raw::c_ushort;
850pub type __int32_t = ::std::os::raw::c_int;
851pub type __uint32_t = ::std::os::raw::c_uint;
852pub type __int64_t = ::std::os::raw::c_longlong;
853pub type __uint64_t = ::std::os::raw::c_ulonglong;
854pub type __darwin_intptr_t = ::std::os::raw::c_long;
855pub type __darwin_natural_t = ::std::os::raw::c_uint;
856pub type __darwin_ct_rune_t = ::std::os::raw::c_int;
857#[repr(C)]
858#[derive(Copy, Clone)]
859pub union __mbstate_t {
860 pub __mbstate8: [::std::os::raw::c_char; 128usize],
861 pub _mbstateL: ::std::os::raw::c_longlong,
862}
863#[test]
864fn bindgen_test_layout___mbstate_t() {
865 const UNINIT: ::std::mem::MaybeUninit<__mbstate_t> = ::std::mem::MaybeUninit::uninit();
866 let ptr = UNINIT.as_ptr();
867 assert_eq!(::std::mem::size_of::<__mbstate_t>(), 128usize, "Size of __mbstate_t");
868 assert_eq!(::std::mem::align_of::<__mbstate_t>(), 8usize, "Alignment of __mbstate_t");
869 assert_eq!(
870 unsafe { ::std::ptr::addr_of!((*ptr).__mbstate8) as usize - ptr as usize },
871 0usize,
872 "Offset of field: __mbstate_t::__mbstate8"
873 );
874 assert_eq!(
875 unsafe { ::std::ptr::addr_of!((*ptr)._mbstateL) as usize - ptr as usize },
876 0usize,
877 "Offset of field: __mbstate_t::_mbstateL"
878 );
879}
880pub type __darwin_mbstate_t = __mbstate_t;
881pub type __darwin_ptrdiff_t = ::std::os::raw::c_long;
882pub type __darwin_size_t = ::std::os::raw::c_ulong;
883pub type __darwin_va_list = __builtin_va_list;
884pub type __darwin_wchar_t = ::std::os::raw::c_int;
885pub type __darwin_rune_t = __darwin_wchar_t;
886pub type __darwin_wint_t = ::std::os::raw::c_int;
887pub type __darwin_clock_t = ::std::os::raw::c_ulong;
888pub type __darwin_socklen_t = __uint32_t;
889pub type __darwin_ssize_t = ::std::os::raw::c_long;
890pub type __darwin_time_t = ::std::os::raw::c_long;
891pub type __darwin_blkcnt_t = __int64_t;
892pub type __darwin_blksize_t = __int32_t;
893pub type __darwin_dev_t = __int32_t;
894pub type __darwin_fsblkcnt_t = ::std::os::raw::c_uint;
895pub type __darwin_fsfilcnt_t = ::std::os::raw::c_uint;
896pub type __darwin_gid_t = __uint32_t;
897pub type __darwin_id_t = __uint32_t;
898pub type __darwin_ino64_t = __uint64_t;
899pub type __darwin_ino_t = __darwin_ino64_t;
900pub type __darwin_mach_port_name_t = __darwin_natural_t;
901pub type __darwin_mach_port_t = __darwin_mach_port_name_t;
902pub type __darwin_mode_t = __uint16_t;
903pub type __darwin_off_t = __int64_t;
904pub type __darwin_pid_t = __int32_t;
905pub type __darwin_sigset_t = __uint32_t;
906pub type __darwin_suseconds_t = __int32_t;
907pub type __darwin_uid_t = __uint32_t;
908pub type __darwin_useconds_t = __uint32_t;
909pub type __darwin_uuid_t = [::std::os::raw::c_uchar; 16usize];
910pub type __darwin_uuid_string_t = [::std::os::raw::c_char; 37usize];
911#[repr(C)]
912#[derive(Debug, Copy, Clone)]
913pub struct __darwin_pthread_handler_rec {
914 pub __routine: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
915 pub __arg: *mut ::std::os::raw::c_void,
916 pub __next: *mut __darwin_pthread_handler_rec,
917}
918#[test]
919fn bindgen_test_layout___darwin_pthread_handler_rec() {
920 const UNINIT: ::std::mem::MaybeUninit<__darwin_pthread_handler_rec> =
921 ::std::mem::MaybeUninit::uninit();
922 let ptr = UNINIT.as_ptr();
923 assert_eq!(
924 ::std::mem::size_of::<__darwin_pthread_handler_rec>(),
925 24usize,
926 "Size of __darwin_pthread_handler_rec"
927 );
928 assert_eq!(
929 ::std::mem::align_of::<__darwin_pthread_handler_rec>(),
930 8usize,
931 "Alignment of __darwin_pthread_handler_rec"
932 );
933 assert_eq!(
934 unsafe { ::std::ptr::addr_of!((*ptr).__routine) as usize - ptr as usize },
935 0usize,
936 "Offset of field: __darwin_pthread_handler_rec::__routine"
937 );
938 assert_eq!(
939 unsafe { ::std::ptr::addr_of!((*ptr).__arg) as usize - ptr as usize },
940 8usize,
941 "Offset of field: __darwin_pthread_handler_rec::__arg"
942 );
943 assert_eq!(
944 unsafe { ::std::ptr::addr_of!((*ptr).__next) as usize - ptr as usize },
945 16usize,
946 "Offset of field: __darwin_pthread_handler_rec::__next"
947 );
948}
949#[repr(C)]
950#[derive(Debug, Copy, Clone)]
951pub struct _opaque_pthread_attr_t {
952 pub __sig: ::std::os::raw::c_long,
953 pub __opaque: [::std::os::raw::c_char; 56usize],
954}
955#[test]
956fn bindgen_test_layout__opaque_pthread_attr_t() {
957 const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_attr_t> =
958 ::std::mem::MaybeUninit::uninit();
959 let ptr = UNINIT.as_ptr();
960 assert_eq!(
961 ::std::mem::size_of::<_opaque_pthread_attr_t>(),
962 64usize,
963 "Size of _opaque_pthread_attr_t"
964 );
965 assert_eq!(
966 ::std::mem::align_of::<_opaque_pthread_attr_t>(),
967 8usize,
968 "Alignment of _opaque_pthread_attr_t"
969 );
970 assert_eq!(
971 unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
972 0usize,
973 "Offset of field: _opaque_pthread_attr_t::__sig"
974 );
975 assert_eq!(
976 unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
977 8usize,
978 "Offset of field: _opaque_pthread_attr_t::__opaque"
979 );
980}
981#[repr(C)]
982#[derive(Debug, Copy, Clone)]
983pub struct _opaque_pthread_cond_t {
984 pub __sig: ::std::os::raw::c_long,
985 pub __opaque: [::std::os::raw::c_char; 40usize],
986}
987#[test]
988fn bindgen_test_layout__opaque_pthread_cond_t() {
989 const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_cond_t> =
990 ::std::mem::MaybeUninit::uninit();
991 let ptr = UNINIT.as_ptr();
992 assert_eq!(
993 ::std::mem::size_of::<_opaque_pthread_cond_t>(),
994 48usize,
995 "Size of _opaque_pthread_cond_t"
996 );
997 assert_eq!(
998 ::std::mem::align_of::<_opaque_pthread_cond_t>(),
999 8usize,
1000 "Alignment of _opaque_pthread_cond_t"
1001 );
1002 assert_eq!(
1003 unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
1004 0usize,
1005 "Offset of field: _opaque_pthread_cond_t::__sig"
1006 );
1007 assert_eq!(
1008 unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
1009 8usize,
1010 "Offset of field: _opaque_pthread_cond_t::__opaque"
1011 );
1012}
1013#[repr(C)]
1014#[derive(Debug, Copy, Clone)]
1015pub struct _opaque_pthread_condattr_t {
1016 pub __sig: ::std::os::raw::c_long,
1017 pub __opaque: [::std::os::raw::c_char; 8usize],
1018}
1019#[test]
1020fn bindgen_test_layout__opaque_pthread_condattr_t() {
1021 const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_condattr_t> =
1022 ::std::mem::MaybeUninit::uninit();
1023 let ptr = UNINIT.as_ptr();
1024 assert_eq!(
1025 ::std::mem::size_of::<_opaque_pthread_condattr_t>(),
1026 16usize,
1027 "Size of _opaque_pthread_condattr_t"
1028 );
1029 assert_eq!(
1030 ::std::mem::align_of::<_opaque_pthread_condattr_t>(),
1031 8usize,
1032 "Alignment of _opaque_pthread_condattr_t"
1033 );
1034 assert_eq!(
1035 unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
1036 0usize,
1037 "Offset of field: _opaque_pthread_condattr_t::__sig"
1038 );
1039 assert_eq!(
1040 unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
1041 8usize,
1042 "Offset of field: _opaque_pthread_condattr_t::__opaque"
1043 );
1044}
1045#[repr(C)]
1046#[derive(Debug, Copy, Clone)]
1047pub struct _opaque_pthread_mutex_t {
1048 pub __sig: ::std::os::raw::c_long,
1049 pub __opaque: [::std::os::raw::c_char; 56usize],
1050}
1051#[test]
1052fn bindgen_test_layout__opaque_pthread_mutex_t() {
1053 const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_mutex_t> =
1054 ::std::mem::MaybeUninit::uninit();
1055 let ptr = UNINIT.as_ptr();
1056 assert_eq!(
1057 ::std::mem::size_of::<_opaque_pthread_mutex_t>(),
1058 64usize,
1059 "Size of _opaque_pthread_mutex_t"
1060 );
1061 assert_eq!(
1062 ::std::mem::align_of::<_opaque_pthread_mutex_t>(),
1063 8usize,
1064 "Alignment of _opaque_pthread_mutex_t"
1065 );
1066 assert_eq!(
1067 unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
1068 0usize,
1069 "Offset of field: _opaque_pthread_mutex_t::__sig"
1070 );
1071 assert_eq!(
1072 unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
1073 8usize,
1074 "Offset of field: _opaque_pthread_mutex_t::__opaque"
1075 );
1076}
1077#[repr(C)]
1078#[derive(Debug, Copy, Clone)]
1079pub struct _opaque_pthread_mutexattr_t {
1080 pub __sig: ::std::os::raw::c_long,
1081 pub __opaque: [::std::os::raw::c_char; 8usize],
1082}
1083#[test]
1084fn bindgen_test_layout__opaque_pthread_mutexattr_t() {
1085 const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_mutexattr_t> =
1086 ::std::mem::MaybeUninit::uninit();
1087 let ptr = UNINIT.as_ptr();
1088 assert_eq!(
1089 ::std::mem::size_of::<_opaque_pthread_mutexattr_t>(),
1090 16usize,
1091 "Size of _opaque_pthread_mutexattr_t"
1092 );
1093 assert_eq!(
1094 ::std::mem::align_of::<_opaque_pthread_mutexattr_t>(),
1095 8usize,
1096 "Alignment of _opaque_pthread_mutexattr_t"
1097 );
1098 assert_eq!(
1099 unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
1100 0usize,
1101 "Offset of field: _opaque_pthread_mutexattr_t::__sig"
1102 );
1103 assert_eq!(
1104 unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
1105 8usize,
1106 "Offset of field: _opaque_pthread_mutexattr_t::__opaque"
1107 );
1108}
1109#[repr(C)]
1110#[derive(Debug, Copy, Clone)]
1111pub struct _opaque_pthread_once_t {
1112 pub __sig: ::std::os::raw::c_long,
1113 pub __opaque: [::std::os::raw::c_char; 8usize],
1114}
1115#[test]
1116fn bindgen_test_layout__opaque_pthread_once_t() {
1117 const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_once_t> =
1118 ::std::mem::MaybeUninit::uninit();
1119 let ptr = UNINIT.as_ptr();
1120 assert_eq!(
1121 ::std::mem::size_of::<_opaque_pthread_once_t>(),
1122 16usize,
1123 "Size of _opaque_pthread_once_t"
1124 );
1125 assert_eq!(
1126 ::std::mem::align_of::<_opaque_pthread_once_t>(),
1127 8usize,
1128 "Alignment of _opaque_pthread_once_t"
1129 );
1130 assert_eq!(
1131 unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
1132 0usize,
1133 "Offset of field: _opaque_pthread_once_t::__sig"
1134 );
1135 assert_eq!(
1136 unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
1137 8usize,
1138 "Offset of field: _opaque_pthread_once_t::__opaque"
1139 );
1140}
1141#[repr(C)]
1142#[derive(Debug, Copy, Clone)]
1143pub struct _opaque_pthread_rwlock_t {
1144 pub __sig: ::std::os::raw::c_long,
1145 pub __opaque: [::std::os::raw::c_char; 192usize],
1146}
1147#[test]
1148fn bindgen_test_layout__opaque_pthread_rwlock_t() {
1149 const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_rwlock_t> =
1150 ::std::mem::MaybeUninit::uninit();
1151 let ptr = UNINIT.as_ptr();
1152 assert_eq!(
1153 ::std::mem::size_of::<_opaque_pthread_rwlock_t>(),
1154 200usize,
1155 "Size of _opaque_pthread_rwlock_t"
1156 );
1157 assert_eq!(
1158 ::std::mem::align_of::<_opaque_pthread_rwlock_t>(),
1159 8usize,
1160 "Alignment of _opaque_pthread_rwlock_t"
1161 );
1162 assert_eq!(
1163 unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
1164 0usize,
1165 "Offset of field: _opaque_pthread_rwlock_t::__sig"
1166 );
1167 assert_eq!(
1168 unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
1169 8usize,
1170 "Offset of field: _opaque_pthread_rwlock_t::__opaque"
1171 );
1172}
1173#[repr(C)]
1174#[derive(Debug, Copy, Clone)]
1175pub struct _opaque_pthread_rwlockattr_t {
1176 pub __sig: ::std::os::raw::c_long,
1177 pub __opaque: [::std::os::raw::c_char; 16usize],
1178}
1179#[test]
1180fn bindgen_test_layout__opaque_pthread_rwlockattr_t() {
1181 const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_rwlockattr_t> =
1182 ::std::mem::MaybeUninit::uninit();
1183 let ptr = UNINIT.as_ptr();
1184 assert_eq!(
1185 ::std::mem::size_of::<_opaque_pthread_rwlockattr_t>(),
1186 24usize,
1187 "Size of _opaque_pthread_rwlockattr_t"
1188 );
1189 assert_eq!(
1190 ::std::mem::align_of::<_opaque_pthread_rwlockattr_t>(),
1191 8usize,
1192 "Alignment of _opaque_pthread_rwlockattr_t"
1193 );
1194 assert_eq!(
1195 unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
1196 0usize,
1197 "Offset of field: _opaque_pthread_rwlockattr_t::__sig"
1198 );
1199 assert_eq!(
1200 unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
1201 8usize,
1202 "Offset of field: _opaque_pthread_rwlockattr_t::__opaque"
1203 );
1204}
1205#[repr(C)]
1206#[derive(Debug, Copy, Clone)]
1207pub struct _opaque_pthread_t {
1208 pub __sig: ::std::os::raw::c_long,
1209 pub __cleanup_stack: *mut __darwin_pthread_handler_rec,
1210 pub __opaque: [::std::os::raw::c_char; 8176usize],
1211}
1212#[test]
1213fn bindgen_test_layout__opaque_pthread_t() {
1214 const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_t> = ::std::mem::MaybeUninit::uninit();
1215 let ptr = UNINIT.as_ptr();
1216 assert_eq!(::std::mem::size_of::<_opaque_pthread_t>(), 8192usize, "Size of _opaque_pthread_t");
1217 assert_eq!(
1218 ::std::mem::align_of::<_opaque_pthread_t>(),
1219 8usize,
1220 "Alignment of _opaque_pthread_t"
1221 );
1222 assert_eq!(
1223 unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
1224 0usize,
1225 "Offset of field: _opaque_pthread_t::__sig"
1226 );
1227 assert_eq!(
1228 unsafe { ::std::ptr::addr_of!((*ptr).__cleanup_stack) as usize - ptr as usize },
1229 8usize,
1230 "Offset of field: _opaque_pthread_t::__cleanup_stack"
1231 );
1232 assert_eq!(
1233 unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
1234 16usize,
1235 "Offset of field: _opaque_pthread_t::__opaque"
1236 );
1237}
1238pub type __darwin_pthread_attr_t = _opaque_pthread_attr_t;
1239pub type __darwin_pthread_cond_t = _opaque_pthread_cond_t;
1240pub type __darwin_pthread_condattr_t = _opaque_pthread_condattr_t;
1241pub type __darwin_pthread_key_t = ::std::os::raw::c_ulong;
1242pub type __darwin_pthread_mutex_t = _opaque_pthread_mutex_t;
1243pub type __darwin_pthread_mutexattr_t = _opaque_pthread_mutexattr_t;
1244pub type __darwin_pthread_once_t = _opaque_pthread_once_t;
1245pub type __darwin_pthread_rwlock_t = _opaque_pthread_rwlock_t;
1246pub type __darwin_pthread_rwlockattr_t = _opaque_pthread_rwlockattr_t;
1247pub type __darwin_pthread_t = *mut _opaque_pthread_t;
1248pub type intmax_t = ::std::os::raw::c_long;
1249pub type uintmax_t = ::std::os::raw::c_ulong;
1250pub type __darwin_nl_item = ::std::os::raw::c_int;
1251pub type __darwin_wctrans_t = ::std::os::raw::c_int;
1252pub type __darwin_wctype_t = __uint32_t;
1253pub const idtype_t_P_ALL: idtype_t = 0;
1254pub const idtype_t_P_PID: idtype_t = 1;
1255pub const idtype_t_P_PGID: idtype_t = 2;
1256pub type idtype_t = ::std::os::raw::c_uint;
1257pub type pid_t = __darwin_pid_t;
1258pub type id_t = __darwin_id_t;
1259pub type sig_atomic_t = ::std::os::raw::c_int;
1260pub type u_int8_t = ::std::os::raw::c_uchar;
1261pub type u_int16_t = ::std::os::raw::c_ushort;
1262pub type u_int32_t = ::std::os::raw::c_uint;
1263pub type u_int64_t = ::std::os::raw::c_ulonglong;
1264pub type register_t = i64;
1265pub type user_addr_t = u_int64_t;
1266pub type user_size_t = u_int64_t;
1267pub type user_ssize_t = i64;
1268pub type user_long_t = i64;
1269pub type user_ulong_t = u_int64_t;
1270pub type user_time_t = i64;
1271pub type user_off_t = i64;
1272pub type syscall_arg_t = u_int64_t;
1273#[repr(C)]
1274#[derive(Debug, Copy, Clone)]
1275pub struct __darwin_arm_exception_state {
1276 pub __exception: __uint32_t,
1277 pub __fsr: __uint32_t,
1278 pub __far: __uint32_t,
1279}
1280#[test]
1281fn bindgen_test_layout___darwin_arm_exception_state() {
1282 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_exception_state> =
1283 ::std::mem::MaybeUninit::uninit();
1284 let ptr = UNINIT.as_ptr();
1285 assert_eq!(
1286 ::std::mem::size_of::<__darwin_arm_exception_state>(),
1287 12usize,
1288 "Size of __darwin_arm_exception_state"
1289 );
1290 assert_eq!(
1291 ::std::mem::align_of::<__darwin_arm_exception_state>(),
1292 4usize,
1293 "Alignment of __darwin_arm_exception_state"
1294 );
1295 assert_eq!(
1296 unsafe { ::std::ptr::addr_of!((*ptr).__exception) as usize - ptr as usize },
1297 0usize,
1298 "Offset of field: __darwin_arm_exception_state::__exception"
1299 );
1300 assert_eq!(
1301 unsafe { ::std::ptr::addr_of!((*ptr).__fsr) as usize - ptr as usize },
1302 4usize,
1303 "Offset of field: __darwin_arm_exception_state::__fsr"
1304 );
1305 assert_eq!(
1306 unsafe { ::std::ptr::addr_of!((*ptr).__far) as usize - ptr as usize },
1307 8usize,
1308 "Offset of field: __darwin_arm_exception_state::__far"
1309 );
1310}
1311#[repr(C)]
1312#[derive(Debug, Copy, Clone)]
1313pub struct __darwin_arm_exception_state64 {
1314 pub __far: __uint64_t,
1315 pub __esr: __uint32_t,
1316 pub __exception: __uint32_t,
1317}
1318#[test]
1319fn bindgen_test_layout___darwin_arm_exception_state64() {
1320 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_exception_state64> =
1321 ::std::mem::MaybeUninit::uninit();
1322 let ptr = UNINIT.as_ptr();
1323 assert_eq!(
1324 ::std::mem::size_of::<__darwin_arm_exception_state64>(),
1325 16usize,
1326 "Size of __darwin_arm_exception_state64"
1327 );
1328 assert_eq!(
1329 ::std::mem::align_of::<__darwin_arm_exception_state64>(),
1330 8usize,
1331 "Alignment of __darwin_arm_exception_state64"
1332 );
1333 assert_eq!(
1334 unsafe { ::std::ptr::addr_of!((*ptr).__far) as usize - ptr as usize },
1335 0usize,
1336 "Offset of field: __darwin_arm_exception_state64::__far"
1337 );
1338 assert_eq!(
1339 unsafe { ::std::ptr::addr_of!((*ptr).__esr) as usize - ptr as usize },
1340 8usize,
1341 "Offset of field: __darwin_arm_exception_state64::__esr"
1342 );
1343 assert_eq!(
1344 unsafe { ::std::ptr::addr_of!((*ptr).__exception) as usize - ptr as usize },
1345 12usize,
1346 "Offset of field: __darwin_arm_exception_state64::__exception"
1347 );
1348}
1349#[repr(C)]
1350#[derive(Debug, Copy, Clone)]
1351pub struct __darwin_arm_exception_state64_v2 {
1352 pub __far: __uint64_t,
1353 pub __esr: __uint64_t,
1354}
1355#[test]
1356fn bindgen_test_layout___darwin_arm_exception_state64_v2() {
1357 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_exception_state64_v2> =
1358 ::std::mem::MaybeUninit::uninit();
1359 let ptr = UNINIT.as_ptr();
1360 assert_eq!(
1361 ::std::mem::size_of::<__darwin_arm_exception_state64_v2>(),
1362 16usize,
1363 "Size of __darwin_arm_exception_state64_v2"
1364 );
1365 assert_eq!(
1366 ::std::mem::align_of::<__darwin_arm_exception_state64_v2>(),
1367 8usize,
1368 "Alignment of __darwin_arm_exception_state64_v2"
1369 );
1370 assert_eq!(
1371 unsafe { ::std::ptr::addr_of!((*ptr).__far) as usize - ptr as usize },
1372 0usize,
1373 "Offset of field: __darwin_arm_exception_state64_v2::__far"
1374 );
1375 assert_eq!(
1376 unsafe { ::std::ptr::addr_of!((*ptr).__esr) as usize - ptr as usize },
1377 8usize,
1378 "Offset of field: __darwin_arm_exception_state64_v2::__esr"
1379 );
1380}
1381#[repr(C)]
1382#[derive(Debug, Copy, Clone)]
1383pub struct __darwin_arm_thread_state {
1384 pub __r: [__uint32_t; 13usize],
1385 pub __sp: __uint32_t,
1386 pub __lr: __uint32_t,
1387 pub __pc: __uint32_t,
1388 pub __cpsr: __uint32_t,
1389}
1390#[test]
1391fn bindgen_test_layout___darwin_arm_thread_state() {
1392 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_thread_state> =
1393 ::std::mem::MaybeUninit::uninit();
1394 let ptr = UNINIT.as_ptr();
1395 assert_eq!(
1396 ::std::mem::size_of::<__darwin_arm_thread_state>(),
1397 68usize,
1398 "Size of __darwin_arm_thread_state"
1399 );
1400 assert_eq!(
1401 ::std::mem::align_of::<__darwin_arm_thread_state>(),
1402 4usize,
1403 "Alignment of __darwin_arm_thread_state"
1404 );
1405 assert_eq!(
1406 unsafe { ::std::ptr::addr_of!((*ptr).__r) as usize - ptr as usize },
1407 0usize,
1408 "Offset of field: __darwin_arm_thread_state::__r"
1409 );
1410 assert_eq!(
1411 unsafe { ::std::ptr::addr_of!((*ptr).__sp) as usize - ptr as usize },
1412 52usize,
1413 "Offset of field: __darwin_arm_thread_state::__sp"
1414 );
1415 assert_eq!(
1416 unsafe { ::std::ptr::addr_of!((*ptr).__lr) as usize - ptr as usize },
1417 56usize,
1418 "Offset of field: __darwin_arm_thread_state::__lr"
1419 );
1420 assert_eq!(
1421 unsafe { ::std::ptr::addr_of!((*ptr).__pc) as usize - ptr as usize },
1422 60usize,
1423 "Offset of field: __darwin_arm_thread_state::__pc"
1424 );
1425 assert_eq!(
1426 unsafe { ::std::ptr::addr_of!((*ptr).__cpsr) as usize - ptr as usize },
1427 64usize,
1428 "Offset of field: __darwin_arm_thread_state::__cpsr"
1429 );
1430}
1431#[repr(C)]
1432#[derive(Debug, Copy, Clone)]
1433pub struct __darwin_arm_thread_state64 {
1434 pub __x: [__uint64_t; 29usize],
1435 pub __fp: __uint64_t,
1436 pub __lr: __uint64_t,
1437 pub __sp: __uint64_t,
1438 pub __pc: __uint64_t,
1439 pub __cpsr: __uint32_t,
1440 pub __pad: __uint32_t,
1441}
1442#[test]
1443fn bindgen_test_layout___darwin_arm_thread_state64() {
1444 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_thread_state64> =
1445 ::std::mem::MaybeUninit::uninit();
1446 let ptr = UNINIT.as_ptr();
1447 assert_eq!(
1448 ::std::mem::size_of::<__darwin_arm_thread_state64>(),
1449 272usize,
1450 "Size of __darwin_arm_thread_state64"
1451 );
1452 assert_eq!(
1453 ::std::mem::align_of::<__darwin_arm_thread_state64>(),
1454 8usize,
1455 "Alignment of __darwin_arm_thread_state64"
1456 );
1457 assert_eq!(
1458 unsafe { ::std::ptr::addr_of!((*ptr).__x) as usize - ptr as usize },
1459 0usize,
1460 "Offset of field: __darwin_arm_thread_state64::__x"
1461 );
1462 assert_eq!(
1463 unsafe { ::std::ptr::addr_of!((*ptr).__fp) as usize - ptr as usize },
1464 232usize,
1465 "Offset of field: __darwin_arm_thread_state64::__fp"
1466 );
1467 assert_eq!(
1468 unsafe { ::std::ptr::addr_of!((*ptr).__lr) as usize - ptr as usize },
1469 240usize,
1470 "Offset of field: __darwin_arm_thread_state64::__lr"
1471 );
1472 assert_eq!(
1473 unsafe { ::std::ptr::addr_of!((*ptr).__sp) as usize - ptr as usize },
1474 248usize,
1475 "Offset of field: __darwin_arm_thread_state64::__sp"
1476 );
1477 assert_eq!(
1478 unsafe { ::std::ptr::addr_of!((*ptr).__pc) as usize - ptr as usize },
1479 256usize,
1480 "Offset of field: __darwin_arm_thread_state64::__pc"
1481 );
1482 assert_eq!(
1483 unsafe { ::std::ptr::addr_of!((*ptr).__cpsr) as usize - ptr as usize },
1484 264usize,
1485 "Offset of field: __darwin_arm_thread_state64::__cpsr"
1486 );
1487 assert_eq!(
1488 unsafe { ::std::ptr::addr_of!((*ptr).__pad) as usize - ptr as usize },
1489 268usize,
1490 "Offset of field: __darwin_arm_thread_state64::__pad"
1491 );
1492}
1493#[repr(C)]
1494#[derive(Debug, Copy, Clone)]
1495pub struct __darwin_arm_vfp_state {
1496 pub __r: [__uint32_t; 64usize],
1497 pub __fpscr: __uint32_t,
1498}
1499#[test]
1500fn bindgen_test_layout___darwin_arm_vfp_state() {
1501 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_vfp_state> =
1502 ::std::mem::MaybeUninit::uninit();
1503 let ptr = UNINIT.as_ptr();
1504 assert_eq!(
1505 ::std::mem::size_of::<__darwin_arm_vfp_state>(),
1506 260usize,
1507 "Size of __darwin_arm_vfp_state"
1508 );
1509 assert_eq!(
1510 ::std::mem::align_of::<__darwin_arm_vfp_state>(),
1511 4usize,
1512 "Alignment of __darwin_arm_vfp_state"
1513 );
1514 assert_eq!(
1515 unsafe { ::std::ptr::addr_of!((*ptr).__r) as usize - ptr as usize },
1516 0usize,
1517 "Offset of field: __darwin_arm_vfp_state::__r"
1518 );
1519 assert_eq!(
1520 unsafe { ::std::ptr::addr_of!((*ptr).__fpscr) as usize - ptr as usize },
1521 256usize,
1522 "Offset of field: __darwin_arm_vfp_state::__fpscr"
1523 );
1524}
1525#[repr(C)]
1526#[repr(align(16))]
1527#[derive(Debug, Copy, Clone)]
1528pub struct __darwin_arm_neon_state64 {
1529 pub __v: [__uint128_t; 32usize],
1530 pub __fpsr: __uint32_t,
1531 pub __fpcr: __uint32_t,
1532}
1533#[test]
1534fn bindgen_test_layout___darwin_arm_neon_state64() {
1535 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_neon_state64> =
1536 ::std::mem::MaybeUninit::uninit();
1537 let ptr = UNINIT.as_ptr();
1538 assert_eq!(
1539 ::std::mem::size_of::<__darwin_arm_neon_state64>(),
1540 528usize,
1541 "Size of __darwin_arm_neon_state64"
1542 );
1543 assert_eq!(
1544 ::std::mem::align_of::<__darwin_arm_neon_state64>(),
1545 16usize,
1546 "Alignment of __darwin_arm_neon_state64"
1547 );
1548 assert_eq!(
1549 unsafe { ::std::ptr::addr_of!((*ptr).__v) as usize - ptr as usize },
1550 0usize,
1551 "Offset of field: __darwin_arm_neon_state64::__v"
1552 );
1553 assert_eq!(
1554 unsafe { ::std::ptr::addr_of!((*ptr).__fpsr) as usize - ptr as usize },
1555 512usize,
1556 "Offset of field: __darwin_arm_neon_state64::__fpsr"
1557 );
1558 assert_eq!(
1559 unsafe { ::std::ptr::addr_of!((*ptr).__fpcr) as usize - ptr as usize },
1560 516usize,
1561 "Offset of field: __darwin_arm_neon_state64::__fpcr"
1562 );
1563}
1564#[repr(C)]
1565#[repr(align(16))]
1566#[derive(Debug, Copy, Clone)]
1567pub struct __darwin_arm_neon_state {
1568 pub __v: [__uint128_t; 16usize],
1569 pub __fpsr: __uint32_t,
1570 pub __fpcr: __uint32_t,
1571}
1572#[test]
1573fn bindgen_test_layout___darwin_arm_neon_state() {
1574 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_neon_state> =
1575 ::std::mem::MaybeUninit::uninit();
1576 let ptr = UNINIT.as_ptr();
1577 assert_eq!(
1578 ::std::mem::size_of::<__darwin_arm_neon_state>(),
1579 272usize,
1580 "Size of __darwin_arm_neon_state"
1581 );
1582 assert_eq!(
1583 ::std::mem::align_of::<__darwin_arm_neon_state>(),
1584 16usize,
1585 "Alignment of __darwin_arm_neon_state"
1586 );
1587 assert_eq!(
1588 unsafe { ::std::ptr::addr_of!((*ptr).__v) as usize - ptr as usize },
1589 0usize,
1590 "Offset of field: __darwin_arm_neon_state::__v"
1591 );
1592 assert_eq!(
1593 unsafe { ::std::ptr::addr_of!((*ptr).__fpsr) as usize - ptr as usize },
1594 256usize,
1595 "Offset of field: __darwin_arm_neon_state::__fpsr"
1596 );
1597 assert_eq!(
1598 unsafe { ::std::ptr::addr_of!((*ptr).__fpcr) as usize - ptr as usize },
1599 260usize,
1600 "Offset of field: __darwin_arm_neon_state::__fpcr"
1601 );
1602}
1603#[repr(C)]
1604#[derive(Debug, Copy, Clone)]
1605pub struct __arm_pagein_state {
1606 pub __pagein_error: ::std::os::raw::c_int,
1607}
1608#[test]
1609fn bindgen_test_layout___arm_pagein_state() {
1610 const UNINIT: ::std::mem::MaybeUninit<__arm_pagein_state> = ::std::mem::MaybeUninit::uninit();
1611 let ptr = UNINIT.as_ptr();
1612 assert_eq!(::std::mem::size_of::<__arm_pagein_state>(), 4usize, "Size of __arm_pagein_state");
1613 assert_eq!(
1614 ::std::mem::align_of::<__arm_pagein_state>(),
1615 4usize,
1616 "Alignment of __arm_pagein_state"
1617 );
1618 assert_eq!(
1619 unsafe { ::std::ptr::addr_of!((*ptr).__pagein_error) as usize - ptr as usize },
1620 0usize,
1621 "Offset of field: __arm_pagein_state::__pagein_error"
1622 );
1623}
1624#[repr(C)]
1625#[derive(Debug, Copy, Clone)]
1626pub struct __darwin_arm_sme_state {
1627 pub __svcr: __uint64_t,
1628 pub __tpidr2_el0: __uint64_t,
1629 pub __svl_b: __uint16_t,
1630}
1631#[test]
1632fn bindgen_test_layout___darwin_arm_sme_state() {
1633 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_sme_state> =
1634 ::std::mem::MaybeUninit::uninit();
1635 let ptr = UNINIT.as_ptr();
1636 assert_eq!(
1637 ::std::mem::size_of::<__darwin_arm_sme_state>(),
1638 24usize,
1639 "Size of __darwin_arm_sme_state"
1640 );
1641 assert_eq!(
1642 ::std::mem::align_of::<__darwin_arm_sme_state>(),
1643 8usize,
1644 "Alignment of __darwin_arm_sme_state"
1645 );
1646 assert_eq!(
1647 unsafe { ::std::ptr::addr_of!((*ptr).__svcr) as usize - ptr as usize },
1648 0usize,
1649 "Offset of field: __darwin_arm_sme_state::__svcr"
1650 );
1651 assert_eq!(
1652 unsafe { ::std::ptr::addr_of!((*ptr).__tpidr2_el0) as usize - ptr as usize },
1653 8usize,
1654 "Offset of field: __darwin_arm_sme_state::__tpidr2_el0"
1655 );
1656 assert_eq!(
1657 unsafe { ::std::ptr::addr_of!((*ptr).__svl_b) as usize - ptr as usize },
1658 16usize,
1659 "Offset of field: __darwin_arm_sme_state::__svl_b"
1660 );
1661}
1662#[repr(C)]
1663#[repr(align(4))]
1664#[derive(Debug, Copy, Clone)]
1665pub struct __darwin_arm_sve_z_state {
1666 pub __z: [[::std::os::raw::c_char; 256usize]; 16usize],
1667}
1668#[test]
1669fn bindgen_test_layout___darwin_arm_sve_z_state() {
1670 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_sve_z_state> =
1671 ::std::mem::MaybeUninit::uninit();
1672 let ptr = UNINIT.as_ptr();
1673 assert_eq!(
1674 ::std::mem::size_of::<__darwin_arm_sve_z_state>(),
1675 4096usize,
1676 "Size of __darwin_arm_sve_z_state"
1677 );
1678 assert_eq!(
1679 ::std::mem::align_of::<__darwin_arm_sve_z_state>(),
1680 4usize,
1681 "Alignment of __darwin_arm_sve_z_state"
1682 );
1683 assert_eq!(
1684 unsafe { ::std::ptr::addr_of!((*ptr).__z) as usize - ptr as usize },
1685 0usize,
1686 "Offset of field: __darwin_arm_sve_z_state::__z"
1687 );
1688}
1689#[repr(C)]
1690#[repr(align(4))]
1691#[derive(Debug, Copy, Clone)]
1692pub struct __darwin_arm_sve_p_state {
1693 pub __p: [[::std::os::raw::c_char; 32usize]; 16usize],
1694}
1695#[test]
1696fn bindgen_test_layout___darwin_arm_sve_p_state() {
1697 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_sve_p_state> =
1698 ::std::mem::MaybeUninit::uninit();
1699 let ptr = UNINIT.as_ptr();
1700 assert_eq!(
1701 ::std::mem::size_of::<__darwin_arm_sve_p_state>(),
1702 512usize,
1703 "Size of __darwin_arm_sve_p_state"
1704 );
1705 assert_eq!(
1706 ::std::mem::align_of::<__darwin_arm_sve_p_state>(),
1707 4usize,
1708 "Alignment of __darwin_arm_sve_p_state"
1709 );
1710 assert_eq!(
1711 unsafe { ::std::ptr::addr_of!((*ptr).__p) as usize - ptr as usize },
1712 0usize,
1713 "Offset of field: __darwin_arm_sve_p_state::__p"
1714 );
1715}
1716#[repr(C)]
1717#[repr(align(4))]
1718#[derive(Debug, Copy, Clone)]
1719pub struct __darwin_arm_sme_za_state {
1720 pub __za: [::std::os::raw::c_char; 4096usize],
1721}
1722#[test]
1723fn bindgen_test_layout___darwin_arm_sme_za_state() {
1724 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_sme_za_state> =
1725 ::std::mem::MaybeUninit::uninit();
1726 let ptr = UNINIT.as_ptr();
1727 assert_eq!(
1728 ::std::mem::size_of::<__darwin_arm_sme_za_state>(),
1729 4096usize,
1730 "Size of __darwin_arm_sme_za_state"
1731 );
1732 assert_eq!(
1733 ::std::mem::align_of::<__darwin_arm_sme_za_state>(),
1734 4usize,
1735 "Alignment of __darwin_arm_sme_za_state"
1736 );
1737 assert_eq!(
1738 unsafe { ::std::ptr::addr_of!((*ptr).__za) as usize - ptr as usize },
1739 0usize,
1740 "Offset of field: __darwin_arm_sme_za_state::__za"
1741 );
1742}
1743#[repr(C)]
1744#[repr(align(4))]
1745#[derive(Debug, Copy, Clone)]
1746pub struct __darwin_arm_sme2_state {
1747 pub __zt0: [::std::os::raw::c_char; 64usize],
1748}
1749#[test]
1750fn bindgen_test_layout___darwin_arm_sme2_state() {
1751 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_sme2_state> =
1752 ::std::mem::MaybeUninit::uninit();
1753 let ptr = UNINIT.as_ptr();
1754 assert_eq!(
1755 ::std::mem::size_of::<__darwin_arm_sme2_state>(),
1756 64usize,
1757 "Size of __darwin_arm_sme2_state"
1758 );
1759 assert_eq!(
1760 ::std::mem::align_of::<__darwin_arm_sme2_state>(),
1761 4usize,
1762 "Alignment of __darwin_arm_sme2_state"
1763 );
1764 assert_eq!(
1765 unsafe { ::std::ptr::addr_of!((*ptr).__zt0) as usize - ptr as usize },
1766 0usize,
1767 "Offset of field: __darwin_arm_sme2_state::__zt0"
1768 );
1769}
1770#[repr(C)]
1771#[derive(Debug, Copy, Clone)]
1772pub struct __arm_legacy_debug_state {
1773 pub __bvr: [__uint32_t; 16usize],
1774 pub __bcr: [__uint32_t; 16usize],
1775 pub __wvr: [__uint32_t; 16usize],
1776 pub __wcr: [__uint32_t; 16usize],
1777}
1778#[test]
1779fn bindgen_test_layout___arm_legacy_debug_state() {
1780 const UNINIT: ::std::mem::MaybeUninit<__arm_legacy_debug_state> =
1781 ::std::mem::MaybeUninit::uninit();
1782 let ptr = UNINIT.as_ptr();
1783 assert_eq!(
1784 ::std::mem::size_of::<__arm_legacy_debug_state>(),
1785 256usize,
1786 "Size of __arm_legacy_debug_state"
1787 );
1788 assert_eq!(
1789 ::std::mem::align_of::<__arm_legacy_debug_state>(),
1790 4usize,
1791 "Alignment of __arm_legacy_debug_state"
1792 );
1793 assert_eq!(
1794 unsafe { ::std::ptr::addr_of!((*ptr).__bvr) as usize - ptr as usize },
1795 0usize,
1796 "Offset of field: __arm_legacy_debug_state::__bvr"
1797 );
1798 assert_eq!(
1799 unsafe { ::std::ptr::addr_of!((*ptr).__bcr) as usize - ptr as usize },
1800 64usize,
1801 "Offset of field: __arm_legacy_debug_state::__bcr"
1802 );
1803 assert_eq!(
1804 unsafe { ::std::ptr::addr_of!((*ptr).__wvr) as usize - ptr as usize },
1805 128usize,
1806 "Offset of field: __arm_legacy_debug_state::__wvr"
1807 );
1808 assert_eq!(
1809 unsafe { ::std::ptr::addr_of!((*ptr).__wcr) as usize - ptr as usize },
1810 192usize,
1811 "Offset of field: __arm_legacy_debug_state::__wcr"
1812 );
1813}
1814#[repr(C)]
1815#[derive(Debug, Copy, Clone)]
1816pub struct __darwin_arm_debug_state32 {
1817 pub __bvr: [__uint32_t; 16usize],
1818 pub __bcr: [__uint32_t; 16usize],
1819 pub __wvr: [__uint32_t; 16usize],
1820 pub __wcr: [__uint32_t; 16usize],
1821 pub __mdscr_el1: __uint64_t,
1822}
1823#[test]
1824fn bindgen_test_layout___darwin_arm_debug_state32() {
1825 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_debug_state32> =
1826 ::std::mem::MaybeUninit::uninit();
1827 let ptr = UNINIT.as_ptr();
1828 assert_eq!(
1829 ::std::mem::size_of::<__darwin_arm_debug_state32>(),
1830 264usize,
1831 "Size of __darwin_arm_debug_state32"
1832 );
1833 assert_eq!(
1834 ::std::mem::align_of::<__darwin_arm_debug_state32>(),
1835 8usize,
1836 "Alignment of __darwin_arm_debug_state32"
1837 );
1838 assert_eq!(
1839 unsafe { ::std::ptr::addr_of!((*ptr).__bvr) as usize - ptr as usize },
1840 0usize,
1841 "Offset of field: __darwin_arm_debug_state32::__bvr"
1842 );
1843 assert_eq!(
1844 unsafe { ::std::ptr::addr_of!((*ptr).__bcr) as usize - ptr as usize },
1845 64usize,
1846 "Offset of field: __darwin_arm_debug_state32::__bcr"
1847 );
1848 assert_eq!(
1849 unsafe { ::std::ptr::addr_of!((*ptr).__wvr) as usize - ptr as usize },
1850 128usize,
1851 "Offset of field: __darwin_arm_debug_state32::__wvr"
1852 );
1853 assert_eq!(
1854 unsafe { ::std::ptr::addr_of!((*ptr).__wcr) as usize - ptr as usize },
1855 192usize,
1856 "Offset of field: __darwin_arm_debug_state32::__wcr"
1857 );
1858 assert_eq!(
1859 unsafe { ::std::ptr::addr_of!((*ptr).__mdscr_el1) as usize - ptr as usize },
1860 256usize,
1861 "Offset of field: __darwin_arm_debug_state32::__mdscr_el1"
1862 );
1863}
1864#[repr(C)]
1865#[derive(Debug, Copy, Clone)]
1866pub struct __darwin_arm_debug_state64 {
1867 pub __bvr: [__uint64_t; 16usize],
1868 pub __bcr: [__uint64_t; 16usize],
1869 pub __wvr: [__uint64_t; 16usize],
1870 pub __wcr: [__uint64_t; 16usize],
1871 pub __mdscr_el1: __uint64_t,
1872}
1873#[test]
1874fn bindgen_test_layout___darwin_arm_debug_state64() {
1875 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_debug_state64> =
1876 ::std::mem::MaybeUninit::uninit();
1877 let ptr = UNINIT.as_ptr();
1878 assert_eq!(
1879 ::std::mem::size_of::<__darwin_arm_debug_state64>(),
1880 520usize,
1881 "Size of __darwin_arm_debug_state64"
1882 );
1883 assert_eq!(
1884 ::std::mem::align_of::<__darwin_arm_debug_state64>(),
1885 8usize,
1886 "Alignment of __darwin_arm_debug_state64"
1887 );
1888 assert_eq!(
1889 unsafe { ::std::ptr::addr_of!((*ptr).__bvr) as usize - ptr as usize },
1890 0usize,
1891 "Offset of field: __darwin_arm_debug_state64::__bvr"
1892 );
1893 assert_eq!(
1894 unsafe { ::std::ptr::addr_of!((*ptr).__bcr) as usize - ptr as usize },
1895 128usize,
1896 "Offset of field: __darwin_arm_debug_state64::__bcr"
1897 );
1898 assert_eq!(
1899 unsafe { ::std::ptr::addr_of!((*ptr).__wvr) as usize - ptr as usize },
1900 256usize,
1901 "Offset of field: __darwin_arm_debug_state64::__wvr"
1902 );
1903 assert_eq!(
1904 unsafe { ::std::ptr::addr_of!((*ptr).__wcr) as usize - ptr as usize },
1905 384usize,
1906 "Offset of field: __darwin_arm_debug_state64::__wcr"
1907 );
1908 assert_eq!(
1909 unsafe { ::std::ptr::addr_of!((*ptr).__mdscr_el1) as usize - ptr as usize },
1910 512usize,
1911 "Offset of field: __darwin_arm_debug_state64::__mdscr_el1"
1912 );
1913}
1914#[repr(C)]
1915#[derive(Debug, Copy, Clone)]
1916pub struct __darwin_arm_cpmu_state64 {
1917 pub __ctrs: [__uint64_t; 16usize],
1918}
1919#[test]
1920fn bindgen_test_layout___darwin_arm_cpmu_state64() {
1921 const UNINIT: ::std::mem::MaybeUninit<__darwin_arm_cpmu_state64> =
1922 ::std::mem::MaybeUninit::uninit();
1923 let ptr = UNINIT.as_ptr();
1924 assert_eq!(
1925 ::std::mem::size_of::<__darwin_arm_cpmu_state64>(),
1926 128usize,
1927 "Size of __darwin_arm_cpmu_state64"
1928 );
1929 assert_eq!(
1930 ::std::mem::align_of::<__darwin_arm_cpmu_state64>(),
1931 8usize,
1932 "Alignment of __darwin_arm_cpmu_state64"
1933 );
1934 assert_eq!(
1935 unsafe { ::std::ptr::addr_of!((*ptr).__ctrs) as usize - ptr as usize },
1936 0usize,
1937 "Offset of field: __darwin_arm_cpmu_state64::__ctrs"
1938 );
1939}
1940#[repr(C)]
1941#[derive(Debug, Copy, Clone)]
1942pub struct __darwin_mcontext32 {
1943 pub __es: __darwin_arm_exception_state,
1944 pub __ss: __darwin_arm_thread_state,
1945 pub __fs: __darwin_arm_vfp_state,
1946}
1947#[test]
1948fn bindgen_test_layout___darwin_mcontext32() {
1949 const UNINIT: ::std::mem::MaybeUninit<__darwin_mcontext32> = ::std::mem::MaybeUninit::uninit();
1950 let ptr = UNINIT.as_ptr();
1951 assert_eq!(
1952 ::std::mem::size_of::<__darwin_mcontext32>(),
1953 340usize,
1954 "Size of __darwin_mcontext32"
1955 );
1956 assert_eq!(
1957 ::std::mem::align_of::<__darwin_mcontext32>(),
1958 4usize,
1959 "Alignment of __darwin_mcontext32"
1960 );
1961 assert_eq!(
1962 unsafe { ::std::ptr::addr_of!((*ptr).__es) as usize - ptr as usize },
1963 0usize,
1964 "Offset of field: __darwin_mcontext32::__es"
1965 );
1966 assert_eq!(
1967 unsafe { ::std::ptr::addr_of!((*ptr).__ss) as usize - ptr as usize },
1968 12usize,
1969 "Offset of field: __darwin_mcontext32::__ss"
1970 );
1971 assert_eq!(
1972 unsafe { ::std::ptr::addr_of!((*ptr).__fs) as usize - ptr as usize },
1973 80usize,
1974 "Offset of field: __darwin_mcontext32::__fs"
1975 );
1976}
1977#[repr(C)]
1978#[repr(align(16))]
1979#[derive(Debug, Copy, Clone)]
1980pub struct __darwin_mcontext64 {
1981 pub __es: __darwin_arm_exception_state64,
1982 pub __ss: __darwin_arm_thread_state64,
1983 pub __ns: __darwin_arm_neon_state64,
1984}
1985#[test]
1986fn bindgen_test_layout___darwin_mcontext64() {
1987 const UNINIT: ::std::mem::MaybeUninit<__darwin_mcontext64> = ::std::mem::MaybeUninit::uninit();
1988 let ptr = UNINIT.as_ptr();
1989 assert_eq!(
1990 ::std::mem::size_of::<__darwin_mcontext64>(),
1991 816usize,
1992 "Size of __darwin_mcontext64"
1993 );
1994 assert_eq!(
1995 ::std::mem::align_of::<__darwin_mcontext64>(),
1996 16usize,
1997 "Alignment of __darwin_mcontext64"
1998 );
1999 assert_eq!(
2000 unsafe { ::std::ptr::addr_of!((*ptr).__es) as usize - ptr as usize },
2001 0usize,
2002 "Offset of field: __darwin_mcontext64::__es"
2003 );
2004 assert_eq!(
2005 unsafe { ::std::ptr::addr_of!((*ptr).__ss) as usize - ptr as usize },
2006 16usize,
2007 "Offset of field: __darwin_mcontext64::__ss"
2008 );
2009 assert_eq!(
2010 unsafe { ::std::ptr::addr_of!((*ptr).__ns) as usize - ptr as usize },
2011 288usize,
2012 "Offset of field: __darwin_mcontext64::__ns"
2013 );
2014}
2015pub type mcontext_t = *mut __darwin_mcontext64;
2016pub type pthread_attr_t = __darwin_pthread_attr_t;
2017#[repr(C)]
2018#[derive(Debug, Copy, Clone)]
2019pub struct __darwin_sigaltstack {
2020 pub ss_sp: *mut ::std::os::raw::c_void,
2021 pub ss_size: __darwin_size_t,
2022 pub ss_flags: ::std::os::raw::c_int,
2023}
2024#[test]
2025fn bindgen_test_layout___darwin_sigaltstack() {
2026 const UNINIT: ::std::mem::MaybeUninit<__darwin_sigaltstack> = ::std::mem::MaybeUninit::uninit();
2027 let ptr = UNINIT.as_ptr();
2028 assert_eq!(
2029 ::std::mem::size_of::<__darwin_sigaltstack>(),
2030 24usize,
2031 "Size of __darwin_sigaltstack"
2032 );
2033 assert_eq!(
2034 ::std::mem::align_of::<__darwin_sigaltstack>(),
2035 8usize,
2036 "Alignment of __darwin_sigaltstack"
2037 );
2038 assert_eq!(
2039 unsafe { ::std::ptr::addr_of!((*ptr).ss_sp) as usize - ptr as usize },
2040 0usize,
2041 "Offset of field: __darwin_sigaltstack::ss_sp"
2042 );
2043 assert_eq!(
2044 unsafe { ::std::ptr::addr_of!((*ptr).ss_size) as usize - ptr as usize },
2045 8usize,
2046 "Offset of field: __darwin_sigaltstack::ss_size"
2047 );
2048 assert_eq!(
2049 unsafe { ::std::ptr::addr_of!((*ptr).ss_flags) as usize - ptr as usize },
2050 16usize,
2051 "Offset of field: __darwin_sigaltstack::ss_flags"
2052 );
2053}
2054pub type stack_t = __darwin_sigaltstack;
2055#[repr(C)]
2056#[derive(Debug, Copy, Clone)]
2057pub struct __darwin_ucontext {
2058 pub uc_onstack: ::std::os::raw::c_int,
2059 pub uc_sigmask: __darwin_sigset_t,
2060 pub uc_stack: __darwin_sigaltstack,
2061 pub uc_link: *mut __darwin_ucontext,
2062 pub uc_mcsize: __darwin_size_t,
2063 pub uc_mcontext: *mut __darwin_mcontext64,
2064}
2065#[test]
2066fn bindgen_test_layout___darwin_ucontext() {
2067 const UNINIT: ::std::mem::MaybeUninit<__darwin_ucontext> = ::std::mem::MaybeUninit::uninit();
2068 let ptr = UNINIT.as_ptr();
2069 assert_eq!(::std::mem::size_of::<__darwin_ucontext>(), 56usize, "Size of __darwin_ucontext");
2070 assert_eq!(
2071 ::std::mem::align_of::<__darwin_ucontext>(),
2072 8usize,
2073 "Alignment of __darwin_ucontext"
2074 );
2075 assert_eq!(
2076 unsafe { ::std::ptr::addr_of!((*ptr).uc_onstack) as usize - ptr as usize },
2077 0usize,
2078 "Offset of field: __darwin_ucontext::uc_onstack"
2079 );
2080 assert_eq!(
2081 unsafe { ::std::ptr::addr_of!((*ptr).uc_sigmask) as usize - ptr as usize },
2082 4usize,
2083 "Offset of field: __darwin_ucontext::uc_sigmask"
2084 );
2085 assert_eq!(
2086 unsafe { ::std::ptr::addr_of!((*ptr).uc_stack) as usize - ptr as usize },
2087 8usize,
2088 "Offset of field: __darwin_ucontext::uc_stack"
2089 );
2090 assert_eq!(
2091 unsafe { ::std::ptr::addr_of!((*ptr).uc_link) as usize - ptr as usize },
2092 32usize,
2093 "Offset of field: __darwin_ucontext::uc_link"
2094 );
2095 assert_eq!(
2096 unsafe { ::std::ptr::addr_of!((*ptr).uc_mcsize) as usize - ptr as usize },
2097 40usize,
2098 "Offset of field: __darwin_ucontext::uc_mcsize"
2099 );
2100 assert_eq!(
2101 unsafe { ::std::ptr::addr_of!((*ptr).uc_mcontext) as usize - ptr as usize },
2102 48usize,
2103 "Offset of field: __darwin_ucontext::uc_mcontext"
2104 );
2105}
2106pub type ucontext_t = __darwin_ucontext;
2107pub type sigset_t = __darwin_sigset_t;
2108pub type uid_t = __darwin_uid_t;
2109#[repr(C)]
2110#[derive(Copy, Clone)]
2111pub union sigval {
2112 pub sival_int: ::std::os::raw::c_int,
2113 pub sival_ptr: *mut ::std::os::raw::c_void,
2114}
2115#[test]
2116fn bindgen_test_layout_sigval() {
2117 const UNINIT: ::std::mem::MaybeUninit<sigval> = ::std::mem::MaybeUninit::uninit();
2118 let ptr = UNINIT.as_ptr();
2119 assert_eq!(::std::mem::size_of::<sigval>(), 8usize, "Size of sigval");
2120 assert_eq!(::std::mem::align_of::<sigval>(), 8usize, "Alignment of sigval");
2121 assert_eq!(
2122 unsafe { ::std::ptr::addr_of!((*ptr).sival_int) as usize - ptr as usize },
2123 0usize,
2124 "Offset of field: sigval::sival_int"
2125 );
2126 assert_eq!(
2127 unsafe { ::std::ptr::addr_of!((*ptr).sival_ptr) as usize - ptr as usize },
2128 0usize,
2129 "Offset of field: sigval::sival_ptr"
2130 );
2131}
2132#[repr(C)]
2133#[derive(Copy, Clone)]
2134pub struct sigevent {
2135 pub sigev_notify: ::std::os::raw::c_int,
2136 pub sigev_signo: ::std::os::raw::c_int,
2137 pub sigev_value: sigval,
2138 pub sigev_notify_function: ::std::option::Option<unsafe extern "C" fn(arg1: sigval)>,
2139 pub sigev_notify_attributes: *mut pthread_attr_t,
2140}
2141#[test]
2142fn bindgen_test_layout_sigevent() {
2143 const UNINIT: ::std::mem::MaybeUninit<sigevent> = ::std::mem::MaybeUninit::uninit();
2144 let ptr = UNINIT.as_ptr();
2145 assert_eq!(::std::mem::size_of::<sigevent>(), 32usize, "Size of sigevent");
2146 assert_eq!(::std::mem::align_of::<sigevent>(), 8usize, "Alignment of sigevent");
2147 assert_eq!(
2148 unsafe { ::std::ptr::addr_of!((*ptr).sigev_notify) as usize - ptr as usize },
2149 0usize,
2150 "Offset of field: sigevent::sigev_notify"
2151 );
2152 assert_eq!(
2153 unsafe { ::std::ptr::addr_of!((*ptr).sigev_signo) as usize - ptr as usize },
2154 4usize,
2155 "Offset of field: sigevent::sigev_signo"
2156 );
2157 assert_eq!(
2158 unsafe { ::std::ptr::addr_of!((*ptr).sigev_value) as usize - ptr as usize },
2159 8usize,
2160 "Offset of field: sigevent::sigev_value"
2161 );
2162 assert_eq!(
2163 unsafe { ::std::ptr::addr_of!((*ptr).sigev_notify_function) as usize - ptr as usize },
2164 16usize,
2165 "Offset of field: sigevent::sigev_notify_function"
2166 );
2167 assert_eq!(
2168 unsafe { ::std::ptr::addr_of!((*ptr).sigev_notify_attributes) as usize - ptr as usize },
2169 24usize,
2170 "Offset of field: sigevent::sigev_notify_attributes"
2171 );
2172}
2173#[repr(C)]
2174#[derive(Copy, Clone)]
2175pub struct __siginfo {
2176 pub si_signo: ::std::os::raw::c_int,
2177 pub si_errno: ::std::os::raw::c_int,
2178 pub si_code: ::std::os::raw::c_int,
2179 pub si_pid: pid_t,
2180 pub si_uid: uid_t,
2181 pub si_status: ::std::os::raw::c_int,
2182 pub si_addr: *mut ::std::os::raw::c_void,
2183 pub si_value: sigval,
2184 pub si_band: ::std::os::raw::c_long,
2185 pub __pad: [::std::os::raw::c_ulong; 7usize],
2186}
2187#[test]
2188fn bindgen_test_layout___siginfo() {
2189 const UNINIT: ::std::mem::MaybeUninit<__siginfo> = ::std::mem::MaybeUninit::uninit();
2190 let ptr = UNINIT.as_ptr();
2191 assert_eq!(::std::mem::size_of::<__siginfo>(), 104usize, "Size of __siginfo");
2192 assert_eq!(::std::mem::align_of::<__siginfo>(), 8usize, "Alignment of __siginfo");
2193 assert_eq!(
2194 unsafe { ::std::ptr::addr_of!((*ptr).si_signo) as usize - ptr as usize },
2195 0usize,
2196 "Offset of field: __siginfo::si_signo"
2197 );
2198 assert_eq!(
2199 unsafe { ::std::ptr::addr_of!((*ptr).si_errno) as usize - ptr as usize },
2200 4usize,
2201 "Offset of field: __siginfo::si_errno"
2202 );
2203 assert_eq!(
2204 unsafe { ::std::ptr::addr_of!((*ptr).si_code) as usize - ptr as usize },
2205 8usize,
2206 "Offset of field: __siginfo::si_code"
2207 );
2208 assert_eq!(
2209 unsafe { ::std::ptr::addr_of!((*ptr).si_pid) as usize - ptr as usize },
2210 12usize,
2211 "Offset of field: __siginfo::si_pid"
2212 );
2213 assert_eq!(
2214 unsafe { ::std::ptr::addr_of!((*ptr).si_uid) as usize - ptr as usize },
2215 16usize,
2216 "Offset of field: __siginfo::si_uid"
2217 );
2218 assert_eq!(
2219 unsafe { ::std::ptr::addr_of!((*ptr).si_status) as usize - ptr as usize },
2220 20usize,
2221 "Offset of field: __siginfo::si_status"
2222 );
2223 assert_eq!(
2224 unsafe { ::std::ptr::addr_of!((*ptr).si_addr) as usize - ptr as usize },
2225 24usize,
2226 "Offset of field: __siginfo::si_addr"
2227 );
2228 assert_eq!(
2229 unsafe { ::std::ptr::addr_of!((*ptr).si_value) as usize - ptr as usize },
2230 32usize,
2231 "Offset of field: __siginfo::si_value"
2232 );
2233 assert_eq!(
2234 unsafe { ::std::ptr::addr_of!((*ptr).si_band) as usize - ptr as usize },
2235 40usize,
2236 "Offset of field: __siginfo::si_band"
2237 );
2238 assert_eq!(
2239 unsafe { ::std::ptr::addr_of!((*ptr).__pad) as usize - ptr as usize },
2240 48usize,
2241 "Offset of field: __siginfo::__pad"
2242 );
2243}
2244pub type siginfo_t = __siginfo;
2245#[repr(C)]
2246#[derive(Copy, Clone)]
2247pub union __sigaction_u {
2248 pub __sa_handler: ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>,
2249 pub __sa_sigaction: ::std::option::Option<
2250 unsafe extern "C" fn(
2251 arg1: ::std::os::raw::c_int,
2252 arg2: *mut __siginfo,
2253 arg3: *mut ::std::os::raw::c_void,
2254 ),
2255 >,
2256}
2257#[test]
2258fn bindgen_test_layout___sigaction_u() {
2259 const UNINIT: ::std::mem::MaybeUninit<__sigaction_u> = ::std::mem::MaybeUninit::uninit();
2260 let ptr = UNINIT.as_ptr();
2261 assert_eq!(::std::mem::size_of::<__sigaction_u>(), 8usize, "Size of __sigaction_u");
2262 assert_eq!(::std::mem::align_of::<__sigaction_u>(), 8usize, "Alignment of __sigaction_u");
2263 assert_eq!(
2264 unsafe { ::std::ptr::addr_of!((*ptr).__sa_handler) as usize - ptr as usize },
2265 0usize,
2266 "Offset of field: __sigaction_u::__sa_handler"
2267 );
2268 assert_eq!(
2269 unsafe { ::std::ptr::addr_of!((*ptr).__sa_sigaction) as usize - ptr as usize },
2270 0usize,
2271 "Offset of field: __sigaction_u::__sa_sigaction"
2272 );
2273}
2274#[repr(C)]
2275#[derive(Copy, Clone)]
2276pub struct __sigaction {
2277 pub __sigaction_u: __sigaction_u,
2278 pub sa_tramp: ::std::option::Option<
2279 unsafe extern "C" fn(
2280 arg1: *mut ::std::os::raw::c_void,
2281 arg2: ::std::os::raw::c_int,
2282 arg3: ::std::os::raw::c_int,
2283 arg4: *mut siginfo_t,
2284 arg5: *mut ::std::os::raw::c_void,
2285 ),
2286 >,
2287 pub sa_mask: sigset_t,
2288 pub sa_flags: ::std::os::raw::c_int,
2289}
2290#[test]
2291fn bindgen_test_layout___sigaction() {
2292 const UNINIT: ::std::mem::MaybeUninit<__sigaction> = ::std::mem::MaybeUninit::uninit();
2293 let ptr = UNINIT.as_ptr();
2294 assert_eq!(::std::mem::size_of::<__sigaction>(), 24usize, "Size of __sigaction");
2295 assert_eq!(::std::mem::align_of::<__sigaction>(), 8usize, "Alignment of __sigaction");
2296 assert_eq!(
2297 unsafe { ::std::ptr::addr_of!((*ptr).__sigaction_u) as usize - ptr as usize },
2298 0usize,
2299 "Offset of field: __sigaction::__sigaction_u"
2300 );
2301 assert_eq!(
2302 unsafe { ::std::ptr::addr_of!((*ptr).sa_tramp) as usize - ptr as usize },
2303 8usize,
2304 "Offset of field: __sigaction::sa_tramp"
2305 );
2306 assert_eq!(
2307 unsafe { ::std::ptr::addr_of!((*ptr).sa_mask) as usize - ptr as usize },
2308 16usize,
2309 "Offset of field: __sigaction::sa_mask"
2310 );
2311 assert_eq!(
2312 unsafe { ::std::ptr::addr_of!((*ptr).sa_flags) as usize - ptr as usize },
2313 20usize,
2314 "Offset of field: __sigaction::sa_flags"
2315 );
2316}
2317#[repr(C)]
2318#[derive(Copy, Clone)]
2319pub struct sigaction {
2320 pub __sigaction_u: __sigaction_u,
2321 pub sa_mask: sigset_t,
2322 pub sa_flags: ::std::os::raw::c_int,
2323}
2324#[test]
2325fn bindgen_test_layout_sigaction() {
2326 const UNINIT: ::std::mem::MaybeUninit<sigaction> = ::std::mem::MaybeUninit::uninit();
2327 let ptr = UNINIT.as_ptr();
2328 assert_eq!(::std::mem::size_of::<sigaction>(), 16usize, "Size of sigaction");
2329 assert_eq!(::std::mem::align_of::<sigaction>(), 8usize, "Alignment of sigaction");
2330 assert_eq!(
2331 unsafe { ::std::ptr::addr_of!((*ptr).__sigaction_u) as usize - ptr as usize },
2332 0usize,
2333 "Offset of field: sigaction::__sigaction_u"
2334 );
2335 assert_eq!(
2336 unsafe { ::std::ptr::addr_of!((*ptr).sa_mask) as usize - ptr as usize },
2337 8usize,
2338 "Offset of field: sigaction::sa_mask"
2339 );
2340 assert_eq!(
2341 unsafe { ::std::ptr::addr_of!((*ptr).sa_flags) as usize - ptr as usize },
2342 12usize,
2343 "Offset of field: sigaction::sa_flags"
2344 );
2345}
2346pub type sig_t = ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>;
2347#[repr(C)]
2348#[derive(Debug, Copy, Clone)]
2349pub struct sigvec {
2350 pub sv_handler: ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>,
2351 pub sv_mask: ::std::os::raw::c_int,
2352 pub sv_flags: ::std::os::raw::c_int,
2353}
2354#[test]
2355fn bindgen_test_layout_sigvec() {
2356 const UNINIT: ::std::mem::MaybeUninit<sigvec> = ::std::mem::MaybeUninit::uninit();
2357 let ptr = UNINIT.as_ptr();
2358 assert_eq!(::std::mem::size_of::<sigvec>(), 16usize, "Size of sigvec");
2359 assert_eq!(::std::mem::align_of::<sigvec>(), 8usize, "Alignment of sigvec");
2360 assert_eq!(
2361 unsafe { ::std::ptr::addr_of!((*ptr).sv_handler) as usize - ptr as usize },
2362 0usize,
2363 "Offset of field: sigvec::sv_handler"
2364 );
2365 assert_eq!(
2366 unsafe { ::std::ptr::addr_of!((*ptr).sv_mask) as usize - ptr as usize },
2367 8usize,
2368 "Offset of field: sigvec::sv_mask"
2369 );
2370 assert_eq!(
2371 unsafe { ::std::ptr::addr_of!((*ptr).sv_flags) as usize - ptr as usize },
2372 12usize,
2373 "Offset of field: sigvec::sv_flags"
2374 );
2375}
2376#[repr(C)]
2377#[derive(Debug, Copy, Clone)]
2378pub struct sigstack {
2379 pub ss_sp: *mut ::std::os::raw::c_char,
2380 pub ss_onstack: ::std::os::raw::c_int,
2381}
2382#[test]
2383fn bindgen_test_layout_sigstack() {
2384 const UNINIT: ::std::mem::MaybeUninit<sigstack> = ::std::mem::MaybeUninit::uninit();
2385 let ptr = UNINIT.as_ptr();
2386 assert_eq!(::std::mem::size_of::<sigstack>(), 16usize, "Size of sigstack");
2387 assert_eq!(::std::mem::align_of::<sigstack>(), 8usize, "Alignment of sigstack");
2388 assert_eq!(
2389 unsafe { ::std::ptr::addr_of!((*ptr).ss_sp) as usize - ptr as usize },
2390 0usize,
2391 "Offset of field: sigstack::ss_sp"
2392 );
2393 assert_eq!(
2394 unsafe { ::std::ptr::addr_of!((*ptr).ss_onstack) as usize - ptr as usize },
2395 8usize,
2396 "Offset of field: sigstack::ss_onstack"
2397 );
2398}
2399extern "C" {
2400 pub fn signal(
2401 arg1: ::std::os::raw::c_int,
2402 arg2: ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>,
2403 ) -> ::std::option::Option<
2404 unsafe extern "C" fn(
2405 arg1: ::std::os::raw::c_int,
2406 arg2: ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>,
2407 ),
2408 >;
2409}
2410#[repr(C)]
2411#[derive(Debug, Copy, Clone)]
2412pub struct timeval {
2413 pub tv_sec: __darwin_time_t,
2414 pub tv_usec: __darwin_suseconds_t,
2415}
2416#[test]
2417fn bindgen_test_layout_timeval() {
2418 const UNINIT: ::std::mem::MaybeUninit<timeval> = ::std::mem::MaybeUninit::uninit();
2419 let ptr = UNINIT.as_ptr();
2420 assert_eq!(::std::mem::size_of::<timeval>(), 16usize, "Size of timeval");
2421 assert_eq!(::std::mem::align_of::<timeval>(), 8usize, "Alignment of timeval");
2422 assert_eq!(
2423 unsafe { ::std::ptr::addr_of!((*ptr).tv_sec) as usize - ptr as usize },
2424 0usize,
2425 "Offset of field: timeval::tv_sec"
2426 );
2427 assert_eq!(
2428 unsafe { ::std::ptr::addr_of!((*ptr).tv_usec) as usize - ptr as usize },
2429 8usize,
2430 "Offset of field: timeval::tv_usec"
2431 );
2432}
2433pub type rlim_t = __uint64_t;
2434#[repr(C)]
2435#[derive(Debug, Copy, Clone)]
2436pub struct rusage {
2437 pub ru_utime: timeval,
2438 pub ru_stime: timeval,
2439 pub ru_maxrss: ::std::os::raw::c_long,
2440 pub ru_ixrss: ::std::os::raw::c_long,
2441 pub ru_idrss: ::std::os::raw::c_long,
2442 pub ru_isrss: ::std::os::raw::c_long,
2443 pub ru_minflt: ::std::os::raw::c_long,
2444 pub ru_majflt: ::std::os::raw::c_long,
2445 pub ru_nswap: ::std::os::raw::c_long,
2446 pub ru_inblock: ::std::os::raw::c_long,
2447 pub ru_oublock: ::std::os::raw::c_long,
2448 pub ru_msgsnd: ::std::os::raw::c_long,
2449 pub ru_msgrcv: ::std::os::raw::c_long,
2450 pub ru_nsignals: ::std::os::raw::c_long,
2451 pub ru_nvcsw: ::std::os::raw::c_long,
2452 pub ru_nivcsw: ::std::os::raw::c_long,
2453}
2454#[test]
2455fn bindgen_test_layout_rusage() {
2456 const UNINIT: ::std::mem::MaybeUninit<rusage> = ::std::mem::MaybeUninit::uninit();
2457 let ptr = UNINIT.as_ptr();
2458 assert_eq!(::std::mem::size_of::<rusage>(), 144usize, "Size of rusage");
2459 assert_eq!(::std::mem::align_of::<rusage>(), 8usize, "Alignment of rusage");
2460 assert_eq!(
2461 unsafe { ::std::ptr::addr_of!((*ptr).ru_utime) as usize - ptr as usize },
2462 0usize,
2463 "Offset of field: rusage::ru_utime"
2464 );
2465 assert_eq!(
2466 unsafe { ::std::ptr::addr_of!((*ptr).ru_stime) as usize - ptr as usize },
2467 16usize,
2468 "Offset of field: rusage::ru_stime"
2469 );
2470 assert_eq!(
2471 unsafe { ::std::ptr::addr_of!((*ptr).ru_maxrss) as usize - ptr as usize },
2472 32usize,
2473 "Offset of field: rusage::ru_maxrss"
2474 );
2475 assert_eq!(
2476 unsafe { ::std::ptr::addr_of!((*ptr).ru_ixrss) as usize - ptr as usize },
2477 40usize,
2478 "Offset of field: rusage::ru_ixrss"
2479 );
2480 assert_eq!(
2481 unsafe { ::std::ptr::addr_of!((*ptr).ru_idrss) as usize - ptr as usize },
2482 48usize,
2483 "Offset of field: rusage::ru_idrss"
2484 );
2485 assert_eq!(
2486 unsafe { ::std::ptr::addr_of!((*ptr).ru_isrss) as usize - ptr as usize },
2487 56usize,
2488 "Offset of field: rusage::ru_isrss"
2489 );
2490 assert_eq!(
2491 unsafe { ::std::ptr::addr_of!((*ptr).ru_minflt) as usize - ptr as usize },
2492 64usize,
2493 "Offset of field: rusage::ru_minflt"
2494 );
2495 assert_eq!(
2496 unsafe { ::std::ptr::addr_of!((*ptr).ru_majflt) as usize - ptr as usize },
2497 72usize,
2498 "Offset of field: rusage::ru_majflt"
2499 );
2500 assert_eq!(
2501 unsafe { ::std::ptr::addr_of!((*ptr).ru_nswap) as usize - ptr as usize },
2502 80usize,
2503 "Offset of field: rusage::ru_nswap"
2504 );
2505 assert_eq!(
2506 unsafe { ::std::ptr::addr_of!((*ptr).ru_inblock) as usize - ptr as usize },
2507 88usize,
2508 "Offset of field: rusage::ru_inblock"
2509 );
2510 assert_eq!(
2511 unsafe { ::std::ptr::addr_of!((*ptr).ru_oublock) as usize - ptr as usize },
2512 96usize,
2513 "Offset of field: rusage::ru_oublock"
2514 );
2515 assert_eq!(
2516 unsafe { ::std::ptr::addr_of!((*ptr).ru_msgsnd) as usize - ptr as usize },
2517 104usize,
2518 "Offset of field: rusage::ru_msgsnd"
2519 );
2520 assert_eq!(
2521 unsafe { ::std::ptr::addr_of!((*ptr).ru_msgrcv) as usize - ptr as usize },
2522 112usize,
2523 "Offset of field: rusage::ru_msgrcv"
2524 );
2525 assert_eq!(
2526 unsafe { ::std::ptr::addr_of!((*ptr).ru_nsignals) as usize - ptr as usize },
2527 120usize,
2528 "Offset of field: rusage::ru_nsignals"
2529 );
2530 assert_eq!(
2531 unsafe { ::std::ptr::addr_of!((*ptr).ru_nvcsw) as usize - ptr as usize },
2532 128usize,
2533 "Offset of field: rusage::ru_nvcsw"
2534 );
2535 assert_eq!(
2536 unsafe { ::std::ptr::addr_of!((*ptr).ru_nivcsw) as usize - ptr as usize },
2537 136usize,
2538 "Offset of field: rusage::ru_nivcsw"
2539 );
2540}
2541pub type rusage_info_t = *mut ::std::os::raw::c_void;
2542#[repr(C)]
2543#[derive(Debug, Copy, Clone)]
2544pub struct rusage_info_v0 {
2545 pub ri_uuid: [u8; 16usize],
2546 pub ri_user_time: u64,
2547 pub ri_system_time: u64,
2548 pub ri_pkg_idle_wkups: u64,
2549 pub ri_interrupt_wkups: u64,
2550 pub ri_pageins: u64,
2551 pub ri_wired_size: u64,
2552 pub ri_resident_size: u64,
2553 pub ri_phys_footprint: u64,
2554 pub ri_proc_start_abstime: u64,
2555 pub ri_proc_exit_abstime: u64,
2556}
2557#[test]
2558fn bindgen_test_layout_rusage_info_v0() {
2559 const UNINIT: ::std::mem::MaybeUninit<rusage_info_v0> = ::std::mem::MaybeUninit::uninit();
2560 let ptr = UNINIT.as_ptr();
2561 assert_eq!(::std::mem::size_of::<rusage_info_v0>(), 96usize, "Size of rusage_info_v0");
2562 assert_eq!(::std::mem::align_of::<rusage_info_v0>(), 8usize, "Alignment of rusage_info_v0");
2563 assert_eq!(
2564 unsafe { ::std::ptr::addr_of!((*ptr).ri_uuid) as usize - ptr as usize },
2565 0usize,
2566 "Offset of field: rusage_info_v0::ri_uuid"
2567 );
2568 assert_eq!(
2569 unsafe { ::std::ptr::addr_of!((*ptr).ri_user_time) as usize - ptr as usize },
2570 16usize,
2571 "Offset of field: rusage_info_v0::ri_user_time"
2572 );
2573 assert_eq!(
2574 unsafe { ::std::ptr::addr_of!((*ptr).ri_system_time) as usize - ptr as usize },
2575 24usize,
2576 "Offset of field: rusage_info_v0::ri_system_time"
2577 );
2578 assert_eq!(
2579 unsafe { ::std::ptr::addr_of!((*ptr).ri_pkg_idle_wkups) as usize - ptr as usize },
2580 32usize,
2581 "Offset of field: rusage_info_v0::ri_pkg_idle_wkups"
2582 );
2583 assert_eq!(
2584 unsafe { ::std::ptr::addr_of!((*ptr).ri_interrupt_wkups) as usize - ptr as usize },
2585 40usize,
2586 "Offset of field: rusage_info_v0::ri_interrupt_wkups"
2587 );
2588 assert_eq!(
2589 unsafe { ::std::ptr::addr_of!((*ptr).ri_pageins) as usize - ptr as usize },
2590 48usize,
2591 "Offset of field: rusage_info_v0::ri_pageins"
2592 );
2593 assert_eq!(
2594 unsafe { ::std::ptr::addr_of!((*ptr).ri_wired_size) as usize - ptr as usize },
2595 56usize,
2596 "Offset of field: rusage_info_v0::ri_wired_size"
2597 );
2598 assert_eq!(
2599 unsafe { ::std::ptr::addr_of!((*ptr).ri_resident_size) as usize - ptr as usize },
2600 64usize,
2601 "Offset of field: rusage_info_v0::ri_resident_size"
2602 );
2603 assert_eq!(
2604 unsafe { ::std::ptr::addr_of!((*ptr).ri_phys_footprint) as usize - ptr as usize },
2605 72usize,
2606 "Offset of field: rusage_info_v0::ri_phys_footprint"
2607 );
2608 assert_eq!(
2609 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_start_abstime) as usize - ptr as usize },
2610 80usize,
2611 "Offset of field: rusage_info_v0::ri_proc_start_abstime"
2612 );
2613 assert_eq!(
2614 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_exit_abstime) as usize - ptr as usize },
2615 88usize,
2616 "Offset of field: rusage_info_v0::ri_proc_exit_abstime"
2617 );
2618}
2619#[repr(C)]
2620#[derive(Debug, Copy, Clone)]
2621pub struct rusage_info_v1 {
2622 pub ri_uuid: [u8; 16usize],
2623 pub ri_user_time: u64,
2624 pub ri_system_time: u64,
2625 pub ri_pkg_idle_wkups: u64,
2626 pub ri_interrupt_wkups: u64,
2627 pub ri_pageins: u64,
2628 pub ri_wired_size: u64,
2629 pub ri_resident_size: u64,
2630 pub ri_phys_footprint: u64,
2631 pub ri_proc_start_abstime: u64,
2632 pub ri_proc_exit_abstime: u64,
2633 pub ri_child_user_time: u64,
2634 pub ri_child_system_time: u64,
2635 pub ri_child_pkg_idle_wkups: u64,
2636 pub ri_child_interrupt_wkups: u64,
2637 pub ri_child_pageins: u64,
2638 pub ri_child_elapsed_abstime: u64,
2639}
2640#[test]
2641fn bindgen_test_layout_rusage_info_v1() {
2642 const UNINIT: ::std::mem::MaybeUninit<rusage_info_v1> = ::std::mem::MaybeUninit::uninit();
2643 let ptr = UNINIT.as_ptr();
2644 assert_eq!(::std::mem::size_of::<rusage_info_v1>(), 144usize, "Size of rusage_info_v1");
2645 assert_eq!(::std::mem::align_of::<rusage_info_v1>(), 8usize, "Alignment of rusage_info_v1");
2646 assert_eq!(
2647 unsafe { ::std::ptr::addr_of!((*ptr).ri_uuid) as usize - ptr as usize },
2648 0usize,
2649 "Offset of field: rusage_info_v1::ri_uuid"
2650 );
2651 assert_eq!(
2652 unsafe { ::std::ptr::addr_of!((*ptr).ri_user_time) as usize - ptr as usize },
2653 16usize,
2654 "Offset of field: rusage_info_v1::ri_user_time"
2655 );
2656 assert_eq!(
2657 unsafe { ::std::ptr::addr_of!((*ptr).ri_system_time) as usize - ptr as usize },
2658 24usize,
2659 "Offset of field: rusage_info_v1::ri_system_time"
2660 );
2661 assert_eq!(
2662 unsafe { ::std::ptr::addr_of!((*ptr).ri_pkg_idle_wkups) as usize - ptr as usize },
2663 32usize,
2664 "Offset of field: rusage_info_v1::ri_pkg_idle_wkups"
2665 );
2666 assert_eq!(
2667 unsafe { ::std::ptr::addr_of!((*ptr).ri_interrupt_wkups) as usize - ptr as usize },
2668 40usize,
2669 "Offset of field: rusage_info_v1::ri_interrupt_wkups"
2670 );
2671 assert_eq!(
2672 unsafe { ::std::ptr::addr_of!((*ptr).ri_pageins) as usize - ptr as usize },
2673 48usize,
2674 "Offset of field: rusage_info_v1::ri_pageins"
2675 );
2676 assert_eq!(
2677 unsafe { ::std::ptr::addr_of!((*ptr).ri_wired_size) as usize - ptr as usize },
2678 56usize,
2679 "Offset of field: rusage_info_v1::ri_wired_size"
2680 );
2681 assert_eq!(
2682 unsafe { ::std::ptr::addr_of!((*ptr).ri_resident_size) as usize - ptr as usize },
2683 64usize,
2684 "Offset of field: rusage_info_v1::ri_resident_size"
2685 );
2686 assert_eq!(
2687 unsafe { ::std::ptr::addr_of!((*ptr).ri_phys_footprint) as usize - ptr as usize },
2688 72usize,
2689 "Offset of field: rusage_info_v1::ri_phys_footprint"
2690 );
2691 assert_eq!(
2692 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_start_abstime) as usize - ptr as usize },
2693 80usize,
2694 "Offset of field: rusage_info_v1::ri_proc_start_abstime"
2695 );
2696 assert_eq!(
2697 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_exit_abstime) as usize - ptr as usize },
2698 88usize,
2699 "Offset of field: rusage_info_v1::ri_proc_exit_abstime"
2700 );
2701 assert_eq!(
2702 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_user_time) as usize - ptr as usize },
2703 96usize,
2704 "Offset of field: rusage_info_v1::ri_child_user_time"
2705 );
2706 assert_eq!(
2707 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_system_time) as usize - ptr as usize },
2708 104usize,
2709 "Offset of field: rusage_info_v1::ri_child_system_time"
2710 );
2711 assert_eq!(
2712 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_pkg_idle_wkups) as usize - ptr as usize },
2713 112usize,
2714 "Offset of field: rusage_info_v1::ri_child_pkg_idle_wkups"
2715 );
2716 assert_eq!(
2717 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_interrupt_wkups) as usize - ptr as usize },
2718 120usize,
2719 "Offset of field: rusage_info_v1::ri_child_interrupt_wkups"
2720 );
2721 assert_eq!(
2722 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_pageins) as usize - ptr as usize },
2723 128usize,
2724 "Offset of field: rusage_info_v1::ri_child_pageins"
2725 );
2726 assert_eq!(
2727 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_elapsed_abstime) as usize - ptr as usize },
2728 136usize,
2729 "Offset of field: rusage_info_v1::ri_child_elapsed_abstime"
2730 );
2731}
2732#[repr(C)]
2733#[derive(Debug, Copy, Clone)]
2734pub struct rusage_info_v2 {
2735 pub ri_uuid: [u8; 16usize],
2736 pub ri_user_time: u64,
2737 pub ri_system_time: u64,
2738 pub ri_pkg_idle_wkups: u64,
2739 pub ri_interrupt_wkups: u64,
2740 pub ri_pageins: u64,
2741 pub ri_wired_size: u64,
2742 pub ri_resident_size: u64,
2743 pub ri_phys_footprint: u64,
2744 pub ri_proc_start_abstime: u64,
2745 pub ri_proc_exit_abstime: u64,
2746 pub ri_child_user_time: u64,
2747 pub ri_child_system_time: u64,
2748 pub ri_child_pkg_idle_wkups: u64,
2749 pub ri_child_interrupt_wkups: u64,
2750 pub ri_child_pageins: u64,
2751 pub ri_child_elapsed_abstime: u64,
2752 pub ri_diskio_bytesread: u64,
2753 pub ri_diskio_byteswritten: u64,
2754}
2755#[test]
2756fn bindgen_test_layout_rusage_info_v2() {
2757 const UNINIT: ::std::mem::MaybeUninit<rusage_info_v2> = ::std::mem::MaybeUninit::uninit();
2758 let ptr = UNINIT.as_ptr();
2759 assert_eq!(::std::mem::size_of::<rusage_info_v2>(), 160usize, "Size of rusage_info_v2");
2760 assert_eq!(::std::mem::align_of::<rusage_info_v2>(), 8usize, "Alignment of rusage_info_v2");
2761 assert_eq!(
2762 unsafe { ::std::ptr::addr_of!((*ptr).ri_uuid) as usize - ptr as usize },
2763 0usize,
2764 "Offset of field: rusage_info_v2::ri_uuid"
2765 );
2766 assert_eq!(
2767 unsafe { ::std::ptr::addr_of!((*ptr).ri_user_time) as usize - ptr as usize },
2768 16usize,
2769 "Offset of field: rusage_info_v2::ri_user_time"
2770 );
2771 assert_eq!(
2772 unsafe { ::std::ptr::addr_of!((*ptr).ri_system_time) as usize - ptr as usize },
2773 24usize,
2774 "Offset of field: rusage_info_v2::ri_system_time"
2775 );
2776 assert_eq!(
2777 unsafe { ::std::ptr::addr_of!((*ptr).ri_pkg_idle_wkups) as usize - ptr as usize },
2778 32usize,
2779 "Offset of field: rusage_info_v2::ri_pkg_idle_wkups"
2780 );
2781 assert_eq!(
2782 unsafe { ::std::ptr::addr_of!((*ptr).ri_interrupt_wkups) as usize - ptr as usize },
2783 40usize,
2784 "Offset of field: rusage_info_v2::ri_interrupt_wkups"
2785 );
2786 assert_eq!(
2787 unsafe { ::std::ptr::addr_of!((*ptr).ri_pageins) as usize - ptr as usize },
2788 48usize,
2789 "Offset of field: rusage_info_v2::ri_pageins"
2790 );
2791 assert_eq!(
2792 unsafe { ::std::ptr::addr_of!((*ptr).ri_wired_size) as usize - ptr as usize },
2793 56usize,
2794 "Offset of field: rusage_info_v2::ri_wired_size"
2795 );
2796 assert_eq!(
2797 unsafe { ::std::ptr::addr_of!((*ptr).ri_resident_size) as usize - ptr as usize },
2798 64usize,
2799 "Offset of field: rusage_info_v2::ri_resident_size"
2800 );
2801 assert_eq!(
2802 unsafe { ::std::ptr::addr_of!((*ptr).ri_phys_footprint) as usize - ptr as usize },
2803 72usize,
2804 "Offset of field: rusage_info_v2::ri_phys_footprint"
2805 );
2806 assert_eq!(
2807 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_start_abstime) as usize - ptr as usize },
2808 80usize,
2809 "Offset of field: rusage_info_v2::ri_proc_start_abstime"
2810 );
2811 assert_eq!(
2812 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_exit_abstime) as usize - ptr as usize },
2813 88usize,
2814 "Offset of field: rusage_info_v2::ri_proc_exit_abstime"
2815 );
2816 assert_eq!(
2817 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_user_time) as usize - ptr as usize },
2818 96usize,
2819 "Offset of field: rusage_info_v2::ri_child_user_time"
2820 );
2821 assert_eq!(
2822 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_system_time) as usize - ptr as usize },
2823 104usize,
2824 "Offset of field: rusage_info_v2::ri_child_system_time"
2825 );
2826 assert_eq!(
2827 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_pkg_idle_wkups) as usize - ptr as usize },
2828 112usize,
2829 "Offset of field: rusage_info_v2::ri_child_pkg_idle_wkups"
2830 );
2831 assert_eq!(
2832 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_interrupt_wkups) as usize - ptr as usize },
2833 120usize,
2834 "Offset of field: rusage_info_v2::ri_child_interrupt_wkups"
2835 );
2836 assert_eq!(
2837 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_pageins) as usize - ptr as usize },
2838 128usize,
2839 "Offset of field: rusage_info_v2::ri_child_pageins"
2840 );
2841 assert_eq!(
2842 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_elapsed_abstime) as usize - ptr as usize },
2843 136usize,
2844 "Offset of field: rusage_info_v2::ri_child_elapsed_abstime"
2845 );
2846 assert_eq!(
2847 unsafe { ::std::ptr::addr_of!((*ptr).ri_diskio_bytesread) as usize - ptr as usize },
2848 144usize,
2849 "Offset of field: rusage_info_v2::ri_diskio_bytesread"
2850 );
2851 assert_eq!(
2852 unsafe { ::std::ptr::addr_of!((*ptr).ri_diskio_byteswritten) as usize - ptr as usize },
2853 152usize,
2854 "Offset of field: rusage_info_v2::ri_diskio_byteswritten"
2855 );
2856}
2857#[repr(C)]
2858#[derive(Debug, Copy, Clone)]
2859pub struct rusage_info_v3 {
2860 pub ri_uuid: [u8; 16usize],
2861 pub ri_user_time: u64,
2862 pub ri_system_time: u64,
2863 pub ri_pkg_idle_wkups: u64,
2864 pub ri_interrupt_wkups: u64,
2865 pub ri_pageins: u64,
2866 pub ri_wired_size: u64,
2867 pub ri_resident_size: u64,
2868 pub ri_phys_footprint: u64,
2869 pub ri_proc_start_abstime: u64,
2870 pub ri_proc_exit_abstime: u64,
2871 pub ri_child_user_time: u64,
2872 pub ri_child_system_time: u64,
2873 pub ri_child_pkg_idle_wkups: u64,
2874 pub ri_child_interrupt_wkups: u64,
2875 pub ri_child_pageins: u64,
2876 pub ri_child_elapsed_abstime: u64,
2877 pub ri_diskio_bytesread: u64,
2878 pub ri_diskio_byteswritten: u64,
2879 pub ri_cpu_time_qos_default: u64,
2880 pub ri_cpu_time_qos_maintenance: u64,
2881 pub ri_cpu_time_qos_background: u64,
2882 pub ri_cpu_time_qos_utility: u64,
2883 pub ri_cpu_time_qos_legacy: u64,
2884 pub ri_cpu_time_qos_user_initiated: u64,
2885 pub ri_cpu_time_qos_user_interactive: u64,
2886 pub ri_billed_system_time: u64,
2887 pub ri_serviced_system_time: u64,
2888}
2889#[test]
2890fn bindgen_test_layout_rusage_info_v3() {
2891 const UNINIT: ::std::mem::MaybeUninit<rusage_info_v3> = ::std::mem::MaybeUninit::uninit();
2892 let ptr = UNINIT.as_ptr();
2893 assert_eq!(::std::mem::size_of::<rusage_info_v3>(), 232usize, "Size of rusage_info_v3");
2894 assert_eq!(::std::mem::align_of::<rusage_info_v3>(), 8usize, "Alignment of rusage_info_v3");
2895 assert_eq!(
2896 unsafe { ::std::ptr::addr_of!((*ptr).ri_uuid) as usize - ptr as usize },
2897 0usize,
2898 "Offset of field: rusage_info_v3::ri_uuid"
2899 );
2900 assert_eq!(
2901 unsafe { ::std::ptr::addr_of!((*ptr).ri_user_time) as usize - ptr as usize },
2902 16usize,
2903 "Offset of field: rusage_info_v3::ri_user_time"
2904 );
2905 assert_eq!(
2906 unsafe { ::std::ptr::addr_of!((*ptr).ri_system_time) as usize - ptr as usize },
2907 24usize,
2908 "Offset of field: rusage_info_v3::ri_system_time"
2909 );
2910 assert_eq!(
2911 unsafe { ::std::ptr::addr_of!((*ptr).ri_pkg_idle_wkups) as usize - ptr as usize },
2912 32usize,
2913 "Offset of field: rusage_info_v3::ri_pkg_idle_wkups"
2914 );
2915 assert_eq!(
2916 unsafe { ::std::ptr::addr_of!((*ptr).ri_interrupt_wkups) as usize - ptr as usize },
2917 40usize,
2918 "Offset of field: rusage_info_v3::ri_interrupt_wkups"
2919 );
2920 assert_eq!(
2921 unsafe { ::std::ptr::addr_of!((*ptr).ri_pageins) as usize - ptr as usize },
2922 48usize,
2923 "Offset of field: rusage_info_v3::ri_pageins"
2924 );
2925 assert_eq!(
2926 unsafe { ::std::ptr::addr_of!((*ptr).ri_wired_size) as usize - ptr as usize },
2927 56usize,
2928 "Offset of field: rusage_info_v3::ri_wired_size"
2929 );
2930 assert_eq!(
2931 unsafe { ::std::ptr::addr_of!((*ptr).ri_resident_size) as usize - ptr as usize },
2932 64usize,
2933 "Offset of field: rusage_info_v3::ri_resident_size"
2934 );
2935 assert_eq!(
2936 unsafe { ::std::ptr::addr_of!((*ptr).ri_phys_footprint) as usize - ptr as usize },
2937 72usize,
2938 "Offset of field: rusage_info_v3::ri_phys_footprint"
2939 );
2940 assert_eq!(
2941 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_start_abstime) as usize - ptr as usize },
2942 80usize,
2943 "Offset of field: rusage_info_v3::ri_proc_start_abstime"
2944 );
2945 assert_eq!(
2946 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_exit_abstime) as usize - ptr as usize },
2947 88usize,
2948 "Offset of field: rusage_info_v3::ri_proc_exit_abstime"
2949 );
2950 assert_eq!(
2951 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_user_time) as usize - ptr as usize },
2952 96usize,
2953 "Offset of field: rusage_info_v3::ri_child_user_time"
2954 );
2955 assert_eq!(
2956 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_system_time) as usize - ptr as usize },
2957 104usize,
2958 "Offset of field: rusage_info_v3::ri_child_system_time"
2959 );
2960 assert_eq!(
2961 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_pkg_idle_wkups) as usize - ptr as usize },
2962 112usize,
2963 "Offset of field: rusage_info_v3::ri_child_pkg_idle_wkups"
2964 );
2965 assert_eq!(
2966 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_interrupt_wkups) as usize - ptr as usize },
2967 120usize,
2968 "Offset of field: rusage_info_v3::ri_child_interrupt_wkups"
2969 );
2970 assert_eq!(
2971 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_pageins) as usize - ptr as usize },
2972 128usize,
2973 "Offset of field: rusage_info_v3::ri_child_pageins"
2974 );
2975 assert_eq!(
2976 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_elapsed_abstime) as usize - ptr as usize },
2977 136usize,
2978 "Offset of field: rusage_info_v3::ri_child_elapsed_abstime"
2979 );
2980 assert_eq!(
2981 unsafe { ::std::ptr::addr_of!((*ptr).ri_diskio_bytesread) as usize - ptr as usize },
2982 144usize,
2983 "Offset of field: rusage_info_v3::ri_diskio_bytesread"
2984 );
2985 assert_eq!(
2986 unsafe { ::std::ptr::addr_of!((*ptr).ri_diskio_byteswritten) as usize - ptr as usize },
2987 152usize,
2988 "Offset of field: rusage_info_v3::ri_diskio_byteswritten"
2989 );
2990 assert_eq!(
2991 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_default) as usize - ptr as usize },
2992 160usize,
2993 "Offset of field: rusage_info_v3::ri_cpu_time_qos_default"
2994 );
2995 assert_eq!(
2996 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_maintenance) as usize - ptr as usize },
2997 168usize,
2998 "Offset of field: rusage_info_v3::ri_cpu_time_qos_maintenance"
2999 );
3000 assert_eq!(
3001 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_background) as usize - ptr as usize },
3002 176usize,
3003 "Offset of field: rusage_info_v3::ri_cpu_time_qos_background"
3004 );
3005 assert_eq!(
3006 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_utility) as usize - ptr as usize },
3007 184usize,
3008 "Offset of field: rusage_info_v3::ri_cpu_time_qos_utility"
3009 );
3010 assert_eq!(
3011 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_legacy) as usize - ptr as usize },
3012 192usize,
3013 "Offset of field: rusage_info_v3::ri_cpu_time_qos_legacy"
3014 );
3015 assert_eq!(
3016 unsafe {
3017 ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_user_initiated) as usize - ptr as usize
3018 },
3019 200usize,
3020 "Offset of field: rusage_info_v3::ri_cpu_time_qos_user_initiated"
3021 );
3022 assert_eq!(
3023 unsafe {
3024 ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_user_interactive) as usize - ptr as usize
3025 },
3026 208usize,
3027 "Offset of field: rusage_info_v3::ri_cpu_time_qos_user_interactive"
3028 );
3029 assert_eq!(
3030 unsafe { ::std::ptr::addr_of!((*ptr).ri_billed_system_time) as usize - ptr as usize },
3031 216usize,
3032 "Offset of field: rusage_info_v3::ri_billed_system_time"
3033 );
3034 assert_eq!(
3035 unsafe { ::std::ptr::addr_of!((*ptr).ri_serviced_system_time) as usize - ptr as usize },
3036 224usize,
3037 "Offset of field: rusage_info_v3::ri_serviced_system_time"
3038 );
3039}
3040#[repr(C)]
3041#[derive(Debug, Copy, Clone)]
3042pub struct rusage_info_v4 {
3043 pub ri_uuid: [u8; 16usize],
3044 pub ri_user_time: u64,
3045 pub ri_system_time: u64,
3046 pub ri_pkg_idle_wkups: u64,
3047 pub ri_interrupt_wkups: u64,
3048 pub ri_pageins: u64,
3049 pub ri_wired_size: u64,
3050 pub ri_resident_size: u64,
3051 pub ri_phys_footprint: u64,
3052 pub ri_proc_start_abstime: u64,
3053 pub ri_proc_exit_abstime: u64,
3054 pub ri_child_user_time: u64,
3055 pub ri_child_system_time: u64,
3056 pub ri_child_pkg_idle_wkups: u64,
3057 pub ri_child_interrupt_wkups: u64,
3058 pub ri_child_pageins: u64,
3059 pub ri_child_elapsed_abstime: u64,
3060 pub ri_diskio_bytesread: u64,
3061 pub ri_diskio_byteswritten: u64,
3062 pub ri_cpu_time_qos_default: u64,
3063 pub ri_cpu_time_qos_maintenance: u64,
3064 pub ri_cpu_time_qos_background: u64,
3065 pub ri_cpu_time_qos_utility: u64,
3066 pub ri_cpu_time_qos_legacy: u64,
3067 pub ri_cpu_time_qos_user_initiated: u64,
3068 pub ri_cpu_time_qos_user_interactive: u64,
3069 pub ri_billed_system_time: u64,
3070 pub ri_serviced_system_time: u64,
3071 pub ri_logical_writes: u64,
3072 pub ri_lifetime_max_phys_footprint: u64,
3073 pub ri_instructions: u64,
3074 pub ri_cycles: u64,
3075 pub ri_billed_energy: u64,
3076 pub ri_serviced_energy: u64,
3077 pub ri_interval_max_phys_footprint: u64,
3078 pub ri_runnable_time: u64,
3079}
3080#[test]
3081fn bindgen_test_layout_rusage_info_v4() {
3082 const UNINIT: ::std::mem::MaybeUninit<rusage_info_v4> = ::std::mem::MaybeUninit::uninit();
3083 let ptr = UNINIT.as_ptr();
3084 assert_eq!(::std::mem::size_of::<rusage_info_v4>(), 296usize, "Size of rusage_info_v4");
3085 assert_eq!(::std::mem::align_of::<rusage_info_v4>(), 8usize, "Alignment of rusage_info_v4");
3086 assert_eq!(
3087 unsafe { ::std::ptr::addr_of!((*ptr).ri_uuid) as usize - ptr as usize },
3088 0usize,
3089 "Offset of field: rusage_info_v4::ri_uuid"
3090 );
3091 assert_eq!(
3092 unsafe { ::std::ptr::addr_of!((*ptr).ri_user_time) as usize - ptr as usize },
3093 16usize,
3094 "Offset of field: rusage_info_v4::ri_user_time"
3095 );
3096 assert_eq!(
3097 unsafe { ::std::ptr::addr_of!((*ptr).ri_system_time) as usize - ptr as usize },
3098 24usize,
3099 "Offset of field: rusage_info_v4::ri_system_time"
3100 );
3101 assert_eq!(
3102 unsafe { ::std::ptr::addr_of!((*ptr).ri_pkg_idle_wkups) as usize - ptr as usize },
3103 32usize,
3104 "Offset of field: rusage_info_v4::ri_pkg_idle_wkups"
3105 );
3106 assert_eq!(
3107 unsafe { ::std::ptr::addr_of!((*ptr).ri_interrupt_wkups) as usize - ptr as usize },
3108 40usize,
3109 "Offset of field: rusage_info_v4::ri_interrupt_wkups"
3110 );
3111 assert_eq!(
3112 unsafe { ::std::ptr::addr_of!((*ptr).ri_pageins) as usize - ptr as usize },
3113 48usize,
3114 "Offset of field: rusage_info_v4::ri_pageins"
3115 );
3116 assert_eq!(
3117 unsafe { ::std::ptr::addr_of!((*ptr).ri_wired_size) as usize - ptr as usize },
3118 56usize,
3119 "Offset of field: rusage_info_v4::ri_wired_size"
3120 );
3121 assert_eq!(
3122 unsafe { ::std::ptr::addr_of!((*ptr).ri_resident_size) as usize - ptr as usize },
3123 64usize,
3124 "Offset of field: rusage_info_v4::ri_resident_size"
3125 );
3126 assert_eq!(
3127 unsafe { ::std::ptr::addr_of!((*ptr).ri_phys_footprint) as usize - ptr as usize },
3128 72usize,
3129 "Offset of field: rusage_info_v4::ri_phys_footprint"
3130 );
3131 assert_eq!(
3132 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_start_abstime) as usize - ptr as usize },
3133 80usize,
3134 "Offset of field: rusage_info_v4::ri_proc_start_abstime"
3135 );
3136 assert_eq!(
3137 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_exit_abstime) as usize - ptr as usize },
3138 88usize,
3139 "Offset of field: rusage_info_v4::ri_proc_exit_abstime"
3140 );
3141 assert_eq!(
3142 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_user_time) as usize - ptr as usize },
3143 96usize,
3144 "Offset of field: rusage_info_v4::ri_child_user_time"
3145 );
3146 assert_eq!(
3147 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_system_time) as usize - ptr as usize },
3148 104usize,
3149 "Offset of field: rusage_info_v4::ri_child_system_time"
3150 );
3151 assert_eq!(
3152 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_pkg_idle_wkups) as usize - ptr as usize },
3153 112usize,
3154 "Offset of field: rusage_info_v4::ri_child_pkg_idle_wkups"
3155 );
3156 assert_eq!(
3157 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_interrupt_wkups) as usize - ptr as usize },
3158 120usize,
3159 "Offset of field: rusage_info_v4::ri_child_interrupt_wkups"
3160 );
3161 assert_eq!(
3162 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_pageins) as usize - ptr as usize },
3163 128usize,
3164 "Offset of field: rusage_info_v4::ri_child_pageins"
3165 );
3166 assert_eq!(
3167 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_elapsed_abstime) as usize - ptr as usize },
3168 136usize,
3169 "Offset of field: rusage_info_v4::ri_child_elapsed_abstime"
3170 );
3171 assert_eq!(
3172 unsafe { ::std::ptr::addr_of!((*ptr).ri_diskio_bytesread) as usize - ptr as usize },
3173 144usize,
3174 "Offset of field: rusage_info_v4::ri_diskio_bytesread"
3175 );
3176 assert_eq!(
3177 unsafe { ::std::ptr::addr_of!((*ptr).ri_diskio_byteswritten) as usize - ptr as usize },
3178 152usize,
3179 "Offset of field: rusage_info_v4::ri_diskio_byteswritten"
3180 );
3181 assert_eq!(
3182 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_default) as usize - ptr as usize },
3183 160usize,
3184 "Offset of field: rusage_info_v4::ri_cpu_time_qos_default"
3185 );
3186 assert_eq!(
3187 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_maintenance) as usize - ptr as usize },
3188 168usize,
3189 "Offset of field: rusage_info_v4::ri_cpu_time_qos_maintenance"
3190 );
3191 assert_eq!(
3192 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_background) as usize - ptr as usize },
3193 176usize,
3194 "Offset of field: rusage_info_v4::ri_cpu_time_qos_background"
3195 );
3196 assert_eq!(
3197 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_utility) as usize - ptr as usize },
3198 184usize,
3199 "Offset of field: rusage_info_v4::ri_cpu_time_qos_utility"
3200 );
3201 assert_eq!(
3202 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_legacy) as usize - ptr as usize },
3203 192usize,
3204 "Offset of field: rusage_info_v4::ri_cpu_time_qos_legacy"
3205 );
3206 assert_eq!(
3207 unsafe {
3208 ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_user_initiated) as usize - ptr as usize
3209 },
3210 200usize,
3211 "Offset of field: rusage_info_v4::ri_cpu_time_qos_user_initiated"
3212 );
3213 assert_eq!(
3214 unsafe {
3215 ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_user_interactive) as usize - ptr as usize
3216 },
3217 208usize,
3218 "Offset of field: rusage_info_v4::ri_cpu_time_qos_user_interactive"
3219 );
3220 assert_eq!(
3221 unsafe { ::std::ptr::addr_of!((*ptr).ri_billed_system_time) as usize - ptr as usize },
3222 216usize,
3223 "Offset of field: rusage_info_v4::ri_billed_system_time"
3224 );
3225 assert_eq!(
3226 unsafe { ::std::ptr::addr_of!((*ptr).ri_serviced_system_time) as usize - ptr as usize },
3227 224usize,
3228 "Offset of field: rusage_info_v4::ri_serviced_system_time"
3229 );
3230 assert_eq!(
3231 unsafe { ::std::ptr::addr_of!((*ptr).ri_logical_writes) as usize - ptr as usize },
3232 232usize,
3233 "Offset of field: rusage_info_v4::ri_logical_writes"
3234 );
3235 assert_eq!(
3236 unsafe {
3237 ::std::ptr::addr_of!((*ptr).ri_lifetime_max_phys_footprint) as usize - ptr as usize
3238 },
3239 240usize,
3240 "Offset of field: rusage_info_v4::ri_lifetime_max_phys_footprint"
3241 );
3242 assert_eq!(
3243 unsafe { ::std::ptr::addr_of!((*ptr).ri_instructions) as usize - ptr as usize },
3244 248usize,
3245 "Offset of field: rusage_info_v4::ri_instructions"
3246 );
3247 assert_eq!(
3248 unsafe { ::std::ptr::addr_of!((*ptr).ri_cycles) as usize - ptr as usize },
3249 256usize,
3250 "Offset of field: rusage_info_v4::ri_cycles"
3251 );
3252 assert_eq!(
3253 unsafe { ::std::ptr::addr_of!((*ptr).ri_billed_energy) as usize - ptr as usize },
3254 264usize,
3255 "Offset of field: rusage_info_v4::ri_billed_energy"
3256 );
3257 assert_eq!(
3258 unsafe { ::std::ptr::addr_of!((*ptr).ri_serviced_energy) as usize - ptr as usize },
3259 272usize,
3260 "Offset of field: rusage_info_v4::ri_serviced_energy"
3261 );
3262 assert_eq!(
3263 unsafe {
3264 ::std::ptr::addr_of!((*ptr).ri_interval_max_phys_footprint) as usize - ptr as usize
3265 },
3266 280usize,
3267 "Offset of field: rusage_info_v4::ri_interval_max_phys_footprint"
3268 );
3269 assert_eq!(
3270 unsafe { ::std::ptr::addr_of!((*ptr).ri_runnable_time) as usize - ptr as usize },
3271 288usize,
3272 "Offset of field: rusage_info_v4::ri_runnable_time"
3273 );
3274}
3275#[repr(C)]
3276#[derive(Debug, Copy, Clone)]
3277pub struct rusage_info_v5 {
3278 pub ri_uuid: [u8; 16usize],
3279 pub ri_user_time: u64,
3280 pub ri_system_time: u64,
3281 pub ri_pkg_idle_wkups: u64,
3282 pub ri_interrupt_wkups: u64,
3283 pub ri_pageins: u64,
3284 pub ri_wired_size: u64,
3285 pub ri_resident_size: u64,
3286 pub ri_phys_footprint: u64,
3287 pub ri_proc_start_abstime: u64,
3288 pub ri_proc_exit_abstime: u64,
3289 pub ri_child_user_time: u64,
3290 pub ri_child_system_time: u64,
3291 pub ri_child_pkg_idle_wkups: u64,
3292 pub ri_child_interrupt_wkups: u64,
3293 pub ri_child_pageins: u64,
3294 pub ri_child_elapsed_abstime: u64,
3295 pub ri_diskio_bytesread: u64,
3296 pub ri_diskio_byteswritten: u64,
3297 pub ri_cpu_time_qos_default: u64,
3298 pub ri_cpu_time_qos_maintenance: u64,
3299 pub ri_cpu_time_qos_background: u64,
3300 pub ri_cpu_time_qos_utility: u64,
3301 pub ri_cpu_time_qos_legacy: u64,
3302 pub ri_cpu_time_qos_user_initiated: u64,
3303 pub ri_cpu_time_qos_user_interactive: u64,
3304 pub ri_billed_system_time: u64,
3305 pub ri_serviced_system_time: u64,
3306 pub ri_logical_writes: u64,
3307 pub ri_lifetime_max_phys_footprint: u64,
3308 pub ri_instructions: u64,
3309 pub ri_cycles: u64,
3310 pub ri_billed_energy: u64,
3311 pub ri_serviced_energy: u64,
3312 pub ri_interval_max_phys_footprint: u64,
3313 pub ri_runnable_time: u64,
3314 pub ri_flags: u64,
3315}
3316#[test]
3317fn bindgen_test_layout_rusage_info_v5() {
3318 const UNINIT: ::std::mem::MaybeUninit<rusage_info_v5> = ::std::mem::MaybeUninit::uninit();
3319 let ptr = UNINIT.as_ptr();
3320 assert_eq!(::std::mem::size_of::<rusage_info_v5>(), 304usize, "Size of rusage_info_v5");
3321 assert_eq!(::std::mem::align_of::<rusage_info_v5>(), 8usize, "Alignment of rusage_info_v5");
3322 assert_eq!(
3323 unsafe { ::std::ptr::addr_of!((*ptr).ri_uuid) as usize - ptr as usize },
3324 0usize,
3325 "Offset of field: rusage_info_v5::ri_uuid"
3326 );
3327 assert_eq!(
3328 unsafe { ::std::ptr::addr_of!((*ptr).ri_user_time) as usize - ptr as usize },
3329 16usize,
3330 "Offset of field: rusage_info_v5::ri_user_time"
3331 );
3332 assert_eq!(
3333 unsafe { ::std::ptr::addr_of!((*ptr).ri_system_time) as usize - ptr as usize },
3334 24usize,
3335 "Offset of field: rusage_info_v5::ri_system_time"
3336 );
3337 assert_eq!(
3338 unsafe { ::std::ptr::addr_of!((*ptr).ri_pkg_idle_wkups) as usize - ptr as usize },
3339 32usize,
3340 "Offset of field: rusage_info_v5::ri_pkg_idle_wkups"
3341 );
3342 assert_eq!(
3343 unsafe { ::std::ptr::addr_of!((*ptr).ri_interrupt_wkups) as usize - ptr as usize },
3344 40usize,
3345 "Offset of field: rusage_info_v5::ri_interrupt_wkups"
3346 );
3347 assert_eq!(
3348 unsafe { ::std::ptr::addr_of!((*ptr).ri_pageins) as usize - ptr as usize },
3349 48usize,
3350 "Offset of field: rusage_info_v5::ri_pageins"
3351 );
3352 assert_eq!(
3353 unsafe { ::std::ptr::addr_of!((*ptr).ri_wired_size) as usize - ptr as usize },
3354 56usize,
3355 "Offset of field: rusage_info_v5::ri_wired_size"
3356 );
3357 assert_eq!(
3358 unsafe { ::std::ptr::addr_of!((*ptr).ri_resident_size) as usize - ptr as usize },
3359 64usize,
3360 "Offset of field: rusage_info_v5::ri_resident_size"
3361 );
3362 assert_eq!(
3363 unsafe { ::std::ptr::addr_of!((*ptr).ri_phys_footprint) as usize - ptr as usize },
3364 72usize,
3365 "Offset of field: rusage_info_v5::ri_phys_footprint"
3366 );
3367 assert_eq!(
3368 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_start_abstime) as usize - ptr as usize },
3369 80usize,
3370 "Offset of field: rusage_info_v5::ri_proc_start_abstime"
3371 );
3372 assert_eq!(
3373 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_exit_abstime) as usize - ptr as usize },
3374 88usize,
3375 "Offset of field: rusage_info_v5::ri_proc_exit_abstime"
3376 );
3377 assert_eq!(
3378 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_user_time) as usize - ptr as usize },
3379 96usize,
3380 "Offset of field: rusage_info_v5::ri_child_user_time"
3381 );
3382 assert_eq!(
3383 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_system_time) as usize - ptr as usize },
3384 104usize,
3385 "Offset of field: rusage_info_v5::ri_child_system_time"
3386 );
3387 assert_eq!(
3388 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_pkg_idle_wkups) as usize - ptr as usize },
3389 112usize,
3390 "Offset of field: rusage_info_v5::ri_child_pkg_idle_wkups"
3391 );
3392 assert_eq!(
3393 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_interrupt_wkups) as usize - ptr as usize },
3394 120usize,
3395 "Offset of field: rusage_info_v5::ri_child_interrupt_wkups"
3396 );
3397 assert_eq!(
3398 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_pageins) as usize - ptr as usize },
3399 128usize,
3400 "Offset of field: rusage_info_v5::ri_child_pageins"
3401 );
3402 assert_eq!(
3403 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_elapsed_abstime) as usize - ptr as usize },
3404 136usize,
3405 "Offset of field: rusage_info_v5::ri_child_elapsed_abstime"
3406 );
3407 assert_eq!(
3408 unsafe { ::std::ptr::addr_of!((*ptr).ri_diskio_bytesread) as usize - ptr as usize },
3409 144usize,
3410 "Offset of field: rusage_info_v5::ri_diskio_bytesread"
3411 );
3412 assert_eq!(
3413 unsafe { ::std::ptr::addr_of!((*ptr).ri_diskio_byteswritten) as usize - ptr as usize },
3414 152usize,
3415 "Offset of field: rusage_info_v5::ri_diskio_byteswritten"
3416 );
3417 assert_eq!(
3418 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_default) as usize - ptr as usize },
3419 160usize,
3420 "Offset of field: rusage_info_v5::ri_cpu_time_qos_default"
3421 );
3422 assert_eq!(
3423 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_maintenance) as usize - ptr as usize },
3424 168usize,
3425 "Offset of field: rusage_info_v5::ri_cpu_time_qos_maintenance"
3426 );
3427 assert_eq!(
3428 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_background) as usize - ptr as usize },
3429 176usize,
3430 "Offset of field: rusage_info_v5::ri_cpu_time_qos_background"
3431 );
3432 assert_eq!(
3433 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_utility) as usize - ptr as usize },
3434 184usize,
3435 "Offset of field: rusage_info_v5::ri_cpu_time_qos_utility"
3436 );
3437 assert_eq!(
3438 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_legacy) as usize - ptr as usize },
3439 192usize,
3440 "Offset of field: rusage_info_v5::ri_cpu_time_qos_legacy"
3441 );
3442 assert_eq!(
3443 unsafe {
3444 ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_user_initiated) as usize - ptr as usize
3445 },
3446 200usize,
3447 "Offset of field: rusage_info_v5::ri_cpu_time_qos_user_initiated"
3448 );
3449 assert_eq!(
3450 unsafe {
3451 ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_user_interactive) as usize - ptr as usize
3452 },
3453 208usize,
3454 "Offset of field: rusage_info_v5::ri_cpu_time_qos_user_interactive"
3455 );
3456 assert_eq!(
3457 unsafe { ::std::ptr::addr_of!((*ptr).ri_billed_system_time) as usize - ptr as usize },
3458 216usize,
3459 "Offset of field: rusage_info_v5::ri_billed_system_time"
3460 );
3461 assert_eq!(
3462 unsafe { ::std::ptr::addr_of!((*ptr).ri_serviced_system_time) as usize - ptr as usize },
3463 224usize,
3464 "Offset of field: rusage_info_v5::ri_serviced_system_time"
3465 );
3466 assert_eq!(
3467 unsafe { ::std::ptr::addr_of!((*ptr).ri_logical_writes) as usize - ptr as usize },
3468 232usize,
3469 "Offset of field: rusage_info_v5::ri_logical_writes"
3470 );
3471 assert_eq!(
3472 unsafe {
3473 ::std::ptr::addr_of!((*ptr).ri_lifetime_max_phys_footprint) as usize - ptr as usize
3474 },
3475 240usize,
3476 "Offset of field: rusage_info_v5::ri_lifetime_max_phys_footprint"
3477 );
3478 assert_eq!(
3479 unsafe { ::std::ptr::addr_of!((*ptr).ri_instructions) as usize - ptr as usize },
3480 248usize,
3481 "Offset of field: rusage_info_v5::ri_instructions"
3482 );
3483 assert_eq!(
3484 unsafe { ::std::ptr::addr_of!((*ptr).ri_cycles) as usize - ptr as usize },
3485 256usize,
3486 "Offset of field: rusage_info_v5::ri_cycles"
3487 );
3488 assert_eq!(
3489 unsafe { ::std::ptr::addr_of!((*ptr).ri_billed_energy) as usize - ptr as usize },
3490 264usize,
3491 "Offset of field: rusage_info_v5::ri_billed_energy"
3492 );
3493 assert_eq!(
3494 unsafe { ::std::ptr::addr_of!((*ptr).ri_serviced_energy) as usize - ptr as usize },
3495 272usize,
3496 "Offset of field: rusage_info_v5::ri_serviced_energy"
3497 );
3498 assert_eq!(
3499 unsafe {
3500 ::std::ptr::addr_of!((*ptr).ri_interval_max_phys_footprint) as usize - ptr as usize
3501 },
3502 280usize,
3503 "Offset of field: rusage_info_v5::ri_interval_max_phys_footprint"
3504 );
3505 assert_eq!(
3506 unsafe { ::std::ptr::addr_of!((*ptr).ri_runnable_time) as usize - ptr as usize },
3507 288usize,
3508 "Offset of field: rusage_info_v5::ri_runnable_time"
3509 );
3510 assert_eq!(
3511 unsafe { ::std::ptr::addr_of!((*ptr).ri_flags) as usize - ptr as usize },
3512 296usize,
3513 "Offset of field: rusage_info_v5::ri_flags"
3514 );
3515}
3516#[repr(C)]
3517#[derive(Debug, Copy, Clone)]
3518pub struct rusage_info_v6 {
3519 pub ri_uuid: [u8; 16usize],
3520 pub ri_user_time: u64,
3521 pub ri_system_time: u64,
3522 pub ri_pkg_idle_wkups: u64,
3523 pub ri_interrupt_wkups: u64,
3524 pub ri_pageins: u64,
3525 pub ri_wired_size: u64,
3526 pub ri_resident_size: u64,
3527 pub ri_phys_footprint: u64,
3528 pub ri_proc_start_abstime: u64,
3529 pub ri_proc_exit_abstime: u64,
3530 pub ri_child_user_time: u64,
3531 pub ri_child_system_time: u64,
3532 pub ri_child_pkg_idle_wkups: u64,
3533 pub ri_child_interrupt_wkups: u64,
3534 pub ri_child_pageins: u64,
3535 pub ri_child_elapsed_abstime: u64,
3536 pub ri_diskio_bytesread: u64,
3537 pub ri_diskio_byteswritten: u64,
3538 pub ri_cpu_time_qos_default: u64,
3539 pub ri_cpu_time_qos_maintenance: u64,
3540 pub ri_cpu_time_qos_background: u64,
3541 pub ri_cpu_time_qos_utility: u64,
3542 pub ri_cpu_time_qos_legacy: u64,
3543 pub ri_cpu_time_qos_user_initiated: u64,
3544 pub ri_cpu_time_qos_user_interactive: u64,
3545 pub ri_billed_system_time: u64,
3546 pub ri_serviced_system_time: u64,
3547 pub ri_logical_writes: u64,
3548 pub ri_lifetime_max_phys_footprint: u64,
3549 pub ri_instructions: u64,
3550 pub ri_cycles: u64,
3551 pub ri_billed_energy: u64,
3552 pub ri_serviced_energy: u64,
3553 pub ri_interval_max_phys_footprint: u64,
3554 pub ri_runnable_time: u64,
3555 pub ri_flags: u64,
3556 pub ri_user_ptime: u64,
3557 pub ri_system_ptime: u64,
3558 pub ri_pinstructions: u64,
3559 pub ri_pcycles: u64,
3560 pub ri_energy_nj: u64,
3561 pub ri_penergy_nj: u64,
3562 pub ri_secure_time_in_system: u64,
3563 pub ri_secure_ptime_in_system: u64,
3564 pub ri_neural_footprint: u64,
3565 pub ri_lifetime_max_neural_footprint: u64,
3566 pub ri_interval_max_neural_footprint: u64,
3567 pub ri_reserved: [u64; 9usize],
3568}
3569#[test]
3570fn bindgen_test_layout_rusage_info_v6() {
3571 const UNINIT: ::std::mem::MaybeUninit<rusage_info_v6> = ::std::mem::MaybeUninit::uninit();
3572 let ptr = UNINIT.as_ptr();
3573 assert_eq!(::std::mem::size_of::<rusage_info_v6>(), 464usize, "Size of rusage_info_v6");
3574 assert_eq!(::std::mem::align_of::<rusage_info_v6>(), 8usize, "Alignment of rusage_info_v6");
3575 assert_eq!(
3576 unsafe { ::std::ptr::addr_of!((*ptr).ri_uuid) as usize - ptr as usize },
3577 0usize,
3578 "Offset of field: rusage_info_v6::ri_uuid"
3579 );
3580 assert_eq!(
3581 unsafe { ::std::ptr::addr_of!((*ptr).ri_user_time) as usize - ptr as usize },
3582 16usize,
3583 "Offset of field: rusage_info_v6::ri_user_time"
3584 );
3585 assert_eq!(
3586 unsafe { ::std::ptr::addr_of!((*ptr).ri_system_time) as usize - ptr as usize },
3587 24usize,
3588 "Offset of field: rusage_info_v6::ri_system_time"
3589 );
3590 assert_eq!(
3591 unsafe { ::std::ptr::addr_of!((*ptr).ri_pkg_idle_wkups) as usize - ptr as usize },
3592 32usize,
3593 "Offset of field: rusage_info_v6::ri_pkg_idle_wkups"
3594 );
3595 assert_eq!(
3596 unsafe { ::std::ptr::addr_of!((*ptr).ri_interrupt_wkups) as usize - ptr as usize },
3597 40usize,
3598 "Offset of field: rusage_info_v6::ri_interrupt_wkups"
3599 );
3600 assert_eq!(
3601 unsafe { ::std::ptr::addr_of!((*ptr).ri_pageins) as usize - ptr as usize },
3602 48usize,
3603 "Offset of field: rusage_info_v6::ri_pageins"
3604 );
3605 assert_eq!(
3606 unsafe { ::std::ptr::addr_of!((*ptr).ri_wired_size) as usize - ptr as usize },
3607 56usize,
3608 "Offset of field: rusage_info_v6::ri_wired_size"
3609 );
3610 assert_eq!(
3611 unsafe { ::std::ptr::addr_of!((*ptr).ri_resident_size) as usize - ptr as usize },
3612 64usize,
3613 "Offset of field: rusage_info_v6::ri_resident_size"
3614 );
3615 assert_eq!(
3616 unsafe { ::std::ptr::addr_of!((*ptr).ri_phys_footprint) as usize - ptr as usize },
3617 72usize,
3618 "Offset of field: rusage_info_v6::ri_phys_footprint"
3619 );
3620 assert_eq!(
3621 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_start_abstime) as usize - ptr as usize },
3622 80usize,
3623 "Offset of field: rusage_info_v6::ri_proc_start_abstime"
3624 );
3625 assert_eq!(
3626 unsafe { ::std::ptr::addr_of!((*ptr).ri_proc_exit_abstime) as usize - ptr as usize },
3627 88usize,
3628 "Offset of field: rusage_info_v6::ri_proc_exit_abstime"
3629 );
3630 assert_eq!(
3631 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_user_time) as usize - ptr as usize },
3632 96usize,
3633 "Offset of field: rusage_info_v6::ri_child_user_time"
3634 );
3635 assert_eq!(
3636 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_system_time) as usize - ptr as usize },
3637 104usize,
3638 "Offset of field: rusage_info_v6::ri_child_system_time"
3639 );
3640 assert_eq!(
3641 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_pkg_idle_wkups) as usize - ptr as usize },
3642 112usize,
3643 "Offset of field: rusage_info_v6::ri_child_pkg_idle_wkups"
3644 );
3645 assert_eq!(
3646 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_interrupt_wkups) as usize - ptr as usize },
3647 120usize,
3648 "Offset of field: rusage_info_v6::ri_child_interrupt_wkups"
3649 );
3650 assert_eq!(
3651 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_pageins) as usize - ptr as usize },
3652 128usize,
3653 "Offset of field: rusage_info_v6::ri_child_pageins"
3654 );
3655 assert_eq!(
3656 unsafe { ::std::ptr::addr_of!((*ptr).ri_child_elapsed_abstime) as usize - ptr as usize },
3657 136usize,
3658 "Offset of field: rusage_info_v6::ri_child_elapsed_abstime"
3659 );
3660 assert_eq!(
3661 unsafe { ::std::ptr::addr_of!((*ptr).ri_diskio_bytesread) as usize - ptr as usize },
3662 144usize,
3663 "Offset of field: rusage_info_v6::ri_diskio_bytesread"
3664 );
3665 assert_eq!(
3666 unsafe { ::std::ptr::addr_of!((*ptr).ri_diskio_byteswritten) as usize - ptr as usize },
3667 152usize,
3668 "Offset of field: rusage_info_v6::ri_diskio_byteswritten"
3669 );
3670 assert_eq!(
3671 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_default) as usize - ptr as usize },
3672 160usize,
3673 "Offset of field: rusage_info_v6::ri_cpu_time_qos_default"
3674 );
3675 assert_eq!(
3676 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_maintenance) as usize - ptr as usize },
3677 168usize,
3678 "Offset of field: rusage_info_v6::ri_cpu_time_qos_maintenance"
3679 );
3680 assert_eq!(
3681 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_background) as usize - ptr as usize },
3682 176usize,
3683 "Offset of field: rusage_info_v6::ri_cpu_time_qos_background"
3684 );
3685 assert_eq!(
3686 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_utility) as usize - ptr as usize },
3687 184usize,
3688 "Offset of field: rusage_info_v6::ri_cpu_time_qos_utility"
3689 );
3690 assert_eq!(
3691 unsafe { ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_legacy) as usize - ptr as usize },
3692 192usize,
3693 "Offset of field: rusage_info_v6::ri_cpu_time_qos_legacy"
3694 );
3695 assert_eq!(
3696 unsafe {
3697 ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_user_initiated) as usize - ptr as usize
3698 },
3699 200usize,
3700 "Offset of field: rusage_info_v6::ri_cpu_time_qos_user_initiated"
3701 );
3702 assert_eq!(
3703 unsafe {
3704 ::std::ptr::addr_of!((*ptr).ri_cpu_time_qos_user_interactive) as usize - ptr as usize
3705 },
3706 208usize,
3707 "Offset of field: rusage_info_v6::ri_cpu_time_qos_user_interactive"
3708 );
3709 assert_eq!(
3710 unsafe { ::std::ptr::addr_of!((*ptr).ri_billed_system_time) as usize - ptr as usize },
3711 216usize,
3712 "Offset of field: rusage_info_v6::ri_billed_system_time"
3713 );
3714 assert_eq!(
3715 unsafe { ::std::ptr::addr_of!((*ptr).ri_serviced_system_time) as usize - ptr as usize },
3716 224usize,
3717 "Offset of field: rusage_info_v6::ri_serviced_system_time"
3718 );
3719 assert_eq!(
3720 unsafe { ::std::ptr::addr_of!((*ptr).ri_logical_writes) as usize - ptr as usize },
3721 232usize,
3722 "Offset of field: rusage_info_v6::ri_logical_writes"
3723 );
3724 assert_eq!(
3725 unsafe {
3726 ::std::ptr::addr_of!((*ptr).ri_lifetime_max_phys_footprint) as usize - ptr as usize
3727 },
3728 240usize,
3729 "Offset of field: rusage_info_v6::ri_lifetime_max_phys_footprint"
3730 );
3731 assert_eq!(
3732 unsafe { ::std::ptr::addr_of!((*ptr).ri_instructions) as usize - ptr as usize },
3733 248usize,
3734 "Offset of field: rusage_info_v6::ri_instructions"
3735 );
3736 assert_eq!(
3737 unsafe { ::std::ptr::addr_of!((*ptr).ri_cycles) as usize - ptr as usize },
3738 256usize,
3739 "Offset of field: rusage_info_v6::ri_cycles"
3740 );
3741 assert_eq!(
3742 unsafe { ::std::ptr::addr_of!((*ptr).ri_billed_energy) as usize - ptr as usize },
3743 264usize,
3744 "Offset of field: rusage_info_v6::ri_billed_energy"
3745 );
3746 assert_eq!(
3747 unsafe { ::std::ptr::addr_of!((*ptr).ri_serviced_energy) as usize - ptr as usize },
3748 272usize,
3749 "Offset of field: rusage_info_v6::ri_serviced_energy"
3750 );
3751 assert_eq!(
3752 unsafe {
3753 ::std::ptr::addr_of!((*ptr).ri_interval_max_phys_footprint) as usize - ptr as usize
3754 },
3755 280usize,
3756 "Offset of field: rusage_info_v6::ri_interval_max_phys_footprint"
3757 );
3758 assert_eq!(
3759 unsafe { ::std::ptr::addr_of!((*ptr).ri_runnable_time) as usize - ptr as usize },
3760 288usize,
3761 "Offset of field: rusage_info_v6::ri_runnable_time"
3762 );
3763 assert_eq!(
3764 unsafe { ::std::ptr::addr_of!((*ptr).ri_flags) as usize - ptr as usize },
3765 296usize,
3766 "Offset of field: rusage_info_v6::ri_flags"
3767 );
3768 assert_eq!(
3769 unsafe { ::std::ptr::addr_of!((*ptr).ri_user_ptime) as usize - ptr as usize },
3770 304usize,
3771 "Offset of field: rusage_info_v6::ri_user_ptime"
3772 );
3773 assert_eq!(
3774 unsafe { ::std::ptr::addr_of!((*ptr).ri_system_ptime) as usize - ptr as usize },
3775 312usize,
3776 "Offset of field: rusage_info_v6::ri_system_ptime"
3777 );
3778 assert_eq!(
3779 unsafe { ::std::ptr::addr_of!((*ptr).ri_pinstructions) as usize - ptr as usize },
3780 320usize,
3781 "Offset of field: rusage_info_v6::ri_pinstructions"
3782 );
3783 assert_eq!(
3784 unsafe { ::std::ptr::addr_of!((*ptr).ri_pcycles) as usize - ptr as usize },
3785 328usize,
3786 "Offset of field: rusage_info_v6::ri_pcycles"
3787 );
3788 assert_eq!(
3789 unsafe { ::std::ptr::addr_of!((*ptr).ri_energy_nj) as usize - ptr as usize },
3790 336usize,
3791 "Offset of field: rusage_info_v6::ri_energy_nj"
3792 );
3793 assert_eq!(
3794 unsafe { ::std::ptr::addr_of!((*ptr).ri_penergy_nj) as usize - ptr as usize },
3795 344usize,
3796 "Offset of field: rusage_info_v6::ri_penergy_nj"
3797 );
3798 assert_eq!(
3799 unsafe { ::std::ptr::addr_of!((*ptr).ri_secure_time_in_system) as usize - ptr as usize },
3800 352usize,
3801 "Offset of field: rusage_info_v6::ri_secure_time_in_system"
3802 );
3803 assert_eq!(
3804 unsafe { ::std::ptr::addr_of!((*ptr).ri_secure_ptime_in_system) as usize - ptr as usize },
3805 360usize,
3806 "Offset of field: rusage_info_v6::ri_secure_ptime_in_system"
3807 );
3808 assert_eq!(
3809 unsafe { ::std::ptr::addr_of!((*ptr).ri_neural_footprint) as usize - ptr as usize },
3810 368usize,
3811 "Offset of field: rusage_info_v6::ri_neural_footprint"
3812 );
3813 assert_eq!(
3814 unsafe {
3815 ::std::ptr::addr_of!((*ptr).ri_lifetime_max_neural_footprint) as usize - ptr as usize
3816 },
3817 376usize,
3818 "Offset of field: rusage_info_v6::ri_lifetime_max_neural_footprint"
3819 );
3820 assert_eq!(
3821 unsafe {
3822 ::std::ptr::addr_of!((*ptr).ri_interval_max_neural_footprint) as usize - ptr as usize
3823 },
3824 384usize,
3825 "Offset of field: rusage_info_v6::ri_interval_max_neural_footprint"
3826 );
3827 assert_eq!(
3828 unsafe { ::std::ptr::addr_of!((*ptr).ri_reserved) as usize - ptr as usize },
3829 392usize,
3830 "Offset of field: rusage_info_v6::ri_reserved"
3831 );
3832}
3833pub type rusage_info_current = rusage_info_v6;
3834#[repr(C)]
3835#[derive(Debug, Copy, Clone)]
3836pub struct rlimit {
3837 pub rlim_cur: rlim_t,
3838 pub rlim_max: rlim_t,
3839}
3840#[test]
3841fn bindgen_test_layout_rlimit() {
3842 const UNINIT: ::std::mem::MaybeUninit<rlimit> = ::std::mem::MaybeUninit::uninit();
3843 let ptr = UNINIT.as_ptr();
3844 assert_eq!(::std::mem::size_of::<rlimit>(), 16usize, "Size of rlimit");
3845 assert_eq!(::std::mem::align_of::<rlimit>(), 8usize, "Alignment of rlimit");
3846 assert_eq!(
3847 unsafe { ::std::ptr::addr_of!((*ptr).rlim_cur) as usize - ptr as usize },
3848 0usize,
3849 "Offset of field: rlimit::rlim_cur"
3850 );
3851 assert_eq!(
3852 unsafe { ::std::ptr::addr_of!((*ptr).rlim_max) as usize - ptr as usize },
3853 8usize,
3854 "Offset of field: rlimit::rlim_max"
3855 );
3856}
3857#[repr(C)]
3858#[derive(Debug, Copy, Clone)]
3859pub struct proc_rlimit_control_wakeupmon {
3860 pub wm_flags: u32,
3861 pub wm_rate: i32,
3862}
3863#[test]
3864fn bindgen_test_layout_proc_rlimit_control_wakeupmon() {
3865 const UNINIT: ::std::mem::MaybeUninit<proc_rlimit_control_wakeupmon> =
3866 ::std::mem::MaybeUninit::uninit();
3867 let ptr = UNINIT.as_ptr();
3868 assert_eq!(
3869 ::std::mem::size_of::<proc_rlimit_control_wakeupmon>(),
3870 8usize,
3871 "Size of proc_rlimit_control_wakeupmon"
3872 );
3873 assert_eq!(
3874 ::std::mem::align_of::<proc_rlimit_control_wakeupmon>(),
3875 4usize,
3876 "Alignment of proc_rlimit_control_wakeupmon"
3877 );
3878 assert_eq!(
3879 unsafe { ::std::ptr::addr_of!((*ptr).wm_flags) as usize - ptr as usize },
3880 0usize,
3881 "Offset of field: proc_rlimit_control_wakeupmon::wm_flags"
3882 );
3883 assert_eq!(
3884 unsafe { ::std::ptr::addr_of!((*ptr).wm_rate) as usize - ptr as usize },
3885 4usize,
3886 "Offset of field: proc_rlimit_control_wakeupmon::wm_rate"
3887 );
3888}
3889extern "C" {
3890 pub fn getpriority(arg1: ::std::os::raw::c_int, arg2: id_t) -> ::std::os::raw::c_int;
3891}
3892extern "C" {
3893 pub fn getiopolicy_np(
3894 arg1: ::std::os::raw::c_int,
3895 arg2: ::std::os::raw::c_int,
3896 ) -> ::std::os::raw::c_int;
3897}
3898extern "C" {
3899 pub fn getrlimit(arg1: ::std::os::raw::c_int, arg2: *mut rlimit) -> ::std::os::raw::c_int;
3900}
3901extern "C" {
3902 pub fn getrusage(arg1: ::std::os::raw::c_int, arg2: *mut rusage) -> ::std::os::raw::c_int;
3903}
3904extern "C" {
3905 pub fn setpriority(
3906 arg1: ::std::os::raw::c_int,
3907 arg2: id_t,
3908 arg3: ::std::os::raw::c_int,
3909 ) -> ::std::os::raw::c_int;
3910}
3911extern "C" {
3912 pub fn setiopolicy_np(
3913 arg1: ::std::os::raw::c_int,
3914 arg2: ::std::os::raw::c_int,
3915 arg3: ::std::os::raw::c_int,
3916 ) -> ::std::os::raw::c_int;
3917}
3918extern "C" {
3919 pub fn setrlimit(arg1: ::std::os::raw::c_int, arg2: *const rlimit) -> ::std::os::raw::c_int;
3920}
3921#[repr(C)]
3922#[derive(Copy, Clone)]
3923pub union wait {
3924 pub w_status: ::std::os::raw::c_int,
3925 pub w_T: wait__bindgen_ty_1,
3926 pub w_S: wait__bindgen_ty_2,
3927}
3928#[repr(C)]
3929#[repr(align(4))]
3930#[derive(Debug, Copy, Clone)]
3931pub struct wait__bindgen_ty_1 {
3932 pub _bitfield_align_1: [u16; 0],
3933 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
3934}
3935#[test]
3936fn bindgen_test_layout_wait__bindgen_ty_1() {
3937 assert_eq!(::std::mem::size_of::<wait__bindgen_ty_1>(), 4usize, "Size of wait__bindgen_ty_1");
3938 assert_eq!(
3939 ::std::mem::align_of::<wait__bindgen_ty_1>(),
3940 4usize,
3941 "Alignment of wait__bindgen_ty_1"
3942 );
3943}
3944impl wait__bindgen_ty_1 {
3945 #[inline]
3946 pub fn w_Termsig(&self) -> ::std::os::raw::c_uint {
3947 unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 7u8) as u32) }
3948 }
3949 #[inline]
3950 pub fn set_w_Termsig(&mut self, val: ::std::os::raw::c_uint) {
3951 unsafe {
3952 let val: u32 = ::std::mem::transmute(val);
3953 self._bitfield_1.set(0usize, 7u8, val as u64)
3954 }
3955 }
3956 #[inline]
3957 pub unsafe fn w_Termsig_raw(this: *const Self) -> ::std::os::raw::c_uint {
3958 unsafe {
3959 ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
3960 ::std::ptr::addr_of!((*this)._bitfield_1),
3961 0usize,
3962 7u8,
3963 ) as u32)
3964 }
3965 }
3966 #[inline]
3967 pub unsafe fn set_w_Termsig_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
3968 unsafe {
3969 let val: u32 = ::std::mem::transmute(val);
3970 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
3971 ::std::ptr::addr_of_mut!((*this)._bitfield_1),
3972 0usize,
3973 7u8,
3974 val as u64,
3975 )
3976 }
3977 }
3978 #[inline]
3979 pub fn w_Coredump(&self) -> ::std::os::raw::c_uint {
3980 unsafe { ::std::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
3981 }
3982 #[inline]
3983 pub fn set_w_Coredump(&mut self, val: ::std::os::raw::c_uint) {
3984 unsafe {
3985 let val: u32 = ::std::mem::transmute(val);
3986 self._bitfield_1.set(7usize, 1u8, val as u64)
3987 }
3988 }
3989 #[inline]
3990 pub unsafe fn w_Coredump_raw(this: *const Self) -> ::std::os::raw::c_uint {
3991 unsafe {
3992 ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
3993 ::std::ptr::addr_of!((*this)._bitfield_1),
3994 7usize,
3995 1u8,
3996 ) as u32)
3997 }
3998 }
3999 #[inline]
4000 pub unsafe fn set_w_Coredump_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
4001 unsafe {
4002 let val: u32 = ::std::mem::transmute(val);
4003 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
4004 ::std::ptr::addr_of_mut!((*this)._bitfield_1),
4005 7usize,
4006 1u8,
4007 val as u64,
4008 )
4009 }
4010 }
4011 #[inline]
4012 pub fn w_Retcode(&self) -> ::std::os::raw::c_uint {
4013 unsafe { ::std::mem::transmute(self._bitfield_1.get(8usize, 8u8) as u32) }
4014 }
4015 #[inline]
4016 pub fn set_w_Retcode(&mut self, val: ::std::os::raw::c_uint) {
4017 unsafe {
4018 let val: u32 = ::std::mem::transmute(val);
4019 self._bitfield_1.set(8usize, 8u8, val as u64)
4020 }
4021 }
4022 #[inline]
4023 pub unsafe fn w_Retcode_raw(this: *const Self) -> ::std::os::raw::c_uint {
4024 unsafe {
4025 ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
4026 ::std::ptr::addr_of!((*this)._bitfield_1),
4027 8usize,
4028 8u8,
4029 ) as u32)
4030 }
4031 }
4032 #[inline]
4033 pub unsafe fn set_w_Retcode_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
4034 unsafe {
4035 let val: u32 = ::std::mem::transmute(val);
4036 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
4037 ::std::ptr::addr_of_mut!((*this)._bitfield_1),
4038 8usize,
4039 8u8,
4040 val as u64,
4041 )
4042 }
4043 }
4044 #[inline]
4045 pub fn w_Filler(&self) -> ::std::os::raw::c_uint {
4046 unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) }
4047 }
4048 #[inline]
4049 pub fn set_w_Filler(&mut self, val: ::std::os::raw::c_uint) {
4050 unsafe {
4051 let val: u32 = ::std::mem::transmute(val);
4052 self._bitfield_1.set(16usize, 16u8, val as u64)
4053 }
4054 }
4055 #[inline]
4056 pub unsafe fn w_Filler_raw(this: *const Self) -> ::std::os::raw::c_uint {
4057 unsafe {
4058 ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
4059 ::std::ptr::addr_of!((*this)._bitfield_1),
4060 16usize,
4061 16u8,
4062 ) as u32)
4063 }
4064 }
4065 #[inline]
4066 pub unsafe fn set_w_Filler_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
4067 unsafe {
4068 let val: u32 = ::std::mem::transmute(val);
4069 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
4070 ::std::ptr::addr_of_mut!((*this)._bitfield_1),
4071 16usize,
4072 16u8,
4073 val as u64,
4074 )
4075 }
4076 }
4077 #[inline]
4078 pub fn new_bitfield_1(
4079 w_Termsig: ::std::os::raw::c_uint,
4080 w_Coredump: ::std::os::raw::c_uint,
4081 w_Retcode: ::std::os::raw::c_uint,
4082 w_Filler: ::std::os::raw::c_uint,
4083 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
4084 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
4085 __bindgen_bitfield_unit.set(0usize, 7u8, {
4086 let w_Termsig: u32 = unsafe { ::std::mem::transmute(w_Termsig) };
4087 w_Termsig as u64
4088 });
4089 __bindgen_bitfield_unit.set(7usize, 1u8, {
4090 let w_Coredump: u32 = unsafe { ::std::mem::transmute(w_Coredump) };
4091 w_Coredump as u64
4092 });
4093 __bindgen_bitfield_unit.set(8usize, 8u8, {
4094 let w_Retcode: u32 = unsafe { ::std::mem::transmute(w_Retcode) };
4095 w_Retcode as u64
4096 });
4097 __bindgen_bitfield_unit.set(16usize, 16u8, {
4098 let w_Filler: u32 = unsafe { ::std::mem::transmute(w_Filler) };
4099 w_Filler as u64
4100 });
4101 __bindgen_bitfield_unit
4102 }
4103}
4104#[repr(C)]
4105#[repr(align(4))]
4106#[derive(Debug, Copy, Clone)]
4107pub struct wait__bindgen_ty_2 {
4108 pub _bitfield_align_1: [u16; 0],
4109 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
4110}
4111#[test]
4112fn bindgen_test_layout_wait__bindgen_ty_2() {
4113 assert_eq!(::std::mem::size_of::<wait__bindgen_ty_2>(), 4usize, "Size of wait__bindgen_ty_2");
4114 assert_eq!(
4115 ::std::mem::align_of::<wait__bindgen_ty_2>(),
4116 4usize,
4117 "Alignment of wait__bindgen_ty_2"
4118 );
4119}
4120impl wait__bindgen_ty_2 {
4121 #[inline]
4122 pub fn w_Stopval(&self) -> ::std::os::raw::c_uint {
4123 unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 8u8) as u32) }
4124 }
4125 #[inline]
4126 pub fn set_w_Stopval(&mut self, val: ::std::os::raw::c_uint) {
4127 unsafe {
4128 let val: u32 = ::std::mem::transmute(val);
4129 self._bitfield_1.set(0usize, 8u8, val as u64)
4130 }
4131 }
4132 #[inline]
4133 pub unsafe fn w_Stopval_raw(this: *const Self) -> ::std::os::raw::c_uint {
4134 unsafe {
4135 ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
4136 ::std::ptr::addr_of!((*this)._bitfield_1),
4137 0usize,
4138 8u8,
4139 ) as u32)
4140 }
4141 }
4142 #[inline]
4143 pub unsafe fn set_w_Stopval_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
4144 unsafe {
4145 let val: u32 = ::std::mem::transmute(val);
4146 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
4147 ::std::ptr::addr_of_mut!((*this)._bitfield_1),
4148 0usize,
4149 8u8,
4150 val as u64,
4151 )
4152 }
4153 }
4154 #[inline]
4155 pub fn w_Stopsig(&self) -> ::std::os::raw::c_uint {
4156 unsafe { ::std::mem::transmute(self._bitfield_1.get(8usize, 8u8) as u32) }
4157 }
4158 #[inline]
4159 pub fn set_w_Stopsig(&mut self, val: ::std::os::raw::c_uint) {
4160 unsafe {
4161 let val: u32 = ::std::mem::transmute(val);
4162 self._bitfield_1.set(8usize, 8u8, val as u64)
4163 }
4164 }
4165 #[inline]
4166 pub unsafe fn w_Stopsig_raw(this: *const Self) -> ::std::os::raw::c_uint {
4167 unsafe {
4168 ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
4169 ::std::ptr::addr_of!((*this)._bitfield_1),
4170 8usize,
4171 8u8,
4172 ) as u32)
4173 }
4174 }
4175 #[inline]
4176 pub unsafe fn set_w_Stopsig_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
4177 unsafe {
4178 let val: u32 = ::std::mem::transmute(val);
4179 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
4180 ::std::ptr::addr_of_mut!((*this)._bitfield_1),
4181 8usize,
4182 8u8,
4183 val as u64,
4184 )
4185 }
4186 }
4187 #[inline]
4188 pub fn w_Filler(&self) -> ::std::os::raw::c_uint {
4189 unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) }
4190 }
4191 #[inline]
4192 pub fn set_w_Filler(&mut self, val: ::std::os::raw::c_uint) {
4193 unsafe {
4194 let val: u32 = ::std::mem::transmute(val);
4195 self._bitfield_1.set(16usize, 16u8, val as u64)
4196 }
4197 }
4198 #[inline]
4199 pub unsafe fn w_Filler_raw(this: *const Self) -> ::std::os::raw::c_uint {
4200 unsafe {
4201 ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
4202 ::std::ptr::addr_of!((*this)._bitfield_1),
4203 16usize,
4204 16u8,
4205 ) as u32)
4206 }
4207 }
4208 #[inline]
4209 pub unsafe fn set_w_Filler_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
4210 unsafe {
4211 let val: u32 = ::std::mem::transmute(val);
4212 <__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
4213 ::std::ptr::addr_of_mut!((*this)._bitfield_1),
4214 16usize,
4215 16u8,
4216 val as u64,
4217 )
4218 }
4219 }
4220 #[inline]
4221 pub fn new_bitfield_1(
4222 w_Stopval: ::std::os::raw::c_uint,
4223 w_Stopsig: ::std::os::raw::c_uint,
4224 w_Filler: ::std::os::raw::c_uint,
4225 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
4226 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
4227 __bindgen_bitfield_unit.set(0usize, 8u8, {
4228 let w_Stopval: u32 = unsafe { ::std::mem::transmute(w_Stopval) };
4229 w_Stopval as u64
4230 });
4231 __bindgen_bitfield_unit.set(8usize, 8u8, {
4232 let w_Stopsig: u32 = unsafe { ::std::mem::transmute(w_Stopsig) };
4233 w_Stopsig as u64
4234 });
4235 __bindgen_bitfield_unit.set(16usize, 16u8, {
4236 let w_Filler: u32 = unsafe { ::std::mem::transmute(w_Filler) };
4237 w_Filler as u64
4238 });
4239 __bindgen_bitfield_unit
4240 }
4241}
4242#[test]
4243fn bindgen_test_layout_wait() {
4244 const UNINIT: ::std::mem::MaybeUninit<wait> = ::std::mem::MaybeUninit::uninit();
4245 let ptr = UNINIT.as_ptr();
4246 assert_eq!(::std::mem::size_of::<wait>(), 4usize, "Size of wait");
4247 assert_eq!(::std::mem::align_of::<wait>(), 4usize, "Alignment of wait");
4248 assert_eq!(
4249 unsafe { ::std::ptr::addr_of!((*ptr).w_status) as usize - ptr as usize },
4250 0usize,
4251 "Offset of field: wait::w_status"
4252 );
4253 assert_eq!(
4254 unsafe { ::std::ptr::addr_of!((*ptr).w_T) as usize - ptr as usize },
4255 0usize,
4256 "Offset of field: wait::w_T"
4257 );
4258 assert_eq!(
4259 unsafe { ::std::ptr::addr_of!((*ptr).w_S) as usize - ptr as usize },
4260 0usize,
4261 "Offset of field: wait::w_S"
4262 );
4263}
4264extern "C" {
4265 pub fn wait(arg1: *mut ::std::os::raw::c_int) -> pid_t;
4266}
4267extern "C" {
4268 pub fn waitpid(
4269 arg1: pid_t,
4270 arg2: *mut ::std::os::raw::c_int,
4271 arg3: ::std::os::raw::c_int,
4272 ) -> pid_t;
4273}
4274extern "C" {
4275 pub fn waitid(
4276 arg1: idtype_t,
4277 arg2: id_t,
4278 arg3: *mut siginfo_t,
4279 arg4: ::std::os::raw::c_int,
4280 ) -> ::std::os::raw::c_int;
4281}
4282extern "C" {
4283 pub fn wait3(
4284 arg1: *mut ::std::os::raw::c_int,
4285 arg2: ::std::os::raw::c_int,
4286 arg3: *mut rusage,
4287 ) -> pid_t;
4288}
4289extern "C" {
4290 pub fn wait4(
4291 arg1: pid_t,
4292 arg2: *mut ::std::os::raw::c_int,
4293 arg3: ::std::os::raw::c_int,
4294 arg4: *mut rusage,
4295 ) -> pid_t;
4296}
4297extern "C" {
4298 pub fn alloca(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void;
4299}
4300pub type ct_rune_t = __darwin_ct_rune_t;
4301pub type rune_t = __darwin_rune_t;
4302pub type wchar_t = __darwin_wchar_t;
4303#[repr(C)]
4304#[derive(Debug, Copy, Clone)]
4305pub struct div_t {
4306 pub quot: ::std::os::raw::c_int,
4307 pub rem: ::std::os::raw::c_int,
4308}
4309#[test]
4310fn bindgen_test_layout_div_t() {
4311 const UNINIT: ::std::mem::MaybeUninit<div_t> = ::std::mem::MaybeUninit::uninit();
4312 let ptr = UNINIT.as_ptr();
4313 assert_eq!(::std::mem::size_of::<div_t>(), 8usize, "Size of div_t");
4314 assert_eq!(::std::mem::align_of::<div_t>(), 4usize, "Alignment of div_t");
4315 assert_eq!(
4316 unsafe { ::std::ptr::addr_of!((*ptr).quot) as usize - ptr as usize },
4317 0usize,
4318 "Offset of field: div_t::quot"
4319 );
4320 assert_eq!(
4321 unsafe { ::std::ptr::addr_of!((*ptr).rem) as usize - ptr as usize },
4322 4usize,
4323 "Offset of field: div_t::rem"
4324 );
4325}
4326#[repr(C)]
4327#[derive(Debug, Copy, Clone)]
4328pub struct ldiv_t {
4329 pub quot: ::std::os::raw::c_long,
4330 pub rem: ::std::os::raw::c_long,
4331}
4332#[test]
4333fn bindgen_test_layout_ldiv_t() {
4334 const UNINIT: ::std::mem::MaybeUninit<ldiv_t> = ::std::mem::MaybeUninit::uninit();
4335 let ptr = UNINIT.as_ptr();
4336 assert_eq!(::std::mem::size_of::<ldiv_t>(), 16usize, "Size of ldiv_t");
4337 assert_eq!(::std::mem::align_of::<ldiv_t>(), 8usize, "Alignment of ldiv_t");
4338 assert_eq!(
4339 unsafe { ::std::ptr::addr_of!((*ptr).quot) as usize - ptr as usize },
4340 0usize,
4341 "Offset of field: ldiv_t::quot"
4342 );
4343 assert_eq!(
4344 unsafe { ::std::ptr::addr_of!((*ptr).rem) as usize - ptr as usize },
4345 8usize,
4346 "Offset of field: ldiv_t::rem"
4347 );
4348}
4349#[repr(C)]
4350#[derive(Debug, Copy, Clone)]
4351pub struct lldiv_t {
4352 pub quot: ::std::os::raw::c_longlong,
4353 pub rem: ::std::os::raw::c_longlong,
4354}
4355#[test]
4356fn bindgen_test_layout_lldiv_t() {
4357 const UNINIT: ::std::mem::MaybeUninit<lldiv_t> = ::std::mem::MaybeUninit::uninit();
4358 let ptr = UNINIT.as_ptr();
4359 assert_eq!(::std::mem::size_of::<lldiv_t>(), 16usize, "Size of lldiv_t");
4360 assert_eq!(::std::mem::align_of::<lldiv_t>(), 8usize, "Alignment of lldiv_t");
4361 assert_eq!(
4362 unsafe { ::std::ptr::addr_of!((*ptr).quot) as usize - ptr as usize },
4363 0usize,
4364 "Offset of field: lldiv_t::quot"
4365 );
4366 assert_eq!(
4367 unsafe { ::std::ptr::addr_of!((*ptr).rem) as usize - ptr as usize },
4368 8usize,
4369 "Offset of field: lldiv_t::rem"
4370 );
4371}
4372extern "C" {
4373 pub static mut __mb_cur_max: ::std::os::raw::c_int;
4374}
4375pub type malloc_type_id_t = ::std::os::raw::c_ulonglong;
4376extern "C" {
4377 pub fn malloc_type_malloc(
4378 size: usize,
4379 type_id: malloc_type_id_t,
4380 ) -> *mut ::std::os::raw::c_void;
4381}
4382extern "C" {
4383 pub fn malloc_type_calloc(
4384 count: usize,
4385 size: usize,
4386 type_id: malloc_type_id_t,
4387 ) -> *mut ::std::os::raw::c_void;
4388}
4389extern "C" {
4390 pub fn malloc_type_free(ptr: *mut ::std::os::raw::c_void, type_id: malloc_type_id_t);
4391}
4392extern "C" {
4393 pub fn malloc_type_realloc(
4394 ptr: *mut ::std::os::raw::c_void,
4395 size: usize,
4396 type_id: malloc_type_id_t,
4397 ) -> *mut ::std::os::raw::c_void;
4398}
4399extern "C" {
4400 pub fn malloc_type_valloc(
4401 size: usize,
4402 type_id: malloc_type_id_t,
4403 ) -> *mut ::std::os::raw::c_void;
4404}
4405extern "C" {
4406 pub fn malloc_type_aligned_alloc(
4407 alignment: usize,
4408 size: usize,
4409 type_id: malloc_type_id_t,
4410 ) -> *mut ::std::os::raw::c_void;
4411}
4412extern "C" {
4413 pub fn malloc_type_posix_memalign(
4414 memptr: *mut *mut ::std::os::raw::c_void,
4415 alignment: usize,
4416 size: usize,
4417 type_id: malloc_type_id_t,
4418 ) -> ::std::os::raw::c_int;
4419}
4420#[repr(C)]
4421#[derive(Debug, Copy, Clone)]
4422pub struct _malloc_zone_t {
4423 _unused: [u8; 0],
4424}
4425pub type malloc_zone_t = _malloc_zone_t;
4426extern "C" {
4427 pub fn malloc_type_zone_malloc(
4428 zone: *mut malloc_zone_t,
4429 size: usize,
4430 type_id: malloc_type_id_t,
4431 ) -> *mut ::std::os::raw::c_void;
4432}
4433extern "C" {
4434 pub fn malloc_type_zone_calloc(
4435 zone: *mut malloc_zone_t,
4436 count: usize,
4437 size: usize,
4438 type_id: malloc_type_id_t,
4439 ) -> *mut ::std::os::raw::c_void;
4440}
4441extern "C" {
4442 pub fn malloc_type_zone_free(
4443 zone: *mut malloc_zone_t,
4444 ptr: *mut ::std::os::raw::c_void,
4445 type_id: malloc_type_id_t,
4446 );
4447}
4448extern "C" {
4449 pub fn malloc_type_zone_realloc(
4450 zone: *mut malloc_zone_t,
4451 ptr: *mut ::std::os::raw::c_void,
4452 size: usize,
4453 type_id: malloc_type_id_t,
4454 ) -> *mut ::std::os::raw::c_void;
4455}
4456extern "C" {
4457 pub fn malloc_type_zone_valloc(
4458 zone: *mut malloc_zone_t,
4459 size: usize,
4460 type_id: malloc_type_id_t,
4461 ) -> *mut ::std::os::raw::c_void;
4462}
4463extern "C" {
4464 pub fn malloc_type_zone_memalign(
4465 zone: *mut malloc_zone_t,
4466 alignment: usize,
4467 size: usize,
4468 type_id: malloc_type_id_t,
4469 ) -> *mut ::std::os::raw::c_void;
4470}
4471extern "C" {
4472 pub fn malloc(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void;
4473}
4474extern "C" {
4475 pub fn calloc(
4476 __count: ::std::os::raw::c_ulong,
4477 __size: ::std::os::raw::c_ulong,
4478 ) -> *mut ::std::os::raw::c_void;
4479}
4480extern "C" {
4481 pub fn free(arg1: *mut ::std::os::raw::c_void);
4482}
4483extern "C" {
4484 pub fn realloc(
4485 __ptr: *mut ::std::os::raw::c_void,
4486 __size: ::std::os::raw::c_ulong,
4487 ) -> *mut ::std::os::raw::c_void;
4488}
4489extern "C" {
4490 pub fn reallocf(
4491 __ptr: *mut ::std::os::raw::c_void,
4492 __size: usize,
4493 ) -> *mut ::std::os::raw::c_void;
4494}
4495extern "C" {
4496 pub fn valloc(__size: usize) -> *mut ::std::os::raw::c_void;
4497}
4498extern "C" {
4499 pub fn aligned_alloc(
4500 __alignment: ::std::os::raw::c_ulong,
4501 __size: ::std::os::raw::c_ulong,
4502 ) -> *mut ::std::os::raw::c_void;
4503}
4504extern "C" {
4505 pub fn posix_memalign(
4506 __memptr: *mut *mut ::std::os::raw::c_void,
4507 __alignment: usize,
4508 __size: usize,
4509 ) -> ::std::os::raw::c_int;
4510}
4511extern "C" {
4512 pub fn abort() -> !;
4513}
4514extern "C" {
4515 pub fn abs(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
4516}
4517extern "C" {
4518 pub fn atexit(arg1: ::std::option::Option<unsafe extern "C" fn()>) -> ::std::os::raw::c_int;
4519}
4520extern "C" {
4521 pub fn at_quick_exit(
4522 arg1: ::std::option::Option<unsafe extern "C" fn()>,
4523 ) -> ::std::os::raw::c_int;
4524}
4525extern "C" {
4526 pub fn atof(arg1: *const ::std::os::raw::c_char) -> f64;
4527}
4528extern "C" {
4529 pub fn atoi(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
4530}
4531extern "C" {
4532 pub fn atol(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
4533}
4534extern "C" {
4535 pub fn atoll(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_longlong;
4536}
4537extern "C" {
4538 pub fn bsearch(
4539 __key: *const ::std::os::raw::c_void,
4540 __base: *const ::std::os::raw::c_void,
4541 __nel: usize,
4542 __width: usize,
4543 __compar: ::std::option::Option<
4544 unsafe extern "C" fn(
4545 arg1: *const ::std::os::raw::c_void,
4546 arg2: *const ::std::os::raw::c_void,
4547 ) -> ::std::os::raw::c_int,
4548 >,
4549 ) -> *mut ::std::os::raw::c_void;
4550}
4551extern "C" {
4552 pub fn div(arg1: ::std::os::raw::c_int, arg2: ::std::os::raw::c_int) -> div_t;
4553}
4554extern "C" {
4555 pub fn exit(arg1: ::std::os::raw::c_int) -> !;
4556}
4557extern "C" {
4558 pub fn getenv(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
4559}
4560extern "C" {
4561 pub fn labs(arg1: ::std::os::raw::c_long) -> ::std::os::raw::c_long;
4562}
4563extern "C" {
4564 pub fn ldiv(arg1: ::std::os::raw::c_long, arg2: ::std::os::raw::c_long) -> ldiv_t;
4565}
4566extern "C" {
4567 pub fn llabs(arg1: ::std::os::raw::c_longlong) -> ::std::os::raw::c_longlong;
4568}
4569extern "C" {
4570 pub fn lldiv(arg1: ::std::os::raw::c_longlong, arg2: ::std::os::raw::c_longlong) -> lldiv_t;
4571}
4572extern "C" {
4573 pub fn mblen(__s: *const ::std::os::raw::c_char, __n: usize) -> ::std::os::raw::c_int;
4574}
4575extern "C" {
4576 pub fn mbstowcs(arg1: *mut wchar_t, arg2: *const ::std::os::raw::c_char, __n: usize) -> usize;
4577}
4578extern "C" {
4579 pub fn mbtowc(
4580 arg1: *mut wchar_t,
4581 arg2: *const ::std::os::raw::c_char,
4582 __n: usize,
4583 ) -> ::std::os::raw::c_int;
4584}
4585extern "C" {
4586 pub fn qsort(
4587 __base: *mut ::std::os::raw::c_void,
4588 __nel: usize,
4589 __width: usize,
4590 __compar: ::std::option::Option<
4591 unsafe extern "C" fn(
4592 arg1: *const ::std::os::raw::c_void,
4593 arg2: *const ::std::os::raw::c_void,
4594 ) -> ::std::os::raw::c_int,
4595 >,
4596 );
4597}
4598extern "C" {
4599 pub fn quick_exit(arg1: ::std::os::raw::c_int) -> !;
4600}
4601extern "C" {
4602 pub fn rand() -> ::std::os::raw::c_int;
4603}
4604extern "C" {
4605 pub fn srand(arg1: ::std::os::raw::c_uint);
4606}
4607extern "C" {
4608 pub fn strtod(
4609 arg1: *const ::std::os::raw::c_char,
4610 arg2: *mut *mut ::std::os::raw::c_char,
4611 ) -> f64;
4612}
4613extern "C" {
4614 pub fn strtof(
4615 arg1: *const ::std::os::raw::c_char,
4616 arg2: *mut *mut ::std::os::raw::c_char,
4617 ) -> f32;
4618}
4619extern "C" {
4620 pub fn strtol(
4621 __str: *const ::std::os::raw::c_char,
4622 __endptr: *mut *mut ::std::os::raw::c_char,
4623 __base: ::std::os::raw::c_int,
4624 ) -> ::std::os::raw::c_long;
4625}
4626extern "C" {
4627 pub fn strtold(
4628 arg1: *const ::std::os::raw::c_char,
4629 arg2: *mut *mut ::std::os::raw::c_char,
4630 ) -> f64;
4631}
4632extern "C" {
4633 pub fn strtoll(
4634 __str: *const ::std::os::raw::c_char,
4635 __endptr: *mut *mut ::std::os::raw::c_char,
4636 __base: ::std::os::raw::c_int,
4637 ) -> ::std::os::raw::c_longlong;
4638}
4639extern "C" {
4640 pub fn strtoul(
4641 __str: *const ::std::os::raw::c_char,
4642 __endptr: *mut *mut ::std::os::raw::c_char,
4643 __base: ::std::os::raw::c_int,
4644 ) -> ::std::os::raw::c_ulong;
4645}
4646extern "C" {
4647 pub fn strtoull(
4648 __str: *const ::std::os::raw::c_char,
4649 __endptr: *mut *mut ::std::os::raw::c_char,
4650 __base: ::std::os::raw::c_int,
4651 ) -> ::std::os::raw::c_ulonglong;
4652}
4653extern "C" {
4654 pub fn system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
4655}
4656extern "C" {
4657 pub fn wcstombs(arg1: *mut ::std::os::raw::c_char, arg2: *const wchar_t, __n: usize) -> usize;
4658}
4659extern "C" {
4660 pub fn wctomb(arg1: *mut ::std::os::raw::c_char, arg2: wchar_t) -> ::std::os::raw::c_int;
4661}
4662extern "C" {
4663 pub fn _Exit(arg1: ::std::os::raw::c_int) -> !;
4664}
4665extern "C" {
4666 pub fn a64l(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
4667}
4668extern "C" {
4669 pub fn drand48() -> f64;
4670}
4671extern "C" {
4672 pub fn ecvt(
4673 arg1: f64,
4674 arg2: ::std::os::raw::c_int,
4675 arg3: *mut ::std::os::raw::c_int,
4676 arg4: *mut ::std::os::raw::c_int,
4677 ) -> *mut ::std::os::raw::c_char;
4678}
4679extern "C" {
4680 pub fn erand48(arg1: *mut ::std::os::raw::c_ushort) -> f64;
4681}
4682extern "C" {
4683 pub fn fcvt(
4684 arg1: f64,
4685 arg2: ::std::os::raw::c_int,
4686 arg3: *mut ::std::os::raw::c_int,
4687 arg4: *mut ::std::os::raw::c_int,
4688 ) -> *mut ::std::os::raw::c_char;
4689}
4690extern "C" {
4691 pub fn gcvt(
4692 arg1: f64,
4693 arg2: ::std::os::raw::c_int,
4694 arg3: *mut ::std::os::raw::c_char,
4695 ) -> *mut ::std::os::raw::c_char;
4696}
4697extern "C" {
4698 pub fn getsubopt(
4699 arg1: *mut *mut ::std::os::raw::c_char,
4700 arg2: *const *mut ::std::os::raw::c_char,
4701 arg3: *mut *mut ::std::os::raw::c_char,
4702 ) -> ::std::os::raw::c_int;
4703}
4704extern "C" {
4705 pub fn grantpt(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
4706}
4707extern "C" {
4708 pub fn initstate(
4709 arg1: ::std::os::raw::c_uint,
4710 arg2: *mut ::std::os::raw::c_char,
4711 __size: usize,
4712 ) -> *mut ::std::os::raw::c_char;
4713}
4714extern "C" {
4715 pub fn jrand48(arg1: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long;
4716}
4717extern "C" {
4718 pub fn l64a(arg1: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char;
4719}
4720extern "C" {
4721 pub fn lcong48(arg1: *mut ::std::os::raw::c_ushort);
4722}
4723extern "C" {
4724 pub fn lrand48() -> ::std::os::raw::c_long;
4725}
4726extern "C" {
4727 pub fn mktemp(arg1: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
4728}
4729extern "C" {
4730 pub fn mkstemp(arg1: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
4731}
4732extern "C" {
4733 pub fn mrand48() -> ::std::os::raw::c_long;
4734}
4735extern "C" {
4736 pub fn nrand48(arg1: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long;
4737}
4738extern "C" {
4739 pub fn posix_openpt(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
4740}
4741extern "C" {
4742 pub fn ptsname(arg1: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char;
4743}
4744extern "C" {
4745 pub fn ptsname_r(
4746 fildes: ::std::os::raw::c_int,
4747 buffer: *mut ::std::os::raw::c_char,
4748 buflen: usize,
4749 ) -> ::std::os::raw::c_int;
4750}
4751extern "C" {
4752 pub fn putenv(arg1: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
4753}
4754extern "C" {
4755 pub fn random() -> ::std::os::raw::c_long;
4756}
4757extern "C" {
4758 pub fn rand_r(arg1: *mut ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
4759}
4760extern "C" {
4761 #[link_name = "\u{1}_realpath$DARWIN_EXTSN"]
4762 pub fn realpath(
4763 arg1: *const ::std::os::raw::c_char,
4764 arg2: *mut ::std::os::raw::c_char,
4765 ) -> *mut ::std::os::raw::c_char;
4766}
4767extern "C" {
4768 pub fn seed48(arg1: *mut ::std::os::raw::c_ushort) -> *mut ::std::os::raw::c_ushort;
4769}
4770extern "C" {
4771 pub fn setenv(
4772 __name: *const ::std::os::raw::c_char,
4773 __value: *const ::std::os::raw::c_char,
4774 __overwrite: ::std::os::raw::c_int,
4775 ) -> ::std::os::raw::c_int;
4776}
4777extern "C" {
4778 pub fn setkey(arg1: *const ::std::os::raw::c_char);
4779}
4780extern "C" {
4781 pub fn setstate(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
4782}
4783extern "C" {
4784 pub fn srand48(arg1: ::std::os::raw::c_long);
4785}
4786extern "C" {
4787 pub fn srandom(arg1: ::std::os::raw::c_uint);
4788}
4789extern "C" {
4790 pub fn unlockpt(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
4791}
4792extern "C" {
4793 pub fn unsetenv(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
4794}
4795pub type dev_t = __darwin_dev_t;
4796pub type mode_t = __darwin_mode_t;
4797extern "C" {
4798 pub fn arc4random() -> u32;
4799}
4800extern "C" {
4801 pub fn arc4random_addrandom(
4802 arg1: *mut ::std::os::raw::c_uchar,
4803 __datlen: ::std::os::raw::c_int,
4804 );
4805}
4806extern "C" {
4807 pub fn arc4random_buf(__buf: *mut ::std::os::raw::c_void, __nbytes: usize);
4808}
4809extern "C" {
4810 pub fn arc4random_stir();
4811}
4812extern "C" {
4813 pub fn arc4random_uniform(__upper_bound: u32) -> u32;
4814}
4815extern "C" {
4816 pub fn atexit_b(arg1: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
4817}
4818extern "C" {
4819 pub fn bsearch_b(
4820 __key: *const ::std::os::raw::c_void,
4821 __base: *const ::std::os::raw::c_void,
4822 __nel: usize,
4823 __width: usize,
4824 __compar: *mut ::std::os::raw::c_void,
4825 ) -> *mut ::std::os::raw::c_void;
4826}
4827extern "C" {
4828 pub fn cgetcap(
4829 arg1: *mut ::std::os::raw::c_char,
4830 arg2: *const ::std::os::raw::c_char,
4831 arg3: ::std::os::raw::c_int,
4832 ) -> *mut ::std::os::raw::c_char;
4833}
4834extern "C" {
4835 pub fn cgetclose() -> ::std::os::raw::c_int;
4836}
4837extern "C" {
4838 pub fn cgetent(
4839 arg1: *mut *mut ::std::os::raw::c_char,
4840 arg2: *mut *mut ::std::os::raw::c_char,
4841 arg3: *const ::std::os::raw::c_char,
4842 ) -> ::std::os::raw::c_int;
4843}
4844extern "C" {
4845 pub fn cgetfirst(
4846 arg1: *mut *mut ::std::os::raw::c_char,
4847 arg2: *mut *mut ::std::os::raw::c_char,
4848 ) -> ::std::os::raw::c_int;
4849}
4850extern "C" {
4851 pub fn cgetmatch(
4852 arg1: *const ::std::os::raw::c_char,
4853 arg2: *const ::std::os::raw::c_char,
4854 ) -> ::std::os::raw::c_int;
4855}
4856extern "C" {
4857 pub fn cgetnext(
4858 arg1: *mut *mut ::std::os::raw::c_char,
4859 arg2: *mut *mut ::std::os::raw::c_char,
4860 ) -> ::std::os::raw::c_int;
4861}
4862extern "C" {
4863 pub fn cgetnum(
4864 arg1: *mut ::std::os::raw::c_char,
4865 arg2: *const ::std::os::raw::c_char,
4866 arg3: *mut ::std::os::raw::c_long,
4867 ) -> ::std::os::raw::c_int;
4868}
4869extern "C" {
4870 pub fn cgetset(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
4871}
4872extern "C" {
4873 pub fn cgetstr(
4874 arg1: *mut ::std::os::raw::c_char,
4875 arg2: *const ::std::os::raw::c_char,
4876 arg3: *mut *mut ::std::os::raw::c_char,
4877 ) -> ::std::os::raw::c_int;
4878}
4879extern "C" {
4880 pub fn cgetustr(
4881 arg1: *mut ::std::os::raw::c_char,
4882 arg2: *const ::std::os::raw::c_char,
4883 arg3: *mut *mut ::std::os::raw::c_char,
4884 ) -> ::std::os::raw::c_int;
4885}
4886extern "C" {
4887 pub fn daemon(
4888 arg1: ::std::os::raw::c_int,
4889 arg2: ::std::os::raw::c_int,
4890 ) -> ::std::os::raw::c_int;
4891}
4892extern "C" {
4893 pub fn devname(arg1: dev_t, arg2: mode_t) -> *mut ::std::os::raw::c_char;
4894}
4895extern "C" {
4896 pub fn devname_r(
4897 arg1: dev_t,
4898 arg2: mode_t,
4899 buf: *mut ::std::os::raw::c_char,
4900 len: ::std::os::raw::c_int,
4901 ) -> *mut ::std::os::raw::c_char;
4902}
4903extern "C" {
4904 pub fn getbsize(
4905 arg1: *mut ::std::os::raw::c_int,
4906 arg2: *mut ::std::os::raw::c_long,
4907 ) -> *mut ::std::os::raw::c_char;
4908}
4909extern "C" {
4910 pub fn getloadavg(arg1: *mut f64, __nelem: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
4911}
4912extern "C" {
4913 pub fn getprogname() -> *const ::std::os::raw::c_char;
4914}
4915extern "C" {
4916 pub fn setprogname(arg1: *const ::std::os::raw::c_char);
4917}
4918extern "C" {
4919 pub fn heapsort(
4920 __base: *mut ::std::os::raw::c_void,
4921 __nel: usize,
4922 __width: usize,
4923 __compar: ::std::option::Option<
4924 unsafe extern "C" fn(
4925 arg1: *const ::std::os::raw::c_void,
4926 arg2: *const ::std::os::raw::c_void,
4927 ) -> ::std::os::raw::c_int,
4928 >,
4929 ) -> ::std::os::raw::c_int;
4930}
4931extern "C" {
4932 pub fn heapsort_b(
4933 __base: *mut ::std::os::raw::c_void,
4934 __nel: usize,
4935 __width: usize,
4936 __compar: *mut ::std::os::raw::c_void,
4937 ) -> ::std::os::raw::c_int;
4938}
4939extern "C" {
4940 pub fn mergesort(
4941 __base: *mut ::std::os::raw::c_void,
4942 __nel: usize,
4943 __width: usize,
4944 __compar: ::std::option::Option<
4945 unsafe extern "C" fn(
4946 arg1: *const ::std::os::raw::c_void,
4947 arg2: *const ::std::os::raw::c_void,
4948 ) -> ::std::os::raw::c_int,
4949 >,
4950 ) -> ::std::os::raw::c_int;
4951}
4952extern "C" {
4953 pub fn mergesort_b(
4954 __base: *mut ::std::os::raw::c_void,
4955 __nel: usize,
4956 __width: usize,
4957 __compar: *mut ::std::os::raw::c_void,
4958 ) -> ::std::os::raw::c_int;
4959}
4960extern "C" {
4961 pub fn psort(
4962 __base: *mut ::std::os::raw::c_void,
4963 __nel: usize,
4964 __width: usize,
4965 __compar: ::std::option::Option<
4966 unsafe extern "C" fn(
4967 arg1: *const ::std::os::raw::c_void,
4968 arg2: *const ::std::os::raw::c_void,
4969 ) -> ::std::os::raw::c_int,
4970 >,
4971 );
4972}
4973extern "C" {
4974 pub fn psort_b(
4975 __base: *mut ::std::os::raw::c_void,
4976 __nel: usize,
4977 __width: usize,
4978 __compar: *mut ::std::os::raw::c_void,
4979 );
4980}
4981extern "C" {
4982 pub fn psort_r(
4983 __base: *mut ::std::os::raw::c_void,
4984 __nel: usize,
4985 __width: usize,
4986 arg1: *mut ::std::os::raw::c_void,
4987 __compar: ::std::option::Option<
4988 unsafe extern "C" fn(
4989 arg1: *mut ::std::os::raw::c_void,
4990 arg2: *const ::std::os::raw::c_void,
4991 arg3: *const ::std::os::raw::c_void,
4992 ) -> ::std::os::raw::c_int,
4993 >,
4994 );
4995}
4996extern "C" {
4997 pub fn qsort_b(
4998 __base: *mut ::std::os::raw::c_void,
4999 __nel: usize,
5000 __width: usize,
5001 __compar: *mut ::std::os::raw::c_void,
5002 );
5003}
5004extern "C" {
5005 pub fn qsort_r(
5006 __base: *mut ::std::os::raw::c_void,
5007 __nel: usize,
5008 __width: usize,
5009 arg1: *mut ::std::os::raw::c_void,
5010 __compar: ::std::option::Option<
5011 unsafe extern "C" fn(
5012 arg1: *mut ::std::os::raw::c_void,
5013 arg2: *const ::std::os::raw::c_void,
5014 arg3: *const ::std::os::raw::c_void,
5015 ) -> ::std::os::raw::c_int,
5016 >,
5017 );
5018}
5019extern "C" {
5020 pub fn radixsort(
5021 __base: *mut *const ::std::os::raw::c_uchar,
5022 __nel: ::std::os::raw::c_int,
5023 __table: *const ::std::os::raw::c_uchar,
5024 __endbyte: ::std::os::raw::c_uint,
5025 ) -> ::std::os::raw::c_int;
5026}
5027extern "C" {
5028 pub fn rpmatch(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
5029}
5030extern "C" {
5031 pub fn sradixsort(
5032 __base: *mut *const ::std::os::raw::c_uchar,
5033 __nel: ::std::os::raw::c_int,
5034 __table: *const ::std::os::raw::c_uchar,
5035 __endbyte: ::std::os::raw::c_uint,
5036 ) -> ::std::os::raw::c_int;
5037}
5038extern "C" {
5039 pub fn sranddev();
5040}
5041extern "C" {
5042 pub fn srandomdev();
5043}
5044extern "C" {
5045 pub fn strtonum(
5046 __numstr: *const ::std::os::raw::c_char,
5047 __minval: ::std::os::raw::c_longlong,
5048 __maxval: ::std::os::raw::c_longlong,
5049 __errstrp: *mut *const ::std::os::raw::c_char,
5050 ) -> ::std::os::raw::c_longlong;
5051}
5052extern "C" {
5053 pub fn strtoq(
5054 __str: *const ::std::os::raw::c_char,
5055 __endptr: *mut *mut ::std::os::raw::c_char,
5056 __base: ::std::os::raw::c_int,
5057 ) -> ::std::os::raw::c_longlong;
5058}
5059extern "C" {
5060 pub fn strtouq(
5061 __str: *const ::std::os::raw::c_char,
5062 __endptr: *mut *mut ::std::os::raw::c_char,
5063 __base: ::std::os::raw::c_int,
5064 ) -> ::std::os::raw::c_ulonglong;
5065}
5066extern "C" {
5067 pub static mut suboptarg: *mut ::std::os::raw::c_char;
5068}
5069pub const DatumType_TRACT_DATUM_TYPE_BOOL: DatumType = 1;
5070pub const DatumType_TRACT_DATUM_TYPE_U8: DatumType = 17;
5071pub const DatumType_TRACT_DATUM_TYPE_U16: DatumType = 18;
5072pub const DatumType_TRACT_DATUM_TYPE_U32: DatumType = 20;
5073pub const DatumType_TRACT_DATUM_TYPE_U64: DatumType = 24;
5074pub const DatumType_TRACT_DATUM_TYPE_I8: DatumType = 33;
5075pub const DatumType_TRACT_DATUM_TYPE_I16: DatumType = 34;
5076pub const DatumType_TRACT_DATUM_TYPE_I32: DatumType = 36;
5077pub const DatumType_TRACT_DATUM_TYPE_I64: DatumType = 40;
5078pub const DatumType_TRACT_DATUM_TYPE_F16: DatumType = 50;
5079pub const DatumType_TRACT_DATUM_TYPE_F32: DatumType = 52;
5080pub const DatumType_TRACT_DATUM_TYPE_F64: DatumType = 56;
5081pub const DatumType_TRACT_DATUM_TYPE_COMPLEX_I16: DatumType = 66;
5082pub const DatumType_TRACT_DATUM_TYPE_COMPLEX_I32: DatumType = 68;
5083pub const DatumType_TRACT_DATUM_TYPE_COMPLEX_I64: DatumType = 72;
5084pub const DatumType_TRACT_DATUM_TYPE_COMPLEX_F16: DatumType = 82;
5085pub const DatumType_TRACT_DATUM_TYPE_COMPLEX_F32: DatumType = 84;
5086pub const DatumType_TRACT_DATUM_TYPE_COMPLEX_F64: DatumType = 88;
5087pub type DatumType = ::std::os::raw::c_uint;
5088#[doc = " The function returned successfully"]
5089pub const TRACT_RESULT_TRACT_RESULT_OK: TRACT_RESULT = 0;
5090#[doc = " The function returned an error"]
5091pub const TRACT_RESULT_TRACT_RESULT_KO: TRACT_RESULT = 1;
5092#[doc = " Used as a return type of functions that can encounter errors.\n If the function encountered an error, you can retrieve it using the `tract_get_last_error`\n function"]
5093pub type TRACT_RESULT = ::std::os::raw::c_uint;
5094#[repr(C)]
5095#[derive(Debug, Copy, Clone)]
5096pub struct TractFact {
5097 _unused: [u8; 0],
5098}
5099#[repr(C)]
5100#[derive(Debug, Copy, Clone)]
5101pub struct TractInferenceFact {
5102 _unused: [u8; 0],
5103}
5104#[repr(C)]
5105#[derive(Debug, Copy, Clone)]
5106pub struct TractInferenceModel {
5107 _unused: [u8; 0],
5108}
5109#[repr(C)]
5110#[derive(Debug, Copy, Clone)]
5111pub struct TractModel {
5112 _unused: [u8; 0],
5113}
5114#[repr(C)]
5115#[derive(Debug, Copy, Clone)]
5116pub struct TractNnef {
5117 _unused: [u8; 0],
5118}
5119#[repr(C)]
5120#[derive(Debug, Copy, Clone)]
5121pub struct TractOnnx {
5122 _unused: [u8; 0],
5123}
5124#[repr(C)]
5125#[derive(Debug, Copy, Clone)]
5126pub struct TractRunnable {
5127 _unused: [u8; 0],
5128}
5129#[repr(C)]
5130#[derive(Debug, Copy, Clone)]
5131pub struct TractState {
5132 _unused: [u8; 0],
5133}
5134#[repr(C)]
5135#[derive(Debug, Copy, Clone)]
5136pub struct TractValue {
5137 _unused: [u8; 0],
5138}
5139extern "C" {
5140 #[doc = " Retrieve the last error that happened in this thread. A function encountered an error if\n its return type is of type `TRACT_RESULT` and it returned `TRACT_RESULT_KO`.\n\n # Return value\n It returns a pointer to a null-terminated UTF-8 string that will contain the error description.\n Rust side keeps ownership of the buffer. It will be valid as long as no other tract calls is\n performed by the thread.\n If no error occured, null is returned."]
5141 pub fn tract_get_last_error() -> *const ::std::os::raw::c_char;
5142}
5143extern "C" {
5144 #[doc = " Returns a pointer to a static buffer containing a null-terminated version string.\n\n The returned pointer must not be freed."]
5145 pub fn tract_version() -> *const ::std::os::raw::c_char;
5146}
5147extern "C" {
5148 #[doc = " Frees a string allocated by libtract."]
5149 pub fn tract_free_cstring(ptr: *mut ::std::os::raw::c_char);
5150}
5151extern "C" {
5152 #[doc = " Creates an instance of an NNEF framework and parser that can be used to load and dump NNEF models.\n\n The returned object should be destroyed with `tract_nnef_destroy` once the model\n has been loaded."]
5153 pub fn tract_nnef_create(nnef: *mut *mut TractNnef) -> TRACT_RESULT;
5154}
5155extern "C" {
5156 pub fn tract_nnef_transform_model(
5157 nnef: *const TractNnef,
5158 model: *mut TractModel,
5159 transform_spec: *const i8,
5160 ) -> TRACT_RESULT;
5161}
5162extern "C" {
5163 pub fn tract_nnef_enable_tract_core(nnef: *mut TractNnef) -> TRACT_RESULT;
5164}
5165extern "C" {
5166 pub fn tract_nnef_enable_tract_extra(nnef: *mut TractNnef) -> TRACT_RESULT;
5167}
5168extern "C" {
5169 pub fn tract_nnef_enable_tract_transformers(nnef: *mut TractNnef) -> TRACT_RESULT;
5170}
5171extern "C" {
5172 pub fn tract_nnef_enable_onnx(nnef: *mut TractNnef) -> TRACT_RESULT;
5173}
5174extern "C" {
5175 pub fn tract_nnef_enable_pulse(nnef: *mut TractNnef) -> TRACT_RESULT;
5176}
5177extern "C" {
5178 pub fn tract_nnef_enable_extended_identifier_syntax(nnef: *mut TractNnef) -> TRACT_RESULT;
5179}
5180extern "C" {
5181 #[doc = " Destroy the NNEF parser. It is safe to detroy the NNEF parser once the model had been loaded."]
5182 pub fn tract_nnef_destroy(nnef: *mut *mut TractNnef) -> TRACT_RESULT;
5183}
5184extern "C" {
5185 #[doc = " Parse and load an NNEF model as a tract TypedModel.\n\n `path` is a null-terminated utf-8 string pointer. It can be an archive (tar or tar.gz file) or a\n directory."]
5186 pub fn tract_nnef_model_for_path(
5187 nnef: *const TractNnef,
5188 path: *const ::std::os::raw::c_char,
5189 model: *mut *mut TractModel,
5190 ) -> TRACT_RESULT;
5191}
5192extern "C" {
5193 #[doc = " Dump a TypedModel as a NNEF tar file.\n\n `path` is a null-terminated utf-8 string pointer to the `.tar` file to be created.\n\n This function creates a plain, non-compressed, archive."]
5194 pub fn tract_nnef_write_model_to_tar(
5195 nnef: *const TractNnef,
5196 path: *const ::std::os::raw::c_char,
5197 model: *const TractModel,
5198 ) -> TRACT_RESULT;
5199}
5200extern "C" {
5201 #[doc = " Dump a TypedModel as a NNEF .tar.gz file.\n\n `path` is a null-terminated utf-8 string pointer to the `.tar.gz` file to be created."]
5202 pub fn tract_nnef_write_model_to_tar_gz(
5203 nnef: *const TractNnef,
5204 path: *const ::std::os::raw::c_char,
5205 model: *const TractModel,
5206 ) -> TRACT_RESULT;
5207}
5208extern "C" {
5209 #[doc = " Dump a TypedModel as a NNEF directory.\n\n `path` is a null-terminated utf-8 string pointer to the directory to be created.\n\n This function creates a plain, non-compressed, archive."]
5210 pub fn tract_nnef_write_model_to_dir(
5211 nnef: *const TractNnef,
5212 path: *const ::std::os::raw::c_char,
5213 model: *const TractModel,
5214 ) -> TRACT_RESULT;
5215}
5216extern "C" {
5217 #[doc = " Creates an instance of an ONNX framework and parser that can be used to load models.\n\n The returned object should be destroyed with `tract_nnef_destroy` once the model\n has been loaded."]
5218 pub fn tract_onnx_create(onnx: *mut *mut TractOnnx) -> TRACT_RESULT;
5219}
5220extern "C" {
5221 #[doc = " Destroy the NNEF parser. It is safe to detroy the NNEF parser once the model had been loaded."]
5222 pub fn tract_onnx_destroy(onnx: *mut *mut TractOnnx) -> TRACT_RESULT;
5223}
5224extern "C" {
5225 #[doc = " Parse and load an ONNX model as a tract InferenceModel.\n\n `path` is a null-terminated utf-8 string pointer. It must point to a `.onnx` model file."]
5226 pub fn tract_onnx_model_for_path(
5227 onnx: *const TractOnnx,
5228 path: *const ::std::os::raw::c_char,
5229 model: *mut *mut TractInferenceModel,
5230 ) -> TRACT_RESULT;
5231}
5232extern "C" {
5233 #[doc = " Query an InferenceModel input counts."]
5234 pub fn tract_inference_model_input_count(
5235 model: *const TractInferenceModel,
5236 inputs: *mut usize,
5237 ) -> TRACT_RESULT;
5238}
5239extern "C" {
5240 #[doc = " Query an InferenceModel output counts."]
5241 pub fn tract_inference_model_output_count(
5242 model: *const TractInferenceModel,
5243 outputs: *mut usize,
5244 ) -> TRACT_RESULT;
5245}
5246extern "C" {
5247 #[doc = " Query the name of a model input.\n\n The returned name must be freed by the caller using tract_free_cstring."]
5248 pub fn tract_inference_model_input_name(
5249 model: *const TractInferenceModel,
5250 input: usize,
5251 name: *mut *mut ::std::os::raw::c_char,
5252 ) -> TRACT_RESULT;
5253}
5254extern "C" {
5255 #[doc = " Query the name of a model output.\n\n The returned name must be freed by the caller using tract_free_cstring."]
5256 pub fn tract_inference_model_output_name(
5257 model: *const TractInferenceModel,
5258 output: usize,
5259 name: *mut *mut i8,
5260 ) -> TRACT_RESULT;
5261}
5262extern "C" {
5263 pub fn tract_inference_model_input_fact(
5264 model: *const TractInferenceModel,
5265 input_id: usize,
5266 fact: *mut *mut TractInferenceFact,
5267 ) -> TRACT_RESULT;
5268}
5269extern "C" {
5270 #[doc = " Set an input fact of an InferenceModel.\n\n The `fact` argument is only borrowed by this function, it still must be destroyed.\n `fact` can be set to NULL to erase the current output fact of the model."]
5271 pub fn tract_inference_model_set_input_fact(
5272 model: *mut TractInferenceModel,
5273 input_id: usize,
5274 fact: *const TractInferenceFact,
5275 ) -> TRACT_RESULT;
5276}
5277extern "C" {
5278 #[doc = " Change the model outputs nodes (by name).\n\n `names` is an array containing `len` pointers to null terminated strings."]
5279 pub fn tract_inference_model_set_output_names(
5280 model: *mut TractInferenceModel,
5281 len: usize,
5282 names: *const *const ::std::os::raw::c_char,
5283 ) -> TRACT_RESULT;
5284}
5285extern "C" {
5286 #[doc = " Query an output fact for an InferenceModel.\n\n The return model must be freed using `tract_inference_fact_destroy`."]
5287 pub fn tract_inference_model_output_fact(
5288 model: *const TractInferenceModel,
5289 output_id: usize,
5290 fact: *mut *mut TractInferenceFact,
5291 ) -> TRACT_RESULT;
5292}
5293extern "C" {
5294 #[doc = " Set an output fact of an InferenceModel.\n\n The `fact` argument is only borrowed by this function, it still must be destroyed.\n `fact` can be set to NULL to erase the current output fact of the model."]
5295 pub fn tract_inference_model_set_output_fact(
5296 model: *mut TractInferenceModel,
5297 output_id: usize,
5298 fact: *const TractInferenceFact,
5299 ) -> TRACT_RESULT;
5300}
5301extern "C" {
5302 #[doc = " Analyse an InferencedModel in-place."]
5303 pub fn tract_inference_model_analyse(model: *mut TractInferenceModel) -> TRACT_RESULT;
5304}
5305extern "C" {
5306 #[doc = " Convenience function to obtain an optimized TypedModel from an InferenceModel.\n\n This function takes ownership of the InferenceModel `model` whether it succeeds\n or not. `tract_inference_model_destroy` must not be used on `model`.\n\n On the other hand, caller will be owning the newly created `optimized` model."]
5307 pub fn tract_inference_model_into_optimized(
5308 model: *mut *mut TractInferenceModel,
5309 optimized: *mut *mut TractModel,
5310 ) -> TRACT_RESULT;
5311}
5312extern "C" {
5313 #[doc = " Transform a fully analysed InferenceModel to a TypedModel.\n\n This function takes ownership of the InferenceModel `model` whether it succeeds\n or not. `tract_inference_model_destroy` must not be used on `model`.\n\n On the other hand, caller will be owning the newly created `optimized` model."]
5314 pub fn tract_inference_model_into_typed(
5315 model: *mut *mut TractInferenceModel,
5316 typed: *mut *mut TractModel,
5317 ) -> TRACT_RESULT;
5318}
5319extern "C" {
5320 #[doc = " Destroy an InferenceModel."]
5321 pub fn tract_inference_model_destroy(model: *mut *mut TractInferenceModel) -> TRACT_RESULT;
5322}
5323extern "C" {
5324 #[doc = " Query an InferenceModel input counts."]
5325 pub fn tract_model_input_count(model: *const TractModel, inputs: *mut usize) -> TRACT_RESULT;
5326}
5327extern "C" {
5328 #[doc = " Query an InferenceModel output counts."]
5329 pub fn tract_model_output_count(model: *const TractModel, outputs: *mut usize) -> TRACT_RESULT;
5330}
5331extern "C" {
5332 #[doc = " Query the name of a model input.\n\n The returned name must be freed by the caller using tract_free_cstring."]
5333 pub fn tract_model_input_name(
5334 model: *const TractModel,
5335 input: usize,
5336 name: *mut *mut ::std::os::raw::c_char,
5337 ) -> TRACT_RESULT;
5338}
5339extern "C" {
5340 #[doc = " Query the input fact of a model.\n\n Thre returned fact must be freed with tract_fact_destroy."]
5341 pub fn tract_model_input_fact(
5342 model: *const TractModel,
5343 input_id: usize,
5344 fact: *mut *mut TractFact,
5345 ) -> TRACT_RESULT;
5346}
5347extern "C" {
5348 #[doc = " Query the name of a model output.\n\n The returned name must be freed by the caller using tract_free_cstring."]
5349 pub fn tract_model_output_name(
5350 model: *const TractModel,
5351 output: usize,
5352 name: *mut *mut ::std::os::raw::c_char,
5353 ) -> TRACT_RESULT;
5354}
5355extern "C" {
5356 #[doc = " Query the output fact of a model.\n\n Thre returned fact must be freed with tract_fact_destroy."]
5357 pub fn tract_model_output_fact(
5358 model: *const TractModel,
5359 input_id: usize,
5360 fact: *mut *mut TractFact,
5361 ) -> TRACT_RESULT;
5362}
5363extern "C" {
5364 #[doc = " Change the model outputs nodes (by name).\n\n `names` is an array containing `len` pointers to null terminated strings."]
5365 pub fn tract_model_set_output_names(
5366 model: *mut TractModel,
5367 len: usize,
5368 names: *const *const ::std::os::raw::c_char,
5369 ) -> TRACT_RESULT;
5370}
5371extern "C" {
5372 #[doc = " Give value one or more symbols used in the model.\n\n * symbols is an array of `nb_symbols` pointers to null-terminated UTF-8 string for the symbols\n names to substitue\n * values is an array of `nb_symbols` integer values"]
5373 pub fn tract_model_concretize_symbols(
5374 model: *mut TractModel,
5375 nb_symbols: usize,
5376 symbols: *const *const i8,
5377 values: *const i64,
5378 ) -> TRACT_RESULT;
5379}
5380extern "C" {
5381 #[doc = " Pulsify the model\n\n * stream_symbol is the name of the stream symbol\n * pulse expression is a dim to use as the pulse size (like \"8\", \"P\" or \"3*p\")."]
5382 pub fn tract_model_pulse_simple(
5383 model: *mut *mut TractModel,
5384 stream_symbol: *const i8,
5385 pulse_expr: *const i8,
5386 ) -> TRACT_RESULT;
5387}
5388extern "C" {
5389 #[doc = " Apply a transform to the model."]
5390 pub fn tract_model_transform(model: *mut TractModel, transform: *const i8) -> TRACT_RESULT;
5391}
5392extern "C" {
5393 #[doc = " Declutter a TypedModel in-place."]
5394 pub fn tract_model_declutter(model: *mut TractModel) -> TRACT_RESULT;
5395}
5396extern "C" {
5397 #[doc = " Optimize a TypedModel in-place."]
5398 pub fn tract_model_optimize(model: *mut TractModel) -> TRACT_RESULT;
5399}
5400extern "C" {
5401 #[doc = " Perform a profile of the model using the provided inputs."]
5402 pub fn tract_model_profile_json(
5403 model: *mut TractModel,
5404 inputs: *mut *mut TractValue,
5405 json: *mut *mut i8,
5406 ) -> TRACT_RESULT;
5407}
5408extern "C" {
5409 #[doc = " Convert a TypedModel into a TypedRunnableModel.\n\n This function transfers ownership of the `model` argument to the newly-created `runnable` model.\n\n Runnable are reference counted. When done, it should be released with `tract_runnable_release`."]
5410 pub fn tract_model_into_runnable(
5411 model: *mut *mut TractModel,
5412 runnable: *mut *mut TractRunnable,
5413 ) -> TRACT_RESULT;
5414}
5415extern "C" {
5416 #[doc = " Query the number of properties in a model."]
5417 pub fn tract_model_property_count(model: *const TractModel, count: *mut usize) -> TRACT_RESULT;
5418}
5419extern "C" {
5420 #[doc = " Query the properties names of a model.\n\n The \"names\" array should be big enough to fit `tract_model_property_count` string pointers.\n\n Each name will have to be freed using `tract_free_cstring`."]
5421 pub fn tract_model_property_names(
5422 model: *const TractModel,
5423 names: *mut *mut i8,
5424 ) -> TRACT_RESULT;
5425}
5426extern "C" {
5427 #[doc = " Query a property value in a model."]
5428 pub fn tract_model_property(
5429 model: *const TractModel,
5430 name: *const i8,
5431 value: *mut *mut TractValue,
5432 ) -> TRACT_RESULT;
5433}
5434extern "C" {
5435 #[doc = " Destroy a TypedModel."]
5436 pub fn tract_model_destroy(model: *mut *mut TractModel) -> TRACT_RESULT;
5437}
5438extern "C" {
5439 #[doc = " Spawn a session state from a runnable model.\n\n This function does not take ownership of the `runnable` object, it can be used again to spawn\n other state instances. The runnable object is internally reference counted, it will be\n kept alive as long as any associated `State` exists (or as long as the `runnable` is not\n explicitely release with `tract_runnable_release`).\n\n `state` is a newly-created object. It should ultimately be detroyed with `tract_state_destroy`."]
5440 pub fn tract_runnable_spawn_state(
5441 runnable: *mut TractRunnable,
5442 state: *mut *mut TractState,
5443 ) -> TRACT_RESULT;
5444}
5445extern "C" {
5446 #[doc = " Convenience function to run a stateless model.\n\n `inputs` is a pointer to an pre-existing array of input TractValue. Its length *must* be equal\n to the number of inputs of the models. The function does not take ownership of the input\n values.\n `outputs` is a pointer to a pre-existing array of TractValue pointers that will be overwritten\n with pointers to outputs values. These values are under the responsiblity of the caller, it\n will have to release them with `tract_value_destroy`."]
5447 pub fn tract_runnable_run(
5448 runnable: *mut TractRunnable,
5449 inputs: *mut *mut TractValue,
5450 outputs: *mut *mut TractValue,
5451 ) -> TRACT_RESULT;
5452}
5453extern "C" {
5454 #[doc = " Query a Runnable input counts."]
5455 pub fn tract_runnable_input_count(
5456 model: *const TractRunnable,
5457 inputs: *mut usize,
5458 ) -> TRACT_RESULT;
5459}
5460extern "C" {
5461 #[doc = " Query an Runnable output counts."]
5462 pub fn tract_runnable_output_count(
5463 model: *const TractRunnable,
5464 outputs: *mut usize,
5465 ) -> TRACT_RESULT;
5466}
5467extern "C" {
5468 pub fn tract_runnable_release(runnable: *mut *mut TractRunnable) -> TRACT_RESULT;
5469}
5470extern "C" {
5471 #[doc = " Create a TractValue (aka tensor) from caller data and metadata.\n\n This call copies the data into tract space. All the pointers only need to be alive for the\n duration of the call.\n\n rank is the number of dimensions of the tensor (i.e. the length of the shape vector).\n\n The returned value must be destroyed by `tract_value_destroy`."]
5472 pub fn tract_value_from_bytes(
5473 datum_type: DatumType,
5474 rank: usize,
5475 shape: *const usize,
5476 data: *mut ::std::os::raw::c_void,
5477 value: *mut *mut TractValue,
5478 ) -> TRACT_RESULT;
5479}
5480extern "C" {
5481 #[doc = " Destroy a value."]
5482 pub fn tract_value_destroy(value: *mut *mut TractValue) -> TRACT_RESULT;
5483}
5484extern "C" {
5485 #[doc = " Inspect part of a value. Except `value`, all argument pointers can be null if only some specific bits\n are required."]
5486 pub fn tract_value_as_bytes(
5487 value: *mut TractValue,
5488 datum_type: *mut DatumType,
5489 rank: *mut usize,
5490 shape: *mut *const usize,
5491 data: *mut *const ::std::os::raw::c_void,
5492 ) -> TRACT_RESULT;
5493}
5494extern "C" {
5495 #[doc = " Run a turn on a model state\n\n `inputs` is a pointer to an pre-existing array of input TractValue. Its length *must* be equal\n to the number of inputs of the models. The function does not take ownership of the input\n values.\n `outputs` is a pointer to a pre-existing array of TractValue pointers that will be overwritten\n with pointers to outputs values. These values are under the responsiblity of the caller, it\n will have to release them with `tract_value_destroy`."]
5496 pub fn tract_state_run(
5497 state: *mut TractState,
5498 inputs: *mut *mut TractValue,
5499 outputs: *mut *mut TractValue,
5500 ) -> TRACT_RESULT;
5501}
5502extern "C" {
5503 #[doc = " Query a State input counts."]
5504 pub fn tract_state_input_count(state: *const TractState, inputs: *mut usize) -> TRACT_RESULT;
5505}
5506extern "C" {
5507 #[doc = " Query an State output counts."]
5508 pub fn tract_state_output_count(state: *const TractState, outputs: *mut usize) -> TRACT_RESULT;
5509}
5510extern "C" {
5511 pub fn tract_state_destroy(state: *mut *mut TractState) -> TRACT_RESULT;
5512}
5513extern "C" {
5514 #[doc = " Parse a fact specification string into an Fact.\n\n The returned fact must be free with `tract_fact_destroy`."]
5515 pub fn tract_fact_parse(
5516 model: *mut TractModel,
5517 spec: *const ::std::os::raw::c_char,
5518 fact: *mut *mut TractFact,
5519 ) -> TRACT_RESULT;
5520}
5521extern "C" {
5522 #[doc = " Write a fact as its specification string.\n\n The returned string must be freed by the caller using tract_free_cstring."]
5523 pub fn tract_fact_dump(
5524 fact: *const TractFact,
5525 spec: *mut *mut ::std::os::raw::c_char,
5526 ) -> TRACT_RESULT;
5527}
5528extern "C" {
5529 pub fn tract_fact_destroy(fact: *mut *mut TractFact) -> TRACT_RESULT;
5530}
5531extern "C" {
5532 #[doc = " Parse a fact specification string into an InferenceFact.\n\n The returned fact must be free with `tract_inference_fact_destroy`."]
5533 pub fn tract_inference_fact_parse(
5534 model: *mut TractInferenceModel,
5535 spec: *const ::std::os::raw::c_char,
5536 fact: *mut *mut TractInferenceFact,
5537 ) -> TRACT_RESULT;
5538}
5539extern "C" {
5540 #[doc = " Creates an empty inference fact.\n\n The returned fact must be freed by the caller using tract_inference_fact_destroy"]
5541 pub fn tract_inference_fact_empty(fact: *mut *mut TractInferenceFact) -> TRACT_RESULT;
5542}
5543extern "C" {
5544 #[doc = " Write an inference fact as its specification string.\n\n The returned string must be freed by the caller using tract_free_cstring."]
5545 pub fn tract_inference_fact_dump(
5546 fact: *const TractInferenceFact,
5547 spec: *mut *mut ::std::os::raw::c_char,
5548 ) -> TRACT_RESULT;
5549}
5550extern "C" {
5551 #[doc = " Destroy a fact."]
5552 pub fn tract_inference_fact_destroy(fact: *mut *mut TractInferenceFact) -> TRACT_RESULT;
5553}
5554pub type __builtin_va_list = *mut ::std::os::raw::c_char;
5555pub type __uint128_t = u128;