Skip to main content

SpirvTarget

Trait SpirvTarget 

Source
pub trait SpirvTarget:
    TargetExtensions<Self>
    + Debug
    + Clone
    + Default
    + Send
    + Sync
    + 'static {
    // Required methods
    fn set_modes(
        &mut self,
        b: &mut SpirvCompiler<Self>,
        main: Word,
        builtins: Vec<Word>,
        cube_dims: Vec<u32>,
    );
    fn generate_binding(
        &mut self,
        b: &mut SpirvCompiler<Self>,
        binding: KernelArg,
        name: String,
    ) -> Word;
    fn generate_info_binding(
        &mut self,
        b: &mut SpirvCompiler<Self>,
        offset: u32,
    ) -> Word;
    fn info_storage_class(b: &mut SpirvCompiler<Self>) -> StorageClass;
    fn set_kernel_name(&mut self, name: impl Into<String>);
}

Required Methods§

Source

fn set_modes( &mut self, b: &mut SpirvCompiler<Self>, main: Word, builtins: Vec<Word>, cube_dims: Vec<u32>, )

Source

fn generate_binding( &mut self, b: &mut SpirvCompiler<Self>, binding: KernelArg, name: String, ) -> Word

Source

fn generate_info_binding( &mut self, b: &mut SpirvCompiler<Self>, offset: u32, ) -> Word

Source

fn info_storage_class(b: &mut SpirvCompiler<Self>) -> StorageClass

Source

fn set_kernel_name(&mut self, name: impl Into<String>)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§