Skip to main content

NativeExpand

Struct NativeExpand 

Source
pub struct NativeExpand<T: CubeType> {
    pub expand: ManagedVariable,
    /* private fields */
}
Expand description

Expand type of a native GPU type, i.e. scalar primitives, arrays, shared memory.

Fields§

§expand: ManagedVariable

Implementations§

Source§

impl NativeExpand<Barrier>

Source

pub fn __expand_tma_load_1d_method<C1: CubePrimitive, C2: CubePrimitive<Scalar = C1::Scalar>>( &self, scope: &mut Scope, source: NativeExpand<TensorMap<C1, Tiled>>, destination: SliceExpand<C2, ReadWrite>, x: NativeExpand<i32>, )

Source§

impl NativeExpand<Barrier>

Source

pub fn __expand_tma_load_2d_method<C1: CubePrimitive, C2: CubePrimitive<Scalar = C1::Scalar>>( &self, scope: &mut Scope, source: NativeExpand<TensorMap<C1, Tiled>>, destination: SliceExpand<C2, ReadWrite>, y: NativeExpand<i32>, x: NativeExpand<i32>, )

Source§

impl NativeExpand<Barrier>

Source

pub fn __expand_tma_load_3d_method<C1: CubePrimitive, C2: CubePrimitive<Scalar = C1::Scalar>>( &self, scope: &mut Scope, source: NativeExpand<TensorMap<C1, Tiled>>, destination: SliceExpand<C2, ReadWrite>, z: NativeExpand<i32>, y: NativeExpand<i32>, x: NativeExpand<i32>, )

Source§

impl NativeExpand<Barrier>

Source

pub fn __expand_tma_load_4d_method<C1: CubePrimitive, C2: CubePrimitive<Scalar = C1::Scalar>>( &self, scope: &mut Scope, source: NativeExpand<TensorMap<C1, Tiled>>, destination: SliceExpand<C2, ReadWrite>, w: NativeExpand<i32>, z: NativeExpand<i32>, y: NativeExpand<i32>, x: NativeExpand<i32>, )

Source§

impl NativeExpand<Barrier>

Source

pub fn __expand_tma_load_5d_method<C1: CubePrimitive, C2: CubePrimitive<Scalar = C1::Scalar>>( &self, scope: &mut Scope, source: NativeExpand<TensorMap<C1, Tiled>>, destination: SliceExpand<C2, ReadWrite>, v: NativeExpand<i32>, w: NativeExpand<i32>, z: NativeExpand<i32>, y: NativeExpand<i32>, x: NativeExpand<i32>, )

Source§

impl NativeExpand<Barrier>

Source

pub fn __expand_tma_load_im2col_3d_method<C1: CubePrimitive, C2: CubePrimitive<Scalar = C1::Scalar>>( &self, scope: &mut Scope, source: NativeExpand<TensorMap<C1, Im2col>>, destination: SliceExpand<C2, ReadWrite>, n: NativeExpand<i32>, w: NativeExpand<i32>, c: NativeExpand<i32>, w_offset: NativeExpand<u16>, )

Source§

impl NativeExpand<Barrier>

Source

pub fn __expand_tma_load_im2col_4d_method<C1: CubePrimitive, C2: CubePrimitive<Scalar = C1::Scalar>>( &self, scope: &mut Scope, source: NativeExpand<TensorMap<C1, Im2col>>, destination: SliceExpand<C2, ReadWrite>, n: NativeExpand<i32>, h: NativeExpand<i32>, w: NativeExpand<i32>, c: NativeExpand<i32>, h_offset: NativeExpand<u16>, w_offset: NativeExpand<u16>, )

Source§

impl NativeExpand<Barrier>

Source

pub fn __expand_tma_load_im2col_5d_method<C1: CubePrimitive, C2: CubePrimitive<Scalar = C1::Scalar>>( &self, scope: &mut Scope, source: NativeExpand<TensorMap<C1, Im2col>>, destination: SliceExpand<C2, ReadWrite>, n: NativeExpand<i32>, d: NativeExpand<i32>, h: NativeExpand<i32>, w: NativeExpand<i32>, c: NativeExpand<i32>, d_offset: NativeExpand<u16>, h_offset: NativeExpand<u16>, w_offset: NativeExpand<u16>, )

Source§

impl NativeExpand<Barrier>

Source

pub fn __expand_init_manual_method( &self, scope: &mut Scope, arrival_count: <u32 as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_local(scope: &mut Scope) -> Self

Source

pub fn __expand_shared( scope: &mut Scope, arrival_count: <u32 as CubeType>::ExpandType, is_elected: <bool as CubeType>::ExpandType, ) -> <Shared<Barrier> as CubeType>::ExpandType

Source

pub fn __expand_shared_uninit( scope: &mut Scope, ) -> <Shared<Barrier> as CubeType>::ExpandType

Source

pub fn __expand_init_manual( scope: &mut Scope, this: &Self, arrival_count: <u32 as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source§

impl NativeExpand<Barrier>

Source

pub fn __expand_memcpy_async_method<C: CubePrimitive>( &self, scope: &mut Scope, source: <Slice<C> as CubeType>::ExpandType, destination: <SliceMut<C> as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_memcpy_async_cooperative_method<C: CubePrimitive>( &self, scope: &mut Scope, source: <Slice<C> as CubeType>::ExpandType, destination: <SliceMut<C> as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_memcpy_async_tx_method<C: CubePrimitive>( &self, scope: &mut Scope, source: <Slice<C> as CubeType>::ExpandType, destination: <SliceMut<C> as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_memcpy_async<C: CubePrimitive>( scope: &mut Scope, this: &Self, source: <Slice<C> as CubeType>::ExpandType, destination: <SliceMut<C> as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_memcpy_async_cooperative<C: CubePrimitive>( scope: &mut Scope, this: &Self, source: <Slice<C> as CubeType>::ExpandType, destination: <SliceMut<C> as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_memcpy_async_tx<C: CubePrimitive>( scope: &mut Scope, this: &Self, source: <Slice<C> as CubeType>::ExpandType, destination: <SliceMut<C> as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source§

impl NativeExpand<Barrier>

Source

pub fn __expand_arrive_method( &self, scope: &mut Scope, ) -> <BarrierToken as CubeType>::ExpandType

Source

pub fn __expand_arrive_and_expect_tx_method( &self, scope: &mut Scope, arrival_count: <u32 as CubeType>::ExpandType, transaction_count: <u32 as CubeType>::ExpandType, ) -> <BarrierToken as CubeType>::ExpandType

Source

pub fn __expand_expect_tx_method( &self, scope: &mut Scope, expected_count: <u32 as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_arrive_and_wait_method( &self, scope: &mut Scope, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_wait_method( &self, scope: &mut Scope, token: <BarrierToken as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_wait_parity_method( &self, scope: &mut Scope, phase: <u32 as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_arrive( scope: &mut Scope, this: &Self, ) -> <BarrierToken as CubeType>::ExpandType

Source

pub fn __expand_arrive_and_expect_tx( scope: &mut Scope, this: &Self, arrival_count: <u32 as CubeType>::ExpandType, transaction_count: <u32 as CubeType>::ExpandType, ) -> <BarrierToken as CubeType>::ExpandType

Source

pub fn __expand_expect_tx( scope: &mut Scope, this: &Self, expected_count: <u32 as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_arrive_and_wait( scope: &mut Scope, this: &Self, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_wait( scope: &mut Scope, this: &Self, token: <BarrierToken as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_wait_parity( scope: &mut Scope, this: &Self, phase: <u32 as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source§

impl NativeExpand<Barrier>

Source

pub fn __expand_commit_copy_async_method( &self, scope: &mut Scope, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_commit_copy_async( scope: &mut Scope, this: &Self, ) -> <() as CubeType>::ExpandType

Source§

impl<T: CubePrimitive + Clone> NativeExpand<Array<T>>

Source

pub fn __expand_to_vectorized_method<N: Size>( self, scope: &mut Scope, ) -> <T as CubeType>::ExpandType

Source

pub fn __expand_to_vectorized<N: Size>( scope: &mut Scope, this: Self, ) -> <T as CubeType>::ExpandType

Source§

impl<E: CubeType> NativeExpand<Array<E>>

Source

pub fn __expand_len_method( self, scope: &mut Scope, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_buffer_len_method( self, scope: &mut Scope, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_len( scope: &mut Scope, this: Self, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_buffer_len( scope: &mut Scope, this: Self, ) -> <usize as CubeType>::ExpandType

Source§

impl<E: CubePrimitive> NativeExpand<Array<E>>

Source

pub fn __expand_index_unchecked_method( self, scope: &mut Scope, i: <usize as CubeType>::ExpandType, ) -> <E as CubeType>::ExpandType

Source

pub fn __expand_index_assign_unchecked_method( self, scope: &mut Scope, i: <usize as CubeType>::ExpandType, value: <E as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_index_unchecked( scope: &mut Scope, this: Self, i: <usize as CubeType>::ExpandType, ) -> <E as CubeType>::ExpandType

Source

pub fn __expand_index_assign_unchecked( scope: &mut Scope, this: Self, i: <usize as CubeType>::ExpandType, value: <E as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source§

impl<E: CubePrimitive> NativeExpand<SharedMemory<E>>

Source

pub fn __expand_index_unchecked_method( self, scope: &mut Scope, i: <usize as CubeType>::ExpandType, ) -> <E as CubeType>::ExpandType

Source

pub fn __expand_index_assign_unchecked_method( self, scope: &mut Scope, i: <usize as CubeType>::ExpandType, value: <E as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_index_unchecked( scope: &mut Scope, this: Self, i: <usize as CubeType>::ExpandType, ) -> <E as CubeType>::ExpandType

Source

pub fn __expand_index_assign_unchecked( scope: &mut Scope, this: Self, i: <usize as CubeType>::ExpandType, value: <E as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source§

impl<T: CubePrimitive + Clone> NativeExpand<SharedMemory<T>>

Source

pub fn __expand_len_method( self, scope: &mut Scope, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_buffer_len_method( self, scope: &mut Scope, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_new(scope: &mut Scope, size: usize) -> Self

Source

pub fn __expand_len( scope: &mut Scope, this: Self, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_buffer_len( scope: &mut Scope, this: Self, ) -> <usize as CubeType>::ExpandType

Source§

impl<T: CubePrimitive + Clone> NativeExpand<SharedMemory<T>>

Source

pub fn __expand_free_method( self, scope: &mut Scope, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_new_aligned( scope: &mut Scope, size: usize, alignment: usize, ) -> <SharedMemory<T> as CubeType>::ExpandType

Source

pub fn __expand_free( scope: &mut Scope, this: Self, ) -> <() as CubeType>::ExpandType

Source§

impl<T: CubeType> NativeExpand<Tensor<T>>

Source

pub fn __expand_stride_method( self, scope: &mut Scope, dim: <usize as CubeType>::ExpandType, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_shape_method( self, scope: &mut Scope, dim: <usize as CubeType>::ExpandType, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_coordinate_method( self, scope: &mut Scope, index: <usize as CubeType>::ExpandType, dim: <usize as CubeType>::ExpandType, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_len_method( self, scope: &mut Scope, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_buffer_len_method( self, scope: &mut Scope, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_rank_method( self, scope: &mut Scope, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_stride( scope: &mut Scope, this: Self, dim: <usize as CubeType>::ExpandType, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_shape( scope: &mut Scope, this: Self, dim: <usize as CubeType>::ExpandType, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_coordinate( scope: &mut Scope, this: Self, index: <usize as CubeType>::ExpandType, dim: <usize as CubeType>::ExpandType, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_len( scope: &mut Scope, this: Self, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_buffer_len( scope: &mut Scope, this: Self, ) -> <usize as CubeType>::ExpandType

Source

pub fn __expand_rank( scope: &mut Scope, this: Self, ) -> <usize as CubeType>::ExpandType

Source§

impl<E: CubePrimitive> NativeExpand<Tensor<E>>

Source

pub fn __expand_index_unchecked_method( self, scope: &mut Scope, i: <usize as CubeType>::ExpandType, ) -> <E as CubeType>::ExpandType

Source

pub fn __expand_index_assign_unchecked_method( self, scope: &mut Scope, i: <usize as CubeType>::ExpandType, value: <E as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_index_unchecked( scope: &mut Scope, this: Self, i: <usize as CubeType>::ExpandType, ) -> <E as CubeType>::ExpandType

Source

pub fn __expand_index_assign_unchecked( scope: &mut Scope, this: Self, i: <usize as CubeType>::ExpandType, value: <E as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source§

impl<T: CubePrimitive, K: TensorMapKind> NativeExpand<TensorMap<T, K>>

Source

pub fn __expand_buffer_method( self, scope: &mut Scope, ) -> NativeExpand<Tensor<T>>

Source

pub fn __expand_stride_method( self, scope: &mut Scope, dim: NativeExpand<usize>, ) -> NativeExpand<usize>

Source

pub fn __expand_shape_method( self, scope: &mut Scope, dim: NativeExpand<usize>, ) -> NativeExpand<usize>

Source

pub fn __expand_coordinate_method( self, scope: &mut Scope, index: NativeExpand<usize>, dim: NativeExpand<usize>, ) -> NativeExpand<usize>

Source

pub fn __expand_len_method(self, scope: &mut Scope) -> NativeExpand<usize>

Source

pub fn __expand_buffer_len_method( self, scope: &mut Scope, ) -> NativeExpand<usize>

Source

pub fn __expand_rank_method(self, scope: &mut Scope) -> NativeExpand<usize>

Source

pub fn __expand_downcast_method<E: CubePrimitive>( self, scope: &mut Scope, ) -> NativeExpand<TensorMap<E, K>>

Expand method of TensorMap::downcast.

Source§

impl<P: Scalar, N: Size> NativeExpand<Vector<P, N>>

Source

pub fn __expand_fill_method( self, scope: &mut Scope, value: <P as CubeType>::ExpandType, ) -> Self

Source

pub fn __expand_fill( scope: &mut Scope, this: Self, value: <P as CubeType>::ExpandType, ) -> Self

Source§

impl<P: Scalar, N: Size> NativeExpand<Vector<P, N>>

Source

pub fn size(&self) -> VectorSize

Comptime version of size.

Source

pub fn __expand_size_method(&self, _scope: &mut Scope) -> VectorSize

Expand method of size.

Source§

impl<P: Scalar, N: Size> NativeExpand<Vector<P, N>>

Source

pub fn __expand_equal_method( self, scope: &mut Scope, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source

pub fn __expand_equal( scope: &mut Scope, this: Self, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source§

impl<P: Scalar, N: Size> NativeExpand<Vector<P, N>>

Source

pub fn __expand_not_equal_method( self, scope: &mut Scope, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source

pub fn __expand_not_equal( scope: &mut Scope, this: Self, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source§

impl<P: Scalar, N: Size> NativeExpand<Vector<P, N>>

Source

pub fn __expand_less_than_method( self, scope: &mut Scope, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source

pub fn __expand_less_than( scope: &mut Scope, this: Self, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source§

impl<P: Scalar, N: Size> NativeExpand<Vector<P, N>>

Source

pub fn __expand_greater_than_method( self, scope: &mut Scope, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source

pub fn __expand_greater_than( scope: &mut Scope, this: Self, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source§

impl<P: Scalar, N: Size> NativeExpand<Vector<P, N>>

Source

pub fn __expand_less_equal_method( self, scope: &mut Scope, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source

pub fn __expand_less_equal( scope: &mut Scope, this: Self, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source§

impl<P: Scalar, N: Size> NativeExpand<Vector<P, N>>

Source

pub fn __expand_greater_equal_method( self, scope: &mut Scope, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source

pub fn __expand_greater_equal( scope: &mut Scope, this: Self, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source§

impl<N: Size> NativeExpand<Vector<bool, N>>

Source

pub fn __expand_and_method( self, scope: &mut Scope, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source

pub fn __expand_and( scope: &mut Scope, this: Self, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source§

impl<N: Size> NativeExpand<Vector<bool, N>>

Source

pub fn __expand_or_method( self, scope: &mut Scope, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source

pub fn __expand_or( scope: &mut Scope, this: Self, other: Self, ) -> <Vector<bool, N> as CubeType>::ExpandType

Source§

impl<P: CountOnes + Scalar, N: Size> NativeExpand<Vector<P, N>>

Source

pub fn __expand_count_ones_method( self, scope: &mut Scope, ) -> <Vector<u32, N> as CubeType>::ExpandType

Source

pub fn __expand_count_ones( scope: &mut Scope, this: Self, ) -> <Vector<u32, N> as CubeType>::ExpandType

Source§

impl<Inner: CubePrimitive<Scalar: Numeric>> NativeExpand<Atomic<Inner>>

Source

pub fn __expand_load_method( self, scope: &mut Scope, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_store_method( self, scope: &mut Scope, value: <Inner as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_swap_method( self, scope: &mut Scope, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_add_method( self, scope: &mut Scope, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_sub_method( self, scope: &mut Scope, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_max_method( self, scope: &mut Scope, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_min_method( self, scope: &mut Scope, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_load( scope: &mut Scope, this: Self, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_store( scope: &mut Scope, this: Self, value: <Inner as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source

pub fn __expand_swap( scope: &mut Scope, this: Self, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_add( scope: &mut Scope, this: Self, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_sub( scope: &mut Scope, this: Self, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_max( scope: &mut Scope, this: Self, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_min( scope: &mut Scope, this: Self, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source§

impl<Inner: CubePrimitive<Scalar: Int>> NativeExpand<Atomic<Inner>>

Source

pub fn __expand_compare_exchange_weak_method( self, scope: &mut Scope, cmp: <Inner as CubeType>::ExpandType, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_and_method( self, scope: &mut Scope, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_or_method( self, scope: &mut Scope, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_xor_method( self, scope: &mut Scope, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_compare_exchange_weak( scope: &mut Scope, this: Self, cmp: <Inner as CubeType>::ExpandType, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_and( scope: &mut Scope, this: Self, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_or( scope: &mut Scope, this: Self, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source

pub fn __expand_fetch_xor( scope: &mut Scope, this: Self, value: <Inner as CubeType>::ExpandType, ) -> <Inner as CubeType>::ExpandType

Source§

impl<T: CubeType> NativeExpand<T>

Source

pub fn new(expand: ManagedVariable) -> Self

Constructs a new NativeExpand.

Source§

impl<T: CubeType> NativeExpand<T>

Source

pub unsafe fn as_type_ref_unchecked<E: CubeType>(&self) -> &NativeExpand<E>

Casts a reference of this expand element to a different type.

§Safety

There’s no guarantee the new type is valid for the ManagedVariable

Source

pub unsafe fn as_type_mut_unchecked<E: CubeType>( &mut self, ) -> &mut NativeExpand<E>

Casts a mutable reference of this expand element to a different type.

§Safety

There’s no guarantee the new type is valid for the ManagedVariable

Source§

impl<T: CubeType> NativeExpand<T>

Source§

impl<T: CubePrimitive> NativeExpand<T>

Source

pub fn from_lit<L: Into<ConstantValue>>(scope: &Scope, lit: L) -> Self

Create an NativeExpand from a value that is normally a literal.

Source

pub fn constant(&self) -> Option<ConstantValue>

Get the ConstantValue from the variable.

Source

pub fn __expand_into_lit_unchecked_method(self, _scope: &mut Scope) -> T

Source§

impl<E: Int> NativeExpand<E>

Source

pub fn __expand_is_multiple_of_method( self, scope: &mut Scope, factor: NativeExpand<E>, ) -> NativeExpand<bool>

Trait Implementations§

Source§

impl<T: Abs + CubePrimitive> AbsExpand for NativeExpand<T>

Source§

fn __expand_abs_method(self, scope: &mut Scope) -> Self

Source§

impl<T: AddAssign + CubePrimitive> AddAssignExpand for NativeExpand<T>

Source§

fn __expand_add_assign_method(self, scope: &mut Scope, rhs: Self)

Source§

impl<T: Add<Output = T> + CubePrimitive> AddExpand for NativeExpand<T>

Source§

fn __expand_add_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<T: ArcCos + CubePrimitive> ArcCosExpand for NativeExpand<T>

Source§

fn __expand_acos_method(self, scope: &mut Scope) -> Self

Source§

impl<T: ArcCosh + CubePrimitive> ArcCoshExpand for NativeExpand<T>

Source§

fn __expand_acosh_method(self, scope: &mut Scope) -> Self

Source§

impl<T: ArcSin + CubePrimitive> ArcSinExpand for NativeExpand<T>

Source§

fn __expand_asin_method(self, scope: &mut Scope) -> Self

Source§

impl<T: ArcSinh + CubePrimitive> ArcSinhExpand for NativeExpand<T>

Source§

fn __expand_asinh_method(self, scope: &mut Scope) -> Self

Source§

impl<T: CubePrimitive + ArcTan2> ArcTan2Expand for NativeExpand<T>

Source§

fn __expand_atan2_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<T: ArcTan + CubePrimitive> ArcTanExpand for NativeExpand<T>

Source§

fn __expand_atan_method(self, scope: &mut Scope) -> Self

Source§

impl<T: ArcTanh + CubePrimitive> ArcTanhExpand for NativeExpand<T>

Source§

fn __expand_atanh_method(self, scope: &mut Scope) -> Self

Source§

impl<T: CubePrimitive> AsMutExpand<T> for NativeExpand<T>

Source§

fn __expand_as_mut_method( self, _scope: &mut Scope, ) -> <T as CubeType>::ExpandType

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl<T: CubePrimitive> AsRefExpand<T> for NativeExpand<T>

Source§

fn __expand_as_ref_method(self, _scope: &mut Scope) -> NativeExpand<T>

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl<T: NativeAssign> Assign for NativeExpand<T>

Source§

fn expand_assign(&mut self, scope: &mut Scope, value: Self)

Assign value to self in scope.
Source§

fn init_mut(&self, scope: &mut Scope) -> Self

Create a new mutable variable of this type in scope.
Source§

impl<T: Ceil + CubePrimitive> CeilExpand for NativeExpand<T>

Source§

fn __expand_ceil_method(self, scope: &mut Scope) -> Self

Source§

impl<T: CubeType> Clone for NativeExpand<T>

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<T: Cos + CubePrimitive> CosExpand for NativeExpand<T>

Source§

fn __expand_cos_method(self, scope: &mut Scope) -> Self

Source§

impl<T: Cosh + CubePrimitive> CoshExpand for NativeExpand<T>

Source§

fn __expand_cosh_method(self, scope: &mut Scope) -> Self

Source§

impl<T: CountOnes + CubePrimitive> CountOnesExpand for NativeExpand<T>

Source§

fn __expand_count_ones_method(self, scope: &mut Scope) -> Self::WithScalar<u32>

Source§

impl<T: CubeType> CubeDebug for &NativeExpand<T>

Source§

fn set_debug_name(&self, scope: &mut Scope, name: &'static str)

Set the debug name of this type’s expansion. Should do nothing for types that don’t appear at runtime
Source§

impl<T: CubeType> CubeDebug for &mut NativeExpand<T>

Source§

fn set_debug_name(&self, scope: &mut Scope, name: &'static str)

Set the debug name of this type’s expansion. Should do nothing for types that don’t appear at runtime
Source§

impl<T: CubeType> CubeDebug for NativeExpand<T>

Source§

fn set_debug_name(&self, scope: &mut Scope, name: &'static str)

Set the debug name of this type’s expansion. Should do nothing for types that don’t appear at runtime
Source§

impl<E: CubePrimitive> CubeIndexExpand for NativeExpand<Array<E>>

Source§

type Output = NativeExpand<E>

Source§

type Idx = NativeExpand<usize>

Source§

fn expand_index( self, scope: &mut Scope, index: NativeExpand<usize>, ) -> Self::Output

Source§

fn expand_index_unchecked( self, scope: &mut Scope, index: NativeExpand<usize>, ) -> Self::Output

Source§

impl<E: CubePrimitive> CubeIndexExpand for NativeExpand<SharedMemory<E>>

Source§

type Output = NativeExpand<E>

Source§

type Idx = NativeExpand<usize>

Source§

fn expand_index( self, scope: &mut Scope, index: NativeExpand<usize>, ) -> Self::Output

Source§

fn expand_index_unchecked( self, scope: &mut Scope, index: NativeExpand<usize>, ) -> Self::Output

Source§

impl<E: CubePrimitive> CubeIndexExpand for NativeExpand<Tensor<E>>

Source§

type Output = NativeExpand<E>

Source§

type Idx = NativeExpand<usize>

Source§

fn expand_index( self, scope: &mut Scope, index: NativeExpand<usize>, ) -> Self::Output

Source§

fn expand_index_unchecked( self, scope: &mut Scope, index: NativeExpand<usize>, ) -> Self::Output

Source§

impl<E: Scalar, N: Size> CubeIndexExpand for NativeExpand<Vector<E, N>>

Source§

type Output = NativeExpand<E>

Source§

type Idx = NativeExpand<usize>

Source§

fn expand_index( self, scope: &mut Scope, index: NativeExpand<usize>, ) -> Self::Output

Source§

fn expand_index_unchecked( self, scope: &mut Scope, index: NativeExpand<usize>, ) -> Self::Output

Source§

impl<E: CubePrimitive> CubeIndexMutExpand for NativeExpand<Array<E>>

Source§

fn expand_index_mut( self, scope: &mut Scope, index: NativeExpand<usize>, value: Self::Output, )

Source§

impl<E: CubePrimitive> CubeIndexMutExpand for NativeExpand<SharedMemory<E>>

Source§

fn expand_index_mut( self, scope: &mut Scope, index: NativeExpand<usize>, value: Self::Output, )

Source§

impl<E: CubePrimitive> CubeIndexMutExpand for NativeExpand<Tensor<E>>

Source§

fn expand_index_mut( self, scope: &mut Scope, index: NativeExpand<usize>, value: Self::Output, )

Source§

impl<E: Scalar, N: Size> CubeIndexMutExpand for NativeExpand<Vector<E, N>>

Source§

fn expand_index_mut( self, scope: &mut Scope, index: NativeExpand<usize>, value: Self::Output, )

Source§

impl<T: CubePrimitive> CubePrimitiveExpand for NativeExpand<T>

Source§

impl<T: Degrees + CubePrimitive> DegreesExpand for NativeExpand<T>

Source§

fn __expand_to_degrees_method(self, scope: &mut Scope) -> Self

Source§

impl<T: DivAssign + CubePrimitive> DivAssignExpand for NativeExpand<T>

Source§

fn __expand_div_assign_method(self, scope: &mut Scope, rhs: Self)

Source§

impl<E: DivCeil> DivCeilExpand<E> for NativeExpand<E>

Source§

fn __expand_div_ceil_method( self, scope: &mut Scope, divisor: NativeExpand<E>, ) -> NativeExpand<E>

Source§

impl<T: Div<Output = T> + CubePrimitive> DivExpand for NativeExpand<T>

Source§

fn __expand_mul_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<T: CubePrimitive + Dot> DotExpand for NativeExpand<T>

Source§

fn __expand_dot_method(self, scope: &mut Scope, rhs: Self) -> Self::Scalar

Source§

impl<T: Erf + CubePrimitive> ErfExpand for NativeExpand<T>

Source§

fn __expand_erf_method(self, scope: &mut Scope) -> Self

Source§

impl<T: Exp + CubePrimitive> ExpExpand for NativeExpand<T>

Source§

fn __expand_exp_method(self, scope: &mut Scope) -> Self

Source§

impl<T: FindFirstSet + CubePrimitive> FindFirstSetExpand for NativeExpand<T>

Source§

fn __expand_find_first_set_method( self, scope: &mut Scope, ) -> Self::WithScalar<u32>

Source§

impl<F: FloatBits> FloatBitsExpand for NativeExpand<F>

Source§

type Bits = <F as FloatBits>::Bits

Source§

fn __expand_to_bits_method(self, scope: &mut Scope) -> NativeExpand<Self::Bits>

Source§

impl<T: FloatOps + CubePrimitive> FloatOpsExpand for NativeExpand<T>

Source§

fn __expand_min_method(self, scope: &mut Scope, other: Self) -> Self

Source§

fn __expand_max_method(self, scope: &mut Scope, other: Self) -> Self

Source§

fn __expand_clamp_method(self, scope: &mut Scope, min: Self, max: Self) -> Self

Source§

impl<T: Floor + CubePrimitive> FloorExpand for NativeExpand<T>

Source§

fn __expand_floor_method(self, scope: &mut Scope) -> Self

Source§

impl<T: CubeType> From<&NativeExpand<T>> for NativeExpand<T>

Source§

fn from(value: &NativeExpand<T>) -> Self

Converts to this type from the input type.
Source§

impl<T: CubeType> From<&mut NativeExpand<T>> for NativeExpand<T>

Source§

fn from(value: &mut NativeExpand<T>) -> Self

Converts to this type from the input type.
Source§

impl<Marker: 'static> From<DynamicScalar<Marker>> for NativeExpand<DynamicScalar<Marker>>

Source§

fn from(value: DynamicScalar<Marker>) -> Self

Converts to this type from the input type.
Source§

impl<T: CubeType> From<ManagedVariable> for NativeExpand<T>

Source§

fn from(expand: ManagedVariable) -> Self

Converts to this type from the input type.
Source§

impl From<NativeExpand<Shared<Barrier>>> for BarrierExpand

Source§

fn from(value: SharedExpand<Barrier>) -> Self

Converts to this type from the input type.
Source§

impl<T: CubeType> From<NativeExpand<T>> for ManagedVariable

Source§

fn from(value: NativeExpand<T>) -> Self

Converts to this type from the input type.
Source§

impl<T: CubeType> From<NativeExpand<T>> for Variable

Source§

fn from(value: NativeExpand<T>) -> Self

Converts to this type from the input type.
Source§

impl From<bf16> for NativeExpand<bf16>

Source§

fn from(value: bf16) -> Self

Converts to this type from the input type.
Source§

impl From<bool> for NativeExpand<bool>

Source§

fn from(value: bool) -> Self

Converts to this type from the input type.
Source§

impl From<e2m1> for NativeExpand<e2m1>

Source§

fn from(value: e2m1) -> Self

Converts to this type from the input type.
Source§

impl From<e2m1x2> for NativeExpand<e2m1x2>

Source§

fn from(value: e2m1x2) -> Self

Converts to this type from the input type.
Source§

impl From<e2m3> for NativeExpand<e2m3>

Source§

fn from(value: e2m3) -> Self

Converts to this type from the input type.
Source§

impl From<e3m2> for NativeExpand<e3m2>

Source§

fn from(value: e3m2) -> Self

Converts to this type from the input type.
Source§

impl From<e4m3> for NativeExpand<e4m3>

Source§

fn from(value: e4m3) -> Self

Converts to this type from the input type.
Source§

impl From<e5m2> for NativeExpand<e5m2>

Source§

fn from(value: e5m2) -> Self

Converts to this type from the input type.
Source§

impl From<f16> for NativeExpand<f16>

Source§

fn from(value: f16) -> Self

Converts to this type from the input type.
Source§

impl From<f32> for NativeExpand<f32>

Source§

fn from(value: f32) -> Self

Converts to this type from the input type.
Source§

impl From<f64> for NativeExpand<f64>

Source§

fn from(value: f64) -> Self

Converts to this type from the input type.
Source§

impl From<flex32> for NativeExpand<flex32>

Source§

fn from(value: flex32) -> Self

Converts to this type from the input type.
Source§

impl From<i16> for NativeExpand<i16>

Source§

fn from(value: i16) -> Self

Converts to this type from the input type.
Source§

impl From<i32> for NativeExpand<i32>

Source§

fn from(value: i32) -> Self

Converts to this type from the input type.
Source§

impl From<i64> for NativeExpand<i64>

Source§

fn from(value: i64) -> Self

Converts to this type from the input type.
Source§

impl From<i8> for NativeExpand<i8>

Source§

fn from(value: i8) -> Self

Converts to this type from the input type.
Source§

impl From<isize> for NativeExpand<isize>

Source§

fn from(value: isize) -> Self

Converts to this type from the input type.
Source§

impl From<tf32> for NativeExpand<tf32>

Source§

fn from(value: tf32) -> Self

Converts to this type from the input type.
Source§

impl From<u16> for NativeExpand<u16>

Source§

fn from(value: u16) -> Self

Converts to this type from the input type.
Source§

impl From<u32> for NativeExpand<u32>

Source§

fn from(value: u32) -> Self

Converts to this type from the input type.
Source§

impl From<u64> for NativeExpand<u64>

Source§

fn from(value: u64) -> Self

Converts to this type from the input type.
Source§

impl From<u8> for NativeExpand<u8>

Source§

fn from(value: u8) -> Self

Converts to this type from the input type.
Source§

impl From<ue8m0> for NativeExpand<ue8m0>

Source§

fn from(value: ue8m0) -> Self

Converts to this type from the input type.
Source§

impl From<usize> for NativeExpand<usize>

Source§

fn from(value: usize) -> Self

Converts to this type from the input type.
Source§

impl<T: CubePrimitive + Hypot> HypotExpand for NativeExpand<T>

Source§

fn __expand_hypot_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<P: Scalar + Into<NativeExpand<P>>, N: Size> Into<NativeExpand<Vector<P, N>>> for Vector<P, N>

Source§

fn into(self) -> NativeExpand<Self>

Converts this type into the (usually inferred) input type.
Source§

impl<C: CubeType> IntoMut for NativeExpand<Array<C>>

Source§

fn into_mut(self, _scope: &mut Scope) -> Self

Convert the variable into a potentially new mutable variable in scope, copying if needed.
Source§

impl<T: CubePrimitive> IntoMut for NativeExpand<Shared<T>>

Source§

fn into_mut(self, _scope: &mut Scope) -> Self

Convert the variable into a potentially new mutable variable in scope, copying if needed.
Source§

impl<T: CubePrimitive> IntoMut for NativeExpand<SharedMemory<T>>

Source§

fn into_mut(self, _scope: &mut Scope) -> Self

Convert the variable into a potentially new mutable variable in scope, copying if needed.
Source§

impl<T: NativeAssign> IntoMut for NativeExpand<T>

Source§

fn into_mut(self, scope: &mut Scope) -> Self

Convert the variable into a potentially new mutable variable in scope, copying if needed.
Source§

impl<C: CubeType> IntoMut for NativeExpand<Tensor<C>>

Source§

fn into_mut(self, _scope: &mut Scope) -> Self

Convert the variable into a potentially new mutable variable in scope, copying if needed.
Source§

impl<E: CubePrimitive, K: TensorMapKind> IntoMut for NativeExpand<TensorMap<E, K>>

Source§

fn into_mut(self, _scope: &mut Scope) -> Self

Convert the variable into a potentially new mutable variable in scope, copying if needed.
Source§

impl<T: InverseSqrt + CubePrimitive> InverseSqrtExpand for NativeExpand<T>

Source§

fn __expand_inverse_sqrt_method(self, scope: &mut Scope) -> Self

Source§

impl<T: IsInf + CubePrimitive> IsInfExpand for NativeExpand<T>

Source§

fn __expand_is_inf_method(self, scope: &mut Scope) -> Self::WithScalar<bool>

Source§

impl<T: IsNan + CubePrimitive> IsNanExpand for NativeExpand<T>

Source§

fn __expand_is_nan_method(self, scope: &mut Scope) -> Self::WithScalar<bool>

Source§

impl<T: SizedContainer + CubeType<ExpandType = NativeExpand<T>>> Iterable<<T as SizedContainer>::Item> for NativeExpand<T>

Source§

fn expand( self, scope: &mut Scope, body: impl FnMut(&mut Scope, <T::Item as CubeType>::ExpandType), )

Expand a runtime loop without unrolling Read more
Source§

fn expand_unroll( self, _scope: &mut Scope, _body: impl FnMut(&mut Scope, <T::Item as CubeType>::ExpandType), )

Expand an unrolled loop. The body should be invoced n times, where n is the number of iterations. Read more
Source§

fn const_len(&self) -> Option<usize>

Return the comptime length of this iterable, if possible
Source§

impl<T: LeadingZeros + CubePrimitive> LeadingZerosExpand for NativeExpand<T>

Source§

fn __expand_leading_zeros_method( self, scope: &mut Scope, ) -> Self::WithScalar<u32>

Source§

impl<T: CubePrimitive> ListExpand<T> for NativeExpand<Array<T>>

Source§

impl<T: CubePrimitive> ListExpand<T> for NativeExpand<SharedMemory<T>>

Source§

impl<T: CubePrimitive> ListExpand<T> for NativeExpand<Tensor<T>>

Source§

impl<T: CubePrimitive> ListMutExpand<T> for NativeExpand<Array<T>>

Source§

fn __expand_write_method( &self, scope: &mut Scope, idx: NativeExpand<usize>, value: NativeExpand<T>, )

Source§

impl<T: CubePrimitive> ListMutExpand<T> for NativeExpand<SharedMemory<T>>

Source§

fn __expand_write_method( &self, scope: &mut Scope, idx: NativeExpand<usize>, value: NativeExpand<T>, )

Source§

impl<T: CubePrimitive> ListMutExpand<T> for NativeExpand<Tensor<T>>

Source§

fn __expand_write_method( &self, scope: &mut Scope, idx: NativeExpand<usize>, value: NativeExpand<T>, )

Source§

impl<T: Log1p + CubePrimitive> Log1pExpand for NativeExpand<T>

Source§

fn __expand_log1p_method(self, scope: &mut Scope) -> Self

Source§

impl<T: Log + CubePrimitive> LogExpand for NativeExpand<T>

Source§

fn __expand_ln_method(self, scope: &mut Scope) -> Self

Source§

impl<T: Magnitude + CubePrimitive> MagnitudeExpand for NativeExpand<T>

Source§

fn __expand_magnitude_method(self, scope: &mut Scope) -> Self::Scalar

Source§

impl<T: MulAssign + CubePrimitive> MulAssignExpand for NativeExpand<T>

Source§

fn __expand_mul_assign_method(self, scope: &mut Scope, rhs: Self)

Source§

impl<T: Mul<Output = T> + CubePrimitive> MulExpand for NativeExpand<T>

Source§

fn __expand_mul_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<T: CubePrimitive + MulHi> MulHiExpand for NativeExpand<T>

Source§

fn __expand_mul_hi_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<T: Normalize + CubePrimitive> NormalizeExpand for NativeExpand<T>

Source§

fn __expand_normalize_method(self, scope: &mut Scope) -> Self

Source§

impl<T: CubeNot + CubePrimitive> NotExpand for NativeExpand<T>

Source§

fn __expand_not_method(self, scope: &mut Scope) -> Self

Source§

impl<T: Ord + CubePrimitive> OrdExpand for NativeExpand<T>

Source§

fn __expand_cmp_method(self, scope: &mut Scope, rhs: Self) -> OrderingExpand

Source§

fn __expand_min_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

fn __expand_max_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

fn __expand_clamp_method(self, scope: &mut Scope, min: Self, max: Self) -> Self

Source§

impl<T: CubePrimitive + Powf> PowfExpand for NativeExpand<T>

Source§

fn __expand_powf_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<Rhs: CubePrimitive, T: CubePrimitive + Powi<Rhs>> PowiExpand<Rhs> for NativeExpand<T>

Source§

fn __expand_powi_method(self, scope: &mut Scope, rhs: NativeExpand<Rhs>) -> Self

Source§

impl<T: Radians + CubePrimitive> RadiansExpand for NativeExpand<T>

Source§

fn __expand_to_radians_method(self, scope: &mut Scope) -> Self

Source§

impl<T: Recip + CubePrimitive> RecipExpand for NativeExpand<T>

Source§

fn __expand_recip_method(self, scope: &mut Scope) -> Self

Source§

impl<T: RemAssign + CubePrimitive> RemAssignExpand for NativeExpand<T>

Source§

fn __expand_rem_assign_method(self, scope: &mut Scope, rhs: Self)

Source§

impl<T: Rem<Output = T> + CubePrimitive> RemExpand for NativeExpand<T>

Source§

fn __expand_rem_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<T: CubePrimitive + Remainder> RemainderExpand for NativeExpand<T>

Source§

fn __expand_rem_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<T: ReverseBits + CubePrimitive> ReverseBitsExpand for NativeExpand<T>

Source§

fn __expand_reverse_bits_method(self, scope: &mut Scope) -> Self

Source§

impl<T: CubePrimitive + Rhypot> RhypotExpand for NativeExpand<T>

Source§

fn __expand_rhypot_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<T: Round + CubePrimitive> RoundExpand for NativeExpand<T>

Source§

fn __expand_round_method(self, scope: &mut Scope) -> Self

Source§

impl<T: CubePrimitive + SaturatingAdd> SaturatingAddExpand for NativeExpand<T>

Source§

fn __expand_saturating_add_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<T: CubePrimitive + SaturatingSub> SaturatingSubExpand for NativeExpand<T>

Source§

fn __expand_saturating_sub_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<T: Sin + CubePrimitive> SinExpand for NativeExpand<T>

Source§

fn __expand_sin_method(self, scope: &mut Scope) -> Self

Source§

impl<T: Sinh + CubePrimitive> SinhExpand for NativeExpand<T>

Source§

fn __expand_sinh_method(self, scope: &mut Scope) -> Self

Source§

impl<E: CubePrimitive> SliceMutOperatorExpand<E> for NativeExpand<Array<E>>

Source§

impl<E: CubePrimitive> SliceMutOperatorExpand<E> for NativeExpand<SharedMemory<E>>

Source§

impl<E: CubePrimitive> SliceMutOperatorExpand<E> for NativeExpand<Tensor<E>>

Source§

impl<E: CubePrimitive> SliceOperatorExpand<E> for NativeExpand<Array<E>>

Source§

impl<E: CubePrimitive> SliceOperatorExpand<E> for NativeExpand<SharedMemory<E>>

Source§

impl<E: CubePrimitive> SliceOperatorExpand<E> for NativeExpand<Tensor<E>>

Source§

impl<T: Sqrt + CubePrimitive> SqrtExpand for NativeExpand<T>

Source§

fn __expand_sqrt_method(self, scope: &mut Scope) -> Self

Source§

impl<T: SubAssign + CubePrimitive> SubAssignExpand for NativeExpand<T>

Source§

fn __expand_sub_assign_method(self, scope: &mut Scope, rhs: Self)

Source§

impl<T: Sub<Output = T> + CubePrimitive> SubExpand for NativeExpand<T>

Source§

fn __expand_sub_method(self, scope: &mut Scope, rhs: Self) -> Self

Source§

impl<T: Tan + CubePrimitive> TanExpand for NativeExpand<T>

Source§

fn __expand_tan_method(self, scope: &mut Scope) -> Self

Source§

impl<T: Tanh + CubePrimitive> TanhExpand for NativeExpand<T>

Source§

fn __expand_tanh_method(self, scope: &mut Scope) -> Self

Source§

impl<T: TrailingZeros + CubePrimitive> TrailingZerosExpand for NativeExpand<T>

Source§

fn __expand_trailing_zeros_method( self, scope: &mut Scope, ) -> Self::WithScalar<u32>

Source§

impl<T: Trunc + CubePrimitive> TruncExpand for NativeExpand<T>

Source§

fn __expand_trunc_method(self, scope: &mut Scope) -> Self

Source§

impl<T: CubePrimitive> VectorizedExpand for NativeExpand<Array<T>>

Source§

impl<T: CubePrimitive> VectorizedExpand for NativeExpand<SharedMemory<T>>

Source§

impl<T: CubePrimitive> VectorizedExpand for NativeExpand<Tensor<T>>

Source§

impl<E: CubePrimitive, K: TensorMapKind> VectorizedExpand for NativeExpand<TensorMap<E, K>>

Auto Trait Implementations§

§

impl<T> Freeze for NativeExpand<T>

§

impl<T> RefUnwindSafe for NativeExpand<T>
where T: RefUnwindSafe,

§

impl<T> !Send for NativeExpand<T>

§

impl<T> !Sync for NativeExpand<T>

§

impl<T> Unpin for NativeExpand<T>
where T: Unpin,

§

impl<T> UnsafeUnpin for NativeExpand<T>

§

impl<T> UnwindSafe for NativeExpand<T>
where T: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<C> CloneExpand for C
where C: Clone,

Source§

fn __expand_clone_method(&self, _scope: &mut Scope) -> C

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoComptime for T

Source§

fn comptime(self) -> Self

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.