Revision control

Copy as Markdown

Other Tools

use wgt::{Backend, WasmNotSendSync};
pub trait HalApi: hal::Api + 'static + WasmNotSendSync {
const VARIANT: Backend;
}
impl HalApi for hal::api::Empty {
const VARIANT: Backend = Backend::Empty;
}
#[cfg(vulkan)]
impl HalApi for hal::api::Vulkan {
const VARIANT: Backend = Backend::Vulkan;
}
#[cfg(metal)]
impl HalApi for hal::api::Metal {
const VARIANT: Backend = Backend::Metal;
}
#[cfg(dx12)]
impl HalApi for hal::api::Dx12 {
const VARIANT: Backend = Backend::Dx12;
}
#[cfg(gles)]
impl HalApi for hal::api::Gles {
const VARIANT: Backend = Backend::Gl;
}