/usr/include/boost/beast/core/impl
NameSizeModeActions
async_base.hpp36370644editdlrm
basic_stream.hpp268060644editdlrm
buffered_read_stream.hpp71960644editdlrm
buffers_adaptor.hpp158870644editdlrm
buffers_cat.hpp106250644editdlrm
buffers_prefix.hpp74710644editdlrm
buffers_suffix.hpp49690644editdlrm
error.hpp8580644editdlrm
error.ipp19950644editdlrm
file_posix.ipp68970644editdlrm
file_stdio.ipp60790644editdlrm
file_win32.ipp99720644editdlrm
flat_buffer.hpp119000644editdlrm
flat_static_buffer.hpp10150644editdlrm
flat_static_buffer.ipp17620644editdlrm
flat_stream.hpp77920644editdlrm
multi_buffer.hpp306130644editdlrm
read_size.hpp19890644editdlrm
saved_handler.hpp42940644editdlrm
saved_handler.ipp13910644editdlrm
static_buffer.hpp10390644editdlrm
static_buffer.ipp29580644editdlrm
static_string.hpp143160644editdlrm
string.ipp14440644editdlrm
string_param.hpp21500644editdlrm
Edit: /usr/include/boost/beast/core/impl/read_size.hpp (1989B)
// // Copyright (c) 2016-2019 Vinnie Falco (vinnie dot falco at gmail dot com) // // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // // Official repository: https://github.com/boostorg/beast // #ifndef BOOST_BEAST_IMPL_READ_SIZE_HPP #define BOOST_BEAST_IMPL_READ_SIZE_HPP #include #include #include #include namespace boost { namespace beast { namespace detail { template struct has_read_size_helper : std::false_type {}; template struct has_read_size_helper(), 512), (void)0)> : std::true_type { }; template std::size_t read_size(DynamicBuffer& buffer, std::size_t max_size, std::true_type) { return read_size_helper(buffer, max_size); } template std::size_t read_size(DynamicBuffer& buffer, std::size_t max_size, std::false_type) { static_assert( net::is_dynamic_buffer::value, "DynamicBuffer type requirements not met"); auto const size = buffer.size(); auto const limit = buffer.max_size() - size; BOOST_ASSERT(size <= buffer.max_size()); return std::min( std::max(512, buffer.capacity() - size), std::min(max_size, limit)); } } // detail template std::size_t read_size( DynamicBuffer& buffer, std::size_t max_size) { return detail::read_size(buffer, max_size, detail::has_read_size_helper{}); } template std::size_t read_size_or_throw( DynamicBuffer& buffer, std::size_t max_size) { auto const n = read_size(buffer, max_size); if(n == 0) BOOST_THROW_EXCEPTION(std::length_error{ "buffer overflow"}); return n; } } // beast } // boost #endif