[#BloombergLP-bslfmt-Streamed-0f9]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslfmt.adoc[bslfmt]::Streamed
:relfileprefix: ../../
:mrdocs:

This class provides a wrapper to enable a streamable type to be used with `bsl&colon;&colon;format` (and `std&colon;&colon;format`) when no formatter specialization is provided (the type is not formattable)&period; Note that it is possible to use this wrapper with types that have a formatter, if the compiler supports it we give a compilation warning directing the user to use the existing formatter instead of wrapping to use the streaming operator&period;

== Synopsis

Declared in `&lt;bslfmt&lowbar;streamed&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class t&lowbar;STREAMABLE&gt;
class Streamed;
----

== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bslfmt/Streamed-0f9/2constructor-00.adoc[`Streamed`]         [.small]#[constructor]#
| Constructors
| xref:BloombergLP/bslfmt/Streamed-0f9/object.adoc[`object`] 
| Return a non&hyphen;modifiable reference to the wrapped object&period;
|===


== Friends

[cols="1,4"]
|===
| Name| Description
| `xref:BloombergLP/bslfmt/streamed-05.adoc[BloombergLP::bslfmt::streamed]`
| Create and return a `Streamed` wrapper for the specified `object` when `t&lowbar;STREAMABLE2` is already formattable (emits a deprecation warning)&period;
| `xref:BloombergLP/bslfmt/streamed-0f3.adoc[BloombergLP::bslfmt::streamed]`
| Create and return a `Streamed` wrapper for the specified `object` when `t&lowbar;STREAMABLE2` is not formattable&period;
|===

== Non-Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bslfmt/streamed-09.adoc[`streamed`]
| Create and return a `bslfmt&colon;&colon;Streamed` (wrapper) object for the specified streamable `object`&period; The behavior is undefined unless `t&lowbar;STREAMABLE` has a standard and well&hyphen;behaved `std&colon;&colon;ostream` output operator&period; This wrapper&hyphen;creator free function to support compilation with no CTAD (Class Template Argument Deduction)&semi; see (&num;Usage)&period; Notice that for compilations that support the `bsl&colon;&colon;formattable` trait we define two concept&hyphen;driven overloads of this function, one of which will warn the user (compiler warning) if a `bsl&colon;&colon;formatter` already exists for the type they try to streamed&hyphen;wrap&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
