{"include/dawn/webgpu.ixx": "// Copyright 2026 The Dawn & Tint Authors\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are met:\n//\n// 1. Redistributions of source code must retain the above copyright notice, this\n//    list of conditions and the following disclaimer.\n//\n// 2. Redistributions in binary form must reproduce the above copyright notice,\n//    this list of conditions and the following disclaimer in the documentation\n//    and/or other materials provided with the distribution.\n//\n// 3. Neither the name of the copyright holder nor the names of its\n//    contributors may be used to endorse or promote products derived from\n//    this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\n// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\n// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\n// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\n// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\n// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\nmodule;\n#include \"webgpu/webgpu_cpp.h\"\nexport module wgpu;\n\nexport namespace wgpu {\n// constants\nusing wgpu::kArrayLayerCountUndefined;\nusing wgpu::kCopyStrideUndefined;\nusing wgpu::kDepthClearValueUndefined;\nusing wgpu::kDepthSliceUndefined;\nusing wgpu::kInvalidBinding;\nusing wgpu::kLimitU32Undefined;\nusing wgpu::kLimitU64Undefined;\nusing wgpu::kMipLevelCountUndefined;\nusing wgpu::kQuerySetIndexUndefined;\nusing wgpu::kStrlen;\nusing wgpu::kWholeMapSize;\nusing wgpu::kWholeSize;\n\n// enums\nusing wgpu::AdapterType;\nusing wgpu::AddressMode;\nusing wgpu::AlphaMode;\nusing wgpu::BackendType;\nusing wgpu::BlendFactor;\nusing wgpu::BlendOperation;\nusing wgpu::BufferBindingType;\nusing wgpu::BufferMapState;\nusing wgpu::CallbackMode;\nusing wgpu::ColorSpacePrimariesDawn;\nusing wgpu::ColorSpaceTransferDawn;\nusing wgpu::ColorSpaceYCbCrMatrixDawn;\nusing wgpu::ColorSpaceYCbCrRangeDawn;\nusing wgpu::CompareFunction;\nusing wgpu::CompilationInfoRequestStatus;\nusing wgpu::CompilationMessageType;\nusing wgpu::ComponentSwizzle;\nusing wgpu::CompositeAlphaMode;\nusing wgpu::CreatePipelineAsyncStatus;\nusing wgpu::CullMode;\nusing wgpu::DeviceLostReason;\nusing wgpu::ErrorFilter;\nusing wgpu::ErrorType;\nusing wgpu::ExternalTextureRotation;\nusing wgpu::FeatureLevel;\nusing wgpu::FeatureName;\nusing wgpu::FilterMode;\nusing wgpu::FrontFace;\nusing wgpu::IndexFormat;\nusing wgpu::InstanceFeatureName;\nusing wgpu::LoadOp;\nusing wgpu::LoggingType;\nusing wgpu::MapAsyncStatus;\nusing wgpu::MipmapFilterMode;\nusing wgpu::PopErrorScopeStatus;\nusing wgpu::PowerPreference;\nusing wgpu::PredefinedColorSpace;\nusing wgpu::PresentMode;\nusing wgpu::PrimitiveTopology;\nusing wgpu::QueryType;\nusing wgpu::QueueWorkDoneStatus;\nusing wgpu::RequestAdapterStatus;\nusing wgpu::RequestDeviceStatus;\nusing wgpu::SamplerBindingType;\nusing wgpu::SharedFenceType;\nusing wgpu::Status;\nusing wgpu::StencilOperation;\nusing wgpu::StorageTextureAccess;\nusing wgpu::StoreOp;\nusing wgpu::SType;\nusing wgpu::SubgroupMatrixComponentType;\nusing wgpu::SurfaceGetCurrentTextureStatus;\nusing wgpu::TexelBufferAccess;\nusing wgpu::TextureAspect;\nusing wgpu::TextureDimension;\nusing wgpu::TextureFormat;\nusing wgpu::TextureSampleType;\nusing wgpu::TextureViewDimension;\nusing wgpu::ToneMappingMode;\nusing wgpu::VertexFormat;\nusing wgpu::VertexStepMode;\nusing wgpu::WaitStatus;\nusing wgpu::WGSLLanguageFeatureName;\n\n// bitmasks\nusing wgpu::BufferUsage;\nusing wgpu::ColorWriteMask;\nusing wgpu::HeapProperty;\nusing wgpu::MapMode;\nusing wgpu::ShaderStage;\nusing wgpu::TextureUsage;\n\nWGPU_IMPORT_BITMASK_OPERATORS\n\nusing wgpu::IsWGPUBitmask;\nusing wgpu::LowerBitmask;\nusing wgpu::BoolConvertible;\n\n// callbacks\nusing wgpu::BufferMapCallback;\nusing wgpu::CompilationInfoCallback;\nusing wgpu::CreateComputePipelineAsyncCallback;\nusing wgpu::CreateRenderPipelineAsyncCallback;\nusing wgpu::DawnLoadCacheDataCallback;\nusing wgpu::DawnStoreCacheDataCallback;\nusing wgpu::DeviceLostCallback;\nusing wgpu::LoggingCallback;\nusing wgpu::PopErrorScopeCallback;\nusing wgpu::QueueWorkDoneCallback;\nusing wgpu::RequestAdapterCallback;\nusing wgpu::RequestDeviceCallback;\nusing wgpu::UncapturedErrorCallback;\n\n// classes\nusing wgpu::Adapter;\nusing wgpu::BindGroup;\nusing wgpu::BindGroupLayout;\nusing wgpu::Buffer;\nusing wgpu::CommandBuffer;\nusing wgpu::CommandEncoder;\nusing wgpu::ComputePipeline;\nusing wgpu::Device;\nusing wgpu::ExternalTexture;\nusing wgpu::Instance;\nusing wgpu::PipelineLayout;\nusing wgpu::QuerySet;\nusing wgpu::Queue;\nusing wgpu::RenderBundle;\nusing wgpu::RenderPipeline;\nusing wgpu::ResourceTable;\nusing wgpu::Sampler;\nusing wgpu::ShaderModule;\nusing wgpu::SharedBufferMemory;\nusing wgpu::SharedFence;\nusing wgpu::SharedTextureMemory;\nusing wgpu::Surface;\nusing wgpu::TexelBufferView;\nusing wgpu::Texture;\nusing wgpu::TextureView;\nusing wgpu::ComputePassEncoder;\nusing wgpu::RenderBundleEncoder;\nusing wgpu::RenderPassEncoder;\n\n// structs\nusing wgpu::StringView;\nusing wgpu::AdapterPropertiesD3D;\nusing wgpu::AdapterPropertiesDrm;\nusing wgpu::AdapterPropertiesVk;\nusing wgpu::AdapterPropertiesWGPU;\nusing wgpu::BindingResource;\nusing wgpu::BlendComponent;\nusing wgpu::BufferBindingLayout;\nusing wgpu::BufferHostMappedPointer;\nusing wgpu::Color;\nusing wgpu::ColorSpaceDawn;\nusing wgpu::ColorTargetStateExpandResolveTextureDawn;\nusing wgpu::CommandBufferDescriptor;\nusing wgpu::CompatibilityModeLimits;\nusing wgpu::ConstantEntry;\nusing wgpu::CopyTextureForBrowserOptions;\nusing wgpu::DawnAdapterPropertiesPowerPreference;\nusing wgpu::DawnBufferDescriptorErrorInfoFromWireClient;\nusing wgpu::DawnCacheDeviceDescriptor;\nusing wgpu::DawnCompilationMessageUtf16;\nusing wgpu::DawnConsumeAdapterDescriptor;\nusing wgpu::DawnDeviceAllocatorControl;\nusing wgpu::DawnDrmFormatProperties;\nusing wgpu::DawnEncoderInternalUsageDescriptor;\nusing wgpu::DawnFakeBufferOOMForTesting;\nusing wgpu::DawnFakeDeviceInitializeErrorForTesting;\nusing wgpu::DawnHostMappedPointerLimits;\nusing wgpu::DawnInjectedInvalidSType;\nusing wgpu::DawnRenderPassSampleCount;\nusing wgpu::DawnShaderModuleSPIRVOptionsDescriptor;\nusing wgpu::DawnShaderSourceSPIRV;\nusing wgpu::DawnTexelCopyBufferRowAlignmentLimits;\nusing wgpu::DawnTextureInternalUsageDescriptor;\nusing wgpu::DawnTogglesDescriptor;\nusing wgpu::DawnWGSLBlocklist;\nusing wgpu::DawnWireWGSLControl;\nusing wgpu::Extent2D;\nusing wgpu::Extent3D;\nusing wgpu::ExternalTextureBindingEntry;\nusing wgpu::ExternalTextureBindingLayout;\nusing wgpu::Future;\nusing wgpu::InstanceLimits;\nusing wgpu::MemoryHeapInfo;\nusing wgpu::MultisampleState;\nusing wgpu::Origin2D;\nusing wgpu::Origin3D;\nusing wgpu::PassTimestampWrites;\nusing wgpu::PipelineLayoutResourceTable;\nusing wgpu::PipelineLayoutStorageAttachment;\nusing wgpu::PrimitiveState;\nusing wgpu::QuerySetDescriptor;\nusing wgpu::QueueDescriptor;\nusing wgpu::RenderBundleDescriptor;\nusing wgpu::RenderBundleEncoderResourceTable;\nusing wgpu::RenderPassDepthStencilAttachment;\nusing wgpu::RenderPassDescriptorResolveRect;\nusing wgpu::RenderPassMaxDrawCount;\nusing wgpu::RequestAdapterWebGPUBackendOptions;\nusing wgpu::RequestAdapterWebXROptions;\nusing wgpu::ResourceTableDescriptor;\nusing wgpu::SamplerBindingLayout;\nusing wgpu::ShaderModuleCompilationOptions;\nusing wgpu::ShaderSourceSPIRV;\nusing wgpu::ShaderSourceWGSL;\nusing wgpu::SharedBufferMemoryBeginAccessDescriptor;\nusing wgpu::SharedBufferMemoryEndAccessState;\nusing wgpu::SharedBufferMemoryFromWindowsHandleDescriptor;\nusing wgpu::SharedBufferMemoryProperties;\nusing wgpu::SharedFenceDXGISharedHandleDescriptor;\nusing wgpu::SharedFenceDXGISharedHandleExportInfo;\nusing wgpu::SharedFenceEGLSyncDescriptor;\nusing wgpu::SharedFenceEGLSyncExportInfo;\nusing wgpu::SharedFenceMTLSharedEventDescriptor;\nusing wgpu::SharedFenceMTLSharedEventExportInfo;\nusing wgpu::SharedFenceSyncFDDescriptor;\nusing wgpu::SharedFenceSyncFDExportInfo;\nusing wgpu::SharedFenceVkSemaphoreOpaqueFDDescriptor;\nusing wgpu::SharedFenceVkSemaphoreOpaqueFDExportInfo;\nusing wgpu::SharedFenceVkSemaphoreZirconHandleDescriptor;\nusing wgpu::SharedFenceVkSemaphoreZirconHandleExportInfo;\nusing wgpu::SharedTextureMemoryAHardwareBufferDescriptor;\nusing wgpu::SharedTextureMemoryD3D11BeginState;\nusing wgpu::SharedTextureMemoryD3DSwapchainBeginState;\nusing wgpu::SharedTextureMemoryDmaBufPlane;\nusing wgpu::SharedTextureMemoryDXGISharedHandleDescriptor;\nusing wgpu::SharedTextureMemoryEGLImageDescriptor;\nusing wgpu::SharedTextureMemoryIOSurfaceDescriptor;\nusing wgpu::SharedTextureMemoryOpaqueFDDescriptor;\nusing wgpu::SharedTextureMemoryVkDedicatedAllocationDescriptor;\nusing wgpu::SharedTextureMemoryVkImageLayoutBeginState;\nusing wgpu::SharedTextureMemoryVkImageLayoutEndState;\nusing wgpu::SharedTextureMemoryZirconHandleDescriptor;\nusing wgpu::StaticSamplerBindingLayout;\nusing wgpu::StencilFaceState;\nusing wgpu::StorageTextureBindingLayout;\nusing wgpu::SubgroupMatrixConfig;\nusing wgpu::SupportedFeatures;\nusing wgpu::SupportedInstanceFeatures;\nusing wgpu::SupportedWGSLLanguageFeatures;\nusing wgpu::SurfaceCapabilities;\nusing wgpu::SurfaceColorManagement;\nusing wgpu::SurfaceConfiguration;\nusing wgpu::SurfaceDescriptorFromWindowsCoreWindow;\nusing wgpu::SurfaceDescriptorFromWindowsUWPSwapChainPanel;\nusing wgpu::SurfaceDescriptorFromWindowsWinUISwapChainPanel;\nusing wgpu::SurfaceSourceAndroidNativeWindow;\nusing wgpu::SurfaceSourceMetalLayer;\nusing wgpu::SurfaceSourceWaylandSurface;\nusing wgpu::SurfaceSourceWindowsHWND;\nusing wgpu::SurfaceSourceXCBWindow;\nusing wgpu::SurfaceSourceXlibWindow;\nusing wgpu::SurfaceTexture;\nusing wgpu::TexelBufferBindingEntry;\nusing wgpu::TexelBufferBindingLayout;\nusing wgpu::TexelBufferViewDescriptor;\nusing wgpu::TexelCopyBufferLayout;\nusing wgpu::TextureBindingLayout;\nusing wgpu::TextureBindingViewDimension;\nusing wgpu::TextureComponentSwizzle;\nusing wgpu::VertexAttribute;\nusing wgpu::YCbCrVkDescriptor;\nusing wgpu::AdapterPropertiesMemoryHeaps;\nusing wgpu::AdapterPropertiesSubgroupMatrixConfigs;\nusing wgpu::AHardwareBufferProperties;\nusing wgpu::BindGroupEntry;\nusing wgpu::BindGroupLayoutEntry;\nusing wgpu::BlendState;\nusing wgpu::BufferDescriptor;\nusing wgpu::CommandEncoderDescriptor;\nusing wgpu::CompilationMessage;\nusing wgpu::ComputePassDescriptor;\nusing wgpu::ComputeState;\nusing wgpu::DawnDrmFormatCapabilities;\nusing wgpu::DepthStencilState;\nusing wgpu::ExternalTextureDescriptor;\nusing wgpu::FutureWaitInfo;\nusing wgpu::ImageCopyExternalTexture;\nusing wgpu::InstanceDescriptor;\nusing wgpu::Limits;\nusing wgpu::PipelineLayoutPixelLocalStorage;\nusing wgpu::RenderBundleEncoderDescriptor;\nusing wgpu::RenderPassColorAttachment;\nusing wgpu::RenderPassRenderAreaRect;\nusing wgpu::RenderPassStorageAttachment;\nusing wgpu::RequestAdapterOptions;\nusing wgpu::SamplerDescriptor;\nusing wgpu::ShaderModuleDescriptor;\nusing wgpu::SharedBufferMemoryDescriptor;\nusing wgpu::SharedFenceDescriptor;\nusing wgpu::SharedFenceExportInfo;\nusing wgpu::SharedTextureMemoryAHardwareBufferProperties;\nusing wgpu::SharedTextureMemoryBeginAccessDescriptor;\nusing wgpu::SharedTextureMemoryDmaBufDescriptor;\nusing wgpu::SharedTextureMemoryMetalEndAccessState;\nusing wgpu::SurfaceDescriptor;\nusing wgpu::TexelCopyBufferInfo;\nusing wgpu::TexelCopyTextureInfo;\nusing wgpu::TextureComponentSwizzleDescriptor;\nusing wgpu::TextureDescriptor;\nusing wgpu::VertexBufferLayout;\nusing wgpu::AdapterInfo;\nusing wgpu::BindGroupDescriptor;\nusing wgpu::BindGroupLayoutDescriptor;\nusing wgpu::ColorTargetState;\nusing wgpu::CompilationInfo;\nusing wgpu::ComputePipelineDescriptor;\nusing wgpu::DawnFormatCapabilities;\nusing wgpu::DeviceDescriptor;\nusing wgpu::PipelineLayoutDescriptor;\nusing wgpu::RenderPassPixelLocalStorage;\nusing wgpu::SharedTextureMemoryDescriptor;\nusing wgpu::SharedTextureMemoryEndAccessState;\nusing wgpu::SharedTextureMemoryProperties;\nusing wgpu::TextureViewDescriptor;\nusing wgpu::VertexState;\nusing wgpu::FragmentState;\nusing wgpu::RenderPassDescriptor;\nusing wgpu::RenderPipelineDescriptor;\n\n// Free Functions\nusing wgpu::CreateInstance;\nusing wgpu::GetInstanceFeatures;\nusing wgpu::GetInstanceLimits;\nusing wgpu::HasInstanceFeature;\nusing wgpu::GetProcAddress;\n\n}\n"}