3 ms·
Backing up a utf8 stream is nontrivial though.
by Tyr42 6y ago
Backing up a utf8 stream is nontrivial though.
- millstone 6y agoThis is an interesting point. Walking backwards through a UTF8 byte stream is easy: just look for the next non-continuation byte, and Rust really can do this, though the API is buried under `str.chars().rev()`. C++ is structured around iterators that point into; this enables e.g. writing into the guts of a std::map but not the guts of a std::string if you care about Unicode, since the write might change the string's byte length.