yeah to be honest this was an artifact of a last-minute rebase; the code before worked entirely with `~str` for compatibility overall but now it needs to work with `StrBuf` instead for compatibility overall.  :)

I'll try to make the change you suggest (and move the `to_strbuf` up to post-`replace` call