diff options
Diffstat (limited to 'classllfio__v2__xxx_1_1io__handle.html')
-rw-r--r-- | classllfio__v2__xxx_1_1io__handle.html | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/classllfio__v2__xxx_1_1io__handle.html b/classllfio__v2__xxx_1_1io__handle.html index ab84789a..0970714b 100644 --- a/classllfio__v2__xxx_1_1io__handle.html +++ b/classllfio__v2__xxx_1_1io__handle.html @@ -435,7 +435,7 @@ flag </td><td class="memItemRight" valign="bottom"><b>_flags</b> {flag::non <p>Default constructor. </p> <dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>Why is io_result<buffers_type> not a standard layout type? </dd></dl> -<div class="fragment"><div class="line"><a name="l00253"></a><span class="lineno"> 253</span> {} <span class="comment">// NOLINT</span></div></div><!-- fragment --> +<div class="fragment"><div class="line"><a name="l00258"></a><span class="lineno"> 258</span> {} <span class="comment">// NOLINT</span></div></div><!-- fragment --> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> @@ -668,7 +668,7 @@ For portability, you can only assume that barriers write order for a single hand </table> </div><div class="memdoc"> <p>This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. </p> -<div class="fragment"><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>  {</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>  <span class="keywordtype">size_t</span> bytes = 0;</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> &i : reqs.buffers)</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>  {</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>  <span class="keywordflow">if</span>(bytes + i.size() < bytes)</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>  {</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>  <span class="keywordflow">return</span> errc::value_too_large;</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>  }</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>  bytes += i.size();</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>  }</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>  <span class="keywordflow">return</span> <a class="code" href="classllfio__v2__xxx_1_1io__handle.html#a29cc9f2525f78dd73f8402cb59d97212">lock</a>(reqs.offset, bytes, <span class="keyword">false</span>, d);</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>  }</div><div class="ttc" id="classllfio__v2__xxx_1_1io__handle_html_a29cc9f2525f78dd73f8402cb59d97212"><div class="ttname"><a href="classllfio__v2__xxx_1_1io__handle.html#a29cc9f2525f78dd73f8402cb59d97212">llfio_v2_xxx::io_handle::lock</a></div><div class="ttdeci">virtual result< extent_guard > lock(extent_type offset, extent_type bytes, bool exclusive=true, deadline d=deadline()) noexcept</div><div class="ttdoc">Tries to lock the range of bytes specified for shared or exclusive access. Be aware this passes throu...</div></div> +<div class="fragment"><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>  {</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>  <span class="keywordtype">size_t</span> bytes = 0;</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> &i : reqs.buffers)</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>  {</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>  <span class="keywordflow">if</span>(bytes + i.size() < bytes)</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>  {</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>  <span class="keywordflow">return</span> errc::value_too_large;</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>  }</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>  bytes += i.size();</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>  }</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>  <span class="keywordflow">return</span> <a class="code" href="classllfio__v2__xxx_1_1io__handle.html#a29cc9f2525f78dd73f8402cb59d97212">lock</a>(reqs.offset, bytes, <span class="keyword">false</span>, d);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>  }</div><div class="ttc" id="classllfio__v2__xxx_1_1io__handle_html_a29cc9f2525f78dd73f8402cb59d97212"><div class="ttname"><a href="classllfio__v2__xxx_1_1io__handle.html#a29cc9f2525f78dd73f8402cb59d97212">llfio_v2_xxx::io_handle::lock</a></div><div class="ttdeci">virtual result< extent_guard > lock(extent_type offset, extent_type bytes, bool exclusive=true, deadline d=deadline()) noexcept</div><div class="ttdoc">Tries to lock the range of bytes specified for shared or exclusive access. Be aware this passes throu...</div></div> </div><!-- fragment --> </div> </div> @@ -706,7 +706,7 @@ For portability, you can only assume that barriers write order for a single hand </table> </div><div class="memdoc"> <p>This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. </p> -<div class="fragment"><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>  {</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>  <span class="keywordtype">size_t</span> bytes = 0;</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> &i : reqs.buffers)</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>  {</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>  <span class="keywordflow">if</span>(bytes + i.size() < bytes)</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  {</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>  <span class="keywordflow">return</span> errc::value_too_large;</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>  }</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>  bytes += i.size();</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>  }</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>  <span class="keywordflow">return</span> <a class="code" href="classllfio__v2__xxx_1_1io__handle.html#a29cc9f2525f78dd73f8402cb59d97212">lock</a>(reqs.offset, bytes, <span class="keyword">true</span>, d);</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>  }</div><div class="ttc" id="classllfio__v2__xxx_1_1io__handle_html_a29cc9f2525f78dd73f8402cb59d97212"><div class="ttname"><a href="classllfio__v2__xxx_1_1io__handle.html#a29cc9f2525f78dd73f8402cb59d97212">llfio_v2_xxx::io_handle::lock</a></div><div class="ttdeci">virtual result< extent_guard > lock(extent_type offset, extent_type bytes, bool exclusive=true, deadline d=deadline()) noexcept</div><div class="ttdoc">Tries to lock the range of bytes specified for shared or exclusive access. Be aware this passes throu...</div></div> +<div class="fragment"><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  {</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>  <span class="keywordtype">size_t</span> bytes = 0;</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> &i : reqs.buffers)</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>  {</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>  <span class="keywordflow">if</span>(bytes + i.size() < bytes)</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>  {</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>  <span class="keywordflow">return</span> errc::value_too_large;</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>  }</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>  bytes += i.size();</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>  }</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>  <span class="keywordflow">return</span> <a class="code" href="classllfio__v2__xxx_1_1io__handle.html#a29cc9f2525f78dd73f8402cb59d97212">lock</a>(reqs.offset, bytes, <span class="keyword">true</span>, d);</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>  }</div><div class="ttc" id="classllfio__v2__xxx_1_1io__handle_html_a29cc9f2525f78dd73f8402cb59d97212"><div class="ttname"><a href="classllfio__v2__xxx_1_1io__handle.html#a29cc9f2525f78dd73f8402cb59d97212">llfio_v2_xxx::io_handle::lock</a></div><div class="ttdeci">virtual result< extent_guard > lock(extent_type offset, extent_type bytes, bool exclusive=true, deadline d=deadline()) noexcept</div><div class="ttdoc">Tries to lock the range of bytes specified for shared or exclusive access. Be aware this passes throu...</div></div> </div><!-- fragment --> </div> </div> @@ -859,7 +859,7 @@ For portability, you can only assume that barriers write order for a single hand </table> </div><div class="memdoc"> <p>This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. </p> -<div class="fragment"><div class="line"><a name="l00492"></a><span class="lineno"> 492</span> { <span class="keywordflow">return</span> <a class="code" href="classllfio__v2__xxx_1_1io__handle.html#a29cc9f2525f78dd73f8402cb59d97212">lock</a>(offset, bytes, exclusive, deadline(std::chrono::seconds(0))); }</div><div class="ttc" id="classllfio__v2__xxx_1_1io__handle_html_a29cc9f2525f78dd73f8402cb59d97212"><div class="ttname"><a href="classllfio__v2__xxx_1_1io__handle.html#a29cc9f2525f78dd73f8402cb59d97212">llfio_v2_xxx::io_handle::lock</a></div><div class="ttdeci">virtual result< extent_guard > lock(extent_type offset, extent_type bytes, bool exclusive=true, deadline d=deadline()) noexcept</div><div class="ttdoc">Tries to lock the range of bytes specified for shared or exclusive access. Be aware this passes throu...</div></div> +<div class="fragment"><div class="line"><a name="l00497"></a><span class="lineno"> 497</span> { <span class="keywordflow">return</span> <a class="code" href="classllfio__v2__xxx_1_1io__handle.html#a29cc9f2525f78dd73f8402cb59d97212">lock</a>(offset, bytes, exclusive, deadline(std::chrono::seconds(0))); }</div><div class="ttc" id="classllfio__v2__xxx_1_1io__handle_html_a29cc9f2525f78dd73f8402cb59d97212"><div class="ttname"><a href="classllfio__v2__xxx_1_1io__handle.html#a29cc9f2525f78dd73f8402cb59d97212">llfio_v2_xxx::io_handle::lock</a></div><div class="ttdeci">virtual result< extent_guard > lock(extent_type offset, extent_type bytes, bool exclusive=true, deadline d=deadline()) noexcept</div><div class="ttdoc">Tries to lock the range of bytes specified for shared or exclusive access. Be aware this passes throu...</div></div> </div><!-- fragment --> </div> </div> @@ -999,7 +999,7 @@ For portability, you can only assume that barriers write order for a single hand </table> </div><div class="memdoc"> <p>This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. </p> -<div class="fragment"><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>  {</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>  const_buffer_type *_reqs = <span class="keyword">reinterpret_cast<</span>const_buffer_type *<span class="keyword">></span>(alloca(<span class="keyword">sizeof</span>(const_buffer_type) * lst.size()));</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  memcpy(_reqs, lst.begin(), <span class="keyword">sizeof</span>(const_buffer_type) * lst.size());</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>  io_request<const_buffers_type> reqs(<a class="code" href="classllfio__v2__xxx_1_1io__handle.html#a693a8c64bb7de1a6835d6a151e37aa0e">const_buffers_type</a>(_reqs, lst.size()), offset);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  <span class="keyword">auto</span> ret = <a class="code" href="classllfio__v2__xxx_1_1io__handle.html#a83884eca7b4cd09125a5cf8a155e6052">write</a>(reqs, d);</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>  <span class="keywordflow">if</span>(ret)</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  {</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  <span class="keywordflow">return</span> ret.bytes_transferred();</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  }</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  <span class="keywordflow">return</span> ret.error();</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  }</div><div class="ttc" id="classllfio__v2__xxx_1_1io__handle_html_a693a8c64bb7de1a6835d6a151e37aa0e"><div class="ttname"><a href="classllfio__v2__xxx_1_1io__handle.html#a693a8c64bb7de1a6835d6a151e37aa0e">llfio_v2_xxx::io_handle::const_buffers_type</a></div><div class="ttdeci">span< const_buffer_type > const_buffers_type</div><div class="ttdoc">The gather buffers type used by this handle. Guaranteed to be TrivialType apart from construction...</div><div class="ttdef"><b>Definition:</b> io_handle.hpp:163</div></div> +<div class="fragment"><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>  {</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  const_buffer_type *_reqs = <span class="keyword">reinterpret_cast<</span>const_buffer_type *<span class="keyword">></span>(alloca(<span class="keyword">sizeof</span>(const_buffer_type) * lst.size()));</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  memcpy(_reqs, lst.begin(), <span class="keyword">sizeof</span>(const_buffer_type) * lst.size());</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  io_request<const_buffers_type> reqs(<a class="code" href="classllfio__v2__xxx_1_1io__handle.html#a693a8c64bb7de1a6835d6a151e37aa0e">const_buffers_type</a>(_reqs, lst.size()), offset);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  <span class="keyword">auto</span> ret = <a class="code" href="classllfio__v2__xxx_1_1io__handle.html#a83884eca7b4cd09125a5cf8a155e6052">write</a>(reqs, d);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  <span class="keywordflow">if</span>(ret)</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  {</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  <span class="keywordflow">return</span> ret.bytes_transferred();</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  }</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  <span class="keywordflow">return</span> std::move(ret).error();</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  }</div><div class="ttc" id="classllfio__v2__xxx_1_1io__handle_html_a693a8c64bb7de1a6835d6a151e37aa0e"><div class="ttname"><a href="classllfio__v2__xxx_1_1io__handle.html#a693a8c64bb7de1a6835d6a151e37aa0e">llfio_v2_xxx::io_handle::const_buffers_type</a></div><div class="ttdeci">span< const_buffer_type > const_buffers_type</div><div class="ttdoc">The gather buffers type used by this handle. Guaranteed to be TrivialType apart from construction...</div><div class="ttdef"><b>Definition:</b> io_handle.hpp:163</div></div> <div class="ttc" id="classllfio__v2__xxx_1_1io__handle_html_a83884eca7b4cd09125a5cf8a155e6052"><div class="ttname"><a href="classllfio__v2__xxx_1_1io__handle.html#a83884eca7b4cd09125a5cf8a155e6052">llfio_v2_xxx::io_handle::write</a></div><div class="ttdeci">virtual io_result< const_buffers_type > write(io_request< const_buffers_type > reqs, deadline d=deadline()) noexcept</div><div class="ttdoc">Write data to the open handle. </div></div> </div><!-- fragment --> </div> |