Skip to main content

ReduceArgs

Trait ReduceArgs 

Source
pub trait ReduceArgs:
    Send
    + Sync
    + 'static
    + Clone {
    type Input<E: Numeric, S: Size>: LaunchArg + RudaType;
    type Output<E: Numeric, S: Size>: LaunchArg + RudaType;
    type State<P: ReduceDType>: RudaType;

Show 32 methods // Required methods fn init_state<P: ReduceDType>( input: &Self::Input<P::In, P::SizeIn>, output: &mut Self::Output<P::Out, P::SizeOut>, ) -> Self::State<P>; fn read_input<P: ReduceDType>( state: &Self::State<P>, index: usize, ) -> Vector<P::In, P::SizeIn>; fn read_output<P: ReduceDType>( state: &Self::State<P>, index: usize, ) -> Vector<P::Out, P::SizeOut>; fn write_output<P: ReduceDType>( state: &mut Self::State<P>, index: usize, value: Vector<P::Out, P::SizeOut>, ); fn len_input<P: ReduceDType>(state: &Self::State<P>) -> usize; fn len_output<P: ReduceDType>(state: &Self::State<P>) -> usize; fn buffer_len_input<P: ReduceDType>(state: &Self::State<P>) -> usize; fn buffer_len_output<P: ReduceDType>(state: &Self::State<P>) -> usize; fn rank_input<P: ReduceDType>(state: &Self::State<P>) -> usize; fn rank_output<P: ReduceDType>(state: &Self::State<P>) -> usize; fn shape_input<P: ReduceDType>(state: &Self::State<P>, dim: usize) -> usize; fn shape_output<P: ReduceDType>(state: &Self::State<P>, dim: usize) -> usize; fn stride_input<P: ReduceDType>(state: &Self::State<P>, dim: usize) -> usize; fn stride_output<P: ReduceDType>( state: &Self::State<P>, dim: usize, ) -> usize; fn vector_size_input<P: ReduceDType>(state: &Self::State<P>) -> VectorSize; fn vector_size_output<P: ReduceDType>(state: &Self::State<P>) -> VectorSize; fn __expand_init_state<P: ReduceDType>( scope: &mut Scope, input: <Self::Input<P::In, P::SizeIn> as RudaType>::ExpandType, output: <Self::Output<P::Out, P::SizeOut> as RudaType>::ExpandType, ) -> <Self::State<P> as RudaType>::ExpandType; fn __expand_read_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, index: <usize as RudaType>::ExpandType, ) -> <Vector<P::In, P::SizeIn> as RudaType>::ExpandType; fn __expand_read_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, index: <usize as RudaType>::ExpandType, ) -> <Vector<P::Out, P::SizeOut> as RudaType>::ExpandType; fn __expand_write_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, index: <usize as RudaType>::ExpandType, value: <Vector<P::Out, P::SizeOut> as RudaType>::ExpandType, ) -> <() as RudaType>::ExpandType; fn __expand_len_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType; fn __expand_len_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType; fn __expand_buffer_len_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType; fn __expand_buffer_len_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType; fn __expand_rank_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType; fn __expand_rank_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType; fn __expand_shape_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, dim: <usize as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType; fn __expand_shape_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, dim: <usize as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType; fn __expand_stride_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, dim: <usize as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType; fn __expand_stride_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, dim: <usize as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType; fn __expand_vector_size_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> VectorSize; fn __expand_vector_size_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> VectorSize;
}

Required Associated Types§

Required Methods§

Source

fn init_state<P: ReduceDType>( input: &Self::Input<P::In, P::SizeIn>, output: &mut Self::Output<P::Out, P::SizeOut>, ) -> Self::State<P>

Source

fn read_input<P: ReduceDType>( state: &Self::State<P>, index: usize, ) -> Vector<P::In, P::SizeIn>

Source

fn read_output<P: ReduceDType>( state: &Self::State<P>, index: usize, ) -> Vector<P::Out, P::SizeOut>

Source

fn write_output<P: ReduceDType>( state: &mut Self::State<P>, index: usize, value: Vector<P::Out, P::SizeOut>, )

Source

fn len_input<P: ReduceDType>(state: &Self::State<P>) -> usize

Source

fn len_output<P: ReduceDType>(state: &Self::State<P>) -> usize

Source

fn buffer_len_input<P: ReduceDType>(state: &Self::State<P>) -> usize

Source

fn buffer_len_output<P: ReduceDType>(state: &Self::State<P>) -> usize

Source

fn rank_input<P: ReduceDType>(state: &Self::State<P>) -> usize

Source

fn rank_output<P: ReduceDType>(state: &Self::State<P>) -> usize

Source

fn shape_input<P: ReduceDType>(state: &Self::State<P>, dim: usize) -> usize

Source

fn shape_output<P: ReduceDType>(state: &Self::State<P>, dim: usize) -> usize

Source

fn stride_input<P: ReduceDType>(state: &Self::State<P>, dim: usize) -> usize

Source

fn stride_output<P: ReduceDType>(state: &Self::State<P>, dim: usize) -> usize

Source

fn vector_size_input<P: ReduceDType>(state: &Self::State<P>) -> VectorSize

Source

fn vector_size_output<P: ReduceDType>(state: &Self::State<P>) -> VectorSize

Source

fn __expand_init_state<P: ReduceDType>( scope: &mut Scope, input: <Self::Input<P::In, P::SizeIn> as RudaType>::ExpandType, output: <Self::Output<P::Out, P::SizeOut> as RudaType>::ExpandType, ) -> <Self::State<P> as RudaType>::ExpandType

Source

fn __expand_read_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, index: <usize as RudaType>::ExpandType, ) -> <Vector<P::In, P::SizeIn> as RudaType>::ExpandType

Source

fn __expand_read_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, index: <usize as RudaType>::ExpandType, ) -> <Vector<P::Out, P::SizeOut> as RudaType>::ExpandType

Source

fn __expand_write_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, index: <usize as RudaType>::ExpandType, value: <Vector<P::Out, P::SizeOut> as RudaType>::ExpandType, ) -> <() as RudaType>::ExpandType

Source

fn __expand_len_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType

Source

fn __expand_len_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType

Source

fn __expand_buffer_len_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType

Source

fn __expand_buffer_len_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType

Source

fn __expand_rank_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType

Source

fn __expand_rank_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType

Source

fn __expand_shape_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, dim: <usize as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType

Source

fn __expand_shape_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, dim: <usize as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType

Source

fn __expand_stride_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, dim: <usize as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType

Source

fn __expand_stride_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, dim: <usize as RudaType>::ExpandType, ) -> <usize as RudaType>::ExpandType

Source

fn __expand_vector_size_input<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> VectorSize

Source

fn __expand_vector_size_output<P: ReduceDType>( scope: &mut Scope, state: <Self::State<P> as RudaType>::ExpandType, ) -> VectorSize

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§