common/StackStringStream: optimize xsputn() and overflow()
use the internal buffer semantics provided by
basic_streambuf, in hope to improve the performance when a single
character is inserted into buf.
* xsputn(): use memcpy() directly instead of creating a temporary
string_view
* overflow(): overflow() should be called only if the internal buffer
overflows when a single character is put into the streambuf. so
we can use the fact that the size of inserted buffer is known,
and use push_back() instead.
also, please see libstdc++'s implementation of basic_streambuf::sputc(),
where __builtin_expect() is used to instruct the compiler that
the non-overflow branch is more likely to be chosen. so, we need
to optimize for that branch. hence this change.
* remove the no-more-used push() method