[#absl-LogStreamer] = xref:absl.adoc[absl]::LogStreamer :relfileprefix: ../ :mrdocs: Although you can stream into `LOG(INFO)`, you can't pass it into a function that takes a `std::ostream` parameter. `LogStreamer::stream()` provides a `std::ostream` that buffers everything that's streamed in. The buffer's contents are logged as if by `LOG` when the `LogStreamer` is destroyed. If nothing is streamed in, an empty message is logged. If the specified severity is `absl::LogSeverity::kFatal`, the program will be terminated when the `LogStreamer` is destroyed regardless of whether any data were streamed in. == Synopsis Declared in `<absl/log/log_streamer.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class LogStreamer final ---- == Description Factory functions corresponding to the `absl::LogSeverity` enumerators are provided for convenience; if the desired severity is variable, invoke the constructor directly. LogStreamer is movable, but not copyable. Examples: ShaveYakAndWriteToStream( yak, absl::LogInfoStreamer(*FILE*, *LINE*).stream()); { // This logs a single line containing data streamed by all three function // calls. absl::LogStreamer streamer(absl::LogSeverity::kInfo, *FILE*, *LINE*); ShaveYakAndWriteToStream(yak1, streamer.stream()); streamer.stream() << " "; ShaveYakAndWriteToStream(yak2, streamer.stream()); streamer.stream() << " "; ShaveYakAndWriteToStreamPointer(yak3, &streamer.stream()); } == Member Functions [cols="1,4"] |=== | Name| Description | xref:absl/LogStreamer/2constructor-029.adoc[`LogStreamer`] [.small]#[constructor]# | Constructors | xref:absl/LogStreamer/2destructor.adoc[`~LogStreamer`] [.small]#[destructor]# | Logs this LogStreamer's buffered content as if by LOG. | xref:absl/LogStreamer/operator_assign.adoc[`operator=`] | Logs this LogStreamer's current buffered content, then moves the state of `that` into this `LogStreamer`. | xref:absl/LogStreamer/stream.adoc[`stream`] | Returns the `std::ostream` to use to write into this LogStreamer's internal buffer. |=== == Non-Member Functions [cols="1,4"] |=== | Name| Description | xref:absl/LogDebugFatalStreamer-01.adoc[`LogDebugFatalStreamer`] | Returns a LogStreamer that writes at level LogSeverity::kLogDebugFatal. | xref:absl/LogDebugFatalStreamer-0f.adoc[`LogDebugFatalStreamer`] | Returns a LogStreamer that writes at level LogSeverity::kLogDebugFatal. | xref:absl/LogErrorStreamer-02.adoc[`LogErrorStreamer`] | Returns a LogStreamer that writes at level LogSeverity::kError. | xref:absl/LogErrorStreamer-08.adoc[`LogErrorStreamer`] | Returns a LogStreamer that writes at level LogSeverity::kError. | xref:absl/LogFatalStreamer-06.adoc[`LogFatalStreamer`] | Returns a LogStreamer that writes at level LogSeverity::kFatal. | xref:absl/LogFatalStreamer-09.adoc[`LogFatalStreamer`] | Returns a LogStreamer that writes at level LogSeverity::kFatal. | xref:absl/LogInfoStreamer-04.adoc[`LogInfoStreamer`] | Returns a LogStreamer that writes at level LogSeverity::kInfo. | xref:absl/LogInfoStreamer-05.adoc[`LogInfoStreamer`] | Returns a LogStreamer that writes at level LogSeverity::kInfo. | xref:absl/LogWarningStreamer-07.adoc[`LogWarningStreamer`] | Returns a LogStreamer that writes at level LogSeverity::kWarning. | xref:absl/LogWarningStreamer-0c.adoc[`LogWarningStreamer`] | Returns a LogStreamer that writes at level LogSeverity::kWarning. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#