Struct cubecl_core::frontend::I32
source · pub struct I32 {
pub val: i32,
pub vectorization: u8,
}
Fields§
§val: i32
§vectorization: u8
Trait Implementations§
source§impl Abs for I32
impl Abs for I32
fn abs(x: Self) -> Self
fn __expand_abs( context: &mut CubeContext, x: Self::ExpandType, ) -> ExpandElementTyped<Self>
source§impl AddAssign<i32> for I32
impl AddAssign<i32> for I32
source§fn add_assign(&mut self, _rhs: i32)
fn add_assign(&mut self, _rhs: i32)
Performs the
+=
operation. Read moresource§impl AddAssign<u32> for I32
impl AddAssign<u32> for I32
source§fn add_assign(&mut self, _rhs: u32)
fn add_assign(&mut self, _rhs: u32)
Performs the
+=
operation. Read moresource§impl AddAssign for I32
impl AddAssign for I32
source§fn add_assign(&mut self, _rhs: Self)
fn add_assign(&mut self, _rhs: Self)
Performs the
+=
operation. Read moresource§impl Clamp for I32
impl Clamp for I32
source§fn clamp(input: Self, min_value: Self, max_value: Self) -> Self
fn clamp(input: Self, min_value: Self, max_value: Self) -> Self
Clamp the input value between the max and min values provided.
fn __expand_clamp( context: &mut CubeContext, input: Self::ExpandType, min_value: Self::ExpandType, max_value: Self::ExpandType, ) -> Self::ExpandType
source§impl ComptimeType for I32
impl ComptimeType for I32
source§fn into_expand(self) -> Self::ExpandType
fn into_expand(self) -> Self::ExpandType
Create the expand type from the normal type.
source§impl CubePrimitive for I32
impl CubePrimitive for I32
fn from_expand_elem(elem: ExpandElement) -> Self::ExpandType
source§impl CubeType for I32
impl CubeType for I32
type ExpandType = ExpandElementTyped<I32>
source§fn init(context: &mut CubeContext, expand: Self::ExpandType) -> Self::ExpandType
fn init(context: &mut CubeContext, expand: Self::ExpandType) -> Self::ExpandType
Wrapper around the init method, necessary to type inference.
source§impl DivAssign<i32> for I32
impl DivAssign<i32> for I32
source§fn div_assign(&mut self, _rhs: i32)
fn div_assign(&mut self, _rhs: i32)
Performs the
/=
operation. Read moresource§impl DivAssign<u32> for I32
impl DivAssign<u32> for I32
source§fn div_assign(&mut self, _rhs: u32)
fn div_assign(&mut self, _rhs: u32)
Performs the
/=
operation. Read moresource§impl DivAssign for I32
impl DivAssign for I32
source§fn div_assign(&mut self, _rhs: Self)
fn div_assign(&mut self, _rhs: Self)
Performs the
/=
operation. Read moresource§impl ExpandElementBaseInit for I32
impl ExpandElementBaseInit for I32
fn init_elem(context: &mut CubeContext, elem: ExpandElement) -> ExpandElement
source§impl From<I32> for ExpandElement
impl From<I32> for ExpandElement
source§impl Int for I32
impl Int for I32
fn new(val: i64) -> Self
fn vectorized(val: i64, vectorization: UInt) -> Self
fn __expand_new( context: &mut CubeContext, val: Self::ExpandType, ) -> <Self as CubeType>::ExpandType
fn __expand_vectorized( context: &mut CubeContext, val: Self::ExpandType, vectorization: UInt, ) -> <Self as CubeType>::ExpandType
source§impl LaunchArgExpand for I32
impl LaunchArgExpand for I32
source§fn expand(
builder: &mut KernelBuilder,
vectorization: Vectorization,
) -> ExpandElementTyped<Self>
fn expand( builder: &mut KernelBuilder, vectorization: Vectorization, ) -> ExpandElementTyped<Self>
Register an input variable during compilation that fill the KernelBuilder.
source§fn expand_output(
builder: &mut KernelBuilder,
vectorization: Vectorization,
) -> <Self as CubeType>::ExpandType
fn expand_output( builder: &mut KernelBuilder, vectorization: Vectorization, ) -> <Self as CubeType>::ExpandType
Register an output variable during compilation that fill the KernelBuilder.
source§impl Max for I32
impl Max for I32
fn max(self, _rhs: Self) -> Self
fn __expand_max( context: &mut CubeContext, lhs: ExpandElementTyped<Self>, rhs: ExpandElementTyped<Self>, ) -> ExpandElementTyped<Self>
source§impl Min for I32
impl Min for I32
fn min(self, _rhs: Self) -> Self
fn __expand_min( context: &mut CubeContext, lhs: ExpandElementTyped<Self>, rhs: ExpandElementTyped<Self>, ) -> ExpandElementTyped<Self>
source§impl MulAssign<i32> for I32
impl MulAssign<i32> for I32
source§fn mul_assign(&mut self, _rhs: i32)
fn mul_assign(&mut self, _rhs: i32)
Performs the
*=
operation. Read moresource§impl MulAssign<u32> for I32
impl MulAssign<u32> for I32
source§fn mul_assign(&mut self, _rhs: u32)
fn mul_assign(&mut self, _rhs: u32)
Performs the
*=
operation. Read moresource§impl MulAssign for I32
impl MulAssign for I32
source§fn mul_assign(&mut self, _rhs: Self)
fn mul_assign(&mut self, _rhs: Self)
Performs the
*=
operation. Read moresource§impl Numeric for I32
impl Numeric for I32
type Primitive = i32
fn from_vec<const D: usize>(_vec: [u32; D]) -> Self
fn __expand_from_int( _context: &mut CubeContext, val: ExpandElementTyped<I64>, ) -> <Self as CubeType>::ExpandType
fn __expand_from_vec<const D: usize>( context: &mut CubeContext, vec: [ExpandElementTyped<UInt>; D], ) -> <Self as CubeType>::ExpandType
source§impl PartialOrd<i32> for I32
impl PartialOrd<i32> for I32
source§impl PartialOrd<u32> for I32
impl PartialOrd<u32> for I32
source§impl PartialOrd for I32
impl PartialOrd for I32
source§impl Remainder for I32
impl Remainder for I32
fn rem(self, _rhs: Self) -> Self
fn __expand_rem( context: &mut CubeContext, lhs: ExpandElementTyped<Self>, rhs: ExpandElementTyped<Self>, ) -> ExpandElementTyped<Self>
source§impl SubAssign<i32> for I32
impl SubAssign<i32> for I32
source§fn sub_assign(&mut self, _rhs: i32)
fn sub_assign(&mut self, _rhs: i32)
Performs the
-=
operation. Read moresource§impl SubAssign<u32> for I32
impl SubAssign<u32> for I32
source§fn sub_assign(&mut self, _rhs: u32)
fn sub_assign(&mut self, _rhs: u32)
Performs the
-=
operation. Read moresource§impl SubAssign for I32
impl SubAssign for I32
source§fn sub_assign(&mut self, _rhs: Self)
fn sub_assign(&mut self, _rhs: Self)
Performs the
-=
operation. Read moresource§impl Vectorized for I32
impl Vectorized for I32
impl Copy for I32
impl Eq for I32
Auto Trait Implementations§
impl Freeze for I32
impl RefUnwindSafe for I32
impl Send for I32
impl Sync for I32
impl Unpin for I32
impl UnwindSafe for I32
Blanket Implementations§
source§impl<P> BitCast for Pwhere
P: CubePrimitive,
impl<P> BitCast for Pwhere
P: CubePrimitive,
source§fn bitcast_from<From: CubePrimitive>(value: From) -> Self
fn bitcast_from<From: CubePrimitive>(value: From) -> Self
Reinterpret the bits of another primitive as this primitive without conversion.
fn __expand_bitcast_from<From>(
context: &mut CubeContext,
value: From,
) -> <Self as CubeType>::ExpandTypewhere
From: Into<ExpandElement>,
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<P> Cast for Pwhere
P: CubePrimitive,
impl<P> Cast for Pwhere
P: CubePrimitive,
fn cast_from<From>(_value: From) -> Pwhere
From: CubePrimitive,
fn __expand_cast_from<From>(
context: &mut CubeContext,
value: From,
) -> <Self as CubeType>::ExpandTypewhere
From: Into<ExpandElement>,
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<T> LaunchArg for Twhere
T: Numeric,
impl<T> LaunchArg for Twhere
T: Numeric,
§type RuntimeArg<'a, R: Runtime> = ScalarArg<T>
type RuntimeArg<'a, R: Runtime> = ScalarArg<T>
The runtime argument for the kernel.