Struct ndarray::Si [] [src]

pub struct Si(pub Ixs, pub Option<Ixs>, pub Ixs);

A slice, a description of a range of an array axis.

Fields are begin, end and stride, where negative begin 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, a convenient way to specify an array of Si.

Examples

Si(0, None, 1) is the full range of an axis. Python equivalent is [:]. Macro equivalent is s![..].

Si(a, Some(b), 2) is every second element from a until b. Python equivalent is [a:b:2]. Macro equivalent is s![a..b;2].

Si(a, None, -1) is every element, from a until the end, in reverse order. Python equivalent is [a::-1]. Macro equivalent is s![a..;-1].

The constant S is a shorthand for the full range of an axis.

Methods

impl Si

fn step(self, step: Ixs) -> Self

Trait Implementations

impl From<Range<Ixs>> for Si

fn from(r: Range<Ixs>) -> Si

impl From<RangeFrom<Ixs>> for Si

fn from(r: RangeFrom<Ixs>) -> Si

impl From<RangeTo<Ixs>> for Si

fn from(r: RangeTo<Ixs>) -> Si

impl From<RangeFull> for Si

fn from(_: RangeFull) -> Si

Derived Implementations

impl Debug for Si

fn fmt(&self, __arg_0: &mut Formatter) -> Result

impl Hash for Si

fn hash<__H: Hasher>(&self, __arg_0: &mut __H)

1.3.0fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher

impl Eq for Si

impl PartialEq for Si

fn eq(&self, __arg_0: &Si) -> bool

fn ne(&self, __arg_0: &Si) -> bool

impl Clone for Si

fn clone(&self) -> Si

1.0.0fn clone_from(&mut self, source: &Self)

impl Copy for Si