pub struct RenderIteratorDelimited<I, S>(pub I, pub S)
where
         I: IntoIterator,
         I::Item: Render,
         S: AsRef<str>;
Expand description

Wraps an Iterator, making it implement Render, with a delimiter between items.

All items yielded by the iterator must implement Render, which will be rendered sequentially, in the order they are yielded, with a string delimiter in-between. The delimiter is not escaped.

This renderer is lazy; the iterator wrapped by this type will only be iterated when render is called on the value, not when the value is constructed.

Consider using the iter! macro instead of constructing this type manually.

Tuple Fields§

§0: I

The iterator from which items are rendered.

§1: S

The delimiter to render between the items.

Trait Implementations§

source§

impl<I, S> Render for RenderIteratorDelimited<I, S>where I: IntoIterator, I::Item: Render, S: AsRef<str>,

source§

fn render(self, buf: &mut Buffer)

Formats this value into the given output buffer, consuming itself.

Auto Trait Implementations§

§

impl<I, S> RefUnwindSafe for RenderIteratorDelimited<I, S>where I: RefUnwindSafe, S: RefUnwindSafe,

§

impl<I, S> Send for RenderIteratorDelimited<I, S>where I: Send, S: Send,

§

impl<I, S> Sync for RenderIteratorDelimited<I, S>where I: Sync, S: Sync,

§

impl<I, S> Unpin for RenderIteratorDelimited<I, S>where I: Unpin, S: Unpin,

§

impl<I, S> UnwindSafe for RenderIteratorDelimited<I, S>where I: UnwindSafe, S: UnwindSafe,

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,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

const: unstable · source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

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

const: unstable · 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.
const: unstable · 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.
const: unstable · source§

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

Performs the conversion.