pub struct TensorBase<S, D>where
D: DimAPI,{
pub(crate) storage: S,
pub(crate) layout: Layout<D>,
}Fields§
§storage: S§layout: Layout<D>Implementations§
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
B: DeviceAPI<T> + DeviceIndexSelectAPI<T, D> + DeviceCreationAnyAPI<T>,
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
B: DeviceAPI<T> + DeviceIndexSelectAPI<T, D> + DeviceCreationAnyAPI<T>,
pub fn index_select_f<I>( &self, axis: isize, indices: I, ) -> Result<Tensor<T, B, D>>
Sourcepub fn index_select<I>(&self, axis: isize, indices: I) -> Tensor<T, B, D>
pub fn index_select<I>(&self, axis: isize, indices: I) -> Tensor<T, B, D>
Returns a new tensor, which indexes the input tensor along dimension
axis using the entries in indices.
§See also
This function should be similar to PyTorch’s torch.index_select.
pub fn take_f<I>(&self, indices: I, axis: isize) -> Result<Tensor<T, B, D>>
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
B: DeviceAPI<T> + DeviceIndexSelectAPI<T, D> + DeviceCreationAnyAPI<T>,
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
B: DeviceAPI<T> + DeviceIndexSelectAPI<T, D> + DeviceCreationAnyAPI<T>,
pub fn bool_select_f<I>( &self, axis: isize, indices: I, ) -> Result<Tensor<T, B, D>>
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn assign_f<TRB>(&mut self, b: TRB) -> Result<()>where
Self: TensorAssignAPI<TRB>,
pub fn assign<TRB>(&mut self, b: TRB)where
Self: TensorAssignAPI<TRB>,
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn fill_f<T>(&mut self, b: T) -> Result<()>where
Self: TensorFillAPI<T>,
pub fn fill<T>(&mut self, b: T)where
Self: TensorFillAPI<T>,
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn zeros_like(&self) -> Tensor<T, B, D>
pub fn zeros_like(&self) -> Tensor<T, B, D>
pub fn zeros_like_f(&self) -> Result<Tensor<T, B, D>>
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn into_slice_f<I>(self, index: I) -> Result<TensorAny<R, T, B, IxD>>
pub fn into_slice<I>(self, index: I) -> TensorAny<R, T, B, IxD>
pub fn slice_f<I>(&self, index: I) -> Result<TensorView<'_, T, B, IxD>>
pub fn slice<I>(&self, index: I) -> TensorView<'_, T, B, IxD>
pub fn i_f<I>(&self, index: I) -> Result<TensorView<'_, T, B, IxD>>
pub fn i<I>(&self, index: I) -> TensorView<'_, T, B, IxD>
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn slice_mut_f<I>(&mut self, index: I) -> Result<TensorMut<'_, T, B, IxD>>
pub fn slice_mut<I>(&mut self, index: I) -> TensorMut<'_, T, B, IxD>
pub fn i_mut_f<I>(&mut self, index: I) -> Result<TensorMut<'_, T, B, IxD>>
pub fn i_mut<I>(&mut self, index: I) -> TensorMut<'_, T, B, IxD>
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = B::Raw>,
B: DeviceAPI<T>,
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = B::Raw>,
B: DeviceAPI<T>,
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
pub fn into_diagonal_f( self, diagonal_args: impl Into<DiagonalArgs>, ) -> Result<TensorAny<R, T, B, D::SmallerOne>>
pub fn into_diagonal( self, diagonal_args: impl Into<DiagonalArgs>, ) -> TensorAny<R, T, B, D::SmallerOne>
pub fn diagonal_f( &self, diagonal_args: impl Into<DiagonalArgs>, ) -> Result<TensorView<'_, T, B, D::SmallerOne>>
pub fn diagonal( &self, diagonal_args: impl Into<DiagonalArgs>, ) -> TensorView<'_, T, B, D::SmallerOne>
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataMutAPI<Data = B::Raw>,
B: DeviceAPI<T>,
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataMutAPI<Data = B::Raw>,
B: DeviceAPI<T>,
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
pub fn into_diagonal_mut_f( self, diagonal_args: impl Into<DiagonalArgs>, ) -> Result<TensorAny<R, T, B, D::SmallerOne>>
pub fn into_diagonal_mut( self, diagonal_args: impl Into<DiagonalArgs>, ) -> TensorAny<R, T, B, D::SmallerOne>
pub fn diagonal_mut_f( &mut self, diagonal_args: impl Into<DiagonalArgs>, ) -> Result<TensorMut<'_, T, B, D::SmallerOne>>
pub fn diagonal_mut( &mut self, diagonal_args: impl Into<DiagonalArgs>, ) -> TensorMut<'_, T, B, D::SmallerOne>
Source§impl<T, B, D> TensorBase<Storage<DataOwned<<B as DeviceRawAPI<T>>::Raw>, T, B>, D>
impl<T, B, D> TensorBase<Storage<DataOwned<<B as DeviceRawAPI<T>>::Raw>, T, B>, D>
Source§impl<T, B, D> TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>
impl<T, B, D> TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>
Source§impl<T, B, D> TensorBase<Storage<DataMut<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>
impl<T, B, D> TensorBase<Storage<DataMut<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>
Source§impl<T, B, D> TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>
impl<T, B, D> TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>
Source§impl<T, B, D> TensorBase<Storage<DataOwned<<B as DeviceRawAPI<T>>::Raw>, T, B>, D>
impl<T, B, D> TensorBase<Storage<DataOwned<<B as DeviceRawAPI<T>>::Raw>, T, B>, D>
Source§impl<T, B, D> TensorBase<Storage<DataMut<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>
impl<T, B, D> TensorBase<Storage<DataMut<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn axes_iter_with_order_f<I>( &self, axes: I, order: TensorIterOrder, ) -> Result<IterAxesView<'a, T, B>>
pub fn axes_iter_f<I>(&self, axes: I) -> Result<IterAxesView<'a, T, B>>
pub fn axes_iter_with_order<I>( &self, axes: I, order: TensorIterOrder, ) -> IterAxesView<'a, T, B> ⓘ
pub fn axes_iter<I>(&self, axes: I) -> IterAxesView<'a, T, B> ⓘ
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn axes_iter_mut_with_order_f<I>( &'a mut self, axes: I, order: TensorIterOrder, ) -> Result<IterAxesMut<'a, T, B>>
pub fn axes_iter_mut_f<I>( &'a mut self, axes: I, ) -> Result<IterAxesMut<'a, T, B>>
pub fn axes_iter_mut_with_order<I>( &'a mut self, axes: I, order: TensorIterOrder, ) -> IterAxesMut<'a, T, B> ⓘ
pub fn axes_iter_mut<I>(&'a mut self, axes: I) -> IterAxesMut<'a, T, B> ⓘ
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn indexed_axes_iter_with_order_f<I>( &self, axes: I, order: TensorIterOrder, ) -> Result<IndexedIterAxesView<'a, T, B>>
pub fn indexed_axes_iter_f<I>( &self, axes: I, ) -> Result<IndexedIterAxesView<'a, T, B>>
pub fn indexed_axes_iter_with_order<I>( &self, axes: I, order: TensorIterOrder, ) -> IndexedIterAxesView<'a, T, B> ⓘ
pub fn indexed_axes_iter<I>(&self, axes: I) -> IndexedIterAxesView<'a, T, B> ⓘ
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn indexed_axes_iter_mut_with_order_f<I>( &'a mut self, axes: I, order: TensorIterOrder, ) -> Result<IndexedIterAxesMut<'a, T, B>>
pub fn indexed_axes_iter_mut_f<I>( &'a mut self, axes: I, ) -> Result<IndexedIterAxesMut<'a, T, B>>
pub fn indexed_axes_iter_mut_with_order<I>( &'a mut self, axes: I, order: TensorIterOrder, ) -> IndexedIterAxesMut<'a, T, B> ⓘ
pub fn indexed_axes_iter_mut<I>( &'a mut self, axes: I, ) -> IndexedIterAxesMut<'a, T, B> ⓘ
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn iter_with_order_f( &self, order: TensorIterOrder, ) -> Result<IterVecView<'a, T, D>>
pub fn iter_with_order(&self, order: TensorIterOrder) -> IterVecView<'a, T, D> ⓘ
pub fn iter_f(&self) -> Result<IterVecView<'a, T, D>>
pub fn iter(&self) -> IterVecView<'a, T, D> ⓘ
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn iter_mut_with_order_f( &'a mut self, order: TensorIterOrder, ) -> Result<IterVecMut<'a, T, D>>
pub fn iter_mut_with_order( &'a mut self, order: TensorIterOrder, ) -> IterVecMut<'a, T, D> ⓘ
pub fn iter_mut_f(&'a mut self) -> Result<IterVecMut<'a, T, D>>
pub fn iter_mut(&'a mut self) -> IterVecMut<'a, T, D> ⓘ
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn indexed_iter_with_order_f( &self, order: TensorIterOrder, ) -> Result<IndexedIterVecView<'a, T, D>>
pub fn indexed_iter_with_order( &self, order: TensorIterOrder, ) -> IndexedIterVecView<'a, T, D> ⓘ
pub fn indexed_iter_f(&self) -> Result<IndexedIterVecView<'a, T, D>>
pub fn indexed_iter(&self) -> IndexedIterVecView<'a, T, D> ⓘ
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn indexed_iter_mut_with_order_f( &'a mut self, order: TensorIterOrder, ) -> Result<IndexedIterVecMut<'a, T, D>>
pub fn indexed_iter_mut_with_order( &'a mut self, order: TensorIterOrder, ) -> IndexedIterVecMut<'a, T, D> ⓘ
pub fn indexed_iter_mut_f(&'a mut self) -> Result<IndexedIterVecMut<'a, T, D>>
pub fn indexed_iter_mut(&'a mut self) -> IndexedIterVecMut<'a, T, D> ⓘ
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn matmul_f<TB, TC, DB, DC>(
&self,
rhs: impl TensorViewAPI<Type = TB, Backend = B, Dim = DB>,
) -> Result<Tensor<TC, B, DC>>where
DB: DimAPI,
DC: DimAPI,
T: Mul<TB, Output = TC>,
TC: Zero + One,
B: DeviceCreationAnyAPI<TC> + DeviceMatMulAPI<T, TB, TC, D, DB, DC>,
LayoutMatMulConfig<D, DB>: LayoutMatMulAPI<D, DB, DC = DC>,
pub fn matmul<TB, TC, DB, DC>(
&self,
rhs: impl TensorViewAPI<Type = TB, Backend = B, Dim = DB>,
) -> Tensor<TC, B, DC>where
DB: DimAPI,
DC: DimAPI,
T: Mul<TB, Output = TC>,
TC: Zero + One,
B: DeviceCreationAnyAPI<TC> + DeviceMatMulAPI<T, TB, TC, D, DB, DC>,
LayoutMatMulConfig<D, DB>: LayoutMatMulAPI<D, DB, DC = DC>,
pub fn matmul_with_output_f<TB, TC, DB, DC>( &self, rhs: impl TensorViewAPI<Type = TB, Backend = B, Dim = DB>, c: impl TensorViewMutAPI<Type = TC, Backend = B, Dim = DC>, ) -> Result<()>
pub fn matmul_with_output<TB, TC, DB, DC>( &self, rhs: impl TensorViewAPI<Type = TB, Backend = B, Dim = DB>, c: impl TensorViewMutAPI<Type = TC, Backend = B, Dim = DC>, )
pub fn matmul_from_f<TA, TB, DA, DB>(
&mut self,
a: impl TensorViewAPI<Type = TA, Backend = B, Dim = DA>,
b: impl TensorViewAPI<Type = TB, Backend = B, Dim = DB>,
alpha: T,
beta: T,
) -> Result<()>where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
DA: DimAPI,
DB: DimAPI,
B: DeviceMatMulAPI<TA, TB, T, DA, DB, D>,
pub fn matmul_from<TA, TB, DA, DB>(
&mut self,
a: impl TensorViewAPI<Type = TA, Backend = B, Dim = DA>,
b: impl TensorViewAPI<Type = TB, Backend = B, Dim = DB>,
alpha: T,
beta: T,
)where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
DA: DimAPI,
DB: DimAPI,
B: DeviceMatMulAPI<TA, TB, T, DA, DB, D>,
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn matrix_transpose(&self) -> TensorView<'_, T, B, D>
pub fn matrix_transpose(&self) -> TensorView<'_, T, B, D>
Transposes a matrix (or a stack of matrices).
See also matrix_transpose.
Sourcepub fn matrix_transpose_f(&self) -> Result<TensorView<'_, T, B, D>>
pub fn matrix_transpose_f(&self) -> Result<TensorView<'_, T, B, D>>
Transposes a matrix (or a stack of matrices).
See also matrix_transpose.
Sourcepub fn into_matrix_transpose(self) -> TensorAny<R, T, B, D>
pub fn into_matrix_transpose(self) -> TensorAny<R, T, B, D>
Transposes a matrix (or a stack of matrices).
See also matrix_transpose.
Sourcepub fn into_matrix_transpose_f(self) -> Result<TensorAny<R, T, B, D>>
pub fn into_matrix_transpose_f(self) -> Result<TensorAny<R, T, B, D>>
Transposes a matrix (or a stack of matrices).
See also matrix_transpose.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn to_broadcast<D2>(&self, shape: D2) -> TensorView<'_, T, B, D2>
pub fn to_broadcast<D2>(&self, shape: D2) -> TensorView<'_, T, B, D2>
Broadcasts an array to a specified shape.
See also to_broadcast.
Sourcepub fn broadcast_to<D2>(&self, shape: D2) -> TensorView<'_, T, B, D2>
pub fn broadcast_to<D2>(&self, shape: D2) -> TensorView<'_, T, B, D2>
Broadcasts an array to a specified shape.
See also to_broadcast.
Sourcepub fn to_broadcast_f<D2>(&self, shape: D2) -> Result<TensorView<'_, T, B, D2>>
pub fn to_broadcast_f<D2>(&self, shape: D2) -> Result<TensorView<'_, T, B, D2>>
Broadcasts an array to a specified shape.
See also to_broadcast.
Sourcepub fn into_broadcast<D2>(self, shape: D2) -> TensorAny<R, T, B, D2>
pub fn into_broadcast<D2>(self, shape: D2) -> TensorAny<R, T, B, D2>
Broadcasts an array to a specified shape.
See also to_broadcast.
Sourcepub fn into_broadcast_f<D2>(self, shape: D2) -> Result<TensorAny<R, T, B, D2>>
pub fn into_broadcast_f<D2>(self, shape: D2) -> Result<TensorAny<R, T, B, D2>>
Broadcasts an array to a specified shape.
See also to_broadcast.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn expand_dims(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> TensorView<'_, T, B, IxD>
pub fn expand_dims( &self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> TensorView<'_, T, B, IxD>
Expands the shape of an array by inserting a new axis (dimension) of size one at the
position specified by axis.
See also expand_dims.
Sourcepub fn expand_dims_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<TensorView<'_, T, B, IxD>>
pub fn expand_dims_f( &self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Result<TensorView<'_, T, B, IxD>>
Expands the shape of an array by inserting a new axis (dimension) of size one at the
position specified by axis.
See also expand_dims.
Sourcepub fn into_expand_dims(
self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> TensorAny<R, T, B, IxD>
pub fn into_expand_dims( self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> TensorAny<R, T, B, IxD>
Expands the shape of an array by inserting a new axis (dimension) of size one at the
position specified by axis.
See also expand_dims.
Sourcepub fn into_expand_dims_f(
self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<TensorAny<R, T, B, IxD>>
pub fn into_expand_dims_f( self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Result<TensorAny<R, T, B, IxD>>
Expands the shape of an array by inserting a new axis (dimension) of size one at the
position specified by axis.
See also expand_dims.
Sourcepub fn unsqueeze(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> TensorView<'_, T, B, IxD>
pub fn unsqueeze( &self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> TensorView<'_, T, B, IxD>
Expands the shape of an array by inserting a new axis (dimension) of size one at the
position specified by axis.
See also expand_dims.
Sourcepub fn unsqueeze_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<TensorView<'_, T, B, IxD>>
pub fn unsqueeze_f( &self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Result<TensorView<'_, T, B, IxD>>
Expands the shape of an array by inserting a new axis (dimension) of size one at the
position specified by axis.
See also expand_dims.
Sourcepub fn into_unsqueeze(
self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> TensorAny<R, T, B, IxD>
pub fn into_unsqueeze( self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> TensorAny<R, T, B, IxD>
Expands the shape of an array by inserting a new axis (dimension) of size one at the
position specified by axis.
See also expand_dims.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn flip(
&self,
axis: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> TensorView<'_, T, B, D>
pub fn flip( &self, axis: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> TensorView<'_, T, B, D>
Reverses the order of elements in an array along the given axis.
See also flip.
Sourcepub fn flip_f(
&self,
axis: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<TensorView<'_, T, B, D>>
pub fn flip_f( &self, axis: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Result<TensorView<'_, T, B, D>>
Reverses the order of elements in an array along the given axis.
See also flip.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn into_compatible_shape_f(
self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
order: impl Into<Option<FlagOrder>>,
) -> Result<TensorAny<R, T, B, IxD>>
pub fn into_compatible_shape_f( self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, order: impl Into<Option<FlagOrder>>, ) -> Result<TensorAny<R, T, B, IxD>>
Reshapes the given tensor to the specified shape if the layout is compatible.
See also to_compatible_shape.
Sourcepub fn into_compatible_shape(
self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
order: impl Into<Option<FlagOrder>>,
) -> TensorAny<R, T, B, IxD>
pub fn into_compatible_shape( self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, order: impl Into<Option<FlagOrder>>, ) -> TensorAny<R, T, B, IxD>
Reshapes the given tensor to the specified shape if the layout is compatible.
See also to_compatible_shape.
Sourcepub fn to_compatible_shape_f(
&self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
order: impl Into<Option<FlagOrder>>,
) -> Result<TensorView<'_, T, B, IxD>>
pub fn to_compatible_shape_f( &self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, order: impl Into<Option<FlagOrder>>, ) -> Result<TensorView<'_, T, B, IxD>>
Reshapes the given tensor to the specified shape if the layout is compatible.
See also to_compatible_shape.
Sourcepub fn to_compatible_shape(
&self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
order: impl Into<Option<FlagOrder>>,
) -> TensorView<'_, T, B, IxD>
pub fn to_compatible_shape( &self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, order: impl Into<Option<FlagOrder>>, ) -> TensorView<'_, T, B, IxD>
Reshapes the given tensor to the specified shape if the layout is compatible.
See also to_compatible_shape.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn reshape_assume_contig<D2>(&self, shape: D2) -> TensorView<'_, T, B, D2>where
D2: DimAPI,
👎Deprecated since 0.6.2: Use to_compatible_shape instead with explicit order argument
pub fn reshape_assume_contig<D2>(&self, shape: D2) -> TensorView<'_, T, B, D2>where
D2: DimAPI,
Use to_compatible_shape instead with explicit order argument
Assuming contiguous array, reshapes an array without changing its data.
See also to_shape_assume_contig.
Sourcepub fn reshape_assume_contig_f<D2>(
&self,
shape: D2,
) -> Result<TensorView<'_, T, B, D2>>where
D2: DimAPI,
👎Deprecated since 0.6.2: Use to_compatible_shape_f instead with explicit order argument
pub fn reshape_assume_contig_f<D2>(
&self,
shape: D2,
) -> Result<TensorView<'_, T, B, D2>>where
D2: DimAPI,
Use to_compatible_shape_f instead with explicit order argument
Assuming contiguous array, reshapes an array without changing its data (falling variant).
See also to_shape_assume_contig.
Sourcepub fn to_shape_assume_contig<D2>(&self, shape: D2) -> TensorView<'_, T, B, D2>where
D2: DimAPI,
👎Deprecated since 0.6.2: Use to_compatible_shape instead with explicit order argument
pub fn to_shape_assume_contig<D2>(&self, shape: D2) -> TensorView<'_, T, B, D2>where
D2: DimAPI,
Use to_compatible_shape instead with explicit order argument
Assuming contiguous array, reshapes an array without changing its data.
See also to_shape_assume_contig.
Sourcepub fn to_shape_assume_contig_f<D2>(
&self,
shape: D2,
) -> Result<TensorView<'_, T, B, D2>>where
D2: DimAPI,
👎Deprecated since 0.6.2: Use to_compatible_shape_f instead with explicit order argument
pub fn to_shape_assume_contig_f<D2>(
&self,
shape: D2,
) -> Result<TensorView<'_, T, B, D2>>where
D2: DimAPI,
Use to_compatible_shape_f instead with explicit order argument
Assuming contiguous array, reshapes an array without changing its data (falling variant).
See also to_shape_assume_contig.
Sourcepub fn into_shape_assume_contig<D2>(self, shape: D2) -> TensorAny<R, T, B, D2>where
D2: DimAPI,
👎Deprecated since 0.6.2: Use into_compatible_shape instead with explicit order argument
pub fn into_shape_assume_contig<D2>(self, shape: D2) -> TensorAny<R, T, B, D2>where
D2: DimAPI,
Use into_compatible_shape instead with explicit order argument
Assuming contiguous array, reshapes an array without changing its data.
See also to_shape_assume_contig.
Sourcepub fn into_shape_assume_contig_f<D2>(
self,
shape: D2,
) -> Result<TensorAny<R, T, B, D2>>where
D2: DimAPI,
👎Deprecated since 0.6.2: Use into_compatible_shape_f instead with explicit order argument
pub fn into_shape_assume_contig_f<D2>(
self,
shape: D2,
) -> Result<TensorAny<R, T, B, D2>>where
D2: DimAPI,
Use into_compatible_shape_f instead with explicit order argument
Assuming contiguous array, reshapes an array without changing its data (falling variant).
See also to_shape_assume_contig.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn to_dim<D2>(&self) -> TensorView<'_, T, B, D2>where
D2: DimAPI,
D: DimIntoAPI<D2>,
pub fn to_dim<D2>(&self) -> TensorView<'_, T, B, D2>where
D2: DimAPI,
D: DimIntoAPI<D2>,
Convert layout to the other dimension.
See also to_dim.
Sourcepub fn to_dim_f<D2>(&self) -> Result<TensorView<'_, T, B, D2>>where
D2: DimAPI,
D: DimIntoAPI<D2>,
pub fn to_dim_f<D2>(&self) -> Result<TensorView<'_, T, B, D2>>where
D2: DimAPI,
D: DimIntoAPI<D2>,
Convert layout to the other dimension.
See also to_dim.
Sourcepub fn into_dim<D2>(self) -> TensorAny<R, T, B, D2>where
D2: DimAPI,
D: DimIntoAPI<D2>,
pub fn into_dim<D2>(self) -> TensorAny<R, T, B, D2>where
D2: DimAPI,
D: DimIntoAPI<D2>,
Convert layout to the other dimension.
See also to_dim.
Sourcepub fn into_dim_f<D2>(self) -> Result<TensorAny<R, T, B, D2>>where
D2: DimAPI,
D: DimIntoAPI<D2>,
pub fn into_dim_f<D2>(self) -> Result<TensorAny<R, T, B, D2>>where
D2: DimAPI,
D: DimIntoAPI<D2>,
Convert layout to the other dimension.
See also to_dim.
Sourcepub fn to_dyn(&self) -> TensorView<'_, T, B, IxD>
pub fn to_dyn(&self) -> TensorView<'_, T, B, IxD>
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn moveaxis<IS, ID>(
&self,
source: IS,
destination: ID,
) -> TensorView<'_, T, B, D>
pub fn moveaxis<IS, ID>( &self, source: IS, destination: ID, ) -> TensorView<'_, T, B, D>
Moves array axes (dimensions) to new positions, while leaving other axes in their original positions.
See also moveaxis.
Sourcepub fn moveaxis_f<IS, ID>(
&self,
source: IS,
destination: ID,
) -> Result<TensorView<'_, T, B, D>>
pub fn moveaxis_f<IS, ID>( &self, source: IS, destination: ID, ) -> Result<TensorView<'_, T, B, D>>
Moves array axes (dimensions) to new positions, while leaving other axes in their original positions.
See also moveaxis.
Sourcepub fn into_moveaxis<IS, ID>(
self,
source: IS,
destination: ID,
) -> TensorAny<R, T, B, D>
pub fn into_moveaxis<IS, ID>( self, source: IS, destination: ID, ) -> TensorAny<R, T, B, D>
Moves array axes (dimensions) to new positions, while leaving other axes in their original positions.
See also moveaxis.
Sourcepub fn into_moveaxis_f<IS, ID>(
self,
source: IS,
destination: ID,
) -> Result<TensorAny<R, T, B, D>>
pub fn into_moveaxis_f<IS, ID>( self, source: IS, destination: ID, ) -> Result<TensorAny<R, T, B, D>>
Moves array axes (dimensions) to new positions, while leaving other axes in their original positions.
See also moveaxis.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn reshapeable_without_copy(
&self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
order: Option<TensorOrder>,
) -> Result<Option<Layout<IxD>>>
pub fn reshapeable_without_copy( &self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, order: Option<TensorOrder>, ) -> Result<Option<Layout<IxD>>>
Check if this tensor can be reshaped to a new shape without explicitly copying underlying data.
See also reshapeable_without_copy.
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw> + DataIntoCowAPI<'a>,
D: DimAPI,
B: DeviceAPI<T> + DeviceRawAPI<MaybeUninit<T>> + DeviceCreationAnyAPI<T> + OpAssignArbitaryAPI<T, IxD, D>,
T: Clone,
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw> + DataIntoCowAPI<'a>,
D: DimAPI,
B: DeviceAPI<T> + DeviceRawAPI<MaybeUninit<T>> + DeviceCreationAnyAPI<T> + OpAssignArbitaryAPI<T, IxD, D>,
T: Clone,
Sourcepub fn change_shape_with_args_f(
self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
args: impl Into<ReshapeArgs>,
) -> Result<TensorCow<'a, T, B, IxD>>
pub fn change_shape_with_args_f( self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, args: impl Into<ReshapeArgs>, ) -> Result<TensorCow<'a, T, B, IxD>>
Reshapes the given tensor to the specified shape, with argument specifying the order and whether to copy data.
§See also reshape_with_args.
Sourcepub fn change_shape_with_args(
self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
args: impl Into<ReshapeArgs>,
) -> TensorCow<'a, T, B, IxD>
pub fn change_shape_with_args( self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, args: impl Into<ReshapeArgs>, ) -> TensorCow<'a, T, B, IxD>
Reshapes the given tensor to the specified shape, with argument specifying the order and whether to copy data.
§See also reshape_with_args.
Sourcepub fn into_shape_with_args_f(
self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
args: impl Into<ReshapeArgs>,
) -> Result<Tensor<T, B, IxD>>
pub fn into_shape_with_args_f( self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, args: impl Into<ReshapeArgs>, ) -> Result<Tensor<T, B, IxD>>
Reshapes the given tensor to the specified shape, with argument specifying the order and whether to copy data.
§See also reshape_with_args.
Sourcepub fn into_shape_with_args(
self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
args: impl Into<ReshapeArgs>,
) -> Tensor<T, B, IxD>
pub fn into_shape_with_args( self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, args: impl Into<ReshapeArgs>, ) -> Tensor<T, B, IxD>
Reshapes the given tensor to the specified shape, with argument specifying the order and whether to copy data.
§See also reshape_with_args.
Sourcepub fn reshape_with_args(
&'a self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
args: impl Into<ReshapeArgs>,
) -> TensorCow<'a, T, B, IxD>
pub fn reshape_with_args( &'a self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, args: impl Into<ReshapeArgs>, ) -> TensorCow<'a, T, B, IxD>
Reshapes the given tensor to the specified shape, with argument specifying the order and whether to copy data.
§See also reshape_with_args.
Sourcepub fn reshape_with_args_f(
&'a self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
args: impl Into<ReshapeArgs>,
) -> Result<TensorCow<'a, T, B, IxD>>
pub fn reshape_with_args_f( &'a self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, args: impl Into<ReshapeArgs>, ) -> Result<TensorCow<'a, T, B, IxD>>
Reshapes the given tensor to the specified shape, with argument specifying the order and whether to copy data.
§See also reshape_with_args.
Sourcepub fn to_shape_with_args(
&'a self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
args: impl Into<ReshapeArgs>,
) -> TensorCow<'a, T, B, IxD>
pub fn to_shape_with_args( &'a self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, args: impl Into<ReshapeArgs>, ) -> TensorCow<'a, T, B, IxD>
Reshapes the given tensor to the specified shape, with argument specifying the order and whether to copy data.
§See also reshape_with_args.
Sourcepub fn to_shape_with_args_f(
&'a self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
args: impl Into<ReshapeArgs>,
) -> Result<TensorCow<'a, T, B, IxD>>
pub fn to_shape_with_args_f( &'a self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, args: impl Into<ReshapeArgs>, ) -> Result<TensorCow<'a, T, B, IxD>>
Reshapes the given tensor to the specified shape, with argument specifying the order and whether to copy data.
§See also reshape_with_args.
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw> + DataIntoCowAPI<'a>,
D: DimAPI,
B: DeviceAPI<T> + DeviceRawAPI<MaybeUninit<T>> + DeviceCreationAnyAPI<T> + OpAssignArbitaryAPI<T, IxD, D>,
T: Clone,
Reshapes the given tensor to the specified shape.
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw> + DataIntoCowAPI<'a>,
D: DimAPI,
B: DeviceAPI<T> + DeviceRawAPI<MaybeUninit<T>> + DeviceCreationAnyAPI<T> + OpAssignArbitaryAPI<T, IxD, D>,
T: Clone,
Reshapes the given tensor to the specified shape.
§See also reshape, into_shape, change_shape and reshape_with_args.
Sourcepub fn change_shape_f(
self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<TensorCow<'a, T, B, IxD>>
pub fn change_shape_f( self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Result<TensorCow<'a, T, B, IxD>>
Reshapes the given tensor to the specified shape.
§See also reshape, into_shape, change_shape and reshape_with_args.
Sourcepub fn change_shape(
self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> TensorCow<'a, T, B, IxD>
pub fn change_shape( self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> TensorCow<'a, T, B, IxD>
Reshapes the given tensor to the specified shape.
§See also reshape, into_shape, change_shape and reshape_with_args.
Sourcepub fn into_shape_f(
self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<T, B, IxD>>
pub fn into_shape_f( self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Result<Tensor<T, B, IxD>>
Reshapes the given tensor to the specified shape.
§See also reshape, into_shape, change_shape and reshape_with_args.
Sourcepub fn into_shape(
self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<T, B, IxD>
pub fn into_shape( self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Tensor<T, B, IxD>
Reshapes the given tensor to the specified shape.
§See also reshape, into_shape, change_shape and reshape_with_args.
Sourcepub fn to_shape_f(
&'a self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<TensorCow<'a, T, B, IxD>>
pub fn to_shape_f( &'a self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Result<TensorCow<'a, T, B, IxD>>
Reshapes the given tensor to the specified shape.
§See also reshape, into_shape, change_shape and reshape_with_args.
Sourcepub fn to_shape(
&'a self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> TensorCow<'a, T, B, IxD>
pub fn to_shape( &'a self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> TensorCow<'a, T, B, IxD>
Reshapes the given tensor to the specified shape.
§See also reshape, into_shape, change_shape and reshape_with_args.
Sourcepub fn reshape_f(
&'a self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<TensorCow<'a, T, B, IxD>>
pub fn reshape_f( &'a self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Result<TensorCow<'a, T, B, IxD>>
Reshapes the given tensor to the specified shape.
§See also reshape, into_shape, change_shape and reshape_with_args.
Sourcepub fn reshape(
&'a self,
shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> TensorCow<'a, T, B, IxD>
pub fn reshape( &'a self, shape: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> TensorCow<'a, T, B, IxD>
Reshapes the given tensor to the specified shape.
§See also reshape, into_shape, change_shape and reshape_with_args.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn squeeze(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> TensorView<'_, T, B, IxD>
pub fn squeeze( &self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> TensorView<'_, T, B, IxD>
Removes singleton dimensions (axes) from a tensor.
See also squeeze.
Sourcepub fn squeeze_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<TensorView<'_, T, B, IxD>>
pub fn squeeze_f( &self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Result<TensorView<'_, T, B, IxD>>
Removes singleton dimensions (axes) from a tensor.
See also squeeze.
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = B::Raw> + DataIntoCowAPI<'a>,
D: DimAPI,
T: Clone,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T>,
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = B::Raw> + DataIntoCowAPI<'a>,
D: DimAPI,
T: Clone,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T>,
Sourcepub fn to_contig(&self, order: FlagOrder) -> TensorCow<'_, T, B, D>where
B: OpAssignArbitaryAPI<T, D, D>,
pub fn to_contig(&self, order: FlagOrder) -> TensorCow<'_, T, B, D>where
B: OpAssignArbitaryAPI<T, D, D>,
Convert tensor to contiguous layout.
See also to_contig.
Sourcepub fn to_contig_f(&self, order: FlagOrder) -> Result<TensorCow<'_, T, B, D>>where
B: OpAssignArbitaryAPI<T, D, D>,
pub fn to_contig_f(&self, order: FlagOrder) -> Result<TensorCow<'_, T, B, D>>where
B: OpAssignArbitaryAPI<T, D, D>,
Convert tensor to contiguous layout.
See also to_contig.
Sourcepub fn into_contig_f(self, order: FlagOrder) -> Result<Tensor<T, B, D>>where
B: DeviceRawAPI<MaybeUninit<T>> + OpAssignArbitaryAPI<T, D, D> + OpAssignAPI<T, D>,
<B as DeviceRawAPI<T>>::Raw: Clone + 'a,
pub fn into_contig_f(self, order: FlagOrder) -> Result<Tensor<T, B, D>>where
B: DeviceRawAPI<MaybeUninit<T>> + OpAssignArbitaryAPI<T, D, D> + OpAssignAPI<T, D>,
<B as DeviceRawAPI<T>>::Raw: Clone + 'a,
Convert tensor to contiguous layout.
See also to_contig.
Sourcepub fn into_contig(self, order: FlagOrder) -> Tensor<T, B, D>where
B: DeviceRawAPI<MaybeUninit<T>> + OpAssignArbitaryAPI<T, D, D> + OpAssignAPI<T, D>,
<B as DeviceRawAPI<T>>::Raw: Clone + 'a,
pub fn into_contig(self, order: FlagOrder) -> Tensor<T, B, D>where
B: DeviceRawAPI<MaybeUninit<T>> + OpAssignArbitaryAPI<T, D, D> + OpAssignAPI<T, D>,
<B as DeviceRawAPI<T>>::Raw: Clone + 'a,
Sourcepub fn change_contig_f(self, order: FlagOrder) -> Result<TensorCow<'a, T, B, D>>where
B: OpAssignArbitaryAPI<T, D, D>,
pub fn change_contig_f(self, order: FlagOrder) -> Result<TensorCow<'a, T, B, D>>where
B: OpAssignArbitaryAPI<T, D, D>,
Convert tensor to contiguous layout.
See also to_contig.
Sourcepub fn change_contig(self, order: FlagOrder) -> TensorCow<'a, T, B, D>where
B: OpAssignArbitaryAPI<T, D, D>,
pub fn change_contig(self, order: FlagOrder) -> TensorCow<'a, T, B, D>where
B: OpAssignArbitaryAPI<T, D, D>,
Convert tensor to contiguous layout.
See also to_contig.
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = B::Raw> + DataIntoCowAPI<'a>,
D: DimAPI,
T: Clone,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T>,
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = B::Raw> + DataIntoCowAPI<'a>,
D: DimAPI,
T: Clone,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T>,
Sourcepub fn to_prefer(&self, order: FlagOrder) -> TensorCow<'_, T, B, D>where
B: OpAssignArbitaryAPI<T, D, D>,
pub fn to_prefer(&self, order: FlagOrder) -> TensorCow<'_, T, B, D>where
B: OpAssignArbitaryAPI<T, D, D>,
Convert tensor to preferred layout if not already contiguous.
See also to_prefer.
Sourcepub fn to_prefer_f(&self, order: FlagOrder) -> Result<TensorCow<'_, T, B, D>>where
B: OpAssignArbitaryAPI<T, D, D>,
pub fn to_prefer_f(&self, order: FlagOrder) -> Result<TensorCow<'_, T, B, D>>where
B: OpAssignArbitaryAPI<T, D, D>,
Convert tensor to preferred layout if not already contiguous.
See also to_prefer.
Sourcepub fn into_prefer_f(self, order: FlagOrder) -> Result<Tensor<T, B, D>>where
B: DeviceRawAPI<MaybeUninit<T>> + OpAssignArbitaryAPI<T, D, D> + OpAssignAPI<T, D>,
<B as DeviceRawAPI<T>>::Raw: Clone + 'a,
pub fn into_prefer_f(self, order: FlagOrder) -> Result<Tensor<T, B, D>>where
B: DeviceRawAPI<MaybeUninit<T>> + OpAssignArbitaryAPI<T, D, D> + OpAssignAPI<T, D>,
<B as DeviceRawAPI<T>>::Raw: Clone + 'a,
Convert tensor to preferred layout if not already contiguous.
See also to_prefer.
Sourcepub fn into_prefer(self, order: FlagOrder) -> Tensor<T, B, D>where
B: DeviceRawAPI<MaybeUninit<T>> + OpAssignArbitaryAPI<T, D, D> + OpAssignAPI<T, D>,
<B as DeviceRawAPI<T>>::Raw: Clone + 'a,
pub fn into_prefer(self, order: FlagOrder) -> Tensor<T, B, D>where
B: DeviceRawAPI<MaybeUninit<T>> + OpAssignArbitaryAPI<T, D, D> + OpAssignAPI<T, D>,
<B as DeviceRawAPI<T>>::Raw: Clone + 'a,
Convert tensor to preferred layout if not already contiguous.
See also to_prefer.
Sourcepub fn change_prefer_f(self, order: FlagOrder) -> Result<TensorCow<'a, T, B, D>>where
B: OpAssignArbitaryAPI<T, D, D>,
pub fn change_prefer_f(self, order: FlagOrder) -> Result<TensorCow<'a, T, B, D>>where
B: OpAssignArbitaryAPI<T, D, D>,
Convert tensor to preferred layout if not already contiguous.
See also to_prefer.
Sourcepub fn change_prefer(self, order: FlagOrder) -> TensorCow<'a, T, B, D>where
B: OpAssignArbitaryAPI<T, D, D>,
pub fn change_prefer(self, order: FlagOrder) -> TensorCow<'a, T, B, D>where
B: OpAssignArbitaryAPI<T, D, D>,
Convert tensor to preferred layout if not already contiguous.
See also to_prefer.
Source§impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = B::Raw> + DataIntoCowAPI<'a>,
D: DimAPI,
T: Clone,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T>,
impl<'a, R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = B::Raw> + DataIntoCowAPI<'a>,
D: DimAPI,
T: Clone,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T>,
Sourcepub fn to_layout<D2>(&self, layout: Layout<D2>) -> TensorCow<'_, T, B, D2>where
D2: DimAPI,
B: OpAssignArbitaryAPI<T, D2, D>,
pub fn to_layout<D2>(&self, layout: Layout<D2>) -> TensorCow<'_, T, B, D2>where
D2: DimAPI,
B: OpAssignArbitaryAPI<T, D2, D>,
Convert tensor to a specified layout.
See also to_layout.
Sourcepub fn to_layout_f<D2>(
&self,
layout: Layout<D2>,
) -> Result<TensorCow<'_, T, B, D2>>where
D2: DimAPI,
B: OpAssignArbitaryAPI<T, D2, D>,
pub fn to_layout_f<D2>(
&self,
layout: Layout<D2>,
) -> Result<TensorCow<'_, T, B, D2>>where
D2: DimAPI,
B: OpAssignArbitaryAPI<T, D2, D>,
Convert tensor to a specified layout.
See also to_layout.
Sourcepub fn into_layout_f<D2>(self, layout: Layout<D2>) -> Result<Tensor<T, B, D2>>where
D2: DimAPI,
B: DeviceRawAPI<MaybeUninit<T>> + OpAssignArbitaryAPI<T, D2, D> + OpAssignAPI<T, D2>,
<B as DeviceRawAPI<T>>::Raw: Clone + 'a,
pub fn into_layout_f<D2>(self, layout: Layout<D2>) -> Result<Tensor<T, B, D2>>where
D2: DimAPI,
B: DeviceRawAPI<MaybeUninit<T>> + OpAssignArbitaryAPI<T, D2, D> + OpAssignAPI<T, D2>,
<B as DeviceRawAPI<T>>::Raw: Clone + 'a,
Convert tensor to a specified layout.
See also to_layout.
Sourcepub fn into_layout<D2>(self, layout: Layout<D2>) -> Tensor<T, B, D2>where
D2: DimAPI,
B: DeviceRawAPI<MaybeUninit<T>> + OpAssignArbitaryAPI<T, D2, D> + OpAssignAPI<T, D2>,
<B as DeviceRawAPI<T>>::Raw: Clone + 'a,
pub fn into_layout<D2>(self, layout: Layout<D2>) -> Tensor<T, B, D2>where
D2: DimAPI,
B: DeviceRawAPI<MaybeUninit<T>> + OpAssignArbitaryAPI<T, D2, D> + OpAssignAPI<T, D2>,
<B as DeviceRawAPI<T>>::Raw: Clone + 'a,
Convert tensor to a specified layout.
See also to_layout.
Sourcepub fn change_layout_f<D2>(
self,
layout: Layout<D2>,
) -> Result<TensorCow<'a, T, B, D2>>where
D2: DimAPI,
B: OpAssignArbitaryAPI<T, D2, D>,
pub fn change_layout_f<D2>(
self,
layout: Layout<D2>,
) -> Result<TensorCow<'a, T, B, D2>>where
D2: DimAPI,
B: OpAssignArbitaryAPI<T, D2, D>,
Convert tensor to a specified layout.
See also to_layout.
Sourcepub fn change_layout<D2>(self, layout: Layout<D2>) -> TensorCow<'a, T, B, D2>where
D2: DimAPI,
B: OpAssignArbitaryAPI<T, D2, D>,
pub fn change_layout<D2>(self, layout: Layout<D2>) -> TensorCow<'a, T, B, D2>where
D2: DimAPI,
B: OpAssignArbitaryAPI<T, D2, D>,
Convert tensor to a specified layout.
See also to_layout.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn transpose<I>(&self, axes: I) -> TensorView<'_, T, B, D>
pub fn transpose<I>(&self, axes: I) -> TensorView<'_, T, B, D>
Sourcepub fn transpose_f<I>(&self, axes: I) -> Result<TensorView<'_, T, B, D>>
pub fn transpose_f<I>(&self, axes: I) -> Result<TensorView<'_, T, B, D>>
Permutes the axes (dimensions) of an array.
See also transpose.
Sourcepub fn into_transpose<I>(self, axes: I) -> TensorAny<R, T, B, D>
pub fn into_transpose<I>(self, axes: I) -> TensorAny<R, T, B, D>
Sourcepub fn into_transpose_f<I>(self, axes: I) -> Result<TensorAny<R, T, B, D>>
pub fn into_transpose_f<I>(self, axes: I) -> Result<TensorAny<R, T, B, D>>
Permutes the axes (dimensions) of an array.
See also transpose.
Sourcepub fn permute_dims<I>(&self, axes: I) -> TensorView<'_, T, B, D>
pub fn permute_dims<I>(&self, axes: I) -> TensorView<'_, T, B, D>
Sourcepub fn permute_dims_f<I>(&self, axes: I) -> Result<TensorView<'_, T, B, D>>
pub fn permute_dims_f<I>(&self, axes: I) -> Result<TensorView<'_, T, B, D>>
Permutes the axes (dimensions) of an array.
See also transpose.
Sourcepub fn into_permute_dims<I>(self, axes: I) -> TensorAny<R, T, B, D>
pub fn into_permute_dims<I>(self, axes: I) -> TensorAny<R, T, B, D>
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn reverse_axes(&self) -> TensorView<'_, T, B, D>
pub fn reverse_axes(&self) -> TensorView<'_, T, B, D>
Reverse the order of the axes (dimensions) of an array.
See also reverse_axes.
Sourcepub fn into_reverse_axes(self) -> TensorAny<R, T, B, D>
pub fn into_reverse_axes(self) -> TensorAny<R, T, B, D>
Reverse the order of the axes (dimensions) of an array.
See also reverse_axes.
Sourcepub fn t(&self) -> TensorView<'_, T, B, D>
pub fn t(&self) -> TensorView<'_, T, B, D>
Reverse the order of the axes (dimensions) of an array.
See also reverse_axes.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn swapaxes<I>(&self, axis1: I, axis2: I) -> TensorView<'_, T, B, D>
pub fn swapaxes<I>(&self, axis1: I, axis2: I) -> TensorView<'_, T, B, D>
Interchange two axes of an array.
See also swapaxes.
Sourcepub fn swapaxes_f<I>(
&self,
axis1: I,
axis2: I,
) -> Result<TensorView<'_, T, B, D>>
pub fn swapaxes_f<I>( &self, axis1: I, axis2: I, ) -> Result<TensorView<'_, T, B, D>>
Interchange two axes of an array.
See also swapaxes.
Sourcepub fn into_swapaxes<I>(self, axis1: I, axis2: I) -> TensorAny<R, T, B, D>
pub fn into_swapaxes<I>(self, axis1: I, axis2: I) -> TensorAny<R, T, B, D>
Interchange two axes of an array.
See also swapaxes.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn map_fnmut_f<'f, TOut>(
&self,
f: impl FnMut(&T) -> TOut + 'f,
) -> Result<Tensor<TOut, B, D>>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn FnMut(&mut MaybeUninit<TOut>, &T) + 'f>,
pub fn map_fnmut_f<'f, TOut>(
&self,
f: impl FnMut(&T) -> TOut + 'f,
) -> Result<Tensor<TOut, B, D>>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn FnMut(&mut MaybeUninit<TOut>, &T) + 'f>,
Call f by reference on each element and create a new tensor with the
new values.
Sourcepub fn map_fnmut<'f, TOut>(
&self,
f: impl FnMut(&T) -> TOut + 'f,
) -> Tensor<TOut, B, D>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn FnMut(&mut MaybeUninit<TOut>, &T) + 'f>,
pub fn map_fnmut<'f, TOut>(
&self,
f: impl FnMut(&T) -> TOut + 'f,
) -> Tensor<TOut, B, D>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn FnMut(&mut MaybeUninit<TOut>, &T) + 'f>,
Call f by reference on each element and create a new tensor with the
new values.
Sourcepub fn mapv_fnmut_f<'f, TOut>(
&self,
f: impl FnMut(T) -> TOut + 'f,
) -> Result<Tensor<TOut, B, D>>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn FnMut(&mut MaybeUninit<TOut>, &T) + 'f>,
T: Clone,
pub fn mapv_fnmut_f<'f, TOut>(
&self,
f: impl FnMut(T) -> TOut + 'f,
) -> Result<Tensor<TOut, B, D>>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn FnMut(&mut MaybeUninit<TOut>, &T) + 'f>,
T: Clone,
Call f by value on each element and create a new tensor with the new
values.
Sourcepub fn mapv_fnmut<'f, TOut>(
&self,
f: impl FnMut(T) -> TOut + 'f,
) -> Tensor<TOut, B, D>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn FnMut(&mut MaybeUninit<TOut>, &T) + 'f>,
T: Clone,
pub fn mapv_fnmut<'f, TOut>(
&self,
f: impl FnMut(T) -> TOut + 'f,
) -> Tensor<TOut, B, D>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn FnMut(&mut MaybeUninit<TOut>, &T) + 'f>,
T: Clone,
Call f by value on each element and create a new tensor with the new
values.
Sourcepub fn mapi_fnmut_f<'f>(&mut self, f: impl FnMut(&mut T) + 'f) -> Result<()>where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
B: Op_MutA_API<T, D, dyn FnMut(&mut MaybeUninit<T>) + 'f>,
pub fn mapi_fnmut_f<'f>(&mut self, f: impl FnMut(&mut T) + 'f) -> Result<()>where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
B: Op_MutA_API<T, D, dyn FnMut(&mut MaybeUninit<T>) + 'f>,
Modify the tensor in place by calling f by mutable reference on each
element.
Sourcepub fn mapi_fnmut<'f>(&mut self, f: impl FnMut(&mut T) + 'f)where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
B: Op_MutA_API<T, D, dyn FnMut(&mut MaybeUninit<T>) + 'f>,
pub fn mapi_fnmut<'f>(&mut self, f: impl FnMut(&mut T) + 'f)where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
B: Op_MutA_API<T, D, dyn FnMut(&mut MaybeUninit<T>) + 'f>,
Modify the tensor in place by calling f by mutable reference on each
element.
Sourcepub fn mapvi_fnmut_f<'f>(&mut self, f: impl FnMut(T) -> T + 'f) -> Result<()>where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
T: Clone,
B: Op_MutA_API<T, D, dyn FnMut(&mut MaybeUninit<T>) + 'f>,
pub fn mapvi_fnmut_f<'f>(&mut self, f: impl FnMut(T) -> T + 'f) -> Result<()>where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
T: Clone,
B: Op_MutA_API<T, D, dyn FnMut(&mut MaybeUninit<T>) + 'f>,
Modify the tensor in place by calling f by value on each
element.
Sourcepub fn mapvi_fnmut<'f>(&mut self, f: impl FnMut(T) -> T + 'f)where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
T: Clone,
B: Op_MutA_API<T, D, dyn FnMut(&mut MaybeUninit<T>) + 'f>,
pub fn mapvi_fnmut<'f>(&mut self, f: impl FnMut(T) -> T + 'f)where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
T: Clone,
B: Op_MutA_API<T, D, dyn FnMut(&mut MaybeUninit<T>) + 'f>,
Modify the tensor in place by calling f by value on each
element.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn mapb_fnmut_f<'f, R2, T2, D2, DOut, TOut>(
&self,
other: &TensorAny<R2, T2, B, D2>,
f: impl FnMut(&T, &T2) -> TOut + 'f,
) -> Result<Tensor<TOut, B, DOut>>where
R2: DataAPI<Data = <B as DeviceRawAPI<T2>>::Raw>,
D2: DimAPI,
DOut: DimAPI,
D: DimMaxAPI<D2, Max = DOut>,
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutC_RefA_RefB_API<T, T2, TOut, DOut, dyn FnMut(&mut MaybeUninit<TOut>, &T, &T2) + 'f>,
pub fn mapb_fnmut<'f, R2, T2, D2, DOut, TOut>(
&self,
other: &TensorAny<R2, T2, B, D2>,
f: impl FnMut(&T, &T2) -> TOut + 'f,
) -> Tensor<TOut, B, DOut>where
R2: DataAPI<Data = <B as DeviceRawAPI<T2>>::Raw>,
D2: DimAPI,
DOut: DimAPI,
D: DimMaxAPI<D2, Max = DOut>,
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutC_RefA_RefB_API<T, T2, TOut, DOut, dyn FnMut(&mut MaybeUninit<TOut>, &T, &T2) + 'f>,
pub fn mapvb_fnmut_f<'f, R2, T2, D2, DOut, TOut>(
&self,
other: &TensorAny<R2, T2, B, D2>,
f: impl FnMut(T, T2) -> TOut + 'f,
) -> Result<Tensor<TOut, B, DOut>>where
R2: DataAPI<Data = <B as DeviceRawAPI<T2>>::Raw>,
D2: DimAPI,
DOut: DimAPI,
D: DimMaxAPI<D2, Max = DOut>,
T: Clone,
T2: Clone,
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutC_RefA_RefB_API<T, T2, TOut, DOut, dyn FnMut(&mut MaybeUninit<TOut>, &T, &T2) + 'f>,
pub fn mapvb_fnmut<'f, R2, T2, D2, DOut, TOut>(
&self,
other: &TensorAny<R2, T2, B, D2>,
f: impl FnMut(T, T2) -> TOut + 'f,
) -> Tensor<TOut, B, DOut>where
R2: DataAPI<Data = <B as DeviceRawAPI<T2>>::Raw>,
D2: DimAPI,
DOut: DimAPI,
D: DimMaxAPI<D2, Max = DOut>,
T: Clone,
T2: Clone,
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutC_RefA_RefB_API<T, T2, TOut, DOut, dyn FnMut(&mut MaybeUninit<TOut>, &T, &T2) + 'f>,
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Sourcepub fn map_f<'f, TOut>(
&self,
f: impl Fn(&T) -> TOut + Send + Sync + 'f,
) -> Result<Tensor<TOut, B, D>>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn Fn(&mut MaybeUninit<TOut>, &T) + Send + Sync + 'f>,
pub fn map_f<'f, TOut>(
&self,
f: impl Fn(&T) -> TOut + Send + Sync + 'f,
) -> Result<Tensor<TOut, B, D>>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn Fn(&mut MaybeUninit<TOut>, &T) + Send + Sync + 'f>,
Call f by reference on each element and create a new tensor with the
new values.
Sourcepub fn map<'f, TOut>(
&self,
f: impl Fn(&T) -> TOut + Send + Sync + 'f,
) -> Tensor<TOut, B, D>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn Fn(&mut MaybeUninit<TOut>, &T) + Send + Sync + 'f>,
pub fn map<'f, TOut>(
&self,
f: impl Fn(&T) -> TOut + Send + Sync + 'f,
) -> Tensor<TOut, B, D>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn Fn(&mut MaybeUninit<TOut>, &T) + Send + Sync + 'f>,
Call f by reference on each element and create a new tensor with the
new values.
Sourcepub fn mapv_f<'f, TOut>(
&self,
f: impl Fn(T) -> TOut + Send + Sync + 'f,
) -> Result<Tensor<TOut, B, D>>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn Fn(&mut MaybeUninit<TOut>, &T) + Send + Sync + 'f>,
T: Clone,
pub fn mapv_f<'f, TOut>(
&self,
f: impl Fn(T) -> TOut + Send + Sync + 'f,
) -> Result<Tensor<TOut, B, D>>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn Fn(&mut MaybeUninit<TOut>, &T) + Send + Sync + 'f>,
T: Clone,
Call f by value on each element and create a new tensor with the new
values.
Sourcepub fn mapv<'f, TOut>(
&self,
f: impl Fn(T) -> TOut + Send + Sync + 'f,
) -> Tensor<TOut, B, D>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn Fn(&mut MaybeUninit<TOut>, &T) + Send + Sync + 'f>,
T: Clone,
pub fn mapv<'f, TOut>(
&self,
f: impl Fn(T) -> TOut + Send + Sync + 'f,
) -> Tensor<TOut, B, D>where
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutA_RefB_API<TOut, T, D, dyn Fn(&mut MaybeUninit<TOut>, &T) + Send + Sync + 'f>,
T: Clone,
Call f by value on each element and create a new tensor with the new
values.
Sourcepub fn mapi_f<'f>(
&mut self,
f: impl Fn(&mut T) + Send + Sync + 'f,
) -> Result<()>where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
B: Op_MutA_API<T, D, dyn Fn(&mut MaybeUninit<T>) + Send + Sync + 'f>,
pub fn mapi_f<'f>(
&mut self,
f: impl Fn(&mut T) + Send + Sync + 'f,
) -> Result<()>where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
B: Op_MutA_API<T, D, dyn Fn(&mut MaybeUninit<T>) + Send + Sync + 'f>,
Modify the tensor in place by calling f by mutable reference on each
element.
Sourcepub fn mapi<'f>(&mut self, f: impl Fn(&mut T) + Send + Sync + 'f)where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
B: Op_MutA_API<T, D, dyn Fn(&mut MaybeUninit<T>) + Send + Sync + 'f>,
pub fn mapi<'f>(&mut self, f: impl Fn(&mut T) + Send + Sync + 'f)where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
B: Op_MutA_API<T, D, dyn Fn(&mut MaybeUninit<T>) + Send + Sync + 'f>,
Modify the tensor in place by calling f by mutable reference on each
element.
Sourcepub fn mapvi_f<'f>(
&mut self,
f: impl Fn(T) -> T + Send + Sync + 'f,
) -> Result<()>where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
T: Clone,
B: Op_MutA_API<T, D, dyn Fn(&mut MaybeUninit<T>) + Send + Sync + 'f>,
pub fn mapvi_f<'f>(
&mut self,
f: impl Fn(T) -> T + Send + Sync + 'f,
) -> Result<()>where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
T: Clone,
B: Op_MutA_API<T, D, dyn Fn(&mut MaybeUninit<T>) + Send + Sync + 'f>,
Modify the tensor in place by calling f by value on each
element.
Sourcepub fn mapvi<'f>(&mut self, f: impl Fn(T) -> T + Send + Sync + 'f)where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
T: Clone,
B: Op_MutA_API<T, D, dyn Fn(&mut MaybeUninit<T>) + Send + Sync + 'f>,
pub fn mapvi<'f>(&mut self, f: impl Fn(T) -> T + Send + Sync + 'f)where
R: DataMutAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
T: Clone,
B: Op_MutA_API<T, D, dyn Fn(&mut MaybeUninit<T>) + Send + Sync + 'f>,
Modify the tensor in place by calling f by value on each
element.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn mapb_f<'f, R2, T2, D2, DOut, TOut>(
&self,
other: &TensorAny<R2, T2, B, D2>,
f: impl Fn(&T, &T2) -> TOut + Send + Sync + 'f,
) -> Result<Tensor<TOut, B, DOut>>where
R2: DataAPI<Data = <B as DeviceRawAPI<T2>>::Raw>,
D2: DimAPI,
DOut: DimAPI,
D: DimMaxAPI<D2, Max = DOut>,
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutC_RefA_RefB_API<T, T2, TOut, DOut, dyn Fn(&mut MaybeUninit<TOut>, &T, &T2) + Send + Sync + 'f>,
pub fn mapb<'f, R2, T2, D2, DOut, TOut>(
&self,
other: &TensorAny<R2, T2, B, D2>,
f: impl Fn(&T, &T2) -> TOut + Send + Sync + 'f,
) -> Tensor<TOut, B, DOut>where
R2: DataAPI<Data = <B as DeviceRawAPI<T2>>::Raw>,
D2: DimAPI,
DOut: DimAPI,
D: DimMaxAPI<D2, Max = DOut>,
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutC_RefA_RefB_API<T, T2, TOut, DOut, dyn Fn(&mut MaybeUninit<TOut>, &T, &T2) + Send + Sync + 'f>,
pub fn mapvb_f<'f, R2, T2, D2, DOut, TOut>(
&self,
other: &TensorAny<R2, T2, B, D2>,
f: impl Fn(T, T2) -> TOut + Send + Sync + 'f,
) -> Result<Tensor<TOut, B, DOut>>where
R2: DataAPI<Data = <B as DeviceRawAPI<T2>>::Raw>,
D2: DimAPI,
DOut: DimAPI,
D: DimMaxAPI<D2, Max = DOut>,
T: Clone,
T2: Clone,
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutC_RefA_RefB_API<T, T2, TOut, DOut, dyn Fn(&mut MaybeUninit<TOut>, &T, &T2) + Send + Sync + 'f>,
pub fn mapvb<'f, R2, T2, D2, DOut, TOut>(
&self,
other: &TensorAny<R2, T2, B, D2>,
f: impl Fn(T, T2) -> TOut + Send + Sync + 'f,
) -> Tensor<TOut, B, DOut>where
R2: DataAPI<Data = <B as DeviceRawAPI<T2>>::Raw>,
D2: DimAPI,
DOut: DimAPI,
D: DimMaxAPI<D2, Max = DOut>,
T: Clone,
T2: Clone,
B: DeviceAPI<TOut> + DeviceCreationAnyAPI<TOut> + Op_MutC_RefA_RefB_API<T, T2, TOut, DOut, dyn Fn(&mut MaybeUninit<TOut>, &T, &T2) + Send + Sync + 'f>,
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn add_f<TrB>(&self, b: TrB) -> Result<<&Self as TensorAddAPI<TrB>>::Output>where
for<'a> &'a Self: TensorAddAPI<TrB>,
pub fn add<TrB>(&self, b: TrB) -> <&Self as TensorAddAPI<TrB>>::Outputwhere
for<'a> &'a Self: TensorAddAPI<TrB>,
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn sub_f<TrB>(&self, b: TrB) -> Result<<&Self as TensorSubAPI<TrB>>::Output>where
for<'a> &'a Self: TensorSubAPI<TrB>,
pub fn sub<TrB>(&self, b: TrB) -> <&Self as TensorSubAPI<TrB>>::Outputwhere
for<'a> &'a Self: TensorSubAPI<TrB>,
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn mul_f<TrB>(&self, b: TrB) -> Result<<&Self as TensorMulAPI<TrB>>::Output>where
for<'a> &'a Self: TensorMulAPI<TrB>,
pub fn mul<TrB>(&self, b: TrB) -> <&Self as TensorMulAPI<TrB>>::Outputwhere
for<'a> &'a Self: TensorMulAPI<TrB>,
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn div_f<TrB>(&self, b: TrB) -> Result<<&Self as TensorDivAPI<TrB>>::Output>where
for<'a> &'a Self: TensorDivAPI<TrB>,
pub fn div<TrB>(&self, b: TrB) -> <&Self as TensorDivAPI<TrB>>::Outputwhere
for<'a> &'a Self: TensorDivAPI<TrB>,
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn rem_f<TrB>(&self, b: TrB) -> Result<<&Self as TensorRemAPI<TrB>>::Output>where
for<'a> &'a Self: TensorRemAPI<TrB>,
pub fn rem<TrB>(&self, b: TrB) -> <&Self as TensorRemAPI<TrB>>::Outputwhere
for<'a> &'a Self: TensorRemAPI<TrB>,
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn bitor_f<TrB>(
&self,
b: TrB,
) -> Result<<&Self as TensorBitOrAPI<TrB>>::Output>where
for<'a> &'a Self: TensorBitOrAPI<TrB>,
pub fn bitor<TrB>(&self, b: TrB) -> <&Self as TensorBitOrAPI<TrB>>::Outputwhere
for<'a> &'a Self: TensorBitOrAPI<TrB>,
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn bitand_f<TrB>(
&self,
b: TrB,
) -> Result<<&Self as TensorBitAndAPI<TrB>>::Output>where
for<'a> &'a Self: TensorBitAndAPI<TrB>,
pub fn bitand<TrB>(&self, b: TrB) -> <&Self as TensorBitAndAPI<TrB>>::Outputwhere
for<'a> &'a Self: TensorBitAndAPI<TrB>,
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn bitxor_f<TrB>(
&self,
b: TrB,
) -> Result<<&Self as TensorBitXorAPI<TrB>>::Output>where
for<'a> &'a Self: TensorBitXorAPI<TrB>,
pub fn bitxor<TrB>(&self, b: TrB) -> <&Self as TensorBitXorAPI<TrB>>::Outputwhere
for<'a> &'a Self: TensorBitXorAPI<TrB>,
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn shl_f<TrB>(&self, b: TrB) -> Result<<&Self as TensorShlAPI<TrB>>::Output>where
for<'a> &'a Self: TensorShlAPI<TrB>,
pub fn shl<TrB>(&self, b: TrB) -> <&Self as TensorShlAPI<TrB>>::Outputwhere
for<'a> &'a Self: TensorShlAPI<TrB>,
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn shr_f<TrB>(&self, b: TrB) -> Result<<&Self as TensorShrAPI<TrB>>::Output>where
for<'a> &'a Self: TensorShrAPI<TrB>,
pub fn shr<TrB>(&self, b: TrB) -> <&Self as TensorShrAPI<TrB>>::Outputwhere
for<'a> &'a Self: TensorShrAPI<TrB>,
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
B: DeviceAPI<T> + OpPackTriAPI<T> + DeviceCreationAnyAPI<T>,
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
B: DeviceAPI<T> + OpPackTriAPI<T> + DeviceCreationAnyAPI<T>,
pub fn pack_tri_f(&self, uplo: FlagUpLo) -> Result<Tensor<T, B, D::SmallerOne>>
pub fn pack_tri(&self, uplo: FlagUpLo) -> Tensor<T, B, D::SmallerOne>
pub fn pack_tril_f(&self) -> Result<Tensor<T, B, D::SmallerOne>>
pub fn pack_tril(&self) -> Tensor<T, B, D::SmallerOne>
pub fn pack_triu_f(&self) -> Result<Tensor<T, B, D::SmallerOne>>
pub fn pack_triu(&self) -> Tensor<T, B, D::SmallerOne>
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
D: DimAPI + DimLargerOneAPI,
D::LargerOne: DimAPI,
B: DeviceAPI<T> + OpUnpackTriAPI<T> + DeviceCreationAnyAPI<T>,
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
D: DimAPI + DimLargerOneAPI,
D::LargerOne: DimAPI,
B: DeviceAPI<T> + OpUnpackTriAPI<T> + DeviceCreationAnyAPI<T>,
pub fn unpack_tri_f( &self, uplo: FlagUpLo, symm: FlagSymm, ) -> Result<Tensor<T, B, D::LargerOne>>
pub fn unpack_tri( &self, uplo: FlagUpLo, symm: FlagSymm, ) -> Tensor<T, B, D::LargerOne>
pub fn unpack_tril(&self, symm: FlagSymm) -> Tensor<T, B, D::LargerOne>
pub fn unpack_triu(&self, symm: FlagSymm) -> Tensor<T, B, D::LargerOne>
pub fn unpack_tril_f( &self, symm: FlagSymm, ) -> Result<Tensor<T, B, D::LargerOne>>
pub fn unpack_triu_f( &self, symm: FlagSymm, ) -> Result<Tensor<T, B, D::LargerOne>>
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn neg_f(&self) -> Result<<&Self as TensorNegAPI>::Output>where
for<'a> &'a Self: TensorNegAPI,
pub fn neg(&self) -> <&Self as TensorNegAPI>::Outputwhere
for<'a> &'a Self: TensorNegAPI,
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
impl<S, D> TensorBase<S, D>where
D: DimAPI,
pub fn not_f(&self) -> Result<<&Self as TensorNotAPI>::Output>where
for<'a> &'a Self: TensorNotAPI,
pub fn not(&self) -> <&Self as TensorNotAPI>::Outputwhere
for<'a> &'a Self: TensorNotAPI,
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Methods for tensor ownership conversion.
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Methods for tensor ownership conversion.
Sourcepub fn view(&self) -> TensorView<'_, T, B, D>
pub fn view(&self) -> TensorView<'_, T, B, D>
Get a view of tensor.
Sourcepub fn view_mut(&mut self) -> TensorMut<'_, T, B, D>where
R: DataMutAPI,
pub fn view_mut(&mut self) -> TensorMut<'_, T, B, D>where
R: DataMutAPI,
Get a mutable view of tensor.
Sourcepub fn into_cow<'a>(self) -> TensorCow<'a, T, B, D>where
R: DataIntoCowAPI<'a>,
pub fn into_cow<'a>(self) -> TensorCow<'a, T, B, D>where
R: DataIntoCowAPI<'a>,
Convert current tensor into copy-on-write.
Sourcepub fn into_owned_keep_layout(self) -> Tensor<T, B, D>
pub fn into_owned_keep_layout(self) -> Tensor<T, B, D>
Convert tensor into owned tensor.
Data is either moved or fully cloned. Layout is not involved; i.e. all underlying data is moved or cloned without changing layout.
§See also
Tensor::into_owned keep data in some conditions, otherwise clone.
This function can avoid cases where data memory bulk is large, but
tensor view is small.
Convert tensor into shared tensor.
Data is either moved or cloned. Layout is not involved; i.e. all underlying data is moved or cloned without changing layout.
§See also
Tensor::into_shared keep data in some conditions, otherwise clone.
This function can avoid cases where data memory bulk is large, but
tensor view is small.
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataCloneAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
R::Data: Clone,
D: DimAPI,
T: Clone,
B: DeviceAPI<T> + DeviceRawAPI<MaybeUninit<T>> + DeviceCreationAnyAPI<T> + OpAssignAPI<T, D>,
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataCloneAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
R::Data: Clone,
D: DimAPI,
T: Clone,
B: DeviceAPI<T> + DeviceRawAPI<MaybeUninit<T>> + DeviceCreationAnyAPI<T> + OpAssignAPI<T, D>,
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
T: Clone,
D: DimAPI,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpAssignAPI<T, Ix1>,
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
T: Clone,
D: DimAPI,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpAssignAPI<T, Ix1>,
pub fn to_raw_f(&self) -> Result<<B as DeviceRawAPI<T>>::Raw>
pub fn to_vec(&self) -> <B as DeviceRawAPI<T>>::Raw
Source§impl<T, B, D> TensorBase<Storage<DataOwned<<B as DeviceRawAPI<T>>::Raw>, T, B>, D>
impl<T, B, D> TensorBase<Storage<DataOwned<<B as DeviceRawAPI<T>>::Raw>, T, B>, D>
pub fn into_raw_f(self) -> Result<<B as DeviceRawAPI<T>>::Raw>
pub fn into_raw(self) -> <B as DeviceRawAPI<T>>::Raw
Source§impl<T, B, D> TensorBase<Storage<DataOwned<<B as DeviceRawAPI<T>>::Raw>, T, B>, D>where
T: Clone,
D: DimAPI,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpAssignAPI<T, Ix1>,
<B as DeviceRawAPI<T>>::Raw: Clone,
impl<T, B, D> TensorBase<Storage<DataOwned<<B as DeviceRawAPI<T>>::Raw>, T, B>, D>where
T: Clone,
D: DimAPI,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpAssignAPI<T, Ix1>,
<B as DeviceRawAPI<T>>::Raw: Clone,
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn to_scalar_f(&self) -> Result<T>
pub fn to_scalar(&self) -> T
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn as_ptr(&self) -> *const T
pub fn as_mut_ptr(&mut self) -> *mut Twhere
R: DataMutAPI,
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = B::Raw>,
B: DeviceAPI<T>,
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>where
R: DataAPI<Data = B::Raw>,
B: DeviceAPI<T>,
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
pub fn into_pack_array_f<const N: usize>(
self,
axis: isize,
) -> Result<TensorAny<<R as PackableArrayAPI<T, N>>::ArrayVec, <R as PackableArrayAPI<T, N>>::Array, B, D::SmallerOne>>where
B: DeviceAPI<<R as PackableArrayAPI<T, N>>::Array>,
R: PackableArrayAPI<T, N> + PackArrayAPI<T>,
<R as PackableArrayAPI<T, N>>::ArrayVec: DataAPI<Data = <B as DeviceRawAPI<<R as PackableArrayAPI<T, N>>::Array>>::Raw>,
pub fn into_pack_array<const N: usize>(
self,
axis: isize,
) -> TensorAny<<R as PackableArrayAPI<T, N>>::ArrayVec, <R as PackableArrayAPI<T, N>>::Array, B, D::SmallerOne>where
B: DeviceAPI<<R as PackableArrayAPI<T, N>>::Array>,
R: PackableArrayAPI<T, N> + PackArrayAPI<T>,
<R as PackableArrayAPI<T, N>>::ArrayVec: DataAPI<Data = <B as DeviceRawAPI<<R as PackableArrayAPI<T, N>>::Array>>::Raw>,
Source§impl<R, T, B, D, const N: usize> TensorBase<Storage<R, [T; N], B>, D>
impl<R, T, B, D, const N: usize> TensorBase<Storage<R, [T; N], B>, D>
pub fn into_unpack_array_f(
self,
axis: isize,
) -> Result<TensorAny<<R as UnpackArrayAPI>::Output, T, B, D::LargerOne>>where
R: UnpackArrayAPI,
<R as UnpackArrayAPI>::Output: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
B: DeviceAPI<T>,
pub fn into_unpack_array(
self,
axis: isize,
) -> TensorAny<<R as UnpackArrayAPI>::Output, T, B, D::LargerOne>where
R: UnpackArrayAPI,
<R as UnpackArrayAPI>::Output: DataAPI<Data = <B as DeviceRawAPI<T>>::Raw>,
B: DeviceAPI<T>,
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn sum_all_f(&self) -> Result<B::TOut>
pub fn sum_all(&self) -> B::TOut
pub fn sum_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn sum_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn sum_f(&self) -> Result<B::TOut>
pub fn sum(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn min_all_f(&self) -> Result<B::TOut>
pub fn min_all(&self) -> B::TOut
pub fn min_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn min_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn min_f(&self) -> Result<B::TOut>
pub fn min(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn max_all_f(&self) -> Result<B::TOut>
pub fn max_all(&self) -> B::TOut
pub fn max_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn max_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn max_f(&self) -> Result<B::TOut>
pub fn max(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn prod_all_f(&self) -> Result<B::TOut>
pub fn prod_all(&self) -> B::TOut
pub fn prod_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn prod_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn prod_f(&self) -> Result<B::TOut>
pub fn prod(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn mean_all_f(&self) -> Result<B::TOut>
pub fn mean_all(&self) -> B::TOut
pub fn mean_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn mean_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn mean_f(&self) -> Result<B::TOut>
pub fn mean(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn var_all_f(&self) -> Result<B::TOut>
pub fn var_all(&self) -> B::TOut
pub fn var_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn var_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn var_f(&self) -> Result<B::TOut>
pub fn var(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn std_all_f(&self) -> Result<B::TOut>
pub fn std_all(&self) -> B::TOut
pub fn std_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn std_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn std_f(&self) -> Result<B::TOut>
pub fn std(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn l2_norm_all_f(&self) -> Result<B::TOut>
pub fn l2_norm_all(&self) -> B::TOut
pub fn l2_norm_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn l2_norm_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn l2_norm_f(&self) -> Result<B::TOut>
pub fn l2_norm(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn argmin_all_f(&self) -> Result<B::TOut>
pub fn argmin_all(&self) -> B::TOut
pub fn argmin_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn argmin_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn argmin_f(&self) -> Result<B::TOut>
pub fn argmin(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn argmax_all_f(&self) -> Result<B::TOut>
pub fn argmax_all(&self) -> B::TOut
pub fn argmax_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn argmax_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn argmax_f(&self) -> Result<B::TOut>
pub fn argmax(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn all_all_f(&self) -> Result<B::TOut>
pub fn all_all(&self) -> B::TOut
pub fn all_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn all_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn all_f(&self) -> Result<B::TOut>
pub fn all(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn any_all_f(&self) -> Result<B::TOut>
pub fn any_all(&self) -> B::TOut
pub fn any_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn any_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn any_f(&self) -> Result<B::TOut>
pub fn any(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn count_nonzero_all_f(&self) -> Result<B::TOut>
pub fn count_nonzero_all(&self) -> B::TOut
pub fn count_nonzero_axes_f(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Result<Tensor<B::TOut, B, IxD>>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn count_nonzero_axes(
&self,
axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>,
) -> Tensor<B::TOut, B, IxD>where
B: DeviceCreationAnyAPI<B::TOut>,
pub fn count_nonzero_f(&self) -> Result<B::TOut>
pub fn count_nonzero(&self) -> B::TOut
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn unraveled_argmin_all_f(&self) -> Result<D>
pub fn unraveled_argmin_all(&self) -> D
pub fn unraveled_argmin_axes_f( &self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Result<Tensor<IxD, B, IxD>>
pub fn unraveled_argmin_axes( &self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Tensor<IxD, B, IxD>
pub fn unraveled_argmin_f(&self) -> Result<D>
pub fn unraveled_argmin(&self) -> D
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn unraveled_argmax_all_f(&self) -> Result<D>
pub fn unraveled_argmax_all(&self) -> D
pub fn unraveled_argmax_axes_f( &self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Result<Tensor<IxD, B, IxD>>
pub fn unraveled_argmax_axes( &self, axes: impl TryInto<AxesIndex<isize>, Error: Into<Error>>, ) -> Tensor<IxD, B, IxD>
pub fn unraveled_argmax_f(&self) -> Result<D>
pub fn unraveled_argmax(&self) -> D
Source§impl<S> TensorBase<S, Ix2>
impl<S> TensorBase<S, Ix2>
pub fn nrow(&self) -> usize
pub fn ncol(&self) -> usize
Sourcepub fn ld_row(&self) -> Option<usize>
pub fn ld_row(&self) -> Option<usize>
Leading dimension in row-major order case.
This function will not return any value if the layout is not row-major.
Source§impl<S, D> TensorBase<S, D>where
D: DimAPI,
Basic definitions for tensor object.
impl<S, D> TensorBase<S, D>where
D: DimAPI,
Basic definitions for tensor object.
Sourcepub unsafe fn new_unchecked(storage: S, layout: Layout<D>) -> Self
pub unsafe fn new_unchecked(storage: S, layout: Layout<D>) -> Self
Initialize tensor object.
§Safety
This function will not check whether data meets the standard of Storage<T, B>, or whether layout may exceed pointer bounds of data.
pub fn storage(&self) -> &S
pub fn storage_mut(&mut self) -> &mut S
pub fn layout(&self) -> &Layout<D>
pub fn shape(&self) -> &D
pub fn stride(&self) -> &D::Stride
pub fn offset(&self) -> usize
pub fn ndim(&self) -> usize
pub fn size(&self) -> usize
pub fn into_data(self) -> S
pub fn into_raw_parts(self) -> (S, Layout<D>)
pub fn c_contig(&self) -> bool
pub fn f_contig(&self) -> bool
pub fn c_prefer(&self) -> bool
pub fn f_prefer(&self) -> bool
Source§impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
impl<R, T, B, D> TensorBase<Storage<R, T, B>, D>
pub fn new_f(storage: Storage<R, T, B>, layout: Layout<D>) -> Result<Self>
pub fn new(storage: Storage<R, T, B>, layout: Layout<D>) -> Self
pub fn device(&self) -> &B
pub fn device_mut(&mut self) -> &mut B
pub fn data(&self) -> &R
pub fn data_mut(&mut self) -> &mut R
pub fn raw(&self) -> &B::Raw
pub fn raw_mut(&mut self) -> &mut B::Rawwhere
R: DataMutAPI<Data = B::Raw>,
Source§impl<T, B, D> TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>
impl<T, B, D> TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>
Source§impl<T, B, D> TensorBase<Storage<DataReference<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>
impl<T, B, D> TensorBase<Storage<DataReference<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>
Trait Implementations§
Source§impl<SA, DA, TrB> Add<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorAddAPI<TrB>,
impl<SA, DA, TrB> Add<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorAddAPI<TrB>,
Source§impl<SA, DA, TrB> BitAnd<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorBitAndAPI<TrB>,
impl<SA, DA, TrB> BitAnd<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorBitAndAPI<TrB>,
Source§impl<SA, DA, TrB> BitOr<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorBitOrAPI<TrB>,
impl<SA, DA, TrB> BitOr<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorBitOrAPI<TrB>,
Source§impl<SA, DA, TrB> BitXor<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorBitXorAPI<TrB>,
impl<SA, DA, TrB> BitXor<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorBitXorAPI<TrB>,
Source§impl<SA, DA, TrB> Div<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorDivAPI<TrB>,
impl<SA, DA, TrB> Div<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorDivAPI<TrB>,
Source§impl<'a, T, B, D> From<TensorBase<Storage<DataMut<'a, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>> for TensorReference<'a, T, B, D>
impl<'a, T, B, D> From<TensorBase<Storage<DataMut<'a, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>> for TensorReference<'a, T, B, D>
Source§fn from(tensor: TensorViewMut<'a, T, B, D>) -> Self
fn from(tensor: TensorViewMut<'a, T, B, D>) -> Self
Source§impl<'a, T, B, D> From<TensorBase<Storage<DataRef<'a, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>> for TensorReference<'a, T, B, D>
impl<'a, T, B, D> From<TensorBase<Storage<DataRef<'a, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>> for TensorReference<'a, T, B, D>
Source§fn from(tensor: TensorView<'a, T, B, D>) -> Self
fn from(tensor: TensorView<'a, T, B, D>) -> Self
Source§impl<'a, T, B, D> From<TensorBase<Storage<DataReference<'a, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>> for TensorMut<'a, T, B, D>
impl<'a, T, B, D> From<TensorBase<Storage<DataReference<'a, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>> for TensorMut<'a, T, B, D>
Source§fn from(tensor: TensorReference<'a, T, B, D>) -> Self
fn from(tensor: TensorReference<'a, T, B, D>) -> Self
Source§impl<'a, T, B, D> From<TensorBase<Storage<DataReference<'a, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>> for TensorView<'a, T, B, D>
impl<'a, T, B, D> From<TensorBase<Storage<DataReference<'a, <B as DeviceRawAPI<T>>::Raw>, T, B>, D>> for TensorView<'a, T, B, D>
Source§fn from(tensor: TensorReference<'a, T, B, D>) -> Self
fn from(tensor: TensorReference<'a, T, B, D>) -> Self
Source§impl<SA, DA, TrB> Mul<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorMulAPI<TrB>,
impl<SA, DA, TrB> Mul<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorMulAPI<TrB>,
Source§impl<RA, RB, TA, TB, TC, DA, DB, DC, B> Rem<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI,
DB: DimAPI,
DC: DimAPI,
TA: Mul<TB, Output = TC>,
TC: Zero + One,
B: DeviceCreationAnyAPI<TC> + DeviceMatMulAPI<TA, TB, TC, DA, DB, DC>,
LayoutMatMulConfig<DA, DB>: LayoutMatMulAPI<DA, DB, DC = DC>,
impl<RA, RB, TA, TB, TC, DA, DB, DC, B> Rem<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI,
DB: DimAPI,
DC: DimAPI,
TA: Mul<TB, Output = TC>,
TC: Zero + One,
B: DeviceCreationAnyAPI<TC> + DeviceMatMulAPI<TA, TB, TC, DA, DB, DC>,
LayoutMatMulConfig<DA, DB>: LayoutMatMulAPI<DA, DB, DC = DC>,
Source§impl<RA, RB, TA, TB, TC, DA, DB, DC, B> Rem<&TensorBase<Storage<RB, TB, B>, DB>> for TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI,
DB: DimAPI,
DC: DimAPI,
TA: Mul<TB, Output = TC>,
TC: Zero + One,
B: DeviceCreationAnyAPI<TC> + DeviceMatMulAPI<TA, TB, TC, DA, DB, DC>,
LayoutMatMulConfig<DA, DB>: LayoutMatMulAPI<DA, DB, DC = DC>,
impl<RA, RB, TA, TB, TC, DA, DB, DC, B> Rem<&TensorBase<Storage<RB, TB, B>, DB>> for TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI,
DB: DimAPI,
DC: DimAPI,
TA: Mul<TB, Output = TC>,
TC: Zero + One,
B: DeviceCreationAnyAPI<TC> + DeviceMatMulAPI<TA, TB, TC, DA, DB, DC>,
LayoutMatMulConfig<DA, DB>: LayoutMatMulAPI<DA, DB, DC = DC>,
Source§impl<RA, RB, TA, TB, TC, DA, DB, DC, B> Rem<TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI,
DB: DimAPI,
DC: DimAPI,
TA: Mul<TB, Output = TC>,
TC: Zero + One,
B: DeviceCreationAnyAPI<TC> + DeviceMatMulAPI<TA, TB, TC, DA, DB, DC>,
LayoutMatMulConfig<DA, DB>: LayoutMatMulAPI<DA, DB, DC = DC>,
impl<RA, RB, TA, TB, TC, DA, DB, DC, B> Rem<TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI,
DB: DimAPI,
DC: DimAPI,
TA: Mul<TB, Output = TC>,
TC: Zero + One,
B: DeviceCreationAnyAPI<TC> + DeviceMatMulAPI<TA, TB, TC, DA, DB, DC>,
LayoutMatMulConfig<DA, DB>: LayoutMatMulAPI<DA, DB, DC = DC>,
Source§impl<RA, RB, TA, TB, TC, DA, DB, DC, B> Rem<TensorBase<Storage<RB, TB, B>, DB>> for TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI,
DB: DimAPI,
DC: DimAPI,
TA: Mul<TB, Output = TC>,
TC: Zero + One,
B: DeviceCreationAnyAPI<TC> + DeviceMatMulAPI<TA, TB, TC, DA, DB, DC>,
LayoutMatMulConfig<DA, DB>: LayoutMatMulAPI<DA, DB, DC = DC>,
impl<RA, RB, TA, TB, TC, DA, DB, DC, B> Rem<TensorBase<Storage<RB, TB, B>, DB>> for TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI,
DB: DimAPI,
DC: DimAPI,
TA: Mul<TB, Output = TC>,
TC: Zero + One,
B: DeviceCreationAnyAPI<TC> + DeviceMatMulAPI<TA, TB, TC, DA, DB, DC>,
LayoutMatMulConfig<DA, DB>: LayoutMatMulAPI<DA, DB, DC = DC>,
Source§impl<SA, DA, TrB> Shl<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorShlAPI<TrB>,
impl<SA, DA, TrB> Shl<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorShlAPI<TrB>,
Source§impl<SA, DA, TrB> Shr<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorShrAPI<TrB>,
impl<SA, DA, TrB> Shr<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorShrAPI<TrB>,
Source§impl<SA, DA, TrB> Sub<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorSubAPI<TrB>,
impl<SA, DA, TrB> Sub<TrB> for &TensorBase<SA, DA>where
DA: DimAPI,
Self: TensorSubAPI<TrB>,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorATan2API<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorATan2API<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpATan2API<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpATan2API<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn atan2_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn atan2(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorATan2API<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpATan2API<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorATan2API<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpATan2API<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpATan2API<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpATan2API<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn atan2_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn atan2(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorATan2API<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpATan2API<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorATan2API<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpATan2API<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorATan2API<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorATan2API<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpATan2API<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpATan2API<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn atan2_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn atan2(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorATan2API<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpATan2API<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorATan2API<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpATan2API<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpATan2API<TA, TB, DB>>::TOut>>::Raw>, <B as OpATan2API<TA, TB, DB>>::TOut, B>, DB>
fn atan2_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn atan2(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorATan2API<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorATan2API<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpATan2API<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpATan2API<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn atan2_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn atan2(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<T, DA, DB, DC, B> TensorAddAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpAddAPI<T, T, T, DC> + OpLConsumeAddAPI<T, T, DA> + OpRConsumeAddAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Add<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
impl<T, DA, DB, DC, B> TensorAddAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpAddAPI<T, T, T, DC> + OpLConsumeAddAPI<T, T, DA> + OpRConsumeAddAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Add<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
Source§impl<RA, DA, RB, DB, TA, TB, B> TensorAssignAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TensorAny<RA, TA, B, DA>where
RA: DataMutAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI,
DB: DimAPI,
B: DeviceAPI<TA> + DeviceAPI<TB> + OpAssignAPI<TA, DA, TB>,
impl<RA, DA, RB, DB, TA, TB, B> TensorAssignAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TensorAny<RA, TA, B, DA>where
RA: DataMutAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI,
DB: DimAPI,
B: DeviceAPI<TA> + DeviceAPI<TB> + OpAssignAPI<TA, DA, TB>,
Source§impl<RA, DA, RB, DB, TA, TB, B> TensorAssignAPI<TensorBase<Storage<RB, TB, B>, DB>> for TensorAny<RA, TA, B, DA>where
RA: DataMutAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI,
DB: DimAPI,
B: DeviceAPI<TA> + DeviceAPI<TB> + OpAssignAPI<TA, DA, TB>,
impl<RA, DA, RB, DB, TA, TB, B> TensorAssignAPI<TensorBase<Storage<RB, TB, B>, DB>> for TensorAny<RA, TA, B, DA>where
RA: DataMutAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI,
DB: DimAPI,
B: DeviceAPI<TA> + DeviceAPI<TB> + OpAssignAPI<TA, DA, TB>,
Source§impl<T, DA, DB, DC, B> TensorBitAndAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpBitAndAPI<T, T, T, DC> + OpLConsumeBitAndAPI<T, T, DA> + OpRConsumeBitAndAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: BitAnd<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
impl<T, DA, DB, DC, B> TensorBitAndAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpBitAndAPI<T, T, T, DC> + OpLConsumeBitAndAPI<T, T, DA> + OpRConsumeBitAndAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: BitAnd<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
Source§impl<T, DA, DB, DC, B> TensorBitOrAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpBitOrAPI<T, T, T, DC> + OpLConsumeBitOrAPI<T, T, DA> + OpRConsumeBitOrAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: BitOr<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
impl<T, DA, DB, DC, B> TensorBitOrAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpBitOrAPI<T, T, T, DC> + OpLConsumeBitOrAPI<T, T, DA> + OpRConsumeBitOrAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: BitOr<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
Source§impl<T, DA, DB, DC, B> TensorBitXorAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpBitXorAPI<T, T, T, DC> + OpLConsumeBitXorAPI<T, T, DA> + OpRConsumeBitXorAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: BitXor<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
impl<T, DA, DB, DC, B> TensorBitXorAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpBitXorAPI<T, T, T, DC> + OpLConsumeBitXorAPI<T, T, DA> + OpRConsumeBitXorAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: BitXor<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorCopySignAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorCopySignAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpCopySignAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpCopySignAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn copysign_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn copysign(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorCopySignAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpCopySignAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorCopySignAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpCopySignAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpCopySignAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpCopySignAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn copysign_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn copysign(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorCopySignAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpCopySignAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorCopySignAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpCopySignAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpCopySignAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpCopySignAPI<TA, TB, DB>>::TOut, B>, DB>
fn copysign_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn copysign(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorCopySignAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorCopySignAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpCopySignAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpCopySignAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn copysign_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn copysign(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorCopySignAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpCopySignAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorCopySignAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpCopySignAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpCopySignAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpCopySignAPI<TA, TB, DB>>::TOut, B>, DB>
fn copysign_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn copysign(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorCopySignAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorCopySignAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpCopySignAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpCopySignAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn copysign_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn copysign(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<T, DA, DB, DC, B> TensorDivAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpDivAPI<T, T, T, DC> + OpLConsumeDivAPI<T, T, DA> + OpRConsumeDivAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Div<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
impl<T, DA, DB, DC, B> TensorDivAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpDivAPI<T, T, T, DC> + OpLConsumeDivAPI<T, T, DA> + OpRConsumeDivAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Div<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorEqualAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorEqualAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn equal_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpEqualAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpEqualAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn equal_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn equal_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpEqualAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpEqualAPI<TA, TB, DB>>::TOut, B>, DB>
fn equal_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn equal_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorFloorDivideAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorFloorDivideAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpFloorDivideAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpFloorDivideAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn floor_divide_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn floor_divide(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorFloorDivideAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpFloorDivideAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorFloorDivideAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpFloorDivideAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpFloorDivideAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpFloorDivideAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn floor_divide_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn floor_divide(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorFloorDivideAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpFloorDivideAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorFloorDivideAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpFloorDivideAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpFloorDivideAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpFloorDivideAPI<TA, TB, DB>>::TOut, B>, DB>
fn floor_divide_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn floor_divide(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorFloorDivideAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorFloorDivideAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpFloorDivideAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpFloorDivideAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn floor_divide_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn floor_divide(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorFloorDivideAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpFloorDivideAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorFloorDivideAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpFloorDivideAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpFloorDivideAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpFloorDivideAPI<TA, TB, DB>>::TOut, B>, DB>
fn floor_divide_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn floor_divide(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorFloorDivideAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorFloorDivideAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpFloorDivideAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpFloorDivideAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn floor_divide_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn floor_divide(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorGreaterAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorGreaterAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpGreaterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpGreaterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn greater_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn greater(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorGreaterAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpGreaterAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorGreaterAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpGreaterAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpGreaterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpGreaterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn greater_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn greater(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorGreaterAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpGreaterAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorGreaterAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpGreaterAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpGreaterAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpGreaterAPI<TA, TB, DB>>::TOut, B>, DB>
fn greater_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn greater(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorGreaterAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorGreaterAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpGreaterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpGreaterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn greater_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn greater(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorGreaterAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpGreaterAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorGreaterAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpGreaterAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpGreaterAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpGreaterAPI<TA, TB, DB>>::TOut, B>, DB>
fn greater_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn greater(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorGreaterAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorGreaterAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpGreaterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpGreaterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn greater_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn greater(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorGreaterEqualAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorGreaterEqualAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpGreaterEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpGreaterEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn greater_equal_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn greater_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorGreaterEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpGreaterEqualAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorGreaterEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpGreaterEqualAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpGreaterEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpGreaterEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn greater_equal_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn greater_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorGreaterEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpGreaterEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorGreaterEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpGreaterEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpGreaterEqualAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpGreaterEqualAPI<TA, TB, DB>>::TOut, B>, DB>
fn greater_equal_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn greater_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorGreaterEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorGreaterEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpGreaterEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpGreaterEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn greater_equal_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn greater_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorGreaterEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpGreaterEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorGreaterEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpGreaterEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpGreaterEqualAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpGreaterEqualAPI<TA, TB, DB>>::TOut, B>, DB>
fn greater_equal_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn greater_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorGreaterEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorGreaterEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpGreaterEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpGreaterEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn greater_equal_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn greater_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorHypotAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorHypotAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpHypotAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpHypotAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn hypot_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn hypot(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorHypotAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpHypotAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorHypotAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpHypotAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpHypotAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpHypotAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn hypot_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn hypot(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorHypotAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpHypotAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorHypotAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpHypotAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorHypotAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorHypotAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpHypotAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpHypotAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn hypot_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn hypot(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorHypotAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpHypotAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorHypotAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpHypotAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpHypotAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpHypotAPI<TA, TB, DB>>::TOut, B>, DB>
fn hypot_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn hypot(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorHypotAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorHypotAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpHypotAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpHypotAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn hypot_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn hypot(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorLessAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorLessAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLessAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpLessAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn less_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn less(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorLessAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>
impl<RA, TA, DA, RB, TB, DB, B> TensorLessAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLessAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpLessAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn less_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn less(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorLessAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TA
impl<RB, TA, DB, TB, B> TensorLessAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TA
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorLessAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorLessAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLessAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpLessAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn less_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn less(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorLessAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TA
impl<TA, DB, TB, B> TensorLessAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TA
Source§impl<TA, DA, TB, DB, B> TensorLessAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorLessAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLessAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpLessAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn less_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn less(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorLessEqualAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorLessEqualAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLessEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpLessEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn less_equal_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn less_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorLessEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpLessEqualAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorLessEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpLessEqualAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLessEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpLessEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn less_equal_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn less_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorLessEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpLessEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorLessEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpLessEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLessEqualAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpLessEqualAPI<TA, TB, DB>>::TOut, B>, DB>
fn less_equal_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn less_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorLessEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorLessEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLessEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpLessEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn less_equal_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn less_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorLessEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpLessEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorLessEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpLessEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLessEqualAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpLessEqualAPI<TA, TB, DB>>::TOut, B>, DB>
fn less_equal_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn less_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorLessEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorLessEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLessEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpLessEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn less_equal_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn less_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorLogAddExpAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorLogAddExpAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLogAddExpAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpLogAddExpAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn log_add_exp_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn log_add_exp(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorLogAddExpAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpLogAddExpAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorLogAddExpAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpLogAddExpAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLogAddExpAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpLogAddExpAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn log_add_exp_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn log_add_exp(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorLogAddExpAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpLogAddExpAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorLogAddExpAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpLogAddExpAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLogAddExpAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpLogAddExpAPI<TA, TB, DB>>::TOut, B>, DB>
fn log_add_exp_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn log_add_exp(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorLogAddExpAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorLogAddExpAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLogAddExpAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpLogAddExpAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn log_add_exp_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn log_add_exp(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorLogAddExpAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpLogAddExpAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorLogAddExpAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpLogAddExpAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLogAddExpAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpLogAddExpAPI<TA, TB, DB>>::TOut, B>, DB>
fn log_add_exp_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn log_add_exp(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorLogAddExpAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorLogAddExpAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpLogAddExpAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpLogAddExpAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn log_add_exp_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn log_add_exp(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorMaximumAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorMaximumAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpMaximumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpMaximumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn maximum_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn maximum(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorMaximumAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpMaximumAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorMaximumAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpMaximumAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpMaximumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpMaximumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn maximum_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn maximum(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorMaximumAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpMaximumAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorMaximumAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpMaximumAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpMaximumAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpMaximumAPI<TA, TB, DB>>::TOut, B>, DB>
fn maximum_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn maximum(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorMaximumAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorMaximumAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpMaximumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpMaximumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn maximum_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn maximum(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorMaximumAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpMaximumAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorMaximumAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpMaximumAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpMaximumAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpMaximumAPI<TA, TB, DB>>::TOut, B>, DB>
fn maximum_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn maximum(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorMaximumAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorMaximumAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpMaximumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpMaximumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn maximum_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn maximum(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorMinimumAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorMinimumAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpMinimumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpMinimumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn minimum_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn minimum(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorMinimumAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpMinimumAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorMinimumAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpMinimumAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpMinimumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpMinimumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn minimum_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn minimum(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorMinimumAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpMinimumAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorMinimumAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpMinimumAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpMinimumAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpMinimumAPI<TA, TB, DB>>::TOut, B>, DB>
fn minimum_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn minimum(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorMinimumAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorMinimumAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpMinimumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpMinimumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn minimum_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn minimum(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorMinimumAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpMinimumAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorMinimumAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpMinimumAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpMinimumAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpMinimumAPI<TA, TB, DB>>::TOut, B>, DB>
fn minimum_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn minimum(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorMinimumAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorMinimumAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpMinimumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpMinimumAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn minimum_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn minimum(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<T, DA, DB, DC, B> TensorMulAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpMulAPI<T, T, T, DC> + OpLConsumeMulAPI<T, T, DA> + OpRConsumeMulAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Mul<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
impl<T, DA, DB, DC, B> TensorMulAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpMulAPI<T, T, T, DC> + OpLConsumeMulAPI<T, T, DA> + OpRConsumeMulAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Mul<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorNextAfterAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorNextAfterAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpNextAfterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpNextAfterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn nextafter_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn nextafter(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorNextAfterAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpNextAfterAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorNextAfterAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpNextAfterAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpNextAfterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpNextAfterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn nextafter_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn nextafter(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorNextAfterAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpNextAfterAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorNextAfterAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpNextAfterAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpNextAfterAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpNextAfterAPI<TA, TB, DB>>::TOut, B>, DB>
fn nextafter_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn nextafter(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorNextAfterAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorNextAfterAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpNextAfterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpNextAfterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn nextafter_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn nextafter(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorNextAfterAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpNextAfterAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorNextAfterAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpNextAfterAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpNextAfterAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpNextAfterAPI<TA, TB, DB>>::TOut, B>, DB>
fn nextafter_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn nextafter(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorNextAfterAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorNextAfterAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpNextAfterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpNextAfterAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn nextafter_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn nextafter(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorNotEqualAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorNotEqualAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpNotEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpNotEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn not_equal_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn not_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorNotEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpNotEqualAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
impl<RA, TA, DA, RB, TB, DB, B> TensorNotEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>where
RA: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>,
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DA: DimAPI + DimMaxAPI<DB>,
DB: DimAPI,
DA::Max: DimAPI,
B: OpNotEqualAPI<TA, TB, DA::Max> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpNotEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpNotEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn not_equal_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn not_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorNotEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpNotEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<RB, TA, DB, TB, B> TensorNotEqualAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TAwhere
RB: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>,
DB: DimAPI,
B: OpNotEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpNotEqualAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpNotEqualAPI<TA, TB, DB>>::TOut, B>, DB>
fn not_equal_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn not_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorNotEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorNotEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpNotEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpNotEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn not_equal_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn not_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorNotEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpNotEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
impl<TA, DB, TB, B> TensorNotEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TAwhere
DB: DimAPI,
B: OpNotEqualAPI<TA, TB, DB> + DeviceAPI<TA> + DeviceAPI<TB> + DeviceAPI<B::TOut> + DeviceCreationAnyAPI<B::TOut>,
TA: Num,
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpNotEqualAPI<TA, TB, DB>>::TOut>>::Raw>, <B as OpNotEqualAPI<TA, TB, DB>>::TOut, B>, DB>
fn not_equal_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn not_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B> TensorNotEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorNotEqualAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpNotEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpNotEqualAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn not_equal_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn not_equal(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorPowAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TB>>::Raw>> TensorPowAPI<&TensorBase<Storage<R, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpPowAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpPowAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn pow_f(self, b: &TensorAny<R, TB, B, DB>) -> Result<Self::Output>
fn pow(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RA, TA, DA, RB, TB, DB, B> TensorPowAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>
impl<RA, TA, DA, RB, TB, DB, B> TensorPowAPI<&TensorBase<Storage<RB, TB, B>, DB>> for &TensorAny<RA, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpPowAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpPowAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn pow_f(self, b: &TensorAny<RB, TB, B, DB>) -> Result<Self::Output>
fn pow(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<RB, TA, DB, TB, B> TensorPowAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TA
impl<RB, TA, DB, TB, B> TensorPowAPI<&TensorBase<Storage<RB, TB, B>, DB>> for TA
Source§impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorPowAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
impl<TA, DA, TB, DB, B, R: DataAPI<Data = <B as DeviceRawAPI<TA>>::Raw>> TensorPowAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for &TensorAny<R, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpPowAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpPowAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn pow_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn pow(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<TA, DB, TB, B> TensorPowAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TA
impl<TA, DB, TB, B> TensorPowAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TA
Source§impl<TA, DA, TB, DB, B> TensorPowAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
impl<TA, DA, TB, DB, B> TensorPowAPI<TensorBase<Storage<DataRef<'_, <B as DeviceRawAPI<TB>>::Raw>, TB, B>, DB>> for TensorView<'_, TA, B, DA>
type Output = TensorBase<Storage<DataOwned<<B as DeviceRawAPI<<B as OpPowAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut>>::Raw>, <B as OpPowAPI<TA, TB, <DA as DimMaxAPI<DB>>::Max>>::TOut, B>, <DA as DimMaxAPI<DB>>::Max>
fn pow_f(self, b: TensorView<'_, TB, B, DB>) -> Result<Self::Output>
fn pow(self, b: TRB) -> Self::Outputwhere
Self: Sized,
Source§impl<T, DA, DB, DC, B> TensorRemAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpRemAPI<T, T, T, DC> + OpLConsumeRemAPI<T, T, DA> + OpRConsumeRemAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Rem<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
impl<T, DA, DB, DC, B> TensorRemAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpRemAPI<T, T, T, DC> + OpLConsumeRemAPI<T, T, DA> + OpRConsumeRemAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Rem<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
Source§impl<T, DA, DB, DC, B> TensorShlAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpShlAPI<T, T, T, DC> + OpLConsumeShlAPI<T, T, DA> + OpRConsumeShlAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Shl<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
impl<T, DA, DB, DC, B> TensorShlAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpShlAPI<T, T, T, DC> + OpLConsumeShlAPI<T, T, DA> + OpRConsumeShlAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Shl<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
Source§impl<T, DA, DB, DC, B> TensorShrAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpShrAPI<T, T, T, DC> + OpLConsumeShrAPI<T, T, DA> + OpRConsumeShrAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Shr<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
impl<T, DA, DB, DC, B> TensorShrAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpShrAPI<T, T, T, DC> + OpLConsumeShrAPI<T, T, DA> + OpRConsumeShrAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Shr<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
Source§impl<T, DA, DB, DC, B> TensorSubAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpSubAPI<T, T, T, DC> + OpLConsumeSubAPI<T, T, DA> + OpRConsumeSubAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Sub<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
impl<T, DA, DB, DC, B> TensorSubAPI<TensorBase<Storage<DataCow<'_, <B as DeviceRawAPI<T>>::Raw>, T, B>, DB>> for TensorCow<'_, T, B, DA>where
DA: DimAPI + DimMaxAPI<DB, Max = DC> + DimIntoAPI<DC>,
DB: DimAPI + DimMaxAPI<DA, Max = DC> + DimIntoAPI<DC>,
DC: DimAPI + DimIntoAPI<DA> + DimIntoAPI<DB>,
B: DeviceAPI<T> + DeviceCreationAnyAPI<T> + OpSubAPI<T, T, T, DC> + OpLConsumeSubAPI<T, T, DA> + OpRConsumeSubAPI<T, T, DB> + OpAssignAPI<T, DA> + OpAssignAPI<T, DB>,
T: Sub<T, Output = T> + Clone,
<B as DeviceRawAPI<T>>::Raw: Clone,
impl<R, D> Send for TensorBase<R, D>
impl<R, D> Sync for TensorBase<R, D>
impl<R, D> TensorBaseAPI for TensorBase<R, D>where
D: DimAPI,
Auto Trait Implementations§
impl<S, D> Freeze for TensorBase<S, D>
impl<S, D> RefUnwindSafe for TensorBase<S, D>
impl<S, D> Unpin for TensorBase<S, D>
impl<S, D> UnsafeUnpin for TensorBase<S, D>
impl<S, D> UnwindSafe for TensorBase<S, D>
Blanket Implementations§
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DTypePromoteAPI<T> for T
impl<T> DTypePromoteAPI<T> for T
const SAME_TYPE: bool = true
const CAN_CAST_SELF: bool = true
const CAN_CAST_OTHER: bool = true
type Res = T
fn promote_self(self) -> <T as DTypePromoteAPI<T>>::Res
fn promote_other(val: T) -> <T as DTypePromoteAPI<T>>::Res
fn promote_pair(self, val: T) -> (Self::Res, Self::Res)where
Self: Sized,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more