Files
boost_beast/doc/qbk/00_main.qbk

128 lines
7.7 KiB
Plaintext
Raw Normal View History

2017-05-28 19:49:41 -07:00
[/
2017-07-28 19:32:33 -07:00
Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
2017-05-28 19:49:41 -07:00
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)
2017-07-28 19:32:33 -07:00
Official repository: https://github.com/boostorg/beast
2017-05-28 19:49:41 -07:00
]
2017-07-28 19:12:44 -07:00
[library Boost.Beast
[id beast]
2017-05-28 19:49:41 -07:00
[quickbook 1.6]
2017-07-24 13:24:15 -07:00
[copyright 2016 - 2017 Vinnie Falco]
2017-05-28 19:49:41 -07:00
[purpose Networking Protocol Library]
[license
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])
]
[authors [Falco, Vinnie]]
[category template]
[category generic]
]
[template mdash[] '''— ''']
[template indexterm1[term1] '''<indexterm><primary>'''[term1]'''</primary></indexterm>''']
[template indexterm2[term1 term2] '''<indexterm><primary>'''[term1]'''</primary><secondary>'''[term2]'''</secondary></indexterm>''']
2017-08-03 08:53:12 -07:00
2017-10-26 16:05:50 -07:00
[template source_file[path] '''<ulink url="../../'''[path]'''">'''[path]'''</ulink>''']
2017-08-03 08:53:12 -07:00
[template include_file[path][^<'''<ulink url="../../../../'''[path]'''">'''[path]'''</ulink>'''>]]
2018-02-17 10:01:29 -08:00
[template issue[n] '''(<ulink url="https://github.com/boostorg/beast/issues/'''[n]'''">#'''[n]'''</ulink>)''']
2017-06-14 12:03:19 -07:00
2017-07-24 13:24:15 -07:00
[def __N3747__ [@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3747.pdf [*N3747]]]
2017-12-15 09:00:44 -08:00
[def __NetTS__ [@http://cplusplus.github.io/networking-ts/draft.pdf [*Networking.TS]]]
2017-07-24 13:24:15 -07:00
[def __rfc6455__ [@https://tools.ietf.org/html/rfc6455 rfc6455]]
[def __rfc7230__ [@https://tools.ietf.org/html/rfc7230 rfc7230]]
2017-05-28 19:49:41 -07:00
2017-10-26 16:05:50 -07:00
[def __Asio__ [@boost:/libs/asio/index.html Boost.Asio]]
2017-10-25 17:08:26 -07:00
[def __async_initfn__ [@boost:/doc/html/boost_asio/reference/asynchronous_operations.html initiating function]]
2017-05-28 19:49:41 -07:00
2017-10-26 16:05:50 -07:00
[def __get_associated_allocator__ [@boost:/doc/html/boost_asio/reference/get_associated_allocator.html `get_associated_allocator`]]
[def __get_associated_executor__ [@boost:/doc/html/boost_asio/reference/get_associated_executor.html `get_associated_executor`]]
2017-10-25 17:08:26 -07:00
[def __asio_handler_invoke__ [@boost:/doc/html/boost_asio/reference/asio_handler_invoke.html `asio_handler_invoke`]]
[def __asio_handler_allocate__ [@boost:/doc/html/boost_asio/reference/asio_handler_allocate.html `asio_handler_allocate`]]
[def __io_context__ [@boost:/doc/html/boost_asio/reference/io_context.html `boost::asio::io_context`]]
[def __executor_work_guard__ [@boost:/doc/html/boost_asio/reference/executor_work_guard.html `boost::asio::executor_work_guard`]]
2017-10-26 16:05:50 -07:00
[def __post__ [@boost:/doc/html/boost_asio/reference/post.html `boost::asio::post`]]
2017-10-25 17:08:26 -07:00
[def __socket__ [@boost:/doc/html/boost_asio/reference/ip__tcp/socket.html `boost::asio::ip::tcp::socket`]]
2017-10-26 16:05:50 -07:00
[def __ssl_context__ [@boost:/doc/html/boost_asio/reference/ssl__context.html `boost::asio::ssl::context`]]
2017-10-25 17:08:26 -07:00
[def __ssl_stream__ [@boost:/doc/html/boost_asio/reference/ssl__stream.html `boost::asio::ssl::stream`]]
[def __streambuf__ [@boost:/doc/html/boost_asio/reference/streambuf.html `boost::asio::streambuf`]]
[def __use_future__ [@boost:/doc/html/boost_asio/reference/use_future_t.html `boost::asio::use_future`]]
[def __void_or_deduced__ [@boost:/doc/html/boost_asio/reference/asynchronous_operations.html#boost_asio.reference.asynchronous_operations.return_type_of_an_initiating_function ['void-or-deduced]]]
[def __yield_context__ [@boost:/doc/html/boost_asio/reference/yield_context.html `boost::asio::yield_context`]]
2017-05-28 19:49:41 -07:00
2017-10-25 17:08:26 -07:00
[def __AsyncReadStream__ [@boost:/doc/html/boost_asio/reference/AsyncReadStream.html [*AsyncReadStream]]]
[def __AsyncWriteStream__ [@boost:/doc/html/boost_asio/reference/AsyncWriteStream.html [*AsyncWriteStream]]]
[def __CompletionHandler__ [@boost:/doc/html/boost_asio/reference/CompletionHandler.html [*CompletionHandler]]]
[def __ConstBufferSequence__ [@boost:/doc/html/boost_asio/reference/ConstBufferSequence.html [*ConstBufferSequence]]]
[def __Handler__ [@boost:/doc/html/boost_asio/reference/Handler.html [*Handler]]]
[def __MutableBufferSequence__ [@boost:/doc/html/boost_asio/reference/MutableBufferSequence.html [*MutableBufferSequence]]]
[def __ReadHandler__ [@boost:/doc/html/boost_asio/reference/ReadHandler.html [*ReadHandler]]]
[def __SyncReadStream__ [@boost:/doc/html/boost_asio/reference/SyncReadStream.html [*SyncReadStream]]]
[def __SyncWriteStream__ [@boost:/doc/html/boost_asio/reference/SyncWriteStream.html [*SyncWriteStream]]]
[def __WriteHandler__ [@boost:/doc/html/boost_asio/reference/WriteHandler.html [*WriteHandler]]]
2017-06-20 21:28:17 -07:00
Refactor chunked-encoding serialization: New buffer sequence classes are provided to allow full control over the serialization of chunk-encoded message payloads: * chunk_header A ConstBufferSequence representing the chunk header. It includes a hexadecimal-encoded size, an optional set of chunk extensions, and the trailing CRLF required to denote the end of the chunk header. This allows the caller to manually serialize the chunk body in one or more calls to a stream output function. The caller must also output an object of type `chunk_crlf` to the stream to indicate the end of the chunk body. * chunk_crlf A small ConstBufferSequence that simply represents the two character sequence "\r\n" (CRLF). This is needed for the case where the caller wants to output a chunk body as a series of buffers (i.e. "chunking a chunk"). * chunk_body A ConstBufferSequence representing a complete chunk. This includes the size, an optional set of chunk extensions, a caller provided buffer containing the body, and the required CRLF that follows. * chunk_final A ConstBufferSequence representing a final chunk. It includes an optional set of caller-provided field trailers * chunk_extensions A container for building a set of chunk extensions to use during serialization. The use of the container is optional, callers may provide their own buffer containing a correctly formatted set of chunk extensions, or they may use their own convenience container which meets the requirements. The basic_fields container is modified to allow construction outside the context of a message. The container can be used to provide trailers to `chunk_final`. Actions Required: * Remove references to ChunkDecorators. Use the new chunk-encoding buffer sequences to manually produce a chunked payload body in the case where control over the chunk-extensions and/or trailers is required.
2017-07-09 20:09:30 -07:00
[def __AsyncStream__ [link beast.concepts.streams.AsyncStream [*AsyncStream]]]
[def __Body__ [link beast.concepts.Body [*Body]]]
[def __BodyReader__ [link beast.concepts.BodyReader [*BodyReader]]]
[def __BodyWriter__ [link beast.concepts.BodyWriter [*BodyWriter]]]
[def __DynamicBuffer__ [link beast.concepts.DynamicBuffer [*DynamicBuffer]]]
[def __Fields__ [link beast.concepts.Fields [*Fields]]]
[def __FieldsWriter__ [link beast.concepts.FieldsWriter [*FieldsWriter]]]
Refactor chunked-encoding serialization: New buffer sequence classes are provided to allow full control over the serialization of chunk-encoded message payloads: * chunk_header A ConstBufferSequence representing the chunk header. It includes a hexadecimal-encoded size, an optional set of chunk extensions, and the trailing CRLF required to denote the end of the chunk header. This allows the caller to manually serialize the chunk body in one or more calls to a stream output function. The caller must also output an object of type `chunk_crlf` to the stream to indicate the end of the chunk body. * chunk_crlf A small ConstBufferSequence that simply represents the two character sequence "\r\n" (CRLF). This is needed for the case where the caller wants to output a chunk body as a series of buffers (i.e. "chunking a chunk"). * chunk_body A ConstBufferSequence representing a complete chunk. This includes the size, an optional set of chunk extensions, a caller provided buffer containing the body, and the required CRLF that follows. * chunk_final A ConstBufferSequence representing a final chunk. It includes an optional set of caller-provided field trailers * chunk_extensions A container for building a set of chunk extensions to use during serialization. The use of the container is optional, callers may provide their own buffer containing a correctly formatted set of chunk extensions, or they may use their own convenience container which meets the requirements. The basic_fields container is modified to allow construction outside the context of a message. The container can be used to provide trailers to `chunk_final`. Actions Required: * Remove references to ChunkDecorators. Use the new chunk-encoding buffer sequences to manually produce a chunked payload body in the case where control over the chunk-extensions and/or trailers is required.
2017-07-09 20:09:30 -07:00
[def __File__ [link beast.concepts.File [*File]]]
[def __Stream__ [link beast.concepts.streams [*Stream]]]
[def __SyncStream__ [link beast.concepts.streams.SyncStream [*SyncStream]]]
2017-05-28 19:49:41 -07:00
2017-07-23 22:49:57 -07:00
[def __basic_fields__ [link beast.ref.boost__beast__http__basic_fields `basic_fields`]]
[def __basic_multi_buffer__ [link beast.ref.boost__beast__basic_multi_buffer `basic_multi_buffer`]]
[def __basic_parser__ [link beast.ref.boost__beast__http__basic_parser `basic_parser`]]
2017-10-26 16:05:50 -07:00
[def __bind_handler__ [link beast.ref.boost__beast__bind_handler `bind_handler`]]
2017-07-23 22:49:57 -07:00
[def __buffer_body__ [link beast.ref.boost__beast__http__buffer_body `buffer_body`]]
[def __fields__ [link beast.ref.boost__beast__http__fields `fields`]]
[def __flat_buffer__ [link beast.ref.boost__beast__flat_buffer `flat_buffer`]]
[def __header__ [link beast.ref.boost__beast__http__header `header`]]
[def __message__ [link beast.ref.boost__beast__http__message `message`]]
[def __multi_buffer__ [link beast.ref.boost__beast__multi_buffer `multi_buffer`]]
[def __parser__ [link beast.ref.boost__beast__http__parser `parser`]]
[def __serializer__ [link beast.ref.boost__beast__http__serializer `serializer`]]
[def __flat_static_buffer__ [link beast.ref.boost__beast__flat_static_buffer `flat_static_buffer`]]
[def __flat_static_buffer_base__ [link beast.ref.boost__beast__flat_static_buffer_base `flat_static_buffer_base`]]
2017-05-28 19:49:41 -07:00
Refactor chunked-encoding serialization: New buffer sequence classes are provided to allow full control over the serialization of chunk-encoded message payloads: * chunk_header A ConstBufferSequence representing the chunk header. It includes a hexadecimal-encoded size, an optional set of chunk extensions, and the trailing CRLF required to denote the end of the chunk header. This allows the caller to manually serialize the chunk body in one or more calls to a stream output function. The caller must also output an object of type `chunk_crlf` to the stream to indicate the end of the chunk body. * chunk_crlf A small ConstBufferSequence that simply represents the two character sequence "\r\n" (CRLF). This is needed for the case where the caller wants to output a chunk body as a series of buffers (i.e. "chunking a chunk"). * chunk_body A ConstBufferSequence representing a complete chunk. This includes the size, an optional set of chunk extensions, a caller provided buffer containing the body, and the required CRLF that follows. * chunk_final A ConstBufferSequence representing a final chunk. It includes an optional set of caller-provided field trailers * chunk_extensions A container for building a set of chunk extensions to use during serialization. The use of the container is optional, callers may provide their own buffer containing a correctly formatted set of chunk extensions, or they may use their own convenience container which meets the requirements. The basic_fields container is modified to allow construction outside the context of a message. The container can be used to provide trailers to `chunk_final`. Actions Required: * Remove references to ChunkDecorators. Use the new chunk-encoding buffer sequences to manually produce a chunked payload body in the case where control over the chunk-extensions and/or trailers is required.
2017-07-09 20:09:30 -07:00
[import ../../example/common/detect_ssl.hpp]
[import ../../example/doc/http_examples.hpp]
[import ../../example/echo-op/echo_op.cpp]
[import ../../example/http/client/sync/http_client_sync.cpp]
[import ../../example/websocket/client/sync/websocket_client_sync.cpp]
2017-07-23 22:49:57 -07:00
[import ../../include/boost/beast/http/basic_file_body.hpp]
2017-07-05 20:30:18 -07:00
2017-07-29 12:41:48 -07:00
[import ../../test/doc/exemplars.cpp]
[import ../../test/doc/core_snippets.cpp]
[import ../../test/doc/http_snippets.cpp]
[import ../../test/doc/websocket_snippets.cpp]
2017-05-28 19:49:41 -07:00
Refactor chunked-encoding serialization: New buffer sequence classes are provided to allow full control over the serialization of chunk-encoded message payloads: * chunk_header A ConstBufferSequence representing the chunk header. It includes a hexadecimal-encoded size, an optional set of chunk extensions, and the trailing CRLF required to denote the end of the chunk header. This allows the caller to manually serialize the chunk body in one or more calls to a stream output function. The caller must also output an object of type `chunk_crlf` to the stream to indicate the end of the chunk body. * chunk_crlf A small ConstBufferSequence that simply represents the two character sequence "\r\n" (CRLF). This is needed for the case where the caller wants to output a chunk body as a series of buffers (i.e. "chunking a chunk"). * chunk_body A ConstBufferSequence representing a complete chunk. This includes the size, an optional set of chunk extensions, a caller provided buffer containing the body, and the required CRLF that follows. * chunk_final A ConstBufferSequence representing a final chunk. It includes an optional set of caller-provided field trailers * chunk_extensions A container for building a set of chunk extensions to use during serialization. The use of the container is optional, callers may provide their own buffer containing a correctly formatted set of chunk extensions, or they may use their own convenience container which meets the requirements. The basic_fields container is modified to allow construction outside the context of a message. The container can be used to provide trailers to `chunk_final`. Actions Required: * Remove references to ChunkDecorators. Use the new chunk-encoding buffer sequences to manually produce a chunked payload body in the case where control over the chunk-extensions and/or trailers is required.
2017-07-09 20:09:30 -07:00
[include 01_intro.qbk]
[include 02_examples.qbk]
[include 03_core.qbk]
[include 04_http.qbk]
[include 05_http_examples.qbk]
[include 06_websocket.qbk]
[include 07_concepts.qbk]
[include 08_design.qbk]
2018-02-17 10:01:29 -08:00
[include 09_releases.qbk]
2017-05-28 19:49:41 -07:00
2017-06-04 17:25:55 -07:00
[section:quickref Reference]
2017-05-28 19:49:41 -07:00
[xinclude quickref.xml]
2017-06-04 17:25:55 -07:00
[endsect]
2017-07-23 22:49:57 -07:00
[block'''<reference id="beast_hidden"><title>This Page Intentionally Left Blank 1/2</title>''']
2017-06-04 17:25:55 -07:00
[section:ref This Page Intentionally Left Blank 2/2]
2017-07-24 13:24:15 -07:00
[include reference.qbk]
2017-05-28 19:49:41 -07:00
[endsect]
2017-06-04 17:25:55 -07:00
[block'''</reference>''']
2017-05-28 19:49:41 -07:00
[xinclude index.xml]