# !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!! #
#   This file is generated by webgpu.xs.PL  #
# !!!!!!!   ANY EDIT WILL BE LOST   !!!!!!! #

WGPUAdapter                                                     T_FETCHPTR
WGPUBindGroup                                                   T_FETCHPTR
WGPUBindGroupLayout                                             T_FETCHPTR
WGPUBuffer                                                      T_FETCHPTR
WGPUCommandBuffer                                               T_FETCHPTR
WGPUCommandEncoder                                              T_FETCHPTR
WGPUComputePassEncoder                                          T_FETCHPTR
WGPUComputePipeline                                             T_FETCHPTR
WGPUDevice                                                      T_FETCHPTR
WGPUInstance                                                    T_FETCHPTR
WGPUPipelineLayout                                              T_FETCHPTR
WGPUQuerySet                                                    T_FETCHPTR
WGPUQueue                                                       T_FETCHPTR
WGPURenderBundle                                                T_FETCHPTR
WGPURenderBundleEncoder                                         T_FETCHPTR
WGPURenderPassEncoder                                           T_FETCHPTR
WGPURenderPipeline                                              T_FETCHPTR
WGPUSampler                                                     T_FETCHPTR
WGPUShaderModule                                                T_FETCHPTR
WGPUSurface                                                     T_FETCHPTR
WGPUTexture                                                     T_FETCHPTR
WGPUTextureView                                                 T_FETCHPTR
WGPUBufferMapCallback                                           T_FETCHPTR
WGPUCompilationInfoCallback                                     T_FETCHPTR
WGPUCreateComputePipelineAsyncCallback                          T_FETCHPTR
WGPUCreateRenderPipelineAsyncCallback                           T_FETCHPTR
WGPUDeviceLostCallback                                          T_FETCHPTR
WGPUErrorCallback                                               T_FETCHPTR
WGPUProc                                                        T_FETCHPTR
WGPUQueueWorkDoneCallback                                       T_FETCHPTR
WGPURequestAdapterCallback                                      T_FETCHPTR
WGPURequestDeviceCallback                                       T_FETCHPTR
WGPUChainedStruct                                               T_FETCH
WGPUChainedStruct *                                             T_FETCHPTR
WGPUChainedStruct const *                                       T_FETCHPTR
struct WGPUChainedStruct const *                                T_FETCHPTR
WebGPU::Direct::ChainedStruct                                   T_SV
WGPUChainedStructOut                                            T_FETCH
WGPUChainedStructOut *                                          T_FETCHPTR
WGPUChainedStructOut const *                                    T_FETCHPTR
struct WGPUChainedStructOut const *                             T_FETCHPTR
WebGPU::Direct::ChainedStructOut                                T_SV
WGPUAdapterProperties                                           T_FETCH
WGPUAdapterProperties *                                         T_FETCHPTR
WGPUAdapterProperties const *                                   T_FETCHPTR
struct WGPUAdapterProperties const *                            T_FETCHPTR
WebGPU::Direct::AdapterProperties                               T_SV
WGPUBindGroupEntry                                              T_FETCH
WGPUBindGroupEntry *                                            T_FETCHPTR
WGPUBindGroupEntry const *                                      T_FETCHPTR
struct WGPUBindGroupEntry const *                               T_FETCHPTR
WebGPU::Direct::BindGroupEntry                                  T_SV
WGPUBlendComponent                                              T_FETCH
WGPUBlendComponent *                                            T_FETCHPTR
WGPUBlendComponent const *                                      T_FETCHPTR
struct WGPUBlendComponent const *                               T_FETCHPTR
WebGPU::Direct::BlendComponent                                  T_SV
WGPUBufferBindingLayout                                         T_FETCH
WGPUBufferBindingLayout *                                       T_FETCHPTR
WGPUBufferBindingLayout const *                                 T_FETCHPTR
struct WGPUBufferBindingLayout const *                          T_FETCHPTR
WebGPU::Direct::BufferBindingLayout                             T_SV
WGPUBufferDescriptor                                            T_FETCH
WGPUBufferDescriptor *                                          T_FETCHPTR
WGPUBufferDescriptor const *                                    T_FETCHPTR
struct WGPUBufferDescriptor const *                             T_FETCHPTR
WebGPU::Direct::BufferDescriptor                                T_SV
WGPUColor                                                       T_FETCH
WGPUColor *                                                     T_FETCHPTR
WGPUColor const *                                               T_FETCHPTR
struct WGPUColor const *                                        T_FETCHPTR
WebGPU::Direct::Color                                           T_SV
WGPUCommandBufferDescriptor                                     T_FETCH
WGPUCommandBufferDescriptor *                                   T_FETCHPTR
WGPUCommandBufferDescriptor const *                             T_FETCHPTR
struct WGPUCommandBufferDescriptor const *                      T_FETCHPTR
WebGPU::Direct::CommandBufferDescriptor                         T_SV
WGPUCommandEncoderDescriptor                                    T_FETCH
WGPUCommandEncoderDescriptor *                                  T_FETCHPTR
WGPUCommandEncoderDescriptor const *                            T_FETCHPTR
struct WGPUCommandEncoderDescriptor const *                     T_FETCHPTR
WebGPU::Direct::CommandEncoderDescriptor                        T_SV
WGPUCompilationMessage                                          T_FETCH
WGPUCompilationMessage *                                        T_FETCHPTR
WGPUCompilationMessage const *                                  T_FETCHPTR
struct WGPUCompilationMessage const *                           T_FETCHPTR
WebGPU::Direct::CompilationMessage                              T_SV
WGPUComputePassTimestampWrites                                  T_FETCH
WGPUComputePassTimestampWrites *                                T_FETCHPTR
WGPUComputePassTimestampWrites const *                          T_FETCHPTR
struct WGPUComputePassTimestampWrites const *                   T_FETCHPTR
WebGPU::Direct::ComputePassTimestampWrites                      T_SV
WGPUConstantEntry                                               T_FETCH
WGPUConstantEntry *                                             T_FETCHPTR
WGPUConstantEntry const *                                       T_FETCHPTR
struct WGPUConstantEntry const *                                T_FETCHPTR
WebGPU::Direct::ConstantEntry                                   T_SV
WGPUExtent3D                                                    T_FETCH
WGPUExtent3D *                                                  T_FETCHPTR
WGPUExtent3D const *                                            T_FETCHPTR
struct WGPUExtent3D const *                                     T_FETCHPTR
WebGPU::Direct::Extent3D                                        T_SV
WGPUInstanceDescriptor                                          T_FETCH
WGPUInstanceDescriptor *                                        T_FETCHPTR
WGPUInstanceDescriptor const *                                  T_FETCHPTR
struct WGPUInstanceDescriptor const *                           T_FETCHPTR
WebGPU::Direct::InstanceDescriptor                              T_SV
WGPULimits                                                      T_FETCH
WGPULimits *                                                    T_FETCHPTR
WGPULimits const *                                              T_FETCHPTR
struct WGPULimits const *                                       T_FETCHPTR
WebGPU::Direct::Limits                                          T_SV
WGPUMultisampleState                                            T_FETCH
WGPUMultisampleState *                                          T_FETCHPTR
WGPUMultisampleState const *                                    T_FETCHPTR
struct WGPUMultisampleState const *                             T_FETCHPTR
WebGPU::Direct::MultisampleState                                T_SV
WGPUOrigin3D                                                    T_FETCH
WGPUOrigin3D *                                                  T_FETCHPTR
WGPUOrigin3D const *                                            T_FETCHPTR
struct WGPUOrigin3D const *                                     T_FETCHPTR
WebGPU::Direct::Origin3D                                        T_SV
WGPUPipelineLayoutDescriptor                                    T_FETCH
WGPUPipelineLayoutDescriptor *                                  T_FETCHPTR
WGPUPipelineLayoutDescriptor const *                            T_FETCHPTR
struct WGPUPipelineLayoutDescriptor const *                     T_FETCHPTR
WebGPU::Direct::PipelineLayoutDescriptor                        T_SV
WGPUPrimitiveDepthClipControl                                   T_FETCH
WGPUPrimitiveDepthClipControl *                                 T_FETCHPTR
WGPUPrimitiveDepthClipControl const *                           T_FETCHPTR
struct WGPUPrimitiveDepthClipControl const *                    T_FETCHPTR
WebGPU::Direct::PrimitiveDepthClipControl                       T_SV
WGPUPrimitiveState                                              T_FETCH
WGPUPrimitiveState *                                            T_FETCHPTR
WGPUPrimitiveState const *                                      T_FETCHPTR
struct WGPUPrimitiveState const *                               T_FETCHPTR
WebGPU::Direct::PrimitiveState                                  T_SV
WGPUQuerySetDescriptor                                          T_FETCH
WGPUQuerySetDescriptor *                                        T_FETCHPTR
WGPUQuerySetDescriptor const *                                  T_FETCHPTR
struct WGPUQuerySetDescriptor const *                           T_FETCHPTR
WebGPU::Direct::QuerySetDescriptor                              T_SV
WGPUQueueDescriptor                                             T_FETCH
WGPUQueueDescriptor *                                           T_FETCHPTR
WGPUQueueDescriptor const *                                     T_FETCHPTR
struct WGPUQueueDescriptor const *                              T_FETCHPTR
WebGPU::Direct::QueueDescriptor                                 T_SV
WGPURenderBundleDescriptor                                      T_FETCH
WGPURenderBundleDescriptor *                                    T_FETCHPTR
WGPURenderBundleDescriptor const *                              T_FETCHPTR
struct WGPURenderBundleDescriptor const *                       T_FETCHPTR
WebGPU::Direct::RenderBundleDescriptor                          T_SV
WGPURenderBundleEncoderDescriptor                               T_FETCH
WGPURenderBundleEncoderDescriptor *                             T_FETCHPTR
WGPURenderBundleEncoderDescriptor const *                       T_FETCHPTR
struct WGPURenderBundleEncoderDescriptor const *                T_FETCHPTR
WebGPU::Direct::RenderBundleEncoderDescriptor                   T_SV
WGPURenderPassDepthStencilAttachment                            T_FETCH
WGPURenderPassDepthStencilAttachment *                          T_FETCHPTR
WGPURenderPassDepthStencilAttachment const *                    T_FETCHPTR
struct WGPURenderPassDepthStencilAttachment const *             T_FETCHPTR
WebGPU::Direct::RenderPassDepthStencilAttachment                T_SV
WGPURenderPassDescriptorMaxDrawCount                            T_FETCH
WGPURenderPassDescriptorMaxDrawCount *                          T_FETCHPTR
WGPURenderPassDescriptorMaxDrawCount const *                    T_FETCHPTR
struct WGPURenderPassDescriptorMaxDrawCount const *             T_FETCHPTR
WebGPU::Direct::RenderPassDescriptorMaxDrawCount                T_SV
WGPURenderPassTimestampWrites                                   T_FETCH
WGPURenderPassTimestampWrites *                                 T_FETCHPTR
WGPURenderPassTimestampWrites const *                           T_FETCHPTR
struct WGPURenderPassTimestampWrites const *                    T_FETCHPTR
WebGPU::Direct::RenderPassTimestampWrites                       T_SV
WGPURequestAdapterOptions                                       T_FETCH
WGPURequestAdapterOptions *                                     T_FETCHPTR
WGPURequestAdapterOptions const *                               T_FETCHPTR
struct WGPURequestAdapterOptions const *                        T_FETCHPTR
WebGPU::Direct::RequestAdapterOptions                           T_SV
WGPUSamplerBindingLayout                                        T_FETCH
WGPUSamplerBindingLayout *                                      T_FETCHPTR
WGPUSamplerBindingLayout const *                                T_FETCHPTR
struct WGPUSamplerBindingLayout const *                         T_FETCHPTR
WebGPU::Direct::SamplerBindingLayout                            T_SV
WGPUSamplerDescriptor                                           T_FETCH
WGPUSamplerDescriptor *                                         T_FETCHPTR
WGPUSamplerDescriptor const *                                   T_FETCHPTR
struct WGPUSamplerDescriptor const *                            T_FETCHPTR
WebGPU::Direct::SamplerDescriptor                               T_SV
WGPUShaderModuleCompilationHint                                 T_FETCH
WGPUShaderModuleCompilationHint *                               T_FETCHPTR
WGPUShaderModuleCompilationHint const *                         T_FETCHPTR
struct WGPUShaderModuleCompilationHint const *                  T_FETCHPTR
WebGPU::Direct::ShaderModuleCompilationHint                     T_SV
WGPUShaderModuleSPIRVDescriptor                                 T_FETCH
WGPUShaderModuleSPIRVDescriptor *                               T_FETCHPTR
WGPUShaderModuleSPIRVDescriptor const *                         T_FETCHPTR
struct WGPUShaderModuleSPIRVDescriptor const *                  T_FETCHPTR
WebGPU::Direct::ShaderModuleSPIRVDescriptor                     T_SV
WGPUShaderModuleWGSLDescriptor                                  T_FETCH
WGPUShaderModuleWGSLDescriptor *                                T_FETCHPTR
WGPUShaderModuleWGSLDescriptor const *                          T_FETCHPTR
struct WGPUShaderModuleWGSLDescriptor const *                   T_FETCHPTR
WebGPU::Direct::ShaderModuleWGSLDescriptor                      T_SV
WGPUStencilFaceState                                            T_FETCH
WGPUStencilFaceState *                                          T_FETCHPTR
WGPUStencilFaceState const *                                    T_FETCHPTR
struct WGPUStencilFaceState const *                             T_FETCHPTR
WebGPU::Direct::StencilFaceState                                T_SV
WGPUStorageTextureBindingLayout                                 T_FETCH
WGPUStorageTextureBindingLayout *                               T_FETCHPTR
WGPUStorageTextureBindingLayout const *                         T_FETCHPTR
struct WGPUStorageTextureBindingLayout const *                  T_FETCHPTR
WebGPU::Direct::StorageTextureBindingLayout                     T_SV
WGPUSurfaceCapabilities                                         T_FETCH
WGPUSurfaceCapabilities *                                       T_FETCHPTR
WGPUSurfaceCapabilities const *                                 T_FETCHPTR
struct WGPUSurfaceCapabilities const *                          T_FETCHPTR
WebGPU::Direct::SurfaceCapabilities                             T_SV
WGPUSurfaceConfiguration                                        T_FETCH
WGPUSurfaceConfiguration *                                      T_FETCHPTR
WGPUSurfaceConfiguration const *                                T_FETCHPTR
struct WGPUSurfaceConfiguration const *                         T_FETCHPTR
WebGPU::Direct::SurfaceConfiguration                            T_SV
WGPUSurfaceDescriptor                                           T_FETCH
WGPUSurfaceDescriptor *                                         T_FETCHPTR
WGPUSurfaceDescriptor const *                                   T_FETCHPTR
struct WGPUSurfaceDescriptor const *                            T_FETCHPTR
WebGPU::Direct::SurfaceDescriptor                               T_SV
WGPUSurfaceDescriptorFromAndroidNativeWindow                    T_FETCH
WGPUSurfaceDescriptorFromAndroidNativeWindow *                  T_FETCHPTR
WGPUSurfaceDescriptorFromAndroidNativeWindow const *            T_FETCHPTR
struct WGPUSurfaceDescriptorFromAndroidNativeWindow const *     T_FETCHPTR
WebGPU::Direct::SurfaceDescriptorFromAndroidNativeWindow        T_SV
WGPUSurfaceDescriptorFromCanvasHTMLSelector                     T_FETCH
WGPUSurfaceDescriptorFromCanvasHTMLSelector *                   T_FETCHPTR
WGPUSurfaceDescriptorFromCanvasHTMLSelector const *             T_FETCHPTR
struct WGPUSurfaceDescriptorFromCanvasHTMLSelector const *      T_FETCHPTR
WebGPU::Direct::SurfaceDescriptorFromCanvasHTMLSelector         T_SV
WGPUSurfaceDescriptorFromMetalLayer                             T_FETCH
WGPUSurfaceDescriptorFromMetalLayer *                           T_FETCHPTR
WGPUSurfaceDescriptorFromMetalLayer const *                     T_FETCHPTR
struct WGPUSurfaceDescriptorFromMetalLayer const *              T_FETCHPTR
WebGPU::Direct::SurfaceDescriptorFromMetalLayer                 T_SV
WGPUSurfaceDescriptorFromWaylandSurface                         T_FETCH
WGPUSurfaceDescriptorFromWaylandSurface *                       T_FETCHPTR
WGPUSurfaceDescriptorFromWaylandSurface const *                 T_FETCHPTR
struct WGPUSurfaceDescriptorFromWaylandSurface const *          T_FETCHPTR
WebGPU::Direct::SurfaceDescriptorFromWaylandSurface             T_SV
WGPUSurfaceDescriptorFromWindowsHWND                            T_FETCH
WGPUSurfaceDescriptorFromWindowsHWND *                          T_FETCHPTR
WGPUSurfaceDescriptorFromWindowsHWND const *                    T_FETCHPTR
struct WGPUSurfaceDescriptorFromWindowsHWND const *             T_FETCHPTR
WebGPU::Direct::SurfaceDescriptorFromWindowsHWND                T_SV
WGPUSurfaceDescriptorFromXcbWindow                              T_FETCH
WGPUSurfaceDescriptorFromXcbWindow *                            T_FETCHPTR
WGPUSurfaceDescriptorFromXcbWindow const *                      T_FETCHPTR
struct WGPUSurfaceDescriptorFromXcbWindow const *               T_FETCHPTR
WebGPU::Direct::SurfaceDescriptorFromXcbWindow                  T_SV
WGPUSurfaceDescriptorFromXlibWindow                             T_FETCH
WGPUSurfaceDescriptorFromXlibWindow *                           T_FETCHPTR
WGPUSurfaceDescriptorFromXlibWindow const *                     T_FETCHPTR
struct WGPUSurfaceDescriptorFromXlibWindow const *              T_FETCHPTR
WebGPU::Direct::SurfaceDescriptorFromXlibWindow                 T_SV
WGPUSurfaceTexture                                              T_FETCH
WGPUSurfaceTexture *                                            T_FETCHPTR
WGPUSurfaceTexture const *                                      T_FETCHPTR
struct WGPUSurfaceTexture const *                               T_FETCHPTR
WebGPU::Direct::SurfaceTexture                                  T_SV
WGPUTextureBindingLayout                                        T_FETCH
WGPUTextureBindingLayout *                                      T_FETCHPTR
WGPUTextureBindingLayout const *                                T_FETCHPTR
struct WGPUTextureBindingLayout const *                         T_FETCHPTR
WebGPU::Direct::TextureBindingLayout                            T_SV
WGPUTextureDataLayout                                           T_FETCH
WGPUTextureDataLayout *                                         T_FETCHPTR
WGPUTextureDataLayout const *                                   T_FETCHPTR
struct WGPUTextureDataLayout const *                            T_FETCHPTR
WebGPU::Direct::TextureDataLayout                               T_SV
WGPUTextureViewDescriptor                                       T_FETCH
WGPUTextureViewDescriptor *                                     T_FETCHPTR
WGPUTextureViewDescriptor const *                               T_FETCHPTR
struct WGPUTextureViewDescriptor const *                        T_FETCHPTR
WebGPU::Direct::TextureViewDescriptor                           T_SV
WGPUVertexAttribute                                             T_FETCH
WGPUVertexAttribute *                                           T_FETCHPTR
WGPUVertexAttribute const *                                     T_FETCHPTR
struct WGPUVertexAttribute const *                              T_FETCHPTR
WebGPU::Direct::VertexAttribute                                 T_SV
WGPUBindGroupDescriptor                                         T_FETCH
WGPUBindGroupDescriptor *                                       T_FETCHPTR
WGPUBindGroupDescriptor const *                                 T_FETCHPTR
struct WGPUBindGroupDescriptor const *                          T_FETCHPTR
WebGPU::Direct::BindGroupDescriptor                             T_SV
WGPUBindGroupLayoutEntry                                        T_FETCH
WGPUBindGroupLayoutEntry *                                      T_FETCHPTR
WGPUBindGroupLayoutEntry const *                                T_FETCHPTR
struct WGPUBindGroupLayoutEntry const *                         T_FETCHPTR
WebGPU::Direct::BindGroupLayoutEntry                            T_SV
WGPUBlendState                                                  T_FETCH
WGPUBlendState *                                                T_FETCHPTR
WGPUBlendState const *                                          T_FETCHPTR
struct WGPUBlendState const *                                   T_FETCHPTR
WebGPU::Direct::BlendState                                      T_SV
WGPUCompilationInfo                                             T_FETCH
WGPUCompilationInfo *                                           T_FETCHPTR
WGPUCompilationInfo const *                                     T_FETCHPTR
struct WGPUCompilationInfo const *                              T_FETCHPTR
WebGPU::Direct::CompilationInfo                                 T_SV
WGPUComputePassDescriptor                                       T_FETCH
WGPUComputePassDescriptor *                                     T_FETCHPTR
WGPUComputePassDescriptor const *                               T_FETCHPTR
struct WGPUComputePassDescriptor const *                        T_FETCHPTR
WebGPU::Direct::ComputePassDescriptor                           T_SV
WGPUDepthStencilState                                           T_FETCH
WGPUDepthStencilState *                                         T_FETCHPTR
WGPUDepthStencilState const *                                   T_FETCHPTR
struct WGPUDepthStencilState const *                            T_FETCHPTR
WebGPU::Direct::DepthStencilState                               T_SV
WGPUImageCopyBuffer                                             T_FETCH
WGPUImageCopyBuffer *                                           T_FETCHPTR
WGPUImageCopyBuffer const *                                     T_FETCHPTR
struct WGPUImageCopyBuffer const *                              T_FETCHPTR
WebGPU::Direct::ImageCopyBuffer                                 T_SV
WGPUImageCopyTexture                                            T_FETCH
WGPUImageCopyTexture *                                          T_FETCHPTR
WGPUImageCopyTexture const *                                    T_FETCHPTR
struct WGPUImageCopyTexture const *                             T_FETCHPTR
WebGPU::Direct::ImageCopyTexture                                T_SV
WGPUProgrammableStageDescriptor                                 T_FETCH
WGPUProgrammableStageDescriptor *                               T_FETCHPTR
WGPUProgrammableStageDescriptor const *                         T_FETCHPTR
struct WGPUProgrammableStageDescriptor const *                  T_FETCHPTR
WebGPU::Direct::ProgrammableStageDescriptor                     T_SV
WGPURenderPassColorAttachment                                   T_FETCH
WGPURenderPassColorAttachment *                                 T_FETCHPTR
WGPURenderPassColorAttachment const *                           T_FETCHPTR
struct WGPURenderPassColorAttachment const *                    T_FETCHPTR
WebGPU::Direct::RenderPassColorAttachment                       T_SV
WGPURequiredLimits                                              T_FETCH
WGPURequiredLimits *                                            T_FETCHPTR
WGPURequiredLimits const *                                      T_FETCHPTR
struct WGPURequiredLimits const *                               T_FETCHPTR
WebGPU::Direct::RequiredLimits                                  T_SV
WGPUShaderModuleDescriptor                                      T_FETCH
WGPUShaderModuleDescriptor *                                    T_FETCHPTR
WGPUShaderModuleDescriptor const *                              T_FETCHPTR
struct WGPUShaderModuleDescriptor const *                       T_FETCHPTR
WebGPU::Direct::ShaderModuleDescriptor                          T_SV
WGPUSupportedLimits                                             T_FETCH
WGPUSupportedLimits *                                           T_FETCHPTR
WGPUSupportedLimits const *                                     T_FETCHPTR
struct WGPUSupportedLimits const *                              T_FETCHPTR
WebGPU::Direct::SupportedLimits                                 T_SV
WGPUTextureDescriptor                                           T_FETCH
WGPUTextureDescriptor *                                         T_FETCHPTR
WGPUTextureDescriptor const *                                   T_FETCHPTR
struct WGPUTextureDescriptor const *                            T_FETCHPTR
WebGPU::Direct::TextureDescriptor                               T_SV
WGPUVertexBufferLayout                                          T_FETCH
WGPUVertexBufferLayout *                                        T_FETCHPTR
WGPUVertexBufferLayout const *                                  T_FETCHPTR
struct WGPUVertexBufferLayout const *                           T_FETCHPTR
WebGPU::Direct::VertexBufferLayout                              T_SV
WGPUBindGroupLayoutDescriptor                                   T_FETCH
WGPUBindGroupLayoutDescriptor *                                 T_FETCHPTR
WGPUBindGroupLayoutDescriptor const *                           T_FETCHPTR
struct WGPUBindGroupLayoutDescriptor const *                    T_FETCHPTR
WebGPU::Direct::BindGroupLayoutDescriptor                       T_SV
WGPUColorTargetState                                            T_FETCH
WGPUColorTargetState *                                          T_FETCHPTR
WGPUColorTargetState const *                                    T_FETCHPTR
struct WGPUColorTargetState const *                             T_FETCHPTR
WebGPU::Direct::ColorTargetState                                T_SV
WGPUComputePipelineDescriptor                                   T_FETCH
WGPUComputePipelineDescriptor *                                 T_FETCHPTR
WGPUComputePipelineDescriptor const *                           T_FETCHPTR
struct WGPUComputePipelineDescriptor const *                    T_FETCHPTR
WebGPU::Direct::ComputePipelineDescriptor                       T_SV
WGPUDeviceDescriptor                                            T_FETCH
WGPUDeviceDescriptor *                                          T_FETCHPTR
WGPUDeviceDescriptor const *                                    T_FETCHPTR
struct WGPUDeviceDescriptor const *                             T_FETCHPTR
WebGPU::Direct::DeviceDescriptor                                T_SV
WGPURenderPassDescriptor                                        T_FETCH
WGPURenderPassDescriptor *                                      T_FETCHPTR
WGPURenderPassDescriptor const *                                T_FETCHPTR
struct WGPURenderPassDescriptor const *                         T_FETCHPTR
WebGPU::Direct::RenderPassDescriptor                            T_SV
WGPUVertexState                                                 T_FETCH
WGPUVertexState *                                               T_FETCHPTR
WGPUVertexState const *                                         T_FETCHPTR
struct WGPUVertexState const *                                  T_FETCHPTR
WebGPU::Direct::VertexState                                     T_SV
WGPUFragmentState                                               T_FETCH
WGPUFragmentState *                                             T_FETCHPTR
WGPUFragmentState const *                                       T_FETCHPTR
struct WGPUFragmentState const *                                T_FETCHPTR
WebGPU::Direct::FragmentState                                   T_SV
WGPURenderPipelineDescriptor                                    T_FETCH
WGPURenderPipelineDescriptor *                                  T_FETCHPTR
WGPURenderPipelineDescriptor const *                            T_FETCHPTR
struct WGPURenderPipelineDescriptor const *                     T_FETCHPTR
WebGPU::Direct::RenderPipelineDescriptor                        T_SV
WGPUAdapterType                                                 T_IV
WGPUAdapterType *                                               T_IV
WGPUAdapterType const *                                         T_IV
WGPUAddressMode                                                 T_IV
WGPUAddressMode *                                               T_IV
WGPUAddressMode const *                                         T_IV
WGPUBackendType                                                 T_IV
WGPUBackendType *                                               T_IV
WGPUBackendType const *                                         T_IV
WGPUBlendFactor                                                 T_IV
WGPUBlendFactor *                                               T_IV
WGPUBlendFactor const *                                         T_IV
WGPUBlendOperation                                              T_IV
WGPUBlendOperation *                                            T_IV
WGPUBlendOperation const *                                      T_IV
WGPUBool                                                        T_IV
WGPUBool *                                                      T_IV
WGPUBool const *                                                T_IV
WGPUBufferBindingType                                           T_IV
WGPUBufferBindingType *                                         T_IV
WGPUBufferBindingType const *                                   T_IV
WGPUBufferMapAsyncStatus                                        T_IV
WGPUBufferMapAsyncStatus *                                      T_IV
WGPUBufferMapAsyncStatus const *                                T_IV
WGPUBufferMapState                                              T_IV
WGPUBufferMapState *                                            T_IV
WGPUBufferMapState const *                                      T_IV
WGPUBufferUsage                                                 T_IV
WGPUBufferUsage *                                               T_IV
WGPUBufferUsage const *                                         T_IV
WGPUBufferUsageFlags                                            T_IV
WGPUBufferUsageFlags *                                          T_IV
WGPUBufferUsageFlags const *                                    T_IV
WGPUColorWriteMask                                              T_IV
WGPUColorWriteMask *                                            T_IV
WGPUColorWriteMask const *                                      T_IV
WGPUColorWriteMaskFlags                                         T_IV
WGPUColorWriteMaskFlags *                                       T_IV
WGPUColorWriteMaskFlags const *                                 T_IV
WGPUCompareFunction                                             T_IV
WGPUCompareFunction *                                           T_IV
WGPUCompareFunction const *                                     T_IV
WGPUCompilationInfoRequestStatus                                T_IV
WGPUCompilationInfoRequestStatus *                              T_IV
WGPUCompilationInfoRequestStatus const *                        T_IV
WGPUCompilationMessageType                                      T_IV
WGPUCompilationMessageType *                                    T_IV
WGPUCompilationMessageType const *                              T_IV
WGPUCompositeAlphaMode                                          T_IV
WGPUCompositeAlphaMode *                                        T_IV
WGPUCompositeAlphaMode const *                                  T_IV
WGPUCreatePipelineAsyncStatus                                   T_IV
WGPUCreatePipelineAsyncStatus *                                 T_IV
WGPUCreatePipelineAsyncStatus const *                           T_IV
WGPUCullMode                                                    T_IV
WGPUCullMode *                                                  T_IV
WGPUCullMode const *                                            T_IV
WGPUDeviceLostReason                                            T_IV
WGPUDeviceLostReason *                                          T_IV
WGPUDeviceLostReason const *                                    T_IV
WGPUErrorFilter                                                 T_IV
WGPUErrorFilter *                                               T_IV
WGPUErrorFilter const *                                         T_IV
WGPUErrorType                                                   T_IV
WGPUErrorType *                                                 T_IV
WGPUErrorType const *                                           T_IV
WGPUFeatureName                                                 T_IV
WGPUFeatureName *                                               T_IV
WGPUFeatureName const *                                         T_IV
WGPUFilterMode                                                  T_IV
WGPUFilterMode *                                                T_IV
WGPUFilterMode const *                                          T_IV
WGPUFlags                                                       T_IV
WGPUFlags *                                                     T_IV
WGPUFlags const *                                               T_IV
WGPUFrontFace                                                   T_IV
WGPUFrontFace *                                                 T_IV
WGPUFrontFace const *                                           T_IV
WGPUIndexFormat                                                 T_IV
WGPUIndexFormat *                                               T_IV
WGPUIndexFormat const *                                         T_IV
WGPULoadOp                                                      T_IV
WGPULoadOp *                                                    T_IV
WGPULoadOp const *                                              T_IV
WGPUMapMode                                                     T_IV
WGPUMapMode *                                                   T_IV
WGPUMapMode const *                                             T_IV
WGPUMapModeFlags                                                T_IV
WGPUMapModeFlags *                                              T_IV
WGPUMapModeFlags const *                                        T_IV
WGPUMipmapFilterMode                                            T_IV
WGPUMipmapFilterMode *                                          T_IV
WGPUMipmapFilterMode const *                                    T_IV
WGPUPowerPreference                                             T_IV
WGPUPowerPreference *                                           T_IV
WGPUPowerPreference const *                                     T_IV
WGPUPresentMode                                                 T_IV
WGPUPresentMode *                                               T_IV
WGPUPresentMode const *                                         T_IV
WGPUPrimitiveTopology                                           T_IV
WGPUPrimitiveTopology *                                         T_IV
WGPUPrimitiveTopology const *                                   T_IV
WGPUQueryType                                                   T_IV
WGPUQueryType *                                                 T_IV
WGPUQueryType const *                                           T_IV
WGPUQueueWorkDoneStatus                                         T_IV
WGPUQueueWorkDoneStatus *                                       T_IV
WGPUQueueWorkDoneStatus const *                                 T_IV
WGPURequestAdapterStatus                                        T_IV
WGPURequestAdapterStatus *                                      T_IV
WGPURequestAdapterStatus const *                                T_IV
WGPURequestDeviceStatus                                         T_IV
WGPURequestDeviceStatus *                                       T_IV
WGPURequestDeviceStatus const *                                 T_IV
WGPUSType                                                       T_IV
WGPUSType *                                                     T_IV
WGPUSType const *                                               T_IV
WGPUSamplerBindingType                                          T_IV
WGPUSamplerBindingType *                                        T_IV
WGPUSamplerBindingType const *                                  T_IV
WGPUShaderStage                                                 T_IV
WGPUShaderStage *                                               T_IV
WGPUShaderStage const *                                         T_IV
WGPUShaderStageFlags                                            T_IV
WGPUShaderStageFlags *                                          T_IV
WGPUShaderStageFlags const *                                    T_IV
WGPUStencilOperation                                            T_IV
WGPUStencilOperation *                                          T_IV
WGPUStencilOperation const *                                    T_IV
WGPUStorageTextureAccess                                        T_IV
WGPUStorageTextureAccess *                                      T_IV
WGPUStorageTextureAccess const *                                T_IV
WGPUStoreOp                                                     T_IV
WGPUStoreOp *                                                   T_IV
WGPUStoreOp const *                                             T_IV
WGPUSurfaceGetCurrentTextureStatus                              T_IV
WGPUSurfaceGetCurrentTextureStatus *                            T_IV
WGPUSurfaceGetCurrentTextureStatus const *                      T_IV
WGPUTextureAspect                                               T_IV
WGPUTextureAspect *                                             T_IV
WGPUTextureAspect const *                                       T_IV
WGPUTextureDimension                                            T_IV
WGPUTextureDimension *                                          T_IV
WGPUTextureDimension const *                                    T_IV
WGPUTextureFormat                                               T_IV
WGPUTextureFormat *                                             T_IV
WGPUTextureFormat const *                                       T_IV
WGPUTextureSampleType                                           T_IV
WGPUTextureSampleType *                                         T_IV
WGPUTextureSampleType const *                                   T_IV
WGPUTextureUsage                                                T_IV
WGPUTextureUsage *                                              T_IV
WGPUTextureUsage const *                                        T_IV
WGPUTextureUsageFlags                                           T_IV
WGPUTextureUsageFlags *                                         T_IV
WGPUTextureUsageFlags const *                                   T_IV
WGPUTextureViewDimension                                        T_IV
WGPUTextureViewDimension *                                      T_IV
WGPUTextureViewDimension const *                                T_IV
WGPUVertexFormat                                                T_IV
WGPUVertexFormat *                                              T_IV
WGPUVertexFormat const *                                        T_IV
WGPUVertexStepMode                                              T_IV
WGPUVertexStepMode *                                            T_IV
WGPUVertexStepMode const *                                      T_IV
bool                                                            T_BOOL
bool *                                                          T_BOOL
bool const *                                                    T_BOOL
char                                                            T_PV
char *                                                          T_PV
char const *                                                    T_PV
double                                                          T_DOUBLE
double *                                                        T_DOUBLE
double const *                                                  T_DOUBLE
float                                                           T_FLOAT
float *                                                         T_FLOAT
float const *                                                   T_FLOAT
int32_t                                                         T_IV
int32_t *                                                       T_IV
int32_t const *                                                 T_IV
size_t                                                          T_IV
size_t *                                                        T_IV
size_t const *                                                  T_IV
uint16_t                                                        T_IV
uint16_t *                                                      T_IV
uint16_t const *                                                T_IV
uint32_t                                                        T_IV
uint32_t *                                                      T_IV
uint32_t const *                                                T_IV
uint64_t                                                        T_IV
uint64_t *                                                      T_IV
uint64_t const *                                                T_IV
void                                                            T_VOID
void *                                                          T_VOID
void const *                                                    T_VOID
WebGPU::Direct::MappedBuffer                                    T_FETCHPTR

# We do the tr/:/_/ in the output because ParseXS doesn't for outputs
INPUT
T_VOID
    $var = ($type) _get_struct_ptr(aTHX_ $arg, NULL)
T_FETCH
    $var = *($type *) _get_struct_ptr(aTHX_ $arg, newSVpvs(\"${ my $t=$type; $t=~s/ .*//; $t=~tr/_/:/; $t=~s/^WGPU/WebGPU::Direct::/; \$t}\"))
T_FETCHPTR
    $var = ($type) _get_struct_ptr(aTHX_ $arg, newSVpvs(\"${ my $t=$type; $t=~s/ .*//; $t=~tr/_/:/; $t=~s/^WGPU/WebGPU::Direct::/; \$t}\"))

OUTPUT
T_VOID
    $arg = _void__wrap($var);
T_FETCH
    $arg = ${$type=~tr/:/_/, \$type}__wrap($var);
T_FETCHPTR
    $arg = ${$type=~tr/:/_/, \$type}__wrap($var);
