pub struct CodeGenerator { /* private fields */ }Expand description
Code generator for GPU kernels.
Implementations§
Source§impl CodeGenerator
impl CodeGenerator
Sourcepub fn set_variable(&mut self, key: impl Into<String>, value: impl Into<String>)
pub fn set_variable(&mut self, key: impl Into<String>, value: impl Into<String>)
Set a template variable.
Sourcepub fn generate_kernel_source(
&self,
kernel_id: &str,
user_code: &str,
target: Target,
) -> Result<String>
pub fn generate_kernel_source( &self, kernel_id: &str, user_code: &str, target: Target, ) -> Result<String>
Generate kernel source code for the specified target.
Sourcepub fn generate_kernel_file(
&self,
config: &KernelConfig,
user_code: &str,
target: Target,
) -> Result<GeneratedFile>
pub fn generate_kernel_file( &self, config: &KernelConfig, user_code: &str, target: Target, ) -> Result<GeneratedFile>
Generate complete kernel file.
Sourcepub fn generate_all_targets(
&self,
config: &KernelConfig,
user_code: &str,
) -> Result<Vec<GeneratedFile>>
pub fn generate_all_targets( &self, config: &KernelConfig, user_code: &str, ) -> Result<Vec<GeneratedFile>>
Generate for all targets.