summaryrefslogtreecommitdiff
path: root/absl/strings/str_format.h
diff options
context:
space:
mode:
authorGravatar Marcin Kowalczyk <qrczak@google.com>2022-10-05 07:42:50 -0700
committerGravatar Copybara-Service <copybara-worker@google.com>2022-10-05 07:43:33 -0700
commitb3162b1da62711c663d0025e2eabeb83fd1f2728 (patch)
treeaa3eca5757799729c8302553b20196e0c0386f34 /absl/strings/str_format.h
parentd24156f63ca6d44a0dc05e260ad7810b2fcf3405 (diff)
Make sinks provided to `AbslStringify()` usable with `absl::Format()`.
Such sinks must define ADL-callable `AbslFormatFlush()`. It can just forward to `Append()`. PiperOrigin-RevId: 479043790 Change-Id: I5d7d80ca1e17adf03b77726df8a52e2b4e9196ce
Diffstat (limited to 'absl/strings/str_format.h')
-rw-r--r--absl/strings/str_format.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/absl/strings/str_format.h b/absl/strings/str_format.h
index e6537ea0..ffbcb9af 100644
--- a/absl/strings/str_format.h
+++ b/absl/strings/str_format.h
@@ -789,6 +789,11 @@ class FormatSink {
return sink_->PutPaddedString(v, width, precision, left);
}
+ // Support `absl::Format(&sink, format, args...)`.
+ friend void AbslFormatFlush(FormatSink* sink, absl::string_view v) {
+ sink->Append(v);
+ }
+
private:
friend str_format_internal::FormatSinkImpl;
explicit FormatSink(str_format_internal::FormatSinkImpl* s) : sink_(s) {}