LCOV - code coverage report
Current view: top level - http_proto/impl - sink.ipp (source / functions) Hit Total Coverage
Test: coverage_filtered.info Lines: 15 15 100.0 %
Date: 2023-12-11 14:11:20 Functions: 1 1 100.0 %

          Line data    Source code
       1             : //
       2             : // Copyright (c) 2023 Vinnie Falco (vinnie.falco@gmail.com)
       3             : //
       4             : // Distributed under the Boost Software License, Version 1.0. (See accompanying
       5             : // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       6             : //
       7             : // Official repository: https://github.com/CPPAlliance/http_proto
       8             : //
       9             : 
      10             : #ifndef BOOST_HTTP_PROTO_IMPL_SINK_IPP
      11             : #define BOOST_HTTP_PROTO_IMPL_SINK_IPP
      12             : 
      13             : #include <boost/http_proto/sink.hpp>
      14             : 
      15             : namespace boost {
      16             : namespace http_proto {
      17             : 
      18             : auto
      19           5 : sink::
      20             : on_write(
      21             :     buffers::const_buffer_span bs,
      22             :     bool more) ->
      23             :         results
      24             : {
      25           5 :     auto it = bs.begin();
      26           5 :     auto const end_ = bs.end();
      27           5 :     results rv;
      28           5 :     if(it == end_)
      29           1 :         return rv;
      30           5 :     do
      31             :     {
      32           9 :         buffers::const_buffer b(*it++);
      33           9 :         rv += on_write(b,
      34           9 :             it != end_ ||
      35          18 :             more);
      36           9 :         if(rv.ec.failed())
      37           3 :             return rv;
      38             :     }
      39           6 :     while(it != end_);
      40           1 :     return rv;
      41             : }
      42             : 
      43             : } // http_proto
      44             : } // boost
      45             : 
      46             : #endif

Generated by: LCOV version 1.15