Trait DialectCubeBuiltins

Source
pub trait DialectCubeBuiltins<D: Dialect> {
Show 36 methods // Provided methods fn builtin_rules(flags: &CubeIndexFlags) -> CubeIndexFlags { ... } fn compile_absolute_pos_tuple_computation(f: &mut Formatter<'_>) -> Result { ... } fn compile_absolute_pos_base_name(f: &mut Formatter<'_>) -> Result { ... } fn compile_absolute_pos(f: &mut Formatter<'_>) -> Result { ... } fn compile_absolute_pos_x(f: &mut Formatter<'_>) -> Result { ... } fn compile_absolute_pos_y(f: &mut Formatter<'_>) -> Result { ... } fn compile_absolute_pos_z(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_count_base_name(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_count(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_count_x(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_count_y(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_count_z(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_dim_base_name(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_dim(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_dim_x(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_dim_y(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_dim_z(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_pos_base_name(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_pos(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_pos_x(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_pos_y(f: &mut Formatter<'_>) -> Result { ... } fn compile_cube_pos_z(f: &mut Formatter<'_>) -> Result { ... } fn compile_unit_pos_computation(f: &mut Formatter<'_>) -> Result { ... } fn compile_unit_pos(f: &mut Formatter<'_>) -> Result { ... } fn compile_unit_pos_base_name(f: &mut Formatter<'_>) -> Result { ... } fn compile_unit_pos_x(f: &mut Formatter<'_>) -> Result { ... } fn compile_unit_pos_y(f: &mut Formatter<'_>) -> Result { ... } fn compile_unit_pos_z(f: &mut Formatter<'_>) -> Result { ... } fn compile_plane_dim(f: &mut Formatter<'_>) -> Result { ... } fn compile_plane_dim_checked(f: &mut Formatter<'_>) -> Result { ... } fn compile_plane_pos(f: &mut Formatter<'_>) -> Result { ... } fn compile_unit_pos_plane(f: &mut Formatter<'_>) -> Result { ... } fn compile_cluster_pos(f: &mut Formatter<'_>) -> Result { ... } fn compile_cluster_pos_x(f: &mut Formatter<'_>) -> Result { ... } fn compile_cluster_pos_y(f: &mut Formatter<'_>) -> Result { ... } fn compile_cluster_pos_z(f: &mut Formatter<'_>) -> Result { ... }
}

Provided Methods§

Source

fn builtin_rules(flags: &CubeIndexFlags) -> CubeIndexFlags

Depending on the dialect available built-in variables the inclusion rules might change. For instance in metal we have a built-in for the Unit plane position but in other dialects there is none so we have to compute it using other built-ins.

Source

fn compile_absolute_pos_tuple_computation(f: &mut Formatter<'_>) -> Result

Source

fn compile_absolute_pos_base_name(f: &mut Formatter<'_>) -> Result

Source

fn compile_absolute_pos(f: &mut Formatter<'_>) -> Result

Source

fn compile_absolute_pos_x(f: &mut Formatter<'_>) -> Result

Source

fn compile_absolute_pos_y(f: &mut Formatter<'_>) -> Result

Source

fn compile_absolute_pos_z(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_count_base_name(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_count(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_count_x(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_count_y(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_count_z(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_dim_base_name(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_dim(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_dim_x(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_dim_y(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_dim_z(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_pos_base_name(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_pos(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_pos_x(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_pos_y(f: &mut Formatter<'_>) -> Result

Source

fn compile_cube_pos_z(f: &mut Formatter<'_>) -> Result

Source

fn compile_unit_pos_computation(f: &mut Formatter<'_>) -> Result

Source

fn compile_unit_pos(f: &mut Formatter<'_>) -> Result

Source

fn compile_unit_pos_base_name(f: &mut Formatter<'_>) -> Result

Source

fn compile_unit_pos_x(f: &mut Formatter<'_>) -> Result

Source

fn compile_unit_pos_y(f: &mut Formatter<'_>) -> Result

Source

fn compile_unit_pos_z(f: &mut Formatter<'_>) -> Result

Source

fn compile_plane_dim(f: &mut Formatter<'_>) -> Result

Source

fn compile_plane_dim_checked(f: &mut Formatter<'_>) -> Result

Source

fn compile_plane_pos(f: &mut Formatter<'_>) -> Result

Source

fn compile_unit_pos_plane(f: &mut Formatter<'_>) -> Result

Source

fn compile_cluster_pos(f: &mut Formatter<'_>) -> Result

Source

fn compile_cluster_pos_x(f: &mut Formatter<'_>) -> Result

Source

fn compile_cluster_pos_y(f: &mut Formatter<'_>) -> Result

Source

fn compile_cluster_pos_z(f: &mut Formatter<'_>) -> Result

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§