Trait ndarray::NdProducer [−][src]
pub trait NdProducer { type Item; type Dim: Dimension; fn raw_dim(&self) -> Self::Dim; fn __private__(&self) -> PrivateMarker; }
Expand description
A producer of an n-dimensional set of elements; for example an array view, mutable array view or an iterator that yields chunks.
Producers are used as a arguments to Zip
and
azip!()
.
Comparison to IntoIterator
Most NdProducers
are iterable (implement IntoIterator
) but not directly
iterators. This separation is needed because the producer represents
a multidimensional set of items, it can be split along a particular axis for
parallelization, and it has no fixed correspondance to a sequence.
The natural exception is one dimensional producers, like AxisIter
, which
implement Iterator
directly
(AxisIter
traverses a one dimensional sequence, along an axis, while
producing multidimensional items).
See also IntoNdProducer
Associated Types
type Item
[src]
Expand description
The element produced per iteration.
type Dim: Dimension
[src]
Expand description
Dimension type
Required methods
fn raw_dim(&self) -> Self::Dim
[src]
Expand description
Return the shape of the producer.
fn __private__(&self) -> PrivateMarker
[src]
Expand description
This trait is private to implement; this method exists to make it impossible to implement outside the crate.
Implementors
impl<'a, A, D: Dimension> NdProducer for AxisIter<'a, A, D>
[src]
impl<'a, A, D: Dimension> NdProducer for AxisIter<'a, A, D>
[src]impl<'a, A, D: Dimension> NdProducer for AxisIterMut<'a, A, D>
[src]
impl<'a, A, D: Dimension> NdProducer for AxisIterMut<'a, A, D>
[src]impl<'a, A, D: Dimension> NdProducer for ExactChunks<'a, A, D>
[src]
impl<'a, A, D: Dimension> NdProducer for ExactChunks<'a, A, D>
[src]impl<'a, A, D: Dimension> NdProducer for ExactChunksMut<'a, A, D>
[src]
impl<'a, A, D: Dimension> NdProducer for ExactChunksMut<'a, A, D>
[src]impl<'a, A, D: Dimension> NdProducer for Lanes<'a, A, D>
[src]
impl<'a, A, D: Dimension> NdProducer for Lanes<'a, A, D>
[src]impl<'a, A, D: Dimension> NdProducer for LanesMut<'a, A, D>
[src]
impl<'a, A, D: Dimension> NdProducer for LanesMut<'a, A, D>
[src]impl<'a, A, D: Dimension> NdProducer for Windows<'a, A, D>
[src]
impl<'a, A, D: Dimension> NdProducer for Windows<'a, A, D>
[src]impl<'a, A, D: Dimension> NdProducer for ArrayView<'a, A, D>
[src]
impl<'a, A, D: Dimension> NdProducer for ArrayView<'a, A, D>
[src]impl<'a, A, D: Dimension> NdProducer for ArrayViewMut<'a, A, D>
[src]
impl<'a, A, D: Dimension> NdProducer for ArrayViewMut<'a, A, D>
[src]impl<A, D: Dimension> NdProducer for RawArrayView<A, D>
[src]
impl<A, D: Dimension> NdProducer for RawArrayView<A, D>
[src]impl<A, D: Dimension> NdProducer for RawArrayViewMut<A, D>
[src]
impl<A, D: Dimension> NdProducer for RawArrayViewMut<A, D>
[src]