pub trait MinMaxOps<Scalar: Clone + ReduceMinMax, const MAX_RANK: usize>: TensorRef<Scalar, MAX_RANK>{
// Provided methods
fn try_minmax_all(
&self,
) -> Result<MinMaxResult<Scalar::Output>, TensorError> { ... }
fn try_minmax_axis<AnyIndex: VectorIndex>(
&self,
axis: AnyIndex,
keep_dims: bool,
) -> Result<MinMaxResult<Tensor<<Scalar as ReduceMinMax>::Output, Global, MAX_RANK>, Tensor<usize, Global, MAX_RANK>>, TensorError> { ... }
fn try_minmax_axis_into<AnyIndex: VectorIndex>(
&self,
axis: AnyIndex,
keep_dims: bool,
min_out: &mut Tensor<Scalar::Output, Global, MAX_RANK>,
argmin_out: &mut Tensor<usize, Global, MAX_RANK>,
max_out: &mut Tensor<Scalar::Output, Global, MAX_RANK>,
argmax_out: &mut Tensor<usize, Global, MAX_RANK>,
) -> Result<(), TensorError> { ... }
fn try_min_all(&self) -> Result<Scalar::Output, TensorError> { ... }
fn try_argmin_all(&self) -> Result<usize, TensorError> { ... }
fn try_max_all(&self) -> Result<Scalar::Output, TensorError> { ... }
fn try_argmax_all(&self) -> Result<usize, TensorError> { ... }
fn try_min_axis<AnyIndex: VectorIndex>(
&self,
axis: AnyIndex,
keep_dims: bool,
) -> Result<Tensor<Scalar::Output, Global, MAX_RANK>, TensorError> { ... }
fn try_argmin_axis<AnyIndex: VectorIndex>(
&self,
axis: AnyIndex,
keep_dims: bool,
) -> Result<Tensor<usize, Global, MAX_RANK>, TensorError> { ... }
fn try_max_axis<AnyIndex: VectorIndex>(
&self,
axis: AnyIndex,
keep_dims: bool,
) -> Result<Tensor<Scalar::Output, Global, MAX_RANK>, TensorError> { ... }
fn try_argmax_axis<AnyIndex: VectorIndex>(
&self,
axis: AnyIndex,
keep_dims: bool,
) -> Result<Tensor<usize, Global, MAX_RANK>, TensorError> { ... }
}Expand description
Extension trait: min/max reductions for any TensorRef implementor.
Provided Methods§
fn try_minmax_all(&self) -> Result<MinMaxResult<Scalar::Output>, TensorError>
fn try_minmax_axis<AnyIndex: VectorIndex>( &self, axis: AnyIndex, keep_dims: bool, ) -> Result<MinMaxResult<Tensor<<Scalar as ReduceMinMax>::Output, Global, MAX_RANK>, Tensor<usize, Global, MAX_RANK>>, TensorError>
fn try_minmax_axis_into<AnyIndex: VectorIndex>( &self, axis: AnyIndex, keep_dims: bool, min_out: &mut Tensor<Scalar::Output, Global, MAX_RANK>, argmin_out: &mut Tensor<usize, Global, MAX_RANK>, max_out: &mut Tensor<Scalar::Output, Global, MAX_RANK>, argmax_out: &mut Tensor<usize, Global, MAX_RANK>, ) -> Result<(), TensorError>
fn try_min_all(&self) -> Result<Scalar::Output, TensorError>
fn try_argmin_all(&self) -> Result<usize, TensorError>
fn try_max_all(&self) -> Result<Scalar::Output, TensorError>
fn try_argmax_all(&self) -> Result<usize, TensorError>
fn try_min_axis<AnyIndex: VectorIndex>( &self, axis: AnyIndex, keep_dims: bool, ) -> Result<Tensor<Scalar::Output, Global, MAX_RANK>, TensorError>
fn try_argmin_axis<AnyIndex: VectorIndex>( &self, axis: AnyIndex, keep_dims: bool, ) -> Result<Tensor<usize, Global, MAX_RANK>, TensorError>
fn try_max_axis<AnyIndex: VectorIndex>( &self, axis: AnyIndex, keep_dims: bool, ) -> Result<Tensor<Scalar::Output, Global, MAX_RANK>, TensorError>
fn try_argmax_axis<AnyIndex: VectorIndex>( &self, axis: AnyIndex, keep_dims: bool, ) -> Result<Tensor<usize, Global, MAX_RANK>, TensorError>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".