Struct ndarray::Dim[][src]

pub struct Dim<I: ?Sized> { /* fields omitted */ }

Dimension description.

Dim describes the number of axes and the length of each axis in an array. It is also used as an index type.

See also the Dimension trait for its methods and operations.

Examples

To create an array with a particular dimension, you’d just pass a tuple (in this example (3, 2) is used), which is converted to Dim by the array constructor.

use ndarray::Array2;
use ndarray::Dim;

let mut array = Array2::zeros((3, 2));
array[[0, 0]] = 1.;
assert_eq!(array.raw_dim(), Dim([3, 2]));

Implementations

impl Dim<IxDynImpl>[src]

pub fn zeros(n: usize) -> IxDyn[src]

Create a new dimension value with n axes, all zeros

Trait Implementations

impl<I> Add<Dim<I>> for Dim<I> where
    Dim<I>: Dimension
[src]

type Output = Self

The resulting type after applying the + operator.

impl Add<usize> for Dim<[Ix; 1]>[src]

type Output = Self

The resulting type after applying the + operator.

impl<'a, I> AddAssign<&'a Dim<I>> for Dim<I> where
    Dim<I>: Dimension
[src]

impl<I> AddAssign<Dim<I>> for Dim<I> where
    Dim<I>: Dimension
[src]

impl AddAssign<usize> for Dim<[Ix; 1]>[src]

impl<I: Clone + ?Sized> Clone for Dim<I>[src]

impl<I: Copy + ?Sized> Copy for Dim<I>[src]

impl<I> Debug for Dim<I> where
    I: Debug
[src]

impl<I: Default + ?Sized> Default for Dim<I>[src]

impl Dimension for Dim<[Ix; 0]>[src]

type SliceArg = [SliceOrIndex; 0]

SliceArg is the type which is used to specify slicing for this dimension. Read more

type Pattern = ()

Pattern matching friendly form of the dimension value. Read more

type Smaller = Self

Next smaller dimension (if applicable)

type Larger = Ix1

Next larger dimension

impl Dimension for Dim<[Ix; 1]>[src]

type SliceArg = [SliceOrIndex; 1]

SliceArg is the type which is used to specify slicing for this dimension. Read more

type Pattern = Ix

Pattern matching friendly form of the dimension value. Read more

type Smaller = Ix0

Next smaller dimension (if applicable)

type Larger = Ix2

Next larger dimension

fn stride_offset(index: &Self, stride: &Self) -> isize[src]

fn stride_offset_checked(&self, stride: &Self, index: &Self) -> Option<isize>[src]

impl Dimension for Dim<[Ix; 2]>[src]

type SliceArg = [SliceOrIndex; 2]

SliceArg is the type which is used to specify slicing for this dimension. Read more

type Pattern = (Ix, Ix)

Pattern matching friendly form of the dimension value. Read more

type Smaller = Ix1

Next smaller dimension (if applicable)

type Larger = Ix3

Next larger dimension

fn stride_offset(index: &Self, strides: &Self) -> isize[src]

fn stride_offset_checked(&self, strides: &Self, index: &Self) -> Option<isize>[src]

impl Dimension for Dim<[Ix; 3]>[src]

type SliceArg = [SliceOrIndex; 3]

SliceArg is the type which is used to specify slicing for this dimension. Read more

type Pattern = (Ix, Ix, Ix)

Pattern matching friendly form of the dimension value. Read more

type Smaller = Ix2

Next smaller dimension (if applicable)

type Larger = Ix4

Next larger dimension

fn stride_offset(index: &Self, strides: &Self) -> isize[src]

fn stride_offset_checked(&self, strides: &Self, index: &Self) -> Option<isize>[src]

impl Dimension for Dim<[Ix; 4]>[src]

type SliceArg = [SliceOrIndex; 4]

SliceArg is the type which is used to specify slicing for this dimension. Read more

type Pattern = (Ix, Ix, Ix, Ix)

Pattern matching friendly form of the dimension value. Read more

type Smaller = Dim<[Ix; 3]>

Next smaller dimension (if applicable)

type Larger = Ix5

Next larger dimension

impl Dimension for Dim<[Ix; 5]>[src]

type SliceArg = [SliceOrIndex; 5]

SliceArg is the type which is used to specify slicing for this dimension. Read more

type Pattern = (Ix, Ix, Ix, Ix, Ix)

Pattern matching friendly form of the dimension value. Read more

type Smaller = Dim<[Ix; 4]>

Next smaller dimension (if applicable)

type Larger = Ix6

Next larger dimension

impl Dimension for Dim<[Ix; 6]>[src]

type SliceArg = [SliceOrIndex; 6]

SliceArg is the type which is used to specify slicing for this dimension. Read more

type Pattern = (Ix, Ix, Ix, Ix, Ix, Ix)

Pattern matching friendly form of the dimension value. Read more

type Smaller = Dim<[Ix; 5]>

Next smaller dimension (if applicable)

type Larger = IxDyn

Next larger dimension

impl<I: Eq + ?Sized> Eq for Dim<I>[src]

impl<I: Hash + ?Sized> Hash for Dim<I>[src]

impl Index<usize> for Dim<[Ix; 0]>[src]

type Output = usize

The returned type after indexing.

impl Index<usize> for Dim<[Ix; 1]>[src]

type Output = usize

The returned type after indexing.

impl Index<usize> for Dim<[Ix; 2]>[src]

type Output = usize

The returned type after indexing.

impl Index<usize> for Dim<[Ix; 3]>[src]

type Output = usize

The returned type after indexing.

impl Index<usize> for Dim<[Ix; 4]>[src]

type Output = usize

The returned type after indexing.

impl Index<usize> for Dim<[Ix; 5]>[src]

type Output = usize

The returned type after indexing.

impl Index<usize> for Dim<[Ix; 6]>[src]

type Output = usize

The returned type after indexing.

impl Index<usize> for Dim<IxDynImpl>[src]

type Output = <IxDynImpl as Index<usize>>::Output

The returned type after indexing.

impl IndexMut<usize> for Dim<[Ix; 0]>[src]

impl IndexMut<usize> for Dim<[Ix; 1]>[src]

impl IndexMut<usize> for Dim<[Ix; 2]>[src]

impl IndexMut<usize> for Dim<[Ix; 3]>[src]

impl IndexMut<usize> for Dim<[Ix; 4]>[src]

impl IndexMut<usize> for Dim<[Ix; 5]>[src]

impl IndexMut<usize> for Dim<[Ix; 6]>[src]

impl IndexMut<usize> for Dim<IxDynImpl>[src]

impl<I> Mul<Dim<I>> for Dim<I> where
    Dim<I>: Dimension
[src]

type Output = Self

The resulting type after applying the * operator.

impl<I> Mul<usize> for Dim<I> where
    Dim<I>: Dimension
[src]

type Output = Self

The resulting type after applying the * operator.

impl<'a, I> MulAssign<&'a Dim<I>> for Dim<I> where
    Dim<I>: Dimension
[src]

impl<I> MulAssign<Dim<I>> for Dim<I> where
    Dim<I>: Dimension
[src]

impl<I> MulAssign<usize> for Dim<I> where
    Dim<I>: Dimension
[src]

impl NdIndex<Dim<[usize; 0]>> for ()[src]

impl NdIndex<Dim<[usize; 0]>> for [Ix; 0][src]

impl NdIndex<Dim<[usize; 1]>> for Ix[src]

impl NdIndex<Dim<[usize; 1]>> for [Ix; 1][src]

impl NdIndex<Dim<[usize; 2]>> for (Ix, Ix)[src]

impl NdIndex<Dim<[usize; 2]>> for [Ix; 2][src]

impl NdIndex<Dim<[usize; 3]>> for (Ix, Ix, Ix)[src]

impl NdIndex<Dim<[usize; 3]>> for [Ix; 3][src]

impl NdIndex<Dim<[usize; 4]>> for (Ix, Ix, Ix, Ix)[src]

impl NdIndex<Dim<[usize; 4]>> for [Ix; 4][src]

impl NdIndex<Dim<[usize; 5]>> for (Ix, Ix, Ix, Ix, Ix)[src]

impl NdIndex<Dim<[usize; 5]>> for [Ix; 5][src]

impl NdIndex<Dim<[usize; 6]>> for [Ix; 6][src]

impl NdIndex<Dim<IxDynImpl>> for Ix[src]

impl NdIndex<Dim<IxDynImpl>> for Dim<[Ix; 0]>[src]

impl NdIndex<Dim<IxDynImpl>> for [Ix; 4][src]

impl NdIndex<Dim<IxDynImpl>> for Dim<[Ix; 5]>[src]

impl NdIndex<Dim<IxDynImpl>> for [Ix; 5][src]

impl NdIndex<Dim<IxDynImpl>> for Dim<[Ix; 6]>[src]

impl NdIndex<Dim<IxDynImpl>> for [Ix; 6][src]

impl<'a> NdIndex<Dim<IxDynImpl>> for &'a IxDyn[src]

impl<'a> NdIndex<Dim<IxDynImpl>> for &'a [Ix][src]

impl NdIndex<Dim<IxDynImpl>> for [Ix; 0][src]

impl NdIndex<Dim<IxDynImpl>> for Dim<[Ix; 1]>[src]

impl NdIndex<Dim<IxDynImpl>> for [Ix; 1][src]

impl NdIndex<Dim<IxDynImpl>> for Dim<[Ix; 2]>[src]

impl NdIndex<Dim<IxDynImpl>> for [Ix; 2][src]

impl NdIndex<Dim<IxDynImpl>> for Dim<[Ix; 3]>[src]

impl NdIndex<Dim<IxDynImpl>> for [Ix; 3][src]

impl NdIndex<Dim<IxDynImpl>> for Dim<[Ix; 4]>[src]

impl<I: PartialEq + ?Sized> PartialEq<Dim<I>> for Dim<I>[src]

impl<I: ?Sized> PartialEq<I> for Dim<I> where
    I: PartialEq
[src]

impl RemoveAxis for Dim<IxDynImpl>[src]

impl RemoveAxis for Dim<[Ix; 1]>[src]

impl RemoveAxis for Dim<[Ix; 2]>[src]

impl RemoveAxis for Dim<[Ix; 3]>[src]

impl RemoveAxis for Dim<[Ix; 4]>[src]

impl RemoveAxis for Dim<[Ix; 5]>[src]

impl RemoveAxis for Dim<[Ix; 6]>[src]

impl<I: ?Sized> StructuralEq for Dim<I>[src]

impl<I: ?Sized> StructuralPartialEq for Dim<I>[src]

impl<I> Sub<Dim<I>> for Dim<I> where
    Dim<I>: Dimension
[src]

type Output = Self

The resulting type after applying the - operator.

impl Sub<usize> for Dim<[Ix; 1]>[src]

type Output = Self

The resulting type after applying the - operator.

impl<'a, I> SubAssign<&'a Dim<I>> for Dim<I> where
    Dim<I>: Dimension
[src]

impl<I> SubAssign<Dim<I>> for Dim<I> where
    Dim<I>: Dimension
[src]

impl SubAssign<usize> for Dim<[Ix; 1]>[src]

impl Zero for Dim<[Ix; 0]>[src]

impl Zero for Dim<[Ix; 1]>[src]

impl Zero for Dim<[Ix; 2]>[src]

impl Zero for Dim<[Ix; 3]>[src]

impl Zero for Dim<[Ix; 4]>[src]

impl Zero for Dim<[Ix; 5]>[src]

impl Zero for Dim<[Ix; 6]>[src]

Auto Trait Implementations

impl<I: ?Sized> RefUnwindSafe for Dim<I> where
    I: RefUnwindSafe

impl<I: ?Sized> Send for Dim<I> where
    I: Send

impl<I: ?Sized> Sync for Dim<I> where
    I: Sync

impl<I: ?Sized> Unpin for Dim<I> where
    I: Unpin

impl<I: ?Sized> UnwindSafe for Dim<I> where
    I: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.