back_inserting_iterator
do nothing and =() calls push_back
, so the assignment actually advances the underlying iterator. I did similarly for the truncating_iterator
so that --(), ++(), and *() do nothing but return *this, and assignment assigns to - and increments - the underlying iterator - if count hasn't reached limit yet. Something like if (count++ < limit) *out_++ = value;
. As a template function, to avoid the issue of value_type. I'll see if I can figure out how to make a PR.
FMT_MAKE_VALUE
macro with the make_value
.