This commit is contained in:
rozmansi
2023-10-12 11:52:42 +00:00
parent d55044a78c
commit f5a95f7bf5
448 changed files with 22091 additions and 17428 deletions

View File

@@ -97,20 +97,23 @@ Inheritance diagram for stdex::stream::basic:</div>
<map id="stdex::stream::basic_map" name="stdex::stream::basic_map">
<area href="classstdex_1_1stream_1_1basic__file.html" title="Basic seekable stream operations." alt="stdex::stream::basic_file" shape="rect" coords="0,56,256,80"/>
<area href="classstdex_1_1stream_1_1basic__sys.html" title="OS data stream (file, pipe, socket...)" alt="stdex::stream::basic_sys" shape="rect" coords="532,56,788,80"/>
<area href="classstdex_1_1stream_1_1converter.html" title="Modifies data on the fly when reading from/writing to a source stream." alt="stdex::stream::converter" shape="rect" coords="798,56,1054,80"/>
<area href="classstdex_1_1stream_1_1converter.html" title="Modifies data on the fly when reading from/writing to a source stream. Could also be used to modify r..." alt="stdex::stream::converter" shape="rect" coords="798,56,1054,80"/>
<area href="classstdex_1_1stream_1_1fifo.html" title="In-memory FIFO queue." alt="stdex::stream::fifo" shape="rect" coords="1064,56,1320,80"/>
<area href="classstdex_1_1stream_1_1replicator.html" title="Replicates writing of the same data to multiple streams." alt="stdex::stream::replicator" shape="rect" coords="1330,56,1586,80"/>
<area href="classstdex_1_1stream_1_1socket.html" title="Socket stream." alt="stdex::stream::socket" shape="rect" coords="1596,56,1852,80"/>
<area href="classstdex_1_1stream_1_1cache.html" title="Cached file." alt="stdex::stream::cache" shape="rect" coords="266,112,522,136"/>
<area href="classstdex_1_1stream_1_1diag__file.html" title="Compares multiple files to perform the same." alt="stdex::stream::diag_file" shape="rect" coords="266,168,522,192"/>
<area href="classstdex_1_1stream_1_1file.html" title="File-system file." alt="stdex::stream::file" shape="rect" coords="266,224,522,248"/>
<area href="classstdex_1_1stream_1_1file__window.html" title="Limits file reading/writing to a predefined window." alt="stdex::stream::file_window" shape="rect" coords="266,280,522,304"/>
<area href="classstdex_1_1stream_1_1memory__file.html" title="In-memory file." alt="stdex::stream::memory_file" shape="rect" coords="266,336,522,360"/>
<area href="classstdex_1_1stream_1_1file.html" title="File-system file." alt="stdex::stream::file" shape="rect" coords="532,112,788,136"/>
<area href="classstdex_1_1stream_1_1async__reader.html" title="Provides read-ahead stream capability." alt="stdex::stream::async_reader&lt; CAPACITY &gt;" shape="rect" coords="1064,112,1320,136"/>
<area href="classstdex_1_1stream_1_1async__writer.html" title="Provides write-back stream capability." alt="stdex::stream::async_writer&lt; CAPACITY &gt;" shape="rect" coords="1064,168,1320,192"/>
<area href="classstdex_1_1stream_1_1buffer.html" title="Buffered read/write stream." alt="stdex::stream::buffer" shape="rect" coords="1064,224,1320,248"/>
<area href="classstdex_1_1stream_1_1limiter.html" title="Limits reading from/writing to stream to a predefined number of bytes." alt="stdex::stream::limiter" shape="rect" coords="1064,280,1320,304"/>
<area href="classstdex_1_1stream__hasher.html" title="Hashes read to or write from data of the stream." alt="stdex::stream_hasher&lt; T &gt;" shape="rect" coords="1064,336,1320,360"/>
<area href="classstdex_1_1base64__reader.html" title="Converts from Base64 when reading from a stream." alt="stdex::base64_reader" shape="rect" coords="1064,112,1320,136"/>
<area href="classstdex_1_1base64__writer.html" title="Converts to Base64 when writing to a stream." alt="stdex::base64_writer" shape="rect" coords="1064,168,1320,192"/>
<area href="classstdex_1_1stream_1_1async__reader.html" title="Provides read-ahead stream capability." alt="stdex::stream::async_reader&lt; CAPACITY &gt;" shape="rect" coords="1064,224,1320,248"/>
<area href="classstdex_1_1stream_1_1async__writer.html" title="Provides write-back stream capability." alt="stdex::stream::async_writer&lt; CAPACITY &gt;" shape="rect" coords="1064,280,1320,304"/>
<area href="classstdex_1_1stream_1_1buffer.html" title="Buffered read/write stream." alt="stdex::stream::buffer" shape="rect" coords="1064,336,1320,360"/>
<area href="classstdex_1_1stream_1_1limiter.html" title="Limits reading from/writing to stream to a predefined number of bytes." alt="stdex::stream::limiter" shape="rect" coords="1064,392,1320,416"/>
<area href="classstdex_1_1stream__hasher.html" title="Hashes read to or write from data of the stream." alt="stdex::stream_hasher&lt; T &gt;" shape="rect" coords="1064,448,1320,472"/>
</map>
</div></div>
<table class="memberdecls">
@@ -207,6 +210,10 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>write_byte</b> (uint8
<tr class="memitem:a815369ef1a8ba07b289b8236fce018ac"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classstdex_1_1stream_1_1basic.html">basic</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classstdex_1_1stream_1_1basic.html#a815369ef1a8ba07b289b8236fce018ac">write_str</a> (const T *data)</td></tr>
<tr class="memdesc:a815369ef1a8ba07b289b8236fce018ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes string to the stream length-prefixed. <br /></td></tr>
<tr class="separator:a815369ef1a8ba07b289b8236fce018ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca727d3cab3c7989f691957078a18471" id="r_aca727d3cab3c7989f691957078a18471"><td class="memTemplParams" colspan="2">template&lt;class _Elem , class _Traits = std::char_traits&lt;_Elem&gt;, class _Ax = std::allocator&lt;_Elem&gt;&gt; </td></tr>
<tr class="memitem:aca727d3cab3c7989f691957078a18471"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classstdex_1_1stream_1_1basic.html">basic</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classstdex_1_1stream_1_1basic.html#aca727d3cab3c7989f691957078a18471">write_str</a> (const std::basic_string&lt; _Elem, _Traits, _Ax &gt; &amp;data)</td></tr>
<tr class="memdesc:aca727d3cab3c7989f691957078a18471"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes string to the stream length-prefixed. <br /></td></tr>
<tr class="separator:aca727d3cab3c7989f691957078a18471"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad28b193e6afa1352a00864bd28193cc2" id="r_ad28b193e6afa1352a00864bd28193cc2"><td class="memItemLeft" align="right" valign="top">fsize_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classstdex_1_1stream_1_1basic.html#ad28b193e6afa1352a00864bd28193cc2">write_stream</a> (<a class="el" href="classstdex_1_1stream_1_1basic.html">basic</a> &amp;stream, fsize_t amount=fsize_max)</td></tr>
<tr class="memdesc:ad28b193e6afa1352a00864bd28193cc2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes content of another stream. <br /></td></tr>
<tr class="separator:ad28b193e6afa1352a00864bd28193cc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -300,6 +307,34 @@ template&lt;class _Elem , class _Traits = std::char_traits&lt;_Elem&gt;, class
template&lt;class T &gt; </td></tr>
<tr class="memitem:a8c29727e2c211134c0249352bbd13ed6"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classstdex_1_1stream_1_1basic.html">basic</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><b>operator&lt;&lt;</b> (const T *data)</td></tr>
<tr class="separator:a8c29727e2c211134c0249352bbd13ed6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0f6075a669ff51ec44ee4832dc41f2f" id="r_ac0f6075a669ff51ec44ee4832dc41f2f"><td class="memTemplParams" colspan="2"><a id="ac0f6075a669ff51ec44ee4832dc41f2f" name="ac0f6075a669ff51ec44ee4832dc41f2f"></a>
template&lt;class _Elem , class _Traits = std::char_traits&lt;_Elem&gt;, class _Ax = std::allocator&lt;_Elem&gt;&gt; </td></tr>
<tr class="memitem:ac0f6075a669ff51ec44ee4832dc41f2f"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classstdex_1_1stream_1_1basic.html">basic</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><b>operator&lt;&lt;</b> (const std::basic_string&lt; _Elem, _Traits, _Ax &gt; &amp;data)</td></tr>
<tr class="separator:ac0f6075a669ff51ec44ee4832dc41f2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95cdd577d5718dde5756951d487d29dd" id="r_a95cdd577d5718dde5756951d487d29dd"><td class="memTemplParams" colspan="2"><a id="a95cdd577d5718dde5756951d487d29dd" name="a95cdd577d5718dde5756951d487d29dd"></a>
template&lt;class _Ty , class _Alloc = std::allocator&lt;_Ty&gt;&gt; </td></tr>
<tr class="memitem:a95cdd577d5718dde5756951d487d29dd"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classstdex_1_1stream_1_1basic.html">basic</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><b>operator&lt;&lt;</b> (const std::vector&lt; _Ty, _Alloc &gt; &amp;data)</td></tr>
<tr class="separator:a95cdd577d5718dde5756951d487d29dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1844edc85161c2ae37bb9123acc4c466" id="r_a1844edc85161c2ae37bb9123acc4c466"><td class="memTemplParams" colspan="2"><a id="a1844edc85161c2ae37bb9123acc4c466" name="a1844edc85161c2ae37bb9123acc4c466"></a>
template&lt;class _Ty , class _Alloc = std::allocator&lt;_Ty&gt;&gt; </td></tr>
<tr class="memitem:a1844edc85161c2ae37bb9123acc4c466"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classstdex_1_1stream_1_1basic.html">basic</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><b>operator&gt;&gt;</b> (std::vector&lt; _Ty, _Alloc &gt; &amp;data)</td></tr>
<tr class="separator:a1844edc85161c2ae37bb9123acc4c466"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d9110b6e3fc398c8333a0859585724c" id="r_a1d9110b6e3fc398c8333a0859585724c"><td class="memTemplParams" colspan="2"><a id="a1d9110b6e3fc398c8333a0859585724c" name="a1d9110b6e3fc398c8333a0859585724c"></a>
template&lt;class _Kty , class _Pr = std::less&lt;_Kty&gt;, class _Alloc = std::allocator&lt;_Kty&gt;&gt; </td></tr>
<tr class="memitem:a1d9110b6e3fc398c8333a0859585724c"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classstdex_1_1stream_1_1basic.html">basic</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><b>operator&lt;&lt;</b> (const std::set&lt; _Kty, _Pr, _Alloc &gt; &amp;data)</td></tr>
<tr class="separator:a1d9110b6e3fc398c8333a0859585724c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd1aa05b14e06b30fdd2fb9263976894" id="r_abd1aa05b14e06b30fdd2fb9263976894"><td class="memTemplParams" colspan="2"><a id="abd1aa05b14e06b30fdd2fb9263976894" name="abd1aa05b14e06b30fdd2fb9263976894"></a>
template&lt;class _Kty , class _Pr = std::less&lt;_Kty&gt;, class _Alloc = std::allocator&lt;_Kty&gt;&gt; </td></tr>
<tr class="memitem:abd1aa05b14e06b30fdd2fb9263976894"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classstdex_1_1stream_1_1basic.html">basic</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><b>operator&gt;&gt;</b> (std::set&lt; _Kty, _Pr, _Alloc &gt; &amp;data)</td></tr>
<tr class="separator:abd1aa05b14e06b30fdd2fb9263976894"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbb6565d9b47803ff19a2b3057e0f655" id="r_abbb6565d9b47803ff19a2b3057e0f655"><td class="memTemplParams" colspan="2"><a id="abbb6565d9b47803ff19a2b3057e0f655" name="abbb6565d9b47803ff19a2b3057e0f655"></a>
template&lt;class _Kty , class _Pr = std::less&lt;_Kty&gt;, class _Alloc = std::allocator&lt;_Kty&gt;&gt; </td></tr>
<tr class="memitem:abbb6565d9b47803ff19a2b3057e0f655"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classstdex_1_1stream_1_1basic.html">basic</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><b>operator&lt;&lt;</b> (const std::multiset&lt; _Kty, _Pr, _Alloc &gt; &amp;data)</td></tr>
<tr class="separator:abbb6565d9b47803ff19a2b3057e0f655"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a357d336d6a7ff9cf2ee6b0d441fd2551" id="r_a357d336d6a7ff9cf2ee6b0d441fd2551"><td class="memTemplParams" colspan="2"><a id="a357d336d6a7ff9cf2ee6b0d441fd2551" name="a357d336d6a7ff9cf2ee6b0d441fd2551"></a>
template&lt;class _Kty , class _Pr = std::less&lt;_Kty&gt;, class _Alloc = std::allocator&lt;_Kty&gt;&gt; </td></tr>
<tr class="memitem:a357d336d6a7ff9cf2ee6b0d441fd2551"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classstdex_1_1stream_1_1basic.html">basic</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><b>operator&gt;&gt;</b> (std::multiset&lt; _Kty, _Pr, _Alloc &gt; &amp;data)</td></tr>
<tr class="separator:a357d336d6a7ff9cf2ee6b0d441fd2551"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
@@ -338,7 +373,7 @@ state_t&#160;</td><td class="memItemRight" valign="bottom"><b>m_state</b></td></
<p>Closes the stream. </p>
<p>Reimplemented in <a class="el" href="classstdex_1_1stream_1_1converter.html#a96c368204acf32239318a026762cd22c">stdex::stream::converter</a>, <a class="el" href="classstdex_1_1stream_1_1replicator.html#afa3e2cec6e254e7bb53cc5e1b1ea0f90">stdex::stream::replicator</a>, <a class="el" href="classstdex_1_1stream_1_1file__window.html#acace60a7ba95a139852f85aa4232bb14">stdex::stream::file_window</a>, <a class="el" href="classstdex_1_1stream_1_1cache.html#aa88074bb669bcb654e027b76e32a2799">stdex::stream::cache</a>, <a class="el" href="classstdex_1_1stream_1_1basic__sys.html#aee56fbeb8b576a4337cb205ae865fafc">stdex::stream::basic_sys</a>, <a class="el" href="classstdex_1_1stream_1_1memory__file.html#a4cf33faaf1686335bd3e3a7e72813dd6">stdex::stream::memory_file</a>, <a class="el" href="classstdex_1_1stream_1_1fifo.html#a29e0a95836f4e2692bea3783acaf692d">stdex::stream::fifo</a>, and <a class="el" href="classstdex_1_1stream_1_1diag__file.html#a4367a6d2840c1a2c5d9ab2ab3483ed2c">stdex::stream::diag_file</a>.</p>
<p>Reimplemented in <a class="el" href="classstdex_1_1stream_1_1converter.html#a96c368204acf32239318a026762cd22c">stdex::stream::converter</a>, <a class="el" href="classstdex_1_1stream_1_1replicator.html#afa3e2cec6e254e7bb53cc5e1b1ea0f90">stdex::stream::replicator</a>, <a class="el" href="classstdex_1_1stream_1_1file__window.html#acace60a7ba95a139852f85aa4232bb14">stdex::stream::file_window</a>, <a class="el" href="classstdex_1_1stream_1_1cache.html#aa88074bb669bcb654e027b76e32a2799">stdex::stream::cache</a>, <a class="el" href="classstdex_1_1stream_1_1basic__sys.html#aee56fbeb8b576a4337cb205ae865fafc">stdex::stream::basic_sys</a>, <a class="el" href="classstdex_1_1stream_1_1socket.html#a74e2f261c117cf8f20866632fb79b3c5">stdex::stream::socket</a>, <a class="el" href="classstdex_1_1stream_1_1memory__file.html#a4cf33faaf1686335bd3e3a7e72813dd6">stdex::stream::memory_file</a>, <a class="el" href="classstdex_1_1stream_1_1fifo.html#a29e0a95836f4e2692bea3783acaf692d">stdex::stream::fifo</a>, and <a class="el" href="classstdex_1_1stream_1_1diag__file.html#a4367a6d2840c1a2c5d9ab2ab3483ed2c">stdex::stream::diag_file</a>.</p>
</div>
</div>
@@ -415,7 +450,7 @@ state_t&#160;</td><td class="memItemRight" valign="bottom"><b>m_state</b></td></
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bytes succesfully read. On EOF, 0 is returned and stream state is set to state_t::eof. On error, 0 is returned and stream state is set to state_t::fail. On null reads (length == 0), 0 is returned and stream state is set to state_t::ok. </dd></dl>
<p>Reimplemented in <a class="el" href="classstdex_1_1stream__hasher.html#a9727f0c56f11978c2df6e31e8509a38b">stdex::stream_hasher&lt; T &gt;</a>, <a class="el" href="classstdex_1_1stream_1_1converter.html#abdca66af4847c6f8b6d87a0909fc061f">stdex::stream::converter</a>, <a class="el" href="classstdex_1_1stream_1_1async__reader.html#a841c1e3cb01cb96df94701465086a529">stdex::stream::async_reader&lt; CAPACITY &gt;</a>, <a class="el" href="classstdex_1_1stream_1_1buffer.html#a2ef05f2df784dce1d1c4319a98cd22e0">stdex::stream::buffer</a>, <a class="el" href="classstdex_1_1stream_1_1limiter.html#a80b68f1b4a8fb8c72c09b1313e9d02ed">stdex::stream::limiter</a>, <a class="el" href="classstdex_1_1stream_1_1window.html#a45f2420dfc94c07e101186ae2e541e13">stdex::stream::window</a>, <a class="el" href="classstdex_1_1stream_1_1file__window.html#a9cdfe9f40ccb1f84e121b1b949a21246">stdex::stream::file_window</a>, <a class="el" href="classstdex_1_1stream_1_1cache.html#a43dd464dd032888de79f5cd606adffa9">stdex::stream::cache</a>, <a class="el" href="classstdex_1_1stream_1_1basic__sys.html#ad5daf3c776b615dcfbb0b0891afdb9d0">stdex::stream::basic_sys</a>, <a class="el" href="classstdex_1_1stream_1_1memory__file.html#a62a05e7dfb1f374dff881f922543e601">stdex::stream::memory_file</a>, <a class="el" href="classstdex_1_1stream_1_1fifo.html#a84357513740c64a8317370b289c34e40">stdex::stream::fifo</a>, and <a class="el" href="classstdex_1_1stream_1_1diag__file.html#ac1eaf4a0cfce7e4426cff5f32fc33e6e">stdex::stream::diag_file</a>.</p>
<p>Reimplemented in <a class="el" href="classstdex_1_1base64__reader.html#af93e15e15612233224b39fc7324cc5ee">stdex::base64_reader</a>, <a class="el" href="classstdex_1_1stream__hasher.html#a9727f0c56f11978c2df6e31e8509a38b">stdex::stream_hasher&lt; T &gt;</a>, <a class="el" href="classstdex_1_1stream_1_1converter.html#abdca66af4847c6f8b6d87a0909fc061f">stdex::stream::converter</a>, <a class="el" href="classstdex_1_1stream_1_1async__reader.html#a841c1e3cb01cb96df94701465086a529">stdex::stream::async_reader&lt; CAPACITY &gt;</a>, <a class="el" href="classstdex_1_1stream_1_1buffer.html#a2ef05f2df784dce1d1c4319a98cd22e0">stdex::stream::buffer</a>, <a class="el" href="classstdex_1_1stream_1_1limiter.html#a80b68f1b4a8fb8c72c09b1313e9d02ed">stdex::stream::limiter</a>, <a class="el" href="classstdex_1_1stream_1_1window.html#a45f2420dfc94c07e101186ae2e541e13">stdex::stream::window</a>, <a class="el" href="classstdex_1_1stream_1_1file__window.html#a9cdfe9f40ccb1f84e121b1b949a21246">stdex::stream::file_window</a>, <a class="el" href="classstdex_1_1stream_1_1cache.html#a43dd464dd032888de79f5cd606adffa9">stdex::stream::cache</a>, <a class="el" href="classstdex_1_1stream_1_1basic__sys.html#ad5daf3c776b615dcfbb0b0891afdb9d0">stdex::stream::basic_sys</a>, <a class="el" href="classstdex_1_1stream_1_1socket.html#ad4d8e1368be57d2bd5abd971d880bc79">stdex::stream::socket</a>, <a class="el" href="classstdex_1_1stream_1_1memory__file.html#a62a05e7dfb1f374dff881f922543e601">stdex::stream::memory_file</a>, <a class="el" href="classstdex_1_1stream_1_1fifo.html#a84357513740c64a8317370b289c34e40">stdex::stream::fifo</a>, and <a class="el" href="classstdex_1_1stream_1_1diag__file.html#ac1eaf4a0cfce7e4426cff5f32fc33e6e">stdex::stream::diag_file</a>.</p>
</div>
</div>
@@ -826,7 +861,7 @@ template&lt;class T_from , class T_to , class _Traits = std::char_traits&lt;T_t
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bytes succesfully written. On error, stream state is set to state_t::fail. </dd></dl>
<p>Reimplemented in <a class="el" href="classstdex_1_1stream__hasher.html#aea835790f7aba9fb6ad28363eaaf736b">stdex::stream_hasher&lt; T &gt;</a>, <a class="el" href="classstdex_1_1stream_1_1converter.html#ae84a5c8d64942dbaa81ed54a181b3d7a">stdex::stream::converter</a>, <a class="el" href="classstdex_1_1stream_1_1replicator.html#abbbaa912a887b00a4a7a5d518079f5ec">stdex::stream::replicator</a>, <a class="el" href="classstdex_1_1stream_1_1async__writer.html#a39d3fc4fffb8aa9b971fa15beaa8149b">stdex::stream::async_writer&lt; CAPACITY &gt;</a>, <a class="el" href="classstdex_1_1stream_1_1buffer.html#a489a01a4c187e85f06ebe10314a891ae">stdex::stream::buffer</a>, <a class="el" href="classstdex_1_1stream_1_1limiter.html#a8fe783b504f019e29034c0572cec7834">stdex::stream::limiter</a>, <a class="el" href="classstdex_1_1stream_1_1window.html#a06f05191c35fdbadebc49e05a19d9f3c">stdex::stream::window</a>, <a class="el" href="classstdex_1_1stream_1_1file__window.html#a7a264381cf344fcd6fa70e0a4964cc93">stdex::stream::file_window</a>, <a class="el" href="classstdex_1_1stream_1_1cache.html#ac436fbcac7eddf95b6e25d6368da3fb7">stdex::stream::cache</a>, <a class="el" href="classstdex_1_1stream_1_1basic__sys.html#a06666e09bf1e7486d277996267b51618">stdex::stream::basic_sys</a>, <a class="el" href="classstdex_1_1stream_1_1memory__file.html#ae5b6602e176f1053ab2eef88d8312b49">stdex::stream::memory_file</a>, <a class="el" href="classstdex_1_1stream_1_1fifo.html#a30c7adb43b6f4bd0cb5d9c72f15fe9bf">stdex::stream::fifo</a>, and <a class="el" href="classstdex_1_1stream_1_1diag__file.html#a3157aee8e9c754b02e876897fcb82236">stdex::stream::diag_file</a>.</p>
<p>Reimplemented in <a class="el" href="classstdex_1_1base64__writer.html#aaca6933a48a0266e4e46cc93b03ef410">stdex::base64_writer</a>, <a class="el" href="classstdex_1_1stream__hasher.html#aea835790f7aba9fb6ad28363eaaf736b">stdex::stream_hasher&lt; T &gt;</a>, <a class="el" href="classstdex_1_1stream_1_1converter.html#ae84a5c8d64942dbaa81ed54a181b3d7a">stdex::stream::converter</a>, <a class="el" href="classstdex_1_1stream_1_1replicator.html#abbbaa912a887b00a4a7a5d518079f5ec">stdex::stream::replicator</a>, <a class="el" href="classstdex_1_1stream_1_1async__writer.html#a39d3fc4fffb8aa9b971fa15beaa8149b">stdex::stream::async_writer&lt; CAPACITY &gt;</a>, <a class="el" href="classstdex_1_1stream_1_1buffer.html#a489a01a4c187e85f06ebe10314a891ae">stdex::stream::buffer</a>, <a class="el" href="classstdex_1_1stream_1_1limiter.html#a8fe783b504f019e29034c0572cec7834">stdex::stream::limiter</a>, <a class="el" href="classstdex_1_1stream_1_1window.html#a06f05191c35fdbadebc49e05a19d9f3c">stdex::stream::window</a>, <a class="el" href="classstdex_1_1stream_1_1file__window.html#a7a264381cf344fcd6fa70e0a4964cc93">stdex::stream::file_window</a>, <a class="el" href="classstdex_1_1stream_1_1cache.html#ac436fbcac7eddf95b6e25d6368da3fb7">stdex::stream::cache</a>, <a class="el" href="classstdex_1_1stream_1_1basic__sys.html#a06666e09bf1e7486d277996267b51618">stdex::stream::basic_sys</a>, <a class="el" href="classstdex_1_1stream_1_1socket.html#ad83f6d5d4844092e9e6831a597c6e2e9">stdex::stream::socket</a>, <a class="el" href="classstdex_1_1stream_1_1memory__file.html#ae5b6602e176f1053ab2eef88d8312b49">stdex::stream::memory_file</a>, <a class="el" href="classstdex_1_1stream_1_1fifo.html#a30c7adb43b6f4bd0cb5d9c72f15fe9bf">stdex::stream::fifo</a>, and <a class="el" href="classstdex_1_1stream_1_1diag__file.html#a3157aee8e9c754b02e876897fcb82236">stdex::stream::diag_file</a>.</p>
</div>
</div>
@@ -1152,10 +1187,48 @@ template&lt;class T &gt; </div>
<p>Writes formatted string to the stream. </p>
<dl class="section return"><dt>Returns</dt><dd>Number of characters written </dd></dl>
</div>
</div>
<a id="aca727d3cab3c7989f691957078a18471" name="aca727d3cab3c7989f691957078a18471"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca727d3cab3c7989f691957078a18471">&#9670;&#160;</a></span>write_str() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class _Elem , class _Traits = std::char_traits&lt;_Elem&gt;, class _Ax = std::allocator&lt;_Elem&gt;&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classstdex_1_1stream_1_1basic.html">basic</a> &amp; stdex::stream::basic::write_str </td>
<td>(</td>
<td class="paramtype">const std::basic_string&lt; _Elem, _Traits, _Ax &gt; &amp;&#160;</td>
<td class="paramname"><em>data</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Writes string to the stream length-prefixed. </p>
<p>This method is intended for chaining: e.g. stream.write_str(a).write_str(b).write_str(c)... Since it would make it impossible to detect if any of the write_str(a) or write_str(b) failed should write_str(c) succeed, the method skips writing if stream state is not ok.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>String to write</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This stream </dd></dl>
</div>
</div>
<a id="a815369ef1a8ba07b289b8236fce018ac" name="a815369ef1a8ba07b289b8236fce018ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a815369ef1a8ba07b289b8236fce018ac">&#9670;&#160;</a></span>write_str()</h2>
<h2 class="memtitle"><span class="permalink"><a href="#a815369ef1a8ba07b289b8236fce018ac">&#9670;&#160;</a></span>write_str() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
@@ -1327,7 +1400,7 @@ template&lt;class T &gt; </div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Mon Sep 25 2023 13:06:11 for stdex by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
Generated on Thu Oct 12 2023 11:52:39 for stdex by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>