void DS::Stream::writeString(const ST::string& value, DS::StringType format) { if (format == e_StringUTF16) { ST::utf16_buffer buffer = value.to_utf16(); writeBytes(buffer.data(), buffer.size() * sizeof(char16_t)); } else { ST::char_buffer buffer = (format == e_StringUTF8) ? value.to_utf8() : value.to_latin_1(ST::substitute_invalid); writeBytes(buffer.data(), buffer.size() * sizeof(char)); } }