Trait tract_core::internal::tract_ndarray::SliceArg [−][src]
pub unsafe trait SliceArg<D>: AsRef<[SliceInfoElem]> where
D: Dimension, { type OutDim: Dimension; fn in_ndim(&self) -> usize; fn out_ndim(&self) -> usize; fn __private__(&self) -> PrivateMarker; }
Expand description
A type that can slice an array of dimension D
.
This trait is unsafe to implement because the implementation must ensure
that D
, Self::OutDim
, self.in_dim()
, and self.out_ndim()
are
consistent with the &[SliceInfoElem]
returned by self.as_ref()
and that
self.as_ref()
always returns the same value when called multiple times.
Associated Types
Required methods
fn in_ndim(&self) -> usize
[src]
Expand description
Returns the number of axes in the input array.
fn out_ndim(&self) -> usize
[src]
Expand description
Returns the number of axes in the output array.
fn __private__(&self) -> PrivateMarker
[src]
Expand description
This trait is private to implement; this method exists to make it impossible to implement outside the crate.
Implementations on Foreign Types
Implementors
impl<T, Din, Dout> SliceArg<Dim<IxDynImpl>> for SliceInfo<T, Din, Dout> where
T: AsRef<[SliceInfoElem]>,
Din: Dimension,
Dout: Dimension,
[src]
impl<T, Din, Dout> SliceArg<Dim<IxDynImpl>> for SliceInfo<T, Din, Dout> where
T: AsRef<[SliceInfoElem]>,
Din: Dimension,
Dout: Dimension,
[src]impl<T, Dout> SliceArg<Dim<[usize; 0]>> for SliceInfo<T, Dim<[usize; 0]>, Dout> where
T: AsRef<[SliceInfoElem]>,
Dout: Dimension,
[src]
impl<T, Dout> SliceArg<Dim<[usize; 0]>> for SliceInfo<T, Dim<[usize; 0]>, Dout> where
T: AsRef<[SliceInfoElem]>,
Dout: Dimension,
[src]impl<T, Dout> SliceArg<Dim<[usize; 1]>> for SliceInfo<T, Dim<[usize; 1]>, Dout> where
T: AsRef<[SliceInfoElem]>,
Dout: Dimension,
[src]
impl<T, Dout> SliceArg<Dim<[usize; 1]>> for SliceInfo<T, Dim<[usize; 1]>, Dout> where
T: AsRef<[SliceInfoElem]>,
Dout: Dimension,
[src]impl<T, Dout> SliceArg<Dim<[usize; 2]>> for SliceInfo<T, Dim<[usize; 2]>, Dout> where
T: AsRef<[SliceInfoElem]>,
Dout: Dimension,
[src]
impl<T, Dout> SliceArg<Dim<[usize; 2]>> for SliceInfo<T, Dim<[usize; 2]>, Dout> where
T: AsRef<[SliceInfoElem]>,
Dout: Dimension,
[src]impl<T, Dout> SliceArg<Dim<[usize; 3]>> for SliceInfo<T, Dim<[usize; 3]>, Dout> where
T: AsRef<[SliceInfoElem]>,
Dout: Dimension,
[src]
impl<T, Dout> SliceArg<Dim<[usize; 3]>> for SliceInfo<T, Dim<[usize; 3]>, Dout> where
T: AsRef<[SliceInfoElem]>,
Dout: Dimension,
[src]impl<T, Dout> SliceArg<Dim<[usize; 4]>> for SliceInfo<T, Dim<[usize; 4]>, Dout> where
T: AsRef<[SliceInfoElem]>,
Dout: Dimension,
[src]
impl<T, Dout> SliceArg<Dim<[usize; 4]>> for SliceInfo<T, Dim<[usize; 4]>, Dout> where
T: AsRef<[SliceInfoElem]>,
Dout: Dimension,
[src]