diff options
author | Andy Getzendanner <durandal@google.com> | 2022-11-28 15:14:27 -0800 |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2022-11-28 15:15:24 -0800 |
commit | 13708db87b1ab69f4f2b3214f3f51e986546f282 (patch) | |
tree | 9fc8df2738e52ed2f1b23d5438bccfba80114957 /absl/log/internal/append_truncated.h | |
parent | 558a0e466c6328b835eeba81e77f2a88a6a90f3c (diff) |
Write (more) directly into the structured buffer from StringifySink, including for (size_t, char) overload.
PiperOrigin-RevId: 491456410
Change-Id: I76dec24b0bd02204fa38419af9247cee38b1cf50
Diffstat (limited to 'absl/log/internal/append_truncated.h')
-rw-r--r-- | absl/log/internal/append_truncated.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/absl/log/internal/append_truncated.h b/absl/log/internal/append_truncated.h index 096b7517..f0e7912c 100644 --- a/absl/log/internal/append_truncated.h +++ b/absl/log/internal/append_truncated.h @@ -33,6 +33,13 @@ inline size_t AppendTruncated(absl::string_view src, absl::Span<char> &dst) { dst.remove_prefix(src.size()); return src.size(); } +// Likewise, but `n` copies of `c`. +inline size_t AppendTruncated(char c, size_t n, absl::Span<char> &dst) { + if (n > dst.size()) n = dst.size(); + memset(dst.data(), c, n); + dst.remove_prefix(n); + return n; +} } // namespace log_internal ABSL_NAMESPACE_END } // namespace absl |