dawn_sys/generated/
bindings.rs

1/* automatically generated by rust-bindgen 0.71.1 */
2
3pub const _VCRT_COMPILER_PREPROCESSOR: u32 = 1;
4pub const _SAL_VERSION: u32 = 20;
5pub const __SAL_H_VERSION: u32 = 180000000;
6pub const _USE_DECLSPECS_FOR_SAL: u32 = 0;
7pub const _USE_ATTRIBUTES_FOR_SAL: u32 = 0;
8pub const _CRT_PACKING: u32 = 8;
9pub const _HAS_EXCEPTIONS: u32 = 1;
10pub const _STL_LANG: u32 = 0;
11pub const _HAS_CXX17: u32 = 0;
12pub const _HAS_CXX20: u32 = 0;
13pub const _HAS_CXX23: u32 = 0;
14pub const _HAS_CXX26: u32 = 0;
15pub const _HAS_NODISCARD: u32 = 0;
16pub const WCHAR_MIN: u32 = 0;
17pub const WCHAR_MAX: u32 = 65535;
18pub const WINT_MIN: u32 = 0;
19pub const WINT_MAX: u32 = 65535;
20pub const _ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE: u32 = 1;
21pub const _CRT_BUILD_DESKTOP_APP: u32 = 1;
22pub const _ARGMAX: u32 = 100;
23pub const _CRT_INT_MAX: u32 = 2147483647;
24pub const _CRT_FUNCTIONS_REQUIRED: u32 = 1;
25pub const _CRT_HAS_CXX17: u32 = 0;
26pub const _CRT_HAS_C11: u32 = 1;
27pub const _CRT_INTERNAL_NONSTDC_NAMES: u32 = 1;
28pub const __STDC_SECURE_LIB__: u32 = 200411;
29pub const __GOT_SECURE_LIB__: u32 = 200411;
30pub const __STDC_WANT_SECURE_LIB__: u32 = 1;
31pub const _SECURECRT_FILL_BUFFER_PATTERN: u32 = 254;
32pub const _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES: u32 = 0;
33pub const _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT: u32 = 0;
34pub const _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES: u32 = 1;
35pub const _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY: u32 = 0;
36pub const _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY: u32 = 0;
37pub const _DOMAIN: u32 = 1;
38pub const _SING: u32 = 2;
39pub const _OVERFLOW: u32 = 3;
40pub const _UNDERFLOW: u32 = 4;
41pub const _TLOSS: u32 = 5;
42pub const _PLOSS: u32 = 6;
43pub const _HUGE_ENUF : f64 = 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0 ;
44pub const _DENORM: i32 = -2;
45pub const _FINITE: i32 = -1;
46pub const _INFCODE: u32 = 1;
47pub const _NANCODE: u32 = 2;
48pub const FP_INFINITE: u32 = 1;
49pub const FP_NAN: u32 = 2;
50pub const FP_NORMAL: i32 = -1;
51pub const FP_SUBNORMAL: i32 = -2;
52pub const FP_ZERO: u32 = 0;
53pub const _C2: u32 = 1;
54pub const FP_ILOGB0: i32 = -2147483648;
55pub const FP_ILOGBNAN: u32 = 2147483647;
56pub const MATH_ERRNO: u32 = 1;
57pub const MATH_ERREXCEPT: u32 = 2;
58pub const math_errhandling: u32 = 3;
59pub const _FE_DIVBYZERO: u32 = 4;
60pub const _FE_INEXACT: u32 = 32;
61pub const _FE_INVALID: u32 = 1;
62pub const _FE_OVERFLOW: u32 = 8;
63pub const _FE_UNDERFLOW: u32 = 16;
64pub const _D0_C: u32 = 3;
65pub const _D1_C: u32 = 2;
66pub const _D2_C: u32 = 1;
67pub const _D3_C: u32 = 0;
68pub const _DBIAS: u32 = 1022;
69pub const _DOFF: u32 = 4;
70pub const _F0_C: u32 = 1;
71pub const _F1_C: u32 = 0;
72pub const _FBIAS: u32 = 126;
73pub const _FOFF: u32 = 7;
74pub const _FRND: u32 = 1;
75pub const _L0_C: u32 = 3;
76pub const _L1_C: u32 = 2;
77pub const _L2_C: u32 = 1;
78pub const _L3_C: u32 = 0;
79pub const _LBIAS: u32 = 1022;
80pub const _LOFF: u32 = 4;
81pub const _FP_LT: u32 = 1;
82pub const _FP_EQ: u32 = 2;
83pub const _FP_GT: u32 = 4;
84pub const DOMAIN: u32 = 1;
85pub const SING: u32 = 2;
86pub const OVERFLOW: u32 = 3;
87pub const UNDERFLOW: u32 = 4;
88pub const TLOSS: u32 = 5;
89pub const PLOSS: u32 = 6;
90pub type va_list = *mut ::core::ffi::c_char;
91unsafe extern "C" {
92    pub fn __va_start(arg1: *mut *mut ::core::ffi::c_char, ...);
93}
94pub type __vcrt_bool = bool;
95pub type wchar_t = ::core::ffi::c_ushort;
96unsafe extern "C" {
97    pub fn __security_init_cookie();
98}
99unsafe extern "C" {
100    pub fn __security_check_cookie(_StackCookie: usize);
101}
102unsafe extern "C" {
103    pub fn __report_gsfailure(_StackCookie: usize) -> !;
104}
105unsafe extern "C" {
106    pub static mut __security_cookie: usize;
107}
108pub type int_least8_t = ::core::ffi::c_schar;
109pub type int_least16_t = ::core::ffi::c_short;
110pub type int_least32_t = ::core::ffi::c_int;
111pub type int_least64_t = ::core::ffi::c_longlong;
112pub type uint_least8_t = ::core::ffi::c_uchar;
113pub type uint_least16_t = ::core::ffi::c_ushort;
114pub type uint_least32_t = ::core::ffi::c_uint;
115pub type uint_least64_t = ::core::ffi::c_ulonglong;
116pub type int_fast8_t = ::core::ffi::c_schar;
117pub type int_fast16_t = ::core::ffi::c_int;
118pub type int_fast32_t = ::core::ffi::c_int;
119pub type int_fast64_t = ::core::ffi::c_longlong;
120pub type uint_fast8_t = ::core::ffi::c_uchar;
121pub type uint_fast16_t = ::core::ffi::c_uint;
122pub type uint_fast32_t = ::core::ffi::c_uint;
123pub type uint_fast64_t = ::core::ffi::c_ulonglong;
124pub type intmax_t = ::core::ffi::c_longlong;
125pub type uintmax_t = ::core::ffi::c_ulonglong;
126pub type __crt_bool = bool;
127unsafe extern "C" {
128    pub fn _invalid_parameter_noinfo();
129}
130unsafe extern "C" {
131    pub fn _invalid_parameter_noinfo_noreturn() -> !;
132}
133unsafe extern "C" {
134    pub fn _invoke_watson(
135        _Expression: *const wchar_t,
136        _FunctionName: *const wchar_t,
137        _FileName: *const wchar_t,
138        _LineNo: ::core::ffi::c_uint,
139        _Reserved: usize,
140    ) -> !;
141}
142pub type errno_t = ::core::ffi::c_int;
143pub type wint_t = ::core::ffi::c_ushort;
144pub type wctype_t = ::core::ffi::c_ushort;
145pub type __time32_t = ::core::ffi::c_long;
146pub type __time64_t = ::core::ffi::c_longlong;
147#[repr(C)]
148#[derive(Debug, Copy, Clone)]
149pub struct __crt_locale_data_public {
150    pub _locale_pctype: *const ::core::ffi::c_ushort,
151    pub _locale_mb_cur_max: ::core::ffi::c_int,
152    pub _locale_lc_codepage: ::core::ffi::c_uint,
153}
154#[allow(clippy::unnecessary_operation, clippy::identity_op)]
155const _: () = {
156    ["Size of __crt_locale_data_public"]
157        [::core::mem::size_of::<__crt_locale_data_public>() - 16usize];
158    ["Alignment of __crt_locale_data_public"]
159        [::core::mem::align_of::<__crt_locale_data_public>() - 8usize];
160    ["Offset of field: __crt_locale_data_public::_locale_pctype"]
161        [::core::mem::offset_of!(__crt_locale_data_public, _locale_pctype) - 0usize];
162    ["Offset of field: __crt_locale_data_public::_locale_mb_cur_max"]
163        [::core::mem::offset_of!(__crt_locale_data_public, _locale_mb_cur_max) - 8usize];
164    ["Offset of field: __crt_locale_data_public::_locale_lc_codepage"]
165        [::core::mem::offset_of!(__crt_locale_data_public, _locale_lc_codepage) - 12usize];
166};
167#[repr(C)]
168#[derive(Debug, Copy, Clone)]
169pub struct __crt_locale_pointers {
170    pub locinfo: *mut __crt_locale_data,
171    pub mbcinfo: *mut __crt_multibyte_data,
172}
173#[allow(clippy::unnecessary_operation, clippy::identity_op)]
174const _: () = {
175    ["Size of __crt_locale_pointers"][::core::mem::size_of::<__crt_locale_pointers>() - 16usize];
176    ["Alignment of __crt_locale_pointers"]
177        [::core::mem::align_of::<__crt_locale_pointers>() - 8usize];
178    ["Offset of field: __crt_locale_pointers::locinfo"]
179        [::core::mem::offset_of!(__crt_locale_pointers, locinfo) - 0usize];
180    ["Offset of field: __crt_locale_pointers::mbcinfo"]
181        [::core::mem::offset_of!(__crt_locale_pointers, mbcinfo) - 8usize];
182};
183pub type _locale_t = *mut __crt_locale_pointers;
184#[repr(C)]
185#[derive(Debug, Copy, Clone)]
186pub struct _Mbstatet {
187    pub _Wchar: ::core::ffi::c_ulong,
188    pub _Byte: ::core::ffi::c_ushort,
189    pub _State: ::core::ffi::c_ushort,
190}
191#[allow(clippy::unnecessary_operation, clippy::identity_op)]
192const _: () = {
193    ["Size of _Mbstatet"][::core::mem::size_of::<_Mbstatet>() - 8usize];
194    ["Alignment of _Mbstatet"][::core::mem::align_of::<_Mbstatet>() - 4usize];
195    ["Offset of field: _Mbstatet::_Wchar"][::core::mem::offset_of!(_Mbstatet, _Wchar) - 0usize];
196    ["Offset of field: _Mbstatet::_Byte"][::core::mem::offset_of!(_Mbstatet, _Byte) - 4usize];
197    ["Offset of field: _Mbstatet::_State"][::core::mem::offset_of!(_Mbstatet, _State) - 6usize];
198};
199pub type mbstate_t = _Mbstatet;
200pub type time_t = __time64_t;
201pub type rsize_t = usize;
202unsafe extern "C" {
203    pub fn _errno() -> *mut ::core::ffi::c_int;
204}
205unsafe extern "C" {
206    pub fn _set_errno(_Value: ::core::ffi::c_int) -> errno_t;
207}
208unsafe extern "C" {
209    pub fn _get_errno(_Value: *mut ::core::ffi::c_int) -> errno_t;
210}
211unsafe extern "C" {
212    pub fn __threadid() -> ::core::ffi::c_ulong;
213}
214unsafe extern "C" {
215    pub fn __threadhandle() -> usize;
216}
217#[repr(C)]
218#[derive(Debug, Copy, Clone)]
219pub struct _exception {
220    pub type_: ::core::ffi::c_int,
221    pub name: *mut ::core::ffi::c_char,
222    pub arg1: f64,
223    pub arg2: f64,
224    pub retval: f64,
225}
226#[allow(clippy::unnecessary_operation, clippy::identity_op)]
227const _: () = {
228    ["Size of _exception"][::core::mem::size_of::<_exception>() - 40usize];
229    ["Alignment of _exception"][::core::mem::align_of::<_exception>() - 8usize];
230    ["Offset of field: _exception::type_"][::core::mem::offset_of!(_exception, type_) - 0usize];
231    ["Offset of field: _exception::name"][::core::mem::offset_of!(_exception, name) - 8usize];
232    ["Offset of field: _exception::arg1"][::core::mem::offset_of!(_exception, arg1) - 16usize];
233    ["Offset of field: _exception::arg2"][::core::mem::offset_of!(_exception, arg2) - 24usize];
234    ["Offset of field: _exception::retval"][::core::mem::offset_of!(_exception, retval) - 32usize];
235};
236#[repr(C)]
237#[derive(Debug, Copy, Clone)]
238pub struct _complex {
239    pub x: f64,
240    pub y: f64,
241}
242#[allow(clippy::unnecessary_operation, clippy::identity_op)]
243const _: () = {
244    ["Size of _complex"][::core::mem::size_of::<_complex>() - 16usize];
245    ["Alignment of _complex"][::core::mem::align_of::<_complex>() - 8usize];
246    ["Offset of field: _complex::x"][::core::mem::offset_of!(_complex, x) - 0usize];
247    ["Offset of field: _complex::y"][::core::mem::offset_of!(_complex, y) - 8usize];
248};
249pub type float_t = f32;
250pub type double_t = f64;
251unsafe extern "C" {
252    pub static _HUGE: f64;
253}
254unsafe extern "C" {
255    pub fn _fperrraise(_Except: ::core::ffi::c_int);
256}
257unsafe extern "C" {
258    pub fn _dclass(_X: f64) -> ::core::ffi::c_short;
259}
260unsafe extern "C" {
261    pub fn _ldclass(_X: f64) -> ::core::ffi::c_short;
262}
263unsafe extern "C" {
264    pub fn _fdclass(_X: f32) -> ::core::ffi::c_short;
265}
266unsafe extern "C" {
267    pub fn _dsign(_X: f64) -> ::core::ffi::c_int;
268}
269unsafe extern "C" {
270    pub fn _ldsign(_X: f64) -> ::core::ffi::c_int;
271}
272unsafe extern "C" {
273    pub fn _fdsign(_X: f32) -> ::core::ffi::c_int;
274}
275unsafe extern "C" {
276    pub fn _dpcomp(_X: f64, _Y: f64) -> ::core::ffi::c_int;
277}
278unsafe extern "C" {
279    pub fn _ldpcomp(_X: f64, _Y: f64) -> ::core::ffi::c_int;
280}
281unsafe extern "C" {
282    pub fn _fdpcomp(_X: f32, _Y: f32) -> ::core::ffi::c_int;
283}
284unsafe extern "C" {
285    pub fn _dtest(_Px: *mut f64) -> ::core::ffi::c_short;
286}
287unsafe extern "C" {
288    pub fn _ldtest(_Px: *mut f64) -> ::core::ffi::c_short;
289}
290unsafe extern "C" {
291    pub fn _fdtest(_Px: *mut f32) -> ::core::ffi::c_short;
292}
293unsafe extern "C" {
294    pub fn _d_int(_Px: *mut f64, _Xexp: ::core::ffi::c_short) -> ::core::ffi::c_short;
295}
296unsafe extern "C" {
297    pub fn _ld_int(_Px: *mut f64, _Xexp: ::core::ffi::c_short) -> ::core::ffi::c_short;
298}
299unsafe extern "C" {
300    pub fn _fd_int(_Px: *mut f32, _Xexp: ::core::ffi::c_short) -> ::core::ffi::c_short;
301}
302unsafe extern "C" {
303    pub fn _dscale(_Px: *mut f64, _Lexp: ::core::ffi::c_long) -> ::core::ffi::c_short;
304}
305unsafe extern "C" {
306    pub fn _ldscale(_Px: *mut f64, _Lexp: ::core::ffi::c_long) -> ::core::ffi::c_short;
307}
308unsafe extern "C" {
309    pub fn _fdscale(_Px: *mut f32, _Lexp: ::core::ffi::c_long) -> ::core::ffi::c_short;
310}
311unsafe extern "C" {
312    pub fn _dunscale(_Pex: *mut ::core::ffi::c_short, _Px: *mut f64) -> ::core::ffi::c_short;
313}
314unsafe extern "C" {
315    pub fn _ldunscale(_Pex: *mut ::core::ffi::c_short, _Px: *mut f64) -> ::core::ffi::c_short;
316}
317unsafe extern "C" {
318    pub fn _fdunscale(_Pex: *mut ::core::ffi::c_short, _Px: *mut f32) -> ::core::ffi::c_short;
319}
320unsafe extern "C" {
321    pub fn _dexp(_Px: *mut f64, _Y: f64, _Eoff: ::core::ffi::c_long) -> ::core::ffi::c_short;
322}
323unsafe extern "C" {
324    pub fn _ldexp(_Px: *mut f64, _Y: f64, _Eoff: ::core::ffi::c_long) -> ::core::ffi::c_short;
325}
326unsafe extern "C" {
327    pub fn _fdexp(_Px: *mut f32, _Y: f32, _Eoff: ::core::ffi::c_long) -> ::core::ffi::c_short;
328}
329unsafe extern "C" {
330    pub fn _dnorm(_Ps: *mut ::core::ffi::c_ushort) -> ::core::ffi::c_short;
331}
332unsafe extern "C" {
333    pub fn _fdnorm(_Ps: *mut ::core::ffi::c_ushort) -> ::core::ffi::c_short;
334}
335unsafe extern "C" {
336    pub fn _dpoly(_X: f64, _Tab: *const f64, _N: ::core::ffi::c_int) -> f64;
337}
338unsafe extern "C" {
339    pub fn _ldpoly(_X: f64, _Tab: *const f64, _N: ::core::ffi::c_int) -> f64;
340}
341unsafe extern "C" {
342    pub fn _fdpoly(_X: f32, _Tab: *const f32, _N: ::core::ffi::c_int) -> f32;
343}
344unsafe extern "C" {
345    pub fn _dlog(_X: f64, _Baseflag: ::core::ffi::c_int) -> f64;
346}
347unsafe extern "C" {
348    pub fn _ldlog(_X: f64, _Baseflag: ::core::ffi::c_int) -> f64;
349}
350unsafe extern "C" {
351    pub fn _fdlog(_X: f32, _Baseflag: ::core::ffi::c_int) -> f32;
352}
353unsafe extern "C" {
354    pub fn _dsin(_X: f64, _Qoff: ::core::ffi::c_uint) -> f64;
355}
356unsafe extern "C" {
357    pub fn _ldsin(_X: f64, _Qoff: ::core::ffi::c_uint) -> f64;
358}
359unsafe extern "C" {
360    pub fn _fdsin(_X: f32, _Qoff: ::core::ffi::c_uint) -> f32;
361}
362#[repr(C)]
363#[derive(Copy, Clone)]
364pub union _double_val {
365    pub _Sh: [::core::ffi::c_ushort; 4usize],
366    pub _Val: f64,
367}
368#[allow(clippy::unnecessary_operation, clippy::identity_op)]
369const _: () = {
370    ["Size of _double_val"][::core::mem::size_of::<_double_val>() - 8usize];
371    ["Alignment of _double_val"][::core::mem::align_of::<_double_val>() - 8usize];
372    ["Offset of field: _double_val::_Sh"][::core::mem::offset_of!(_double_val, _Sh) - 0usize];
373    ["Offset of field: _double_val::_Val"][::core::mem::offset_of!(_double_val, _Val) - 0usize];
374};
375#[repr(C)]
376#[derive(Copy, Clone)]
377pub union _float_val {
378    pub _Sh: [::core::ffi::c_ushort; 2usize],
379    pub _Val: f32,
380}
381#[allow(clippy::unnecessary_operation, clippy::identity_op)]
382const _: () = {
383    ["Size of _float_val"][::core::mem::size_of::<_float_val>() - 4usize];
384    ["Alignment of _float_val"][::core::mem::align_of::<_float_val>() - 4usize];
385    ["Offset of field: _float_val::_Sh"][::core::mem::offset_of!(_float_val, _Sh) - 0usize];
386    ["Offset of field: _float_val::_Val"][::core::mem::offset_of!(_float_val, _Val) - 0usize];
387};
388#[repr(C)]
389#[derive(Copy, Clone)]
390pub union _ldouble_val {
391    pub _Sh: [::core::ffi::c_ushort; 4usize],
392    pub _Val: f64,
393}
394#[allow(clippy::unnecessary_operation, clippy::identity_op)]
395const _: () = {
396    ["Size of _ldouble_val"][::core::mem::size_of::<_ldouble_val>() - 8usize];
397    ["Alignment of _ldouble_val"][::core::mem::align_of::<_ldouble_val>() - 8usize];
398    ["Offset of field: _ldouble_val::_Sh"][::core::mem::offset_of!(_ldouble_val, _Sh) - 0usize];
399    ["Offset of field: _ldouble_val::_Val"][::core::mem::offset_of!(_ldouble_val, _Val) - 0usize];
400};
401#[repr(C)]
402#[derive(Copy, Clone)]
403pub union _float_const {
404    pub _Word: [::core::ffi::c_ushort; 4usize],
405    pub _Float: f32,
406    pub _Double: f64,
407    pub _Long_double: f64,
408}
409#[allow(clippy::unnecessary_operation, clippy::identity_op)]
410const _: () = {
411    ["Size of _float_const"][::core::mem::size_of::<_float_const>() - 8usize];
412    ["Alignment of _float_const"][::core::mem::align_of::<_float_const>() - 8usize];
413    ["Offset of field: _float_const::_Word"][::core::mem::offset_of!(_float_const, _Word) - 0usize];
414    ["Offset of field: _float_const::_Float"]
415        [::core::mem::offset_of!(_float_const, _Float) - 0usize];
416    ["Offset of field: _float_const::_Double"]
417        [::core::mem::offset_of!(_float_const, _Double) - 0usize];
418    ["Offset of field: _float_const::_Long_double"]
419        [::core::mem::offset_of!(_float_const, _Long_double) - 0usize];
420};
421unsafe extern "C" {
422    pub static _Denorm_C: _float_const;
423}
424unsafe extern "C" {
425    pub static _Inf_C: _float_const;
426}
427unsafe extern "C" {
428    pub static _Nan_C: _float_const;
429}
430unsafe extern "C" {
431    pub static _Snan_C: _float_const;
432}
433unsafe extern "C" {
434    pub static _Hugeval_C: _float_const;
435}
436unsafe extern "C" {
437    pub static _FDenorm_C: _float_const;
438}
439unsafe extern "C" {
440    pub static _FInf_C: _float_const;
441}
442unsafe extern "C" {
443    pub static _FNan_C: _float_const;
444}
445unsafe extern "C" {
446    pub static _FSnan_C: _float_const;
447}
448unsafe extern "C" {
449    pub static _LDenorm_C: _float_const;
450}
451unsafe extern "C" {
452    pub static _LInf_C: _float_const;
453}
454unsafe extern "C" {
455    pub static _LNan_C: _float_const;
456}
457unsafe extern "C" {
458    pub static _LSnan_C: _float_const;
459}
460unsafe extern "C" {
461    pub static _Eps_C: _float_const;
462}
463unsafe extern "C" {
464    pub static _Rteps_C: _float_const;
465}
466unsafe extern "C" {
467    pub static _FEps_C: _float_const;
468}
469unsafe extern "C" {
470    pub static _FRteps_C: _float_const;
471}
472unsafe extern "C" {
473    pub static _LEps_C: _float_const;
474}
475unsafe extern "C" {
476    pub static _LRteps_C: _float_const;
477}
478unsafe extern "C" {
479    pub static _Zero_C: f64;
480}
481unsafe extern "C" {
482    pub static _Xbig_C: f64;
483}
484unsafe extern "C" {
485    pub static _FZero_C: f32;
486}
487unsafe extern "C" {
488    pub static _FXbig_C: f32;
489}
490unsafe extern "C" {
491    pub static _LZero_C: f64;
492}
493unsafe extern "C" {
494    pub static _LXbig_C: f64;
495}
496unsafe extern "C" {
497    pub fn abs(_X: ::core::ffi::c_int) -> ::core::ffi::c_int;
498}
499unsafe extern "C" {
500    pub fn labs(_X: ::core::ffi::c_long) -> ::core::ffi::c_long;
501}
502unsafe extern "C" {
503    pub fn llabs(_X: ::core::ffi::c_longlong) -> ::core::ffi::c_longlong;
504}
505unsafe extern "C" {
506    pub fn acos(_X: f64) -> f64;
507}
508unsafe extern "C" {
509    pub fn asin(_X: f64) -> f64;
510}
511unsafe extern "C" {
512    pub fn atan(_X: f64) -> f64;
513}
514unsafe extern "C" {
515    pub fn atan2(_Y: f64, _X: f64) -> f64;
516}
517unsafe extern "C" {
518    pub fn cos(_X: f64) -> f64;
519}
520unsafe extern "C" {
521    pub fn cosh(_X: f64) -> f64;
522}
523unsafe extern "C" {
524    pub fn exp(_X: f64) -> f64;
525}
526unsafe extern "C" {
527    pub fn fabs(_X: f64) -> f64;
528}
529unsafe extern "C" {
530    pub fn fmod(_X: f64, _Y: f64) -> f64;
531}
532unsafe extern "C" {
533    pub fn log(_X: f64) -> f64;
534}
535unsafe extern "C" {
536    pub fn log10(_X: f64) -> f64;
537}
538unsafe extern "C" {
539    pub fn pow(_X: f64, _Y: f64) -> f64;
540}
541unsafe extern "C" {
542    pub fn sin(_X: f64) -> f64;
543}
544unsafe extern "C" {
545    pub fn sinh(_X: f64) -> f64;
546}
547unsafe extern "C" {
548    pub fn sqrt(_X: f64) -> f64;
549}
550unsafe extern "C" {
551    pub fn tan(_X: f64) -> f64;
552}
553unsafe extern "C" {
554    pub fn tanh(_X: f64) -> f64;
555}
556unsafe extern "C" {
557    pub fn acosh(_X: f64) -> f64;
558}
559unsafe extern "C" {
560    pub fn asinh(_X: f64) -> f64;
561}
562unsafe extern "C" {
563    pub fn atanh(_X: f64) -> f64;
564}
565unsafe extern "C" {
566    pub fn atof(_String: *const ::core::ffi::c_char) -> f64;
567}
568unsafe extern "C" {
569    pub fn _atof_l(_String: *const ::core::ffi::c_char, _Locale: _locale_t) -> f64;
570}
571unsafe extern "C" {
572    pub fn _cabs(_Complex_value: _complex) -> f64;
573}
574unsafe extern "C" {
575    pub fn cbrt(_X: f64) -> f64;
576}
577unsafe extern "C" {
578    pub fn ceil(_X: f64) -> f64;
579}
580unsafe extern "C" {
581    pub fn _chgsign(_X: f64) -> f64;
582}
583unsafe extern "C" {
584    pub fn copysign(_Number: f64, _Sign: f64) -> f64;
585}
586unsafe extern "C" {
587    pub fn _copysign(_Number: f64, _Sign: f64) -> f64;
588}
589unsafe extern "C" {
590    pub fn erf(_X: f64) -> f64;
591}
592unsafe extern "C" {
593    pub fn erfc(_X: f64) -> f64;
594}
595unsafe extern "C" {
596    pub fn exp2(_X: f64) -> f64;
597}
598unsafe extern "C" {
599    pub fn expm1(_X: f64) -> f64;
600}
601unsafe extern "C" {
602    pub fn fdim(_X: f64, _Y: f64) -> f64;
603}
604unsafe extern "C" {
605    pub fn floor(_X: f64) -> f64;
606}
607unsafe extern "C" {
608    pub fn fma(_X: f64, _Y: f64, _Z: f64) -> f64;
609}
610unsafe extern "C" {
611    pub fn fmax(_X: f64, _Y: f64) -> f64;
612}
613unsafe extern "C" {
614    pub fn fmin(_X: f64, _Y: f64) -> f64;
615}
616unsafe extern "C" {
617    pub fn frexp(_X: f64, _Y: *mut ::core::ffi::c_int) -> f64;
618}
619unsafe extern "C" {
620    pub fn hypot(_X: f64, _Y: f64) -> f64;
621}
622unsafe extern "C" {
623    pub fn _hypot(_X: f64, _Y: f64) -> f64;
624}
625unsafe extern "C" {
626    pub fn ilogb(_X: f64) -> ::core::ffi::c_int;
627}
628unsafe extern "C" {
629    pub fn ldexp(_X: f64, _Y: ::core::ffi::c_int) -> f64;
630}
631unsafe extern "C" {
632    pub fn lgamma(_X: f64) -> f64;
633}
634unsafe extern "C" {
635    pub fn llrint(_X: f64) -> ::core::ffi::c_longlong;
636}
637unsafe extern "C" {
638    pub fn llround(_X: f64) -> ::core::ffi::c_longlong;
639}
640unsafe extern "C" {
641    pub fn log1p(_X: f64) -> f64;
642}
643unsafe extern "C" {
644    pub fn log2(_X: f64) -> f64;
645}
646unsafe extern "C" {
647    pub fn logb(_X: f64) -> f64;
648}
649unsafe extern "C" {
650    pub fn lrint(_X: f64) -> ::core::ffi::c_long;
651}
652unsafe extern "C" {
653    pub fn lround(_X: f64) -> ::core::ffi::c_long;
654}
655unsafe extern "C" {
656    pub fn _matherr(_Except: *mut _exception) -> ::core::ffi::c_int;
657}
658unsafe extern "C" {
659    pub fn modf(_X: f64, _Y: *mut f64) -> f64;
660}
661unsafe extern "C" {
662    pub fn nan(_X: *const ::core::ffi::c_char) -> f64;
663}
664unsafe extern "C" {
665    pub fn nearbyint(_X: f64) -> f64;
666}
667unsafe extern "C" {
668    pub fn nextafter(_X: f64, _Y: f64) -> f64;
669}
670unsafe extern "C" {
671    pub fn nexttoward(_X: f64, _Y: f64) -> f64;
672}
673unsafe extern "C" {
674    pub fn remainder(_X: f64, _Y: f64) -> f64;
675}
676unsafe extern "C" {
677    pub fn remquo(_X: f64, _Y: f64, _Z: *mut ::core::ffi::c_int) -> f64;
678}
679unsafe extern "C" {
680    pub fn rint(_X: f64) -> f64;
681}
682unsafe extern "C" {
683    pub fn round(_X: f64) -> f64;
684}
685unsafe extern "C" {
686    pub fn scalbln(_X: f64, _Y: ::core::ffi::c_long) -> f64;
687}
688unsafe extern "C" {
689    pub fn scalbn(_X: f64, _Y: ::core::ffi::c_int) -> f64;
690}
691unsafe extern "C" {
692    pub fn tgamma(_X: f64) -> f64;
693}
694unsafe extern "C" {
695    pub fn trunc(_X: f64) -> f64;
696}
697unsafe extern "C" {
698    pub fn _j0(_X: f64) -> f64;
699}
700unsafe extern "C" {
701    pub fn _j1(_X: f64) -> f64;
702}
703unsafe extern "C" {
704    pub fn _jn(_X: ::core::ffi::c_int, _Y: f64) -> f64;
705}
706unsafe extern "C" {
707    pub fn _y0(_X: f64) -> f64;
708}
709unsafe extern "C" {
710    pub fn _y1(_X: f64) -> f64;
711}
712unsafe extern "C" {
713    pub fn _yn(_X: ::core::ffi::c_int, _Y: f64) -> f64;
714}
715unsafe extern "C" {
716    pub fn acoshf(_X: f32) -> f32;
717}
718unsafe extern "C" {
719    pub fn asinhf(_X: f32) -> f32;
720}
721unsafe extern "C" {
722    pub fn atanhf(_X: f32) -> f32;
723}
724unsafe extern "C" {
725    pub fn cbrtf(_X: f32) -> f32;
726}
727unsafe extern "C" {
728    pub fn _chgsignf(_X: f32) -> f32;
729}
730unsafe extern "C" {
731    pub fn copysignf(_Number: f32, _Sign: f32) -> f32;
732}
733unsafe extern "C" {
734    pub fn _copysignf(_Number: f32, _Sign: f32) -> f32;
735}
736unsafe extern "C" {
737    pub fn erff(_X: f32) -> f32;
738}
739unsafe extern "C" {
740    pub fn erfcf(_X: f32) -> f32;
741}
742unsafe extern "C" {
743    pub fn expm1f(_X: f32) -> f32;
744}
745unsafe extern "C" {
746    pub fn exp2f(_X: f32) -> f32;
747}
748unsafe extern "C" {
749    pub fn fdimf(_X: f32, _Y: f32) -> f32;
750}
751unsafe extern "C" {
752    pub fn fmaf(_X: f32, _Y: f32, _Z: f32) -> f32;
753}
754unsafe extern "C" {
755    pub fn fmaxf(_X: f32, _Y: f32) -> f32;
756}
757unsafe extern "C" {
758    pub fn fminf(_X: f32, _Y: f32) -> f32;
759}
760unsafe extern "C" {
761    pub fn _hypotf(_X: f32, _Y: f32) -> f32;
762}
763unsafe extern "C" {
764    pub fn ilogbf(_X: f32) -> ::core::ffi::c_int;
765}
766unsafe extern "C" {
767    pub fn lgammaf(_X: f32) -> f32;
768}
769unsafe extern "C" {
770    pub fn llrintf(_X: f32) -> ::core::ffi::c_longlong;
771}
772unsafe extern "C" {
773    pub fn llroundf(_X: f32) -> ::core::ffi::c_longlong;
774}
775unsafe extern "C" {
776    pub fn log1pf(_X: f32) -> f32;
777}
778unsafe extern "C" {
779    pub fn log2f(_X: f32) -> f32;
780}
781unsafe extern "C" {
782    pub fn logbf(_X: f32) -> f32;
783}
784unsafe extern "C" {
785    pub fn lrintf(_X: f32) -> ::core::ffi::c_long;
786}
787unsafe extern "C" {
788    pub fn lroundf(_X: f32) -> ::core::ffi::c_long;
789}
790unsafe extern "C" {
791    pub fn nanf(_X: *const ::core::ffi::c_char) -> f32;
792}
793unsafe extern "C" {
794    pub fn nearbyintf(_X: f32) -> f32;
795}
796unsafe extern "C" {
797    pub fn nextafterf(_X: f32, _Y: f32) -> f32;
798}
799unsafe extern "C" {
800    pub fn nexttowardf(_X: f32, _Y: f64) -> f32;
801}
802unsafe extern "C" {
803    pub fn remainderf(_X: f32, _Y: f32) -> f32;
804}
805unsafe extern "C" {
806    pub fn remquof(_X: f32, _Y: f32, _Z: *mut ::core::ffi::c_int) -> f32;
807}
808unsafe extern "C" {
809    pub fn rintf(_X: f32) -> f32;
810}
811unsafe extern "C" {
812    pub fn roundf(_X: f32) -> f32;
813}
814unsafe extern "C" {
815    pub fn scalblnf(_X: f32, _Y: ::core::ffi::c_long) -> f32;
816}
817unsafe extern "C" {
818    pub fn scalbnf(_X: f32, _Y: ::core::ffi::c_int) -> f32;
819}
820unsafe extern "C" {
821    pub fn tgammaf(_X: f32) -> f32;
822}
823unsafe extern "C" {
824    pub fn truncf(_X: f32) -> f32;
825}
826unsafe extern "C" {
827    pub fn _logbf(_X: f32) -> f32;
828}
829unsafe extern "C" {
830    pub fn _nextafterf(_X: f32, _Y: f32) -> f32;
831}
832unsafe extern "C" {
833    pub fn _finitef(_X: f32) -> ::core::ffi::c_int;
834}
835unsafe extern "C" {
836    pub fn _isnanf(_X: f32) -> ::core::ffi::c_int;
837}
838unsafe extern "C" {
839    pub fn _fpclassf(_X: f32) -> ::core::ffi::c_int;
840}
841unsafe extern "C" {
842    pub fn _set_FMA3_enable(_Flag: ::core::ffi::c_int) -> ::core::ffi::c_int;
843}
844unsafe extern "C" {
845    pub fn _get_FMA3_enable() -> ::core::ffi::c_int;
846}
847unsafe extern "C" {
848    pub fn acosf(_X: f32) -> f32;
849}
850unsafe extern "C" {
851    pub fn asinf(_X: f32) -> f32;
852}
853unsafe extern "C" {
854    pub fn atan2f(_Y: f32, _X: f32) -> f32;
855}
856unsafe extern "C" {
857    pub fn atanf(_X: f32) -> f32;
858}
859unsafe extern "C" {
860    pub fn ceilf(_X: f32) -> f32;
861}
862unsafe extern "C" {
863    pub fn cosf(_X: f32) -> f32;
864}
865unsafe extern "C" {
866    pub fn coshf(_X: f32) -> f32;
867}
868unsafe extern "C" {
869    pub fn expf(_X: f32) -> f32;
870}
871unsafe extern "C" {
872    pub fn floorf(_X: f32) -> f32;
873}
874unsafe extern "C" {
875    pub fn fmodf(_X: f32, _Y: f32) -> f32;
876}
877unsafe extern "C" {
878    pub fn log10f(_X: f32) -> f32;
879}
880unsafe extern "C" {
881    pub fn logf(_X: f32) -> f32;
882}
883unsafe extern "C" {
884    pub fn modff(_X: f32, _Y: *mut f32) -> f32;
885}
886unsafe extern "C" {
887    pub fn powf(_X: f32, _Y: f32) -> f32;
888}
889unsafe extern "C" {
890    pub fn sinf(_X: f32) -> f32;
891}
892unsafe extern "C" {
893    pub fn sinhf(_X: f32) -> f32;
894}
895unsafe extern "C" {
896    pub fn sqrtf(_X: f32) -> f32;
897}
898unsafe extern "C" {
899    pub fn tanf(_X: f32) -> f32;
900}
901unsafe extern "C" {
902    pub fn tanhf(_X: f32) -> f32;
903}
904unsafe extern "C" {
905    pub fn acoshl(_X: f64) -> f64;
906}
907unsafe extern "C" {
908    pub fn asinhl(_X: f64) -> f64;
909}
910unsafe extern "C" {
911    pub fn atanhl(_X: f64) -> f64;
912}
913unsafe extern "C" {
914    pub fn cbrtl(_X: f64) -> f64;
915}
916unsafe extern "C" {
917    pub fn copysignl(_Number: f64, _Sign: f64) -> f64;
918}
919unsafe extern "C" {
920    pub fn erfl(_X: f64) -> f64;
921}
922unsafe extern "C" {
923    pub fn erfcl(_X: f64) -> f64;
924}
925unsafe extern "C" {
926    pub fn exp2l(_X: f64) -> f64;
927}
928unsafe extern "C" {
929    pub fn expm1l(_X: f64) -> f64;
930}
931unsafe extern "C" {
932    pub fn fdiml(_X: f64, _Y: f64) -> f64;
933}
934unsafe extern "C" {
935    pub fn fmal(_X: f64, _Y: f64, _Z: f64) -> f64;
936}
937unsafe extern "C" {
938    pub fn fmaxl(_X: f64, _Y: f64) -> f64;
939}
940unsafe extern "C" {
941    pub fn fminl(_X: f64, _Y: f64) -> f64;
942}
943unsafe extern "C" {
944    pub fn ilogbl(_X: f64) -> ::core::ffi::c_int;
945}
946unsafe extern "C" {
947    pub fn lgammal(_X: f64) -> f64;
948}
949unsafe extern "C" {
950    pub fn llrintl(_X: f64) -> ::core::ffi::c_longlong;
951}
952unsafe extern "C" {
953    pub fn llroundl(_X: f64) -> ::core::ffi::c_longlong;
954}
955unsafe extern "C" {
956    pub fn log1pl(_X: f64) -> f64;
957}
958unsafe extern "C" {
959    pub fn log2l(_X: f64) -> f64;
960}
961unsafe extern "C" {
962    pub fn logbl(_X: f64) -> f64;
963}
964unsafe extern "C" {
965    pub fn lrintl(_X: f64) -> ::core::ffi::c_long;
966}
967unsafe extern "C" {
968    pub fn lroundl(_X: f64) -> ::core::ffi::c_long;
969}
970unsafe extern "C" {
971    pub fn nanl(_X: *const ::core::ffi::c_char) -> f64;
972}
973unsafe extern "C" {
974    pub fn nearbyintl(_X: f64) -> f64;
975}
976unsafe extern "C" {
977    pub fn nextafterl(_X: f64, _Y: f64) -> f64;
978}
979unsafe extern "C" {
980    pub fn nexttowardl(_X: f64, _Y: f64) -> f64;
981}
982unsafe extern "C" {
983    pub fn remainderl(_X: f64, _Y: f64) -> f64;
984}
985unsafe extern "C" {
986    pub fn remquol(_X: f64, _Y: f64, _Z: *mut ::core::ffi::c_int) -> f64;
987}
988unsafe extern "C" {
989    pub fn rintl(_X: f64) -> f64;
990}
991unsafe extern "C" {
992    pub fn roundl(_X: f64) -> f64;
993}
994unsafe extern "C" {
995    pub fn scalblnl(_X: f64, _Y: ::core::ffi::c_long) -> f64;
996}
997unsafe extern "C" {
998    pub fn scalbnl(_X: f64, _Y: ::core::ffi::c_int) -> f64;
999}
1000unsafe extern "C" {
1001    pub fn tgammal(_X: f64) -> f64;
1002}
1003unsafe extern "C" {
1004    pub fn truncl(_X: f64) -> f64;
1005}
1006unsafe extern "C" {
1007    pub static mut HUGE: f64;
1008}
1009unsafe extern "C" {
1010    pub fn j0(_X: f64) -> f64;
1011}
1012unsafe extern "C" {
1013    pub fn j1(_X: f64) -> f64;
1014}
1015unsafe extern "C" {
1016    pub fn jn(_X: ::core::ffi::c_int, _Y: f64) -> f64;
1017}
1018unsafe extern "C" {
1019    pub fn y0(_X: f64) -> f64;
1020}
1021unsafe extern "C" {
1022    pub fn y1(_X: f64) -> f64;
1023}
1024unsafe extern "C" {
1025    pub fn yn(_X: ::core::ffi::c_int, _Y: f64) -> f64;
1026}
1027#[repr(C)]
1028#[derive(Debug, Copy, Clone)]
1029pub struct WGPUStringView {
1030    pub data: *const ::core::ffi::c_char,
1031    pub length: usize,
1032}
1033#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1034const _: () = {
1035    ["Size of WGPUStringView"][::core::mem::size_of::<WGPUStringView>() - 16usize];
1036    ["Alignment of WGPUStringView"][::core::mem::align_of::<WGPUStringView>() - 8usize];
1037    ["Offset of field: WGPUStringView::data"]
1038        [::core::mem::offset_of!(WGPUStringView, data) - 0usize];
1039    ["Offset of field: WGPUStringView::length"]
1040        [::core::mem::offset_of!(WGPUStringView, length) - 8usize];
1041};
1042pub type WGPUFlags = u64;
1043pub type WGPUBool = u32;
1044#[repr(C)]
1045#[derive(Debug, Copy, Clone)]
1046pub struct WGPUAdapterImpl {
1047    _unused: [u8; 0],
1048}
1049pub type WGPUAdapter = *mut WGPUAdapterImpl;
1050#[repr(C)]
1051#[derive(Debug, Copy, Clone)]
1052pub struct WGPUBindGroupImpl {
1053    _unused: [u8; 0],
1054}
1055pub type WGPUBindGroup = *mut WGPUBindGroupImpl;
1056#[repr(C)]
1057#[derive(Debug, Copy, Clone)]
1058pub struct WGPUBindGroupLayoutImpl {
1059    _unused: [u8; 0],
1060}
1061pub type WGPUBindGroupLayout = *mut WGPUBindGroupLayoutImpl;
1062#[repr(C)]
1063#[derive(Debug, Copy, Clone)]
1064pub struct WGPUBufferImpl {
1065    _unused: [u8; 0],
1066}
1067pub type WGPUBuffer = *mut WGPUBufferImpl;
1068#[repr(C)]
1069#[derive(Debug, Copy, Clone)]
1070pub struct WGPUCommandBufferImpl {
1071    _unused: [u8; 0],
1072}
1073pub type WGPUCommandBuffer = *mut WGPUCommandBufferImpl;
1074#[repr(C)]
1075#[derive(Debug, Copy, Clone)]
1076pub struct WGPUCommandEncoderImpl {
1077    _unused: [u8; 0],
1078}
1079pub type WGPUCommandEncoder = *mut WGPUCommandEncoderImpl;
1080#[repr(C)]
1081#[derive(Debug, Copy, Clone)]
1082pub struct WGPUComputePassEncoderImpl {
1083    _unused: [u8; 0],
1084}
1085pub type WGPUComputePassEncoder = *mut WGPUComputePassEncoderImpl;
1086#[repr(C)]
1087#[derive(Debug, Copy, Clone)]
1088pub struct WGPUComputePipelineImpl {
1089    _unused: [u8; 0],
1090}
1091pub type WGPUComputePipeline = *mut WGPUComputePipelineImpl;
1092#[repr(C)]
1093#[derive(Debug, Copy, Clone)]
1094pub struct WGPUDeviceImpl {
1095    _unused: [u8; 0],
1096}
1097pub type WGPUDevice = *mut WGPUDeviceImpl;
1098#[repr(C)]
1099#[derive(Debug, Copy, Clone)]
1100pub struct WGPUInstanceImpl {
1101    _unused: [u8; 0],
1102}
1103pub type WGPUInstance = *mut WGPUInstanceImpl;
1104#[repr(C)]
1105#[derive(Debug, Copy, Clone)]
1106pub struct WGPUPipelineLayoutImpl {
1107    _unused: [u8; 0],
1108}
1109pub type WGPUPipelineLayout = *mut WGPUPipelineLayoutImpl;
1110#[repr(C)]
1111#[derive(Debug, Copy, Clone)]
1112pub struct WGPUQuerySetImpl {
1113    _unused: [u8; 0],
1114}
1115pub type WGPUQuerySet = *mut WGPUQuerySetImpl;
1116#[repr(C)]
1117#[derive(Debug, Copy, Clone)]
1118pub struct WGPUQueueImpl {
1119    _unused: [u8; 0],
1120}
1121pub type WGPUQueue = *mut WGPUQueueImpl;
1122#[repr(C)]
1123#[derive(Debug, Copy, Clone)]
1124pub struct WGPURenderBundleImpl {
1125    _unused: [u8; 0],
1126}
1127pub type WGPURenderBundle = *mut WGPURenderBundleImpl;
1128#[repr(C)]
1129#[derive(Debug, Copy, Clone)]
1130pub struct WGPURenderBundleEncoderImpl {
1131    _unused: [u8; 0],
1132}
1133pub type WGPURenderBundleEncoder = *mut WGPURenderBundleEncoderImpl;
1134#[repr(C)]
1135#[derive(Debug, Copy, Clone)]
1136pub struct WGPURenderPassEncoderImpl {
1137    _unused: [u8; 0],
1138}
1139pub type WGPURenderPassEncoder = *mut WGPURenderPassEncoderImpl;
1140#[repr(C)]
1141#[derive(Debug, Copy, Clone)]
1142pub struct WGPURenderPipelineImpl {
1143    _unused: [u8; 0],
1144}
1145pub type WGPURenderPipeline = *mut WGPURenderPipelineImpl;
1146#[repr(C)]
1147#[derive(Debug, Copy, Clone)]
1148pub struct WGPUSamplerImpl {
1149    _unused: [u8; 0],
1150}
1151pub type WGPUSampler = *mut WGPUSamplerImpl;
1152#[repr(C)]
1153#[derive(Debug, Copy, Clone)]
1154pub struct WGPUShaderModuleImpl {
1155    _unused: [u8; 0],
1156}
1157pub type WGPUShaderModule = *mut WGPUShaderModuleImpl;
1158#[repr(C)]
1159#[derive(Debug, Copy, Clone)]
1160pub struct WGPUSurfaceImpl {
1161    _unused: [u8; 0],
1162}
1163pub type WGPUSurface = *mut WGPUSurfaceImpl;
1164#[repr(C)]
1165#[derive(Debug, Copy, Clone)]
1166pub struct WGPUTextureImpl {
1167    _unused: [u8; 0],
1168}
1169pub type WGPUTexture = *mut WGPUTextureImpl;
1170#[repr(C)]
1171#[derive(Debug, Copy, Clone)]
1172pub struct WGPUTextureViewImpl {
1173    _unused: [u8; 0],
1174}
1175pub type WGPUTextureView = *mut WGPUTextureViewImpl;
1176pub const WGPUAdapterType_WGPUAdapterType_DiscreteGPU: WGPUAdapterType = 1;
1177pub const WGPUAdapterType_WGPUAdapterType_IntegratedGPU: WGPUAdapterType = 2;
1178pub const WGPUAdapterType_WGPUAdapterType_CPU: WGPUAdapterType = 3;
1179pub const WGPUAdapterType_WGPUAdapterType_Unknown: WGPUAdapterType = 4;
1180pub const WGPUAdapterType_WGPUAdapterType_Force32: WGPUAdapterType = 2147483647;
1181pub type WGPUAdapterType = ::core::ffi::c_int;
1182pub const WGPUAddressMode_WGPUAddressMode_Undefined: WGPUAddressMode = 0;
1183pub const WGPUAddressMode_WGPUAddressMode_ClampToEdge: WGPUAddressMode = 1;
1184pub const WGPUAddressMode_WGPUAddressMode_Repeat: WGPUAddressMode = 2;
1185pub const WGPUAddressMode_WGPUAddressMode_MirrorRepeat: WGPUAddressMode = 3;
1186pub const WGPUAddressMode_WGPUAddressMode_Force32: WGPUAddressMode = 2147483647;
1187pub type WGPUAddressMode = ::core::ffi::c_int;
1188pub const WGPUBackendType_WGPUBackendType_Undefined: WGPUBackendType = 0;
1189pub const WGPUBackendType_WGPUBackendType_Null: WGPUBackendType = 1;
1190pub const WGPUBackendType_WGPUBackendType_WebGPU: WGPUBackendType = 2;
1191pub const WGPUBackendType_WGPUBackendType_D3D11: WGPUBackendType = 3;
1192pub const WGPUBackendType_WGPUBackendType_D3D12: WGPUBackendType = 4;
1193pub const WGPUBackendType_WGPUBackendType_Metal: WGPUBackendType = 5;
1194pub const WGPUBackendType_WGPUBackendType_Vulkan: WGPUBackendType = 6;
1195pub const WGPUBackendType_WGPUBackendType_OpenGL: WGPUBackendType = 7;
1196pub const WGPUBackendType_WGPUBackendType_OpenGLES: WGPUBackendType = 8;
1197pub const WGPUBackendType_WGPUBackendType_Force32: WGPUBackendType = 2147483647;
1198pub type WGPUBackendType = ::core::ffi::c_int;
1199pub const WGPUBlendFactor_WGPUBlendFactor_Undefined: WGPUBlendFactor = 0;
1200pub const WGPUBlendFactor_WGPUBlendFactor_Zero: WGPUBlendFactor = 1;
1201pub const WGPUBlendFactor_WGPUBlendFactor_One: WGPUBlendFactor = 2;
1202pub const WGPUBlendFactor_WGPUBlendFactor_Src: WGPUBlendFactor = 3;
1203pub const WGPUBlendFactor_WGPUBlendFactor_OneMinusSrc: WGPUBlendFactor = 4;
1204pub const WGPUBlendFactor_WGPUBlendFactor_SrcAlpha: WGPUBlendFactor = 5;
1205pub const WGPUBlendFactor_WGPUBlendFactor_OneMinusSrcAlpha: WGPUBlendFactor = 6;
1206pub const WGPUBlendFactor_WGPUBlendFactor_Dst: WGPUBlendFactor = 7;
1207pub const WGPUBlendFactor_WGPUBlendFactor_OneMinusDst: WGPUBlendFactor = 8;
1208pub const WGPUBlendFactor_WGPUBlendFactor_DstAlpha: WGPUBlendFactor = 9;
1209pub const WGPUBlendFactor_WGPUBlendFactor_OneMinusDstAlpha: WGPUBlendFactor = 10;
1210pub const WGPUBlendFactor_WGPUBlendFactor_SrcAlphaSaturated: WGPUBlendFactor = 11;
1211pub const WGPUBlendFactor_WGPUBlendFactor_Constant: WGPUBlendFactor = 12;
1212pub const WGPUBlendFactor_WGPUBlendFactor_OneMinusConstant: WGPUBlendFactor = 13;
1213pub const WGPUBlendFactor_WGPUBlendFactor_Src1: WGPUBlendFactor = 14;
1214pub const WGPUBlendFactor_WGPUBlendFactor_OneMinusSrc1: WGPUBlendFactor = 15;
1215pub const WGPUBlendFactor_WGPUBlendFactor_Src1Alpha: WGPUBlendFactor = 16;
1216pub const WGPUBlendFactor_WGPUBlendFactor_OneMinusSrc1Alpha: WGPUBlendFactor = 17;
1217pub const WGPUBlendFactor_WGPUBlendFactor_Force32: WGPUBlendFactor = 2147483647;
1218pub type WGPUBlendFactor = ::core::ffi::c_int;
1219pub const WGPUBlendOperation_WGPUBlendOperation_Undefined: WGPUBlendOperation = 0;
1220pub const WGPUBlendOperation_WGPUBlendOperation_Add: WGPUBlendOperation = 1;
1221pub const WGPUBlendOperation_WGPUBlendOperation_Subtract: WGPUBlendOperation = 2;
1222pub const WGPUBlendOperation_WGPUBlendOperation_ReverseSubtract: WGPUBlendOperation = 3;
1223pub const WGPUBlendOperation_WGPUBlendOperation_Min: WGPUBlendOperation = 4;
1224pub const WGPUBlendOperation_WGPUBlendOperation_Max: WGPUBlendOperation = 5;
1225pub const WGPUBlendOperation_WGPUBlendOperation_Force32: WGPUBlendOperation = 2147483647;
1226pub type WGPUBlendOperation = ::core::ffi::c_int;
1227pub const WGPUBufferBindingType_WGPUBufferBindingType_BindingNotUsed: WGPUBufferBindingType = 0;
1228pub const WGPUBufferBindingType_WGPUBufferBindingType_Undefined: WGPUBufferBindingType = 1;
1229pub const WGPUBufferBindingType_WGPUBufferBindingType_Uniform: WGPUBufferBindingType = 2;
1230pub const WGPUBufferBindingType_WGPUBufferBindingType_Storage: WGPUBufferBindingType = 3;
1231pub const WGPUBufferBindingType_WGPUBufferBindingType_ReadOnlyStorage: WGPUBufferBindingType = 4;
1232pub const WGPUBufferBindingType_WGPUBufferBindingType_Force32: WGPUBufferBindingType = 2147483647;
1233pub type WGPUBufferBindingType = ::core::ffi::c_int;
1234pub const WGPUBufferMapState_WGPUBufferMapState_Unmapped: WGPUBufferMapState = 1;
1235pub const WGPUBufferMapState_WGPUBufferMapState_Pending: WGPUBufferMapState = 2;
1236pub const WGPUBufferMapState_WGPUBufferMapState_Mapped: WGPUBufferMapState = 3;
1237pub const WGPUBufferMapState_WGPUBufferMapState_Force32: WGPUBufferMapState = 2147483647;
1238pub type WGPUBufferMapState = ::core::ffi::c_int;
1239pub const WGPUCallbackMode_WGPUCallbackMode_WaitAnyOnly: WGPUCallbackMode = 1;
1240pub const WGPUCallbackMode_WGPUCallbackMode_AllowProcessEvents: WGPUCallbackMode = 2;
1241pub const WGPUCallbackMode_WGPUCallbackMode_AllowSpontaneous: WGPUCallbackMode = 3;
1242pub const WGPUCallbackMode_WGPUCallbackMode_Force32: WGPUCallbackMode = 2147483647;
1243pub type WGPUCallbackMode = ::core::ffi::c_int;
1244pub const WGPUCompareFunction_WGPUCompareFunction_Undefined: WGPUCompareFunction = 0;
1245pub const WGPUCompareFunction_WGPUCompareFunction_Never: WGPUCompareFunction = 1;
1246pub const WGPUCompareFunction_WGPUCompareFunction_Less: WGPUCompareFunction = 2;
1247pub const WGPUCompareFunction_WGPUCompareFunction_Equal: WGPUCompareFunction = 3;
1248pub const WGPUCompareFunction_WGPUCompareFunction_LessEqual: WGPUCompareFunction = 4;
1249pub const WGPUCompareFunction_WGPUCompareFunction_Greater: WGPUCompareFunction = 5;
1250pub const WGPUCompareFunction_WGPUCompareFunction_NotEqual: WGPUCompareFunction = 6;
1251pub const WGPUCompareFunction_WGPUCompareFunction_GreaterEqual: WGPUCompareFunction = 7;
1252pub const WGPUCompareFunction_WGPUCompareFunction_Always: WGPUCompareFunction = 8;
1253pub const WGPUCompareFunction_WGPUCompareFunction_Force32: WGPUCompareFunction = 2147483647;
1254pub type WGPUCompareFunction = ::core::ffi::c_int;
1255pub const WGPUCompilationInfoRequestStatus_WGPUCompilationInfoRequestStatus_Success:
1256    WGPUCompilationInfoRequestStatus = 1;
1257pub const WGPUCompilationInfoRequestStatus_WGPUCompilationInfoRequestStatus_CallbackCancelled:
1258    WGPUCompilationInfoRequestStatus = 2;
1259pub const WGPUCompilationInfoRequestStatus_WGPUCompilationInfoRequestStatus_Force32:
1260    WGPUCompilationInfoRequestStatus = 2147483647;
1261pub type WGPUCompilationInfoRequestStatus = ::core::ffi::c_int;
1262pub const WGPUCompilationMessageType_WGPUCompilationMessageType_Error: WGPUCompilationMessageType =
1263    1;
1264pub const WGPUCompilationMessageType_WGPUCompilationMessageType_Warning:
1265    WGPUCompilationMessageType = 2;
1266pub const WGPUCompilationMessageType_WGPUCompilationMessageType_Info: WGPUCompilationMessageType =
1267    3;
1268pub const WGPUCompilationMessageType_WGPUCompilationMessageType_Force32:
1269    WGPUCompilationMessageType = 2147483647;
1270pub type WGPUCompilationMessageType = ::core::ffi::c_int;
1271pub const WGPUCompositeAlphaMode_WGPUCompositeAlphaMode_Auto: WGPUCompositeAlphaMode = 0;
1272pub const WGPUCompositeAlphaMode_WGPUCompositeAlphaMode_Opaque: WGPUCompositeAlphaMode = 1;
1273pub const WGPUCompositeAlphaMode_WGPUCompositeAlphaMode_Premultiplied: WGPUCompositeAlphaMode = 2;
1274pub const WGPUCompositeAlphaMode_WGPUCompositeAlphaMode_Unpremultiplied: WGPUCompositeAlphaMode = 3;
1275pub const WGPUCompositeAlphaMode_WGPUCompositeAlphaMode_Inherit: WGPUCompositeAlphaMode = 4;
1276pub const WGPUCompositeAlphaMode_WGPUCompositeAlphaMode_Force32: WGPUCompositeAlphaMode =
1277    2147483647;
1278pub type WGPUCompositeAlphaMode = ::core::ffi::c_int;
1279pub const WGPUCreatePipelineAsyncStatus_WGPUCreatePipelineAsyncStatus_Success:
1280    WGPUCreatePipelineAsyncStatus = 1;
1281pub const WGPUCreatePipelineAsyncStatus_WGPUCreatePipelineAsyncStatus_CallbackCancelled:
1282    WGPUCreatePipelineAsyncStatus = 2;
1283pub const WGPUCreatePipelineAsyncStatus_WGPUCreatePipelineAsyncStatus_ValidationError:
1284    WGPUCreatePipelineAsyncStatus = 3;
1285pub const WGPUCreatePipelineAsyncStatus_WGPUCreatePipelineAsyncStatus_InternalError:
1286    WGPUCreatePipelineAsyncStatus = 4;
1287pub const WGPUCreatePipelineAsyncStatus_WGPUCreatePipelineAsyncStatus_Force32:
1288    WGPUCreatePipelineAsyncStatus = 2147483647;
1289pub type WGPUCreatePipelineAsyncStatus = ::core::ffi::c_int;
1290pub const WGPUCullMode_WGPUCullMode_Undefined: WGPUCullMode = 0;
1291pub const WGPUCullMode_WGPUCullMode_None: WGPUCullMode = 1;
1292pub const WGPUCullMode_WGPUCullMode_Front: WGPUCullMode = 2;
1293pub const WGPUCullMode_WGPUCullMode_Back: WGPUCullMode = 3;
1294pub const WGPUCullMode_WGPUCullMode_Force32: WGPUCullMode = 2147483647;
1295pub type WGPUCullMode = ::core::ffi::c_int;
1296pub const WGPUDeviceLostReason_WGPUDeviceLostReason_Unknown: WGPUDeviceLostReason = 1;
1297pub const WGPUDeviceLostReason_WGPUDeviceLostReason_Destroyed: WGPUDeviceLostReason = 2;
1298pub const WGPUDeviceLostReason_WGPUDeviceLostReason_CallbackCancelled: WGPUDeviceLostReason = 3;
1299pub const WGPUDeviceLostReason_WGPUDeviceLostReason_FailedCreation: WGPUDeviceLostReason = 4;
1300pub const WGPUDeviceLostReason_WGPUDeviceLostReason_Force32: WGPUDeviceLostReason = 2147483647;
1301pub type WGPUDeviceLostReason = ::core::ffi::c_int;
1302pub const WGPUErrorFilter_WGPUErrorFilter_Validation: WGPUErrorFilter = 1;
1303pub const WGPUErrorFilter_WGPUErrorFilter_OutOfMemory: WGPUErrorFilter = 2;
1304pub const WGPUErrorFilter_WGPUErrorFilter_Internal: WGPUErrorFilter = 3;
1305pub const WGPUErrorFilter_WGPUErrorFilter_Force32: WGPUErrorFilter = 2147483647;
1306pub type WGPUErrorFilter = ::core::ffi::c_int;
1307pub const WGPUErrorType_WGPUErrorType_NoError: WGPUErrorType = 1;
1308pub const WGPUErrorType_WGPUErrorType_Validation: WGPUErrorType = 2;
1309pub const WGPUErrorType_WGPUErrorType_OutOfMemory: WGPUErrorType = 3;
1310pub const WGPUErrorType_WGPUErrorType_Internal: WGPUErrorType = 4;
1311pub const WGPUErrorType_WGPUErrorType_Unknown: WGPUErrorType = 5;
1312pub const WGPUErrorType_WGPUErrorType_Force32: WGPUErrorType = 2147483647;
1313pub type WGPUErrorType = ::core::ffi::c_int;
1314pub const WGPUFeatureLevel_WGPUFeatureLevel_Undefined: WGPUFeatureLevel = 0;
1315pub const WGPUFeatureLevel_WGPUFeatureLevel_Compatibility: WGPUFeatureLevel = 1;
1316pub const WGPUFeatureLevel_WGPUFeatureLevel_Core: WGPUFeatureLevel = 2;
1317pub const WGPUFeatureLevel_WGPUFeatureLevel_Force32: WGPUFeatureLevel = 2147483647;
1318pub type WGPUFeatureLevel = ::core::ffi::c_int;
1319pub const WGPUFeatureName_WGPUFeatureName_DepthClipControl: WGPUFeatureName = 1;
1320pub const WGPUFeatureName_WGPUFeatureName_Depth32FloatStencil8: WGPUFeatureName = 2;
1321pub const WGPUFeatureName_WGPUFeatureName_TimestampQuery: WGPUFeatureName = 3;
1322pub const WGPUFeatureName_WGPUFeatureName_TextureCompressionBC: WGPUFeatureName = 4;
1323pub const WGPUFeatureName_WGPUFeatureName_TextureCompressionBCSliced3D: WGPUFeatureName = 5;
1324pub const WGPUFeatureName_WGPUFeatureName_TextureCompressionETC2: WGPUFeatureName = 6;
1325pub const WGPUFeatureName_WGPUFeatureName_TextureCompressionASTC: WGPUFeatureName = 7;
1326pub const WGPUFeatureName_WGPUFeatureName_TextureCompressionASTCSliced3D: WGPUFeatureName = 8;
1327pub const WGPUFeatureName_WGPUFeatureName_IndirectFirstInstance: WGPUFeatureName = 9;
1328pub const WGPUFeatureName_WGPUFeatureName_ShaderF16: WGPUFeatureName = 10;
1329pub const WGPUFeatureName_WGPUFeatureName_RG11B10UfloatRenderable: WGPUFeatureName = 11;
1330pub const WGPUFeatureName_WGPUFeatureName_BGRA8UnormStorage: WGPUFeatureName = 12;
1331pub const WGPUFeatureName_WGPUFeatureName_Float32Filterable: WGPUFeatureName = 13;
1332pub const WGPUFeatureName_WGPUFeatureName_Float32Blendable: WGPUFeatureName = 14;
1333pub const WGPUFeatureName_WGPUFeatureName_ClipDistances: WGPUFeatureName = 15;
1334pub const WGPUFeatureName_WGPUFeatureName_DualSourceBlending: WGPUFeatureName = 16;
1335pub const WGPUFeatureName_WGPUFeatureName_Subgroups: WGPUFeatureName = 17;
1336pub const WGPUFeatureName_WGPUFeatureName_Force32: WGPUFeatureName = 2147483647;
1337pub type WGPUFeatureName = ::core::ffi::c_int;
1338pub const WGPUFilterMode_WGPUFilterMode_Undefined: WGPUFilterMode = 0;
1339pub const WGPUFilterMode_WGPUFilterMode_Nearest: WGPUFilterMode = 1;
1340pub const WGPUFilterMode_WGPUFilterMode_Linear: WGPUFilterMode = 2;
1341pub const WGPUFilterMode_WGPUFilterMode_Force32: WGPUFilterMode = 2147483647;
1342pub type WGPUFilterMode = ::core::ffi::c_int;
1343pub const WGPUFrontFace_WGPUFrontFace_Undefined: WGPUFrontFace = 0;
1344pub const WGPUFrontFace_WGPUFrontFace_CCW: WGPUFrontFace = 1;
1345pub const WGPUFrontFace_WGPUFrontFace_CW: WGPUFrontFace = 2;
1346pub const WGPUFrontFace_WGPUFrontFace_Force32: WGPUFrontFace = 2147483647;
1347pub type WGPUFrontFace = ::core::ffi::c_int;
1348pub const WGPUIndexFormat_WGPUIndexFormat_Undefined: WGPUIndexFormat = 0;
1349pub const WGPUIndexFormat_WGPUIndexFormat_Uint16: WGPUIndexFormat = 1;
1350pub const WGPUIndexFormat_WGPUIndexFormat_Uint32: WGPUIndexFormat = 2;
1351pub const WGPUIndexFormat_WGPUIndexFormat_Force32: WGPUIndexFormat = 2147483647;
1352pub type WGPUIndexFormat = ::core::ffi::c_int;
1353pub const WGPUInstanceFeatureName_WGPUInstanceFeatureName_TimedWaitAnyEnable:
1354    WGPUInstanceFeatureName = 1;
1355pub const WGPUInstanceFeatureName_WGPUInstanceFeatureName_ShaderSourceSPIRV:
1356    WGPUInstanceFeatureName = 2;
1357pub const WGPUInstanceFeatureName_WGPUInstanceFeatureName_MultipleDevicesPerAdapter:
1358    WGPUInstanceFeatureName = 3;
1359pub const WGPUInstanceFeatureName_WGPUInstanceFeatureName_Force32: WGPUInstanceFeatureName =
1360    2147483647;
1361pub type WGPUInstanceFeatureName = ::core::ffi::c_int;
1362pub const WGPULoadOp_WGPULoadOp_Undefined: WGPULoadOp = 0;
1363pub const WGPULoadOp_WGPULoadOp_Load: WGPULoadOp = 1;
1364pub const WGPULoadOp_WGPULoadOp_Clear: WGPULoadOp = 2;
1365pub const WGPULoadOp_WGPULoadOp_Force32: WGPULoadOp = 2147483647;
1366pub type WGPULoadOp = ::core::ffi::c_int;
1367pub const WGPUMapAsyncStatus_WGPUMapAsyncStatus_Success: WGPUMapAsyncStatus = 1;
1368pub const WGPUMapAsyncStatus_WGPUMapAsyncStatus_CallbackCancelled: WGPUMapAsyncStatus = 2;
1369pub const WGPUMapAsyncStatus_WGPUMapAsyncStatus_Error: WGPUMapAsyncStatus = 3;
1370pub const WGPUMapAsyncStatus_WGPUMapAsyncStatus_Aborted: WGPUMapAsyncStatus = 4;
1371pub const WGPUMapAsyncStatus_WGPUMapAsyncStatus_Force32: WGPUMapAsyncStatus = 2147483647;
1372pub type WGPUMapAsyncStatus = ::core::ffi::c_int;
1373pub const WGPUMipmapFilterMode_WGPUMipmapFilterMode_Undefined: WGPUMipmapFilterMode = 0;
1374pub const WGPUMipmapFilterMode_WGPUMipmapFilterMode_Nearest: WGPUMipmapFilterMode = 1;
1375pub const WGPUMipmapFilterMode_WGPUMipmapFilterMode_Linear: WGPUMipmapFilterMode = 2;
1376pub const WGPUMipmapFilterMode_WGPUMipmapFilterMode_Force32: WGPUMipmapFilterMode = 2147483647;
1377pub type WGPUMipmapFilterMode = ::core::ffi::c_int;
1378pub const WGPUOptionalBool_WGPUOptionalBool_False: WGPUOptionalBool = 0;
1379pub const WGPUOptionalBool_WGPUOptionalBool_True: WGPUOptionalBool = 1;
1380pub const WGPUOptionalBool_WGPUOptionalBool_Undefined: WGPUOptionalBool = 2;
1381pub const WGPUOptionalBool_WGPUOptionalBool_Force32: WGPUOptionalBool = 2147483647;
1382pub type WGPUOptionalBool = ::core::ffi::c_int;
1383pub const WGPUPopErrorScopeStatus_WGPUPopErrorScopeStatus_Success: WGPUPopErrorScopeStatus = 1;
1384pub const WGPUPopErrorScopeStatus_WGPUPopErrorScopeStatus_CallbackCancelled:
1385    WGPUPopErrorScopeStatus = 2;
1386pub const WGPUPopErrorScopeStatus_WGPUPopErrorScopeStatus_Error: WGPUPopErrorScopeStatus = 3;
1387pub const WGPUPopErrorScopeStatus_WGPUPopErrorScopeStatus_Force32: WGPUPopErrorScopeStatus =
1388    2147483647;
1389pub type WGPUPopErrorScopeStatus = ::core::ffi::c_int;
1390pub const WGPUPowerPreference_WGPUPowerPreference_Undefined: WGPUPowerPreference = 0;
1391pub const WGPUPowerPreference_WGPUPowerPreference_LowPower: WGPUPowerPreference = 1;
1392pub const WGPUPowerPreference_WGPUPowerPreference_HighPerformance: WGPUPowerPreference = 2;
1393pub const WGPUPowerPreference_WGPUPowerPreference_Force32: WGPUPowerPreference = 2147483647;
1394pub type WGPUPowerPreference = ::core::ffi::c_int;
1395pub const WGPUPredefinedColorSpace_WGPUPredefinedColorSpace_SRGB: WGPUPredefinedColorSpace = 1;
1396pub const WGPUPredefinedColorSpace_WGPUPredefinedColorSpace_DisplayP3: WGPUPredefinedColorSpace = 2;
1397pub const WGPUPredefinedColorSpace_WGPUPredefinedColorSpace_Force32: WGPUPredefinedColorSpace =
1398    2147483647;
1399pub type WGPUPredefinedColorSpace = ::core::ffi::c_int;
1400pub const WGPUPresentMode_WGPUPresentMode_Undefined: WGPUPresentMode = 0;
1401pub const WGPUPresentMode_WGPUPresentMode_Fifo: WGPUPresentMode = 1;
1402pub const WGPUPresentMode_WGPUPresentMode_FifoRelaxed: WGPUPresentMode = 2;
1403pub const WGPUPresentMode_WGPUPresentMode_Immediate: WGPUPresentMode = 3;
1404pub const WGPUPresentMode_WGPUPresentMode_Mailbox: WGPUPresentMode = 4;
1405pub const WGPUPresentMode_WGPUPresentMode_Force32: WGPUPresentMode = 2147483647;
1406pub type WGPUPresentMode = ::core::ffi::c_int;
1407pub const WGPUPrimitiveTopology_WGPUPrimitiveTopology_Undefined: WGPUPrimitiveTopology = 0;
1408pub const WGPUPrimitiveTopology_WGPUPrimitiveTopology_PointList: WGPUPrimitiveTopology = 1;
1409pub const WGPUPrimitiveTopology_WGPUPrimitiveTopology_LineList: WGPUPrimitiveTopology = 2;
1410pub const WGPUPrimitiveTopology_WGPUPrimitiveTopology_LineStrip: WGPUPrimitiveTopology = 3;
1411pub const WGPUPrimitiveTopology_WGPUPrimitiveTopology_TriangleList: WGPUPrimitiveTopology = 4;
1412pub const WGPUPrimitiveTopology_WGPUPrimitiveTopology_TriangleStrip: WGPUPrimitiveTopology = 5;
1413pub const WGPUPrimitiveTopology_WGPUPrimitiveTopology_Force32: WGPUPrimitiveTopology = 2147483647;
1414pub type WGPUPrimitiveTopology = ::core::ffi::c_int;
1415pub const WGPUQueryType_WGPUQueryType_Occlusion: WGPUQueryType = 1;
1416pub const WGPUQueryType_WGPUQueryType_Timestamp: WGPUQueryType = 2;
1417pub const WGPUQueryType_WGPUQueryType_Force32: WGPUQueryType = 2147483647;
1418pub type WGPUQueryType = ::core::ffi::c_int;
1419pub const WGPUQueueWorkDoneStatus_WGPUQueueWorkDoneStatus_Success: WGPUQueueWorkDoneStatus = 1;
1420pub const WGPUQueueWorkDoneStatus_WGPUQueueWorkDoneStatus_CallbackCancelled:
1421    WGPUQueueWorkDoneStatus = 2;
1422pub const WGPUQueueWorkDoneStatus_WGPUQueueWorkDoneStatus_Error: WGPUQueueWorkDoneStatus = 3;
1423pub const WGPUQueueWorkDoneStatus_WGPUQueueWorkDoneStatus_Force32: WGPUQueueWorkDoneStatus =
1424    2147483647;
1425pub type WGPUQueueWorkDoneStatus = ::core::ffi::c_int;
1426pub const WGPURequestAdapterStatus_WGPURequestAdapterStatus_Success: WGPURequestAdapterStatus = 1;
1427pub const WGPURequestAdapterStatus_WGPURequestAdapterStatus_CallbackCancelled:
1428    WGPURequestAdapterStatus = 2;
1429pub const WGPURequestAdapterStatus_WGPURequestAdapterStatus_Unavailable: WGPURequestAdapterStatus =
1430    3;
1431pub const WGPURequestAdapterStatus_WGPURequestAdapterStatus_Error: WGPURequestAdapterStatus = 4;
1432pub const WGPURequestAdapterStatus_WGPURequestAdapterStatus_Force32: WGPURequestAdapterStatus =
1433    2147483647;
1434pub type WGPURequestAdapterStatus = ::core::ffi::c_int;
1435pub const WGPURequestDeviceStatus_WGPURequestDeviceStatus_Success: WGPURequestDeviceStatus = 1;
1436pub const WGPURequestDeviceStatus_WGPURequestDeviceStatus_CallbackCancelled:
1437    WGPURequestDeviceStatus = 2;
1438pub const WGPURequestDeviceStatus_WGPURequestDeviceStatus_Error: WGPURequestDeviceStatus = 3;
1439pub const WGPURequestDeviceStatus_WGPURequestDeviceStatus_Force32: WGPURequestDeviceStatus =
1440    2147483647;
1441pub type WGPURequestDeviceStatus = ::core::ffi::c_int;
1442pub const WGPUSamplerBindingType_WGPUSamplerBindingType_BindingNotUsed: WGPUSamplerBindingType = 0;
1443pub const WGPUSamplerBindingType_WGPUSamplerBindingType_Undefined: WGPUSamplerBindingType = 1;
1444pub const WGPUSamplerBindingType_WGPUSamplerBindingType_Filtering: WGPUSamplerBindingType = 2;
1445pub const WGPUSamplerBindingType_WGPUSamplerBindingType_NonFiltering: WGPUSamplerBindingType = 3;
1446pub const WGPUSamplerBindingType_WGPUSamplerBindingType_Comparison: WGPUSamplerBindingType = 4;
1447pub const WGPUSamplerBindingType_WGPUSamplerBindingType_Force32: WGPUSamplerBindingType =
1448    2147483647;
1449pub type WGPUSamplerBindingType = ::core::ffi::c_int;
1450pub const WGPUStatus_WGPUStatus_Success: WGPUStatus = 1;
1451pub const WGPUStatus_WGPUStatus_Error: WGPUStatus = 2;
1452pub const WGPUStatus_WGPUStatus_Force32: WGPUStatus = 2147483647;
1453pub type WGPUStatus = ::core::ffi::c_int;
1454pub const WGPUStencilOperation_WGPUStencilOperation_Undefined: WGPUStencilOperation = 0;
1455pub const WGPUStencilOperation_WGPUStencilOperation_Keep: WGPUStencilOperation = 1;
1456pub const WGPUStencilOperation_WGPUStencilOperation_Zero: WGPUStencilOperation = 2;
1457pub const WGPUStencilOperation_WGPUStencilOperation_Replace: WGPUStencilOperation = 3;
1458pub const WGPUStencilOperation_WGPUStencilOperation_Invert: WGPUStencilOperation = 4;
1459pub const WGPUStencilOperation_WGPUStencilOperation_IncrementClamp: WGPUStencilOperation = 5;
1460pub const WGPUStencilOperation_WGPUStencilOperation_DecrementClamp: WGPUStencilOperation = 6;
1461pub const WGPUStencilOperation_WGPUStencilOperation_IncrementWrap: WGPUStencilOperation = 7;
1462pub const WGPUStencilOperation_WGPUStencilOperation_DecrementWrap: WGPUStencilOperation = 8;
1463pub const WGPUStencilOperation_WGPUStencilOperation_Force32: WGPUStencilOperation = 2147483647;
1464pub type WGPUStencilOperation = ::core::ffi::c_int;
1465pub const WGPUStorageTextureAccess_WGPUStorageTextureAccess_BindingNotUsed:
1466    WGPUStorageTextureAccess = 0;
1467pub const WGPUStorageTextureAccess_WGPUStorageTextureAccess_Undefined: WGPUStorageTextureAccess = 1;
1468pub const WGPUStorageTextureAccess_WGPUStorageTextureAccess_WriteOnly: WGPUStorageTextureAccess = 2;
1469pub const WGPUStorageTextureAccess_WGPUStorageTextureAccess_ReadOnly: WGPUStorageTextureAccess = 3;
1470pub const WGPUStorageTextureAccess_WGPUStorageTextureAccess_ReadWrite: WGPUStorageTextureAccess = 4;
1471pub const WGPUStorageTextureAccess_WGPUStorageTextureAccess_Force32: WGPUStorageTextureAccess =
1472    2147483647;
1473pub type WGPUStorageTextureAccess = ::core::ffi::c_int;
1474pub const WGPUStoreOp_WGPUStoreOp_Undefined: WGPUStoreOp = 0;
1475pub const WGPUStoreOp_WGPUStoreOp_Store: WGPUStoreOp = 1;
1476pub const WGPUStoreOp_WGPUStoreOp_Discard: WGPUStoreOp = 2;
1477pub const WGPUStoreOp_WGPUStoreOp_Force32: WGPUStoreOp = 2147483647;
1478pub type WGPUStoreOp = ::core::ffi::c_int;
1479pub const WGPUSType_WGPUSType_ShaderSourceSPIRV: WGPUSType = 1;
1480pub const WGPUSType_WGPUSType_ShaderSourceWGSL: WGPUSType = 2;
1481pub const WGPUSType_WGPUSType_RenderPassMaxDrawCount: WGPUSType = 3;
1482pub const WGPUSType_WGPUSType_SurfaceSourceMetalLayer: WGPUSType = 4;
1483pub const WGPUSType_WGPUSType_SurfaceSourceWindowsHWND: WGPUSType = 5;
1484pub const WGPUSType_WGPUSType_SurfaceSourceXlibWindow: WGPUSType = 6;
1485pub const WGPUSType_WGPUSType_SurfaceSourceWaylandSurface: WGPUSType = 7;
1486pub const WGPUSType_WGPUSType_SurfaceSourceAndroidNativeWindow: WGPUSType = 8;
1487pub const WGPUSType_WGPUSType_SurfaceSourceXCBWindow: WGPUSType = 9;
1488pub const WGPUSType_WGPUSType_SurfaceColorManagement: WGPUSType = 10;
1489pub const WGPUSType_WGPUSType_RequestAdapterWebXROptions: WGPUSType = 11;
1490pub const WGPUSType_WGPUSType_Force32: WGPUSType = 2147483647;
1491pub type WGPUSType = ::core::ffi::c_int;
1492pub const WGPUSurfaceGetCurrentTextureStatus_WGPUSurfaceGetCurrentTextureStatus_SuccessOptimal:
1493    WGPUSurfaceGetCurrentTextureStatus = 1;
1494pub const WGPUSurfaceGetCurrentTextureStatus_WGPUSurfaceGetCurrentTextureStatus_SuccessSuboptimal : WGPUSurfaceGetCurrentTextureStatus = 2 ;
1495pub const WGPUSurfaceGetCurrentTextureStatus_WGPUSurfaceGetCurrentTextureStatus_Timeout:
1496    WGPUSurfaceGetCurrentTextureStatus = 3;
1497pub const WGPUSurfaceGetCurrentTextureStatus_WGPUSurfaceGetCurrentTextureStatus_Outdated:
1498    WGPUSurfaceGetCurrentTextureStatus = 4;
1499pub const WGPUSurfaceGetCurrentTextureStatus_WGPUSurfaceGetCurrentTextureStatus_Lost:
1500    WGPUSurfaceGetCurrentTextureStatus = 5;
1501pub const WGPUSurfaceGetCurrentTextureStatus_WGPUSurfaceGetCurrentTextureStatus_Error:
1502    WGPUSurfaceGetCurrentTextureStatus = 6;
1503pub const WGPUSurfaceGetCurrentTextureStatus_WGPUSurfaceGetCurrentTextureStatus_Force32:
1504    WGPUSurfaceGetCurrentTextureStatus = 2147483647;
1505pub type WGPUSurfaceGetCurrentTextureStatus = ::core::ffi::c_int;
1506pub const WGPUTextureAspect_WGPUTextureAspect_Undefined: WGPUTextureAspect = 0;
1507pub const WGPUTextureAspect_WGPUTextureAspect_All: WGPUTextureAspect = 1;
1508pub const WGPUTextureAspect_WGPUTextureAspect_StencilOnly: WGPUTextureAspect = 2;
1509pub const WGPUTextureAspect_WGPUTextureAspect_DepthOnly: WGPUTextureAspect = 3;
1510pub const WGPUTextureAspect_WGPUTextureAspect_Force32: WGPUTextureAspect = 2147483647;
1511pub type WGPUTextureAspect = ::core::ffi::c_int;
1512pub const WGPUTextureDimension_WGPUTextureDimension_Undefined: WGPUTextureDimension = 0;
1513pub const WGPUTextureDimension_WGPUTextureDimension_1D: WGPUTextureDimension = 1;
1514pub const WGPUTextureDimension_WGPUTextureDimension_2D: WGPUTextureDimension = 2;
1515pub const WGPUTextureDimension_WGPUTextureDimension_3D: WGPUTextureDimension = 3;
1516pub const WGPUTextureDimension_WGPUTextureDimension_Force32: WGPUTextureDimension = 2147483647;
1517pub type WGPUTextureDimension = ::core::ffi::c_int;
1518pub const WGPUTextureFormat_WGPUTextureFormat_Undefined: WGPUTextureFormat = 0;
1519pub const WGPUTextureFormat_WGPUTextureFormat_R8Unorm: WGPUTextureFormat = 1;
1520pub const WGPUTextureFormat_WGPUTextureFormat_R8Snorm: WGPUTextureFormat = 2;
1521pub const WGPUTextureFormat_WGPUTextureFormat_R8Uint: WGPUTextureFormat = 3;
1522pub const WGPUTextureFormat_WGPUTextureFormat_R8Sint: WGPUTextureFormat = 4;
1523pub const WGPUTextureFormat_WGPUTextureFormat_R16Uint: WGPUTextureFormat = 5;
1524pub const WGPUTextureFormat_WGPUTextureFormat_R16Sint: WGPUTextureFormat = 6;
1525pub const WGPUTextureFormat_WGPUTextureFormat_R16Float: WGPUTextureFormat = 7;
1526pub const WGPUTextureFormat_WGPUTextureFormat_RG8Unorm: WGPUTextureFormat = 8;
1527pub const WGPUTextureFormat_WGPUTextureFormat_RG8Snorm: WGPUTextureFormat = 9;
1528pub const WGPUTextureFormat_WGPUTextureFormat_RG8Uint: WGPUTextureFormat = 10;
1529pub const WGPUTextureFormat_WGPUTextureFormat_RG8Sint: WGPUTextureFormat = 11;
1530pub const WGPUTextureFormat_WGPUTextureFormat_R32Float: WGPUTextureFormat = 12;
1531pub const WGPUTextureFormat_WGPUTextureFormat_R32Uint: WGPUTextureFormat = 13;
1532pub const WGPUTextureFormat_WGPUTextureFormat_R32Sint: WGPUTextureFormat = 14;
1533pub const WGPUTextureFormat_WGPUTextureFormat_RG16Uint: WGPUTextureFormat = 15;
1534pub const WGPUTextureFormat_WGPUTextureFormat_RG16Sint: WGPUTextureFormat = 16;
1535pub const WGPUTextureFormat_WGPUTextureFormat_RG16Float: WGPUTextureFormat = 17;
1536pub const WGPUTextureFormat_WGPUTextureFormat_RGBA8Unorm: WGPUTextureFormat = 18;
1537pub const WGPUTextureFormat_WGPUTextureFormat_RGBA8UnormSrgb: WGPUTextureFormat = 19;
1538pub const WGPUTextureFormat_WGPUTextureFormat_RGBA8Snorm: WGPUTextureFormat = 20;
1539pub const WGPUTextureFormat_WGPUTextureFormat_RGBA8Uint: WGPUTextureFormat = 21;
1540pub const WGPUTextureFormat_WGPUTextureFormat_RGBA8Sint: WGPUTextureFormat = 22;
1541pub const WGPUTextureFormat_WGPUTextureFormat_BGRA8Unorm: WGPUTextureFormat = 23;
1542pub const WGPUTextureFormat_WGPUTextureFormat_BGRA8UnormSrgb: WGPUTextureFormat = 24;
1543pub const WGPUTextureFormat_WGPUTextureFormat_RGB10A2Uint: WGPUTextureFormat = 25;
1544pub const WGPUTextureFormat_WGPUTextureFormat_RGB10A2Unorm: WGPUTextureFormat = 26;
1545pub const WGPUTextureFormat_WGPUTextureFormat_RG11B10Ufloat: WGPUTextureFormat = 27;
1546pub const WGPUTextureFormat_WGPUTextureFormat_RGB9E5Ufloat: WGPUTextureFormat = 28;
1547pub const WGPUTextureFormat_WGPUTextureFormat_RG32Float: WGPUTextureFormat = 29;
1548pub const WGPUTextureFormat_WGPUTextureFormat_RG32Uint: WGPUTextureFormat = 30;
1549pub const WGPUTextureFormat_WGPUTextureFormat_RG32Sint: WGPUTextureFormat = 31;
1550pub const WGPUTextureFormat_WGPUTextureFormat_RGBA16Uint: WGPUTextureFormat = 32;
1551pub const WGPUTextureFormat_WGPUTextureFormat_RGBA16Sint: WGPUTextureFormat = 33;
1552pub const WGPUTextureFormat_WGPUTextureFormat_RGBA16Float: WGPUTextureFormat = 34;
1553pub const WGPUTextureFormat_WGPUTextureFormat_RGBA32Float: WGPUTextureFormat = 35;
1554pub const WGPUTextureFormat_WGPUTextureFormat_RGBA32Uint: WGPUTextureFormat = 36;
1555pub const WGPUTextureFormat_WGPUTextureFormat_RGBA32Sint: WGPUTextureFormat = 37;
1556pub const WGPUTextureFormat_WGPUTextureFormat_Stencil8: WGPUTextureFormat = 38;
1557pub const WGPUTextureFormat_WGPUTextureFormat_Depth16Unorm: WGPUTextureFormat = 39;
1558pub const WGPUTextureFormat_WGPUTextureFormat_Depth24Plus: WGPUTextureFormat = 40;
1559pub const WGPUTextureFormat_WGPUTextureFormat_Depth24PlusStencil8: WGPUTextureFormat = 41;
1560pub const WGPUTextureFormat_WGPUTextureFormat_Depth32Float: WGPUTextureFormat = 42;
1561pub const WGPUTextureFormat_WGPUTextureFormat_Depth32FloatStencil8: WGPUTextureFormat = 43;
1562pub const WGPUTextureFormat_WGPUTextureFormat_BC1RGBAUnorm: WGPUTextureFormat = 44;
1563pub const WGPUTextureFormat_WGPUTextureFormat_BC1RGBAUnormSrgb: WGPUTextureFormat = 45;
1564pub const WGPUTextureFormat_WGPUTextureFormat_BC2RGBAUnorm: WGPUTextureFormat = 46;
1565pub const WGPUTextureFormat_WGPUTextureFormat_BC2RGBAUnormSrgb: WGPUTextureFormat = 47;
1566pub const WGPUTextureFormat_WGPUTextureFormat_BC3RGBAUnorm: WGPUTextureFormat = 48;
1567pub const WGPUTextureFormat_WGPUTextureFormat_BC3RGBAUnormSrgb: WGPUTextureFormat = 49;
1568pub const WGPUTextureFormat_WGPUTextureFormat_BC4RUnorm: WGPUTextureFormat = 50;
1569pub const WGPUTextureFormat_WGPUTextureFormat_BC4RSnorm: WGPUTextureFormat = 51;
1570pub const WGPUTextureFormat_WGPUTextureFormat_BC5RGUnorm: WGPUTextureFormat = 52;
1571pub const WGPUTextureFormat_WGPUTextureFormat_BC5RGSnorm: WGPUTextureFormat = 53;
1572pub const WGPUTextureFormat_WGPUTextureFormat_BC6HRGBUfloat: WGPUTextureFormat = 54;
1573pub const WGPUTextureFormat_WGPUTextureFormat_BC6HRGBFloat: WGPUTextureFormat = 55;
1574pub const WGPUTextureFormat_WGPUTextureFormat_BC7RGBAUnorm: WGPUTextureFormat = 56;
1575pub const WGPUTextureFormat_WGPUTextureFormat_BC7RGBAUnormSrgb: WGPUTextureFormat = 57;
1576pub const WGPUTextureFormat_WGPUTextureFormat_ETC2RGB8Unorm: WGPUTextureFormat = 58;
1577pub const WGPUTextureFormat_WGPUTextureFormat_ETC2RGB8UnormSrgb: WGPUTextureFormat = 59;
1578pub const WGPUTextureFormat_WGPUTextureFormat_ETC2RGB8A1Unorm: WGPUTextureFormat = 60;
1579pub const WGPUTextureFormat_WGPUTextureFormat_ETC2RGB8A1UnormSrgb: WGPUTextureFormat = 61;
1580pub const WGPUTextureFormat_WGPUTextureFormat_ETC2RGBA8Unorm: WGPUTextureFormat = 62;
1581pub const WGPUTextureFormat_WGPUTextureFormat_ETC2RGBA8UnormSrgb: WGPUTextureFormat = 63;
1582pub const WGPUTextureFormat_WGPUTextureFormat_EACR11Unorm: WGPUTextureFormat = 64;
1583pub const WGPUTextureFormat_WGPUTextureFormat_EACR11Snorm: WGPUTextureFormat = 65;
1584pub const WGPUTextureFormat_WGPUTextureFormat_EACRG11Unorm: WGPUTextureFormat = 66;
1585pub const WGPUTextureFormat_WGPUTextureFormat_EACRG11Snorm: WGPUTextureFormat = 67;
1586pub const WGPUTextureFormat_WGPUTextureFormat_ASTC4x4Unorm: WGPUTextureFormat = 68;
1587pub const WGPUTextureFormat_WGPUTextureFormat_ASTC4x4UnormSrgb: WGPUTextureFormat = 69;
1588pub const WGPUTextureFormat_WGPUTextureFormat_ASTC5x4Unorm: WGPUTextureFormat = 70;
1589pub const WGPUTextureFormat_WGPUTextureFormat_ASTC5x4UnormSrgb: WGPUTextureFormat = 71;
1590pub const WGPUTextureFormat_WGPUTextureFormat_ASTC5x5Unorm: WGPUTextureFormat = 72;
1591pub const WGPUTextureFormat_WGPUTextureFormat_ASTC5x5UnormSrgb: WGPUTextureFormat = 73;
1592pub const WGPUTextureFormat_WGPUTextureFormat_ASTC6x5Unorm: WGPUTextureFormat = 74;
1593pub const WGPUTextureFormat_WGPUTextureFormat_ASTC6x5UnormSrgb: WGPUTextureFormat = 75;
1594pub const WGPUTextureFormat_WGPUTextureFormat_ASTC6x6Unorm: WGPUTextureFormat = 76;
1595pub const WGPUTextureFormat_WGPUTextureFormat_ASTC6x6UnormSrgb: WGPUTextureFormat = 77;
1596pub const WGPUTextureFormat_WGPUTextureFormat_ASTC8x5Unorm: WGPUTextureFormat = 78;
1597pub const WGPUTextureFormat_WGPUTextureFormat_ASTC8x5UnormSrgb: WGPUTextureFormat = 79;
1598pub const WGPUTextureFormat_WGPUTextureFormat_ASTC8x6Unorm: WGPUTextureFormat = 80;
1599pub const WGPUTextureFormat_WGPUTextureFormat_ASTC8x6UnormSrgb: WGPUTextureFormat = 81;
1600pub const WGPUTextureFormat_WGPUTextureFormat_ASTC8x8Unorm: WGPUTextureFormat = 82;
1601pub const WGPUTextureFormat_WGPUTextureFormat_ASTC8x8UnormSrgb: WGPUTextureFormat = 83;
1602pub const WGPUTextureFormat_WGPUTextureFormat_ASTC10x5Unorm: WGPUTextureFormat = 84;
1603pub const WGPUTextureFormat_WGPUTextureFormat_ASTC10x5UnormSrgb: WGPUTextureFormat = 85;
1604pub const WGPUTextureFormat_WGPUTextureFormat_ASTC10x6Unorm: WGPUTextureFormat = 86;
1605pub const WGPUTextureFormat_WGPUTextureFormat_ASTC10x6UnormSrgb: WGPUTextureFormat = 87;
1606pub const WGPUTextureFormat_WGPUTextureFormat_ASTC10x8Unorm: WGPUTextureFormat = 88;
1607pub const WGPUTextureFormat_WGPUTextureFormat_ASTC10x8UnormSrgb: WGPUTextureFormat = 89;
1608pub const WGPUTextureFormat_WGPUTextureFormat_ASTC10x10Unorm: WGPUTextureFormat = 90;
1609pub const WGPUTextureFormat_WGPUTextureFormat_ASTC10x10UnormSrgb: WGPUTextureFormat = 91;
1610pub const WGPUTextureFormat_WGPUTextureFormat_ASTC12x10Unorm: WGPUTextureFormat = 92;
1611pub const WGPUTextureFormat_WGPUTextureFormat_ASTC12x10UnormSrgb: WGPUTextureFormat = 93;
1612pub const WGPUTextureFormat_WGPUTextureFormat_ASTC12x12Unorm: WGPUTextureFormat = 94;
1613pub const WGPUTextureFormat_WGPUTextureFormat_ASTC12x12UnormSrgb: WGPUTextureFormat = 95;
1614pub const WGPUTextureFormat_WGPUTextureFormat_Force32: WGPUTextureFormat = 2147483647;
1615pub type WGPUTextureFormat = ::core::ffi::c_int;
1616pub const WGPUTextureSampleType_WGPUTextureSampleType_BindingNotUsed: WGPUTextureSampleType = 0;
1617pub const WGPUTextureSampleType_WGPUTextureSampleType_Undefined: WGPUTextureSampleType = 1;
1618pub const WGPUTextureSampleType_WGPUTextureSampleType_Float: WGPUTextureSampleType = 2;
1619pub const WGPUTextureSampleType_WGPUTextureSampleType_UnfilterableFloat: WGPUTextureSampleType = 3;
1620pub const WGPUTextureSampleType_WGPUTextureSampleType_Depth: WGPUTextureSampleType = 4;
1621pub const WGPUTextureSampleType_WGPUTextureSampleType_Sint: WGPUTextureSampleType = 5;
1622pub const WGPUTextureSampleType_WGPUTextureSampleType_Uint: WGPUTextureSampleType = 6;
1623pub const WGPUTextureSampleType_WGPUTextureSampleType_Force32: WGPUTextureSampleType = 2147483647;
1624pub type WGPUTextureSampleType = ::core::ffi::c_int;
1625pub const WGPUTextureViewDimension_WGPUTextureViewDimension_Undefined: WGPUTextureViewDimension = 0;
1626pub const WGPUTextureViewDimension_WGPUTextureViewDimension_1D: WGPUTextureViewDimension = 1;
1627pub const WGPUTextureViewDimension_WGPUTextureViewDimension_2D: WGPUTextureViewDimension = 2;
1628pub const WGPUTextureViewDimension_WGPUTextureViewDimension_2DArray: WGPUTextureViewDimension = 3;
1629pub const WGPUTextureViewDimension_WGPUTextureViewDimension_Cube: WGPUTextureViewDimension = 4;
1630pub const WGPUTextureViewDimension_WGPUTextureViewDimension_CubeArray: WGPUTextureViewDimension = 5;
1631pub const WGPUTextureViewDimension_WGPUTextureViewDimension_3D: WGPUTextureViewDimension = 6;
1632pub const WGPUTextureViewDimension_WGPUTextureViewDimension_Force32: WGPUTextureViewDimension =
1633    2147483647;
1634pub type WGPUTextureViewDimension = ::core::ffi::c_int;
1635pub const WGPUToneMappingMode_WGPUToneMappingMode_Standard: WGPUToneMappingMode = 1;
1636pub const WGPUToneMappingMode_WGPUToneMappingMode_Extended: WGPUToneMappingMode = 2;
1637pub const WGPUToneMappingMode_WGPUToneMappingMode_Force32: WGPUToneMappingMode = 2147483647;
1638pub type WGPUToneMappingMode = ::core::ffi::c_int;
1639pub const WGPUVertexFormat_WGPUVertexFormat_Uint8: WGPUVertexFormat = 1;
1640pub const WGPUVertexFormat_WGPUVertexFormat_Uint8x2: WGPUVertexFormat = 2;
1641pub const WGPUVertexFormat_WGPUVertexFormat_Uint8x4: WGPUVertexFormat = 3;
1642pub const WGPUVertexFormat_WGPUVertexFormat_Sint8: WGPUVertexFormat = 4;
1643pub const WGPUVertexFormat_WGPUVertexFormat_Sint8x2: WGPUVertexFormat = 5;
1644pub const WGPUVertexFormat_WGPUVertexFormat_Sint8x4: WGPUVertexFormat = 6;
1645pub const WGPUVertexFormat_WGPUVertexFormat_Unorm8: WGPUVertexFormat = 7;
1646pub const WGPUVertexFormat_WGPUVertexFormat_Unorm8x2: WGPUVertexFormat = 8;
1647pub const WGPUVertexFormat_WGPUVertexFormat_Unorm8x4: WGPUVertexFormat = 9;
1648pub const WGPUVertexFormat_WGPUVertexFormat_Snorm8: WGPUVertexFormat = 10;
1649pub const WGPUVertexFormat_WGPUVertexFormat_Snorm8x2: WGPUVertexFormat = 11;
1650pub const WGPUVertexFormat_WGPUVertexFormat_Snorm8x4: WGPUVertexFormat = 12;
1651pub const WGPUVertexFormat_WGPUVertexFormat_Uint16: WGPUVertexFormat = 13;
1652pub const WGPUVertexFormat_WGPUVertexFormat_Uint16x2: WGPUVertexFormat = 14;
1653pub const WGPUVertexFormat_WGPUVertexFormat_Uint16x4: WGPUVertexFormat = 15;
1654pub const WGPUVertexFormat_WGPUVertexFormat_Sint16: WGPUVertexFormat = 16;
1655pub const WGPUVertexFormat_WGPUVertexFormat_Sint16x2: WGPUVertexFormat = 17;
1656pub const WGPUVertexFormat_WGPUVertexFormat_Sint16x4: WGPUVertexFormat = 18;
1657pub const WGPUVertexFormat_WGPUVertexFormat_Unorm16: WGPUVertexFormat = 19;
1658pub const WGPUVertexFormat_WGPUVertexFormat_Unorm16x2: WGPUVertexFormat = 20;
1659pub const WGPUVertexFormat_WGPUVertexFormat_Unorm16x4: WGPUVertexFormat = 21;
1660pub const WGPUVertexFormat_WGPUVertexFormat_Snorm16: WGPUVertexFormat = 22;
1661pub const WGPUVertexFormat_WGPUVertexFormat_Snorm16x2: WGPUVertexFormat = 23;
1662pub const WGPUVertexFormat_WGPUVertexFormat_Snorm16x4: WGPUVertexFormat = 24;
1663pub const WGPUVertexFormat_WGPUVertexFormat_Float16: WGPUVertexFormat = 25;
1664pub const WGPUVertexFormat_WGPUVertexFormat_Float16x2: WGPUVertexFormat = 26;
1665pub const WGPUVertexFormat_WGPUVertexFormat_Float16x4: WGPUVertexFormat = 27;
1666pub const WGPUVertexFormat_WGPUVertexFormat_Float32: WGPUVertexFormat = 28;
1667pub const WGPUVertexFormat_WGPUVertexFormat_Float32x2: WGPUVertexFormat = 29;
1668pub const WGPUVertexFormat_WGPUVertexFormat_Float32x3: WGPUVertexFormat = 30;
1669pub const WGPUVertexFormat_WGPUVertexFormat_Float32x4: WGPUVertexFormat = 31;
1670pub const WGPUVertexFormat_WGPUVertexFormat_Uint32: WGPUVertexFormat = 32;
1671pub const WGPUVertexFormat_WGPUVertexFormat_Uint32x2: WGPUVertexFormat = 33;
1672pub const WGPUVertexFormat_WGPUVertexFormat_Uint32x3: WGPUVertexFormat = 34;
1673pub const WGPUVertexFormat_WGPUVertexFormat_Uint32x4: WGPUVertexFormat = 35;
1674pub const WGPUVertexFormat_WGPUVertexFormat_Sint32: WGPUVertexFormat = 36;
1675pub const WGPUVertexFormat_WGPUVertexFormat_Sint32x2: WGPUVertexFormat = 37;
1676pub const WGPUVertexFormat_WGPUVertexFormat_Sint32x3: WGPUVertexFormat = 38;
1677pub const WGPUVertexFormat_WGPUVertexFormat_Sint32x4: WGPUVertexFormat = 39;
1678pub const WGPUVertexFormat_WGPUVertexFormat_Unorm10_10_10_2: WGPUVertexFormat = 40;
1679pub const WGPUVertexFormat_WGPUVertexFormat_Unorm8x4BGRA: WGPUVertexFormat = 41;
1680pub const WGPUVertexFormat_WGPUVertexFormat_Force32: WGPUVertexFormat = 2147483647;
1681pub type WGPUVertexFormat = ::core::ffi::c_int;
1682pub const WGPUVertexStepMode_WGPUVertexStepMode_Undefined: WGPUVertexStepMode = 0;
1683pub const WGPUVertexStepMode_WGPUVertexStepMode_Vertex: WGPUVertexStepMode = 1;
1684pub const WGPUVertexStepMode_WGPUVertexStepMode_Instance: WGPUVertexStepMode = 2;
1685pub const WGPUVertexStepMode_WGPUVertexStepMode_Force32: WGPUVertexStepMode = 2147483647;
1686pub type WGPUVertexStepMode = ::core::ffi::c_int;
1687pub const WGPUWaitStatus_WGPUWaitStatus_Success: WGPUWaitStatus = 1;
1688pub const WGPUWaitStatus_WGPUWaitStatus_TimedOut: WGPUWaitStatus = 2;
1689pub const WGPUWaitStatus_WGPUWaitStatus_Error: WGPUWaitStatus = 3;
1690pub const WGPUWaitStatus_WGPUWaitStatus_Force32: WGPUWaitStatus = 2147483647;
1691pub type WGPUWaitStatus = ::core::ffi::c_int;
1692pub const WGPUWGSLLanguageFeatureName_WGPUWGSLLanguageFeatureName_ReadonlyAndReadwriteStorageTextures : WGPUWGSLLanguageFeatureName = 1 ;
1693pub const WGPUWGSLLanguageFeatureName_WGPUWGSLLanguageFeatureName_Packed4x8IntegerDotProduct:
1694    WGPUWGSLLanguageFeatureName = 2;
1695pub const WGPUWGSLLanguageFeatureName_WGPUWGSLLanguageFeatureName_UnrestrictedPointerParameters:
1696    WGPUWGSLLanguageFeatureName = 3;
1697pub const WGPUWGSLLanguageFeatureName_WGPUWGSLLanguageFeatureName_PointerCompositeAccess:
1698    WGPUWGSLLanguageFeatureName = 4;
1699pub const WGPUWGSLLanguageFeatureName_WGPUWGSLLanguageFeatureName_Force32:
1700    WGPUWGSLLanguageFeatureName = 2147483647;
1701pub type WGPUWGSLLanguageFeatureName = ::core::ffi::c_int;
1702pub type WGPUBufferUsage = WGPUFlags;
1703pub const WGPUBufferUsage_None: WGPUBufferUsage = 0;
1704pub const WGPUBufferUsage_MapRead: WGPUBufferUsage = 1;
1705pub const WGPUBufferUsage_MapWrite: WGPUBufferUsage = 2;
1706pub const WGPUBufferUsage_CopySrc: WGPUBufferUsage = 4;
1707pub const WGPUBufferUsage_CopyDst: WGPUBufferUsage = 8;
1708pub const WGPUBufferUsage_Index: WGPUBufferUsage = 16;
1709pub const WGPUBufferUsage_Vertex: WGPUBufferUsage = 32;
1710pub const WGPUBufferUsage_Uniform: WGPUBufferUsage = 64;
1711pub const WGPUBufferUsage_Storage: WGPUBufferUsage = 128;
1712pub const WGPUBufferUsage_Indirect: WGPUBufferUsage = 256;
1713pub const WGPUBufferUsage_QueryResolve: WGPUBufferUsage = 512;
1714pub type WGPUColorWriteMask = WGPUFlags;
1715pub const WGPUColorWriteMask_None: WGPUColorWriteMask = 0;
1716pub const WGPUColorWriteMask_Red: WGPUColorWriteMask = 1;
1717pub const WGPUColorWriteMask_Green: WGPUColorWriteMask = 2;
1718pub const WGPUColorWriteMask_Blue: WGPUColorWriteMask = 4;
1719pub const WGPUColorWriteMask_Alpha: WGPUColorWriteMask = 8;
1720pub const WGPUColorWriteMask_All: WGPUColorWriteMask = 15;
1721pub type WGPUMapMode = WGPUFlags;
1722pub const WGPUMapMode_None: WGPUMapMode = 0;
1723pub const WGPUMapMode_Read: WGPUMapMode = 1;
1724pub const WGPUMapMode_Write: WGPUMapMode = 2;
1725pub type WGPUShaderStage = WGPUFlags;
1726pub const WGPUShaderStage_None: WGPUShaderStage = 0;
1727pub const WGPUShaderStage_Vertex: WGPUShaderStage = 1;
1728pub const WGPUShaderStage_Fragment: WGPUShaderStage = 2;
1729pub const WGPUShaderStage_Compute: WGPUShaderStage = 4;
1730pub type WGPUTextureUsage = WGPUFlags;
1731pub const WGPUTextureUsage_None: WGPUTextureUsage = 0;
1732pub const WGPUTextureUsage_CopySrc: WGPUTextureUsage = 1;
1733pub const WGPUTextureUsage_CopyDst: WGPUTextureUsage = 2;
1734pub const WGPUTextureUsage_TextureBinding: WGPUTextureUsage = 4;
1735pub const WGPUTextureUsage_StorageBinding: WGPUTextureUsage = 8;
1736pub const WGPUTextureUsage_RenderAttachment: WGPUTextureUsage = 16;
1737pub type WGPUProc = ::core::option::Option<unsafe extern "C" fn()>;
1738pub type WGPUBufferMapCallback = ::core::option::Option<
1739    unsafe extern "C" fn(
1740        status: WGPUMapAsyncStatus,
1741        message: WGPUStringView,
1742        userdata1: *mut ::core::ffi::c_void,
1743        userdata2: *mut ::core::ffi::c_void,
1744    ),
1745>;
1746pub type WGPUCompilationInfoCallback = ::core::option::Option<
1747    unsafe extern "C" fn(
1748        status: WGPUCompilationInfoRequestStatus,
1749        compilationInfo: *const WGPUCompilationInfo,
1750        userdata1: *mut ::core::ffi::c_void,
1751        userdata2: *mut ::core::ffi::c_void,
1752    ),
1753>;
1754pub type WGPUCreateComputePipelineAsyncCallback = ::core::option::Option<
1755    unsafe extern "C" fn(
1756        status: WGPUCreatePipelineAsyncStatus,
1757        pipeline: WGPUComputePipeline,
1758        message: WGPUStringView,
1759        userdata1: *mut ::core::ffi::c_void,
1760        userdata2: *mut ::core::ffi::c_void,
1761    ),
1762>;
1763pub type WGPUCreateRenderPipelineAsyncCallback = ::core::option::Option<
1764    unsafe extern "C" fn(
1765        status: WGPUCreatePipelineAsyncStatus,
1766        pipeline: WGPURenderPipeline,
1767        message: WGPUStringView,
1768        userdata1: *mut ::core::ffi::c_void,
1769        userdata2: *mut ::core::ffi::c_void,
1770    ),
1771>;
1772pub type WGPUDeviceLostCallback = ::core::option::Option<
1773    unsafe extern "C" fn(
1774        device: *const WGPUDevice,
1775        reason: WGPUDeviceLostReason,
1776        message: WGPUStringView,
1777        userdata1: *mut ::core::ffi::c_void,
1778        userdata2: *mut ::core::ffi::c_void,
1779    ),
1780>;
1781pub type WGPUPopErrorScopeCallback = ::core::option::Option<
1782    unsafe extern "C" fn(
1783        status: WGPUPopErrorScopeStatus,
1784        type_: WGPUErrorType,
1785        message: WGPUStringView,
1786        userdata1: *mut ::core::ffi::c_void,
1787        userdata2: *mut ::core::ffi::c_void,
1788    ),
1789>;
1790pub type WGPUQueueWorkDoneCallback = ::core::option::Option<
1791    unsafe extern "C" fn(
1792        status: WGPUQueueWorkDoneStatus,
1793        message: WGPUStringView,
1794        userdata1: *mut ::core::ffi::c_void,
1795        userdata2: *mut ::core::ffi::c_void,
1796    ),
1797>;
1798pub type WGPURequestAdapterCallback = ::core::option::Option<
1799    unsafe extern "C" fn(
1800        status: WGPURequestAdapterStatus,
1801        adapter: WGPUAdapter,
1802        message: WGPUStringView,
1803        userdata1: *mut ::core::ffi::c_void,
1804        userdata2: *mut ::core::ffi::c_void,
1805    ),
1806>;
1807pub type WGPURequestDeviceCallback = ::core::option::Option<
1808    unsafe extern "C" fn(
1809        status: WGPURequestDeviceStatus,
1810        device: WGPUDevice,
1811        message: WGPUStringView,
1812        userdata1: *mut ::core::ffi::c_void,
1813        userdata2: *mut ::core::ffi::c_void,
1814    ),
1815>;
1816pub type WGPUUncapturedErrorCallback = ::core::option::Option<
1817    unsafe extern "C" fn(
1818        device: *const WGPUDevice,
1819        type_: WGPUErrorType,
1820        message: WGPUStringView,
1821        userdata1: *mut ::core::ffi::c_void,
1822        userdata2: *mut ::core::ffi::c_void,
1823    ),
1824>;
1825#[repr(C)]
1826#[derive(Debug, Copy, Clone)]
1827pub struct WGPUChainedStruct {
1828    pub next: *mut WGPUChainedStruct,
1829    pub sType: WGPUSType,
1830}
1831#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1832const _: () = {
1833    ["Size of WGPUChainedStruct"][::core::mem::size_of::<WGPUChainedStruct>() - 16usize];
1834    ["Alignment of WGPUChainedStruct"][::core::mem::align_of::<WGPUChainedStruct>() - 8usize];
1835    ["Offset of field: WGPUChainedStruct::next"]
1836        [::core::mem::offset_of!(WGPUChainedStruct, next) - 0usize];
1837    ["Offset of field: WGPUChainedStruct::sType"]
1838        [::core::mem::offset_of!(WGPUChainedStruct, sType) - 8usize];
1839};
1840#[repr(C)]
1841#[derive(Debug, Copy, Clone)]
1842pub struct WGPUBufferMapCallbackInfo {
1843    pub nextInChain: *mut WGPUChainedStruct,
1844    pub mode: WGPUCallbackMode,
1845    pub callback: WGPUBufferMapCallback,
1846    pub userdata1: *mut ::core::ffi::c_void,
1847    pub userdata2: *mut ::core::ffi::c_void,
1848}
1849#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1850const _: () = {
1851    ["Size of WGPUBufferMapCallbackInfo"]
1852        [::core::mem::size_of::<WGPUBufferMapCallbackInfo>() - 40usize];
1853    ["Alignment of WGPUBufferMapCallbackInfo"]
1854        [::core::mem::align_of::<WGPUBufferMapCallbackInfo>() - 8usize];
1855    ["Offset of field: WGPUBufferMapCallbackInfo::nextInChain"]
1856        [::core::mem::offset_of!(WGPUBufferMapCallbackInfo, nextInChain) - 0usize];
1857    ["Offset of field: WGPUBufferMapCallbackInfo::mode"]
1858        [::core::mem::offset_of!(WGPUBufferMapCallbackInfo, mode) - 8usize];
1859    ["Offset of field: WGPUBufferMapCallbackInfo::callback"]
1860        [::core::mem::offset_of!(WGPUBufferMapCallbackInfo, callback) - 16usize];
1861    ["Offset of field: WGPUBufferMapCallbackInfo::userdata1"]
1862        [::core::mem::offset_of!(WGPUBufferMapCallbackInfo, userdata1) - 24usize];
1863    ["Offset of field: WGPUBufferMapCallbackInfo::userdata2"]
1864        [::core::mem::offset_of!(WGPUBufferMapCallbackInfo, userdata2) - 32usize];
1865};
1866#[repr(C)]
1867#[derive(Debug, Copy, Clone)]
1868pub struct WGPUCompilationInfoCallbackInfo {
1869    pub nextInChain: *mut WGPUChainedStruct,
1870    pub mode: WGPUCallbackMode,
1871    pub callback: WGPUCompilationInfoCallback,
1872    pub userdata1: *mut ::core::ffi::c_void,
1873    pub userdata2: *mut ::core::ffi::c_void,
1874}
1875#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1876const _: () = {
1877    ["Size of WGPUCompilationInfoCallbackInfo"]
1878        [::core::mem::size_of::<WGPUCompilationInfoCallbackInfo>() - 40usize];
1879    ["Alignment of WGPUCompilationInfoCallbackInfo"]
1880        [::core::mem::align_of::<WGPUCompilationInfoCallbackInfo>() - 8usize];
1881    ["Offset of field: WGPUCompilationInfoCallbackInfo::nextInChain"]
1882        [::core::mem::offset_of!(WGPUCompilationInfoCallbackInfo, nextInChain) - 0usize];
1883    ["Offset of field: WGPUCompilationInfoCallbackInfo::mode"]
1884        [::core::mem::offset_of!(WGPUCompilationInfoCallbackInfo, mode) - 8usize];
1885    ["Offset of field: WGPUCompilationInfoCallbackInfo::callback"]
1886        [::core::mem::offset_of!(WGPUCompilationInfoCallbackInfo, callback) - 16usize];
1887    ["Offset of field: WGPUCompilationInfoCallbackInfo::userdata1"]
1888        [::core::mem::offset_of!(WGPUCompilationInfoCallbackInfo, userdata1) - 24usize];
1889    ["Offset of field: WGPUCompilationInfoCallbackInfo::userdata2"]
1890        [::core::mem::offset_of!(WGPUCompilationInfoCallbackInfo, userdata2) - 32usize];
1891};
1892#[repr(C)]
1893#[derive(Debug, Copy, Clone)]
1894pub struct WGPUCreateComputePipelineAsyncCallbackInfo {
1895    pub nextInChain: *mut WGPUChainedStruct,
1896    pub mode: WGPUCallbackMode,
1897    pub callback: WGPUCreateComputePipelineAsyncCallback,
1898    pub userdata1: *mut ::core::ffi::c_void,
1899    pub userdata2: *mut ::core::ffi::c_void,
1900}
1901#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1902const _: () = {
1903    ["Size of WGPUCreateComputePipelineAsyncCallbackInfo"]
1904        [::core::mem::size_of::<WGPUCreateComputePipelineAsyncCallbackInfo>() - 40usize];
1905    ["Alignment of WGPUCreateComputePipelineAsyncCallbackInfo"]
1906        [::core::mem::align_of::<WGPUCreateComputePipelineAsyncCallbackInfo>() - 8usize];
1907    ["Offset of field: WGPUCreateComputePipelineAsyncCallbackInfo::nextInChain"]
1908        [::core::mem::offset_of!(WGPUCreateComputePipelineAsyncCallbackInfo, nextInChain) - 0usize];
1909    ["Offset of field: WGPUCreateComputePipelineAsyncCallbackInfo::mode"]
1910        [::core::mem::offset_of!(WGPUCreateComputePipelineAsyncCallbackInfo, mode) - 8usize];
1911    ["Offset of field: WGPUCreateComputePipelineAsyncCallbackInfo::callback"]
1912        [::core::mem::offset_of!(WGPUCreateComputePipelineAsyncCallbackInfo, callback) - 16usize];
1913    ["Offset of field: WGPUCreateComputePipelineAsyncCallbackInfo::userdata1"]
1914        [::core::mem::offset_of!(WGPUCreateComputePipelineAsyncCallbackInfo, userdata1) - 24usize];
1915    ["Offset of field: WGPUCreateComputePipelineAsyncCallbackInfo::userdata2"]
1916        [::core::mem::offset_of!(WGPUCreateComputePipelineAsyncCallbackInfo, userdata2) - 32usize];
1917};
1918#[repr(C)]
1919#[derive(Debug, Copy, Clone)]
1920pub struct WGPUCreateRenderPipelineAsyncCallbackInfo {
1921    pub nextInChain: *mut WGPUChainedStruct,
1922    pub mode: WGPUCallbackMode,
1923    pub callback: WGPUCreateRenderPipelineAsyncCallback,
1924    pub userdata1: *mut ::core::ffi::c_void,
1925    pub userdata2: *mut ::core::ffi::c_void,
1926}
1927#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1928const _: () = {
1929    ["Size of WGPUCreateRenderPipelineAsyncCallbackInfo"]
1930        [::core::mem::size_of::<WGPUCreateRenderPipelineAsyncCallbackInfo>() - 40usize];
1931    ["Alignment of WGPUCreateRenderPipelineAsyncCallbackInfo"]
1932        [::core::mem::align_of::<WGPUCreateRenderPipelineAsyncCallbackInfo>() - 8usize];
1933    ["Offset of field: WGPUCreateRenderPipelineAsyncCallbackInfo::nextInChain"]
1934        [::core::mem::offset_of!(WGPUCreateRenderPipelineAsyncCallbackInfo, nextInChain) - 0usize];
1935    ["Offset of field: WGPUCreateRenderPipelineAsyncCallbackInfo::mode"]
1936        [::core::mem::offset_of!(WGPUCreateRenderPipelineAsyncCallbackInfo, mode) - 8usize];
1937    ["Offset of field: WGPUCreateRenderPipelineAsyncCallbackInfo::callback"]
1938        [::core::mem::offset_of!(WGPUCreateRenderPipelineAsyncCallbackInfo, callback) - 16usize];
1939    ["Offset of field: WGPUCreateRenderPipelineAsyncCallbackInfo::userdata1"]
1940        [::core::mem::offset_of!(WGPUCreateRenderPipelineAsyncCallbackInfo, userdata1) - 24usize];
1941    ["Offset of field: WGPUCreateRenderPipelineAsyncCallbackInfo::userdata2"]
1942        [::core::mem::offset_of!(WGPUCreateRenderPipelineAsyncCallbackInfo, userdata2) - 32usize];
1943};
1944#[repr(C)]
1945#[derive(Debug, Copy, Clone)]
1946pub struct WGPUDeviceLostCallbackInfo {
1947    pub nextInChain: *mut WGPUChainedStruct,
1948    pub mode: WGPUCallbackMode,
1949    pub callback: WGPUDeviceLostCallback,
1950    pub userdata1: *mut ::core::ffi::c_void,
1951    pub userdata2: *mut ::core::ffi::c_void,
1952}
1953#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1954const _: () = {
1955    ["Size of WGPUDeviceLostCallbackInfo"]
1956        [::core::mem::size_of::<WGPUDeviceLostCallbackInfo>() - 40usize];
1957    ["Alignment of WGPUDeviceLostCallbackInfo"]
1958        [::core::mem::align_of::<WGPUDeviceLostCallbackInfo>() - 8usize];
1959    ["Offset of field: WGPUDeviceLostCallbackInfo::nextInChain"]
1960        [::core::mem::offset_of!(WGPUDeviceLostCallbackInfo, nextInChain) - 0usize];
1961    ["Offset of field: WGPUDeviceLostCallbackInfo::mode"]
1962        [::core::mem::offset_of!(WGPUDeviceLostCallbackInfo, mode) - 8usize];
1963    ["Offset of field: WGPUDeviceLostCallbackInfo::callback"]
1964        [::core::mem::offset_of!(WGPUDeviceLostCallbackInfo, callback) - 16usize];
1965    ["Offset of field: WGPUDeviceLostCallbackInfo::userdata1"]
1966        [::core::mem::offset_of!(WGPUDeviceLostCallbackInfo, userdata1) - 24usize];
1967    ["Offset of field: WGPUDeviceLostCallbackInfo::userdata2"]
1968        [::core::mem::offset_of!(WGPUDeviceLostCallbackInfo, userdata2) - 32usize];
1969};
1970#[repr(C)]
1971#[derive(Debug, Copy, Clone)]
1972pub struct WGPUPopErrorScopeCallbackInfo {
1973    pub nextInChain: *mut WGPUChainedStruct,
1974    pub mode: WGPUCallbackMode,
1975    pub callback: WGPUPopErrorScopeCallback,
1976    pub userdata1: *mut ::core::ffi::c_void,
1977    pub userdata2: *mut ::core::ffi::c_void,
1978}
1979#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1980const _: () = {
1981    ["Size of WGPUPopErrorScopeCallbackInfo"]
1982        [::core::mem::size_of::<WGPUPopErrorScopeCallbackInfo>() - 40usize];
1983    ["Alignment of WGPUPopErrorScopeCallbackInfo"]
1984        [::core::mem::align_of::<WGPUPopErrorScopeCallbackInfo>() - 8usize];
1985    ["Offset of field: WGPUPopErrorScopeCallbackInfo::nextInChain"]
1986        [::core::mem::offset_of!(WGPUPopErrorScopeCallbackInfo, nextInChain) - 0usize];
1987    ["Offset of field: WGPUPopErrorScopeCallbackInfo::mode"]
1988        [::core::mem::offset_of!(WGPUPopErrorScopeCallbackInfo, mode) - 8usize];
1989    ["Offset of field: WGPUPopErrorScopeCallbackInfo::callback"]
1990        [::core::mem::offset_of!(WGPUPopErrorScopeCallbackInfo, callback) - 16usize];
1991    ["Offset of field: WGPUPopErrorScopeCallbackInfo::userdata1"]
1992        [::core::mem::offset_of!(WGPUPopErrorScopeCallbackInfo, userdata1) - 24usize];
1993    ["Offset of field: WGPUPopErrorScopeCallbackInfo::userdata2"]
1994        [::core::mem::offset_of!(WGPUPopErrorScopeCallbackInfo, userdata2) - 32usize];
1995};
1996#[repr(C)]
1997#[derive(Debug, Copy, Clone)]
1998pub struct WGPUQueueWorkDoneCallbackInfo {
1999    pub nextInChain: *mut WGPUChainedStruct,
2000    pub mode: WGPUCallbackMode,
2001    pub callback: WGPUQueueWorkDoneCallback,
2002    pub userdata1: *mut ::core::ffi::c_void,
2003    pub userdata2: *mut ::core::ffi::c_void,
2004}
2005#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2006const _: () = {
2007    ["Size of WGPUQueueWorkDoneCallbackInfo"]
2008        [::core::mem::size_of::<WGPUQueueWorkDoneCallbackInfo>() - 40usize];
2009    ["Alignment of WGPUQueueWorkDoneCallbackInfo"]
2010        [::core::mem::align_of::<WGPUQueueWorkDoneCallbackInfo>() - 8usize];
2011    ["Offset of field: WGPUQueueWorkDoneCallbackInfo::nextInChain"]
2012        [::core::mem::offset_of!(WGPUQueueWorkDoneCallbackInfo, nextInChain) - 0usize];
2013    ["Offset of field: WGPUQueueWorkDoneCallbackInfo::mode"]
2014        [::core::mem::offset_of!(WGPUQueueWorkDoneCallbackInfo, mode) - 8usize];
2015    ["Offset of field: WGPUQueueWorkDoneCallbackInfo::callback"]
2016        [::core::mem::offset_of!(WGPUQueueWorkDoneCallbackInfo, callback) - 16usize];
2017    ["Offset of field: WGPUQueueWorkDoneCallbackInfo::userdata1"]
2018        [::core::mem::offset_of!(WGPUQueueWorkDoneCallbackInfo, userdata1) - 24usize];
2019    ["Offset of field: WGPUQueueWorkDoneCallbackInfo::userdata2"]
2020        [::core::mem::offset_of!(WGPUQueueWorkDoneCallbackInfo, userdata2) - 32usize];
2021};
2022#[repr(C)]
2023#[derive(Debug, Copy, Clone)]
2024pub struct WGPURequestAdapterCallbackInfo {
2025    pub nextInChain: *mut WGPUChainedStruct,
2026    pub mode: WGPUCallbackMode,
2027    pub callback: WGPURequestAdapterCallback,
2028    pub userdata1: *mut ::core::ffi::c_void,
2029    pub userdata2: *mut ::core::ffi::c_void,
2030}
2031#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2032const _: () = {
2033    ["Size of WGPURequestAdapterCallbackInfo"]
2034        [::core::mem::size_of::<WGPURequestAdapterCallbackInfo>() - 40usize];
2035    ["Alignment of WGPURequestAdapterCallbackInfo"]
2036        [::core::mem::align_of::<WGPURequestAdapterCallbackInfo>() - 8usize];
2037    ["Offset of field: WGPURequestAdapterCallbackInfo::nextInChain"]
2038        [::core::mem::offset_of!(WGPURequestAdapterCallbackInfo, nextInChain) - 0usize];
2039    ["Offset of field: WGPURequestAdapterCallbackInfo::mode"]
2040        [::core::mem::offset_of!(WGPURequestAdapterCallbackInfo, mode) - 8usize];
2041    ["Offset of field: WGPURequestAdapterCallbackInfo::callback"]
2042        [::core::mem::offset_of!(WGPURequestAdapterCallbackInfo, callback) - 16usize];
2043    ["Offset of field: WGPURequestAdapterCallbackInfo::userdata1"]
2044        [::core::mem::offset_of!(WGPURequestAdapterCallbackInfo, userdata1) - 24usize];
2045    ["Offset of field: WGPURequestAdapterCallbackInfo::userdata2"]
2046        [::core::mem::offset_of!(WGPURequestAdapterCallbackInfo, userdata2) - 32usize];
2047};
2048#[repr(C)]
2049#[derive(Debug, Copy, Clone)]
2050pub struct WGPURequestDeviceCallbackInfo {
2051    pub nextInChain: *mut WGPUChainedStruct,
2052    pub mode: WGPUCallbackMode,
2053    pub callback: WGPURequestDeviceCallback,
2054    pub userdata1: *mut ::core::ffi::c_void,
2055    pub userdata2: *mut ::core::ffi::c_void,
2056}
2057#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2058const _: () = {
2059    ["Size of WGPURequestDeviceCallbackInfo"]
2060        [::core::mem::size_of::<WGPURequestDeviceCallbackInfo>() - 40usize];
2061    ["Alignment of WGPURequestDeviceCallbackInfo"]
2062        [::core::mem::align_of::<WGPURequestDeviceCallbackInfo>() - 8usize];
2063    ["Offset of field: WGPURequestDeviceCallbackInfo::nextInChain"]
2064        [::core::mem::offset_of!(WGPURequestDeviceCallbackInfo, nextInChain) - 0usize];
2065    ["Offset of field: WGPURequestDeviceCallbackInfo::mode"]
2066        [::core::mem::offset_of!(WGPURequestDeviceCallbackInfo, mode) - 8usize];
2067    ["Offset of field: WGPURequestDeviceCallbackInfo::callback"]
2068        [::core::mem::offset_of!(WGPURequestDeviceCallbackInfo, callback) - 16usize];
2069    ["Offset of field: WGPURequestDeviceCallbackInfo::userdata1"]
2070        [::core::mem::offset_of!(WGPURequestDeviceCallbackInfo, userdata1) - 24usize];
2071    ["Offset of field: WGPURequestDeviceCallbackInfo::userdata2"]
2072        [::core::mem::offset_of!(WGPURequestDeviceCallbackInfo, userdata2) - 32usize];
2073};
2074#[repr(C)]
2075#[derive(Debug, Copy, Clone)]
2076pub struct WGPUUncapturedErrorCallbackInfo {
2077    pub nextInChain: *mut WGPUChainedStruct,
2078    pub callback: WGPUUncapturedErrorCallback,
2079    pub userdata1: *mut ::core::ffi::c_void,
2080    pub userdata2: *mut ::core::ffi::c_void,
2081}
2082#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2083const _: () = {
2084    ["Size of WGPUUncapturedErrorCallbackInfo"]
2085        [::core::mem::size_of::<WGPUUncapturedErrorCallbackInfo>() - 32usize];
2086    ["Alignment of WGPUUncapturedErrorCallbackInfo"]
2087        [::core::mem::align_of::<WGPUUncapturedErrorCallbackInfo>() - 8usize];
2088    ["Offset of field: WGPUUncapturedErrorCallbackInfo::nextInChain"]
2089        [::core::mem::offset_of!(WGPUUncapturedErrorCallbackInfo, nextInChain) - 0usize];
2090    ["Offset of field: WGPUUncapturedErrorCallbackInfo::callback"]
2091        [::core::mem::offset_of!(WGPUUncapturedErrorCallbackInfo, callback) - 8usize];
2092    ["Offset of field: WGPUUncapturedErrorCallbackInfo::userdata1"]
2093        [::core::mem::offset_of!(WGPUUncapturedErrorCallbackInfo, userdata1) - 16usize];
2094    ["Offset of field: WGPUUncapturedErrorCallbackInfo::userdata2"]
2095        [::core::mem::offset_of!(WGPUUncapturedErrorCallbackInfo, userdata2) - 24usize];
2096};
2097#[repr(C)]
2098#[derive(Debug, Copy, Clone)]
2099pub struct WGPUAdapterInfo {
2100    pub nextInChain: *mut WGPUChainedStruct,
2101    pub vendor: WGPUStringView,
2102    pub architecture: WGPUStringView,
2103    pub device: WGPUStringView,
2104    pub description: WGPUStringView,
2105    pub backendType: WGPUBackendType,
2106    pub adapterType: WGPUAdapterType,
2107    pub vendorID: u32,
2108    pub deviceID: u32,
2109    pub subgroupMinSize: u32,
2110    pub subgroupMaxSize: u32,
2111}
2112#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2113const _: () = {
2114    ["Size of WGPUAdapterInfo"][::core::mem::size_of::<WGPUAdapterInfo>() - 96usize];
2115    ["Alignment of WGPUAdapterInfo"][::core::mem::align_of::<WGPUAdapterInfo>() - 8usize];
2116    ["Offset of field: WGPUAdapterInfo::nextInChain"]
2117        [::core::mem::offset_of!(WGPUAdapterInfo, nextInChain) - 0usize];
2118    ["Offset of field: WGPUAdapterInfo::vendor"]
2119        [::core::mem::offset_of!(WGPUAdapterInfo, vendor) - 8usize];
2120    ["Offset of field: WGPUAdapterInfo::architecture"]
2121        [::core::mem::offset_of!(WGPUAdapterInfo, architecture) - 24usize];
2122    ["Offset of field: WGPUAdapterInfo::device"]
2123        [::core::mem::offset_of!(WGPUAdapterInfo, device) - 40usize];
2124    ["Offset of field: WGPUAdapterInfo::description"]
2125        [::core::mem::offset_of!(WGPUAdapterInfo, description) - 56usize];
2126    ["Offset of field: WGPUAdapterInfo::backendType"]
2127        [::core::mem::offset_of!(WGPUAdapterInfo, backendType) - 72usize];
2128    ["Offset of field: WGPUAdapterInfo::adapterType"]
2129        [::core::mem::offset_of!(WGPUAdapterInfo, adapterType) - 76usize];
2130    ["Offset of field: WGPUAdapterInfo::vendorID"]
2131        [::core::mem::offset_of!(WGPUAdapterInfo, vendorID) - 80usize];
2132    ["Offset of field: WGPUAdapterInfo::deviceID"]
2133        [::core::mem::offset_of!(WGPUAdapterInfo, deviceID) - 84usize];
2134    ["Offset of field: WGPUAdapterInfo::subgroupMinSize"]
2135        [::core::mem::offset_of!(WGPUAdapterInfo, subgroupMinSize) - 88usize];
2136    ["Offset of field: WGPUAdapterInfo::subgroupMaxSize"]
2137        [::core::mem::offset_of!(WGPUAdapterInfo, subgroupMaxSize) - 92usize];
2138};
2139#[repr(C)]
2140#[derive(Debug, Copy, Clone)]
2141pub struct WGPUBindGroupEntry {
2142    pub nextInChain: *mut WGPUChainedStruct,
2143    pub binding: u32,
2144    pub buffer: WGPUBuffer,
2145    pub offset: u64,
2146    pub size: u64,
2147    pub sampler: WGPUSampler,
2148    pub textureView: WGPUTextureView,
2149}
2150#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2151const _: () = {
2152    ["Size of WGPUBindGroupEntry"][::core::mem::size_of::<WGPUBindGroupEntry>() - 56usize];
2153    ["Alignment of WGPUBindGroupEntry"][::core::mem::align_of::<WGPUBindGroupEntry>() - 8usize];
2154    ["Offset of field: WGPUBindGroupEntry::nextInChain"]
2155        [::core::mem::offset_of!(WGPUBindGroupEntry, nextInChain) - 0usize];
2156    ["Offset of field: WGPUBindGroupEntry::binding"]
2157        [::core::mem::offset_of!(WGPUBindGroupEntry, binding) - 8usize];
2158    ["Offset of field: WGPUBindGroupEntry::buffer"]
2159        [::core::mem::offset_of!(WGPUBindGroupEntry, buffer) - 16usize];
2160    ["Offset of field: WGPUBindGroupEntry::offset"]
2161        [::core::mem::offset_of!(WGPUBindGroupEntry, offset) - 24usize];
2162    ["Offset of field: WGPUBindGroupEntry::size"]
2163        [::core::mem::offset_of!(WGPUBindGroupEntry, size) - 32usize];
2164    ["Offset of field: WGPUBindGroupEntry::sampler"]
2165        [::core::mem::offset_of!(WGPUBindGroupEntry, sampler) - 40usize];
2166    ["Offset of field: WGPUBindGroupEntry::textureView"]
2167        [::core::mem::offset_of!(WGPUBindGroupEntry, textureView) - 48usize];
2168};
2169#[repr(C)]
2170#[derive(Debug, Copy, Clone)]
2171pub struct WGPUBlendComponent {
2172    pub operation: WGPUBlendOperation,
2173    pub srcFactor: WGPUBlendFactor,
2174    pub dstFactor: WGPUBlendFactor,
2175}
2176#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2177const _: () = {
2178    ["Size of WGPUBlendComponent"][::core::mem::size_of::<WGPUBlendComponent>() - 12usize];
2179    ["Alignment of WGPUBlendComponent"][::core::mem::align_of::<WGPUBlendComponent>() - 4usize];
2180    ["Offset of field: WGPUBlendComponent::operation"]
2181        [::core::mem::offset_of!(WGPUBlendComponent, operation) - 0usize];
2182    ["Offset of field: WGPUBlendComponent::srcFactor"]
2183        [::core::mem::offset_of!(WGPUBlendComponent, srcFactor) - 4usize];
2184    ["Offset of field: WGPUBlendComponent::dstFactor"]
2185        [::core::mem::offset_of!(WGPUBlendComponent, dstFactor) - 8usize];
2186};
2187#[repr(C)]
2188#[derive(Debug, Copy, Clone)]
2189pub struct WGPUBufferBindingLayout {
2190    pub nextInChain: *mut WGPUChainedStruct,
2191    pub type_: WGPUBufferBindingType,
2192    pub hasDynamicOffset: WGPUBool,
2193    pub minBindingSize: u64,
2194}
2195#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2196const _: () = {
2197    ["Size of WGPUBufferBindingLayout"]
2198        [::core::mem::size_of::<WGPUBufferBindingLayout>() - 24usize];
2199    ["Alignment of WGPUBufferBindingLayout"]
2200        [::core::mem::align_of::<WGPUBufferBindingLayout>() - 8usize];
2201    ["Offset of field: WGPUBufferBindingLayout::nextInChain"]
2202        [::core::mem::offset_of!(WGPUBufferBindingLayout, nextInChain) - 0usize];
2203    ["Offset of field: WGPUBufferBindingLayout::type_"]
2204        [::core::mem::offset_of!(WGPUBufferBindingLayout, type_) - 8usize];
2205    ["Offset of field: WGPUBufferBindingLayout::hasDynamicOffset"]
2206        [::core::mem::offset_of!(WGPUBufferBindingLayout, hasDynamicOffset) - 12usize];
2207    ["Offset of field: WGPUBufferBindingLayout::minBindingSize"]
2208        [::core::mem::offset_of!(WGPUBufferBindingLayout, minBindingSize) - 16usize];
2209};
2210#[repr(C)]
2211#[derive(Debug, Copy, Clone)]
2212pub struct WGPUBufferDescriptor {
2213    pub nextInChain: *mut WGPUChainedStruct,
2214    pub label: WGPUStringView,
2215    pub usage: WGPUBufferUsage,
2216    pub size: u64,
2217    pub mappedAtCreation: WGPUBool,
2218}
2219#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2220const _: () = {
2221    ["Size of WGPUBufferDescriptor"][::core::mem::size_of::<WGPUBufferDescriptor>() - 48usize];
2222    ["Alignment of WGPUBufferDescriptor"][::core::mem::align_of::<WGPUBufferDescriptor>() - 8usize];
2223    ["Offset of field: WGPUBufferDescriptor::nextInChain"]
2224        [::core::mem::offset_of!(WGPUBufferDescriptor, nextInChain) - 0usize];
2225    ["Offset of field: WGPUBufferDescriptor::label"]
2226        [::core::mem::offset_of!(WGPUBufferDescriptor, label) - 8usize];
2227    ["Offset of field: WGPUBufferDescriptor::usage"]
2228        [::core::mem::offset_of!(WGPUBufferDescriptor, usage) - 24usize];
2229    ["Offset of field: WGPUBufferDescriptor::size"]
2230        [::core::mem::offset_of!(WGPUBufferDescriptor, size) - 32usize];
2231    ["Offset of field: WGPUBufferDescriptor::mappedAtCreation"]
2232        [::core::mem::offset_of!(WGPUBufferDescriptor, mappedAtCreation) - 40usize];
2233};
2234#[repr(C)]
2235#[derive(Debug, Copy, Clone)]
2236pub struct WGPUColor {
2237    pub r: f64,
2238    pub g: f64,
2239    pub b: f64,
2240    pub a: f64,
2241}
2242#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2243const _: () = {
2244    ["Size of WGPUColor"][::core::mem::size_of::<WGPUColor>() - 32usize];
2245    ["Alignment of WGPUColor"][::core::mem::align_of::<WGPUColor>() - 8usize];
2246    ["Offset of field: WGPUColor::r"][::core::mem::offset_of!(WGPUColor, r) - 0usize];
2247    ["Offset of field: WGPUColor::g"][::core::mem::offset_of!(WGPUColor, g) - 8usize];
2248    ["Offset of field: WGPUColor::b"][::core::mem::offset_of!(WGPUColor, b) - 16usize];
2249    ["Offset of field: WGPUColor::a"][::core::mem::offset_of!(WGPUColor, a) - 24usize];
2250};
2251#[repr(C)]
2252#[derive(Debug, Copy, Clone)]
2253pub struct WGPUCommandBufferDescriptor {
2254    pub nextInChain: *mut WGPUChainedStruct,
2255    pub label: WGPUStringView,
2256}
2257#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2258const _: () = {
2259    ["Size of WGPUCommandBufferDescriptor"]
2260        [::core::mem::size_of::<WGPUCommandBufferDescriptor>() - 24usize];
2261    ["Alignment of WGPUCommandBufferDescriptor"]
2262        [::core::mem::align_of::<WGPUCommandBufferDescriptor>() - 8usize];
2263    ["Offset of field: WGPUCommandBufferDescriptor::nextInChain"]
2264        [::core::mem::offset_of!(WGPUCommandBufferDescriptor, nextInChain) - 0usize];
2265    ["Offset of field: WGPUCommandBufferDescriptor::label"]
2266        [::core::mem::offset_of!(WGPUCommandBufferDescriptor, label) - 8usize];
2267};
2268#[repr(C)]
2269#[derive(Debug, Copy, Clone)]
2270pub struct WGPUCommandEncoderDescriptor {
2271    pub nextInChain: *mut WGPUChainedStruct,
2272    pub label: WGPUStringView,
2273}
2274#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2275const _: () = {
2276    ["Size of WGPUCommandEncoderDescriptor"]
2277        [::core::mem::size_of::<WGPUCommandEncoderDescriptor>() - 24usize];
2278    ["Alignment of WGPUCommandEncoderDescriptor"]
2279        [::core::mem::align_of::<WGPUCommandEncoderDescriptor>() - 8usize];
2280    ["Offset of field: WGPUCommandEncoderDescriptor::nextInChain"]
2281        [::core::mem::offset_of!(WGPUCommandEncoderDescriptor, nextInChain) - 0usize];
2282    ["Offset of field: WGPUCommandEncoderDescriptor::label"]
2283        [::core::mem::offset_of!(WGPUCommandEncoderDescriptor, label) - 8usize];
2284};
2285#[repr(C)]
2286#[derive(Debug, Copy, Clone)]
2287pub struct WGPUCompilationMessage {
2288    pub nextInChain: *mut WGPUChainedStruct,
2289    pub message: WGPUStringView,
2290    pub type_: WGPUCompilationMessageType,
2291    pub lineNum: u64,
2292    pub linePos: u64,
2293    pub offset: u64,
2294    pub length: u64,
2295}
2296#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2297const _: () = {
2298    ["Size of WGPUCompilationMessage"][::core::mem::size_of::<WGPUCompilationMessage>() - 64usize];
2299    ["Alignment of WGPUCompilationMessage"]
2300        [::core::mem::align_of::<WGPUCompilationMessage>() - 8usize];
2301    ["Offset of field: WGPUCompilationMessage::nextInChain"]
2302        [::core::mem::offset_of!(WGPUCompilationMessage, nextInChain) - 0usize];
2303    ["Offset of field: WGPUCompilationMessage::message"]
2304        [::core::mem::offset_of!(WGPUCompilationMessage, message) - 8usize];
2305    ["Offset of field: WGPUCompilationMessage::type_"]
2306        [::core::mem::offset_of!(WGPUCompilationMessage, type_) - 24usize];
2307    ["Offset of field: WGPUCompilationMessage::lineNum"]
2308        [::core::mem::offset_of!(WGPUCompilationMessage, lineNum) - 32usize];
2309    ["Offset of field: WGPUCompilationMessage::linePos"]
2310        [::core::mem::offset_of!(WGPUCompilationMessage, linePos) - 40usize];
2311    ["Offset of field: WGPUCompilationMessage::offset"]
2312        [::core::mem::offset_of!(WGPUCompilationMessage, offset) - 48usize];
2313    ["Offset of field: WGPUCompilationMessage::length"]
2314        [::core::mem::offset_of!(WGPUCompilationMessage, length) - 56usize];
2315};
2316#[repr(C)]
2317#[derive(Debug, Copy, Clone)]
2318pub struct WGPUConstantEntry {
2319    pub nextInChain: *mut WGPUChainedStruct,
2320    pub key: WGPUStringView,
2321    pub value: f64,
2322}
2323#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2324const _: () = {
2325    ["Size of WGPUConstantEntry"][::core::mem::size_of::<WGPUConstantEntry>() - 32usize];
2326    ["Alignment of WGPUConstantEntry"][::core::mem::align_of::<WGPUConstantEntry>() - 8usize];
2327    ["Offset of field: WGPUConstantEntry::nextInChain"]
2328        [::core::mem::offset_of!(WGPUConstantEntry, nextInChain) - 0usize];
2329    ["Offset of field: WGPUConstantEntry::key"]
2330        [::core::mem::offset_of!(WGPUConstantEntry, key) - 8usize];
2331    ["Offset of field: WGPUConstantEntry::value"]
2332        [::core::mem::offset_of!(WGPUConstantEntry, value) - 24usize];
2333};
2334#[repr(C)]
2335#[derive(Debug, Copy, Clone)]
2336pub struct WGPUExtent3D {
2337    pub width: u32,
2338    pub height: u32,
2339    pub depthOrArrayLayers: u32,
2340}
2341#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2342const _: () = {
2343    ["Size of WGPUExtent3D"][::core::mem::size_of::<WGPUExtent3D>() - 12usize];
2344    ["Alignment of WGPUExtent3D"][::core::mem::align_of::<WGPUExtent3D>() - 4usize];
2345    ["Offset of field: WGPUExtent3D::width"][::core::mem::offset_of!(WGPUExtent3D, width) - 0usize];
2346    ["Offset of field: WGPUExtent3D::height"]
2347        [::core::mem::offset_of!(WGPUExtent3D, height) - 4usize];
2348    ["Offset of field: WGPUExtent3D::depthOrArrayLayers"]
2349        [::core::mem::offset_of!(WGPUExtent3D, depthOrArrayLayers) - 8usize];
2350};
2351#[repr(C)]
2352#[derive(Debug, Copy, Clone)]
2353pub struct WGPUFuture {
2354    pub id: u64,
2355}
2356#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2357const _: () = {
2358    ["Size of WGPUFuture"][::core::mem::size_of::<WGPUFuture>() - 8usize];
2359    ["Alignment of WGPUFuture"][::core::mem::align_of::<WGPUFuture>() - 8usize];
2360    ["Offset of field: WGPUFuture::id"][::core::mem::offset_of!(WGPUFuture, id) - 0usize];
2361};
2362#[repr(C)]
2363#[derive(Debug, Copy, Clone)]
2364pub struct WGPUInstanceLimits {
2365    pub nextInChain: *mut WGPUChainedStruct,
2366    pub timedWaitAnyMaxCount: usize,
2367}
2368#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2369const _: () = {
2370    ["Size of WGPUInstanceLimits"][::core::mem::size_of::<WGPUInstanceLimits>() - 16usize];
2371    ["Alignment of WGPUInstanceLimits"][::core::mem::align_of::<WGPUInstanceLimits>() - 8usize];
2372    ["Offset of field: WGPUInstanceLimits::nextInChain"]
2373        [::core::mem::offset_of!(WGPUInstanceLimits, nextInChain) - 0usize];
2374    ["Offset of field: WGPUInstanceLimits::timedWaitAnyMaxCount"]
2375        [::core::mem::offset_of!(WGPUInstanceLimits, timedWaitAnyMaxCount) - 8usize];
2376};
2377#[repr(C)]
2378#[derive(Debug, Copy, Clone)]
2379pub struct WGPULimits {
2380    pub nextInChain: *mut WGPUChainedStruct,
2381    pub maxTextureDimension1D: u32,
2382    pub maxTextureDimension2D: u32,
2383    pub maxTextureDimension3D: u32,
2384    pub maxTextureArrayLayers: u32,
2385    pub maxBindGroups: u32,
2386    pub maxBindGroupsPlusVertexBuffers: u32,
2387    pub maxBindingsPerBindGroup: u32,
2388    pub maxDynamicUniformBuffersPerPipelineLayout: u32,
2389    pub maxDynamicStorageBuffersPerPipelineLayout: u32,
2390    pub maxSampledTexturesPerShaderStage: u32,
2391    pub maxSamplersPerShaderStage: u32,
2392    pub maxStorageBuffersPerShaderStage: u32,
2393    pub maxStorageTexturesPerShaderStage: u32,
2394    pub maxUniformBuffersPerShaderStage: u32,
2395    pub maxUniformBufferBindingSize: u64,
2396    pub maxStorageBufferBindingSize: u64,
2397    pub minUniformBufferOffsetAlignment: u32,
2398    pub minStorageBufferOffsetAlignment: u32,
2399    pub maxVertexBuffers: u32,
2400    pub maxBufferSize: u64,
2401    pub maxVertexAttributes: u32,
2402    pub maxVertexBufferArrayStride: u32,
2403    pub maxInterStageShaderVariables: u32,
2404    pub maxColorAttachments: u32,
2405    pub maxColorAttachmentBytesPerSample: u32,
2406    pub maxComputeWorkgroupStorageSize: u32,
2407    pub maxComputeInvocationsPerWorkgroup: u32,
2408    pub maxComputeWorkgroupSizeX: u32,
2409    pub maxComputeWorkgroupSizeY: u32,
2410    pub maxComputeWorkgroupSizeZ: u32,
2411    pub maxComputeWorkgroupsPerDimension: u32,
2412    pub maxImmediateSize: u32,
2413}
2414#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2415const _: () = {
2416    ["Size of WGPULimits"][::core::mem::size_of::<WGPULimits>() - 152usize];
2417    ["Alignment of WGPULimits"][::core::mem::align_of::<WGPULimits>() - 8usize];
2418    ["Offset of field: WGPULimits::nextInChain"]
2419        [::core::mem::offset_of!(WGPULimits, nextInChain) - 0usize];
2420    ["Offset of field: WGPULimits::maxTextureDimension1D"]
2421        [::core::mem::offset_of!(WGPULimits, maxTextureDimension1D) - 8usize];
2422    ["Offset of field: WGPULimits::maxTextureDimension2D"]
2423        [::core::mem::offset_of!(WGPULimits, maxTextureDimension2D) - 12usize];
2424    ["Offset of field: WGPULimits::maxTextureDimension3D"]
2425        [::core::mem::offset_of!(WGPULimits, maxTextureDimension3D) - 16usize];
2426    ["Offset of field: WGPULimits::maxTextureArrayLayers"]
2427        [::core::mem::offset_of!(WGPULimits, maxTextureArrayLayers) - 20usize];
2428    ["Offset of field: WGPULimits::maxBindGroups"]
2429        [::core::mem::offset_of!(WGPULimits, maxBindGroups) - 24usize];
2430    ["Offset of field: WGPULimits::maxBindGroupsPlusVertexBuffers"]
2431        [::core::mem::offset_of!(WGPULimits, maxBindGroupsPlusVertexBuffers) - 28usize];
2432    ["Offset of field: WGPULimits::maxBindingsPerBindGroup"]
2433        [::core::mem::offset_of!(WGPULimits, maxBindingsPerBindGroup) - 32usize];
2434    ["Offset of field: WGPULimits::maxDynamicUniformBuffersPerPipelineLayout"]
2435        [::core::mem::offset_of!(WGPULimits, maxDynamicUniformBuffersPerPipelineLayout) - 36usize];
2436    ["Offset of field: WGPULimits::maxDynamicStorageBuffersPerPipelineLayout"]
2437        [::core::mem::offset_of!(WGPULimits, maxDynamicStorageBuffersPerPipelineLayout) - 40usize];
2438    ["Offset of field: WGPULimits::maxSampledTexturesPerShaderStage"]
2439        [::core::mem::offset_of!(WGPULimits, maxSampledTexturesPerShaderStage) - 44usize];
2440    ["Offset of field: WGPULimits::maxSamplersPerShaderStage"]
2441        [::core::mem::offset_of!(WGPULimits, maxSamplersPerShaderStage) - 48usize];
2442    ["Offset of field: WGPULimits::maxStorageBuffersPerShaderStage"]
2443        [::core::mem::offset_of!(WGPULimits, maxStorageBuffersPerShaderStage) - 52usize];
2444    ["Offset of field: WGPULimits::maxStorageTexturesPerShaderStage"]
2445        [::core::mem::offset_of!(WGPULimits, maxStorageTexturesPerShaderStage) - 56usize];
2446    ["Offset of field: WGPULimits::maxUniformBuffersPerShaderStage"]
2447        [::core::mem::offset_of!(WGPULimits, maxUniformBuffersPerShaderStage) - 60usize];
2448    ["Offset of field: WGPULimits::maxUniformBufferBindingSize"]
2449        [::core::mem::offset_of!(WGPULimits, maxUniformBufferBindingSize) - 64usize];
2450    ["Offset of field: WGPULimits::maxStorageBufferBindingSize"]
2451        [::core::mem::offset_of!(WGPULimits, maxStorageBufferBindingSize) - 72usize];
2452    ["Offset of field: WGPULimits::minUniformBufferOffsetAlignment"]
2453        [::core::mem::offset_of!(WGPULimits, minUniformBufferOffsetAlignment) - 80usize];
2454    ["Offset of field: WGPULimits::minStorageBufferOffsetAlignment"]
2455        [::core::mem::offset_of!(WGPULimits, minStorageBufferOffsetAlignment) - 84usize];
2456    ["Offset of field: WGPULimits::maxVertexBuffers"]
2457        [::core::mem::offset_of!(WGPULimits, maxVertexBuffers) - 88usize];
2458    ["Offset of field: WGPULimits::maxBufferSize"]
2459        [::core::mem::offset_of!(WGPULimits, maxBufferSize) - 96usize];
2460    ["Offset of field: WGPULimits::maxVertexAttributes"]
2461        [::core::mem::offset_of!(WGPULimits, maxVertexAttributes) - 104usize];
2462    ["Offset of field: WGPULimits::maxVertexBufferArrayStride"]
2463        [::core::mem::offset_of!(WGPULimits, maxVertexBufferArrayStride) - 108usize];
2464    ["Offset of field: WGPULimits::maxInterStageShaderVariables"]
2465        [::core::mem::offset_of!(WGPULimits, maxInterStageShaderVariables) - 112usize];
2466    ["Offset of field: WGPULimits::maxColorAttachments"]
2467        [::core::mem::offset_of!(WGPULimits, maxColorAttachments) - 116usize];
2468    ["Offset of field: WGPULimits::maxColorAttachmentBytesPerSample"]
2469        [::core::mem::offset_of!(WGPULimits, maxColorAttachmentBytesPerSample) - 120usize];
2470    ["Offset of field: WGPULimits::maxComputeWorkgroupStorageSize"]
2471        [::core::mem::offset_of!(WGPULimits, maxComputeWorkgroupStorageSize) - 124usize];
2472    ["Offset of field: WGPULimits::maxComputeInvocationsPerWorkgroup"]
2473        [::core::mem::offset_of!(WGPULimits, maxComputeInvocationsPerWorkgroup) - 128usize];
2474    ["Offset of field: WGPULimits::maxComputeWorkgroupSizeX"]
2475        [::core::mem::offset_of!(WGPULimits, maxComputeWorkgroupSizeX) - 132usize];
2476    ["Offset of field: WGPULimits::maxComputeWorkgroupSizeY"]
2477        [::core::mem::offset_of!(WGPULimits, maxComputeWorkgroupSizeY) - 136usize];
2478    ["Offset of field: WGPULimits::maxComputeWorkgroupSizeZ"]
2479        [::core::mem::offset_of!(WGPULimits, maxComputeWorkgroupSizeZ) - 140usize];
2480    ["Offset of field: WGPULimits::maxComputeWorkgroupsPerDimension"]
2481        [::core::mem::offset_of!(WGPULimits, maxComputeWorkgroupsPerDimension) - 144usize];
2482    ["Offset of field: WGPULimits::maxImmediateSize"]
2483        [::core::mem::offset_of!(WGPULimits, maxImmediateSize) - 148usize];
2484};
2485#[repr(C)]
2486#[derive(Debug, Copy, Clone)]
2487pub struct WGPUMultisampleState {
2488    pub nextInChain: *mut WGPUChainedStruct,
2489    pub count: u32,
2490    pub mask: u32,
2491    pub alphaToCoverageEnabled: WGPUBool,
2492}
2493#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2494const _: () = {
2495    ["Size of WGPUMultisampleState"][::core::mem::size_of::<WGPUMultisampleState>() - 24usize];
2496    ["Alignment of WGPUMultisampleState"][::core::mem::align_of::<WGPUMultisampleState>() - 8usize];
2497    ["Offset of field: WGPUMultisampleState::nextInChain"]
2498        [::core::mem::offset_of!(WGPUMultisampleState, nextInChain) - 0usize];
2499    ["Offset of field: WGPUMultisampleState::count"]
2500        [::core::mem::offset_of!(WGPUMultisampleState, count) - 8usize];
2501    ["Offset of field: WGPUMultisampleState::mask"]
2502        [::core::mem::offset_of!(WGPUMultisampleState, mask) - 12usize];
2503    ["Offset of field: WGPUMultisampleState::alphaToCoverageEnabled"]
2504        [::core::mem::offset_of!(WGPUMultisampleState, alphaToCoverageEnabled) - 16usize];
2505};
2506#[repr(C)]
2507#[derive(Debug, Copy, Clone)]
2508pub struct WGPUOrigin3D {
2509    pub x: u32,
2510    pub y: u32,
2511    pub z: u32,
2512}
2513#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2514const _: () = {
2515    ["Size of WGPUOrigin3D"][::core::mem::size_of::<WGPUOrigin3D>() - 12usize];
2516    ["Alignment of WGPUOrigin3D"][::core::mem::align_of::<WGPUOrigin3D>() - 4usize];
2517    ["Offset of field: WGPUOrigin3D::x"][::core::mem::offset_of!(WGPUOrigin3D, x) - 0usize];
2518    ["Offset of field: WGPUOrigin3D::y"][::core::mem::offset_of!(WGPUOrigin3D, y) - 4usize];
2519    ["Offset of field: WGPUOrigin3D::z"][::core::mem::offset_of!(WGPUOrigin3D, z) - 8usize];
2520};
2521#[repr(C)]
2522#[derive(Debug, Copy, Clone)]
2523pub struct WGPUPassTimestampWrites {
2524    pub nextInChain: *mut WGPUChainedStruct,
2525    pub querySet: WGPUQuerySet,
2526    pub beginningOfPassWriteIndex: u32,
2527    pub endOfPassWriteIndex: u32,
2528}
2529#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2530const _: () = {
2531    ["Size of WGPUPassTimestampWrites"]
2532        [::core::mem::size_of::<WGPUPassTimestampWrites>() - 24usize];
2533    ["Alignment of WGPUPassTimestampWrites"]
2534        [::core::mem::align_of::<WGPUPassTimestampWrites>() - 8usize];
2535    ["Offset of field: WGPUPassTimestampWrites::nextInChain"]
2536        [::core::mem::offset_of!(WGPUPassTimestampWrites, nextInChain) - 0usize];
2537    ["Offset of field: WGPUPassTimestampWrites::querySet"]
2538        [::core::mem::offset_of!(WGPUPassTimestampWrites, querySet) - 8usize];
2539    ["Offset of field: WGPUPassTimestampWrites::beginningOfPassWriteIndex"]
2540        [::core::mem::offset_of!(WGPUPassTimestampWrites, beginningOfPassWriteIndex) - 16usize];
2541    ["Offset of field: WGPUPassTimestampWrites::endOfPassWriteIndex"]
2542        [::core::mem::offset_of!(WGPUPassTimestampWrites, endOfPassWriteIndex) - 20usize];
2543};
2544#[repr(C)]
2545#[derive(Debug, Copy, Clone)]
2546pub struct WGPUPipelineLayoutDescriptor {
2547    pub nextInChain: *mut WGPUChainedStruct,
2548    pub label: WGPUStringView,
2549    pub bindGroupLayoutCount: usize,
2550    pub bindGroupLayouts: *const WGPUBindGroupLayout,
2551    pub immediateSize: u32,
2552}
2553#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2554const _: () = {
2555    ["Size of WGPUPipelineLayoutDescriptor"]
2556        [::core::mem::size_of::<WGPUPipelineLayoutDescriptor>() - 48usize];
2557    ["Alignment of WGPUPipelineLayoutDescriptor"]
2558        [::core::mem::align_of::<WGPUPipelineLayoutDescriptor>() - 8usize];
2559    ["Offset of field: WGPUPipelineLayoutDescriptor::nextInChain"]
2560        [::core::mem::offset_of!(WGPUPipelineLayoutDescriptor, nextInChain) - 0usize];
2561    ["Offset of field: WGPUPipelineLayoutDescriptor::label"]
2562        [::core::mem::offset_of!(WGPUPipelineLayoutDescriptor, label) - 8usize];
2563    ["Offset of field: WGPUPipelineLayoutDescriptor::bindGroupLayoutCount"]
2564        [::core::mem::offset_of!(WGPUPipelineLayoutDescriptor, bindGroupLayoutCount) - 24usize];
2565    ["Offset of field: WGPUPipelineLayoutDescriptor::bindGroupLayouts"]
2566        [::core::mem::offset_of!(WGPUPipelineLayoutDescriptor, bindGroupLayouts) - 32usize];
2567    ["Offset of field: WGPUPipelineLayoutDescriptor::immediateSize"]
2568        [::core::mem::offset_of!(WGPUPipelineLayoutDescriptor, immediateSize) - 40usize];
2569};
2570#[repr(C)]
2571#[derive(Debug, Copy, Clone)]
2572pub struct WGPUPrimitiveState {
2573    pub nextInChain: *mut WGPUChainedStruct,
2574    pub topology: WGPUPrimitiveTopology,
2575    pub stripIndexFormat: WGPUIndexFormat,
2576    pub frontFace: WGPUFrontFace,
2577    pub cullMode: WGPUCullMode,
2578    pub unclippedDepth: WGPUBool,
2579}
2580#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2581const _: () = {
2582    ["Size of WGPUPrimitiveState"][::core::mem::size_of::<WGPUPrimitiveState>() - 32usize];
2583    ["Alignment of WGPUPrimitiveState"][::core::mem::align_of::<WGPUPrimitiveState>() - 8usize];
2584    ["Offset of field: WGPUPrimitiveState::nextInChain"]
2585        [::core::mem::offset_of!(WGPUPrimitiveState, nextInChain) - 0usize];
2586    ["Offset of field: WGPUPrimitiveState::topology"]
2587        [::core::mem::offset_of!(WGPUPrimitiveState, topology) - 8usize];
2588    ["Offset of field: WGPUPrimitiveState::stripIndexFormat"]
2589        [::core::mem::offset_of!(WGPUPrimitiveState, stripIndexFormat) - 12usize];
2590    ["Offset of field: WGPUPrimitiveState::frontFace"]
2591        [::core::mem::offset_of!(WGPUPrimitiveState, frontFace) - 16usize];
2592    ["Offset of field: WGPUPrimitiveState::cullMode"]
2593        [::core::mem::offset_of!(WGPUPrimitiveState, cullMode) - 20usize];
2594    ["Offset of field: WGPUPrimitiveState::unclippedDepth"]
2595        [::core::mem::offset_of!(WGPUPrimitiveState, unclippedDepth) - 24usize];
2596};
2597#[repr(C)]
2598#[derive(Debug, Copy, Clone)]
2599pub struct WGPUQuerySetDescriptor {
2600    pub nextInChain: *mut WGPUChainedStruct,
2601    pub label: WGPUStringView,
2602    pub type_: WGPUQueryType,
2603    pub count: u32,
2604}
2605#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2606const _: () = {
2607    ["Size of WGPUQuerySetDescriptor"][::core::mem::size_of::<WGPUQuerySetDescriptor>() - 32usize];
2608    ["Alignment of WGPUQuerySetDescriptor"]
2609        [::core::mem::align_of::<WGPUQuerySetDescriptor>() - 8usize];
2610    ["Offset of field: WGPUQuerySetDescriptor::nextInChain"]
2611        [::core::mem::offset_of!(WGPUQuerySetDescriptor, nextInChain) - 0usize];
2612    ["Offset of field: WGPUQuerySetDescriptor::label"]
2613        [::core::mem::offset_of!(WGPUQuerySetDescriptor, label) - 8usize];
2614    ["Offset of field: WGPUQuerySetDescriptor::type_"]
2615        [::core::mem::offset_of!(WGPUQuerySetDescriptor, type_) - 24usize];
2616    ["Offset of field: WGPUQuerySetDescriptor::count"]
2617        [::core::mem::offset_of!(WGPUQuerySetDescriptor, count) - 28usize];
2618};
2619#[repr(C)]
2620#[derive(Debug, Copy, Clone)]
2621pub struct WGPUQueueDescriptor {
2622    pub nextInChain: *mut WGPUChainedStruct,
2623    pub label: WGPUStringView,
2624}
2625#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2626const _: () = {
2627    ["Size of WGPUQueueDescriptor"][::core::mem::size_of::<WGPUQueueDescriptor>() - 24usize];
2628    ["Alignment of WGPUQueueDescriptor"][::core::mem::align_of::<WGPUQueueDescriptor>() - 8usize];
2629    ["Offset of field: WGPUQueueDescriptor::nextInChain"]
2630        [::core::mem::offset_of!(WGPUQueueDescriptor, nextInChain) - 0usize];
2631    ["Offset of field: WGPUQueueDescriptor::label"]
2632        [::core::mem::offset_of!(WGPUQueueDescriptor, label) - 8usize];
2633};
2634#[repr(C)]
2635#[derive(Debug, Copy, Clone)]
2636pub struct WGPURenderBundleDescriptor {
2637    pub nextInChain: *mut WGPUChainedStruct,
2638    pub label: WGPUStringView,
2639}
2640#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2641const _: () = {
2642    ["Size of WGPURenderBundleDescriptor"]
2643        [::core::mem::size_of::<WGPURenderBundleDescriptor>() - 24usize];
2644    ["Alignment of WGPURenderBundleDescriptor"]
2645        [::core::mem::align_of::<WGPURenderBundleDescriptor>() - 8usize];
2646    ["Offset of field: WGPURenderBundleDescriptor::nextInChain"]
2647        [::core::mem::offset_of!(WGPURenderBundleDescriptor, nextInChain) - 0usize];
2648    ["Offset of field: WGPURenderBundleDescriptor::label"]
2649        [::core::mem::offset_of!(WGPURenderBundleDescriptor, label) - 8usize];
2650};
2651#[repr(C)]
2652#[derive(Debug, Copy, Clone)]
2653pub struct WGPURenderBundleEncoderDescriptor {
2654    pub nextInChain: *mut WGPUChainedStruct,
2655    pub label: WGPUStringView,
2656    pub colorFormatCount: usize,
2657    pub colorFormats: *const WGPUTextureFormat,
2658    pub depthStencilFormat: WGPUTextureFormat,
2659    pub sampleCount: u32,
2660    pub depthReadOnly: WGPUBool,
2661    pub stencilReadOnly: WGPUBool,
2662}
2663#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2664const _: () = {
2665    ["Size of WGPURenderBundleEncoderDescriptor"]
2666        [::core::mem::size_of::<WGPURenderBundleEncoderDescriptor>() - 56usize];
2667    ["Alignment of WGPURenderBundleEncoderDescriptor"]
2668        [::core::mem::align_of::<WGPURenderBundleEncoderDescriptor>() - 8usize];
2669    ["Offset of field: WGPURenderBundleEncoderDescriptor::nextInChain"]
2670        [::core::mem::offset_of!(WGPURenderBundleEncoderDescriptor, nextInChain) - 0usize];
2671    ["Offset of field: WGPURenderBundleEncoderDescriptor::label"]
2672        [::core::mem::offset_of!(WGPURenderBundleEncoderDescriptor, label) - 8usize];
2673    ["Offset of field: WGPURenderBundleEncoderDescriptor::colorFormatCount"]
2674        [::core::mem::offset_of!(WGPURenderBundleEncoderDescriptor, colorFormatCount) - 24usize];
2675    ["Offset of field: WGPURenderBundleEncoderDescriptor::colorFormats"]
2676        [::core::mem::offset_of!(WGPURenderBundleEncoderDescriptor, colorFormats) - 32usize];
2677    ["Offset of field: WGPURenderBundleEncoderDescriptor::depthStencilFormat"]
2678        [::core::mem::offset_of!(WGPURenderBundleEncoderDescriptor, depthStencilFormat) - 40usize];
2679    ["Offset of field: WGPURenderBundleEncoderDescriptor::sampleCount"]
2680        [::core::mem::offset_of!(WGPURenderBundleEncoderDescriptor, sampleCount) - 44usize];
2681    ["Offset of field: WGPURenderBundleEncoderDescriptor::depthReadOnly"]
2682        [::core::mem::offset_of!(WGPURenderBundleEncoderDescriptor, depthReadOnly) - 48usize];
2683    ["Offset of field: WGPURenderBundleEncoderDescriptor::stencilReadOnly"]
2684        [::core::mem::offset_of!(WGPURenderBundleEncoderDescriptor, stencilReadOnly) - 52usize];
2685};
2686#[repr(C)]
2687#[derive(Debug, Copy, Clone)]
2688pub struct WGPURenderPassDepthStencilAttachment {
2689    pub nextInChain: *mut WGPUChainedStruct,
2690    pub view: WGPUTextureView,
2691    pub depthLoadOp: WGPULoadOp,
2692    pub depthStoreOp: WGPUStoreOp,
2693    pub depthClearValue: f32,
2694    pub depthReadOnly: WGPUBool,
2695    pub stencilLoadOp: WGPULoadOp,
2696    pub stencilStoreOp: WGPUStoreOp,
2697    pub stencilClearValue: u32,
2698    pub stencilReadOnly: WGPUBool,
2699}
2700#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2701const _: () = {
2702    ["Size of WGPURenderPassDepthStencilAttachment"]
2703        [::core::mem::size_of::<WGPURenderPassDepthStencilAttachment>() - 48usize];
2704    ["Alignment of WGPURenderPassDepthStencilAttachment"]
2705        [::core::mem::align_of::<WGPURenderPassDepthStencilAttachment>() - 8usize];
2706    ["Offset of field: WGPURenderPassDepthStencilAttachment::nextInChain"]
2707        [::core::mem::offset_of!(WGPURenderPassDepthStencilAttachment, nextInChain) - 0usize];
2708    ["Offset of field: WGPURenderPassDepthStencilAttachment::view"]
2709        [::core::mem::offset_of!(WGPURenderPassDepthStencilAttachment, view) - 8usize];
2710    ["Offset of field: WGPURenderPassDepthStencilAttachment::depthLoadOp"]
2711        [::core::mem::offset_of!(WGPURenderPassDepthStencilAttachment, depthLoadOp) - 16usize];
2712    ["Offset of field: WGPURenderPassDepthStencilAttachment::depthStoreOp"]
2713        [::core::mem::offset_of!(WGPURenderPassDepthStencilAttachment, depthStoreOp) - 20usize];
2714    ["Offset of field: WGPURenderPassDepthStencilAttachment::depthClearValue"]
2715        [::core::mem::offset_of!(WGPURenderPassDepthStencilAttachment, depthClearValue) - 24usize];
2716    ["Offset of field: WGPURenderPassDepthStencilAttachment::depthReadOnly"]
2717        [::core::mem::offset_of!(WGPURenderPassDepthStencilAttachment, depthReadOnly) - 28usize];
2718    ["Offset of field: WGPURenderPassDepthStencilAttachment::stencilLoadOp"]
2719        [::core::mem::offset_of!(WGPURenderPassDepthStencilAttachment, stencilLoadOp) - 32usize];
2720    ["Offset of field: WGPURenderPassDepthStencilAttachment::stencilStoreOp"]
2721        [::core::mem::offset_of!(WGPURenderPassDepthStencilAttachment, stencilStoreOp) - 36usize];
2722    ["Offset of field: WGPURenderPassDepthStencilAttachment::stencilClearValue"][::core::mem::offset_of!(
2723        WGPURenderPassDepthStencilAttachment,
2724        stencilClearValue
2725    ) - 40usize];
2726    ["Offset of field: WGPURenderPassDepthStencilAttachment::stencilReadOnly"]
2727        [::core::mem::offset_of!(WGPURenderPassDepthStencilAttachment, stencilReadOnly) - 44usize];
2728};
2729#[repr(C)]
2730#[derive(Debug, Copy, Clone)]
2731pub struct WGPURenderPassMaxDrawCount {
2732    pub chain: WGPUChainedStruct,
2733    pub maxDrawCount: u64,
2734}
2735#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2736const _: () = {
2737    ["Size of WGPURenderPassMaxDrawCount"]
2738        [::core::mem::size_of::<WGPURenderPassMaxDrawCount>() - 24usize];
2739    ["Alignment of WGPURenderPassMaxDrawCount"]
2740        [::core::mem::align_of::<WGPURenderPassMaxDrawCount>() - 8usize];
2741    ["Offset of field: WGPURenderPassMaxDrawCount::chain"]
2742        [::core::mem::offset_of!(WGPURenderPassMaxDrawCount, chain) - 0usize];
2743    ["Offset of field: WGPURenderPassMaxDrawCount::maxDrawCount"]
2744        [::core::mem::offset_of!(WGPURenderPassMaxDrawCount, maxDrawCount) - 16usize];
2745};
2746#[repr(C)]
2747#[derive(Debug, Copy, Clone)]
2748pub struct WGPURequestAdapterWebXROptions {
2749    pub chain: WGPUChainedStruct,
2750    pub xrCompatible: WGPUBool,
2751}
2752#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2753const _: () = {
2754    ["Size of WGPURequestAdapterWebXROptions"]
2755        [::core::mem::size_of::<WGPURequestAdapterWebXROptions>() - 24usize];
2756    ["Alignment of WGPURequestAdapterWebXROptions"]
2757        [::core::mem::align_of::<WGPURequestAdapterWebXROptions>() - 8usize];
2758    ["Offset of field: WGPURequestAdapterWebXROptions::chain"]
2759        [::core::mem::offset_of!(WGPURequestAdapterWebXROptions, chain) - 0usize];
2760    ["Offset of field: WGPURequestAdapterWebXROptions::xrCompatible"]
2761        [::core::mem::offset_of!(WGPURequestAdapterWebXROptions, xrCompatible) - 16usize];
2762};
2763#[repr(C)]
2764#[derive(Debug, Copy, Clone)]
2765pub struct WGPUSamplerBindingLayout {
2766    pub nextInChain: *mut WGPUChainedStruct,
2767    pub type_: WGPUSamplerBindingType,
2768}
2769#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2770const _: () = {
2771    ["Size of WGPUSamplerBindingLayout"]
2772        [::core::mem::size_of::<WGPUSamplerBindingLayout>() - 16usize];
2773    ["Alignment of WGPUSamplerBindingLayout"]
2774        [::core::mem::align_of::<WGPUSamplerBindingLayout>() - 8usize];
2775    ["Offset of field: WGPUSamplerBindingLayout::nextInChain"]
2776        [::core::mem::offset_of!(WGPUSamplerBindingLayout, nextInChain) - 0usize];
2777    ["Offset of field: WGPUSamplerBindingLayout::type_"]
2778        [::core::mem::offset_of!(WGPUSamplerBindingLayout, type_) - 8usize];
2779};
2780#[repr(C)]
2781#[derive(Debug, Copy, Clone)]
2782pub struct WGPUSamplerDescriptor {
2783    pub nextInChain: *mut WGPUChainedStruct,
2784    pub label: WGPUStringView,
2785    pub addressModeU: WGPUAddressMode,
2786    pub addressModeV: WGPUAddressMode,
2787    pub addressModeW: WGPUAddressMode,
2788    pub magFilter: WGPUFilterMode,
2789    pub minFilter: WGPUFilterMode,
2790    pub mipmapFilter: WGPUMipmapFilterMode,
2791    pub lodMinClamp: f32,
2792    pub lodMaxClamp: f32,
2793    pub compare: WGPUCompareFunction,
2794    pub maxAnisotropy: u16,
2795}
2796#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2797const _: () = {
2798    ["Size of WGPUSamplerDescriptor"][::core::mem::size_of::<WGPUSamplerDescriptor>() - 64usize];
2799    ["Alignment of WGPUSamplerDescriptor"]
2800        [::core::mem::align_of::<WGPUSamplerDescriptor>() - 8usize];
2801    ["Offset of field: WGPUSamplerDescriptor::nextInChain"]
2802        [::core::mem::offset_of!(WGPUSamplerDescriptor, nextInChain) - 0usize];
2803    ["Offset of field: WGPUSamplerDescriptor::label"]
2804        [::core::mem::offset_of!(WGPUSamplerDescriptor, label) - 8usize];
2805    ["Offset of field: WGPUSamplerDescriptor::addressModeU"]
2806        [::core::mem::offset_of!(WGPUSamplerDescriptor, addressModeU) - 24usize];
2807    ["Offset of field: WGPUSamplerDescriptor::addressModeV"]
2808        [::core::mem::offset_of!(WGPUSamplerDescriptor, addressModeV) - 28usize];
2809    ["Offset of field: WGPUSamplerDescriptor::addressModeW"]
2810        [::core::mem::offset_of!(WGPUSamplerDescriptor, addressModeW) - 32usize];
2811    ["Offset of field: WGPUSamplerDescriptor::magFilter"]
2812        [::core::mem::offset_of!(WGPUSamplerDescriptor, magFilter) - 36usize];
2813    ["Offset of field: WGPUSamplerDescriptor::minFilter"]
2814        [::core::mem::offset_of!(WGPUSamplerDescriptor, minFilter) - 40usize];
2815    ["Offset of field: WGPUSamplerDescriptor::mipmapFilter"]
2816        [::core::mem::offset_of!(WGPUSamplerDescriptor, mipmapFilter) - 44usize];
2817    ["Offset of field: WGPUSamplerDescriptor::lodMinClamp"]
2818        [::core::mem::offset_of!(WGPUSamplerDescriptor, lodMinClamp) - 48usize];
2819    ["Offset of field: WGPUSamplerDescriptor::lodMaxClamp"]
2820        [::core::mem::offset_of!(WGPUSamplerDescriptor, lodMaxClamp) - 52usize];
2821    ["Offset of field: WGPUSamplerDescriptor::compare"]
2822        [::core::mem::offset_of!(WGPUSamplerDescriptor, compare) - 56usize];
2823    ["Offset of field: WGPUSamplerDescriptor::maxAnisotropy"]
2824        [::core::mem::offset_of!(WGPUSamplerDescriptor, maxAnisotropy) - 60usize];
2825};
2826#[repr(C)]
2827#[derive(Debug, Copy, Clone)]
2828pub struct WGPUShaderSourceSPIRV {
2829    pub chain: WGPUChainedStruct,
2830    pub codeSize: u32,
2831    pub code: *const u32,
2832}
2833#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2834const _: () = {
2835    ["Size of WGPUShaderSourceSPIRV"][::core::mem::size_of::<WGPUShaderSourceSPIRV>() - 32usize];
2836    ["Alignment of WGPUShaderSourceSPIRV"]
2837        [::core::mem::align_of::<WGPUShaderSourceSPIRV>() - 8usize];
2838    ["Offset of field: WGPUShaderSourceSPIRV::chain"]
2839        [::core::mem::offset_of!(WGPUShaderSourceSPIRV, chain) - 0usize];
2840    ["Offset of field: WGPUShaderSourceSPIRV::codeSize"]
2841        [::core::mem::offset_of!(WGPUShaderSourceSPIRV, codeSize) - 16usize];
2842    ["Offset of field: WGPUShaderSourceSPIRV::code"]
2843        [::core::mem::offset_of!(WGPUShaderSourceSPIRV, code) - 24usize];
2844};
2845#[repr(C)]
2846#[derive(Debug, Copy, Clone)]
2847pub struct WGPUShaderSourceWGSL {
2848    pub chain: WGPUChainedStruct,
2849    pub code: WGPUStringView,
2850}
2851#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2852const _: () = {
2853    ["Size of WGPUShaderSourceWGSL"][::core::mem::size_of::<WGPUShaderSourceWGSL>() - 32usize];
2854    ["Alignment of WGPUShaderSourceWGSL"][::core::mem::align_of::<WGPUShaderSourceWGSL>() - 8usize];
2855    ["Offset of field: WGPUShaderSourceWGSL::chain"]
2856        [::core::mem::offset_of!(WGPUShaderSourceWGSL, chain) - 0usize];
2857    ["Offset of field: WGPUShaderSourceWGSL::code"]
2858        [::core::mem::offset_of!(WGPUShaderSourceWGSL, code) - 16usize];
2859};
2860#[repr(C)]
2861#[derive(Debug, Copy, Clone)]
2862pub struct WGPUStencilFaceState {
2863    pub compare: WGPUCompareFunction,
2864    pub failOp: WGPUStencilOperation,
2865    pub depthFailOp: WGPUStencilOperation,
2866    pub passOp: WGPUStencilOperation,
2867}
2868#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2869const _: () = {
2870    ["Size of WGPUStencilFaceState"][::core::mem::size_of::<WGPUStencilFaceState>() - 16usize];
2871    ["Alignment of WGPUStencilFaceState"][::core::mem::align_of::<WGPUStencilFaceState>() - 4usize];
2872    ["Offset of field: WGPUStencilFaceState::compare"]
2873        [::core::mem::offset_of!(WGPUStencilFaceState, compare) - 0usize];
2874    ["Offset of field: WGPUStencilFaceState::failOp"]
2875        [::core::mem::offset_of!(WGPUStencilFaceState, failOp) - 4usize];
2876    ["Offset of field: WGPUStencilFaceState::depthFailOp"]
2877        [::core::mem::offset_of!(WGPUStencilFaceState, depthFailOp) - 8usize];
2878    ["Offset of field: WGPUStencilFaceState::passOp"]
2879        [::core::mem::offset_of!(WGPUStencilFaceState, passOp) - 12usize];
2880};
2881#[repr(C)]
2882#[derive(Debug, Copy, Clone)]
2883pub struct WGPUStorageTextureBindingLayout {
2884    pub nextInChain: *mut WGPUChainedStruct,
2885    pub access: WGPUStorageTextureAccess,
2886    pub format: WGPUTextureFormat,
2887    pub viewDimension: WGPUTextureViewDimension,
2888}
2889#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2890const _: () = {
2891    ["Size of WGPUStorageTextureBindingLayout"]
2892        [::core::mem::size_of::<WGPUStorageTextureBindingLayout>() - 24usize];
2893    ["Alignment of WGPUStorageTextureBindingLayout"]
2894        [::core::mem::align_of::<WGPUStorageTextureBindingLayout>() - 8usize];
2895    ["Offset of field: WGPUStorageTextureBindingLayout::nextInChain"]
2896        [::core::mem::offset_of!(WGPUStorageTextureBindingLayout, nextInChain) - 0usize];
2897    ["Offset of field: WGPUStorageTextureBindingLayout::access"]
2898        [::core::mem::offset_of!(WGPUStorageTextureBindingLayout, access) - 8usize];
2899    ["Offset of field: WGPUStorageTextureBindingLayout::format"]
2900        [::core::mem::offset_of!(WGPUStorageTextureBindingLayout, format) - 12usize];
2901    ["Offset of field: WGPUStorageTextureBindingLayout::viewDimension"]
2902        [::core::mem::offset_of!(WGPUStorageTextureBindingLayout, viewDimension) - 16usize];
2903};
2904#[repr(C)]
2905#[derive(Debug, Copy, Clone)]
2906pub struct WGPUSupportedFeatures {
2907    pub featureCount: usize,
2908    pub features: *const WGPUFeatureName,
2909}
2910#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2911const _: () = {
2912    ["Size of WGPUSupportedFeatures"][::core::mem::size_of::<WGPUSupportedFeatures>() - 16usize];
2913    ["Alignment of WGPUSupportedFeatures"]
2914        [::core::mem::align_of::<WGPUSupportedFeatures>() - 8usize];
2915    ["Offset of field: WGPUSupportedFeatures::featureCount"]
2916        [::core::mem::offset_of!(WGPUSupportedFeatures, featureCount) - 0usize];
2917    ["Offset of field: WGPUSupportedFeatures::features"]
2918        [::core::mem::offset_of!(WGPUSupportedFeatures, features) - 8usize];
2919};
2920#[repr(C)]
2921#[derive(Debug, Copy, Clone)]
2922pub struct WGPUSupportedInstanceFeatures {
2923    pub featureCount: usize,
2924    pub features: *const WGPUInstanceFeatureName,
2925}
2926#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2927const _: () = {
2928    ["Size of WGPUSupportedInstanceFeatures"]
2929        [::core::mem::size_of::<WGPUSupportedInstanceFeatures>() - 16usize];
2930    ["Alignment of WGPUSupportedInstanceFeatures"]
2931        [::core::mem::align_of::<WGPUSupportedInstanceFeatures>() - 8usize];
2932    ["Offset of field: WGPUSupportedInstanceFeatures::featureCount"]
2933        [::core::mem::offset_of!(WGPUSupportedInstanceFeatures, featureCount) - 0usize];
2934    ["Offset of field: WGPUSupportedInstanceFeatures::features"]
2935        [::core::mem::offset_of!(WGPUSupportedInstanceFeatures, features) - 8usize];
2936};
2937#[repr(C)]
2938#[derive(Debug, Copy, Clone)]
2939pub struct WGPUSupportedWGSLLanguageFeatures {
2940    pub featureCount: usize,
2941    pub features: *const WGPUWGSLLanguageFeatureName,
2942}
2943#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2944const _: () = {
2945    ["Size of WGPUSupportedWGSLLanguageFeatures"]
2946        [::core::mem::size_of::<WGPUSupportedWGSLLanguageFeatures>() - 16usize];
2947    ["Alignment of WGPUSupportedWGSLLanguageFeatures"]
2948        [::core::mem::align_of::<WGPUSupportedWGSLLanguageFeatures>() - 8usize];
2949    ["Offset of field: WGPUSupportedWGSLLanguageFeatures::featureCount"]
2950        [::core::mem::offset_of!(WGPUSupportedWGSLLanguageFeatures, featureCount) - 0usize];
2951    ["Offset of field: WGPUSupportedWGSLLanguageFeatures::features"]
2952        [::core::mem::offset_of!(WGPUSupportedWGSLLanguageFeatures, features) - 8usize];
2953};
2954#[repr(C)]
2955#[derive(Debug, Copy, Clone)]
2956pub struct WGPUSurfaceCapabilities {
2957    pub nextInChain: *mut WGPUChainedStruct,
2958    pub usages: WGPUTextureUsage,
2959    pub formatCount: usize,
2960    pub formats: *const WGPUTextureFormat,
2961    pub presentModeCount: usize,
2962    pub presentModes: *const WGPUPresentMode,
2963    pub alphaModeCount: usize,
2964    pub alphaModes: *const WGPUCompositeAlphaMode,
2965}
2966#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2967const _: () = {
2968    ["Size of WGPUSurfaceCapabilities"]
2969        [::core::mem::size_of::<WGPUSurfaceCapabilities>() - 64usize];
2970    ["Alignment of WGPUSurfaceCapabilities"]
2971        [::core::mem::align_of::<WGPUSurfaceCapabilities>() - 8usize];
2972    ["Offset of field: WGPUSurfaceCapabilities::nextInChain"]
2973        [::core::mem::offset_of!(WGPUSurfaceCapabilities, nextInChain) - 0usize];
2974    ["Offset of field: WGPUSurfaceCapabilities::usages"]
2975        [::core::mem::offset_of!(WGPUSurfaceCapabilities, usages) - 8usize];
2976    ["Offset of field: WGPUSurfaceCapabilities::formatCount"]
2977        [::core::mem::offset_of!(WGPUSurfaceCapabilities, formatCount) - 16usize];
2978    ["Offset of field: WGPUSurfaceCapabilities::formats"]
2979        [::core::mem::offset_of!(WGPUSurfaceCapabilities, formats) - 24usize];
2980    ["Offset of field: WGPUSurfaceCapabilities::presentModeCount"]
2981        [::core::mem::offset_of!(WGPUSurfaceCapabilities, presentModeCount) - 32usize];
2982    ["Offset of field: WGPUSurfaceCapabilities::presentModes"]
2983        [::core::mem::offset_of!(WGPUSurfaceCapabilities, presentModes) - 40usize];
2984    ["Offset of field: WGPUSurfaceCapabilities::alphaModeCount"]
2985        [::core::mem::offset_of!(WGPUSurfaceCapabilities, alphaModeCount) - 48usize];
2986    ["Offset of field: WGPUSurfaceCapabilities::alphaModes"]
2987        [::core::mem::offset_of!(WGPUSurfaceCapabilities, alphaModes) - 56usize];
2988};
2989#[repr(C)]
2990#[derive(Debug, Copy, Clone)]
2991pub struct WGPUSurfaceColorManagement {
2992    pub chain: WGPUChainedStruct,
2993    pub colorSpace: WGPUPredefinedColorSpace,
2994    pub toneMappingMode: WGPUToneMappingMode,
2995}
2996#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2997const _: () = {
2998    ["Size of WGPUSurfaceColorManagement"]
2999        [::core::mem::size_of::<WGPUSurfaceColorManagement>() - 24usize];
3000    ["Alignment of WGPUSurfaceColorManagement"]
3001        [::core::mem::align_of::<WGPUSurfaceColorManagement>() - 8usize];
3002    ["Offset of field: WGPUSurfaceColorManagement::chain"]
3003        [::core::mem::offset_of!(WGPUSurfaceColorManagement, chain) - 0usize];
3004    ["Offset of field: WGPUSurfaceColorManagement::colorSpace"]
3005        [::core::mem::offset_of!(WGPUSurfaceColorManagement, colorSpace) - 16usize];
3006    ["Offset of field: WGPUSurfaceColorManagement::toneMappingMode"]
3007        [::core::mem::offset_of!(WGPUSurfaceColorManagement, toneMappingMode) - 20usize];
3008};
3009#[repr(C)]
3010#[derive(Debug, Copy, Clone)]
3011pub struct WGPUSurfaceConfiguration {
3012    pub nextInChain: *mut WGPUChainedStruct,
3013    pub device: WGPUDevice,
3014    pub format: WGPUTextureFormat,
3015    pub usage: WGPUTextureUsage,
3016    pub width: u32,
3017    pub height: u32,
3018    pub viewFormatCount: usize,
3019    pub viewFormats: *const WGPUTextureFormat,
3020    pub alphaMode: WGPUCompositeAlphaMode,
3021    pub presentMode: WGPUPresentMode,
3022}
3023#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3024const _: () = {
3025    ["Size of WGPUSurfaceConfiguration"]
3026        [::core::mem::size_of::<WGPUSurfaceConfiguration>() - 64usize];
3027    ["Alignment of WGPUSurfaceConfiguration"]
3028        [::core::mem::align_of::<WGPUSurfaceConfiguration>() - 8usize];
3029    ["Offset of field: WGPUSurfaceConfiguration::nextInChain"]
3030        [::core::mem::offset_of!(WGPUSurfaceConfiguration, nextInChain) - 0usize];
3031    ["Offset of field: WGPUSurfaceConfiguration::device"]
3032        [::core::mem::offset_of!(WGPUSurfaceConfiguration, device) - 8usize];
3033    ["Offset of field: WGPUSurfaceConfiguration::format"]
3034        [::core::mem::offset_of!(WGPUSurfaceConfiguration, format) - 16usize];
3035    ["Offset of field: WGPUSurfaceConfiguration::usage"]
3036        [::core::mem::offset_of!(WGPUSurfaceConfiguration, usage) - 24usize];
3037    ["Offset of field: WGPUSurfaceConfiguration::width"]
3038        [::core::mem::offset_of!(WGPUSurfaceConfiguration, width) - 32usize];
3039    ["Offset of field: WGPUSurfaceConfiguration::height"]
3040        [::core::mem::offset_of!(WGPUSurfaceConfiguration, height) - 36usize];
3041    ["Offset of field: WGPUSurfaceConfiguration::viewFormatCount"]
3042        [::core::mem::offset_of!(WGPUSurfaceConfiguration, viewFormatCount) - 40usize];
3043    ["Offset of field: WGPUSurfaceConfiguration::viewFormats"]
3044        [::core::mem::offset_of!(WGPUSurfaceConfiguration, viewFormats) - 48usize];
3045    ["Offset of field: WGPUSurfaceConfiguration::alphaMode"]
3046        [::core::mem::offset_of!(WGPUSurfaceConfiguration, alphaMode) - 56usize];
3047    ["Offset of field: WGPUSurfaceConfiguration::presentMode"]
3048        [::core::mem::offset_of!(WGPUSurfaceConfiguration, presentMode) - 60usize];
3049};
3050#[repr(C)]
3051#[derive(Debug, Copy, Clone)]
3052pub struct WGPUSurfaceSourceAndroidNativeWindow {
3053    pub chain: WGPUChainedStruct,
3054    pub window: *mut ::core::ffi::c_void,
3055}
3056#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3057const _: () = {
3058    ["Size of WGPUSurfaceSourceAndroidNativeWindow"]
3059        [::core::mem::size_of::<WGPUSurfaceSourceAndroidNativeWindow>() - 24usize];
3060    ["Alignment of WGPUSurfaceSourceAndroidNativeWindow"]
3061        [::core::mem::align_of::<WGPUSurfaceSourceAndroidNativeWindow>() - 8usize];
3062    ["Offset of field: WGPUSurfaceSourceAndroidNativeWindow::chain"]
3063        [::core::mem::offset_of!(WGPUSurfaceSourceAndroidNativeWindow, chain) - 0usize];
3064    ["Offset of field: WGPUSurfaceSourceAndroidNativeWindow::window"]
3065        [::core::mem::offset_of!(WGPUSurfaceSourceAndroidNativeWindow, window) - 16usize];
3066};
3067#[repr(C)]
3068#[derive(Debug, Copy, Clone)]
3069pub struct WGPUSurfaceSourceMetalLayer {
3070    pub chain: WGPUChainedStruct,
3071    pub layer: *mut ::core::ffi::c_void,
3072}
3073#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3074const _: () = {
3075    ["Size of WGPUSurfaceSourceMetalLayer"]
3076        [::core::mem::size_of::<WGPUSurfaceSourceMetalLayer>() - 24usize];
3077    ["Alignment of WGPUSurfaceSourceMetalLayer"]
3078        [::core::mem::align_of::<WGPUSurfaceSourceMetalLayer>() - 8usize];
3079    ["Offset of field: WGPUSurfaceSourceMetalLayer::chain"]
3080        [::core::mem::offset_of!(WGPUSurfaceSourceMetalLayer, chain) - 0usize];
3081    ["Offset of field: WGPUSurfaceSourceMetalLayer::layer"]
3082        [::core::mem::offset_of!(WGPUSurfaceSourceMetalLayer, layer) - 16usize];
3083};
3084#[repr(C)]
3085#[derive(Debug, Copy, Clone)]
3086pub struct WGPUSurfaceSourceWaylandSurface {
3087    pub chain: WGPUChainedStruct,
3088    pub display: *mut ::core::ffi::c_void,
3089    pub surface: *mut ::core::ffi::c_void,
3090}
3091#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3092const _: () = {
3093    ["Size of WGPUSurfaceSourceWaylandSurface"]
3094        [::core::mem::size_of::<WGPUSurfaceSourceWaylandSurface>() - 32usize];
3095    ["Alignment of WGPUSurfaceSourceWaylandSurface"]
3096        [::core::mem::align_of::<WGPUSurfaceSourceWaylandSurface>() - 8usize];
3097    ["Offset of field: WGPUSurfaceSourceWaylandSurface::chain"]
3098        [::core::mem::offset_of!(WGPUSurfaceSourceWaylandSurface, chain) - 0usize];
3099    ["Offset of field: WGPUSurfaceSourceWaylandSurface::display"]
3100        [::core::mem::offset_of!(WGPUSurfaceSourceWaylandSurface, display) - 16usize];
3101    ["Offset of field: WGPUSurfaceSourceWaylandSurface::surface"]
3102        [::core::mem::offset_of!(WGPUSurfaceSourceWaylandSurface, surface) - 24usize];
3103};
3104#[repr(C)]
3105#[derive(Debug, Copy, Clone)]
3106pub struct WGPUSurfaceSourceWindowsHWND {
3107    pub chain: WGPUChainedStruct,
3108    pub hinstance: *mut ::core::ffi::c_void,
3109    pub hwnd: *mut ::core::ffi::c_void,
3110}
3111#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3112const _: () = {
3113    ["Size of WGPUSurfaceSourceWindowsHWND"]
3114        [::core::mem::size_of::<WGPUSurfaceSourceWindowsHWND>() - 32usize];
3115    ["Alignment of WGPUSurfaceSourceWindowsHWND"]
3116        [::core::mem::align_of::<WGPUSurfaceSourceWindowsHWND>() - 8usize];
3117    ["Offset of field: WGPUSurfaceSourceWindowsHWND::chain"]
3118        [::core::mem::offset_of!(WGPUSurfaceSourceWindowsHWND, chain) - 0usize];
3119    ["Offset of field: WGPUSurfaceSourceWindowsHWND::hinstance"]
3120        [::core::mem::offset_of!(WGPUSurfaceSourceWindowsHWND, hinstance) - 16usize];
3121    ["Offset of field: WGPUSurfaceSourceWindowsHWND::hwnd"]
3122        [::core::mem::offset_of!(WGPUSurfaceSourceWindowsHWND, hwnd) - 24usize];
3123};
3124#[repr(C)]
3125#[derive(Debug, Copy, Clone)]
3126pub struct WGPUSurfaceSourceXCBWindow {
3127    pub chain: WGPUChainedStruct,
3128    pub connection: *mut ::core::ffi::c_void,
3129    pub window: u32,
3130}
3131#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3132const _: () = {
3133    ["Size of WGPUSurfaceSourceXCBWindow"]
3134        [::core::mem::size_of::<WGPUSurfaceSourceXCBWindow>() - 32usize];
3135    ["Alignment of WGPUSurfaceSourceXCBWindow"]
3136        [::core::mem::align_of::<WGPUSurfaceSourceXCBWindow>() - 8usize];
3137    ["Offset of field: WGPUSurfaceSourceXCBWindow::chain"]
3138        [::core::mem::offset_of!(WGPUSurfaceSourceXCBWindow, chain) - 0usize];
3139    ["Offset of field: WGPUSurfaceSourceXCBWindow::connection"]
3140        [::core::mem::offset_of!(WGPUSurfaceSourceXCBWindow, connection) - 16usize];
3141    ["Offset of field: WGPUSurfaceSourceXCBWindow::window"]
3142        [::core::mem::offset_of!(WGPUSurfaceSourceXCBWindow, window) - 24usize];
3143};
3144#[repr(C)]
3145#[derive(Debug, Copy, Clone)]
3146pub struct WGPUSurfaceSourceXlibWindow {
3147    pub chain: WGPUChainedStruct,
3148    pub display: *mut ::core::ffi::c_void,
3149    pub window: u64,
3150}
3151#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3152const _: () = {
3153    ["Size of WGPUSurfaceSourceXlibWindow"]
3154        [::core::mem::size_of::<WGPUSurfaceSourceXlibWindow>() - 32usize];
3155    ["Alignment of WGPUSurfaceSourceXlibWindow"]
3156        [::core::mem::align_of::<WGPUSurfaceSourceXlibWindow>() - 8usize];
3157    ["Offset of field: WGPUSurfaceSourceXlibWindow::chain"]
3158        [::core::mem::offset_of!(WGPUSurfaceSourceXlibWindow, chain) - 0usize];
3159    ["Offset of field: WGPUSurfaceSourceXlibWindow::display"]
3160        [::core::mem::offset_of!(WGPUSurfaceSourceXlibWindow, display) - 16usize];
3161    ["Offset of field: WGPUSurfaceSourceXlibWindow::window"]
3162        [::core::mem::offset_of!(WGPUSurfaceSourceXlibWindow, window) - 24usize];
3163};
3164#[repr(C)]
3165#[derive(Debug, Copy, Clone)]
3166pub struct WGPUSurfaceTexture {
3167    pub nextInChain: *mut WGPUChainedStruct,
3168    pub texture: WGPUTexture,
3169    pub status: WGPUSurfaceGetCurrentTextureStatus,
3170}
3171#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3172const _: () = {
3173    ["Size of WGPUSurfaceTexture"][::core::mem::size_of::<WGPUSurfaceTexture>() - 24usize];
3174    ["Alignment of WGPUSurfaceTexture"][::core::mem::align_of::<WGPUSurfaceTexture>() - 8usize];
3175    ["Offset of field: WGPUSurfaceTexture::nextInChain"]
3176        [::core::mem::offset_of!(WGPUSurfaceTexture, nextInChain) - 0usize];
3177    ["Offset of field: WGPUSurfaceTexture::texture"]
3178        [::core::mem::offset_of!(WGPUSurfaceTexture, texture) - 8usize];
3179    ["Offset of field: WGPUSurfaceTexture::status"]
3180        [::core::mem::offset_of!(WGPUSurfaceTexture, status) - 16usize];
3181};
3182#[repr(C)]
3183#[derive(Debug, Copy, Clone)]
3184pub struct WGPUTexelCopyBufferLayout {
3185    pub offset: u64,
3186    pub bytesPerRow: u32,
3187    pub rowsPerImage: u32,
3188}
3189#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3190const _: () = {
3191    ["Size of WGPUTexelCopyBufferLayout"]
3192        [::core::mem::size_of::<WGPUTexelCopyBufferLayout>() - 16usize];
3193    ["Alignment of WGPUTexelCopyBufferLayout"]
3194        [::core::mem::align_of::<WGPUTexelCopyBufferLayout>() - 8usize];
3195    ["Offset of field: WGPUTexelCopyBufferLayout::offset"]
3196        [::core::mem::offset_of!(WGPUTexelCopyBufferLayout, offset) - 0usize];
3197    ["Offset of field: WGPUTexelCopyBufferLayout::bytesPerRow"]
3198        [::core::mem::offset_of!(WGPUTexelCopyBufferLayout, bytesPerRow) - 8usize];
3199    ["Offset of field: WGPUTexelCopyBufferLayout::rowsPerImage"]
3200        [::core::mem::offset_of!(WGPUTexelCopyBufferLayout, rowsPerImage) - 12usize];
3201};
3202#[repr(C)]
3203#[derive(Debug, Copy, Clone)]
3204pub struct WGPUTextureBindingLayout {
3205    pub nextInChain: *mut WGPUChainedStruct,
3206    pub sampleType: WGPUTextureSampleType,
3207    pub viewDimension: WGPUTextureViewDimension,
3208    pub multisampled: WGPUBool,
3209}
3210#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3211const _: () = {
3212    ["Size of WGPUTextureBindingLayout"]
3213        [::core::mem::size_of::<WGPUTextureBindingLayout>() - 24usize];
3214    ["Alignment of WGPUTextureBindingLayout"]
3215        [::core::mem::align_of::<WGPUTextureBindingLayout>() - 8usize];
3216    ["Offset of field: WGPUTextureBindingLayout::nextInChain"]
3217        [::core::mem::offset_of!(WGPUTextureBindingLayout, nextInChain) - 0usize];
3218    ["Offset of field: WGPUTextureBindingLayout::sampleType"]
3219        [::core::mem::offset_of!(WGPUTextureBindingLayout, sampleType) - 8usize];
3220    ["Offset of field: WGPUTextureBindingLayout::viewDimension"]
3221        [::core::mem::offset_of!(WGPUTextureBindingLayout, viewDimension) - 12usize];
3222    ["Offset of field: WGPUTextureBindingLayout::multisampled"]
3223        [::core::mem::offset_of!(WGPUTextureBindingLayout, multisampled) - 16usize];
3224};
3225#[repr(C)]
3226#[derive(Debug, Copy, Clone)]
3227pub struct WGPUTextureViewDescriptor {
3228    pub nextInChain: *mut WGPUChainedStruct,
3229    pub label: WGPUStringView,
3230    pub format: WGPUTextureFormat,
3231    pub dimension: WGPUTextureViewDimension,
3232    pub baseMipLevel: u32,
3233    pub mipLevelCount: u32,
3234    pub baseArrayLayer: u32,
3235    pub arrayLayerCount: u32,
3236    pub aspect: WGPUTextureAspect,
3237    pub usage: WGPUTextureUsage,
3238}
3239#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3240const _: () = {
3241    ["Size of WGPUTextureViewDescriptor"]
3242        [::core::mem::size_of::<WGPUTextureViewDescriptor>() - 64usize];
3243    ["Alignment of WGPUTextureViewDescriptor"]
3244        [::core::mem::align_of::<WGPUTextureViewDescriptor>() - 8usize];
3245    ["Offset of field: WGPUTextureViewDescriptor::nextInChain"]
3246        [::core::mem::offset_of!(WGPUTextureViewDescriptor, nextInChain) - 0usize];
3247    ["Offset of field: WGPUTextureViewDescriptor::label"]
3248        [::core::mem::offset_of!(WGPUTextureViewDescriptor, label) - 8usize];
3249    ["Offset of field: WGPUTextureViewDescriptor::format"]
3250        [::core::mem::offset_of!(WGPUTextureViewDescriptor, format) - 24usize];
3251    ["Offset of field: WGPUTextureViewDescriptor::dimension"]
3252        [::core::mem::offset_of!(WGPUTextureViewDescriptor, dimension) - 28usize];
3253    ["Offset of field: WGPUTextureViewDescriptor::baseMipLevel"]
3254        [::core::mem::offset_of!(WGPUTextureViewDescriptor, baseMipLevel) - 32usize];
3255    ["Offset of field: WGPUTextureViewDescriptor::mipLevelCount"]
3256        [::core::mem::offset_of!(WGPUTextureViewDescriptor, mipLevelCount) - 36usize];
3257    ["Offset of field: WGPUTextureViewDescriptor::baseArrayLayer"]
3258        [::core::mem::offset_of!(WGPUTextureViewDescriptor, baseArrayLayer) - 40usize];
3259    ["Offset of field: WGPUTextureViewDescriptor::arrayLayerCount"]
3260        [::core::mem::offset_of!(WGPUTextureViewDescriptor, arrayLayerCount) - 44usize];
3261    ["Offset of field: WGPUTextureViewDescriptor::aspect"]
3262        [::core::mem::offset_of!(WGPUTextureViewDescriptor, aspect) - 48usize];
3263    ["Offset of field: WGPUTextureViewDescriptor::usage"]
3264        [::core::mem::offset_of!(WGPUTextureViewDescriptor, usage) - 56usize];
3265};
3266#[repr(C)]
3267#[derive(Debug, Copy, Clone)]
3268pub struct WGPUVertexAttribute {
3269    pub nextInChain: *mut WGPUChainedStruct,
3270    pub format: WGPUVertexFormat,
3271    pub offset: u64,
3272    pub shaderLocation: u32,
3273}
3274#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3275const _: () = {
3276    ["Size of WGPUVertexAttribute"][::core::mem::size_of::<WGPUVertexAttribute>() - 32usize];
3277    ["Alignment of WGPUVertexAttribute"][::core::mem::align_of::<WGPUVertexAttribute>() - 8usize];
3278    ["Offset of field: WGPUVertexAttribute::nextInChain"]
3279        [::core::mem::offset_of!(WGPUVertexAttribute, nextInChain) - 0usize];
3280    ["Offset of field: WGPUVertexAttribute::format"]
3281        [::core::mem::offset_of!(WGPUVertexAttribute, format) - 8usize];
3282    ["Offset of field: WGPUVertexAttribute::offset"]
3283        [::core::mem::offset_of!(WGPUVertexAttribute, offset) - 16usize];
3284    ["Offset of field: WGPUVertexAttribute::shaderLocation"]
3285        [::core::mem::offset_of!(WGPUVertexAttribute, shaderLocation) - 24usize];
3286};
3287#[repr(C)]
3288#[derive(Debug, Copy, Clone)]
3289pub struct WGPUBindGroupDescriptor {
3290    pub nextInChain: *mut WGPUChainedStruct,
3291    pub label: WGPUStringView,
3292    pub layout: WGPUBindGroupLayout,
3293    pub entryCount: usize,
3294    pub entries: *const WGPUBindGroupEntry,
3295}
3296#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3297const _: () = {
3298    ["Size of WGPUBindGroupDescriptor"]
3299        [::core::mem::size_of::<WGPUBindGroupDescriptor>() - 48usize];
3300    ["Alignment of WGPUBindGroupDescriptor"]
3301        [::core::mem::align_of::<WGPUBindGroupDescriptor>() - 8usize];
3302    ["Offset of field: WGPUBindGroupDescriptor::nextInChain"]
3303        [::core::mem::offset_of!(WGPUBindGroupDescriptor, nextInChain) - 0usize];
3304    ["Offset of field: WGPUBindGroupDescriptor::label"]
3305        [::core::mem::offset_of!(WGPUBindGroupDescriptor, label) - 8usize];
3306    ["Offset of field: WGPUBindGroupDescriptor::layout"]
3307        [::core::mem::offset_of!(WGPUBindGroupDescriptor, layout) - 24usize];
3308    ["Offset of field: WGPUBindGroupDescriptor::entryCount"]
3309        [::core::mem::offset_of!(WGPUBindGroupDescriptor, entryCount) - 32usize];
3310    ["Offset of field: WGPUBindGroupDescriptor::entries"]
3311        [::core::mem::offset_of!(WGPUBindGroupDescriptor, entries) - 40usize];
3312};
3313#[repr(C)]
3314#[derive(Debug, Copy, Clone)]
3315pub struct WGPUBindGroupLayoutEntry {
3316    pub nextInChain: *mut WGPUChainedStruct,
3317    pub binding: u32,
3318    pub visibility: WGPUShaderStage,
3319    pub bindingArraySize: u32,
3320    pub buffer: WGPUBufferBindingLayout,
3321    pub sampler: WGPUSamplerBindingLayout,
3322    pub texture: WGPUTextureBindingLayout,
3323    pub storageTexture: WGPUStorageTextureBindingLayout,
3324}
3325#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3326const _: () = {
3327    ["Size of WGPUBindGroupLayoutEntry"]
3328        [::core::mem::size_of::<WGPUBindGroupLayoutEntry>() - 120usize];
3329    ["Alignment of WGPUBindGroupLayoutEntry"]
3330        [::core::mem::align_of::<WGPUBindGroupLayoutEntry>() - 8usize];
3331    ["Offset of field: WGPUBindGroupLayoutEntry::nextInChain"]
3332        [::core::mem::offset_of!(WGPUBindGroupLayoutEntry, nextInChain) - 0usize];
3333    ["Offset of field: WGPUBindGroupLayoutEntry::binding"]
3334        [::core::mem::offset_of!(WGPUBindGroupLayoutEntry, binding) - 8usize];
3335    ["Offset of field: WGPUBindGroupLayoutEntry::visibility"]
3336        [::core::mem::offset_of!(WGPUBindGroupLayoutEntry, visibility) - 16usize];
3337    ["Offset of field: WGPUBindGroupLayoutEntry::bindingArraySize"]
3338        [::core::mem::offset_of!(WGPUBindGroupLayoutEntry, bindingArraySize) - 24usize];
3339    ["Offset of field: WGPUBindGroupLayoutEntry::buffer"]
3340        [::core::mem::offset_of!(WGPUBindGroupLayoutEntry, buffer) - 32usize];
3341    ["Offset of field: WGPUBindGroupLayoutEntry::sampler"]
3342        [::core::mem::offset_of!(WGPUBindGroupLayoutEntry, sampler) - 56usize];
3343    ["Offset of field: WGPUBindGroupLayoutEntry::texture"]
3344        [::core::mem::offset_of!(WGPUBindGroupLayoutEntry, texture) - 72usize];
3345    ["Offset of field: WGPUBindGroupLayoutEntry::storageTexture"]
3346        [::core::mem::offset_of!(WGPUBindGroupLayoutEntry, storageTexture) - 96usize];
3347};
3348#[repr(C)]
3349#[derive(Debug, Copy, Clone)]
3350pub struct WGPUBlendState {
3351    pub color: WGPUBlendComponent,
3352    pub alpha: WGPUBlendComponent,
3353}
3354#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3355const _: () = {
3356    ["Size of WGPUBlendState"][::core::mem::size_of::<WGPUBlendState>() - 24usize];
3357    ["Alignment of WGPUBlendState"][::core::mem::align_of::<WGPUBlendState>() - 4usize];
3358    ["Offset of field: WGPUBlendState::color"]
3359        [::core::mem::offset_of!(WGPUBlendState, color) - 0usize];
3360    ["Offset of field: WGPUBlendState::alpha"]
3361        [::core::mem::offset_of!(WGPUBlendState, alpha) - 12usize];
3362};
3363#[repr(C)]
3364#[derive(Debug, Copy, Clone)]
3365pub struct WGPUCompilationInfo {
3366    pub nextInChain: *mut WGPUChainedStruct,
3367    pub messageCount: usize,
3368    pub messages: *const WGPUCompilationMessage,
3369}
3370#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3371const _: () = {
3372    ["Size of WGPUCompilationInfo"][::core::mem::size_of::<WGPUCompilationInfo>() - 24usize];
3373    ["Alignment of WGPUCompilationInfo"][::core::mem::align_of::<WGPUCompilationInfo>() - 8usize];
3374    ["Offset of field: WGPUCompilationInfo::nextInChain"]
3375        [::core::mem::offset_of!(WGPUCompilationInfo, nextInChain) - 0usize];
3376    ["Offset of field: WGPUCompilationInfo::messageCount"]
3377        [::core::mem::offset_of!(WGPUCompilationInfo, messageCount) - 8usize];
3378    ["Offset of field: WGPUCompilationInfo::messages"]
3379        [::core::mem::offset_of!(WGPUCompilationInfo, messages) - 16usize];
3380};
3381#[repr(C)]
3382#[derive(Debug, Copy, Clone)]
3383pub struct WGPUComputePassDescriptor {
3384    pub nextInChain: *mut WGPUChainedStruct,
3385    pub label: WGPUStringView,
3386    pub timestampWrites: *const WGPUPassTimestampWrites,
3387}
3388#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3389const _: () = {
3390    ["Size of WGPUComputePassDescriptor"]
3391        [::core::mem::size_of::<WGPUComputePassDescriptor>() - 32usize];
3392    ["Alignment of WGPUComputePassDescriptor"]
3393        [::core::mem::align_of::<WGPUComputePassDescriptor>() - 8usize];
3394    ["Offset of field: WGPUComputePassDescriptor::nextInChain"]
3395        [::core::mem::offset_of!(WGPUComputePassDescriptor, nextInChain) - 0usize];
3396    ["Offset of field: WGPUComputePassDescriptor::label"]
3397        [::core::mem::offset_of!(WGPUComputePassDescriptor, label) - 8usize];
3398    ["Offset of field: WGPUComputePassDescriptor::timestampWrites"]
3399        [::core::mem::offset_of!(WGPUComputePassDescriptor, timestampWrites) - 24usize];
3400};
3401#[repr(C)]
3402#[derive(Debug, Copy, Clone)]
3403pub struct WGPUComputeState {
3404    pub nextInChain: *mut WGPUChainedStruct,
3405    pub module: WGPUShaderModule,
3406    pub entryPoint: WGPUStringView,
3407    pub constantCount: usize,
3408    pub constants: *const WGPUConstantEntry,
3409}
3410#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3411const _: () = {
3412    ["Size of WGPUComputeState"][::core::mem::size_of::<WGPUComputeState>() - 48usize];
3413    ["Alignment of WGPUComputeState"][::core::mem::align_of::<WGPUComputeState>() - 8usize];
3414    ["Offset of field: WGPUComputeState::nextInChain"]
3415        [::core::mem::offset_of!(WGPUComputeState, nextInChain) - 0usize];
3416    ["Offset of field: WGPUComputeState::module"]
3417        [::core::mem::offset_of!(WGPUComputeState, module) - 8usize];
3418    ["Offset of field: WGPUComputeState::entryPoint"]
3419        [::core::mem::offset_of!(WGPUComputeState, entryPoint) - 16usize];
3420    ["Offset of field: WGPUComputeState::constantCount"]
3421        [::core::mem::offset_of!(WGPUComputeState, constantCount) - 32usize];
3422    ["Offset of field: WGPUComputeState::constants"]
3423        [::core::mem::offset_of!(WGPUComputeState, constants) - 40usize];
3424};
3425#[repr(C)]
3426#[derive(Debug, Copy, Clone)]
3427pub struct WGPUDepthStencilState {
3428    pub nextInChain: *mut WGPUChainedStruct,
3429    pub format: WGPUTextureFormat,
3430    pub depthWriteEnabled: WGPUOptionalBool,
3431    pub depthCompare: WGPUCompareFunction,
3432    pub stencilFront: WGPUStencilFaceState,
3433    pub stencilBack: WGPUStencilFaceState,
3434    pub stencilReadMask: u32,
3435    pub stencilWriteMask: u32,
3436    pub depthBias: i32,
3437    pub depthBiasSlopeScale: f32,
3438    pub depthBiasClamp: f32,
3439}
3440#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3441const _: () = {
3442    ["Size of WGPUDepthStencilState"][::core::mem::size_of::<WGPUDepthStencilState>() - 72usize];
3443    ["Alignment of WGPUDepthStencilState"]
3444        [::core::mem::align_of::<WGPUDepthStencilState>() - 8usize];
3445    ["Offset of field: WGPUDepthStencilState::nextInChain"]
3446        [::core::mem::offset_of!(WGPUDepthStencilState, nextInChain) - 0usize];
3447    ["Offset of field: WGPUDepthStencilState::format"]
3448        [::core::mem::offset_of!(WGPUDepthStencilState, format) - 8usize];
3449    ["Offset of field: WGPUDepthStencilState::depthWriteEnabled"]
3450        [::core::mem::offset_of!(WGPUDepthStencilState, depthWriteEnabled) - 12usize];
3451    ["Offset of field: WGPUDepthStencilState::depthCompare"]
3452        [::core::mem::offset_of!(WGPUDepthStencilState, depthCompare) - 16usize];
3453    ["Offset of field: WGPUDepthStencilState::stencilFront"]
3454        [::core::mem::offset_of!(WGPUDepthStencilState, stencilFront) - 20usize];
3455    ["Offset of field: WGPUDepthStencilState::stencilBack"]
3456        [::core::mem::offset_of!(WGPUDepthStencilState, stencilBack) - 36usize];
3457    ["Offset of field: WGPUDepthStencilState::stencilReadMask"]
3458        [::core::mem::offset_of!(WGPUDepthStencilState, stencilReadMask) - 52usize];
3459    ["Offset of field: WGPUDepthStencilState::stencilWriteMask"]
3460        [::core::mem::offset_of!(WGPUDepthStencilState, stencilWriteMask) - 56usize];
3461    ["Offset of field: WGPUDepthStencilState::depthBias"]
3462        [::core::mem::offset_of!(WGPUDepthStencilState, depthBias) - 60usize];
3463    ["Offset of field: WGPUDepthStencilState::depthBiasSlopeScale"]
3464        [::core::mem::offset_of!(WGPUDepthStencilState, depthBiasSlopeScale) - 64usize];
3465    ["Offset of field: WGPUDepthStencilState::depthBiasClamp"]
3466        [::core::mem::offset_of!(WGPUDepthStencilState, depthBiasClamp) - 68usize];
3467};
3468#[repr(C)]
3469#[derive(Debug, Copy, Clone)]
3470pub struct WGPUDeviceDescriptor {
3471    pub nextInChain: *mut WGPUChainedStruct,
3472    pub label: WGPUStringView,
3473    pub requiredFeatureCount: usize,
3474    pub requiredFeatures: *const WGPUFeatureName,
3475    pub requiredLimits: *const WGPULimits,
3476    pub defaultQueue: WGPUQueueDescriptor,
3477    pub deviceLostCallbackInfo: WGPUDeviceLostCallbackInfo,
3478    pub uncapturedErrorCallbackInfo: WGPUUncapturedErrorCallbackInfo,
3479}
3480#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3481const _: () = {
3482    ["Size of WGPUDeviceDescriptor"][::core::mem::size_of::<WGPUDeviceDescriptor>() - 144usize];
3483    ["Alignment of WGPUDeviceDescriptor"][::core::mem::align_of::<WGPUDeviceDescriptor>() - 8usize];
3484    ["Offset of field: WGPUDeviceDescriptor::nextInChain"]
3485        [::core::mem::offset_of!(WGPUDeviceDescriptor, nextInChain) - 0usize];
3486    ["Offset of field: WGPUDeviceDescriptor::label"]
3487        [::core::mem::offset_of!(WGPUDeviceDescriptor, label) - 8usize];
3488    ["Offset of field: WGPUDeviceDescriptor::requiredFeatureCount"]
3489        [::core::mem::offset_of!(WGPUDeviceDescriptor, requiredFeatureCount) - 24usize];
3490    ["Offset of field: WGPUDeviceDescriptor::requiredFeatures"]
3491        [::core::mem::offset_of!(WGPUDeviceDescriptor, requiredFeatures) - 32usize];
3492    ["Offset of field: WGPUDeviceDescriptor::requiredLimits"]
3493        [::core::mem::offset_of!(WGPUDeviceDescriptor, requiredLimits) - 40usize];
3494    ["Offset of field: WGPUDeviceDescriptor::defaultQueue"]
3495        [::core::mem::offset_of!(WGPUDeviceDescriptor, defaultQueue) - 48usize];
3496    ["Offset of field: WGPUDeviceDescriptor::deviceLostCallbackInfo"]
3497        [::core::mem::offset_of!(WGPUDeviceDescriptor, deviceLostCallbackInfo) - 72usize];
3498    ["Offset of field: WGPUDeviceDescriptor::uncapturedErrorCallbackInfo"]
3499        [::core::mem::offset_of!(WGPUDeviceDescriptor, uncapturedErrorCallbackInfo) - 112usize];
3500};
3501#[repr(C)]
3502#[derive(Debug, Copy, Clone)]
3503pub struct WGPUFutureWaitInfo {
3504    pub future: WGPUFuture,
3505    pub completed: WGPUBool,
3506}
3507#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3508const _: () = {
3509    ["Size of WGPUFutureWaitInfo"][::core::mem::size_of::<WGPUFutureWaitInfo>() - 16usize];
3510    ["Alignment of WGPUFutureWaitInfo"][::core::mem::align_of::<WGPUFutureWaitInfo>() - 8usize];
3511    ["Offset of field: WGPUFutureWaitInfo::future"]
3512        [::core::mem::offset_of!(WGPUFutureWaitInfo, future) - 0usize];
3513    ["Offset of field: WGPUFutureWaitInfo::completed"]
3514        [::core::mem::offset_of!(WGPUFutureWaitInfo, completed) - 8usize];
3515};
3516#[repr(C)]
3517#[derive(Debug, Copy, Clone)]
3518pub struct WGPUInstanceDescriptor {
3519    pub nextInChain: *mut WGPUChainedStruct,
3520    pub requiredFeatureCount: usize,
3521    pub requiredFeatures: *const WGPUInstanceFeatureName,
3522    pub requiredLimits: *const WGPUInstanceLimits,
3523}
3524#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3525const _: () = {
3526    ["Size of WGPUInstanceDescriptor"][::core::mem::size_of::<WGPUInstanceDescriptor>() - 32usize];
3527    ["Alignment of WGPUInstanceDescriptor"]
3528        [::core::mem::align_of::<WGPUInstanceDescriptor>() - 8usize];
3529    ["Offset of field: WGPUInstanceDescriptor::nextInChain"]
3530        [::core::mem::offset_of!(WGPUInstanceDescriptor, nextInChain) - 0usize];
3531    ["Offset of field: WGPUInstanceDescriptor::requiredFeatureCount"]
3532        [::core::mem::offset_of!(WGPUInstanceDescriptor, requiredFeatureCount) - 8usize];
3533    ["Offset of field: WGPUInstanceDescriptor::requiredFeatures"]
3534        [::core::mem::offset_of!(WGPUInstanceDescriptor, requiredFeatures) - 16usize];
3535    ["Offset of field: WGPUInstanceDescriptor::requiredLimits"]
3536        [::core::mem::offset_of!(WGPUInstanceDescriptor, requiredLimits) - 24usize];
3537};
3538#[repr(C)]
3539#[derive(Debug, Copy, Clone)]
3540pub struct WGPURenderPassColorAttachment {
3541    pub nextInChain: *mut WGPUChainedStruct,
3542    pub view: WGPUTextureView,
3543    pub depthSlice: u32,
3544    pub resolveTarget: WGPUTextureView,
3545    pub loadOp: WGPULoadOp,
3546    pub storeOp: WGPUStoreOp,
3547    pub clearValue: WGPUColor,
3548}
3549#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3550const _: () = {
3551    ["Size of WGPURenderPassColorAttachment"]
3552        [::core::mem::size_of::<WGPURenderPassColorAttachment>() - 72usize];
3553    ["Alignment of WGPURenderPassColorAttachment"]
3554        [::core::mem::align_of::<WGPURenderPassColorAttachment>() - 8usize];
3555    ["Offset of field: WGPURenderPassColorAttachment::nextInChain"]
3556        [::core::mem::offset_of!(WGPURenderPassColorAttachment, nextInChain) - 0usize];
3557    ["Offset of field: WGPURenderPassColorAttachment::view"]
3558        [::core::mem::offset_of!(WGPURenderPassColorAttachment, view) - 8usize];
3559    ["Offset of field: WGPURenderPassColorAttachment::depthSlice"]
3560        [::core::mem::offset_of!(WGPURenderPassColorAttachment, depthSlice) - 16usize];
3561    ["Offset of field: WGPURenderPassColorAttachment::resolveTarget"]
3562        [::core::mem::offset_of!(WGPURenderPassColorAttachment, resolveTarget) - 24usize];
3563    ["Offset of field: WGPURenderPassColorAttachment::loadOp"]
3564        [::core::mem::offset_of!(WGPURenderPassColorAttachment, loadOp) - 32usize];
3565    ["Offset of field: WGPURenderPassColorAttachment::storeOp"]
3566        [::core::mem::offset_of!(WGPURenderPassColorAttachment, storeOp) - 36usize];
3567    ["Offset of field: WGPURenderPassColorAttachment::clearValue"]
3568        [::core::mem::offset_of!(WGPURenderPassColorAttachment, clearValue) - 40usize];
3569};
3570#[repr(C)]
3571#[derive(Debug, Copy, Clone)]
3572pub struct WGPURequestAdapterOptions {
3573    pub nextInChain: *mut WGPUChainedStruct,
3574    pub featureLevel: WGPUFeatureLevel,
3575    pub powerPreference: WGPUPowerPreference,
3576    pub forceFallbackAdapter: WGPUBool,
3577    pub backendType: WGPUBackendType,
3578    pub compatibleSurface: WGPUSurface,
3579}
3580#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3581const _: () = {
3582    ["Size of WGPURequestAdapterOptions"]
3583        [::core::mem::size_of::<WGPURequestAdapterOptions>() - 32usize];
3584    ["Alignment of WGPURequestAdapterOptions"]
3585        [::core::mem::align_of::<WGPURequestAdapterOptions>() - 8usize];
3586    ["Offset of field: WGPURequestAdapterOptions::nextInChain"]
3587        [::core::mem::offset_of!(WGPURequestAdapterOptions, nextInChain) - 0usize];
3588    ["Offset of field: WGPURequestAdapterOptions::featureLevel"]
3589        [::core::mem::offset_of!(WGPURequestAdapterOptions, featureLevel) - 8usize];
3590    ["Offset of field: WGPURequestAdapterOptions::powerPreference"]
3591        [::core::mem::offset_of!(WGPURequestAdapterOptions, powerPreference) - 12usize];
3592    ["Offset of field: WGPURequestAdapterOptions::forceFallbackAdapter"]
3593        [::core::mem::offset_of!(WGPURequestAdapterOptions, forceFallbackAdapter) - 16usize];
3594    ["Offset of field: WGPURequestAdapterOptions::backendType"]
3595        [::core::mem::offset_of!(WGPURequestAdapterOptions, backendType) - 20usize];
3596    ["Offset of field: WGPURequestAdapterOptions::compatibleSurface"]
3597        [::core::mem::offset_of!(WGPURequestAdapterOptions, compatibleSurface) - 24usize];
3598};
3599#[repr(C)]
3600#[derive(Debug, Copy, Clone)]
3601pub struct WGPUShaderModuleDescriptor {
3602    pub nextInChain: *mut WGPUChainedStruct,
3603    pub label: WGPUStringView,
3604}
3605#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3606const _: () = {
3607    ["Size of WGPUShaderModuleDescriptor"]
3608        [::core::mem::size_of::<WGPUShaderModuleDescriptor>() - 24usize];
3609    ["Alignment of WGPUShaderModuleDescriptor"]
3610        [::core::mem::align_of::<WGPUShaderModuleDescriptor>() - 8usize];
3611    ["Offset of field: WGPUShaderModuleDescriptor::nextInChain"]
3612        [::core::mem::offset_of!(WGPUShaderModuleDescriptor, nextInChain) - 0usize];
3613    ["Offset of field: WGPUShaderModuleDescriptor::label"]
3614        [::core::mem::offset_of!(WGPUShaderModuleDescriptor, label) - 8usize];
3615};
3616#[repr(C)]
3617#[derive(Debug, Copy, Clone)]
3618pub struct WGPUSurfaceDescriptor {
3619    pub nextInChain: *mut WGPUChainedStruct,
3620    pub label: WGPUStringView,
3621}
3622#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3623const _: () = {
3624    ["Size of WGPUSurfaceDescriptor"][::core::mem::size_of::<WGPUSurfaceDescriptor>() - 24usize];
3625    ["Alignment of WGPUSurfaceDescriptor"]
3626        [::core::mem::align_of::<WGPUSurfaceDescriptor>() - 8usize];
3627    ["Offset of field: WGPUSurfaceDescriptor::nextInChain"]
3628        [::core::mem::offset_of!(WGPUSurfaceDescriptor, nextInChain) - 0usize];
3629    ["Offset of field: WGPUSurfaceDescriptor::label"]
3630        [::core::mem::offset_of!(WGPUSurfaceDescriptor, label) - 8usize];
3631};
3632#[repr(C)]
3633#[derive(Debug, Copy, Clone)]
3634pub struct WGPUTexelCopyBufferInfo {
3635    pub layout: WGPUTexelCopyBufferLayout,
3636    pub buffer: WGPUBuffer,
3637}
3638#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3639const _: () = {
3640    ["Size of WGPUTexelCopyBufferInfo"]
3641        [::core::mem::size_of::<WGPUTexelCopyBufferInfo>() - 24usize];
3642    ["Alignment of WGPUTexelCopyBufferInfo"]
3643        [::core::mem::align_of::<WGPUTexelCopyBufferInfo>() - 8usize];
3644    ["Offset of field: WGPUTexelCopyBufferInfo::layout"]
3645        [::core::mem::offset_of!(WGPUTexelCopyBufferInfo, layout) - 0usize];
3646    ["Offset of field: WGPUTexelCopyBufferInfo::buffer"]
3647        [::core::mem::offset_of!(WGPUTexelCopyBufferInfo, buffer) - 16usize];
3648};
3649#[repr(C)]
3650#[derive(Debug, Copy, Clone)]
3651pub struct WGPUTexelCopyTextureInfo {
3652    pub texture: WGPUTexture,
3653    pub mipLevel: u32,
3654    pub origin: WGPUOrigin3D,
3655    pub aspect: WGPUTextureAspect,
3656}
3657#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3658const _: () = {
3659    ["Size of WGPUTexelCopyTextureInfo"]
3660        [::core::mem::size_of::<WGPUTexelCopyTextureInfo>() - 32usize];
3661    ["Alignment of WGPUTexelCopyTextureInfo"]
3662        [::core::mem::align_of::<WGPUTexelCopyTextureInfo>() - 8usize];
3663    ["Offset of field: WGPUTexelCopyTextureInfo::texture"]
3664        [::core::mem::offset_of!(WGPUTexelCopyTextureInfo, texture) - 0usize];
3665    ["Offset of field: WGPUTexelCopyTextureInfo::mipLevel"]
3666        [::core::mem::offset_of!(WGPUTexelCopyTextureInfo, mipLevel) - 8usize];
3667    ["Offset of field: WGPUTexelCopyTextureInfo::origin"]
3668        [::core::mem::offset_of!(WGPUTexelCopyTextureInfo, origin) - 12usize];
3669    ["Offset of field: WGPUTexelCopyTextureInfo::aspect"]
3670        [::core::mem::offset_of!(WGPUTexelCopyTextureInfo, aspect) - 24usize];
3671};
3672#[repr(C)]
3673#[derive(Debug, Copy, Clone)]
3674pub struct WGPUTextureDescriptor {
3675    pub nextInChain: *mut WGPUChainedStruct,
3676    pub label: WGPUStringView,
3677    pub usage: WGPUTextureUsage,
3678    pub dimension: WGPUTextureDimension,
3679    pub size: WGPUExtent3D,
3680    pub format: WGPUTextureFormat,
3681    pub mipLevelCount: u32,
3682    pub sampleCount: u32,
3683    pub viewFormatCount: usize,
3684    pub viewFormats: *const WGPUTextureFormat,
3685}
3686#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3687const _: () = {
3688    ["Size of WGPUTextureDescriptor"][::core::mem::size_of::<WGPUTextureDescriptor>() - 80usize];
3689    ["Alignment of WGPUTextureDescriptor"]
3690        [::core::mem::align_of::<WGPUTextureDescriptor>() - 8usize];
3691    ["Offset of field: WGPUTextureDescriptor::nextInChain"]
3692        [::core::mem::offset_of!(WGPUTextureDescriptor, nextInChain) - 0usize];
3693    ["Offset of field: WGPUTextureDescriptor::label"]
3694        [::core::mem::offset_of!(WGPUTextureDescriptor, label) - 8usize];
3695    ["Offset of field: WGPUTextureDescriptor::usage"]
3696        [::core::mem::offset_of!(WGPUTextureDescriptor, usage) - 24usize];
3697    ["Offset of field: WGPUTextureDescriptor::dimension"]
3698        [::core::mem::offset_of!(WGPUTextureDescriptor, dimension) - 32usize];
3699    ["Offset of field: WGPUTextureDescriptor::size"]
3700        [::core::mem::offset_of!(WGPUTextureDescriptor, size) - 36usize];
3701    ["Offset of field: WGPUTextureDescriptor::format"]
3702        [::core::mem::offset_of!(WGPUTextureDescriptor, format) - 48usize];
3703    ["Offset of field: WGPUTextureDescriptor::mipLevelCount"]
3704        [::core::mem::offset_of!(WGPUTextureDescriptor, mipLevelCount) - 52usize];
3705    ["Offset of field: WGPUTextureDescriptor::sampleCount"]
3706        [::core::mem::offset_of!(WGPUTextureDescriptor, sampleCount) - 56usize];
3707    ["Offset of field: WGPUTextureDescriptor::viewFormatCount"]
3708        [::core::mem::offset_of!(WGPUTextureDescriptor, viewFormatCount) - 64usize];
3709    ["Offset of field: WGPUTextureDescriptor::viewFormats"]
3710        [::core::mem::offset_of!(WGPUTextureDescriptor, viewFormats) - 72usize];
3711};
3712#[repr(C)]
3713#[derive(Debug, Copy, Clone)]
3714pub struct WGPUVertexBufferLayout {
3715    pub nextInChain: *mut WGPUChainedStruct,
3716    pub stepMode: WGPUVertexStepMode,
3717    pub arrayStride: u64,
3718    pub attributeCount: usize,
3719    pub attributes: *const WGPUVertexAttribute,
3720}
3721#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3722const _: () = {
3723    ["Size of WGPUVertexBufferLayout"][::core::mem::size_of::<WGPUVertexBufferLayout>() - 40usize];
3724    ["Alignment of WGPUVertexBufferLayout"]
3725        [::core::mem::align_of::<WGPUVertexBufferLayout>() - 8usize];
3726    ["Offset of field: WGPUVertexBufferLayout::nextInChain"]
3727        [::core::mem::offset_of!(WGPUVertexBufferLayout, nextInChain) - 0usize];
3728    ["Offset of field: WGPUVertexBufferLayout::stepMode"]
3729        [::core::mem::offset_of!(WGPUVertexBufferLayout, stepMode) - 8usize];
3730    ["Offset of field: WGPUVertexBufferLayout::arrayStride"]
3731        [::core::mem::offset_of!(WGPUVertexBufferLayout, arrayStride) - 16usize];
3732    ["Offset of field: WGPUVertexBufferLayout::attributeCount"]
3733        [::core::mem::offset_of!(WGPUVertexBufferLayout, attributeCount) - 24usize];
3734    ["Offset of field: WGPUVertexBufferLayout::attributes"]
3735        [::core::mem::offset_of!(WGPUVertexBufferLayout, attributes) - 32usize];
3736};
3737#[repr(C)]
3738#[derive(Debug, Copy, Clone)]
3739pub struct WGPUBindGroupLayoutDescriptor {
3740    pub nextInChain: *mut WGPUChainedStruct,
3741    pub label: WGPUStringView,
3742    pub entryCount: usize,
3743    pub entries: *const WGPUBindGroupLayoutEntry,
3744}
3745#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3746const _: () = {
3747    ["Size of WGPUBindGroupLayoutDescriptor"]
3748        [::core::mem::size_of::<WGPUBindGroupLayoutDescriptor>() - 40usize];
3749    ["Alignment of WGPUBindGroupLayoutDescriptor"]
3750        [::core::mem::align_of::<WGPUBindGroupLayoutDescriptor>() - 8usize];
3751    ["Offset of field: WGPUBindGroupLayoutDescriptor::nextInChain"]
3752        [::core::mem::offset_of!(WGPUBindGroupLayoutDescriptor, nextInChain) - 0usize];
3753    ["Offset of field: WGPUBindGroupLayoutDescriptor::label"]
3754        [::core::mem::offset_of!(WGPUBindGroupLayoutDescriptor, label) - 8usize];
3755    ["Offset of field: WGPUBindGroupLayoutDescriptor::entryCount"]
3756        [::core::mem::offset_of!(WGPUBindGroupLayoutDescriptor, entryCount) - 24usize];
3757    ["Offset of field: WGPUBindGroupLayoutDescriptor::entries"]
3758        [::core::mem::offset_of!(WGPUBindGroupLayoutDescriptor, entries) - 32usize];
3759};
3760#[repr(C)]
3761#[derive(Debug, Copy, Clone)]
3762pub struct WGPUColorTargetState {
3763    pub nextInChain: *mut WGPUChainedStruct,
3764    pub format: WGPUTextureFormat,
3765    pub blend: *const WGPUBlendState,
3766    pub writeMask: WGPUColorWriteMask,
3767}
3768#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3769const _: () = {
3770    ["Size of WGPUColorTargetState"][::core::mem::size_of::<WGPUColorTargetState>() - 32usize];
3771    ["Alignment of WGPUColorTargetState"][::core::mem::align_of::<WGPUColorTargetState>() - 8usize];
3772    ["Offset of field: WGPUColorTargetState::nextInChain"]
3773        [::core::mem::offset_of!(WGPUColorTargetState, nextInChain) - 0usize];
3774    ["Offset of field: WGPUColorTargetState::format"]
3775        [::core::mem::offset_of!(WGPUColorTargetState, format) - 8usize];
3776    ["Offset of field: WGPUColorTargetState::blend"]
3777        [::core::mem::offset_of!(WGPUColorTargetState, blend) - 16usize];
3778    ["Offset of field: WGPUColorTargetState::writeMask"]
3779        [::core::mem::offset_of!(WGPUColorTargetState, writeMask) - 24usize];
3780};
3781#[repr(C)]
3782#[derive(Debug, Copy, Clone)]
3783pub struct WGPUComputePipelineDescriptor {
3784    pub nextInChain: *mut WGPUChainedStruct,
3785    pub label: WGPUStringView,
3786    pub layout: WGPUPipelineLayout,
3787    pub compute: WGPUComputeState,
3788}
3789#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3790const _: () = {
3791    ["Size of WGPUComputePipelineDescriptor"]
3792        [::core::mem::size_of::<WGPUComputePipelineDescriptor>() - 80usize];
3793    ["Alignment of WGPUComputePipelineDescriptor"]
3794        [::core::mem::align_of::<WGPUComputePipelineDescriptor>() - 8usize];
3795    ["Offset of field: WGPUComputePipelineDescriptor::nextInChain"]
3796        [::core::mem::offset_of!(WGPUComputePipelineDescriptor, nextInChain) - 0usize];
3797    ["Offset of field: WGPUComputePipelineDescriptor::label"]
3798        [::core::mem::offset_of!(WGPUComputePipelineDescriptor, label) - 8usize];
3799    ["Offset of field: WGPUComputePipelineDescriptor::layout"]
3800        [::core::mem::offset_of!(WGPUComputePipelineDescriptor, layout) - 24usize];
3801    ["Offset of field: WGPUComputePipelineDescriptor::compute"]
3802        [::core::mem::offset_of!(WGPUComputePipelineDescriptor, compute) - 32usize];
3803};
3804#[repr(C)]
3805#[derive(Debug, Copy, Clone)]
3806pub struct WGPURenderPassDescriptor {
3807    pub nextInChain: *mut WGPUChainedStruct,
3808    pub label: WGPUStringView,
3809    pub colorAttachmentCount: usize,
3810    pub colorAttachments: *const WGPURenderPassColorAttachment,
3811    pub depthStencilAttachment: *const WGPURenderPassDepthStencilAttachment,
3812    pub occlusionQuerySet: WGPUQuerySet,
3813    pub timestampWrites: *const WGPUPassTimestampWrites,
3814}
3815#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3816const _: () = {
3817    ["Size of WGPURenderPassDescriptor"]
3818        [::core::mem::size_of::<WGPURenderPassDescriptor>() - 64usize];
3819    ["Alignment of WGPURenderPassDescriptor"]
3820        [::core::mem::align_of::<WGPURenderPassDescriptor>() - 8usize];
3821    ["Offset of field: WGPURenderPassDescriptor::nextInChain"]
3822        [::core::mem::offset_of!(WGPURenderPassDescriptor, nextInChain) - 0usize];
3823    ["Offset of field: WGPURenderPassDescriptor::label"]
3824        [::core::mem::offset_of!(WGPURenderPassDescriptor, label) - 8usize];
3825    ["Offset of field: WGPURenderPassDescriptor::colorAttachmentCount"]
3826        [::core::mem::offset_of!(WGPURenderPassDescriptor, colorAttachmentCount) - 24usize];
3827    ["Offset of field: WGPURenderPassDescriptor::colorAttachments"]
3828        [::core::mem::offset_of!(WGPURenderPassDescriptor, colorAttachments) - 32usize];
3829    ["Offset of field: WGPURenderPassDescriptor::depthStencilAttachment"]
3830        [::core::mem::offset_of!(WGPURenderPassDescriptor, depthStencilAttachment) - 40usize];
3831    ["Offset of field: WGPURenderPassDescriptor::occlusionQuerySet"]
3832        [::core::mem::offset_of!(WGPURenderPassDescriptor, occlusionQuerySet) - 48usize];
3833    ["Offset of field: WGPURenderPassDescriptor::timestampWrites"]
3834        [::core::mem::offset_of!(WGPURenderPassDescriptor, timestampWrites) - 56usize];
3835};
3836#[repr(C)]
3837#[derive(Debug, Copy, Clone)]
3838pub struct WGPUVertexState {
3839    pub nextInChain: *mut WGPUChainedStruct,
3840    pub module: WGPUShaderModule,
3841    pub entryPoint: WGPUStringView,
3842    pub constantCount: usize,
3843    pub constants: *const WGPUConstantEntry,
3844    pub bufferCount: usize,
3845    pub buffers: *const WGPUVertexBufferLayout,
3846}
3847#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3848const _: () = {
3849    ["Size of WGPUVertexState"][::core::mem::size_of::<WGPUVertexState>() - 64usize];
3850    ["Alignment of WGPUVertexState"][::core::mem::align_of::<WGPUVertexState>() - 8usize];
3851    ["Offset of field: WGPUVertexState::nextInChain"]
3852        [::core::mem::offset_of!(WGPUVertexState, nextInChain) - 0usize];
3853    ["Offset of field: WGPUVertexState::module"]
3854        [::core::mem::offset_of!(WGPUVertexState, module) - 8usize];
3855    ["Offset of field: WGPUVertexState::entryPoint"]
3856        [::core::mem::offset_of!(WGPUVertexState, entryPoint) - 16usize];
3857    ["Offset of field: WGPUVertexState::constantCount"]
3858        [::core::mem::offset_of!(WGPUVertexState, constantCount) - 32usize];
3859    ["Offset of field: WGPUVertexState::constants"]
3860        [::core::mem::offset_of!(WGPUVertexState, constants) - 40usize];
3861    ["Offset of field: WGPUVertexState::bufferCount"]
3862        [::core::mem::offset_of!(WGPUVertexState, bufferCount) - 48usize];
3863    ["Offset of field: WGPUVertexState::buffers"]
3864        [::core::mem::offset_of!(WGPUVertexState, buffers) - 56usize];
3865};
3866#[repr(C)]
3867#[derive(Debug, Copy, Clone)]
3868pub struct WGPUFragmentState {
3869    pub nextInChain: *mut WGPUChainedStruct,
3870    pub module: WGPUShaderModule,
3871    pub entryPoint: WGPUStringView,
3872    pub constantCount: usize,
3873    pub constants: *const WGPUConstantEntry,
3874    pub targetCount: usize,
3875    pub targets: *const WGPUColorTargetState,
3876}
3877#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3878const _: () = {
3879    ["Size of WGPUFragmentState"][::core::mem::size_of::<WGPUFragmentState>() - 64usize];
3880    ["Alignment of WGPUFragmentState"][::core::mem::align_of::<WGPUFragmentState>() - 8usize];
3881    ["Offset of field: WGPUFragmentState::nextInChain"]
3882        [::core::mem::offset_of!(WGPUFragmentState, nextInChain) - 0usize];
3883    ["Offset of field: WGPUFragmentState::module"]
3884        [::core::mem::offset_of!(WGPUFragmentState, module) - 8usize];
3885    ["Offset of field: WGPUFragmentState::entryPoint"]
3886        [::core::mem::offset_of!(WGPUFragmentState, entryPoint) - 16usize];
3887    ["Offset of field: WGPUFragmentState::constantCount"]
3888        [::core::mem::offset_of!(WGPUFragmentState, constantCount) - 32usize];
3889    ["Offset of field: WGPUFragmentState::constants"]
3890        [::core::mem::offset_of!(WGPUFragmentState, constants) - 40usize];
3891    ["Offset of field: WGPUFragmentState::targetCount"]
3892        [::core::mem::offset_of!(WGPUFragmentState, targetCount) - 48usize];
3893    ["Offset of field: WGPUFragmentState::targets"]
3894        [::core::mem::offset_of!(WGPUFragmentState, targets) - 56usize];
3895};
3896#[repr(C)]
3897#[derive(Debug, Copy, Clone)]
3898pub struct WGPURenderPipelineDescriptor {
3899    pub nextInChain: *mut WGPUChainedStruct,
3900    pub label: WGPUStringView,
3901    pub layout: WGPUPipelineLayout,
3902    pub vertex: WGPUVertexState,
3903    pub primitive: WGPUPrimitiveState,
3904    pub depthStencil: *const WGPUDepthStencilState,
3905    pub multisample: WGPUMultisampleState,
3906    pub fragment: *const WGPUFragmentState,
3907}
3908#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3909const _: () = {
3910    ["Size of WGPURenderPipelineDescriptor"]
3911        [::core::mem::size_of::<WGPURenderPipelineDescriptor>() - 168usize];
3912    ["Alignment of WGPURenderPipelineDescriptor"]
3913        [::core::mem::align_of::<WGPURenderPipelineDescriptor>() - 8usize];
3914    ["Offset of field: WGPURenderPipelineDescriptor::nextInChain"]
3915        [::core::mem::offset_of!(WGPURenderPipelineDescriptor, nextInChain) - 0usize];
3916    ["Offset of field: WGPURenderPipelineDescriptor::label"]
3917        [::core::mem::offset_of!(WGPURenderPipelineDescriptor, label) - 8usize];
3918    ["Offset of field: WGPURenderPipelineDescriptor::layout"]
3919        [::core::mem::offset_of!(WGPURenderPipelineDescriptor, layout) - 24usize];
3920    ["Offset of field: WGPURenderPipelineDescriptor::vertex"]
3921        [::core::mem::offset_of!(WGPURenderPipelineDescriptor, vertex) - 32usize];
3922    ["Offset of field: WGPURenderPipelineDescriptor::primitive"]
3923        [::core::mem::offset_of!(WGPURenderPipelineDescriptor, primitive) - 96usize];
3924    ["Offset of field: WGPURenderPipelineDescriptor::depthStencil"]
3925        [::core::mem::offset_of!(WGPURenderPipelineDescriptor, depthStencil) - 128usize];
3926    ["Offset of field: WGPURenderPipelineDescriptor::multisample"]
3927        [::core::mem::offset_of!(WGPURenderPipelineDescriptor, multisample) - 136usize];
3928    ["Offset of field: WGPURenderPipelineDescriptor::fragment"]
3929        [::core::mem::offset_of!(WGPURenderPipelineDescriptor, fragment) - 160usize];
3930};
3931pub type WGPUProcCreateInstance = ::core::option::Option<
3932    unsafe extern "C" fn(descriptor: *const WGPUInstanceDescriptor) -> WGPUInstance,
3933>;
3934pub type WGPUProcGetInstanceFeatures =
3935    ::core::option::Option<unsafe extern "C" fn(features: *mut WGPUSupportedInstanceFeatures)>;
3936pub type WGPUProcGetInstanceLimits =
3937    ::core::option::Option<unsafe extern "C" fn(limits: *mut WGPUInstanceLimits) -> WGPUStatus>;
3938pub type WGPUProcHasInstanceFeature =
3939    ::core::option::Option<unsafe extern "C" fn(feature: WGPUInstanceFeatureName) -> WGPUBool>;
3940pub type WGPUProcGetProcAddress =
3941    ::core::option::Option<unsafe extern "C" fn(procName: WGPUStringView) -> WGPUProc>;
3942pub type WGPUProcAdapterGetFeatures = ::core::option::Option<
3943    unsafe extern "C" fn(adapter: WGPUAdapter, features: *mut WGPUSupportedFeatures),
3944>;
3945pub type WGPUProcAdapterGetInfo = ::core::option::Option<
3946    unsafe extern "C" fn(adapter: WGPUAdapter, info: *mut WGPUAdapterInfo) -> WGPUStatus,
3947>;
3948pub type WGPUProcAdapterGetLimits = ::core::option::Option<
3949    unsafe extern "C" fn(adapter: WGPUAdapter, limits: *mut WGPULimits) -> WGPUStatus,
3950>;
3951pub type WGPUProcAdapterHasFeature = ::core::option::Option<
3952    unsafe extern "C" fn(adapter: WGPUAdapter, feature: WGPUFeatureName) -> WGPUBool,
3953>;
3954pub type WGPUProcAdapterRequestDevice = ::core::option::Option<
3955    unsafe extern "C" fn(
3956        adapter: WGPUAdapter,
3957        descriptor: *const WGPUDeviceDescriptor,
3958        callbackInfo: WGPURequestDeviceCallbackInfo,
3959    ) -> WGPUFuture,
3960>;
3961pub type WGPUProcAdapterAddRef = ::core::option::Option<unsafe extern "C" fn(adapter: WGPUAdapter)>;
3962pub type WGPUProcAdapterRelease =
3963    ::core::option::Option<unsafe extern "C" fn(adapter: WGPUAdapter)>;
3964pub type WGPUProcAdapterInfoFreeMembers =
3965    ::core::option::Option<unsafe extern "C" fn(adapterInfo: WGPUAdapterInfo)>;
3966pub type WGPUProcBindGroupSetLabel =
3967    ::core::option::Option<unsafe extern "C" fn(bindGroup: WGPUBindGroup, label: WGPUStringView)>;
3968pub type WGPUProcBindGroupAddRef =
3969    ::core::option::Option<unsafe extern "C" fn(bindGroup: WGPUBindGroup)>;
3970pub type WGPUProcBindGroupRelease =
3971    ::core::option::Option<unsafe extern "C" fn(bindGroup: WGPUBindGroup)>;
3972pub type WGPUProcBindGroupLayoutSetLabel = ::core::option::Option<
3973    unsafe extern "C" fn(bindGroupLayout: WGPUBindGroupLayout, label: WGPUStringView),
3974>;
3975pub type WGPUProcBindGroupLayoutAddRef =
3976    ::core::option::Option<unsafe extern "C" fn(bindGroupLayout: WGPUBindGroupLayout)>;
3977pub type WGPUProcBindGroupLayoutRelease =
3978    ::core::option::Option<unsafe extern "C" fn(bindGroupLayout: WGPUBindGroupLayout)>;
3979pub type WGPUProcBufferDestroy = ::core::option::Option<unsafe extern "C" fn(buffer: WGPUBuffer)>;
3980pub type WGPUProcBufferGetConstMappedRange = ::core::option::Option<
3981    unsafe extern "C" fn(
3982        buffer: WGPUBuffer,
3983        offset: usize,
3984        size: usize,
3985    ) -> *const ::core::ffi::c_void,
3986>;
3987pub type WGPUProcBufferGetMappedRange = ::core::option::Option<
3988    unsafe extern "C" fn(
3989        buffer: WGPUBuffer,
3990        offset: usize,
3991        size: usize,
3992    ) -> *mut ::core::ffi::c_void,
3993>;
3994pub type WGPUProcBufferGetMapState =
3995    ::core::option::Option<unsafe extern "C" fn(buffer: WGPUBuffer) -> WGPUBufferMapState>;
3996pub type WGPUProcBufferGetSize =
3997    ::core::option::Option<unsafe extern "C" fn(buffer: WGPUBuffer) -> u64>;
3998pub type WGPUProcBufferGetUsage =
3999    ::core::option::Option<unsafe extern "C" fn(buffer: WGPUBuffer) -> WGPUBufferUsage>;
4000pub type WGPUProcBufferMapAsync = ::core::option::Option<
4001    unsafe extern "C" fn(
4002        buffer: WGPUBuffer,
4003        mode: WGPUMapMode,
4004        offset: usize,
4005        size: usize,
4006        callbackInfo: WGPUBufferMapCallbackInfo,
4007    ) -> WGPUFuture,
4008>;
4009pub type WGPUProcBufferReadMappedRange = ::core::option::Option<
4010    unsafe extern "C" fn(
4011        buffer: WGPUBuffer,
4012        offset: usize,
4013        data: *mut ::core::ffi::c_void,
4014        size: usize,
4015    ) -> WGPUStatus,
4016>;
4017pub type WGPUProcBufferSetLabel =
4018    ::core::option::Option<unsafe extern "C" fn(buffer: WGPUBuffer, label: WGPUStringView)>;
4019pub type WGPUProcBufferUnmap = ::core::option::Option<unsafe extern "C" fn(buffer: WGPUBuffer)>;
4020pub type WGPUProcBufferWriteMappedRange = ::core::option::Option<
4021    unsafe extern "C" fn(
4022        buffer: WGPUBuffer,
4023        offset: usize,
4024        data: *const ::core::ffi::c_void,
4025        size: usize,
4026    ) -> WGPUStatus,
4027>;
4028pub type WGPUProcBufferAddRef = ::core::option::Option<unsafe extern "C" fn(buffer: WGPUBuffer)>;
4029pub type WGPUProcBufferRelease = ::core::option::Option<unsafe extern "C" fn(buffer: WGPUBuffer)>;
4030pub type WGPUProcCommandBufferSetLabel = ::core::option::Option<
4031    unsafe extern "C" fn(commandBuffer: WGPUCommandBuffer, label: WGPUStringView),
4032>;
4033pub type WGPUProcCommandBufferAddRef =
4034    ::core::option::Option<unsafe extern "C" fn(commandBuffer: WGPUCommandBuffer)>;
4035pub type WGPUProcCommandBufferRelease =
4036    ::core::option::Option<unsafe extern "C" fn(commandBuffer: WGPUCommandBuffer)>;
4037pub type WGPUProcCommandEncoderBeginComputePass = ::core::option::Option<
4038    unsafe extern "C" fn(
4039        commandEncoder: WGPUCommandEncoder,
4040        descriptor: *const WGPUComputePassDescriptor,
4041    ) -> WGPUComputePassEncoder,
4042>;
4043pub type WGPUProcCommandEncoderBeginRenderPass = ::core::option::Option<
4044    unsafe extern "C" fn(
4045        commandEncoder: WGPUCommandEncoder,
4046        descriptor: *const WGPURenderPassDescriptor,
4047    ) -> WGPURenderPassEncoder,
4048>;
4049pub type WGPUProcCommandEncoderClearBuffer = ::core::option::Option<
4050    unsafe extern "C" fn(
4051        commandEncoder: WGPUCommandEncoder,
4052        buffer: WGPUBuffer,
4053        offset: u64,
4054        size: u64,
4055    ),
4056>;
4057pub type WGPUProcCommandEncoderCopyBufferToBuffer = ::core::option::Option<
4058    unsafe extern "C" fn(
4059        commandEncoder: WGPUCommandEncoder,
4060        source: WGPUBuffer,
4061        sourceOffset: u64,
4062        destination: WGPUBuffer,
4063        destinationOffset: u64,
4064        size: u64,
4065    ),
4066>;
4067pub type WGPUProcCommandEncoderCopyBufferToTexture = ::core::option::Option<
4068    unsafe extern "C" fn(
4069        commandEncoder: WGPUCommandEncoder,
4070        source: *const WGPUTexelCopyBufferInfo,
4071        destination: *const WGPUTexelCopyTextureInfo,
4072        copySize: *const WGPUExtent3D,
4073    ),
4074>;
4075pub type WGPUProcCommandEncoderCopyTextureToBuffer = ::core::option::Option<
4076    unsafe extern "C" fn(
4077        commandEncoder: WGPUCommandEncoder,
4078        source: *const WGPUTexelCopyTextureInfo,
4079        destination: *const WGPUTexelCopyBufferInfo,
4080        copySize: *const WGPUExtent3D,
4081    ),
4082>;
4083pub type WGPUProcCommandEncoderCopyTextureToTexture = ::core::option::Option<
4084    unsafe extern "C" fn(
4085        commandEncoder: WGPUCommandEncoder,
4086        source: *const WGPUTexelCopyTextureInfo,
4087        destination: *const WGPUTexelCopyTextureInfo,
4088        copySize: *const WGPUExtent3D,
4089    ),
4090>;
4091pub type WGPUProcCommandEncoderFinish = ::core::option::Option<
4092    unsafe extern "C" fn(
4093        commandEncoder: WGPUCommandEncoder,
4094        descriptor: *const WGPUCommandBufferDescriptor,
4095    ) -> WGPUCommandBuffer,
4096>;
4097pub type WGPUProcCommandEncoderInsertDebugMarker = ::core::option::Option<
4098    unsafe extern "C" fn(commandEncoder: WGPUCommandEncoder, markerLabel: WGPUStringView),
4099>;
4100pub type WGPUProcCommandEncoderPopDebugGroup =
4101    ::core::option::Option<unsafe extern "C" fn(commandEncoder: WGPUCommandEncoder)>;
4102pub type WGPUProcCommandEncoderPushDebugGroup = ::core::option::Option<
4103    unsafe extern "C" fn(commandEncoder: WGPUCommandEncoder, groupLabel: WGPUStringView),
4104>;
4105pub type WGPUProcCommandEncoderResolveQuerySet = ::core::option::Option<
4106    unsafe extern "C" fn(
4107        commandEncoder: WGPUCommandEncoder,
4108        querySet: WGPUQuerySet,
4109        firstQuery: u32,
4110        queryCount: u32,
4111        destination: WGPUBuffer,
4112        destinationOffset: u64,
4113    ),
4114>;
4115pub type WGPUProcCommandEncoderSetLabel = ::core::option::Option<
4116    unsafe extern "C" fn(commandEncoder: WGPUCommandEncoder, label: WGPUStringView),
4117>;
4118pub type WGPUProcCommandEncoderWriteTimestamp = ::core::option::Option<
4119    unsafe extern "C" fn(
4120        commandEncoder: WGPUCommandEncoder,
4121        querySet: WGPUQuerySet,
4122        queryIndex: u32,
4123    ),
4124>;
4125pub type WGPUProcCommandEncoderAddRef =
4126    ::core::option::Option<unsafe extern "C" fn(commandEncoder: WGPUCommandEncoder)>;
4127pub type WGPUProcCommandEncoderRelease =
4128    ::core::option::Option<unsafe extern "C" fn(commandEncoder: WGPUCommandEncoder)>;
4129pub type WGPUProcComputePassEncoderDispatchWorkgroups = ::core::option::Option<
4130    unsafe extern "C" fn(
4131        computePassEncoder: WGPUComputePassEncoder,
4132        workgroupCountX: u32,
4133        workgroupCountY: u32,
4134        workgroupCountZ: u32,
4135    ),
4136>;
4137pub type WGPUProcComputePassEncoderDispatchWorkgroupsIndirect = ::core::option::Option<
4138    unsafe extern "C" fn(
4139        computePassEncoder: WGPUComputePassEncoder,
4140        indirectBuffer: WGPUBuffer,
4141        indirectOffset: u64,
4142    ),
4143>;
4144pub type WGPUProcComputePassEncoderEnd =
4145    ::core::option::Option<unsafe extern "C" fn(computePassEncoder: WGPUComputePassEncoder)>;
4146pub type WGPUProcComputePassEncoderInsertDebugMarker = ::core::option::Option<
4147    unsafe extern "C" fn(computePassEncoder: WGPUComputePassEncoder, markerLabel: WGPUStringView),
4148>;
4149pub type WGPUProcComputePassEncoderPopDebugGroup =
4150    ::core::option::Option<unsafe extern "C" fn(computePassEncoder: WGPUComputePassEncoder)>;
4151pub type WGPUProcComputePassEncoderPushDebugGroup = ::core::option::Option<
4152    unsafe extern "C" fn(computePassEncoder: WGPUComputePassEncoder, groupLabel: WGPUStringView),
4153>;
4154pub type WGPUProcComputePassEncoderSetBindGroup = ::core::option::Option<
4155    unsafe extern "C" fn(
4156        computePassEncoder: WGPUComputePassEncoder,
4157        groupIndex: u32,
4158        group: WGPUBindGroup,
4159        dynamicOffsetCount: usize,
4160        dynamicOffsets: *const u32,
4161    ),
4162>;
4163pub type WGPUProcComputePassEncoderSetLabel = ::core::option::Option<
4164    unsafe extern "C" fn(computePassEncoder: WGPUComputePassEncoder, label: WGPUStringView),
4165>;
4166pub type WGPUProcComputePassEncoderSetPipeline = ::core::option::Option<
4167    unsafe extern "C" fn(computePassEncoder: WGPUComputePassEncoder, pipeline: WGPUComputePipeline),
4168>;
4169pub type WGPUProcComputePassEncoderAddRef =
4170    ::core::option::Option<unsafe extern "C" fn(computePassEncoder: WGPUComputePassEncoder)>;
4171pub type WGPUProcComputePassEncoderRelease =
4172    ::core::option::Option<unsafe extern "C" fn(computePassEncoder: WGPUComputePassEncoder)>;
4173pub type WGPUProcComputePipelineGetBindGroupLayout = ::core::option::Option<
4174    unsafe extern "C" fn(
4175        computePipeline: WGPUComputePipeline,
4176        groupIndex: u32,
4177    ) -> WGPUBindGroupLayout,
4178>;
4179pub type WGPUProcComputePipelineSetLabel = ::core::option::Option<
4180    unsafe extern "C" fn(computePipeline: WGPUComputePipeline, label: WGPUStringView),
4181>;
4182pub type WGPUProcComputePipelineAddRef =
4183    ::core::option::Option<unsafe extern "C" fn(computePipeline: WGPUComputePipeline)>;
4184pub type WGPUProcComputePipelineRelease =
4185    ::core::option::Option<unsafe extern "C" fn(computePipeline: WGPUComputePipeline)>;
4186pub type WGPUProcDeviceCreateBindGroup = ::core::option::Option<
4187    unsafe extern "C" fn(
4188        device: WGPUDevice,
4189        descriptor: *const WGPUBindGroupDescriptor,
4190    ) -> WGPUBindGroup,
4191>;
4192pub type WGPUProcDeviceCreateBindGroupLayout = ::core::option::Option<
4193    unsafe extern "C" fn(
4194        device: WGPUDevice,
4195        descriptor: *const WGPUBindGroupLayoutDescriptor,
4196    ) -> WGPUBindGroupLayout,
4197>;
4198pub type WGPUProcDeviceCreateBuffer = ::core::option::Option<
4199    unsafe extern "C" fn(device: WGPUDevice, descriptor: *const WGPUBufferDescriptor) -> WGPUBuffer,
4200>;
4201pub type WGPUProcDeviceCreateCommandEncoder = ::core::option::Option<
4202    unsafe extern "C" fn(
4203        device: WGPUDevice,
4204        descriptor: *const WGPUCommandEncoderDescriptor,
4205    ) -> WGPUCommandEncoder,
4206>;
4207pub type WGPUProcDeviceCreateComputePipeline = ::core::option::Option<
4208    unsafe extern "C" fn(
4209        device: WGPUDevice,
4210        descriptor: *const WGPUComputePipelineDescriptor,
4211    ) -> WGPUComputePipeline,
4212>;
4213pub type WGPUProcDeviceCreateComputePipelineAsync = ::core::option::Option<
4214    unsafe extern "C" fn(
4215        device: WGPUDevice,
4216        descriptor: *const WGPUComputePipelineDescriptor,
4217        callbackInfo: WGPUCreateComputePipelineAsyncCallbackInfo,
4218    ) -> WGPUFuture,
4219>;
4220pub type WGPUProcDeviceCreatePipelineLayout = ::core::option::Option<
4221    unsafe extern "C" fn(
4222        device: WGPUDevice,
4223        descriptor: *const WGPUPipelineLayoutDescriptor,
4224    ) -> WGPUPipelineLayout,
4225>;
4226pub type WGPUProcDeviceCreateQuerySet = ::core::option::Option<
4227    unsafe extern "C" fn(
4228        device: WGPUDevice,
4229        descriptor: *const WGPUQuerySetDescriptor,
4230    ) -> WGPUQuerySet,
4231>;
4232pub type WGPUProcDeviceCreateRenderBundleEncoder = ::core::option::Option<
4233    unsafe extern "C" fn(
4234        device: WGPUDevice,
4235        descriptor: *const WGPURenderBundleEncoderDescriptor,
4236    ) -> WGPURenderBundleEncoder,
4237>;
4238pub type WGPUProcDeviceCreateRenderPipeline = ::core::option::Option<
4239    unsafe extern "C" fn(
4240        device: WGPUDevice,
4241        descriptor: *const WGPURenderPipelineDescriptor,
4242    ) -> WGPURenderPipeline,
4243>;
4244pub type WGPUProcDeviceCreateRenderPipelineAsync = ::core::option::Option<
4245    unsafe extern "C" fn(
4246        device: WGPUDevice,
4247        descriptor: *const WGPURenderPipelineDescriptor,
4248        callbackInfo: WGPUCreateRenderPipelineAsyncCallbackInfo,
4249    ) -> WGPUFuture,
4250>;
4251pub type WGPUProcDeviceCreateSampler = ::core::option::Option<
4252    unsafe extern "C" fn(
4253        device: WGPUDevice,
4254        descriptor: *const WGPUSamplerDescriptor,
4255    ) -> WGPUSampler,
4256>;
4257pub type WGPUProcDeviceCreateShaderModule = ::core::option::Option<
4258    unsafe extern "C" fn(
4259        device: WGPUDevice,
4260        descriptor: *const WGPUShaderModuleDescriptor,
4261    ) -> WGPUShaderModule,
4262>;
4263pub type WGPUProcDeviceCreateTexture = ::core::option::Option<
4264    unsafe extern "C" fn(
4265        device: WGPUDevice,
4266        descriptor: *const WGPUTextureDescriptor,
4267    ) -> WGPUTexture,
4268>;
4269pub type WGPUProcDeviceDestroy = ::core::option::Option<unsafe extern "C" fn(device: WGPUDevice)>;
4270pub type WGPUProcDeviceGetAdapterInfo = ::core::option::Option<
4271    unsafe extern "C" fn(device: WGPUDevice, adapterInfo: *mut WGPUAdapterInfo) -> WGPUStatus,
4272>;
4273pub type WGPUProcDeviceGetFeatures = ::core::option::Option<
4274    unsafe extern "C" fn(device: WGPUDevice, features: *mut WGPUSupportedFeatures),
4275>;
4276pub type WGPUProcDeviceGetLimits = ::core::option::Option<
4277    unsafe extern "C" fn(device: WGPUDevice, limits: *mut WGPULimits) -> WGPUStatus,
4278>;
4279pub type WGPUProcDeviceGetLostFuture =
4280    ::core::option::Option<unsafe extern "C" fn(device: WGPUDevice) -> WGPUFuture>;
4281pub type WGPUProcDeviceGetQueue =
4282    ::core::option::Option<unsafe extern "C" fn(device: WGPUDevice) -> WGPUQueue>;
4283pub type WGPUProcDeviceHasFeature = ::core::option::Option<
4284    unsafe extern "C" fn(device: WGPUDevice, feature: WGPUFeatureName) -> WGPUBool,
4285>;
4286pub type WGPUProcDevicePopErrorScope = ::core::option::Option<
4287    unsafe extern "C" fn(
4288        device: WGPUDevice,
4289        callbackInfo: WGPUPopErrorScopeCallbackInfo,
4290    ) -> WGPUFuture,
4291>;
4292pub type WGPUProcDevicePushErrorScope =
4293    ::core::option::Option<unsafe extern "C" fn(device: WGPUDevice, filter: WGPUErrorFilter)>;
4294pub type WGPUProcDeviceSetLabel =
4295    ::core::option::Option<unsafe extern "C" fn(device: WGPUDevice, label: WGPUStringView)>;
4296pub type WGPUProcDeviceAddRef = ::core::option::Option<unsafe extern "C" fn(device: WGPUDevice)>;
4297pub type WGPUProcDeviceRelease = ::core::option::Option<unsafe extern "C" fn(device: WGPUDevice)>;
4298pub type WGPUProcInstanceCreateSurface = ::core::option::Option<
4299    unsafe extern "C" fn(
4300        instance: WGPUInstance,
4301        descriptor: *const WGPUSurfaceDescriptor,
4302    ) -> WGPUSurface,
4303>;
4304pub type WGPUProcInstanceGetWGSLLanguageFeatures = ::core::option::Option<
4305    unsafe extern "C" fn(
4306        instance: WGPUInstance,
4307        features: *mut WGPUSupportedWGSLLanguageFeatures,
4308    ) -> WGPUStatus,
4309>;
4310pub type WGPUProcInstanceHasWGSLLanguageFeature = ::core::option::Option<
4311    unsafe extern "C" fn(instance: WGPUInstance, feature: WGPUWGSLLanguageFeatureName) -> WGPUBool,
4312>;
4313pub type WGPUProcInstanceProcessEvents =
4314    ::core::option::Option<unsafe extern "C" fn(instance: WGPUInstance)>;
4315pub type WGPUProcInstanceRequestAdapter = ::core::option::Option<
4316    unsafe extern "C" fn(
4317        instance: WGPUInstance,
4318        options: *const WGPURequestAdapterOptions,
4319        callbackInfo: WGPURequestAdapterCallbackInfo,
4320    ) -> WGPUFuture,
4321>;
4322pub type WGPUProcInstanceWaitAny = ::core::option::Option<
4323    unsafe extern "C" fn(
4324        instance: WGPUInstance,
4325        futureCount: usize,
4326        futures: *mut WGPUFutureWaitInfo,
4327        timeoutNS: u64,
4328    ) -> WGPUWaitStatus,
4329>;
4330pub type WGPUProcInstanceAddRef =
4331    ::core::option::Option<unsafe extern "C" fn(instance: WGPUInstance)>;
4332pub type WGPUProcInstanceRelease =
4333    ::core::option::Option<unsafe extern "C" fn(instance: WGPUInstance)>;
4334pub type WGPUProcPipelineLayoutSetLabel = ::core::option::Option<
4335    unsafe extern "C" fn(pipelineLayout: WGPUPipelineLayout, label: WGPUStringView),
4336>;
4337pub type WGPUProcPipelineLayoutAddRef =
4338    ::core::option::Option<unsafe extern "C" fn(pipelineLayout: WGPUPipelineLayout)>;
4339pub type WGPUProcPipelineLayoutRelease =
4340    ::core::option::Option<unsafe extern "C" fn(pipelineLayout: WGPUPipelineLayout)>;
4341pub type WGPUProcQuerySetDestroy =
4342    ::core::option::Option<unsafe extern "C" fn(querySet: WGPUQuerySet)>;
4343pub type WGPUProcQuerySetGetCount =
4344    ::core::option::Option<unsafe extern "C" fn(querySet: WGPUQuerySet) -> u32>;
4345pub type WGPUProcQuerySetGetType =
4346    ::core::option::Option<unsafe extern "C" fn(querySet: WGPUQuerySet) -> WGPUQueryType>;
4347pub type WGPUProcQuerySetSetLabel =
4348    ::core::option::Option<unsafe extern "C" fn(querySet: WGPUQuerySet, label: WGPUStringView)>;
4349pub type WGPUProcQuerySetAddRef =
4350    ::core::option::Option<unsafe extern "C" fn(querySet: WGPUQuerySet)>;
4351pub type WGPUProcQuerySetRelease =
4352    ::core::option::Option<unsafe extern "C" fn(querySet: WGPUQuerySet)>;
4353pub type WGPUProcQueueOnSubmittedWorkDone = ::core::option::Option<
4354    unsafe extern "C" fn(
4355        queue: WGPUQueue,
4356        callbackInfo: WGPUQueueWorkDoneCallbackInfo,
4357    ) -> WGPUFuture,
4358>;
4359pub type WGPUProcQueueSetLabel =
4360    ::core::option::Option<unsafe extern "C" fn(queue: WGPUQueue, label: WGPUStringView)>;
4361pub type WGPUProcQueueSubmit = ::core::option::Option<
4362    unsafe extern "C" fn(queue: WGPUQueue, commandCount: usize, commands: *const WGPUCommandBuffer),
4363>;
4364pub type WGPUProcQueueWriteBuffer = ::core::option::Option<
4365    unsafe extern "C" fn(
4366        queue: WGPUQueue,
4367        buffer: WGPUBuffer,
4368        bufferOffset: u64,
4369        data: *const ::core::ffi::c_void,
4370        size: usize,
4371    ),
4372>;
4373pub type WGPUProcQueueWriteTexture = ::core::option::Option<
4374    unsafe extern "C" fn(
4375        queue: WGPUQueue,
4376        destination: *const WGPUTexelCopyTextureInfo,
4377        data: *const ::core::ffi::c_void,
4378        dataSize: usize,
4379        dataLayout: *const WGPUTexelCopyBufferLayout,
4380        writeSize: *const WGPUExtent3D,
4381    ),
4382>;
4383pub type WGPUProcQueueAddRef = ::core::option::Option<unsafe extern "C" fn(queue: WGPUQueue)>;
4384pub type WGPUProcQueueRelease = ::core::option::Option<unsafe extern "C" fn(queue: WGPUQueue)>;
4385pub type WGPUProcRenderBundleSetLabel = ::core::option::Option<
4386    unsafe extern "C" fn(renderBundle: WGPURenderBundle, label: WGPUStringView),
4387>;
4388pub type WGPUProcRenderBundleAddRef =
4389    ::core::option::Option<unsafe extern "C" fn(renderBundle: WGPURenderBundle)>;
4390pub type WGPUProcRenderBundleRelease =
4391    ::core::option::Option<unsafe extern "C" fn(renderBundle: WGPURenderBundle)>;
4392pub type WGPUProcRenderBundleEncoderDraw = ::core::option::Option<
4393    unsafe extern "C" fn(
4394        renderBundleEncoder: WGPURenderBundleEncoder,
4395        vertexCount: u32,
4396        instanceCount: u32,
4397        firstVertex: u32,
4398        firstInstance: u32,
4399    ),
4400>;
4401pub type WGPUProcRenderBundleEncoderDrawIndexed = ::core::option::Option<
4402    unsafe extern "C" fn(
4403        renderBundleEncoder: WGPURenderBundleEncoder,
4404        indexCount: u32,
4405        instanceCount: u32,
4406        firstIndex: u32,
4407        baseVertex: i32,
4408        firstInstance: u32,
4409    ),
4410>;
4411pub type WGPUProcRenderBundleEncoderDrawIndexedIndirect = ::core::option::Option<
4412    unsafe extern "C" fn(
4413        renderBundleEncoder: WGPURenderBundleEncoder,
4414        indirectBuffer: WGPUBuffer,
4415        indirectOffset: u64,
4416    ),
4417>;
4418pub type WGPUProcRenderBundleEncoderDrawIndirect = ::core::option::Option<
4419    unsafe extern "C" fn(
4420        renderBundleEncoder: WGPURenderBundleEncoder,
4421        indirectBuffer: WGPUBuffer,
4422        indirectOffset: u64,
4423    ),
4424>;
4425pub type WGPUProcRenderBundleEncoderFinish = ::core::option::Option<
4426    unsafe extern "C" fn(
4427        renderBundleEncoder: WGPURenderBundleEncoder,
4428        descriptor: *const WGPURenderBundleDescriptor,
4429    ) -> WGPURenderBundle,
4430>;
4431pub type WGPUProcRenderBundleEncoderInsertDebugMarker = ::core::option::Option<
4432    unsafe extern "C" fn(renderBundleEncoder: WGPURenderBundleEncoder, markerLabel: WGPUStringView),
4433>;
4434pub type WGPUProcRenderBundleEncoderPopDebugGroup =
4435    ::core::option::Option<unsafe extern "C" fn(renderBundleEncoder: WGPURenderBundleEncoder)>;
4436pub type WGPUProcRenderBundleEncoderPushDebugGroup = ::core::option::Option<
4437    unsafe extern "C" fn(renderBundleEncoder: WGPURenderBundleEncoder, groupLabel: WGPUStringView),
4438>;
4439pub type WGPUProcRenderBundleEncoderSetBindGroup = ::core::option::Option<
4440    unsafe extern "C" fn(
4441        renderBundleEncoder: WGPURenderBundleEncoder,
4442        groupIndex: u32,
4443        group: WGPUBindGroup,
4444        dynamicOffsetCount: usize,
4445        dynamicOffsets: *const u32,
4446    ),
4447>;
4448pub type WGPUProcRenderBundleEncoderSetIndexBuffer = ::core::option::Option<
4449    unsafe extern "C" fn(
4450        renderBundleEncoder: WGPURenderBundleEncoder,
4451        buffer: WGPUBuffer,
4452        format: WGPUIndexFormat,
4453        offset: u64,
4454        size: u64,
4455    ),
4456>;
4457pub type WGPUProcRenderBundleEncoderSetLabel = ::core::option::Option<
4458    unsafe extern "C" fn(renderBundleEncoder: WGPURenderBundleEncoder, label: WGPUStringView),
4459>;
4460pub type WGPUProcRenderBundleEncoderSetPipeline = ::core::option::Option<
4461    unsafe extern "C" fn(
4462        renderBundleEncoder: WGPURenderBundleEncoder,
4463        pipeline: WGPURenderPipeline,
4464    ),
4465>;
4466pub type WGPUProcRenderBundleEncoderSetVertexBuffer = ::core::option::Option<
4467    unsafe extern "C" fn(
4468        renderBundleEncoder: WGPURenderBundleEncoder,
4469        slot: u32,
4470        buffer: WGPUBuffer,
4471        offset: u64,
4472        size: u64,
4473    ),
4474>;
4475pub type WGPUProcRenderBundleEncoderAddRef =
4476    ::core::option::Option<unsafe extern "C" fn(renderBundleEncoder: WGPURenderBundleEncoder)>;
4477pub type WGPUProcRenderBundleEncoderRelease =
4478    ::core::option::Option<unsafe extern "C" fn(renderBundleEncoder: WGPURenderBundleEncoder)>;
4479pub type WGPUProcRenderPassEncoderBeginOcclusionQuery = ::core::option::Option<
4480    unsafe extern "C" fn(renderPassEncoder: WGPURenderPassEncoder, queryIndex: u32),
4481>;
4482pub type WGPUProcRenderPassEncoderDraw = ::core::option::Option<
4483    unsafe extern "C" fn(
4484        renderPassEncoder: WGPURenderPassEncoder,
4485        vertexCount: u32,
4486        instanceCount: u32,
4487        firstVertex: u32,
4488        firstInstance: u32,
4489    ),
4490>;
4491pub type WGPUProcRenderPassEncoderDrawIndexed = ::core::option::Option<
4492    unsafe extern "C" fn(
4493        renderPassEncoder: WGPURenderPassEncoder,
4494        indexCount: u32,
4495        instanceCount: u32,
4496        firstIndex: u32,
4497        baseVertex: i32,
4498        firstInstance: u32,
4499    ),
4500>;
4501pub type WGPUProcRenderPassEncoderDrawIndexedIndirect = ::core::option::Option<
4502    unsafe extern "C" fn(
4503        renderPassEncoder: WGPURenderPassEncoder,
4504        indirectBuffer: WGPUBuffer,
4505        indirectOffset: u64,
4506    ),
4507>;
4508pub type WGPUProcRenderPassEncoderDrawIndirect = ::core::option::Option<
4509    unsafe extern "C" fn(
4510        renderPassEncoder: WGPURenderPassEncoder,
4511        indirectBuffer: WGPUBuffer,
4512        indirectOffset: u64,
4513    ),
4514>;
4515pub type WGPUProcRenderPassEncoderEnd =
4516    ::core::option::Option<unsafe extern "C" fn(renderPassEncoder: WGPURenderPassEncoder)>;
4517pub type WGPUProcRenderPassEncoderEndOcclusionQuery =
4518    ::core::option::Option<unsafe extern "C" fn(renderPassEncoder: WGPURenderPassEncoder)>;
4519pub type WGPUProcRenderPassEncoderExecuteBundles = ::core::option::Option<
4520    unsafe extern "C" fn(
4521        renderPassEncoder: WGPURenderPassEncoder,
4522        bundleCount: usize,
4523        bundles: *const WGPURenderBundle,
4524    ),
4525>;
4526pub type WGPUProcRenderPassEncoderInsertDebugMarker = ::core::option::Option<
4527    unsafe extern "C" fn(renderPassEncoder: WGPURenderPassEncoder, markerLabel: WGPUStringView),
4528>;
4529pub type WGPUProcRenderPassEncoderPopDebugGroup =
4530    ::core::option::Option<unsafe extern "C" fn(renderPassEncoder: WGPURenderPassEncoder)>;
4531pub type WGPUProcRenderPassEncoderPushDebugGroup = ::core::option::Option<
4532    unsafe extern "C" fn(renderPassEncoder: WGPURenderPassEncoder, groupLabel: WGPUStringView),
4533>;
4534pub type WGPUProcRenderPassEncoderSetBindGroup = ::core::option::Option<
4535    unsafe extern "C" fn(
4536        renderPassEncoder: WGPURenderPassEncoder,
4537        groupIndex: u32,
4538        group: WGPUBindGroup,
4539        dynamicOffsetCount: usize,
4540        dynamicOffsets: *const u32,
4541    ),
4542>;
4543pub type WGPUProcRenderPassEncoderSetBlendConstant = ::core::option::Option<
4544    unsafe extern "C" fn(renderPassEncoder: WGPURenderPassEncoder, color: *const WGPUColor),
4545>;
4546pub type WGPUProcRenderPassEncoderSetIndexBuffer = ::core::option::Option<
4547    unsafe extern "C" fn(
4548        renderPassEncoder: WGPURenderPassEncoder,
4549        buffer: WGPUBuffer,
4550        format: WGPUIndexFormat,
4551        offset: u64,
4552        size: u64,
4553    ),
4554>;
4555pub type WGPUProcRenderPassEncoderSetLabel = ::core::option::Option<
4556    unsafe extern "C" fn(renderPassEncoder: WGPURenderPassEncoder, label: WGPUStringView),
4557>;
4558pub type WGPUProcRenderPassEncoderSetPipeline = ::core::option::Option<
4559    unsafe extern "C" fn(renderPassEncoder: WGPURenderPassEncoder, pipeline: WGPURenderPipeline),
4560>;
4561pub type WGPUProcRenderPassEncoderSetScissorRect = ::core::option::Option<
4562    unsafe extern "C" fn(
4563        renderPassEncoder: WGPURenderPassEncoder,
4564        x: u32,
4565        y: u32,
4566        width: u32,
4567        height: u32,
4568    ),
4569>;
4570pub type WGPUProcRenderPassEncoderSetStencilReference = ::core::option::Option<
4571    unsafe extern "C" fn(renderPassEncoder: WGPURenderPassEncoder, reference: u32),
4572>;
4573pub type WGPUProcRenderPassEncoderSetVertexBuffer = ::core::option::Option<
4574    unsafe extern "C" fn(
4575        renderPassEncoder: WGPURenderPassEncoder,
4576        slot: u32,
4577        buffer: WGPUBuffer,
4578        offset: u64,
4579        size: u64,
4580    ),
4581>;
4582pub type WGPUProcRenderPassEncoderSetViewport = ::core::option::Option<
4583    unsafe extern "C" fn(
4584        renderPassEncoder: WGPURenderPassEncoder,
4585        x: f32,
4586        y: f32,
4587        width: f32,
4588        height: f32,
4589        minDepth: f32,
4590        maxDepth: f32,
4591    ),
4592>;
4593pub type WGPUProcRenderPassEncoderAddRef =
4594    ::core::option::Option<unsafe extern "C" fn(renderPassEncoder: WGPURenderPassEncoder)>;
4595pub type WGPUProcRenderPassEncoderRelease =
4596    ::core::option::Option<unsafe extern "C" fn(renderPassEncoder: WGPURenderPassEncoder)>;
4597pub type WGPUProcRenderPipelineGetBindGroupLayout = ::core::option::Option<
4598    unsafe extern "C" fn(
4599        renderPipeline: WGPURenderPipeline,
4600        groupIndex: u32,
4601    ) -> WGPUBindGroupLayout,
4602>;
4603pub type WGPUProcRenderPipelineSetLabel = ::core::option::Option<
4604    unsafe extern "C" fn(renderPipeline: WGPURenderPipeline, label: WGPUStringView),
4605>;
4606pub type WGPUProcRenderPipelineAddRef =
4607    ::core::option::Option<unsafe extern "C" fn(renderPipeline: WGPURenderPipeline)>;
4608pub type WGPUProcRenderPipelineRelease =
4609    ::core::option::Option<unsafe extern "C" fn(renderPipeline: WGPURenderPipeline)>;
4610pub type WGPUProcSamplerSetLabel =
4611    ::core::option::Option<unsafe extern "C" fn(sampler: WGPUSampler, label: WGPUStringView)>;
4612pub type WGPUProcSamplerAddRef = ::core::option::Option<unsafe extern "C" fn(sampler: WGPUSampler)>;
4613pub type WGPUProcSamplerRelease =
4614    ::core::option::Option<unsafe extern "C" fn(sampler: WGPUSampler)>;
4615pub type WGPUProcShaderModuleGetCompilationInfo = ::core::option::Option<
4616    unsafe extern "C" fn(
4617        shaderModule: WGPUShaderModule,
4618        callbackInfo: WGPUCompilationInfoCallbackInfo,
4619    ) -> WGPUFuture,
4620>;
4621pub type WGPUProcShaderModuleSetLabel = ::core::option::Option<
4622    unsafe extern "C" fn(shaderModule: WGPUShaderModule, label: WGPUStringView),
4623>;
4624pub type WGPUProcShaderModuleAddRef =
4625    ::core::option::Option<unsafe extern "C" fn(shaderModule: WGPUShaderModule)>;
4626pub type WGPUProcShaderModuleRelease =
4627    ::core::option::Option<unsafe extern "C" fn(shaderModule: WGPUShaderModule)>;
4628pub type WGPUProcSupportedFeaturesFreeMembers =
4629    ::core::option::Option<unsafe extern "C" fn(supportedFeatures: WGPUSupportedFeatures)>;
4630pub type WGPUProcSupportedInstanceFeaturesFreeMembers = ::core::option::Option<
4631    unsafe extern "C" fn(supportedInstanceFeatures: WGPUSupportedInstanceFeatures),
4632>;
4633pub type WGPUProcSupportedWGSLLanguageFeaturesFreeMembers = ::core::option::Option<
4634    unsafe extern "C" fn(supportedWGSLLanguageFeatures: WGPUSupportedWGSLLanguageFeatures),
4635>;
4636pub type WGPUProcSurfaceConfigure = ::core::option::Option<
4637    unsafe extern "C" fn(surface: WGPUSurface, config: *const WGPUSurfaceConfiguration),
4638>;
4639pub type WGPUProcSurfaceGetCapabilities = ::core::option::Option<
4640    unsafe extern "C" fn(
4641        surface: WGPUSurface,
4642        adapter: WGPUAdapter,
4643        capabilities: *mut WGPUSurfaceCapabilities,
4644    ) -> WGPUStatus,
4645>;
4646pub type WGPUProcSurfaceGetCurrentTexture = ::core::option::Option<
4647    unsafe extern "C" fn(surface: WGPUSurface, surfaceTexture: *mut WGPUSurfaceTexture),
4648>;
4649pub type WGPUProcSurfacePresent =
4650    ::core::option::Option<unsafe extern "C" fn(surface: WGPUSurface) -> WGPUStatus>;
4651pub type WGPUProcSurfaceSetLabel =
4652    ::core::option::Option<unsafe extern "C" fn(surface: WGPUSurface, label: WGPUStringView)>;
4653pub type WGPUProcSurfaceUnconfigure =
4654    ::core::option::Option<unsafe extern "C" fn(surface: WGPUSurface)>;
4655pub type WGPUProcSurfaceAddRef = ::core::option::Option<unsafe extern "C" fn(surface: WGPUSurface)>;
4656pub type WGPUProcSurfaceRelease =
4657    ::core::option::Option<unsafe extern "C" fn(surface: WGPUSurface)>;
4658pub type WGPUProcSurfaceCapabilitiesFreeMembers =
4659    ::core::option::Option<unsafe extern "C" fn(surfaceCapabilities: WGPUSurfaceCapabilities)>;
4660pub type WGPUProcTextureCreateView = ::core::option::Option<
4661    unsafe extern "C" fn(
4662        texture: WGPUTexture,
4663        descriptor: *const WGPUTextureViewDescriptor,
4664    ) -> WGPUTextureView,
4665>;
4666pub type WGPUProcTextureDestroy =
4667    ::core::option::Option<unsafe extern "C" fn(texture: WGPUTexture)>;
4668pub type WGPUProcTextureGetDepthOrArrayLayers =
4669    ::core::option::Option<unsafe extern "C" fn(texture: WGPUTexture) -> u32>;
4670pub type WGPUProcTextureGetDimension =
4671    ::core::option::Option<unsafe extern "C" fn(texture: WGPUTexture) -> WGPUTextureDimension>;
4672pub type WGPUProcTextureGetFormat =
4673    ::core::option::Option<unsafe extern "C" fn(texture: WGPUTexture) -> WGPUTextureFormat>;
4674pub type WGPUProcTextureGetHeight =
4675    ::core::option::Option<unsafe extern "C" fn(texture: WGPUTexture) -> u32>;
4676pub type WGPUProcTextureGetMipLevelCount =
4677    ::core::option::Option<unsafe extern "C" fn(texture: WGPUTexture) -> u32>;
4678pub type WGPUProcTextureGetSampleCount =
4679    ::core::option::Option<unsafe extern "C" fn(texture: WGPUTexture) -> u32>;
4680pub type WGPUProcTextureGetUsage =
4681    ::core::option::Option<unsafe extern "C" fn(texture: WGPUTexture) -> WGPUTextureUsage>;
4682pub type WGPUProcTextureGetWidth =
4683    ::core::option::Option<unsafe extern "C" fn(texture: WGPUTexture) -> u32>;
4684pub type WGPUProcTextureSetLabel =
4685    ::core::option::Option<unsafe extern "C" fn(texture: WGPUTexture, label: WGPUStringView)>;
4686pub type WGPUProcTextureAddRef = ::core::option::Option<unsafe extern "C" fn(texture: WGPUTexture)>;
4687pub type WGPUProcTextureRelease =
4688    ::core::option::Option<unsafe extern "C" fn(texture: WGPUTexture)>;
4689pub type WGPUProcTextureViewSetLabel = ::core::option::Option<
4690    unsafe extern "C" fn(textureView: WGPUTextureView, label: WGPUStringView),
4691>;
4692pub type WGPUProcTextureViewAddRef =
4693    ::core::option::Option<unsafe extern "C" fn(textureView: WGPUTextureView)>;
4694pub type WGPUProcTextureViewRelease =
4695    ::core::option::Option<unsafe extern "C" fn(textureView: WGPUTextureView)>;
4696unsafe extern "C" {
4697    pub fn wgpuCreateInstance(descriptor: *const WGPUInstanceDescriptor) -> WGPUInstance;
4698}
4699unsafe extern "C" {
4700    pub fn wgpuGetInstanceFeatures(features: *mut WGPUSupportedInstanceFeatures);
4701}
4702unsafe extern "C" {
4703    pub fn wgpuGetInstanceLimits(limits: *mut WGPUInstanceLimits) -> WGPUStatus;
4704}
4705unsafe extern "C" {
4706    pub fn wgpuHasInstanceFeature(feature: WGPUInstanceFeatureName) -> WGPUBool;
4707}
4708unsafe extern "C" {
4709    pub fn wgpuGetProcAddress(procName: WGPUStringView) -> WGPUProc;
4710}
4711unsafe extern "C" {
4712    pub fn wgpuAdapterGetFeatures(adapter: WGPUAdapter, features: *mut WGPUSupportedFeatures);
4713}
4714unsafe extern "C" {
4715    pub fn wgpuAdapterGetInfo(adapter: WGPUAdapter, info: *mut WGPUAdapterInfo) -> WGPUStatus;
4716}
4717unsafe extern "C" {
4718    pub fn wgpuAdapterGetLimits(adapter: WGPUAdapter, limits: *mut WGPULimits) -> WGPUStatus;
4719}
4720unsafe extern "C" {
4721    pub fn wgpuAdapterHasFeature(adapter: WGPUAdapter, feature: WGPUFeatureName) -> WGPUBool;
4722}
4723unsafe extern "C" {
4724    pub fn wgpuAdapterRequestDevice(
4725        adapter: WGPUAdapter,
4726        descriptor: *const WGPUDeviceDescriptor,
4727        callbackInfo: WGPURequestDeviceCallbackInfo,
4728    ) -> WGPUFuture;
4729}
4730unsafe extern "C" {
4731    pub fn wgpuAdapterAddRef(adapter: WGPUAdapter);
4732}
4733unsafe extern "C" {
4734    pub fn wgpuAdapterRelease(adapter: WGPUAdapter);
4735}
4736unsafe extern "C" {
4737    pub fn wgpuAdapterInfoFreeMembers(adapterInfo: WGPUAdapterInfo);
4738}
4739unsafe extern "C" {
4740    pub fn wgpuBindGroupSetLabel(bindGroup: WGPUBindGroup, label: WGPUStringView);
4741}
4742unsafe extern "C" {
4743    pub fn wgpuBindGroupAddRef(bindGroup: WGPUBindGroup);
4744}
4745unsafe extern "C" {
4746    pub fn wgpuBindGroupRelease(bindGroup: WGPUBindGroup);
4747}
4748unsafe extern "C" {
4749    pub fn wgpuBindGroupLayoutSetLabel(bindGroupLayout: WGPUBindGroupLayout, label: WGPUStringView);
4750}
4751unsafe extern "C" {
4752    pub fn wgpuBindGroupLayoutAddRef(bindGroupLayout: WGPUBindGroupLayout);
4753}
4754unsafe extern "C" {
4755    pub fn wgpuBindGroupLayoutRelease(bindGroupLayout: WGPUBindGroupLayout);
4756}
4757unsafe extern "C" {
4758    pub fn wgpuBufferDestroy(buffer: WGPUBuffer);
4759}
4760unsafe extern "C" {
4761    pub fn wgpuBufferGetConstMappedRange(
4762        buffer: WGPUBuffer,
4763        offset: usize,
4764        size: usize,
4765    ) -> *const ::core::ffi::c_void;
4766}
4767unsafe extern "C" {
4768    pub fn wgpuBufferGetMappedRange(
4769        buffer: WGPUBuffer,
4770        offset: usize,
4771        size: usize,
4772    ) -> *mut ::core::ffi::c_void;
4773}
4774unsafe extern "C" {
4775    pub fn wgpuBufferGetMapState(buffer: WGPUBuffer) -> WGPUBufferMapState;
4776}
4777unsafe extern "C" {
4778    pub fn wgpuBufferGetSize(buffer: WGPUBuffer) -> u64;
4779}
4780unsafe extern "C" {
4781    pub fn wgpuBufferGetUsage(buffer: WGPUBuffer) -> WGPUBufferUsage;
4782}
4783unsafe extern "C" {
4784    pub fn wgpuBufferMapAsync(
4785        buffer: WGPUBuffer,
4786        mode: WGPUMapMode,
4787        offset: usize,
4788        size: usize,
4789        callbackInfo: WGPUBufferMapCallbackInfo,
4790    ) -> WGPUFuture;
4791}
4792unsafe extern "C" {
4793    pub fn wgpuBufferReadMappedRange(
4794        buffer: WGPUBuffer,
4795        offset: usize,
4796        data: *mut ::core::ffi::c_void,
4797        size: usize,
4798    ) -> WGPUStatus;
4799}
4800unsafe extern "C" {
4801    pub fn wgpuBufferSetLabel(buffer: WGPUBuffer, label: WGPUStringView);
4802}
4803unsafe extern "C" {
4804    pub fn wgpuBufferUnmap(buffer: WGPUBuffer);
4805}
4806unsafe extern "C" {
4807    pub fn wgpuBufferWriteMappedRange(
4808        buffer: WGPUBuffer,
4809        offset: usize,
4810        data: *const ::core::ffi::c_void,
4811        size: usize,
4812    ) -> WGPUStatus;
4813}
4814unsafe extern "C" {
4815    pub fn wgpuBufferAddRef(buffer: WGPUBuffer);
4816}
4817unsafe extern "C" {
4818    pub fn wgpuBufferRelease(buffer: WGPUBuffer);
4819}
4820unsafe extern "C" {
4821    pub fn wgpuCommandBufferSetLabel(commandBuffer: WGPUCommandBuffer, label: WGPUStringView);
4822}
4823unsafe extern "C" {
4824    pub fn wgpuCommandBufferAddRef(commandBuffer: WGPUCommandBuffer);
4825}
4826unsafe extern "C" {
4827    pub fn wgpuCommandBufferRelease(commandBuffer: WGPUCommandBuffer);
4828}
4829unsafe extern "C" {
4830    pub fn wgpuCommandEncoderBeginComputePass(
4831        commandEncoder: WGPUCommandEncoder,
4832        descriptor: *const WGPUComputePassDescriptor,
4833    ) -> WGPUComputePassEncoder;
4834}
4835unsafe extern "C" {
4836    pub fn wgpuCommandEncoderBeginRenderPass(
4837        commandEncoder: WGPUCommandEncoder,
4838        descriptor: *const WGPURenderPassDescriptor,
4839    ) -> WGPURenderPassEncoder;
4840}
4841unsafe extern "C" {
4842    pub fn wgpuCommandEncoderClearBuffer(
4843        commandEncoder: WGPUCommandEncoder,
4844        buffer: WGPUBuffer,
4845        offset: u64,
4846        size: u64,
4847    );
4848}
4849unsafe extern "C" {
4850    pub fn wgpuCommandEncoderCopyBufferToBuffer(
4851        commandEncoder: WGPUCommandEncoder,
4852        source: WGPUBuffer,
4853        sourceOffset: u64,
4854        destination: WGPUBuffer,
4855        destinationOffset: u64,
4856        size: u64,
4857    );
4858}
4859unsafe extern "C" {
4860    pub fn wgpuCommandEncoderCopyBufferToTexture(
4861        commandEncoder: WGPUCommandEncoder,
4862        source: *const WGPUTexelCopyBufferInfo,
4863        destination: *const WGPUTexelCopyTextureInfo,
4864        copySize: *const WGPUExtent3D,
4865    );
4866}
4867unsafe extern "C" {
4868    pub fn wgpuCommandEncoderCopyTextureToBuffer(
4869        commandEncoder: WGPUCommandEncoder,
4870        source: *const WGPUTexelCopyTextureInfo,
4871        destination: *const WGPUTexelCopyBufferInfo,
4872        copySize: *const WGPUExtent3D,
4873    );
4874}
4875unsafe extern "C" {
4876    pub fn wgpuCommandEncoderCopyTextureToTexture(
4877        commandEncoder: WGPUCommandEncoder,
4878        source: *const WGPUTexelCopyTextureInfo,
4879        destination: *const WGPUTexelCopyTextureInfo,
4880        copySize: *const WGPUExtent3D,
4881    );
4882}
4883unsafe extern "C" {
4884    pub fn wgpuCommandEncoderFinish(
4885        commandEncoder: WGPUCommandEncoder,
4886        descriptor: *const WGPUCommandBufferDescriptor,
4887    ) -> WGPUCommandBuffer;
4888}
4889unsafe extern "C" {
4890    pub fn wgpuCommandEncoderInsertDebugMarker(
4891        commandEncoder: WGPUCommandEncoder,
4892        markerLabel: WGPUStringView,
4893    );
4894}
4895unsafe extern "C" {
4896    pub fn wgpuCommandEncoderPopDebugGroup(commandEncoder: WGPUCommandEncoder);
4897}
4898unsafe extern "C" {
4899    pub fn wgpuCommandEncoderPushDebugGroup(
4900        commandEncoder: WGPUCommandEncoder,
4901        groupLabel: WGPUStringView,
4902    );
4903}
4904unsafe extern "C" {
4905    pub fn wgpuCommandEncoderResolveQuerySet(
4906        commandEncoder: WGPUCommandEncoder,
4907        querySet: WGPUQuerySet,
4908        firstQuery: u32,
4909        queryCount: u32,
4910        destination: WGPUBuffer,
4911        destinationOffset: u64,
4912    );
4913}
4914unsafe extern "C" {
4915    pub fn wgpuCommandEncoderSetLabel(commandEncoder: WGPUCommandEncoder, label: WGPUStringView);
4916}
4917unsafe extern "C" {
4918    pub fn wgpuCommandEncoderWriteTimestamp(
4919        commandEncoder: WGPUCommandEncoder,
4920        querySet: WGPUQuerySet,
4921        queryIndex: u32,
4922    );
4923}
4924unsafe extern "C" {
4925    pub fn wgpuCommandEncoderAddRef(commandEncoder: WGPUCommandEncoder);
4926}
4927unsafe extern "C" {
4928    pub fn wgpuCommandEncoderRelease(commandEncoder: WGPUCommandEncoder);
4929}
4930unsafe extern "C" {
4931    pub fn wgpuComputePassEncoderDispatchWorkgroups(
4932        computePassEncoder: WGPUComputePassEncoder,
4933        workgroupCountX: u32,
4934        workgroupCountY: u32,
4935        workgroupCountZ: u32,
4936    );
4937}
4938unsafe extern "C" {
4939    pub fn wgpuComputePassEncoderDispatchWorkgroupsIndirect(
4940        computePassEncoder: WGPUComputePassEncoder,
4941        indirectBuffer: WGPUBuffer,
4942        indirectOffset: u64,
4943    );
4944}
4945unsafe extern "C" {
4946    pub fn wgpuComputePassEncoderEnd(computePassEncoder: WGPUComputePassEncoder);
4947}
4948unsafe extern "C" {
4949    pub fn wgpuComputePassEncoderInsertDebugMarker(
4950        computePassEncoder: WGPUComputePassEncoder,
4951        markerLabel: WGPUStringView,
4952    );
4953}
4954unsafe extern "C" {
4955    pub fn wgpuComputePassEncoderPopDebugGroup(computePassEncoder: WGPUComputePassEncoder);
4956}
4957unsafe extern "C" {
4958    pub fn wgpuComputePassEncoderPushDebugGroup(
4959        computePassEncoder: WGPUComputePassEncoder,
4960        groupLabel: WGPUStringView,
4961    );
4962}
4963unsafe extern "C" {
4964    pub fn wgpuComputePassEncoderSetBindGroup(
4965        computePassEncoder: WGPUComputePassEncoder,
4966        groupIndex: u32,
4967        group: WGPUBindGroup,
4968        dynamicOffsetCount: usize,
4969        dynamicOffsets: *const u32,
4970    );
4971}
4972unsafe extern "C" {
4973    pub fn wgpuComputePassEncoderSetLabel(
4974        computePassEncoder: WGPUComputePassEncoder,
4975        label: WGPUStringView,
4976    );
4977}
4978unsafe extern "C" {
4979    pub fn wgpuComputePassEncoderSetPipeline(
4980        computePassEncoder: WGPUComputePassEncoder,
4981        pipeline: WGPUComputePipeline,
4982    );
4983}
4984unsafe extern "C" {
4985    pub fn wgpuComputePassEncoderAddRef(computePassEncoder: WGPUComputePassEncoder);
4986}
4987unsafe extern "C" {
4988    pub fn wgpuComputePassEncoderRelease(computePassEncoder: WGPUComputePassEncoder);
4989}
4990unsafe extern "C" {
4991    pub fn wgpuComputePipelineGetBindGroupLayout(
4992        computePipeline: WGPUComputePipeline,
4993        groupIndex: u32,
4994    ) -> WGPUBindGroupLayout;
4995}
4996unsafe extern "C" {
4997    pub fn wgpuComputePipelineSetLabel(computePipeline: WGPUComputePipeline, label: WGPUStringView);
4998}
4999unsafe extern "C" {
5000    pub fn wgpuComputePipelineAddRef(computePipeline: WGPUComputePipeline);
5001}
5002unsafe extern "C" {
5003    pub fn wgpuComputePipelineRelease(computePipeline: WGPUComputePipeline);
5004}
5005unsafe extern "C" {
5006    pub fn wgpuDeviceCreateBindGroup(
5007        device: WGPUDevice,
5008        descriptor: *const WGPUBindGroupDescriptor,
5009    ) -> WGPUBindGroup;
5010}
5011unsafe extern "C" {
5012    pub fn wgpuDeviceCreateBindGroupLayout(
5013        device: WGPUDevice,
5014        descriptor: *const WGPUBindGroupLayoutDescriptor,
5015    ) -> WGPUBindGroupLayout;
5016}
5017unsafe extern "C" {
5018    pub fn wgpuDeviceCreateBuffer(
5019        device: WGPUDevice,
5020        descriptor: *const WGPUBufferDescriptor,
5021    ) -> WGPUBuffer;
5022}
5023unsafe extern "C" {
5024    pub fn wgpuDeviceCreateCommandEncoder(
5025        device: WGPUDevice,
5026        descriptor: *const WGPUCommandEncoderDescriptor,
5027    ) -> WGPUCommandEncoder;
5028}
5029unsafe extern "C" {
5030    pub fn wgpuDeviceCreateComputePipeline(
5031        device: WGPUDevice,
5032        descriptor: *const WGPUComputePipelineDescriptor,
5033    ) -> WGPUComputePipeline;
5034}
5035unsafe extern "C" {
5036    pub fn wgpuDeviceCreateComputePipelineAsync(
5037        device: WGPUDevice,
5038        descriptor: *const WGPUComputePipelineDescriptor,
5039        callbackInfo: WGPUCreateComputePipelineAsyncCallbackInfo,
5040    ) -> WGPUFuture;
5041}
5042unsafe extern "C" {
5043    pub fn wgpuDeviceCreatePipelineLayout(
5044        device: WGPUDevice,
5045        descriptor: *const WGPUPipelineLayoutDescriptor,
5046    ) -> WGPUPipelineLayout;
5047}
5048unsafe extern "C" {
5049    pub fn wgpuDeviceCreateQuerySet(
5050        device: WGPUDevice,
5051        descriptor: *const WGPUQuerySetDescriptor,
5052    ) -> WGPUQuerySet;
5053}
5054unsafe extern "C" {
5055    pub fn wgpuDeviceCreateRenderBundleEncoder(
5056        device: WGPUDevice,
5057        descriptor: *const WGPURenderBundleEncoderDescriptor,
5058    ) -> WGPURenderBundleEncoder;
5059}
5060unsafe extern "C" {
5061    pub fn wgpuDeviceCreateRenderPipeline(
5062        device: WGPUDevice,
5063        descriptor: *const WGPURenderPipelineDescriptor,
5064    ) -> WGPURenderPipeline;
5065}
5066unsafe extern "C" {
5067    pub fn wgpuDeviceCreateRenderPipelineAsync(
5068        device: WGPUDevice,
5069        descriptor: *const WGPURenderPipelineDescriptor,
5070        callbackInfo: WGPUCreateRenderPipelineAsyncCallbackInfo,
5071    ) -> WGPUFuture;
5072}
5073unsafe extern "C" {
5074    pub fn wgpuDeviceCreateSampler(
5075        device: WGPUDevice,
5076        descriptor: *const WGPUSamplerDescriptor,
5077    ) -> WGPUSampler;
5078}
5079unsafe extern "C" {
5080    pub fn wgpuDeviceCreateShaderModule(
5081        device: WGPUDevice,
5082        descriptor: *const WGPUShaderModuleDescriptor,
5083    ) -> WGPUShaderModule;
5084}
5085unsafe extern "C" {
5086    pub fn wgpuDeviceCreateTexture(
5087        device: WGPUDevice,
5088        descriptor: *const WGPUTextureDescriptor,
5089    ) -> WGPUTexture;
5090}
5091unsafe extern "C" {
5092    pub fn wgpuDeviceDestroy(device: WGPUDevice);
5093}
5094unsafe extern "C" {
5095    pub fn wgpuDeviceGetAdapterInfo(
5096        device: WGPUDevice,
5097        adapterInfo: *mut WGPUAdapterInfo,
5098    ) -> WGPUStatus;
5099}
5100unsafe extern "C" {
5101    pub fn wgpuDeviceGetFeatures(device: WGPUDevice, features: *mut WGPUSupportedFeatures);
5102}
5103unsafe extern "C" {
5104    pub fn wgpuDeviceGetLimits(device: WGPUDevice, limits: *mut WGPULimits) -> WGPUStatus;
5105}
5106unsafe extern "C" {
5107    pub fn wgpuDeviceGetLostFuture(device: WGPUDevice) -> WGPUFuture;
5108}
5109unsafe extern "C" {
5110    pub fn wgpuDeviceGetQueue(device: WGPUDevice) -> WGPUQueue;
5111}
5112unsafe extern "C" {
5113    pub fn wgpuDeviceHasFeature(device: WGPUDevice, feature: WGPUFeatureName) -> WGPUBool;
5114}
5115unsafe extern "C" {
5116    pub fn wgpuDevicePopErrorScope(
5117        device: WGPUDevice,
5118        callbackInfo: WGPUPopErrorScopeCallbackInfo,
5119    ) -> WGPUFuture;
5120}
5121unsafe extern "C" {
5122    pub fn wgpuDevicePushErrorScope(device: WGPUDevice, filter: WGPUErrorFilter);
5123}
5124unsafe extern "C" {
5125    pub fn wgpuDeviceSetLabel(device: WGPUDevice, label: WGPUStringView);
5126}
5127unsafe extern "C" {
5128    pub fn wgpuDeviceAddRef(device: WGPUDevice);
5129}
5130unsafe extern "C" {
5131    pub fn wgpuDeviceRelease(device: WGPUDevice);
5132}
5133unsafe extern "C" {
5134    pub fn wgpuInstanceCreateSurface(
5135        instance: WGPUInstance,
5136        descriptor: *const WGPUSurfaceDescriptor,
5137    ) -> WGPUSurface;
5138}
5139unsafe extern "C" {
5140    pub fn wgpuInstanceGetWGSLLanguageFeatures(
5141        instance: WGPUInstance,
5142        features: *mut WGPUSupportedWGSLLanguageFeatures,
5143    ) -> WGPUStatus;
5144}
5145unsafe extern "C" {
5146    pub fn wgpuInstanceHasWGSLLanguageFeature(
5147        instance: WGPUInstance,
5148        feature: WGPUWGSLLanguageFeatureName,
5149    ) -> WGPUBool;
5150}
5151unsafe extern "C" {
5152    pub fn wgpuInstanceProcessEvents(instance: WGPUInstance);
5153}
5154unsafe extern "C" {
5155    pub fn wgpuInstanceRequestAdapter(
5156        instance: WGPUInstance,
5157        options: *const WGPURequestAdapterOptions,
5158        callbackInfo: WGPURequestAdapterCallbackInfo,
5159    ) -> WGPUFuture;
5160}
5161unsafe extern "C" {
5162    pub fn wgpuInstanceWaitAny(
5163        instance: WGPUInstance,
5164        futureCount: usize,
5165        futures: *mut WGPUFutureWaitInfo,
5166        timeoutNS: u64,
5167    ) -> WGPUWaitStatus;
5168}
5169unsafe extern "C" {
5170    pub fn wgpuInstanceAddRef(instance: WGPUInstance);
5171}
5172unsafe extern "C" {
5173    pub fn wgpuInstanceRelease(instance: WGPUInstance);
5174}
5175unsafe extern "C" {
5176    pub fn wgpuPipelineLayoutSetLabel(pipelineLayout: WGPUPipelineLayout, label: WGPUStringView);
5177}
5178unsafe extern "C" {
5179    pub fn wgpuPipelineLayoutAddRef(pipelineLayout: WGPUPipelineLayout);
5180}
5181unsafe extern "C" {
5182    pub fn wgpuPipelineLayoutRelease(pipelineLayout: WGPUPipelineLayout);
5183}
5184unsafe extern "C" {
5185    pub fn wgpuQuerySetDestroy(querySet: WGPUQuerySet);
5186}
5187unsafe extern "C" {
5188    pub fn wgpuQuerySetGetCount(querySet: WGPUQuerySet) -> u32;
5189}
5190unsafe extern "C" {
5191    pub fn wgpuQuerySetGetType(querySet: WGPUQuerySet) -> WGPUQueryType;
5192}
5193unsafe extern "C" {
5194    pub fn wgpuQuerySetSetLabel(querySet: WGPUQuerySet, label: WGPUStringView);
5195}
5196unsafe extern "C" {
5197    pub fn wgpuQuerySetAddRef(querySet: WGPUQuerySet);
5198}
5199unsafe extern "C" {
5200    pub fn wgpuQuerySetRelease(querySet: WGPUQuerySet);
5201}
5202unsafe extern "C" {
5203    pub fn wgpuQueueOnSubmittedWorkDone(
5204        queue: WGPUQueue,
5205        callbackInfo: WGPUQueueWorkDoneCallbackInfo,
5206    ) -> WGPUFuture;
5207}
5208unsafe extern "C" {
5209    pub fn wgpuQueueSetLabel(queue: WGPUQueue, label: WGPUStringView);
5210}
5211unsafe extern "C" {
5212    pub fn wgpuQueueSubmit(
5213        queue: WGPUQueue,
5214        commandCount: usize,
5215        commands: *const WGPUCommandBuffer,
5216    );
5217}
5218unsafe extern "C" {
5219    pub fn wgpuQueueWriteBuffer(
5220        queue: WGPUQueue,
5221        buffer: WGPUBuffer,
5222        bufferOffset: u64,
5223        data: *const ::core::ffi::c_void,
5224        size: usize,
5225    );
5226}
5227unsafe extern "C" {
5228    pub fn wgpuQueueWriteTexture(
5229        queue: WGPUQueue,
5230        destination: *const WGPUTexelCopyTextureInfo,
5231        data: *const ::core::ffi::c_void,
5232        dataSize: usize,
5233        dataLayout: *const WGPUTexelCopyBufferLayout,
5234        writeSize: *const WGPUExtent3D,
5235    );
5236}
5237unsafe extern "C" {
5238    pub fn wgpuQueueAddRef(queue: WGPUQueue);
5239}
5240unsafe extern "C" {
5241    pub fn wgpuQueueRelease(queue: WGPUQueue);
5242}
5243unsafe extern "C" {
5244    pub fn wgpuRenderBundleSetLabel(renderBundle: WGPURenderBundle, label: WGPUStringView);
5245}
5246unsafe extern "C" {
5247    pub fn wgpuRenderBundleAddRef(renderBundle: WGPURenderBundle);
5248}
5249unsafe extern "C" {
5250    pub fn wgpuRenderBundleRelease(renderBundle: WGPURenderBundle);
5251}
5252unsafe extern "C" {
5253    pub fn wgpuRenderBundleEncoderDraw(
5254        renderBundleEncoder: WGPURenderBundleEncoder,
5255        vertexCount: u32,
5256        instanceCount: u32,
5257        firstVertex: u32,
5258        firstInstance: u32,
5259    );
5260}
5261unsafe extern "C" {
5262    pub fn wgpuRenderBundleEncoderDrawIndexed(
5263        renderBundleEncoder: WGPURenderBundleEncoder,
5264        indexCount: u32,
5265        instanceCount: u32,
5266        firstIndex: u32,
5267        baseVertex: i32,
5268        firstInstance: u32,
5269    );
5270}
5271unsafe extern "C" {
5272    pub fn wgpuRenderBundleEncoderDrawIndexedIndirect(
5273        renderBundleEncoder: WGPURenderBundleEncoder,
5274        indirectBuffer: WGPUBuffer,
5275        indirectOffset: u64,
5276    );
5277}
5278unsafe extern "C" {
5279    pub fn wgpuRenderBundleEncoderDrawIndirect(
5280        renderBundleEncoder: WGPURenderBundleEncoder,
5281        indirectBuffer: WGPUBuffer,
5282        indirectOffset: u64,
5283    );
5284}
5285unsafe extern "C" {
5286    pub fn wgpuRenderBundleEncoderFinish(
5287        renderBundleEncoder: WGPURenderBundleEncoder,
5288        descriptor: *const WGPURenderBundleDescriptor,
5289    ) -> WGPURenderBundle;
5290}
5291unsafe extern "C" {
5292    pub fn wgpuRenderBundleEncoderInsertDebugMarker(
5293        renderBundleEncoder: WGPURenderBundleEncoder,
5294        markerLabel: WGPUStringView,
5295    );
5296}
5297unsafe extern "C" {
5298    pub fn wgpuRenderBundleEncoderPopDebugGroup(renderBundleEncoder: WGPURenderBundleEncoder);
5299}
5300unsafe extern "C" {
5301    pub fn wgpuRenderBundleEncoderPushDebugGroup(
5302        renderBundleEncoder: WGPURenderBundleEncoder,
5303        groupLabel: WGPUStringView,
5304    );
5305}
5306unsafe extern "C" {
5307    pub fn wgpuRenderBundleEncoderSetBindGroup(
5308        renderBundleEncoder: WGPURenderBundleEncoder,
5309        groupIndex: u32,
5310        group: WGPUBindGroup,
5311        dynamicOffsetCount: usize,
5312        dynamicOffsets: *const u32,
5313    );
5314}
5315unsafe extern "C" {
5316    pub fn wgpuRenderBundleEncoderSetIndexBuffer(
5317        renderBundleEncoder: WGPURenderBundleEncoder,
5318        buffer: WGPUBuffer,
5319        format: WGPUIndexFormat,
5320        offset: u64,
5321        size: u64,
5322    );
5323}
5324unsafe extern "C" {
5325    pub fn wgpuRenderBundleEncoderSetLabel(
5326        renderBundleEncoder: WGPURenderBundleEncoder,
5327        label: WGPUStringView,
5328    );
5329}
5330unsafe extern "C" {
5331    pub fn wgpuRenderBundleEncoderSetPipeline(
5332        renderBundleEncoder: WGPURenderBundleEncoder,
5333        pipeline: WGPURenderPipeline,
5334    );
5335}
5336unsafe extern "C" {
5337    pub fn wgpuRenderBundleEncoderSetVertexBuffer(
5338        renderBundleEncoder: WGPURenderBundleEncoder,
5339        slot: u32,
5340        buffer: WGPUBuffer,
5341        offset: u64,
5342        size: u64,
5343    );
5344}
5345unsafe extern "C" {
5346    pub fn wgpuRenderBundleEncoderAddRef(renderBundleEncoder: WGPURenderBundleEncoder);
5347}
5348unsafe extern "C" {
5349    pub fn wgpuRenderBundleEncoderRelease(renderBundleEncoder: WGPURenderBundleEncoder);
5350}
5351unsafe extern "C" {
5352    pub fn wgpuRenderPassEncoderBeginOcclusionQuery(
5353        renderPassEncoder: WGPURenderPassEncoder,
5354        queryIndex: u32,
5355    );
5356}
5357unsafe extern "C" {
5358    pub fn wgpuRenderPassEncoderDraw(
5359        renderPassEncoder: WGPURenderPassEncoder,
5360        vertexCount: u32,
5361        instanceCount: u32,
5362        firstVertex: u32,
5363        firstInstance: u32,
5364    );
5365}
5366unsafe extern "C" {
5367    pub fn wgpuRenderPassEncoderDrawIndexed(
5368        renderPassEncoder: WGPURenderPassEncoder,
5369        indexCount: u32,
5370        instanceCount: u32,
5371        firstIndex: u32,
5372        baseVertex: i32,
5373        firstInstance: u32,
5374    );
5375}
5376unsafe extern "C" {
5377    pub fn wgpuRenderPassEncoderDrawIndexedIndirect(
5378        renderPassEncoder: WGPURenderPassEncoder,
5379        indirectBuffer: WGPUBuffer,
5380        indirectOffset: u64,
5381    );
5382}
5383unsafe extern "C" {
5384    pub fn wgpuRenderPassEncoderDrawIndirect(
5385        renderPassEncoder: WGPURenderPassEncoder,
5386        indirectBuffer: WGPUBuffer,
5387        indirectOffset: u64,
5388    );
5389}
5390unsafe extern "C" {
5391    pub fn wgpuRenderPassEncoderEnd(renderPassEncoder: WGPURenderPassEncoder);
5392}
5393unsafe extern "C" {
5394    pub fn wgpuRenderPassEncoderEndOcclusionQuery(renderPassEncoder: WGPURenderPassEncoder);
5395}
5396unsafe extern "C" {
5397    pub fn wgpuRenderPassEncoderExecuteBundles(
5398        renderPassEncoder: WGPURenderPassEncoder,
5399        bundleCount: usize,
5400        bundles: *const WGPURenderBundle,
5401    );
5402}
5403unsafe extern "C" {
5404    pub fn wgpuRenderPassEncoderInsertDebugMarker(
5405        renderPassEncoder: WGPURenderPassEncoder,
5406        markerLabel: WGPUStringView,
5407    );
5408}
5409unsafe extern "C" {
5410    pub fn wgpuRenderPassEncoderPopDebugGroup(renderPassEncoder: WGPURenderPassEncoder);
5411}
5412unsafe extern "C" {
5413    pub fn wgpuRenderPassEncoderPushDebugGroup(
5414        renderPassEncoder: WGPURenderPassEncoder,
5415        groupLabel: WGPUStringView,
5416    );
5417}
5418unsafe extern "C" {
5419    pub fn wgpuRenderPassEncoderSetBindGroup(
5420        renderPassEncoder: WGPURenderPassEncoder,
5421        groupIndex: u32,
5422        group: WGPUBindGroup,
5423        dynamicOffsetCount: usize,
5424        dynamicOffsets: *const u32,
5425    );
5426}
5427unsafe extern "C" {
5428    pub fn wgpuRenderPassEncoderSetBlendConstant(
5429        renderPassEncoder: WGPURenderPassEncoder,
5430        color: *const WGPUColor,
5431    );
5432}
5433unsafe extern "C" {
5434    pub fn wgpuRenderPassEncoderSetIndexBuffer(
5435        renderPassEncoder: WGPURenderPassEncoder,
5436        buffer: WGPUBuffer,
5437        format: WGPUIndexFormat,
5438        offset: u64,
5439        size: u64,
5440    );
5441}
5442unsafe extern "C" {
5443    pub fn wgpuRenderPassEncoderSetLabel(
5444        renderPassEncoder: WGPURenderPassEncoder,
5445        label: WGPUStringView,
5446    );
5447}
5448unsafe extern "C" {
5449    pub fn wgpuRenderPassEncoderSetPipeline(
5450        renderPassEncoder: WGPURenderPassEncoder,
5451        pipeline: WGPURenderPipeline,
5452    );
5453}
5454unsafe extern "C" {
5455    pub fn wgpuRenderPassEncoderSetScissorRect(
5456        renderPassEncoder: WGPURenderPassEncoder,
5457        x: u32,
5458        y: u32,
5459        width: u32,
5460        height: u32,
5461    );
5462}
5463unsafe extern "C" {
5464    pub fn wgpuRenderPassEncoderSetStencilReference(
5465        renderPassEncoder: WGPURenderPassEncoder,
5466        reference: u32,
5467    );
5468}
5469unsafe extern "C" {
5470    pub fn wgpuRenderPassEncoderSetVertexBuffer(
5471        renderPassEncoder: WGPURenderPassEncoder,
5472        slot: u32,
5473        buffer: WGPUBuffer,
5474        offset: u64,
5475        size: u64,
5476    );
5477}
5478unsafe extern "C" {
5479    pub fn wgpuRenderPassEncoderSetViewport(
5480        renderPassEncoder: WGPURenderPassEncoder,
5481        x: f32,
5482        y: f32,
5483        width: f32,
5484        height: f32,
5485        minDepth: f32,
5486        maxDepth: f32,
5487    );
5488}
5489unsafe extern "C" {
5490    pub fn wgpuRenderPassEncoderAddRef(renderPassEncoder: WGPURenderPassEncoder);
5491}
5492unsafe extern "C" {
5493    pub fn wgpuRenderPassEncoderRelease(renderPassEncoder: WGPURenderPassEncoder);
5494}
5495unsafe extern "C" {
5496    pub fn wgpuRenderPipelineGetBindGroupLayout(
5497        renderPipeline: WGPURenderPipeline,
5498        groupIndex: u32,
5499    ) -> WGPUBindGroupLayout;
5500}
5501unsafe extern "C" {
5502    pub fn wgpuRenderPipelineSetLabel(renderPipeline: WGPURenderPipeline, label: WGPUStringView);
5503}
5504unsafe extern "C" {
5505    pub fn wgpuRenderPipelineAddRef(renderPipeline: WGPURenderPipeline);
5506}
5507unsafe extern "C" {
5508    pub fn wgpuRenderPipelineRelease(renderPipeline: WGPURenderPipeline);
5509}
5510unsafe extern "C" {
5511    pub fn wgpuSamplerSetLabel(sampler: WGPUSampler, label: WGPUStringView);
5512}
5513unsafe extern "C" {
5514    pub fn wgpuSamplerAddRef(sampler: WGPUSampler);
5515}
5516unsafe extern "C" {
5517    pub fn wgpuSamplerRelease(sampler: WGPUSampler);
5518}
5519unsafe extern "C" {
5520    pub fn wgpuShaderModuleGetCompilationInfo(
5521        shaderModule: WGPUShaderModule,
5522        callbackInfo: WGPUCompilationInfoCallbackInfo,
5523    ) -> WGPUFuture;
5524}
5525unsafe extern "C" {
5526    pub fn wgpuShaderModuleSetLabel(shaderModule: WGPUShaderModule, label: WGPUStringView);
5527}
5528unsafe extern "C" {
5529    pub fn wgpuShaderModuleAddRef(shaderModule: WGPUShaderModule);
5530}
5531unsafe extern "C" {
5532    pub fn wgpuShaderModuleRelease(shaderModule: WGPUShaderModule);
5533}
5534unsafe extern "C" {
5535    pub fn wgpuSupportedFeaturesFreeMembers(supportedFeatures: WGPUSupportedFeatures);
5536}
5537unsafe extern "C" {
5538    pub fn wgpuSupportedInstanceFeaturesFreeMembers(
5539        supportedInstanceFeatures: WGPUSupportedInstanceFeatures,
5540    );
5541}
5542unsafe extern "C" {
5543    pub fn wgpuSupportedWGSLLanguageFeaturesFreeMembers(
5544        supportedWGSLLanguageFeatures: WGPUSupportedWGSLLanguageFeatures,
5545    );
5546}
5547unsafe extern "C" {
5548    pub fn wgpuSurfaceConfigure(surface: WGPUSurface, config: *const WGPUSurfaceConfiguration);
5549}
5550unsafe extern "C" {
5551    pub fn wgpuSurfaceGetCapabilities(
5552        surface: WGPUSurface,
5553        adapter: WGPUAdapter,
5554        capabilities: *mut WGPUSurfaceCapabilities,
5555    ) -> WGPUStatus;
5556}
5557unsafe extern "C" {
5558    pub fn wgpuSurfaceGetCurrentTexture(
5559        surface: WGPUSurface,
5560        surfaceTexture: *mut WGPUSurfaceTexture,
5561    );
5562}
5563unsafe extern "C" {
5564    pub fn wgpuSurfacePresent(surface: WGPUSurface) -> WGPUStatus;
5565}
5566unsafe extern "C" {
5567    pub fn wgpuSurfaceSetLabel(surface: WGPUSurface, label: WGPUStringView);
5568}
5569unsafe extern "C" {
5570    pub fn wgpuSurfaceUnconfigure(surface: WGPUSurface);
5571}
5572unsafe extern "C" {
5573    pub fn wgpuSurfaceAddRef(surface: WGPUSurface);
5574}
5575unsafe extern "C" {
5576    pub fn wgpuSurfaceRelease(surface: WGPUSurface);
5577}
5578unsafe extern "C" {
5579    pub fn wgpuSurfaceCapabilitiesFreeMembers(surfaceCapabilities: WGPUSurfaceCapabilities);
5580}
5581unsafe extern "C" {
5582    pub fn wgpuTextureCreateView(
5583        texture: WGPUTexture,
5584        descriptor: *const WGPUTextureViewDescriptor,
5585    ) -> WGPUTextureView;
5586}
5587unsafe extern "C" {
5588    pub fn wgpuTextureDestroy(texture: WGPUTexture);
5589}
5590unsafe extern "C" {
5591    pub fn wgpuTextureGetDepthOrArrayLayers(texture: WGPUTexture) -> u32;
5592}
5593unsafe extern "C" {
5594    pub fn wgpuTextureGetDimension(texture: WGPUTexture) -> WGPUTextureDimension;
5595}
5596unsafe extern "C" {
5597    pub fn wgpuTextureGetFormat(texture: WGPUTexture) -> WGPUTextureFormat;
5598}
5599unsafe extern "C" {
5600    pub fn wgpuTextureGetHeight(texture: WGPUTexture) -> u32;
5601}
5602unsafe extern "C" {
5603    pub fn wgpuTextureGetMipLevelCount(texture: WGPUTexture) -> u32;
5604}
5605unsafe extern "C" {
5606    pub fn wgpuTextureGetSampleCount(texture: WGPUTexture) -> u32;
5607}
5608unsafe extern "C" {
5609    pub fn wgpuTextureGetUsage(texture: WGPUTexture) -> WGPUTextureUsage;
5610}
5611unsafe extern "C" {
5612    pub fn wgpuTextureGetWidth(texture: WGPUTexture) -> u32;
5613}
5614unsafe extern "C" {
5615    pub fn wgpuTextureSetLabel(texture: WGPUTexture, label: WGPUStringView);
5616}
5617unsafe extern "C" {
5618    pub fn wgpuTextureAddRef(texture: WGPUTexture);
5619}
5620unsafe extern "C" {
5621    pub fn wgpuTextureRelease(texture: WGPUTexture);
5622}
5623unsafe extern "C" {
5624    pub fn wgpuTextureViewSetLabel(textureView: WGPUTextureView, label: WGPUStringView);
5625}
5626unsafe extern "C" {
5627    pub fn wgpuTextureViewAddRef(textureView: WGPUTextureView);
5628}
5629unsafe extern "C" {
5630    pub fn wgpuTextureViewRelease(textureView: WGPUTextureView);
5631}
5632#[repr(C)]
5633#[derive(Debug, Copy, Clone)]
5634pub struct __crt_locale_data {
5635    pub _address: u8,
5636}
5637#[repr(C)]
5638#[derive(Debug, Copy, Clone)]
5639pub struct __crt_multibyte_data {
5640    pub _address: u8,
5641}