extendr_api::prelude

Trait IntoNdProducer

Source
pub trait IntoNdProducer {
    type Item;
    type Dim: Dimension;
    type Output: NdProducer<Dim = Self::Dim, Item = Self::Item>;

    // Required method
    fn into_producer(self) -> Self::Output;
}
Expand description

Argument conversion into a producer.

Slices and vectors can be used (equivalent to 1-dimensional array views).

This trait is like IntoIterator for NdProducers instead of iterators.

Required Associated Types§

Source

type Item

The element produced per iteration.

Source

type Dim: Dimension

Dimension type of the producer

Source

type Output: NdProducer<Dim = Self::Dim, Item = Self::Item>

Required Methods§

Source

fn into_producer(self) -> Self::Output

Convert the value into an NdProducer.

Implementations on Foreign Types§

Source§

impl<'a, A> IntoNdProducer for &'a [A]
where A: 'a,

A slice is a one-dimensional producer

Source§

impl<'a, A> IntoNdProducer for &'a Vec<A>
where A: 'a,

A Vec is a one-dimensional producer

Source§

impl<'a, A> IntoNdProducer for &'a mut [A]
where A: 'a,

A mutable slice is a mutable one-dimensional producer

Source§

impl<'a, A> IntoNdProducer for &'a mut Vec<A>
where A: 'a,

A mutable Vec is a mutable one-dimensional producer

Implementors§

Source§

impl<'a, A, S, D> IntoNdProducer for &'a ArrayBase<S, D>
where A: 'a, D: Dimension, S: Data<Elem = A>,

An array reference is an n-dimensional producer of element references (like ArrayView).

Source§

impl<'a, A, S, D> IntoNdProducer for &'a mut ArrayBase<S, D>
where A: 'a, D: Dimension, S: DataMut<Elem = A>,

A mutable array reference is an n-dimensional producer of mutable element references (like ArrayViewMut).

Source§

impl<P> IntoNdProducer for P
where P: NdProducer,

Source§

type Item = <P as NdProducer>::Item

Source§

type Dim = <P as NdProducer>::Dim

Source§

type Output = P