{-# LANGUAGE ForeignFunctionInterface #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -Wno-unused-imports #-}

-- This file was generated by wgpu-raw-hs-codegen on:
--   2021-08-25T10:02:03.522705
-- Using wgpu-native git hash:
--   b10496e7eed9349f0fd541e6dfe5029cb436de74 wgpu-native (v0.9.2.2)

module WGPU.Raw.Generated.Fun where

import Control.Monad.IO.Class (MonadIO, liftIO)
import Foreign
import Foreign.C
import WGPU.Raw.Generated.Enum.WGPUAdapterType
import WGPU.Raw.Generated.Enum.WGPUAddressMode
import WGPU.Raw.Generated.Enum.WGPUBackendType
import WGPU.Raw.Generated.Enum.WGPUBlendFactor
import WGPU.Raw.Generated.Enum.WGPUBlendOperation
import WGPU.Raw.Generated.Enum.WGPUBufferBindingType
import WGPU.Raw.Generated.Enum.WGPUBufferMapAsyncStatus
import WGPU.Raw.Generated.Enum.WGPUBufferUsage
import WGPU.Raw.Generated.Enum.WGPUColorWriteMask
import WGPU.Raw.Generated.Enum.WGPUCompareFunction
import WGPU.Raw.Generated.Enum.WGPUCreatePipelineAsyncStatus
import WGPU.Raw.Generated.Enum.WGPUCullMode
import WGPU.Raw.Generated.Enum.WGPUErrorFilter
import WGPU.Raw.Generated.Enum.WGPUErrorType
import WGPU.Raw.Generated.Enum.WGPUFilterMode
import WGPU.Raw.Generated.Enum.WGPUFrontFace
import WGPU.Raw.Generated.Enum.WGPUIndexFormat
import WGPU.Raw.Generated.Enum.WGPUInputStepMode
import WGPU.Raw.Generated.Enum.WGPULoadOp
import WGPU.Raw.Generated.Enum.WGPULogLevel
import WGPU.Raw.Generated.Enum.WGPUMapMode
import WGPU.Raw.Generated.Enum.WGPUNativeFeature
import WGPU.Raw.Generated.Enum.WGPUNativeSType
import WGPU.Raw.Generated.Enum.WGPUPipelineStatisticName
import WGPU.Raw.Generated.Enum.WGPUPresentMode
import WGPU.Raw.Generated.Enum.WGPUPrimitiveTopology
import WGPU.Raw.Generated.Enum.WGPUQueryType
import WGPU.Raw.Generated.Enum.WGPUQueueWorkDoneStatus
import WGPU.Raw.Generated.Enum.WGPUSType
import WGPU.Raw.Generated.Enum.WGPUSamplerBindingType
import WGPU.Raw.Generated.Enum.WGPUShaderStage
import WGPU.Raw.Generated.Enum.WGPUStencilOperation
import WGPU.Raw.Generated.Enum.WGPUStorageTextureAccess
import WGPU.Raw.Generated.Enum.WGPUStoreOp
import WGPU.Raw.Generated.Enum.WGPUTextureAspect
import WGPU.Raw.Generated.Enum.WGPUTextureComponentType
import WGPU.Raw.Generated.Enum.WGPUTextureDimension
import WGPU.Raw.Generated.Enum.WGPUTextureFormat
import WGPU.Raw.Generated.Enum.WGPUTextureSampleType
import WGPU.Raw.Generated.Enum.WGPUTextureUsage
import WGPU.Raw.Generated.Enum.WGPUTextureViewDimension
import WGPU.Raw.Generated.Enum.WGPUVertexFormat
import WGPU.Raw.Generated.Struct.WGPUAdapterExtras
import WGPU.Raw.Generated.Struct.WGPUAdapterProperties
import WGPU.Raw.Generated.Struct.WGPUBindGroupDescriptor
import WGPU.Raw.Generated.Struct.WGPUBindGroupEntry
import WGPU.Raw.Generated.Struct.WGPUBindGroupLayoutDescriptor
import WGPU.Raw.Generated.Struct.WGPUBindGroupLayoutEntry
import WGPU.Raw.Generated.Struct.WGPUBlendComponent
import WGPU.Raw.Generated.Struct.WGPUBlendState
import WGPU.Raw.Generated.Struct.WGPUBufferBindingLayout
import WGPU.Raw.Generated.Struct.WGPUBufferDescriptor
import WGPU.Raw.Generated.Struct.WGPUChainedStruct
import WGPU.Raw.Generated.Struct.WGPUColor
import WGPU.Raw.Generated.Struct.WGPUColorTargetState
import WGPU.Raw.Generated.Struct.WGPUCommandBufferDescriptor
import WGPU.Raw.Generated.Struct.WGPUCommandEncoderDescriptor
import WGPU.Raw.Generated.Struct.WGPUComputePassDescriptor
import WGPU.Raw.Generated.Struct.WGPUComputePipelineDescriptor
import WGPU.Raw.Generated.Struct.WGPUDepthStencilState
import WGPU.Raw.Generated.Struct.WGPUDeviceDescriptor
import WGPU.Raw.Generated.Struct.WGPUDeviceExtras
import WGPU.Raw.Generated.Struct.WGPUExtent3D
import WGPU.Raw.Generated.Struct.WGPUFragmentState
import WGPU.Raw.Generated.Struct.WGPUImageCopyBuffer
import WGPU.Raw.Generated.Struct.WGPUImageCopyTexture
import WGPU.Raw.Generated.Struct.WGPUInstanceDescriptor
import WGPU.Raw.Generated.Struct.WGPUMultisampleState
import WGPU.Raw.Generated.Struct.WGPUOrigin3D
import WGPU.Raw.Generated.Struct.WGPUPipelineLayoutDescriptor
import WGPU.Raw.Generated.Struct.WGPUPrimitiveDepthClampingState
import WGPU.Raw.Generated.Struct.WGPUPrimitiveState
import WGPU.Raw.Generated.Struct.WGPUProgrammableStageDescriptor
import WGPU.Raw.Generated.Struct.WGPUQuerySetDescriptor
import WGPU.Raw.Generated.Struct.WGPURenderBundleDescriptor
import WGPU.Raw.Generated.Struct.WGPURenderBundleEncoderDescriptor
import WGPU.Raw.Generated.Struct.WGPURenderPassColorAttachment
import WGPU.Raw.Generated.Struct.WGPURenderPassDepthStencilAttachment
import WGPU.Raw.Generated.Struct.WGPURenderPassDescriptor
import WGPU.Raw.Generated.Struct.WGPURenderPipelineDescriptor
import WGPU.Raw.Generated.Struct.WGPURequestAdapterOptions
import WGPU.Raw.Generated.Struct.WGPUSamplerBindingLayout
import WGPU.Raw.Generated.Struct.WGPUSamplerDescriptor
import WGPU.Raw.Generated.Struct.WGPUShaderModuleDescriptor
import WGPU.Raw.Generated.Struct.WGPUShaderModuleSPIRVDescriptor
import WGPU.Raw.Generated.Struct.WGPUShaderModuleWGSLDescriptor
import WGPU.Raw.Generated.Struct.WGPUStencilFaceState
import WGPU.Raw.Generated.Struct.WGPUStorageTextureBindingLayout
import WGPU.Raw.Generated.Struct.WGPUSurfaceDescriptor
import WGPU.Raw.Generated.Struct.WGPUSurfaceDescriptorFromCanvasHTMLSelector
import WGPU.Raw.Generated.Struct.WGPUSurfaceDescriptorFromMetalLayer
import WGPU.Raw.Generated.Struct.WGPUSurfaceDescriptorFromWindowsHWND
import WGPU.Raw.Generated.Struct.WGPUSurfaceDescriptorFromXlib
import WGPU.Raw.Generated.Struct.WGPUSwapChainDescriptor
import WGPU.Raw.Generated.Struct.WGPUTextureBindingLayout
import WGPU.Raw.Generated.Struct.WGPUTextureDataLayout
import WGPU.Raw.Generated.Struct.WGPUTextureDescriptor
import WGPU.Raw.Generated.Struct.WGPUTextureViewDescriptor
import WGPU.Raw.Generated.Struct.WGPUVertexAttribute
import WGPU.Raw.Generated.Struct.WGPUVertexBufferLayout
import WGPU.Raw.Generated.Struct.WGPUVertexState
import WGPU.Raw.Types
import Prelude (IO, String, pure, ($), (<$>))

data WGPUHsInstance = WGPUHsInstance
  { WGPUHsInstance
-> WGPUAdapter
-> Ptr WGPUDeviceDescriptor
-> WGPURequestDeviceCallback
-> Ptr ()
-> IO ()
wgpuAdapterRequestDeviceIO :: WGPUAdapter -> Ptr (WGPUDeviceDescriptor) -> WGPURequestDeviceCallback -> Ptr (()) -> IO (()),
    WGPUHsInstance
-> WGPUBuffer
-> WGPUMapModeFlags
-> CSize
-> CSize
-> WGPUBufferMapCallback
-> Ptr ()
-> IO ()
wgpuBufferMapAsyncIO :: WGPUBuffer -> WGPUMapModeFlags -> CSize -> CSize -> WGPUBufferMapCallback -> Ptr (()) -> IO (()),
    WGPUHsInstance
-> WGPUInstance
-> Ptr WGPURequestAdapterOptions
-> WGPURequestAdapterCallback
-> Ptr ()
-> IO ()
wgpuInstanceRequestAdapterIO :: WGPUInstance -> Ptr (WGPURequestAdapterOptions) -> WGPURequestAdapterCallback -> Ptr (()) -> IO (()),
    WGPUHsInstance
-> WGPUSurface
-> WGPUAdapter
-> WGPUSurfaceGetPreferredFormatCallback
-> Ptr ()
-> IO ()
wgpuSurfaceGetPreferredFormatIO :: WGPUSurface -> WGPUAdapter -> WGPUSurfaceGetPreferredFormatCallback -> Ptr (()) -> IO (()),
    WGPUHsInstance -> WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ()
wgpuAdapterGetPropertiesIO :: WGPUAdapter -> Ptr (WGPUAdapterProperties) -> IO (()),
    WGPUHsInstance -> WGPUBuffer -> IO ()
wgpuBufferDestroyIO :: WGPUBuffer -> IO (()),
    WGPUHsInstance -> WGPUBuffer -> CSize -> CSize -> IO (Ptr ())
wgpuBufferGetMappedRangeIO :: WGPUBuffer -> CSize -> CSize -> IO (Ptr (())),
    WGPUHsInstance -> WGPUBuffer -> IO ()
wgpuBufferUnmapIO :: WGPUBuffer -> IO (()),
    WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUComputePassDescriptor
-> IO WGPUComputePassEncoder
wgpuCommandEncoderBeginComputePassIO :: WGPUCommandEncoder -> Ptr (WGPUComputePassDescriptor) -> IO (WGPUComputePassEncoder),
    WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPURenderPassDescriptor
-> IO WGPURenderPassEncoder
wgpuCommandEncoderBeginRenderPassIO :: WGPUCommandEncoder -> Ptr (WGPURenderPassDescriptor) -> IO (WGPURenderPassEncoder),
    WGPUHsInstance
-> WGPUCommandEncoder
-> WGPUBuffer
-> Word64
-> WGPUBuffer
-> Word64
-> Word64
-> IO ()
wgpuCommandEncoderCopyBufferToBufferIO :: WGPUCommandEncoder -> WGPUBuffer -> Word64 -> WGPUBuffer -> Word64 -> Word64 -> IO (()),
    WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyBufferToTextureIO :: WGPUCommandEncoder -> Ptr (WGPUImageCopyBuffer) -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUExtent3D) -> IO (()),
    WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyTextureToTextureIO :: WGPUCommandEncoder -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUExtent3D) -> IO (()),
    WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyTextureToBufferIO :: WGPUCommandEncoder -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUImageCopyBuffer) -> Ptr (WGPUExtent3D) -> IO (()),
    WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUCommandBufferDescriptor
-> IO WGPUCommandBuffer
wgpuCommandEncoderFinishIO :: WGPUCommandEncoder -> Ptr (WGPUCommandBufferDescriptor) -> IO (WGPUCommandBuffer),
    WGPUHsInstance
-> WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuComputePassEncoderDispatchIO :: WGPUComputePassEncoder -> Word32 -> Word32 -> Word32 -> IO (()),
    WGPUHsInstance
-> WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuComputePassEncoderDispatchIndirectIO :: WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO (()),
    WGPUHsInstance -> WGPUComputePassEncoder -> IO ()
wgpuComputePassEncoderEndPassIO :: WGPUComputePassEncoder -> IO (()),
    WGPUHsInstance
-> WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
wgpuComputePassEncoderSetBindGroupIO :: WGPUComputePassEncoder -> Word32 -> WGPUBindGroup -> Word32 -> Ptr (Word32) -> IO (()),
    WGPUHsInstance
-> WGPUComputePassEncoder -> WGPUComputePipeline -> IO ()
wgpuComputePassEncoderSetPipelineIO :: WGPUComputePassEncoder -> WGPUComputePipeline -> IO (()),
    WGPUHsInstance
-> WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup
wgpuDeviceCreateBindGroupIO :: WGPUDevice -> Ptr (WGPUBindGroupDescriptor) -> IO (WGPUBindGroup),
    WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUBindGroupLayoutDescriptor
-> IO WGPUBindGroupLayout
wgpuDeviceCreateBindGroupLayoutIO :: WGPUDevice -> Ptr (WGPUBindGroupLayoutDescriptor) -> IO (WGPUBindGroupLayout),
    WGPUHsInstance
-> WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer
wgpuDeviceCreateBufferIO :: WGPUDevice -> Ptr (WGPUBufferDescriptor) -> IO (WGPUBuffer),
    WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUCommandEncoderDescriptor
-> IO WGPUCommandEncoder
wgpuDeviceCreateCommandEncoderIO :: WGPUDevice -> Ptr (WGPUCommandEncoderDescriptor) -> IO (WGPUCommandEncoder),
    WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUComputePipelineDescriptor
-> IO WGPUComputePipeline
wgpuDeviceCreateComputePipelineIO :: WGPUDevice -> Ptr (WGPUComputePipelineDescriptor) -> IO (WGPUComputePipeline),
    WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUPipelineLayoutDescriptor
-> IO WGPUPipelineLayout
wgpuDeviceCreatePipelineLayoutIO :: WGPUDevice -> Ptr (WGPUPipelineLayoutDescriptor) -> IO (WGPUPipelineLayout),
    WGPUHsInstance
-> WGPUDevice
-> Ptr WGPURenderPipelineDescriptor
-> IO WGPURenderPipeline
wgpuDeviceCreateRenderPipelineIO :: WGPUDevice -> Ptr (WGPURenderPipelineDescriptor) -> IO (WGPURenderPipeline),
    WGPUHsInstance
-> WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler
wgpuDeviceCreateSamplerIO :: WGPUDevice -> Ptr (WGPUSamplerDescriptor) -> IO (WGPUSampler),
    WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUShaderModuleDescriptor
-> IO WGPUShaderModule
wgpuDeviceCreateShaderModuleIO :: WGPUDevice -> Ptr (WGPUShaderModuleDescriptor) -> IO (WGPUShaderModule),
    WGPUHsInstance
-> WGPUDevice
-> WGPUSurface
-> Ptr WGPUSwapChainDescriptor
-> IO WGPUSwapChain
wgpuDeviceCreateSwapChainIO :: WGPUDevice -> WGPUSurface -> Ptr (WGPUSwapChainDescriptor) -> IO (WGPUSwapChain),
    WGPUHsInstance
-> WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture
wgpuDeviceCreateTextureIO :: WGPUDevice -> Ptr (WGPUTextureDescriptor) -> IO (WGPUTexture),
    WGPUHsInstance -> WGPUDevice -> IO WGPUQueue
wgpuDeviceGetQueueIO :: WGPUDevice -> IO (WGPUQueue),
    WGPUHsInstance
-> WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface
wgpuInstanceCreateSurfaceIO :: WGPUInstance -> Ptr (WGPUSurfaceDescriptor) -> IO (WGPUSurface),
    WGPUHsInstance
-> WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ()
wgpuQueueSubmitIO :: WGPUQueue -> Word32 -> Ptr (WGPUCommandBuffer) -> IO (()),
    WGPUHsInstance
-> WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ()
wgpuQueueWriteBufferIO :: WGPUQueue -> WGPUBuffer -> Word64 -> Ptr (()) -> CSize -> IO (()),
    WGPUHsInstance
-> WGPUQueue
-> Ptr WGPUImageCopyTexture
-> Ptr ()
-> CSize
-> Ptr WGPUTextureDataLayout
-> Ptr WGPUExtent3D
-> IO ()
wgpuQueueWriteTextureIO :: WGPUQueue -> Ptr (WGPUImageCopyTexture) -> Ptr (()) -> CSize -> Ptr (WGPUTextureDataLayout) -> Ptr (WGPUExtent3D) -> IO (()),
    WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderDrawIO :: WGPURenderPassEncoder -> Word32 -> Word32 -> Word32 -> Word32 -> IO (()),
    WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Int32
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderDrawIndexedIO :: WGPURenderPassEncoder -> Word32 -> Word32 -> Word32 -> Int32 -> Word32 -> IO (()),
    WGPUHsInstance
-> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuRenderPassEncoderDrawIndexedIndirectIO :: WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO (()),
    WGPUHsInstance
-> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuRenderPassEncoderDrawIndirectIO :: WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO (()),
    WGPUHsInstance -> WGPURenderPassEncoder -> IO ()
wgpuRenderPassEncoderEndPassIO :: WGPURenderPassEncoder -> IO (()),
    WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderSetBindGroupIO :: WGPURenderPassEncoder -> Word32 -> WGPUBindGroup -> Word32 -> Ptr (Word32) -> IO (()),
    WGPUHsInstance -> WGPURenderPassEncoder -> Ptr WGPUColor -> IO ()
wgpuRenderPassEncoderSetBlendConstantIO :: WGPURenderPassEncoder -> Ptr (WGPUColor) -> IO (()),
    WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUBuffer
-> WGPUIndexFormat
-> Word64
-> Word64
-> IO ()
wgpuRenderPassEncoderSetIndexBufferIO :: WGPURenderPassEncoder -> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO (()),
    WGPUHsInstance
-> WGPURenderPassEncoder -> WGPURenderPipeline -> IO ()
wgpuRenderPassEncoderSetPipelineIO :: WGPURenderPassEncoder -> WGPURenderPipeline -> IO (()),
    WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderSetScissorRectIO :: WGPURenderPassEncoder -> Word32 -> Word32 -> Word32 -> Word32 -> IO (()),
    WGPUHsInstance
-> WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ()
wgpuRenderPassEncoderSetStencilReferenceIO :: WGPURenderPassEncoder -> Word32 -> IO (()),
    WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUBuffer
-> Word64
-> Word64
-> IO ()
wgpuRenderPassEncoderSetVertexBufferIO :: WGPURenderPassEncoder -> Word32 -> WGPUBuffer -> Word64 -> Word64 -> IO (()),
    WGPUHsInstance
-> WGPURenderPassEncoder
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> IO ()
wgpuRenderPassEncoderSetViewportIO :: WGPURenderPassEncoder -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> IO (()),
    WGPUHsInstance -> WGPUSwapChain -> IO WGPUTextureView
wgpuSwapChainGetCurrentTextureViewIO :: WGPUSwapChain -> IO (WGPUTextureView),
    WGPUHsInstance -> WGPUSwapChain -> IO ()
wgpuSwapChainPresentIO :: WGPUSwapChain -> IO (()),
    WGPUHsInstance
-> WGPUTexture
-> Ptr WGPUTextureViewDescriptor
-> IO WGPUTextureView
wgpuTextureCreateViewIO :: WGPUTexture -> Ptr (WGPUTextureViewDescriptor) -> IO (WGPUTextureView),
    WGPUHsInstance -> WGPUTexture -> IO ()
wgpuTextureDestroyIO :: WGPUTexture -> IO (()),
    WGPUHsInstance -> WGPUDevice -> CBool -> IO ()
wgpuDevicePollIO :: WGPUDevice -> CBool -> IO (()),
    WGPUHsInstance -> WGPULogCallback -> IO ()
wgpuSetLogCallbackIO :: WGPULogCallback -> IO (()),
    WGPUHsInstance -> WGPULogLevel -> IO ()
wgpuSetLogLevelIO :: WGPULogLevel -> IO (()),
    WGPUHsInstance -> IO WGPUMapModeFlags
wgpuGetVersionIO :: IO (Word32),
    WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUShaderStage
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Ptr ()
-> IO ()
wgpuRenderPassEncoderSetPushConstantsIO :: WGPURenderPassEncoder -> WGPUShaderStage -> Word32 -> Word32 -> Ptr (()) -> IO (())
  }

wgpuAdapterRequestDevice :: (MonadIO m) => WGPUHsInstance -> WGPUAdapter -> Ptr (WGPUDeviceDescriptor) -> WGPURequestDeviceCallback -> Ptr (()) -> m (())
wgpuAdapterRequestDevice :: WGPUHsInstance
-> WGPUAdapter
-> Ptr WGPUDeviceDescriptor
-> WGPURequestDeviceCallback
-> Ptr ()
-> m ()
wgpuAdapterRequestDevice WGPUHsInstance
inst WGPUAdapter
param1 Ptr WGPUDeviceDescriptor
param2 WGPURequestDeviceCallback
param3 Ptr ()
param4 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUAdapter
-> Ptr WGPUDeviceDescriptor
-> WGPURequestDeviceCallback
-> Ptr ()
-> IO ()
wgpuAdapterRequestDeviceIO WGPUHsInstance
inst WGPUAdapter
param1 Ptr WGPUDeviceDescriptor
param2 WGPURequestDeviceCallback
param3 Ptr ()
param4
{-# INLINEABLE wgpuAdapterRequestDevice #-}

wgpuBufferMapAsync :: (MonadIO m) => WGPUHsInstance -> WGPUBuffer -> WGPUMapModeFlags -> CSize -> CSize -> WGPUBufferMapCallback -> Ptr (()) -> m (())
wgpuBufferMapAsync :: WGPUHsInstance
-> WGPUBuffer
-> WGPUMapModeFlags
-> CSize
-> CSize
-> WGPUBufferMapCallback
-> Ptr ()
-> m ()
wgpuBufferMapAsync WGPUHsInstance
inst WGPUBuffer
param1 WGPUMapModeFlags
param2 CSize
param3 CSize
param4 WGPUBufferMapCallback
param5 Ptr ()
param6 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUBuffer
-> WGPUMapModeFlags
-> CSize
-> CSize
-> WGPUBufferMapCallback
-> Ptr ()
-> IO ()
wgpuBufferMapAsyncIO WGPUHsInstance
inst WGPUBuffer
param1 WGPUMapModeFlags
param2 CSize
param3 CSize
param4 WGPUBufferMapCallback
param5 Ptr ()
param6
{-# INLINEABLE wgpuBufferMapAsync #-}

wgpuInstanceRequestAdapter :: (MonadIO m) => WGPUHsInstance -> WGPUInstance -> Ptr (WGPURequestAdapterOptions) -> WGPURequestAdapterCallback -> Ptr (()) -> m (())
wgpuInstanceRequestAdapter :: WGPUHsInstance
-> WGPUInstance
-> Ptr WGPURequestAdapterOptions
-> WGPURequestAdapterCallback
-> Ptr ()
-> m ()
wgpuInstanceRequestAdapter WGPUHsInstance
inst WGPUInstance
param1 Ptr WGPURequestAdapterOptions
param2 WGPURequestAdapterCallback
param3 Ptr ()
param4 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUInstance
-> Ptr WGPURequestAdapterOptions
-> WGPURequestAdapterCallback
-> Ptr ()
-> IO ()
wgpuInstanceRequestAdapterIO WGPUHsInstance
inst WGPUInstance
param1 Ptr WGPURequestAdapterOptions
param2 WGPURequestAdapterCallback
param3 Ptr ()
param4
{-# INLINEABLE wgpuInstanceRequestAdapter #-}

wgpuSurfaceGetPreferredFormat :: (MonadIO m) => WGPUHsInstance -> WGPUSurface -> WGPUAdapter -> WGPUSurfaceGetPreferredFormatCallback -> Ptr (()) -> m (())
wgpuSurfaceGetPreferredFormat :: WGPUHsInstance
-> WGPUSurface
-> WGPUAdapter
-> WGPUSurfaceGetPreferredFormatCallback
-> Ptr ()
-> m ()
wgpuSurfaceGetPreferredFormat WGPUHsInstance
inst WGPUSurface
param1 WGPUAdapter
param2 WGPUSurfaceGetPreferredFormatCallback
param3 Ptr ()
param4 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUSurface
-> WGPUAdapter
-> WGPUSurfaceGetPreferredFormatCallback
-> Ptr ()
-> IO ()
wgpuSurfaceGetPreferredFormatIO WGPUHsInstance
inst WGPUSurface
param1 WGPUAdapter
param2 WGPUSurfaceGetPreferredFormatCallback
param3 Ptr ()
param4
{-# INLINEABLE wgpuSurfaceGetPreferredFormat #-}

wgpuAdapterGetProperties :: (MonadIO m) => WGPUHsInstance -> WGPUAdapter -> Ptr (WGPUAdapterProperties) -> m (())
wgpuAdapterGetProperties :: WGPUHsInstance -> WGPUAdapter -> Ptr WGPUAdapterProperties -> m ()
wgpuAdapterGetProperties WGPUHsInstance
inst WGPUAdapter
param1 Ptr WGPUAdapterProperties
param2 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ()
wgpuAdapterGetPropertiesIO WGPUHsInstance
inst WGPUAdapter
param1 Ptr WGPUAdapterProperties
param2
{-# INLINEABLE wgpuAdapterGetProperties #-}

wgpuBufferDestroy :: (MonadIO m) => WGPUHsInstance -> WGPUBuffer -> m (())
wgpuBufferDestroy :: WGPUHsInstance -> WGPUBuffer -> m ()
wgpuBufferDestroy WGPUHsInstance
inst WGPUBuffer
param1 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPUBuffer -> IO ()
wgpuBufferDestroyIO WGPUHsInstance
inst WGPUBuffer
param1
{-# INLINEABLE wgpuBufferDestroy #-}

wgpuBufferGetMappedRange :: (MonadIO m) => WGPUHsInstance -> WGPUBuffer -> CSize -> CSize -> m (Ptr (()))
wgpuBufferGetMappedRange :: WGPUHsInstance -> WGPUBuffer -> CSize -> CSize -> m (Ptr ())
wgpuBufferGetMappedRange WGPUHsInstance
inst WGPUBuffer
param1 CSize
param2 CSize
param3 =
  IO (Ptr ()) -> m (Ptr ())
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Ptr ()) -> m (Ptr ())) -> IO (Ptr ()) -> m (Ptr ())
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPUBuffer -> CSize -> CSize -> IO (Ptr ())
wgpuBufferGetMappedRangeIO WGPUHsInstance
inst WGPUBuffer
param1 CSize
param2 CSize
param3
{-# INLINEABLE wgpuBufferGetMappedRange #-}

wgpuBufferUnmap :: (MonadIO m) => WGPUHsInstance -> WGPUBuffer -> m (())
wgpuBufferUnmap :: WGPUHsInstance -> WGPUBuffer -> m ()
wgpuBufferUnmap WGPUHsInstance
inst WGPUBuffer
param1 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPUBuffer -> IO ()
wgpuBufferUnmapIO WGPUHsInstance
inst WGPUBuffer
param1
{-# INLINEABLE wgpuBufferUnmap #-}

wgpuCommandEncoderBeginComputePass :: (MonadIO m) => WGPUHsInstance -> WGPUCommandEncoder -> Ptr (WGPUComputePassDescriptor) -> m (WGPUComputePassEncoder)
wgpuCommandEncoderBeginComputePass :: WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUComputePassDescriptor
-> m WGPUComputePassEncoder
wgpuCommandEncoderBeginComputePass WGPUHsInstance
inst WGPUCommandEncoder
param1 Ptr WGPUComputePassDescriptor
param2 =
  IO WGPUComputePassEncoder -> m WGPUComputePassEncoder
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUComputePassEncoder -> m WGPUComputePassEncoder)
-> IO WGPUComputePassEncoder -> m WGPUComputePassEncoder
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUComputePassDescriptor
-> IO WGPUComputePassEncoder
wgpuCommandEncoderBeginComputePassIO WGPUHsInstance
inst WGPUCommandEncoder
param1 Ptr WGPUComputePassDescriptor
param2
{-# INLINEABLE wgpuCommandEncoderBeginComputePass #-}

wgpuCommandEncoderBeginRenderPass :: (MonadIO m) => WGPUHsInstance -> WGPUCommandEncoder -> Ptr (WGPURenderPassDescriptor) -> m (WGPURenderPassEncoder)
wgpuCommandEncoderBeginRenderPass :: WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPURenderPassDescriptor
-> m WGPURenderPassEncoder
wgpuCommandEncoderBeginRenderPass WGPUHsInstance
inst WGPUCommandEncoder
param1 Ptr WGPURenderPassDescriptor
param2 =
  IO WGPURenderPassEncoder -> m WGPURenderPassEncoder
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPURenderPassEncoder -> m WGPURenderPassEncoder)
-> IO WGPURenderPassEncoder -> m WGPURenderPassEncoder
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPURenderPassDescriptor
-> IO WGPURenderPassEncoder
wgpuCommandEncoderBeginRenderPassIO WGPUHsInstance
inst WGPUCommandEncoder
param1 Ptr WGPURenderPassDescriptor
param2
{-# INLINEABLE wgpuCommandEncoderBeginRenderPass #-}

wgpuCommandEncoderCopyBufferToBuffer :: (MonadIO m) => WGPUHsInstance -> WGPUCommandEncoder -> WGPUBuffer -> Word64 -> WGPUBuffer -> Word64 -> Word64 -> m (())
wgpuCommandEncoderCopyBufferToBuffer :: WGPUHsInstance
-> WGPUCommandEncoder
-> WGPUBuffer
-> Word64
-> WGPUBuffer
-> Word64
-> Word64
-> m ()
wgpuCommandEncoderCopyBufferToBuffer WGPUHsInstance
inst WGPUCommandEncoder
param1 WGPUBuffer
param2 Word64
param3 WGPUBuffer
param4 Word64
param5 Word64
param6 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUCommandEncoder
-> WGPUBuffer
-> Word64
-> WGPUBuffer
-> Word64
-> Word64
-> IO ()
wgpuCommandEncoderCopyBufferToBufferIO WGPUHsInstance
inst WGPUCommandEncoder
param1 WGPUBuffer
param2 Word64
param3 WGPUBuffer
param4 Word64
param5 Word64
param6
{-# INLINEABLE wgpuCommandEncoderCopyBufferToBuffer #-}

wgpuCommandEncoderCopyBufferToTexture :: (MonadIO m) => WGPUHsInstance -> WGPUCommandEncoder -> Ptr (WGPUImageCopyBuffer) -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUExtent3D) -> m (())
wgpuCommandEncoderCopyBufferToTexture :: WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> m ()
wgpuCommandEncoderCopyBufferToTexture WGPUHsInstance
inst WGPUCommandEncoder
param1 Ptr WGPUImageCopyBuffer
param2 Ptr WGPUImageCopyTexture
param3 Ptr WGPUExtent3D
param4 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyBufferToTextureIO WGPUHsInstance
inst WGPUCommandEncoder
param1 Ptr WGPUImageCopyBuffer
param2 Ptr WGPUImageCopyTexture
param3 Ptr WGPUExtent3D
param4
{-# INLINEABLE wgpuCommandEncoderCopyBufferToTexture #-}

wgpuCommandEncoderCopyTextureToTexture :: (MonadIO m) => WGPUHsInstance -> WGPUCommandEncoder -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUExtent3D) -> m (())
wgpuCommandEncoderCopyTextureToTexture :: WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> m ()
wgpuCommandEncoderCopyTextureToTexture WGPUHsInstance
inst WGPUCommandEncoder
param1 Ptr WGPUImageCopyTexture
param2 Ptr WGPUImageCopyTexture
param3 Ptr WGPUExtent3D
param4 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyTextureToTextureIO WGPUHsInstance
inst WGPUCommandEncoder
param1 Ptr WGPUImageCopyTexture
param2 Ptr WGPUImageCopyTexture
param3 Ptr WGPUExtent3D
param4
{-# INLINEABLE wgpuCommandEncoderCopyTextureToTexture #-}

wgpuCommandEncoderCopyTextureToBuffer :: (MonadIO m) => WGPUHsInstance -> WGPUCommandEncoder -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUImageCopyBuffer) -> Ptr (WGPUExtent3D) -> m (())
wgpuCommandEncoderCopyTextureToBuffer :: WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUExtent3D
-> m ()
wgpuCommandEncoderCopyTextureToBuffer WGPUHsInstance
inst WGPUCommandEncoder
param1 Ptr WGPUImageCopyTexture
param2 Ptr WGPUImageCopyBuffer
param3 Ptr WGPUExtent3D
param4 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyTextureToBufferIO WGPUHsInstance
inst WGPUCommandEncoder
param1 Ptr WGPUImageCopyTexture
param2 Ptr WGPUImageCopyBuffer
param3 Ptr WGPUExtent3D
param4
{-# INLINEABLE wgpuCommandEncoderCopyTextureToBuffer #-}

wgpuCommandEncoderFinish :: (MonadIO m) => WGPUHsInstance -> WGPUCommandEncoder -> Ptr (WGPUCommandBufferDescriptor) -> m (WGPUCommandBuffer)
wgpuCommandEncoderFinish :: WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUCommandBufferDescriptor
-> m WGPUCommandBuffer
wgpuCommandEncoderFinish WGPUHsInstance
inst WGPUCommandEncoder
param1 Ptr WGPUCommandBufferDescriptor
param2 =
  IO WGPUCommandBuffer -> m WGPUCommandBuffer
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUCommandBuffer -> m WGPUCommandBuffer)
-> IO WGPUCommandBuffer -> m WGPUCommandBuffer
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUCommandEncoder
-> Ptr WGPUCommandBufferDescriptor
-> IO WGPUCommandBuffer
wgpuCommandEncoderFinishIO WGPUHsInstance
inst WGPUCommandEncoder
param1 Ptr WGPUCommandBufferDescriptor
param2
{-# INLINEABLE wgpuCommandEncoderFinish #-}

wgpuComputePassEncoderDispatch :: (MonadIO m) => WGPUHsInstance -> WGPUComputePassEncoder -> Word32 -> Word32 -> Word32 -> m (())
wgpuComputePassEncoderDispatch :: WGPUHsInstance
-> WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> m ()
wgpuComputePassEncoderDispatch WGPUHsInstance
inst WGPUComputePassEncoder
param1 WGPUMapModeFlags
param2 WGPUMapModeFlags
param3 WGPUMapModeFlags
param4 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuComputePassEncoderDispatchIO WGPUHsInstance
inst WGPUComputePassEncoder
param1 WGPUMapModeFlags
param2 WGPUMapModeFlags
param3 WGPUMapModeFlags
param4
{-# INLINEABLE wgpuComputePassEncoderDispatch #-}

wgpuComputePassEncoderDispatchIndirect :: (MonadIO m) => WGPUHsInstance -> WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> m (())
wgpuComputePassEncoderDispatchIndirect :: WGPUHsInstance
-> WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> m ()
wgpuComputePassEncoderDispatchIndirect WGPUHsInstance
inst WGPUComputePassEncoder
param1 WGPUBuffer
param2 Word64
param3 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuComputePassEncoderDispatchIndirectIO WGPUHsInstance
inst WGPUComputePassEncoder
param1 WGPUBuffer
param2 Word64
param3
{-# INLINEABLE wgpuComputePassEncoderDispatchIndirect #-}

wgpuComputePassEncoderEndPass :: (MonadIO m) => WGPUHsInstance -> WGPUComputePassEncoder -> m (())
wgpuComputePassEncoderEndPass :: WGPUHsInstance -> WGPUComputePassEncoder -> m ()
wgpuComputePassEncoderEndPass WGPUHsInstance
inst WGPUComputePassEncoder
param1 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPUComputePassEncoder -> IO ()
wgpuComputePassEncoderEndPassIO WGPUHsInstance
inst WGPUComputePassEncoder
param1
{-# INLINEABLE wgpuComputePassEncoderEndPass #-}

wgpuComputePassEncoderSetBindGroup :: (MonadIO m) => WGPUHsInstance -> WGPUComputePassEncoder -> Word32 -> WGPUBindGroup -> Word32 -> Ptr (Word32) -> m (())
wgpuComputePassEncoderSetBindGroup :: WGPUHsInstance
-> WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> m ()
wgpuComputePassEncoderSetBindGroup WGPUHsInstance
inst WGPUComputePassEncoder
param1 WGPUMapModeFlags
param2 WGPUBindGroup
param3 WGPUMapModeFlags
param4 Ptr WGPUMapModeFlags
param5 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
wgpuComputePassEncoderSetBindGroupIO WGPUHsInstance
inst WGPUComputePassEncoder
param1 WGPUMapModeFlags
param2 WGPUBindGroup
param3 WGPUMapModeFlags
param4 Ptr WGPUMapModeFlags
param5
{-# INLINEABLE wgpuComputePassEncoderSetBindGroup #-}

wgpuComputePassEncoderSetPipeline :: (MonadIO m) => WGPUHsInstance -> WGPUComputePassEncoder -> WGPUComputePipeline -> m (())
wgpuComputePassEncoderSetPipeline :: WGPUHsInstance
-> WGPUComputePassEncoder -> WGPUComputePipeline -> m ()
wgpuComputePassEncoderSetPipeline WGPUHsInstance
inst WGPUComputePassEncoder
param1 WGPUComputePipeline
param2 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUComputePassEncoder -> WGPUComputePipeline -> IO ()
wgpuComputePassEncoderSetPipelineIO WGPUHsInstance
inst WGPUComputePassEncoder
param1 WGPUComputePipeline
param2
{-# INLINEABLE wgpuComputePassEncoderSetPipeline #-}

wgpuDeviceCreateBindGroup :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> Ptr (WGPUBindGroupDescriptor) -> m (WGPUBindGroup)
wgpuDeviceCreateBindGroup :: WGPUHsInstance
-> WGPUDevice -> Ptr WGPUBindGroupDescriptor -> m WGPUBindGroup
wgpuDeviceCreateBindGroup WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUBindGroupDescriptor
param2 =
  IO WGPUBindGroup -> m WGPUBindGroup
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUBindGroup -> m WGPUBindGroup)
-> IO WGPUBindGroup -> m WGPUBindGroup
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup
wgpuDeviceCreateBindGroupIO WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUBindGroupDescriptor
param2
{-# INLINEABLE wgpuDeviceCreateBindGroup #-}

wgpuDeviceCreateBindGroupLayout :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> Ptr (WGPUBindGroupLayoutDescriptor) -> m (WGPUBindGroupLayout)
wgpuDeviceCreateBindGroupLayout :: WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUBindGroupLayoutDescriptor
-> m WGPUBindGroupLayout
wgpuDeviceCreateBindGroupLayout WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUBindGroupLayoutDescriptor
param2 =
  IO WGPUBindGroupLayout -> m WGPUBindGroupLayout
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUBindGroupLayout -> m WGPUBindGroupLayout)
-> IO WGPUBindGroupLayout -> m WGPUBindGroupLayout
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUBindGroupLayoutDescriptor
-> IO WGPUBindGroupLayout
wgpuDeviceCreateBindGroupLayoutIO WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUBindGroupLayoutDescriptor
param2
{-# INLINEABLE wgpuDeviceCreateBindGroupLayout #-}

wgpuDeviceCreateBuffer :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> Ptr (WGPUBufferDescriptor) -> m (WGPUBuffer)
wgpuDeviceCreateBuffer :: WGPUHsInstance
-> WGPUDevice -> Ptr WGPUBufferDescriptor -> m WGPUBuffer
wgpuDeviceCreateBuffer WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUBufferDescriptor
param2 =
  IO WGPUBuffer -> m WGPUBuffer
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUBuffer -> m WGPUBuffer) -> IO WGPUBuffer -> m WGPUBuffer
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer
wgpuDeviceCreateBufferIO WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUBufferDescriptor
param2
{-# INLINEABLE wgpuDeviceCreateBuffer #-}

wgpuDeviceCreateCommandEncoder :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> Ptr (WGPUCommandEncoderDescriptor) -> m (WGPUCommandEncoder)
wgpuDeviceCreateCommandEncoder :: WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUCommandEncoderDescriptor
-> m WGPUCommandEncoder
wgpuDeviceCreateCommandEncoder WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUCommandEncoderDescriptor
param2 =
  IO WGPUCommandEncoder -> m WGPUCommandEncoder
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUCommandEncoder -> m WGPUCommandEncoder)
-> IO WGPUCommandEncoder -> m WGPUCommandEncoder
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUCommandEncoderDescriptor
-> IO WGPUCommandEncoder
wgpuDeviceCreateCommandEncoderIO WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUCommandEncoderDescriptor
param2
{-# INLINEABLE wgpuDeviceCreateCommandEncoder #-}

wgpuDeviceCreateComputePipeline :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> Ptr (WGPUComputePipelineDescriptor) -> m (WGPUComputePipeline)
wgpuDeviceCreateComputePipeline :: WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUComputePipelineDescriptor
-> m WGPUComputePipeline
wgpuDeviceCreateComputePipeline WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUComputePipelineDescriptor
param2 =
  IO WGPUComputePipeline -> m WGPUComputePipeline
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUComputePipeline -> m WGPUComputePipeline)
-> IO WGPUComputePipeline -> m WGPUComputePipeline
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUComputePipelineDescriptor
-> IO WGPUComputePipeline
wgpuDeviceCreateComputePipelineIO WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUComputePipelineDescriptor
param2
{-# INLINEABLE wgpuDeviceCreateComputePipeline #-}

wgpuDeviceCreatePipelineLayout :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> Ptr (WGPUPipelineLayoutDescriptor) -> m (WGPUPipelineLayout)
wgpuDeviceCreatePipelineLayout :: WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUPipelineLayoutDescriptor
-> m WGPUPipelineLayout
wgpuDeviceCreatePipelineLayout WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUPipelineLayoutDescriptor
param2 =
  IO WGPUPipelineLayout -> m WGPUPipelineLayout
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUPipelineLayout -> m WGPUPipelineLayout)
-> IO WGPUPipelineLayout -> m WGPUPipelineLayout
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUPipelineLayoutDescriptor
-> IO WGPUPipelineLayout
wgpuDeviceCreatePipelineLayoutIO WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUPipelineLayoutDescriptor
param2
{-# INLINEABLE wgpuDeviceCreatePipelineLayout #-}

wgpuDeviceCreateRenderPipeline :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> Ptr (WGPURenderPipelineDescriptor) -> m (WGPURenderPipeline)
wgpuDeviceCreateRenderPipeline :: WGPUHsInstance
-> WGPUDevice
-> Ptr WGPURenderPipelineDescriptor
-> m WGPURenderPipeline
wgpuDeviceCreateRenderPipeline WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPURenderPipelineDescriptor
param2 =
  IO WGPURenderPipeline -> m WGPURenderPipeline
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPURenderPipeline -> m WGPURenderPipeline)
-> IO WGPURenderPipeline -> m WGPURenderPipeline
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUDevice
-> Ptr WGPURenderPipelineDescriptor
-> IO WGPURenderPipeline
wgpuDeviceCreateRenderPipelineIO WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPURenderPipelineDescriptor
param2
{-# INLINEABLE wgpuDeviceCreateRenderPipeline #-}

wgpuDeviceCreateSampler :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> Ptr (WGPUSamplerDescriptor) -> m (WGPUSampler)
wgpuDeviceCreateSampler :: WGPUHsInstance
-> WGPUDevice -> Ptr WGPUSamplerDescriptor -> m WGPUSampler
wgpuDeviceCreateSampler WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUSamplerDescriptor
param2 =
  IO WGPUSampler -> m WGPUSampler
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUSampler -> m WGPUSampler)
-> IO WGPUSampler -> m WGPUSampler
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler
wgpuDeviceCreateSamplerIO WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUSamplerDescriptor
param2
{-# INLINEABLE wgpuDeviceCreateSampler #-}

wgpuDeviceCreateShaderModule :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> Ptr (WGPUShaderModuleDescriptor) -> m (WGPUShaderModule)
wgpuDeviceCreateShaderModule :: WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUShaderModuleDescriptor
-> m WGPUShaderModule
wgpuDeviceCreateShaderModule WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUShaderModuleDescriptor
param2 =
  IO WGPUShaderModule -> m WGPUShaderModule
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUShaderModule -> m WGPUShaderModule)
-> IO WGPUShaderModule -> m WGPUShaderModule
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUDevice
-> Ptr WGPUShaderModuleDescriptor
-> IO WGPUShaderModule
wgpuDeviceCreateShaderModuleIO WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUShaderModuleDescriptor
param2
{-# INLINEABLE wgpuDeviceCreateShaderModule #-}

wgpuDeviceCreateSwapChain :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> WGPUSurface -> Ptr (WGPUSwapChainDescriptor) -> m (WGPUSwapChain)
wgpuDeviceCreateSwapChain :: WGPUHsInstance
-> WGPUDevice
-> WGPUSurface
-> Ptr WGPUSwapChainDescriptor
-> m WGPUSwapChain
wgpuDeviceCreateSwapChain WGPUHsInstance
inst WGPUDevice
param1 WGPUSurface
param2 Ptr WGPUSwapChainDescriptor
param3 =
  IO WGPUSwapChain -> m WGPUSwapChain
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUSwapChain -> m WGPUSwapChain)
-> IO WGPUSwapChain -> m WGPUSwapChain
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUDevice
-> WGPUSurface
-> Ptr WGPUSwapChainDescriptor
-> IO WGPUSwapChain
wgpuDeviceCreateSwapChainIO WGPUHsInstance
inst WGPUDevice
param1 WGPUSurface
param2 Ptr WGPUSwapChainDescriptor
param3
{-# INLINEABLE wgpuDeviceCreateSwapChain #-}

wgpuDeviceCreateTexture :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> Ptr (WGPUTextureDescriptor) -> m (WGPUTexture)
wgpuDeviceCreateTexture :: WGPUHsInstance
-> WGPUDevice -> Ptr WGPUTextureDescriptor -> m WGPUTexture
wgpuDeviceCreateTexture WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUTextureDescriptor
param2 =
  IO WGPUTexture -> m WGPUTexture
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUTexture -> m WGPUTexture)
-> IO WGPUTexture -> m WGPUTexture
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture
wgpuDeviceCreateTextureIO WGPUHsInstance
inst WGPUDevice
param1 Ptr WGPUTextureDescriptor
param2
{-# INLINEABLE wgpuDeviceCreateTexture #-}

wgpuDeviceGetQueue :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> m (WGPUQueue)
wgpuDeviceGetQueue :: WGPUHsInstance -> WGPUDevice -> m WGPUQueue
wgpuDeviceGetQueue WGPUHsInstance
inst WGPUDevice
param1 =
  IO WGPUQueue -> m WGPUQueue
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUQueue -> m WGPUQueue) -> IO WGPUQueue -> m WGPUQueue
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPUDevice -> IO WGPUQueue
wgpuDeviceGetQueueIO WGPUHsInstance
inst WGPUDevice
param1
{-# INLINEABLE wgpuDeviceGetQueue #-}

wgpuInstanceCreateSurface :: (MonadIO m) => WGPUHsInstance -> WGPUInstance -> Ptr (WGPUSurfaceDescriptor) -> m (WGPUSurface)
wgpuInstanceCreateSurface :: WGPUHsInstance
-> WGPUInstance -> Ptr WGPUSurfaceDescriptor -> m WGPUSurface
wgpuInstanceCreateSurface WGPUHsInstance
inst WGPUInstance
param1 Ptr WGPUSurfaceDescriptor
param2 =
  IO WGPUSurface -> m WGPUSurface
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUSurface -> m WGPUSurface)
-> IO WGPUSurface -> m WGPUSurface
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface
wgpuInstanceCreateSurfaceIO WGPUHsInstance
inst WGPUInstance
param1 Ptr WGPUSurfaceDescriptor
param2
{-# INLINEABLE wgpuInstanceCreateSurface #-}

wgpuQueueSubmit :: (MonadIO m) => WGPUHsInstance -> WGPUQueue -> Word32 -> Ptr (WGPUCommandBuffer) -> m (())
wgpuQueueSubmit :: WGPUHsInstance
-> WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> m ()
wgpuQueueSubmit WGPUHsInstance
inst WGPUQueue
param1 WGPUMapModeFlags
param2 Ptr WGPUCommandBuffer
param3 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ()
wgpuQueueSubmitIO WGPUHsInstance
inst WGPUQueue
param1 WGPUMapModeFlags
param2 Ptr WGPUCommandBuffer
param3
{-# INLINEABLE wgpuQueueSubmit #-}

wgpuQueueWriteBuffer :: (MonadIO m) => WGPUHsInstance -> WGPUQueue -> WGPUBuffer -> Word64 -> Ptr (()) -> CSize -> m (())
wgpuQueueWriteBuffer :: WGPUHsInstance
-> WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> m ()
wgpuQueueWriteBuffer WGPUHsInstance
inst WGPUQueue
param1 WGPUBuffer
param2 Word64
param3 Ptr ()
param4 CSize
param5 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ()
wgpuQueueWriteBufferIO WGPUHsInstance
inst WGPUQueue
param1 WGPUBuffer
param2 Word64
param3 Ptr ()
param4 CSize
param5
{-# INLINEABLE wgpuQueueWriteBuffer #-}

wgpuQueueWriteTexture :: (MonadIO m) => WGPUHsInstance -> WGPUQueue -> Ptr (WGPUImageCopyTexture) -> Ptr (()) -> CSize -> Ptr (WGPUTextureDataLayout) -> Ptr (WGPUExtent3D) -> m (())
wgpuQueueWriteTexture :: WGPUHsInstance
-> WGPUQueue
-> Ptr WGPUImageCopyTexture
-> Ptr ()
-> CSize
-> Ptr WGPUTextureDataLayout
-> Ptr WGPUExtent3D
-> m ()
wgpuQueueWriteTexture WGPUHsInstance
inst WGPUQueue
param1 Ptr WGPUImageCopyTexture
param2 Ptr ()
param3 CSize
param4 Ptr WGPUTextureDataLayout
param5 Ptr WGPUExtent3D
param6 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUQueue
-> Ptr WGPUImageCopyTexture
-> Ptr ()
-> CSize
-> Ptr WGPUTextureDataLayout
-> Ptr WGPUExtent3D
-> IO ()
wgpuQueueWriteTextureIO WGPUHsInstance
inst WGPUQueue
param1 Ptr WGPUImageCopyTexture
param2 Ptr ()
param3 CSize
param4 Ptr WGPUTextureDataLayout
param5 Ptr WGPUExtent3D
param6
{-# INLINEABLE wgpuQueueWriteTexture #-}

wgpuRenderPassEncoderDraw :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> Word32 -> Word32 -> Word32 -> Word32 -> m (())
wgpuRenderPassEncoderDraw :: WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> m ()
wgpuRenderPassEncoderDraw WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUMapModeFlags
param2 WGPUMapModeFlags
param3 WGPUMapModeFlags
param4 WGPUMapModeFlags
param5 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderDrawIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUMapModeFlags
param2 WGPUMapModeFlags
param3 WGPUMapModeFlags
param4 WGPUMapModeFlags
param5
{-# INLINEABLE wgpuRenderPassEncoderDraw #-}

wgpuRenderPassEncoderDrawIndexed :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> Word32 -> Word32 -> Word32 -> Int32 -> Word32 -> m (())
wgpuRenderPassEncoderDrawIndexed :: WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Int32
-> WGPUMapModeFlags
-> m ()
wgpuRenderPassEncoderDrawIndexed WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUMapModeFlags
param2 WGPUMapModeFlags
param3 WGPUMapModeFlags
param4 Int32
param5 WGPUMapModeFlags
param6 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Int32
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderDrawIndexedIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUMapModeFlags
param2 WGPUMapModeFlags
param3 WGPUMapModeFlags
param4 Int32
param5 WGPUMapModeFlags
param6
{-# INLINEABLE wgpuRenderPassEncoderDrawIndexed #-}

wgpuRenderPassEncoderDrawIndexedIndirect :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> m (())
wgpuRenderPassEncoderDrawIndexedIndirect :: WGPUHsInstance
-> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> m ()
wgpuRenderPassEncoderDrawIndexedIndirect WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUBuffer
param2 Word64
param3 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuRenderPassEncoderDrawIndexedIndirectIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUBuffer
param2 Word64
param3
{-# INLINEABLE wgpuRenderPassEncoderDrawIndexedIndirect #-}

wgpuRenderPassEncoderDrawIndirect :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> m (())
wgpuRenderPassEncoderDrawIndirect :: WGPUHsInstance
-> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> m ()
wgpuRenderPassEncoderDrawIndirect WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUBuffer
param2 Word64
param3 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuRenderPassEncoderDrawIndirectIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUBuffer
param2 Word64
param3
{-# INLINEABLE wgpuRenderPassEncoderDrawIndirect #-}

wgpuRenderPassEncoderEndPass :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> m (())
wgpuRenderPassEncoderEndPass :: WGPUHsInstance -> WGPURenderPassEncoder -> m ()
wgpuRenderPassEncoderEndPass WGPUHsInstance
inst WGPURenderPassEncoder
param1 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPURenderPassEncoder -> IO ()
wgpuRenderPassEncoderEndPassIO WGPUHsInstance
inst WGPURenderPassEncoder
param1
{-# INLINEABLE wgpuRenderPassEncoderEndPass #-}

wgpuRenderPassEncoderSetBindGroup :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> Word32 -> WGPUBindGroup -> Word32 -> Ptr (Word32) -> m (())
wgpuRenderPassEncoderSetBindGroup :: WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> m ()
wgpuRenderPassEncoderSetBindGroup WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUMapModeFlags
param2 WGPUBindGroup
param3 WGPUMapModeFlags
param4 Ptr WGPUMapModeFlags
param5 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderSetBindGroupIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUMapModeFlags
param2 WGPUBindGroup
param3 WGPUMapModeFlags
param4 Ptr WGPUMapModeFlags
param5
{-# INLINEABLE wgpuRenderPassEncoderSetBindGroup #-}

wgpuRenderPassEncoderSetBlendConstant :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> Ptr (WGPUColor) -> m (())
wgpuRenderPassEncoderSetBlendConstant :: WGPUHsInstance -> WGPURenderPassEncoder -> Ptr WGPUColor -> m ()
wgpuRenderPassEncoderSetBlendConstant WGPUHsInstance
inst WGPURenderPassEncoder
param1 Ptr WGPUColor
param2 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPURenderPassEncoder -> Ptr WGPUColor -> IO ()
wgpuRenderPassEncoderSetBlendConstantIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 Ptr WGPUColor
param2
{-# INLINEABLE wgpuRenderPassEncoderSetBlendConstant #-}

wgpuRenderPassEncoderSetIndexBuffer :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> m (())
wgpuRenderPassEncoderSetIndexBuffer :: WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUBuffer
-> WGPUIndexFormat
-> Word64
-> Word64
-> m ()
wgpuRenderPassEncoderSetIndexBuffer WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUBuffer
param2 WGPUIndexFormat
param3 Word64
param4 Word64
param5 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUBuffer
-> WGPUIndexFormat
-> Word64
-> Word64
-> IO ()
wgpuRenderPassEncoderSetIndexBufferIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUBuffer
param2 WGPUIndexFormat
param3 Word64
param4 Word64
param5
{-# INLINEABLE wgpuRenderPassEncoderSetIndexBuffer #-}

wgpuRenderPassEncoderSetPipeline :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> WGPURenderPipeline -> m (())
wgpuRenderPassEncoderSetPipeline :: WGPUHsInstance
-> WGPURenderPassEncoder -> WGPURenderPipeline -> m ()
wgpuRenderPassEncoderSetPipeline WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPURenderPipeline
param2 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPURenderPassEncoder -> WGPURenderPipeline -> IO ()
wgpuRenderPassEncoderSetPipelineIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPURenderPipeline
param2
{-# INLINEABLE wgpuRenderPassEncoderSetPipeline #-}

wgpuRenderPassEncoderSetScissorRect :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> Word32 -> Word32 -> Word32 -> Word32 -> m (())
wgpuRenderPassEncoderSetScissorRect :: WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> m ()
wgpuRenderPassEncoderSetScissorRect WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUMapModeFlags
param2 WGPUMapModeFlags
param3 WGPUMapModeFlags
param4 WGPUMapModeFlags
param5 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderSetScissorRectIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUMapModeFlags
param2 WGPUMapModeFlags
param3 WGPUMapModeFlags
param4 WGPUMapModeFlags
param5
{-# INLINEABLE wgpuRenderPassEncoderSetScissorRect #-}

wgpuRenderPassEncoderSetStencilReference :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> Word32 -> m (())
wgpuRenderPassEncoderSetStencilReference :: WGPUHsInstance -> WGPURenderPassEncoder -> WGPUMapModeFlags -> m ()
wgpuRenderPassEncoderSetStencilReference WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUMapModeFlags
param2 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ()
wgpuRenderPassEncoderSetStencilReferenceIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUMapModeFlags
param2
{-# INLINEABLE wgpuRenderPassEncoderSetStencilReference #-}

wgpuRenderPassEncoderSetVertexBuffer :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> Word32 -> WGPUBuffer -> Word64 -> Word64 -> m (())
wgpuRenderPassEncoderSetVertexBuffer :: WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUBuffer
-> Word64
-> Word64
-> m ()
wgpuRenderPassEncoderSetVertexBuffer WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUMapModeFlags
param2 WGPUBuffer
param3 Word64
param4 Word64
param5 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUBuffer
-> Word64
-> Word64
-> IO ()
wgpuRenderPassEncoderSetVertexBufferIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUMapModeFlags
param2 WGPUBuffer
param3 Word64
param4 Word64
param5
{-# INLINEABLE wgpuRenderPassEncoderSetVertexBuffer #-}

wgpuRenderPassEncoderSetViewport :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> m (())
wgpuRenderPassEncoderSetViewport :: WGPUHsInstance
-> WGPURenderPassEncoder
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> m ()
wgpuRenderPassEncoderSetViewport WGPUHsInstance
inst WGPURenderPassEncoder
param1 CFloat
param2 CFloat
param3 CFloat
param4 CFloat
param5 CFloat
param6 CFloat
param7 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPURenderPassEncoder
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> IO ()
wgpuRenderPassEncoderSetViewportIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 CFloat
param2 CFloat
param3 CFloat
param4 CFloat
param5 CFloat
param6 CFloat
param7
{-# INLINEABLE wgpuRenderPassEncoderSetViewport #-}

wgpuSwapChainGetCurrentTextureView :: (MonadIO m) => WGPUHsInstance -> WGPUSwapChain -> m (WGPUTextureView)
wgpuSwapChainGetCurrentTextureView :: WGPUHsInstance -> WGPUSwapChain -> m WGPUTextureView
wgpuSwapChainGetCurrentTextureView WGPUHsInstance
inst WGPUSwapChain
param1 =
  IO WGPUTextureView -> m WGPUTextureView
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUTextureView -> m WGPUTextureView)
-> IO WGPUTextureView -> m WGPUTextureView
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPUSwapChain -> IO WGPUTextureView
wgpuSwapChainGetCurrentTextureViewIO WGPUHsInstance
inst WGPUSwapChain
param1
{-# INLINEABLE wgpuSwapChainGetCurrentTextureView #-}

wgpuSwapChainPresent :: (MonadIO m) => WGPUHsInstance -> WGPUSwapChain -> m (())
wgpuSwapChainPresent :: WGPUHsInstance -> WGPUSwapChain -> m ()
wgpuSwapChainPresent WGPUHsInstance
inst WGPUSwapChain
param1 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPUSwapChain -> IO ()
wgpuSwapChainPresentIO WGPUHsInstance
inst WGPUSwapChain
param1
{-# INLINEABLE wgpuSwapChainPresent #-}

wgpuTextureCreateView :: (MonadIO m) => WGPUHsInstance -> WGPUTexture -> Ptr (WGPUTextureViewDescriptor) -> m (WGPUTextureView)
wgpuTextureCreateView :: WGPUHsInstance
-> WGPUTexture
-> Ptr WGPUTextureViewDescriptor
-> m WGPUTextureView
wgpuTextureCreateView WGPUHsInstance
inst WGPUTexture
param1 Ptr WGPUTextureViewDescriptor
param2 =
  IO WGPUTextureView -> m WGPUTextureView
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUTextureView -> m WGPUTextureView)
-> IO WGPUTextureView -> m WGPUTextureView
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPUTexture
-> Ptr WGPUTextureViewDescriptor
-> IO WGPUTextureView
wgpuTextureCreateViewIO WGPUHsInstance
inst WGPUTexture
param1 Ptr WGPUTextureViewDescriptor
param2
{-# INLINEABLE wgpuTextureCreateView #-}

wgpuTextureDestroy :: (MonadIO m) => WGPUHsInstance -> WGPUTexture -> m (())
wgpuTextureDestroy :: WGPUHsInstance -> WGPUTexture -> m ()
wgpuTextureDestroy WGPUHsInstance
inst WGPUTexture
param1 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPUTexture -> IO ()
wgpuTextureDestroyIO WGPUHsInstance
inst WGPUTexture
param1
{-# INLINEABLE wgpuTextureDestroy #-}

wgpuDevicePoll :: (MonadIO m) => WGPUHsInstance -> WGPUDevice -> CBool -> m (())
wgpuDevicePoll :: WGPUHsInstance -> WGPUDevice -> CBool -> m ()
wgpuDevicePoll WGPUHsInstance
inst WGPUDevice
param1 CBool
param2 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPUDevice -> CBool -> IO ()
wgpuDevicePollIO WGPUHsInstance
inst WGPUDevice
param1 CBool
param2
{-# INLINEABLE wgpuDevicePoll #-}

wgpuSetLogCallback :: (MonadIO m) => WGPUHsInstance -> WGPULogCallback -> m (())
wgpuSetLogCallback :: WGPUHsInstance -> WGPULogCallback -> m ()
wgpuSetLogCallback WGPUHsInstance
inst WGPULogCallback
param1 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPULogCallback -> IO ()
wgpuSetLogCallbackIO WGPUHsInstance
inst WGPULogCallback
param1
{-# INLINEABLE wgpuSetLogCallback #-}

wgpuSetLogLevel :: (MonadIO m) => WGPUHsInstance -> WGPULogLevel -> m (())
wgpuSetLogLevel :: WGPUHsInstance -> WGPULogLevel -> m ()
wgpuSetLogLevel WGPUHsInstance
inst WGPULogLevel
param1 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> WGPULogLevel -> IO ()
wgpuSetLogLevelIO WGPUHsInstance
inst WGPULogLevel
param1
{-# INLINEABLE wgpuSetLogLevel #-}

wgpuGetVersion :: (MonadIO m) => WGPUHsInstance -> m (Word32)
wgpuGetVersion :: WGPUHsInstance -> m WGPUMapModeFlags
wgpuGetVersion WGPUHsInstance
inst =
  IO WGPUMapModeFlags -> m WGPUMapModeFlags
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WGPUMapModeFlags -> m WGPUMapModeFlags)
-> IO WGPUMapModeFlags -> m WGPUMapModeFlags
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance -> IO WGPUMapModeFlags
wgpuGetVersionIO WGPUHsInstance
inst
{-# INLINEABLE wgpuGetVersion #-}

wgpuRenderPassEncoderSetPushConstants :: (MonadIO m) => WGPUHsInstance -> WGPURenderPassEncoder -> WGPUShaderStage -> Word32 -> Word32 -> Ptr (()) -> m (())
wgpuRenderPassEncoderSetPushConstants :: WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUShaderStage
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Ptr ()
-> m ()
wgpuRenderPassEncoderSetPushConstants WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUShaderStage
param2 WGPUMapModeFlags
param3 WGPUMapModeFlags
param4 Ptr ()
param5 =
  IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ WGPUHsInstance
-> WGPURenderPassEncoder
-> WGPUShaderStage
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Ptr ()
-> IO ()
wgpuRenderPassEncoderSetPushConstantsIO WGPUHsInstance
inst WGPURenderPassEncoder
param1 WGPUShaderStage
param2 WGPUMapModeFlags
param3 WGPUMapModeFlags
param4 Ptr ()
param5
{-# INLINEABLE wgpuRenderPassEncoderSetPushConstants #-}

loadDynamicInstance ::
  (forall a. String -> IO (FunPtr a)) ->
  IO WGPUHsInstance
loadDynamicInstance :: (forall a. String -> IO (FunPtr a)) -> IO WGPUHsInstance
loadDynamicInstance forall a. String -> IO (FunPtr a)
load = do
  WGPUAdapter
-> Ptr WGPUDeviceDescriptor
-> WGPURequestDeviceCallback
-> Ptr ()
-> IO ()
wgpuAdapterRequestDeviceIO <- FunPtr
  (WGPUAdapter
   -> Ptr WGPUDeviceDescriptor
   -> WGPURequestDeviceCallback
   -> Ptr ()
   -> IO ())
-> WGPUAdapter
-> Ptr WGPUDeviceDescriptor
-> WGPURequestDeviceCallback
-> Ptr ()
-> IO ()
mk_wgpuhsfn_wgpuAdapterRequestDevice (FunPtr
   (WGPUAdapter
    -> Ptr WGPUDeviceDescriptor
    -> WGPURequestDeviceCallback
    -> Ptr ()
    -> IO ())
 -> WGPUAdapter
 -> Ptr WGPUDeviceDescriptor
 -> WGPURequestDeviceCallback
 -> Ptr ()
 -> IO ())
-> IO
     (FunPtr
        (WGPUAdapter
         -> Ptr WGPUDeviceDescriptor
         -> WGPURequestDeviceCallback
         -> Ptr ()
         -> IO ()))
-> IO
     (WGPUAdapter
      -> Ptr WGPUDeviceDescriptor
      -> WGPURequestDeviceCallback
      -> Ptr ()
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUAdapter
         -> Ptr WGPUDeviceDescriptor
         -> WGPURequestDeviceCallback
         -> Ptr ()
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuAdapterRequestDevice"
  WGPUBuffer
-> WGPUMapModeFlags
-> CSize
-> CSize
-> WGPUBufferMapCallback
-> Ptr ()
-> IO ()
wgpuBufferMapAsyncIO <- FunPtr
  (WGPUBuffer
   -> WGPUMapModeFlags
   -> CSize
   -> CSize
   -> WGPUBufferMapCallback
   -> Ptr ()
   -> IO ())
-> WGPUBuffer
-> WGPUMapModeFlags
-> CSize
-> CSize
-> WGPUBufferMapCallback
-> Ptr ()
-> IO ()
mk_wgpuhsfn_wgpuBufferMapAsync (FunPtr
   (WGPUBuffer
    -> WGPUMapModeFlags
    -> CSize
    -> CSize
    -> WGPUBufferMapCallback
    -> Ptr ()
    -> IO ())
 -> WGPUBuffer
 -> WGPUMapModeFlags
 -> CSize
 -> CSize
 -> WGPUBufferMapCallback
 -> Ptr ()
 -> IO ())
-> IO
     (FunPtr
        (WGPUBuffer
         -> WGPUMapModeFlags
         -> CSize
         -> CSize
         -> WGPUBufferMapCallback
         -> Ptr ()
         -> IO ()))
-> IO
     (WGPUBuffer
      -> WGPUMapModeFlags
      -> CSize
      -> CSize
      -> WGPUBufferMapCallback
      -> Ptr ()
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUBuffer
         -> WGPUMapModeFlags
         -> CSize
         -> CSize
         -> WGPUBufferMapCallback
         -> Ptr ()
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuBufferMapAsync"
  WGPUInstance
-> Ptr WGPURequestAdapterOptions
-> WGPURequestAdapterCallback
-> Ptr ()
-> IO ()
wgpuInstanceRequestAdapterIO <- FunPtr
  (WGPUInstance
   -> Ptr WGPURequestAdapterOptions
   -> WGPURequestAdapterCallback
   -> Ptr ()
   -> IO ())
-> WGPUInstance
-> Ptr WGPURequestAdapterOptions
-> WGPURequestAdapterCallback
-> Ptr ()
-> IO ()
mk_wgpuhsfn_wgpuInstanceRequestAdapter (FunPtr
   (WGPUInstance
    -> Ptr WGPURequestAdapterOptions
    -> WGPURequestAdapterCallback
    -> Ptr ()
    -> IO ())
 -> WGPUInstance
 -> Ptr WGPURequestAdapterOptions
 -> WGPURequestAdapterCallback
 -> Ptr ()
 -> IO ())
-> IO
     (FunPtr
        (WGPUInstance
         -> Ptr WGPURequestAdapterOptions
         -> WGPURequestAdapterCallback
         -> Ptr ()
         -> IO ()))
-> IO
     (WGPUInstance
      -> Ptr WGPURequestAdapterOptions
      -> WGPURequestAdapterCallback
      -> Ptr ()
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUInstance
         -> Ptr WGPURequestAdapterOptions
         -> WGPURequestAdapterCallback
         -> Ptr ()
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuInstanceRequestAdapter"
  WGPUSurface
-> WGPUAdapter
-> WGPUSurfaceGetPreferredFormatCallback
-> Ptr ()
-> IO ()
wgpuSurfaceGetPreferredFormatIO <- FunPtr
  (WGPUSurface
   -> WGPUAdapter
   -> WGPUSurfaceGetPreferredFormatCallback
   -> Ptr ()
   -> IO ())
-> WGPUSurface
-> WGPUAdapter
-> WGPUSurfaceGetPreferredFormatCallback
-> Ptr ()
-> IO ()
mk_wgpuhsfn_wgpuSurfaceGetPreferredFormat (FunPtr
   (WGPUSurface
    -> WGPUAdapter
    -> WGPUSurfaceGetPreferredFormatCallback
    -> Ptr ()
    -> IO ())
 -> WGPUSurface
 -> WGPUAdapter
 -> WGPUSurfaceGetPreferredFormatCallback
 -> Ptr ()
 -> IO ())
-> IO
     (FunPtr
        (WGPUSurface
         -> WGPUAdapter
         -> WGPUSurfaceGetPreferredFormatCallback
         -> Ptr ()
         -> IO ()))
-> IO
     (WGPUSurface
      -> WGPUAdapter
      -> WGPUSurfaceGetPreferredFormatCallback
      -> Ptr ()
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUSurface
         -> WGPUAdapter
         -> WGPUSurfaceGetPreferredFormatCallback
         -> Ptr ()
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuSurfaceGetPreferredFormat"
  WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ()
wgpuAdapterGetPropertiesIO <- FunPtr (WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ())
-> WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ()
mk_wgpuhsfn_wgpuAdapterGetProperties (FunPtr (WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ())
 -> WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ())
-> IO (FunPtr (WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ()))
-> IO (WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO (FunPtr (WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuAdapterGetProperties"
  WGPUBuffer -> IO ()
wgpuBufferDestroyIO <- FunPtr (WGPUBuffer -> IO ()) -> WGPUBuffer -> IO ()
mk_wgpuhsfn_wgpuBufferDestroy (FunPtr (WGPUBuffer -> IO ()) -> WGPUBuffer -> IO ())
-> IO (FunPtr (WGPUBuffer -> IO ())) -> IO (WGPUBuffer -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (WGPUBuffer -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuBufferDestroy"
  WGPUBuffer -> CSize -> CSize -> IO (Ptr ())
wgpuBufferGetMappedRangeIO <- FunPtr (WGPUBuffer -> CSize -> CSize -> IO (Ptr ()))
-> WGPUBuffer -> CSize -> CSize -> IO (Ptr ())
mk_wgpuhsfn_wgpuBufferGetMappedRange (FunPtr (WGPUBuffer -> CSize -> CSize -> IO (Ptr ()))
 -> WGPUBuffer -> CSize -> CSize -> IO (Ptr ()))
-> IO (FunPtr (WGPUBuffer -> CSize -> CSize -> IO (Ptr ())))
-> IO (WGPUBuffer -> CSize -> CSize -> IO (Ptr ()))
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (WGPUBuffer -> CSize -> CSize -> IO (Ptr ())))
forall a. String -> IO (FunPtr a)
load String
"wgpuBufferGetMappedRange"
  WGPUBuffer -> IO ()
wgpuBufferUnmapIO <- FunPtr (WGPUBuffer -> IO ()) -> WGPUBuffer -> IO ()
mk_wgpuhsfn_wgpuBufferUnmap (FunPtr (WGPUBuffer -> IO ()) -> WGPUBuffer -> IO ())
-> IO (FunPtr (WGPUBuffer -> IO ())) -> IO (WGPUBuffer -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (WGPUBuffer -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuBufferUnmap"
  WGPUCommandEncoder
-> Ptr WGPUComputePassDescriptor -> IO WGPUComputePassEncoder
wgpuCommandEncoderBeginComputePassIO <- FunPtr
  (WGPUCommandEncoder
   -> Ptr WGPUComputePassDescriptor -> IO WGPUComputePassEncoder)
-> WGPUCommandEncoder
-> Ptr WGPUComputePassDescriptor
-> IO WGPUComputePassEncoder
mk_wgpuhsfn_wgpuCommandEncoderBeginComputePass (FunPtr
   (WGPUCommandEncoder
    -> Ptr WGPUComputePassDescriptor -> IO WGPUComputePassEncoder)
 -> WGPUCommandEncoder
 -> Ptr WGPUComputePassDescriptor
 -> IO WGPUComputePassEncoder)
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> Ptr WGPUComputePassDescriptor -> IO WGPUComputePassEncoder))
-> IO
     (WGPUCommandEncoder
      -> Ptr WGPUComputePassDescriptor -> IO WGPUComputePassEncoder)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> Ptr WGPUComputePassDescriptor -> IO WGPUComputePassEncoder))
forall a. String -> IO (FunPtr a)
load String
"wgpuCommandEncoderBeginComputePass"
  WGPUCommandEncoder
-> Ptr WGPURenderPassDescriptor -> IO WGPURenderPassEncoder
wgpuCommandEncoderBeginRenderPassIO <- FunPtr
  (WGPUCommandEncoder
   -> Ptr WGPURenderPassDescriptor -> IO WGPURenderPassEncoder)
-> WGPUCommandEncoder
-> Ptr WGPURenderPassDescriptor
-> IO WGPURenderPassEncoder
mk_wgpuhsfn_wgpuCommandEncoderBeginRenderPass (FunPtr
   (WGPUCommandEncoder
    -> Ptr WGPURenderPassDescriptor -> IO WGPURenderPassEncoder)
 -> WGPUCommandEncoder
 -> Ptr WGPURenderPassDescriptor
 -> IO WGPURenderPassEncoder)
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> Ptr WGPURenderPassDescriptor -> IO WGPURenderPassEncoder))
-> IO
     (WGPUCommandEncoder
      -> Ptr WGPURenderPassDescriptor -> IO WGPURenderPassEncoder)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> Ptr WGPURenderPassDescriptor -> IO WGPURenderPassEncoder))
forall a. String -> IO (FunPtr a)
load String
"wgpuCommandEncoderBeginRenderPass"
  WGPUCommandEncoder
-> WGPUBuffer -> Word64 -> WGPUBuffer -> Word64 -> Word64 -> IO ()
wgpuCommandEncoderCopyBufferToBufferIO <- FunPtr
  (WGPUCommandEncoder
   -> WGPUBuffer -> Word64 -> WGPUBuffer -> Word64 -> Word64 -> IO ())
-> WGPUCommandEncoder
-> WGPUBuffer
-> Word64
-> WGPUBuffer
-> Word64
-> Word64
-> IO ()
mk_wgpuhsfn_wgpuCommandEncoderCopyBufferToBuffer (FunPtr
   (WGPUCommandEncoder
    -> WGPUBuffer -> Word64 -> WGPUBuffer -> Word64 -> Word64 -> IO ())
 -> WGPUCommandEncoder
 -> WGPUBuffer
 -> Word64
 -> WGPUBuffer
 -> Word64
 -> Word64
 -> IO ())
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> WGPUBuffer
         -> Word64
         -> WGPUBuffer
         -> Word64
         -> Word64
         -> IO ()))
-> IO
     (WGPUCommandEncoder
      -> WGPUBuffer -> Word64 -> WGPUBuffer -> Word64 -> Word64 -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> WGPUBuffer
         -> Word64
         -> WGPUBuffer
         -> Word64
         -> Word64
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuCommandEncoderCopyBufferToBuffer"
  WGPUCommandEncoder
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyBufferToTextureIO <- FunPtr
  (WGPUCommandEncoder
   -> Ptr WGPUImageCopyBuffer
   -> Ptr WGPUImageCopyTexture
   -> Ptr WGPUExtent3D
   -> IO ())
-> WGPUCommandEncoder
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
mk_wgpuhsfn_wgpuCommandEncoderCopyBufferToTexture (FunPtr
   (WGPUCommandEncoder
    -> Ptr WGPUImageCopyBuffer
    -> Ptr WGPUImageCopyTexture
    -> Ptr WGPUExtent3D
    -> IO ())
 -> WGPUCommandEncoder
 -> Ptr WGPUImageCopyBuffer
 -> Ptr WGPUImageCopyTexture
 -> Ptr WGPUExtent3D
 -> IO ())
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> Ptr WGPUImageCopyBuffer
         -> Ptr WGPUImageCopyTexture
         -> Ptr WGPUExtent3D
         -> IO ()))
-> IO
     (WGPUCommandEncoder
      -> Ptr WGPUImageCopyBuffer
      -> Ptr WGPUImageCopyTexture
      -> Ptr WGPUExtent3D
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> Ptr WGPUImageCopyBuffer
         -> Ptr WGPUImageCopyTexture
         -> Ptr WGPUExtent3D
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuCommandEncoderCopyBufferToTexture"
  WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyTextureToTextureIO <- FunPtr
  (WGPUCommandEncoder
   -> Ptr WGPUImageCopyTexture
   -> Ptr WGPUImageCopyTexture
   -> Ptr WGPUExtent3D
   -> IO ())
-> WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
mk_wgpuhsfn_wgpuCommandEncoderCopyTextureToTexture (FunPtr
   (WGPUCommandEncoder
    -> Ptr WGPUImageCopyTexture
    -> Ptr WGPUImageCopyTexture
    -> Ptr WGPUExtent3D
    -> IO ())
 -> WGPUCommandEncoder
 -> Ptr WGPUImageCopyTexture
 -> Ptr WGPUImageCopyTexture
 -> Ptr WGPUExtent3D
 -> IO ())
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> Ptr WGPUImageCopyTexture
         -> Ptr WGPUImageCopyTexture
         -> Ptr WGPUExtent3D
         -> IO ()))
-> IO
     (WGPUCommandEncoder
      -> Ptr WGPUImageCopyTexture
      -> Ptr WGPUImageCopyTexture
      -> Ptr WGPUExtent3D
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> Ptr WGPUImageCopyTexture
         -> Ptr WGPUImageCopyTexture
         -> Ptr WGPUExtent3D
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuCommandEncoderCopyTextureToTexture"
  WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyTextureToBufferIO <- FunPtr
  (WGPUCommandEncoder
   -> Ptr WGPUImageCopyTexture
   -> Ptr WGPUImageCopyBuffer
   -> Ptr WGPUExtent3D
   -> IO ())
-> WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUExtent3D
-> IO ()
mk_wgpuhsfn_wgpuCommandEncoderCopyTextureToBuffer (FunPtr
   (WGPUCommandEncoder
    -> Ptr WGPUImageCopyTexture
    -> Ptr WGPUImageCopyBuffer
    -> Ptr WGPUExtent3D
    -> IO ())
 -> WGPUCommandEncoder
 -> Ptr WGPUImageCopyTexture
 -> Ptr WGPUImageCopyBuffer
 -> Ptr WGPUExtent3D
 -> IO ())
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> Ptr WGPUImageCopyTexture
         -> Ptr WGPUImageCopyBuffer
         -> Ptr WGPUExtent3D
         -> IO ()))
-> IO
     (WGPUCommandEncoder
      -> Ptr WGPUImageCopyTexture
      -> Ptr WGPUImageCopyBuffer
      -> Ptr WGPUExtent3D
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> Ptr WGPUImageCopyTexture
         -> Ptr WGPUImageCopyBuffer
         -> Ptr WGPUExtent3D
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuCommandEncoderCopyTextureToBuffer"
  WGPUCommandEncoder
-> Ptr WGPUCommandBufferDescriptor -> IO WGPUCommandBuffer
wgpuCommandEncoderFinishIO <- FunPtr
  (WGPUCommandEncoder
   -> Ptr WGPUCommandBufferDescriptor -> IO WGPUCommandBuffer)
-> WGPUCommandEncoder
-> Ptr WGPUCommandBufferDescriptor
-> IO WGPUCommandBuffer
mk_wgpuhsfn_wgpuCommandEncoderFinish (FunPtr
   (WGPUCommandEncoder
    -> Ptr WGPUCommandBufferDescriptor -> IO WGPUCommandBuffer)
 -> WGPUCommandEncoder
 -> Ptr WGPUCommandBufferDescriptor
 -> IO WGPUCommandBuffer)
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> Ptr WGPUCommandBufferDescriptor -> IO WGPUCommandBuffer))
-> IO
     (WGPUCommandEncoder
      -> Ptr WGPUCommandBufferDescriptor -> IO WGPUCommandBuffer)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUCommandEncoder
         -> Ptr WGPUCommandBufferDescriptor -> IO WGPUCommandBuffer))
forall a. String -> IO (FunPtr a)
load String
"wgpuCommandEncoderFinish"
  WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuComputePassEncoderDispatchIO <- FunPtr
  (WGPUComputePassEncoder
   -> WGPUMapModeFlags
   -> WGPUMapModeFlags
   -> WGPUMapModeFlags
   -> IO ())
-> WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
mk_wgpuhsfn_wgpuComputePassEncoderDispatch (FunPtr
   (WGPUComputePassEncoder
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> IO ())
 -> WGPUComputePassEncoder
 -> WGPUMapModeFlags
 -> WGPUMapModeFlags
 -> WGPUMapModeFlags
 -> IO ())
-> IO
     (FunPtr
        (WGPUComputePassEncoder
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> IO ()))
-> IO
     (WGPUComputePassEncoder
      -> WGPUMapModeFlags
      -> WGPUMapModeFlags
      -> WGPUMapModeFlags
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUComputePassEncoder
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuComputePassEncoderDispatch"
  WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuComputePassEncoderDispatchIndirectIO <- FunPtr (WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ())
-> WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ()
mk_wgpuhsfn_wgpuComputePassEncoderDispatchIndirect (FunPtr (WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ())
 -> WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ())
-> IO
     (FunPtr (WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ()))
-> IO (WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr (WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuComputePassEncoderDispatchIndirect"
  WGPUComputePassEncoder -> IO ()
wgpuComputePassEncoderEndPassIO <- FunPtr (WGPUComputePassEncoder -> IO ())
-> WGPUComputePassEncoder -> IO ()
mk_wgpuhsfn_wgpuComputePassEncoderEndPass (FunPtr (WGPUComputePassEncoder -> IO ())
 -> WGPUComputePassEncoder -> IO ())
-> IO (FunPtr (WGPUComputePassEncoder -> IO ()))
-> IO (WGPUComputePassEncoder -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (WGPUComputePassEncoder -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuComputePassEncoderEndPass"
  WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
wgpuComputePassEncoderSetBindGroupIO <- FunPtr
  (WGPUComputePassEncoder
   -> WGPUMapModeFlags
   -> WGPUBindGroup
   -> WGPUMapModeFlags
   -> Ptr WGPUMapModeFlags
   -> IO ())
-> WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
mk_wgpuhsfn_wgpuComputePassEncoderSetBindGroup (FunPtr
   (WGPUComputePassEncoder
    -> WGPUMapModeFlags
    -> WGPUBindGroup
    -> WGPUMapModeFlags
    -> Ptr WGPUMapModeFlags
    -> IO ())
 -> WGPUComputePassEncoder
 -> WGPUMapModeFlags
 -> WGPUBindGroup
 -> WGPUMapModeFlags
 -> Ptr WGPUMapModeFlags
 -> IO ())
-> IO
     (FunPtr
        (WGPUComputePassEncoder
         -> WGPUMapModeFlags
         -> WGPUBindGroup
         -> WGPUMapModeFlags
         -> Ptr WGPUMapModeFlags
         -> IO ()))
-> IO
     (WGPUComputePassEncoder
      -> WGPUMapModeFlags
      -> WGPUBindGroup
      -> WGPUMapModeFlags
      -> Ptr WGPUMapModeFlags
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUComputePassEncoder
         -> WGPUMapModeFlags
         -> WGPUBindGroup
         -> WGPUMapModeFlags
         -> Ptr WGPUMapModeFlags
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuComputePassEncoderSetBindGroup"
  WGPUComputePassEncoder -> WGPUComputePipeline -> IO ()
wgpuComputePassEncoderSetPipelineIO <- FunPtr (WGPUComputePassEncoder -> WGPUComputePipeline -> IO ())
-> WGPUComputePassEncoder -> WGPUComputePipeline -> IO ()
mk_wgpuhsfn_wgpuComputePassEncoderSetPipeline (FunPtr (WGPUComputePassEncoder -> WGPUComputePipeline -> IO ())
 -> WGPUComputePassEncoder -> WGPUComputePipeline -> IO ())
-> IO
     (FunPtr (WGPUComputePassEncoder -> WGPUComputePipeline -> IO ()))
-> IO (WGPUComputePassEncoder -> WGPUComputePipeline -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr (WGPUComputePassEncoder -> WGPUComputePipeline -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuComputePassEncoderSetPipeline"
  WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup
wgpuDeviceCreateBindGroupIO <- FunPtr
  (WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup)
-> WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup
mk_wgpuhsfn_wgpuDeviceCreateBindGroup (FunPtr
   (WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup)
 -> WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup)
-> IO
     (FunPtr
        (WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup))
-> IO
     (WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup))
forall a. String -> IO (FunPtr a)
load String
"wgpuDeviceCreateBindGroup"
  WGPUDevice
-> Ptr WGPUBindGroupLayoutDescriptor -> IO WGPUBindGroupLayout
wgpuDeviceCreateBindGroupLayoutIO <- FunPtr
  (WGPUDevice
   -> Ptr WGPUBindGroupLayoutDescriptor -> IO WGPUBindGroupLayout)
-> WGPUDevice
-> Ptr WGPUBindGroupLayoutDescriptor
-> IO WGPUBindGroupLayout
mk_wgpuhsfn_wgpuDeviceCreateBindGroupLayout (FunPtr
   (WGPUDevice
    -> Ptr WGPUBindGroupLayoutDescriptor -> IO WGPUBindGroupLayout)
 -> WGPUDevice
 -> Ptr WGPUBindGroupLayoutDescriptor
 -> IO WGPUBindGroupLayout)
-> IO
     (FunPtr
        (WGPUDevice
         -> Ptr WGPUBindGroupLayoutDescriptor -> IO WGPUBindGroupLayout))
-> IO
     (WGPUDevice
      -> Ptr WGPUBindGroupLayoutDescriptor -> IO WGPUBindGroupLayout)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUDevice
         -> Ptr WGPUBindGroupLayoutDescriptor -> IO WGPUBindGroupLayout))
forall a. String -> IO (FunPtr a)
load String
"wgpuDeviceCreateBindGroupLayout"
  WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer
wgpuDeviceCreateBufferIO <- FunPtr (WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer)
-> WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer
mk_wgpuhsfn_wgpuDeviceCreateBuffer (FunPtr (WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer)
 -> WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer)
-> IO
     (FunPtr (WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer))
-> IO (WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr (WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer))
forall a. String -> IO (FunPtr a)
load String
"wgpuDeviceCreateBuffer"
  WGPUDevice
-> Ptr WGPUCommandEncoderDescriptor -> IO WGPUCommandEncoder
wgpuDeviceCreateCommandEncoderIO <- FunPtr
  (WGPUDevice
   -> Ptr WGPUCommandEncoderDescriptor -> IO WGPUCommandEncoder)
-> WGPUDevice
-> Ptr WGPUCommandEncoderDescriptor
-> IO WGPUCommandEncoder
mk_wgpuhsfn_wgpuDeviceCreateCommandEncoder (FunPtr
   (WGPUDevice
    -> Ptr WGPUCommandEncoderDescriptor -> IO WGPUCommandEncoder)
 -> WGPUDevice
 -> Ptr WGPUCommandEncoderDescriptor
 -> IO WGPUCommandEncoder)
-> IO
     (FunPtr
        (WGPUDevice
         -> Ptr WGPUCommandEncoderDescriptor -> IO WGPUCommandEncoder))
-> IO
     (WGPUDevice
      -> Ptr WGPUCommandEncoderDescriptor -> IO WGPUCommandEncoder)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUDevice
         -> Ptr WGPUCommandEncoderDescriptor -> IO WGPUCommandEncoder))
forall a. String -> IO (FunPtr a)
load String
"wgpuDeviceCreateCommandEncoder"
  WGPUDevice
-> Ptr WGPUComputePipelineDescriptor -> IO WGPUComputePipeline
wgpuDeviceCreateComputePipelineIO <- FunPtr
  (WGPUDevice
   -> Ptr WGPUComputePipelineDescriptor -> IO WGPUComputePipeline)
-> WGPUDevice
-> Ptr WGPUComputePipelineDescriptor
-> IO WGPUComputePipeline
mk_wgpuhsfn_wgpuDeviceCreateComputePipeline (FunPtr
   (WGPUDevice
    -> Ptr WGPUComputePipelineDescriptor -> IO WGPUComputePipeline)
 -> WGPUDevice
 -> Ptr WGPUComputePipelineDescriptor
 -> IO WGPUComputePipeline)
-> IO
     (FunPtr
        (WGPUDevice
         -> Ptr WGPUComputePipelineDescriptor -> IO WGPUComputePipeline))
-> IO
     (WGPUDevice
      -> Ptr WGPUComputePipelineDescriptor -> IO WGPUComputePipeline)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUDevice
         -> Ptr WGPUComputePipelineDescriptor -> IO WGPUComputePipeline))
forall a. String -> IO (FunPtr a)
load String
"wgpuDeviceCreateComputePipeline"
  WGPUDevice
-> Ptr WGPUPipelineLayoutDescriptor -> IO WGPUPipelineLayout
wgpuDeviceCreatePipelineLayoutIO <- FunPtr
  (WGPUDevice
   -> Ptr WGPUPipelineLayoutDescriptor -> IO WGPUPipelineLayout)
-> WGPUDevice
-> Ptr WGPUPipelineLayoutDescriptor
-> IO WGPUPipelineLayout
mk_wgpuhsfn_wgpuDeviceCreatePipelineLayout (FunPtr
   (WGPUDevice
    -> Ptr WGPUPipelineLayoutDescriptor -> IO WGPUPipelineLayout)
 -> WGPUDevice
 -> Ptr WGPUPipelineLayoutDescriptor
 -> IO WGPUPipelineLayout)
-> IO
     (FunPtr
        (WGPUDevice
         -> Ptr WGPUPipelineLayoutDescriptor -> IO WGPUPipelineLayout))
-> IO
     (WGPUDevice
      -> Ptr WGPUPipelineLayoutDescriptor -> IO WGPUPipelineLayout)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUDevice
         -> Ptr WGPUPipelineLayoutDescriptor -> IO WGPUPipelineLayout))
forall a. String -> IO (FunPtr a)
load String
"wgpuDeviceCreatePipelineLayout"
  WGPUDevice
-> Ptr WGPURenderPipelineDescriptor -> IO WGPURenderPipeline
wgpuDeviceCreateRenderPipelineIO <- FunPtr
  (WGPUDevice
   -> Ptr WGPURenderPipelineDescriptor -> IO WGPURenderPipeline)
-> WGPUDevice
-> Ptr WGPURenderPipelineDescriptor
-> IO WGPURenderPipeline
mk_wgpuhsfn_wgpuDeviceCreateRenderPipeline (FunPtr
   (WGPUDevice
    -> Ptr WGPURenderPipelineDescriptor -> IO WGPURenderPipeline)
 -> WGPUDevice
 -> Ptr WGPURenderPipelineDescriptor
 -> IO WGPURenderPipeline)
-> IO
     (FunPtr
        (WGPUDevice
         -> Ptr WGPURenderPipelineDescriptor -> IO WGPURenderPipeline))
-> IO
     (WGPUDevice
      -> Ptr WGPURenderPipelineDescriptor -> IO WGPURenderPipeline)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUDevice
         -> Ptr WGPURenderPipelineDescriptor -> IO WGPURenderPipeline))
forall a. String -> IO (FunPtr a)
load String
"wgpuDeviceCreateRenderPipeline"
  WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler
wgpuDeviceCreateSamplerIO <- FunPtr (WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler)
-> WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler
mk_wgpuhsfn_wgpuDeviceCreateSampler (FunPtr (WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler)
 -> WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler)
-> IO
     (FunPtr
        (WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler))
-> IO (WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler))
forall a. String -> IO (FunPtr a)
load String
"wgpuDeviceCreateSampler"
  WGPUDevice -> Ptr WGPUShaderModuleDescriptor -> IO WGPUShaderModule
wgpuDeviceCreateShaderModuleIO <- FunPtr
  (WGPUDevice
   -> Ptr WGPUShaderModuleDescriptor -> IO WGPUShaderModule)
-> WGPUDevice
-> Ptr WGPUShaderModuleDescriptor
-> IO WGPUShaderModule
mk_wgpuhsfn_wgpuDeviceCreateShaderModule (FunPtr
   (WGPUDevice
    -> Ptr WGPUShaderModuleDescriptor -> IO WGPUShaderModule)
 -> WGPUDevice
 -> Ptr WGPUShaderModuleDescriptor
 -> IO WGPUShaderModule)
-> IO
     (FunPtr
        (WGPUDevice
         -> Ptr WGPUShaderModuleDescriptor -> IO WGPUShaderModule))
-> IO
     (WGPUDevice
      -> Ptr WGPUShaderModuleDescriptor -> IO WGPUShaderModule)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUDevice
         -> Ptr WGPUShaderModuleDescriptor -> IO WGPUShaderModule))
forall a. String -> IO (FunPtr a)
load String
"wgpuDeviceCreateShaderModule"
  WGPUDevice
-> WGPUSurface -> Ptr WGPUSwapChainDescriptor -> IO WGPUSwapChain
wgpuDeviceCreateSwapChainIO <- FunPtr
  (WGPUDevice
   -> WGPUSurface -> Ptr WGPUSwapChainDescriptor -> IO WGPUSwapChain)
-> WGPUDevice
-> WGPUSurface
-> Ptr WGPUSwapChainDescriptor
-> IO WGPUSwapChain
mk_wgpuhsfn_wgpuDeviceCreateSwapChain (FunPtr
   (WGPUDevice
    -> WGPUSurface -> Ptr WGPUSwapChainDescriptor -> IO WGPUSwapChain)
 -> WGPUDevice
 -> WGPUSurface
 -> Ptr WGPUSwapChainDescriptor
 -> IO WGPUSwapChain)
-> IO
     (FunPtr
        (WGPUDevice
         -> WGPUSurface -> Ptr WGPUSwapChainDescriptor -> IO WGPUSwapChain))
-> IO
     (WGPUDevice
      -> WGPUSurface -> Ptr WGPUSwapChainDescriptor -> IO WGPUSwapChain)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUDevice
         -> WGPUSurface -> Ptr WGPUSwapChainDescriptor -> IO WGPUSwapChain))
forall a. String -> IO (FunPtr a)
load String
"wgpuDeviceCreateSwapChain"
  WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture
wgpuDeviceCreateTextureIO <- FunPtr (WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture)
-> WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture
mk_wgpuhsfn_wgpuDeviceCreateTexture (FunPtr (WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture)
 -> WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture)
-> IO
     (FunPtr
        (WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture))
-> IO (WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture))
forall a. String -> IO (FunPtr a)
load String
"wgpuDeviceCreateTexture"
  WGPUDevice -> IO WGPUQueue
wgpuDeviceGetQueueIO <- FunPtr (WGPUDevice -> IO WGPUQueue) -> WGPUDevice -> IO WGPUQueue
mk_wgpuhsfn_wgpuDeviceGetQueue (FunPtr (WGPUDevice -> IO WGPUQueue) -> WGPUDevice -> IO WGPUQueue)
-> IO (FunPtr (WGPUDevice -> IO WGPUQueue))
-> IO (WGPUDevice -> IO WGPUQueue)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (WGPUDevice -> IO WGPUQueue))
forall a. String -> IO (FunPtr a)
load String
"wgpuDeviceGetQueue"
  WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface
wgpuInstanceCreateSurfaceIO <- FunPtr
  (WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface)
-> WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface
mk_wgpuhsfn_wgpuInstanceCreateSurface (FunPtr
   (WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface)
 -> WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface)
-> IO
     (FunPtr
        (WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface))
-> IO (WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface))
forall a. String -> IO (FunPtr a)
load String
"wgpuInstanceCreateSurface"
  WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ()
wgpuQueueSubmitIO <- FunPtr
  (WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ())
-> WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ()
mk_wgpuhsfn_wgpuQueueSubmit (FunPtr
   (WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ())
 -> WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ())
-> IO
     (FunPtr
        (WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ()))
-> IO
     (WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuQueueSubmit"
  WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ()
wgpuQueueWriteBufferIO <- FunPtr
  (WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ())
-> WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ()
mk_wgpuhsfn_wgpuQueueWriteBuffer (FunPtr
   (WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ())
 -> WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ())
-> IO
     (FunPtr
        (WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ()))
-> IO
     (WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuQueueWriteBuffer"
  WGPUQueue
-> Ptr WGPUImageCopyTexture
-> Ptr ()
-> CSize
-> Ptr WGPUTextureDataLayout
-> Ptr WGPUExtent3D
-> IO ()
wgpuQueueWriteTextureIO <- FunPtr
  (WGPUQueue
   -> Ptr WGPUImageCopyTexture
   -> Ptr ()
   -> CSize
   -> Ptr WGPUTextureDataLayout
   -> Ptr WGPUExtent3D
   -> IO ())
-> WGPUQueue
-> Ptr WGPUImageCopyTexture
-> Ptr ()
-> CSize
-> Ptr WGPUTextureDataLayout
-> Ptr WGPUExtent3D
-> IO ()
mk_wgpuhsfn_wgpuQueueWriteTexture (FunPtr
   (WGPUQueue
    -> Ptr WGPUImageCopyTexture
    -> Ptr ()
    -> CSize
    -> Ptr WGPUTextureDataLayout
    -> Ptr WGPUExtent3D
    -> IO ())
 -> WGPUQueue
 -> Ptr WGPUImageCopyTexture
 -> Ptr ()
 -> CSize
 -> Ptr WGPUTextureDataLayout
 -> Ptr WGPUExtent3D
 -> IO ())
-> IO
     (FunPtr
        (WGPUQueue
         -> Ptr WGPUImageCopyTexture
         -> Ptr ()
         -> CSize
         -> Ptr WGPUTextureDataLayout
         -> Ptr WGPUExtent3D
         -> IO ()))
-> IO
     (WGPUQueue
      -> Ptr WGPUImageCopyTexture
      -> Ptr ()
      -> CSize
      -> Ptr WGPUTextureDataLayout
      -> Ptr WGPUExtent3D
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUQueue
         -> Ptr WGPUImageCopyTexture
         -> Ptr ()
         -> CSize
         -> Ptr WGPUTextureDataLayout
         -> Ptr WGPUExtent3D
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuQueueWriteTexture"
  WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderDrawIO <- FunPtr
  (WGPURenderPassEncoder
   -> WGPUMapModeFlags
   -> WGPUMapModeFlags
   -> WGPUMapModeFlags
   -> WGPUMapModeFlags
   -> IO ())
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderDraw (FunPtr
   (WGPURenderPassEncoder
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> IO ())
 -> WGPURenderPassEncoder
 -> WGPUMapModeFlags
 -> WGPUMapModeFlags
 -> WGPUMapModeFlags
 -> WGPUMapModeFlags
 -> IO ())
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> IO ()))
-> IO
     (WGPURenderPassEncoder
      -> WGPUMapModeFlags
      -> WGPUMapModeFlags
      -> WGPUMapModeFlags
      -> WGPUMapModeFlags
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderDraw"
  WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Int32
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderDrawIndexedIO <- FunPtr
  (WGPURenderPassEncoder
   -> WGPUMapModeFlags
   -> WGPUMapModeFlags
   -> WGPUMapModeFlags
   -> Int32
   -> WGPUMapModeFlags
   -> IO ())
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Int32
-> WGPUMapModeFlags
-> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderDrawIndexed (FunPtr
   (WGPURenderPassEncoder
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> Int32
    -> WGPUMapModeFlags
    -> IO ())
 -> WGPURenderPassEncoder
 -> WGPUMapModeFlags
 -> WGPUMapModeFlags
 -> WGPUMapModeFlags
 -> Int32
 -> WGPUMapModeFlags
 -> IO ())
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> Int32
         -> WGPUMapModeFlags
         -> IO ()))
-> IO
     (WGPURenderPassEncoder
      -> WGPUMapModeFlags
      -> WGPUMapModeFlags
      -> WGPUMapModeFlags
      -> Int32
      -> WGPUMapModeFlags
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> Int32
         -> WGPUMapModeFlags
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderDrawIndexed"
  WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuRenderPassEncoderDrawIndexedIndirectIO <- FunPtr (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ())
-> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderDrawIndexedIndirect (FunPtr (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ())
 -> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ())
-> IO
     (FunPtr (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()))
-> IO (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderDrawIndexedIndirect"
  WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuRenderPassEncoderDrawIndirectIO <- FunPtr (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ())
-> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderDrawIndirect (FunPtr (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ())
 -> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ())
-> IO
     (FunPtr (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()))
-> IO (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderDrawIndirect"
  WGPURenderPassEncoder -> IO ()
wgpuRenderPassEncoderEndPassIO <- FunPtr (WGPURenderPassEncoder -> IO ())
-> WGPURenderPassEncoder -> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderEndPass (FunPtr (WGPURenderPassEncoder -> IO ())
 -> WGPURenderPassEncoder -> IO ())
-> IO (FunPtr (WGPURenderPassEncoder -> IO ()))
-> IO (WGPURenderPassEncoder -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (WGPURenderPassEncoder -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderEndPass"
  WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderSetBindGroupIO <- FunPtr
  (WGPURenderPassEncoder
   -> WGPUMapModeFlags
   -> WGPUBindGroup
   -> WGPUMapModeFlags
   -> Ptr WGPUMapModeFlags
   -> IO ())
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderSetBindGroup (FunPtr
   (WGPURenderPassEncoder
    -> WGPUMapModeFlags
    -> WGPUBindGroup
    -> WGPUMapModeFlags
    -> Ptr WGPUMapModeFlags
    -> IO ())
 -> WGPURenderPassEncoder
 -> WGPUMapModeFlags
 -> WGPUBindGroup
 -> WGPUMapModeFlags
 -> Ptr WGPUMapModeFlags
 -> IO ())
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUMapModeFlags
         -> WGPUBindGroup
         -> WGPUMapModeFlags
         -> Ptr WGPUMapModeFlags
         -> IO ()))
-> IO
     (WGPURenderPassEncoder
      -> WGPUMapModeFlags
      -> WGPUBindGroup
      -> WGPUMapModeFlags
      -> Ptr WGPUMapModeFlags
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUMapModeFlags
         -> WGPUBindGroup
         -> WGPUMapModeFlags
         -> Ptr WGPUMapModeFlags
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderSetBindGroup"
  WGPURenderPassEncoder -> Ptr WGPUColor -> IO ()
wgpuRenderPassEncoderSetBlendConstantIO <- FunPtr (WGPURenderPassEncoder -> Ptr WGPUColor -> IO ())
-> WGPURenderPassEncoder -> Ptr WGPUColor -> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderSetBlendConstant (FunPtr (WGPURenderPassEncoder -> Ptr WGPUColor -> IO ())
 -> WGPURenderPassEncoder -> Ptr WGPUColor -> IO ())
-> IO (FunPtr (WGPURenderPassEncoder -> Ptr WGPUColor -> IO ()))
-> IO (WGPURenderPassEncoder -> Ptr WGPUColor -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO (FunPtr (WGPURenderPassEncoder -> Ptr WGPUColor -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderSetBlendConstant"
  WGPURenderPassEncoder
-> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO ()
wgpuRenderPassEncoderSetIndexBufferIO <- FunPtr
  (WGPURenderPassEncoder
   -> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO ())
-> WGPURenderPassEncoder
-> WGPUBuffer
-> WGPUIndexFormat
-> Word64
-> Word64
-> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderSetIndexBuffer (FunPtr
   (WGPURenderPassEncoder
    -> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO ())
 -> WGPURenderPassEncoder
 -> WGPUBuffer
 -> WGPUIndexFormat
 -> Word64
 -> Word64
 -> IO ())
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO ()))
-> IO
     (WGPURenderPassEncoder
      -> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderSetIndexBuffer"
  WGPURenderPassEncoder -> WGPURenderPipeline -> IO ()
wgpuRenderPassEncoderSetPipelineIO <- FunPtr (WGPURenderPassEncoder -> WGPURenderPipeline -> IO ())
-> WGPURenderPassEncoder -> WGPURenderPipeline -> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderSetPipeline (FunPtr (WGPURenderPassEncoder -> WGPURenderPipeline -> IO ())
 -> WGPURenderPassEncoder -> WGPURenderPipeline -> IO ())
-> IO
     (FunPtr (WGPURenderPassEncoder -> WGPURenderPipeline -> IO ()))
-> IO (WGPURenderPassEncoder -> WGPURenderPipeline -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr (WGPURenderPassEncoder -> WGPURenderPipeline -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderSetPipeline"
  WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderSetScissorRectIO <- FunPtr
  (WGPURenderPassEncoder
   -> WGPUMapModeFlags
   -> WGPUMapModeFlags
   -> WGPUMapModeFlags
   -> WGPUMapModeFlags
   -> IO ())
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderSetScissorRect (FunPtr
   (WGPURenderPassEncoder
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> IO ())
 -> WGPURenderPassEncoder
 -> WGPUMapModeFlags
 -> WGPUMapModeFlags
 -> WGPUMapModeFlags
 -> WGPUMapModeFlags
 -> IO ())
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> IO ()))
-> IO
     (WGPURenderPassEncoder
      -> WGPUMapModeFlags
      -> WGPUMapModeFlags
      -> WGPUMapModeFlags
      -> WGPUMapModeFlags
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderSetScissorRect"
  WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ()
wgpuRenderPassEncoderSetStencilReferenceIO <- FunPtr (WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ())
-> WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderSetStencilReference (FunPtr (WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ())
 -> WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ())
-> IO (FunPtr (WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ()))
-> IO (WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO (FunPtr (WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderSetStencilReference"
  WGPURenderPassEncoder
-> WGPUMapModeFlags -> WGPUBuffer -> Word64 -> Word64 -> IO ()
wgpuRenderPassEncoderSetVertexBufferIO <- FunPtr
  (WGPURenderPassEncoder
   -> WGPUMapModeFlags -> WGPUBuffer -> Word64 -> Word64 -> IO ())
-> WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUBuffer
-> Word64
-> Word64
-> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderSetVertexBuffer (FunPtr
   (WGPURenderPassEncoder
    -> WGPUMapModeFlags -> WGPUBuffer -> Word64 -> Word64 -> IO ())
 -> WGPURenderPassEncoder
 -> WGPUMapModeFlags
 -> WGPUBuffer
 -> Word64
 -> Word64
 -> IO ())
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUMapModeFlags -> WGPUBuffer -> Word64 -> Word64 -> IO ()))
-> IO
     (WGPURenderPassEncoder
      -> WGPUMapModeFlags -> WGPUBuffer -> Word64 -> Word64 -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUMapModeFlags -> WGPUBuffer -> Word64 -> Word64 -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderSetVertexBuffer"
  WGPURenderPassEncoder
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> IO ()
wgpuRenderPassEncoderSetViewportIO <- FunPtr
  (WGPURenderPassEncoder
   -> CFloat
   -> CFloat
   -> CFloat
   -> CFloat
   -> CFloat
   -> CFloat
   -> IO ())
-> WGPURenderPassEncoder
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderSetViewport (FunPtr
   (WGPURenderPassEncoder
    -> CFloat
    -> CFloat
    -> CFloat
    -> CFloat
    -> CFloat
    -> CFloat
    -> IO ())
 -> WGPURenderPassEncoder
 -> CFloat
 -> CFloat
 -> CFloat
 -> CFloat
 -> CFloat
 -> CFloat
 -> IO ())
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> CFloat
         -> CFloat
         -> CFloat
         -> CFloat
         -> CFloat
         -> CFloat
         -> IO ()))
-> IO
     (WGPURenderPassEncoder
      -> CFloat
      -> CFloat
      -> CFloat
      -> CFloat
      -> CFloat
      -> CFloat
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> CFloat
         -> CFloat
         -> CFloat
         -> CFloat
         -> CFloat
         -> CFloat
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderSetViewport"
  WGPUSwapChain -> IO WGPUTextureView
wgpuSwapChainGetCurrentTextureViewIO <- FunPtr (WGPUSwapChain -> IO WGPUTextureView)
-> WGPUSwapChain -> IO WGPUTextureView
mk_wgpuhsfn_wgpuSwapChainGetCurrentTextureView (FunPtr (WGPUSwapChain -> IO WGPUTextureView)
 -> WGPUSwapChain -> IO WGPUTextureView)
-> IO (FunPtr (WGPUSwapChain -> IO WGPUTextureView))
-> IO (WGPUSwapChain -> IO WGPUTextureView)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (WGPUSwapChain -> IO WGPUTextureView))
forall a. String -> IO (FunPtr a)
load String
"wgpuSwapChainGetCurrentTextureView"
  WGPUSwapChain -> IO ()
wgpuSwapChainPresentIO <- FunPtr (WGPUSwapChain -> IO ()) -> WGPUSwapChain -> IO ()
mk_wgpuhsfn_wgpuSwapChainPresent (FunPtr (WGPUSwapChain -> IO ()) -> WGPUSwapChain -> IO ())
-> IO (FunPtr (WGPUSwapChain -> IO ()))
-> IO (WGPUSwapChain -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (WGPUSwapChain -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuSwapChainPresent"
  WGPUTexture -> Ptr WGPUTextureViewDescriptor -> IO WGPUTextureView
wgpuTextureCreateViewIO <- FunPtr
  (WGPUTexture
   -> Ptr WGPUTextureViewDescriptor -> IO WGPUTextureView)
-> WGPUTexture
-> Ptr WGPUTextureViewDescriptor
-> IO WGPUTextureView
mk_wgpuhsfn_wgpuTextureCreateView (FunPtr
   (WGPUTexture
    -> Ptr WGPUTextureViewDescriptor -> IO WGPUTextureView)
 -> WGPUTexture
 -> Ptr WGPUTextureViewDescriptor
 -> IO WGPUTextureView)
-> IO
     (FunPtr
        (WGPUTexture
         -> Ptr WGPUTextureViewDescriptor -> IO WGPUTextureView))
-> IO
     (WGPUTexture
      -> Ptr WGPUTextureViewDescriptor -> IO WGPUTextureView)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPUTexture
         -> Ptr WGPUTextureViewDescriptor -> IO WGPUTextureView))
forall a. String -> IO (FunPtr a)
load String
"wgpuTextureCreateView"
  WGPUTexture -> IO ()
wgpuTextureDestroyIO <- FunPtr (WGPUTexture -> IO ()) -> WGPUTexture -> IO ()
mk_wgpuhsfn_wgpuTextureDestroy (FunPtr (WGPUTexture -> IO ()) -> WGPUTexture -> IO ())
-> IO (FunPtr (WGPUTexture -> IO ())) -> IO (WGPUTexture -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (WGPUTexture -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuTextureDestroy"
  WGPUDevice -> CBool -> IO ()
wgpuDevicePollIO <- FunPtr (WGPUDevice -> CBool -> IO ())
-> WGPUDevice -> CBool -> IO ()
mk_wgpuhsfn_wgpuDevicePoll (FunPtr (WGPUDevice -> CBool -> IO ())
 -> WGPUDevice -> CBool -> IO ())
-> IO (FunPtr (WGPUDevice -> CBool -> IO ()))
-> IO (WGPUDevice -> CBool -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (WGPUDevice -> CBool -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuDevicePoll"
  WGPULogCallback -> IO ()
wgpuSetLogCallbackIO <- FunPtr (WGPULogCallback -> IO ()) -> WGPULogCallback -> IO ()
mk_wgpuhsfn_wgpuSetLogCallback (FunPtr (WGPULogCallback -> IO ()) -> WGPULogCallback -> IO ())
-> IO (FunPtr (WGPULogCallback -> IO ()))
-> IO (WGPULogCallback -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (WGPULogCallback -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuSetLogCallback"
  WGPULogLevel -> IO ()
wgpuSetLogLevelIO <- FunPtr (WGPULogLevel -> IO ()) -> WGPULogLevel -> IO ()
mk_wgpuhsfn_wgpuSetLogLevel (FunPtr (WGPULogLevel -> IO ()) -> WGPULogLevel -> IO ())
-> IO (FunPtr (WGPULogLevel -> IO ()))
-> IO (WGPULogLevel -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (WGPULogLevel -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuSetLogLevel"
  IO WGPUMapModeFlags
wgpuGetVersionIO <- FunPtr (IO WGPUMapModeFlags) -> IO WGPUMapModeFlags
mk_wgpuhsfn_wgpuGetVersion (FunPtr (IO WGPUMapModeFlags) -> IO WGPUMapModeFlags)
-> IO (FunPtr (IO WGPUMapModeFlags)) -> IO (IO WGPUMapModeFlags)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String -> IO (FunPtr (IO WGPUMapModeFlags))
forall a. String -> IO (FunPtr a)
load String
"wgpuGetVersion"
  WGPURenderPassEncoder
-> WGPUShaderStage
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Ptr ()
-> IO ()
wgpuRenderPassEncoderSetPushConstantsIO <- FunPtr
  (WGPURenderPassEncoder
   -> WGPUShaderStage
   -> WGPUMapModeFlags
   -> WGPUMapModeFlags
   -> Ptr ()
   -> IO ())
-> WGPURenderPassEncoder
-> WGPUShaderStage
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Ptr ()
-> IO ()
mk_wgpuhsfn_wgpuRenderPassEncoderSetPushConstants (FunPtr
   (WGPURenderPassEncoder
    -> WGPUShaderStage
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> Ptr ()
    -> IO ())
 -> WGPURenderPassEncoder
 -> WGPUShaderStage
 -> WGPUMapModeFlags
 -> WGPUMapModeFlags
 -> Ptr ()
 -> IO ())
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUShaderStage
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> Ptr ()
         -> IO ()))
-> IO
     (WGPURenderPassEncoder
      -> WGPUShaderStage
      -> WGPUMapModeFlags
      -> WGPUMapModeFlags
      -> Ptr ()
      -> IO ())
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> String
-> IO
     (FunPtr
        (WGPURenderPassEncoder
         -> WGPUShaderStage
         -> WGPUMapModeFlags
         -> WGPUMapModeFlags
         -> Ptr ()
         -> IO ()))
forall a. String -> IO (FunPtr a)
load String
"wgpuRenderPassEncoderSetPushConstants"
  WGPUHsInstance -> IO WGPUHsInstance
forall (f :: * -> *) a. Applicative f => a -> f a
pure WGPUHsInstance :: (WGPUAdapter
 -> Ptr WGPUDeviceDescriptor
 -> WGPURequestDeviceCallback
 -> Ptr ()
 -> IO ())
-> (WGPUBuffer
    -> WGPUMapModeFlags
    -> CSize
    -> CSize
    -> WGPUBufferMapCallback
    -> Ptr ()
    -> IO ())
-> (WGPUInstance
    -> Ptr WGPURequestAdapterOptions
    -> WGPURequestAdapterCallback
    -> Ptr ()
    -> IO ())
-> (WGPUSurface
    -> WGPUAdapter
    -> WGPUSurfaceGetPreferredFormatCallback
    -> Ptr ()
    -> IO ())
-> (WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ())
-> (WGPUBuffer -> IO ())
-> (WGPUBuffer -> CSize -> CSize -> IO (Ptr ()))
-> (WGPUBuffer -> IO ())
-> (WGPUCommandEncoder
    -> Ptr WGPUComputePassDescriptor -> IO WGPUComputePassEncoder)
-> (WGPUCommandEncoder
    -> Ptr WGPURenderPassDescriptor -> IO WGPURenderPassEncoder)
-> (WGPUCommandEncoder
    -> WGPUBuffer -> Word64 -> WGPUBuffer -> Word64 -> Word64 -> IO ())
-> (WGPUCommandEncoder
    -> Ptr WGPUImageCopyBuffer
    -> Ptr WGPUImageCopyTexture
    -> Ptr WGPUExtent3D
    -> IO ())
-> (WGPUCommandEncoder
    -> Ptr WGPUImageCopyTexture
    -> Ptr WGPUImageCopyTexture
    -> Ptr WGPUExtent3D
    -> IO ())
-> (WGPUCommandEncoder
    -> Ptr WGPUImageCopyTexture
    -> Ptr WGPUImageCopyBuffer
    -> Ptr WGPUExtent3D
    -> IO ())
-> (WGPUCommandEncoder
    -> Ptr WGPUCommandBufferDescriptor -> IO WGPUCommandBuffer)
-> (WGPUComputePassEncoder
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> IO ())
-> (WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ())
-> (WGPUComputePassEncoder -> IO ())
-> (WGPUComputePassEncoder
    -> WGPUMapModeFlags
    -> WGPUBindGroup
    -> WGPUMapModeFlags
    -> Ptr WGPUMapModeFlags
    -> IO ())
-> (WGPUComputePassEncoder -> WGPUComputePipeline -> IO ())
-> (WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup)
-> (WGPUDevice
    -> Ptr WGPUBindGroupLayoutDescriptor -> IO WGPUBindGroupLayout)
-> (WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer)
-> (WGPUDevice
    -> Ptr WGPUCommandEncoderDescriptor -> IO WGPUCommandEncoder)
-> (WGPUDevice
    -> Ptr WGPUComputePipelineDescriptor -> IO WGPUComputePipeline)
-> (WGPUDevice
    -> Ptr WGPUPipelineLayoutDescriptor -> IO WGPUPipelineLayout)
-> (WGPUDevice
    -> Ptr WGPURenderPipelineDescriptor -> IO WGPURenderPipeline)
-> (WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler)
-> (WGPUDevice
    -> Ptr WGPUShaderModuleDescriptor -> IO WGPUShaderModule)
-> (WGPUDevice
    -> WGPUSurface -> Ptr WGPUSwapChainDescriptor -> IO WGPUSwapChain)
-> (WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture)
-> (WGPUDevice -> IO WGPUQueue)
-> (WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface)
-> (WGPUQueue
    -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ())
-> (WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ())
-> (WGPUQueue
    -> Ptr WGPUImageCopyTexture
    -> Ptr ()
    -> CSize
    -> Ptr WGPUTextureDataLayout
    -> Ptr WGPUExtent3D
    -> IO ())
-> (WGPURenderPassEncoder
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> IO ())
-> (WGPURenderPassEncoder
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> Int32
    -> WGPUMapModeFlags
    -> IO ())
-> (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ())
-> (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ())
-> (WGPURenderPassEncoder -> IO ())
-> (WGPURenderPassEncoder
    -> WGPUMapModeFlags
    -> WGPUBindGroup
    -> WGPUMapModeFlags
    -> Ptr WGPUMapModeFlags
    -> IO ())
-> (WGPURenderPassEncoder -> Ptr WGPUColor -> IO ())
-> (WGPURenderPassEncoder
    -> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO ())
-> (WGPURenderPassEncoder -> WGPURenderPipeline -> IO ())
-> (WGPURenderPassEncoder
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> IO ())
-> (WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ())
-> (WGPURenderPassEncoder
    -> WGPUMapModeFlags -> WGPUBuffer -> Word64 -> Word64 -> IO ())
-> (WGPURenderPassEncoder
    -> CFloat
    -> CFloat
    -> CFloat
    -> CFloat
    -> CFloat
    -> CFloat
    -> IO ())
-> (WGPUSwapChain -> IO WGPUTextureView)
-> (WGPUSwapChain -> IO ())
-> (WGPUTexture
    -> Ptr WGPUTextureViewDescriptor -> IO WGPUTextureView)
-> (WGPUTexture -> IO ())
-> (WGPUDevice -> CBool -> IO ())
-> (WGPULogCallback -> IO ())
-> (WGPULogLevel -> IO ())
-> IO WGPUMapModeFlags
-> (WGPURenderPassEncoder
    -> WGPUShaderStage
    -> WGPUMapModeFlags
    -> WGPUMapModeFlags
    -> Ptr ()
    -> IO ())
-> WGPUHsInstance
WGPUHsInstance {IO WGPUMapModeFlags
WGPULogCallback -> IO ()
WGPULogLevel -> IO ()
WGPUTexture -> IO ()
WGPUTexture -> Ptr WGPUTextureViewDescriptor -> IO WGPUTextureView
WGPUSwapChain -> IO ()
WGPUSwapChain -> IO WGPUTextureView
WGPUSurface
-> WGPUAdapter
-> WGPUSurfaceGetPreferredFormatCallback
-> Ptr ()
-> IO ()
WGPURenderPassEncoder -> IO ()
WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ()
WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Int32
-> WGPUMapModeFlags
-> IO ()
WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
WGPURenderPassEncoder
-> WGPUMapModeFlags -> WGPUBuffer -> Word64 -> Word64 -> IO ()
WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
WGPURenderPassEncoder -> Ptr WGPUColor -> IO ()
WGPURenderPassEncoder
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> IO ()
WGPURenderPassEncoder
-> WGPUShaderStage
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Ptr ()
-> IO ()
WGPURenderPassEncoder -> WGPURenderPipeline -> IO ()
WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
WGPURenderPassEncoder
-> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO ()
WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ()
WGPUQueue
-> Ptr WGPUImageCopyTexture
-> Ptr ()
-> CSize
-> Ptr WGPUTextureDataLayout
-> Ptr WGPUExtent3D
-> IO ()
WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ()
WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface
WGPUInstance
-> Ptr WGPURequestAdapterOptions
-> WGPURequestAdapterCallback
-> Ptr ()
-> IO ()
WGPUDevice -> IO WGPUQueue
WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture
WGPUDevice -> Ptr WGPUShaderModuleDescriptor -> IO WGPUShaderModule
WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler
WGPUDevice
-> Ptr WGPUPipelineLayoutDescriptor -> IO WGPUPipelineLayout
WGPUDevice
-> Ptr WGPUComputePipelineDescriptor -> IO WGPUComputePipeline
WGPUDevice
-> Ptr WGPUCommandEncoderDescriptor -> IO WGPUCommandEncoder
WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer
WGPUDevice
-> Ptr WGPURenderPipelineDescriptor -> IO WGPURenderPipeline
WGPUDevice
-> Ptr WGPUBindGroupLayoutDescriptor -> IO WGPUBindGroupLayout
WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup
WGPUDevice -> CBool -> IO ()
WGPUDevice
-> WGPUSurface -> Ptr WGPUSwapChainDescriptor -> IO WGPUSwapChain
WGPUComputePassEncoder -> IO ()
WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
WGPUComputePassEncoder -> WGPUComputePipeline -> IO ()
WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ()
WGPUCommandEncoder
-> Ptr WGPURenderPassDescriptor -> IO WGPURenderPassEncoder
WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUExtent3D
-> IO ()
WGPUCommandEncoder
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
WGPUCommandEncoder
-> Ptr WGPUComputePassDescriptor -> IO WGPUComputePassEncoder
WGPUCommandEncoder
-> Ptr WGPUCommandBufferDescriptor -> IO WGPUCommandBuffer
WGPUCommandEncoder
-> WGPUBuffer -> Word64 -> WGPUBuffer -> Word64 -> Word64 -> IO ()
WGPUBuffer -> IO ()
WGPUBuffer
-> WGPUMapModeFlags
-> CSize
-> CSize
-> WGPUBufferMapCallback
-> Ptr ()
-> IO ()
WGPUBuffer -> CSize -> CSize -> IO (Ptr ())
WGPUAdapter
-> Ptr WGPUDeviceDescriptor
-> WGPURequestDeviceCallback
-> Ptr ()
-> IO ()
WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ()
wgpuRenderPassEncoderSetPushConstantsIO :: WGPURenderPassEncoder
-> WGPUShaderStage
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Ptr ()
-> IO ()
wgpuGetVersionIO :: IO WGPUMapModeFlags
wgpuSetLogLevelIO :: WGPULogLevel -> IO ()
wgpuSetLogCallbackIO :: WGPULogCallback -> IO ()
wgpuDevicePollIO :: WGPUDevice -> CBool -> IO ()
wgpuTextureDestroyIO :: WGPUTexture -> IO ()
wgpuTextureCreateViewIO :: WGPUTexture -> Ptr WGPUTextureViewDescriptor -> IO WGPUTextureView
wgpuSwapChainPresentIO :: WGPUSwapChain -> IO ()
wgpuSwapChainGetCurrentTextureViewIO :: WGPUSwapChain -> IO WGPUTextureView
wgpuRenderPassEncoderSetViewportIO :: WGPURenderPassEncoder
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> IO ()
wgpuRenderPassEncoderSetVertexBufferIO :: WGPURenderPassEncoder
-> WGPUMapModeFlags -> WGPUBuffer -> Word64 -> Word64 -> IO ()
wgpuRenderPassEncoderSetStencilReferenceIO :: WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ()
wgpuRenderPassEncoderSetScissorRectIO :: WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderSetPipelineIO :: WGPURenderPassEncoder -> WGPURenderPipeline -> IO ()
wgpuRenderPassEncoderSetIndexBufferIO :: WGPURenderPassEncoder
-> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO ()
wgpuRenderPassEncoderSetBlendConstantIO :: WGPURenderPassEncoder -> Ptr WGPUColor -> IO ()
wgpuRenderPassEncoderSetBindGroupIO :: WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderEndPassIO :: WGPURenderPassEncoder -> IO ()
wgpuRenderPassEncoderDrawIndirectIO :: WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuRenderPassEncoderDrawIndexedIndirectIO :: WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuRenderPassEncoderDrawIndexedIO :: WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Int32
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderDrawIO :: WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuQueueWriteTextureIO :: WGPUQueue
-> Ptr WGPUImageCopyTexture
-> Ptr ()
-> CSize
-> Ptr WGPUTextureDataLayout
-> Ptr WGPUExtent3D
-> IO ()
wgpuQueueWriteBufferIO :: WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ()
wgpuQueueSubmitIO :: WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ()
wgpuInstanceCreateSurfaceIO :: WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface
wgpuDeviceGetQueueIO :: WGPUDevice -> IO WGPUQueue
wgpuDeviceCreateTextureIO :: WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture
wgpuDeviceCreateSwapChainIO :: WGPUDevice
-> WGPUSurface -> Ptr WGPUSwapChainDescriptor -> IO WGPUSwapChain
wgpuDeviceCreateShaderModuleIO :: WGPUDevice -> Ptr WGPUShaderModuleDescriptor -> IO WGPUShaderModule
wgpuDeviceCreateSamplerIO :: WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler
wgpuDeviceCreateRenderPipelineIO :: WGPUDevice
-> Ptr WGPURenderPipelineDescriptor -> IO WGPURenderPipeline
wgpuDeviceCreatePipelineLayoutIO :: WGPUDevice
-> Ptr WGPUPipelineLayoutDescriptor -> IO WGPUPipelineLayout
wgpuDeviceCreateComputePipelineIO :: WGPUDevice
-> Ptr WGPUComputePipelineDescriptor -> IO WGPUComputePipeline
wgpuDeviceCreateCommandEncoderIO :: WGPUDevice
-> Ptr WGPUCommandEncoderDescriptor -> IO WGPUCommandEncoder
wgpuDeviceCreateBufferIO :: WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer
wgpuDeviceCreateBindGroupLayoutIO :: WGPUDevice
-> Ptr WGPUBindGroupLayoutDescriptor -> IO WGPUBindGroupLayout
wgpuDeviceCreateBindGroupIO :: WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup
wgpuComputePassEncoderSetPipelineIO :: WGPUComputePassEncoder -> WGPUComputePipeline -> IO ()
wgpuComputePassEncoderSetBindGroupIO :: WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
wgpuComputePassEncoderEndPassIO :: WGPUComputePassEncoder -> IO ()
wgpuComputePassEncoderDispatchIndirectIO :: WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuComputePassEncoderDispatchIO :: WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuCommandEncoderFinishIO :: WGPUCommandEncoder
-> Ptr WGPUCommandBufferDescriptor -> IO WGPUCommandBuffer
wgpuCommandEncoderCopyTextureToBufferIO :: WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyTextureToTextureIO :: WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyBufferToTextureIO :: WGPUCommandEncoder
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyBufferToBufferIO :: WGPUCommandEncoder
-> WGPUBuffer -> Word64 -> WGPUBuffer -> Word64 -> Word64 -> IO ()
wgpuCommandEncoderBeginRenderPassIO :: WGPUCommandEncoder
-> Ptr WGPURenderPassDescriptor -> IO WGPURenderPassEncoder
wgpuCommandEncoderBeginComputePassIO :: WGPUCommandEncoder
-> Ptr WGPUComputePassDescriptor -> IO WGPUComputePassEncoder
wgpuBufferUnmapIO :: WGPUBuffer -> IO ()
wgpuBufferGetMappedRangeIO :: WGPUBuffer -> CSize -> CSize -> IO (Ptr ())
wgpuBufferDestroyIO :: WGPUBuffer -> IO ()
wgpuAdapterGetPropertiesIO :: WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ()
wgpuSurfaceGetPreferredFormatIO :: WGPUSurface
-> WGPUAdapter
-> WGPUSurfaceGetPreferredFormatCallback
-> Ptr ()
-> IO ()
wgpuInstanceRequestAdapterIO :: WGPUInstance
-> Ptr WGPURequestAdapterOptions
-> WGPURequestAdapterCallback
-> Ptr ()
-> IO ()
wgpuBufferMapAsyncIO :: WGPUBuffer
-> WGPUMapModeFlags
-> CSize
-> CSize
-> WGPUBufferMapCallback
-> Ptr ()
-> IO ()
wgpuAdapterRequestDeviceIO :: WGPUAdapter
-> Ptr WGPUDeviceDescriptor
-> WGPURequestDeviceCallback
-> Ptr ()
-> IO ()
wgpuRenderPassEncoderSetPushConstantsIO :: WGPURenderPassEncoder
-> WGPUShaderStage
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Ptr ()
-> IO ()
wgpuGetVersionIO :: IO WGPUMapModeFlags
wgpuSetLogLevelIO :: WGPULogLevel -> IO ()
wgpuSetLogCallbackIO :: WGPULogCallback -> IO ()
wgpuDevicePollIO :: WGPUDevice -> CBool -> IO ()
wgpuTextureDestroyIO :: WGPUTexture -> IO ()
wgpuTextureCreateViewIO :: WGPUTexture -> Ptr WGPUTextureViewDescriptor -> IO WGPUTextureView
wgpuSwapChainPresentIO :: WGPUSwapChain -> IO ()
wgpuSwapChainGetCurrentTextureViewIO :: WGPUSwapChain -> IO WGPUTextureView
wgpuRenderPassEncoderSetViewportIO :: WGPURenderPassEncoder
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> CFloat
-> IO ()
wgpuRenderPassEncoderSetVertexBufferIO :: WGPURenderPassEncoder
-> WGPUMapModeFlags -> WGPUBuffer -> Word64 -> Word64 -> IO ()
wgpuRenderPassEncoderSetStencilReferenceIO :: WGPURenderPassEncoder -> WGPUMapModeFlags -> IO ()
wgpuRenderPassEncoderSetScissorRectIO :: WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderSetPipelineIO :: WGPURenderPassEncoder -> WGPURenderPipeline -> IO ()
wgpuRenderPassEncoderSetIndexBufferIO :: WGPURenderPassEncoder
-> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO ()
wgpuRenderPassEncoderSetBlendConstantIO :: WGPURenderPassEncoder -> Ptr WGPUColor -> IO ()
wgpuRenderPassEncoderSetBindGroupIO :: WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderEndPassIO :: WGPURenderPassEncoder -> IO ()
wgpuRenderPassEncoderDrawIndirectIO :: WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuRenderPassEncoderDrawIndexedIndirectIO :: WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuRenderPassEncoderDrawIndexedIO :: WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> Int32
-> WGPUMapModeFlags
-> IO ()
wgpuRenderPassEncoderDrawIO :: WGPURenderPassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuQueueWriteTextureIO :: WGPUQueue
-> Ptr WGPUImageCopyTexture
-> Ptr ()
-> CSize
-> Ptr WGPUTextureDataLayout
-> Ptr WGPUExtent3D
-> IO ()
wgpuQueueWriteBufferIO :: WGPUQueue -> WGPUBuffer -> Word64 -> Ptr () -> CSize -> IO ()
wgpuQueueSubmitIO :: WGPUQueue -> WGPUMapModeFlags -> Ptr WGPUCommandBuffer -> IO ()
wgpuInstanceCreateSurfaceIO :: WGPUInstance -> Ptr WGPUSurfaceDescriptor -> IO WGPUSurface
wgpuDeviceGetQueueIO :: WGPUDevice -> IO WGPUQueue
wgpuDeviceCreateTextureIO :: WGPUDevice -> Ptr WGPUTextureDescriptor -> IO WGPUTexture
wgpuDeviceCreateSwapChainIO :: WGPUDevice
-> WGPUSurface -> Ptr WGPUSwapChainDescriptor -> IO WGPUSwapChain
wgpuDeviceCreateShaderModuleIO :: WGPUDevice -> Ptr WGPUShaderModuleDescriptor -> IO WGPUShaderModule
wgpuDeviceCreateSamplerIO :: WGPUDevice -> Ptr WGPUSamplerDescriptor -> IO WGPUSampler
wgpuDeviceCreateRenderPipelineIO :: WGPUDevice
-> Ptr WGPURenderPipelineDescriptor -> IO WGPURenderPipeline
wgpuDeviceCreatePipelineLayoutIO :: WGPUDevice
-> Ptr WGPUPipelineLayoutDescriptor -> IO WGPUPipelineLayout
wgpuDeviceCreateComputePipelineIO :: WGPUDevice
-> Ptr WGPUComputePipelineDescriptor -> IO WGPUComputePipeline
wgpuDeviceCreateCommandEncoderIO :: WGPUDevice
-> Ptr WGPUCommandEncoderDescriptor -> IO WGPUCommandEncoder
wgpuDeviceCreateBufferIO :: WGPUDevice -> Ptr WGPUBufferDescriptor -> IO WGPUBuffer
wgpuDeviceCreateBindGroupLayoutIO :: WGPUDevice
-> Ptr WGPUBindGroupLayoutDescriptor -> IO WGPUBindGroupLayout
wgpuDeviceCreateBindGroupIO :: WGPUDevice -> Ptr WGPUBindGroupDescriptor -> IO WGPUBindGroup
wgpuComputePassEncoderSetPipelineIO :: WGPUComputePassEncoder -> WGPUComputePipeline -> IO ()
wgpuComputePassEncoderSetBindGroupIO :: WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUBindGroup
-> WGPUMapModeFlags
-> Ptr WGPUMapModeFlags
-> IO ()
wgpuComputePassEncoderEndPassIO :: WGPUComputePassEncoder -> IO ()
wgpuComputePassEncoderDispatchIndirectIO :: WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO ()
wgpuComputePassEncoderDispatchIO :: WGPUComputePassEncoder
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> WGPUMapModeFlags
-> IO ()
wgpuCommandEncoderFinishIO :: WGPUCommandEncoder
-> Ptr WGPUCommandBufferDescriptor -> IO WGPUCommandBuffer
wgpuCommandEncoderCopyTextureToBufferIO :: WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyTextureToTextureIO :: WGPUCommandEncoder
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyBufferToTextureIO :: WGPUCommandEncoder
-> Ptr WGPUImageCopyBuffer
-> Ptr WGPUImageCopyTexture
-> Ptr WGPUExtent3D
-> IO ()
wgpuCommandEncoderCopyBufferToBufferIO :: WGPUCommandEncoder
-> WGPUBuffer -> Word64 -> WGPUBuffer -> Word64 -> Word64 -> IO ()
wgpuCommandEncoderBeginRenderPassIO :: WGPUCommandEncoder
-> Ptr WGPURenderPassDescriptor -> IO WGPURenderPassEncoder
wgpuCommandEncoderBeginComputePassIO :: WGPUCommandEncoder
-> Ptr WGPUComputePassDescriptor -> IO WGPUComputePassEncoder
wgpuBufferUnmapIO :: WGPUBuffer -> IO ()
wgpuBufferGetMappedRangeIO :: WGPUBuffer -> CSize -> CSize -> IO (Ptr ())
wgpuBufferDestroyIO :: WGPUBuffer -> IO ()
wgpuAdapterGetPropertiesIO :: WGPUAdapter -> Ptr WGPUAdapterProperties -> IO ()
wgpuSurfaceGetPreferredFormatIO :: WGPUSurface
-> WGPUAdapter
-> WGPUSurfaceGetPreferredFormatCallback
-> Ptr ()
-> IO ()
wgpuInstanceRequestAdapterIO :: WGPUInstance
-> Ptr WGPURequestAdapterOptions
-> WGPURequestAdapterCallback
-> Ptr ()
-> IO ()
wgpuBufferMapAsyncIO :: WGPUBuffer
-> WGPUMapModeFlags
-> CSize
-> CSize
-> WGPUBufferMapCallback
-> Ptr ()
-> IO ()
wgpuAdapterRequestDeviceIO :: WGPUAdapter
-> Ptr WGPUDeviceDescriptor
-> WGPURequestDeviceCallback
-> Ptr ()
-> IO ()
..}

foreign import ccall safe "dynamic"
  mk_wgpuhsfn_wgpuAdapterRequestDevice :: FunPtr (WGPUAdapter -> Ptr (WGPUDeviceDescriptor) -> WGPURequestDeviceCallback -> Ptr (()) -> IO (())) -> WGPUAdapter -> Ptr (WGPUDeviceDescriptor) -> WGPURequestDeviceCallback -> Ptr (()) -> IO (())

foreign import ccall safe "dynamic"
  mk_wgpuhsfn_wgpuBufferMapAsync :: FunPtr (WGPUBuffer -> WGPUMapModeFlags -> CSize -> CSize -> WGPUBufferMapCallback -> Ptr (()) -> IO (())) -> WGPUBuffer -> WGPUMapModeFlags -> CSize -> CSize -> WGPUBufferMapCallback -> Ptr (()) -> IO (())

foreign import ccall safe "dynamic"
  mk_wgpuhsfn_wgpuInstanceRequestAdapter :: FunPtr (WGPUInstance -> Ptr (WGPURequestAdapterOptions) -> WGPURequestAdapterCallback -> Ptr (()) -> IO (())) -> WGPUInstance -> Ptr (WGPURequestAdapterOptions) -> WGPURequestAdapterCallback -> Ptr (()) -> IO (())

foreign import ccall safe "dynamic"
  mk_wgpuhsfn_wgpuSurfaceGetPreferredFormat :: FunPtr (WGPUSurface -> WGPUAdapter -> WGPUSurfaceGetPreferredFormatCallback -> Ptr (()) -> IO (())) -> WGPUSurface -> WGPUAdapter -> WGPUSurfaceGetPreferredFormatCallback -> Ptr (()) -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuAdapterGetProperties :: FunPtr (WGPUAdapter -> Ptr (WGPUAdapterProperties) -> IO (())) -> WGPUAdapter -> Ptr (WGPUAdapterProperties) -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuBufferDestroy :: FunPtr (WGPUBuffer -> IO (())) -> WGPUBuffer -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuBufferGetMappedRange :: FunPtr (WGPUBuffer -> CSize -> CSize -> IO (Ptr (()))) -> WGPUBuffer -> CSize -> CSize -> IO (Ptr (()))

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuBufferUnmap :: FunPtr (WGPUBuffer -> IO (())) -> WGPUBuffer -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuCommandEncoderBeginComputePass :: FunPtr (WGPUCommandEncoder -> Ptr (WGPUComputePassDescriptor) -> IO (WGPUComputePassEncoder)) -> WGPUCommandEncoder -> Ptr (WGPUComputePassDescriptor) -> IO (WGPUComputePassEncoder)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuCommandEncoderBeginRenderPass :: FunPtr (WGPUCommandEncoder -> Ptr (WGPURenderPassDescriptor) -> IO (WGPURenderPassEncoder)) -> WGPUCommandEncoder -> Ptr (WGPURenderPassDescriptor) -> IO (WGPURenderPassEncoder)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuCommandEncoderCopyBufferToBuffer :: FunPtr (WGPUCommandEncoder -> WGPUBuffer -> Word64 -> WGPUBuffer -> Word64 -> Word64 -> IO (())) -> WGPUCommandEncoder -> WGPUBuffer -> Word64 -> WGPUBuffer -> Word64 -> Word64 -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuCommandEncoderCopyBufferToTexture :: FunPtr (WGPUCommandEncoder -> Ptr (WGPUImageCopyBuffer) -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUExtent3D) -> IO (())) -> WGPUCommandEncoder -> Ptr (WGPUImageCopyBuffer) -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUExtent3D) -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuCommandEncoderCopyTextureToTexture :: FunPtr (WGPUCommandEncoder -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUExtent3D) -> IO (())) -> WGPUCommandEncoder -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUExtent3D) -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuCommandEncoderCopyTextureToBuffer :: FunPtr (WGPUCommandEncoder -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUImageCopyBuffer) -> Ptr (WGPUExtent3D) -> IO (())) -> WGPUCommandEncoder -> Ptr (WGPUImageCopyTexture) -> Ptr (WGPUImageCopyBuffer) -> Ptr (WGPUExtent3D) -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuCommandEncoderFinish :: FunPtr (WGPUCommandEncoder -> Ptr (WGPUCommandBufferDescriptor) -> IO (WGPUCommandBuffer)) -> WGPUCommandEncoder -> Ptr (WGPUCommandBufferDescriptor) -> IO (WGPUCommandBuffer)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuComputePassEncoderDispatch :: FunPtr (WGPUComputePassEncoder -> Word32 -> Word32 -> Word32 -> IO (())) -> WGPUComputePassEncoder -> Word32 -> Word32 -> Word32 -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuComputePassEncoderDispatchIndirect :: FunPtr (WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO (())) -> WGPUComputePassEncoder -> WGPUBuffer -> Word64 -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuComputePassEncoderEndPass :: FunPtr (WGPUComputePassEncoder -> IO (())) -> WGPUComputePassEncoder -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuComputePassEncoderSetBindGroup :: FunPtr (WGPUComputePassEncoder -> Word32 -> WGPUBindGroup -> Word32 -> Ptr (Word32) -> IO (())) -> WGPUComputePassEncoder -> Word32 -> WGPUBindGroup -> Word32 -> Ptr (Word32) -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuComputePassEncoderSetPipeline :: FunPtr (WGPUComputePassEncoder -> WGPUComputePipeline -> IO (())) -> WGPUComputePassEncoder -> WGPUComputePipeline -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDeviceCreateBindGroup :: FunPtr (WGPUDevice -> Ptr (WGPUBindGroupDescriptor) -> IO (WGPUBindGroup)) -> WGPUDevice -> Ptr (WGPUBindGroupDescriptor) -> IO (WGPUBindGroup)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDeviceCreateBindGroupLayout :: FunPtr (WGPUDevice -> Ptr (WGPUBindGroupLayoutDescriptor) -> IO (WGPUBindGroupLayout)) -> WGPUDevice -> Ptr (WGPUBindGroupLayoutDescriptor) -> IO (WGPUBindGroupLayout)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDeviceCreateBuffer :: FunPtr (WGPUDevice -> Ptr (WGPUBufferDescriptor) -> IO (WGPUBuffer)) -> WGPUDevice -> Ptr (WGPUBufferDescriptor) -> IO (WGPUBuffer)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDeviceCreateCommandEncoder :: FunPtr (WGPUDevice -> Ptr (WGPUCommandEncoderDescriptor) -> IO (WGPUCommandEncoder)) -> WGPUDevice -> Ptr (WGPUCommandEncoderDescriptor) -> IO (WGPUCommandEncoder)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDeviceCreateComputePipeline :: FunPtr (WGPUDevice -> Ptr (WGPUComputePipelineDescriptor) -> IO (WGPUComputePipeline)) -> WGPUDevice -> Ptr (WGPUComputePipelineDescriptor) -> IO (WGPUComputePipeline)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDeviceCreatePipelineLayout :: FunPtr (WGPUDevice -> Ptr (WGPUPipelineLayoutDescriptor) -> IO (WGPUPipelineLayout)) -> WGPUDevice -> Ptr (WGPUPipelineLayoutDescriptor) -> IO (WGPUPipelineLayout)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDeviceCreateRenderPipeline :: FunPtr (WGPUDevice -> Ptr (WGPURenderPipelineDescriptor) -> IO (WGPURenderPipeline)) -> WGPUDevice -> Ptr (WGPURenderPipelineDescriptor) -> IO (WGPURenderPipeline)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDeviceCreateSampler :: FunPtr (WGPUDevice -> Ptr (WGPUSamplerDescriptor) -> IO (WGPUSampler)) -> WGPUDevice -> Ptr (WGPUSamplerDescriptor) -> IO (WGPUSampler)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDeviceCreateShaderModule :: FunPtr (WGPUDevice -> Ptr (WGPUShaderModuleDescriptor) -> IO (WGPUShaderModule)) -> WGPUDevice -> Ptr (WGPUShaderModuleDescriptor) -> IO (WGPUShaderModule)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDeviceCreateSwapChain :: FunPtr (WGPUDevice -> WGPUSurface -> Ptr (WGPUSwapChainDescriptor) -> IO (WGPUSwapChain)) -> WGPUDevice -> WGPUSurface -> Ptr (WGPUSwapChainDescriptor) -> IO (WGPUSwapChain)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDeviceCreateTexture :: FunPtr (WGPUDevice -> Ptr (WGPUTextureDescriptor) -> IO (WGPUTexture)) -> WGPUDevice -> Ptr (WGPUTextureDescriptor) -> IO (WGPUTexture)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDeviceGetQueue :: FunPtr (WGPUDevice -> IO (WGPUQueue)) -> WGPUDevice -> IO (WGPUQueue)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuInstanceCreateSurface :: FunPtr (WGPUInstance -> Ptr (WGPUSurfaceDescriptor) -> IO (WGPUSurface)) -> WGPUInstance -> Ptr (WGPUSurfaceDescriptor) -> IO (WGPUSurface)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuQueueSubmit :: FunPtr (WGPUQueue -> Word32 -> Ptr (WGPUCommandBuffer) -> IO (())) -> WGPUQueue -> Word32 -> Ptr (WGPUCommandBuffer) -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuQueueWriteBuffer :: FunPtr (WGPUQueue -> WGPUBuffer -> Word64 -> Ptr (()) -> CSize -> IO (())) -> WGPUQueue -> WGPUBuffer -> Word64 -> Ptr (()) -> CSize -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuQueueWriteTexture :: FunPtr (WGPUQueue -> Ptr (WGPUImageCopyTexture) -> Ptr (()) -> CSize -> Ptr (WGPUTextureDataLayout) -> Ptr (WGPUExtent3D) -> IO (())) -> WGPUQueue -> Ptr (WGPUImageCopyTexture) -> Ptr (()) -> CSize -> Ptr (WGPUTextureDataLayout) -> Ptr (WGPUExtent3D) -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderDraw :: FunPtr (WGPURenderPassEncoder -> Word32 -> Word32 -> Word32 -> Word32 -> IO (())) -> WGPURenderPassEncoder -> Word32 -> Word32 -> Word32 -> Word32 -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderDrawIndexed :: FunPtr (WGPURenderPassEncoder -> Word32 -> Word32 -> Word32 -> Int32 -> Word32 -> IO (())) -> WGPURenderPassEncoder -> Word32 -> Word32 -> Word32 -> Int32 -> Word32 -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderDrawIndexedIndirect :: FunPtr (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO (())) -> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderDrawIndirect :: FunPtr (WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO (())) -> WGPURenderPassEncoder -> WGPUBuffer -> Word64 -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderEndPass :: FunPtr (WGPURenderPassEncoder -> IO (())) -> WGPURenderPassEncoder -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderSetBindGroup :: FunPtr (WGPURenderPassEncoder -> Word32 -> WGPUBindGroup -> Word32 -> Ptr (Word32) -> IO (())) -> WGPURenderPassEncoder -> Word32 -> WGPUBindGroup -> Word32 -> Ptr (Word32) -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderSetBlendConstant :: FunPtr (WGPURenderPassEncoder -> Ptr (WGPUColor) -> IO (())) -> WGPURenderPassEncoder -> Ptr (WGPUColor) -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderSetIndexBuffer :: FunPtr (WGPURenderPassEncoder -> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO (())) -> WGPURenderPassEncoder -> WGPUBuffer -> WGPUIndexFormat -> Word64 -> Word64 -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderSetPipeline :: FunPtr (WGPURenderPassEncoder -> WGPURenderPipeline -> IO (())) -> WGPURenderPassEncoder -> WGPURenderPipeline -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderSetScissorRect :: FunPtr (WGPURenderPassEncoder -> Word32 -> Word32 -> Word32 -> Word32 -> IO (())) -> WGPURenderPassEncoder -> Word32 -> Word32 -> Word32 -> Word32 -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderSetStencilReference :: FunPtr (WGPURenderPassEncoder -> Word32 -> IO (())) -> WGPURenderPassEncoder -> Word32 -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderSetVertexBuffer :: FunPtr (WGPURenderPassEncoder -> Word32 -> WGPUBuffer -> Word64 -> Word64 -> IO (())) -> WGPURenderPassEncoder -> Word32 -> WGPUBuffer -> Word64 -> Word64 -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderSetViewport :: FunPtr (WGPURenderPassEncoder -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> IO (())) -> WGPURenderPassEncoder -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuSwapChainGetCurrentTextureView :: FunPtr (WGPUSwapChain -> IO (WGPUTextureView)) -> WGPUSwapChain -> IO (WGPUTextureView)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuSwapChainPresent :: FunPtr (WGPUSwapChain -> IO (())) -> WGPUSwapChain -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuTextureCreateView :: FunPtr (WGPUTexture -> Ptr (WGPUTextureViewDescriptor) -> IO (WGPUTextureView)) -> WGPUTexture -> Ptr (WGPUTextureViewDescriptor) -> IO (WGPUTextureView)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuTextureDestroy :: FunPtr (WGPUTexture -> IO (())) -> WGPUTexture -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuDevicePoll :: FunPtr (WGPUDevice -> CBool -> IO (())) -> WGPUDevice -> CBool -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuSetLogCallback :: FunPtr (WGPULogCallback -> IO (())) -> WGPULogCallback -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuSetLogLevel :: FunPtr (WGPULogLevel -> IO (())) -> WGPULogLevel -> IO (())

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuGetVersion :: FunPtr (IO (Word32)) -> IO (Word32)

foreign import ccall unsafe "dynamic"
  mk_wgpuhsfn_wgpuRenderPassEncoderSetPushConstants :: FunPtr (WGPURenderPassEncoder -> WGPUShaderStage -> Word32 -> Word32 -> Ptr (()) -> IO (())) -> WGPURenderPassEncoder -> WGPUShaderStage -> Word32 -> Word32 -> Ptr (()) -> IO (())