1[/ 2 Copyright (c) 2016-2019 Vinnie Falco (vinnie dot falco at gmail dot 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/boostorg/beast 8] 9 10[library Boost.Beast 11 [id beast] 12 [quickbook 1.6] 13 [copyright 2016 - 2019 Vinnie Falco] 14 [purpose Networking Protocol Library] 15 [license 16 Distributed under the Boost Software License, Version 1.0. 17 (See accompanying file LICENSE_1_0.txt or copy at 18 [@http://www.boost.org/LICENSE_1_0.txt]) 19 ] 20 [authors [Falco, Vinnie]] 21 [category template] 22 [category generic] 23] 24 25[template mdash[] '''— '''] 26[template indexterm1[term1] '''<indexterm><primary>'''[term1]'''</primary></indexterm>'''] 27[template indexterm2[term1 term2] '''<indexterm><primary>'''[term1]'''</primary><secondary>'''[term2]'''</secondary></indexterm>'''] 28 29[template path_link[path name] '''<ulink url="../../'''[path]'''">'''[name]'''</ulink>'''] 30[template include_file[path][^<'''<ulink url="../../../../'''[path]'''">'''[path]'''</ulink>'''>]] 31[template issue[n] '''<ulink url="https://github.com/boostorg/beast/issues/'''[n]'''">#'''[n]'''</ulink>'''] 32 33[def __N3747__ [@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3747.pdf [*N3747]]] 34[def __NetTS__ [@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/n4771.pdf Networking TS]] 35[def __rfc6455__ [@https://tools.ietf.org/html/rfc6455 rfc6455]] 36[def __rfc7230__ [@https://tools.ietf.org/html/rfc7230 rfc7230]] 37[def __Asio__ [@boost:/libs/asio/index.html Boost.Asio]] 38[def __async_initfn__ [@boost:/doc/html/boost_asio/reference/asynchronous_operations.html initiating function]] 39 40[/ C++ Named Requirements ] 41 42[def __Allocator__ [@https://en.cppreference.com/w/cpp/named_req/Allocator ['Allocator]]] 43 44[/ Networking Identifiers ] 45 46[def __asio_handler_allocate__ [@boost:/doc/html/boost_asio/reference/asio_handler_allocate.html `asio_handler_allocate`]] 47[def __asio_handler_invoke__ [@boost:/doc/html/boost_asio/reference/asio_handler_invoke.html `asio_handler_invoke`]] 48[def __basic_stream_socket__ [@boost:/doc/html/boost_asio/reference/basic_stream_socket.html `basic_stream_socket`]] 49[def __const_buffer__ [@boost:/doc/html/boost_asio/reference/const_buffer.html `const_buffer`]] 50[def __deduced__ [@boost:/doc/html/boost_asio/reference/asynchronous_operations.html#boost_asio.reference.asynchronous_operations.automatic_deduction_of_initiating_function_return_type ['DEDUCED]]] 51[def __executor_work_guard__ [@boost:/doc/html/boost_asio/reference/executor_work_guard.html `net::executor_work_guard`]] 52[def __get_associated_allocator__ [@boost:/doc/html/boost_asio/reference/get_associated_allocator.html `net::get_associated_allocator`]] 53[def __get_associated_executor__ [@boost:/doc/html/boost_asio/reference/get_associated_executor.html `net::get_associated_executor`]] 54[def __io_context__ [@boost:/doc/html/boost_asio/reference/io_context.html `net::io_context`]] 55[def __mutable_buffer__ [@boost:/doc/html/boost_asio/reference/mutable_buffer.html `mutable_buffer`]] 56[def __post__ [@boost:/doc/html/boost_asio/reference/post.html `net::post`]] 57[def __socket__ [@boost:/doc/html/boost_asio/reference/ip__tcp/socket.html `tcp::socket`]] 58[def __strand__ [@boost:/doc/html/boost_asio/reference/strand.html `net::strand`]] 59[def __ssl_context__ [@boost:/doc/html/boost_asio/reference/ssl__context.html `net::ssl::context`]] 60[def __ssl_stream__ [@boost:/doc/html/boost_asio/reference/ssl__stream.html `net::ssl::stream`]] 61[def __streambuf__ [@boost:/doc/html/boost_asio/reference/streambuf.html `net::streambuf`]] 62[def __system_executor__ [@boost:/doc/html/boost_asio/reference/system_executor.html `net::system_executor`]] 63[def __use_future__ [@boost:/doc/html/boost_asio/reference/use_future_t.html `net::use_future`]] 64[def __yield_context__ [@boost:/doc/html/boost_asio/reference/yield_context.html `net::yield_context`]] 65 66[/ Networking Named Requirements] 67 68[def __AsyncReadStream__ [@boost:/doc/html/boost_asio/reference/AsyncReadStream.html ['AsyncReadStream]]] 69[def __AsyncWriteStream__ [@boost:/doc/html/boost_asio/reference/AsyncWriteStream.html ['AsyncWriteStream]]] 70[def __CompletionCondition__ [@boost:/doc/html/boost_asio/reference/CompletionCondition.html ['CompletionCondition]]] 71[def __CompletionHandler__ [@boost:/doc/html/boost_asio/reference/CompletionHandler.html ['CompletionHandler]]] 72[def __CompletionToken__ [@boost:/doc/html/boost_asio/reference/asynchronous_operations.html#boost_asio.reference.asynchronous_operations.completion_tokens_and_handlers ['CompletionToken]]] 73[def __ConnectCondition__ [@boost:/doc/html/boost_asio/reference/ConnectCondition.html ['ConnectCondition]]] 74[def __ConnectHandler__ [@boost:/doc/html/boost_asio/reference/ConnectHandler.html ['ConnectHandler]]] 75[def __ConstBufferSequence__ [@boost:/doc/html/boost_asio/reference/ConstBufferSequence.html ['ConstBufferSequence]]] 76[def __EndpointSequence__ [@boost:/doc/html/boost_asio/reference/EndpointSequence.html ['EndpointSequence]]] 77[def __Executor__ [@boost:/doc/html/boost_asio/reference/Executor1.html ['Executor]]] 78[def __Executor1__ [@boost:/doc/html/boost_asio/reference/Executor1.html ['Executor1]]] 79[def __Executor2__ [@boost:/doc/html/boost_asio/reference/Executor1.html ['Executor2]]] 80[def __ExecutionContext__ [@boost:/doc/html/boost_asio/reference/ExecutionContext.html ['ExecutionContext]]] 81[def __Handler__ [@boost:/doc/html/boost_asio/reference/Handler.html ['Handler]]] 82[def __IteratorConnectHandler__ [@boost:/doc/html/boost_asio/reference/IteratorConnectHandler.html ['IteratorConnectHandler]]] 83[def __MutableBufferSequence__ [@boost:/doc/html/boost_asio/reference/MutableBufferSequence.html ['MutableBufferSequence]]] 84[def __Protocol__ [@boost:/doc/html/boost_asio/reference/Protocol.html ['Protocol]]] 85[def __RangeConnectHandler__ [@boost:/doc/html/boost_asio/reference/RangeConnectHandler.html ['RangeConnectHandler]]] 86[def __ReadHandler__ [@boost:/doc/html/boost_asio/reference/ReadHandler.html ['ReadHandler]]] 87[def __SyncReadStream__ [@boost:/doc/html/boost_asio/reference/SyncReadStream.html ['SyncReadStream]]] 88[def __SyncWriteStream__ [@boost:/doc/html/boost_asio/reference/SyncWriteStream.html ['SyncWriteStream]]] 89[def __WriteHandler__ [@boost:/doc/html/boost_asio/reference/WriteHandler.html ['WriteHandler]]] 90 91[/ Beast Named Requirements ] 92 93[def __AsyncStream__ [link beast.concepts.streams.AsyncStream ['AsyncStream]]] 94[def __Body__ [link beast.concepts.Body ['Body]]] 95[def __BodyReader__ [link beast.concepts.BodyReader ['BodyReader]]] 96[def __BodyWriter__ [link beast.concepts.BodyWriter ['BodyWriter]]] 97[def __BufferSequence__ [link beast.concepts.BufferSequence ['BufferSequence]]] 98[def __DynamicBuffer__ [link beast.concepts.DynamicBuffer ['DynamicBuffer]]] 99[def __Fields__ [link beast.concepts.Fields ['Fields]]] 100[def __FieldsWriter__ [link beast.concepts.FieldsWriter ['FieldsWriter]]] 101[def __File__ [link beast.concepts.File ['File]]] 102[def __RatePolicy__ [link beast.concepts.RatePolicy ['RatePolicy]]] 103[def __Stream__ [link beast.concepts.streams ['Stream]]] 104[def __SyncStream__ [link beast.concepts.streams.SyncStream ['SyncStream]]] 105 106[/ Beast Identifiers ] 107 108[def __basic_fields__ [link beast.ref.boost__beast__http__basic_fields `basic_fields`]] 109[def __basic_multi_buffer__ [link beast.ref.boost__beast__basic_multi_buffer `basic_multi_buffer`]] 110[def __basic_parser__ [link beast.ref.boost__beast__http__basic_parser `basic_parser`]] 111[def __bind_handler__ [link beast.ref.boost__beast__bind_handler `bind_handler`]] 112[def __buffer_body__ [link beast.ref.boost__beast__http__buffer_body `buffer_body`]] 113[def __fields__ [link beast.ref.boost__beast__http__fields `fields`]] 114[def __flat_buffer__ [link beast.ref.boost__beast__flat_buffer `flat_buffer`]] 115[def __header__ [link beast.ref.boost__beast__http__header `header`]] 116[def __message__ [link beast.ref.boost__beast__http__message `message`]] 117[def __multi_buffer__ [link beast.ref.boost__beast__multi_buffer `multi_buffer`]] 118[def __parser__ [link beast.ref.boost__beast__http__parser `parser`]] 119[def __serializer__ [link beast.ref.boost__beast__http__serializer `serializer`]] 120[def __flat_static_buffer__ [link beast.ref.boost__beast__flat_static_buffer `flat_static_buffer`]] 121[def __flat_static_buffer_base__ [link beast.ref.boost__beast__flat_static_buffer_base `flat_static_buffer_base`]] 122[def __websocket_stream__ [link beast.ref.boost__beast__websocket__stream `websocket::stream`]] 123 124[/ Dingbat Legend] 125 126[def __new__ [role green \u2605]] 127[def __example__ \U0001f4a1] 128[def __video__ \U0001f3a6] 129[def __report__ \U0001f4cb] 130[def __star__ \u2b50] 131 132[/ 133 VFALCO unfortunately quickbook wants relative paths and we have no 134 variables so all of the .cpp and .hpp files are placed here to keep 135 the paths close to absolute. 136] 137 138[import ../../example/doc/http_examples.hpp] 139[import ../../example/echo-op/echo_op.cpp] 140[import ../../example/http/client/sync/http_client_sync.cpp] 141[import ../../example/websocket/client/sync/websocket_client_sync.cpp] 142 143[import ../../include/boost/beast/http/basic_file_body.hpp] 144[import ../../include/boost/beast/websocket/stream_fwd.hpp] 145 146[import ../../test/doc/exemplars.cpp] 147[import ../../test/doc/core_snippets.cpp] 148[import ../../test/doc/http_snippets.cpp] 149 150[import ../../test/doc/core_1_refresher.cpp] 151[import ../../test/doc/core_3_timeouts.cpp] 152[import ../../test/doc/core_4_layers.cpp] 153[import ../../test/doc/http_10_custom_parser.cpp] 154[import ../../test/doc/websocket_common.ipp] 155[import ../../test/doc/websocket.cpp] 156[import ../../test/doc/websocket_1_connecting.cpp] 157[import ../../test/doc/websocket_2_handshaking.cpp] 158[import ../../test/doc/websocket_3_decorator.cpp] 159[import ../../test/doc/websocket_4_messages.cpp] 160[import ../../test/doc/websocket_5_control_frames.cpp] 161[import ../../test/doc/websocket_6_timeouts.cpp] 162[import ../../test/doc/websocket_7_teardown.cpp] 163[import ../../test/doc/websocket_8_notes.cpp] 164 165[import ../../include/boost/beast/core/detect_ssl.hpp] 166[import ../../test/beast/core/rate_policy.cpp] 167 168__new__ indicates a new or updated section in this version. 169 170__example__ contains example source code. 171 172__video__ contains video presentation content 173 174[section:quickref Reference] 175 176__new__ indicates an item that was recently added. 177 178[xinclude quickref.xml] 179[endsect] 180[block'''<reference id="beast_hidden"><title>This Page Intentionally Left Blank 1/2</title>'''] 181[section:ref This Page Intentionally Left Blank 2/2] 182[include reference.qbk] 183[endsect] 184[block'''</reference>'''] 185 186[include release_notes.qbk] 187 188[include 01_intro/_intro.qbk] 189[include 02_examples/_examples.qbk] 190[include 03_core/_core.qbk] 191[include 04_http/_http.qbk] 192[include 05_http_examples/_http_examples.qbk] 193[include 06_websocket/_websocket.qbk] 194[include 07_concepts/_concepts.qbk] 195[include 08_design/_design.qbk] 196 197[section:moved1 Release Notes (Moved)] 198The Release Notes have been moved to the top of the table of contents. 199[endsect] 200[section:moved2 Reference (Moved)] 201The Reference has been moved to the top of the table of contents. 202[endsect] 203 204[xinclude index.xml] 205