Enum tract_core::internal::tract_ndarray::SliceInfoElem [−][src]
pub enum SliceInfoElem {
Slice {
start: isize,
end: Option<isize>,
step: isize,
},
Index(isize),
NewAxis,
}
Expand description
A slice (range with step), an index, or a new axis token.
See also the s![]
macro for a convenient way to create a
SliceInfo<[SliceInfoElem; n], Din, Dout>
.
Examples
SliceInfoElem::Index(a)
is the index a
. It can also be created with
SliceInfoElem::from(a)
. The Python equivalent is [a]
. The macro
equivalent is s![a]
.
SliceInfoElem::Slice { start: 0, end: None, step: 1 }
is the full range
of an axis. It can also be created with SliceInfoElem::from(..)
. The
Python equivalent is [:]
. The macro equivalent is s![..]
.
SliceInfoElem::Slice { start: a, end: Some(b), step: 2 }
is every second
element from a
until b
. It can also be created with
SliceInfoElem::from(Slice::from(a..b).step_by(2))
. The Python equivalent
is [a:b:2]
. The macro equivalent is s![a..b;2]
.
SliceInfoElem::Slice { start: a, end: None, step: -1 }
is every element,
from a
until the end, in reverse order. It can also be created with
SliceInfoElem::from(Slice::from(a..).step_by(-1))
. The Python equivalent
is [a::-1]
. The macro equivalent is s![a..;-1]
.
SliceInfoElem::NewAxis
is a new axis of length 1. It can also be created
with SliceInfoElem::from(NewAxis)
. The Python equivalent is
[np.newaxis]
. The macro equivalent is s![NewAxis]
.
Variants
A range with step size. end
is an exclusive index. Negative start
or end
indexes are counted from the back of the axis. If end
is
None
, the slice extends to the end of the axis.
Fields of Slice
Index(isize)
A single index.
Tuple Fields of Index
0: isize
A new axis of length 1.
Implementations
Trait Implementations
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for SliceInfoElem
impl Send for SliceInfoElem
impl Sync for SliceInfoElem
impl Unpin for SliceInfoElem
impl UnwindSafe for SliceInfoElem
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
impl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more