macro_toolset::string_v2::general

Module iterator

Source
Expand description

Implementations for any Iterator.

§Concepts

Items of the iterator must implement StringT and are all considered independent (like what we do for tuple, hmmm, tuple with fixed length and with items that are all with the same type?).

Since the compiler will complain that upstream crates may add a new impl of trait std::iter::Iterator for type {I}, we cannot simply implement StringT for T where T: {Trait} but concrete one instead.

This crate has already implemented StringT for the following types:

For array-or-slice-like types:

  • Vec<T>

  • [T; N]

  • &[T] or &[T; N]

    Only when &T implements StringT. We have implemented StringT for most &T where T: Copy, though best effort.

Structs§

  • Wrapper for any iterator with items implementing StringT.