/usr/include/boost/beast/core
NameSizeModeActions
detail/-0755rm
impl/-0755rm
async_base.hpp264610644editdlrm
basic_stream.hpp553420644editdlrm
bind_handler.hpp41720644editdlrm
buffered_read_stream.hpp118770644editdlrm
buffers_adaptor.hpp67830644editdlrm
buffers_cat.hpp33830644editdlrm
buffers_prefix.hpp61520644editdlrm
buffers_range.hpp42110644editdlrm
buffers_suffix.hpp39710644editdlrm
buffers_to_string.hpp17700644editdlrm
buffer_traits.hpp57570644editdlrm
detect_ssl.hpp223450644editdlrm
error.hpp22570644editdlrm
file.hpp10280644editdlrm
file_base.hpp50150644editdlrm
file_posix.hpp42220644editdlrm
file_stdio.hpp38490644editdlrm
file_win32.hpp42480644editdlrm
flat_buffer.hpp154270644editdlrm
flat_static_buffer.hpp87060644editdlrm
flat_stream.hpp126030644editdlrm
make_printable.hpp28030644editdlrm
multi_buffer.hpp181530644editdlrm
ostream.hpp26900644editdlrm
rate_policy.hpp45920644editdlrm
read_size.hpp18440644editdlrm
role.hpp13220644editdlrm
saved_handler.hpp37880644editdlrm
span.hpp47870644editdlrm
static_buffer.hpp85150644editdlrm
static_string.hpp257200644editdlrm
stream_traits.hpp163990644editdlrm
string.hpp19410644editdlrm
string_param.hpp34590644editdlrm
string_type.hpp10920644editdlrm
tcp_stream.hpp8530644editdlrm
Edit: /usr/include/boost/beast/core/make_printable.hpp (2803B)
// // 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_MAKE_PRINTABLE_HPP #define BOOST_BEAST_MAKE_PRINTABLE_HPP #include #include #include #include namespace boost { namespace beast { namespace detail { template class make_printable_adaptor { Buffers b_; public: explicit make_printable_adaptor(Buffers const& b) : b_(b) { } template friend std::ostream& operator<<(std::ostream& os, make_printable_adaptor const& v); }; template std::ostream& operator<<(std::ostream& os, make_printable_adaptor const& v) { for( auto it = net::buffer_sequence_begin(v.b_), end = net::buffer_sequence_end(v.b_); it != end; ++it) { net::const_buffer cb = *it; os.write(static_cast( cb.data()), cb.size()); } return os; } } // detail /** Helper to permit a buffer sequence to be printed to a std::ostream This function is used to wrap a buffer sequence to allow it to be interpreted as characters and written to a `std::ostream` such as `std::cout`. No character translation is performed; unprintable and null characters will be transferred as-is to the output stream. @par Example This function prints the size and contents of a buffer sequence to standard output: @code template void print (ConstBufferSequence const& buffers) { std::cout << "Buffer size: " << buffer_bytes(buffers) << " bytes\n" "Buffer data: '" << make_printable(buffers) << "'\n"; } @endcode @param buffers An object meeting the requirements of ConstBufferSequence to be streamed. The implementation will make a copy of this object. Ownership of the underlying memory is not transferred, the application is still responsible for managing its lifetime. */ template #if BOOST_BEAST_DOXYGEN __implementation_defined__ #else detail::make_printable_adaptor #endif make_printable(ConstBufferSequence const& buffers) { static_assert(net::is_const_buffer_sequence< ConstBufferSequence>::value, "ConstBufferSequence type requirements not met"); return detail::make_printable_adaptor< ConstBufferSequence>{buffers}; } } // beast } // boost #endif