Struct tract_core::internal::tract_ndarray::Slice [−][src]
Expand description
A slice (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.
See also the s![] macro.
Examples
Slice::new(0, None, 1) is the full range of an axis. It can also be
created with Slice::from(..). The Python equivalent is [:].
Slice::new(a, b, 2) is every second element from a until b. It can
also be created with Slice::from(a..b).step_by(2). The Python equivalent
is [a:b:2].
Slice::new(a, None, -1) is every element, from a until the end, in
reverse order. It can also be created with Slice::from(a..).step_by(-1).
The Python equivalent is [a::-1].
Fields
start: isizestart index; negative are counted from the back of the axis
end: Option<isize>end index; negative are counted from the back of the axis; when not present the default is the full length of the axis.
step: isizestep size in elements; the default is 1, for every element.
Implementations
Create a new Slice with the given extents.
See also the From impls, converting from ranges; for example
Slice::from(i..) or Slice::from(j..k).
step must be nonzero.
(This method checks with a debug assertion that step is not zero.)
Trait Implementations
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Auto Trait Implementations
impl RefUnwindSafe for Slice
impl UnwindSafe for Slice
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