wgpu_mbt

This repo contains a MoonBit port of the `wgpu-native` C API (WebGPU)

WebGPU
wgpu
Download zip
Author
Version
0.16.0
License
Apache-2.0
Last updated
last month
Downloads
15K

Dependencies

#Milky2018/wgpu_mbt

MoonBit bindings for the wgpu-native C API (WebGPU), targeting native backends.

#Supported Platforms

PlatformStatusValidated in repoSurface API
macOSsupportedMetal runtime + host-backed surface tests in CIInstance::create_surface_metal_layer()
LinuxexperimentalVulkan headless runtime + Linux descriptor/input validation in CIInstance::create_surface_wayland() / create_surface_xcb() / create_surface_xlib()
WindowsexperimentalVulkan headless runtime + Windows descriptor/input validation in CIInstance::create_surface_windows_hwnd() / create_surface_swap_chain_panel()
Androidunsupported by repo build matrixAPI only; no pinned build path or runtime validationInstance::create_surface_android_native_window()

Detailed evidence and current boundaries live in docs/platform_support_status.md.

#Install

  1. Add dependency:

{ "import": [ { "path": "Milky2018/wgpu_mbt", "alias": "wgpu" } ] }

  1. Choose a link mode:

  • Static (default): no extra downstream link flags; the prebuild hook downloads and links a verified upstream static archive automatically
  • Dynamic: set MBT_WGPU_LINK_MODE=dynamic before moon build / moon test, then extract a matching upstream release archive

  1. This repo is pinned to one official upstream release:

  1. Dynamic mode should use the matching extracted upstream release tree:

Platform / ArchDynamic archiveLibrary inside archive
macOS x64wgpu-macos-x86_64-release.ziplib/libwgpu_native.dylib
macOS arm64wgpu-macos-aarch64-release.ziplib/libwgpu_native.dylib
Linux x64wgpu-linux-x86_64-release.ziplib/libwgpu_native.so
Linux arm64wgpu-linux-aarch64-release.ziplib/libwgpu_native.so
Windows x64wgpu-windows-x86_64-msvc-release.ziplib/wgpu_native.dll
Windows arm64wgpu-windows-aarch64-msvc-release.ziplib/wgpu_native.dll

Recommended dynamic install: extract that archive into $HOME/.local (or %USERPROFILE%\\.local on Windows), so the release metadata is preserved:

  • macOS: $HOME/.local/lib/libwgpu_native.dylib
  • Linux: $HOME/.local/lib/libwgpu_native.so
  • Windows: %USERPROFILE%\\.local\\lib\\wgpu_native.dll
  • metadata tag: .../wgpu-native-meta/wgpu-native-git-tag

Reusable preseeded install: extract the official release anywhere stable and set MBT_WGPU_NATIVE_ROOT to the extracted root. Both link modes can reuse the same tree:

  • Dynamic mode resolves lib/libwgpu_native.(dylib|so) on macOS/Linux or lib/wgpu_native.dll on Windows from MBT_WGPU_NATIVE_ROOT
  • Static mode reuses lib/libwgpu_native.a (or lib/wgpu_native.lib on Windows arm64) from MBT_WGPU_NATIVE_ROOT instead of downloading again
  • Example extracted roots:
    • macOS/Linux: /opt/wgpu-native/wgpu-linux-x86_64-release
    • Windows: C:\\wgpu-native\\wgpu-windows-x86_64-msvc-release

Or set MBT_WGPU_NATIVE_LIB to an absolute library path inside an extracted upstream release tree. If you want the automatic static downloader to populate a reusable cache when no preseeded root is supplied, set MBT_WGPU_NATIVE_CACHE_DIR.

Static mode uses the same pinned upstream release model, but on Windows x64 it intentionally downloads wgpu-windows-x86_64-gnu-release.zip for the static link step because that package contains libwgpu_native.a, which matches the current linker configuration in build.js.

#Quick Example

fn main {
try {
@wgpu.with_default_device_queue_managed((instance, device, queue) => {
let _ = instance
let buf = device.create_buffer(
size=4UL,
usage=@wgpu.BufferUsage::from_u64(@wgpu.BUFFER_USAGE_COPY_DST),
)
ignore(buf.size())

let shader = device.create_shader_module_wgsl(
#|@compute @workgroup_size(1)
#|fn main() {}
#|,
)
let pipeline = device.create_compute_pipeline(shader)
let encoder = device.create_command_encoder()
let pass = encoder.begin_compute_pass()
pass.set_pipeline(pipeline)
pass.dispatch_workgroups(1U, 1U, 1U)
pass.end()

let cmd = encoder.finish()
queue.submit_one(cmd)
})
} catch {
e => println(e.message())
}
}

with_default_device_queue_managed is the strongest high-level path for smoke tests, examples, and short-lived tools. It auto-releases the default instance/adapter/device/queue stack and only exposes managed wrappers for the common compute path plus a minimal offscreen render path (Texture/TextureView/RenderPipeline/RenderPass/copy-to-buffer), so there is no release() method to call by mistake inside the callback.

For broader high-level coverage, with_default_device_queue_auto_release still exposes the lower-level AutoReleasePool. That path supports more resource types, but tracked resources remain borrowed for the callback scope. Keep release() / add_ref() for raw interop or deterministic ownership management outside these managed helpers.

Lifecycle validation details, including GlobalReport delta checks and the native ASan helper script, live in docs/lifecycle_validation.md.

#Surface Configuration (Frame Latency)

SurfaceConfiguration now exposes desired_maximum_frame_latency through a typed API:

let config = @wgpu.SurfaceConfiguration::new(
width,
height,
usage,
format,
@wgpu.PresentMode::from_u32(present_mode_u32),
@wgpu.CompositeAlphaMode::from_u32(alpha_mode_u32),
)
.with_view_formats([format])
.with_desired_maximum_frame_latency(2U)

surface.configure_with_or_raise(adapter, device, config)

You can still use configure_u32 / configure_view_formats_u32 / configure_best_effort, and pass desired_maximum_frame_latency as an optional named parameter.

For raw WGPUSurfaceConfiguration* workflows (calling Surface::configure_ptr directly), the package now also exposes pointer builders that include WGPUSurfaceConfigurationExtras.desiredMaximumFrameLatency:

  • surface_configuration_ptr_new(device, config)
  • surface_configuration_ptr_free(config_ptr)

#Surface Sources (All Common Native Sources)

High-level constructors now cover all common native surface sources:

  • Metal: Instance::create_surface_metal_layer()
  • macOS AppKit: Instance::create_surface_macos_ns_view(ns_view)
  • Wayland: Instance::create_surface_wayland(display, surface)
  • XCB: Instance::create_surface_xcb(connection, window)
  • Xlib: Instance::create_surface_xlib(display, window)
  • Windows HWND: Instance::create_surface_windows_hwnd(hinstance, hwnd)
  • Windows SwapChainPanel: Instance::create_surface_swap_chain_panel(panel_native)
  • Android: Instance::create_surface_android_native_window(window)

Current contract:

  • The checked-in host-integration behavior tests are for macOS/Metal.
  • create_surface_macos_ns_view accepts an AppKit NSView*, installs or reuses a CAMetalLayer, synchronizes its drawable size from the view's backing coordinates, and returns a Surface that retains the layer. Call Surface::sync_macos_ns_view_layer(ns_view) after host-side view resizes.
  • Linux and Windows now have checked-in descriptor/input-validation tests for their platform surface entry points.
  • Off-target constructors are explicitly gated in the native stubs and return a null Surface instead of attempting a best-effort host integration path.
  • Linux/Windows host-backed presentation paths remain experimental until the project has real window-system integration evidence.
  • Android remains API-only in this repository until the build/deployment story and on-device validation exist.

See docs/platform_support_status.md for the current support boundary per platform.

You can also build source-chained descriptors and call Instance::create_surface(descriptor) directly:

  • surface_descriptor_metal_layer_new
  • surface_descriptor_wayland_new
  • surface_descriptor_xcb_new
  • surface_descriptor_xlib_new
  • surface_descriptor_windows_hwnd_new
  • surface_descriptor_swap_chain_panel_new
  • surface_descriptor_android_native_window_new
  • surface_descriptor_free

Off-target descriptor builders follow the same rule and return null descriptors rather than packaging unsupported source chains on the wrong host OS.

#Native Instance Extras

You can create an instance with explicit native extras instead of defaults:

  • Instance::create_with_extras_u32(backends_u64, flags_u32, dx12_shader_compiler_u32, gles3_minor_version_u32, gl_fence_behaviour_u32, dxc_max_shader_model_u32, dx12_presentation_system_u32, dxc_path)

This exposes backend/compiler knobs from WGPUInstanceExtras. dxc_path is kept as a forward-compatible parameter but is currently a no-op for ABI safety across upstream binaries. Do not rely on it until upstream instance-extras ABI compatibility is resolved.

For WGPUDeviceExtras.tracePath, you can set trace path on descriptor builders via:

  • @wgpu_c.device_descriptor_set_trace_path_utf8(desc, trace_path, trace_path_len)

#Shader / Pipeline Native Extras

  • GLSL shader module descriptor and helper:
    • @wgpu_c.shader_module_descriptor_glsl_new(stage_u64, code, code_len)
    • Device::create_shader_module_glsl(stage_u64, code)
  • Query set descriptor extras with multiple pipeline statistics:
    • @wgpu_c.query_set_descriptor_pipeline_statistics_many_new(...)
    • Device::create_query_set_pipeline_statistics_many(count, first_statistic_name_u32, other_statistic_names_u32)
  • Pipeline layout extras with immediates:
    • @wgpu_c.pipeline_layout_descriptor_immediates_many_new(...)
    • Device::create_pipeline_layout_immediates_many(first_stages, first_start, first_end, other_ranges)
    • Device::create_pipeline_layout_with_immediates(bind_group_layouts, ranges)
    • On wgpu-native v29, range-style immediates APIs allocate the maximum requested immediate byte size.
  • Render pipeline primitive extras on builder:
    • RenderPipelineDescBuilder::set_polygon_mode_u32(...)
    • RenderPipelineDescBuilder::set_conservative_rasterization(...)
    • RenderPipelineDescBuilder::clear_primitive_extras()

#Async Future APIs

Besides sync helpers, the package now exposes non-blocking future-style APIs:

  • Adapter request:
    • Instance::request_adapter_future_id_u64(...)
    • Instance::request_adapter_async_status_u32(...)
    • Instance::request_adapter_async_take_or_raise(...)
  • Device request:
    • Adapter::request_device_future_id_u64(...)
    • Adapter::request_device_async_status_u32(...)
    • Adapter::request_device_async_take_or_raise(...)

Drive completion with Instance::process_events() or Instance::wait_any_one(...).

#Runtime Behavior

  • Static mode is the default and links the verified upstream static library into the final native binary.
  • Dynamic mode is opt-in and loads libwgpu_native at runtime.
  • Dynamic library lookup order:
    1. MBT_WGPU_NATIVE_LIB
    2. MBT_WGPU_NATIVE_ROOT
    3. default per-user path listed above
  • @wgpu.native_available() checks whether the core library/symbols are loadable.
  • @wgpu.native_supported() checks whether the current runtime matches the supported upstream release.
  • @wgpu.native_static_linked() reports whether this build used static linking.
  • @wgpu.native_expected_release_tag() returns the supported upstream release tag.
  • @wgpu.native_resolved_lib_path() returns the currently resolved dynamic library path, or "" in static mode / when no path can be resolved.
  • @wgpu.native_diagnostic() returns a combined loader/support diagnostic string.
  • @wgpu.native_recovery_hint() returns the next recommended recovery step for the current loader state.
  • For custom dynamic builds without release metadata, set MBT_WGPU_NATIVE_ALLOW_UNVERIFIED=1 to bypass release-metadata verification only. It does not bypass library load failures or missing symbols.
  • To force dynamic mode in a downstream project, export MBT_WGPU_LINK_MODE=dynamic for moon check / moon build / moon test.

#Optional Feature Gates

Some wgpu-native builds still have unimplemented or unstable entry points.

  • Debug labels / markers are off by default
    • enable via @wgpu.set_debug_labels_enabled(true) or MBT_WGPU_DEBUG_LABELS=1
  • Async pipeline creation is off by default
    • enable via MBT_WGPU_ENABLE_PIPELINE_ASYNC=1 or @wgpu.set_pipeline_async_enabled(true)
    • probe via @wgpu.pipeline_async_enabled() / @wgpu.pipeline_async_available()
    • Device::create_render_pipeline_async_sync_ptr_or_raise(...) is conservatively repo-gated on the supported native release and raises an explicit runtime error; use create_render_pipeline_async_sync_ptr(...) for the safe fallback helper
  • Shader compilation info is off by default
    • enable via MBT_WGPU_ENABLE_COMPILATION_INFO=1 or @wgpu.set_compilation_info_enabled(true)
    • probe via @wgpu.compilation_info_enabled() / @wgpu.compilation_info_available()
  • Native features:
    • clear texture: @wgpu.NATIVE_FEATURE_CLEAR_TEXTURE
    • multiview: @wgpu.NATIVE_FEATURE_MULTIVIEW
    • texture atomics: @wgpu.NATIVE_FEATURE_TEXTURE_ATOMIC
    • 64-bit texture atomics: @wgpu.NATIVE_FEATURE_TEXTURE_INT64_ATOMIC
    • quick checks: Adapter::has_feature_native_clear_texture() / Adapter::has_feature_native_multiview()
  • Force-disable env vars always take precedence:
    • MBT_WGPU_DISABLE_PIPELINE_ASYNC=1
    • MBT_WGPU_DISABLE_COMPILATION_INFO=1

#Known Upstream Gaps

These are still blocked by upstream wgpu-native headers/releases, so wgpu_mbt does not expose fake or unstable wrappers for them:

  • TEXTURE_FORMAT_R64_UINT
  • STORAGE_TEXTURE_ACCESS_ATOMIC

AddressModeClampToZero, AddressModeClampToBorder, ClearTexture, and Multiview are exposed by the pinned upstream wgpu-native header.

TEXTURE_ATOMIC and TEXTURE_INT64_ATOMIC feature bits are queryable through native feature ids allocated by upstream wgpu-native trunk, so Adapter::supported_rust_features_u64() and Device::supported_rust_features_u64() can report them when a future/custom native library actually exposes those features. The currently supported official release still cannot create Bevy-style texture_storage_2d<r64uint, atomic> resources because the C header and conversion layer do not expose R64Uint or storage-texture atomic access.

The supported release also still lacks a stable upstream WGSL-language-feature query. wgpu_mbt therefore keeps Instance::get_wgsl_language_features(...) / has_wgsl_language_feature(...) on a safe empty/false placeholder contract instead of calling the aborting upstream entry points directly.

#Troubleshooting

If startup fails at the first WebGPU call, usually libwgpu_native is missing, unsupported, or not loadable.

  • Check diagnostics: @wgpu.native_diagnostic()
  • Check the exact chosen path: @wgpu.native_resolved_lib_path()
  • Check the next action directly: @wgpu.native_recovery_hint()
  • Verify that you extracted the official upstream archive, not just the bare library file
  • Verify file path and filename for your platform
  • On Windows x64, use the msvc archive for dynamic installs; the gnu archive is only for the automatic static link path
  • If using dynamic mode, set MBT_WGPU_LINK_MODE=dynamic
  • If you have a pre-extracted official release tree, set MBT_WGPU_NATIVE_ROOT=/absolute/path/to/extracted/root
  • If using a custom dynamic library location, set MBT_WGPU_NATIVE_LIB=/absolute/path/to/libwgpu_native.(dylib|so|dll)
  • If you are using a trusted custom build, MBT_WGPU_NATIVE_ALLOW_UNVERIFIED=1 only skips the metadata/tag gate; it does not make an unloadable or symbol-incomplete library work

BufferSyncError

type BufferSyncError

BufferSyncError::message

fn BufferSyncError::message(self : BufferSyncError) -> String

ComputePipelineDescError

type ComputePipelineDescError

ComputePipelineDescError::message

OptionalSymbolError

type OptionalSymbolError

OptionalSymbolError::kind_u32

fn OptionalSymbolError::kind_u32(self : OptionalSymbolError) -> UInt

OptionalSymbolError::message

fn OptionalSymbolError::message(self : OptionalSymbolError) -> String

QueueWorkDoneError

type QueueWorkDoneError

QueueWorkDoneError::message

fn QueueWorkDoneError::message(self : QueueWorkDoneError) -> String

QueueWorkDoneError::status_u32

fn QueueWorkDoneError::status_u32(self : QueueWorkDoneError) -> UInt

QueueWorkDoneWaitError

type QueueWorkDoneWaitError

QueueWorkDoneWaitError::message

fn QueueWorkDoneWaitError::message(self : QueueWorkDoneWaitError) -> String

RenderPassDescError

type RenderPassDescError

RenderPassDescError::message

fn RenderPassDescError::message(self : RenderPassDescError) -> String

RenderPipelineDescError

type RenderPipelineDescError

RenderPipelineDescError::message

fn RenderPipelineDescError::message(self : RenderPipelineDescError) -> String

SurfaceConfigureError

type SurfaceConfigureError

SurfaceConfigureError::message

fn SurfaceConfigureError::message(self : SurfaceConfigureError) -> String

SurfaceCreateError

type SurfaceCreateError

SurfaceCreateError::message

fn SurfaceCreateError::message(self : SurfaceCreateError) -> String

SurfacePresentError

type SurfacePresentError

SurfacePresentError::message

fn SurfacePresentError::message(self : SurfacePresentError) -> String

SurfaceTextureError

type SurfaceTextureError

SurfaceTextureError::message

fn SurfaceTextureError::message(self : SurfaceTextureError) -> String

WaitAnyError

type WaitAnyError

WaitAnyError::message

fn WaitAnyError::message(self : WaitAnyError) -> String

WaitAnyError::status_u32

fn WaitAnyError::status_u32(self : WaitAnyError) -> UInt

WgpuError

pub suberror WgpuError {
WgpuNativeUnavailable(String)
WgpuNativeUnsupported(String)
WgpuNativeMissingSymbol(String, String)
WgpuRequestAdapterFailed(UInt)
WgpuRequestDeviceFailed(UInt)
}

WgpuError::message

fn WgpuError::message(self : WgpuError) -> String

Adapter

Adapter::add_ref

fn Adapter::add_ref(self : Adapter) -> Adapter

Adapter::add_ref_raw

fn Adapter::add_ref_raw(self : Adapter) -> Unit

Adapter::get_features

Adapter::has_feature

fn Adapter::has_feature(self : Adapter, feature :
WGPUFeatureName
) -> Bool

Adapter::has_feature_experimental_mesh_shader

fn Adapter::has_feature_experimental_mesh_shader(self : Adapter) -> Bool

Adapter::has_feature_experimental_mesh_shader_points

fn Adapter::has_feature_experimental_mesh_shader_points(self : Adapter) -> Bool

Adapter::has_feature_native_buffer_binding_array

fn Adapter::has_feature_native_buffer_binding_array(self : Adapter) -> Bool

Adapter::has_feature_native_clear_texture

fn Adapter::has_feature_native_clear_texture(self : Adapter) -> Bool

Adapter::has_feature_native_conservative_rasterization

fn Adapter::has_feature_native_conservative_rasterization(self : Adapter) -> Bool

Adapter::has_feature_native_immediates

fn Adapter::has_feature_native_immediates(self : Adapter) -> Bool

Adapter::has_feature_native_mappable_primary_buffers

fn Adapter::has_feature_native_mappable_primary_buffers(self : Adapter) -> Bool

Adapter::has_feature_native_multi_draw_indirect_count

fn Adapter::has_feature_native_multi_draw_indirect_count(self : Adapter) -> Bool

Adapter::has_feature_native_multiview

fn Adapter::has_feature_native_multiview(self : Adapter) -> Bool

Adapter::has_feature_native_partially_bound_binding_array

fn Adapter::has_feature_native_partially_bound_binding_array(self : Adapter) -> Bool

Adapter::has_feature_native_pipeline_statistics_query

fn Adapter::has_feature_native_pipeline_statistics_query(self : Adapter) -> Bool

Adapter::has_feature_native_polygon_mode_line

fn Adapter::has_feature_native_polygon_mode_line(self : Adapter) -> Bool

Adapter::has_feature_native_polygon_mode_point

fn Adapter::has_feature_native_polygon_mode_point(self : Adapter) -> Bool

Adapter::has_feature_native_ray_query

fn Adapter::has_feature_native_ray_query(self : Adapter) -> Bool

Adapter::has_feature_native_sampled_texture_and_storage_buffer_array_non_uniform_indexing

fn Adapter::has_feature_native_sampled_texture_and_storage_buffer_array_non_uniform_indexing(self : Adapter) -> Bool

Adapter::has_feature_native_shader_early_depth_test

fn Adapter::has_feature_native_shader_early_depth_test(self : Adapter) -> Bool

Adapter::has_feature_native_shader_f64

fn Adapter::has_feature_native_shader_f64(self : Adapter) -> Bool

Adapter::has_feature_native_shader_float32_atomic

fn Adapter::has_feature_native_shader_float32_atomic(self : Adapter) -> Bool

Adapter::has_feature_native_shader_i16

fn Adapter::has_feature_native_shader_i16(self : Adapter) -> Bool

Adapter::has_feature_native_shader_int64

fn Adapter::has_feature_native_shader_int64(self : Adapter) -> Bool

Adapter::has_feature_native_shader_int64_atomic_all_ops

fn Adapter::has_feature_native_shader_int64_atomic_all_ops(self : Adapter) -> Bool

Adapter::has_feature_native_shader_int64_atomic_min_max

fn Adapter::has_feature_native_shader_int64_atomic_min_max(self : Adapter) -> Bool

Adapter::has_feature_native_shader_primitive_index

fn Adapter::has_feature_native_shader_primitive_index(self : Adapter) -> Bool

Adapter::has_feature_native_spirv_shader_passthrough

fn Adapter::has_feature_native_spirv_shader_passthrough(self : Adapter) -> Bool

Adapter::has_feature_native_storage_resource_binding_array

fn Adapter::has_feature_native_storage_resource_binding_array(self : Adapter) -> Bool

Adapter::has_feature_native_storage_texture_array_non_uniform_indexing

fn Adapter::has_feature_native_storage_texture_array_non_uniform_indexing(self : Adapter) -> Bool

Adapter::has_feature_native_subgroup

fn Adapter::has_feature_native_subgroup(self : Adapter) -> Bool

Adapter::has_feature_native_subgroup_barrier

fn Adapter::has_feature_native_subgroup_barrier(self : Adapter) -> Bool

Adapter::has_feature_native_subgroup_vertex

fn Adapter::has_feature_native_subgroup_vertex(self : Adapter) -> Bool

Adapter::has_feature_native_texture_adapter_specific_format_features

fn Adapter::has_feature_native_texture_adapter_specific_format_features(self : Adapter) -> Bool

Adapter::has_feature_native_texture_atomic

fn Adapter::has_feature_native_texture_atomic(self : Adapter) -> Bool

Adapter::has_feature_native_texture_binding_array

fn Adapter::has_feature_native_texture_binding_array(self : Adapter) -> Bool

Adapter::has_feature_native_texture_compression_astc_hdr

fn Adapter::has_feature_native_texture_compression_astc_hdr(self : Adapter) -> Bool

Adapter::has_feature_native_texture_format16bit_norm

fn Adapter::has_feature_native_texture_format16bit_norm(self : Adapter) -> Bool

Adapter::has_feature_native_texture_format_nv12

fn Adapter::has_feature_native_texture_format_nv12(self : Adapter) -> Bool

Adapter::has_feature_native_texture_int64_atomic

fn Adapter::has_feature_native_texture_int64_atomic(self : Adapter) -> Bool

Adapter::has_feature_native_timestamp_query_inside_encoders

fn Adapter::has_feature_native_timestamp_query_inside_encoders(self : Adapter) -> Bool

Adapter::has_feature_native_timestamp_query_inside_passes

fn Adapter::has_feature_native_timestamp_query_inside_passes(self : Adapter) -> Bool

Adapter::has_feature_native_u32

fn Adapter::has_feature_native_u32(self : Adapter, native_feature_u32 : UInt) -> Bool

Adapter::has_feature_native_vertex_attribute64bit

fn Adapter::has_feature_native_vertex_attribute64bit(self : Adapter) -> Bool

Adapter::has_feature_native_vertex_writable_storage

fn Adapter::has_feature_native_vertex_writable_storage(self : Adapter) -> Bool

Adapter::has_feature_timestamp_query

fn Adapter::has_feature_timestamp_query(self : Adapter) -> Bool

Adapter::info_adapter_type_u32

fn Adapter::info_adapter_type_u32(self : Adapter) -> UInt

Adapter::info_architecture

fn Adapter::info_architecture(self : Adapter) -> String

Adapter::info_backend_type_u32

fn Adapter::info_backend_type_u32(self : Adapter) -> UInt

Adapter::info_description

fn Adapter::info_description(self : Adapter) -> String

Adapter::info_device

fn Adapter::info_device(self : Adapter) -> String

Adapter::info_device_id_u32

fn Adapter::info_device_id_u32(self : Adapter) -> UInt

Adapter::info_vendor

fn Adapter::info_vendor(self : Adapter) -> String

Adapter::info_vendor_id_u32

fn Adapter::info_vendor_id_u32(self : Adapter) -> UInt

Adapter::limits_max_bind_groups_plus_vertex_buffers_u32

fn Adapter::limits_max_bind_groups_plus_vertex_buffers_u32(self : Adapter) -> UInt

Adapter::limits_max_bind_groups_u32

fn Adapter::limits_max_bind_groups_u32(self : Adapter) -> UInt

Adapter::limits_max_binding_array_elements_per_shader_stage_u32

fn Adapter::limits_max_binding_array_elements_per_shader_stage_u32(self : Adapter) -> UInt

Adapter::limits_max_binding_array_sampler_elements_per_shader_stage_u32

fn Adapter::limits_max_binding_array_sampler_elements_per_shader_stage_u32(self : Adapter) -> UInt

Adapter::limits_max_bindings_per_bind_group_u32

fn Adapter::limits_max_bindings_per_bind_group_u32(self : Adapter) -> UInt

Adapter::limits_max_buffer_size_u64

fn Adapter::limits_max_buffer_size_u64(self : Adapter) -> UInt64

Adapter::limits_max_color_attachment_bytes_per_sample_u32

fn Adapter::limits_max_color_attachment_bytes_per_sample_u32(self : Adapter) -> UInt

Adapter::limits_max_color_attachments_u32

fn Adapter::limits_max_color_attachments_u32(self : Adapter) -> UInt

Adapter::limits_max_compute_invocations_per_workgroup_u32

fn Adapter::limits_max_compute_invocations_per_workgroup_u32(self : Adapter) -> UInt

Adapter::limits_max_compute_workgroup_size_x_u32

fn Adapter::limits_max_compute_workgroup_size_x_u32(self : Adapter) -> UInt

Adapter::limits_max_compute_workgroup_size_y_u32

fn Adapter::limits_max_compute_workgroup_size_y_u32(self : Adapter) -> UInt

Adapter::limits_max_compute_workgroup_size_z_u32

fn Adapter::limits_max_compute_workgroup_size_z_u32(self : Adapter) -> UInt

Adapter::limits_max_compute_workgroup_storage_size_u32

fn Adapter::limits_max_compute_workgroup_storage_size_u32(self : Adapter) -> UInt

Adapter::limits_max_compute_workgroups_per_dimension_u32

fn Adapter::limits_max_compute_workgroups_per_dimension_u32(self : Adapter) -> UInt

Adapter::limits_max_dynamic_storage_buffers_per_pipeline_layout_u32

fn Adapter::limits_max_dynamic_storage_buffers_per_pipeline_layout_u32(self : Adapter) -> UInt

Adapter::limits_max_dynamic_uniform_buffers_per_pipeline_layout_u32

fn Adapter::limits_max_dynamic_uniform_buffers_per_pipeline_layout_u32(self : Adapter) -> UInt

Adapter::limits_max_immediate_size_u32

fn Adapter::limits_max_immediate_size_u32(self : Adapter) -> UInt

Adapter::limits_max_inter_stage_shader_variables_u32

fn Adapter::limits_max_inter_stage_shader_variables_u32(self : Adapter) -> UInt

Adapter::limits_max_non_sampler_bindings_u32

fn Adapter::limits_max_non_sampler_bindings_u32(self : Adapter) -> UInt

Adapter::limits_max_sampled_textures_per_shader_stage_u32

fn Adapter::limits_max_sampled_textures_per_shader_stage_u32(self : Adapter) -> UInt

Adapter::limits_max_samplers_per_shader_stage_u32

fn Adapter::limits_max_samplers_per_shader_stage_u32(self : Adapter) -> UInt

Adapter::limits_max_storage_buffer_binding_size_u64

fn Adapter::limits_max_storage_buffer_binding_size_u64(self : Adapter) -> UInt64

Adapter::limits_max_storage_buffers_per_shader_stage_u32

fn Adapter::limits_max_storage_buffers_per_shader_stage_u32(self : Adapter) -> UInt

Adapter::limits_max_storage_textures_per_shader_stage_u32

fn Adapter::limits_max_storage_textures_per_shader_stage_u32(self : Adapter) -> UInt

Adapter::limits_max_texture_array_layers_u32

fn Adapter::limits_max_texture_array_layers_u32(self : Adapter) -> UInt

Adapter::limits_max_texture_dimension_1d_u32

fn Adapter::limits_max_texture_dimension_1d_u32(self : Adapter) -> UInt

Adapter::limits_max_texture_dimension_2d_u32

fn Adapter::limits_max_texture_dimension_2d_u32(self : Adapter) -> UInt

Adapter::limits_max_texture_dimension_3d_u32

fn Adapter::limits_max_texture_dimension_3d_u32(self : Adapter) -> UInt

Adapter::limits_max_uniform_buffer_binding_size_u64

fn Adapter::limits_max_uniform_buffer_binding_size_u64(self : Adapter) -> UInt64

Adapter::limits_max_uniform_buffers_per_shader_stage_u32

fn Adapter::limits_max_uniform_buffers_per_shader_stage_u32(self : Adapter) -> UInt

Adapter::limits_max_vertex_attributes_u32

fn Adapter::limits_max_vertex_attributes_u32(self : Adapter) -> UInt

Adapter::limits_max_vertex_buffer_array_stride_u32

fn Adapter::limits_max_vertex_buffer_array_stride_u32(self : Adapter) -> UInt

Adapter::limits_max_vertex_buffers_u32

fn Adapter::limits_max_vertex_buffers_u32(self : Adapter) -> UInt

Adapter::limits_min_storage_buffer_offset_alignment_u32

fn Adapter::limits_min_storage_buffer_offset_alignment_u32(self : Adapter) -> UInt

Adapter::limits_min_uniform_buffer_offset_alignment_u32

fn Adapter::limits_min_uniform_buffer_offset_alignment_u32(self : Adapter) -> UInt

Adapter::missing_known_rust_features_u64

fn Adapter::missing_known_rust_features_u64(self : Adapter, required_features_u64 : UInt64) -> UInt64

Adapter::missing_rust_features_u64

fn Adapter::missing_rust_features_u64(self : Adapter, required_features_u64 : UInt64) -> UInt64

Returns the subset of required Rust wgpu::Features bits that are missing.

FEATURES_TEXTURE_ATOMIC and FEATURES_TEXTURE_INT64_ATOMIC are queryable through native feature ids allocated by wgpu-native trunk. The supported release may still report them missing until an official release exposes the full R64Uint storage-texture C API.

Adapter::raw_handle

Adapter::release

fn Adapter::release(self : Adapter) -> Unit

Adapter::release_raw

fn Adapter::release_raw(self : Adapter) -> Unit

Adapter::request_device_async_clear

fn Adapter::request_device_async_clear(self : Adapter, future_id : UInt64) -> Unit

Adapter::request_device_async_device

fn Adapter::request_device_async_device(self : Adapter, future_id : UInt64) -> Device

Adapter::request_device_async_message

fn Adapter::request_device_async_message(self : Adapter, future_id : UInt64) -> String

Adapter::request_device_async_status_u32

fn Adapter::request_device_async_status_u32(self : Adapter, future_id : UInt64) -> UInt

Adapter::request_device_async_take_or_raise

fn Adapter::request_device_async_take_or_raise(self : Adapter, future_id : UInt64) -> Device raise WgpuError

Adapter::request_device_future_id_u64

fn Adapter::request_device_future_id_u64(self : Adapter, descriptor? :
WGPUDeviceDescriptorPtr
) -> UInt64

Adapter::request_device_sync

fn Adapter::request_device_sync(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_buffer_binding_array

fn Adapter::request_device_sync_buffer_binding_array(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_clear_texture

fn Adapter::request_device_sync_clear_texture(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_conservative_rasterization

fn Adapter::request_device_sync_conservative_rasterization(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_immediates

fn Adapter::request_device_sync_immediates(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_mappable_primary_buffers

fn Adapter::request_device_sync_mappable_primary_buffers(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_multi_draw_indirect_count

fn Adapter::request_device_sync_multi_draw_indirect_count(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_multiview

fn Adapter::request_device_sync_multiview(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_native_feature

fn Adapter::request_device_sync_native_feature(self : Adapter, instance : Instance, native_feature_u32 : UInt) -> Device raise WgpuError

Adapter::request_device_sync_partially_bound_binding_array

fn Adapter::request_device_sync_partially_bound_binding_array(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_pipeline_statistics_query

fn Adapter::request_device_sync_pipeline_statistics_query(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_polygon_mode_line

fn Adapter::request_device_sync_polygon_mode_line(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_polygon_mode_point

fn Adapter::request_device_sync_polygon_mode_point(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_ptr

fn Adapter::request_device_sync_ptr(self : Adapter, instance : Instance, descriptor :
WGPUDeviceDescriptorPtr
) -> Device raise WgpuError

Adapter::request_device_sync_ray_query

fn Adapter::request_device_sync_ray_query(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_sampled_texture_and_storage_buffer_array_non_uniform_indexing

fn Adapter::request_device_sync_sampled_texture_and_storage_buffer_array_non_uniform_indexing(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_shader_early_depth_test

fn Adapter::request_device_sync_shader_early_depth_test(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_shader_f64

fn Adapter::request_device_sync_shader_f64(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_shader_float32_atomic

fn Adapter::request_device_sync_shader_float32_atomic(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_shader_i16

fn Adapter::request_device_sync_shader_i16(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_shader_int64

fn Adapter::request_device_sync_shader_int64(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_shader_int64_atomic_all_ops

fn Adapter::request_device_sync_shader_int64_atomic_all_ops(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_shader_int64_atomic_min_max

fn Adapter::request_device_sync_shader_int64_atomic_min_max(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_shader_primitive_index

fn Adapter::request_device_sync_shader_primitive_index(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_spirv_shader_passthrough

fn Adapter::request_device_sync_spirv_shader_passthrough(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_storage_resource_binding_array

fn Adapter::request_device_sync_storage_resource_binding_array(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_storage_texture_array_non_uniform_indexing

fn Adapter::request_device_sync_storage_texture_array_non_uniform_indexing(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_subgroup

fn Adapter::request_device_sync_subgroup(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_subgroup_barrier

fn Adapter::request_device_sync_subgroup_barrier(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_subgroup_vertex

fn Adapter::request_device_sync_subgroup_vertex(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_texture_adapter_specific_format_features

fn Adapter::request_device_sync_texture_adapter_specific_format_features(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_texture_atomic

fn Adapter::request_device_sync_texture_atomic(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_texture_binding_array

fn Adapter::request_device_sync_texture_binding_array(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_texture_compression_astc_hdr

fn Adapter::request_device_sync_texture_compression_astc_hdr(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_texture_format16bit_norm

fn Adapter::request_device_sync_texture_format16bit_norm(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_texture_format_nv12

fn Adapter::request_device_sync_texture_format_nv12(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_texture_int64_atomic

fn Adapter::request_device_sync_texture_int64_atomic(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_timestamp_query

fn Adapter::request_device_sync_timestamp_query(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_timestamp_query_inside_encoders

fn Adapter::request_device_sync_timestamp_query_inside_encoders(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_timestamp_query_inside_passes

fn Adapter::request_device_sync_timestamp_query_inside_passes(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_vertex_attribute64bit

fn Adapter::request_device_sync_vertex_attribute64bit(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_vertex_writable_storage

fn Adapter::request_device_sync_vertex_writable_storage(self : Adapter, instance : Instance) -> Device raise WgpuError

Adapter::request_device_sync_with_features

fn Adapter::request_device_sync_with_features(self : Adapter, instance : Instance, required_features_u32 : Array[UInt], label? : String, queue_label? : String, trace_path? : String) -> Device raise WgpuError

Adapter::request_device_sync_with_features_and_limits

fn Adapter::request_device_sync_with_features_and_limits(self : Adapter, instance : Instance, required_features_u32 : Array[UInt], max_bind_groups_u32? : UInt, max_dynamic_uniform_buffers_u32? : UInt, max_uniform_buffer_binding_size? : UInt64, max_storage_buffer_binding_size? : UInt64, max_sampled_textures_per_shader_stage_u32? : UInt, max_samplers_per_shader_stage_u32? : UInt, max_immediate_size_u32? : UInt, max_non_sampler_bindings_u32? : UInt, max_binding_array_elements_per_shader_stage_u32? : UInt, max_binding_array_sampler_elements_per_shader_stage_u32? : UInt, label? : String, queue_label? : String, trace_path? : String) -> Device raise WgpuError

Adapter::supported_feature_u32_at

fn Adapter::supported_feature_u32_at(self : Adapter, index : UInt64) -> UInt

Adapter::supported_features_contains_u32

fn Adapter::supported_features_contains_u32(self : Adapter, feature_u32 : UInt) -> Bool

Adapter::supported_features_count_u64

fn Adapter::supported_features_count_u64(self : Adapter) -> UInt64

Adapter::supported_rust_features_u64

fn Adapter::supported_rust_features_u64(self : Adapter) -> UInt64

Adapter::supports_known_rust_features_u64

fn Adapter::supports_known_rust_features_u64(self : Adapter, required_features_u64 : UInt64) -> Bool

Adapter::supports_rust_features_u64

fn Adapter::supports_rust_features_u64(self : Adapter, required_features_u64 : UInt64) -> Bool

Adapter::unknown_rust_features_u64

fn Adapter::unknown_rust_features_u64(self : Adapter, required_features_u64 : UInt64) -> UInt64

AutoReleasePool

pub struct AutoReleasePool {
// private fields
}

AutoReleasePool::new

AutoReleasePool::release

fn AutoReleasePool::release(self : AutoReleasePool) -> Unit

AutoReleasePool::track_bind_group

fn AutoReleasePool::track_bind_group(self : AutoReleasePool, group : BindGroup) -> BindGroup

AutoReleasePool::track_bind_group_layout

fn AutoReleasePool::track_bind_group_layout(self : AutoReleasePool, layout : BindGroupLayout) -> BindGroupLayout

AutoReleasePool::track_buffer

fn AutoReleasePool::track_buffer(self : AutoReleasePool, buffer : Buffer) -> Buffer

AutoReleasePool::track_command_buffer

fn AutoReleasePool::track_command_buffer(self : AutoReleasePool, command_buffer : CommandBuffer) -> CommandBuffer

AutoReleasePool::track_command_encoder

fn AutoReleasePool::track_command_encoder(self : AutoReleasePool, encoder : CommandEncoder) -> CommandEncoder

AutoReleasePool::track_compute_pass

fn AutoReleasePool::track_compute_pass(self : AutoReleasePool, pass : ComputePass) -> ComputePass

AutoReleasePool::track_compute_pipeline

fn AutoReleasePool::track_compute_pipeline(self : AutoReleasePool, pipeline : ComputePipeline) -> ComputePipeline

AutoReleasePool::track_pipeline_layout

fn AutoReleasePool::track_pipeline_layout(self : AutoReleasePool, layout : PipelineLayout) -> PipelineLayout

AutoReleasePool::track_query_set

fn AutoReleasePool::track_query_set(self : AutoReleasePool, query_set : QuerySet) -> QuerySet

AutoReleasePool::track_render_bundle

fn AutoReleasePool::track_render_bundle(self : AutoReleasePool, bundle : RenderBundle) -> RenderBundle

AutoReleasePool::track_render_bundle_encoder

fn AutoReleasePool::track_render_bundle_encoder(self : AutoReleasePool, encoder : RenderBundleEncoder) -> RenderBundleEncoder

AutoReleasePool::track_render_pass

fn AutoReleasePool::track_render_pass(self : AutoReleasePool, pass : RenderPass) -> RenderPass

AutoReleasePool::track_render_pipeline

fn AutoReleasePool::track_render_pipeline(self : AutoReleasePool, pipeline : RenderPipeline) -> RenderPipeline

AutoReleasePool::track_sampler

fn AutoReleasePool::track_sampler(self : AutoReleasePool, sampler : Sampler) -> Sampler

AutoReleasePool::track_shader_module

fn AutoReleasePool::track_shader_module(self : AutoReleasePool, shader : ShaderModule) -> ShaderModule

AutoReleasePool::track_surface

fn AutoReleasePool::track_surface(self : AutoReleasePool, surface : Surface) -> Surface

AutoReleasePool::track_texture

fn AutoReleasePool::track_texture(self : AutoReleasePool, texture : Texture) -> Texture

AutoReleasePool::track_texture_view

fn AutoReleasePool::track_texture_view(self : AutoReleasePool, view : TextureView) -> TextureView

BindGroup

BindGroup::add_ref

fn BindGroup::add_ref(self : BindGroup) -> BindGroup

BindGroup::add_ref_raw

fn BindGroup::add_ref_raw(self : BindGroup) -> Unit

BindGroup::raw_handle

BindGroup::release

fn BindGroup::release(self : BindGroup) -> Unit

BindGroup::release_raw

fn BindGroup::release_raw(self : BindGroup) -> Unit

BindGroup::set_label

fn BindGroup::set_label(self : BindGroup, label : String) -> Unit

BindGroupBuilder

BindGroupBuilder::add_buffer

fn BindGroupBuilder::add_buffer(self : BindGroupBuilder, binding : UInt, buffer : Buffer, offset? : UInt64, size? : UInt64) -> Bool

BindGroupBuilder::add_buffer_array

fn BindGroupBuilder::add_buffer_array(self : BindGroupBuilder, binding : UInt, buffers : Array[Buffer], offset? : UInt64, size? : UInt64) -> Bool

BindGroupBuilder::add_sampler

fn BindGroupBuilder::add_sampler(self : BindGroupBuilder, binding : UInt, sampler : Sampler) -> Bool

BindGroupBuilder::add_sampler_array

fn BindGroupBuilder::add_sampler_array(self : BindGroupBuilder, binding : UInt, samplers : Array[Sampler]) -> Bool

BindGroupBuilder::add_texture_view

fn BindGroupBuilder::add_texture_view(self : BindGroupBuilder, binding : UInt, view : TextureView) -> Bool

BindGroupBuilder::add_texture_view_array

fn BindGroupBuilder::add_texture_view_array(self : BindGroupBuilder, binding : UInt, views : Array[TextureView]) -> Bool

BindGroupBuilder::finish

fn BindGroupBuilder::finish(self : BindGroupBuilder, device : Device, layout : BindGroupLayout, label? : String) -> BindGroup

BindGroupBuilder::free

fn BindGroupBuilder::free(self : BindGroupBuilder) -> Unit

BindGroupBuilder::new

fn BindGroupBuilder::new(max_entries~ : UInt64) -> BindGroupBuilder

BindGroupLayout

BindGroupLayout::add_ref

BindGroupLayout::add_ref_raw

fn BindGroupLayout::add_ref_raw(self : BindGroupLayout) -> Unit

BindGroupLayout::release

fn BindGroupLayout::release(self : BindGroupLayout) -> Unit

BindGroupLayout::release_raw

fn BindGroupLayout::release_raw(self : BindGroupLayout) -> Unit

BindGroupLayout::set_label

fn BindGroupLayout::set_label(self : BindGroupLayout, label : String) -> Unit

BindGroupLayoutBuilder

BindGroupLayoutBuilder::add_buffer

fn BindGroupLayoutBuilder::add_buffer(self : BindGroupLayoutBuilder, binding : UInt, visibility : ShaderStage, type_u32 : UInt, has_dynamic_offset? : Bool, min_binding_size? : UInt64, count? : UInt) -> Bool

BindGroupLayoutBuilder::add_sampler

fn BindGroupLayoutBuilder::add_sampler(self : BindGroupLayoutBuilder, binding : UInt, visibility : ShaderStage, type_u32 : UInt, count? : UInt) -> Bool

BindGroupLayoutBuilder::add_storage_texture

fn BindGroupLayoutBuilder::add_storage_texture(self : BindGroupLayoutBuilder, binding : UInt, visibility : ShaderStage, access_u32 : UInt, format : TextureFormat, view_dimension_u32 : UInt, count? : UInt) -> Bool

BindGroupLayoutBuilder::add_texture

fn BindGroupLayoutBuilder::add_texture(self : BindGroupLayoutBuilder, binding : UInt, visibility : ShaderStage, sample_type_u32 : UInt, view_dimension_u32 : UInt, multisampled? : Bool, count? : UInt) -> Bool

BindGroupLayoutBuilder::finish

fn BindGroupLayoutBuilder::finish(self : BindGroupLayoutBuilder, device : Device, label? : String) -> BindGroupLayout

BindGroupLayoutBuilder::free

BindGroupLayoutBuilder::new

fn BindGroupLayoutBuilder::new(max_entries~ : UInt64) -> BindGroupLayoutBuilder

Buffer

Buffer::add_ref

fn Buffer::add_ref(self : Buffer) -> Buffer

Buffer::add_ref_raw

fn Buffer::add_ref_raw(self : Buffer) -> Unit

Buffer::destroy

fn Buffer::destroy(self : Buffer) -> Unit

Buffer::destroy_raw

fn Buffer::destroy_raw(self : Buffer) -> Unit

Buffer::get_map_state

Buffer::get_size

fn Buffer::get_size(self : Buffer) -> UInt64

Buffer::get_usage

fn Buffer::get_usage(self : Buffer) -> UInt64

Buffer::map_read_sync

fn Buffer::map_read_sync(self : Buffer, instance : Instance, offset : UInt64, size : UInt64) -> Bytes

Buffer::map_read_sync_or_raise

fn Buffer::map_read_sync_or_raise(self : Buffer, instance : Instance, offset : UInt64, size : UInt64) -> Bytes raise BufferSyncError

Buffer::map_write_sync

fn Buffer::map_write_sync(self : Buffer, instance : Instance, offset : UInt64, data : Bytes) -> Unit

Buffer::map_write_sync_or_raise

fn Buffer::map_write_sync_or_raise(self : Buffer, instance : Instance, offset : UInt64, data : Bytes) -> Unit raise BufferSyncError

Buffer::raw_handle

Buffer::readback

fn Buffer::readback(self : Buffer, instance : Instance, offset : UInt64, size : UInt64) -> Bytes

Buffer::readback_or_raise

fn Buffer::readback_or_raise(self : Buffer, instance : Instance, offset : UInt64, size : UInt64) -> Bytes raise BufferSyncError

Buffer::release

fn Buffer::release(self : Buffer) -> Unit

Buffer::release_raw

fn Buffer::release_raw(self : Buffer) -> Unit

Buffer::set_label

fn Buffer::set_label(self : Buffer, label : String) -> Unit

Buffer::size

fn Buffer::size(self : Buffer) -> UInt64

Buffer::unmap

fn Buffer::unmap(self : Buffer) -> Unit

Buffer::unmap_raw

fn Buffer::unmap_raw(self : Buffer) -> Unit

Buffer::usage_u64

fn Buffer::usage_u64(self : Buffer) -> BufferUsage

BufferUsage

pub struct BufferUsage {
raw : UInt64
}

impl Eq for BufferUsage

BufferUsage::from_u64

fn BufferUsage::from_u64(raw : UInt64) -> BufferUsage

BufferUsage::to_u64

fn BufferUsage::to_u64(self : BufferUsage) -> UInt64

CommandBuffer

CommandBuffer::add_ref

CommandBuffer::add_ref_raw

fn CommandBuffer::add_ref_raw(self : CommandBuffer) -> Unit

CommandBuffer::release

fn CommandBuffer::release(self : CommandBuffer) -> Unit

CommandBuffer::release_raw

fn CommandBuffer::release_raw(self : CommandBuffer) -> Unit

CommandBuffer::set_label

fn CommandBuffer::set_label(self : CommandBuffer, label : String) -> Unit

CommandEncoder

CommandEncoder::add_ref

CommandEncoder::add_ref_raw

fn CommandEncoder::add_ref_raw(self : CommandEncoder) -> Unit

CommandEncoder::begin_compute_pass

fn CommandEncoder::begin_compute_pass(self : CommandEncoder) -> ComputePass

CommandEncoder::begin_compute_pass_ptr

CommandEncoder::begin_compute_pass_raw

CommandEncoder::begin_render_pass

CommandEncoder::begin_render_pass_color

fn CommandEncoder::begin_render_pass_color(self : CommandEncoder, view : TextureView) -> RenderPass

CommandEncoder::begin_render_pass_color1_depth_u32

fn CommandEncoder::begin_render_pass_color1_depth_u32(self : CommandEncoder, color1_view : TextureView, depth_view : TextureView, color1_load_op_u32? : UInt, color1_store_op_u32? : UInt, color1_clear_r_f32? : Float, color1_clear_g_f32? : Float, color1_clear_b_f32? : Float, color1_clear_a_f32? : Float, depth_load_op_u32? : UInt, depth_store_op_u32? : UInt, depth_clear_value_f32? : Float, depth_read_only? : Bool, stencil_load_op_u32? : UInt, stencil_store_op_u32? : UInt, stencil_clear_value_u32? : UInt, stencil_read_only? : Bool) -> RenderPass

CommandEncoder::begin_render_pass_color2

fn CommandEncoder::begin_render_pass_color2(self : CommandEncoder, view0 : TextureView, view1 : TextureView) -> RenderPass

CommandEncoder::begin_render_pass_color2_depth

fn CommandEncoder::begin_render_pass_color2_depth(self : CommandEncoder, color0_view : TextureView, color1_view : TextureView, depth_view : TextureView) -> RenderPass

CommandEncoder::begin_render_pass_color2_depth_sparse_u32

fn CommandEncoder::begin_render_pass_color2_depth_sparse_u32(self : CommandEncoder, color0_view : TextureView, color1_view : TextureView, depth_view : TextureView, color0_load_op_u32? : UInt, color0_store_op_u32? : UInt, color0_clear_r_f32? : Float, color0_clear_g_f32? : Float, color0_clear_b_f32? : Float, color0_clear_a_f32? : Float, color1_load_op_u32? : UInt, color1_store_op_u32? : UInt, color1_clear_r_f32? : Float, color1_clear_g_f32? : Float, color1_clear_b_f32? : Float, color1_clear_a_f32? : Float, depth_load_op_u32? : UInt, depth_store_op_u32? : UInt, depth_clear_value_f32? : Float, depth_read_only? : Bool, stencil_load_op_u32? : UInt, stencil_store_op_u32? : UInt, stencil_clear_value_u32? : UInt, stencil_read_only? : Bool) -> RenderPass

CommandEncoder::begin_render_pass_color2_depth_u32

fn CommandEncoder::begin_render_pass_color2_depth_u32(self : CommandEncoder, color0_view : TextureView, color1_view : TextureView, depth_view : TextureView, color0_load_op_u32? : UInt, color0_store_op_u32? : UInt, color0_clear_r_f32? : Float, color0_clear_g_f32? : Float, color0_clear_b_f32? : Float, color0_clear_a_f32? : Float, color1_load_op_u32? : UInt, color1_store_op_u32? : UInt, color1_clear_r_f32? : Float, color1_clear_g_f32? : Float, color1_clear_b_f32? : Float, color1_clear_a_f32? : Float, depth_load_op_u32? : UInt, depth_store_op_u32? : UInt, depth_clear_value_f32? : Float, depth_read_only? : Bool, stencil_load_op_u32? : UInt, stencil_store_op_u32? : UInt, stencil_clear_value_u32? : UInt, stencil_read_only? : Bool) -> RenderPass

CommandEncoder::begin_render_pass_color_clear

fn CommandEncoder::begin_render_pass_color_clear(self : CommandEncoder, view : TextureView, r : Float, g : Float, b : Float, a : Float) -> RenderPass

CommandEncoder::begin_render_pass_color_depth

fn CommandEncoder::begin_render_pass_color_depth(self : CommandEncoder, color_view : TextureView, depth_view : TextureView) -> RenderPass

CommandEncoder::begin_render_pass_color_depth_u32

fn CommandEncoder::begin_render_pass_color_depth_u32(self : CommandEncoder, color_view : TextureView, depth_view : TextureView, color_load_op_u32? : UInt, color_store_op_u32? : UInt, color_clear_r_f32? : Float, color_clear_g_f32? : Float, color_clear_b_f32? : Float, color_clear_a_f32? : Float, depth_load_op_u32? : UInt, depth_store_op_u32? : UInt, depth_clear_value_f32? : Float, depth_read_only? : Bool, stencil_load_op_u32? : UInt, stencil_store_op_u32? : UInt, stencil_clear_value_u32? : UInt, stencil_read_only? : Bool) -> RenderPass

CommandEncoder::begin_render_pass_color_load

fn CommandEncoder::begin_render_pass_color_load(self : CommandEncoder, view : TextureView) -> RenderPass

CommandEncoder::begin_render_pass_color_occlusion

fn CommandEncoder::begin_render_pass_color_occlusion(self : CommandEncoder, view : TextureView, query_set : QuerySet) -> RenderPass

CommandEncoder::begin_render_pass_depth

fn CommandEncoder::begin_render_pass_depth(self : CommandEncoder, depth_view : TextureView) -> RenderPass

CommandEncoder::begin_render_pass_depth_u32

fn CommandEncoder::begin_render_pass_depth_u32(self : CommandEncoder, depth_view : TextureView, depth_load_op_u32? : UInt, depth_store_op_u32? : UInt, depth_clear_value_f32? : Float, depth_read_only? : Bool, stencil_load_op_u32? : UInt, stencil_store_op_u32? : UInt, stencil_clear_value_u32? : UInt, stencil_read_only? : Bool) -> RenderPass

CommandEncoder::begin_render_pass_desc_builder

fn CommandEncoder::begin_render_pass_desc_builder(self : CommandEncoder, builder : RenderPassDescBuilder) -> RenderPass raise RenderPassDescError

CommandEncoder::begin_render_pass_ptr

CommandEncoder::clear_buffer

fn CommandEncoder::clear_buffer(self : CommandEncoder, buffer : Buffer, offset : UInt64, size : UInt64) -> Unit

CommandEncoder::clear_buffer_raw

fn CommandEncoder::clear_buffer_raw(self : CommandEncoder, buffer : Buffer, offset : UInt64, size : UInt64) -> Unit

CommandEncoder::copy_buffer_to_buffer

fn CommandEncoder::copy_buffer_to_buffer(self : CommandEncoder, source : Buffer, source_offset : UInt64, destination : Buffer, destination_offset : UInt64, size : UInt64) -> Unit

CommandEncoder::copy_buffer_to_buffer_raw

fn CommandEncoder::copy_buffer_to_buffer_raw(self : CommandEncoder, source : Buffer, source_offset : UInt64, destination : Buffer, destination_offset : UInt64, size : UInt64) -> Unit

CommandEncoder::copy_buffer_to_texture_rgba8

fn CommandEncoder::copy_buffer_to_texture_rgba8(self : CommandEncoder, buffer : Buffer, texture : Texture, width : UInt, height : UInt) -> Unit

CommandEncoder::copy_buffer_to_texture_rgba8_mip_layer

fn CommandEncoder::copy_buffer_to_texture_rgba8_mip_layer(self : CommandEncoder, buffer : Buffer, texture : Texture, mip_level : UInt, array_layer : UInt, width : UInt, height : UInt) -> Unit

CommandEncoder::copy_texture_to_buffer_bytes_per_pixel

fn CommandEncoder::copy_texture_to_buffer_bytes_per_pixel(self : CommandEncoder, texture : Texture, buffer : Buffer, width : UInt, height : UInt, bytes_per_pixel : UInt) -> Unit

CommandEncoder::copy_texture_to_buffer_bytes_per_pixel_mip_layer

fn CommandEncoder::copy_texture_to_buffer_bytes_per_pixel_mip_layer(self : CommandEncoder, texture : Texture, mip_level : UInt, array_layer : UInt, buffer : Buffer, width : UInt, height : UInt, bytes_per_pixel : UInt) -> Unit

CommandEncoder::copy_texture_to_buffer_rgba8

fn CommandEncoder::copy_texture_to_buffer_rgba8(self : CommandEncoder, texture : Texture, buffer : Buffer, width : UInt, height : UInt) -> Unit

CommandEncoder::copy_texture_to_buffer_rgba8_mip_layer

fn CommandEncoder::copy_texture_to_buffer_rgba8_mip_layer(self : CommandEncoder, texture : Texture, mip_level : UInt, array_layer : UInt, buffer : Buffer, width : UInt, height : UInt) -> Unit

CommandEncoder::copy_texture_to_texture_rgba8

fn CommandEncoder::copy_texture_to_texture_rgba8(self : CommandEncoder, src : Texture, dst : Texture, width : UInt, height : UInt) -> Unit

CommandEncoder::copy_texture_to_texture_rgba8_mip_layer

fn CommandEncoder::copy_texture_to_texture_rgba8_mip_layer(self : CommandEncoder, src : Texture, src_mip_level : UInt, src_array_layer : UInt, dst : Texture, dst_mip_level : UInt, dst_array_layer : UInt, width : UInt, height : UInt) -> Unit

CommandEncoder::finish

CommandEncoder::insert_debug_marker

fn CommandEncoder::insert_debug_marker(self : CommandEncoder, label : String) -> Unit

CommandEncoder::pop_debug_group

fn CommandEncoder::pop_debug_group(self : CommandEncoder) -> Unit

CommandEncoder::pop_debug_group_raw

fn CommandEncoder::pop_debug_group_raw(self : CommandEncoder) -> Unit

CommandEncoder::push_debug_group

fn CommandEncoder::push_debug_group(self : CommandEncoder, label : String) -> Unit

CommandEncoder::release

fn CommandEncoder::release(self : CommandEncoder) -> Unit

CommandEncoder::release_raw

fn CommandEncoder::release_raw(self : CommandEncoder) -> Unit

CommandEncoder::resolve_query_set

fn CommandEncoder::resolve_query_set(self : CommandEncoder, query_set : QuerySet, first_query : UInt, query_count : UInt, destination : Buffer, destination_offset : UInt64) -> Unit

CommandEncoder::resolve_query_set_raw

fn CommandEncoder::resolve_query_set_raw(self : CommandEncoder, query_set : QuerySet, first_query : UInt, query_count : UInt, destination : Buffer, destination_offset : UInt64) -> Unit

CommandEncoder::set_label

fn CommandEncoder::set_label(self : CommandEncoder, label : String) -> Unit

CommandEncoder::write_timestamp

fn CommandEncoder::write_timestamp(self : CommandEncoder, query_set : QuerySet, query_index : UInt) -> Unit

CommandEncoder::write_timestamp_raw

fn CommandEncoder::write_timestamp_raw(self : CommandEncoder, query_set : QuerySet, query_index : UInt) -> Unit

CompilationInfo

pub struct CompilationInfo {
status_u32 : UInt
messages : Array[CompilationMessage]
}

CompilationMessage

pub struct CompilationMessage {
type_u32 : UInt
line_num_u64 : UInt64
line_pos_u64 : UInt64
offset_u64 : UInt64
length_u64 : UInt64
text : String
}

CompositeAlphaMode

pub struct CompositeAlphaMode {
raw : UInt
}

CompositeAlphaMode::from_u32

fn CompositeAlphaMode::from_u32(raw : UInt) -> CompositeAlphaMode

CompositeAlphaMode::to_u32

fn CompositeAlphaMode::to_u32(self : CompositeAlphaMode) -> UInt

ComputePass

ComputePass::add_ref

fn ComputePass::add_ref(self : ComputePass) -> ComputePass

ComputePass::add_ref_raw

fn ComputePass::add_ref_raw(self : ComputePass) -> Unit

ComputePass::begin_pipeline_statistics_query

fn ComputePass::begin_pipeline_statistics_query(self : ComputePass, query_set : QuerySet, query_index : UInt) -> Unit

ComputePass::begin_pipeline_statistics_query_raw

fn ComputePass::begin_pipeline_statistics_query_raw(self : ComputePass, query_set : QuerySet, query_index : UInt) -> Unit

ComputePass::dispatch_workgroups

fn ComputePass::dispatch_workgroups(self : ComputePass, x : UInt, y : UInt, z : UInt) -> Unit

ComputePass::dispatch_workgroups_indirect

fn ComputePass::dispatch_workgroups_indirect(self : ComputePass, indirect_buffer : Buffer, indirect_offset : UInt64) -> Unit

ComputePass::dispatch_workgroups_indirect_raw

fn ComputePass::dispatch_workgroups_indirect_raw(self : ComputePass, indirect_buffer : Buffer, indirect_offset : UInt64) -> Unit

ComputePass::dispatch_workgroups_raw

fn ComputePass::dispatch_workgroups_raw(self : ComputePass, workgroup_count_x : UInt, workgroup_count_y : UInt, workgroup_count_z : UInt) -> Unit

ComputePass::end

fn ComputePass::end(self : ComputePass) -> Unit

ComputePass::end_pipeline_statistics_query

fn ComputePass::end_pipeline_statistics_query(self : ComputePass) -> Unit

ComputePass::end_pipeline_statistics_query_raw

fn ComputePass::end_pipeline_statistics_query_raw(self : ComputePass) -> Unit

ComputePass::end_raw

fn ComputePass::end_raw(self : ComputePass) -> Unit

ComputePass::insert_debug_marker

fn ComputePass::insert_debug_marker(self : ComputePass, label : String) -> Unit

ComputePass::pop_debug_group

fn ComputePass::pop_debug_group(self : ComputePass) -> Unit

ComputePass::pop_debug_group_raw

fn ComputePass::pop_debug_group_raw(self : ComputePass) -> Unit

ComputePass::push_debug_group

fn ComputePass::push_debug_group(self : ComputePass, label : String) -> Unit

ComputePass::release

fn ComputePass::release(self : ComputePass) -> Unit

ComputePass::release_raw

fn ComputePass::release_raw(self : ComputePass) -> Unit

ComputePass::set_bind_group

fn ComputePass::set_bind_group(self : ComputePass, index : UInt, group : BindGroup, dynamic_offsets : Array[UInt]) -> Unit

ComputePass::set_bind_group0

fn ComputePass::set_bind_group0(self : ComputePass, group : BindGroup) -> Unit

ComputePass::set_immediates

fn ComputePass::set_immediates(self : ComputePass, offset : UInt, data : Bytes) -> Unit

ComputePass::set_label

fn ComputePass::set_label(self : ComputePass, label : String) -> Unit

ComputePass::set_pipeline

fn ComputePass::set_pipeline(self : ComputePass, pipeline : ComputePipeline) -> Unit

ComputePass::set_pipeline_raw

fn ComputePass::set_pipeline_raw(self : ComputePass, pipeline : ComputePipeline) -> Unit

ComputePass::write_timestamp

fn ComputePass::write_timestamp(self : ComputePass, query_set : QuerySet, query_index : UInt) -> Unit

ComputePass::write_timestamp_raw

fn ComputePass::write_timestamp_raw(self : ComputePass, query_set : QuerySet, query_index : UInt) -> Unit

ComputePipeline

ComputePipeline::add_ref

ComputePipeline::add_ref_raw

fn ComputePipeline::add_ref_raw(self : ComputePipeline) -> Unit

ComputePipeline::get_bind_group_layout

fn ComputePipeline::get_bind_group_layout(self : ComputePipeline, index : UInt) -> BindGroupLayout

ComputePipeline::get_bind_group_layout_raw

fn ComputePipeline::get_bind_group_layout_raw(self : ComputePipeline, group_index : UInt) -> BindGroupLayout

ComputePipeline::release

fn ComputePipeline::release(self : ComputePipeline) -> Unit

ComputePipeline::release_raw

fn ComputePipeline::release_raw(self : ComputePipeline) -> Unit

ComputePipeline::set_label

fn ComputePipeline::set_label(self : ComputePipeline, label : String) -> Unit

ComputePipelineDescBuilder

ComputePipelineDescBuilder::create_pipeline

ComputePipelineDescBuilder::free

ComputePipelineDescBuilder::last_error

ComputePipelineDescBuilder::new

ComputePipelineDescriptor builder.

The builder is MoonBit-managed. If you call finish_descriptor_ptr, it transfers the underlying descriptor out of the builder, and you must free the returned pointer via @c.compute_pipeline_descriptor_free(desc). create_pipeline(device) is the consuming high-level path and frees the builder automatically.

ComputePipelineDescBuilder::set_entry_point

fn ComputePipelineDescBuilder::set_entry_point(self : ComputePipelineDescBuilder, entry_point : String) -> Unit raise ComputePipelineDescError

Device

Device::add_ref

fn Device::add_ref(self : Device) -> Device

Device::add_ref_raw

fn Device::add_ref_raw(self : Device) -> Unit

Device::create_bind_group

Device::create_bind_group_layout

Device::create_bind_group_layout_empty

fn Device::create_bind_group_layout_empty(self : Device) -> BindGroupLayout

Device::create_bind_group_layout_ptr

Device::create_bind_group_layout_sampler_filtering

fn Device::create_bind_group_layout_sampler_filtering(self : Device) -> BindGroupLayout

Device::create_bind_group_layout_sampler_texture_2d

fn Device::create_bind_group_layout_sampler_texture_2d(self : Device) -> BindGroupLayout

Device::create_bind_group_layout_storage_buffer

fn Device::create_bind_group_layout_storage_buffer(self : Device) -> BindGroupLayout

Device::create_bind_group_layout_storage_texture_rgba8_writeonly

fn Device::create_bind_group_layout_storage_texture_rgba8_writeonly(self : Device) -> BindGroupLayout

Device::create_bind_group_layout_texture_2d_float

fn Device::create_bind_group_layout_texture_2d_float(self : Device) -> BindGroupLayout

Device::create_bind_group_layout_uniform_buffer

fn Device::create_bind_group_layout_uniform_buffer(self : Device) -> BindGroupLayout

Device::create_bind_group_layout_uniform_buffer_dynamic

fn Device::create_bind_group_layout_uniform_buffer_dynamic(self : Device) -> BindGroupLayout

Device::create_bind_group_ptr

Device::create_bind_group_sampler

fn Device::create_bind_group_sampler(self : Device, bind_group_layout : BindGroupLayout, sampler : Sampler) -> BindGroup

Device::create_bind_group_sampler_texture_2d

fn Device::create_bind_group_sampler_texture_2d(self : Device, bind_group_layout : BindGroupLayout, sampler : Sampler, view : TextureView) -> BindGroup

Device::create_bind_group_storage_buffer

fn Device::create_bind_group_storage_buffer(self : Device, bind_group_layout : BindGroupLayout, buffer : Buffer) -> BindGroup

Device::create_bind_group_storage_texture_2d

fn Device::create_bind_group_storage_texture_2d(self : Device, bind_group_layout : BindGroupLayout, view : TextureView) -> BindGroup

Device::create_bind_group_texture_2d

fn Device::create_bind_group_texture_2d(self : Device, bind_group_layout : BindGroupLayout, view : TextureView) -> BindGroup

Device::create_bind_group_uniform_buffer

fn Device::create_bind_group_uniform_buffer(self : Device, bind_group_layout : BindGroupLayout, buffer : Buffer) -> BindGroup

Device::create_bind_group_uniform_buffer_16

fn Device::create_bind_group_uniform_buffer_16(self : Device, bind_group_layout : BindGroupLayout, buffer : Buffer) -> BindGroup

Device::create_buffer

fn Device::create_buffer(self : Device, size~ : UInt64, usage~ : BufferUsage, mapped_at_creation? : Bool) -> Buffer

Device::create_buffer_init

fn Device::create_buffer_init(self : Device, usage~ : BufferUsage, data : Bytes) -> Buffer

Device::create_buffer_ptr

Device::create_buffer_raw

Device::create_command_encoder

fn Device::create_command_encoder(self : Device) -> CommandEncoder

Device::create_command_encoder_ptr

Device::create_command_encoder_raw

Device::create_compute_pipeline

fn Device::create_compute_pipeline(self : Device, shader_module : ShaderModule) -> ComputePipeline

Device::create_compute_pipeline_async_sync_ptr

fn Device::create_compute_pipeline_async_sync_ptr(self : Device, instance : Instance, descriptor :
WGPUComputePipelineDescriptorPtr
) -> ComputePipeline

Device::create_compute_pipeline_async_sync_ptr_or_raise

fn Device::create_compute_pipeline_async_sync_ptr_or_raise(self : Device, instance : Instance, descriptor :
WGPUComputePipelineDescriptorPtr
) -> ComputePipeline raise OptionalSymbolError

Device::create_compute_pipeline_entry

fn Device::create_compute_pipeline_entry(self : Device, shader_module : ShaderModule, entry_point : String) -> ComputePipeline raise ComputePipelineDescError

Device::create_compute_pipeline_ptr

Device::create_compute_pipeline_raw

Device::create_compute_pipeline_with_layout

fn Device::create_compute_pipeline_with_layout(self : Device, layout : PipelineLayout, shader_module : ShaderModule) -> ComputePipeline

Device::create_compute_pipeline_with_layout_entry

fn Device::create_compute_pipeline_with_layout_entry(self : Device, layout : PipelineLayout, shader_module : ShaderModule, entry_point : String) -> ComputePipeline raise ComputePipelineDescError

Device::create_pipeline_layout

Device::create_pipeline_layout_1

fn Device::create_pipeline_layout_1(self : Device, bind_group_layout : BindGroupLayout) -> PipelineLayout

Device::create_pipeline_layout_2

fn Device::create_pipeline_layout_2(self : Device, bind_group_layout0 : BindGroupLayout, bind_group_layout1 : BindGroupLayout) -> PipelineLayout

Device::create_pipeline_layout_immediates

fn Device::create_pipeline_layout_immediates(self : Device, stages : ShaderStage, start : UInt, end : UInt) -> PipelineLayout

Device::create_pipeline_layout_immediates_many

fn Device::create_pipeline_layout_immediates_many(self : Device, first_stages : ShaderStage, first_start : UInt, first_end : UInt, other_ranges : Array[(ShaderStage, UInt, UInt)]) -> PipelineLayout

Device::create_pipeline_layout_many

fn Device::create_pipeline_layout_many(self : Device, bind_group_layouts : Array[BindGroupLayout]) -> PipelineLayout

Device::create_pipeline_layout_ptr

Device::create_pipeline_layout_with_immediates

fn Device::create_pipeline_layout_with_immediates(self : Device, bind_group_layouts : Array[BindGroupLayout], ranges : Array[(ShaderStage, UInt, UInt)]) -> PipelineLayout

Device::create_query_set

Device::create_query_set_occlusion

fn Device::create_query_set_occlusion(self : Device, count : UInt) -> QuerySet

Device::create_query_set_pipeline_statistics

fn Device::create_query_set_pipeline_statistics(self : Device, count : UInt, statistic_name : UInt) -> QuerySet

Device::create_query_set_pipeline_statistics_many

fn Device::create_query_set_pipeline_statistics_many(self : Device, count : UInt, first_statistic_name_u32 : UInt, other_statistic_names_u32 : Array[UInt]) -> QuerySet

Device::create_query_set_ptr

Device::create_query_set_timestamp

fn Device::create_query_set_timestamp(self : Device, count : UInt) -> QuerySet

Device::create_render_bundle_encoder

Device::create_render_bundle_encoder_ptr

Device::create_render_bundle_encoder_rgba8

fn Device::create_render_bundle_encoder_rgba8(self : Device) -> RenderBundleEncoder

Device::create_render_pipeline

Device::create_render_pipeline_async_sync_ptr

fn Device::create_render_pipeline_async_sync_ptr(self : Device, instance : Instance, descriptor :
WGPURenderPipelineDescriptorPtr
) -> RenderPipeline

Device::create_render_pipeline_async_sync_ptr_or_raise

fn Device::create_render_pipeline_async_sync_ptr_or_raise(self : Device, instance : Instance, descriptor :
WGPURenderPipelineDescriptorPtr
) -> RenderPipeline raise OptionalSymbolError

Device::create_render_pipeline_color_format

fn Device::create_render_pipeline_color_format(self : Device, shader_module : ShaderModule, format : TextureFormat) -> RenderPipeline

Device::create_render_pipeline_color_format_alpha_blend

fn Device::create_render_pipeline_color_format_alpha_blend(self : Device, shader_module : ShaderModule, format : TextureFormat) -> RenderPipeline

Device::create_render_pipeline_color_format_entries

fn Device::create_render_pipeline_color_format_entries(self : Device, shader_module : ShaderModule, format : TextureFormat, vs_entry? : String, fs_entry? : String, alpha_blend? : Bool, depth? : Bool, color_write_mask? : UInt64) -> RenderPipeline

Device::create_render_pipeline_ptr

Device::create_render_pipeline_rgba8

fn Device::create_render_pipeline_rgba8(self : Device, shader_module : ShaderModule) -> RenderPipeline

Device::create_render_pipeline_rgba8_alpha_blend

fn Device::create_render_pipeline_rgba8_alpha_blend(self : Device, shader_module : ShaderModule) -> RenderPipeline

Device::create_render_pipeline_rgba8_depth

fn Device::create_render_pipeline_rgba8_depth(self : Device, shader_module : ShaderModule) -> RenderPipeline

Device::create_render_pipeline_rgba8_mrt2

fn Device::create_render_pipeline_rgba8_mrt2(self : Device, shader_module : ShaderModule) -> RenderPipeline

Device::create_render_pipeline_rgba8_pos2

fn Device::create_render_pipeline_rgba8_pos2(self : Device, shader_module : ShaderModule) -> RenderPipeline

Device::create_render_pipeline_rgba8_pos2_with_layout

fn Device::create_render_pipeline_rgba8_pos2_with_layout(self : Device, layout : PipelineLayout, shader_module : ShaderModule) -> RenderPipeline

Device::create_render_pipeline_rgba8_with_layout

fn Device::create_render_pipeline_rgba8_with_layout(self : Device, layout : PipelineLayout, shader_module : ShaderModule) -> RenderPipeline

Device::create_sampler

Device::create_sampler_linear_clamp

fn Device::create_sampler_linear_clamp(self : Device) -> Sampler

Device::create_sampler_linear_mirror_repeat

fn Device::create_sampler_linear_mirror_repeat(self : Device) -> Sampler

Device::create_sampler_linear_repeat

fn Device::create_sampler_linear_repeat(self : Device) -> Sampler

Device::create_sampler_nearest_clamp

fn Device::create_sampler_nearest_clamp(self : Device) -> Sampler

Device::create_sampler_nearest_mirror_repeat

fn Device::create_sampler_nearest_mirror_repeat(self : Device) -> Sampler

Device::create_sampler_nearest_repeat

fn Device::create_sampler_nearest_repeat(self : Device) -> Sampler

Device::create_sampler_ptr

Device::create_sampler_u32

fn Device::create_sampler_u32(self : Device, address_mode_u_u32 : UInt, address_mode_v_u32 : UInt, address_mode_w_u32 : UInt, mag_filter_u32 : UInt, min_filter_u32 : UInt, mipmap_filter_u32 : UInt, lod_min_clamp_f32? : Float, lod_max_clamp_f32? : Float, compare_u32? : UInt, max_anisotropy_u32? : UInt) -> Sampler

Device::create_shader_module

Device::create_shader_module_glsl

fn Device::create_shader_module_glsl(self : Device, stage_u64 : UInt64, code : String) -> ShaderModule

Device::create_shader_module_ptr

Device::create_shader_module_spir_v

Device::create_shader_module_spirv

fn Device::create_shader_module_spirv(self : Device, spirv_le_bytes : Bytes) -> ShaderModule

Device::create_shader_module_wgsl

fn Device::create_shader_module_wgsl(self : Device, code : String) -> ShaderModule

Device::create_texture

Device::create_texture_depth24plus_2d

fn Device::create_texture_depth24plus_2d(self : Device, width : UInt, height : UInt) -> Texture

Device::create_texture_ptr

Device::create_texture_rgba8_2d

fn Device::create_texture_rgba8_2d(self : Device, width : UInt, height : UInt) -> Texture

Device::create_texture_rgba8_2d_array

fn Device::create_texture_rgba8_2d_array(self : Device, width : UInt, height : UInt, layers : UInt, mip_level_count : UInt) -> Texture

Device::create_texture_rgba8_2d_array_with_usage

fn Device::create_texture_rgba8_2d_array_with_usage(self : Device, width : UInt, height : UInt, layers : UInt, mip_level_count : UInt, usage : TextureUsage) -> Texture

Device::create_texture_rgba8_2d_with_usage

fn Device::create_texture_rgba8_2d_with_usage(self : Device, width : UInt, height : UInt, usage : TextureUsage) -> Texture

Device::create_texture_u32

fn Device::create_texture_u32(self : Device, width : UInt, height : UInt, depth_or_array_layers : UInt, usage : TextureUsage, dimension : TextureDimension, format : TextureFormat, mip_level_count? : UInt, sample_count? : UInt, view_formats? : Array[TextureFormat]) -> Texture

Device::destroy

fn Device::destroy(self : Device) -> Unit

Device::destroy_raw

fn Device::destroy_raw(self : Device) -> Unit

Device::get_features

Device::get_lost_future

Device::get_queue

fn Device::get_queue(self : Device) -> Queue

Device::get_supported_read_only_binding_type_u32

fn Device::get_supported_read_only_binding_type_u32(self : Device, required_storage_buffers_per_shader_stage : UInt) -> UInt

Device::has_feature

fn Device::has_feature(self : Device, feature :
WGPUFeatureName
) -> Bool

Device::has_feature_experimental_mesh_shader

fn Device::has_feature_experimental_mesh_shader(self : Device) -> Bool

Device::has_feature_experimental_mesh_shader_points

fn Device::has_feature_experimental_mesh_shader_points(self : Device) -> Bool

Device::has_feature_native_buffer_binding_array

fn Device::has_feature_native_buffer_binding_array(self : Device) -> Bool

Device::has_feature_native_clear_texture

fn Device::has_feature_native_clear_texture(self : Device) -> Bool

Device::has_feature_native_conservative_rasterization

fn Device::has_feature_native_conservative_rasterization(self : Device) -> Bool

Device::has_feature_native_immediates

fn Device::has_feature_native_immediates(self : Device) -> Bool

Device::has_feature_native_mappable_primary_buffers

fn Device::has_feature_native_mappable_primary_buffers(self : Device) -> Bool

Device::has_feature_native_multi_draw_indirect_count

fn Device::has_feature_native_multi_draw_indirect_count(self : Device) -> Bool

Device::has_feature_native_multiview

fn Device::has_feature_native_multiview(self : Device) -> Bool

Device::has_feature_native_partially_bound_binding_array

fn Device::has_feature_native_partially_bound_binding_array(self : Device) -> Bool

Device::has_feature_native_pipeline_statistics_query

fn Device::has_feature_native_pipeline_statistics_query(self : Device) -> Bool

Device::has_feature_native_polygon_mode_line

fn Device::has_feature_native_polygon_mode_line(self : Device) -> Bool

Device::has_feature_native_polygon_mode_point

fn Device::has_feature_native_polygon_mode_point(self : Device) -> Bool

Device::has_feature_native_ray_query

fn Device::has_feature_native_ray_query(self : Device) -> Bool

Device::has_feature_native_sampled_texture_and_storage_buffer_array_non_uniform_indexing

fn Device::has_feature_native_sampled_texture_and_storage_buffer_array_non_uniform_indexing(self : Device) -> Bool

Device::has_feature_native_shader_early_depth_test

fn Device::has_feature_native_shader_early_depth_test(self : Device) -> Bool

Device::has_feature_native_shader_f64

fn Device::has_feature_native_shader_f64(self : Device) -> Bool

Device::has_feature_native_shader_float32_atomic

fn Device::has_feature_native_shader_float32_atomic(self : Device) -> Bool

Device::has_feature_native_shader_i16

fn Device::has_feature_native_shader_i16(self : Device) -> Bool

Device::has_feature_native_shader_int64

fn Device::has_feature_native_shader_int64(self : Device) -> Bool

Device::has_feature_native_shader_int64_atomic_all_ops

fn Device::has_feature_native_shader_int64_atomic_all_ops(self : Device) -> Bool

Device::has_feature_native_shader_int64_atomic_min_max

fn Device::has_feature_native_shader_int64_atomic_min_max(self : Device) -> Bool

Device::has_feature_native_shader_primitive_index

fn Device::has_feature_native_shader_primitive_index(self : Device) -> Bool

Device::has_feature_native_spirv_shader_passthrough

fn Device::has_feature_native_spirv_shader_passthrough(self : Device) -> Bool

Device::has_feature_native_storage_resource_binding_array

fn Device::has_feature_native_storage_resource_binding_array(self : Device) -> Bool

Device::has_feature_native_storage_texture_array_non_uniform_indexing

fn Device::has_feature_native_storage_texture_array_non_uniform_indexing(self : Device) -> Bool

Device::has_feature_native_subgroup

fn Device::has_feature_native_subgroup(self : Device) -> Bool

Device::has_feature_native_subgroup_barrier

fn Device::has_feature_native_subgroup_barrier(self : Device) -> Bool

Device::has_feature_native_subgroup_vertex

fn Device::has_feature_native_subgroup_vertex(self : Device) -> Bool

Device::has_feature_native_texture_adapter_specific_format_features

fn Device::has_feature_native_texture_adapter_specific_format_features(self : Device) -> Bool

Device::has_feature_native_texture_atomic

fn Device::has_feature_native_texture_atomic(self : Device) -> Bool

Device::has_feature_native_texture_binding_array

fn Device::has_feature_native_texture_binding_array(self : Device) -> Bool

Device::has_feature_native_texture_compression_astc_hdr

fn Device::has_feature_native_texture_compression_astc_hdr(self : Device) -> Bool

Device::has_feature_native_texture_format16bit_norm

fn Device::has_feature_native_texture_format16bit_norm(self : Device) -> Bool

Device::has_feature_native_texture_format_nv12

fn Device::has_feature_native_texture_format_nv12(self : Device) -> Bool

Device::has_feature_native_texture_int64_atomic

fn Device::has_feature_native_texture_int64_atomic(self : Device) -> Bool

Device::has_feature_native_timestamp_query_inside_encoders

fn Device::has_feature_native_timestamp_query_inside_encoders(self : Device) -> Bool

Device::has_feature_native_timestamp_query_inside_passes

fn Device::has_feature_native_timestamp_query_inside_passes(self : Device) -> Bool

Device::has_feature_native_u32

fn Device::has_feature_native_u32(self : Device, native_feature_u32 : UInt) -> Bool

Device::has_feature_native_vertex_attribute64bit

fn Device::has_feature_native_vertex_attribute64bit(self : Device) -> Bool

Device::has_feature_native_vertex_writable_storage

fn Device::has_feature_native_vertex_writable_storage(self : Device) -> Bool

Device::has_feature_timestamp_query

fn Device::has_feature_timestamp_query(self : Device) -> Bool

Device::has_feature_u32

fn Device::has_feature_u32(self : Device, feature_u32 : UInt) -> Bool

Device::info_adapter_type_u32

fn Device::info_adapter_type_u32(self : Device) -> UInt

Device::info_architecture

fn Device::info_architecture(self : Device) -> String

Device::info_backend_type_u32

fn Device::info_backend_type_u32(self : Device) -> UInt

Device::info_description

fn Device::info_description(self : Device) -> String

Device::info_device

fn Device::info_device(self : Device) -> String

Device::info_device_id_u32

fn Device::info_device_id_u32(self : Device) -> UInt

Device::info_vendor

fn Device::info_vendor(self : Device) -> String

Device::info_vendor_id_u32

fn Device::info_vendor_id_u32(self : Device) -> UInt

Device::limits_max_bind_groups_plus_vertex_buffers_u32

fn Device::limits_max_bind_groups_plus_vertex_buffers_u32(self : Device) -> UInt

Device::limits_max_bind_groups_u32

fn Device::limits_max_bind_groups_u32(self : Device) -> UInt

Device::limits_max_binding_array_elements_per_shader_stage_u32

fn Device::limits_max_binding_array_elements_per_shader_stage_u32(self : Device) -> UInt

Device::limits_max_binding_array_sampler_elements_per_shader_stage_u32

fn Device::limits_max_binding_array_sampler_elements_per_shader_stage_u32(self : Device) -> UInt

Device::limits_max_bindings_per_bind_group_u32

fn Device::limits_max_bindings_per_bind_group_u32(self : Device) -> UInt

Device::limits_max_buffer_size_u64

fn Device::limits_max_buffer_size_u64(self : Device) -> UInt64

Device::limits_max_color_attachment_bytes_per_sample_u32

fn Device::limits_max_color_attachment_bytes_per_sample_u32(self : Device) -> UInt

Device::limits_max_color_attachments_u32

fn Device::limits_max_color_attachments_u32(self : Device) -> UInt

Device::limits_max_compute_invocations_per_workgroup_u32

fn Device::limits_max_compute_invocations_per_workgroup_u32(self : Device) -> UInt

Device::limits_max_compute_workgroup_size_x_u32

fn Device::limits_max_compute_workgroup_size_x_u32(self : Device) -> UInt

Device::limits_max_compute_workgroup_size_y_u32

fn Device::limits_max_compute_workgroup_size_y_u32(self : Device) -> UInt

Device::limits_max_compute_workgroup_size_z_u32

fn Device::limits_max_compute_workgroup_size_z_u32(self : Device) -> UInt

Device::limits_max_compute_workgroup_storage_size_u32

fn Device::limits_max_compute_workgroup_storage_size_u32(self : Device) -> UInt

Device::limits_max_compute_workgroups_per_dimension_u32

fn Device::limits_max_compute_workgroups_per_dimension_u32(self : Device) -> UInt

Device::limits_max_dynamic_storage_buffers_per_pipeline_layout_u32

fn Device::limits_max_dynamic_storage_buffers_per_pipeline_layout_u32(self : Device) -> UInt

Device::limits_max_dynamic_uniform_buffers_per_pipeline_layout_u32

fn Device::limits_max_dynamic_uniform_buffers_per_pipeline_layout_u32(self : Device) -> UInt

Device::limits_max_immediate_size_u32

fn Device::limits_max_immediate_size_u32(self : Device) -> UInt

Device::limits_max_inter_stage_shader_variables_u32

fn Device::limits_max_inter_stage_shader_variables_u32(self : Device) -> UInt

Device::limits_max_non_sampler_bindings_u32

fn Device::limits_max_non_sampler_bindings_u32(self : Device) -> UInt

Device::limits_max_sampled_textures_per_shader_stage_u32

fn Device::limits_max_sampled_textures_per_shader_stage_u32(self : Device) -> UInt

Device::limits_max_samplers_per_shader_stage_u32

fn Device::limits_max_samplers_per_shader_stage_u32(self : Device) -> UInt

Device::limits_max_storage_buffer_binding_size_u64

fn Device::limits_max_storage_buffer_binding_size_u64(self : Device) -> UInt64

Device::limits_max_storage_buffers_per_shader_stage_u32

fn Device::limits_max_storage_buffers_per_shader_stage_u32(self : Device) -> UInt

Device::limits_max_storage_textures_per_shader_stage_u32

fn Device::limits_max_storage_textures_per_shader_stage_u32(self : Device) -> UInt

Device::limits_max_texture_array_layers_u32

fn Device::limits_max_texture_array_layers_u32(self : Device) -> UInt

Device::limits_max_texture_dimension_1d_u32

fn Device::limits_max_texture_dimension_1d_u32(self : Device) -> UInt

Device::limits_max_texture_dimension_2d_u32

fn Device::limits_max_texture_dimension_2d_u32(self : Device) -> UInt

Device::limits_max_texture_dimension_3d_u32

fn Device::limits_max_texture_dimension_3d_u32(self : Device) -> UInt

Device::limits_max_uniform_buffer_binding_size_u64

fn Device::limits_max_uniform_buffer_binding_size_u64(self : Device) -> UInt64

Device::limits_max_uniform_buffers_per_shader_stage_u32

fn Device::limits_max_uniform_buffers_per_shader_stage_u32(self : Device) -> UInt

Device::limits_max_vertex_attributes_u32

fn Device::limits_max_vertex_attributes_u32(self : Device) -> UInt

Device::limits_max_vertex_buffer_array_stride_u32

fn Device::limits_max_vertex_buffer_array_stride_u32(self : Device) -> UInt

Device::limits_max_vertex_buffers_u32

fn Device::limits_max_vertex_buffers_u32(self : Device) -> UInt

Device::limits_min_storage_buffer_offset_alignment_u32

fn Device::limits_min_storage_buffer_offset_alignment_u32(self : Device) -> UInt

Device::limits_min_uniform_buffer_offset_alignment_u32

fn Device::limits_min_uniform_buffer_offset_alignment_u32(self : Device) -> UInt

Device::missing_known_rust_features_u64

fn Device::missing_known_rust_features_u64(self : Device, required_features_u64 : UInt64) -> UInt64

Device::missing_rust_features_u64

fn Device::missing_rust_features_u64(self : Device, required_features_u64 : UInt64) -> UInt64

Returns the subset of required Rust wgpu::Features bits that are missing.

FEATURES_TEXTURE_ATOMIC and FEATURES_TEXTURE_INT64_ATOMIC are queryable through native feature ids allocated by wgpu-native trunk. The supported release may still report them missing until an official release exposes the full R64Uint storage-texture C API.

Device::poll

fn Device::poll(self : Device, wait? : Bool) -> Bool

Device::poll_raw

fn Device::poll_raw(self : Device, wait : Bool, submission_index :
WGPUSubmissionIndexPtr
) -> Bool

Device::pop_error_scope_sync

fn Device::pop_error_scope_sync(self : Device, instance : Instance) -> UInt

Device::pop_error_scope_sync_result

fn Device::pop_error_scope_sync_result(self : Device, instance : Instance) -> ErrorScopeResult

Device::push_error_scope

fn Device::push_error_scope(self : Device, filter_u32 : UInt) -> Unit

Device::push_error_scope_raw

fn Device::push_error_scope_raw(self : Device, filter :
WGPUErrorFilter
) -> Unit

Device::queue

fn Device::queue(self : Device) -> Queue

Device::raw_handle

Device::release

fn Device::release(self : Device) -> Unit

Device::release_raw

fn Device::release_raw(self : Device) -> Unit

Device::set_label

fn Device::set_label(self : Device, label : String) -> Unit

Device::supported_feature_u32_at

fn Device::supported_feature_u32_at(self : Device, index : UInt64) -> UInt

Device::supported_features_contains_u32

fn Device::supported_features_contains_u32(self : Device, feature_u32 : UInt) -> Bool

Device::supported_features_count_u64

fn Device::supported_features_count_u64(self : Device) -> UInt64

Device::supported_rust_features_u64

fn Device::supported_rust_features_u64(self : Device) -> UInt64

Device::supports_known_rust_features_u64

fn Device::supports_known_rust_features_u64(self : Device, required_features_u64 : UInt64) -> Bool

Device::supports_read_only_storage_buffer_binding

fn Device::supports_read_only_storage_buffer_binding(self : Device, required_storage_buffers_per_shader_stage : UInt) -> Bool

Device::supports_rust_features_u64

fn Device::supports_rust_features_u64(self : Device, required_features_u64 : UInt64) -> Bool

Device::take_lost_reason

fn Device::take_lost_reason(self : Device) -> UInt

Device::unknown_rust_features_u64

fn Device::unknown_rust_features_u64(self : Device, required_features_u64 : UInt64) -> UInt64

Device::wait_lost_reason_sync

fn Device::wait_lost_reason_sync(self : Device, instance : Instance) -> UInt

ErrorScopeResult

pub struct ErrorScopeResult {
error_type : UInt
message : String
}

GlobalReport

GlobalReport::hub_bind_group_layouts_num_kept_from_user

fn GlobalReport::hub_bind_group_layouts_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_bind_group_layouts_num_released_from_user

fn GlobalReport::hub_bind_group_layouts_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_bind_groups_num_kept_from_user

fn GlobalReport::hub_bind_groups_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_bind_groups_num_released_from_user

fn GlobalReport::hub_bind_groups_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_buffers_num_kept_from_user

fn GlobalReport::hub_buffers_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_buffers_num_released_from_user

fn GlobalReport::hub_buffers_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_command_buffers_num_kept_from_user

fn GlobalReport::hub_command_buffers_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_command_buffers_num_released_from_user

fn GlobalReport::hub_command_buffers_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_compute_pipelines_num_kept_from_user

fn GlobalReport::hub_compute_pipelines_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_compute_pipelines_num_released_from_user

fn GlobalReport::hub_compute_pipelines_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_devices_element_size

fn GlobalReport::hub_devices_element_size(self : GlobalReport) -> UInt64

GlobalReport::hub_devices_num_allocated

fn GlobalReport::hub_devices_num_allocated(self : GlobalReport) -> UInt64

GlobalReport::hub_devices_num_kept_from_user

fn GlobalReport::hub_devices_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_devices_num_released_from_user

fn GlobalReport::hub_devices_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_pipeline_layouts_num_kept_from_user

fn GlobalReport::hub_pipeline_layouts_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_pipeline_layouts_num_released_from_user

fn GlobalReport::hub_pipeline_layouts_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_queues_num_kept_from_user

fn GlobalReport::hub_queues_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_queues_num_released_from_user

fn GlobalReport::hub_queues_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_render_pipelines_num_kept_from_user

fn GlobalReport::hub_render_pipelines_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_render_pipelines_num_released_from_user

fn GlobalReport::hub_render_pipelines_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_samplers_num_kept_from_user

fn GlobalReport::hub_samplers_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_samplers_num_released_from_user

fn GlobalReport::hub_samplers_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_shader_modules_num_kept_from_user

fn GlobalReport::hub_shader_modules_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_shader_modules_num_released_from_user

fn GlobalReport::hub_shader_modules_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_texture_views_num_kept_from_user

fn GlobalReport::hub_texture_views_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_texture_views_num_released_from_user

fn GlobalReport::hub_texture_views_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_textures_num_kept_from_user

fn GlobalReport::hub_textures_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::hub_textures_num_released_from_user

fn GlobalReport::hub_textures_num_released_from_user(self : GlobalReport) -> UInt64

GlobalReport::release

fn GlobalReport::release(self : GlobalReport) -> Unit

GlobalReport::surfaces_element_size

fn GlobalReport::surfaces_element_size(self : GlobalReport) -> UInt64

GlobalReport::surfaces_num_allocated

fn GlobalReport::surfaces_num_allocated(self : GlobalReport) -> UInt64

GlobalReport::surfaces_num_kept_from_user

fn GlobalReport::surfaces_num_kept_from_user(self : GlobalReport) -> UInt64

GlobalReport::surfaces_num_released_from_user

fn GlobalReport::surfaces_num_released_from_user(self : GlobalReport) -> UInt64

Instance

Instance::add_ref

fn Instance::add_ref(self : Instance) -> Instance

Instance::add_ref_raw

fn Instance::add_ref_raw(self : Instance) -> Unit

Instance::create

fn Instance::create() -> Instance raise WgpuError

Instance::create_surface

Instance::create_surface_android_native_window

fn Instance::create_surface_android_native_window(self : Instance, window :
OpaquePtr
) -> Surface

Create a surface from Android handle (ANativeWindow*).

Instance::create_surface_macos_ns_view

fn Instance::create_surface_macos_ns_view(self : Instance, ns_view :
OpaquePtr
) -> Surface raise SurfaceCreateError

Create a macOS Metal surface from an NSView*.

The view remains host-owned. The returned Surface retains the attached CAMetalLayer and releases that retain in Surface::release.

Instance::create_surface_macos_ns_view_u64

fn Instance::create_surface_macos_ns_view_u64(self : Instance, ns_view : UInt64) -> Surface raise SurfaceCreateError

Create a macOS Metal surface from an NSView* address stored as UInt64.

This compatibility entry is intended for window packages that expose native view pointers as integer handles. The value must be an NSView* address.

Instance::create_surface_metal_layer

fn Instance::create_surface_metal_layer(self : Instance) -> Surface

Instance::create_surface_swap_chain_panel

fn Instance::create_surface_swap_chain_panel(self : Instance, panel_native :
OpaquePtr
) -> Surface

Create a surface from Windows XAML SwapChainPanel native handle.

Instance::create_surface_wayland

Create a surface from Wayland handles (wl_display*, wl_surface*).

This is intended for Linux + Vulkan setups. The pointers are passed through as opaque handles (you manage their lifetime on the host side).

Instance::create_surface_windows_hwnd

Create a surface from Windows handles (HINSTANCE, HWND).

The pointers are passed through as opaque handles (you manage their lifetime on the host side).

Instance::create_surface_xcb

fn Instance::create_surface_xcb(self : Instance, connection :
OpaquePtr
, window : UInt) -> Surface

Create a surface from XCB handles (xcb_connection_t*, xcb_window_t).

Instance::create_surface_xlib

fn Instance::create_surface_xlib(self : Instance, display :
OpaquePtr
, window : UInt64) -> Surface

Create a surface from Xlib handles (Display*, Window).

Instance::create_with_extras_u32

fn Instance::create_with_extras_u32(backends_u64? : UInt64, flags_u32? : UInt, dx12_shader_compiler_u32? : UInt, gles3_minor_version_u32? : UInt, gl_fence_behaviour_u32? : UInt, dxc_max_shader_model_u32? : UInt, dx12_presentation_system_u32? : UInt, dxc_path? : String) -> Instance raise WgpuError

Create an instance with explicit native extras.

dxc_path is currently reserved and behaves as a documented no-op because published upstream binaries do not share a stable WGPUInstanceExtras layout for that field yet.

Instance::enumerate_adapters_count_metal

fn Instance::enumerate_adapters_count_metal(self : Instance) -> UInt64

Instance::enumerate_adapters_count_vulkan

fn Instance::enumerate_adapters_count_vulkan(self : Instance) -> UInt64

Instance::generate_report

fn Instance::generate_report(self : Instance) -> GlobalReport

Instance::has_wgsl_language_feature

Instance::process_events

fn Instance::process_events(self : Instance) -> Unit

Instance::process_events_raw

fn Instance::process_events_raw(self : Instance) -> Unit

Instance::raw_handle

Instance::release

fn Instance::release(self : Instance) -> Unit

Instance::release_raw

fn Instance::release_raw(self : Instance) -> Unit

Instance::request_adapter_async_adapter

fn Instance::request_adapter_async_adapter(self : Instance, future_id : UInt64) -> Adapter

Instance::request_adapter_async_clear

fn Instance::request_adapter_async_clear(self : Instance, future_id : UInt64) -> Unit

Instance::request_adapter_async_message

fn Instance::request_adapter_async_message(self : Instance, future_id : UInt64) -> String

Instance::request_adapter_async_status_u32

fn Instance::request_adapter_async_status_u32(self : Instance, future_id : UInt64) -> UInt

Instance::request_adapter_async_take_or_raise

fn Instance::request_adapter_async_take_or_raise(self : Instance, future_id : UInt64) -> Adapter raise WgpuError

Instance::request_adapter_future_id_u64

fn Instance::request_adapter_future_id_u64(self : Instance, options? :
WGPURequestAdapterOptionsPtr
) -> UInt64

Instance::request_adapter_sync

fn Instance::request_adapter_sync(self : Instance) -> Adapter raise WgpuError

Instance::request_adapter_sync_options_surface_u32

fn Instance::request_adapter_sync_options_surface_u32(self : Instance, surface : Surface, feature_level_u32? : UInt, power_preference_u32? : UInt, force_fallback_adapter? : Bool, backend_type_u32? : UInt) -> Adapter raise WgpuError

Instance::request_adapter_sync_options_u32

fn Instance::request_adapter_sync_options_u32(self : Instance, feature_level_u32? : UInt, power_preference_u32? : UInt, force_fallback_adapter? : Bool, backend_type_u32? : UInt) -> Adapter raise WgpuError

Instance::request_adapter_sync_ptr

Instance::wait_any

Instance::wait_any_one

fn Instance::wait_any_one(self : Instance, future_id : UInt64, timeout_ns? : UInt64) -> WaitAnyResult

Instance::wait_any_one_or_raise

fn Instance::wait_any_one_or_raise(self : Instance, future_id : UInt64, timeout_ns? : UInt64) -> WaitAnyResult raise WaitAnyError

Instance::wgpu_generate_report

fn Instance::wgpu_generate_report(self : Instance, report :
WGPUGlobalReportPtr
) -> Unit

Instance::wgsl_language_features_count_u64

fn Instance::wgsl_language_features_count_u64(self : Instance) -> UInt64

Instance::with_device_queue_auto_release

fn Instance::with_device_queue_auto_release(self : Instance, run : (Device, Queue, AutoReleasePool) -> Unit raise) -> Unit raise

Request a default adapter/device/queue stack and an auto-release pool.

Resources tracked in pool are borrowed for the callback scope. Do not release them manually; the helper releases the pool before unwinding or returning to the caller.

Instance::with_device_queue_managed

fn Instance::with_device_queue_managed(self : Instance, run : (ManagedDevice, ManagedQueue) -> Unit raise) -> Unit raise

Instance::with_device_queue_sync

fn Instance::with_device_queue_sync(self : Instance, run : (Device, Queue) -> Unit raise) -> Unit raise

Request a default adapter/device/queue stack for the duration of run.

The Device and Queue passed to run are borrowed for the callback scope. Do not retain or release them manually. The helper releases the temporary adapter/device/queue stack even when run raises.

InstanceCapabilities

pub struct InstanceCapabilities {
timed_wait_any_enable : Bool
timed_wait_any_max_count : UInt64
}

ManagedBuffer

pub struct ManagedBuffer {
// private fields
}

ManagedBuffer::readback

fn ManagedBuffer::readback(self : ManagedBuffer, instance : Instance, offset : UInt64, size : UInt64) -> Bytes

ManagedBuffer::size

fn ManagedBuffer::size(self : ManagedBuffer) -> UInt64

ManagedCommandBuffer

pub struct ManagedCommandBuffer {
// private fields
}

ManagedCommandEncoder

pub struct ManagedCommandEncoder {
// private fields
}

ManagedCommandEncoder::begin_compute_pass

ManagedCommandEncoder::begin_render_pass_color

ManagedCommandEncoder::copy_texture_to_buffer_rgba8

fn ManagedCommandEncoder::copy_texture_to_buffer_rgba8(self : ManagedCommandEncoder, texture : ManagedTexture, buffer : ManagedBuffer, width : UInt, height : UInt) -> Unit

ManagedCommandEncoder::finish

ManagedComputePass

pub struct ManagedComputePass {
// private fields
}

ManagedComputePass::dispatch_workgroups

fn ManagedComputePass::dispatch_workgroups(self : ManagedComputePass, x : UInt, y : UInt, z : UInt) -> Unit

ManagedComputePass::end

fn ManagedComputePass::end(self : ManagedComputePass) -> Unit

ManagedComputePass::set_pipeline

fn ManagedComputePass::set_pipeline(self : ManagedComputePass, pipeline : ManagedComputePipeline) -> Unit

ManagedComputePipeline

pub struct ManagedComputePipeline {
// private fields
}

ManagedDevice

pub struct ManagedDevice {
// private fields
}

ManagedDevice::create_buffer

fn ManagedDevice::create_buffer(self : ManagedDevice, size~ : UInt64, usage~ : BufferUsage, mapped_at_creation? : Bool) -> ManagedBuffer

ManagedDevice::create_command_encoder

fn ManagedDevice::create_command_encoder(self : ManagedDevice) -> ManagedCommandEncoder

ManagedDevice::create_compute_pipeline

fn ManagedDevice::create_compute_pipeline(self : ManagedDevice, shader_module : ManagedShaderModule) -> ManagedComputePipeline

ManagedDevice::create_render_pipeline_rgba8

fn ManagedDevice::create_render_pipeline_rgba8(self : ManagedDevice, shader_module : ManagedShaderModule) -> ManagedRenderPipeline

ManagedDevice::create_shader_module_wgsl

fn ManagedDevice::create_shader_module_wgsl(self : ManagedDevice, code : String) -> ManagedShaderModule

ManagedDevice::create_texture_rgba8_2d

fn ManagedDevice::create_texture_rgba8_2d(self : ManagedDevice, width : UInt, height : UInt) -> ManagedTexture

ManagedDevice::poll

fn ManagedDevice::poll(self : ManagedDevice, wait? : Bool) -> Bool

ManagedQueue

pub struct ManagedQueue {
// private fields
}

ManagedQueue::submit_one

fn ManagedQueue::submit_one(self : ManagedQueue, cmd : ManagedCommandBuffer) -> Unit

ManagedRenderPass

pub struct ManagedRenderPass {
// private fields
}

ManagedRenderPass::draw

fn ManagedRenderPass::draw(self : ManagedRenderPass, vertex_count : UInt, instance_count : UInt, first_vertex : UInt, first_instance : UInt) -> Unit

ManagedRenderPass::end

fn ManagedRenderPass::end(self : ManagedRenderPass) -> Unit

ManagedRenderPass::set_pipeline

fn ManagedRenderPass::set_pipeline(self : ManagedRenderPass, pipeline : ManagedRenderPipeline) -> Unit

ManagedRenderPipeline

pub struct ManagedRenderPipeline {
// private fields
}

ManagedShaderModule

pub struct ManagedShaderModule {
// private fields
}

ManagedTexture

pub struct ManagedTexture {
// private fields
}

ManagedTexture::create_view

ManagedTextureView

pub struct ManagedTextureView {
// private fields
}

MapMode

pub struct MapMode {
raw : UInt64
}

impl Eq for MapMode

MapMode::from_u64

fn MapMode::from_u64(raw : UInt64) -> MapMode

MapMode::to_u64

fn MapMode::to_u64(self : MapMode) -> UInt64

PipelineLayout

PipelineLayout::add_ref

PipelineLayout::add_ref_raw

fn PipelineLayout::add_ref_raw(self : PipelineLayout) -> Unit

PipelineLayout::release

fn PipelineLayout::release(self : PipelineLayout) -> Unit

PipelineLayout::release_raw

fn PipelineLayout::release_raw(self : PipelineLayout) -> Unit

PipelineLayout::set_label

fn PipelineLayout::set_label(self : PipelineLayout, label : String) -> Unit

PresentMode

pub struct PresentMode {
raw : UInt
}

impl Eq for PresentMode

PresentMode::from_u32

fn PresentMode::from_u32(raw : UInt) -> PresentMode

PresentMode::to_u32

fn PresentMode::to_u32(self : PresentMode) -> UInt

QuerySet

QuerySet::add_ref

fn QuerySet::add_ref(self : QuerySet) -> QuerySet

QuerySet::add_ref_raw

fn QuerySet::add_ref_raw(self : QuerySet) -> Unit

QuerySet::destroy

fn QuerySet::destroy(self : QuerySet) -> Unit

QuerySet::get_count

fn QuerySet::get_count(self : QuerySet) -> UInt

QuerySet::raw_handle

QuerySet::release

fn QuerySet::release(self : QuerySet) -> Unit

QuerySet::release_raw

fn QuerySet::release_raw(self : QuerySet) -> Unit

QuerySet::set_label

fn QuerySet::set_label(self : QuerySet, label : String) -> Unit

Queue

Queue::add_ref

fn Queue::add_ref(self : Queue) -> Queue

Queue::add_ref_raw

fn Queue::add_ref_raw(self : Queue) -> Unit

Queue::get_timestamp_period

fn Queue::get_timestamp_period(self : Queue) -> Float

Queue::map_read_async_clear

fn Queue::map_read_async_clear(self : Queue, future_id : UInt64) -> Unit

Queue::map_read_async_read

fn Queue::map_read_async_read(self : Queue, future_id : UInt64) -> Bytes

Queue::map_read_async_status_u32

fn Queue::map_read_async_status_u32(self : Queue, future_id : UInt64) -> UInt

Queue::on_submitted_work_done_async_clear

fn Queue::on_submitted_work_done_async_clear(self : Queue, future_id : UInt64) -> Unit

Queue::on_submitted_work_done_async_status_u32

fn Queue::on_submitted_work_done_async_status_u32(self : Queue, future_id : UInt64) -> UInt

Queue::on_submitted_work_done_async_take_or_raise

fn Queue::on_submitted_work_done_async_take_or_raise(self : Queue, future_id : UInt64) -> Unit raise QueueWorkDoneError

Queue::on_submitted_work_done_future_id_u64

fn Queue::on_submitted_work_done_future_id_u64(self : Queue) -> UInt64

Queue::on_submitted_work_done_sync

fn Queue::on_submitted_work_done_sync(self : Queue, instance : Instance) -> UInt

Queue::on_submitted_work_done_sync_or_raise

fn Queue::on_submitted_work_done_sync_or_raise(self : Queue, instance : Instance) -> Unit raise QueueWorkDoneError

Queue::on_submitted_work_done_wait_or_raise

fn Queue::on_submitted_work_done_wait_or_raise(self : Queue, instance : Instance, timeout_ns? : UInt64) -> Unit raise QueueWorkDoneWaitError

Queue::raw_handle

Queue::release

fn Queue::release(self : Queue) -> Unit

Queue::release_raw

fn Queue::release_raw(self : Queue) -> Unit

Queue::set_label

fn Queue::set_label(self : Queue, label : String) -> Unit

Queue::submit

fn Queue::submit(self : Queue, cmds : Array[CommandBuffer]) -> Unit

Queue::submit_for_index

fn Queue::submit_for_index(self : Queue, cmds : Array[CommandBuffer]) -> UInt64

Queue::submit_for_index_raw

fn Queue::submit_for_index_raw(self : Queue, command_count : UInt64, commands :
WGPUCommandBufferPtr
) -> UInt64

Queue::submit_one

fn Queue::submit_one(self : Queue, cmd : CommandBuffer) -> Unit

Queue::submit_one_and_map_read_async

fn Queue::submit_one_and_map_read_async(self : Queue, cmd : CommandBuffer, buffer : Buffer, offset : UInt64, size : UInt64) -> UInt64

Queue::submit_one_for_index

fn Queue::submit_one_for_index(self : Queue, cmd : CommandBuffer) -> UInt64

Queue::submit_raw

fn Queue::submit_raw(self : Queue, command_count : UInt64, commands :
WGPUCommandBufferPtr
) -> Unit

Queue::timestamp_period

fn Queue::timestamp_period(self : Queue) -> Float

Queue::write_buffer

fn Queue::write_buffer(self : Queue, buffer : Buffer, buffer_offset : UInt64, data : Bytes) -> Unit

Queue::write_texture_2d_bytes_per_pixel

fn Queue::write_texture_2d_bytes_per_pixel(self : Queue, texture : Texture, width : UInt, height : UInt, bytes_per_pixel : UInt, data : Bytes) -> Unit

Queue::write_texture_2d_bytes_per_pixel_mip_layer

fn Queue::write_texture_2d_bytes_per_pixel_mip_layer(self : Queue, texture : Texture, mip_level : UInt, array_layer : UInt, width : UInt, height : UInt, bytes_per_pixel : UInt, data : Bytes) -> Unit

Queue::write_texture_rgba8_2d

fn Queue::write_texture_rgba8_2d(self : Queue, texture : Texture, width : UInt, height : UInt, data : Bytes) -> Unit

Queue::write_texture_rgba8_2d_mip_layer

fn Queue::write_texture_rgba8_2d_mip_layer(self : Queue, texture : Texture, mip_level : UInt, array_layer : UInt, width : UInt, height : UInt, data : Bytes) -> Unit

RenderBundle

RenderBundle::add_ref

fn RenderBundle::add_ref(self : RenderBundle) -> RenderBundle

RenderBundle::add_ref_raw

fn RenderBundle::add_ref_raw(self : RenderBundle) -> Unit

RenderBundle::release

fn RenderBundle::release(self : RenderBundle) -> Unit

RenderBundle::release_raw

fn RenderBundle::release_raw(self : RenderBundle) -> Unit

RenderBundle::set_label

fn RenderBundle::set_label(self : RenderBundle, label : String) -> Unit

RenderBundleEncoder

RenderBundleEncoder::add_ref

RenderBundleEncoder::add_ref_raw

fn RenderBundleEncoder::add_ref_raw(self : RenderBundleEncoder) -> Unit

RenderBundleEncoder::draw

fn RenderBundleEncoder::draw(self : RenderBundleEncoder, vertex_count : UInt, instance_count : UInt, first_vertex : UInt, first_instance : UInt) -> Unit

RenderBundleEncoder::draw_indexed

fn RenderBundleEncoder::draw_indexed(self : RenderBundleEncoder, index_count : UInt, instance_count : UInt, first_index : UInt, base_vertex : Int, first_instance : UInt) -> Unit

RenderBundleEncoder::draw_indexed_indirect

fn RenderBundleEncoder::draw_indexed_indirect(self : RenderBundleEncoder, indirect_buffer : Buffer, indirect_offset : UInt64) -> Unit

RenderBundleEncoder::draw_indexed_indirect_raw

fn RenderBundleEncoder::draw_indexed_indirect_raw(self : RenderBundleEncoder, indirect_buffer : Buffer, indirect_offset : UInt64) -> Unit

RenderBundleEncoder::draw_indexed_raw

fn RenderBundleEncoder::draw_indexed_raw(self : RenderBundleEncoder, index_count : UInt, instance_count : UInt, first_index : UInt, base_vertex : Int, first_instance : UInt) -> Unit

RenderBundleEncoder::draw_indirect

fn RenderBundleEncoder::draw_indirect(self : RenderBundleEncoder, indirect_buffer : Buffer, indirect_offset : UInt64) -> Unit

RenderBundleEncoder::draw_indirect_raw

fn RenderBundleEncoder::draw_indirect_raw(self : RenderBundleEncoder, indirect_buffer : Buffer, indirect_offset : UInt64) -> Unit

RenderBundleEncoder::draw_raw

fn RenderBundleEncoder::draw_raw(self : RenderBundleEncoder, vertex_count : UInt, instance_count : UInt, first_vertex : UInt, first_instance : UInt) -> Unit

RenderBundleEncoder::finish

RenderBundleEncoder::insert_debug_marker

fn RenderBundleEncoder::insert_debug_marker(self : RenderBundleEncoder, label : String) -> Unit

RenderBundleEncoder::pop_debug_group

fn RenderBundleEncoder::pop_debug_group(self : RenderBundleEncoder) -> Unit

RenderBundleEncoder::pop_debug_group_raw

fn RenderBundleEncoder::pop_debug_group_raw(self : RenderBundleEncoder) -> Unit

RenderBundleEncoder::push_debug_group

fn RenderBundleEncoder::push_debug_group(self : RenderBundleEncoder, label : String) -> Unit

RenderBundleEncoder::release

fn RenderBundleEncoder::release(self : RenderBundleEncoder) -> Unit

RenderBundleEncoder::release_raw

fn RenderBundleEncoder::release_raw(self : RenderBundleEncoder) -> Unit

RenderBundleEncoder::set_bind_group

fn RenderBundleEncoder::set_bind_group(self : RenderBundleEncoder, index : UInt, group : BindGroup, dynamic_offsets : Array[UInt]) -> Unit

RenderBundleEncoder::set_bind_group0

fn RenderBundleEncoder::set_bind_group0(self : RenderBundleEncoder, group : BindGroup) -> Unit

RenderBundleEncoder::set_immediates

fn RenderBundleEncoder::set_immediates(self : RenderBundleEncoder, stages : ShaderStage, offset : UInt, data : Bytes) -> Unit

RenderBundleEncoder::set_index_buffer

fn RenderBundleEncoder::set_index_buffer(self : RenderBundleEncoder, buffer : Buffer, format :
WGPUIndexFormat
, offset : UInt64, size : UInt64) -> Unit

RenderBundleEncoder::set_index_buffer_u16

fn RenderBundleEncoder::set_index_buffer_u16(self : RenderBundleEncoder, buffer : Buffer, offset : UInt64, size : UInt64) -> Unit

RenderBundleEncoder::set_index_buffer_u32

fn RenderBundleEncoder::set_index_buffer_u32(self : RenderBundleEncoder, buffer : Buffer, offset : UInt64, size : UInt64) -> Unit

RenderBundleEncoder::set_label

fn RenderBundleEncoder::set_label(self : RenderBundleEncoder, label : String) -> Unit

RenderBundleEncoder::set_pipeline

fn RenderBundleEncoder::set_pipeline(self : RenderBundleEncoder, pipeline : RenderPipeline) -> Unit

RenderBundleEncoder::set_pipeline_raw

fn RenderBundleEncoder::set_pipeline_raw(self : RenderBundleEncoder, pipeline : RenderPipeline) -> Unit

RenderBundleEncoder::set_vertex_buffer

fn RenderBundleEncoder::set_vertex_buffer(self : RenderBundleEncoder, slot : UInt, buffer : Buffer, offset : UInt64, size : UInt64) -> Unit

RenderBundleEncoder::set_vertex_buffer_raw

fn RenderBundleEncoder::set_vertex_buffer_raw(self : RenderBundleEncoder, slot : UInt, buffer : Buffer, offset : UInt64, size : UInt64) -> Unit

RenderPass

RenderPass::add_ref

fn RenderPass::add_ref(self : RenderPass) -> RenderPass

RenderPass::add_ref_raw

fn RenderPass::add_ref_raw(self : RenderPass) -> Unit

RenderPass::begin_occlusion_query

fn RenderPass::begin_occlusion_query(self : RenderPass, query_index : UInt) -> Unit

RenderPass::begin_occlusion_query_raw

fn RenderPass::begin_occlusion_query_raw(self : RenderPass, query_index : UInt) -> Unit

RenderPass::begin_pipeline_statistics_query

fn RenderPass::begin_pipeline_statistics_query(self : RenderPass, query_set : QuerySet, query_index : UInt) -> Unit

RenderPass::begin_pipeline_statistics_query_raw

fn RenderPass::begin_pipeline_statistics_query_raw(self : RenderPass, query_set : QuerySet, query_index : UInt) -> Unit

RenderPass::draw

fn RenderPass::draw(self : RenderPass, vertex_count : UInt, instance_count : UInt, first_vertex : UInt, first_instance : UInt) -> Unit

RenderPass::draw_indexed

fn RenderPass::draw_indexed(self : RenderPass, index_count : UInt, instance_count : UInt, first_index : UInt, base_vertex : Int, first_instance : UInt) -> Unit

RenderPass::draw_indexed_indirect

fn RenderPass::draw_indexed_indirect(self : RenderPass, indirect_buffer : Buffer, indirect_offset : UInt64) -> Unit

RenderPass::draw_indexed_indirect_raw

fn RenderPass::draw_indexed_indirect_raw(self : RenderPass, indirect_buffer : Buffer, indirect_offset : UInt64) -> Unit

RenderPass::draw_indexed_raw

fn RenderPass::draw_indexed_raw(self : RenderPass, index_count : UInt, instance_count : UInt, first_index : UInt, base_vertex : Int, first_instance : UInt) -> Unit

RenderPass::draw_indirect

fn RenderPass::draw_indirect(self : RenderPass, indirect_buffer : Buffer, indirect_offset : UInt64) -> Unit

RenderPass::draw_indirect_raw

fn RenderPass::draw_indirect_raw(self : RenderPass, indirect_buffer : Buffer, indirect_offset : UInt64) -> Unit

RenderPass::draw_raw

fn RenderPass::draw_raw(self : RenderPass, vertex_count : UInt, instance_count : UInt, first_vertex : UInt, first_instance : UInt) -> Unit

RenderPass::end

fn RenderPass::end(self : RenderPass) -> Unit

RenderPass::end_occlusion_query

fn RenderPass::end_occlusion_query(self : RenderPass) -> Unit

RenderPass::end_occlusion_query_raw

fn RenderPass::end_occlusion_query_raw(self : RenderPass) -> Unit

RenderPass::end_pipeline_statistics_query

fn RenderPass::end_pipeline_statistics_query(self : RenderPass) -> Unit

RenderPass::end_pipeline_statistics_query_raw

fn RenderPass::end_pipeline_statistics_query_raw(self : RenderPass) -> Unit

RenderPass::end_raw

fn RenderPass::end_raw(self : RenderPass) -> Unit

RenderPass::execute_bundles

fn RenderPass::execute_bundles(self : RenderPass, bundles : Array[RenderBundle]) -> Unit

RenderPass::execute_bundles_raw

fn RenderPass::execute_bundles_raw(self : RenderPass, bundle_count : UInt64, bundles :
WGPURenderBundlePtr
) -> Unit

RenderPass::insert_debug_marker

fn RenderPass::insert_debug_marker(self : RenderPass, label : String) -> Unit

RenderPass::multi_draw_indexed_indirect

fn RenderPass::multi_draw_indexed_indirect(self : RenderPass, indirect_buffer : Buffer, indirect_offset : UInt64, count : UInt) -> Unit

RenderPass::multi_draw_indexed_indirect_count

fn RenderPass::multi_draw_indexed_indirect_count(self : RenderPass, indirect_buffer : Buffer, indirect_offset : UInt64, count_buffer : Buffer, count_buffer_offset : UInt64, max_count : UInt) -> Unit

RenderPass::multi_draw_indexed_indirect_count_raw

fn RenderPass::multi_draw_indexed_indirect_count_raw(self : RenderPass, buffer : Buffer, offset : UInt64, count_buffer : Buffer, count_buffer_offset : UInt64, max_count : UInt) -> Unit

RenderPass::multi_draw_indexed_indirect_raw

fn RenderPass::multi_draw_indexed_indirect_raw(self : RenderPass, buffer : Buffer, offset : UInt64, count : UInt) -> Unit

RenderPass::multi_draw_indirect

fn RenderPass::multi_draw_indirect(self : RenderPass, indirect_buffer : Buffer, indirect_offset : UInt64, count : UInt) -> Unit

RenderPass::multi_draw_indirect_count

fn RenderPass::multi_draw_indirect_count(self : RenderPass, indirect_buffer : Buffer, indirect_offset : UInt64, count_buffer : Buffer, count_buffer_offset : UInt64, max_count : UInt) -> Unit

RenderPass::multi_draw_indirect_count_raw

fn RenderPass::multi_draw_indirect_count_raw(self : RenderPass, buffer : Buffer, offset : UInt64, count_buffer : Buffer, count_buffer_offset : UInt64, max_count : UInt) -> Unit

RenderPass::multi_draw_indirect_raw

fn RenderPass::multi_draw_indirect_raw(self : RenderPass, buffer : Buffer, offset : UInt64, count : UInt) -> Unit

RenderPass::pop_debug_group

fn RenderPass::pop_debug_group(self : RenderPass) -> Unit

RenderPass::pop_debug_group_raw

fn RenderPass::pop_debug_group_raw(self : RenderPass) -> Unit

RenderPass::push_debug_group

fn RenderPass::push_debug_group(self : RenderPass, label : String) -> Unit

RenderPass::release

fn RenderPass::release(self : RenderPass) -> Unit

RenderPass::release_raw

fn RenderPass::release_raw(self : RenderPass) -> Unit

RenderPass::set_bind_group

fn RenderPass::set_bind_group(self : RenderPass, index : UInt, group : BindGroup, dynamic_offsets : Array[UInt]) -> Unit

RenderPass::set_bind_group0

fn RenderPass::set_bind_group0(self : RenderPass, group : BindGroup) -> Unit

RenderPass::set_blend_constant

fn RenderPass::set_blend_constant(self : RenderPass, color :
WGPUColorPtr
) -> Unit

RenderPass::set_blend_constant_rgba

fn RenderPass::set_blend_constant_rgba(self : RenderPass, r : Double, g : Double, b : Double, a : Double) -> Unit

RenderPass::set_immediates

fn RenderPass::set_immediates(self : RenderPass, stages : ShaderStage, offset : UInt, data : Bytes) -> Unit

RenderPass::set_index_buffer

fn RenderPass::set_index_buffer(self : RenderPass, buffer : Buffer, format :
WGPUIndexFormat
, offset : UInt64, size : UInt64) -> Unit

RenderPass::set_index_buffer_u16

fn RenderPass::set_index_buffer_u16(self : RenderPass, buffer : Buffer, offset : UInt64, size : UInt64) -> Unit

RenderPass::set_index_buffer_u32

fn RenderPass::set_index_buffer_u32(self : RenderPass, buffer : Buffer, offset : UInt64, size : UInt64) -> Unit

RenderPass::set_label

fn RenderPass::set_label(self : RenderPass, label : String) -> Unit

RenderPass::set_pipeline

fn RenderPass::set_pipeline(self : RenderPass, pipeline : RenderPipeline) -> Unit

RenderPass::set_pipeline_raw

fn RenderPass::set_pipeline_raw(self : RenderPass, pipeline : RenderPipeline) -> Unit

RenderPass::set_scissor_rect

fn RenderPass::set_scissor_rect(self : RenderPass, x : UInt, y : UInt, width : UInt, height : UInt) -> Unit

RenderPass::set_scissor_rect_raw

fn RenderPass::set_scissor_rect_raw(self : RenderPass, x : UInt, y : UInt, width : UInt, height : UInt) -> Unit

RenderPass::set_stencil_reference

fn RenderPass::set_stencil_reference(self : RenderPass, reference : UInt) -> Unit

RenderPass::set_stencil_reference_raw

fn RenderPass::set_stencil_reference_raw(self : RenderPass, reference : UInt) -> Unit

RenderPass::set_vertex_buffer

fn RenderPass::set_vertex_buffer(self : RenderPass, slot : UInt, buffer : Buffer, offset : UInt64, size : UInt64) -> Unit

RenderPass::set_vertex_buffer_raw

fn RenderPass::set_vertex_buffer_raw(self : RenderPass, slot : UInt, buffer : Buffer, offset : UInt64, size : UInt64) -> Unit

RenderPass::set_viewport

fn RenderPass::set_viewport(self : RenderPass, x : Float, y : Float, width : Float, height : Float, min_depth : Float, max_depth : Float) -> Unit

RenderPass::set_viewport_raw

fn RenderPass::set_viewport_raw(self : RenderPass, x : Float, y : Float, width : Float, height : Float, min_depth : Float, max_depth : Float) -> Unit

RenderPass::write_timestamp

fn RenderPass::write_timestamp(self : RenderPass, query_set : QuerySet, query_index : UInt) -> Unit

RenderPass::write_timestamp_raw

fn RenderPass::write_timestamp_raw(self : RenderPass, query_set : QuerySet, query_index : UInt) -> Unit

RenderPassDescBuilder

RenderPassDescBuilder::begin

RenderPassDescBuilder::clear_color_attachment_resolve_target

fn RenderPassDescBuilder::clear_color_attachment_resolve_target(self : RenderPassDescBuilder, index_u32 : UInt) -> Unit raise RenderPassDescError

RenderPassDescBuilder::clear_depth_stencil_attachment

fn RenderPassDescBuilder::clear_depth_stencil_attachment(self : RenderPassDescBuilder) -> Unit raise RenderPassDescError

RenderPassDescBuilder::free

RenderPassDescBuilder::last_error

RenderPassDescBuilder::new

fn RenderPassDescBuilder::new(color_attachment_count : UInt) -> RenderPassDescBuilder raise RenderPassDescError

RenderPassDescriptor builder.

The builder is MoonBit-managed. If you call finish_descriptor_ptr, it transfers the underlying descriptor allocation out of the builder, and you must free the returned pointer via @c.render_pass_descriptor_free(desc). begin(encoder) is the consuming high-level path and frees the builder automatically.

RenderPassDescBuilder::set_color_attachment

fn RenderPassDescBuilder::set_color_attachment(self : RenderPassDescBuilder, index_u32 : UInt, view : TextureView, load_op_u32? : UInt, store_op_u32? : UInt, clear_r_f32? : Float, clear_g_f32? : Float, clear_b_f32? : Float, clear_a_f32? : Float) -> Unit raise RenderPassDescError

RenderPassDescBuilder::set_color_attachment_resolve_target

fn RenderPassDescBuilder::set_color_attachment_resolve_target(self : RenderPassDescBuilder, index_u32 : UInt, resolve_target : TextureView) -> Unit raise RenderPassDescError

RenderPassDescBuilder::set_depth_stencil_attachment

fn RenderPassDescBuilder::set_depth_stencil_attachment(self : RenderPassDescBuilder, depth_view : TextureView, depth_load_op_u32? : UInt, depth_store_op_u32? : UInt, depth_clear_value_f32? : Float, stencil_load_op_u32? : UInt, stencil_store_op_u32? : UInt, stencil_clear_value_u32? : UInt, depth_read_only? : Bool, stencil_read_only? : Bool) -> Unit raise RenderPassDescError

RenderPipeline

RenderPipeline::add_ref

RenderPipeline::add_ref_raw

fn RenderPipeline::add_ref_raw(self : RenderPipeline) -> Unit

RenderPipeline::get_bind_group_layout

fn RenderPipeline::get_bind_group_layout(self : RenderPipeline, index : UInt) -> BindGroupLayout

RenderPipeline::get_bind_group_layout_raw

fn RenderPipeline::get_bind_group_layout_raw(self : RenderPipeline, group_index : UInt) -> BindGroupLayout

RenderPipeline::release

fn RenderPipeline::release(self : RenderPipeline) -> Unit

RenderPipeline::release_raw

fn RenderPipeline::release_raw(self : RenderPipeline) -> Unit

RenderPipeline::set_label

fn RenderPipeline::set_label(self : RenderPipeline, label : String) -> Unit

RenderPipelineDescBuilder

RenderPipelineDescBuilder::add_vertex_attribute

fn RenderPipelineDescBuilder::add_vertex_attribute(self : RenderPipelineDescBuilder, format_u32 : UInt, offset : UInt64, shader_location : UInt) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::add_vertex_buffer_layout

fn RenderPipelineDescBuilder::add_vertex_buffer_layout(self : RenderPipelineDescBuilder, array_stride : UInt64, step_mode_u32 : UInt) -> UInt raise RenderPipelineDescError

RenderPipelineDescBuilder::clear_fragment

RenderPipelineDescBuilder::clear_primitive_extras

fn RenderPipelineDescBuilder::clear_primitive_extras(self : RenderPipelineDescBuilder) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::create_pipeline

RenderPipelineDescBuilder::disable_blend

RenderPipelineDescBuilder::enable_alpha_blend

RenderPipelineDescBuilder::free

RenderPipelineDescBuilder::last_error

RenderPipelineDescBuilder::new

RenderPipelineDescriptor arena builder (MVP).

The builder is MoonBit-managed. If you call finish_descriptor_ptr, it transfers the underlying descriptor allocation out of the builder, and you must free the returned pointer via @c.render_pipeline_descriptor_free(desc). create_pipeline(device) is the consuming high-level path and frees the builder automatically.

RenderPipelineDescBuilder::set_blend_components

fn RenderPipelineDescBuilder::set_blend_components(self : RenderPipelineDescBuilder, color_src_factor_u32 : UInt, color_dst_factor_u32 : UInt, color_operation_u32 : UInt, alpha_src_factor_u32 : UInt, alpha_dst_factor_u32 : UInt, alpha_operation_u32 : UInt) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_color_target_count

fn RenderPipelineDescBuilder::set_color_target_count(self : RenderPipelineDescBuilder, count_u32 : UInt) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_color_target_format

fn RenderPipelineDescBuilder::set_color_target_format(self : RenderPipelineDescBuilder, format : TextureFormat) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_color_target_format_at

fn RenderPipelineDescBuilder::set_color_target_format_at(self : RenderPipelineDescBuilder, index_u32 : UInt, format : TextureFormat) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_color_target_unused_at

fn RenderPipelineDescBuilder::set_color_target_unused_at(self : RenderPipelineDescBuilder, index_u32 : UInt) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_color_target_write_mask

fn RenderPipelineDescBuilder::set_color_target_write_mask(self : RenderPipelineDescBuilder, write_mask_u64 : UInt64) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_color_target_write_mask_at

fn RenderPipelineDescBuilder::set_color_target_write_mask_at(self : RenderPipelineDescBuilder, index_u32 : UInt, write_mask_u64 : UInt64) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_conservative_rasterization

fn RenderPipelineDescBuilder::set_conservative_rasterization(self : RenderPipelineDescBuilder, conservative : Bool) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_cull_mode_u32

fn RenderPipelineDescBuilder::set_cull_mode_u32(self : RenderPipelineDescBuilder, cull_mode_u32 : UInt) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_depth_stencil

fn RenderPipelineDescBuilder::set_depth_stencil(self : RenderPipelineDescBuilder, depth_format : TextureFormat, depth_write_enabled? : Bool, depth_compare_u32? : UInt, depth_bias? : Int, depth_bias_slope_scale? : Float, depth_bias_clamp? : Float) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_entry_points

fn RenderPipelineDescBuilder::set_entry_points(self : RenderPipelineDescBuilder, vs_entry : String, fs_entry : String) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_fragment_module

fn RenderPipelineDescBuilder::set_fragment_module(self : RenderPipelineDescBuilder, shader_module : ShaderModule) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_multisample

fn RenderPipelineDescBuilder::set_multisample(self : RenderPipelineDescBuilder, count_u32 : UInt, mask_u32? : UInt, alpha_to_coverage_enabled? : Bool) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_polygon_mode_u32

fn RenderPipelineDescBuilder::set_polygon_mode_u32(self : RenderPipelineDescBuilder, polygon_mode_u32 : UInt) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_strip_index_format_u32

fn RenderPipelineDescBuilder::set_strip_index_format_u32(self : RenderPipelineDescBuilder, index_format_u32 : UInt) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_topology_u32

fn RenderPipelineDescBuilder::set_topology_u32(self : RenderPipelineDescBuilder, topology_u32 : UInt) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_unclipped_depth

fn RenderPipelineDescBuilder::set_unclipped_depth(self : RenderPipelineDescBuilder, unclipped_depth : Bool) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_vertex_buffer_layout

fn RenderPipelineDescBuilder::set_vertex_buffer_layout(self : RenderPipelineDescBuilder, array_stride : UInt64, step_mode_u32 : UInt) -> Unit raise RenderPipelineDescError

RenderPipelineDescBuilder::set_vertex_module

fn RenderPipelineDescBuilder::set_vertex_module(self : RenderPipelineDescBuilder, shader_module : ShaderModule) -> Unit raise RenderPipelineDescError

Sampler

Sampler::add_ref

fn Sampler::add_ref(self : Sampler) -> Sampler

Sampler::add_ref_raw

fn Sampler::add_ref_raw(self : Sampler) -> Unit

Sampler::raw_handle

Sampler::release

fn Sampler::release(self : Sampler) -> Unit

Sampler::release_raw

fn Sampler::release_raw(self : Sampler) -> Unit

Sampler::set_label

fn Sampler::set_label(self : Sampler, label : String) -> Unit

ShaderModule

ShaderModule::add_ref

fn ShaderModule::add_ref(self : ShaderModule) -> ShaderModule

ShaderModule::add_ref_raw

fn ShaderModule::add_ref_raw(self : ShaderModule) -> Unit

ShaderModule::get_compilation_info_sync

fn ShaderModule::get_compilation_info_sync(self : ShaderModule, instance : Instance) -> CompilationInfo

ShaderModule::get_compilation_info_sync_or_raise

fn ShaderModule::get_compilation_info_sync_or_raise(self : ShaderModule, instance : Instance) -> CompilationInfo raise OptionalSymbolError

ShaderModule::get_compilation_info_sync_status_u32

fn ShaderModule::get_compilation_info_sync_status_u32(self : ShaderModule, instance : Instance) -> UInt

ShaderModule::is_null

fn ShaderModule::is_null(self : ShaderModule) -> Bool

ShaderModule::release

fn ShaderModule::release(self : ShaderModule) -> Unit

ShaderModule::release_raw

fn ShaderModule::release_raw(self : ShaderModule) -> Unit

ShaderModule::set_label

fn ShaderModule::set_label(self : ShaderModule, label : String) -> Unit

ShaderStage

pub struct ShaderStage {
raw : UInt64
}

impl Eq for ShaderStage

ShaderStage::from_u64

fn ShaderStage::from_u64(raw : UInt64) -> ShaderStage

ShaderStage::to_u64

fn ShaderStage::to_u64(self : ShaderStage) -> UInt64

Surface

Surface::add_ref

fn Surface::add_ref(self : Surface) -> Surface

Surface::add_ref_raw

fn Surface::add_ref_raw(self : Surface) -> Unit

Surface::capabilities_alpha_mode_u32_at

fn Surface::capabilities_alpha_mode_u32_at(self : Surface, adapter : Adapter, index : UInt64) -> UInt

Surface::capabilities_alpha_modes

fn Surface::capabilities_alpha_modes(self : Surface, adapter : Adapter) -> Array[UInt]

Surface::capabilities_alpha_modes_count_u64

fn Surface::capabilities_alpha_modes_count_u64(self : Surface, adapter : Adapter) -> UInt64

Surface::capabilities_format_u32_at

fn Surface::capabilities_format_u32_at(self : Surface, adapter : Adapter, index : UInt64) -> TextureFormat

Surface::capabilities_formats

fn Surface::capabilities_formats(self : Surface, adapter : Adapter) -> Array[TextureFormat]

Surface::capabilities_formats_count_u64

fn Surface::capabilities_formats_count_u64(self : Surface, adapter : Adapter) -> UInt64

Surface::capabilities_present_mode_u32_at

fn Surface::capabilities_present_mode_u32_at(self : Surface, adapter : Adapter, index : UInt64) -> UInt

Surface::capabilities_present_modes

fn Surface::capabilities_present_modes(self : Surface, adapter : Adapter) -> Array[UInt]

Surface::capabilities_present_modes_count_u64

fn Surface::capabilities_present_modes_count_u64(self : Surface, adapter : Adapter) -> UInt64

Surface::capabilities_usages_u64

fn Surface::capabilities_usages_u64(self : Surface, adapter : Adapter) -> TextureUsage

Surface::configure_best_effort

fn Surface::configure_best_effort(self : Surface, adapter : Adapter, device : Device, width : UInt, height : UInt, usage : TextureUsage, prefer_srgb? : Bool, vsync? : Bool, desired_maximum_frame_latency? : UInt) -> Bool

Surface::configure_default

fn Surface::configure_default(self : Surface, adapter : Adapter, device : Device, width : UInt, height : UInt, usage : TextureUsage, desired_maximum_frame_latency? : UInt) -> TextureFormat

Surface::configure_ptr

Surface::configure_u32

fn Surface::configure_u32(self : Surface, adapter : Adapter, device : Device, width : UInt, height : UInt, usage : TextureUsage, format : TextureFormat, present_mode_u32 : UInt, alpha_mode_u32 : UInt, desired_maximum_frame_latency? : UInt) -> Bool

Surface::configure_u32_or_raise

fn Surface::configure_u32_or_raise(self : Surface, adapter : Adapter, device : Device, width : UInt, height : UInt, usage : TextureUsage, format : TextureFormat, present_mode_u32 : UInt, alpha_mode_u32 : UInt, desired_maximum_frame_latency? : UInt) -> Unit raise SurfaceConfigureError

Surface::configure_view_formats_u32

fn Surface::configure_view_formats_u32(self : Surface, adapter : Adapter, device : Device, width : UInt, height : UInt, usage : TextureUsage, format : TextureFormat, present_mode_u32 : UInt, alpha_mode_u32 : UInt, view_formats : Array[TextureFormat], desired_maximum_frame_latency? : UInt) -> Bool

Surface::configure_view_formats_u32_or_raise

fn Surface::configure_view_formats_u32_or_raise(self : Surface, adapter : Adapter, device : Device, width : UInt, height : UInt, usage : TextureUsage, format : TextureFormat, present_mode_u32 : UInt, alpha_mode_u32 : UInt, view_formats : Array[TextureFormat], desired_maximum_frame_latency? : UInt) -> Unit raise SurfaceConfigureError

Surface::configure_with

fn Surface::configure_with(self : Surface, adapter : Adapter, device : Device, config : SurfaceConfiguration) -> Bool

Surface::configure_with_or_raise

fn Surface::configure_with_or_raise(self : Surface, adapter : Adapter, device : Device, config : SurfaceConfiguration) -> Unit raise SurfaceConfigureError

Surface::get_current_frame_or_raise

fn Surface::get_current_frame_or_raise(self : Surface) -> SurfaceFrame raise SurfaceTextureError

Surface::get_current_texture

fn Surface::get_current_texture(self : Surface) -> SurfaceTexture

Surface::get_current_texture_or_raise

fn Surface::get_current_texture_or_raise(self : Surface) -> SurfaceTexture raise SurfaceTextureError

Surface::get_current_texture_raw

fn Surface::get_current_texture_raw(self : Surface, surface_texture :
WGPUSurfaceTexturePtr
) -> Unit

Surface::metal_layer_handle

fn Surface::metal_layer_handle(self : Surface) ->
OpaquePtr

Surface::present

fn Surface::present(self : Surface) -> UInt

Surface::present_or_raise

fn Surface::present_or_raise(self : Surface) -> Unit raise SurfacePresentError

Surface::present_raw

Surface::raw_handle

Surface::release

fn Surface::release(self : Surface) -> Unit

Surface::release_raw

fn Surface::release_raw(self : Surface) -> Unit

Surface::set_label

fn Surface::set_label(self : Surface, label : String) -> Unit

Surface::sync_macos_ns_view_layer

fn Surface::sync_macos_ns_view_layer(self : Surface, ns_view :
OpaquePtr
) -> Unit raise SurfaceCreateError

Synchronize this surface's retained CAMetalLayer with an NSView*.

Call this on macOS after the host view is resized or moves between displays with different backing scale factors.

Surface::sync_macos_ns_view_layer_u64

fn Surface::sync_macos_ns_view_layer_u64(self : Surface, ns_view : UInt64) -> Unit raise SurfaceCreateError

Synchronize this surface's retained CAMetalLayer with an NSView* address stored as UInt64.

Surface::unconfigure

fn Surface::unconfigure(self : Surface) -> Unit

Surface::unconfigure_raw

fn Surface::unconfigure_raw(self : Surface) -> Unit

SurfaceConfiguration

pub struct SurfaceConfiguration {
width : UInt
height : UInt
usage : TextureUsage
format : TextureFormat
present_mode_u32 : UInt
alpha_mode_u32 : UInt
view_formats : Array[TextureFormat]
desired_maximum_frame_latency : UInt
}

SurfaceConfiguration::new

fn SurfaceConfiguration::new(width : UInt, height : UInt, usage : TextureUsage, format : TextureFormat, present_mode : PresentMode, alpha_mode : CompositeAlphaMode) -> SurfaceConfiguration

SurfaceConfiguration::with_desired_maximum_frame_latency

fn SurfaceConfiguration::with_desired_maximum_frame_latency(self : SurfaceConfiguration, desired_maximum_frame_latency : UInt) -> SurfaceConfiguration

SurfaceConfiguration::with_view_formats

fn SurfaceConfiguration::with_view_formats(self : SurfaceConfiguration, view_formats : Array[TextureFormat]) -> SurfaceConfiguration

SurfaceFrame

pub struct SurfaceFrame {
surface : Surface
texture : Texture
}

SurfaceFrame::present

fn SurfaceFrame::present(self : SurfaceFrame) -> UInt

SurfaceFrame::present_or_raise

fn SurfaceFrame::present_or_raise(self : SurfaceFrame) -> Unit raise SurfacePresentError

SurfaceFrame::release

fn SurfaceFrame::release(self : SurfaceFrame) -> Unit

SurfaceTexture

pub struct SurfaceTexture {
raw :
OpaquePtr

}

SurfaceTexture::is_success

fn SurfaceTexture::is_success(self : SurfaceTexture) -> Bool

SurfaceTexture::release

fn SurfaceTexture::release(self : SurfaceTexture) -> Unit

SurfaceTexture::require_success

fn SurfaceTexture::require_success(self : SurfaceTexture) -> Unit raise SurfaceTextureError

SurfaceTexture::status

fn SurfaceTexture::status(self : SurfaceTexture) -> UInt

SurfaceTexture::take_texture

fn SurfaceTexture::take_texture(self : SurfaceTexture) -> Texture

SurfaceTexture::take_texture_or_raise

fn SurfaceTexture::take_texture_or_raise(self : SurfaceTexture) -> Texture raise SurfaceTextureError

Texture

Texture::add_ref

fn Texture::add_ref(self : Texture) -> Texture

Texture::add_ref_raw

fn Texture::add_ref_raw(self : Texture) -> Unit

Texture::create_view

fn Texture::create_view(self : Texture) -> TextureView

Texture::create_view_2d

fn Texture::create_view_2d(self : Texture, base_mip_level : UInt, mip_level_count : UInt) -> TextureView

Texture::create_view_2d_array

fn Texture::create_view_2d_array(self : Texture, base_array_layer : UInt, array_layer_count : UInt, base_mip_level : UInt, mip_level_count : UInt) -> TextureView

Texture::create_view_ptr

Texture::create_view_raw

Texture::create_view_u32

fn Texture::create_view_u32(self : Texture, format : TextureFormat, view_dimension_u32 : UInt, aspect_u32 : UInt, base_array_layer : UInt, array_layer_count : UInt, base_mip_level : UInt, mip_level_count : UInt) -> TextureView

Texture::depth_or_array_layers_u32

fn Texture::depth_or_array_layers_u32(self : Texture) -> UInt

Texture::destroy

fn Texture::destroy(self : Texture) -> Unit

Texture::destroy_raw

fn Texture::destroy_raw(self : Texture) -> Unit

Texture::dimension_u32

fn Texture::dimension_u32(self : Texture) -> TextureDimension

Texture::format_u32

fn Texture::format_u32(self : Texture) -> TextureFormat

Texture::get_depth_or_array_layers

fn Texture::get_depth_or_array_layers(self : Texture) -> UInt

Texture::get_height

fn Texture::get_height(self : Texture) -> UInt

Texture::get_mip_level_count

fn Texture::get_mip_level_count(self : Texture) -> UInt

Texture::get_sample_count

fn Texture::get_sample_count(self : Texture) -> UInt

Texture::get_usage

fn Texture::get_usage(self : Texture) -> UInt64

Texture::get_width

fn Texture::get_width(self : Texture) -> UInt

Texture::height_u32

fn Texture::height_u32(self : Texture) -> UInt

Texture::mip_level_count_u32

fn Texture::mip_level_count_u32(self : Texture) -> UInt

Texture::raw_handle

Texture::release

fn Texture::release(self : Texture) -> Unit

Texture::release_raw

fn Texture::release_raw(self : Texture) -> Unit

Texture::sample_count_u32

fn Texture::sample_count_u32(self : Texture) -> UInt

Texture::set_label

fn Texture::set_label(self : Texture, label : String) -> Unit

Texture::usage_u64

fn Texture::usage_u64(self : Texture) -> TextureUsage

Texture::width_u32

fn Texture::width_u32(self : Texture) -> UInt

TextureDimension

pub struct TextureDimension {
raw : UInt
}

TextureDimension::from_u32

fn TextureDimension::from_u32(raw : UInt) -> TextureDimension

TextureDimension::to_u32

fn TextureDimension::to_u32(self : TextureDimension) -> UInt

TextureFormat

pub struct TextureFormat {
raw : UInt
}

Type-safe wrappers for frequently-used numeric enums/flags.

v0.4.0+ gradually moves public APIs away from raw UInt/UInt64 for these.
impl Eq for TextureFormat

TextureFormat::from_u32

fn TextureFormat::from_u32(raw : UInt) -> TextureFormat

TextureFormat::to_u32

fn TextureFormat::to_u32(self : TextureFormat) -> UInt

TextureUsage

pub struct TextureUsage {
raw : UInt64
}

impl Eq for TextureUsage

TextureUsage::from_u64

fn TextureUsage::from_u64(raw : UInt64) -> TextureUsage

TextureUsage::to_u64

fn TextureUsage::to_u64(self : TextureUsage) -> UInt64

TextureView

TextureView::add_ref

fn TextureView::add_ref(self : TextureView) -> TextureView

TextureView::add_ref_raw

fn TextureView::add_ref_raw(self : TextureView) -> Unit

TextureView::null

fn TextureView::null() -> TextureView

Null texture view for nullable descriptor slots. Do not release it.

TextureView::release

fn TextureView::release(self : TextureView) -> Unit

TextureView::release_raw

fn TextureView::release_raw(self : TextureView) -> Unit

TextureView::set_label

fn TextureView::set_label(self : TextureView, label : String) -> Unit

WaitAnyResult

pub struct WaitAnyResult {
status : UInt
completed : Bool
}

ADAPTER_TYPE_CPU

let ADAPTER_TYPE_CPU : UInt

ADAPTER_TYPE_DISCRETE_GPU

let ADAPTER_TYPE_DISCRETE_GPU : UInt

ADAPTER_TYPE_FORCE32

let ADAPTER_TYPE_FORCE32 : UInt

ADAPTER_TYPE_INTEGRATED_GPU

let ADAPTER_TYPE_INTEGRATED_GPU : UInt

ADAPTER_TYPE_UNKNOWN

let ADAPTER_TYPE_UNKNOWN : UInt

ADDRESS_MODE_CLAMP_TO_EDGE

let ADDRESS_MODE_CLAMP_TO_EDGE : UInt

ADDRESS_MODE_FORCE32

let ADDRESS_MODE_FORCE32 : UInt

ADDRESS_MODE_MIRROR_REPEAT

let ADDRESS_MODE_MIRROR_REPEAT : UInt

ADDRESS_MODE_REPEAT

let ADDRESS_MODE_REPEAT : UInt

ADDRESS_MODE_UNDEFINED

let ADDRESS_MODE_UNDEFINED : UInt

ARRAY_LAYER_COUNT_UNDEFINED

let ARRAY_LAYER_COUNT_UNDEFINED : UInt

BACKEND_TYPE_D3_D11

let BACKEND_TYPE_D3_D11 : UInt

BACKEND_TYPE_D3_D12

let BACKEND_TYPE_D3_D12 : UInt

BACKEND_TYPE_FORCE32

let BACKEND_TYPE_FORCE32 : UInt

BACKEND_TYPE_METAL

let BACKEND_TYPE_METAL : UInt

BACKEND_TYPE_NULL

let BACKEND_TYPE_NULL : UInt

BACKEND_TYPE_OPEN_GL

let BACKEND_TYPE_OPEN_GL : UInt

BACKEND_TYPE_OPEN_GLES

let BACKEND_TYPE_OPEN_GLES : UInt

BACKEND_TYPE_UNDEFINED

let BACKEND_TYPE_UNDEFINED : UInt

BACKEND_TYPE_VULKAN

let BACKEND_TYPE_VULKAN : UInt

BACKEND_TYPE_WEB_GPU

let BACKEND_TYPE_WEB_GPU : UInt

BLEND_FACTOR_CONSTANT

let BLEND_FACTOR_CONSTANT : UInt

BLEND_FACTOR_DST

let BLEND_FACTOR_DST : UInt

BLEND_FACTOR_DST_ALPHA

let BLEND_FACTOR_DST_ALPHA : UInt

BLEND_FACTOR_FORCE32

let BLEND_FACTOR_FORCE32 : UInt

BLEND_FACTOR_ONE

let BLEND_FACTOR_ONE : UInt

BLEND_FACTOR_ONE_MINUS_CONSTANT

let BLEND_FACTOR_ONE_MINUS_CONSTANT : UInt

BLEND_FACTOR_ONE_MINUS_DST

let BLEND_FACTOR_ONE_MINUS_DST : UInt

BLEND_FACTOR_ONE_MINUS_DST_ALPHA

let BLEND_FACTOR_ONE_MINUS_DST_ALPHA : UInt

BLEND_FACTOR_ONE_MINUS_SRC

let BLEND_FACTOR_ONE_MINUS_SRC : UInt

BLEND_FACTOR_ONE_MINUS_SRC1

let BLEND_FACTOR_ONE_MINUS_SRC1 : UInt

BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA

let BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA : UInt

BLEND_FACTOR_ONE_MINUS_SRC_ALPHA

let BLEND_FACTOR_ONE_MINUS_SRC_ALPHA : UInt

BLEND_FACTOR_SRC

let BLEND_FACTOR_SRC : UInt

BLEND_FACTOR_SRC1

let BLEND_FACTOR_SRC1 : UInt

BLEND_FACTOR_SRC1_ALPHA

let BLEND_FACTOR_SRC1_ALPHA : UInt

BLEND_FACTOR_SRC_ALPHA

let BLEND_FACTOR_SRC_ALPHA : UInt

BLEND_FACTOR_SRC_ALPHA_SATURATED

let BLEND_FACTOR_SRC_ALPHA_SATURATED : UInt

BLEND_FACTOR_UNDEFINED

let BLEND_FACTOR_UNDEFINED : UInt

BLEND_FACTOR_ZERO

let BLEND_FACTOR_ZERO : UInt

BLEND_OPERATION_ADD

let BLEND_OPERATION_ADD : UInt

BLEND_OPERATION_FORCE32

let BLEND_OPERATION_FORCE32 : UInt

BLEND_OPERATION_MAX

let BLEND_OPERATION_MAX : UInt

BLEND_OPERATION_MIN

let BLEND_OPERATION_MIN : UInt

BLEND_OPERATION_REVERSE_SUBTRACT

let BLEND_OPERATION_REVERSE_SUBTRACT : UInt

BLEND_OPERATION_SUBTRACT

let BLEND_OPERATION_SUBTRACT : UInt

BLEND_OPERATION_UNDEFINED

let BLEND_OPERATION_UNDEFINED : UInt

BUFFER_BINDING_TYPE_BINDING_NOT_USED

let BUFFER_BINDING_TYPE_BINDING_NOT_USED : UInt

BUFFER_BINDING_TYPE_FORCE32

let BUFFER_BINDING_TYPE_FORCE32 : UInt

BUFFER_BINDING_TYPE_READ_ONLY_STORAGE

let BUFFER_BINDING_TYPE_READ_ONLY_STORAGE : UInt

BUFFER_BINDING_TYPE_STORAGE

let BUFFER_BINDING_TYPE_STORAGE : UInt

BUFFER_BINDING_TYPE_UNDEFINED

let BUFFER_BINDING_TYPE_UNDEFINED : UInt

BUFFER_BINDING_TYPE_UNIFORM

let BUFFER_BINDING_TYPE_UNIFORM : UInt

BUFFER_MAP_STATE_FORCE32

let BUFFER_MAP_STATE_FORCE32 : UInt

BUFFER_MAP_STATE_MAPPED

let BUFFER_MAP_STATE_MAPPED : UInt

BUFFER_MAP_STATE_PENDING

let BUFFER_MAP_STATE_PENDING : UInt

BUFFER_MAP_STATE_UNMAPPED

let BUFFER_MAP_STATE_UNMAPPED : UInt

BUFFER_USAGE_COPY_DST

let BUFFER_USAGE_COPY_DST : UInt64

BUFFER_USAGE_COPY_SRC

let BUFFER_USAGE_COPY_SRC : UInt64

BUFFER_USAGE_INDEX

let BUFFER_USAGE_INDEX : UInt64

BUFFER_USAGE_INDIRECT

let BUFFER_USAGE_INDIRECT : UInt64

BUFFER_USAGE_MAP_READ

let BUFFER_USAGE_MAP_READ : UInt64

BUFFER_USAGE_MAP_WRITE

let BUFFER_USAGE_MAP_WRITE : UInt64

BUFFER_USAGE_NONE

let BUFFER_USAGE_NONE : UInt64

BUFFER_USAGE_QUERY_RESOLVE

let BUFFER_USAGE_QUERY_RESOLVE : UInt64

BUFFER_USAGE_STORAGE

let BUFFER_USAGE_STORAGE : UInt64

BUFFER_USAGE_UNIFORM

let BUFFER_USAGE_UNIFORM : UInt64

BUFFER_USAGE_VERTEX

let BUFFER_USAGE_VERTEX : UInt64

CALLBACK_MODE_ALLOW_PROCESS_EVENTS

let CALLBACK_MODE_ALLOW_PROCESS_EVENTS : UInt

CALLBACK_MODE_ALLOW_SPONTANEOUS

let CALLBACK_MODE_ALLOW_SPONTANEOUS : UInt

CALLBACK_MODE_FORCE32

let CALLBACK_MODE_FORCE32 : UInt

CALLBACK_MODE_WAIT_ANY_ONLY

let CALLBACK_MODE_WAIT_ANY_ONLY : UInt

COLOR_WRITE_MASK_ALL

let COLOR_WRITE_MASK_ALL : UInt64

COLOR_WRITE_MASK_ALPHA

let COLOR_WRITE_MASK_ALPHA : UInt64

COLOR_WRITE_MASK_BLUE

let COLOR_WRITE_MASK_BLUE : UInt64

COLOR_WRITE_MASK_GREEN

let COLOR_WRITE_MASK_GREEN : UInt64

COLOR_WRITE_MASK_NONE

let COLOR_WRITE_MASK_NONE : UInt64

COLOR_WRITE_MASK_RED

let COLOR_WRITE_MASK_RED : UInt64

COMPARE_FUNCTION_ALWAYS

let COMPARE_FUNCTION_ALWAYS : UInt

COMPARE_FUNCTION_EQUAL

let COMPARE_FUNCTION_EQUAL : UInt

COMPARE_FUNCTION_FORCE32

let COMPARE_FUNCTION_FORCE32 : UInt

COMPARE_FUNCTION_GREATER

let COMPARE_FUNCTION_GREATER : UInt

COMPARE_FUNCTION_GREATER_EQUAL

let COMPARE_FUNCTION_GREATER_EQUAL : UInt

COMPARE_FUNCTION_LESS

let COMPARE_FUNCTION_LESS : UInt

COMPARE_FUNCTION_LESS_EQUAL

let COMPARE_FUNCTION_LESS_EQUAL : UInt

COMPARE_FUNCTION_NEVER

let COMPARE_FUNCTION_NEVER : UInt

COMPARE_FUNCTION_NOT_EQUAL

let COMPARE_FUNCTION_NOT_EQUAL : UInt

COMPARE_FUNCTION_UNDEFINED

let COMPARE_FUNCTION_UNDEFINED : UInt

COMPILATION_INFO_REQUEST_STATUS_CALLBACK_CANCELLED

let COMPILATION_INFO_REQUEST_STATUS_CALLBACK_CANCELLED : UInt

COMPILATION_INFO_REQUEST_STATUS_FORCE32

let COMPILATION_INFO_REQUEST_STATUS_FORCE32 : UInt

COMPILATION_INFO_REQUEST_STATUS_SUCCESS

let COMPILATION_INFO_REQUEST_STATUS_SUCCESS : UInt

COMPILATION_MESSAGE_TYPE_ERROR

let COMPILATION_MESSAGE_TYPE_ERROR : UInt

COMPILATION_MESSAGE_TYPE_FORCE32

let COMPILATION_MESSAGE_TYPE_FORCE32 : UInt

COMPILATION_MESSAGE_TYPE_INFO

let COMPILATION_MESSAGE_TYPE_INFO : UInt

COMPILATION_MESSAGE_TYPE_WARNING

let COMPILATION_MESSAGE_TYPE_WARNING : UInt

COMPONENT_SWIZZLE_A

let COMPONENT_SWIZZLE_A : UInt

COMPONENT_SWIZZLE_B

let COMPONENT_SWIZZLE_B : UInt

COMPONENT_SWIZZLE_FORCE32

let COMPONENT_SWIZZLE_FORCE32 : UInt

COMPONENT_SWIZZLE_G

let COMPONENT_SWIZZLE_G : UInt

COMPONENT_SWIZZLE_ONE

let COMPONENT_SWIZZLE_ONE : UInt

COMPONENT_SWIZZLE_R

let COMPONENT_SWIZZLE_R : UInt

COMPONENT_SWIZZLE_UNDEFINED

let COMPONENT_SWIZZLE_UNDEFINED : UInt

COMPONENT_SWIZZLE_ZERO

let COMPONENT_SWIZZLE_ZERO : UInt

COMPOSITE_ALPHA_MODE_AUTO

let COMPOSITE_ALPHA_MODE_AUTO : UInt

COMPOSITE_ALPHA_MODE_FORCE32

let COMPOSITE_ALPHA_MODE_FORCE32 : UInt

COMPOSITE_ALPHA_MODE_INHERIT

let COMPOSITE_ALPHA_MODE_INHERIT : UInt

COMPOSITE_ALPHA_MODE_OPAQUE

let COMPOSITE_ALPHA_MODE_OPAQUE : UInt

COMPOSITE_ALPHA_MODE_PREMULTIPLIED

let COMPOSITE_ALPHA_MODE_PREMULTIPLIED : UInt

COMPOSITE_ALPHA_MODE_UNPREMULTIPLIED

let COMPOSITE_ALPHA_MODE_UNPREMULTIPLIED : UInt

COMPUTE_PIPELINE_DESC_ERR_ENTRY_EMPTY

let COMPUTE_PIPELINE_DESC_ERR_ENTRY_EMPTY : UInt

COMPUTE_PIPELINE_DESC_ERR_ENTRY_TOO_LONG

let COMPUTE_PIPELINE_DESC_ERR_ENTRY_TOO_LONG : UInt

COMPUTE_PIPELINE_DESC_ERR_NULL_DESCRIPTOR

let COMPUTE_PIPELINE_DESC_ERR_NULL_DESCRIPTOR : UInt

COMPUTE_PIPELINE_DESC_ERR_OOM

let COMPUTE_PIPELINE_DESC_ERR_OOM : UInt

COPY_STRIDE_UNDEFINED

let COPY_STRIDE_UNDEFINED : UInt

CREATE_PIPELINE_ASYNC_STATUS_CALLBACK_CANCELLED

let CREATE_PIPELINE_ASYNC_STATUS_CALLBACK_CANCELLED : UInt

CREATE_PIPELINE_ASYNC_STATUS_FORCE32

let CREATE_PIPELINE_ASYNC_STATUS_FORCE32 : UInt

CREATE_PIPELINE_ASYNC_STATUS_INTERNAL_ERROR

let CREATE_PIPELINE_ASYNC_STATUS_INTERNAL_ERROR : UInt

CREATE_PIPELINE_ASYNC_STATUS_SUCCESS

let CREATE_PIPELINE_ASYNC_STATUS_SUCCESS : UInt

CREATE_PIPELINE_ASYNC_STATUS_VALIDATION_ERROR

let CREATE_PIPELINE_ASYNC_STATUS_VALIDATION_ERROR : UInt

CULL_MODE_BACK

let CULL_MODE_BACK : UInt

CULL_MODE_FORCE32

let CULL_MODE_FORCE32 : UInt

CULL_MODE_FRONT

let CULL_MODE_FRONT : UInt

CULL_MODE_NONE

let CULL_MODE_NONE : UInt

CULL_MODE_UNDEFINED

let CULL_MODE_UNDEFINED : UInt

DEPTH_SLICE_UNDEFINED

let DEPTH_SLICE_UNDEFINED : UInt

DEVICE_LOST_REASON_CALLBACK_CANCELLED

let DEVICE_LOST_REASON_CALLBACK_CANCELLED : UInt

DEVICE_LOST_REASON_DESTROYED

let DEVICE_LOST_REASON_DESTROYED : UInt

DEVICE_LOST_REASON_FAILED_CREATION

let DEVICE_LOST_REASON_FAILED_CREATION : UInt

DEVICE_LOST_REASON_FORCE32

let DEVICE_LOST_REASON_FORCE32 : UInt

DEVICE_LOST_REASON_UNKNOWN

let DEVICE_LOST_REASON_UNKNOWN : UInt

DX12_COMPILER_DXC

let DX12_COMPILER_DXC : UInt

DX12_COMPILER_FORCE32

let DX12_COMPILER_FORCE32 : UInt

DX12_COMPILER_FXC

let DX12_COMPILER_FXC : UInt

DX12_COMPILER_UNDEFINED

let DX12_COMPILER_UNDEFINED : UInt

DX12_SWAPCHAIN_KIND_DXGI_FROM_HWND

let DX12_SWAPCHAIN_KIND_DXGI_FROM_HWND : UInt

DX12_SWAPCHAIN_KIND_DXGI_FROM_VISUAL

let DX12_SWAPCHAIN_KIND_DXGI_FROM_VISUAL : UInt

DX12_SWAPCHAIN_KIND_FORCE32

let DX12_SWAPCHAIN_KIND_FORCE32 : UInt

DX12_SWAPCHAIN_KIND_UNDEFINED

let DX12_SWAPCHAIN_KIND_UNDEFINED : UInt

DXC_MAX_SHADER_MODEL_FORCE32

let DXC_MAX_SHADER_MODEL_FORCE32 : UInt

DXC_MAX_SHADER_MODEL_V6_0

let DXC_MAX_SHADER_MODEL_V6_0 : UInt

DXC_MAX_SHADER_MODEL_V6_1

let DXC_MAX_SHADER_MODEL_V6_1 : UInt

DXC_MAX_SHADER_MODEL_V6_2

let DXC_MAX_SHADER_MODEL_V6_2 : UInt

DXC_MAX_SHADER_MODEL_V6_3

let DXC_MAX_SHADER_MODEL_V6_3 : UInt

DXC_MAX_SHADER_MODEL_V6_4

let DXC_MAX_SHADER_MODEL_V6_4 : UInt

DXC_MAX_SHADER_MODEL_V6_5

let DXC_MAX_SHADER_MODEL_V6_5 : UInt

DXC_MAX_SHADER_MODEL_V6_6

let DXC_MAX_SHADER_MODEL_V6_6 : UInt

DXC_MAX_SHADER_MODEL_V6_7

let DXC_MAX_SHADER_MODEL_V6_7 : UInt

ERROR_FILTER_FORCE32

let ERROR_FILTER_FORCE32 : UInt

ERROR_FILTER_INTERNAL

let ERROR_FILTER_INTERNAL : UInt

ERROR_FILTER_OUT_OF_MEMORY

let ERROR_FILTER_OUT_OF_MEMORY : UInt

ERROR_FILTER_VALIDATION

let ERROR_FILTER_VALIDATION : UInt

ERROR_TYPE_FORCE32

let ERROR_TYPE_FORCE32 : UInt

ERROR_TYPE_INTERNAL

let ERROR_TYPE_INTERNAL : UInt

ERROR_TYPE_NO_ERROR

let ERROR_TYPE_NO_ERROR : UInt

ERROR_TYPE_OUT_OF_MEMORY

let ERROR_TYPE_OUT_OF_MEMORY : UInt

ERROR_TYPE_UNKNOWN

let ERROR_TYPE_UNKNOWN : UInt

ERROR_TYPE_VALIDATION

let ERROR_TYPE_VALIDATION : UInt

FEATURES_DEPTH_CLIP_CONTROL

let FEATURES_DEPTH_CLIP_CONTROL : UInt64

FEATURES_EXPERIMENTAL_MESH_SHADER

let FEATURES_EXPERIMENTAL_MESH_SHADER : UInt64

FEATURES_EXPERIMENTAL_MESH_SHADER_POINTS

let FEATURES_EXPERIMENTAL_MESH_SHADER_POINTS : UInt64

FEATURES_PUSH_CONSTANTS

let FEATURES_PUSH_CONSTANTS : UInt64

FEATURES_QUERYABLE_MASK

let FEATURES_QUERYABLE_MASK : UInt64

FEATURES_SHADER_INT64

let FEATURES_SHADER_INT64 : UInt64

FEATURES_SUBGROUP

let FEATURES_SUBGROUP : UInt64

FEATURES_TEXTURE_ATOMIC

let FEATURES_TEXTURE_ATOMIC : UInt64

FEATURES_TEXTURE_INT64_ATOMIC

let FEATURES_TEXTURE_INT64_ATOMIC : UInt64

FEATURE_LEVEL_COMPATIBILITY

let FEATURE_LEVEL_COMPATIBILITY : UInt

FEATURE_LEVEL_CORE

let FEATURE_LEVEL_CORE : UInt

FEATURE_LEVEL_FORCE32

let FEATURE_LEVEL_FORCE32 : UInt

FEATURE_LEVEL_UNDEFINED

let FEATURE_LEVEL_UNDEFINED : UInt

FEATURE_NAME_BGRA8_UNORM_STORAGE

let FEATURE_NAME_BGRA8_UNORM_STORAGE : UInt

FEATURE_NAME_CLIP_DISTANCES

let FEATURE_NAME_CLIP_DISTANCES : UInt

FEATURE_NAME_CORE_FEATURES_AND_LIMITS

let FEATURE_NAME_CORE_FEATURES_AND_LIMITS : UInt

FEATURE_NAME_DEPTH32_FLOAT_STENCIL8

let FEATURE_NAME_DEPTH32_FLOAT_STENCIL8 : UInt

FEATURE_NAME_DEPTH_CLIP_CONTROL

let FEATURE_NAME_DEPTH_CLIP_CONTROL : UInt

FEATURE_NAME_DUAL_SOURCE_BLENDING

let FEATURE_NAME_DUAL_SOURCE_BLENDING : UInt

FEATURE_NAME_FLOAT32_BLENDABLE

let FEATURE_NAME_FLOAT32_BLENDABLE : UInt

FEATURE_NAME_FLOAT32_FILTERABLE

let FEATURE_NAME_FLOAT32_FILTERABLE : UInt

FEATURE_NAME_FORCE32

let FEATURE_NAME_FORCE32 : UInt

FEATURE_NAME_INDIRECT_FIRST_INSTANCE

let FEATURE_NAME_INDIRECT_FIRST_INSTANCE : UInt

FEATURE_NAME_PRIMITIVE_INDEX

let FEATURE_NAME_PRIMITIVE_INDEX : UInt

FEATURE_NAME_RG11_B10_UFLOAT_RENDERABLE

let FEATURE_NAME_RG11_B10_UFLOAT_RENDERABLE : UInt

FEATURE_NAME_SHADER_F16

let FEATURE_NAME_SHADER_F16 : UInt

FEATURE_NAME_SHADER_INT64

let FEATURE_NAME_SHADER_INT64 : UInt

FEATURE_NAME_SUBGROUP

let FEATURE_NAME_SUBGROUP : UInt

FEATURE_NAME_SUBGROUPS

let FEATURE_NAME_SUBGROUPS : UInt

FEATURE_NAME_TEXTURE_COMPONENT_SWIZZLE

let FEATURE_NAME_TEXTURE_COMPONENT_SWIZZLE : UInt

FEATURE_NAME_TEXTURE_COMPRESSION_ASTC

let FEATURE_NAME_TEXTURE_COMPRESSION_ASTC : UInt

FEATURE_NAME_TEXTURE_COMPRESSION_ASTC_SLICED3D

let FEATURE_NAME_TEXTURE_COMPRESSION_ASTC_SLICED3D : UInt

FEATURE_NAME_TEXTURE_COMPRESSION_BC

let FEATURE_NAME_TEXTURE_COMPRESSION_BC : UInt

FEATURE_NAME_TEXTURE_COMPRESSION_BC_SLICED3D

let FEATURE_NAME_TEXTURE_COMPRESSION_BC_SLICED3D : UInt

FEATURE_NAME_TEXTURE_COMPRESSION_ETC2

let FEATURE_NAME_TEXTURE_COMPRESSION_ETC2 : UInt

FEATURE_NAME_TEXTURE_FORMATS_TIER1

let FEATURE_NAME_TEXTURE_FORMATS_TIER1 : UInt

FEATURE_NAME_TEXTURE_FORMATS_TIER2

let FEATURE_NAME_TEXTURE_FORMATS_TIER2 : UInt

FEATURE_NAME_TIMESTAMP_QUERY

let FEATURE_NAME_TIMESTAMP_QUERY : UInt

FILTER_MODE_FORCE32

let FILTER_MODE_FORCE32 : UInt

FILTER_MODE_LINEAR

let FILTER_MODE_LINEAR : UInt

FILTER_MODE_NEAREST

let FILTER_MODE_NEAREST : UInt

FILTER_MODE_UNDEFINED

let FILTER_MODE_UNDEFINED : UInt

FRONT_FACE_CCW

let FRONT_FACE_CCW : UInt

FRONT_FACE_CW

let FRONT_FACE_CW : UInt

FRONT_FACE_FORCE32

let FRONT_FACE_FORCE32 : UInt

FRONT_FACE_UNDEFINED

let FRONT_FACE_UNDEFINED : UInt

GLES3_MINOR_VERSION_AUTOMATIC

let GLES3_MINOR_VERSION_AUTOMATIC : UInt

GLES3_MINOR_VERSION_FORCE32

let GLES3_MINOR_VERSION_FORCE32 : UInt

GLES3_MINOR_VERSION_VERSION0

let GLES3_MINOR_VERSION_VERSION0 : UInt

GLES3_MINOR_VERSION_VERSION1

let GLES3_MINOR_VERSION_VERSION1 : UInt

GLES3_MINOR_VERSION_VERSION2

let GLES3_MINOR_VERSION_VERSION2 : UInt

GL_FENCE_BEHAVIOUR_AUTO_FINISH

let GL_FENCE_BEHAVIOUR_AUTO_FINISH : UInt

GL_FENCE_BEHAVIOUR_FORCE32

let GL_FENCE_BEHAVIOUR_FORCE32 : UInt

GL_FENCE_BEHAVIOUR_NORMAL

let GL_FENCE_BEHAVIOUR_NORMAL : UInt

INDEX_FORMAT_FORCE32

let INDEX_FORMAT_FORCE32 : UInt

INDEX_FORMAT_UINT16

let INDEX_FORMAT_UINT16 : UInt

INDEX_FORMAT_UINT32

let INDEX_FORMAT_UINT32 : UInt

INDEX_FORMAT_UNDEFINED

let INDEX_FORMAT_UNDEFINED : UInt

INSTANCE_BACKEND_ALL

let INSTANCE_BACKEND_ALL : UInt64

INSTANCE_BACKEND_FORCE32

let INSTANCE_BACKEND_FORCE32 : UInt64

INSTANCE_FEATURE_NAME_FORCE32

let INSTANCE_FEATURE_NAME_FORCE32 : UInt

INSTANCE_FEATURE_NAME_MULTIPLE_DEVICES_PER_ADAPTER

let INSTANCE_FEATURE_NAME_MULTIPLE_DEVICES_PER_ADAPTER : UInt

INSTANCE_FEATURE_NAME_SHADER_SOURCE_SPIRV

let INSTANCE_FEATURE_NAME_SHADER_SOURCE_SPIRV : UInt

INSTANCE_FEATURE_NAME_TIMED_WAIT_ANY

let INSTANCE_FEATURE_NAME_TIMED_WAIT_ANY : UInt

INSTANCE_FLAG_DEFAULT

let INSTANCE_FLAG_DEFAULT : UInt

INSTANCE_FLAG_EMPTY

let INSTANCE_FLAG_EMPTY : UInt64

INSTANCE_FLAG_FORCE32

let INSTANCE_FLAG_FORCE32 : UInt64

LIMIT_U32_UNDEFINED

let LIMIT_U32_UNDEFINED : UInt

LIMIT_U64_UNDEFINED

let LIMIT_U64_UNDEFINED : UInt64

LOAD_OP_CLEAR

let LOAD_OP_CLEAR : UInt

LOAD_OP_FORCE32

let LOAD_OP_FORCE32 : UInt

LOAD_OP_LOAD

let LOAD_OP_LOAD : UInt

LOAD_OP_UNDEFINED

let LOAD_OP_UNDEFINED : UInt

LOG_LEVEL_DEBUG

let LOG_LEVEL_DEBUG : UInt

LOG_LEVEL_ERROR

let LOG_LEVEL_ERROR : UInt

LOG_LEVEL_FORCE32

let LOG_LEVEL_FORCE32 : UInt

LOG_LEVEL_INFO

let LOG_LEVEL_INFO : UInt

LOG_LEVEL_OFF

let LOG_LEVEL_OFF : UInt

LOG_LEVEL_TRACE

let LOG_LEVEL_TRACE : UInt

LOG_LEVEL_WARN

let LOG_LEVEL_WARN : UInt

MAP_ASYNC_STATUS_ABORTED

let MAP_ASYNC_STATUS_ABORTED : UInt

MAP_ASYNC_STATUS_CALLBACK_CANCELLED

let MAP_ASYNC_STATUS_CALLBACK_CANCELLED : UInt

MAP_ASYNC_STATUS_ERROR

let MAP_ASYNC_STATUS_ERROR : UInt

MAP_ASYNC_STATUS_FORCE32

let MAP_ASYNC_STATUS_FORCE32 : UInt

MAP_ASYNC_STATUS_SUCCESS

let MAP_ASYNC_STATUS_SUCCESS : UInt

MAP_MODE_NONE

let MAP_MODE_NONE : UInt64

MAP_MODE_READ

let MAP_MODE_READ : UInt64

MAP_MODE_WRITE

let MAP_MODE_WRITE : UInt64

MIPMAP_FILTER_MODE_FORCE32

let MIPMAP_FILTER_MODE_FORCE32 : UInt

MIPMAP_FILTER_MODE_LINEAR

let MIPMAP_FILTER_MODE_LINEAR : UInt

MIPMAP_FILTER_MODE_NEAREST

let MIPMAP_FILTER_MODE_NEAREST : UInt

MIPMAP_FILTER_MODE_UNDEFINED

let MIPMAP_FILTER_MODE_UNDEFINED : UInt

MIP_LEVEL_COUNT_UNDEFINED

let MIP_LEVEL_COUNT_UNDEFINED : UInt

NATIVE_ADDRESS_MODE_CLAMP_TO_BORDER

let NATIVE_ADDRESS_MODE_CLAMP_TO_BORDER : UInt

NATIVE_ADDRESS_MODE_FORCE32

let NATIVE_ADDRESS_MODE_FORCE32 : UInt

NATIVE_DISPLAY_HANDLE_TYPE_FORCE32

let NATIVE_DISPLAY_HANDLE_TYPE_FORCE32 : UInt

NATIVE_DISPLAY_HANDLE_TYPE_NONE

let NATIVE_DISPLAY_HANDLE_TYPE_NONE : UInt

NATIVE_DISPLAY_HANDLE_TYPE_WAYLAND

let NATIVE_DISPLAY_HANDLE_TYPE_WAYLAND : UInt

NATIVE_DISPLAY_HANDLE_TYPE_XCB

let NATIVE_DISPLAY_HANDLE_TYPE_XCB : UInt

NATIVE_DISPLAY_HANDLE_TYPE_XLIB

let NATIVE_DISPLAY_HANDLE_TYPE_XLIB : UInt

NATIVE_FEATURE_ACCELERATION_STRUCTURE_BINDING_ARRAY

let NATIVE_FEATURE_ACCELERATION_STRUCTURE_BINDING_ARRAY : UInt

NATIVE_FEATURE_ADDRESS_MODE_CLAMP_TO_BORDER

let NATIVE_FEATURE_ADDRESS_MODE_CLAMP_TO_BORDER : UInt

NATIVE_FEATURE_ADDRESS_MODE_CLAMP_TO_ZERO

let NATIVE_FEATURE_ADDRESS_MODE_CLAMP_TO_ZERO : UInt

NATIVE_FEATURE_BUFFER_BINDING_ARRAY

let NATIVE_FEATURE_BUFFER_BINDING_ARRAY : UInt

NATIVE_FEATURE_CLEAR_TEXTURE

let NATIVE_FEATURE_CLEAR_TEXTURE : UInt

NATIVE_FEATURE_CONSERVATIVE_RASTERIZATION

let NATIVE_FEATURE_CONSERVATIVE_RASTERIZATION : UInt

NATIVE_FEATURE_COOPERATIVE_MATRIX

let NATIVE_FEATURE_COOPERATIVE_MATRIX : UInt

NATIVE_FEATURE_FORCE32

let NATIVE_FEATURE_FORCE32 : UInt

NATIVE_FEATURE_IMMEDIATES

let NATIVE_FEATURE_IMMEDIATES : UInt

NATIVE_FEATURE_MAPPABLE_PRIMARY_BUFFERS

let NATIVE_FEATURE_MAPPABLE_PRIMARY_BUFFERS : UInt

NATIVE_FEATURE_MEMORY_DECORATION_COHERENT

let NATIVE_FEATURE_MEMORY_DECORATION_COHERENT : UInt

NATIVE_FEATURE_MEMORY_DECORATION_VOLATILE

let NATIVE_FEATURE_MEMORY_DECORATION_VOLATILE : UInt

NATIVE_FEATURE_MULTISAMPLE_ARRAY

let NATIVE_FEATURE_MULTISAMPLE_ARRAY : UInt

NATIVE_FEATURE_MULTIVIEW

let NATIVE_FEATURE_MULTIVIEW : UInt

NATIVE_FEATURE_MULTI_DRAW_INDIRECT_COUNT

let NATIVE_FEATURE_MULTI_DRAW_INDIRECT_COUNT : UInt

NATIVE_FEATURE_PARTIALLY_BOUND_BINDING_ARRAY

let NATIVE_FEATURE_PARTIALLY_BOUND_BINDING_ARRAY : UInt

NATIVE_FEATURE_PIPELINE_CACHE

let NATIVE_FEATURE_PIPELINE_CACHE : UInt

NATIVE_FEATURE_PIPELINE_STATISTICS_QUERY

let NATIVE_FEATURE_PIPELINE_STATISTICS_QUERY : UInt

NATIVE_FEATURE_POLYGON_MODE_LINE

let NATIVE_FEATURE_POLYGON_MODE_LINE : UInt

NATIVE_FEATURE_POLYGON_MODE_POINT

let NATIVE_FEATURE_POLYGON_MODE_POINT : UInt

NATIVE_FEATURE_RAY_QUERY

let NATIVE_FEATURE_RAY_QUERY : UInt

NATIVE_FEATURE_SAMPLED_TEXTURE_AND_STORAGE_BUFFER_ARRAY_NON_UNIFORM_INDEXING

let NATIVE_FEATURE_SAMPLED_TEXTURE_AND_STORAGE_BUFFER_ARRAY_NON_UNIFORM_INDEXING : UInt

NATIVE_FEATURE_SELECTIVE_MULTIVIEW

let NATIVE_FEATURE_SELECTIVE_MULTIVIEW : UInt

NATIVE_FEATURE_SHADER_BARYCENTRICS

let NATIVE_FEATURE_SHADER_BARYCENTRICS : UInt

NATIVE_FEATURE_SHADER_DRAW_INDEX

let NATIVE_FEATURE_SHADER_DRAW_INDEX : UInt

NATIVE_FEATURE_SHADER_EARLY_DEPTH_TEST

let NATIVE_FEATURE_SHADER_EARLY_DEPTH_TEST : UInt

NATIVE_FEATURE_SHADER_F64

let NATIVE_FEATURE_SHADER_F64 : UInt

NATIVE_FEATURE_SHADER_FLOAT32_ATOMIC

let NATIVE_FEATURE_SHADER_FLOAT32_ATOMIC : UInt

NATIVE_FEATURE_SHADER_I16

let NATIVE_FEATURE_SHADER_I16 : UInt

NATIVE_FEATURE_SHADER_INT64

let NATIVE_FEATURE_SHADER_INT64 : UInt

NATIVE_FEATURE_SHADER_INT64_ATOMIC_ALL_OPS

let NATIVE_FEATURE_SHADER_INT64_ATOMIC_ALL_OPS : UInt

NATIVE_FEATURE_SHADER_INT64_ATOMIC_MIN_MAX

let NATIVE_FEATURE_SHADER_INT64_ATOMIC_MIN_MAX : UInt

NATIVE_FEATURE_SHADER_PER_VERTEX

let NATIVE_FEATURE_SHADER_PER_VERTEX : UInt

NATIVE_FEATURE_SHADER_PRIMITIVE_INDEX

let NATIVE_FEATURE_SHADER_PRIMITIVE_INDEX : UInt

NATIVE_FEATURE_STORAGE_RESOURCE_BINDING_ARRAY

let NATIVE_FEATURE_STORAGE_RESOURCE_BINDING_ARRAY : UInt

NATIVE_FEATURE_STORAGE_TEXTURE_ARRAY_NON_UNIFORM_INDEXING

let NATIVE_FEATURE_STORAGE_TEXTURE_ARRAY_NON_UNIFORM_INDEXING : UInt

NATIVE_FEATURE_SUBGROUP

let NATIVE_FEATURE_SUBGROUP : UInt

NATIVE_FEATURE_SUBGROUP_BARRIER

let NATIVE_FEATURE_SUBGROUP_BARRIER : UInt

NATIVE_FEATURE_SUBGROUP_VERTEX

let NATIVE_FEATURE_SUBGROUP_VERTEX : UInt

NATIVE_FEATURE_TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES

let NATIVE_FEATURE_TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES : UInt

NATIVE_FEATURE_TEXTURE_ATOMIC

let NATIVE_FEATURE_TEXTURE_ATOMIC : UInt

NATIVE_FEATURE_TEXTURE_BINDING_ARRAY

let NATIVE_FEATURE_TEXTURE_BINDING_ARRAY : UInt

NATIVE_FEATURE_TEXTURE_COMPRESSION_ASTC_HDR

let NATIVE_FEATURE_TEXTURE_COMPRESSION_ASTC_HDR : UInt

NATIVE_FEATURE_TEXTURE_FORMAT16BIT_NORM

let NATIVE_FEATURE_TEXTURE_FORMAT16BIT_NORM : UInt

NATIVE_FEATURE_TEXTURE_FORMAT_NV12

let NATIVE_FEATURE_TEXTURE_FORMAT_NV12 : UInt

NATIVE_FEATURE_TEXTURE_FORMAT_P010

let NATIVE_FEATURE_TEXTURE_FORMAT_P010 : UInt

NATIVE_FEATURE_TEXTURE_INT64_ATOMIC

let NATIVE_FEATURE_TEXTURE_INT64_ATOMIC : UInt

NATIVE_FEATURE_TIMESTAMP_QUERY_INSIDE_ENCODERS

let NATIVE_FEATURE_TIMESTAMP_QUERY_INSIDE_ENCODERS : UInt

NATIVE_FEATURE_TIMESTAMP_QUERY_INSIDE_PASSES

let NATIVE_FEATURE_TIMESTAMP_QUERY_INSIDE_PASSES : UInt

NATIVE_FEATURE_VERTEX_ATTRIBUTE64BIT

let NATIVE_FEATURE_VERTEX_ATTRIBUTE64BIT : UInt

NATIVE_FEATURE_VERTEX_WRITABLE_STORAGE

let NATIVE_FEATURE_VERTEX_WRITABLE_STORAGE : UInt

NATIVE_QUERY_TYPE_FORCE32

let NATIVE_QUERY_TYPE_FORCE32 : UInt

NATIVE_QUERY_TYPE_PIPELINE_STATISTICS

let NATIVE_QUERY_TYPE_PIPELINE_STATISTICS : UInt

NATIVE_SURFACE_GET_CURRENT_TEXTURE_STATUS_FORCE32

let NATIVE_SURFACE_GET_CURRENT_TEXTURE_STATUS_FORCE32 : UInt

NATIVE_S_TYPE_FORCE32

let NATIVE_S_TYPE_FORCE32 : UInt

NATIVE_TEXTURE_FORMAT_NV12

let NATIVE_TEXTURE_FORMAT_NV12 : UInt

NATIVE_TEXTURE_FORMAT_P010

let NATIVE_TEXTURE_FORMAT_P010 : UInt

OPTIONAL_BOOL_FALSE

let OPTIONAL_BOOL_FALSE : UInt

OPTIONAL_BOOL_FORCE32

let OPTIONAL_BOOL_FORCE32 : UInt

OPTIONAL_BOOL_TRUE

let OPTIONAL_BOOL_TRUE : UInt

OPTIONAL_BOOL_UNDEFINED

let OPTIONAL_BOOL_UNDEFINED : UInt

OPTIONAL_SYMBOL_AVAILABILITY_AVAILABLE

let OPTIONAL_SYMBOL_AVAILABILITY_AVAILABLE : UInt

OPTIONAL_SYMBOL_AVAILABILITY_DISABLED

let OPTIONAL_SYMBOL_AVAILABILITY_DISABLED : UInt

OPTIONAL_SYMBOL_AVAILABILITY_MISSING_SYMBOL

let OPTIONAL_SYMBOL_AVAILABILITY_MISSING_SYMBOL : UInt

OPTIONAL_SYMBOL_AVAILABILITY_NATIVE_UNAVAILABLE

let OPTIONAL_SYMBOL_AVAILABILITY_NATIVE_UNAVAILABLE : UInt

OPTIONAL_SYMBOL_ERROR_KIND_DISABLED

let OPTIONAL_SYMBOL_ERROR_KIND_DISABLED : UInt

OPTIONAL_SYMBOL_ERROR_KIND_MISSING_SYMBOL

let OPTIONAL_SYMBOL_ERROR_KIND_MISSING_SYMBOL : UInt

OPTIONAL_SYMBOL_ERROR_KIND_NATIVE_UNAVAILABLE

let OPTIONAL_SYMBOL_ERROR_KIND_NATIVE_UNAVAILABLE : UInt

OPTIONAL_SYMBOL_ERROR_KIND_RUNTIME_FAILED

let OPTIONAL_SYMBOL_ERROR_KIND_RUNTIME_FAILED : UInt

PIPELINE_STATISTIC_NAME_CLIPPER_INVOCATIONS

let PIPELINE_STATISTIC_NAME_CLIPPER_INVOCATIONS : UInt

PIPELINE_STATISTIC_NAME_CLIPPER_PRIMITIVES_OUT

let PIPELINE_STATISTIC_NAME_CLIPPER_PRIMITIVES_OUT : UInt

PIPELINE_STATISTIC_NAME_COMPUTE_SHADER_INVOCATIONS

let PIPELINE_STATISTIC_NAME_COMPUTE_SHADER_INVOCATIONS : UInt

PIPELINE_STATISTIC_NAME_FORCE32

let PIPELINE_STATISTIC_NAME_FORCE32 : UInt

PIPELINE_STATISTIC_NAME_FRAGMENT_SHADER_INVOCATIONS

let PIPELINE_STATISTIC_NAME_FRAGMENT_SHADER_INVOCATIONS : UInt

PIPELINE_STATISTIC_NAME_VERTEX_SHADER_INVOCATIONS

let PIPELINE_STATISTIC_NAME_VERTEX_SHADER_INVOCATIONS : UInt

POLYGON_MODE_FILL

let POLYGON_MODE_FILL : UInt

POLYGON_MODE_LINE

let POLYGON_MODE_LINE : UInt

POLYGON_MODE_POINT

let POLYGON_MODE_POINT : UInt

POP_ERROR_SCOPE_STATUS_CALLBACK_CANCELLED

let POP_ERROR_SCOPE_STATUS_CALLBACK_CANCELLED : UInt

POP_ERROR_SCOPE_STATUS_ERROR

let POP_ERROR_SCOPE_STATUS_ERROR : UInt

POP_ERROR_SCOPE_STATUS_FORCE32

let POP_ERROR_SCOPE_STATUS_FORCE32 : UInt

POP_ERROR_SCOPE_STATUS_SUCCESS

let POP_ERROR_SCOPE_STATUS_SUCCESS : UInt

POWER_PREFERENCE_FORCE32

let POWER_PREFERENCE_FORCE32 : UInt

POWER_PREFERENCE_HIGH_PERFORMANCE

let POWER_PREFERENCE_HIGH_PERFORMANCE : UInt

POWER_PREFERENCE_LOW_POWER

let POWER_PREFERENCE_LOW_POWER : UInt

POWER_PREFERENCE_UNDEFINED

let POWER_PREFERENCE_UNDEFINED : UInt

PREDEFINED_COLOR_SPACE_DISPLAY_P3

let PREDEFINED_COLOR_SPACE_DISPLAY_P3 : UInt

PREDEFINED_COLOR_SPACE_FORCE32

let PREDEFINED_COLOR_SPACE_FORCE32 : UInt

PREDEFINED_COLOR_SPACE_SRGB

let PREDEFINED_COLOR_SPACE_SRGB : UInt

PRESENT_MODE_FIFO

let PRESENT_MODE_FIFO : UInt

PRESENT_MODE_FIFO_RELAXED

let PRESENT_MODE_FIFO_RELAXED : UInt

PRESENT_MODE_FORCE32

let PRESENT_MODE_FORCE32 : UInt

PRESENT_MODE_IMMEDIATE

let PRESENT_MODE_IMMEDIATE : UInt

PRESENT_MODE_MAILBOX

let PRESENT_MODE_MAILBOX : UInt

PRESENT_MODE_UNDEFINED

let PRESENT_MODE_UNDEFINED : UInt

PRIMITIVE_TOPOLOGY_FORCE32

let PRIMITIVE_TOPOLOGY_FORCE32 : UInt

PRIMITIVE_TOPOLOGY_LINE_LIST

let PRIMITIVE_TOPOLOGY_LINE_LIST : UInt

PRIMITIVE_TOPOLOGY_LINE_STRIP

let PRIMITIVE_TOPOLOGY_LINE_STRIP : UInt

PRIMITIVE_TOPOLOGY_POINT_LIST

let PRIMITIVE_TOPOLOGY_POINT_LIST : UInt

PRIMITIVE_TOPOLOGY_TRIANGLE_LIST

let PRIMITIVE_TOPOLOGY_TRIANGLE_LIST : UInt

PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP

let PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP : UInt

PRIMITIVE_TOPOLOGY_UNDEFINED

let PRIMITIVE_TOPOLOGY_UNDEFINED : UInt

QUERY_SET_INDEX_UNDEFINED

let QUERY_SET_INDEX_UNDEFINED : UInt

QUERY_TYPE_FORCE32

let QUERY_TYPE_FORCE32 : UInt

QUERY_TYPE_OCCLUSION

let QUERY_TYPE_OCCLUSION : UInt

QUERY_TYPE_TIMESTAMP

let QUERY_TYPE_TIMESTAMP : UInt

QUEUE_WORK_DONE_STATUS_CALLBACK_CANCELLED

let QUEUE_WORK_DONE_STATUS_CALLBACK_CANCELLED : UInt

QUEUE_WORK_DONE_STATUS_ERROR

let QUEUE_WORK_DONE_STATUS_ERROR : UInt

QUEUE_WORK_DONE_STATUS_FORCE32

let QUEUE_WORK_DONE_STATUS_FORCE32 : UInt

QUEUE_WORK_DONE_STATUS_INSTANCE_DROPPED

let QUEUE_WORK_DONE_STATUS_INSTANCE_DROPPED : UInt

QUEUE_WORK_DONE_STATUS_SUCCESS

let QUEUE_WORK_DONE_STATUS_SUCCESS : UInt

QUEUE_WORK_DONE_STATUS_UNKNOWN

let QUEUE_WORK_DONE_STATUS_UNKNOWN : UInt

RENDER_PASS_DESC_ERR_COLOR_ATTACHMENT_INDEX_OOB

let RENDER_PASS_DESC_ERR_COLOR_ATTACHMENT_INDEX_OOB : UInt

RENDER_PASS_DESC_ERR_NULL_BUILDER

let RENDER_PASS_DESC_ERR_NULL_BUILDER : UInt

RENDER_PASS_DESC_ERR_OOM

let RENDER_PASS_DESC_ERR_OOM : UInt

RENDER_PIPELINE_DESC_ERR_COLOR_TARGET_COUNT_EXCEEDS_MAX

let RENDER_PIPELINE_DESC_ERR_COLOR_TARGET_COUNT_EXCEEDS_MAX : UInt

RENDER_PIPELINE_DESC_ERR_COLOR_TARGET_COUNT_ZERO

let RENDER_PIPELINE_DESC_ERR_COLOR_TARGET_COUNT_ZERO : UInt

RENDER_PIPELINE_DESC_ERR_COLOR_TARGET_INDEX_OOB

let RENDER_PIPELINE_DESC_ERR_COLOR_TARGET_INDEX_OOB : UInt

RENDER_PIPELINE_DESC_ERR_ENTRY_EMPTY

let RENDER_PIPELINE_DESC_ERR_ENTRY_EMPTY : UInt

RENDER_PIPELINE_DESC_ERR_ENTRY_TOO_LONG

let RENDER_PIPELINE_DESC_ERR_ENTRY_TOO_LONG : UInt

RENDER_PIPELINE_DESC_ERR_INTERNAL

let RENDER_PIPELINE_DESC_ERR_INTERNAL : UInt

RENDER_PIPELINE_DESC_ERR_NO_VERTEX_BUFFER_LAYOUT

let RENDER_PIPELINE_DESC_ERR_NO_VERTEX_BUFFER_LAYOUT : UInt

RENDER_PIPELINE_DESC_ERR_NULL_BUILDER

let RENDER_PIPELINE_DESC_ERR_NULL_BUILDER : UInt

RENDER_PIPELINE_DESC_ERR_OOM

let RENDER_PIPELINE_DESC_ERR_OOM : UInt

RENDER_PIPELINE_DESC_ERR_VERTEX_ATTRIBUTE_EXCEEDS_MAX

let RENDER_PIPELINE_DESC_ERR_VERTEX_ATTRIBUTE_EXCEEDS_MAX : UInt

RENDER_PIPELINE_DESC_ERR_VERTEX_BUFFER_LAYOUT_EXCEEDS_MAX

let RENDER_PIPELINE_DESC_ERR_VERTEX_BUFFER_LAYOUT_EXCEEDS_MAX : UInt

REQUEST_ADAPTER_STATUS_CALLBACK_CANCELLED

let REQUEST_ADAPTER_STATUS_CALLBACK_CANCELLED : UInt

REQUEST_ADAPTER_STATUS_ERROR

let REQUEST_ADAPTER_STATUS_ERROR : UInt

REQUEST_ADAPTER_STATUS_FORCE32

let REQUEST_ADAPTER_STATUS_FORCE32 : UInt

REQUEST_ADAPTER_STATUS_INSTANCE_DROPPED

let REQUEST_ADAPTER_STATUS_INSTANCE_DROPPED : UInt

REQUEST_ADAPTER_STATUS_SUCCESS

let REQUEST_ADAPTER_STATUS_SUCCESS : UInt

REQUEST_ADAPTER_STATUS_UNAVAILABLE

let REQUEST_ADAPTER_STATUS_UNAVAILABLE : UInt

REQUEST_ADAPTER_STATUS_UNKNOWN

let REQUEST_ADAPTER_STATUS_UNKNOWN : UInt

REQUEST_DEVICE_STATUS_CALLBACK_CANCELLED

let REQUEST_DEVICE_STATUS_CALLBACK_CANCELLED : UInt

REQUEST_DEVICE_STATUS_ERROR

let REQUEST_DEVICE_STATUS_ERROR : UInt

REQUEST_DEVICE_STATUS_FORCE32

let REQUEST_DEVICE_STATUS_FORCE32 : UInt

REQUEST_DEVICE_STATUS_INSTANCE_DROPPED

let REQUEST_DEVICE_STATUS_INSTANCE_DROPPED : UInt

REQUEST_DEVICE_STATUS_SUCCESS

let REQUEST_DEVICE_STATUS_SUCCESS : UInt

REQUEST_DEVICE_STATUS_UNKNOWN

let REQUEST_DEVICE_STATUS_UNKNOWN : UInt

SAMPLER_BINDING_TYPE_BINDING_NOT_USED

let SAMPLER_BINDING_TYPE_BINDING_NOT_USED : UInt

SAMPLER_BINDING_TYPE_COMPARISON

let SAMPLER_BINDING_TYPE_COMPARISON : UInt

SAMPLER_BINDING_TYPE_FILTERING

let SAMPLER_BINDING_TYPE_FILTERING : UInt

SAMPLER_BINDING_TYPE_FORCE32

let SAMPLER_BINDING_TYPE_FORCE32 : UInt

SAMPLER_BINDING_TYPE_NON_FILTERING

let SAMPLER_BINDING_TYPE_NON_FILTERING : UInt

SAMPLER_BINDING_TYPE_UNDEFINED

let SAMPLER_BINDING_TYPE_UNDEFINED : UInt

SAMPLER_BORDER_COLOR_FORCE32

let SAMPLER_BORDER_COLOR_FORCE32 : UInt

SAMPLER_BORDER_COLOR_OPAQUE_BLACK

let SAMPLER_BORDER_COLOR_OPAQUE_BLACK : UInt

SAMPLER_BORDER_COLOR_OPAQUE_WHITE

let SAMPLER_BORDER_COLOR_OPAQUE_WHITE : UInt

SAMPLER_BORDER_COLOR_TRANSPARENT_BLACK

let SAMPLER_BORDER_COLOR_TRANSPARENT_BLACK : UInt

SAMPLER_BORDER_COLOR_UNDEFINED

let SAMPLER_BORDER_COLOR_UNDEFINED : UInt

SAMPLER_BORDER_COLOR_ZERO

let SAMPLER_BORDER_COLOR_ZERO : UInt

SHADER_RUNTIME_CHECKS_BOUNDS_CHECKS

let SHADER_RUNTIME_CHECKS_BOUNDS_CHECKS : UInt64

SHADER_RUNTIME_CHECKS_FORCE_LOOP_BOUNDING

let SHADER_RUNTIME_CHECKS_FORCE_LOOP_BOUNDING : UInt64

SHADER_RUNTIME_CHECKS_MESH_SHADER_PRIMITIVE_INDICES_CLAMP

let SHADER_RUNTIME_CHECKS_MESH_SHADER_PRIMITIVE_INDICES_CLAMP : UInt64

SHADER_RUNTIME_CHECKS_NONE

let SHADER_RUNTIME_CHECKS_NONE : UInt64

SHADER_RUNTIME_CHECKS_RAY_QUERY_INITIALIZATION_TRACKING

let SHADER_RUNTIME_CHECKS_RAY_QUERY_INITIALIZATION_TRACKING : UInt64

SHADER_RUNTIME_CHECKS_TASK_SHADER_DISPATCH_TRACKING

let SHADER_RUNTIME_CHECKS_TASK_SHADER_DISPATCH_TRACKING : UInt64

SHADER_STAGE_COMPUTE

let SHADER_STAGE_COMPUTE : UInt64

SHADER_STAGE_FRAGMENT

let SHADER_STAGE_FRAGMENT : UInt64

SHADER_STAGE_NONE

let SHADER_STAGE_NONE : UInt64

SHADER_STAGE_VERTEX

let SHADER_STAGE_VERTEX : UInt64

STATUS_ERROR

let STATUS_ERROR : UInt

STATUS_FORCE32

let STATUS_FORCE32 : UInt

STATUS_SUCCESS

let STATUS_SUCCESS : UInt

STENCIL_OPERATION_DECREMENT_CLAMP

let STENCIL_OPERATION_DECREMENT_CLAMP : UInt

STENCIL_OPERATION_DECREMENT_WRAP

let STENCIL_OPERATION_DECREMENT_WRAP : UInt

STENCIL_OPERATION_FORCE32

let STENCIL_OPERATION_FORCE32 : UInt

STENCIL_OPERATION_INCREMENT_CLAMP

let STENCIL_OPERATION_INCREMENT_CLAMP : UInt

STENCIL_OPERATION_INCREMENT_WRAP

let STENCIL_OPERATION_INCREMENT_WRAP : UInt

STENCIL_OPERATION_INVERT

let STENCIL_OPERATION_INVERT : UInt

STENCIL_OPERATION_KEEP

let STENCIL_OPERATION_KEEP : UInt

STENCIL_OPERATION_REPLACE

let STENCIL_OPERATION_REPLACE : UInt

STENCIL_OPERATION_UNDEFINED

let STENCIL_OPERATION_UNDEFINED : UInt

STENCIL_OPERATION_ZERO

let STENCIL_OPERATION_ZERO : UInt

STORAGE_TEXTURE_ACCESS_BINDING_NOT_USED

let STORAGE_TEXTURE_ACCESS_BINDING_NOT_USED : UInt

STORAGE_TEXTURE_ACCESS_FORCE32

let STORAGE_TEXTURE_ACCESS_FORCE32 : UInt

STORAGE_TEXTURE_ACCESS_READ_ONLY

let STORAGE_TEXTURE_ACCESS_READ_ONLY : UInt

STORAGE_TEXTURE_ACCESS_READ_WRITE

let STORAGE_TEXTURE_ACCESS_READ_WRITE : UInt

STORAGE_TEXTURE_ACCESS_UNDEFINED

let STORAGE_TEXTURE_ACCESS_UNDEFINED : UInt

STORAGE_TEXTURE_ACCESS_WRITE_ONLY

let STORAGE_TEXTURE_ACCESS_WRITE_ONLY : UInt

STORE_OP_DISCARD

let STORE_OP_DISCARD : UInt

STORE_OP_FORCE32

let STORE_OP_FORCE32 : UInt

STORE_OP_STORE

let STORE_OP_STORE : UInt

STORE_OP_UNDEFINED

let STORE_OP_UNDEFINED : UInt

STRLEN

let STRLEN : UInt64

SURFACE_CREATE_STATUS_APPKIT_UNAVAILABLE

let SURFACE_CREATE_STATUS_APPKIT_UNAVAILABLE : UInt

SURFACE_CREATE_STATUS_CREATE_SURFACE_FAILED

let SURFACE_CREATE_STATUS_CREATE_SURFACE_FAILED : UInt

SURFACE_CREATE_STATUS_INVALID_METAL_LAYER

let SURFACE_CREATE_STATUS_INVALID_METAL_LAYER : UInt

SURFACE_CREATE_STATUS_INVALID_NS_VIEW

let SURFACE_CREATE_STATUS_INVALID_NS_VIEW : UInt

SURFACE_CREATE_STATUS_METAL_LAYER_UNAVAILABLE

let SURFACE_CREATE_STATUS_METAL_LAYER_UNAVAILABLE : UInt

SURFACE_CREATE_STATUS_NOT_MAIN_THREAD

let SURFACE_CREATE_STATUS_NOT_MAIN_THREAD : UInt

SURFACE_CREATE_STATUS_OBJC_UNAVAILABLE

let SURFACE_CREATE_STATUS_OBJC_UNAVAILABLE : UInt

SURFACE_CREATE_STATUS_SUCCESS

let SURFACE_CREATE_STATUS_SUCCESS : UInt

SURFACE_CREATE_STATUS_UNSUPPORTED_PLATFORM

let SURFACE_CREATE_STATUS_UNSUPPORTED_PLATFORM : UInt

SURFACE_CREATE_STATUS_ZERO_DRAWABLE_SIZE

let SURFACE_CREATE_STATUS_ZERO_DRAWABLE_SIZE : UInt

SURFACE_DEFAULT_DESIRED_MAXIMUM_FRAME_LATENCY

let SURFACE_DEFAULT_DESIRED_MAXIMUM_FRAME_LATENCY : UInt

SURFACE_GET_CURRENT_TEXTURE_STATUS_DEVICE_LOST

let SURFACE_GET_CURRENT_TEXTURE_STATUS_DEVICE_LOST : UInt

SURFACE_GET_CURRENT_TEXTURE_STATUS_ERROR

let SURFACE_GET_CURRENT_TEXTURE_STATUS_ERROR : UInt

SURFACE_GET_CURRENT_TEXTURE_STATUS_FORCE32

let SURFACE_GET_CURRENT_TEXTURE_STATUS_FORCE32 : UInt

SURFACE_GET_CURRENT_TEXTURE_STATUS_LOST

let SURFACE_GET_CURRENT_TEXTURE_STATUS_LOST : UInt

SURFACE_GET_CURRENT_TEXTURE_STATUS_OCCLUDED

let SURFACE_GET_CURRENT_TEXTURE_STATUS_OCCLUDED : UInt

SURFACE_GET_CURRENT_TEXTURE_STATUS_OUTDATED

let SURFACE_GET_CURRENT_TEXTURE_STATUS_OUTDATED : UInt

SURFACE_GET_CURRENT_TEXTURE_STATUS_OUT_OF_MEMORY

let SURFACE_GET_CURRENT_TEXTURE_STATUS_OUT_OF_MEMORY : UInt

SURFACE_GET_CURRENT_TEXTURE_STATUS_SUCCESS_OPTIMAL

let SURFACE_GET_CURRENT_TEXTURE_STATUS_SUCCESS_OPTIMAL : UInt

SURFACE_GET_CURRENT_TEXTURE_STATUS_SUCCESS_SUBOPTIMAL

let SURFACE_GET_CURRENT_TEXTURE_STATUS_SUCCESS_SUBOPTIMAL : UInt

SURFACE_GET_CURRENT_TEXTURE_STATUS_TIMEOUT

let SURFACE_GET_CURRENT_TEXTURE_STATUS_TIMEOUT : UInt

S_TYPE_BIND_GROUP_ENTRY_EXTRAS

let S_TYPE_BIND_GROUP_ENTRY_EXTRAS : UInt

S_TYPE_BIND_GROUP_LAYOUT_ENTRY_EXTRAS

let S_TYPE_BIND_GROUP_LAYOUT_ENTRY_EXTRAS : UInt

S_TYPE_COMPATIBILITY_MODE_LIMITS

let S_TYPE_COMPATIBILITY_MODE_LIMITS : UInt

S_TYPE_DEVICE_EXTRAS

let S_TYPE_DEVICE_EXTRAS : UInt

S_TYPE_EXTERNAL_TEXTURE_BINDING_ENTRY

let S_TYPE_EXTERNAL_TEXTURE_BINDING_ENTRY : UInt

S_TYPE_EXTERNAL_TEXTURE_BINDING_LAYOUT

let S_TYPE_EXTERNAL_TEXTURE_BINDING_LAYOUT : UInt

S_TYPE_FORCE32

let S_TYPE_FORCE32 : UInt

S_TYPE_INSTANCE_EXTRAS

let S_TYPE_INSTANCE_EXTRAS : UInt

S_TYPE_NATIVE_LIMITS

let S_TYPE_NATIVE_LIMITS : UInt

S_TYPE_PRIMITIVE_STATE_EXTRAS

let S_TYPE_PRIMITIVE_STATE_EXTRAS : UInt

S_TYPE_QUERY_SET_DESCRIPTOR_EXTRAS

let S_TYPE_QUERY_SET_DESCRIPTOR_EXTRAS : UInt

S_TYPE_RENDER_PASS_MAX_DRAW_COUNT

let S_TYPE_RENDER_PASS_MAX_DRAW_COUNT : UInt

S_TYPE_REQUEST_ADAPTER_WEB_XR_OPTIONS

let S_TYPE_REQUEST_ADAPTER_WEB_XR_OPTIONS : UInt

S_TYPE_SAMPLER_DESCRIPTOR_EXTRAS

let S_TYPE_SAMPLER_DESCRIPTOR_EXTRAS : UInt

S_TYPE_SHADER_SOURCE_GLSL

let S_TYPE_SHADER_SOURCE_GLSL : UInt

S_TYPE_SHADER_SOURCE_SPIRV

let S_TYPE_SHADER_SOURCE_SPIRV : UInt

S_TYPE_SHADER_SOURCE_WGSL

let S_TYPE_SHADER_SOURCE_WGSL : UInt

S_TYPE_SURFACE_COLOR_MANAGEMENT

let S_TYPE_SURFACE_COLOR_MANAGEMENT : UInt

S_TYPE_SURFACE_CONFIGURATION_EXTRAS

let S_TYPE_SURFACE_CONFIGURATION_EXTRAS : UInt

S_TYPE_SURFACE_SOURCE_ANDROID_NATIVE_WINDOW

let S_TYPE_SURFACE_SOURCE_ANDROID_NATIVE_WINDOW : UInt

S_TYPE_SURFACE_SOURCE_METAL_LAYER

let S_TYPE_SURFACE_SOURCE_METAL_LAYER : UInt

S_TYPE_SURFACE_SOURCE_SWAP_CHAIN_PANEL

let S_TYPE_SURFACE_SOURCE_SWAP_CHAIN_PANEL : UInt

S_TYPE_SURFACE_SOURCE_WAYLAND_SURFACE

let S_TYPE_SURFACE_SOURCE_WAYLAND_SURFACE : UInt

S_TYPE_SURFACE_SOURCE_WINDOWS_HWND

let S_TYPE_SURFACE_SOURCE_WINDOWS_HWND : UInt

S_TYPE_SURFACE_SOURCE_XCB_WINDOW

let S_TYPE_SURFACE_SOURCE_XCB_WINDOW : UInt

S_TYPE_SURFACE_SOURCE_XLIB_WINDOW

let S_TYPE_SURFACE_SOURCE_XLIB_WINDOW : UInt

S_TYPE_TEXTURE_BINDING_VIEW_DIMENSION

let S_TYPE_TEXTURE_BINDING_VIEW_DIMENSION : UInt

S_TYPE_TEXTURE_COMPONENT_SWIZZLE_DESCRIPTOR

let S_TYPE_TEXTURE_COMPONENT_SWIZZLE_DESCRIPTOR : UInt

TEXTURE_ASPECT_ALL

let TEXTURE_ASPECT_ALL : UInt

TEXTURE_ASPECT_DEPTH_ONLY

let TEXTURE_ASPECT_DEPTH_ONLY : UInt

TEXTURE_ASPECT_FORCE32

let TEXTURE_ASPECT_FORCE32 : UInt

TEXTURE_ASPECT_STENCIL_ONLY

let TEXTURE_ASPECT_STENCIL_ONLY : UInt

TEXTURE_ASPECT_UNDEFINED

let TEXTURE_ASPECT_UNDEFINED : UInt

TEXTURE_DIMENSION_1D

let TEXTURE_DIMENSION_1D : UInt

TEXTURE_DIMENSION_2D

let TEXTURE_DIMENSION_2D : UInt

TEXTURE_DIMENSION_3D

let TEXTURE_DIMENSION_3D : UInt

TEXTURE_DIMENSION_FORCE32

let TEXTURE_DIMENSION_FORCE32 : UInt

TEXTURE_DIMENSION_UNDEFINED

let TEXTURE_DIMENSION_UNDEFINED : UInt

TEXTURE_FORMAT_ASTC10X10_UNORM

let TEXTURE_FORMAT_ASTC10X10_UNORM : UInt

TEXTURE_FORMAT_ASTC10X10_UNORM_SRGB

let TEXTURE_FORMAT_ASTC10X10_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC10X5_UNORM

let TEXTURE_FORMAT_ASTC10X5_UNORM : UInt

TEXTURE_FORMAT_ASTC10X5_UNORM_SRGB

let TEXTURE_FORMAT_ASTC10X5_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC10X6_UNORM

let TEXTURE_FORMAT_ASTC10X6_UNORM : UInt

TEXTURE_FORMAT_ASTC10X6_UNORM_SRGB

let TEXTURE_FORMAT_ASTC10X6_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC10X8_UNORM

let TEXTURE_FORMAT_ASTC10X8_UNORM : UInt

TEXTURE_FORMAT_ASTC10X8_UNORM_SRGB

let TEXTURE_FORMAT_ASTC10X8_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC12X10_UNORM

let TEXTURE_FORMAT_ASTC12X10_UNORM : UInt

TEXTURE_FORMAT_ASTC12X10_UNORM_SRGB

let TEXTURE_FORMAT_ASTC12X10_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC12X12_UNORM

let TEXTURE_FORMAT_ASTC12X12_UNORM : UInt

TEXTURE_FORMAT_ASTC12X12_UNORM_SRGB

let TEXTURE_FORMAT_ASTC12X12_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC4X4_UNORM

let TEXTURE_FORMAT_ASTC4X4_UNORM : UInt

TEXTURE_FORMAT_ASTC4X4_UNORM_SRGB

let TEXTURE_FORMAT_ASTC4X4_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC5X4_UNORM

let TEXTURE_FORMAT_ASTC5X4_UNORM : UInt

TEXTURE_FORMAT_ASTC5X4_UNORM_SRGB

let TEXTURE_FORMAT_ASTC5X4_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC5X5_UNORM

let TEXTURE_FORMAT_ASTC5X5_UNORM : UInt

TEXTURE_FORMAT_ASTC5X5_UNORM_SRGB

let TEXTURE_FORMAT_ASTC5X5_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC6X5_UNORM

let TEXTURE_FORMAT_ASTC6X5_UNORM : UInt

TEXTURE_FORMAT_ASTC6X5_UNORM_SRGB

let TEXTURE_FORMAT_ASTC6X5_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC6X6_UNORM

let TEXTURE_FORMAT_ASTC6X6_UNORM : UInt

TEXTURE_FORMAT_ASTC6X6_UNORM_SRGB

let TEXTURE_FORMAT_ASTC6X6_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC8X5_UNORM

let TEXTURE_FORMAT_ASTC8X5_UNORM : UInt

TEXTURE_FORMAT_ASTC8X5_UNORM_SRGB

let TEXTURE_FORMAT_ASTC8X5_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC8X6_UNORM

let TEXTURE_FORMAT_ASTC8X6_UNORM : UInt

TEXTURE_FORMAT_ASTC8X6_UNORM_SRGB

let TEXTURE_FORMAT_ASTC8X6_UNORM_SRGB : UInt

TEXTURE_FORMAT_ASTC8X8_UNORM

let TEXTURE_FORMAT_ASTC8X8_UNORM : UInt

TEXTURE_FORMAT_ASTC8X8_UNORM_SRGB

let TEXTURE_FORMAT_ASTC8X8_UNORM_SRGB : UInt

TEXTURE_FORMAT_BC1_RGBA_UNORM

let TEXTURE_FORMAT_BC1_RGBA_UNORM : UInt

TEXTURE_FORMAT_BC1_RGBA_UNORM_SRGB

let TEXTURE_FORMAT_BC1_RGBA_UNORM_SRGB : UInt

TEXTURE_FORMAT_BC2_RGBA_UNORM

let TEXTURE_FORMAT_BC2_RGBA_UNORM : UInt

TEXTURE_FORMAT_BC2_RGBA_UNORM_SRGB

let TEXTURE_FORMAT_BC2_RGBA_UNORM_SRGB : UInt

TEXTURE_FORMAT_BC3_RGBA_UNORM

let TEXTURE_FORMAT_BC3_RGBA_UNORM : UInt

TEXTURE_FORMAT_BC3_RGBA_UNORM_SRGB

let TEXTURE_FORMAT_BC3_RGBA_UNORM_SRGB : UInt

TEXTURE_FORMAT_BC4R_SNORM

let TEXTURE_FORMAT_BC4R_SNORM : UInt

TEXTURE_FORMAT_BC4R_UNORM

let TEXTURE_FORMAT_BC4R_UNORM : UInt

TEXTURE_FORMAT_BC5_RG_SNORM

let TEXTURE_FORMAT_BC5_RG_SNORM : UInt

TEXTURE_FORMAT_BC5_RG_UNORM

let TEXTURE_FORMAT_BC5_RG_UNORM : UInt

TEXTURE_FORMAT_BC6_HRGB_FLOAT

let TEXTURE_FORMAT_BC6_HRGB_FLOAT : UInt

TEXTURE_FORMAT_BC6_HRGB_UFLOAT

let TEXTURE_FORMAT_BC6_HRGB_UFLOAT : UInt

TEXTURE_FORMAT_BC7_RGBA_UNORM

let TEXTURE_FORMAT_BC7_RGBA_UNORM : UInt

TEXTURE_FORMAT_BC7_RGBA_UNORM_SRGB

let TEXTURE_FORMAT_BC7_RGBA_UNORM_SRGB : UInt

TEXTURE_FORMAT_BGRA8_UNORM

let TEXTURE_FORMAT_BGRA8_UNORM : UInt

TEXTURE_FORMAT_BGRA8_UNORM_SRGB

let TEXTURE_FORMAT_BGRA8_UNORM_SRGB : UInt

TEXTURE_FORMAT_DEPTH16_UNORM

let TEXTURE_FORMAT_DEPTH16_UNORM : UInt

TEXTURE_FORMAT_DEPTH24_PLUS

let TEXTURE_FORMAT_DEPTH24_PLUS : UInt

TEXTURE_FORMAT_DEPTH24_PLUS_STENCIL8

let TEXTURE_FORMAT_DEPTH24_PLUS_STENCIL8 : UInt

TEXTURE_FORMAT_DEPTH32_FLOAT

let TEXTURE_FORMAT_DEPTH32_FLOAT : UInt

TEXTURE_FORMAT_DEPTH32_FLOAT_STENCIL8

let TEXTURE_FORMAT_DEPTH32_FLOAT_STENCIL8 : UInt

TEXTURE_FORMAT_EACR11_SNORM

let TEXTURE_FORMAT_EACR11_SNORM : UInt

TEXTURE_FORMAT_EACR11_UNORM

let TEXTURE_FORMAT_EACR11_UNORM : UInt

TEXTURE_FORMAT_EACRG11_SNORM

let TEXTURE_FORMAT_EACRG11_SNORM : UInt

TEXTURE_FORMAT_EACRG11_UNORM

let TEXTURE_FORMAT_EACRG11_UNORM : UInt

TEXTURE_FORMAT_ETC2_RGB8_A1_UNORM

let TEXTURE_FORMAT_ETC2_RGB8_A1_UNORM : UInt

TEXTURE_FORMAT_ETC2_RGB8_A1_UNORM_SRGB

let TEXTURE_FORMAT_ETC2_RGB8_A1_UNORM_SRGB : UInt

TEXTURE_FORMAT_ETC2_RGB8_UNORM

let TEXTURE_FORMAT_ETC2_RGB8_UNORM : UInt

TEXTURE_FORMAT_ETC2_RGB8_UNORM_SRGB

let TEXTURE_FORMAT_ETC2_RGB8_UNORM_SRGB : UInt

TEXTURE_FORMAT_ETC2_RGBA8_UNORM

let TEXTURE_FORMAT_ETC2_RGBA8_UNORM : UInt

TEXTURE_FORMAT_ETC2_RGBA8_UNORM_SRGB

let TEXTURE_FORMAT_ETC2_RGBA8_UNORM_SRGB : UInt

TEXTURE_FORMAT_FORCE32

let TEXTURE_FORMAT_FORCE32 : UInt

TEXTURE_FORMAT_R16_FLOAT

let TEXTURE_FORMAT_R16_FLOAT : UInt

TEXTURE_FORMAT_R16_SINT

let TEXTURE_FORMAT_R16_SINT : UInt

TEXTURE_FORMAT_R16_SNORM

let TEXTURE_FORMAT_R16_SNORM : UInt

TEXTURE_FORMAT_R16_UINT

let TEXTURE_FORMAT_R16_UINT : UInt

TEXTURE_FORMAT_R16_UNORM

let TEXTURE_FORMAT_R16_UNORM : UInt

TEXTURE_FORMAT_R32_FLOAT

let TEXTURE_FORMAT_R32_FLOAT : UInt

TEXTURE_FORMAT_R32_SINT

let TEXTURE_FORMAT_R32_SINT : UInt

TEXTURE_FORMAT_R32_UINT

let TEXTURE_FORMAT_R32_UINT : UInt

TEXTURE_FORMAT_R8_SINT

let TEXTURE_FORMAT_R8_SINT : UInt

TEXTURE_FORMAT_R8_SNORM

let TEXTURE_FORMAT_R8_SNORM : UInt

TEXTURE_FORMAT_R8_UINT

let TEXTURE_FORMAT_R8_UINT : UInt

TEXTURE_FORMAT_R8_UNORM

let TEXTURE_FORMAT_R8_UNORM : UInt

TEXTURE_FORMAT_RG11_B10_UFLOAT

let TEXTURE_FORMAT_RG11_B10_UFLOAT : UInt

TEXTURE_FORMAT_RG16_FLOAT

let TEXTURE_FORMAT_RG16_FLOAT : UInt

TEXTURE_FORMAT_RG16_SINT

let TEXTURE_FORMAT_RG16_SINT : UInt

TEXTURE_FORMAT_RG16_SNORM

let TEXTURE_FORMAT_RG16_SNORM : UInt

TEXTURE_FORMAT_RG16_UINT

let TEXTURE_FORMAT_RG16_UINT : UInt

TEXTURE_FORMAT_RG16_UNORM

let TEXTURE_FORMAT_RG16_UNORM : UInt

TEXTURE_FORMAT_RG32_FLOAT

let TEXTURE_FORMAT_RG32_FLOAT : UInt

TEXTURE_FORMAT_RG32_SINT

let TEXTURE_FORMAT_RG32_SINT : UInt

TEXTURE_FORMAT_RG32_UINT

let TEXTURE_FORMAT_RG32_UINT : UInt

TEXTURE_FORMAT_RG8_SINT

let TEXTURE_FORMAT_RG8_SINT : UInt

TEXTURE_FORMAT_RG8_SNORM

let TEXTURE_FORMAT_RG8_SNORM : UInt

TEXTURE_FORMAT_RG8_UINT

let TEXTURE_FORMAT_RG8_UINT : UInt

TEXTURE_FORMAT_RG8_UNORM

let TEXTURE_FORMAT_RG8_UNORM : UInt

TEXTURE_FORMAT_RGB10_A2_UINT

let TEXTURE_FORMAT_RGB10_A2_UINT : UInt

TEXTURE_FORMAT_RGB10_A2_UNORM

let TEXTURE_FORMAT_RGB10_A2_UNORM : UInt

TEXTURE_FORMAT_RGB9_E5_UFLOAT

let TEXTURE_FORMAT_RGB9_E5_UFLOAT : UInt

TEXTURE_FORMAT_RGBA16_FLOAT

let TEXTURE_FORMAT_RGBA16_FLOAT : UInt

TEXTURE_FORMAT_RGBA16_SINT

let TEXTURE_FORMAT_RGBA16_SINT : UInt

TEXTURE_FORMAT_RGBA16_SNORM

let TEXTURE_FORMAT_RGBA16_SNORM : UInt

TEXTURE_FORMAT_RGBA16_UINT

let TEXTURE_FORMAT_RGBA16_UINT : UInt

TEXTURE_FORMAT_RGBA16_UNORM

let TEXTURE_FORMAT_RGBA16_UNORM : UInt

TEXTURE_FORMAT_RGBA32_FLOAT

let TEXTURE_FORMAT_RGBA32_FLOAT : UInt

TEXTURE_FORMAT_RGBA32_SINT

let TEXTURE_FORMAT_RGBA32_SINT : UInt

TEXTURE_FORMAT_RGBA32_UINT

let TEXTURE_FORMAT_RGBA32_UINT : UInt

TEXTURE_FORMAT_RGBA8_SINT

let TEXTURE_FORMAT_RGBA8_SINT : UInt

TEXTURE_FORMAT_RGBA8_SNORM

let TEXTURE_FORMAT_RGBA8_SNORM : UInt

TEXTURE_FORMAT_RGBA8_UINT

let TEXTURE_FORMAT_RGBA8_UINT : UInt

TEXTURE_FORMAT_RGBA8_UNORM

let TEXTURE_FORMAT_RGBA8_UNORM : UInt

TEXTURE_FORMAT_RGBA8_UNORM_SRGB

let TEXTURE_FORMAT_RGBA8_UNORM_SRGB : UInt

TEXTURE_FORMAT_STENCIL8

let TEXTURE_FORMAT_STENCIL8 : UInt

TEXTURE_FORMAT_UNDEFINED

let TEXTURE_FORMAT_UNDEFINED : UInt

TEXTURE_SAMPLE_TYPE_BINDING_NOT_USED

let TEXTURE_SAMPLE_TYPE_BINDING_NOT_USED : UInt

TEXTURE_SAMPLE_TYPE_DEPTH

let TEXTURE_SAMPLE_TYPE_DEPTH : UInt

TEXTURE_SAMPLE_TYPE_FLOAT

let TEXTURE_SAMPLE_TYPE_FLOAT : UInt

TEXTURE_SAMPLE_TYPE_FORCE32

let TEXTURE_SAMPLE_TYPE_FORCE32 : UInt

TEXTURE_SAMPLE_TYPE_SINT

let TEXTURE_SAMPLE_TYPE_SINT : UInt

TEXTURE_SAMPLE_TYPE_UINT

let TEXTURE_SAMPLE_TYPE_UINT : UInt

TEXTURE_SAMPLE_TYPE_UNDEFINED

let TEXTURE_SAMPLE_TYPE_UNDEFINED : UInt

TEXTURE_SAMPLE_TYPE_UNFILTERABLE_FLOAT

let TEXTURE_SAMPLE_TYPE_UNFILTERABLE_FLOAT : UInt

TEXTURE_USAGE_COPY_DST

let TEXTURE_USAGE_COPY_DST : UInt64

TEXTURE_USAGE_COPY_SRC

let TEXTURE_USAGE_COPY_SRC : UInt64

TEXTURE_USAGE_NONE

let TEXTURE_USAGE_NONE : UInt64

TEXTURE_USAGE_RENDER_ATTACHMENT

let TEXTURE_USAGE_RENDER_ATTACHMENT : UInt64

TEXTURE_USAGE_STORAGE_BINDING

let TEXTURE_USAGE_STORAGE_BINDING : UInt64

TEXTURE_USAGE_TEXTURE_BINDING

let TEXTURE_USAGE_TEXTURE_BINDING : UInt64

TEXTURE_USAGE_TRANSIENT_ATTACHMENT

let TEXTURE_USAGE_TRANSIENT_ATTACHMENT : UInt64

TEXTURE_VIEW_DIMENSION_1D

let TEXTURE_VIEW_DIMENSION_1D : UInt

TEXTURE_VIEW_DIMENSION_2D

let TEXTURE_VIEW_DIMENSION_2D : UInt

TEXTURE_VIEW_DIMENSION_2D_ARRAY

let TEXTURE_VIEW_DIMENSION_2D_ARRAY : UInt

TEXTURE_VIEW_DIMENSION_3D

let TEXTURE_VIEW_DIMENSION_3D : UInt

TEXTURE_VIEW_DIMENSION_CUBE

let TEXTURE_VIEW_DIMENSION_CUBE : UInt

TEXTURE_VIEW_DIMENSION_CUBE_ARRAY

let TEXTURE_VIEW_DIMENSION_CUBE_ARRAY : UInt

TEXTURE_VIEW_DIMENSION_FORCE32

let TEXTURE_VIEW_DIMENSION_FORCE32 : UInt

TEXTURE_VIEW_DIMENSION_UNDEFINED

let TEXTURE_VIEW_DIMENSION_UNDEFINED : UInt

TONE_MAPPING_MODE_EXTENDED

let TONE_MAPPING_MODE_EXTENDED : UInt

TONE_MAPPING_MODE_FORCE32

let TONE_MAPPING_MODE_FORCE32 : UInt

TONE_MAPPING_MODE_STANDARD

let TONE_MAPPING_MODE_STANDARD : UInt

VERTEX_FORMAT_FLOAT16

let VERTEX_FORMAT_FLOAT16 : UInt

VERTEX_FORMAT_FLOAT16X2

let VERTEX_FORMAT_FLOAT16X2 : UInt

VERTEX_FORMAT_FLOAT16X4

let VERTEX_FORMAT_FLOAT16X4 : UInt

VERTEX_FORMAT_FLOAT32

let VERTEX_FORMAT_FLOAT32 : UInt

VERTEX_FORMAT_FLOAT32X2

let VERTEX_FORMAT_FLOAT32X2 : UInt

VERTEX_FORMAT_FLOAT32X3

let VERTEX_FORMAT_FLOAT32X3 : UInt

VERTEX_FORMAT_FLOAT32X4

let VERTEX_FORMAT_FLOAT32X4 : UInt

VERTEX_FORMAT_FORCE32

let VERTEX_FORMAT_FORCE32 : UInt

VERTEX_FORMAT_SINT16

let VERTEX_FORMAT_SINT16 : UInt

VERTEX_FORMAT_SINT16X2

let VERTEX_FORMAT_SINT16X2 : UInt

VERTEX_FORMAT_SINT16X4

let VERTEX_FORMAT_SINT16X4 : UInt

VERTEX_FORMAT_SINT32

let VERTEX_FORMAT_SINT32 : UInt

VERTEX_FORMAT_SINT32X2

let VERTEX_FORMAT_SINT32X2 : UInt

VERTEX_FORMAT_SINT32X3

let VERTEX_FORMAT_SINT32X3 : UInt

VERTEX_FORMAT_SINT32X4

let VERTEX_FORMAT_SINT32X4 : UInt

VERTEX_FORMAT_SINT8

let VERTEX_FORMAT_SINT8 : UInt

VERTEX_FORMAT_SINT8X2

let VERTEX_FORMAT_SINT8X2 : UInt

VERTEX_FORMAT_SINT8X4

let VERTEX_FORMAT_SINT8X4 : UInt

VERTEX_FORMAT_SNORM16

let VERTEX_FORMAT_SNORM16 : UInt

VERTEX_FORMAT_SNORM16X2

let VERTEX_FORMAT_SNORM16X2 : UInt

VERTEX_FORMAT_SNORM16X4

let VERTEX_FORMAT_SNORM16X4 : UInt

VERTEX_FORMAT_SNORM8

let VERTEX_FORMAT_SNORM8 : UInt

VERTEX_FORMAT_SNORM8X2

let VERTEX_FORMAT_SNORM8X2 : UInt

VERTEX_FORMAT_SNORM8X4

let VERTEX_FORMAT_SNORM8X4 : UInt

VERTEX_FORMAT_UINT16

let VERTEX_FORMAT_UINT16 : UInt

VERTEX_FORMAT_UINT16X2

let VERTEX_FORMAT_UINT16X2 : UInt

VERTEX_FORMAT_UINT16X4

let VERTEX_FORMAT_UINT16X4 : UInt

VERTEX_FORMAT_UINT32

let VERTEX_FORMAT_UINT32 : UInt

VERTEX_FORMAT_UINT32X2

let VERTEX_FORMAT_UINT32X2 : UInt

VERTEX_FORMAT_UINT32X3

let VERTEX_FORMAT_UINT32X3 : UInt

VERTEX_FORMAT_UINT32X4

let VERTEX_FORMAT_UINT32X4 : UInt

VERTEX_FORMAT_UINT8

let VERTEX_FORMAT_UINT8 : UInt

VERTEX_FORMAT_UINT8X2

let VERTEX_FORMAT_UINT8X2 : UInt

VERTEX_FORMAT_UINT8X4

let VERTEX_FORMAT_UINT8X4 : UInt

VERTEX_FORMAT_UNORM10_10_10_2

let VERTEX_FORMAT_UNORM10_10_10_2 : UInt

VERTEX_FORMAT_UNORM16

let VERTEX_FORMAT_UNORM16 : UInt

VERTEX_FORMAT_UNORM16X2

let VERTEX_FORMAT_UNORM16X2 : UInt

VERTEX_FORMAT_UNORM16X4

let VERTEX_FORMAT_UNORM16X4 : UInt

VERTEX_FORMAT_UNORM8

let VERTEX_FORMAT_UNORM8 : UInt

VERTEX_FORMAT_UNORM8X2

let VERTEX_FORMAT_UNORM8X2 : UInt

VERTEX_FORMAT_UNORM8X4

let VERTEX_FORMAT_UNORM8X4 : UInt

VERTEX_FORMAT_UNORM8X4_BGRA

let VERTEX_FORMAT_UNORM8X4_BGRA : UInt

VERTEX_STEP_MODE_FORCE32

let VERTEX_STEP_MODE_FORCE32 : UInt

VERTEX_STEP_MODE_INSTANCE

let VERTEX_STEP_MODE_INSTANCE : UInt

VERTEX_STEP_MODE_UNDEFINED

let VERTEX_STEP_MODE_UNDEFINED : UInt

VERTEX_STEP_MODE_VERTEX

let VERTEX_STEP_MODE_VERTEX : UInt

WAIT_STATUS_ERROR

let WAIT_STATUS_ERROR : UInt

WAIT_STATUS_FORCE32

let WAIT_STATUS_FORCE32 : UInt

WAIT_STATUS_SUCCESS

let WAIT_STATUS_SUCCESS : UInt

WAIT_STATUS_TIMED_OUT

let WAIT_STATUS_TIMED_OUT : UInt

WAIT_STATUS_UNSUPPORTED_COUNT

let WAIT_STATUS_UNSUPPORTED_COUNT : UInt

WAIT_STATUS_UNSUPPORTED_MIXED_SOURCES

let WAIT_STATUS_UNSUPPORTED_MIXED_SOURCES : UInt

WAIT_STATUS_UNSUPPORTED_TIMEOUT

let WAIT_STATUS_UNSUPPORTED_TIMEOUT : UInt

WGSL_LANGUAGE_FEATURE_NAME_FORCE32

let WGSL_LANGUAGE_FEATURE_NAME_FORCE32 : UInt

WGSL_LANGUAGE_FEATURE_NAME_LINEAR_INDEXING

let WGSL_LANGUAGE_FEATURE_NAME_LINEAR_INDEXING : UInt

WGSL_LANGUAGE_FEATURE_NAME_PACKED4X8_INTEGER_DOT_PRODUCT

let WGSL_LANGUAGE_FEATURE_NAME_PACKED4X8_INTEGER_DOT_PRODUCT : UInt

WGSL_LANGUAGE_FEATURE_NAME_POINTER_COMPOSITE_ACCESS

let WGSL_LANGUAGE_FEATURE_NAME_POINTER_COMPOSITE_ACCESS : UInt

WGSL_LANGUAGE_FEATURE_NAME_READONLY_AND_READWRITE_STORAGE_TEXTURES

let WGSL_LANGUAGE_FEATURE_NAME_READONLY_AND_READWRITE_STORAGE_TEXTURES : UInt

WGSL_LANGUAGE_FEATURE_NAME_SUBGROUP_ID

let WGSL_LANGUAGE_FEATURE_NAME_SUBGROUP_ID : UInt

WGSL_LANGUAGE_FEATURE_NAME_SUBGROUP_UNIFORMITY

let WGSL_LANGUAGE_FEATURE_NAME_SUBGROUP_UNIFORMITY : UInt

WGSL_LANGUAGE_FEATURE_NAME_TEXTURE_AND_SAMPLER_LET

let WGSL_LANGUAGE_FEATURE_NAME_TEXTURE_AND_SAMPLER_LET : UInt

WGSL_LANGUAGE_FEATURE_NAME_TEXTURE_FORMATS_TIER1

let WGSL_LANGUAGE_FEATURE_NAME_TEXTURE_FORMATS_TIER1 : UInt

WGSL_LANGUAGE_FEATURE_NAME_UNIFORM_BUFFER_STANDARD_LAYOUT

let WGSL_LANGUAGE_FEATURE_NAME_UNIFORM_BUFFER_STANDARD_LAYOUT : UInt

WGSL_LANGUAGE_FEATURE_NAME_UNRESTRICTED_POINTER_PARAMETERS

let WGSL_LANGUAGE_FEATURE_NAME_UNRESTRICTED_POINTER_PARAMETERS : UInt

WHOLE_MAP_SIZE

let WHOLE_MAP_SIZE : UInt64

WHOLE_SIZE

let WHOLE_SIZE : UInt64

compilation_info_availability_kind_u32

fn compilation_info_availability_kind_u32() -> UInt

compilation_info_available

fn compilation_info_available() -> Bool

compilation_info_enabled

fn compilation_info_enabled() -> Bool

get_instance_capabilities

fn get_instance_capabilities() -> InstanceCapabilities

get_version

fn get_version() -> UInt

last_request_adapter_message

fn last_request_adapter_message() -> String

last_request_device_message

fn last_request_device_message() -> String

native_available

fn native_available() -> Bool

native_diagnostic

fn native_diagnostic() -> String

native_expected_release_tag

fn native_expected_release_tag() -> String

native_has_symbol

fn native_has_symbol(name : String) -> Bool

native_recovery_hint

fn native_recovery_hint() -> String

native_resolved_lib_path

fn native_resolved_lib_path() -> String

native_static_linked

fn native_static_linked() -> Bool

native_supported

fn native_supported() -> Bool

pipeline_async_availability_kind_u32

fn pipeline_async_availability_kind_u32() -> UInt

pipeline_async_available

fn pipeline_async_available() -> Bool

pipeline_async_enabled

fn pipeline_async_enabled() -> Bool

platform_is_linux

fn platform_is_linux() -> Bool

platform_is_macos

fn platform_is_macos() -> Bool

platform_is_windows

fn platform_is_windows() -> Bool

require_native

fn require_native() -> Unit raise WgpuError

require_native_symbol

fn require_native_symbol(name : String) -> Unit raise WgpuError

set_compilation_info_enabled

fn set_compilation_info_enabled(enabled : Bool) -> Unit

set_debug_labels_enabled

fn set_debug_labels_enabled(enabled : Bool) -> Unit

set_device_lost_stderr_enabled

fn set_device_lost_stderr_enabled(enabled : Bool) -> Unit

set_log_callback_stderr_enabled

fn set_log_callback_stderr_enabled(enabled : Bool) -> Unit

set_log_level

fn set_log_level(level : UInt) -> Unit

set_pipeline_async_enabled

fn set_pipeline_async_enabled(enabled : Bool) -> Unit

set_uncaptured_error_stderr_enabled

fn set_uncaptured_error_stderr_enabled(enabled : Bool) -> Unit

surface_configuration_ptr_free

fn surface_configuration_ptr_free(config :
WGPUSurfaceConfigurationPtr
) -> Unit

surface_configuration_ptr_new

surface_descriptor_android_native_window_new

surface_descriptor_free

surface_descriptor_metal_layer_new

surface_descriptor_swap_chain_panel_new

surface_descriptor_xcb_new

surface_descriptor_xlib_new

with_default_device_queue_auto_release

fn with_default_device_queue_auto_release(run : (Instance, Device, Queue, AutoReleasePool) -> Unit raise) -> Unit raise

Create a default instance/device/queue stack and an auto-release pool.

The Instance, Device, Queue, and tracked resources are all borrowed for the callback scope. Do not retain or release them manually.

with_default_device_queue_managed

fn with_default_device_queue_managed(run : (Instance, ManagedDevice, ManagedQueue) -> Unit raise) -> Unit raise

with_default_device_queue_sync

fn with_default_device_queue_sync(run : (Instance, Device, Queue) -> Unit raise) -> Unit raise

Create a default instance/device/queue stack for the duration of run.

The Instance, Device, and Queue passed to run are borrowed for the callback scope. Do not retain or release them manually. The helper releases the temporary instance/adapter/device/queue stack even when run raises.