| ); |
| |
| // Double check that the struct info was generated from the right header. |
| // (The include directory option of gen_struct_info.py affects this.) |
| if (!('WGPUINTERNAL__HAVE_EMDAWNWEBGPU_HEADER' in structInfo32.structs)) { |
| throw new Error('struct_info32 generation error - need webgpu.h from Dawn, got it from Emscripten'); |
| } |
| if (!('WGPUINTERNAL__HAVE_EMDAWNWEBGPU_HEADER' in structInfo64.structs)) { |
| throw new Error('struct_info64 generation error - need webgpu.h from Dawn, got it from Emscripten'); |
| } |
| |
| // Make sure we aren't inheriting any of the webgpu.h struct info from |
| // Emscripten's copy. |
| for (const k of Object.keys(C_STRUCTS)) { |
| if (k.startsWith('WGPU')) { |
| delete C_STRUCTS[k]; |
| } |
| } |
| |
| const WGPU_STRUCTS = (MEMORY64 ? structInfo64 : structInfo32).structs; |
| for (const [k, v] of Object.entries(WGPU_STRUCTS)) { |
| C_STRUCTS[k] = v; |
| } |
| globalThis.__HAVE_EMDAWNWEBGPU_STRUCT_INFO = true; |
| |
| null; |
| }}} |