Struct remit::Remit

source ·
pub struct Remit<'a, T>(_);
Expand description

Allows a generator to provide values to an iterator. A generator that only accepts the 'static lifetime can only be used when boxed.

Implementations§

source§

impl<T> Remit<'_, T>

source

pub fn value(&self, value: T) -> impl Future<Output = ()> + '_

Remits the value to the iterator.

If multiple calls are performed without awaiting for the iterator to consume them, an unbounded buffer will be allocated to store the extra values.

A caller should await the future, but does not need to. The provided future will only finish when all values have been accepted by the iterator.

The provided future does not awake on the iterator consuming values; the iterator will poll the originally created future unilaterally.

If the iterator has been dropped, values will be discarded and the future(s) will always poll as pending.

Trait Implementations§

source§

impl<T> Drop for Remit<'_, T>

source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

§

impl<'a, T> !RefUnwindSafe for Remit<'a, T>

§

impl<'a, T> !Send for Remit<'a, T>

§

impl<'a, T> !Sync for Remit<'a, T>

§

impl<'a, T> Unpin for Remit<'a, T>

§

impl<'a, T> !UnwindSafe for Remit<'a, T>

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.