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
Expand description
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.
Show fields
Fields of Slice
start: isize
Expand description
start index; negative are counted from the back of the axis
end: Option<isize>
Expand description
end index; negative are counted from the back of the axis; when not present the default is the full length of the axis.
step: isize
Expand description
step size in elements; the default is 1, for every element.
Index(isize)
Expand description
A single index.
Expand description
A new axis of length 1.
Implementations
impl SliceInfoElem
[src]
impl SliceInfoElem
[src]Trait Implementations
impl Clone for SliceInfoElem
[src]
impl Clone for SliceInfoElem
[src]pub fn clone(&self) -> SliceInfoElem
[src]
pub fn clone(&self) -> SliceInfoElem
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl Debug for SliceInfoElem
[src]
impl Debug for SliceInfoElem
[src]impl Display for SliceInfoElem
[src]
impl Display for SliceInfoElem
[src]impl From<NewAxis> for SliceInfoElem
[src]
impl From<NewAxis> for SliceInfoElem
[src]pub fn from(NewAxis) -> SliceInfoElem
[src]
pub fn from(NewAxis) -> SliceInfoElem
[src]Performs the conversion.
impl From<Range<i32>> for SliceInfoElem
[src]
impl From<Range<i32>> for SliceInfoElem
[src]pub fn from(r: Range<i32>) -> SliceInfoElem
[src]
pub fn from(r: Range<i32>) -> SliceInfoElem
[src]Performs the conversion.
impl From<Range<isize>> for SliceInfoElem
[src]
impl From<Range<isize>> for SliceInfoElem
[src]pub fn from(r: Range<isize>) -> SliceInfoElem
[src]
pub fn from(r: Range<isize>) -> SliceInfoElem
[src]Performs the conversion.
impl From<Range<usize>> for SliceInfoElem
[src]
impl From<Range<usize>> for SliceInfoElem
[src]pub fn from(r: Range<usize>) -> SliceInfoElem
[src]
pub fn from(r: Range<usize>) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeFrom<i32>> for SliceInfoElem
[src]
impl From<RangeFrom<i32>> for SliceInfoElem
[src]pub fn from(r: RangeFrom<i32>) -> SliceInfoElem
[src]
pub fn from(r: RangeFrom<i32>) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeFrom<isize>> for SliceInfoElem
[src]
impl From<RangeFrom<isize>> for SliceInfoElem
[src]pub fn from(r: RangeFrom<isize>) -> SliceInfoElem
[src]
pub fn from(r: RangeFrom<isize>) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeFrom<usize>> for SliceInfoElem
[src]
impl From<RangeFrom<usize>> for SliceInfoElem
[src]pub fn from(r: RangeFrom<usize>) -> SliceInfoElem
[src]
pub fn from(r: RangeFrom<usize>) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeFull> for SliceInfoElem
[src]
impl From<RangeFull> for SliceInfoElem
[src]pub fn from(RangeFull) -> SliceInfoElem
[src]
pub fn from(RangeFull) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeInclusive<i32>> for SliceInfoElem
[src]
impl From<RangeInclusive<i32>> for SliceInfoElem
[src]pub fn from(r: RangeInclusive<i32>) -> SliceInfoElem
[src]
pub fn from(r: RangeInclusive<i32>) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeInclusive<isize>> for SliceInfoElem
[src]
impl From<RangeInclusive<isize>> for SliceInfoElem
[src]pub fn from(r: RangeInclusive<isize>) -> SliceInfoElem
[src]
pub fn from(r: RangeInclusive<isize>) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeInclusive<usize>> for SliceInfoElem
[src]
impl From<RangeInclusive<usize>> for SliceInfoElem
[src]pub fn from(r: RangeInclusive<usize>) -> SliceInfoElem
[src]
pub fn from(r: RangeInclusive<usize>) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeTo<i32>> for SliceInfoElem
[src]
impl From<RangeTo<i32>> for SliceInfoElem
[src]pub fn from(r: RangeTo<i32>) -> SliceInfoElem
[src]
pub fn from(r: RangeTo<i32>) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeTo<isize>> for SliceInfoElem
[src]
impl From<RangeTo<isize>> for SliceInfoElem
[src]pub fn from(r: RangeTo<isize>) -> SliceInfoElem
[src]
pub fn from(r: RangeTo<isize>) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeTo<usize>> for SliceInfoElem
[src]
impl From<RangeTo<usize>> for SliceInfoElem
[src]pub fn from(r: RangeTo<usize>) -> SliceInfoElem
[src]
pub fn from(r: RangeTo<usize>) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeToInclusive<i32>> for SliceInfoElem
[src]
impl From<RangeToInclusive<i32>> for SliceInfoElem
[src]pub fn from(r: RangeToInclusive<i32>) -> SliceInfoElem
[src]
pub fn from(r: RangeToInclusive<i32>) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeToInclusive<isize>> for SliceInfoElem
[src]
impl From<RangeToInclusive<isize>> for SliceInfoElem
[src]pub fn from(r: RangeToInclusive<isize>) -> SliceInfoElem
[src]
pub fn from(r: RangeToInclusive<isize>) -> SliceInfoElem
[src]Performs the conversion.
impl From<RangeToInclusive<usize>> for SliceInfoElem
[src]
impl From<RangeToInclusive<usize>> for SliceInfoElem
[src]pub fn from(r: RangeToInclusive<usize>) -> SliceInfoElem
[src]
pub fn from(r: RangeToInclusive<usize>) -> SliceInfoElem
[src]Performs the conversion.
impl From<Slice> for SliceInfoElem
[src]
impl From<Slice> for SliceInfoElem
[src]pub fn from(s: Slice) -> SliceInfoElem
[src]
pub fn from(s: Slice) -> SliceInfoElem
[src]Performs the conversion.
impl From<i32> for SliceInfoElem
[src]
impl From<i32> for SliceInfoElem
[src]pub fn from(r: i32) -> SliceInfoElem
[src]
pub fn from(r: i32) -> SliceInfoElem
[src]Performs the conversion.
impl From<isize> for SliceInfoElem
[src]
impl From<isize> for SliceInfoElem
[src]pub fn from(r: isize) -> SliceInfoElem
[src]
pub fn from(r: isize) -> SliceInfoElem
[src]Performs the conversion.
impl From<usize> for SliceInfoElem
[src]
impl From<usize> for SliceInfoElem
[src]pub fn from(r: usize) -> SliceInfoElem
[src]
pub fn from(r: usize) -> SliceInfoElem
[src]Performs the conversion.
impl Hash for SliceInfoElem
[src]
impl Hash for SliceInfoElem
[src]impl PartialEq<SliceInfoElem> for SliceInfoElem
[src]
impl PartialEq<SliceInfoElem> for SliceInfoElem
[src]pub fn eq(&self, other: &SliceInfoElem) -> bool
[src]
pub fn eq(&self, other: &SliceInfoElem) -> bool
[src]This method tests for self
and other
values to be equal, and is used
by ==
. Read more
pub fn ne(&self, other: &SliceInfoElem) -> bool
[src]
pub fn ne(&self, other: &SliceInfoElem) -> bool
[src]This method tests for !=
.
impl Copy for SliceInfoElem
[src]
impl Eq for SliceInfoElem
[src]
impl StructuralEq for SliceInfoElem
[src]
impl StructuralPartialEq for SliceInfoElem
[src]
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
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
[src]
impl<T> Downcast for T where
T: Any,
[src]pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘNotable traits for Box<R, Global>
impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<W> Write for Box<W, Global> where
W: Write + ?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
A: Allocator,
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;
[src]
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘNotable traits for Box<R, Global>
impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<W> Write for Box<W, Global> where
W: Write + ?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
A: Allocator,
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;
[src]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
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
[src]
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
[src]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
pub fn as_any(&self) -> &(dyn Any + 'static)
[src]
pub fn as_any(&self) -> &(dyn Any + 'static)
[src]Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
[src]
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
[src]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
impl<T> DowncastSync for T where
T: Any + Send + Sync,
[src]
impl<T> DowncastSync for T where
T: Any + Send + Sync,
[src]impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more