react-native-wgpu 0.1.13 → 0.1.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/android/CMakeLists.txt +7 -0
  2. package/android/build.gradle +4 -4
  3. package/android/cpp/cpp-adapter.cpp +10 -4
  4. package/android/cpp/platform/ThreadUtils.cpp +41 -0
  5. package/apple/platform/ThreadUtils.cpp +33 -0
  6. package/cpp/jsi/RNFJSIConverter.h +47 -28
  7. package/cpp/platform/ThreadUtils.h +30 -0
  8. package/cpp/rnwgpu/RNWebGPUManager.cpp +8 -0
  9. package/cpp/rnwgpu/SurfaceRegistry.h +12 -8
  10. package/cpp/rnwgpu/api/Convertors.h +13 -5
  11. package/cpp/rnwgpu/api/GPU.cpp +4 -4
  12. package/cpp/rnwgpu/api/GPUAdapter.cpp +15 -14
  13. package/cpp/rnwgpu/api/GPUAdapterInfo.h +25 -4
  14. package/cpp/rnwgpu/api/GPUCanvasContext.cpp +3 -2
  15. package/cpp/rnwgpu/api/GPUDevice.cpp +5 -5
  16. package/cpp/rnwgpu/api/GPUDevice.h +7 -1
  17. package/cpp/rnwgpu/api/GPUFeatures.h +4 -4
  18. package/cpp/rnwgpu/api/GPUShaderModule.cpp +2 -1
  19. package/cpp/rnwgpu/api/descriptors/GPUCanvasConfiguration.h +3 -1
  20. package/cpp/rnwgpu/api/descriptors/Unions.h +30 -0
  21. package/cpp/threading/CallInvokerDispatcher.h +37 -0
  22. package/cpp/threading/Dispatcher.cpp +54 -0
  23. package/cpp/threading/Dispatcher.h +93 -0
  24. package/cpp/threading/ThreadPool.cpp +86 -0
  25. package/cpp/threading/ThreadPool.h +53 -0
  26. package/cpp/webgpu/webgpu.h +762 -758
  27. package/cpp/webgpu/webgpu_cpp.h +1827 -1626
  28. package/cpp/webgpu/webgpu_cpp_chained_struct.h +2 -0
  29. package/lib/commonjs/hooks.js +4 -2
  30. package/lib/commonjs/hooks.js.map +1 -1
  31. package/lib/module/hooks.js +4 -2
  32. package/lib/module/hooks.js.map +1 -1
  33. package/lib/typescript/lib/commonjs/hooks.d.ts.map +1 -1
  34. package/lib/typescript/lib/module/hooks.d.ts.map +1 -1
  35. package/lib/typescript/src/hooks.d.ts.map +1 -1
  36. package/libs/android/arm64-v8a/libwebgpu_dawn.so +0 -0
  37. package/libs/android/armeabi-v7a/libwebgpu_dawn.so +0 -0
  38. package/libs/android/x86/libwebgpu_dawn.so +0 -0
  39. package/libs/android/x86_64/libwebgpu_dawn.so +0 -0
  40. package/libs/apple/arm64_iphoneos/libwebgpu_dawn.a +0 -0
  41. package/libs/apple/arm64_iphonesimulator/libwebgpu_dawn.a +0 -0
  42. package/libs/apple/arm64_xros/libwebgpu_dawn.a +0 -0
  43. package/libs/apple/arm64_xrsimulator/libwebgpu_dawn.a +0 -0
  44. package/libs/apple/iphonesimulator/libwebgpu_dawn.a +0 -0
  45. package/libs/apple/libwebgpu_dawn.xcframework/Info.plist +10 -10
  46. package/libs/apple/libwebgpu_dawn.xcframework/ios-arm64/libwebgpu_dawn.a +0 -0
  47. package/libs/apple/libwebgpu_dawn.xcframework/ios-arm64_x86_64-simulator/libwebgpu_dawn.a +0 -0
  48. package/libs/apple/libwebgpu_dawn.xcframework/macos-arm64_x86_64/libwebgpu_dawn.a +0 -0
  49. package/libs/apple/libwebgpu_dawn.xcframework/xros-arm64/libwebgpu_dawn.a +0 -0
  50. package/libs/apple/libwebgpu_dawn.xcframework/xros-arm64-simulator/libwebgpu_dawn.a +0 -0
  51. package/libs/apple/universal_macosx/libwebgpu_dawn.a +0 -0
  52. package/libs/apple/x86_64_iphonesimulator/libwebgpu_dawn.a +0 -0
  53. package/libs/dawn.json +270 -251
  54. package/package.json +2 -2
  55. package/src/__tests__/Device.spec.ts +31 -0
  56. package/src/hooks.tsx +3 -2
@@ -27,12 +27,18 @@
27
27
  // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28
28
  // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29
29
  // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
30
31
  #ifdef __EMSCRIPTEN__
31
32
  #error "Do not include this header. Emscripten already provides headers needed for WebGPU."
32
33
  #endif
34
+
33
35
  #ifndef WEBGPU_H_
34
36
  #define WEBGPU_H_
35
37
 
38
+ #define WGPU_BREAKING_CHANGE_STRING_VIEW_LABELS
39
+ #define WGPU_BREAKING_CHANGE_STRING_VIEW_OUTPUT_STRUCTS
40
+ #define WGPU_BREAKING_CHANGE_STRING_VIEW_CALLBACKS
41
+
36
42
  #if defined(WGPU_SHARED_LIBRARY)
37
43
  # if defined(_WIN32)
38
44
  # if defined(WGPU_IMPLEMENTATION)
@@ -67,6 +73,8 @@
67
73
  #define WGPU_NULLABLE
68
74
  #endif
69
75
 
76
+ #define WGPU_BREAKING_CHANGE_DROP_DESCRIPTOR
77
+
70
78
  #include <stdint.h>
71
79
  #include <stddef.h>
72
80
 
@@ -89,6 +97,7 @@
89
97
  #define WGPU_LIMIT_U64_UNDEFINED UINT64_MAX
90
98
  #define WGPU_MIP_LEVEL_COUNT_UNDEFINED UINT32_MAX
91
99
  #define WGPU_QUERY_SET_INDEX_UNDEFINED UINT32_MAX
100
+ #define WGPU_STRLEN SIZE_MAX
92
101
  #define WGPU_WHOLE_MAP_SIZE SIZE_MAX
93
102
  #define WGPU_WHOLE_SIZE UINT64_MAX
94
103
 
@@ -119,46 +128,37 @@ typedef struct WGPUSharedBufferMemoryImpl* WGPUSharedBufferMemory WGPU_OBJECT_AT
119
128
  typedef struct WGPUSharedFenceImpl* WGPUSharedFence WGPU_OBJECT_ATTRIBUTE;
120
129
  typedef struct WGPUSharedTextureMemoryImpl* WGPUSharedTextureMemory WGPU_OBJECT_ATTRIBUTE;
121
130
  typedef struct WGPUSurfaceImpl* WGPUSurface WGPU_OBJECT_ATTRIBUTE;
122
- typedef struct WGPUSwapChainImpl* WGPUSwapChain WGPU_OBJECT_ATTRIBUTE;
123
131
  typedef struct WGPUTextureImpl* WGPUTexture WGPU_OBJECT_ATTRIBUTE;
124
132
  typedef struct WGPUTextureViewImpl* WGPUTextureView WGPU_OBJECT_ATTRIBUTE;
125
133
 
126
134
  // Structure forward declarations
127
135
  struct WGPUINTERNAL__HAVE_EMDAWNWEBGPU_HEADER;
128
- struct WGPUAdapterInfo;
129
- struct WGPUAdapterProperties;
130
136
  struct WGPUAdapterPropertiesD3D;
131
137
  struct WGPUAdapterPropertiesVk;
132
138
  struct WGPUBindGroupEntry;
133
139
  struct WGPUBlendComponent;
134
140
  struct WGPUBufferBindingLayout;
135
- struct WGPUBufferDescriptor;
136
141
  struct WGPUBufferHostMappedPointer;
137
142
  struct WGPUBufferMapCallbackInfo;
138
143
  struct WGPUColor;
139
144
  struct WGPUColorTargetStateExpandResolveTextureDawn;
140
- struct WGPUCommandBufferDescriptor;
141
- struct WGPUCommandEncoderDescriptor;
142
145
  struct WGPUCompilationInfoCallbackInfo;
143
- struct WGPUCompilationMessage;
144
146
  struct WGPUComputePassTimestampWrites;
145
- struct WGPUConstantEntry;
146
147
  struct WGPUCopyTextureForBrowserOptions;
147
148
  struct WGPUCreateComputePipelineAsyncCallbackInfo;
148
149
  struct WGPUCreateRenderPipelineAsyncCallbackInfo;
149
150
  struct WGPUDawnWGSLBlocklist;
150
151
  struct WGPUDawnAdapterPropertiesPowerPreference;
151
152
  struct WGPUDawnBufferDescriptorErrorInfoFromWireClient;
152
- struct WGPUDawnCacheDeviceDescriptor;
153
153
  struct WGPUDawnComputePipelineFullSubgroups;
154
154
  struct WGPUDawnEncoderInternalUsageDescriptor;
155
+ struct WGPUDawnExperimentalImmediateDataLimits;
155
156
  struct WGPUDawnExperimentalSubgroupLimits;
156
157
  struct WGPUDawnRenderPassColorAttachmentRenderToSingleSampled;
157
158
  struct WGPUDawnShaderModuleSPIRVOptionsDescriptor;
158
159
  struct WGPUDawnTextureInternalUsageDescriptor;
159
160
  struct WGPUDawnTogglesDescriptor;
160
161
  struct WGPUDawnWireWGSLControl;
161
- struct WGPUDepthStencilStateDepthWriteDefinedDawn;
162
162
  struct WGPUDeviceLostCallbackInfo;
163
163
  struct WGPUDrmFormatProperties;
164
164
  struct WGPUExtent2D;
@@ -173,37 +173,27 @@ struct WGPUMemoryHeapInfo;
173
173
  struct WGPUMultisampleState;
174
174
  struct WGPUOrigin2D;
175
175
  struct WGPUOrigin3D;
176
- struct WGPUPipelineLayoutDescriptor;
177
176
  struct WGPUPipelineLayoutStorageAttachment;
178
177
  struct WGPUPopErrorScopeCallbackInfo;
179
- struct WGPUPrimitiveDepthClipControl;
180
178
  struct WGPUPrimitiveState;
181
- struct WGPUQuerySetDescriptor;
182
- struct WGPUQueueDescriptor;
183
179
  struct WGPUQueueWorkDoneCallbackInfo;
184
- struct WGPURenderBundleDescriptor;
185
- struct WGPURenderBundleEncoderDescriptor;
186
180
  struct WGPURenderPassDepthStencilAttachment;
187
- struct WGPURenderPassDescriptorMaxDrawCount;
181
+ struct WGPURenderPassDescriptorExpandResolveRect;
182
+ struct WGPURenderPassMaxDrawCount;
188
183
  struct WGPURenderPassTimestampWrites;
189
184
  struct WGPURequestAdapterCallbackInfo;
190
185
  struct WGPURequestAdapterOptions;
191
186
  struct WGPURequestDeviceCallbackInfo;
192
187
  struct WGPUSamplerBindingLayout;
193
- struct WGPUSamplerDescriptor;
194
- struct WGPUShaderModuleSPIRVDescriptor;
195
- struct WGPUShaderModuleWGSLDescriptor;
196
188
  struct WGPUShaderModuleCompilationOptions;
197
- struct WGPUShaderModuleDescriptor;
189
+ struct WGPUShaderSourceSPIRV;
198
190
  struct WGPUSharedBufferMemoryBeginAccessDescriptor;
199
- struct WGPUSharedBufferMemoryDescriptor;
200
191
  struct WGPUSharedBufferMemoryEndAccessState;
201
192
  struct WGPUSharedBufferMemoryProperties;
202
193
  struct WGPUSharedFenceDXGISharedHandleDescriptor;
203
194
  struct WGPUSharedFenceDXGISharedHandleExportInfo;
204
195
  struct WGPUSharedFenceMTLSharedEventDescriptor;
205
196
  struct WGPUSharedFenceMTLSharedEventExportInfo;
206
- struct WGPUSharedFenceDescriptor;
207
197
  struct WGPUSharedFenceExportInfo;
208
198
  struct WGPUSharedFenceVkSemaphoreOpaqueFDDescriptor;
209
199
  struct WGPUSharedFenceVkSemaphoreOpaqueFDExportInfo;
@@ -217,7 +207,6 @@ struct WGPUSharedTextureMemoryEGLImageDescriptor;
217
207
  struct WGPUSharedTextureMemoryIOSurfaceDescriptor;
218
208
  struct WGPUSharedTextureMemoryAHardwareBufferDescriptor;
219
209
  struct WGPUSharedTextureMemoryBeginAccessDescriptor;
220
- struct WGPUSharedTextureMemoryDescriptor;
221
210
  struct WGPUSharedTextureMemoryDmaBufPlane;
222
211
  struct WGPUSharedTextureMemoryEndAccessState;
223
212
  struct WGPUSharedTextureMemoryOpaqueFDDescriptor;
@@ -228,34 +217,37 @@ struct WGPUSharedTextureMemoryZirconHandleDescriptor;
228
217
  struct WGPUStaticSamplerBindingLayout;
229
218
  struct WGPUStencilFaceState;
230
219
  struct WGPUStorageTextureBindingLayout;
220
+ struct WGPUStringView;
231
221
  struct WGPUSurfaceCapabilities;
232
222
  struct WGPUSurfaceConfiguration;
233
- struct WGPUSurfaceDescriptor;
234
- struct WGPUSurfaceDescriptorFromAndroidNativeWindow;
235
- struct WGPUSurfaceDescriptorFromCanvasHTMLSelector;
236
- struct WGPUSurfaceDescriptorFromMetalLayer;
237
- struct WGPUSurfaceDescriptorFromWaylandSurface;
238
- struct WGPUSurfaceDescriptorFromWindowsHWND;
239
223
  struct WGPUSurfaceDescriptorFromWindowsCoreWindow;
240
224
  struct WGPUSurfaceDescriptorFromWindowsSwapChainPanel;
241
- struct WGPUSurfaceDescriptorFromXcbWindow;
242
- struct WGPUSurfaceDescriptorFromXlibWindow;
225
+ struct WGPUSurfaceSourceXCBWindow;
226
+ struct WGPUSurfaceSourceAndroidNativeWindow;
227
+ struct WGPUSurfaceSourceMetalLayer;
228
+ struct WGPUSurfaceSourceWaylandSurface;
229
+ struct WGPUSurfaceSourceWindowsHWND;
230
+ struct WGPUSurfaceSourceXlibWindow;
243
231
  struct WGPUSurfaceTexture;
244
- struct WGPUSwapChainDescriptor;
245
232
  struct WGPUTextureBindingLayout;
246
233
  struct WGPUTextureBindingViewDimensionDescriptor;
247
234
  struct WGPUTextureDataLayout;
248
- struct WGPUTextureViewDescriptor;
249
235
  struct WGPUUncapturedErrorCallbackInfo;
250
236
  struct WGPUVertexAttribute;
251
237
  struct WGPUYCbCrVkDescriptor;
252
238
  struct WGPUAHardwareBufferProperties;
239
+ struct WGPUAdapterInfo;
253
240
  struct WGPUAdapterPropertiesMemoryHeaps;
254
241
  struct WGPUBindGroupDescriptor;
255
242
  struct WGPUBindGroupLayoutEntry;
256
243
  struct WGPUBlendState;
257
- struct WGPUCompilationInfo;
244
+ struct WGPUBufferDescriptor;
245
+ struct WGPUCommandBufferDescriptor;
246
+ struct WGPUCommandEncoderDescriptor;
247
+ struct WGPUCompilationMessage;
258
248
  struct WGPUComputePassDescriptor;
249
+ struct WGPUConstantEntry;
250
+ struct WGPUDawnCacheDeviceDescriptor;
259
251
  struct WGPUDepthStencilState;
260
252
  struct WGPUDrmFormatCapabilities;
261
253
  struct WGPUExternalTextureDescriptor;
@@ -264,24 +256,39 @@ struct WGPUImageCopyBuffer;
264
256
  struct WGPUImageCopyExternalTexture;
265
257
  struct WGPUImageCopyTexture;
266
258
  struct WGPUInstanceDescriptor;
259
+ struct WGPUPipelineLayoutDescriptor;
267
260
  struct WGPUPipelineLayoutPixelLocalStorage;
268
- struct WGPUProgrammableStageDescriptor;
261
+ struct WGPUQuerySetDescriptor;
262
+ struct WGPUQueueDescriptor;
263
+ struct WGPURenderBundleDescriptor;
264
+ struct WGPURenderBundleEncoderDescriptor;
269
265
  struct WGPURenderPassColorAttachment;
270
266
  struct WGPURenderPassStorageAttachment;
271
267
  struct WGPURequiredLimits;
268
+ struct WGPUSamplerDescriptor;
269
+ struct WGPUShaderModuleDescriptor;
270
+ struct WGPUShaderSourceWGSL;
271
+ struct WGPUSharedBufferMemoryDescriptor;
272
+ struct WGPUSharedFenceDescriptor;
272
273
  struct WGPUSharedTextureMemoryAHardwareBufferProperties;
274
+ struct WGPUSharedTextureMemoryDescriptor;
273
275
  struct WGPUSharedTextureMemoryDmaBufDescriptor;
274
276
  struct WGPUSharedTextureMemoryProperties;
275
277
  struct WGPUSupportedLimits;
278
+ struct WGPUSurfaceDescriptor;
279
+ struct WGPUSurfaceSourceCanvasHTMLSelector_Emscripten;
276
280
  struct WGPUTextureDescriptor;
281
+ struct WGPUTextureViewDescriptor;
277
282
  struct WGPUVertexBufferLayout;
278
283
  struct WGPUBindGroupLayoutDescriptor;
279
284
  struct WGPUColorTargetState;
280
- struct WGPUComputePipelineDescriptor;
285
+ struct WGPUCompilationInfo;
281
286
  struct WGPUDeviceDescriptor;
287
+ struct WGPUProgrammableStageDescriptor;
282
288
  struct WGPURenderPassDescriptor;
283
289
  struct WGPURenderPassPixelLocalStorage;
284
290
  struct WGPUVertexState;
291
+ struct WGPUComputePipelineDescriptor;
285
292
  struct WGPUFragmentState;
286
293
  struct WGPURenderPipelineDescriptor;
287
294
 
@@ -418,11 +425,11 @@ typedef enum WGPUCompilationMessageType {
418
425
  WGPUCompilationMessageType_Force32 = 0x7FFFFFFF
419
426
  } WGPUCompilationMessageType WGPU_ENUM_ATTRIBUTE;
420
427
  typedef enum WGPUCompositeAlphaMode {
421
- WGPUCompositeAlphaMode_Auto = 0x00000001,
422
- WGPUCompositeAlphaMode_Opaque = 0x00000002,
423
- WGPUCompositeAlphaMode_Premultiplied = 0x00000003,
424
- WGPUCompositeAlphaMode_Unpremultiplied = 0x00000004,
425
- WGPUCompositeAlphaMode_Inherit = 0x00000005,
428
+ WGPUCompositeAlphaMode_Auto = 0x00000000,
429
+ WGPUCompositeAlphaMode_Opaque = 0x00000001,
430
+ WGPUCompositeAlphaMode_Premultiplied = 0x00000002,
431
+ WGPUCompositeAlphaMode_Unpremultiplied = 0x00000003,
432
+ WGPUCompositeAlphaMode_Inherit = 0x00000004,
426
433
  WGPUCompositeAlphaMode_Force32 = 0x7FFFFFFF
427
434
  } WGPUCompositeAlphaMode WGPU_ENUM_ATTRIBUTE;
428
435
  typedef enum WGPUCreatePipelineAsyncStatus {
@@ -483,14 +490,15 @@ typedef enum WGPUFeatureName {
483
490
  WGPUFeatureName_RG11B10UfloatRenderable = 0x00000009,
484
491
  WGPUFeatureName_BGRA8UnormStorage = 0x0000000A,
485
492
  WGPUFeatureName_Float32Filterable = 0x0000000B,
486
- WGPUFeatureName_Subgroups = 0x0000000C,
487
- WGPUFeatureName_SubgroupsF16 = 0x0000000D,
493
+ WGPUFeatureName_Float32Blendable = 0x0000000C,
494
+ WGPUFeatureName_Subgroups = 0x0000000D,
495
+ WGPUFeatureName_SubgroupsF16 = 0x0000000E,
488
496
  WGPUFeatureName_DawnInternalUsages = 0x00050000,
489
497
  WGPUFeatureName_DawnMultiPlanarFormats = 0x00050001,
490
498
  WGPUFeatureName_DawnNative = 0x00050002,
491
499
  WGPUFeatureName_ChromiumExperimentalTimestampQueryInsidePasses = 0x00050003,
492
500
  WGPUFeatureName_ImplicitDeviceSynchronization = 0x00050004,
493
- WGPUFeatureName_SurfaceCapabilities = 0x00050005,
501
+ WGPUFeatureName_ChromiumExperimentalImmediateData = 0x00050005,
494
502
  WGPUFeatureName_TransientAttachments = 0x00050006,
495
503
  WGPUFeatureName_MSAARenderToSingleSampled = 0x00050007,
496
504
  WGPUFeatureName_DualSourceBlending = 0x00050008,
@@ -539,6 +547,9 @@ typedef enum WGPUFeatureName {
539
547
  WGPUFeatureName_YCbCrVulkanSamplers = 0x00050033,
540
548
  WGPUFeatureName_ShaderModuleCompilationOptions = 0x00050034,
541
549
  WGPUFeatureName_DawnLoadResolveTexture = 0x00050035,
550
+ WGPUFeatureName_DawnPartialLoadResolveTexture = 0x00050036,
551
+ WGPUFeatureName_MultiDrawIndirect = 0x00050037,
552
+ WGPUFeatureName_ClipDistances = 0x00050038,
542
553
  WGPUFeatureName_Force32 = 0x7FFFFFFF
543
554
  } WGPUFeatureName WGPU_ENUM_ATTRIBUTE;
544
555
  typedef enum WGPUFilterMode {
@@ -561,8 +572,8 @@ typedef enum WGPUIndexFormat {
561
572
  } WGPUIndexFormat WGPU_ENUM_ATTRIBUTE;
562
573
  typedef enum WGPULoadOp {
563
574
  WGPULoadOp_Undefined = 0x00000000,
564
- WGPULoadOp_Clear = 0x00000001,
565
- WGPULoadOp_Load = 0x00000002,
575
+ WGPULoadOp_Load = 0x00000001,
576
+ WGPULoadOp_Clear = 0x00000002,
566
577
  WGPULoadOp_ExpandResolveTexture = 0x00050003,
567
578
  WGPULoadOp_Force32 = 0x7FFFFFFF
568
579
  } WGPULoadOp WGPU_ENUM_ATTRIBUTE;
@@ -587,6 +598,12 @@ typedef enum WGPUMipmapFilterMode {
587
598
  WGPUMipmapFilterMode_Linear = 0x00000002,
588
599
  WGPUMipmapFilterMode_Force32 = 0x7FFFFFFF
589
600
  } WGPUMipmapFilterMode WGPU_ENUM_ATTRIBUTE;
601
+ typedef enum WGPUOptionalBool {
602
+ WGPUOptionalBool_False = 0x00000000,
603
+ WGPUOptionalBool_True = 0x00000001,
604
+ WGPUOptionalBool_Undefined = 0x00000002,
605
+ WGPUOptionalBool_Force32 = 0x7FFFFFFF
606
+ } WGPUOptionalBool WGPU_ENUM_ATTRIBUTE;
590
607
  typedef enum WGPUPopErrorScopeStatus {
591
608
  WGPUPopErrorScopeStatus_Success = 0x00000001,
592
609
  WGPUPopErrorScopeStatus_InstanceDropped = 0x00000002,
@@ -643,48 +660,47 @@ typedef enum WGPURequestDeviceStatus {
643
660
  WGPURequestDeviceStatus_Force32 = 0x7FFFFFFF
644
661
  } WGPURequestDeviceStatus WGPU_ENUM_ATTRIBUTE;
645
662
  typedef enum WGPUSType {
646
- WGPUSType_ShaderModuleSPIRVDescriptor = 0x00000001,
647
- WGPUSType_ShaderModuleWGSLDescriptor = 0x00000002,
648
- WGPUSType_PrimitiveDepthClipControl = 0x00000003,
649
- WGPUSType_RenderPassDescriptorMaxDrawCount = 0x00000004,
663
+ WGPUSType_ShaderSourceSPIRV = 0x00000001,
664
+ WGPUSType_ShaderSourceWGSL = 0x00000002,
665
+ WGPUSType_RenderPassMaxDrawCount = 0x00000003,
666
+ WGPUSType_SurfaceSourceMetalLayer = 0x00000004,
667
+ WGPUSType_SurfaceSourceWindowsHWND = 0x00000005,
668
+ WGPUSType_SurfaceSourceXlibWindow = 0x00000006,
669
+ WGPUSType_SurfaceSourceWaylandSurface = 0x00000007,
670
+ WGPUSType_SurfaceSourceAndroidNativeWindow = 0x00000008,
671
+ WGPUSType_SurfaceSourceXCBWindow = 0x00000009,
650
672
  WGPUSType_TextureBindingViewDimensionDescriptor = 0x00020000,
651
- WGPUSType_SurfaceDescriptorFromCanvasHTMLSelector = 0x00040000,
652
- WGPUSType_SurfaceDescriptorFromMetalLayer = 0x00010000,
653
- WGPUSType_SurfaceDescriptorFromWindowsHWND = 0x00010001,
654
- WGPUSType_SurfaceDescriptorFromXlibWindow = 0x00010002,
655
- WGPUSType_SurfaceDescriptorFromWaylandSurface = 0x00010003,
656
- WGPUSType_SurfaceDescriptorFromAndroidNativeWindow = 0x00010004,
657
- WGPUSType_SurfaceDescriptorFromXcbWindow = 0x00010005,
673
+ WGPUSType_SurfaceSourceCanvasHTMLSelector_Emscripten = 0x00040000,
658
674
  WGPUSType_SurfaceDescriptorFromWindowsCoreWindow = 0x00050000,
659
675
  WGPUSType_ExternalTextureBindingEntry = 0x00050001,
660
676
  WGPUSType_ExternalTextureBindingLayout = 0x00050002,
661
677
  WGPUSType_SurfaceDescriptorFromWindowsSwapChainPanel = 0x00050003,
662
- WGPUSType_DepthStencilStateDepthWriteDefinedDawn = 0x00050004,
663
- WGPUSType_DawnTextureInternalUsageDescriptor = 0x00050005,
664
- WGPUSType_DawnEncoderInternalUsageDescriptor = 0x00050006,
665
- WGPUSType_DawnInstanceDescriptor = 0x00050007,
666
- WGPUSType_DawnCacheDeviceDescriptor = 0x00050008,
667
- WGPUSType_DawnAdapterPropertiesPowerPreference = 0x00050009,
668
- WGPUSType_DawnBufferDescriptorErrorInfoFromWireClient = 0x0005000A,
669
- WGPUSType_DawnTogglesDescriptor = 0x0005000B,
670
- WGPUSType_DawnShaderModuleSPIRVOptionsDescriptor = 0x0005000C,
671
- WGPUSType_RequestAdapterOptionsLUID = 0x0005000D,
672
- WGPUSType_RequestAdapterOptionsGetGLProc = 0x0005000E,
673
- WGPUSType_RequestAdapterOptionsD3D11Device = 0x0005000F,
674
- WGPUSType_DawnRenderPassColorAttachmentRenderToSingleSampled = 0x00050010,
675
- WGPUSType_RenderPassPixelLocalStorage = 0x00050011,
676
- WGPUSType_PipelineLayoutPixelLocalStorage = 0x00050012,
677
- WGPUSType_BufferHostMappedPointer = 0x00050013,
678
- WGPUSType_DawnExperimentalSubgroupLimits = 0x00050014,
679
- WGPUSType_AdapterPropertiesMemoryHeaps = 0x00050015,
680
- WGPUSType_AdapterPropertiesD3D = 0x00050016,
681
- WGPUSType_AdapterPropertiesVk = 0x00050017,
682
- WGPUSType_DawnComputePipelineFullSubgroups = 0x00050018,
683
- WGPUSType_DawnWireWGSLControl = 0x00050019,
684
- WGPUSType_DawnWGSLBlocklist = 0x0005001A,
685
- WGPUSType_DrmFormatCapabilities = 0x0005001B,
686
- WGPUSType_ShaderModuleCompilationOptions = 0x0005001C,
687
- WGPUSType_ColorTargetStateExpandResolveTextureDawn = 0x0005001D,
678
+ WGPUSType_DawnTextureInternalUsageDescriptor = 0x00050004,
679
+ WGPUSType_DawnEncoderInternalUsageDescriptor = 0x00050005,
680
+ WGPUSType_DawnInstanceDescriptor = 0x00050006,
681
+ WGPUSType_DawnCacheDeviceDescriptor = 0x00050007,
682
+ WGPUSType_DawnAdapterPropertiesPowerPreference = 0x00050008,
683
+ WGPUSType_DawnBufferDescriptorErrorInfoFromWireClient = 0x00050009,
684
+ WGPUSType_DawnTogglesDescriptor = 0x0005000A,
685
+ WGPUSType_DawnShaderModuleSPIRVOptionsDescriptor = 0x0005000B,
686
+ WGPUSType_RequestAdapterOptionsLUID = 0x0005000C,
687
+ WGPUSType_RequestAdapterOptionsGetGLProc = 0x0005000D,
688
+ WGPUSType_RequestAdapterOptionsD3D11Device = 0x0005000E,
689
+ WGPUSType_DawnRenderPassColorAttachmentRenderToSingleSampled = 0x0005000F,
690
+ WGPUSType_RenderPassPixelLocalStorage = 0x00050010,
691
+ WGPUSType_PipelineLayoutPixelLocalStorage = 0x00050011,
692
+ WGPUSType_BufferHostMappedPointer = 0x00050012,
693
+ WGPUSType_DawnExperimentalSubgroupLimits = 0x00050013,
694
+ WGPUSType_AdapterPropertiesMemoryHeaps = 0x00050014,
695
+ WGPUSType_AdapterPropertiesD3D = 0x00050015,
696
+ WGPUSType_AdapterPropertiesVk = 0x00050016,
697
+ WGPUSType_DawnComputePipelineFullSubgroups = 0x00050017,
698
+ WGPUSType_DawnWireWGSLControl = 0x00050018,
699
+ WGPUSType_DawnWGSLBlocklist = 0x00050019,
700
+ WGPUSType_DrmFormatCapabilities = 0x0005001A,
701
+ WGPUSType_ShaderModuleCompilationOptions = 0x0005001B,
702
+ WGPUSType_ColorTargetStateExpandResolveTextureDawn = 0x0005001C,
703
+ WGPUSType_RenderPassDescriptorExpandResolveRect = 0x0005001D,
688
704
  WGPUSType_SharedTextureMemoryVkDedicatedAllocationDescriptor = 0x0005001E,
689
705
  WGPUSType_SharedTextureMemoryAHardwareBufferDescriptor = 0x0005001F,
690
706
  WGPUSType_SharedTextureMemoryDmaBufDescriptor = 0x00050020,
@@ -714,6 +730,7 @@ typedef enum WGPUSType {
714
730
  WGPUSType_YCbCrVkDescriptor = 0x00050038,
715
731
  WGPUSType_SharedTextureMemoryAHardwareBufferProperties = 0x00050039,
716
732
  WGPUSType_AHardwareBufferProperties = 0x0005003A,
733
+ WGPUSType_DawnExperimentalImmediateDataLimits = 0x0005003B,
717
734
  WGPUSType_Force32 = 0x7FFFFFFF
718
735
  } WGPUSType WGPU_ENUM_ATTRIBUTE;
719
736
  typedef enum WGPUSamplerBindingType {
@@ -972,7 +989,6 @@ typedef enum WGPUWaitStatus {
972
989
  } WGPUWaitStatus WGPU_ENUM_ATTRIBUTE;
973
990
 
974
991
  typedef WGPUFlags WGPUBufferUsage;
975
- typedef WGPUFlags WGPUBufferUsageFlags;
976
992
  static const WGPUBufferUsage WGPUBufferUsage_None = 0x0000000000000000;
977
993
  static const WGPUBufferUsage WGPUBufferUsage_MapRead = 0x0000000000000001;
978
994
  static const WGPUBufferUsage WGPUBufferUsage_MapWrite = 0x0000000000000002;
@@ -984,39 +1000,29 @@ static const WGPUBufferUsage WGPUBufferUsage_Uniform = 0x0000000000000040;
984
1000
  static const WGPUBufferUsage WGPUBufferUsage_Storage = 0x0000000000000080;
985
1001
  static const WGPUBufferUsage WGPUBufferUsage_Indirect = 0x0000000000000100;
986
1002
  static const WGPUBufferUsage WGPUBufferUsage_QueryResolve = 0x0000000000000200;
987
- static const WGPUBufferUsage WGPUBufferUsage_Force32 = 0x7FFFFFFF;
988
1003
  typedef WGPUFlags WGPUColorWriteMask;
989
- typedef WGPUFlags WGPUColorWriteMaskFlags;
990
1004
  static const WGPUColorWriteMask WGPUColorWriteMask_None = 0x0000000000000000;
991
1005
  static const WGPUColorWriteMask WGPUColorWriteMask_Red = 0x0000000000000001;
992
1006
  static const WGPUColorWriteMask WGPUColorWriteMask_Green = 0x0000000000000002;
993
1007
  static const WGPUColorWriteMask WGPUColorWriteMask_Blue = 0x0000000000000004;
994
1008
  static const WGPUColorWriteMask WGPUColorWriteMask_Alpha = 0x0000000000000008;
995
1009
  static const WGPUColorWriteMask WGPUColorWriteMask_All = 0x000000000000000F;
996
- static const WGPUColorWriteMask WGPUColorWriteMask_Force32 = 0x7FFFFFFF;
997
1010
  typedef WGPUFlags WGPUHeapProperty;
998
- typedef WGPUFlags WGPUHeapPropertyFlags;
999
1011
  static const WGPUHeapProperty WGPUHeapProperty_DeviceLocal = 0x0000000000000001;
1000
1012
  static const WGPUHeapProperty WGPUHeapProperty_HostVisible = 0x0000000000000002;
1001
1013
  static const WGPUHeapProperty WGPUHeapProperty_HostCoherent = 0x0000000000000004;
1002
1014
  static const WGPUHeapProperty WGPUHeapProperty_HostUncached = 0x0000000000000008;
1003
1015
  static const WGPUHeapProperty WGPUHeapProperty_HostCached = 0x0000000000000010;
1004
- static const WGPUHeapProperty WGPUHeapProperty_Force32 = 0x7FFFFFFF;
1005
1016
  typedef WGPUFlags WGPUMapMode;
1006
- typedef WGPUFlags WGPUMapModeFlags;
1007
1017
  static const WGPUMapMode WGPUMapMode_None = 0x0000000000000000;
1008
1018
  static const WGPUMapMode WGPUMapMode_Read = 0x0000000000000001;
1009
1019
  static const WGPUMapMode WGPUMapMode_Write = 0x0000000000000002;
1010
- static const WGPUMapMode WGPUMapMode_Force32 = 0x7FFFFFFF;
1011
1020
  typedef WGPUFlags WGPUShaderStage;
1012
- typedef WGPUFlags WGPUShaderStageFlags;
1013
1021
  static const WGPUShaderStage WGPUShaderStage_None = 0x0000000000000000;
1014
1022
  static const WGPUShaderStage WGPUShaderStage_Vertex = 0x0000000000000001;
1015
1023
  static const WGPUShaderStage WGPUShaderStage_Fragment = 0x0000000000000002;
1016
1024
  static const WGPUShaderStage WGPUShaderStage_Compute = 0x0000000000000004;
1017
- static const WGPUShaderStage WGPUShaderStage_Force32 = 0x7FFFFFFF;
1018
1025
  typedef WGPUFlags WGPUTextureUsage;
1019
- typedef WGPUFlags WGPUTextureUsageFlags;
1020
1026
  static const WGPUTextureUsage WGPUTextureUsage_None = 0x0000000000000000;
1021
1027
  static const WGPUTextureUsage WGPUTextureUsage_CopySrc = 0x0000000000000001;
1022
1028
  static const WGPUTextureUsage WGPUTextureUsage_CopyDst = 0x0000000000000002;
@@ -1025,35 +1031,34 @@ static const WGPUTextureUsage WGPUTextureUsage_StorageBinding = 0x00000000000000
1025
1031
  static const WGPUTextureUsage WGPUTextureUsage_RenderAttachment = 0x0000000000000010;
1026
1032
  static const WGPUTextureUsage WGPUTextureUsage_TransientAttachment = 0x0000000000000020;
1027
1033
  static const WGPUTextureUsage WGPUTextureUsage_StorageAttachment = 0x0000000000000040;
1028
- static const WGPUTextureUsage WGPUTextureUsage_Force32 = 0x7FFFFFFF;
1029
1034
  typedef void (*WGPUBufferMapCallback)(WGPUBufferMapAsyncStatus status, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1030
1035
  typedef void (*WGPUCallback)(void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1031
1036
  typedef void (*WGPUCompilationInfoCallback)(WGPUCompilationInfoRequestStatus status, struct WGPUCompilationInfo const * compilationInfo, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1032
- typedef void (*WGPUCreateComputePipelineAsyncCallback)(WGPUCreatePipelineAsyncStatus status, WGPUComputePipeline pipeline, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1033
- typedef void (*WGPUCreateRenderPipelineAsyncCallback)(WGPUCreatePipelineAsyncStatus status, WGPURenderPipeline pipeline, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1037
+ typedef void (*WGPUCreateComputePipelineAsyncCallback)(WGPUCreatePipelineAsyncStatus status, WGPUComputePipeline pipeline, struct WGPUStringView message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1038
+ typedef void (*WGPUCreateRenderPipelineAsyncCallback)(WGPUCreatePipelineAsyncStatus status, WGPURenderPipeline pipeline, struct WGPUStringView message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1034
1039
  typedef size_t (*WGPUDawnLoadCacheDataFunction)(void const * key, size_t keySize, void * value, size_t valueSize, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1035
1040
  typedef void (*WGPUDawnStoreCacheDataFunction)(void const * key, size_t keySize, void const * value, size_t valueSize, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1036
- typedef void (*WGPUDeviceLostCallback)(WGPUDeviceLostReason reason, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1037
- typedef void (*WGPUDeviceLostCallbackNew)(WGPUDevice const * device, WGPUDeviceLostReason reason, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1038
- typedef void (*WGPUErrorCallback)(WGPUErrorType type, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1039
- typedef void (*WGPULoggingCallback)(WGPULoggingType type, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1040
- typedef void (*WGPUPopErrorScopeCallback)(WGPUPopErrorScopeStatus status, WGPUErrorType type, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1041
+ typedef void (*WGPUDeviceLostCallback)(WGPUDeviceLostReason reason, struct WGPUStringView message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1042
+ typedef void (*WGPUDeviceLostCallbackNew)(WGPUDevice const * device, WGPUDeviceLostReason reason, struct WGPUStringView message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1043
+ typedef void (*WGPUErrorCallback)(WGPUErrorType type, struct WGPUStringView message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1044
+ typedef void (*WGPULoggingCallback)(WGPULoggingType type, struct WGPUStringView message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1045
+ typedef void (*WGPUPopErrorScopeCallback)(WGPUPopErrorScopeStatus status, WGPUErrorType type, struct WGPUStringView message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1041
1046
  typedef void (*WGPUProc)(void) WGPU_FUNCTION_ATTRIBUTE;
1042
1047
  typedef void (*WGPUQueueWorkDoneCallback)(WGPUQueueWorkDoneStatus status, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1043
- typedef void (*WGPURequestAdapterCallback)(WGPURequestAdapterStatus status, WGPUAdapter adapter, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1044
- typedef void (*WGPURequestDeviceCallback)(WGPURequestDeviceStatus status, WGPUDevice device, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1048
+ typedef void (*WGPURequestAdapterCallback)(WGPURequestAdapterStatus status, WGPUAdapter adapter, struct WGPUStringView message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1049
+ typedef void (*WGPURequestDeviceCallback)(WGPURequestDeviceStatus status, WGPUDevice device, struct WGPUStringView message, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
1045
1050
 
1046
1051
  // Callback function pointers
1047
- typedef void (*WGPUBufferMapCallback2)(WGPUMapAsyncStatus status, char const * message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1052
+ typedef void (*WGPUBufferMapCallback2)(WGPUMapAsyncStatus status, struct WGPUStringView message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1048
1053
  typedef void (*WGPUCompilationInfoCallback2)(WGPUCompilationInfoRequestStatus status, struct WGPUCompilationInfo const * compilationInfo, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1049
- typedef void (*WGPUCreateComputePipelineAsyncCallback2)(WGPUCreatePipelineAsyncStatus status, WGPUComputePipeline pipeline, char const * message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1050
- typedef void (*WGPUCreateRenderPipelineAsyncCallback2)(WGPUCreatePipelineAsyncStatus status, WGPURenderPipeline pipeline, char const * message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1051
- typedef void (*WGPUDeviceLostCallback2)(WGPUDevice const * device, WGPUDeviceLostReason reason, char const * message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1052
- typedef void (*WGPUPopErrorScopeCallback2)(WGPUPopErrorScopeStatus status, WGPUErrorType type, char const * message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1054
+ typedef void (*WGPUCreateComputePipelineAsyncCallback2)(WGPUCreatePipelineAsyncStatus status, WGPUComputePipeline pipeline, struct WGPUStringView message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1055
+ typedef void (*WGPUCreateRenderPipelineAsyncCallback2)(WGPUCreatePipelineAsyncStatus status, WGPURenderPipeline pipeline, struct WGPUStringView message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1056
+ typedef void (*WGPUDeviceLostCallback2)(WGPUDevice const * device, WGPUDeviceLostReason reason, struct WGPUStringView message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1057
+ typedef void (*WGPUPopErrorScopeCallback2)(WGPUPopErrorScopeStatus status, WGPUErrorType type, struct WGPUStringView message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1053
1058
  typedef void (*WGPUQueueWorkDoneCallback2)(WGPUQueueWorkDoneStatus status, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1054
- typedef void (*WGPURequestAdapterCallback2)(WGPURequestAdapterStatus status, WGPUAdapter adapter, char const * message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1055
- typedef void (*WGPURequestDeviceCallback2)(WGPURequestDeviceStatus status, WGPUDevice device, char const * message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1056
- typedef void (*WGPUUncapturedErrorCallback)(WGPUDevice const * device, WGPUErrorType type, char const * message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1059
+ typedef void (*WGPURequestAdapterCallback2)(WGPURequestAdapterStatus status, WGPUAdapter adapter, struct WGPUStringView message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1060
+ typedef void (*WGPURequestDeviceCallback2)(WGPURequestDeviceStatus status, WGPUDevice device, struct WGPUStringView message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1061
+ typedef void (*WGPUUncapturedErrorCallback)(WGPUDevice const * device, WGPUErrorType type, struct WGPUStringView message, void* userdata1, void* userdata2) WGPU_FUNCTION_ATTRIBUTE;
1057
1062
 
1058
1063
  typedef struct WGPUChainedStruct {
1059
1064
  struct WGPUChainedStruct const * next;
@@ -1226,85 +1231,34 @@ typedef struct WGPUUncapturedErrorCallbackInfo2 {
1226
1231
  /*.userdata2=*/nullptr WGPU_COMMA \
1227
1232
  })
1228
1233
 
1234
+
1229
1235
  typedef struct WGPUINTERNAL__HAVE_EMDAWNWEBGPU_HEADER {
1236
+ WGPUBool unused;
1230
1237
  } WGPUINTERNAL__HAVE_EMDAWNWEBGPU_HEADER WGPU_STRUCTURE_ATTRIBUTE;
1231
1238
 
1232
1239
  #define WGPU_INTERNAL__HAVE_EMDAWNWEBGPU_HEADER_INIT WGPU_MAKE_INIT_STRUCT(WGPUINTERNAL__HAVE_EMDAWNWEBGPU_HEADER, { \
1233
- })
1234
-
1235
- typedef struct WGPUAdapterInfo {
1236
- WGPUChainedStructOut * nextInChain;
1237
- char const * vendor;
1238
- char const * architecture;
1239
- char const * device;
1240
- char const * description;
1241
- WGPUBackendType backendType;
1242
- WGPUAdapterType adapterType;
1243
- uint32_t vendorID;
1244
- uint32_t deviceID;
1245
- WGPUBool compatibilityMode;
1246
- } WGPUAdapterInfo WGPU_STRUCTURE_ATTRIBUTE;
1247
-
1248
- #define WGPU_ADAPTER_INFO_INIT WGPU_MAKE_INIT_STRUCT(WGPUAdapterInfo, { \
1249
- /*.nextInChain=*/nullptr WGPU_COMMA \
1250
- /*.vendor=*/nullptr WGPU_COMMA \
1251
- /*.architecture=*/nullptr WGPU_COMMA \
1252
- /*.device=*/nullptr WGPU_COMMA \
1253
- /*.description=*/nullptr WGPU_COMMA \
1254
- /*.backendType=*/{} WGPU_COMMA \
1255
- /*.adapterType=*/{} WGPU_COMMA \
1256
- /*.vendorID=*/{} WGPU_COMMA \
1257
- /*.deviceID=*/{} WGPU_COMMA \
1258
- /*.compatibilityMode=*/false WGPU_COMMA \
1259
- })
1260
-
1261
- typedef struct WGPUAdapterProperties {
1262
- WGPUChainedStructOut * nextInChain;
1263
- uint32_t vendorID;
1264
- char const * vendorName;
1265
- char const * architecture;
1266
- uint32_t deviceID;
1267
- char const * name;
1268
- char const * driverDescription;
1269
- WGPUAdapterType adapterType;
1270
- WGPUBackendType backendType;
1271
- WGPUBool compatibilityMode;
1272
- } WGPUAdapterProperties WGPU_STRUCTURE_ATTRIBUTE;
1273
-
1274
- #define WGPU_ADAPTER_PROPERTIES_INIT WGPU_MAKE_INIT_STRUCT(WGPUAdapterProperties, { \
1275
- /*.nextInChain=*/nullptr WGPU_COMMA \
1276
- /*.vendorID=*/{} WGPU_COMMA \
1277
- /*.vendorName=*/nullptr WGPU_COMMA \
1278
- /*.architecture=*/nullptr WGPU_COMMA \
1279
- /*.deviceID=*/{} WGPU_COMMA \
1280
- /*.name=*/nullptr WGPU_COMMA \
1281
- /*.driverDescription=*/nullptr WGPU_COMMA \
1282
- /*.adapterType=*/{} WGPU_COMMA \
1283
- /*.backendType=*/{} WGPU_COMMA \
1284
- /*.compatibilityMode=*/false WGPU_COMMA \
1240
+ /*.unused=*/false WGPU_COMMA \
1285
1241
  })
1286
1242
 
1287
1243
  // Can be chained in WGPUAdapterInfo
1288
- // Can be chained in WGPUAdapterProperties
1289
1244
  typedef struct WGPUAdapterPropertiesD3D {
1290
1245
  WGPUChainedStructOut chain;
1291
1246
  uint32_t shaderModel;
1292
1247
  } WGPUAdapterPropertiesD3D WGPU_STRUCTURE_ATTRIBUTE;
1293
1248
 
1294
1249
  #define WGPU_ADAPTER_PROPERTIES_D3D_INIT WGPU_MAKE_INIT_STRUCT(WGPUAdapterPropertiesD3D, { \
1295
- /*.chain=*/{} WGPU_COMMA \
1250
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_AdapterPropertiesD3D} WGPU_COMMA \
1296
1251
  /*.shaderModel=*/{} WGPU_COMMA \
1297
1252
  })
1298
1253
 
1299
1254
  // Can be chained in WGPUAdapterInfo
1300
- // Can be chained in WGPUAdapterProperties
1301
1255
  typedef struct WGPUAdapterPropertiesVk {
1302
1256
  WGPUChainedStructOut chain;
1303
1257
  uint32_t driverVersion;
1304
1258
  } WGPUAdapterPropertiesVk WGPU_STRUCTURE_ATTRIBUTE;
1305
1259
 
1306
1260
  #define WGPU_ADAPTER_PROPERTIES_VK_INIT WGPU_MAKE_INIT_STRUCT(WGPUAdapterPropertiesVk, { \
1307
- /*.chain=*/{} WGPU_COMMA \
1261
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_AdapterPropertiesVk} WGPU_COMMA \
1308
1262
  /*.driverVersion=*/{} WGPU_COMMA \
1309
1263
  })
1310
1264
 
@@ -1354,22 +1308,6 @@ typedef struct WGPUBufferBindingLayout {
1354
1308
  /*.minBindingSize=*/0 WGPU_COMMA \
1355
1309
  })
1356
1310
 
1357
- typedef struct WGPUBufferDescriptor {
1358
- WGPUChainedStruct const * nextInChain;
1359
- WGPU_NULLABLE char const * label;
1360
- WGPUBufferUsage usage;
1361
- uint64_t size;
1362
- WGPUBool mappedAtCreation;
1363
- } WGPUBufferDescriptor WGPU_STRUCTURE_ATTRIBUTE;
1364
-
1365
- #define WGPU_BUFFER_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUBufferDescriptor, { \
1366
- /*.nextInChain=*/nullptr WGPU_COMMA \
1367
- /*.label=*/nullptr WGPU_COMMA \
1368
- /*.usage=*/{} WGPU_COMMA \
1369
- /*.size=*/{} WGPU_COMMA \
1370
- /*.mappedAtCreation=*/false WGPU_COMMA \
1371
- })
1372
-
1373
1311
  // Can be chained in WGPUBufferDescriptor
1374
1312
  typedef struct WGPUBufferHostMappedPointer {
1375
1313
  WGPUChainedStruct chain;
@@ -1379,7 +1317,7 @@ typedef struct WGPUBufferHostMappedPointer {
1379
1317
  } WGPUBufferHostMappedPointer WGPU_STRUCTURE_ATTRIBUTE;
1380
1318
 
1381
1319
  #define WGPU_BUFFER_HOST_MAPPED_POINTER_INIT WGPU_MAKE_INIT_STRUCT(WGPUBufferHostMappedPointer, { \
1382
- /*.chain=*/{} WGPU_COMMA \
1320
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_BufferHostMappedPointer} WGPU_COMMA \
1383
1321
  /*.pointer=*/{} WGPU_COMMA \
1384
1322
  /*.disposeCallback=*/{} WGPU_COMMA \
1385
1323
  /*.userdata=*/{} WGPU_COMMA \
@@ -1420,30 +1358,10 @@ typedef struct WGPUColorTargetStateExpandResolveTextureDawn {
1420
1358
  } WGPUColorTargetStateExpandResolveTextureDawn WGPU_STRUCTURE_ATTRIBUTE;
1421
1359
 
1422
1360
  #define WGPU_COLOR_TARGET_STATE_EXPAND_RESOLVE_TEXTURE_DAWN_INIT WGPU_MAKE_INIT_STRUCT(WGPUColorTargetStateExpandResolveTextureDawn, { \
1423
- /*.chain=*/{} WGPU_COMMA \
1361
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_ColorTargetStateExpandResolveTextureDawn} WGPU_COMMA \
1424
1362
  /*.enabled=*/false WGPU_COMMA \
1425
1363
  })
1426
1364
 
1427
- typedef struct WGPUCommandBufferDescriptor {
1428
- WGPUChainedStruct const * nextInChain;
1429
- WGPU_NULLABLE char const * label;
1430
- } WGPUCommandBufferDescriptor WGPU_STRUCTURE_ATTRIBUTE;
1431
-
1432
- #define WGPU_COMMAND_BUFFER_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUCommandBufferDescriptor, { \
1433
- /*.nextInChain=*/nullptr WGPU_COMMA \
1434
- /*.label=*/nullptr WGPU_COMMA \
1435
- })
1436
-
1437
- typedef struct WGPUCommandEncoderDescriptor {
1438
- WGPUChainedStruct const * nextInChain;
1439
- WGPU_NULLABLE char const * label;
1440
- } WGPUCommandEncoderDescriptor WGPU_STRUCTURE_ATTRIBUTE;
1441
-
1442
- #define WGPU_COMMAND_ENCODER_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUCommandEncoderDescriptor, { \
1443
- /*.nextInChain=*/nullptr WGPU_COMMA \
1444
- /*.label=*/nullptr WGPU_COMMA \
1445
- })
1446
-
1447
1365
  typedef struct WGPUCompilationInfoCallbackInfo {
1448
1366
  WGPUChainedStruct const * nextInChain;
1449
1367
  WGPUCallbackMode mode;
@@ -1458,32 +1376,6 @@ typedef struct WGPUCompilationInfoCallbackInfo {
1458
1376
  /*.userdata=*/nullptr WGPU_COMMA \
1459
1377
  })
1460
1378
 
1461
- typedef struct WGPUCompilationMessage {
1462
- WGPUChainedStruct const * nextInChain;
1463
- WGPU_NULLABLE char const * message;
1464
- WGPUCompilationMessageType type;
1465
- uint64_t lineNum;
1466
- uint64_t linePos;
1467
- uint64_t offset;
1468
- uint64_t length;
1469
- uint64_t utf16LinePos;
1470
- uint64_t utf16Offset;
1471
- uint64_t utf16Length;
1472
- } WGPUCompilationMessage WGPU_STRUCTURE_ATTRIBUTE;
1473
-
1474
- #define WGPU_COMPILATION_MESSAGE_INIT WGPU_MAKE_INIT_STRUCT(WGPUCompilationMessage, { \
1475
- /*.nextInChain=*/nullptr WGPU_COMMA \
1476
- /*.message=*/nullptr WGPU_COMMA \
1477
- /*.type=*/{} WGPU_COMMA \
1478
- /*.lineNum=*/{} WGPU_COMMA \
1479
- /*.linePos=*/{} WGPU_COMMA \
1480
- /*.offset=*/{} WGPU_COMMA \
1481
- /*.length=*/{} WGPU_COMMA \
1482
- /*.utf16LinePos=*/{} WGPU_COMMA \
1483
- /*.utf16Offset=*/{} WGPU_COMMA \
1484
- /*.utf16Length=*/{} WGPU_COMMA \
1485
- })
1486
-
1487
1379
  typedef struct WGPUComputePassTimestampWrites {
1488
1380
  WGPUQuerySet querySet;
1489
1381
  uint32_t beginningOfPassWriteIndex;
@@ -1496,18 +1388,6 @@ typedef struct WGPUComputePassTimestampWrites {
1496
1388
  /*.endOfPassWriteIndex=*/WGPU_QUERY_SET_INDEX_UNDEFINED WGPU_COMMA \
1497
1389
  })
1498
1390
 
1499
- typedef struct WGPUConstantEntry {
1500
- WGPUChainedStruct const * nextInChain;
1501
- char const * key;
1502
- double value;
1503
- } WGPUConstantEntry WGPU_STRUCTURE_ATTRIBUTE;
1504
-
1505
- #define WGPU_CONSTANT_ENTRY_INIT WGPU_MAKE_INIT_STRUCT(WGPUConstantEntry, { \
1506
- /*.nextInChain=*/nullptr WGPU_COMMA \
1507
- /*.key=*/{} WGPU_COMMA \
1508
- /*.value=*/{} WGPU_COMMA \
1509
- })
1510
-
1511
1391
  typedef struct WGPUCopyTextureForBrowserOptions {
1512
1392
  WGPUChainedStruct const * nextInChain;
1513
1393
  WGPUBool flipY;
@@ -1568,20 +1448,19 @@ typedef struct WGPUDawnWGSLBlocklist {
1568
1448
  } WGPUDawnWGSLBlocklist WGPU_STRUCTURE_ATTRIBUTE;
1569
1449
 
1570
1450
  #define WGPU_DAWN_WGSL_BLOCKLIST_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnWGSLBlocklist, { \
1571
- /*.chain=*/{} WGPU_COMMA \
1451
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnWGSLBlocklist} WGPU_COMMA \
1572
1452
  /*.blocklistedFeatureCount=*/0 WGPU_COMMA \
1573
1453
  /*.blocklistedFeatures=*/{} WGPU_COMMA \
1574
1454
  })
1575
1455
 
1576
1456
  // Can be chained in WGPUAdapterInfo
1577
- // Can be chained in WGPUAdapterProperties
1578
1457
  typedef struct WGPUDawnAdapterPropertiesPowerPreference {
1579
1458
  WGPUChainedStructOut chain;
1580
1459
  WGPUPowerPreference powerPreference;
1581
1460
  } WGPUDawnAdapterPropertiesPowerPreference WGPU_STRUCTURE_ATTRIBUTE;
1582
1461
 
1583
1462
  #define WGPU_DAWN_ADAPTER_PROPERTIES_POWER_PREFERENCE_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnAdapterPropertiesPowerPreference, { \
1584
- /*.chain=*/{} WGPU_COMMA \
1463
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnAdapterPropertiesPowerPreference} WGPU_COMMA \
1585
1464
  /*.powerPreference=*/WGPUPowerPreference_Undefined WGPU_COMMA \
1586
1465
  })
1587
1466
 
@@ -1592,27 +1471,10 @@ typedef struct WGPUDawnBufferDescriptorErrorInfoFromWireClient {
1592
1471
  } WGPUDawnBufferDescriptorErrorInfoFromWireClient WGPU_STRUCTURE_ATTRIBUTE;
1593
1472
 
1594
1473
  #define WGPU_DAWN_BUFFER_DESCRIPTOR_ERROR_INFO_FROM_WIRE_CLIENT_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnBufferDescriptorErrorInfoFromWireClient, { \
1595
- /*.chain=*/{} WGPU_COMMA \
1474
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnBufferDescriptorErrorInfoFromWireClient} WGPU_COMMA \
1596
1475
  /*.outOfMemory=*/false WGPU_COMMA \
1597
1476
  })
1598
1477
 
1599
- // Can be chained in WGPUDeviceDescriptor
1600
- typedef struct WGPUDawnCacheDeviceDescriptor {
1601
- WGPUChainedStruct chain;
1602
- char const * isolationKey;
1603
- WGPUDawnLoadCacheDataFunction loadDataFunction;
1604
- WGPUDawnStoreCacheDataFunction storeDataFunction;
1605
- void * functionUserdata;
1606
- } WGPUDawnCacheDeviceDescriptor WGPU_STRUCTURE_ATTRIBUTE;
1607
-
1608
- #define WGPU_DAWN_CACHE_DEVICE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnCacheDeviceDescriptor, { \
1609
- /*.chain=*/{} WGPU_COMMA \
1610
- /*.isolationKey=*/"" WGPU_COMMA \
1611
- /*.loadDataFunction=*/nullptr WGPU_COMMA \
1612
- /*.storeDataFunction=*/nullptr WGPU_COMMA \
1613
- /*.functionUserdata=*/nullptr WGPU_COMMA \
1614
- })
1615
-
1616
1478
  // Can be chained in WGPUComputePipelineDescriptor
1617
1479
  typedef struct WGPUDawnComputePipelineFullSubgroups {
1618
1480
  WGPUChainedStruct chain;
@@ -1620,7 +1482,7 @@ typedef struct WGPUDawnComputePipelineFullSubgroups {
1620
1482
  } WGPUDawnComputePipelineFullSubgroups WGPU_STRUCTURE_ATTRIBUTE;
1621
1483
 
1622
1484
  #define WGPU_DAWN_COMPUTE_PIPELINE_FULL_SUBGROUPS_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnComputePipelineFullSubgroups, { \
1623
- /*.chain=*/{} WGPU_COMMA \
1485
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnComputePipelineFullSubgroups} WGPU_COMMA \
1624
1486
  /*.requiresFullSubgroups=*/false WGPU_COMMA \
1625
1487
  })
1626
1488
 
@@ -1631,10 +1493,21 @@ typedef struct WGPUDawnEncoderInternalUsageDescriptor {
1631
1493
  } WGPUDawnEncoderInternalUsageDescriptor WGPU_STRUCTURE_ATTRIBUTE;
1632
1494
 
1633
1495
  #define WGPU_DAWN_ENCODER_INTERNAL_USAGE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnEncoderInternalUsageDescriptor, { \
1634
- /*.chain=*/{} WGPU_COMMA \
1496
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnEncoderInternalUsageDescriptor} WGPU_COMMA \
1635
1497
  /*.useInternalUsages=*/false WGPU_COMMA \
1636
1498
  })
1637
1499
 
1500
+ // Can be chained in WGPUSupportedLimits
1501
+ typedef struct WGPUDawnExperimentalImmediateDataLimits {
1502
+ WGPUChainedStructOut chain;
1503
+ uint32_t maxImmediateDataRangeByteSize;
1504
+ } WGPUDawnExperimentalImmediateDataLimits WGPU_STRUCTURE_ATTRIBUTE;
1505
+
1506
+ #define WGPU_DAWN_EXPERIMENTAL_IMMEDIATE_DATA_LIMITS_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnExperimentalImmediateDataLimits, { \
1507
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnExperimentalImmediateDataLimits} WGPU_COMMA \
1508
+ /*.maxImmediateDataRangeByteSize=*/WGPU_LIMIT_U32_UNDEFINED WGPU_COMMA \
1509
+ })
1510
+
1638
1511
  // Can be chained in WGPUSupportedLimits
1639
1512
  typedef struct WGPUDawnExperimentalSubgroupLimits {
1640
1513
  WGPUChainedStructOut chain;
@@ -1643,7 +1516,7 @@ typedef struct WGPUDawnExperimentalSubgroupLimits {
1643
1516
  } WGPUDawnExperimentalSubgroupLimits WGPU_STRUCTURE_ATTRIBUTE;
1644
1517
 
1645
1518
  #define WGPU_DAWN_EXPERIMENTAL_SUBGROUP_LIMITS_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnExperimentalSubgroupLimits, { \
1646
- /*.chain=*/{} WGPU_COMMA \
1519
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnExperimentalSubgroupLimits} WGPU_COMMA \
1647
1520
  /*.minSubgroupSize=*/WGPU_LIMIT_U32_UNDEFINED WGPU_COMMA \
1648
1521
  /*.maxSubgroupSize=*/WGPU_LIMIT_U32_UNDEFINED WGPU_COMMA \
1649
1522
  })
@@ -1655,7 +1528,7 @@ typedef struct WGPUDawnRenderPassColorAttachmentRenderToSingleSampled {
1655
1528
  } WGPUDawnRenderPassColorAttachmentRenderToSingleSampled WGPU_STRUCTURE_ATTRIBUTE;
1656
1529
 
1657
1530
  #define WGPU_DAWN_RENDER_PASS_COLOR_ATTACHMENT_RENDER_TO_SINGLE_SAMPLED_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnRenderPassColorAttachmentRenderToSingleSampled, { \
1658
- /*.chain=*/{} WGPU_COMMA \
1531
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnRenderPassColorAttachmentRenderToSingleSampled} WGPU_COMMA \
1659
1532
  /*.implicitSampleCount=*/1 WGPU_COMMA \
1660
1533
  })
1661
1534
 
@@ -1666,7 +1539,7 @@ typedef struct WGPUDawnShaderModuleSPIRVOptionsDescriptor {
1666
1539
  } WGPUDawnShaderModuleSPIRVOptionsDescriptor WGPU_STRUCTURE_ATTRIBUTE;
1667
1540
 
1668
1541
  #define WGPU_DAWN_SHADER_MODULE_SPIRV_OPTIONS_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnShaderModuleSPIRVOptionsDescriptor, { \
1669
- /*.chain=*/{} WGPU_COMMA \
1542
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnShaderModuleSPIRVOptionsDescriptor} WGPU_COMMA \
1670
1543
  /*.allowNonUniformDerivatives=*/false WGPU_COMMA \
1671
1544
  })
1672
1545
 
@@ -1677,7 +1550,7 @@ typedef struct WGPUDawnTextureInternalUsageDescriptor {
1677
1550
  } WGPUDawnTextureInternalUsageDescriptor WGPU_STRUCTURE_ATTRIBUTE;
1678
1551
 
1679
1552
  #define WGPU_DAWN_TEXTURE_INTERNAL_USAGE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnTextureInternalUsageDescriptor, { \
1680
- /*.chain=*/{} WGPU_COMMA \
1553
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnTextureInternalUsageDescriptor} WGPU_COMMA \
1681
1554
  /*.internalUsage=*/WGPUTextureUsage_None WGPU_COMMA \
1682
1555
  })
1683
1556
 
@@ -1693,7 +1566,7 @@ typedef struct WGPUDawnTogglesDescriptor {
1693
1566
  } WGPUDawnTogglesDescriptor WGPU_STRUCTURE_ATTRIBUTE;
1694
1567
 
1695
1568
  #define WGPU_DAWN_TOGGLES_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnTogglesDescriptor, { \
1696
- /*.chain=*/{} WGPU_COMMA \
1569
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnTogglesDescriptor} WGPU_COMMA \
1697
1570
  /*.enabledToggleCount=*/0 WGPU_COMMA \
1698
1571
  /*.enabledToggles=*/{} WGPU_COMMA \
1699
1572
  /*.disabledToggleCount=*/0 WGPU_COMMA \
@@ -1709,23 +1582,12 @@ typedef struct WGPUDawnWireWGSLControl {
1709
1582
  } WGPUDawnWireWGSLControl WGPU_STRUCTURE_ATTRIBUTE;
1710
1583
 
1711
1584
  #define WGPU_DAWN_WIRE_WGSL_CONTROL_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnWireWGSLControl, { \
1712
- /*.chain=*/{} WGPU_COMMA \
1585
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnWireWGSLControl} WGPU_COMMA \
1713
1586
  /*.enableExperimental=*/false WGPU_COMMA \
1714
1587
  /*.enableUnsafe=*/false WGPU_COMMA \
1715
1588
  /*.enableTesting=*/false WGPU_COMMA \
1716
1589
  })
1717
1590
 
1718
- // Can be chained in WGPUDepthStencilState
1719
- typedef struct WGPUDepthStencilStateDepthWriteDefinedDawn {
1720
- WGPUChainedStruct chain;
1721
- WGPUBool depthWriteDefined;
1722
- } WGPUDepthStencilStateDepthWriteDefinedDawn WGPU_STRUCTURE_ATTRIBUTE;
1723
-
1724
- #define WGPU_DEPTH_STENCIL_STATE_DEPTH_WRITE_DEFINED_DAWN_INIT WGPU_MAKE_INIT_STRUCT(WGPUDepthStencilStateDepthWriteDefinedDawn, { \
1725
- /*.chain=*/{} WGPU_COMMA \
1726
- /*.depthWriteDefined=*/{} WGPU_COMMA \
1727
- })
1728
-
1729
1591
  typedef struct WGPUDeviceLostCallbackInfo {
1730
1592
  WGPUChainedStruct const * nextInChain;
1731
1593
  WGPUCallbackMode mode;
@@ -1779,7 +1641,7 @@ typedef struct WGPUExternalTextureBindingEntry {
1779
1641
  } WGPUExternalTextureBindingEntry WGPU_STRUCTURE_ATTRIBUTE;
1780
1642
 
1781
1643
  #define WGPU_EXTERNAL_TEXTURE_BINDING_ENTRY_INIT WGPU_MAKE_INIT_STRUCT(WGPUExternalTextureBindingEntry, { \
1782
- /*.chain=*/{} WGPU_COMMA \
1644
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_ExternalTextureBindingEntry} WGPU_COMMA \
1783
1645
  /*.externalTexture=*/{} WGPU_COMMA \
1784
1646
  })
1785
1647
 
@@ -1789,7 +1651,7 @@ typedef struct WGPUExternalTextureBindingLayout {
1789
1651
  } WGPUExternalTextureBindingLayout WGPU_STRUCTURE_ATTRIBUTE;
1790
1652
 
1791
1653
  #define WGPU_EXTERNAL_TEXTURE_BINDING_LAYOUT_INIT WGPU_MAKE_INIT_STRUCT(WGPUExternalTextureBindingLayout, { \
1792
- /*.chain=*/{} WGPU_COMMA \
1654
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_ExternalTextureBindingLayout} WGPU_COMMA \
1793
1655
  })
1794
1656
 
1795
1657
  typedef struct WGPUFormatCapabilities {
@@ -1936,20 +1798,6 @@ typedef struct WGPUOrigin3D {
1936
1798
  /*.z=*/0 WGPU_COMMA \
1937
1799
  })
1938
1800
 
1939
- typedef struct WGPUPipelineLayoutDescriptor {
1940
- WGPUChainedStruct const * nextInChain;
1941
- WGPU_NULLABLE char const * label;
1942
- size_t bindGroupLayoutCount;
1943
- WGPUBindGroupLayout const * bindGroupLayouts;
1944
- } WGPUPipelineLayoutDescriptor WGPU_STRUCTURE_ATTRIBUTE;
1945
-
1946
- #define WGPU_PIPELINE_LAYOUT_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUPipelineLayoutDescriptor, { \
1947
- /*.nextInChain=*/nullptr WGPU_COMMA \
1948
- /*.label=*/nullptr WGPU_COMMA \
1949
- /*.bindGroupLayoutCount=*/{} WGPU_COMMA \
1950
- /*.bindGroupLayouts=*/{} WGPU_COMMA \
1951
- })
1952
-
1953
1801
  typedef struct WGPUPipelineLayoutStorageAttachment {
1954
1802
  WGPUChainedStruct const * nextInChain;
1955
1803
  uint64_t offset;
@@ -1978,23 +1826,13 @@ typedef struct WGPUPopErrorScopeCallbackInfo {
1978
1826
  /*.userdata=*/nullptr WGPU_COMMA \
1979
1827
  })
1980
1828
 
1981
- // Can be chained in WGPUPrimitiveState
1982
- typedef struct WGPUPrimitiveDepthClipControl {
1983
- WGPUChainedStruct chain;
1984
- WGPUBool unclippedDepth;
1985
- } WGPUPrimitiveDepthClipControl WGPU_STRUCTURE_ATTRIBUTE;
1986
-
1987
- #define WGPU_PRIMITIVE_DEPTH_CLIP_CONTROL_INIT WGPU_MAKE_INIT_STRUCT(WGPUPrimitiveDepthClipControl, { \
1988
- /*.chain=*/{} WGPU_COMMA \
1989
- /*.unclippedDepth=*/false WGPU_COMMA \
1990
- })
1991
-
1992
1829
  typedef struct WGPUPrimitiveState {
1993
1830
  WGPUChainedStruct const * nextInChain;
1994
1831
  WGPUPrimitiveTopology topology;
1995
1832
  WGPUIndexFormat stripIndexFormat;
1996
1833
  WGPUFrontFace frontFace;
1997
1834
  WGPUCullMode cullMode;
1835
+ WGPUBool unclippedDepth;
1998
1836
  } WGPUPrimitiveState WGPU_STRUCTURE_ATTRIBUTE;
1999
1837
 
2000
1838
  #define WGPU_PRIMITIVE_STATE_INIT WGPU_MAKE_INIT_STRUCT(WGPUPrimitiveState, { \
@@ -2003,30 +1841,7 @@ typedef struct WGPUPrimitiveState {
2003
1841
  /*.stripIndexFormat=*/WGPUIndexFormat_Undefined WGPU_COMMA \
2004
1842
  /*.frontFace=*/WGPUFrontFace_CCW WGPU_COMMA \
2005
1843
  /*.cullMode=*/WGPUCullMode_None WGPU_COMMA \
2006
- })
2007
-
2008
- typedef struct WGPUQuerySetDescriptor {
2009
- WGPUChainedStruct const * nextInChain;
2010
- WGPU_NULLABLE char const * label;
2011
- WGPUQueryType type;
2012
- uint32_t count;
2013
- } WGPUQuerySetDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2014
-
2015
- #define WGPU_QUERY_SET_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUQuerySetDescriptor, { \
2016
- /*.nextInChain=*/nullptr WGPU_COMMA \
2017
- /*.label=*/nullptr WGPU_COMMA \
2018
- /*.type=*/{} WGPU_COMMA \
2019
- /*.count=*/{} WGPU_COMMA \
2020
- })
2021
-
2022
- typedef struct WGPUQueueDescriptor {
2023
- WGPUChainedStruct const * nextInChain;
2024
- WGPU_NULLABLE char const * label;
2025
- } WGPUQueueDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2026
-
2027
- #define WGPU_QUEUE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUQueueDescriptor, { \
2028
- /*.nextInChain=*/nullptr WGPU_COMMA \
2029
- /*.label=*/nullptr WGPU_COMMA \
1844
+ /*.unclippedDepth=*/false WGPU_COMMA \
2030
1845
  })
2031
1846
 
2032
1847
  typedef struct WGPUQueueWorkDoneCallbackInfo {
@@ -2043,38 +1858,6 @@ typedef struct WGPUQueueWorkDoneCallbackInfo {
2043
1858
  /*.userdata=*/{} WGPU_COMMA \
2044
1859
  })
2045
1860
 
2046
- typedef struct WGPURenderBundleDescriptor {
2047
- WGPUChainedStruct const * nextInChain;
2048
- WGPU_NULLABLE char const * label;
2049
- } WGPURenderBundleDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2050
-
2051
- #define WGPU_RENDER_BUNDLE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPURenderBundleDescriptor, { \
2052
- /*.nextInChain=*/nullptr WGPU_COMMA \
2053
- /*.label=*/nullptr WGPU_COMMA \
2054
- })
2055
-
2056
- typedef struct WGPURenderBundleEncoderDescriptor {
2057
- WGPUChainedStruct const * nextInChain;
2058
- WGPU_NULLABLE char const * label;
2059
- size_t colorFormatCount;
2060
- WGPUTextureFormat const * colorFormats;
2061
- WGPUTextureFormat depthStencilFormat;
2062
- uint32_t sampleCount;
2063
- WGPUBool depthReadOnly;
2064
- WGPUBool stencilReadOnly;
2065
- } WGPURenderBundleEncoderDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2066
-
2067
- #define WGPU_RENDER_BUNDLE_ENCODER_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPURenderBundleEncoderDescriptor, { \
2068
- /*.nextInChain=*/nullptr WGPU_COMMA \
2069
- /*.label=*/nullptr WGPU_COMMA \
2070
- /*.colorFormatCount=*/{} WGPU_COMMA \
2071
- /*.colorFormats=*/{} WGPU_COMMA \
2072
- /*.depthStencilFormat=*/WGPUTextureFormat_Undefined WGPU_COMMA \
2073
- /*.sampleCount=*/1 WGPU_COMMA \
2074
- /*.depthReadOnly=*/false WGPU_COMMA \
2075
- /*.stencilReadOnly=*/false WGPU_COMMA \
2076
- })
2077
-
2078
1861
  typedef struct WGPURenderPassDepthStencilAttachment {
2079
1862
  WGPUTextureView view;
2080
1863
  WGPULoadOp depthLoadOp;
@@ -2100,13 +1883,30 @@ typedef struct WGPURenderPassDepthStencilAttachment {
2100
1883
  })
2101
1884
 
2102
1885
  // Can be chained in WGPURenderPassDescriptor
2103
- typedef struct WGPURenderPassDescriptorMaxDrawCount {
1886
+ typedef struct WGPURenderPassDescriptorExpandResolveRect {
1887
+ WGPUChainedStruct chain;
1888
+ uint32_t x;
1889
+ uint32_t y;
1890
+ uint32_t width;
1891
+ uint32_t height;
1892
+ } WGPURenderPassDescriptorExpandResolveRect WGPU_STRUCTURE_ATTRIBUTE;
1893
+
1894
+ #define WGPU_RENDER_PASS_DESCRIPTOR_EXPAND_RESOLVE_RECT_INIT WGPU_MAKE_INIT_STRUCT(WGPURenderPassDescriptorExpandResolveRect, { \
1895
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_RenderPassDescriptorExpandResolveRect} WGPU_COMMA \
1896
+ /*.x=*/{} WGPU_COMMA \
1897
+ /*.y=*/{} WGPU_COMMA \
1898
+ /*.width=*/{} WGPU_COMMA \
1899
+ /*.height=*/{} WGPU_COMMA \
1900
+ })
1901
+
1902
+ // Can be chained in WGPURenderPassDescriptor
1903
+ typedef struct WGPURenderPassMaxDrawCount {
2104
1904
  WGPUChainedStruct chain;
2105
1905
  uint64_t maxDrawCount;
2106
- } WGPURenderPassDescriptorMaxDrawCount WGPU_STRUCTURE_ATTRIBUTE;
1906
+ } WGPURenderPassMaxDrawCount WGPU_STRUCTURE_ATTRIBUTE;
2107
1907
 
2108
- #define WGPU_RENDER_PASS_DESCRIPTOR_MAX_DRAW_COUNT_INIT WGPU_MAKE_INIT_STRUCT(WGPURenderPassDescriptorMaxDrawCount, { \
2109
- /*.chain=*/{} WGPU_COMMA \
1908
+ #define WGPU_RENDER_PASS_MAX_DRAW_COUNT_INIT WGPU_MAKE_INIT_STRUCT(WGPURenderPassMaxDrawCount, { \
1909
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_RenderPassMaxDrawCount} WGPU_COMMA \
2110
1910
  /*.maxDrawCount=*/50000000 WGPU_COMMA \
2111
1911
  })
2112
1912
 
@@ -2178,60 +1978,6 @@ typedef struct WGPUSamplerBindingLayout {
2178
1978
  /*.type=*/WGPUSamplerBindingType_Undefined WGPU_COMMA \
2179
1979
  })
2180
1980
 
2181
- typedef struct WGPUSamplerDescriptor {
2182
- WGPUChainedStruct const * nextInChain;
2183
- WGPU_NULLABLE char const * label;
2184
- WGPUAddressMode addressModeU;
2185
- WGPUAddressMode addressModeV;
2186
- WGPUAddressMode addressModeW;
2187
- WGPUFilterMode magFilter;
2188
- WGPUFilterMode minFilter;
2189
- WGPUMipmapFilterMode mipmapFilter;
2190
- float lodMinClamp;
2191
- float lodMaxClamp;
2192
- WGPUCompareFunction compare;
2193
- uint16_t maxAnisotropy;
2194
- } WGPUSamplerDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2195
-
2196
- #define WGPU_SAMPLER_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSamplerDescriptor, { \
2197
- /*.nextInChain=*/nullptr WGPU_COMMA \
2198
- /*.label=*/nullptr WGPU_COMMA \
2199
- /*.addressModeU=*/WGPUAddressMode_ClampToEdge WGPU_COMMA \
2200
- /*.addressModeV=*/WGPUAddressMode_ClampToEdge WGPU_COMMA \
2201
- /*.addressModeW=*/WGPUAddressMode_ClampToEdge WGPU_COMMA \
2202
- /*.magFilter=*/WGPUFilterMode_Nearest WGPU_COMMA \
2203
- /*.minFilter=*/WGPUFilterMode_Nearest WGPU_COMMA \
2204
- /*.mipmapFilter=*/WGPUMipmapFilterMode_Nearest WGPU_COMMA \
2205
- /*.lodMinClamp=*/0.0f WGPU_COMMA \
2206
- /*.lodMaxClamp=*/32.0f WGPU_COMMA \
2207
- /*.compare=*/WGPUCompareFunction_Undefined WGPU_COMMA \
2208
- /*.maxAnisotropy=*/1 WGPU_COMMA \
2209
- })
2210
-
2211
- // Can be chained in WGPUShaderModuleDescriptor
2212
- typedef struct WGPUShaderModuleSPIRVDescriptor {
2213
- WGPUChainedStruct chain;
2214
- uint32_t codeSize;
2215
- uint32_t const * code;
2216
- } WGPUShaderModuleSPIRVDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2217
-
2218
- #define WGPU_SHADER_MODULE_SPIRV_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUShaderModuleSPIRVDescriptor, { \
2219
- /*.chain=*/{} WGPU_COMMA \
2220
- /*.codeSize=*/{} WGPU_COMMA \
2221
- /*.code=*/{} WGPU_COMMA \
2222
- })
2223
-
2224
- // Can be chained in WGPUShaderModuleDescriptor
2225
- typedef struct WGPUShaderModuleWGSLDescriptor {
2226
- WGPUChainedStruct chain;
2227
- char const * code;
2228
- } WGPUShaderModuleWGSLDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2229
-
2230
- #define WGPU_SHADER_MODULE_WGSL_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUShaderModuleWGSLDescriptor, { \
2231
- /*.chain=*/{} WGPU_COMMA \
2232
- /*.code=*/{} WGPU_COMMA \
2233
- })
2234
-
2235
1981
  // Can be chained in WGPUShaderModuleDescriptor
2236
1982
  typedef struct WGPUShaderModuleCompilationOptions {
2237
1983
  WGPUChainedStruct chain;
@@ -2239,18 +1985,21 @@ typedef struct WGPUShaderModuleCompilationOptions {
2239
1985
  } WGPUShaderModuleCompilationOptions WGPU_STRUCTURE_ATTRIBUTE;
2240
1986
 
2241
1987
  #define WGPU_SHADER_MODULE_COMPILATION_OPTIONS_INIT WGPU_MAKE_INIT_STRUCT(WGPUShaderModuleCompilationOptions, { \
2242
- /*.chain=*/{} WGPU_COMMA \
1988
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_ShaderModuleCompilationOptions} WGPU_COMMA \
2243
1989
  /*.strictMath=*/{} WGPU_COMMA \
2244
1990
  })
2245
1991
 
2246
- typedef struct WGPUShaderModuleDescriptor {
2247
- WGPUChainedStruct const * nextInChain;
2248
- WGPU_NULLABLE char const * label;
2249
- } WGPUShaderModuleDescriptor WGPU_STRUCTURE_ATTRIBUTE;
1992
+ // Can be chained in WGPUShaderModuleDescriptor
1993
+ typedef struct WGPUShaderSourceSPIRV {
1994
+ WGPUChainedStruct chain;
1995
+ uint32_t codeSize;
1996
+ uint32_t const * code;
1997
+ } WGPUShaderSourceSPIRV WGPU_STRUCTURE_ATTRIBUTE;
2250
1998
 
2251
- #define WGPU_SHADER_MODULE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUShaderModuleDescriptor, { \
2252
- /*.nextInChain=*/nullptr WGPU_COMMA \
2253
- /*.label=*/nullptr WGPU_COMMA \
1999
+ #define WGPU_SHADER_SOURCE_SPIRV_INIT WGPU_MAKE_INIT_STRUCT(WGPUShaderSourceSPIRV, { \
2000
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_ShaderSourceSPIRV} WGPU_COMMA \
2001
+ /*.codeSize=*/{} WGPU_COMMA \
2002
+ /*.code=*/{} WGPU_COMMA \
2254
2003
  })
2255
2004
 
2256
2005
  typedef struct WGPUSharedBufferMemoryBeginAccessDescriptor {
@@ -2269,16 +2018,6 @@ typedef struct WGPUSharedBufferMemoryBeginAccessDescriptor {
2269
2018
  /*.signaledValues=*/{} WGPU_COMMA \
2270
2019
  })
2271
2020
 
2272
- typedef struct WGPUSharedBufferMemoryDescriptor {
2273
- WGPUChainedStruct const * nextInChain;
2274
- WGPU_NULLABLE char const * label;
2275
- } WGPUSharedBufferMemoryDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2276
-
2277
- #define WGPU_SHARED_BUFFER_MEMORY_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedBufferMemoryDescriptor, { \
2278
- /*.nextInChain=*/nullptr WGPU_COMMA \
2279
- /*.label=*/nullptr WGPU_COMMA \
2280
- })
2281
-
2282
2021
  typedef struct WGPUSharedBufferMemoryEndAccessState {
2283
2022
  WGPUChainedStructOut * nextInChain;
2284
2023
  WGPUBool initialized;
@@ -2314,7 +2053,7 @@ typedef struct WGPUSharedFenceDXGISharedHandleDescriptor {
2314
2053
  } WGPUSharedFenceDXGISharedHandleDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2315
2054
 
2316
2055
  #define WGPU_SHARED_FENCE_DXGI_SHARED_HANDLE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedFenceDXGISharedHandleDescriptor, { \
2317
- /*.chain=*/{} WGPU_COMMA \
2056
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedFenceDXGISharedHandleDescriptor} WGPU_COMMA \
2318
2057
  /*.handle=*/{} WGPU_COMMA \
2319
2058
  })
2320
2059
 
@@ -2325,7 +2064,7 @@ typedef struct WGPUSharedFenceDXGISharedHandleExportInfo {
2325
2064
  } WGPUSharedFenceDXGISharedHandleExportInfo WGPU_STRUCTURE_ATTRIBUTE;
2326
2065
 
2327
2066
  #define WGPU_SHARED_FENCE_DXGI_SHARED_HANDLE_EXPORT_INFO_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedFenceDXGISharedHandleExportInfo, { \
2328
- /*.chain=*/{} WGPU_COMMA \
2067
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedFenceDXGISharedHandleExportInfo} WGPU_COMMA \
2329
2068
  /*.handle=*/{} WGPU_COMMA \
2330
2069
  })
2331
2070
 
@@ -2336,7 +2075,7 @@ typedef struct WGPUSharedFenceMTLSharedEventDescriptor {
2336
2075
  } WGPUSharedFenceMTLSharedEventDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2337
2076
 
2338
2077
  #define WGPU_SHARED_FENCE_MTL_SHARED_EVENT_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedFenceMTLSharedEventDescriptor, { \
2339
- /*.chain=*/{} WGPU_COMMA \
2078
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedFenceMTLSharedEventDescriptor} WGPU_COMMA \
2340
2079
  /*.sharedEvent=*/{} WGPU_COMMA \
2341
2080
  })
2342
2081
 
@@ -2347,20 +2086,10 @@ typedef struct WGPUSharedFenceMTLSharedEventExportInfo {
2347
2086
  } WGPUSharedFenceMTLSharedEventExportInfo WGPU_STRUCTURE_ATTRIBUTE;
2348
2087
 
2349
2088
  #define WGPU_SHARED_FENCE_MTL_SHARED_EVENT_EXPORT_INFO_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedFenceMTLSharedEventExportInfo, { \
2350
- /*.chain=*/{} WGPU_COMMA \
2089
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedFenceMTLSharedEventExportInfo} WGPU_COMMA \
2351
2090
  /*.sharedEvent=*/{} WGPU_COMMA \
2352
2091
  })
2353
2092
 
2354
- typedef struct WGPUSharedFenceDescriptor {
2355
- WGPUChainedStruct const * nextInChain;
2356
- WGPU_NULLABLE char const * label;
2357
- } WGPUSharedFenceDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2358
-
2359
- #define WGPU_SHARED_FENCE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedFenceDescriptor, { \
2360
- /*.nextInChain=*/nullptr WGPU_COMMA \
2361
- /*.label=*/nullptr WGPU_COMMA \
2362
- })
2363
-
2364
2093
  typedef struct WGPUSharedFenceExportInfo {
2365
2094
  WGPUChainedStructOut * nextInChain;
2366
2095
  WGPUSharedFenceType type;
@@ -2378,7 +2107,7 @@ typedef struct WGPUSharedFenceVkSemaphoreOpaqueFDDescriptor {
2378
2107
  } WGPUSharedFenceVkSemaphoreOpaqueFDDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2379
2108
 
2380
2109
  #define WGPU_SHARED_FENCE_VK_SEMAPHORE_OPAQUE_FD_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedFenceVkSemaphoreOpaqueFDDescriptor, { \
2381
- /*.chain=*/{} WGPU_COMMA \
2110
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedFenceVkSemaphoreOpaqueFDDescriptor} WGPU_COMMA \
2382
2111
  /*.handle=*/{} WGPU_COMMA \
2383
2112
  })
2384
2113
 
@@ -2389,7 +2118,7 @@ typedef struct WGPUSharedFenceVkSemaphoreOpaqueFDExportInfo {
2389
2118
  } WGPUSharedFenceVkSemaphoreOpaqueFDExportInfo WGPU_STRUCTURE_ATTRIBUTE;
2390
2119
 
2391
2120
  #define WGPU_SHARED_FENCE_VK_SEMAPHORE_OPAQUE_FD_EXPORT_INFO_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedFenceVkSemaphoreOpaqueFDExportInfo, { \
2392
- /*.chain=*/{} WGPU_COMMA \
2121
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedFenceVkSemaphoreOpaqueFDExportInfo} WGPU_COMMA \
2393
2122
  /*.handle=*/{} WGPU_COMMA \
2394
2123
  })
2395
2124
 
@@ -2400,7 +2129,7 @@ typedef struct WGPUSharedFenceVkSemaphoreSyncFDDescriptor {
2400
2129
  } WGPUSharedFenceVkSemaphoreSyncFDDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2401
2130
 
2402
2131
  #define WGPU_SHARED_FENCE_VK_SEMAPHORE_SYNC_FD_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedFenceVkSemaphoreSyncFDDescriptor, { \
2403
- /*.chain=*/{} WGPU_COMMA \
2132
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedFenceVkSemaphoreSyncFDDescriptor} WGPU_COMMA \
2404
2133
  /*.handle=*/{} WGPU_COMMA \
2405
2134
  })
2406
2135
 
@@ -2411,7 +2140,7 @@ typedef struct WGPUSharedFenceVkSemaphoreSyncFDExportInfo {
2411
2140
  } WGPUSharedFenceVkSemaphoreSyncFDExportInfo WGPU_STRUCTURE_ATTRIBUTE;
2412
2141
 
2413
2142
  #define WGPU_SHARED_FENCE_VK_SEMAPHORE_SYNC_FD_EXPORT_INFO_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedFenceVkSemaphoreSyncFDExportInfo, { \
2414
- /*.chain=*/{} WGPU_COMMA \
2143
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedFenceVkSemaphoreSyncFDExportInfo} WGPU_COMMA \
2415
2144
  /*.handle=*/{} WGPU_COMMA \
2416
2145
  })
2417
2146
 
@@ -2422,7 +2151,7 @@ typedef struct WGPUSharedFenceVkSemaphoreZirconHandleDescriptor {
2422
2151
  } WGPUSharedFenceVkSemaphoreZirconHandleDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2423
2152
 
2424
2153
  #define WGPU_SHARED_FENCE_VK_SEMAPHORE_ZIRCON_HANDLE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedFenceVkSemaphoreZirconHandleDescriptor, { \
2425
- /*.chain=*/{} WGPU_COMMA \
2154
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedFenceVkSemaphoreZirconHandleDescriptor} WGPU_COMMA \
2426
2155
  /*.handle=*/{} WGPU_COMMA \
2427
2156
  })
2428
2157
 
@@ -2433,7 +2162,7 @@ typedef struct WGPUSharedFenceVkSemaphoreZirconHandleExportInfo {
2433
2162
  } WGPUSharedFenceVkSemaphoreZirconHandleExportInfo WGPU_STRUCTURE_ATTRIBUTE;
2434
2163
 
2435
2164
  #define WGPU_SHARED_FENCE_VK_SEMAPHORE_ZIRCON_HANDLE_EXPORT_INFO_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedFenceVkSemaphoreZirconHandleExportInfo, { \
2436
- /*.chain=*/{} WGPU_COMMA \
2165
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedFenceVkSemaphoreZirconHandleExportInfo} WGPU_COMMA \
2437
2166
  /*.handle=*/{} WGPU_COMMA \
2438
2167
  })
2439
2168
 
@@ -2444,7 +2173,7 @@ typedef struct WGPUSharedTextureMemoryD3DSwapchainBeginState {
2444
2173
  } WGPUSharedTextureMemoryD3DSwapchainBeginState WGPU_STRUCTURE_ATTRIBUTE;
2445
2174
 
2446
2175
  #define WGPU_SHARED_TEXTURE_MEMORY_D3D_SWAPCHAIN_BEGIN_STATE_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryD3DSwapchainBeginState, { \
2447
- /*.chain=*/{} WGPU_COMMA \
2176
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedTextureMemoryD3DSwapchainBeginState} WGPU_COMMA \
2448
2177
  /*.isSwapchain=*/false WGPU_COMMA \
2449
2178
  })
2450
2179
 
@@ -2456,7 +2185,7 @@ typedef struct WGPUSharedTextureMemoryDXGISharedHandleDescriptor {
2456
2185
  } WGPUSharedTextureMemoryDXGISharedHandleDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2457
2186
 
2458
2187
  #define WGPU_SHARED_TEXTURE_MEMORY_DXGI_SHARED_HANDLE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryDXGISharedHandleDescriptor, { \
2459
- /*.chain=*/{} WGPU_COMMA \
2188
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedTextureMemoryDXGISharedHandleDescriptor} WGPU_COMMA \
2460
2189
  /*.handle=*/{} WGPU_COMMA \
2461
2190
  /*.useKeyedMutex=*/{} WGPU_COMMA \
2462
2191
  })
@@ -2468,7 +2197,7 @@ typedef struct WGPUSharedTextureMemoryEGLImageDescriptor {
2468
2197
  } WGPUSharedTextureMemoryEGLImageDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2469
2198
 
2470
2199
  #define WGPU_SHARED_TEXTURE_MEMORY_EGL_IMAGE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryEGLImageDescriptor, { \
2471
- /*.chain=*/{} WGPU_COMMA \
2200
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedTextureMemoryEGLImageDescriptor} WGPU_COMMA \
2472
2201
  /*.image=*/{} WGPU_COMMA \
2473
2202
  })
2474
2203
 
@@ -2479,7 +2208,7 @@ typedef struct WGPUSharedTextureMemoryIOSurfaceDescriptor {
2479
2208
  } WGPUSharedTextureMemoryIOSurfaceDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2480
2209
 
2481
2210
  #define WGPU_SHARED_TEXTURE_MEMORY_IO_SURFACE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryIOSurfaceDescriptor, { \
2482
- /*.chain=*/{} WGPU_COMMA \
2211
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedTextureMemoryIOSurfaceDescriptor} WGPU_COMMA \
2483
2212
  /*.ioSurface=*/{} WGPU_COMMA \
2484
2213
  })
2485
2214
 
@@ -2491,7 +2220,7 @@ typedef struct WGPUSharedTextureMemoryAHardwareBufferDescriptor {
2491
2220
  } WGPUSharedTextureMemoryAHardwareBufferDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2492
2221
 
2493
2222
  #define WGPU_SHARED_TEXTURE_MEMORY_A_HARDWARE_BUFFER_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryAHardwareBufferDescriptor, { \
2494
- /*.chain=*/{} WGPU_COMMA \
2223
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedTextureMemoryAHardwareBufferDescriptor} WGPU_COMMA \
2495
2224
  /*.handle=*/{} WGPU_COMMA \
2496
2225
  /*.useExternalFormat=*/{} WGPU_COMMA \
2497
2226
  })
@@ -2514,16 +2243,6 @@ typedef struct WGPUSharedTextureMemoryBeginAccessDescriptor {
2514
2243
  /*.signaledValues=*/{} WGPU_COMMA \
2515
2244
  })
2516
2245
 
2517
- typedef struct WGPUSharedTextureMemoryDescriptor {
2518
- WGPUChainedStruct const * nextInChain;
2519
- WGPU_NULLABLE char const * label;
2520
- } WGPUSharedTextureMemoryDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2521
-
2522
- #define WGPU_SHARED_TEXTURE_MEMORY_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryDescriptor, { \
2523
- /*.nextInChain=*/nullptr WGPU_COMMA \
2524
- /*.label=*/nullptr WGPU_COMMA \
2525
- })
2526
-
2527
2246
  typedef struct WGPUSharedTextureMemoryDmaBufPlane {
2528
2247
  int fd;
2529
2248
  uint64_t offset;
@@ -2563,7 +2282,7 @@ typedef struct WGPUSharedTextureMemoryOpaqueFDDescriptor {
2563
2282
  } WGPUSharedTextureMemoryOpaqueFDDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2564
2283
 
2565
2284
  #define WGPU_SHARED_TEXTURE_MEMORY_OPAQUE_FD_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryOpaqueFDDescriptor, { \
2566
- /*.chain=*/{} WGPU_COMMA \
2285
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedTextureMemoryOpaqueFDDescriptor} WGPU_COMMA \
2567
2286
  /*.vkImageCreateInfo=*/{} WGPU_COMMA \
2568
2287
  /*.memoryFD=*/{} WGPU_COMMA \
2569
2288
  /*.memoryTypeIndex=*/{} WGPU_COMMA \
@@ -2578,7 +2297,7 @@ typedef struct WGPUSharedTextureMemoryVkDedicatedAllocationDescriptor {
2578
2297
  } WGPUSharedTextureMemoryVkDedicatedAllocationDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2579
2298
 
2580
2299
  #define WGPU_SHARED_TEXTURE_MEMORY_VK_DEDICATED_ALLOCATION_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryVkDedicatedAllocationDescriptor, { \
2581
- /*.chain=*/{} WGPU_COMMA \
2300
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedTextureMemoryVkDedicatedAllocationDescriptor} WGPU_COMMA \
2582
2301
  /*.dedicatedAllocation=*/{} WGPU_COMMA \
2583
2302
  })
2584
2303
 
@@ -2590,7 +2309,7 @@ typedef struct WGPUSharedTextureMemoryVkImageLayoutBeginState {
2590
2309
  } WGPUSharedTextureMemoryVkImageLayoutBeginState WGPU_STRUCTURE_ATTRIBUTE;
2591
2310
 
2592
2311
  #define WGPU_SHARED_TEXTURE_MEMORY_VK_IMAGE_LAYOUT_BEGIN_STATE_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryVkImageLayoutBeginState, { \
2593
- /*.chain=*/{} WGPU_COMMA \
2312
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedTextureMemoryVkImageLayoutBeginState} WGPU_COMMA \
2594
2313
  /*.oldLayout=*/{} WGPU_COMMA \
2595
2314
  /*.newLayout=*/{} WGPU_COMMA \
2596
2315
  })
@@ -2603,7 +2322,7 @@ typedef struct WGPUSharedTextureMemoryVkImageLayoutEndState {
2603
2322
  } WGPUSharedTextureMemoryVkImageLayoutEndState WGPU_STRUCTURE_ATTRIBUTE;
2604
2323
 
2605
2324
  #define WGPU_SHARED_TEXTURE_MEMORY_VK_IMAGE_LAYOUT_END_STATE_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryVkImageLayoutEndState, { \
2606
- /*.chain=*/{} WGPU_COMMA \
2325
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedTextureMemoryVkImageLayoutEndState} WGPU_COMMA \
2607
2326
  /*.oldLayout=*/{} WGPU_COMMA \
2608
2327
  /*.newLayout=*/{} WGPU_COMMA \
2609
2328
  })
@@ -2616,7 +2335,7 @@ typedef struct WGPUSharedTextureMemoryZirconHandleDescriptor {
2616
2335
  } WGPUSharedTextureMemoryZirconHandleDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2617
2336
 
2618
2337
  #define WGPU_SHARED_TEXTURE_MEMORY_ZIRCON_HANDLE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryZirconHandleDescriptor, { \
2619
- /*.chain=*/{} WGPU_COMMA \
2338
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedTextureMemoryZirconHandleDescriptor} WGPU_COMMA \
2620
2339
  /*.memoryFD=*/{} WGPU_COMMA \
2621
2340
  /*.allocationSize=*/{} WGPU_COMMA \
2622
2341
  })
@@ -2625,11 +2344,13 @@ typedef struct WGPUSharedTextureMemoryZirconHandleDescriptor {
2625
2344
  typedef struct WGPUStaticSamplerBindingLayout {
2626
2345
  WGPUChainedStruct chain;
2627
2346
  WGPUSampler sampler;
2347
+ uint32_t sampledTextureBinding;
2628
2348
  } WGPUStaticSamplerBindingLayout WGPU_STRUCTURE_ATTRIBUTE;
2629
2349
 
2630
2350
  #define WGPU_STATIC_SAMPLER_BINDING_LAYOUT_INIT WGPU_MAKE_INIT_STRUCT(WGPUStaticSamplerBindingLayout, { \
2631
- /*.chain=*/{} WGPU_COMMA \
2351
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_StaticSamplerBindingLayout} WGPU_COMMA \
2632
2352
  /*.sampler=*/{} WGPU_COMMA \
2353
+ /*.sampledTextureBinding=*/WGPU_LIMIT_U32_UNDEFINED WGPU_COMMA \
2633
2354
  })
2634
2355
 
2635
2356
  typedef struct WGPUStencilFaceState {
@@ -2660,6 +2381,16 @@ typedef struct WGPUStorageTextureBindingLayout {
2660
2381
  /*.viewDimension=*/WGPUTextureViewDimension_2D WGPU_COMMA \
2661
2382
  })
2662
2383
 
2384
+ typedef struct WGPUStringView {
2385
+ WGPU_NULLABLE char const * data;
2386
+ size_t length;
2387
+ } WGPUStringView WGPU_STRUCTURE_ATTRIBUTE;
2388
+
2389
+ #define WGPU_STRING_VIEW_INIT WGPU_MAKE_INIT_STRUCT(WGPUStringView, { \
2390
+ /*.data=*/nullptr WGPU_COMMA \
2391
+ /*.length=*/WGPU_STRLEN WGPU_COMMA \
2392
+ })
2393
+
2663
2394
  typedef struct WGPUSurfaceCapabilities {
2664
2395
  WGPUChainedStructOut * nextInChain;
2665
2396
  WGPUTextureUsage usages;
@@ -2708,119 +2439,98 @@ typedef struct WGPUSurfaceConfiguration {
2708
2439
  /*.presentMode=*/WGPUPresentMode_Fifo WGPU_COMMA \
2709
2440
  })
2710
2441
 
2711
- typedef struct WGPUSurfaceDescriptor {
2712
- WGPUChainedStruct const * nextInChain;
2713
- WGPU_NULLABLE char const * label;
2714
- } WGPUSurfaceDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2442
+ // Can be chained in WGPUSurfaceDescriptor
2443
+ typedef struct WGPUSurfaceDescriptorFromWindowsCoreWindow {
2444
+ WGPUChainedStruct chain;
2445
+ void * coreWindow;
2446
+ } WGPUSurfaceDescriptorFromWindowsCoreWindow WGPU_STRUCTURE_ATTRIBUTE;
2715
2447
 
2716
- #define WGPU_SURFACE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptor, { \
2717
- /*.nextInChain=*/nullptr WGPU_COMMA \
2718
- /*.label=*/nullptr WGPU_COMMA \
2448
+ #define WGPU_SURFACE_DESCRIPTOR_FROM_WINDOWS_CORE_WINDOW_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptorFromWindowsCoreWindow, { \
2449
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SurfaceDescriptorFromWindowsCoreWindow} WGPU_COMMA \
2450
+ /*.coreWindow=*/{} WGPU_COMMA \
2719
2451
  })
2720
2452
 
2721
2453
  // Can be chained in WGPUSurfaceDescriptor
2722
- typedef struct WGPUSurfaceDescriptorFromAndroidNativeWindow {
2454
+ typedef struct WGPUSurfaceDescriptorFromWindowsSwapChainPanel {
2723
2455
  WGPUChainedStruct chain;
2724
- void * window;
2725
- } WGPUSurfaceDescriptorFromAndroidNativeWindow WGPU_STRUCTURE_ATTRIBUTE;
2456
+ void * swapChainPanel;
2457
+ } WGPUSurfaceDescriptorFromWindowsSwapChainPanel WGPU_STRUCTURE_ATTRIBUTE;
2458
+
2459
+ #define WGPU_SURFACE_DESCRIPTOR_FROM_WINDOWS_SWAP_CHAIN_PANEL_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptorFromWindowsSwapChainPanel, { \
2460
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SurfaceDescriptorFromWindowsSwapChainPanel} WGPU_COMMA \
2461
+ /*.swapChainPanel=*/{} WGPU_COMMA \
2462
+ })
2463
+
2464
+ // Can be chained in WGPUSurfaceDescriptor
2465
+ typedef struct WGPUSurfaceSourceXCBWindow {
2466
+ WGPUChainedStruct chain;
2467
+ void * connection;
2468
+ uint32_t window;
2469
+ } WGPUSurfaceSourceXCBWindow WGPU_STRUCTURE_ATTRIBUTE;
2726
2470
 
2727
- #define WGPU_SURFACE_DESCRIPTOR_FROM_ANDROID_NATIVE_WINDOW_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptorFromAndroidNativeWindow, { \
2728
- /*.chain=*/{} WGPU_COMMA \
2471
+ #define WGPU_SURFACE_SOURCE_XCB_WINDOW_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceSourceXCBWindow, { \
2472
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SurfaceSourceXCBWindow} WGPU_COMMA \
2473
+ /*.connection=*/{} WGPU_COMMA \
2729
2474
  /*.window=*/{} WGPU_COMMA \
2730
2475
  })
2731
2476
 
2732
2477
  // Can be chained in WGPUSurfaceDescriptor
2733
- typedef struct WGPUSurfaceDescriptorFromCanvasHTMLSelector {
2478
+ typedef struct WGPUSurfaceSourceAndroidNativeWindow {
2734
2479
  WGPUChainedStruct chain;
2735
- char const * selector;
2736
- } WGPUSurfaceDescriptorFromCanvasHTMLSelector WGPU_STRUCTURE_ATTRIBUTE;
2480
+ void * window;
2481
+ } WGPUSurfaceSourceAndroidNativeWindow WGPU_STRUCTURE_ATTRIBUTE;
2737
2482
 
2738
- #define WGPU_SURFACE_DESCRIPTOR_FROM_CANVAS_HTML_SELECTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptorFromCanvasHTMLSelector, { \
2739
- /*.chain=*/{} WGPU_COMMA \
2740
- /*.selector=*/{} WGPU_COMMA \
2483
+ #define WGPU_SURFACE_SOURCE_ANDROID_NATIVE_WINDOW_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceSourceAndroidNativeWindow, { \
2484
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SurfaceSourceAndroidNativeWindow} WGPU_COMMA \
2485
+ /*.window=*/{} WGPU_COMMA \
2741
2486
  })
2742
2487
 
2743
2488
  // Can be chained in WGPUSurfaceDescriptor
2744
- typedef struct WGPUSurfaceDescriptorFromMetalLayer {
2489
+ typedef struct WGPUSurfaceSourceMetalLayer {
2745
2490
  WGPUChainedStruct chain;
2746
2491
  void * layer;
2747
- } WGPUSurfaceDescriptorFromMetalLayer WGPU_STRUCTURE_ATTRIBUTE;
2492
+ } WGPUSurfaceSourceMetalLayer WGPU_STRUCTURE_ATTRIBUTE;
2748
2493
 
2749
- #define WGPU_SURFACE_DESCRIPTOR_FROM_METAL_LAYER_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptorFromMetalLayer, { \
2750
- /*.chain=*/{} WGPU_COMMA \
2494
+ #define WGPU_SURFACE_SOURCE_METAL_LAYER_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceSourceMetalLayer, { \
2495
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SurfaceSourceMetalLayer} WGPU_COMMA \
2751
2496
  /*.layer=*/{} WGPU_COMMA \
2752
2497
  })
2753
2498
 
2754
2499
  // Can be chained in WGPUSurfaceDescriptor
2755
- typedef struct WGPUSurfaceDescriptorFromWaylandSurface {
2500
+ typedef struct WGPUSurfaceSourceWaylandSurface {
2756
2501
  WGPUChainedStruct chain;
2757
2502
  void * display;
2758
2503
  void * surface;
2759
- } WGPUSurfaceDescriptorFromWaylandSurface WGPU_STRUCTURE_ATTRIBUTE;
2504
+ } WGPUSurfaceSourceWaylandSurface WGPU_STRUCTURE_ATTRIBUTE;
2760
2505
 
2761
- #define WGPU_SURFACE_DESCRIPTOR_FROM_WAYLAND_SURFACE_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptorFromWaylandSurface, { \
2762
- /*.chain=*/{} WGPU_COMMA \
2506
+ #define WGPU_SURFACE_SOURCE_WAYLAND_SURFACE_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceSourceWaylandSurface, { \
2507
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SurfaceSourceWaylandSurface} WGPU_COMMA \
2763
2508
  /*.display=*/{} WGPU_COMMA \
2764
2509
  /*.surface=*/{} WGPU_COMMA \
2765
2510
  })
2766
2511
 
2767
2512
  // Can be chained in WGPUSurfaceDescriptor
2768
- typedef struct WGPUSurfaceDescriptorFromWindowsHWND {
2513
+ typedef struct WGPUSurfaceSourceWindowsHWND {
2769
2514
  WGPUChainedStruct chain;
2770
2515
  void * hinstance;
2771
2516
  void * hwnd;
2772
- } WGPUSurfaceDescriptorFromWindowsHWND WGPU_STRUCTURE_ATTRIBUTE;
2517
+ } WGPUSurfaceSourceWindowsHWND WGPU_STRUCTURE_ATTRIBUTE;
2773
2518
 
2774
- #define WGPU_SURFACE_DESCRIPTOR_FROM_WINDOWS_HWND_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptorFromWindowsHWND, { \
2775
- /*.chain=*/{} WGPU_COMMA \
2519
+ #define WGPU_SURFACE_SOURCE_WINDOWS_HWND_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceSourceWindowsHWND, { \
2520
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SurfaceSourceWindowsHWND} WGPU_COMMA \
2776
2521
  /*.hinstance=*/{} WGPU_COMMA \
2777
2522
  /*.hwnd=*/{} WGPU_COMMA \
2778
2523
  })
2779
2524
 
2780
2525
  // Can be chained in WGPUSurfaceDescriptor
2781
- typedef struct WGPUSurfaceDescriptorFromWindowsCoreWindow {
2782
- WGPUChainedStruct chain;
2783
- void * coreWindow;
2784
- } WGPUSurfaceDescriptorFromWindowsCoreWindow WGPU_STRUCTURE_ATTRIBUTE;
2785
-
2786
- #define WGPU_SURFACE_DESCRIPTOR_FROM_WINDOWS_CORE_WINDOW_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptorFromWindowsCoreWindow, { \
2787
- /*.chain=*/{} WGPU_COMMA \
2788
- /*.coreWindow=*/{} WGPU_COMMA \
2789
- })
2790
-
2791
- // Can be chained in WGPUSurfaceDescriptor
2792
- typedef struct WGPUSurfaceDescriptorFromWindowsSwapChainPanel {
2793
- WGPUChainedStruct chain;
2794
- void * swapChainPanel;
2795
- } WGPUSurfaceDescriptorFromWindowsSwapChainPanel WGPU_STRUCTURE_ATTRIBUTE;
2796
-
2797
- #define WGPU_SURFACE_DESCRIPTOR_FROM_WINDOWS_SWAP_CHAIN_PANEL_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptorFromWindowsSwapChainPanel, { \
2798
- /*.chain=*/{} WGPU_COMMA \
2799
- /*.swapChainPanel=*/{} WGPU_COMMA \
2800
- })
2801
-
2802
- // Can be chained in WGPUSurfaceDescriptor
2803
- typedef struct WGPUSurfaceDescriptorFromXcbWindow {
2804
- WGPUChainedStruct chain;
2805
- void * connection;
2806
- uint32_t window;
2807
- } WGPUSurfaceDescriptorFromXcbWindow WGPU_STRUCTURE_ATTRIBUTE;
2808
-
2809
- #define WGPU_SURFACE_DESCRIPTOR_FROM_XCB_WINDOW_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptorFromXcbWindow, { \
2810
- /*.chain=*/{} WGPU_COMMA \
2811
- /*.connection=*/{} WGPU_COMMA \
2812
- /*.window=*/{} WGPU_COMMA \
2813
- })
2814
-
2815
- // Can be chained in WGPUSurfaceDescriptor
2816
- typedef struct WGPUSurfaceDescriptorFromXlibWindow {
2526
+ typedef struct WGPUSurfaceSourceXlibWindow {
2817
2527
  WGPUChainedStruct chain;
2818
2528
  void * display;
2819
2529
  uint64_t window;
2820
- } WGPUSurfaceDescriptorFromXlibWindow WGPU_STRUCTURE_ATTRIBUTE;
2530
+ } WGPUSurfaceSourceXlibWindow WGPU_STRUCTURE_ATTRIBUTE;
2821
2531
 
2822
- #define WGPU_SURFACE_DESCRIPTOR_FROM_XLIB_WINDOW_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptorFromXlibWindow, { \
2823
- /*.chain=*/{} WGPU_COMMA \
2532
+ #define WGPU_SURFACE_SOURCE_XLIB_WINDOW_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceSourceXlibWindow, { \
2533
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SurfaceSourceXlibWindow} WGPU_COMMA \
2824
2534
  /*.display=*/{} WGPU_COMMA \
2825
2535
  /*.window=*/{} WGPU_COMMA \
2826
2536
  })
@@ -2837,26 +2547,6 @@ typedef struct WGPUSurfaceTexture {
2837
2547
  /*.status=*/{} WGPU_COMMA \
2838
2548
  })
2839
2549
 
2840
- typedef struct WGPUSwapChainDescriptor {
2841
- WGPUChainedStruct const * nextInChain;
2842
- WGPU_NULLABLE char const * label;
2843
- WGPUTextureUsage usage;
2844
- WGPUTextureFormat format;
2845
- uint32_t width;
2846
- uint32_t height;
2847
- WGPUPresentMode presentMode;
2848
- } WGPUSwapChainDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2849
-
2850
- #define WGPU_SWAP_CHAIN_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSwapChainDescriptor, { \
2851
- /*.nextInChain=*/nullptr WGPU_COMMA \
2852
- /*.label=*/nullptr WGPU_COMMA \
2853
- /*.usage=*/{} WGPU_COMMA \
2854
- /*.format=*/{} WGPU_COMMA \
2855
- /*.width=*/{} WGPU_COMMA \
2856
- /*.height=*/{} WGPU_COMMA \
2857
- /*.presentMode=*/{} WGPU_COMMA \
2858
- })
2859
-
2860
2550
  typedef struct WGPUTextureBindingLayout {
2861
2551
  WGPUChainedStruct const * nextInChain;
2862
2552
  WGPUTextureSampleType sampleType;
@@ -2878,7 +2568,7 @@ typedef struct WGPUTextureBindingViewDimensionDescriptor {
2878
2568
  } WGPUTextureBindingViewDimensionDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2879
2569
 
2880
2570
  #define WGPU_TEXTURE_BINDING_VIEW_DIMENSION_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUTextureBindingViewDimensionDescriptor, { \
2881
- /*.chain=*/{} WGPU_COMMA \
2571
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_TextureBindingViewDimensionDescriptor} WGPU_COMMA \
2882
2572
  /*.textureBindingViewDimension=*/WGPUTextureViewDimension_Undefined WGPU_COMMA \
2883
2573
  })
2884
2574
 
@@ -2896,30 +2586,6 @@ typedef struct WGPUTextureDataLayout {
2896
2586
  /*.rowsPerImage=*/WGPU_COPY_STRIDE_UNDEFINED WGPU_COMMA \
2897
2587
  })
2898
2588
 
2899
- typedef struct WGPUTextureViewDescriptor {
2900
- WGPUChainedStruct const * nextInChain;
2901
- WGPU_NULLABLE char const * label;
2902
- WGPUTextureFormat format;
2903
- WGPUTextureViewDimension dimension;
2904
- uint32_t baseMipLevel;
2905
- uint32_t mipLevelCount;
2906
- uint32_t baseArrayLayer;
2907
- uint32_t arrayLayerCount;
2908
- WGPUTextureAspect aspect;
2909
- } WGPUTextureViewDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2910
-
2911
- #define WGPU_TEXTURE_VIEW_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUTextureViewDescriptor, { \
2912
- /*.nextInChain=*/nullptr WGPU_COMMA \
2913
- /*.label=*/nullptr WGPU_COMMA \
2914
- /*.format=*/WGPUTextureFormat_Undefined WGPU_COMMA \
2915
- /*.dimension=*/WGPUTextureViewDimension_Undefined WGPU_COMMA \
2916
- /*.baseMipLevel=*/0 WGPU_COMMA \
2917
- /*.mipLevelCount=*/WGPU_MIP_LEVEL_COUNT_UNDEFINED WGPU_COMMA \
2918
- /*.baseArrayLayer=*/0 WGPU_COMMA \
2919
- /*.arrayLayerCount=*/WGPU_ARRAY_LAYER_COUNT_UNDEFINED WGPU_COMMA \
2920
- /*.aspect=*/WGPUTextureAspect_All WGPU_COMMA \
2921
- })
2922
-
2923
2589
  typedef struct WGPUUncapturedErrorCallbackInfo {
2924
2590
  WGPUChainedStruct const * nextInChain;
2925
2591
  WGPUErrorCallback callback;
@@ -2963,7 +2629,7 @@ typedef struct WGPUYCbCrVkDescriptor {
2963
2629
  } WGPUYCbCrVkDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2964
2630
 
2965
2631
  #define WGPU_Y_CB_CR_VK_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUYCbCrVkDescriptor, { \
2966
- /*.chain=*/{} WGPU_COMMA \
2632
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_YCbCrVkDescriptor} WGPU_COMMA \
2967
2633
  /*.vkFormat=*/0 WGPU_COMMA \
2968
2634
  /*.vkYCbCrModel=*/0 WGPU_COMMA \
2969
2635
  /*.vkYCbCrRange=*/0 WGPU_COMMA \
@@ -2986,8 +2652,33 @@ typedef struct WGPUAHardwareBufferProperties {
2986
2652
  /*.yCbCrInfo=*/WGPU_Y_CB_CR_VK_DESCRIPTOR_INIT WGPU_COMMA \
2987
2653
  })
2988
2654
 
2655
+ typedef struct WGPUAdapterInfo {
2656
+ WGPUChainedStructOut * nextInChain;
2657
+ WGPUStringView vendor;
2658
+ WGPUStringView architecture;
2659
+ WGPUStringView device;
2660
+ WGPUStringView description;
2661
+ WGPUBackendType backendType;
2662
+ WGPUAdapterType adapterType;
2663
+ uint32_t vendorID;
2664
+ uint32_t deviceID;
2665
+ WGPUBool compatibilityMode;
2666
+ } WGPUAdapterInfo WGPU_STRUCTURE_ATTRIBUTE;
2667
+
2668
+ #define WGPU_ADAPTER_INFO_INIT WGPU_MAKE_INIT_STRUCT(WGPUAdapterInfo, { \
2669
+ /*.nextInChain=*/nullptr WGPU_COMMA \
2670
+ /*.vendor=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
2671
+ /*.architecture=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
2672
+ /*.device=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
2673
+ /*.description=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
2674
+ /*.backendType=*/{} WGPU_COMMA \
2675
+ /*.adapterType=*/{} WGPU_COMMA \
2676
+ /*.vendorID=*/{} WGPU_COMMA \
2677
+ /*.deviceID=*/{} WGPU_COMMA \
2678
+ /*.compatibilityMode=*/false WGPU_COMMA \
2679
+ })
2680
+
2989
2681
  // Can be chained in WGPUAdapterInfo
2990
- // Can be chained in WGPUAdapterProperties
2991
2682
  typedef struct WGPUAdapterPropertiesMemoryHeaps {
2992
2683
  WGPUChainedStructOut chain;
2993
2684
  size_t heapCount;
@@ -2995,14 +2686,14 @@ typedef struct WGPUAdapterPropertiesMemoryHeaps {
2995
2686
  } WGPUAdapterPropertiesMemoryHeaps WGPU_STRUCTURE_ATTRIBUTE;
2996
2687
 
2997
2688
  #define WGPU_ADAPTER_PROPERTIES_MEMORY_HEAPS_INIT WGPU_MAKE_INIT_STRUCT(WGPUAdapterPropertiesMemoryHeaps, { \
2998
- /*.chain=*/{} WGPU_COMMA \
2689
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_AdapterPropertiesMemoryHeaps} WGPU_COMMA \
2999
2690
  /*.heapCount=*/{} WGPU_COMMA \
3000
2691
  /*.heapInfo=*/{} WGPU_COMMA \
3001
2692
  })
3002
2693
 
3003
2694
  typedef struct WGPUBindGroupDescriptor {
3004
2695
  WGPUChainedStruct const * nextInChain;
3005
- WGPU_NULLABLE char const * label;
2696
+ WGPUStringView label;
3006
2697
  WGPUBindGroupLayout layout;
3007
2698
  size_t entryCount;
3008
2699
  WGPUBindGroupEntry const * entries;
@@ -3010,7 +2701,7 @@ typedef struct WGPUBindGroupDescriptor {
3010
2701
 
3011
2702
  #define WGPU_BIND_GROUP_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUBindGroupDescriptor, { \
3012
2703
  /*.nextInChain=*/nullptr WGPU_COMMA \
3013
- /*.label=*/nullptr WGPU_COMMA \
2704
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3014
2705
  /*.layout=*/{} WGPU_COMMA \
3015
2706
  /*.entryCount=*/{} WGPU_COMMA \
3016
2707
  /*.entries=*/{} WGPU_COMMA \
@@ -3046,34 +2737,113 @@ typedef struct WGPUBlendState {
3046
2737
  /*.alpha=*/WGPU_BLEND_COMPONENT_INIT WGPU_COMMA \
3047
2738
  })
3048
2739
 
3049
- typedef struct WGPUCompilationInfo {
2740
+ typedef struct WGPUBufferDescriptor {
3050
2741
  WGPUChainedStruct const * nextInChain;
3051
- size_t messageCount;
3052
- WGPUCompilationMessage const * messages;
3053
- } WGPUCompilationInfo WGPU_STRUCTURE_ATTRIBUTE;
2742
+ WGPUStringView label;
2743
+ WGPUBufferUsage usage;
2744
+ uint64_t size;
2745
+ WGPUBool mappedAtCreation;
2746
+ } WGPUBufferDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3054
2747
 
3055
- #define WGPU_COMPILATION_INFO_INIT WGPU_MAKE_INIT_STRUCT(WGPUCompilationInfo, { \
2748
+ #define WGPU_BUFFER_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUBufferDescriptor, { \
3056
2749
  /*.nextInChain=*/nullptr WGPU_COMMA \
3057
- /*.messageCount=*/{} WGPU_COMMA \
3058
- /*.messages=*/{} WGPU_COMMA \
2750
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
2751
+ /*.usage=*/{} WGPU_COMMA \
2752
+ /*.size=*/{} WGPU_COMMA \
2753
+ /*.mappedAtCreation=*/false WGPU_COMMA \
2754
+ })
2755
+
2756
+ typedef struct WGPUCommandBufferDescriptor {
2757
+ WGPUChainedStruct const * nextInChain;
2758
+ WGPUStringView label;
2759
+ } WGPUCommandBufferDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2760
+
2761
+ #define WGPU_COMMAND_BUFFER_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUCommandBufferDescriptor, { \
2762
+ /*.nextInChain=*/nullptr WGPU_COMMA \
2763
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
2764
+ })
2765
+
2766
+ typedef struct WGPUCommandEncoderDescriptor {
2767
+ WGPUChainedStruct const * nextInChain;
2768
+ WGPUStringView label;
2769
+ } WGPUCommandEncoderDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2770
+
2771
+ #define WGPU_COMMAND_ENCODER_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUCommandEncoderDescriptor, { \
2772
+ /*.nextInChain=*/nullptr WGPU_COMMA \
2773
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
2774
+ })
2775
+
2776
+ typedef struct WGPUCompilationMessage {
2777
+ WGPUChainedStruct const * nextInChain;
2778
+ WGPUStringView message;
2779
+ WGPUCompilationMessageType type;
2780
+ uint64_t lineNum;
2781
+ uint64_t linePos;
2782
+ uint64_t offset;
2783
+ uint64_t length;
2784
+ uint64_t utf16LinePos;
2785
+ uint64_t utf16Offset;
2786
+ uint64_t utf16Length;
2787
+ } WGPUCompilationMessage WGPU_STRUCTURE_ATTRIBUTE;
2788
+
2789
+ #define WGPU_COMPILATION_MESSAGE_INIT WGPU_MAKE_INIT_STRUCT(WGPUCompilationMessage, { \
2790
+ /*.nextInChain=*/nullptr WGPU_COMMA \
2791
+ /*.message=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
2792
+ /*.type=*/{} WGPU_COMMA \
2793
+ /*.lineNum=*/{} WGPU_COMMA \
2794
+ /*.linePos=*/{} WGPU_COMMA \
2795
+ /*.offset=*/{} WGPU_COMMA \
2796
+ /*.length=*/{} WGPU_COMMA \
2797
+ /*.utf16LinePos=*/{} WGPU_COMMA \
2798
+ /*.utf16Offset=*/{} WGPU_COMMA \
2799
+ /*.utf16Length=*/{} WGPU_COMMA \
3059
2800
  })
3060
2801
 
3061
2802
  typedef struct WGPUComputePassDescriptor {
3062
2803
  WGPUChainedStruct const * nextInChain;
3063
- WGPU_NULLABLE char const * label;
2804
+ WGPUStringView label;
3064
2805
  WGPU_NULLABLE WGPUComputePassTimestampWrites const * timestampWrites;
3065
2806
  } WGPUComputePassDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3066
2807
 
3067
2808
  #define WGPU_COMPUTE_PASS_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUComputePassDescriptor, { \
3068
2809
  /*.nextInChain=*/nullptr WGPU_COMMA \
3069
- /*.label=*/nullptr WGPU_COMMA \
2810
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3070
2811
  /*.timestampWrites=*/nullptr WGPU_COMMA \
3071
2812
  })
3072
2813
 
2814
+ typedef struct WGPUConstantEntry {
2815
+ WGPUChainedStruct const * nextInChain;
2816
+ WGPUStringView key;
2817
+ double value;
2818
+ } WGPUConstantEntry WGPU_STRUCTURE_ATTRIBUTE;
2819
+
2820
+ #define WGPU_CONSTANT_ENTRY_INIT WGPU_MAKE_INIT_STRUCT(WGPUConstantEntry, { \
2821
+ /*.nextInChain=*/nullptr WGPU_COMMA \
2822
+ /*.key=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
2823
+ /*.value=*/{} WGPU_COMMA \
2824
+ })
2825
+
2826
+ // Can be chained in WGPUDeviceDescriptor
2827
+ typedef struct WGPUDawnCacheDeviceDescriptor {
2828
+ WGPUChainedStruct chain;
2829
+ WGPUStringView isolationKey;
2830
+ WGPUDawnLoadCacheDataFunction loadDataFunction;
2831
+ WGPUDawnStoreCacheDataFunction storeDataFunction;
2832
+ void * functionUserdata;
2833
+ } WGPUDawnCacheDeviceDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2834
+
2835
+ #define WGPU_DAWN_CACHE_DEVICE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUDawnCacheDeviceDescriptor, { \
2836
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DawnCacheDeviceDescriptor} WGPU_COMMA \
2837
+ /*.isolationKey=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
2838
+ /*.loadDataFunction=*/nullptr WGPU_COMMA \
2839
+ /*.storeDataFunction=*/nullptr WGPU_COMMA \
2840
+ /*.functionUserdata=*/nullptr WGPU_COMMA \
2841
+ })
2842
+
3073
2843
  typedef struct WGPUDepthStencilState {
3074
2844
  WGPUChainedStruct const * nextInChain;
3075
2845
  WGPUTextureFormat format;
3076
- WGPUBool depthWriteEnabled;
2846
+ WGPUOptionalBool depthWriteEnabled;
3077
2847
  WGPUCompareFunction depthCompare;
3078
2848
  WGPUStencilFaceState stencilFront;
3079
2849
  WGPUStencilFaceState stencilBack;
@@ -3087,7 +2857,7 @@ typedef struct WGPUDepthStencilState {
3087
2857
  #define WGPU_DEPTH_STENCIL_STATE_INIT WGPU_MAKE_INIT_STRUCT(WGPUDepthStencilState, { \
3088
2858
  /*.nextInChain=*/nullptr WGPU_COMMA \
3089
2859
  /*.format=*/{} WGPU_COMMA \
3090
- /*.depthWriteEnabled=*/false WGPU_COMMA \
2860
+ /*.depthWriteEnabled=*/WGPUOptionalBool_Undefined WGPU_COMMA \
3091
2861
  /*.depthCompare=*/WGPUCompareFunction_Undefined WGPU_COMMA \
3092
2862
  /*.stencilFront=*/WGPU_STENCIL_FACE_STATE_INIT WGPU_COMMA \
3093
2863
  /*.stencilBack=*/WGPU_STENCIL_FACE_STATE_INIT WGPU_COMMA \
@@ -3106,14 +2876,14 @@ typedef struct WGPUDrmFormatCapabilities {
3106
2876
  } WGPUDrmFormatCapabilities WGPU_STRUCTURE_ATTRIBUTE;
3107
2877
 
3108
2878
  #define WGPU_DRM_FORMAT_CAPABILITIES_INIT WGPU_MAKE_INIT_STRUCT(WGPUDrmFormatCapabilities, { \
3109
- /*.chain=*/{} WGPU_COMMA \
2879
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_DrmFormatCapabilities} WGPU_COMMA \
3110
2880
  /*.propertiesCount=*/{} WGPU_COMMA \
3111
2881
  /*.properties=*/{} WGPU_COMMA \
3112
2882
  })
3113
2883
 
3114
2884
  typedef struct WGPUExternalTextureDescriptor {
3115
2885
  WGPUChainedStruct const * nextInChain;
3116
- WGPU_NULLABLE char const * label;
2886
+ WGPUStringView label;
3117
2887
  WGPUTextureView plane0;
3118
2888
  WGPU_NULLABLE WGPUTextureView plane1;
3119
2889
  WGPUOrigin2D visibleOrigin;
@@ -3129,7 +2899,7 @@ typedef struct WGPUExternalTextureDescriptor {
3129
2899
 
3130
2900
  #define WGPU_EXTERNAL_TEXTURE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUExternalTextureDescriptor, { \
3131
2901
  /*.nextInChain=*/nullptr WGPU_COMMA \
3132
- /*.label=*/nullptr WGPU_COMMA \
2902
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3133
2903
  /*.plane0=*/{} WGPU_COMMA \
3134
2904
  /*.plane1=*/nullptr WGPU_COMMA \
3135
2905
  /*.visibleOrigin=*/WGPU_ORIGIN_2D_INIT WGPU_COMMA \
@@ -3201,6 +2971,22 @@ typedef struct WGPUInstanceDescriptor {
3201
2971
  /*.features=*/WGPU_INSTANCE_FEATURES_INIT WGPU_COMMA \
3202
2972
  })
3203
2973
 
2974
+ typedef struct WGPUPipelineLayoutDescriptor {
2975
+ WGPUChainedStruct const * nextInChain;
2976
+ WGPUStringView label;
2977
+ size_t bindGroupLayoutCount;
2978
+ WGPUBindGroupLayout const * bindGroupLayouts;
2979
+ uint32_t immediateDataRangeByteSize;
2980
+ } WGPUPipelineLayoutDescriptor WGPU_STRUCTURE_ATTRIBUTE;
2981
+
2982
+ #define WGPU_PIPELINE_LAYOUT_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUPipelineLayoutDescriptor, { \
2983
+ /*.nextInChain=*/nullptr WGPU_COMMA \
2984
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
2985
+ /*.bindGroupLayoutCount=*/{} WGPU_COMMA \
2986
+ /*.bindGroupLayouts=*/{} WGPU_COMMA \
2987
+ /*.immediateDataRangeByteSize=*/0 WGPU_COMMA \
2988
+ })
2989
+
3204
2990
  // Can be chained in WGPUPipelineLayoutDescriptor
3205
2991
  typedef struct WGPUPipelineLayoutPixelLocalStorage {
3206
2992
  WGPUChainedStruct chain;
@@ -3210,26 +2996,66 @@ typedef struct WGPUPipelineLayoutPixelLocalStorage {
3210
2996
  } WGPUPipelineLayoutPixelLocalStorage WGPU_STRUCTURE_ATTRIBUTE;
3211
2997
 
3212
2998
  #define WGPU_PIPELINE_LAYOUT_PIXEL_LOCAL_STORAGE_INIT WGPU_MAKE_INIT_STRUCT(WGPUPipelineLayoutPixelLocalStorage, { \
3213
- /*.chain=*/{} WGPU_COMMA \
2999
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_PipelineLayoutPixelLocalStorage} WGPU_COMMA \
3214
3000
  /*.totalPixelLocalStorageSize=*/{} WGPU_COMMA \
3215
3001
  /*.storageAttachmentCount=*/0 WGPU_COMMA \
3216
3002
  /*.storageAttachments=*/{} WGPU_COMMA \
3217
3003
  })
3218
3004
 
3219
- typedef struct WGPUProgrammableStageDescriptor {
3005
+ typedef struct WGPUQuerySetDescriptor {
3220
3006
  WGPUChainedStruct const * nextInChain;
3221
- WGPUShaderModule module;
3222
- WGPU_NULLABLE char const * entryPoint;
3223
- size_t constantCount;
3224
- WGPUConstantEntry const * constants;
3225
- } WGPUProgrammableStageDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3007
+ WGPUStringView label;
3008
+ WGPUQueryType type;
3009
+ uint32_t count;
3010
+ } WGPUQuerySetDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3226
3011
 
3227
- #define WGPU_PROGRAMMABLE_STAGE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUProgrammableStageDescriptor, { \
3012
+ #define WGPU_QUERY_SET_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUQuerySetDescriptor, { \
3228
3013
  /*.nextInChain=*/nullptr WGPU_COMMA \
3229
- /*.module=*/{} WGPU_COMMA \
3230
- /*.entryPoint=*/nullptr WGPU_COMMA \
3231
- /*.constantCount=*/0 WGPU_COMMA \
3232
- /*.constants=*/{} WGPU_COMMA \
3014
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3015
+ /*.type=*/{} WGPU_COMMA \
3016
+ /*.count=*/{} WGPU_COMMA \
3017
+ })
3018
+
3019
+ typedef struct WGPUQueueDescriptor {
3020
+ WGPUChainedStruct const * nextInChain;
3021
+ WGPUStringView label;
3022
+ } WGPUQueueDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3023
+
3024
+ #define WGPU_QUEUE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUQueueDescriptor, { \
3025
+ /*.nextInChain=*/nullptr WGPU_COMMA \
3026
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3027
+ })
3028
+
3029
+ typedef struct WGPURenderBundleDescriptor {
3030
+ WGPUChainedStruct const * nextInChain;
3031
+ WGPUStringView label;
3032
+ } WGPURenderBundleDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3033
+
3034
+ #define WGPU_RENDER_BUNDLE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPURenderBundleDescriptor, { \
3035
+ /*.nextInChain=*/nullptr WGPU_COMMA \
3036
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3037
+ })
3038
+
3039
+ typedef struct WGPURenderBundleEncoderDescriptor {
3040
+ WGPUChainedStruct const * nextInChain;
3041
+ WGPUStringView label;
3042
+ size_t colorFormatCount;
3043
+ WGPUTextureFormat const * colorFormats;
3044
+ WGPUTextureFormat depthStencilFormat;
3045
+ uint32_t sampleCount;
3046
+ WGPUBool depthReadOnly;
3047
+ WGPUBool stencilReadOnly;
3048
+ } WGPURenderBundleEncoderDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3049
+
3050
+ #define WGPU_RENDER_BUNDLE_ENCODER_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPURenderBundleEncoderDescriptor, { \
3051
+ /*.nextInChain=*/nullptr WGPU_COMMA \
3052
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3053
+ /*.colorFormatCount=*/{} WGPU_COMMA \
3054
+ /*.colorFormats=*/{} WGPU_COMMA \
3055
+ /*.depthStencilFormat=*/WGPUTextureFormat_Undefined WGPU_COMMA \
3056
+ /*.sampleCount=*/1 WGPU_COMMA \
3057
+ /*.depthReadOnly=*/false WGPU_COMMA \
3058
+ /*.stencilReadOnly=*/false WGPU_COMMA \
3233
3059
  })
3234
3060
 
3235
3061
  typedef struct WGPURenderPassColorAttachment {
@@ -3280,6 +3106,77 @@ typedef struct WGPURequiredLimits {
3280
3106
  /*.limits=*/WGPU_LIMITS_INIT WGPU_COMMA \
3281
3107
  })
3282
3108
 
3109
+ typedef struct WGPUSamplerDescriptor {
3110
+ WGPUChainedStruct const * nextInChain;
3111
+ WGPUStringView label;
3112
+ WGPUAddressMode addressModeU;
3113
+ WGPUAddressMode addressModeV;
3114
+ WGPUAddressMode addressModeW;
3115
+ WGPUFilterMode magFilter;
3116
+ WGPUFilterMode minFilter;
3117
+ WGPUMipmapFilterMode mipmapFilter;
3118
+ float lodMinClamp;
3119
+ float lodMaxClamp;
3120
+ WGPUCompareFunction compare;
3121
+ uint16_t maxAnisotropy;
3122
+ } WGPUSamplerDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3123
+
3124
+ #define WGPU_SAMPLER_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSamplerDescriptor, { \
3125
+ /*.nextInChain=*/nullptr WGPU_COMMA \
3126
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3127
+ /*.addressModeU=*/WGPUAddressMode_ClampToEdge WGPU_COMMA \
3128
+ /*.addressModeV=*/WGPUAddressMode_ClampToEdge WGPU_COMMA \
3129
+ /*.addressModeW=*/WGPUAddressMode_ClampToEdge WGPU_COMMA \
3130
+ /*.magFilter=*/WGPUFilterMode_Nearest WGPU_COMMA \
3131
+ /*.minFilter=*/WGPUFilterMode_Nearest WGPU_COMMA \
3132
+ /*.mipmapFilter=*/WGPUMipmapFilterMode_Nearest WGPU_COMMA \
3133
+ /*.lodMinClamp=*/0.0f WGPU_COMMA \
3134
+ /*.lodMaxClamp=*/32.0f WGPU_COMMA \
3135
+ /*.compare=*/WGPUCompareFunction_Undefined WGPU_COMMA \
3136
+ /*.maxAnisotropy=*/1 WGPU_COMMA \
3137
+ })
3138
+
3139
+ typedef struct WGPUShaderModuleDescriptor {
3140
+ WGPUChainedStruct const * nextInChain;
3141
+ WGPUStringView label;
3142
+ } WGPUShaderModuleDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3143
+
3144
+ #define WGPU_SHADER_MODULE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUShaderModuleDescriptor, { \
3145
+ /*.nextInChain=*/nullptr WGPU_COMMA \
3146
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3147
+ })
3148
+
3149
+ // Can be chained in WGPUShaderModuleDescriptor
3150
+ typedef struct WGPUShaderSourceWGSL {
3151
+ WGPUChainedStruct chain;
3152
+ WGPUStringView code;
3153
+ } WGPUShaderSourceWGSL WGPU_STRUCTURE_ATTRIBUTE;
3154
+
3155
+ #define WGPU_SHADER_SOURCE_WGSL_INIT WGPU_MAKE_INIT_STRUCT(WGPUShaderSourceWGSL, { \
3156
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_ShaderSourceWGSL} WGPU_COMMA \
3157
+ /*.code=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3158
+ })
3159
+
3160
+ typedef struct WGPUSharedBufferMemoryDescriptor {
3161
+ WGPUChainedStruct const * nextInChain;
3162
+ WGPUStringView label;
3163
+ } WGPUSharedBufferMemoryDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3164
+
3165
+ #define WGPU_SHARED_BUFFER_MEMORY_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedBufferMemoryDescriptor, { \
3166
+ /*.nextInChain=*/nullptr WGPU_COMMA \
3167
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3168
+ })
3169
+
3170
+ typedef struct WGPUSharedFenceDescriptor {
3171
+ WGPUChainedStruct const * nextInChain;
3172
+ WGPUStringView label;
3173
+ } WGPUSharedFenceDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3174
+
3175
+ #define WGPU_SHARED_FENCE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedFenceDescriptor, { \
3176
+ /*.nextInChain=*/nullptr WGPU_COMMA \
3177
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3178
+ })
3179
+
3283
3180
  // Can be chained in WGPUSharedTextureMemoryProperties
3284
3181
  typedef struct WGPUSharedTextureMemoryAHardwareBufferProperties {
3285
3182
  WGPUChainedStructOut chain;
@@ -3287,10 +3184,20 @@ typedef struct WGPUSharedTextureMemoryAHardwareBufferProperties {
3287
3184
  } WGPUSharedTextureMemoryAHardwareBufferProperties WGPU_STRUCTURE_ATTRIBUTE;
3288
3185
 
3289
3186
  #define WGPU_SHARED_TEXTURE_MEMORY_A_HARDWARE_BUFFER_PROPERTIES_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryAHardwareBufferProperties, { \
3290
- /*.chain=*/{} WGPU_COMMA \
3187
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedTextureMemoryAHardwareBufferProperties} WGPU_COMMA \
3291
3188
  /*.yCbCrInfo=*/WGPU_Y_CB_CR_VK_DESCRIPTOR_INIT WGPU_COMMA \
3292
3189
  })
3293
3190
 
3191
+ typedef struct WGPUSharedTextureMemoryDescriptor {
3192
+ WGPUChainedStruct const * nextInChain;
3193
+ WGPUStringView label;
3194
+ } WGPUSharedTextureMemoryDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3195
+
3196
+ #define WGPU_SHARED_TEXTURE_MEMORY_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryDescriptor, { \
3197
+ /*.nextInChain=*/nullptr WGPU_COMMA \
3198
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3199
+ })
3200
+
3294
3201
  // Can be chained in WGPUSharedTextureMemoryDescriptor
3295
3202
  typedef struct WGPUSharedTextureMemoryDmaBufDescriptor {
3296
3203
  WGPUChainedStruct chain;
@@ -3302,7 +3209,7 @@ typedef struct WGPUSharedTextureMemoryDmaBufDescriptor {
3302
3209
  } WGPUSharedTextureMemoryDmaBufDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3303
3210
 
3304
3211
  #define WGPU_SHARED_TEXTURE_MEMORY_DMA_BUF_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSharedTextureMemoryDmaBufDescriptor, { \
3305
- /*.chain=*/{} WGPU_COMMA \
3212
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SharedTextureMemoryDmaBufDescriptor} WGPU_COMMA \
3306
3213
  /*.size=*/WGPU_EXTENT_3D_INIT WGPU_COMMA \
3307
3214
  /*.drmFormat=*/{} WGPU_COMMA \
3308
3215
  /*.drmModifier=*/{} WGPU_COMMA \
@@ -3334,9 +3241,30 @@ typedef struct WGPUSupportedLimits {
3334
3241
  /*.limits=*/WGPU_LIMITS_INIT WGPU_COMMA \
3335
3242
  })
3336
3243
 
3244
+ typedef struct WGPUSurfaceDescriptor {
3245
+ WGPUChainedStruct const * nextInChain;
3246
+ WGPUStringView label;
3247
+ } WGPUSurfaceDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3248
+
3249
+ #define WGPU_SURFACE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceDescriptor, { \
3250
+ /*.nextInChain=*/nullptr WGPU_COMMA \
3251
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3252
+ })
3253
+
3254
+ // Can be chained in WGPUSurfaceDescriptor
3255
+ typedef struct WGPUSurfaceSourceCanvasHTMLSelector_Emscripten {
3256
+ WGPUChainedStruct chain;
3257
+ WGPUStringView selector;
3258
+ } WGPUSurfaceSourceCanvasHTMLSelector_Emscripten WGPU_STRUCTURE_ATTRIBUTE;
3259
+
3260
+ #define WGPU_SURFACE_SOURCE_CANVAS_HTML_SELECTOR__EMSCRIPTEN_INIT WGPU_MAKE_INIT_STRUCT(WGPUSurfaceSourceCanvasHTMLSelector_Emscripten, { \
3261
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_SurfaceSourceCanvasHTMLSelector_Emscripten} WGPU_COMMA \
3262
+ /*.selector=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3263
+ })
3264
+
3337
3265
  typedef struct WGPUTextureDescriptor {
3338
3266
  WGPUChainedStruct const * nextInChain;
3339
- WGPU_NULLABLE char const * label;
3267
+ WGPUStringView label;
3340
3268
  WGPUTextureUsage usage;
3341
3269
  WGPUTextureDimension dimension;
3342
3270
  WGPUExtent3D size;
@@ -3349,7 +3277,7 @@ typedef struct WGPUTextureDescriptor {
3349
3277
 
3350
3278
  #define WGPU_TEXTURE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUTextureDescriptor, { \
3351
3279
  /*.nextInChain=*/nullptr WGPU_COMMA \
3352
- /*.label=*/nullptr WGPU_COMMA \
3280
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3353
3281
  /*.usage=*/{} WGPU_COMMA \
3354
3282
  /*.dimension=*/WGPUTextureDimension_2D WGPU_COMMA \
3355
3283
  /*.size=*/WGPU_EXTENT_3D_INIT WGPU_COMMA \
@@ -3360,6 +3288,32 @@ typedef struct WGPUTextureDescriptor {
3360
3288
  /*.viewFormats=*/{} WGPU_COMMA \
3361
3289
  })
3362
3290
 
3291
+ typedef struct WGPUTextureViewDescriptor {
3292
+ WGPUChainedStruct const * nextInChain;
3293
+ WGPUStringView label;
3294
+ WGPUTextureFormat format;
3295
+ WGPUTextureViewDimension dimension;
3296
+ uint32_t baseMipLevel;
3297
+ uint32_t mipLevelCount;
3298
+ uint32_t baseArrayLayer;
3299
+ uint32_t arrayLayerCount;
3300
+ WGPUTextureAspect aspect;
3301
+ WGPUTextureUsage usage;
3302
+ } WGPUTextureViewDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3303
+
3304
+ #define WGPU_TEXTURE_VIEW_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUTextureViewDescriptor, { \
3305
+ /*.nextInChain=*/nullptr WGPU_COMMA \
3306
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3307
+ /*.format=*/WGPUTextureFormat_Undefined WGPU_COMMA \
3308
+ /*.dimension=*/WGPUTextureViewDimension_Undefined WGPU_COMMA \
3309
+ /*.baseMipLevel=*/0 WGPU_COMMA \
3310
+ /*.mipLevelCount=*/WGPU_MIP_LEVEL_COUNT_UNDEFINED WGPU_COMMA \
3311
+ /*.baseArrayLayer=*/0 WGPU_COMMA \
3312
+ /*.arrayLayerCount=*/WGPU_ARRAY_LAYER_COUNT_UNDEFINED WGPU_COMMA \
3313
+ /*.aspect=*/WGPUTextureAspect_All WGPU_COMMA \
3314
+ /*.usage=*/WGPUTextureUsage_None WGPU_COMMA \
3315
+ })
3316
+
3363
3317
  typedef struct WGPUVertexBufferLayout {
3364
3318
  uint64_t arrayStride;
3365
3319
  WGPUVertexStepMode stepMode;
@@ -3376,14 +3330,14 @@ typedef struct WGPUVertexBufferLayout {
3376
3330
 
3377
3331
  typedef struct WGPUBindGroupLayoutDescriptor {
3378
3332
  WGPUChainedStruct const * nextInChain;
3379
- WGPU_NULLABLE char const * label;
3333
+ WGPUStringView label;
3380
3334
  size_t entryCount;
3381
3335
  WGPUBindGroupLayoutEntry const * entries;
3382
3336
  } WGPUBindGroupLayoutDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3383
3337
 
3384
3338
  #define WGPU_BIND_GROUP_LAYOUT_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUBindGroupLayoutDescriptor, { \
3385
3339
  /*.nextInChain=*/nullptr WGPU_COMMA \
3386
- /*.label=*/nullptr WGPU_COMMA \
3340
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3387
3341
  /*.entryCount=*/{} WGPU_COMMA \
3388
3342
  /*.entries=*/{} WGPU_COMMA \
3389
3343
  })
@@ -3402,23 +3356,21 @@ typedef struct WGPUColorTargetState {
3402
3356
  /*.writeMask=*/WGPUColorWriteMask_All WGPU_COMMA \
3403
3357
  })
3404
3358
 
3405
- typedef struct WGPUComputePipelineDescriptor {
3359
+ typedef struct WGPUCompilationInfo {
3406
3360
  WGPUChainedStruct const * nextInChain;
3407
- WGPU_NULLABLE char const * label;
3408
- WGPU_NULLABLE WGPUPipelineLayout layout;
3409
- WGPUProgrammableStageDescriptor compute;
3410
- } WGPUComputePipelineDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3361
+ size_t messageCount;
3362
+ WGPUCompilationMessage const * messages;
3363
+ } WGPUCompilationInfo WGPU_STRUCTURE_ATTRIBUTE;
3411
3364
 
3412
- #define WGPU_COMPUTE_PIPELINE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUComputePipelineDescriptor, { \
3365
+ #define WGPU_COMPILATION_INFO_INIT WGPU_MAKE_INIT_STRUCT(WGPUCompilationInfo, { \
3413
3366
  /*.nextInChain=*/nullptr WGPU_COMMA \
3414
- /*.label=*/nullptr WGPU_COMMA \
3415
- /*.layout=*/nullptr WGPU_COMMA \
3416
- /*.compute=*/WGPU_PROGRAMMABLE_STAGE_DESCRIPTOR_INIT WGPU_COMMA \
3367
+ /*.messageCount=*/{} WGPU_COMMA \
3368
+ /*.messages=*/{} WGPU_COMMA \
3417
3369
  })
3418
3370
 
3419
3371
  typedef struct WGPUDeviceDescriptor {
3420
3372
  WGPUChainedStruct const * nextInChain;
3421
- WGPU_NULLABLE char const * label;
3373
+ WGPUStringView label;
3422
3374
  size_t requiredFeatureCount;
3423
3375
  WGPUFeatureName const * requiredFeatures;
3424
3376
  WGPU_NULLABLE WGPURequiredLimits const * requiredLimits;
@@ -3433,7 +3385,7 @@ typedef struct WGPUDeviceDescriptor {
3433
3385
 
3434
3386
  #define WGPU_DEVICE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUDeviceDescriptor, { \
3435
3387
  /*.nextInChain=*/nullptr WGPU_COMMA \
3436
- /*.label=*/nullptr WGPU_COMMA \
3388
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3437
3389
  /*.requiredFeatureCount=*/0 WGPU_COMMA \
3438
3390
  /*.requiredFeatures=*/nullptr WGPU_COMMA \
3439
3391
  /*.requiredLimits=*/nullptr WGPU_COMMA \
@@ -3446,9 +3398,25 @@ typedef struct WGPUDeviceDescriptor {
3446
3398
  /*.uncapturedErrorCallbackInfo2=*/{} WGPU_COMMA \
3447
3399
  })
3448
3400
 
3401
+ typedef struct WGPUProgrammableStageDescriptor {
3402
+ WGPUChainedStruct const * nextInChain;
3403
+ WGPUShaderModule module;
3404
+ WGPUStringView entryPoint;
3405
+ size_t constantCount;
3406
+ WGPUConstantEntry const * constants;
3407
+ } WGPUProgrammableStageDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3408
+
3409
+ #define WGPU_PROGRAMMABLE_STAGE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUProgrammableStageDescriptor, { \
3410
+ /*.nextInChain=*/nullptr WGPU_COMMA \
3411
+ /*.module=*/{} WGPU_COMMA \
3412
+ /*.entryPoint=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3413
+ /*.constantCount=*/0 WGPU_COMMA \
3414
+ /*.constants=*/{} WGPU_COMMA \
3415
+ })
3416
+
3449
3417
  typedef struct WGPURenderPassDescriptor {
3450
3418
  WGPUChainedStruct const * nextInChain;
3451
- WGPU_NULLABLE char const * label;
3419
+ WGPUStringView label;
3452
3420
  size_t colorAttachmentCount;
3453
3421
  WGPURenderPassColorAttachment const * colorAttachments;
3454
3422
  WGPU_NULLABLE WGPURenderPassDepthStencilAttachment const * depthStencilAttachment;
@@ -3458,7 +3426,7 @@ typedef struct WGPURenderPassDescriptor {
3458
3426
 
3459
3427
  #define WGPU_RENDER_PASS_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPURenderPassDescriptor, { \
3460
3428
  /*.nextInChain=*/nullptr WGPU_COMMA \
3461
- /*.label=*/nullptr WGPU_COMMA \
3429
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3462
3430
  /*.colorAttachmentCount=*/{} WGPU_COMMA \
3463
3431
  /*.colorAttachments=*/{} WGPU_COMMA \
3464
3432
  /*.depthStencilAttachment=*/nullptr WGPU_COMMA \
@@ -3475,7 +3443,7 @@ typedef struct WGPURenderPassPixelLocalStorage {
3475
3443
  } WGPURenderPassPixelLocalStorage WGPU_STRUCTURE_ATTRIBUTE;
3476
3444
 
3477
3445
  #define WGPU_RENDER_PASS_PIXEL_LOCAL_STORAGE_INIT WGPU_MAKE_INIT_STRUCT(WGPURenderPassPixelLocalStorage, { \
3478
- /*.chain=*/{} WGPU_COMMA \
3446
+ /*.chain=*/{/*.nextInChain*/nullptr WGPU_COMMA /*.sType*/WGPUSType_RenderPassPixelLocalStorage} WGPU_COMMA \
3479
3447
  /*.totalPixelLocalStorageSize=*/{} WGPU_COMMA \
3480
3448
  /*.storageAttachmentCount=*/0 WGPU_COMMA \
3481
3449
  /*.storageAttachments=*/{} WGPU_COMMA \
@@ -3484,7 +3452,7 @@ typedef struct WGPURenderPassPixelLocalStorage {
3484
3452
  typedef struct WGPUVertexState {
3485
3453
  WGPUChainedStruct const * nextInChain;
3486
3454
  WGPUShaderModule module;
3487
- WGPU_NULLABLE char const * entryPoint;
3455
+ WGPUStringView entryPoint;
3488
3456
  size_t constantCount;
3489
3457
  WGPUConstantEntry const * constants;
3490
3458
  size_t bufferCount;
@@ -3494,17 +3462,31 @@ typedef struct WGPUVertexState {
3494
3462
  #define WGPU_VERTEX_STATE_INIT WGPU_MAKE_INIT_STRUCT(WGPUVertexState, { \
3495
3463
  /*.nextInChain=*/nullptr WGPU_COMMA \
3496
3464
  /*.module=*/{} WGPU_COMMA \
3497
- /*.entryPoint=*/nullptr WGPU_COMMA \
3465
+ /*.entryPoint=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3498
3466
  /*.constantCount=*/0 WGPU_COMMA \
3499
3467
  /*.constants=*/{} WGPU_COMMA \
3500
3468
  /*.bufferCount=*/0 WGPU_COMMA \
3501
3469
  /*.buffers=*/{} WGPU_COMMA \
3502
3470
  })
3503
3471
 
3472
+ typedef struct WGPUComputePipelineDescriptor {
3473
+ WGPUChainedStruct const * nextInChain;
3474
+ WGPUStringView label;
3475
+ WGPU_NULLABLE WGPUPipelineLayout layout;
3476
+ WGPUProgrammableStageDescriptor compute;
3477
+ } WGPUComputePipelineDescriptor WGPU_STRUCTURE_ATTRIBUTE;
3478
+
3479
+ #define WGPU_COMPUTE_PIPELINE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPUComputePipelineDescriptor, { \
3480
+ /*.nextInChain=*/nullptr WGPU_COMMA \
3481
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3482
+ /*.layout=*/nullptr WGPU_COMMA \
3483
+ /*.compute=*/WGPU_PROGRAMMABLE_STAGE_DESCRIPTOR_INIT WGPU_COMMA \
3484
+ })
3485
+
3504
3486
  typedef struct WGPUFragmentState {
3505
3487
  WGPUChainedStruct const * nextInChain;
3506
3488
  WGPUShaderModule module;
3507
- WGPU_NULLABLE char const * entryPoint;
3489
+ WGPUStringView entryPoint;
3508
3490
  size_t constantCount;
3509
3491
  WGPUConstantEntry const * constants;
3510
3492
  size_t targetCount;
@@ -3514,7 +3496,7 @@ typedef struct WGPUFragmentState {
3514
3496
  #define WGPU_FRAGMENT_STATE_INIT WGPU_MAKE_INIT_STRUCT(WGPUFragmentState, { \
3515
3497
  /*.nextInChain=*/nullptr WGPU_COMMA \
3516
3498
  /*.module=*/{} WGPU_COMMA \
3517
- /*.entryPoint=*/nullptr WGPU_COMMA \
3499
+ /*.entryPoint=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3518
3500
  /*.constantCount=*/0 WGPU_COMMA \
3519
3501
  /*.constants=*/{} WGPU_COMMA \
3520
3502
  /*.targetCount=*/{} WGPU_COMMA \
@@ -3523,7 +3505,7 @@ typedef struct WGPUFragmentState {
3523
3505
 
3524
3506
  typedef struct WGPURenderPipelineDescriptor {
3525
3507
  WGPUChainedStruct const * nextInChain;
3526
- WGPU_NULLABLE char const * label;
3508
+ WGPUStringView label;
3527
3509
  WGPU_NULLABLE WGPUPipelineLayout layout;
3528
3510
  WGPUVertexState vertex;
3529
3511
  WGPUPrimitiveState primitive;
@@ -3534,7 +3516,7 @@ typedef struct WGPURenderPipelineDescriptor {
3534
3516
 
3535
3517
  #define WGPU_RENDER_PIPELINE_DESCRIPTOR_INIT WGPU_MAKE_INIT_STRUCT(WGPURenderPipelineDescriptor, { \
3536
3518
  /*.nextInChain=*/nullptr WGPU_COMMA \
3537
- /*.label=*/nullptr WGPU_COMMA \
3519
+ /*.label=*/WGPU_STRING_VIEW_INIT WGPU_COMMA \
3538
3520
  /*.layout=*/nullptr WGPU_COMMA \
3539
3521
  /*.vertex=*/WGPU_VERTEX_STATE_INIT WGPU_COMMA \
3540
3522
  /*.primitive=*/WGPU_PRIMITIVE_STATE_INIT WGPU_COMMA \
@@ -3543,22 +3525,61 @@ typedef struct WGPURenderPipelineDescriptor {
3543
3525
  /*.fragment=*/nullptr WGPU_COMMA \
3544
3526
  })
3545
3527
 
3528
+ // WGPURenderPassDescriptorMaxDrawCount is deprecated.
3529
+ // Use WGPURenderPassMaxDrawCount instead.
3530
+ typedef WGPURenderPassMaxDrawCount WGPURenderPassDescriptorMaxDrawCount;
3531
+
3532
+ // WGPUShaderModuleSPIRVDescriptor is deprecated.
3533
+ // Use WGPUShaderSourceSPIRV instead.
3534
+ typedef WGPUShaderSourceSPIRV WGPUShaderModuleSPIRVDescriptor;
3535
+
3536
+ // WGPUShaderModuleWGSLDescriptor is deprecated.
3537
+ // Use WGPUShaderSourceWGSL instead.
3538
+ typedef WGPUShaderSourceWGSL WGPUShaderModuleWGSLDescriptor;
3539
+
3540
+ // WGPUSurfaceDescriptorFromAndroidNativeWindow is deprecated.
3541
+ // Use WGPUSurfaceSourceAndroidNativeWindow instead.
3542
+ typedef WGPUSurfaceSourceAndroidNativeWindow WGPUSurfaceDescriptorFromAndroidNativeWindow;
3543
+
3544
+ // WGPUSurfaceDescriptorFromCanvasHTMLSelector is deprecated.
3545
+ // Use WGPUSurfaceSourceCanvasHTMLSelector_Emscripten instead.
3546
+ typedef WGPUSurfaceSourceCanvasHTMLSelector_Emscripten WGPUSurfaceDescriptorFromCanvasHTMLSelector;
3547
+
3548
+ // WGPUSurfaceDescriptorFromMetalLayer is deprecated.
3549
+ // Use WGPUSurfaceSourceMetalLayer instead.
3550
+ typedef WGPUSurfaceSourceMetalLayer WGPUSurfaceDescriptorFromMetalLayer;
3551
+
3552
+ // WGPUSurfaceDescriptorFromWaylandSurface is deprecated.
3553
+ // Use WGPUSurfaceSourceWaylandSurface instead.
3554
+ typedef WGPUSurfaceSourceWaylandSurface WGPUSurfaceDescriptorFromWaylandSurface;
3555
+
3556
+ // WGPUSurfaceDescriptorFromWindowsHWND is deprecated.
3557
+ // Use WGPUSurfaceSourceWindowsHWND instead.
3558
+ typedef WGPUSurfaceSourceWindowsHWND WGPUSurfaceDescriptorFromWindowsHWND;
3559
+
3560
+ // WGPUSurfaceDescriptorFromXcbWindow is deprecated.
3561
+ // Use WGPUSurfaceSourceXCBWindow instead.
3562
+ typedef WGPUSurfaceSourceXCBWindow WGPUSurfaceDescriptorFromXcbWindow;
3563
+
3564
+ // WGPUSurfaceDescriptorFromXlibWindow is deprecated.
3565
+ // Use WGPUSurfaceSourceXlibWindow instead.
3566
+ typedef WGPUSurfaceSourceXlibWindow WGPUSurfaceDescriptorFromXlibWindow;
3567
+
3546
3568
  #ifdef __cplusplus
3547
3569
  extern "C" {
3548
3570
  #endif
3549
3571
 
3550
3572
  #if !defined(WGPU_SKIP_PROCS)
3551
3573
 
3552
- typedef void (*WGPUProcAdapterInfoFreeMembers)(WGPUAdapterInfo value) WGPU_FUNCTION_ATTRIBUTE;
3553
- typedef void (*WGPUProcAdapterPropertiesFreeMembers)(WGPUAdapterProperties value) WGPU_FUNCTION_ATTRIBUTE;
3554
- typedef void (*WGPUProcAdapterPropertiesMemoryHeapsFreeMembers)(WGPUAdapterPropertiesMemoryHeaps value) WGPU_FUNCTION_ATTRIBUTE;
3555
- typedef WGPUInstance (*WGPUProcCreateInstance)(WGPUInstanceDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3556
- typedef void (*WGPUProcDrmFormatCapabilitiesFreeMembers)(WGPUDrmFormatCapabilities value) WGPU_FUNCTION_ATTRIBUTE;
3557
- typedef WGPUStatus (*WGPUProcGetInstanceFeatures)(WGPUInstanceFeatures * features) WGPU_FUNCTION_ATTRIBUTE;
3558
- typedef WGPUProc (*WGPUProcGetProcAddress)(WGPUDevice device, char const * procName) WGPU_FUNCTION_ATTRIBUTE;
3559
- typedef void (*WGPUProcSharedBufferMemoryEndAccessStateFreeMembers)(WGPUSharedBufferMemoryEndAccessState value) WGPU_FUNCTION_ATTRIBUTE;
3560
- typedef void (*WGPUProcSharedTextureMemoryEndAccessStateFreeMembers)(WGPUSharedTextureMemoryEndAccessState value) WGPU_FUNCTION_ATTRIBUTE;
3561
- typedef void (*WGPUProcSurfaceCapabilitiesFreeMembers)(WGPUSurfaceCapabilities value) WGPU_FUNCTION_ATTRIBUTE;
3574
+ typedef void (*WGPUProcAdapterInfoFreeMembers)( WGPUAdapterInfo value) WGPU_FUNCTION_ATTRIBUTE;
3575
+ typedef void (*WGPUProcAdapterPropertiesMemoryHeapsFreeMembers)( WGPUAdapterPropertiesMemoryHeaps value) WGPU_FUNCTION_ATTRIBUTE;
3576
+ typedef WGPUInstance (*WGPUProcCreateInstance)( WGPU_NULLABLE WGPUInstanceDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3577
+ typedef void (*WGPUProcDrmFormatCapabilitiesFreeMembers)( WGPUDrmFormatCapabilities value) WGPU_FUNCTION_ATTRIBUTE;
3578
+ typedef WGPUStatus (*WGPUProcGetInstanceFeatures)( WGPUInstanceFeatures * features) WGPU_FUNCTION_ATTRIBUTE;
3579
+ typedef WGPUProc (*WGPUProcGetProcAddress)( WGPUStringView procName) WGPU_FUNCTION_ATTRIBUTE;
3580
+ typedef void (*WGPUProcSharedBufferMemoryEndAccessStateFreeMembers)( WGPUSharedBufferMemoryEndAccessState value) WGPU_FUNCTION_ATTRIBUTE;
3581
+ typedef void (*WGPUProcSharedTextureMemoryEndAccessStateFreeMembers)( WGPUSharedTextureMemoryEndAccessState value) WGPU_FUNCTION_ATTRIBUTE;
3582
+ typedef void (*WGPUProcSurfaceCapabilitiesFreeMembers)( WGPUSurfaceCapabilities value) WGPU_FUNCTION_ATTRIBUTE;
3562
3583
 
3563
3584
  // Procs of Adapter
3564
3585
  typedef WGPUDevice (*WGPUProcAdapterCreateDevice)(WGPUAdapter adapter, WGPU_NULLABLE WGPUDeviceDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
@@ -3567,7 +3588,6 @@ typedef WGPUStatus (*WGPUProcAdapterGetFormatCapabilities)(WGPUAdapter adapter,
3567
3588
  typedef WGPUStatus (*WGPUProcAdapterGetInfo)(WGPUAdapter adapter, WGPUAdapterInfo * info) WGPU_FUNCTION_ATTRIBUTE;
3568
3589
  typedef WGPUInstance (*WGPUProcAdapterGetInstance)(WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE;
3569
3590
  typedef WGPUStatus (*WGPUProcAdapterGetLimits)(WGPUAdapter adapter, WGPUSupportedLimits * limits) WGPU_FUNCTION_ATTRIBUTE;
3570
- typedef WGPUStatus (*WGPUProcAdapterGetProperties)(WGPUAdapter adapter, WGPUAdapterProperties * properties) WGPU_FUNCTION_ATTRIBUTE;
3571
3591
  typedef WGPUBool (*WGPUProcAdapterHasFeature)(WGPUAdapter adapter, WGPUFeatureName feature) WGPU_FUNCTION_ATTRIBUTE;
3572
3592
  typedef void (*WGPUProcAdapterRequestDevice)(WGPUAdapter adapter, WGPU_NULLABLE WGPUDeviceDescriptor const * descriptor, WGPURequestDeviceCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
3573
3593
  typedef WGPUFuture (*WGPUProcAdapterRequestDevice2)(WGPUAdapter adapter, WGPU_NULLABLE WGPUDeviceDescriptor const * options, WGPURequestDeviceCallbackInfo2 callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
@@ -3576,12 +3596,12 @@ typedef void (*WGPUProcAdapterAddRef)(WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBU
3576
3596
  typedef void (*WGPUProcAdapterRelease)(WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE;
3577
3597
 
3578
3598
  // Procs of BindGroup
3579
- typedef void (*WGPUProcBindGroupSetLabel)(WGPUBindGroup bindGroup, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3599
+ typedef void (*WGPUProcBindGroupSetLabel)(WGPUBindGroup bindGroup, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3580
3600
  typedef void (*WGPUProcBindGroupAddRef)(WGPUBindGroup bindGroup) WGPU_FUNCTION_ATTRIBUTE;
3581
3601
  typedef void (*WGPUProcBindGroupRelease)(WGPUBindGroup bindGroup) WGPU_FUNCTION_ATTRIBUTE;
3582
3602
 
3583
3603
  // Procs of BindGroupLayout
3584
- typedef void (*WGPUProcBindGroupLayoutSetLabel)(WGPUBindGroupLayout bindGroupLayout, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3604
+ typedef void (*WGPUProcBindGroupLayoutSetLabel)(WGPUBindGroupLayout bindGroupLayout, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3585
3605
  typedef void (*WGPUProcBindGroupLayoutAddRef)(WGPUBindGroupLayout bindGroupLayout) WGPU_FUNCTION_ATTRIBUTE;
3586
3606
  typedef void (*WGPUProcBindGroupLayoutRelease)(WGPUBindGroupLayout bindGroupLayout) WGPU_FUNCTION_ATTRIBUTE;
3587
3607
 
@@ -3595,13 +3615,13 @@ typedef WGPUBufferUsage (*WGPUProcBufferGetUsage)(WGPUBuffer buffer) WGPU_FUNCTI
3595
3615
  typedef void (*WGPUProcBufferMapAsync)(WGPUBuffer buffer, WGPUMapMode mode, size_t offset, size_t size, WGPUBufferMapCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
3596
3616
  typedef WGPUFuture (*WGPUProcBufferMapAsync2)(WGPUBuffer buffer, WGPUMapMode mode, size_t offset, size_t size, WGPUBufferMapCallbackInfo2 callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3597
3617
  typedef WGPUFuture (*WGPUProcBufferMapAsyncF)(WGPUBuffer buffer, WGPUMapMode mode, size_t offset, size_t size, WGPUBufferMapCallbackInfo callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3598
- typedef void (*WGPUProcBufferSetLabel)(WGPUBuffer buffer, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3618
+ typedef void (*WGPUProcBufferSetLabel)(WGPUBuffer buffer, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3599
3619
  typedef void (*WGPUProcBufferUnmap)(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE;
3600
3620
  typedef void (*WGPUProcBufferAddRef)(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE;
3601
3621
  typedef void (*WGPUProcBufferRelease)(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE;
3602
3622
 
3603
3623
  // Procs of CommandBuffer
3604
- typedef void (*WGPUProcCommandBufferSetLabel)(WGPUCommandBuffer commandBuffer, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3624
+ typedef void (*WGPUProcCommandBufferSetLabel)(WGPUCommandBuffer commandBuffer, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3605
3625
  typedef void (*WGPUProcCommandBufferAddRef)(WGPUCommandBuffer commandBuffer) WGPU_FUNCTION_ATTRIBUTE;
3606
3626
  typedef void (*WGPUProcCommandBufferRelease)(WGPUCommandBuffer commandBuffer) WGPU_FUNCTION_ATTRIBUTE;
3607
3627
 
@@ -3614,12 +3634,12 @@ typedef void (*WGPUProcCommandEncoderCopyBufferToTexture)(WGPUCommandEncoder com
3614
3634
  typedef void (*WGPUProcCommandEncoderCopyTextureToBuffer)(WGPUCommandEncoder commandEncoder, WGPUImageCopyTexture const * source, WGPUImageCopyBuffer const * destination, WGPUExtent3D const * copySize) WGPU_FUNCTION_ATTRIBUTE;
3615
3635
  typedef void (*WGPUProcCommandEncoderCopyTextureToTexture)(WGPUCommandEncoder commandEncoder, WGPUImageCopyTexture const * source, WGPUImageCopyTexture const * destination, WGPUExtent3D const * copySize) WGPU_FUNCTION_ATTRIBUTE;
3616
3636
  typedef WGPUCommandBuffer (*WGPUProcCommandEncoderFinish)(WGPUCommandEncoder commandEncoder, WGPU_NULLABLE WGPUCommandBufferDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3617
- typedef void (*WGPUProcCommandEncoderInjectValidationError)(WGPUCommandEncoder commandEncoder, char const * message) WGPU_FUNCTION_ATTRIBUTE;
3618
- typedef void (*WGPUProcCommandEncoderInsertDebugMarker)(WGPUCommandEncoder commandEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE;
3637
+ typedef void (*WGPUProcCommandEncoderInjectValidationError)(WGPUCommandEncoder commandEncoder, WGPUStringView message) WGPU_FUNCTION_ATTRIBUTE;
3638
+ typedef void (*WGPUProcCommandEncoderInsertDebugMarker)(WGPUCommandEncoder commandEncoder, WGPUStringView markerLabel) WGPU_FUNCTION_ATTRIBUTE;
3619
3639
  typedef void (*WGPUProcCommandEncoderPopDebugGroup)(WGPUCommandEncoder commandEncoder) WGPU_FUNCTION_ATTRIBUTE;
3620
- typedef void (*WGPUProcCommandEncoderPushDebugGroup)(WGPUCommandEncoder commandEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE;
3640
+ typedef void (*WGPUProcCommandEncoderPushDebugGroup)(WGPUCommandEncoder commandEncoder, WGPUStringView groupLabel) WGPU_FUNCTION_ATTRIBUTE;
3621
3641
  typedef void (*WGPUProcCommandEncoderResolveQuerySet)(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t firstQuery, uint32_t queryCount, WGPUBuffer destination, uint64_t destinationOffset) WGPU_FUNCTION_ATTRIBUTE;
3622
- typedef void (*WGPUProcCommandEncoderSetLabel)(WGPUCommandEncoder commandEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3642
+ typedef void (*WGPUProcCommandEncoderSetLabel)(WGPUCommandEncoder commandEncoder, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3623
3643
  typedef void (*WGPUProcCommandEncoderWriteBuffer)(WGPUCommandEncoder commandEncoder, WGPUBuffer buffer, uint64_t bufferOffset, uint8_t const * data, uint64_t size) WGPU_FUNCTION_ATTRIBUTE;
3624
3644
  typedef void (*WGPUProcCommandEncoderWriteTimestamp)(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t queryIndex) WGPU_FUNCTION_ATTRIBUTE;
3625
3645
  typedef void (*WGPUProcCommandEncoderAddRef)(WGPUCommandEncoder commandEncoder) WGPU_FUNCTION_ATTRIBUTE;
@@ -3629,11 +3649,11 @@ typedef void (*WGPUProcCommandEncoderRelease)(WGPUCommandEncoder commandEncoder)
3629
3649
  typedef void (*WGPUProcComputePassEncoderDispatchWorkgroups)(WGPUComputePassEncoder computePassEncoder, uint32_t workgroupCountX, uint32_t workgroupCountY, uint32_t workgroupCountZ) WGPU_FUNCTION_ATTRIBUTE;
3630
3650
  typedef void (*WGPUProcComputePassEncoderDispatchWorkgroupsIndirect)(WGPUComputePassEncoder computePassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE;
3631
3651
  typedef void (*WGPUProcComputePassEncoderEnd)(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE;
3632
- typedef void (*WGPUProcComputePassEncoderInsertDebugMarker)(WGPUComputePassEncoder computePassEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE;
3652
+ typedef void (*WGPUProcComputePassEncoderInsertDebugMarker)(WGPUComputePassEncoder computePassEncoder, WGPUStringView markerLabel) WGPU_FUNCTION_ATTRIBUTE;
3633
3653
  typedef void (*WGPUProcComputePassEncoderPopDebugGroup)(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE;
3634
- typedef void (*WGPUProcComputePassEncoderPushDebugGroup)(WGPUComputePassEncoder computePassEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE;
3654
+ typedef void (*WGPUProcComputePassEncoderPushDebugGroup)(WGPUComputePassEncoder computePassEncoder, WGPUStringView groupLabel) WGPU_FUNCTION_ATTRIBUTE;
3635
3655
  typedef void (*WGPUProcComputePassEncoderSetBindGroup)(WGPUComputePassEncoder computePassEncoder, uint32_t groupIndex, WGPU_NULLABLE WGPUBindGroup group, size_t dynamicOffsetCount, uint32_t const * dynamicOffsets) WGPU_FUNCTION_ATTRIBUTE;
3636
- typedef void (*WGPUProcComputePassEncoderSetLabel)(WGPUComputePassEncoder computePassEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3656
+ typedef void (*WGPUProcComputePassEncoderSetLabel)(WGPUComputePassEncoder computePassEncoder, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3637
3657
  typedef void (*WGPUProcComputePassEncoderSetPipeline)(WGPUComputePassEncoder computePassEncoder, WGPUComputePipeline pipeline) WGPU_FUNCTION_ATTRIBUTE;
3638
3658
  typedef void (*WGPUProcComputePassEncoderWriteTimestamp)(WGPUComputePassEncoder computePassEncoder, WGPUQuerySet querySet, uint32_t queryIndex) WGPU_FUNCTION_ATTRIBUTE;
3639
3659
  typedef void (*WGPUProcComputePassEncoderAddRef)(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE;
@@ -3641,7 +3661,7 @@ typedef void (*WGPUProcComputePassEncoderRelease)(WGPUComputePassEncoder compute
3641
3661
 
3642
3662
  // Procs of ComputePipeline
3643
3663
  typedef WGPUBindGroupLayout (*WGPUProcComputePipelineGetBindGroupLayout)(WGPUComputePipeline computePipeline, uint32_t groupIndex) WGPU_FUNCTION_ATTRIBUTE;
3644
- typedef void (*WGPUProcComputePipelineSetLabel)(WGPUComputePipeline computePipeline, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3664
+ typedef void (*WGPUProcComputePipelineSetLabel)(WGPUComputePipeline computePipeline, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3645
3665
  typedef void (*WGPUProcComputePipelineAddRef)(WGPUComputePipeline computePipeline) WGPU_FUNCTION_ATTRIBUTE;
3646
3666
  typedef void (*WGPUProcComputePipelineRelease)(WGPUComputePipeline computePipeline) WGPU_FUNCTION_ATTRIBUTE;
3647
3667
 
@@ -3656,7 +3676,7 @@ typedef WGPUFuture (*WGPUProcDeviceCreateComputePipelineAsync2)(WGPUDevice devic
3656
3676
  typedef WGPUFuture (*WGPUProcDeviceCreateComputePipelineAsyncF)(WGPUDevice device, WGPUComputePipelineDescriptor const * descriptor, WGPUCreateComputePipelineAsyncCallbackInfo callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3657
3677
  typedef WGPUBuffer (*WGPUProcDeviceCreateErrorBuffer)(WGPUDevice device, WGPUBufferDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3658
3678
  typedef WGPUExternalTexture (*WGPUProcDeviceCreateErrorExternalTexture)(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE;
3659
- typedef WGPUShaderModule (*WGPUProcDeviceCreateErrorShaderModule)(WGPUDevice device, WGPUShaderModuleDescriptor const * descriptor, char const * errorMessage) WGPU_FUNCTION_ATTRIBUTE;
3679
+ typedef WGPUShaderModule (*WGPUProcDeviceCreateErrorShaderModule)(WGPUDevice device, WGPUShaderModuleDescriptor const * descriptor, WGPUStringView errorMessage) WGPU_FUNCTION_ATTRIBUTE;
3660
3680
  typedef WGPUTexture (*WGPUProcDeviceCreateErrorTexture)(WGPUDevice device, WGPUTextureDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3661
3681
  typedef WGPUExternalTexture (*WGPUProcDeviceCreateExternalTexture)(WGPUDevice device, WGPUExternalTextureDescriptor const * externalTextureDescriptor) WGPU_FUNCTION_ATTRIBUTE;
3662
3682
  typedef WGPUPipelineLayout (*WGPUProcDeviceCreatePipelineLayout)(WGPUDevice device, WGPUPipelineLayoutDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
@@ -3668,27 +3688,25 @@ typedef WGPUFuture (*WGPUProcDeviceCreateRenderPipelineAsync2)(WGPUDevice device
3668
3688
  typedef WGPUFuture (*WGPUProcDeviceCreateRenderPipelineAsyncF)(WGPUDevice device, WGPURenderPipelineDescriptor const * descriptor, WGPUCreateRenderPipelineAsyncCallbackInfo callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3669
3689
  typedef WGPUSampler (*WGPUProcDeviceCreateSampler)(WGPUDevice device, WGPU_NULLABLE WGPUSamplerDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3670
3690
  typedef WGPUShaderModule (*WGPUProcDeviceCreateShaderModule)(WGPUDevice device, WGPUShaderModuleDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3671
- typedef WGPUSwapChain (*WGPUProcDeviceCreateSwapChain)(WGPUDevice device, WGPUSurface surface, WGPUSwapChainDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3672
3691
  typedef WGPUTexture (*WGPUProcDeviceCreateTexture)(WGPUDevice device, WGPUTextureDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3673
3692
  typedef void (*WGPUProcDeviceDestroy)(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE;
3674
3693
  typedef size_t (*WGPUProcDeviceEnumerateFeatures)(WGPUDevice device, WGPUFeatureName * features) WGPU_FUNCTION_ATTRIBUTE;
3675
- typedef void (*WGPUProcDeviceForceLoss)(WGPUDevice device, WGPUDeviceLostReason type, char const * message) WGPU_FUNCTION_ATTRIBUTE;
3694
+ typedef void (*WGPUProcDeviceForceLoss)(WGPUDevice device, WGPUDeviceLostReason type, WGPUStringView message) WGPU_FUNCTION_ATTRIBUTE;
3676
3695
  typedef WGPUStatus (*WGPUProcDeviceGetAHardwareBufferProperties)(WGPUDevice device, void * handle, WGPUAHardwareBufferProperties * properties) WGPU_FUNCTION_ATTRIBUTE;
3677
3696
  typedef WGPUAdapter (*WGPUProcDeviceGetAdapter)(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE;
3678
3697
  typedef WGPUStatus (*WGPUProcDeviceGetLimits)(WGPUDevice device, WGPUSupportedLimits * limits) WGPU_FUNCTION_ATTRIBUTE;
3679
3698
  typedef WGPUQueue (*WGPUProcDeviceGetQueue)(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE;
3680
- typedef WGPUTextureUsage (*WGPUProcDeviceGetSupportedSurfaceUsage)(WGPUDevice device, WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE;
3681
3699
  typedef WGPUBool (*WGPUProcDeviceHasFeature)(WGPUDevice device, WGPUFeatureName feature) WGPU_FUNCTION_ATTRIBUTE;
3682
3700
  typedef WGPUSharedBufferMemory (*WGPUProcDeviceImportSharedBufferMemory)(WGPUDevice device, WGPUSharedBufferMemoryDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3683
3701
  typedef WGPUSharedFence (*WGPUProcDeviceImportSharedFence)(WGPUDevice device, WGPUSharedFenceDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3684
3702
  typedef WGPUSharedTextureMemory (*WGPUProcDeviceImportSharedTextureMemory)(WGPUDevice device, WGPUSharedTextureMemoryDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3685
- typedef void (*WGPUProcDeviceInjectError)(WGPUDevice device, WGPUErrorType type, char const * message) WGPU_FUNCTION_ATTRIBUTE;
3703
+ typedef void (*WGPUProcDeviceInjectError)(WGPUDevice device, WGPUErrorType type, WGPUStringView message) WGPU_FUNCTION_ATTRIBUTE;
3686
3704
  typedef void (*WGPUProcDevicePopErrorScope)(WGPUDevice device, WGPUErrorCallback oldCallback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
3687
3705
  typedef WGPUFuture (*WGPUProcDevicePopErrorScope2)(WGPUDevice device, WGPUPopErrorScopeCallbackInfo2 callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3688
3706
  typedef WGPUFuture (*WGPUProcDevicePopErrorScopeF)(WGPUDevice device, WGPUPopErrorScopeCallbackInfo callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3689
3707
  typedef void (*WGPUProcDevicePushErrorScope)(WGPUDevice device, WGPUErrorFilter filter) WGPU_FUNCTION_ATTRIBUTE;
3690
3708
  typedef void (*WGPUProcDeviceSetDeviceLostCallback)(WGPUDevice device, WGPUDeviceLostCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
3691
- typedef void (*WGPUProcDeviceSetLabel)(WGPUDevice device, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3709
+ typedef void (*WGPUProcDeviceSetLabel)(WGPUDevice device, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3692
3710
  typedef void (*WGPUProcDeviceSetLoggingCallback)(WGPUDevice device, WGPULoggingCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
3693
3711
  typedef void (*WGPUProcDeviceSetUncapturedErrorCallback)(WGPUDevice device, WGPUErrorCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
3694
3712
  typedef void (*WGPUProcDeviceTick)(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE;
@@ -3700,7 +3718,7 @@ typedef void (*WGPUProcDeviceRelease)(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE
3700
3718
  typedef void (*WGPUProcExternalTextureDestroy)(WGPUExternalTexture externalTexture) WGPU_FUNCTION_ATTRIBUTE;
3701
3719
  typedef void (*WGPUProcExternalTextureExpire)(WGPUExternalTexture externalTexture) WGPU_FUNCTION_ATTRIBUTE;
3702
3720
  typedef void (*WGPUProcExternalTextureRefresh)(WGPUExternalTexture externalTexture) WGPU_FUNCTION_ATTRIBUTE;
3703
- typedef void (*WGPUProcExternalTextureSetLabel)(WGPUExternalTexture externalTexture, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3721
+ typedef void (*WGPUProcExternalTextureSetLabel)(WGPUExternalTexture externalTexture, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3704
3722
  typedef void (*WGPUProcExternalTextureAddRef)(WGPUExternalTexture externalTexture) WGPU_FUNCTION_ATTRIBUTE;
3705
3723
  typedef void (*WGPUProcExternalTextureRelease)(WGPUExternalTexture externalTexture) WGPU_FUNCTION_ATTRIBUTE;
3706
3724
 
@@ -3717,7 +3735,7 @@ typedef void (*WGPUProcInstanceAddRef)(WGPUInstance instance) WGPU_FUNCTION_ATTR
3717
3735
  typedef void (*WGPUProcInstanceRelease)(WGPUInstance instance) WGPU_FUNCTION_ATTRIBUTE;
3718
3736
 
3719
3737
  // Procs of PipelineLayout
3720
- typedef void (*WGPUProcPipelineLayoutSetLabel)(WGPUPipelineLayout pipelineLayout, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3738
+ typedef void (*WGPUProcPipelineLayoutSetLabel)(WGPUPipelineLayout pipelineLayout, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3721
3739
  typedef void (*WGPUProcPipelineLayoutAddRef)(WGPUPipelineLayout pipelineLayout) WGPU_FUNCTION_ATTRIBUTE;
3722
3740
  typedef void (*WGPUProcPipelineLayoutRelease)(WGPUPipelineLayout pipelineLayout) WGPU_FUNCTION_ATTRIBUTE;
3723
3741
 
@@ -3725,7 +3743,7 @@ typedef void (*WGPUProcPipelineLayoutRelease)(WGPUPipelineLayout pipelineLayout)
3725
3743
  typedef void (*WGPUProcQuerySetDestroy)(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE;
3726
3744
  typedef uint32_t (*WGPUProcQuerySetGetCount)(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE;
3727
3745
  typedef WGPUQueryType (*WGPUProcQuerySetGetType)(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE;
3728
- typedef void (*WGPUProcQuerySetSetLabel)(WGPUQuerySet querySet, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3746
+ typedef void (*WGPUProcQuerySetSetLabel)(WGPUQuerySet querySet, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3729
3747
  typedef void (*WGPUProcQuerySetAddRef)(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE;
3730
3748
  typedef void (*WGPUProcQuerySetRelease)(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE;
3731
3749
 
@@ -3735,7 +3753,7 @@ typedef void (*WGPUProcQueueCopyTextureForBrowser)(WGPUQueue queue, WGPUImageCop
3735
3753
  typedef void (*WGPUProcQueueOnSubmittedWorkDone)(WGPUQueue queue, WGPUQueueWorkDoneCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
3736
3754
  typedef WGPUFuture (*WGPUProcQueueOnSubmittedWorkDone2)(WGPUQueue queue, WGPUQueueWorkDoneCallbackInfo2 callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3737
3755
  typedef WGPUFuture (*WGPUProcQueueOnSubmittedWorkDoneF)(WGPUQueue queue, WGPUQueueWorkDoneCallbackInfo callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3738
- typedef void (*WGPUProcQueueSetLabel)(WGPUQueue queue, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3756
+ typedef void (*WGPUProcQueueSetLabel)(WGPUQueue queue, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3739
3757
  typedef void (*WGPUProcQueueSubmit)(WGPUQueue queue, size_t commandCount, WGPUCommandBuffer const * commands) WGPU_FUNCTION_ATTRIBUTE;
3740
3758
  typedef void (*WGPUProcQueueWriteBuffer)(WGPUQueue queue, WGPUBuffer buffer, uint64_t bufferOffset, void const * data, size_t size) WGPU_FUNCTION_ATTRIBUTE;
3741
3759
  typedef void (*WGPUProcQueueWriteTexture)(WGPUQueue queue, WGPUImageCopyTexture const * destination, void const * data, size_t dataSize, WGPUTextureDataLayout const * dataLayout, WGPUExtent3D const * writeSize) WGPU_FUNCTION_ATTRIBUTE;
@@ -3743,7 +3761,7 @@ typedef void (*WGPUProcQueueAddRef)(WGPUQueue queue) WGPU_FUNCTION_ATTRIBUTE;
3743
3761
  typedef void (*WGPUProcQueueRelease)(WGPUQueue queue) WGPU_FUNCTION_ATTRIBUTE;
3744
3762
 
3745
3763
  // Procs of RenderBundle
3746
- typedef void (*WGPUProcRenderBundleSetLabel)(WGPURenderBundle renderBundle, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3764
+ typedef void (*WGPUProcRenderBundleSetLabel)(WGPURenderBundle renderBundle, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3747
3765
  typedef void (*WGPUProcRenderBundleAddRef)(WGPURenderBundle renderBundle) WGPU_FUNCTION_ATTRIBUTE;
3748
3766
  typedef void (*WGPUProcRenderBundleRelease)(WGPURenderBundle renderBundle) WGPU_FUNCTION_ATTRIBUTE;
3749
3767
 
@@ -3753,12 +3771,12 @@ typedef void (*WGPUProcRenderBundleEncoderDrawIndexed)(WGPURenderBundleEncoder r
3753
3771
  typedef void (*WGPUProcRenderBundleEncoderDrawIndexedIndirect)(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE;
3754
3772
  typedef void (*WGPUProcRenderBundleEncoderDrawIndirect)(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE;
3755
3773
  typedef WGPURenderBundle (*WGPUProcRenderBundleEncoderFinish)(WGPURenderBundleEncoder renderBundleEncoder, WGPU_NULLABLE WGPURenderBundleDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3756
- typedef void (*WGPUProcRenderBundleEncoderInsertDebugMarker)(WGPURenderBundleEncoder renderBundleEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE;
3774
+ typedef void (*WGPUProcRenderBundleEncoderInsertDebugMarker)(WGPURenderBundleEncoder renderBundleEncoder, WGPUStringView markerLabel) WGPU_FUNCTION_ATTRIBUTE;
3757
3775
  typedef void (*WGPUProcRenderBundleEncoderPopDebugGroup)(WGPURenderBundleEncoder renderBundleEncoder) WGPU_FUNCTION_ATTRIBUTE;
3758
- typedef void (*WGPUProcRenderBundleEncoderPushDebugGroup)(WGPURenderBundleEncoder renderBundleEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE;
3776
+ typedef void (*WGPUProcRenderBundleEncoderPushDebugGroup)(WGPURenderBundleEncoder renderBundleEncoder, WGPUStringView groupLabel) WGPU_FUNCTION_ATTRIBUTE;
3759
3777
  typedef void (*WGPUProcRenderBundleEncoderSetBindGroup)(WGPURenderBundleEncoder renderBundleEncoder, uint32_t groupIndex, WGPU_NULLABLE WGPUBindGroup group, size_t dynamicOffsetCount, uint32_t const * dynamicOffsets) WGPU_FUNCTION_ATTRIBUTE;
3760
3778
  typedef void (*WGPUProcRenderBundleEncoderSetIndexBuffer)(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE;
3761
- typedef void (*WGPUProcRenderBundleEncoderSetLabel)(WGPURenderBundleEncoder renderBundleEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3779
+ typedef void (*WGPUProcRenderBundleEncoderSetLabel)(WGPURenderBundleEncoder renderBundleEncoder, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3762
3780
  typedef void (*WGPUProcRenderBundleEncoderSetPipeline)(WGPURenderBundleEncoder renderBundleEncoder, WGPURenderPipeline pipeline) WGPU_FUNCTION_ATTRIBUTE;
3763
3781
  typedef void (*WGPUProcRenderBundleEncoderSetVertexBuffer)(WGPURenderBundleEncoder renderBundleEncoder, uint32_t slot, WGPU_NULLABLE WGPUBuffer buffer, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE;
3764
3782
  typedef void (*WGPUProcRenderBundleEncoderAddRef)(WGPURenderBundleEncoder renderBundleEncoder) WGPU_FUNCTION_ATTRIBUTE;
@@ -3773,14 +3791,16 @@ typedef void (*WGPUProcRenderPassEncoderDrawIndirect)(WGPURenderPassEncoder rend
3773
3791
  typedef void (*WGPUProcRenderPassEncoderEnd)(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE;
3774
3792
  typedef void (*WGPUProcRenderPassEncoderEndOcclusionQuery)(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE;
3775
3793
  typedef void (*WGPUProcRenderPassEncoderExecuteBundles)(WGPURenderPassEncoder renderPassEncoder, size_t bundleCount, WGPURenderBundle const * bundles) WGPU_FUNCTION_ATTRIBUTE;
3776
- typedef void (*WGPUProcRenderPassEncoderInsertDebugMarker)(WGPURenderPassEncoder renderPassEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE;
3794
+ typedef void (*WGPUProcRenderPassEncoderInsertDebugMarker)(WGPURenderPassEncoder renderPassEncoder, WGPUStringView markerLabel) WGPU_FUNCTION_ATTRIBUTE;
3795
+ typedef void (*WGPUProcRenderPassEncoderMultiDrawIndexedIndirect)(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset, uint32_t maxDrawCount, WGPU_NULLABLE WGPUBuffer drawCountBuffer, uint64_t drawCountBufferOffset) WGPU_FUNCTION_ATTRIBUTE;
3796
+ typedef void (*WGPUProcRenderPassEncoderMultiDrawIndirect)(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset, uint32_t maxDrawCount, WGPU_NULLABLE WGPUBuffer drawCountBuffer, uint64_t drawCountBufferOffset) WGPU_FUNCTION_ATTRIBUTE;
3777
3797
  typedef void (*WGPUProcRenderPassEncoderPixelLocalStorageBarrier)(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE;
3778
3798
  typedef void (*WGPUProcRenderPassEncoderPopDebugGroup)(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE;
3779
- typedef void (*WGPUProcRenderPassEncoderPushDebugGroup)(WGPURenderPassEncoder renderPassEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE;
3799
+ typedef void (*WGPUProcRenderPassEncoderPushDebugGroup)(WGPURenderPassEncoder renderPassEncoder, WGPUStringView groupLabel) WGPU_FUNCTION_ATTRIBUTE;
3780
3800
  typedef void (*WGPUProcRenderPassEncoderSetBindGroup)(WGPURenderPassEncoder renderPassEncoder, uint32_t groupIndex, WGPU_NULLABLE WGPUBindGroup group, size_t dynamicOffsetCount, uint32_t const * dynamicOffsets) WGPU_FUNCTION_ATTRIBUTE;
3781
3801
  typedef void (*WGPUProcRenderPassEncoderSetBlendConstant)(WGPURenderPassEncoder renderPassEncoder, WGPUColor const * color) WGPU_FUNCTION_ATTRIBUTE;
3782
3802
  typedef void (*WGPUProcRenderPassEncoderSetIndexBuffer)(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE;
3783
- typedef void (*WGPUProcRenderPassEncoderSetLabel)(WGPURenderPassEncoder renderPassEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3803
+ typedef void (*WGPUProcRenderPassEncoderSetLabel)(WGPURenderPassEncoder renderPassEncoder, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3784
3804
  typedef void (*WGPUProcRenderPassEncoderSetPipeline)(WGPURenderPassEncoder renderPassEncoder, WGPURenderPipeline pipeline) WGPU_FUNCTION_ATTRIBUTE;
3785
3805
  typedef void (*WGPUProcRenderPassEncoderSetScissorRect)(WGPURenderPassEncoder renderPassEncoder, uint32_t x, uint32_t y, uint32_t width, uint32_t height) WGPU_FUNCTION_ATTRIBUTE;
3786
3806
  typedef void (*WGPUProcRenderPassEncoderSetStencilReference)(WGPURenderPassEncoder renderPassEncoder, uint32_t reference) WGPU_FUNCTION_ATTRIBUTE;
@@ -3792,12 +3812,12 @@ typedef void (*WGPUProcRenderPassEncoderRelease)(WGPURenderPassEncoder renderPas
3792
3812
 
3793
3813
  // Procs of RenderPipeline
3794
3814
  typedef WGPUBindGroupLayout (*WGPUProcRenderPipelineGetBindGroupLayout)(WGPURenderPipeline renderPipeline, uint32_t groupIndex) WGPU_FUNCTION_ATTRIBUTE;
3795
- typedef void (*WGPUProcRenderPipelineSetLabel)(WGPURenderPipeline renderPipeline, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3815
+ typedef void (*WGPUProcRenderPipelineSetLabel)(WGPURenderPipeline renderPipeline, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3796
3816
  typedef void (*WGPUProcRenderPipelineAddRef)(WGPURenderPipeline renderPipeline) WGPU_FUNCTION_ATTRIBUTE;
3797
3817
  typedef void (*WGPUProcRenderPipelineRelease)(WGPURenderPipeline renderPipeline) WGPU_FUNCTION_ATTRIBUTE;
3798
3818
 
3799
3819
  // Procs of Sampler
3800
- typedef void (*WGPUProcSamplerSetLabel)(WGPUSampler sampler, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3820
+ typedef void (*WGPUProcSamplerSetLabel)(WGPUSampler sampler, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3801
3821
  typedef void (*WGPUProcSamplerAddRef)(WGPUSampler sampler) WGPU_FUNCTION_ATTRIBUTE;
3802
3822
  typedef void (*WGPUProcSamplerRelease)(WGPUSampler sampler) WGPU_FUNCTION_ATTRIBUTE;
3803
3823
 
@@ -3805,7 +3825,7 @@ typedef void (*WGPUProcSamplerRelease)(WGPUSampler sampler) WGPU_FUNCTION_ATTRIB
3805
3825
  typedef void (*WGPUProcShaderModuleGetCompilationInfo)(WGPUShaderModule shaderModule, WGPUCompilationInfoCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
3806
3826
  typedef WGPUFuture (*WGPUProcShaderModuleGetCompilationInfo2)(WGPUShaderModule shaderModule, WGPUCompilationInfoCallbackInfo2 callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3807
3827
  typedef WGPUFuture (*WGPUProcShaderModuleGetCompilationInfoF)(WGPUShaderModule shaderModule, WGPUCompilationInfoCallbackInfo callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3808
- typedef void (*WGPUProcShaderModuleSetLabel)(WGPUShaderModule shaderModule, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3828
+ typedef void (*WGPUProcShaderModuleSetLabel)(WGPUShaderModule shaderModule, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3809
3829
  typedef void (*WGPUProcShaderModuleAddRef)(WGPUShaderModule shaderModule) WGPU_FUNCTION_ATTRIBUTE;
3810
3830
  typedef void (*WGPUProcShaderModuleRelease)(WGPUShaderModule shaderModule) WGPU_FUNCTION_ATTRIBUTE;
3811
3831
 
@@ -3815,7 +3835,7 @@ typedef WGPUBuffer (*WGPUProcSharedBufferMemoryCreateBuffer)(WGPUSharedBufferMem
3815
3835
  typedef WGPUStatus (*WGPUProcSharedBufferMemoryEndAccess)(WGPUSharedBufferMemory sharedBufferMemory, WGPUBuffer buffer, WGPUSharedBufferMemoryEndAccessState * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3816
3836
  typedef WGPUStatus (*WGPUProcSharedBufferMemoryGetProperties)(WGPUSharedBufferMemory sharedBufferMemory, WGPUSharedBufferMemoryProperties * properties) WGPU_FUNCTION_ATTRIBUTE;
3817
3837
  typedef WGPUBool (*WGPUProcSharedBufferMemoryIsDeviceLost)(WGPUSharedBufferMemory sharedBufferMemory) WGPU_FUNCTION_ATTRIBUTE;
3818
- typedef void (*WGPUProcSharedBufferMemorySetLabel)(WGPUSharedBufferMemory sharedBufferMemory, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3838
+ typedef void (*WGPUProcSharedBufferMemorySetLabel)(WGPUSharedBufferMemory sharedBufferMemory, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3819
3839
  typedef void (*WGPUProcSharedBufferMemoryAddRef)(WGPUSharedBufferMemory sharedBufferMemory) WGPU_FUNCTION_ATTRIBUTE;
3820
3840
  typedef void (*WGPUProcSharedBufferMemoryRelease)(WGPUSharedBufferMemory sharedBufferMemory) WGPU_FUNCTION_ATTRIBUTE;
3821
3841
 
@@ -3830,7 +3850,7 @@ typedef WGPUTexture (*WGPUProcSharedTextureMemoryCreateTexture)(WGPUSharedTextur
3830
3850
  typedef WGPUStatus (*WGPUProcSharedTextureMemoryEndAccess)(WGPUSharedTextureMemory sharedTextureMemory, WGPUTexture texture, WGPUSharedTextureMemoryEndAccessState * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3831
3851
  typedef WGPUStatus (*WGPUProcSharedTextureMemoryGetProperties)(WGPUSharedTextureMemory sharedTextureMemory, WGPUSharedTextureMemoryProperties * properties) WGPU_FUNCTION_ATTRIBUTE;
3832
3852
  typedef WGPUBool (*WGPUProcSharedTextureMemoryIsDeviceLost)(WGPUSharedTextureMemory sharedTextureMemory) WGPU_FUNCTION_ATTRIBUTE;
3833
- typedef void (*WGPUProcSharedTextureMemorySetLabel)(WGPUSharedTextureMemory sharedTextureMemory, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3853
+ typedef void (*WGPUProcSharedTextureMemorySetLabel)(WGPUSharedTextureMemory sharedTextureMemory, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3834
3854
  typedef void (*WGPUProcSharedTextureMemoryAddRef)(WGPUSharedTextureMemory sharedTextureMemory) WGPU_FUNCTION_ATTRIBUTE;
3835
3855
  typedef void (*WGPUProcSharedTextureMemoryRelease)(WGPUSharedTextureMemory sharedTextureMemory) WGPU_FUNCTION_ATTRIBUTE;
3836
3856
 
@@ -3838,19 +3858,12 @@ typedef void (*WGPUProcSharedTextureMemoryRelease)(WGPUSharedTextureMemory share
3838
3858
  typedef void (*WGPUProcSurfaceConfigure)(WGPUSurface surface, WGPUSurfaceConfiguration const * config) WGPU_FUNCTION_ATTRIBUTE;
3839
3859
  typedef WGPUStatus (*WGPUProcSurfaceGetCapabilities)(WGPUSurface surface, WGPUAdapter adapter, WGPUSurfaceCapabilities * capabilities) WGPU_FUNCTION_ATTRIBUTE;
3840
3860
  typedef void (*WGPUProcSurfaceGetCurrentTexture)(WGPUSurface surface, WGPUSurfaceTexture * surfaceTexture) WGPU_FUNCTION_ATTRIBUTE;
3841
- typedef WGPUTextureFormat (*WGPUProcSurfaceGetPreferredFormat)(WGPUSurface surface, WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE;
3842
3861
  typedef void (*WGPUProcSurfacePresent)(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE;
3862
+ typedef void (*WGPUProcSurfaceSetLabel)(WGPUSurface surface, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3843
3863
  typedef void (*WGPUProcSurfaceUnconfigure)(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE;
3844
3864
  typedef void (*WGPUProcSurfaceAddRef)(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE;
3845
3865
  typedef void (*WGPUProcSurfaceRelease)(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE;
3846
3866
 
3847
- // Procs of SwapChain
3848
- typedef WGPUTexture (*WGPUProcSwapChainGetCurrentTexture)(WGPUSwapChain swapChain) WGPU_FUNCTION_ATTRIBUTE;
3849
- typedef WGPUTextureView (*WGPUProcSwapChainGetCurrentTextureView)(WGPUSwapChain swapChain) WGPU_FUNCTION_ATTRIBUTE;
3850
- typedef void (*WGPUProcSwapChainPresent)(WGPUSwapChain swapChain) WGPU_FUNCTION_ATTRIBUTE;
3851
- typedef void (*WGPUProcSwapChainAddRef)(WGPUSwapChain swapChain) WGPU_FUNCTION_ATTRIBUTE;
3852
- typedef void (*WGPUProcSwapChainRelease)(WGPUSwapChain swapChain) WGPU_FUNCTION_ATTRIBUTE;
3853
-
3854
3867
  // Procs of Texture
3855
3868
  typedef WGPUTextureView (*WGPUProcTextureCreateErrorView)(WGPUTexture texture, WGPU_NULLABLE WGPUTextureViewDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3856
3869
  typedef WGPUTextureView (*WGPUProcTextureCreateView)(WGPUTexture texture, WGPU_NULLABLE WGPUTextureViewDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
@@ -3863,12 +3876,12 @@ typedef uint32_t (*WGPUProcTextureGetMipLevelCount)(WGPUTexture texture) WGPU_FU
3863
3876
  typedef uint32_t (*WGPUProcTextureGetSampleCount)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE;
3864
3877
  typedef WGPUTextureUsage (*WGPUProcTextureGetUsage)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE;
3865
3878
  typedef uint32_t (*WGPUProcTextureGetWidth)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE;
3866
- typedef void (*WGPUProcTextureSetLabel)(WGPUTexture texture, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3879
+ typedef void (*WGPUProcTextureSetLabel)(WGPUTexture texture, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3867
3880
  typedef void (*WGPUProcTextureAddRef)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE;
3868
3881
  typedef void (*WGPUProcTextureRelease)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE;
3869
3882
 
3870
3883
  // Procs of TextureView
3871
- typedef void (*WGPUProcTextureViewSetLabel)(WGPUTextureView textureView, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3884
+ typedef void (*WGPUProcTextureViewSetLabel)(WGPUTextureView textureView, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3872
3885
  typedef void (*WGPUProcTextureViewAddRef)(WGPUTextureView textureView) WGPU_FUNCTION_ATTRIBUTE;
3873
3886
  typedef void (*WGPUProcTextureViewRelease)(WGPUTextureView textureView) WGPU_FUNCTION_ATTRIBUTE;
3874
3887
 
@@ -3878,12 +3891,11 @@ typedef void (*WGPUProcTextureViewRelease)(WGPUTextureView textureView) WGPU_FUN
3878
3891
  #if !defined(WGPU_SKIP_DECLARATIONS)
3879
3892
 
3880
3893
  WGPU_EXPORT void wgpuAdapterInfoFreeMembers(WGPUAdapterInfo value) WGPU_FUNCTION_ATTRIBUTE;
3881
- WGPU_EXPORT void wgpuAdapterPropertiesFreeMembers(WGPUAdapterProperties value) WGPU_FUNCTION_ATTRIBUTE;
3882
3894
  WGPU_EXPORT void wgpuAdapterPropertiesMemoryHeapsFreeMembers(WGPUAdapterPropertiesMemoryHeaps value) WGPU_FUNCTION_ATTRIBUTE;
3883
3895
  WGPU_EXPORT WGPUInstance wgpuCreateInstance(WGPU_NULLABLE WGPUInstanceDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3884
3896
  WGPU_EXPORT void wgpuDrmFormatCapabilitiesFreeMembers(WGPUDrmFormatCapabilities value) WGPU_FUNCTION_ATTRIBUTE;
3885
3897
  WGPU_EXPORT WGPUStatus wgpuGetInstanceFeatures(WGPUInstanceFeatures * features) WGPU_FUNCTION_ATTRIBUTE;
3886
- WGPU_EXPORT WGPUProc wgpuGetProcAddress(WGPU_NULLABLE WGPUDevice device, char const * procName) WGPU_FUNCTION_ATTRIBUTE;
3898
+ WGPU_EXPORT WGPUProc wgpuGetProcAddress(WGPUStringView procName) WGPU_FUNCTION_ATTRIBUTE;
3887
3899
  WGPU_EXPORT void wgpuSharedBufferMemoryEndAccessStateFreeMembers(WGPUSharedBufferMemoryEndAccessState value) WGPU_FUNCTION_ATTRIBUTE;
3888
3900
  WGPU_EXPORT void wgpuSharedTextureMemoryEndAccessStateFreeMembers(WGPUSharedTextureMemoryEndAccessState value) WGPU_FUNCTION_ATTRIBUTE;
3889
3901
  WGPU_EXPORT void wgpuSurfaceCapabilitiesFreeMembers(WGPUSurfaceCapabilities value) WGPU_FUNCTION_ATTRIBUTE;
@@ -3895,7 +3907,6 @@ WGPU_EXPORT WGPUStatus wgpuAdapterGetFormatCapabilities(WGPUAdapter adapter, WGP
3895
3907
  WGPU_EXPORT WGPUStatus wgpuAdapterGetInfo(WGPUAdapter adapter, WGPUAdapterInfo * info) WGPU_FUNCTION_ATTRIBUTE;
3896
3908
  WGPU_EXPORT WGPUInstance wgpuAdapterGetInstance(WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE;
3897
3909
  WGPU_EXPORT WGPUStatus wgpuAdapterGetLimits(WGPUAdapter adapter, WGPUSupportedLimits * limits) WGPU_FUNCTION_ATTRIBUTE;
3898
- WGPU_EXPORT WGPUStatus wgpuAdapterGetProperties(WGPUAdapter adapter, WGPUAdapterProperties * properties) WGPU_FUNCTION_ATTRIBUTE;
3899
3910
  WGPU_EXPORT WGPUBool wgpuAdapterHasFeature(WGPUAdapter adapter, WGPUFeatureName feature) WGPU_FUNCTION_ATTRIBUTE;
3900
3911
  WGPU_EXPORT void wgpuAdapterRequestDevice(WGPUAdapter adapter, WGPU_NULLABLE WGPUDeviceDescriptor const * descriptor, WGPURequestDeviceCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
3901
3912
  WGPU_EXPORT WGPUFuture wgpuAdapterRequestDevice2(WGPUAdapter adapter, WGPU_NULLABLE WGPUDeviceDescriptor const * options, WGPURequestDeviceCallbackInfo2 callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
@@ -3904,12 +3915,12 @@ WGPU_EXPORT void wgpuAdapterAddRef(WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE;
3904
3915
  WGPU_EXPORT void wgpuAdapterRelease(WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE;
3905
3916
 
3906
3917
  // Methods of BindGroup
3907
- WGPU_EXPORT void wgpuBindGroupSetLabel(WGPUBindGroup bindGroup, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3918
+ WGPU_EXPORT void wgpuBindGroupSetLabel(WGPUBindGroup bindGroup, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3908
3919
  WGPU_EXPORT void wgpuBindGroupAddRef(WGPUBindGroup bindGroup) WGPU_FUNCTION_ATTRIBUTE;
3909
3920
  WGPU_EXPORT void wgpuBindGroupRelease(WGPUBindGroup bindGroup) WGPU_FUNCTION_ATTRIBUTE;
3910
3921
 
3911
3922
  // Methods of BindGroupLayout
3912
- WGPU_EXPORT void wgpuBindGroupLayoutSetLabel(WGPUBindGroupLayout bindGroupLayout, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3923
+ WGPU_EXPORT void wgpuBindGroupLayoutSetLabel(WGPUBindGroupLayout bindGroupLayout, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3913
3924
  WGPU_EXPORT void wgpuBindGroupLayoutAddRef(WGPUBindGroupLayout bindGroupLayout) WGPU_FUNCTION_ATTRIBUTE;
3914
3925
  WGPU_EXPORT void wgpuBindGroupLayoutRelease(WGPUBindGroupLayout bindGroupLayout) WGPU_FUNCTION_ATTRIBUTE;
3915
3926
 
@@ -3923,13 +3934,13 @@ WGPU_EXPORT WGPUBufferUsage wgpuBufferGetUsage(WGPUBuffer buffer) WGPU_FUNCTION_
3923
3934
  WGPU_EXPORT void wgpuBufferMapAsync(WGPUBuffer buffer, WGPUMapMode mode, size_t offset, size_t size, WGPUBufferMapCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
3924
3935
  WGPU_EXPORT WGPUFuture wgpuBufferMapAsync2(WGPUBuffer buffer, WGPUMapMode mode, size_t offset, size_t size, WGPUBufferMapCallbackInfo2 callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3925
3936
  WGPU_EXPORT WGPUFuture wgpuBufferMapAsyncF(WGPUBuffer buffer, WGPUMapMode mode, size_t offset, size_t size, WGPUBufferMapCallbackInfo callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3926
- WGPU_EXPORT void wgpuBufferSetLabel(WGPUBuffer buffer, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3937
+ WGPU_EXPORT void wgpuBufferSetLabel(WGPUBuffer buffer, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3927
3938
  WGPU_EXPORT void wgpuBufferUnmap(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE;
3928
3939
  WGPU_EXPORT void wgpuBufferAddRef(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE;
3929
3940
  WGPU_EXPORT void wgpuBufferRelease(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE;
3930
3941
 
3931
3942
  // Methods of CommandBuffer
3932
- WGPU_EXPORT void wgpuCommandBufferSetLabel(WGPUCommandBuffer commandBuffer, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3943
+ WGPU_EXPORT void wgpuCommandBufferSetLabel(WGPUCommandBuffer commandBuffer, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3933
3944
  WGPU_EXPORT void wgpuCommandBufferAddRef(WGPUCommandBuffer commandBuffer) WGPU_FUNCTION_ATTRIBUTE;
3934
3945
  WGPU_EXPORT void wgpuCommandBufferRelease(WGPUCommandBuffer commandBuffer) WGPU_FUNCTION_ATTRIBUTE;
3935
3946
 
@@ -3942,12 +3953,12 @@ WGPU_EXPORT void wgpuCommandEncoderCopyBufferToTexture(WGPUCommandEncoder comman
3942
3953
  WGPU_EXPORT void wgpuCommandEncoderCopyTextureToBuffer(WGPUCommandEncoder commandEncoder, WGPUImageCopyTexture const * source, WGPUImageCopyBuffer const * destination, WGPUExtent3D const * copySize) WGPU_FUNCTION_ATTRIBUTE;
3943
3954
  WGPU_EXPORT void wgpuCommandEncoderCopyTextureToTexture(WGPUCommandEncoder commandEncoder, WGPUImageCopyTexture const * source, WGPUImageCopyTexture const * destination, WGPUExtent3D const * copySize) WGPU_FUNCTION_ATTRIBUTE;
3944
3955
  WGPU_EXPORT WGPUCommandBuffer wgpuCommandEncoderFinish(WGPUCommandEncoder commandEncoder, WGPU_NULLABLE WGPUCommandBufferDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3945
- WGPU_EXPORT void wgpuCommandEncoderInjectValidationError(WGPUCommandEncoder commandEncoder, char const * message) WGPU_FUNCTION_ATTRIBUTE;
3946
- WGPU_EXPORT void wgpuCommandEncoderInsertDebugMarker(WGPUCommandEncoder commandEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE;
3956
+ WGPU_EXPORT void wgpuCommandEncoderInjectValidationError(WGPUCommandEncoder commandEncoder, WGPUStringView message) WGPU_FUNCTION_ATTRIBUTE;
3957
+ WGPU_EXPORT void wgpuCommandEncoderInsertDebugMarker(WGPUCommandEncoder commandEncoder, WGPUStringView markerLabel) WGPU_FUNCTION_ATTRIBUTE;
3947
3958
  WGPU_EXPORT void wgpuCommandEncoderPopDebugGroup(WGPUCommandEncoder commandEncoder) WGPU_FUNCTION_ATTRIBUTE;
3948
- WGPU_EXPORT void wgpuCommandEncoderPushDebugGroup(WGPUCommandEncoder commandEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE;
3959
+ WGPU_EXPORT void wgpuCommandEncoderPushDebugGroup(WGPUCommandEncoder commandEncoder, WGPUStringView groupLabel) WGPU_FUNCTION_ATTRIBUTE;
3949
3960
  WGPU_EXPORT void wgpuCommandEncoderResolveQuerySet(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t firstQuery, uint32_t queryCount, WGPUBuffer destination, uint64_t destinationOffset) WGPU_FUNCTION_ATTRIBUTE;
3950
- WGPU_EXPORT void wgpuCommandEncoderSetLabel(WGPUCommandEncoder commandEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3961
+ WGPU_EXPORT void wgpuCommandEncoderSetLabel(WGPUCommandEncoder commandEncoder, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3951
3962
  WGPU_EXPORT void wgpuCommandEncoderWriteBuffer(WGPUCommandEncoder commandEncoder, WGPUBuffer buffer, uint64_t bufferOffset, uint8_t const * data, uint64_t size) WGPU_FUNCTION_ATTRIBUTE;
3952
3963
  WGPU_EXPORT void wgpuCommandEncoderWriteTimestamp(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t queryIndex) WGPU_FUNCTION_ATTRIBUTE;
3953
3964
  WGPU_EXPORT void wgpuCommandEncoderAddRef(WGPUCommandEncoder commandEncoder) WGPU_FUNCTION_ATTRIBUTE;
@@ -3957,11 +3968,11 @@ WGPU_EXPORT void wgpuCommandEncoderRelease(WGPUCommandEncoder commandEncoder) WG
3957
3968
  WGPU_EXPORT void wgpuComputePassEncoderDispatchWorkgroups(WGPUComputePassEncoder computePassEncoder, uint32_t workgroupCountX, uint32_t workgroupCountY, uint32_t workgroupCountZ) WGPU_FUNCTION_ATTRIBUTE;
3958
3969
  WGPU_EXPORT void wgpuComputePassEncoderDispatchWorkgroupsIndirect(WGPUComputePassEncoder computePassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE;
3959
3970
  WGPU_EXPORT void wgpuComputePassEncoderEnd(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE;
3960
- WGPU_EXPORT void wgpuComputePassEncoderInsertDebugMarker(WGPUComputePassEncoder computePassEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE;
3971
+ WGPU_EXPORT void wgpuComputePassEncoderInsertDebugMarker(WGPUComputePassEncoder computePassEncoder, WGPUStringView markerLabel) WGPU_FUNCTION_ATTRIBUTE;
3961
3972
  WGPU_EXPORT void wgpuComputePassEncoderPopDebugGroup(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE;
3962
- WGPU_EXPORT void wgpuComputePassEncoderPushDebugGroup(WGPUComputePassEncoder computePassEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE;
3973
+ WGPU_EXPORT void wgpuComputePassEncoderPushDebugGroup(WGPUComputePassEncoder computePassEncoder, WGPUStringView groupLabel) WGPU_FUNCTION_ATTRIBUTE;
3963
3974
  WGPU_EXPORT void wgpuComputePassEncoderSetBindGroup(WGPUComputePassEncoder computePassEncoder, uint32_t groupIndex, WGPU_NULLABLE WGPUBindGroup group, size_t dynamicOffsetCount, uint32_t const * dynamicOffsets) WGPU_FUNCTION_ATTRIBUTE;
3964
- WGPU_EXPORT void wgpuComputePassEncoderSetLabel(WGPUComputePassEncoder computePassEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3975
+ WGPU_EXPORT void wgpuComputePassEncoderSetLabel(WGPUComputePassEncoder computePassEncoder, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3965
3976
  WGPU_EXPORT void wgpuComputePassEncoderSetPipeline(WGPUComputePassEncoder computePassEncoder, WGPUComputePipeline pipeline) WGPU_FUNCTION_ATTRIBUTE;
3966
3977
  WGPU_EXPORT void wgpuComputePassEncoderWriteTimestamp(WGPUComputePassEncoder computePassEncoder, WGPUQuerySet querySet, uint32_t queryIndex) WGPU_FUNCTION_ATTRIBUTE;
3967
3978
  WGPU_EXPORT void wgpuComputePassEncoderAddRef(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE;
@@ -3969,7 +3980,7 @@ WGPU_EXPORT void wgpuComputePassEncoderRelease(WGPUComputePassEncoder computePas
3969
3980
 
3970
3981
  // Methods of ComputePipeline
3971
3982
  WGPU_EXPORT WGPUBindGroupLayout wgpuComputePipelineGetBindGroupLayout(WGPUComputePipeline computePipeline, uint32_t groupIndex) WGPU_FUNCTION_ATTRIBUTE;
3972
- WGPU_EXPORT void wgpuComputePipelineSetLabel(WGPUComputePipeline computePipeline, char const * label) WGPU_FUNCTION_ATTRIBUTE;
3983
+ WGPU_EXPORT void wgpuComputePipelineSetLabel(WGPUComputePipeline computePipeline, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
3973
3984
  WGPU_EXPORT void wgpuComputePipelineAddRef(WGPUComputePipeline computePipeline) WGPU_FUNCTION_ATTRIBUTE;
3974
3985
  WGPU_EXPORT void wgpuComputePipelineRelease(WGPUComputePipeline computePipeline) WGPU_FUNCTION_ATTRIBUTE;
3975
3986
 
@@ -3984,7 +3995,7 @@ WGPU_EXPORT WGPUFuture wgpuDeviceCreateComputePipelineAsync2(WGPUDevice device,
3984
3995
  WGPU_EXPORT WGPUFuture wgpuDeviceCreateComputePipelineAsyncF(WGPUDevice device, WGPUComputePipelineDescriptor const * descriptor, WGPUCreateComputePipelineAsyncCallbackInfo callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3985
3996
  WGPU_EXPORT WGPUBuffer wgpuDeviceCreateErrorBuffer(WGPUDevice device, WGPUBufferDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3986
3997
  WGPU_EXPORT WGPUExternalTexture wgpuDeviceCreateErrorExternalTexture(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE;
3987
- WGPU_EXPORT WGPUShaderModule wgpuDeviceCreateErrorShaderModule(WGPUDevice device, WGPUShaderModuleDescriptor const * descriptor, char const * errorMessage) WGPU_FUNCTION_ATTRIBUTE;
3998
+ WGPU_EXPORT WGPUShaderModule wgpuDeviceCreateErrorShaderModule(WGPUDevice device, WGPUShaderModuleDescriptor const * descriptor, WGPUStringView errorMessage) WGPU_FUNCTION_ATTRIBUTE;
3988
3999
  WGPU_EXPORT WGPUTexture wgpuDeviceCreateErrorTexture(WGPUDevice device, WGPUTextureDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3989
4000
  WGPU_EXPORT WGPUExternalTexture wgpuDeviceCreateExternalTexture(WGPUDevice device, WGPUExternalTextureDescriptor const * externalTextureDescriptor) WGPU_FUNCTION_ATTRIBUTE;
3990
4001
  WGPU_EXPORT WGPUPipelineLayout wgpuDeviceCreatePipelineLayout(WGPUDevice device, WGPUPipelineLayoutDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
@@ -3996,27 +4007,25 @@ WGPU_EXPORT WGPUFuture wgpuDeviceCreateRenderPipelineAsync2(WGPUDevice device, W
3996
4007
  WGPU_EXPORT WGPUFuture wgpuDeviceCreateRenderPipelineAsyncF(WGPUDevice device, WGPURenderPipelineDescriptor const * descriptor, WGPUCreateRenderPipelineAsyncCallbackInfo callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
3997
4008
  WGPU_EXPORT WGPUSampler wgpuDeviceCreateSampler(WGPUDevice device, WGPU_NULLABLE WGPUSamplerDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3998
4009
  WGPU_EXPORT WGPUShaderModule wgpuDeviceCreateShaderModule(WGPUDevice device, WGPUShaderModuleDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
3999
- WGPU_EXPORT WGPUSwapChain wgpuDeviceCreateSwapChain(WGPUDevice device, WGPUSurface surface, WGPUSwapChainDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
4000
4010
  WGPU_EXPORT WGPUTexture wgpuDeviceCreateTexture(WGPUDevice device, WGPUTextureDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
4001
4011
  WGPU_EXPORT void wgpuDeviceDestroy(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE;
4002
4012
  WGPU_EXPORT size_t wgpuDeviceEnumerateFeatures(WGPUDevice device, WGPUFeatureName * features) WGPU_FUNCTION_ATTRIBUTE;
4003
- WGPU_EXPORT void wgpuDeviceForceLoss(WGPUDevice device, WGPUDeviceLostReason type, char const * message) WGPU_FUNCTION_ATTRIBUTE;
4013
+ WGPU_EXPORT void wgpuDeviceForceLoss(WGPUDevice device, WGPUDeviceLostReason type, WGPUStringView message) WGPU_FUNCTION_ATTRIBUTE;
4004
4014
  WGPU_EXPORT WGPUStatus wgpuDeviceGetAHardwareBufferProperties(WGPUDevice device, void * handle, WGPUAHardwareBufferProperties * properties) WGPU_FUNCTION_ATTRIBUTE;
4005
4015
  WGPU_EXPORT WGPUAdapter wgpuDeviceGetAdapter(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE;
4006
4016
  WGPU_EXPORT WGPUStatus wgpuDeviceGetLimits(WGPUDevice device, WGPUSupportedLimits * limits) WGPU_FUNCTION_ATTRIBUTE;
4007
4017
  WGPU_EXPORT WGPUQueue wgpuDeviceGetQueue(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE;
4008
- WGPU_EXPORT WGPUTextureUsage wgpuDeviceGetSupportedSurfaceUsage(WGPUDevice device, WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE;
4009
4018
  WGPU_EXPORT WGPUBool wgpuDeviceHasFeature(WGPUDevice device, WGPUFeatureName feature) WGPU_FUNCTION_ATTRIBUTE;
4010
4019
  WGPU_EXPORT WGPUSharedBufferMemory wgpuDeviceImportSharedBufferMemory(WGPUDevice device, WGPUSharedBufferMemoryDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
4011
4020
  WGPU_EXPORT WGPUSharedFence wgpuDeviceImportSharedFence(WGPUDevice device, WGPUSharedFenceDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
4012
4021
  WGPU_EXPORT WGPUSharedTextureMemory wgpuDeviceImportSharedTextureMemory(WGPUDevice device, WGPUSharedTextureMemoryDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
4013
- WGPU_EXPORT void wgpuDeviceInjectError(WGPUDevice device, WGPUErrorType type, char const * message) WGPU_FUNCTION_ATTRIBUTE;
4022
+ WGPU_EXPORT void wgpuDeviceInjectError(WGPUDevice device, WGPUErrorType type, WGPUStringView message) WGPU_FUNCTION_ATTRIBUTE;
4014
4023
  WGPU_EXPORT void wgpuDevicePopErrorScope(WGPUDevice device, WGPUErrorCallback oldCallback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
4015
4024
  WGPU_EXPORT WGPUFuture wgpuDevicePopErrorScope2(WGPUDevice device, WGPUPopErrorScopeCallbackInfo2 callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
4016
4025
  WGPU_EXPORT WGPUFuture wgpuDevicePopErrorScopeF(WGPUDevice device, WGPUPopErrorScopeCallbackInfo callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
4017
4026
  WGPU_EXPORT void wgpuDevicePushErrorScope(WGPUDevice device, WGPUErrorFilter filter) WGPU_FUNCTION_ATTRIBUTE;
4018
4027
  WGPU_EXPORT void wgpuDeviceSetDeviceLostCallback(WGPUDevice device, WGPUDeviceLostCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
4019
- WGPU_EXPORT void wgpuDeviceSetLabel(WGPUDevice device, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4028
+ WGPU_EXPORT void wgpuDeviceSetLabel(WGPUDevice device, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4020
4029
  WGPU_EXPORT void wgpuDeviceSetLoggingCallback(WGPUDevice device, WGPULoggingCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
4021
4030
  WGPU_EXPORT void wgpuDeviceSetUncapturedErrorCallback(WGPUDevice device, WGPUErrorCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
4022
4031
  WGPU_EXPORT void wgpuDeviceTick(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE;
@@ -4028,7 +4037,7 @@ WGPU_EXPORT void wgpuDeviceRelease(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE;
4028
4037
  WGPU_EXPORT void wgpuExternalTextureDestroy(WGPUExternalTexture externalTexture) WGPU_FUNCTION_ATTRIBUTE;
4029
4038
  WGPU_EXPORT void wgpuExternalTextureExpire(WGPUExternalTexture externalTexture) WGPU_FUNCTION_ATTRIBUTE;
4030
4039
  WGPU_EXPORT void wgpuExternalTextureRefresh(WGPUExternalTexture externalTexture) WGPU_FUNCTION_ATTRIBUTE;
4031
- WGPU_EXPORT void wgpuExternalTextureSetLabel(WGPUExternalTexture externalTexture, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4040
+ WGPU_EXPORT void wgpuExternalTextureSetLabel(WGPUExternalTexture externalTexture, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4032
4041
  WGPU_EXPORT void wgpuExternalTextureAddRef(WGPUExternalTexture externalTexture) WGPU_FUNCTION_ATTRIBUTE;
4033
4042
  WGPU_EXPORT void wgpuExternalTextureRelease(WGPUExternalTexture externalTexture) WGPU_FUNCTION_ATTRIBUTE;
4034
4043
 
@@ -4045,7 +4054,7 @@ WGPU_EXPORT void wgpuInstanceAddRef(WGPUInstance instance) WGPU_FUNCTION_ATTRIBU
4045
4054
  WGPU_EXPORT void wgpuInstanceRelease(WGPUInstance instance) WGPU_FUNCTION_ATTRIBUTE;
4046
4055
 
4047
4056
  // Methods of PipelineLayout
4048
- WGPU_EXPORT void wgpuPipelineLayoutSetLabel(WGPUPipelineLayout pipelineLayout, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4057
+ WGPU_EXPORT void wgpuPipelineLayoutSetLabel(WGPUPipelineLayout pipelineLayout, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4049
4058
  WGPU_EXPORT void wgpuPipelineLayoutAddRef(WGPUPipelineLayout pipelineLayout) WGPU_FUNCTION_ATTRIBUTE;
4050
4059
  WGPU_EXPORT void wgpuPipelineLayoutRelease(WGPUPipelineLayout pipelineLayout) WGPU_FUNCTION_ATTRIBUTE;
4051
4060
 
@@ -4053,7 +4062,7 @@ WGPU_EXPORT void wgpuPipelineLayoutRelease(WGPUPipelineLayout pipelineLayout) WG
4053
4062
  WGPU_EXPORT void wgpuQuerySetDestroy(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE;
4054
4063
  WGPU_EXPORT uint32_t wgpuQuerySetGetCount(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE;
4055
4064
  WGPU_EXPORT WGPUQueryType wgpuQuerySetGetType(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE;
4056
- WGPU_EXPORT void wgpuQuerySetSetLabel(WGPUQuerySet querySet, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4065
+ WGPU_EXPORT void wgpuQuerySetSetLabel(WGPUQuerySet querySet, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4057
4066
  WGPU_EXPORT void wgpuQuerySetAddRef(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE;
4058
4067
  WGPU_EXPORT void wgpuQuerySetRelease(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE;
4059
4068
 
@@ -4063,7 +4072,7 @@ WGPU_EXPORT void wgpuQueueCopyTextureForBrowser(WGPUQueue queue, WGPUImageCopyTe
4063
4072
  WGPU_EXPORT void wgpuQueueOnSubmittedWorkDone(WGPUQueue queue, WGPUQueueWorkDoneCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
4064
4073
  WGPU_EXPORT WGPUFuture wgpuQueueOnSubmittedWorkDone2(WGPUQueue queue, WGPUQueueWorkDoneCallbackInfo2 callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
4065
4074
  WGPU_EXPORT WGPUFuture wgpuQueueOnSubmittedWorkDoneF(WGPUQueue queue, WGPUQueueWorkDoneCallbackInfo callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
4066
- WGPU_EXPORT void wgpuQueueSetLabel(WGPUQueue queue, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4075
+ WGPU_EXPORT void wgpuQueueSetLabel(WGPUQueue queue, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4067
4076
  WGPU_EXPORT void wgpuQueueSubmit(WGPUQueue queue, size_t commandCount, WGPUCommandBuffer const * commands) WGPU_FUNCTION_ATTRIBUTE;
4068
4077
  WGPU_EXPORT void wgpuQueueWriteBuffer(WGPUQueue queue, WGPUBuffer buffer, uint64_t bufferOffset, void const * data, size_t size) WGPU_FUNCTION_ATTRIBUTE;
4069
4078
  WGPU_EXPORT void wgpuQueueWriteTexture(WGPUQueue queue, WGPUImageCopyTexture const * destination, void const * data, size_t dataSize, WGPUTextureDataLayout const * dataLayout, WGPUExtent3D const * writeSize) WGPU_FUNCTION_ATTRIBUTE;
@@ -4071,7 +4080,7 @@ WGPU_EXPORT void wgpuQueueAddRef(WGPUQueue queue) WGPU_FUNCTION_ATTRIBUTE;
4071
4080
  WGPU_EXPORT void wgpuQueueRelease(WGPUQueue queue) WGPU_FUNCTION_ATTRIBUTE;
4072
4081
 
4073
4082
  // Methods of RenderBundle
4074
- WGPU_EXPORT void wgpuRenderBundleSetLabel(WGPURenderBundle renderBundle, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4083
+ WGPU_EXPORT void wgpuRenderBundleSetLabel(WGPURenderBundle renderBundle, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4075
4084
  WGPU_EXPORT void wgpuRenderBundleAddRef(WGPURenderBundle renderBundle) WGPU_FUNCTION_ATTRIBUTE;
4076
4085
  WGPU_EXPORT void wgpuRenderBundleRelease(WGPURenderBundle renderBundle) WGPU_FUNCTION_ATTRIBUTE;
4077
4086
 
@@ -4081,12 +4090,12 @@ WGPU_EXPORT void wgpuRenderBundleEncoderDrawIndexed(WGPURenderBundleEncoder rend
4081
4090
  WGPU_EXPORT void wgpuRenderBundleEncoderDrawIndexedIndirect(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE;
4082
4091
  WGPU_EXPORT void wgpuRenderBundleEncoderDrawIndirect(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE;
4083
4092
  WGPU_EXPORT WGPURenderBundle wgpuRenderBundleEncoderFinish(WGPURenderBundleEncoder renderBundleEncoder, WGPU_NULLABLE WGPURenderBundleDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
4084
- WGPU_EXPORT void wgpuRenderBundleEncoderInsertDebugMarker(WGPURenderBundleEncoder renderBundleEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE;
4093
+ WGPU_EXPORT void wgpuRenderBundleEncoderInsertDebugMarker(WGPURenderBundleEncoder renderBundleEncoder, WGPUStringView markerLabel) WGPU_FUNCTION_ATTRIBUTE;
4085
4094
  WGPU_EXPORT void wgpuRenderBundleEncoderPopDebugGroup(WGPURenderBundleEncoder renderBundleEncoder) WGPU_FUNCTION_ATTRIBUTE;
4086
- WGPU_EXPORT void wgpuRenderBundleEncoderPushDebugGroup(WGPURenderBundleEncoder renderBundleEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE;
4095
+ WGPU_EXPORT void wgpuRenderBundleEncoderPushDebugGroup(WGPURenderBundleEncoder renderBundleEncoder, WGPUStringView groupLabel) WGPU_FUNCTION_ATTRIBUTE;
4087
4096
  WGPU_EXPORT void wgpuRenderBundleEncoderSetBindGroup(WGPURenderBundleEncoder renderBundleEncoder, uint32_t groupIndex, WGPU_NULLABLE WGPUBindGroup group, size_t dynamicOffsetCount, uint32_t const * dynamicOffsets) WGPU_FUNCTION_ATTRIBUTE;
4088
4097
  WGPU_EXPORT void wgpuRenderBundleEncoderSetIndexBuffer(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE;
4089
- WGPU_EXPORT void wgpuRenderBundleEncoderSetLabel(WGPURenderBundleEncoder renderBundleEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4098
+ WGPU_EXPORT void wgpuRenderBundleEncoderSetLabel(WGPURenderBundleEncoder renderBundleEncoder, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4090
4099
  WGPU_EXPORT void wgpuRenderBundleEncoderSetPipeline(WGPURenderBundleEncoder renderBundleEncoder, WGPURenderPipeline pipeline) WGPU_FUNCTION_ATTRIBUTE;
4091
4100
  WGPU_EXPORT void wgpuRenderBundleEncoderSetVertexBuffer(WGPURenderBundleEncoder renderBundleEncoder, uint32_t slot, WGPU_NULLABLE WGPUBuffer buffer, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE;
4092
4101
  WGPU_EXPORT void wgpuRenderBundleEncoderAddRef(WGPURenderBundleEncoder renderBundleEncoder) WGPU_FUNCTION_ATTRIBUTE;
@@ -4101,14 +4110,16 @@ WGPU_EXPORT void wgpuRenderPassEncoderDrawIndirect(WGPURenderPassEncoder renderP
4101
4110
  WGPU_EXPORT void wgpuRenderPassEncoderEnd(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE;
4102
4111
  WGPU_EXPORT void wgpuRenderPassEncoderEndOcclusionQuery(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE;
4103
4112
  WGPU_EXPORT void wgpuRenderPassEncoderExecuteBundles(WGPURenderPassEncoder renderPassEncoder, size_t bundleCount, WGPURenderBundle const * bundles) WGPU_FUNCTION_ATTRIBUTE;
4104
- WGPU_EXPORT void wgpuRenderPassEncoderInsertDebugMarker(WGPURenderPassEncoder renderPassEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE;
4113
+ WGPU_EXPORT void wgpuRenderPassEncoderInsertDebugMarker(WGPURenderPassEncoder renderPassEncoder, WGPUStringView markerLabel) WGPU_FUNCTION_ATTRIBUTE;
4114
+ WGPU_EXPORT void wgpuRenderPassEncoderMultiDrawIndexedIndirect(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset, uint32_t maxDrawCount, WGPU_NULLABLE WGPUBuffer drawCountBuffer, uint64_t drawCountBufferOffset) WGPU_FUNCTION_ATTRIBUTE;
4115
+ WGPU_EXPORT void wgpuRenderPassEncoderMultiDrawIndirect(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset, uint32_t maxDrawCount, WGPU_NULLABLE WGPUBuffer drawCountBuffer, uint64_t drawCountBufferOffset) WGPU_FUNCTION_ATTRIBUTE;
4105
4116
  WGPU_EXPORT void wgpuRenderPassEncoderPixelLocalStorageBarrier(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE;
4106
4117
  WGPU_EXPORT void wgpuRenderPassEncoderPopDebugGroup(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE;
4107
- WGPU_EXPORT void wgpuRenderPassEncoderPushDebugGroup(WGPURenderPassEncoder renderPassEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE;
4118
+ WGPU_EXPORT void wgpuRenderPassEncoderPushDebugGroup(WGPURenderPassEncoder renderPassEncoder, WGPUStringView groupLabel) WGPU_FUNCTION_ATTRIBUTE;
4108
4119
  WGPU_EXPORT void wgpuRenderPassEncoderSetBindGroup(WGPURenderPassEncoder renderPassEncoder, uint32_t groupIndex, WGPU_NULLABLE WGPUBindGroup group, size_t dynamicOffsetCount, uint32_t const * dynamicOffsets) WGPU_FUNCTION_ATTRIBUTE;
4109
4120
  WGPU_EXPORT void wgpuRenderPassEncoderSetBlendConstant(WGPURenderPassEncoder renderPassEncoder, WGPUColor const * color) WGPU_FUNCTION_ATTRIBUTE;
4110
4121
  WGPU_EXPORT void wgpuRenderPassEncoderSetIndexBuffer(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE;
4111
- WGPU_EXPORT void wgpuRenderPassEncoderSetLabel(WGPURenderPassEncoder renderPassEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4122
+ WGPU_EXPORT void wgpuRenderPassEncoderSetLabel(WGPURenderPassEncoder renderPassEncoder, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4112
4123
  WGPU_EXPORT void wgpuRenderPassEncoderSetPipeline(WGPURenderPassEncoder renderPassEncoder, WGPURenderPipeline pipeline) WGPU_FUNCTION_ATTRIBUTE;
4113
4124
  WGPU_EXPORT void wgpuRenderPassEncoderSetScissorRect(WGPURenderPassEncoder renderPassEncoder, uint32_t x, uint32_t y, uint32_t width, uint32_t height) WGPU_FUNCTION_ATTRIBUTE;
4114
4125
  WGPU_EXPORT void wgpuRenderPassEncoderSetStencilReference(WGPURenderPassEncoder renderPassEncoder, uint32_t reference) WGPU_FUNCTION_ATTRIBUTE;
@@ -4120,12 +4131,12 @@ WGPU_EXPORT void wgpuRenderPassEncoderRelease(WGPURenderPassEncoder renderPassEn
4120
4131
 
4121
4132
  // Methods of RenderPipeline
4122
4133
  WGPU_EXPORT WGPUBindGroupLayout wgpuRenderPipelineGetBindGroupLayout(WGPURenderPipeline renderPipeline, uint32_t groupIndex) WGPU_FUNCTION_ATTRIBUTE;
4123
- WGPU_EXPORT void wgpuRenderPipelineSetLabel(WGPURenderPipeline renderPipeline, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4134
+ WGPU_EXPORT void wgpuRenderPipelineSetLabel(WGPURenderPipeline renderPipeline, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4124
4135
  WGPU_EXPORT void wgpuRenderPipelineAddRef(WGPURenderPipeline renderPipeline) WGPU_FUNCTION_ATTRIBUTE;
4125
4136
  WGPU_EXPORT void wgpuRenderPipelineRelease(WGPURenderPipeline renderPipeline) WGPU_FUNCTION_ATTRIBUTE;
4126
4137
 
4127
4138
  // Methods of Sampler
4128
- WGPU_EXPORT void wgpuSamplerSetLabel(WGPUSampler sampler, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4139
+ WGPU_EXPORT void wgpuSamplerSetLabel(WGPUSampler sampler, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4129
4140
  WGPU_EXPORT void wgpuSamplerAddRef(WGPUSampler sampler) WGPU_FUNCTION_ATTRIBUTE;
4130
4141
  WGPU_EXPORT void wgpuSamplerRelease(WGPUSampler sampler) WGPU_FUNCTION_ATTRIBUTE;
4131
4142
 
@@ -4133,7 +4144,7 @@ WGPU_EXPORT void wgpuSamplerRelease(WGPUSampler sampler) WGPU_FUNCTION_ATTRIBUTE
4133
4144
  WGPU_EXPORT void wgpuShaderModuleGetCompilationInfo(WGPUShaderModule shaderModule, WGPUCompilationInfoCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE;
4134
4145
  WGPU_EXPORT WGPUFuture wgpuShaderModuleGetCompilationInfo2(WGPUShaderModule shaderModule, WGPUCompilationInfoCallbackInfo2 callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
4135
4146
  WGPU_EXPORT WGPUFuture wgpuShaderModuleGetCompilationInfoF(WGPUShaderModule shaderModule, WGPUCompilationInfoCallbackInfo callbackInfo) WGPU_FUNCTION_ATTRIBUTE;
4136
- WGPU_EXPORT void wgpuShaderModuleSetLabel(WGPUShaderModule shaderModule, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4147
+ WGPU_EXPORT void wgpuShaderModuleSetLabel(WGPUShaderModule shaderModule, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4137
4148
  WGPU_EXPORT void wgpuShaderModuleAddRef(WGPUShaderModule shaderModule) WGPU_FUNCTION_ATTRIBUTE;
4138
4149
  WGPU_EXPORT void wgpuShaderModuleRelease(WGPUShaderModule shaderModule) WGPU_FUNCTION_ATTRIBUTE;
4139
4150
 
@@ -4143,7 +4154,7 @@ WGPU_EXPORT WGPUBuffer wgpuSharedBufferMemoryCreateBuffer(WGPUSharedBufferMemory
4143
4154
  WGPU_EXPORT WGPUStatus wgpuSharedBufferMemoryEndAccess(WGPUSharedBufferMemory sharedBufferMemory, WGPUBuffer buffer, WGPUSharedBufferMemoryEndAccessState * descriptor) WGPU_FUNCTION_ATTRIBUTE;
4144
4155
  WGPU_EXPORT WGPUStatus wgpuSharedBufferMemoryGetProperties(WGPUSharedBufferMemory sharedBufferMemory, WGPUSharedBufferMemoryProperties * properties) WGPU_FUNCTION_ATTRIBUTE;
4145
4156
  WGPU_EXPORT WGPUBool wgpuSharedBufferMemoryIsDeviceLost(WGPUSharedBufferMemory sharedBufferMemory) WGPU_FUNCTION_ATTRIBUTE;
4146
- WGPU_EXPORT void wgpuSharedBufferMemorySetLabel(WGPUSharedBufferMemory sharedBufferMemory, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4157
+ WGPU_EXPORT void wgpuSharedBufferMemorySetLabel(WGPUSharedBufferMemory sharedBufferMemory, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4147
4158
  WGPU_EXPORT void wgpuSharedBufferMemoryAddRef(WGPUSharedBufferMemory sharedBufferMemory) WGPU_FUNCTION_ATTRIBUTE;
4148
4159
  WGPU_EXPORT void wgpuSharedBufferMemoryRelease(WGPUSharedBufferMemory sharedBufferMemory) WGPU_FUNCTION_ATTRIBUTE;
4149
4160
 
@@ -4158,7 +4169,7 @@ WGPU_EXPORT WGPUTexture wgpuSharedTextureMemoryCreateTexture(WGPUSharedTextureMe
4158
4169
  WGPU_EXPORT WGPUStatus wgpuSharedTextureMemoryEndAccess(WGPUSharedTextureMemory sharedTextureMemory, WGPUTexture texture, WGPUSharedTextureMemoryEndAccessState * descriptor) WGPU_FUNCTION_ATTRIBUTE;
4159
4170
  WGPU_EXPORT WGPUStatus wgpuSharedTextureMemoryGetProperties(WGPUSharedTextureMemory sharedTextureMemory, WGPUSharedTextureMemoryProperties * properties) WGPU_FUNCTION_ATTRIBUTE;
4160
4171
  WGPU_EXPORT WGPUBool wgpuSharedTextureMemoryIsDeviceLost(WGPUSharedTextureMemory sharedTextureMemory) WGPU_FUNCTION_ATTRIBUTE;
4161
- WGPU_EXPORT void wgpuSharedTextureMemorySetLabel(WGPUSharedTextureMemory sharedTextureMemory, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4172
+ WGPU_EXPORT void wgpuSharedTextureMemorySetLabel(WGPUSharedTextureMemory sharedTextureMemory, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4162
4173
  WGPU_EXPORT void wgpuSharedTextureMemoryAddRef(WGPUSharedTextureMemory sharedTextureMemory) WGPU_FUNCTION_ATTRIBUTE;
4163
4174
  WGPU_EXPORT void wgpuSharedTextureMemoryRelease(WGPUSharedTextureMemory sharedTextureMemory) WGPU_FUNCTION_ATTRIBUTE;
4164
4175
 
@@ -4166,19 +4177,12 @@ WGPU_EXPORT void wgpuSharedTextureMemoryRelease(WGPUSharedTextureMemory sharedTe
4166
4177
  WGPU_EXPORT void wgpuSurfaceConfigure(WGPUSurface surface, WGPUSurfaceConfiguration const * config) WGPU_FUNCTION_ATTRIBUTE;
4167
4178
  WGPU_EXPORT WGPUStatus wgpuSurfaceGetCapabilities(WGPUSurface surface, WGPUAdapter adapter, WGPUSurfaceCapabilities * capabilities) WGPU_FUNCTION_ATTRIBUTE;
4168
4179
  WGPU_EXPORT void wgpuSurfaceGetCurrentTexture(WGPUSurface surface, WGPUSurfaceTexture * surfaceTexture) WGPU_FUNCTION_ATTRIBUTE;
4169
- WGPU_EXPORT WGPUTextureFormat wgpuSurfaceGetPreferredFormat(WGPUSurface surface, WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE;
4170
4180
  WGPU_EXPORT void wgpuSurfacePresent(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE;
4181
+ WGPU_EXPORT void wgpuSurfaceSetLabel(WGPUSurface surface, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4171
4182
  WGPU_EXPORT void wgpuSurfaceUnconfigure(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE;
4172
4183
  WGPU_EXPORT void wgpuSurfaceAddRef(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE;
4173
4184
  WGPU_EXPORT void wgpuSurfaceRelease(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE;
4174
4185
 
4175
- // Methods of SwapChain
4176
- WGPU_EXPORT WGPUTexture wgpuSwapChainGetCurrentTexture(WGPUSwapChain swapChain) WGPU_FUNCTION_ATTRIBUTE;
4177
- WGPU_EXPORT WGPUTextureView wgpuSwapChainGetCurrentTextureView(WGPUSwapChain swapChain) WGPU_FUNCTION_ATTRIBUTE;
4178
- WGPU_EXPORT void wgpuSwapChainPresent(WGPUSwapChain swapChain) WGPU_FUNCTION_ATTRIBUTE;
4179
- WGPU_EXPORT void wgpuSwapChainAddRef(WGPUSwapChain swapChain) WGPU_FUNCTION_ATTRIBUTE;
4180
- WGPU_EXPORT void wgpuSwapChainRelease(WGPUSwapChain swapChain) WGPU_FUNCTION_ATTRIBUTE;
4181
-
4182
4186
  // Methods of Texture
4183
4187
  WGPU_EXPORT WGPUTextureView wgpuTextureCreateErrorView(WGPUTexture texture, WGPU_NULLABLE WGPUTextureViewDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
4184
4188
  WGPU_EXPORT WGPUTextureView wgpuTextureCreateView(WGPUTexture texture, WGPU_NULLABLE WGPUTextureViewDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE;
@@ -4191,12 +4195,12 @@ WGPU_EXPORT uint32_t wgpuTextureGetMipLevelCount(WGPUTexture texture) WGPU_FUNCT
4191
4195
  WGPU_EXPORT uint32_t wgpuTextureGetSampleCount(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE;
4192
4196
  WGPU_EXPORT WGPUTextureUsage wgpuTextureGetUsage(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE;
4193
4197
  WGPU_EXPORT uint32_t wgpuTextureGetWidth(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE;
4194
- WGPU_EXPORT void wgpuTextureSetLabel(WGPUTexture texture, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4198
+ WGPU_EXPORT void wgpuTextureSetLabel(WGPUTexture texture, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4195
4199
  WGPU_EXPORT void wgpuTextureAddRef(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE;
4196
4200
  WGPU_EXPORT void wgpuTextureRelease(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE;
4197
4201
 
4198
4202
  // Methods of TextureView
4199
- WGPU_EXPORT void wgpuTextureViewSetLabel(WGPUTextureView textureView, char const * label) WGPU_FUNCTION_ATTRIBUTE;
4203
+ WGPU_EXPORT void wgpuTextureViewSetLabel(WGPUTextureView textureView, WGPUStringView label) WGPU_FUNCTION_ATTRIBUTE;
4200
4204
  WGPU_EXPORT void wgpuTextureViewAddRef(WGPUTextureView textureView) WGPU_FUNCTION_ATTRIBUTE;
4201
4205
  WGPU_EXPORT void wgpuTextureViewRelease(WGPUTextureView textureView) WGPU_FUNCTION_ATTRIBUTE;
4202
4206