/
usr
/
include
/
boost
/
beast
/
core
/
detail
/
/usr/include/boost/beast/core/detail
mkdir
upload
Name
Size
Mode
Actions
impl/
-
0755
rm
allocator.hpp
945
0644
edit
dl
rm
async_base.hpp
901
0644
edit
dl
rm
base64.hpp
1942
0644
edit
dl
rm
base64.ipp
6170
0644
edit
dl
rm
bind_continuation.hpp
3504
0644
edit
dl
rm
bind_default_executor.hpp
3243
0644
edit
dl
rm
bind_handler.hpp
10959
0644
edit
dl
rm
buffer.hpp
1825
0644
edit
dl
rm
buffers_pair.hpp
2636
0644
edit
dl
rm
buffers_range_adaptor.hpp
2651
0644
edit
dl
rm
buffers_ref.hpp
1648
0644
edit
dl
rm
buffer_traits.hpp
2095
0644
edit
dl
rm
chacha.hpp
4167
0644
edit
dl
rm
char_buffer.hpp
1407
0644
edit
dl
rm
clamp.hpp
1229
0644
edit
dl
rm
config.hpp
2884
0644
edit
dl
rm
cpu_info.hpp
1787
0644
edit
dl
rm
flat_stream.hpp
1919
0644
edit
dl
rm
get_io_context.hpp
2338
0644
edit
dl
rm
is_invocable.hpp
1888
0644
edit
dl
rm
ostream.hpp
7004
0644
edit
dl
rm
pcg.hpp
1464
0644
edit
dl
rm
read.hpp
9217
0644
edit
dl
rm
remap_post_to_defer.hpp
2152
0644
edit
dl
rm
service_base.hpp
850
0644
edit
dl
rm
sha1.hpp
1624
0644
edit
dl
rm
sha1.ipp
7998
0644
edit
dl
rm
static_const.hpp
1154
0644
edit
dl
rm
static_ostream.hpp
3030
0644
edit
dl
rm
static_string.hpp
3030
0644
edit
dl
rm
stream_base.hpp
2685
0644
edit
dl
rm
stream_traits.hpp
2796
0644
edit
dl
rm
string.hpp
898
0644
edit
dl
rm
temporary_buffer.hpp
1611
0644
edit
dl
rm
tuple.hpp
2194
0644
edit
dl
rm
type_traits.hpp
2779
0644
edit
dl
rm
variant.hpp
4889
0644
edit
dl
rm
varint.hpp
1712
0644
edit
dl
rm
win32_unicode_path.hpp
2148
0644
edit
dl
rm
work_guard.hpp
1851
0644
edit
dl
rm
Edit:
/usr/include/boost/beast/core/detail/buffer_traits.hpp
(2095B)
// // 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_DETAIL_BUFFER_TRAITS_HPP #define BOOST_BEAST_DETAIL_BUFFER_TRAITS_HPP #include <boost/asio/buffer.hpp> #include <boost/config/workaround.hpp> #include <boost/type_traits/make_void.hpp> #include <cstdint> #include <type_traits> namespace boost { namespace beast { namespace detail { #if BOOST_WORKAROUND(BOOST_MSVC, < 1910) template<class T> struct buffers_iterator_type_helper { using type = decltype( net::buffer_sequence_begin( std::declval<T const&>())); }; template<> struct buffers_iterator_type_helper< net::const_buffer> { using type = net::const_buffer const*; }; template<> struct buffers_iterator_type_helper< net::mutable_buffer> { using type = net::mutable_buffer const*; }; #endif struct buffer_bytes_impl { std::size_t operator()(net::const_buffer b) const noexcept { return net::const_buffer(b).size(); } std::size_t operator()(net::mutable_buffer b) const noexcept { return net::mutable_buffer(b).size(); } template< class B, class = typename std::enable_if< net::is_const_buffer_sequence<B>::value>::type> std::size_t operator()(B const& b) const noexcept { using net::buffer_size; return buffer_size(b); } }; /** Return `true` if a buffer sequence is empty This is sometimes faster than using @ref buffer_bytes */ template<class ConstBufferSequence> bool buffers_empty(ConstBufferSequence const& buffers) { auto it = net::buffer_sequence_begin(buffers); auto end = net::buffer_sequence_end(buffers); while(it != end) { if(net::const_buffer(*it).size() > 0) return false; ++it; } return true; } } // detail } // beast } // boost #endif
Save
cmd:
run