passenger 6.0.19 → 6.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG +65 -3
- data/CONTRIBUTORS +2 -0
- data/README.md +2 -2
- data/bin/passenger-install-nginx-module +4 -4
- data/build/integration_tests.rb +2 -1
- data/build/support/cxx_dependency_map.rb +155 -54
- data/dev/copy_boost_headers +21 -7
- data/dev/nginx_version_sha256 +72 -0
- data/package.json +15 -15
- data/src/agent/AgentMain.cpp +2 -8
- data/src/agent/Core/AdminPanelConnector.h +2 -3
- data/src/agent/Core/ApiServer.h +1 -1
- data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +8 -1
- data/src/agent/Core/Config.h +6 -3
- data/src/agent/Core/Controller/AppResponse.h +0 -1
- data/src/agent/Core/Controller/Config.h +2 -2
- data/src/agent/Core/Controller/SendRequest.cpp +2 -2
- data/src/agent/Core/CoreMain.cpp +1 -0
- data/src/agent/Core/ResponseCache.h +3 -2
- data/src/agent/Core/SecurityUpdateChecker.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/Perform.h +4 -4
- data/src/agent/Core/SpawningKit/UserSwitchingRules.h +2 -2
- data/src/agent/ExecHelper/ExecHelperMain.cpp +10 -12
- data/src/agent/FileReadHelper/FileReadHelperMain.cpp +7 -10
- data/src/agent/MainFunctions.h +38 -0
- data/src/agent/Shared/ApiServerUtils.h +3 -2
- data/src/agent/Shared/Fundamentals/Initialization.cpp +1 -1
- data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +2 -3
- data/src/agent/SystemMetrics/SystemMetricsMain.cpp +1 -0
- data/src/agent/TempDirToucher/TempDirToucherMain.cpp +6 -4
- data/src/agent/Watchdog/ApiServer.h +1 -1
- data/src/agent/Watchdog/Config.h +1 -1
- data/src/agent/Watchdog/WatchdogMain.cpp +5 -12
- data/src/apache2_module/Hooks.cpp +26 -1
- data/src/cxx_supportlib/ConfigKit/Common.h +1 -1
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/DataStructures/StringKeyTable.h +1 -1
- data/src/cxx_supportlib/FileTools/PathManip.cpp +10 -1
- data/src/cxx_supportlib/IOTools/IOUtils.cpp +2 -6
- data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +3 -3
- data/src/cxx_supportlib/JsonTools/CBindings.cpp +0 -2
- data/src/cxx_supportlib/JsonTools/JsonUtils.h +4 -4
- data/src/cxx_supportlib/LoggingKit/Context.h +16 -21
- data/src/cxx_supportlib/LoggingKit/Forward.h +0 -2
- data/src/cxx_supportlib/LoggingKit/Implementation.cpp +36 -72
- data/src/cxx_supportlib/MemoryKit/mbuf.cpp +12 -4
- data/src/cxx_supportlib/MemoryKit/mbuf.h +1 -1
- data/src/cxx_supportlib/ProcessManagement/Utils.cpp +1 -1
- data/src/cxx_supportlib/ResourceLocator.h +1 -1
- data/src/cxx_supportlib/SecurityKit/Crypto.cpp +3 -94
- data/src/cxx_supportlib/SecurityKit/Crypto.h +0 -8
- data/src/cxx_supportlib/ServerKit/Context.h +6 -0
- data/src/cxx_supportlib/ServerKit/Errors.h +3 -2
- data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +99 -64
- data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +4 -1
- data/src/cxx_supportlib/ServerKit/HttpRequest.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpServer.h +3 -2
- data/src/cxx_supportlib/ServerKit/llerrors.h +84 -0
- data/src/cxx_supportlib/ServerKit/llhttp.c +10168 -0
- data/src/cxx_supportlib/ServerKit/llhttp.h +903 -0
- data/src/cxx_supportlib/ServerKit/llhttp_api.c +510 -0
- data/src/cxx_supportlib/ServerKit/llhttp_http.c +170 -0
- data/src/cxx_supportlib/ServerKit/llversion.h +12 -0
- data/src/cxx_supportlib/ServerKit/url_parser.c +574 -0
- data/src/cxx_supportlib/ServerKit/url_parser.h +74 -0
- data/src/cxx_supportlib/StaticString.h +3 -1
- data/src/cxx_supportlib/StrIntTools/DateParsing.h +1 -1
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.cpp +12 -3
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.h +5 -0
- data/src/cxx_supportlib/SystemTools/SystemMetricsCollector.h +2 -2
- data/src/cxx_supportlib/SystemTools/UserDatabase.cpp +14 -14
- data/src/cxx_supportlib/SystemTools/UserDatabase.h +6 -10
- data/src/cxx_supportlib/Utils/AnsiColorConstants.h +11 -9
- data/src/cxx_supportlib/Utils.cpp +1 -1
- data/src/cxx_supportlib/oxt/implementation.cpp +1 -2
- data/src/cxx_supportlib/oxt/system_calls.cpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_executor.hpp +26 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_handler.hpp +194 -56
- data/src/cxx_supportlib/vendor-modified/boost/asio/any_io_executor.hpp +34 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/append.hpp +10 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/as_tuple.hpp +21 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_allocator.hpp +26 -45
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_cancellation_slot.hpp +26 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_executor.hpp +30 -52
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_immediate_executor.hpp +282 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/associator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +178 -863
- data/src/cxx_supportlib/vendor-modified/boost/asio/awaitable.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +64 -98
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +17 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_file.hpp +18 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_io_object.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_random_access_file.hpp +30 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +65 -96
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_readable_pipe.hpp +20 -29
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +36 -48
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_serial_port.hpp +31 -44
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_signal_set.hpp +73 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +34 -45
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +108 -151
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_iostream.hpp +6 -82
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_streambuf.hpp +6 -51
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_file.hpp +30 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +50 -76
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf.hpp +13 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +23 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_writable_pipe.hpp +20 -29
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_allocator.hpp +97 -299
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +97 -288
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +90 -288
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_immediate_executor.hpp +551 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +365 -290
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer_registration.hpp +29 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream.hpp +27 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream.hpp +33 -49
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream.hpp +27 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffers_iterator.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_signal.hpp +25 -85
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_state.hpp +16 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_type.hpp +8 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/co_spawn.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/completion_condition.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/compose.hpp +60 -272
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +52 -79
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/consign.hpp +11 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/coroutine.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/deadline_timer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/defer.hpp +37 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/deferred.hpp +302 -262
- data/src/cxx_supportlib/vendor-modified/boost/asio/detached.hpp +12 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array.hpp +2 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array_fwd.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/assert.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/atomic_count.hpp +5 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_cancellation_state.hpp +21 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_completion_cond.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bind_handler.hpp +129 -563
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/blocking_executor_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffer_resize_guard.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffer_sequence_adapter.hpp +3 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffered_stream_storage.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/call_stack.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono.hpp +2 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono_time_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/completion_handler.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/composed_work.hpp +21 -97
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/concurrency_hint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_event.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +155 -963
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/consuming_buffers.hpp +3 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstddef.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstdint.hpp +2 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/date_time_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/deadline_timer_service.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dependent_type.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_ops.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_read_op.hpp +41 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_write_op.hpp +40 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dev_poll_reactor.hpp +20 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/epoll_reactor.hpp +20 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/event.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/eventfd_select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/exception.hpp +2 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_function.hpp +8 -60
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_op.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/fd_set_adapter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/fenced_block.hpp +3 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/functional.hpp +1 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/future.hpp +9 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/global.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +41 -104
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_cont_helpers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_tracking.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_type_requirements.hpp +9 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_work.hpp +101 -123
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/hash_map.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/buffer_sequence_adapter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/descriptor_ops.ipp +36 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +13 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.ipp +17 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/eventfd_select_interrupter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/handler_tracking.ipp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_descriptor_service.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_file_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_service.ipp +69 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_socket_service_base.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.ipp +15 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/null_event.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/pipe_select_interrupter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_event.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_mutex.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_serial_port_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_thread.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_tss_ptr.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_descriptor_service.ipp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_socket_service_base.ipp +26 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/resolver_service_base.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/scheduler.ipp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.ipp +12 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/signal_set_service.ipp +57 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +63 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_select_interrupter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.hpp +47 -68
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/thread_context.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/throw_error.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_ptime.ipp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_set.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_defer.hpp +209 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_dispatch.hpp +195 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_post.hpp +209 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_control.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_object_impl.hpp +6 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_at_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_service.hpp +17 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_at_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_file_service.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_null_buffers_op.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_operation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_service.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_accept_op.hpp +11 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_connect_op.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recv_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvfrom_op.hpp +7 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvmsg_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_send_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_sendto_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_service.hpp +11 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_service_base.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_wait_op.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_buffer_sequence.hpp +7 -49
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/keyword_tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/kqueue_reactor.hpp +20 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/limits.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/local_free_on_block_exit.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +13 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/mutex.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/non_const_lvalue.hpp +4 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/noncopyable.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_event.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_fenced_block.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_global.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_signal_blocker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_socket_service.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_static_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_thread.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/object_pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/op_queue.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/operation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pipe_select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pop_options.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_event.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_fd_set_adapter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_global.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_serial_port_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_signal_blocker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_static_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_thread.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/push_options.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_descriptor_service.hpp +61 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_null_buffers_op.hpp +37 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_accept_op.hpp +89 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_connect_op.hpp +41 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recv_op.hpp +40 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvfrom_op.hpp +41 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvmsg_op.hpp +41 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_send_op.hpp +41 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_sendto_op.hpp +40 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +135 -38
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_wait_op.hpp +37 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op_queue.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/recycling_allocator.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/regex_fwd.hpp +4 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_endpoint_op.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_query_op.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_operation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_task.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_thread_info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scoped_lock.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scoped_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_reactor.hpp +20 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/service_registry.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_blocker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_handler.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_init.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_set_service.hpp +12 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_holder.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_ops.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_option.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_types.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/source_location.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/static_mutex.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_event.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_fenced_block.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_global.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_mutex.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_static_mutex.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_thread.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_executor_service.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/string_view.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_group.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_info_base.hpp +12 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/throw_error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/throw_exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_ptime.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_set.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/type_traits.hpp +104 -90
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/utility.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_handler.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/winsock_init.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/work_dispatcher.hpp +20 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wrapped_handler.hpp +7 -117
- data/src/cxx_supportlib/vendor-modified/boost/asio/dispatch.hpp +36 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/allocator.hpp +34 -112
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/any_executor.hpp +268 -991
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bad_executor.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking.hpp +296 -536
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking_adaptation.hpp +232 -409
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context.hpp +20 -73
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context_as.hpp +30 -72
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/executor.hpp +24 -170
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/impl/bad_executor.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/invocable_archetype.hpp +2 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/mapping.hpp +240 -398
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/occupancy.hpp +20 -73
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/outstanding_work.hpp +149 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/prefer_only.hpp +56 -59
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/relationship.hpp +149 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution.hpp +1 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution_context.hpp +1 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/executor.hpp +59 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/executor_work_guard.hpp +56 -61
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/append.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_single.hpp +20 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_tuple.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/awaitable_operators.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_channel.hpp +56 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_concurrent_channel.hpp +56 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/cancellation_condition.hpp +25 -28
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_traits.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_composed.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_spawn.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/concurrent_channel.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/deferred.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_handler.hpp +10 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_message.hpp +27 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_operation.hpp +193 -38
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_payload.hpp +143 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_receive_op.hpp +24 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_functions.hpp +77 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_op.hpp +20 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_service.hpp +50 -50
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_completion_handler.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_promise_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/has_signature.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/impl/channel_service.hpp +46 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/partial_promise.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +33 -96
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/channel_error.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/co_composed.hpp +62 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/coro.hpp +48 -45
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/parallel_group.hpp +56 -60
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/promise.hpp +18 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_coro.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_promise.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +27 -31
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/prepend.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/promise.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +15 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_promise.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/file_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/basic_endpoint.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/datagram_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail/endpoint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail/impl/endpoint.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/raw_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/seq_packet_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/stream_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_continuation_hook.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/high_resolution_timer.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_completion_executor.ipp +10 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_io_executor.ipp +10 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/append.hpp +37 -100
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/as_tuple.hpp +99 -107
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/awaitable.hpp +66 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_read_stream.hpp +55 -178
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_write_stream.hpp +55 -178
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancellation_signal.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +123 -73
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +84 -234
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect_pipe.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/consign.hpp +32 -97
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/deferred.hpp +73 -31
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/detached.hpp +5 -58
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/error.ipp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.hpp +3 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.hpp +60 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.hpp +39 -56
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.ipp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/multiple_exceptions.ipp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/prepend.hpp +36 -98
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +206 -429
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +60 -206
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +456 -970
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +43 -411
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/serial_port_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/serial_port_base.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +207 -423
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/src.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_executor.hpp +19 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.hpp +32 -109
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.ipp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_awaitable.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_future.hpp +79 -425
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +213 -427
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +58 -194
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context.hpp +91 -120
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context_strand.hpp +33 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_service_strand.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address.hpp +26 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4.hpp +28 -36
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_iterator.hpp +13 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_range.hpp +16 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6.hpp +33 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_iterator.hpp +13 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_range.hpp +15 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/bad_address_cast.hpp +13 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_endpoint.hpp +26 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +46 -76
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_entry.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_iterator.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_query.hpp +17 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_results.hpp +9 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/endpoint.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/impl/endpoint.ipp +10 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/socket_option.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/host_name.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/icmp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.ipp +18 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.ipp +9 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.ipp +24 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/basic_endpoint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/host_name.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/multicast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v4.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v6.hpp +14 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_query_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/tcp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/udp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/unicast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/v6_only.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_applicable_property.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_contiguous_iterator.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_read_buffered.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_write_buffered.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/basic_endpoint.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/connect_pair.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/datagram_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/endpoint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/impl/endpoint.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/seq_packet_protocol.hpp +86 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/stream_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/multiple_exceptions.hpp +3 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/packaged_task.hpp +1 -61
- data/src/cxx_supportlib/vendor-modified/boost/asio/placeholders.hpp +29 -105
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +21 -29
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +24 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/stream_descriptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/post.hpp +36 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/prefer.hpp +176 -333
- data/src/cxx_supportlib/vendor-modified/boost/asio/prepend.hpp +11 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/query.hpp +57 -70
- data/src/cxx_supportlib/vendor-modified/boost/asio/random_access_file.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +136 -168
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +35 -52
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +256 -298
- data/src/cxx_supportlib/vendor-modified/boost/asio/readable_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/recycling_allocator.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/redirect_error.hpp +7 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/registered_buffer.hpp +35 -47
- data/src/cxx_supportlib/vendor-modified/boost/asio/require.hpp +108 -246
- data/src/cxx_supportlib/vendor-modified/boost/asio/require_concept.hpp +70 -79
- data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set_base.hpp +173 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/socket_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/spawn.hpp +127 -161
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context_base.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/buffered_handshake_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/engine.hpp +3 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/handshake_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/engine.ipp +3 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/openssl_init.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/io.hpp +16 -75
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_init.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_types.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/password_callback.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/read_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/shutdown_op.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/stream_core.hpp +15 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/verify_callback.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/write_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/host_name_verification.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/error.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/host_name_verification.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/rfc2818_verification.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/src.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/rfc2818_verification.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +51 -82
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_mode.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/static_thread_pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/steady_timer.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/strand.hpp +91 -118
- data/src/cxx_supportlib/vendor-modified/boost/asio/stream_file.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/streambuf.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_context.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_executor.hpp +62 -62
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_timer.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/this_coro.hpp +35 -48
- data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +91 -273
- data/src/cxx_supportlib/vendor-modified/boost/asio/time_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/equality_comparable.hpp +14 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/execute_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/prefer_free.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/prefer_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_free.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_static_constexpr_member.hpp +15 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_concept_free.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_concept_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_free.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_query.hpp +20 -26
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_require.hpp +22 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_require_concept.hpp +22 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/buffer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/internet.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/io_context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/net.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/netfwd.hpp +6 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/socket.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/timer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/unyield.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_awaitable.hpp +15 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +8 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/uses_executor.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/wait_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/writable_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +122 -146
- data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +34 -50
- data/src/cxx_supportlib/vendor-modified/boost/asio/yield.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +6 -28
- data/src/cxx_supportlib/vendor-modified/boost/assert/source_location.hpp +8 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic.hpp +2 -16
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_ref.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_ref_impl.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_cast.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/config.hpp +0 -49
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_x86.hpp +107 -40
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_msvc_x86.hpp +32 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_operations_emulated.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_emulated.hpp +7 -8
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_emulated.hpp +26 -27
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/float_sizes.hpp +122 -35
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_emulated.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/pause.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/remove_cv.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_on_address.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_emulated.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_ref.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/bind/apply.hpp +2 -60
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +230 -1740
- data/src/cxx_supportlib/vendor-modified/boost/bind/{bind_cc.hpp → detail/bind_cc.hpp} +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/bind_mf2_cc.hpp +210 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/bind_mf_cc.hpp +405 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/integer_sequence.hpp +111 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/result_traits.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/tuple_for_each.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn.hpp +140 -290
- data/src/cxx_supportlib/vendor-modified/boost/bind/placeholders.hpp +3 -16
- data/src/cxx_supportlib/vendor-modified/boost/bind/protect.hpp +0 -279
- data/src/cxx_supportlib/vendor-modified/boost/bind/std_placeholders.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/chrono/config.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/is_evenly_divisible_by.hpp +1 -7
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/requires_cxx11.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/chrono/duration.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_get.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_units.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io_v1/chrono_io.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/chrono/system_clocks.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx03.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx11.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx14.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx17.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx20.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx23.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/borland.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang_version.hpp +8 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/codegear.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/cray.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/digitalmars.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc_xml.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/hp_acc.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/intel.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/metrowerks.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/mpw.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/nvcc.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pathscale.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/vacpp.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +13 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp_zos.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/cxx_composite.hpp +16 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/suffix.hpp +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/dinkumware.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +16 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +6 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +18 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +27 -29
- data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +0 -29
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +144 -145
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +48 -49
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocator_version_traits.hpp +14 -15
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +71 -69
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/destroyers.hpp +48 -48
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +38 -40
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +165 -153
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +162 -163
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mutex.hpp +48 -12
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/next_capacity.hpp +6 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +44 -46
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +10 -11
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +18 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/placement_new.hpp +0 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/transform_iterator.hpp +28 -28
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +83 -84
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/value_init.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +77 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +81 -85
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +231 -233
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +86 -86
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +33 -33
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +107 -110
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +9 -11
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +10 -11
- data/src/cxx_supportlib/vendor-modified/boost/container/node_handle.hpp +29 -17
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +80 -82
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +81 -81
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +24 -26
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +147 -122
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +109 -110
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +32 -32
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +165 -194
- data/src/cxx_supportlib/vendor-modified/boost/container/throw_exception.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +263 -199
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_integral.hpp +146 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_mix.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_range.hpp +296 -61
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_tuple_like.hpp +62 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/mulx.hpp +79 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +38 -124
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash_fwd.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_contiguous_range.hpp +27 -20
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_described_class.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_range.hpp +8 -40
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_tuple_like.hpp +36 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_unordered_range.hpp +6 -7
- data/src/cxx_supportlib/vendor-modified/boost/core/alignof.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/allocator_access.hpp +22 -8
- data/src/cxx_supportlib/vendor-modified/boost/core/bit.hpp +362 -31
- data/src/cxx_supportlib/vendor-modified/boost/core/checked_delete.hpp +29 -3
- data/src/cxx_supportlib/vendor-modified/boost/core/data.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/is_same.hpp +39 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/lwt_unattended.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_pause.hpp +71 -0
- data/src/cxx_supportlib/vendor-modified/boost/{smart_ptr → core}/detail/sp_thread_sleep.hpp +39 -21
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_yield.hpp +100 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/core/fclose_deleter.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/functor.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/identity.hpp +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/invoke_swap.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/is_same.hpp +10 -15
- data/src/cxx_supportlib/vendor-modified/boost/core/launder.hpp +69 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +33 -36
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test_trait.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/core/make_span.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/max_align.hpp +82 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/memory_resource.hpp +108 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/null_deleter.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/ref.hpp +23 -16
- data/src/cxx_supportlib/vendor-modified/boost/core/serialization.hpp +131 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/size.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/snprintf.hpp +173 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/span.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/core/swap.hpp +10 -40
- data/src/cxx_supportlib/vendor-modified/boost/core/type_name.hpp +29 -5
- data/src/cxx_supportlib/vendor-modified/boost/core/yield_primitives.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/describe/members.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/detail/basic_pointerbuf.hpp +3 -6
- data/src/cxx_supportlib/vendor-modified/boost/detail/lcast_precision.hpp +6 -97
- data/src/cxx_supportlib/vendor-modified/boost/exception/current_exception_cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/clone_current_exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/error_info_impl.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/exception_ptr.hpp +22 -10
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/is_output_streamable.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/object_hex_dump.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/requires_cxx11.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/type_info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/diagnostic_information.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/get_error_info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/to_string.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/exception/to_string_stub.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/function/function0.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function1.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function10.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function2.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function3.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function4.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function5.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function6.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function7.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function8.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function9.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +49 -198
- data/src/cxx_supportlib/vendor-modified/boost/function/function_fwd.hpp +36 -41
- data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +277 -420
- data/src/cxx_supportlib/vendor-modified/boost/function/function_typeof.hpp +1 -31
- data/src/cxx_supportlib/vendor-modified/boost/function.hpp +5 -61
- data/src/cxx_supportlib/vendor-modified/boost/integer/extended_euclidean.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avl_set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bs_set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +65 -66
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_slist_algorithms.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/array_initializer.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/common_slist_algorithms.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/default_header_holder.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/equal_to_value.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/exception_disposer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +14 -15
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash.hpp +277 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_combine.hpp +11 -49
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_integral.hpp +119 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_mix.hpp +130 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hashtable_node.hpp +41 -41
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hook_traits.hpp +14 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iiterator.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iterator.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/key_nodeptr_comp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_iterator.hpp +19 -19
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/mpl.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_cloner_disposer.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/parent_from_member.hpp +6 -17
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/simple_disposers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/size_holder.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_iterator.hpp +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/transform_iterator.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_iterator.hpp +21 -21
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_value_compare.hpp +28 -28
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +58 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +268 -239
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/linear_slist_algorithms.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +57 -58
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pack_options.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_traits.hpp +18 -18
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/priority_compare.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sg_set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree.hpp +14 -15
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +61 -62
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splay_set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap.hpp +18 -19
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_set.hpp +36 -37
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +37 -34
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set_hook.hpp +11 -11
- data/src/cxx_supportlib/vendor-modified/boost/io/ios_state.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/facade_iterator_category.hpp +10 -11
- data/src/cxx_supportlib/vendor-modified/boost/iterator/is_iterator.hpp +148 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_concepts.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +7 -13
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +113 -131
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +612 -645
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +85 -79
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +25 -32
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +22 -29
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +21 -16
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +7 -9
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +22 -161
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +9 -12
- data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/chrono.cpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/process_cpu_clocks.cpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/thread_clock.cpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/posix_api.cpp +10 -18
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/wide_posix_api.cpp +13 -14
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +24 -14
- data/src/cxx_supportlib/vendor-modified/boost/limits.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/move/adl_move_swap.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_merge.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_sort.hpp +20 -19
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +41 -56
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/basic_op.hpp +11 -10
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/heap_sort.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/merge.hpp +32 -34
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/move.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/predicate.hpp +11 -11
- data/src/cxx_supportlib/vendor-modified/boost/move/algorithm.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/move/default_delete.hpp +5 -6
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_to_raw_pointer.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/move_helpers.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/nsec_clock.hpp +65 -24
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/reverse_iterator.hpp +28 -28
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/to_raw_pointer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +72 -23
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +81 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/iterator.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/move/unique_ptr.hpp +65 -66
- data/src/cxx_supportlib/vendor-modified/boost/move/utility.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/move/utility_core.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +97 -17
- data/src/cxx_supportlib/vendor-modified/boost/mp11/bind.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/config.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_append.hpp +140 -4
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_defer.hpp +119 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_fold.hpp +108 -4
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_front.hpp +13 -1
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_is_value_list.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_list_v.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_map_find.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_plus.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_rename.hpp +18 -5
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_value.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integer_sequence.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integral.hpp +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/list.hpp +180 -3
- data/src/cxx_supportlib/vendor-modified/boost/mp11/utility.hpp +2 -96
- data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/assert.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/next_prior.hpp +3 -44
- data/src/cxx_supportlib/vendor-modified/boost/nondet_random.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/none_t.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/old_optional_implementation.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_config.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_relops.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/tag_keyword_arg_ref.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/unmatched_argument.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/overloads.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/tag.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/unwrap_cv_reference.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/void.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/parameter/binding.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/parameter/match.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/parameter/template_keyword.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/parameter/value_type.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/pool/pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/pool/simple_segregated_storage.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/msvc.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/make.h +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/vms.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/has_opt.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/inversive_congruential.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/splitmix64.hpp +203 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/subtract_with_carry.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/random/uniform_real_distribution.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/random.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/config.hpp +4 -82
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/gcd_lcm.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/is_evenly_divisible_by.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/is_ratio.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/include.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio.hpp +5 -249
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio_fwd.hpp +30 -56
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio_io.hpp +0 -533
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/icu.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_workaround.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/allocate_shared_array.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/requires_cxx11.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_atomic.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/yield_k.hpp +4 -6
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/enable_shared_from_this.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +2 -11
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_array.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_object.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_unique.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_array.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_ptr.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_array.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +1 -11
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/weak_ptr.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/enable_if.hpp +3 -12
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +14 -50
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +16 -55
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.hpp +62 -124
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_condition.hpp +29 -52
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category_message.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/interop_category.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/is_same.hpp +3 -13
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/mutex.hpp +128 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/snprintf.hpp +1 -46
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_category.hpp +14 -13
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_category_impl.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_message.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/system/errc.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/system/system_error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/deque.hpp +1 -24
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/functional.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/list.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/allocator_arg.hpp +2 -12
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/allocator_traits.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/config.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/default_delete.hpp +0 -16
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/pointer_traits.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/scoped_allocator.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/shared_ptr.hpp +0 -19
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/unique_ptr.hpp +4 -6
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/queue.hpp +2 -26
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/tuple.hpp +1 -18
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/vector.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/invoke.hpp +11 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/string_to_unsigned.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/string_trim.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/externally_locked.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/futures/wait_for_any.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/synchronized_value.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/throw_exception.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/tuple/detail/tuple_basic.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/tuple/tuple.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_swappable_cxx_11.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_floating_point.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_integral.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_swappable.hpp +4 -24
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_swappable.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/decltype.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/typeof/incr_registration_group.hpp +1 -10
- data/src/cxx_supportlib/vendor-modified/boost/typeof/msvc/typeof_impl.hpp +5 -6
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/bitset.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/complex.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/deque.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/fstream.hpp +2 -15
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/functional.hpp +4 -51
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/iostream.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/istream.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/iterator.hpp +2 -46
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/list.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/locale.hpp +2 -29
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/map.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/memory.hpp +4 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/ostream.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/queue.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/set.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/sstream.hpp +2 -19
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/stack.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/streambuf.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/string.hpp +2 -12
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/utility.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/valarray.hpp +2 -10
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/vector.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof.hpp +8 -202
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +860 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map_fwd.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +716 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set_fwd.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/allocator_constructed.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/archive_constructed.hpp +71 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/bad_archive_exception.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/concurrent_static_asserts.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +120 -85
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +1764 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +2271 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/element_type.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/flat_map_types.hpp +86 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/flat_set_types.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/ignore_wshadow.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_handle.hpp +204 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_map_types.hpp +139 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_set_types.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/reentrancy_check.hpp +138 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/restore_wshadow.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/rw_spinlock.hpp +179 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +651 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/tuple_rotate_right.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +356 -1118
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/map.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/mulx.hpp +129 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/narrow_cast.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/opt_storage.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/prime_fmod.hpp +96 -150
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialization_version.hpp +74 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_container.hpp +204 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_fca_container.hpp +156 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_tracked_address.hpp +104 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/static_assert.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/throw_exception.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/type_traits.hpp +136 -19
- data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +171 -103
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map_fwd.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +70 -46
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set_fwd.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +406 -899
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map_fwd.hpp +7 -13
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +895 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map_fwd.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +699 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set_fwd.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +253 -618
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set_fwd.hpp +8 -14
- data/src/cxx_supportlib/vendor-modified/boost/utility/swap.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/utility/value_init.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/jsoncpp/jsoncpp.cpp +2 -9
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/frame.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/processors/hybi13.hpp +14 -20
- data/src/helper-scripts/wsgi-loader.py +2 -2
- data/src/nginx_module/ConfigGeneral/ManifestGeneration.c +2 -2
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +16 -5
- data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +3 -1
- data/src/ruby_supportlib/phusion_passenger/native_support.rb +10 -7
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +8 -10
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +14 -0
- data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +4 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/libs.rb +6 -6
- data/src/ruby_supportlib/phusion_passenger/platform_info/pcre.rb +11 -12
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/app.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +4 -0
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/lldb_controller.rb +5 -1
- data/src/ruby_supportlib/phusion_passenger.rb +8 -8
- metadata +109 -150
- data/src/cxx_supportlib/ServerKit/http_parser.cpp +0 -2265
- data/src/cxx_supportlib/ServerKit/http_parser.h +0 -330
- data/src/cxx_supportlib/vendor-modified/boost/array.hpp +0 -456
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bulk_executor_op.hpp +0 -90
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_arm_fenced_block.hpp +0 -93
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_hppa_fenced_block.hpp +0 -70
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_sync_fenced_block.hpp +0 -67
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_x86_fenced_block.hpp +0 -101
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_invoke_helpers.hpp +0 -80
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/macos_fenced_block.hpp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/old_win_sdk_compat.hpp +0 -216
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/solaris_fenced_block.hpp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/variadic_templates.hpp +0 -294
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_execute.hpp +0 -406
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_guarantee.hpp +0 -1254
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/connect.hpp +0 -498
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_invocable.hpp +0 -154
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_operation.hpp +0 -111
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_receiver.hpp +0 -130
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/bulk_sender.hpp +0 -263
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/submit_receiver.hpp +0 -235
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/void_receiver.hpp +0 -92
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/execute.hpp +0 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/impl/receiver_invocation_error.ipp +0 -38
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/operation_state.hpp +0 -101
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/receiver.hpp +0 -287
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/receiver_invocation_error.hpp +0 -50
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/schedule.hpp +0 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/scheduler.hpp +0 -93
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/sender.hpp +0 -318
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_done.hpp +0 -259
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_error.hpp +0 -259
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_value.hpp +0 -492
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/start.hpp +0 -256
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/submit.hpp +0 -459
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_alloc_hook.hpp +0 -106
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_invoke_hook.hpp +0 -113
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/defer.hpp +0 -300
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/dispatch.hpp +0 -275
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/handler_alloc_hook.ipp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/post.hpp +0 -300
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/bulk_execute_free.hpp +0 -116
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/bulk_execute_member.hpp +0 -116
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/connect_free.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/connect_member.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/execute_free.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/schedule_free.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/schedule_member.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_done_free.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_done_member.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_error_free.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_error_member.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_value_free.hpp +0 -236
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_value_member.hpp +0 -236
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/start_free.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/start_member.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/submit_free.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/submit_member.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_object_handle.hpp +0 -495
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_overlapped_handle.hpp +0 -462
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_random_access_handle.hpp +0 -581
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_stream_handle.hpp +0 -563
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/object_handle.hpp +0 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/overlapped_handle.hpp +0 -41
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/overlapped_ptr.hpp +0 -147
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/random_access_handle.hpp +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/stream_handle.hpp +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_windows.hpp +0 -201
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_windows.hpp +0 -67
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_caps_windows.hpp +0 -57
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_windows.hpp +0 -179
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_mf2_cc.hpp +0 -228
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_mf_cc.hpp +0 -441
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_template.hpp +0 -345
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_cc.hpp +0 -103
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_template.hpp +0 -1047
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_vw.hpp +0 -130
- data/src/cxx_supportlib/vendor-modified/boost/bind/storage.hpp +0 -475
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/cygwin.hpp +0 -71
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/hash_table.hpp +0 -1278
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_tuple.hpp +0 -133
- data/src/cxx_supportlib/vendor-modified/boost/detail/atomic_count.hpp +0 -21
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/function_iterate.hpp +0 -16
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/gen_maybe_include.pl +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/maybe_include.hpp +0 -369
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/prologue.hpp +0 -26
- data/src/cxx_supportlib/vendor-modified/boost/function/gen_function_N.pl +0 -26
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash_fwd.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/abs.hpp +0 -89
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/gcd.hpp +0 -124
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/lcm.hpp +0 -126
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/sign.hpp +0 -89
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/overflow_helpers.hpp +0 -367
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/ratio_io.hpp +0 -1342
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/abs.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/arithmetic.hpp +0 -22
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/comparison.hpp +0 -19
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/divides.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/equal_to.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/gcd.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/greater.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/greater_equal.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/lcm.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/less.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/less_equal.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/minus.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/negate.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/not_equal_to.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/numeric_cast.hpp +0 -31
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/plus.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/rational_c_tag.hpp +0 -25
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/rational_constant.hpp +0 -15
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/sign.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/times.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_thread_pause.hpp +0 -51
- data/src/cxx_supportlib/vendor-modified/boost/swap.hpp +0 -17
- data/src/cxx_supportlib/vendor-modified/boost/type_index/stl_type_index.hpp +0 -278
- data/src/cxx_supportlib/vendor-modified/boost/type_index/type_index_facade.hpp +0 -297
- data/src/cxx_supportlib/vendor-modified/boost/type_index.hpp +0 -265
- data/src/cxx_supportlib/vendor-modified/boost/typeof/dmc/typeof_impl.hpp +0 -100
- data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode.hpp +0 -58
- data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode_params.hpp +0 -34
- data/src/cxx_supportlib/vendor-modified/boost/typeof/int_encoding.hpp +0 -118
- data/src/cxx_supportlib/vendor-modified/boost/typeof/integral_template_param.hpp +0 -80
- data/src/cxx_supportlib/vendor-modified/boost/typeof/message.hpp +0 -8
- data/src/cxx_supportlib/vendor-modified/boost/typeof/modifiers.hpp +0 -121
- data/src/cxx_supportlib/vendor-modified/boost/typeof/native.hpp +0 -60
- data/src/cxx_supportlib/vendor-modified/boost/typeof/pointers_data_members.hpp +0 -38
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions.hpp +0 -50
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions_iterate.hpp +0 -135
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_fundamental.hpp +0 -61
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_mem_functions.hpp +0 -32
- data/src/cxx_supportlib/vendor-modified/boost/typeof/template_encoding.hpp +0 -160
- data/src/cxx_supportlib/vendor-modified/boost/typeof/template_template_param.hpp +0 -149
- data/src/cxx_supportlib/vendor-modified/boost/typeof/type_encoding.hpp +0 -27
- data/src/cxx_supportlib/vendor-modified/boost/typeof/type_template_param.hpp +0 -37
- data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof_impl.hpp +0 -187
- data/src/cxx_supportlib/vendor-modified/boost/typeof/unsupported.hpp +0 -29
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector.hpp +0 -166
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector100.hpp +0 -321
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector150.hpp +0 -471
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector200.hpp +0 -621
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector50.hpp +0 -171
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa.hpp +0 -1921
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fwd.hpp +0 -64
- /data/dev/{webpacketpp.patch → websocketpp.patch} +0 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// buffer.hpp
|
|
3
3
|
// ~~~~~~~~~~
|
|
4
4
|
//
|
|
5
|
-
// Copyright (c) 2003-
|
|
5
|
+
// Copyright (c) 2003-2024 Christopher M. Kohlhoff (chris at kohlhoff dot com)
|
|
6
6
|
//
|
|
7
7
|
// Distributed under the Boost Software License, Version 1.0. (See accompanying
|
|
8
8
|
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
@@ -49,21 +49,6 @@
|
|
|
49
49
|
# include <boost/asio/detail/functional.hpp>
|
|
50
50
|
#endif // BOOST_ASIO_ENABLE_BUFFER_DEBUGGING
|
|
51
51
|
|
|
52
|
-
#if defined(BOOST_ASIO_HAS_BOOST_WORKAROUND)
|
|
53
|
-
# include <boost/detail/workaround.hpp>
|
|
54
|
-
# if !defined(__clang__)
|
|
55
|
-
# if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x582))
|
|
56
|
-
# define BOOST_ASIO_ENABLE_ARRAY_BUFFER_WORKAROUND
|
|
57
|
-
# endif // BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x582))
|
|
58
|
-
# elif BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x590))
|
|
59
|
-
# define BOOST_ASIO_ENABLE_ARRAY_BUFFER_WORKAROUND
|
|
60
|
-
# endif // BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x590))
|
|
61
|
-
#endif // defined(BOOST_ASIO_HAS_BOOST_WORKAROUND)
|
|
62
|
-
|
|
63
|
-
#if defined(BOOST_ASIO_ENABLE_ARRAY_BUFFER_WORKAROUND)
|
|
64
|
-
# include <boost/asio/detail/type_traits.hpp>
|
|
65
|
-
#endif // defined(BOOST_ASIO_ENABLE_ARRAY_BUFFER_WORKAROUND)
|
|
66
|
-
|
|
67
52
|
#include <boost/asio/detail/push_options.hpp>
|
|
68
53
|
|
|
69
54
|
namespace boost {
|
|
@@ -95,14 +80,14 @@ class mutable_buffer
|
|
|
95
80
|
{
|
|
96
81
|
public:
|
|
97
82
|
/// Construct an empty buffer.
|
|
98
|
-
mutable_buffer()
|
|
83
|
+
mutable_buffer() noexcept
|
|
99
84
|
: data_(0),
|
|
100
85
|
size_(0)
|
|
101
86
|
{
|
|
102
87
|
}
|
|
103
88
|
|
|
104
89
|
/// Construct a buffer to represent a given memory range.
|
|
105
|
-
mutable_buffer(void* data, std::size_t size)
|
|
90
|
+
mutable_buffer(void* data, std::size_t size) noexcept
|
|
106
91
|
: data_(data),
|
|
107
92
|
size_(size)
|
|
108
93
|
{
|
|
@@ -124,7 +109,7 @@ public:
|
|
|
124
109
|
#endif // BOOST_ASIO_ENABLE_BUFFER_DEBUGGING
|
|
125
110
|
|
|
126
111
|
/// Get a pointer to the beginning of the memory range.
|
|
127
|
-
void* data() const
|
|
112
|
+
void* data() const noexcept
|
|
128
113
|
{
|
|
129
114
|
#if defined(BOOST_ASIO_ENABLE_BUFFER_DEBUGGING)
|
|
130
115
|
if (size_ && debug_check_)
|
|
@@ -134,13 +119,13 @@ public:
|
|
|
134
119
|
}
|
|
135
120
|
|
|
136
121
|
/// Get the size of the memory range.
|
|
137
|
-
std::size_t size() const
|
|
122
|
+
std::size_t size() const noexcept
|
|
138
123
|
{
|
|
139
124
|
return size_;
|
|
140
125
|
}
|
|
141
126
|
|
|
142
127
|
/// Move the start of the buffer by the specified number of bytes.
|
|
143
|
-
mutable_buffer& operator+=(std::size_t n)
|
|
128
|
+
mutable_buffer& operator+=(std::size_t n) noexcept
|
|
144
129
|
{
|
|
145
130
|
std::size_t offset = n < size_ ? n : size_;
|
|
146
131
|
data_ = static_cast<char*>(data_) + offset;
|
|
@@ -172,7 +157,7 @@ public:
|
|
|
172
157
|
typedef const mutable_buffer* const_iterator;
|
|
173
158
|
|
|
174
159
|
/// Construct to represent a given memory range.
|
|
175
|
-
mutable_buffers_1(void* data, std::size_t size)
|
|
160
|
+
mutable_buffers_1(void* data, std::size_t size) noexcept
|
|
176
161
|
: mutable_buffer(data, size)
|
|
177
162
|
{
|
|
178
163
|
}
|
|
@@ -186,19 +171,19 @@ public:
|
|
|
186
171
|
#endif // BOOST_ASIO_ENABLE_BUFFER_DEBUGGING
|
|
187
172
|
|
|
188
173
|
/// Construct to represent a single modifiable buffer.
|
|
189
|
-
explicit mutable_buffers_1(const mutable_buffer& b)
|
|
174
|
+
explicit mutable_buffers_1(const mutable_buffer& b) noexcept
|
|
190
175
|
: mutable_buffer(b)
|
|
191
176
|
{
|
|
192
177
|
}
|
|
193
178
|
|
|
194
179
|
/// Get a random-access iterator to the first element.
|
|
195
|
-
const_iterator begin() const
|
|
180
|
+
const_iterator begin() const noexcept
|
|
196
181
|
{
|
|
197
182
|
return this;
|
|
198
183
|
}
|
|
199
184
|
|
|
200
185
|
/// Get a random-access iterator for one past the last element.
|
|
201
|
-
const_iterator end() const
|
|
186
|
+
const_iterator end() const noexcept
|
|
202
187
|
{
|
|
203
188
|
return begin() + 1;
|
|
204
189
|
}
|
|
@@ -229,21 +214,21 @@ class const_buffer
|
|
|
229
214
|
{
|
|
230
215
|
public:
|
|
231
216
|
/// Construct an empty buffer.
|
|
232
|
-
const_buffer()
|
|
217
|
+
const_buffer() noexcept
|
|
233
218
|
: data_(0),
|
|
234
219
|
size_(0)
|
|
235
220
|
{
|
|
236
221
|
}
|
|
237
222
|
|
|
238
223
|
/// Construct a buffer to represent a given memory range.
|
|
239
|
-
const_buffer(const void* data, std::size_t size)
|
|
224
|
+
const_buffer(const void* data, std::size_t size) noexcept
|
|
240
225
|
: data_(data),
|
|
241
226
|
size_(size)
|
|
242
227
|
{
|
|
243
228
|
}
|
|
244
229
|
|
|
245
230
|
/// Construct a non-modifiable buffer from a modifiable one.
|
|
246
|
-
const_buffer(const mutable_buffer& b)
|
|
231
|
+
const_buffer(const mutable_buffer& b) noexcept
|
|
247
232
|
: data_(b.data()),
|
|
248
233
|
size_(b.size())
|
|
249
234
|
#if defined(BOOST_ASIO_ENABLE_BUFFER_DEBUGGING)
|
|
@@ -268,7 +253,7 @@ public:
|
|
|
268
253
|
#endif // BOOST_ASIO_ENABLE_BUFFER_DEBUGGING
|
|
269
254
|
|
|
270
255
|
/// Get a pointer to the beginning of the memory range.
|
|
271
|
-
const void* data() const
|
|
256
|
+
const void* data() const noexcept
|
|
272
257
|
{
|
|
273
258
|
#if defined(BOOST_ASIO_ENABLE_BUFFER_DEBUGGING)
|
|
274
259
|
if (size_ && debug_check_)
|
|
@@ -278,13 +263,13 @@ public:
|
|
|
278
263
|
}
|
|
279
264
|
|
|
280
265
|
/// Get the size of the memory range.
|
|
281
|
-
std::size_t size() const
|
|
266
|
+
std::size_t size() const noexcept
|
|
282
267
|
{
|
|
283
268
|
return size_;
|
|
284
269
|
}
|
|
285
270
|
|
|
286
271
|
/// Move the start of the buffer by the specified number of bytes.
|
|
287
|
-
const_buffer& operator+=(std::size_t n)
|
|
272
|
+
const_buffer& operator+=(std::size_t n) noexcept
|
|
288
273
|
{
|
|
289
274
|
std::size_t offset = n < size_ ? n : size_;
|
|
290
275
|
data_ = static_cast<const char*>(data_) + offset;
|
|
@@ -316,7 +301,7 @@ public:
|
|
|
316
301
|
typedef const const_buffer* const_iterator;
|
|
317
302
|
|
|
318
303
|
/// Construct to represent a given memory range.
|
|
319
|
-
const_buffers_1(const void* data, std::size_t size)
|
|
304
|
+
const_buffers_1(const void* data, std::size_t size) noexcept
|
|
320
305
|
: const_buffer(data, size)
|
|
321
306
|
{
|
|
322
307
|
}
|
|
@@ -330,19 +315,19 @@ public:
|
|
|
330
315
|
#endif // BOOST_ASIO_ENABLE_BUFFER_DEBUGGING
|
|
331
316
|
|
|
332
317
|
/// Construct to represent a single non-modifiable buffer.
|
|
333
|
-
explicit const_buffers_1(const const_buffer& b)
|
|
318
|
+
explicit const_buffers_1(const const_buffer& b) noexcept
|
|
334
319
|
: const_buffer(b)
|
|
335
320
|
{
|
|
336
321
|
}
|
|
337
322
|
|
|
338
323
|
/// Get a random-access iterator to the first element.
|
|
339
|
-
const_iterator begin() const
|
|
324
|
+
const_iterator begin() const noexcept
|
|
340
325
|
{
|
|
341
326
|
return this;
|
|
342
327
|
}
|
|
343
328
|
|
|
344
329
|
/// Get a random-access iterator for one past the last element.
|
|
345
|
-
const_iterator end() const
|
|
330
|
+
const_iterator end() const noexcept
|
|
346
331
|
{
|
|
347
332
|
return begin() + 1;
|
|
348
333
|
}
|
|
@@ -363,13 +348,13 @@ public:
|
|
|
363
348
|
typedef const mutable_buffer* const_iterator;
|
|
364
349
|
|
|
365
350
|
/// Get a random-access iterator to the first element.
|
|
366
|
-
const_iterator begin() const
|
|
351
|
+
const_iterator begin() const noexcept
|
|
367
352
|
{
|
|
368
353
|
return &buf_;
|
|
369
354
|
}
|
|
370
355
|
|
|
371
356
|
/// Get a random-access iterator for one past the last element.
|
|
372
|
-
const_iterator end() const
|
|
357
|
+
const_iterator end() const noexcept
|
|
373
358
|
{
|
|
374
359
|
return &buf_;
|
|
375
360
|
}
|
|
@@ -388,9 +373,9 @@ private:
|
|
|
388
373
|
/// Get an iterator to the first element in a buffer sequence.
|
|
389
374
|
template <typename MutableBuffer>
|
|
390
375
|
inline const mutable_buffer* buffer_sequence_begin(const MutableBuffer& b,
|
|
391
|
-
|
|
376
|
+
constraint_t<
|
|
392
377
|
is_convertible<const MutableBuffer*, const mutable_buffer*>::value
|
|
393
|
-
|
|
378
|
+
> = 0) noexcept
|
|
394
379
|
{
|
|
395
380
|
return static_cast<const mutable_buffer*>(detail::addressof(b));
|
|
396
381
|
}
|
|
@@ -398,22 +383,20 @@ inline const mutable_buffer* buffer_sequence_begin(const MutableBuffer& b,
|
|
|
398
383
|
/// Get an iterator to the first element in a buffer sequence.
|
|
399
384
|
template <typename ConstBuffer>
|
|
400
385
|
inline const const_buffer* buffer_sequence_begin(const ConstBuffer& b,
|
|
401
|
-
|
|
386
|
+
constraint_t<
|
|
402
387
|
is_convertible<const ConstBuffer*, const const_buffer*>::value
|
|
403
|
-
|
|
388
|
+
> = 0) noexcept
|
|
404
389
|
{
|
|
405
390
|
return static_cast<const const_buffer*>(detail::addressof(b));
|
|
406
391
|
}
|
|
407
392
|
|
|
408
|
-
#if defined(BOOST_ASIO_HAS_DECLTYPE) || defined(GENERATING_DOCUMENTATION)
|
|
409
|
-
|
|
410
393
|
/// Get an iterator to the first element in a buffer sequence.
|
|
411
394
|
template <typename C>
|
|
412
395
|
inline auto buffer_sequence_begin(C& c,
|
|
413
|
-
|
|
396
|
+
constraint_t<
|
|
414
397
|
!is_convertible<const C*, const mutable_buffer*>::value
|
|
415
398
|
&& !is_convertible<const C*, const const_buffer*>::value
|
|
416
|
-
|
|
399
|
+
> = 0) noexcept -> decltype(c.begin())
|
|
417
400
|
{
|
|
418
401
|
return c.begin();
|
|
419
402
|
}
|
|
@@ -421,38 +404,14 @@ inline auto buffer_sequence_begin(C& c,
|
|
|
421
404
|
/// Get an iterator to the first element in a buffer sequence.
|
|
422
405
|
template <typename C>
|
|
423
406
|
inline auto buffer_sequence_begin(const C& c,
|
|
424
|
-
|
|
425
|
-
!is_convertible<const C*, const mutable_buffer*>::value
|
|
426
|
-
&& !is_convertible<const C*, const const_buffer*>::value
|
|
427
|
-
>::type = 0) BOOST_ASIO_NOEXCEPT -> decltype(c.begin())
|
|
428
|
-
{
|
|
429
|
-
return c.begin();
|
|
430
|
-
}
|
|
431
|
-
|
|
432
|
-
#else // defined(BOOST_ASIO_HAS_DECLTYPE) || defined(GENERATING_DOCUMENTATION)
|
|
433
|
-
|
|
434
|
-
template <typename C>
|
|
435
|
-
inline typename C::iterator buffer_sequence_begin(C& c,
|
|
436
|
-
typename constraint<
|
|
437
|
-
!is_convertible<const C*, const mutable_buffer*>::value
|
|
438
|
-
&& !is_convertible<const C*, const const_buffer*>::value
|
|
439
|
-
>::type = 0) BOOST_ASIO_NOEXCEPT
|
|
440
|
-
{
|
|
441
|
-
return c.begin();
|
|
442
|
-
}
|
|
443
|
-
|
|
444
|
-
template <typename C>
|
|
445
|
-
inline typename C::const_iterator buffer_sequence_begin(const C& c,
|
|
446
|
-
typename constraint<
|
|
407
|
+
constraint_t<
|
|
447
408
|
!is_convertible<const C*, const mutable_buffer*>::value
|
|
448
409
|
&& !is_convertible<const C*, const const_buffer*>::value
|
|
449
|
-
|
|
410
|
+
> = 0) noexcept -> decltype(c.begin())
|
|
450
411
|
{
|
|
451
412
|
return c.begin();
|
|
452
413
|
}
|
|
453
414
|
|
|
454
|
-
#endif // defined(BOOST_ASIO_HAS_DECLTYPE) || defined(GENERATING_DOCUMENTATION)
|
|
455
|
-
|
|
456
415
|
/*@}*/
|
|
457
416
|
|
|
458
417
|
/** @defgroup buffer_sequence_end boost::asio::buffer_sequence_end
|
|
@@ -465,9 +424,9 @@ inline typename C::const_iterator buffer_sequence_begin(const C& c,
|
|
|
465
424
|
/// Get an iterator to one past the end element in a buffer sequence.
|
|
466
425
|
template <typename MutableBuffer>
|
|
467
426
|
inline const mutable_buffer* buffer_sequence_end(const MutableBuffer& b,
|
|
468
|
-
|
|
427
|
+
constraint_t<
|
|
469
428
|
is_convertible<const MutableBuffer*, const mutable_buffer*>::value
|
|
470
|
-
|
|
429
|
+
> = 0) noexcept
|
|
471
430
|
{
|
|
472
431
|
return static_cast<const mutable_buffer*>(detail::addressof(b)) + 1;
|
|
473
432
|
}
|
|
@@ -475,22 +434,20 @@ inline const mutable_buffer* buffer_sequence_end(const MutableBuffer& b,
|
|
|
475
434
|
/// Get an iterator to one past the end element in a buffer sequence.
|
|
476
435
|
template <typename ConstBuffer>
|
|
477
436
|
inline const const_buffer* buffer_sequence_end(const ConstBuffer& b,
|
|
478
|
-
|
|
437
|
+
constraint_t<
|
|
479
438
|
is_convertible<const ConstBuffer*, const const_buffer*>::value
|
|
480
|
-
|
|
439
|
+
> = 0) noexcept
|
|
481
440
|
{
|
|
482
441
|
return static_cast<const const_buffer*>(detail::addressof(b)) + 1;
|
|
483
442
|
}
|
|
484
443
|
|
|
485
|
-
#if defined(BOOST_ASIO_HAS_DECLTYPE) || defined(GENERATING_DOCUMENTATION)
|
|
486
|
-
|
|
487
444
|
/// Get an iterator to one past the end element in a buffer sequence.
|
|
488
445
|
template <typename C>
|
|
489
446
|
inline auto buffer_sequence_end(C& c,
|
|
490
|
-
|
|
447
|
+
constraint_t<
|
|
491
448
|
!is_convertible<const C*, const mutable_buffer*>::value
|
|
492
449
|
&& !is_convertible<const C*, const const_buffer*>::value
|
|
493
|
-
|
|
450
|
+
> = 0) noexcept -> decltype(c.end())
|
|
494
451
|
{
|
|
495
452
|
return c.end();
|
|
496
453
|
}
|
|
@@ -498,38 +455,14 @@ inline auto buffer_sequence_end(C& c,
|
|
|
498
455
|
/// Get an iterator to one past the end element in a buffer sequence.
|
|
499
456
|
template <typename C>
|
|
500
457
|
inline auto buffer_sequence_end(const C& c,
|
|
501
|
-
|
|
502
|
-
!is_convertible<const C*, const mutable_buffer*>::value
|
|
503
|
-
&& !is_convertible<const C*, const const_buffer*>::value
|
|
504
|
-
>::type = 0) BOOST_ASIO_NOEXCEPT -> decltype(c.end())
|
|
505
|
-
{
|
|
506
|
-
return c.end();
|
|
507
|
-
}
|
|
508
|
-
|
|
509
|
-
#else // defined(BOOST_ASIO_HAS_DECLTYPE) || defined(GENERATING_DOCUMENTATION)
|
|
510
|
-
|
|
511
|
-
template <typename C>
|
|
512
|
-
inline typename C::iterator buffer_sequence_end(C& c,
|
|
513
|
-
typename constraint<
|
|
458
|
+
constraint_t<
|
|
514
459
|
!is_convertible<const C*, const mutable_buffer*>::value
|
|
515
460
|
&& !is_convertible<const C*, const const_buffer*>::value
|
|
516
|
-
|
|
461
|
+
> = 0) noexcept -> decltype(c.end())
|
|
517
462
|
{
|
|
518
463
|
return c.end();
|
|
519
464
|
}
|
|
520
465
|
|
|
521
|
-
template <typename C>
|
|
522
|
-
inline typename C::const_iterator buffer_sequence_end(const C& c,
|
|
523
|
-
typename constraint<
|
|
524
|
-
!is_convertible<const C*, const mutable_buffer*>::value
|
|
525
|
-
&& !is_convertible<const C*, const const_buffer*>::value
|
|
526
|
-
>::type = 0) BOOST_ASIO_NOEXCEPT
|
|
527
|
-
{
|
|
528
|
-
return c.end();
|
|
529
|
-
}
|
|
530
|
-
|
|
531
|
-
#endif // defined(BOOST_ASIO_HAS_DECLTYPE) || defined(GENERATING_DOCUMENTATION)
|
|
532
|
-
|
|
533
466
|
/*@}*/
|
|
534
467
|
|
|
535
468
|
namespace detail {
|
|
@@ -541,25 +474,25 @@ struct multiple_buffers {};
|
|
|
541
474
|
// Helper trait to detect single buffers.
|
|
542
475
|
template <typename BufferSequence>
|
|
543
476
|
struct buffer_sequence_cardinality :
|
|
544
|
-
|
|
477
|
+
conditional_t<
|
|
545
478
|
is_same<BufferSequence, mutable_buffer>::value
|
|
546
479
|
#if !defined(BOOST_ASIO_NO_DEPRECATED)
|
|
547
480
|
|| is_same<BufferSequence, mutable_buffers_1>::value
|
|
548
481
|
|| is_same<BufferSequence, const_buffers_1>::value
|
|
549
482
|
#endif // !defined(BOOST_ASIO_NO_DEPRECATED)
|
|
550
483
|
|| is_same<BufferSequence, const_buffer>::value,
|
|
551
|
-
one_buffer, multiple_buffers
|
|
484
|
+
one_buffer, multiple_buffers> {};
|
|
552
485
|
|
|
553
486
|
template <typename Iterator>
|
|
554
487
|
inline std::size_t buffer_size(one_buffer,
|
|
555
|
-
Iterator begin, Iterator)
|
|
488
|
+
Iterator begin, Iterator) noexcept
|
|
556
489
|
{
|
|
557
490
|
return const_buffer(*begin).size();
|
|
558
491
|
}
|
|
559
492
|
|
|
560
493
|
template <typename Iterator>
|
|
561
494
|
inline std::size_t buffer_size(multiple_buffers,
|
|
562
|
-
Iterator begin, Iterator end)
|
|
495
|
+
Iterator begin, Iterator end) noexcept
|
|
563
496
|
{
|
|
564
497
|
std::size_t total_buffer_size = 0;
|
|
565
498
|
|
|
@@ -594,7 +527,7 @@ inline std::size_t buffer_size(multiple_buffers,
|
|
|
594
527
|
* ConstBufferSequence or @c MutableBufferSequence type requirements.
|
|
595
528
|
*/
|
|
596
529
|
template <typename BufferSequence>
|
|
597
|
-
inline std::size_t buffer_size(const BufferSequence& b)
|
|
530
|
+
inline std::size_t buffer_size(const BufferSequence& b) noexcept
|
|
598
531
|
{
|
|
599
532
|
return detail::buffer_size(
|
|
600
533
|
detail::buffer_sequence_cardinality<BufferSequence>(),
|
|
@@ -629,14 +562,14 @@ inline std::size_t buffer_size(const BufferSequence& b) BOOST_ASIO_NOEXCEPT
|
|
|
629
562
|
|
|
630
563
|
/// Cast a non-modifiable buffer to a specified pointer to POD type.
|
|
631
564
|
template <typename PointerToPodType>
|
|
632
|
-
inline PointerToPodType buffer_cast(const mutable_buffer& b)
|
|
565
|
+
inline PointerToPodType buffer_cast(const mutable_buffer& b) noexcept
|
|
633
566
|
{
|
|
634
567
|
return static_cast<PointerToPodType>(b.data());
|
|
635
568
|
}
|
|
636
569
|
|
|
637
570
|
/// Cast a non-modifiable buffer to a specified pointer to POD type.
|
|
638
571
|
template <typename PointerToPodType>
|
|
639
|
-
inline PointerToPodType buffer_cast(const const_buffer& b)
|
|
572
|
+
inline PointerToPodType buffer_cast(const const_buffer& b) noexcept
|
|
640
573
|
{
|
|
641
574
|
return static_cast<PointerToPodType>(b.data());
|
|
642
575
|
}
|
|
@@ -650,7 +583,7 @@ inline PointerToPodType buffer_cast(const const_buffer& b) BOOST_ASIO_NOEXCEPT
|
|
|
650
583
|
* @relates mutable_buffer
|
|
651
584
|
*/
|
|
652
585
|
inline mutable_buffer operator+(const mutable_buffer& b,
|
|
653
|
-
std::size_t n)
|
|
586
|
+
std::size_t n) noexcept
|
|
654
587
|
{
|
|
655
588
|
std::size_t offset = n < b.size() ? n : b.size();
|
|
656
589
|
char* new_data = static_cast<char*>(b.data()) + offset;
|
|
@@ -667,7 +600,7 @@ inline mutable_buffer operator+(const mutable_buffer& b,
|
|
|
667
600
|
* @relates mutable_buffer
|
|
668
601
|
*/
|
|
669
602
|
inline mutable_buffer operator+(std::size_t n,
|
|
670
|
-
const mutable_buffer& b)
|
|
603
|
+
const mutable_buffer& b) noexcept
|
|
671
604
|
{
|
|
672
605
|
return b + n;
|
|
673
606
|
}
|
|
@@ -677,7 +610,7 @@ inline mutable_buffer operator+(std::size_t n,
|
|
|
677
610
|
* @relates const_buffer
|
|
678
611
|
*/
|
|
679
612
|
inline const_buffer operator+(const const_buffer& b,
|
|
680
|
-
std::size_t n)
|
|
613
|
+
std::size_t n) noexcept
|
|
681
614
|
{
|
|
682
615
|
std::size_t offset = n < b.size() ? n : b.size();
|
|
683
616
|
const char* new_data = static_cast<const char*>(b.data()) + offset;
|
|
@@ -694,7 +627,7 @@ inline const_buffer operator+(const const_buffer& b,
|
|
|
694
627
|
* @relates const_buffer
|
|
695
628
|
*/
|
|
696
629
|
inline const_buffer operator+(std::size_t n,
|
|
697
|
-
const const_buffer& b)
|
|
630
|
+
const const_buffer& b) noexcept
|
|
698
631
|
{
|
|
699
632
|
return b + n;
|
|
700
633
|
}
|
|
@@ -893,6 +826,25 @@ private:
|
|
|
893
826
|
* bufs2.push_back(boost::asio::buffer(d2));
|
|
894
827
|
* bufs2.push_back(boost::asio::buffer(d3));
|
|
895
828
|
* bytes_transferred = sock.send(bufs2); @endcode
|
|
829
|
+
*
|
|
830
|
+
* @par Buffer Literals
|
|
831
|
+
*
|
|
832
|
+
* The `_buf` literal suffix, defined in namespace
|
|
833
|
+
* <tt>boost::asio::buffer_literals</tt>, may be used to create @c const_buffer
|
|
834
|
+
* objects from string, binary integer, and hexadecimal integer literals.
|
|
835
|
+
* For example:
|
|
836
|
+
*
|
|
837
|
+
* @code
|
|
838
|
+
* using namespace boost::asio::buffer_literals;
|
|
839
|
+
*
|
|
840
|
+
* boost::asio::const_buffer b1 = "hello"_buf;
|
|
841
|
+
* boost::asio::const_buffer b2 = 0xdeadbeef_buf;
|
|
842
|
+
* boost::asio::const_buffer b3 = 0x0123456789abcdef0123456789abcdef_buf;
|
|
843
|
+
* boost::asio::const_buffer b4 = 0b1010101011001100_buf; @endcode
|
|
844
|
+
*
|
|
845
|
+
* Note that the memory associated with a buffer literal is valid for the
|
|
846
|
+
* lifetime of the program. This means that the buffer can be safely used with
|
|
847
|
+
* asynchronous operations.
|
|
896
848
|
*/
|
|
897
849
|
/*@{*/
|
|
898
850
|
|
|
@@ -909,7 +861,7 @@ private:
|
|
|
909
861
|
* @returns <tt>mutable_buffer(b)</tt>.
|
|
910
862
|
*/
|
|
911
863
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
912
|
-
const mutable_buffer& b)
|
|
864
|
+
const mutable_buffer& b) noexcept
|
|
913
865
|
{
|
|
914
866
|
return BOOST_ASIO_MUTABLE_BUFFER(b);
|
|
915
867
|
}
|
|
@@ -923,7 +875,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
923
875
|
*/
|
|
924
876
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
925
877
|
const mutable_buffer& b,
|
|
926
|
-
std::size_t max_size_in_bytes)
|
|
878
|
+
std::size_t max_size_in_bytes) noexcept
|
|
927
879
|
{
|
|
928
880
|
return BOOST_ASIO_MUTABLE_BUFFER(
|
|
929
881
|
mutable_buffer(b.data(),
|
|
@@ -940,7 +892,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
940
892
|
* @returns <tt>const_buffer(b)</tt>.
|
|
941
893
|
*/
|
|
942
894
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
943
|
-
const const_buffer& b)
|
|
895
|
+
const const_buffer& b) noexcept
|
|
944
896
|
{
|
|
945
897
|
return BOOST_ASIO_CONST_BUFFER(b);
|
|
946
898
|
}
|
|
@@ -954,7 +906,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
954
906
|
*/
|
|
955
907
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
956
908
|
const const_buffer& b,
|
|
957
|
-
std::size_t max_size_in_bytes)
|
|
909
|
+
std::size_t max_size_in_bytes) noexcept
|
|
958
910
|
{
|
|
959
911
|
return BOOST_ASIO_CONST_BUFFER(b.data(),
|
|
960
912
|
b.size() < max_size_in_bytes
|
|
@@ -970,7 +922,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
970
922
|
* @returns <tt>mutable_buffer(data, size_in_bytes)</tt>.
|
|
971
923
|
*/
|
|
972
924
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
973
|
-
void* data, std::size_t size_in_bytes)
|
|
925
|
+
void* data, std::size_t size_in_bytes) noexcept
|
|
974
926
|
{
|
|
975
927
|
return BOOST_ASIO_MUTABLE_BUFFER(data, size_in_bytes);
|
|
976
928
|
}
|
|
@@ -980,7 +932,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
980
932
|
* @returns <tt>const_buffer(data, size_in_bytes)</tt>.
|
|
981
933
|
*/
|
|
982
934
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
983
|
-
const void* data, std::size_t size_in_bytes)
|
|
935
|
+
const void* data, std::size_t size_in_bytes) noexcept
|
|
984
936
|
{
|
|
985
937
|
return BOOST_ASIO_CONST_BUFFER(data, size_in_bytes);
|
|
986
938
|
}
|
|
@@ -994,11 +946,11 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
994
946
|
*/
|
|
995
947
|
template <typename PodType, std::size_t N>
|
|
996
948
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
997
|
-
PodType (&data)[N])
|
|
949
|
+
PodType (&data)[N]) noexcept
|
|
998
950
|
{
|
|
999
951
|
return BOOST_ASIO_MUTABLE_BUFFER(data, N * sizeof(PodType));
|
|
1000
952
|
}
|
|
1001
|
-
|
|
953
|
+
|
|
1002
954
|
/// Create a new modifiable buffer that represents the given POD array.
|
|
1003
955
|
/**
|
|
1004
956
|
* @returns A mutable_buffer value equivalent to:
|
|
@@ -1009,13 +961,13 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1009
961
|
template <typename PodType, std::size_t N>
|
|
1010
962
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
1011
963
|
PodType (&data)[N],
|
|
1012
|
-
std::size_t max_size_in_bytes)
|
|
964
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1013
965
|
{
|
|
1014
966
|
return BOOST_ASIO_MUTABLE_BUFFER(data,
|
|
1015
967
|
N * sizeof(PodType) < max_size_in_bytes
|
|
1016
968
|
? N * sizeof(PodType) : max_size_in_bytes);
|
|
1017
969
|
}
|
|
1018
|
-
|
|
970
|
+
|
|
1019
971
|
/// Create a new non-modifiable buffer that represents the given POD array.
|
|
1020
972
|
/**
|
|
1021
973
|
* @returns A const_buffer value equivalent to:
|
|
@@ -1025,7 +977,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1025
977
|
*/
|
|
1026
978
|
template <typename PodType, std::size_t N>
|
|
1027
979
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1028
|
-
const PodType (&data)[N])
|
|
980
|
+
const PodType (&data)[N]) noexcept
|
|
1029
981
|
{
|
|
1030
982
|
return BOOST_ASIO_CONST_BUFFER(data, N * sizeof(PodType));
|
|
1031
983
|
}
|
|
@@ -1040,85 +992,13 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1040
992
|
template <typename PodType, std::size_t N>
|
|
1041
993
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1042
994
|
const PodType (&data)[N],
|
|
1043
|
-
std::size_t max_size_in_bytes)
|
|
995
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1044
996
|
{
|
|
1045
997
|
return BOOST_ASIO_CONST_BUFFER(data,
|
|
1046
998
|
N * sizeof(PodType) < max_size_in_bytes
|
|
1047
999
|
? N * sizeof(PodType) : max_size_in_bytes);
|
|
1048
1000
|
}
|
|
1049
1001
|
|
|
1050
|
-
#if defined(BOOST_ASIO_ENABLE_ARRAY_BUFFER_WORKAROUND)
|
|
1051
|
-
|
|
1052
|
-
// Borland C++ and Sun Studio think the overloads:
|
|
1053
|
-
//
|
|
1054
|
-
// unspecified buffer(boost::array<PodType, N>& array ...);
|
|
1055
|
-
//
|
|
1056
|
-
// and
|
|
1057
|
-
//
|
|
1058
|
-
// unspecified buffer(boost::array<const PodType, N>& array ...);
|
|
1059
|
-
//
|
|
1060
|
-
// are ambiguous. This will be worked around by using a buffer_types traits
|
|
1061
|
-
// class that contains typedefs for the appropriate buffer and container
|
|
1062
|
-
// classes, based on whether PodType is const or non-const.
|
|
1063
|
-
|
|
1064
|
-
namespace detail {
|
|
1065
|
-
|
|
1066
|
-
template <bool IsConst>
|
|
1067
|
-
struct buffer_types_base;
|
|
1068
|
-
|
|
1069
|
-
template <>
|
|
1070
|
-
struct buffer_types_base<false>
|
|
1071
|
-
{
|
|
1072
|
-
typedef mutable_buffer buffer_type;
|
|
1073
|
-
typedef BOOST_ASIO_MUTABLE_BUFFER container_type;
|
|
1074
|
-
};
|
|
1075
|
-
|
|
1076
|
-
template <>
|
|
1077
|
-
struct buffer_types_base<true>
|
|
1078
|
-
{
|
|
1079
|
-
typedef const_buffer buffer_type;
|
|
1080
|
-
typedef BOOST_ASIO_CONST_BUFFER container_type;
|
|
1081
|
-
};
|
|
1082
|
-
|
|
1083
|
-
template <typename PodType>
|
|
1084
|
-
struct buffer_types
|
|
1085
|
-
: public buffer_types_base<is_const<PodType>::value>
|
|
1086
|
-
{
|
|
1087
|
-
};
|
|
1088
|
-
|
|
1089
|
-
} // namespace detail
|
|
1090
|
-
|
|
1091
|
-
template <typename PodType, std::size_t N>
|
|
1092
|
-
BOOST_ASIO_NODISCARD inline
|
|
1093
|
-
typename detail::buffer_types<PodType>::container_type
|
|
1094
|
-
buffer(boost::array<PodType, N>& data) BOOST_ASIO_NOEXCEPT
|
|
1095
|
-
{
|
|
1096
|
-
typedef typename boost::asio::detail::buffer_types<PodType>::buffer_type
|
|
1097
|
-
buffer_type;
|
|
1098
|
-
typedef typename boost::asio::detail::buffer_types<PodType>::container_type
|
|
1099
|
-
container_type;
|
|
1100
|
-
return container_type(
|
|
1101
|
-
buffer_type(data.c_array(), data.size() * sizeof(PodType)));
|
|
1102
|
-
}
|
|
1103
|
-
|
|
1104
|
-
template <typename PodType, std::size_t N>
|
|
1105
|
-
BOOST_ASIO_NODISCARD inline
|
|
1106
|
-
typename detail::buffer_types<PodType>::container_type
|
|
1107
|
-
buffer(boost::array<PodType, N>& data,
|
|
1108
|
-
std::size_t max_size_in_bytes) BOOST_ASIO_NOEXCEPT
|
|
1109
|
-
{
|
|
1110
|
-
typedef typename boost::asio::detail::buffer_types<PodType>::buffer_type
|
|
1111
|
-
buffer_type;
|
|
1112
|
-
typedef typename boost::asio::detail::buffer_types<PodType>::container_type
|
|
1113
|
-
container_type;
|
|
1114
|
-
return container_type(
|
|
1115
|
-
buffer_type(data.c_array(),
|
|
1116
|
-
data.size() * sizeof(PodType) < max_size_in_bytes
|
|
1117
|
-
? data.size() * sizeof(PodType) : max_size_in_bytes));
|
|
1118
|
-
}
|
|
1119
|
-
|
|
1120
|
-
#else // defined(BOOST_ASIO_ENABLE_ARRAY_BUFFER_WORKAROUND)
|
|
1121
|
-
|
|
1122
1002
|
/// Create a new modifiable buffer that represents the given POD array.
|
|
1123
1003
|
/**
|
|
1124
1004
|
* @returns A mutable_buffer value equivalent to:
|
|
@@ -1128,7 +1008,7 @@ buffer(boost::array<PodType, N>& data,
|
|
|
1128
1008
|
*/
|
|
1129
1009
|
template <typename PodType, std::size_t N>
|
|
1130
1010
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
1131
|
-
boost::array<PodType, N>& data)
|
|
1011
|
+
boost::array<PodType, N>& data) noexcept
|
|
1132
1012
|
{
|
|
1133
1013
|
return BOOST_ASIO_MUTABLE_BUFFER(
|
|
1134
1014
|
data.c_array(), data.size() * sizeof(PodType));
|
|
@@ -1144,7 +1024,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1144
1024
|
template <typename PodType, std::size_t N>
|
|
1145
1025
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
1146
1026
|
boost::array<PodType, N>& data,
|
|
1147
|
-
std::size_t max_size_in_bytes)
|
|
1027
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1148
1028
|
{
|
|
1149
1029
|
return BOOST_ASIO_MUTABLE_BUFFER(data.c_array(),
|
|
1150
1030
|
data.size() * sizeof(PodType) < max_size_in_bytes
|
|
@@ -1160,7 +1040,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1160
1040
|
*/
|
|
1161
1041
|
template <typename PodType, std::size_t N>
|
|
1162
1042
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1163
|
-
boost::array<const PodType, N>& data)
|
|
1043
|
+
boost::array<const PodType, N>& data) noexcept
|
|
1164
1044
|
{
|
|
1165
1045
|
return BOOST_ASIO_CONST_BUFFER(data.data(), data.size() * sizeof(PodType));
|
|
1166
1046
|
}
|
|
@@ -1175,15 +1055,13 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1175
1055
|
template <typename PodType, std::size_t N>
|
|
1176
1056
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1177
1057
|
boost::array<const PodType, N>& data,
|
|
1178
|
-
std::size_t max_size_in_bytes)
|
|
1058
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1179
1059
|
{
|
|
1180
1060
|
return BOOST_ASIO_CONST_BUFFER(data.data(),
|
|
1181
1061
|
data.size() * sizeof(PodType) < max_size_in_bytes
|
|
1182
1062
|
? data.size() * sizeof(PodType) : max_size_in_bytes);
|
|
1183
1063
|
}
|
|
1184
1064
|
|
|
1185
|
-
#endif // defined(BOOST_ASIO_ENABLE_ARRAY_BUFFER_WORKAROUND)
|
|
1186
|
-
|
|
1187
1065
|
/// Create a new non-modifiable buffer that represents the given POD array.
|
|
1188
1066
|
/**
|
|
1189
1067
|
* @returns A const_buffer value equivalent to:
|
|
@@ -1193,7 +1071,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1193
1071
|
*/
|
|
1194
1072
|
template <typename PodType, std::size_t N>
|
|
1195
1073
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1196
|
-
const boost::array<PodType, N>& data)
|
|
1074
|
+
const boost::array<PodType, N>& data) noexcept
|
|
1197
1075
|
{
|
|
1198
1076
|
return BOOST_ASIO_CONST_BUFFER(data.data(), data.size() * sizeof(PodType));
|
|
1199
1077
|
}
|
|
@@ -1208,15 +1086,13 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1208
1086
|
template <typename PodType, std::size_t N>
|
|
1209
1087
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1210
1088
|
const boost::array<PodType, N>& data,
|
|
1211
|
-
std::size_t max_size_in_bytes)
|
|
1089
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1212
1090
|
{
|
|
1213
1091
|
return BOOST_ASIO_CONST_BUFFER(data.data(),
|
|
1214
1092
|
data.size() * sizeof(PodType) < max_size_in_bytes
|
|
1215
1093
|
? data.size() * sizeof(PodType) : max_size_in_bytes);
|
|
1216
1094
|
}
|
|
1217
1095
|
|
|
1218
|
-
#if defined(BOOST_ASIO_HAS_STD_ARRAY) || defined(GENERATING_DOCUMENTATION)
|
|
1219
|
-
|
|
1220
1096
|
/// Create a new modifiable buffer that represents the given POD array.
|
|
1221
1097
|
/**
|
|
1222
1098
|
* @returns A mutable_buffer value equivalent to:
|
|
@@ -1226,7 +1102,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1226
1102
|
*/
|
|
1227
1103
|
template <typename PodType, std::size_t N>
|
|
1228
1104
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
1229
|
-
std::array<PodType, N>& data)
|
|
1105
|
+
std::array<PodType, N>& data) noexcept
|
|
1230
1106
|
{
|
|
1231
1107
|
return BOOST_ASIO_MUTABLE_BUFFER(data.data(), data.size() * sizeof(PodType));
|
|
1232
1108
|
}
|
|
@@ -1241,7 +1117,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1241
1117
|
template <typename PodType, std::size_t N>
|
|
1242
1118
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
1243
1119
|
std::array<PodType, N>& data,
|
|
1244
|
-
std::size_t max_size_in_bytes)
|
|
1120
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1245
1121
|
{
|
|
1246
1122
|
return BOOST_ASIO_MUTABLE_BUFFER(data.data(),
|
|
1247
1123
|
data.size() * sizeof(PodType) < max_size_in_bytes
|
|
@@ -1257,7 +1133,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1257
1133
|
*/
|
|
1258
1134
|
template <typename PodType, std::size_t N>
|
|
1259
1135
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1260
|
-
std::array<const PodType, N>& data)
|
|
1136
|
+
std::array<const PodType, N>& data) noexcept
|
|
1261
1137
|
{
|
|
1262
1138
|
return BOOST_ASIO_CONST_BUFFER(data.data(), data.size() * sizeof(PodType));
|
|
1263
1139
|
}
|
|
@@ -1272,7 +1148,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1272
1148
|
template <typename PodType, std::size_t N>
|
|
1273
1149
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1274
1150
|
std::array<const PodType, N>& data,
|
|
1275
|
-
std::size_t max_size_in_bytes)
|
|
1151
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1276
1152
|
{
|
|
1277
1153
|
return BOOST_ASIO_CONST_BUFFER(data.data(),
|
|
1278
1154
|
data.size() * sizeof(PodType) < max_size_in_bytes
|
|
@@ -1288,7 +1164,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1288
1164
|
*/
|
|
1289
1165
|
template <typename PodType, std::size_t N>
|
|
1290
1166
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1291
|
-
const std::array<PodType, N>& data)
|
|
1167
|
+
const std::array<PodType, N>& data) noexcept
|
|
1292
1168
|
{
|
|
1293
1169
|
return BOOST_ASIO_CONST_BUFFER(data.data(), data.size() * sizeof(PodType));
|
|
1294
1170
|
}
|
|
@@ -1303,15 +1179,13 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1303
1179
|
template <typename PodType, std::size_t N>
|
|
1304
1180
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1305
1181
|
const std::array<PodType, N>& data,
|
|
1306
|
-
std::size_t max_size_in_bytes)
|
|
1182
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1307
1183
|
{
|
|
1308
1184
|
return BOOST_ASIO_CONST_BUFFER(data.data(),
|
|
1309
1185
|
data.size() * sizeof(PodType) < max_size_in_bytes
|
|
1310
1186
|
? data.size() * sizeof(PodType) : max_size_in_bytes);
|
|
1311
1187
|
}
|
|
1312
1188
|
|
|
1313
|
-
#endif // defined(BOOST_ASIO_HAS_STD_ARRAY) || defined(GENERATING_DOCUMENTATION)
|
|
1314
|
-
|
|
1315
1189
|
/// Create a new modifiable buffer that represents the given POD vector.
|
|
1316
1190
|
/**
|
|
1317
1191
|
* @returns A mutable_buffer value equivalent to:
|
|
@@ -1324,7 +1198,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1324
1198
|
*/
|
|
1325
1199
|
template <typename PodType, typename Allocator>
|
|
1326
1200
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
1327
|
-
std::vector<PodType, Allocator>& data)
|
|
1201
|
+
std::vector<PodType, Allocator>& data) noexcept
|
|
1328
1202
|
{
|
|
1329
1203
|
return BOOST_ASIO_MUTABLE_BUFFER(
|
|
1330
1204
|
data.size() ? &data[0] : 0, data.size() * sizeof(PodType)
|
|
@@ -1349,7 +1223,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1349
1223
|
template <typename PodType, typename Allocator>
|
|
1350
1224
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
1351
1225
|
std::vector<PodType, Allocator>& data,
|
|
1352
|
-
std::size_t max_size_in_bytes)
|
|
1226
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1353
1227
|
{
|
|
1354
1228
|
return BOOST_ASIO_MUTABLE_BUFFER(data.size() ? &data[0] : 0,
|
|
1355
1229
|
data.size() * sizeof(PodType) < max_size_in_bytes
|
|
@@ -1374,7 +1248,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1374
1248
|
*/
|
|
1375
1249
|
template <typename PodType, typename Allocator>
|
|
1376
1250
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1377
|
-
const std::vector<PodType, Allocator>& data)
|
|
1251
|
+
const std::vector<PodType, Allocator>& data) noexcept
|
|
1378
1252
|
{
|
|
1379
1253
|
return BOOST_ASIO_CONST_BUFFER(
|
|
1380
1254
|
data.size() ? &data[0] : 0, data.size() * sizeof(PodType)
|
|
@@ -1399,7 +1273,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1399
1273
|
template <typename PodType, typename Allocator>
|
|
1400
1274
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1401
1275
|
const std::vector<PodType, Allocator>& data,
|
|
1402
|
-
std::size_t max_size_in_bytes)
|
|
1276
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1403
1277
|
{
|
|
1404
1278
|
return BOOST_ASIO_CONST_BUFFER(data.size() ? &data[0] : 0,
|
|
1405
1279
|
data.size() * sizeof(PodType) < max_size_in_bytes
|
|
@@ -1422,7 +1296,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1422
1296
|
*/
|
|
1423
1297
|
template <typename Elem, typename Traits, typename Allocator>
|
|
1424
1298
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
1425
|
-
std::basic_string<Elem, Traits, Allocator>& data)
|
|
1299
|
+
std::basic_string<Elem, Traits, Allocator>& data) noexcept
|
|
1426
1300
|
{
|
|
1427
1301
|
return BOOST_ASIO_MUTABLE_BUFFER(data.size() ? &data[0] : 0,
|
|
1428
1302
|
data.size() * sizeof(Elem)
|
|
@@ -1447,7 +1321,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1447
1321
|
template <typename Elem, typename Traits, typename Allocator>
|
|
1448
1322
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
1449
1323
|
std::basic_string<Elem, Traits, Allocator>& data,
|
|
1450
|
-
std::size_t max_size_in_bytes)
|
|
1324
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1451
1325
|
{
|
|
1452
1326
|
return BOOST_ASIO_MUTABLE_BUFFER(data.size() ? &data[0] : 0,
|
|
1453
1327
|
data.size() * sizeof(Elem) < max_size_in_bytes
|
|
@@ -1469,7 +1343,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1469
1343
|
*/
|
|
1470
1344
|
template <typename Elem, typename Traits, typename Allocator>
|
|
1471
1345
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1472
|
-
const std::basic_string<Elem, Traits, Allocator>& data)
|
|
1346
|
+
const std::basic_string<Elem, Traits, Allocator>& data) noexcept
|
|
1473
1347
|
{
|
|
1474
1348
|
return BOOST_ASIO_CONST_BUFFER(data.data(), data.size() * sizeof(Elem)
|
|
1475
1349
|
#if defined(BOOST_ASIO_ENABLE_BUFFER_DEBUGGING)
|
|
@@ -1493,7 +1367,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1493
1367
|
template <typename Elem, typename Traits, typename Allocator>
|
|
1494
1368
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1495
1369
|
const std::basic_string<Elem, Traits, Allocator>& data,
|
|
1496
|
-
std::size_t max_size_in_bytes)
|
|
1370
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1497
1371
|
{
|
|
1498
1372
|
return BOOST_ASIO_CONST_BUFFER(data.data(),
|
|
1499
1373
|
data.size() * sizeof(Elem) < max_size_in_bytes
|
|
@@ -1516,7 +1390,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1516
1390
|
*/
|
|
1517
1391
|
template <typename Elem, typename Traits>
|
|
1518
1392
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1519
|
-
basic_string_view<Elem, Traits> data)
|
|
1393
|
+
basic_string_view<Elem, Traits> data) noexcept
|
|
1520
1394
|
{
|
|
1521
1395
|
return BOOST_ASIO_CONST_BUFFER(data.size() ? &data[0] : 0,
|
|
1522
1396
|
data.size() * sizeof(Elem)
|
|
@@ -1538,7 +1412,7 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1538
1412
|
template <typename Elem, typename Traits>
|
|
1539
1413
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1540
1414
|
basic_string_view<Elem, Traits> data,
|
|
1541
|
-
std::size_t max_size_in_bytes)
|
|
1415
|
+
std::size_t max_size_in_bytes) noexcept
|
|
1542
1416
|
{
|
|
1543
1417
|
return BOOST_ASIO_CONST_BUFFER(data.size() ? &data[0] : 0,
|
|
1544
1418
|
data.size() * sizeof(Elem) < max_size_in_bytes
|
|
@@ -1564,18 +1438,26 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1564
1438
|
template <typename T>
|
|
1565
1439
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
1566
1440
|
T& data,
|
|
1567
|
-
|
|
1441
|
+
constraint_t<
|
|
1568
1442
|
is_contiguous_iterator<typename T::iterator>::value,
|
|
1569
1443
|
defaulted_constraint
|
|
1570
|
-
|
|
1571
|
-
|
|
1444
|
+
> = defaulted_constraint(),
|
|
1445
|
+
constraint_t<
|
|
1446
|
+
!is_convertible<T, const_buffer>::value,
|
|
1447
|
+
defaulted_constraint
|
|
1448
|
+
> = defaulted_constraint(),
|
|
1449
|
+
constraint_t<
|
|
1450
|
+
!is_convertible<T, mutable_buffer>::value,
|
|
1451
|
+
defaulted_constraint
|
|
1452
|
+
> = defaulted_constraint(),
|
|
1453
|
+
constraint_t<
|
|
1572
1454
|
!is_const<
|
|
1573
|
-
|
|
1455
|
+
remove_reference_t<
|
|
1574
1456
|
typename std::iterator_traits<typename T::iterator>::reference
|
|
1575
|
-
|
|
1457
|
+
>
|
|
1576
1458
|
>::value,
|
|
1577
1459
|
defaulted_constraint
|
|
1578
|
-
|
|
1460
|
+
> = defaulted_constraint()) noexcept
|
|
1579
1461
|
{
|
|
1580
1462
|
return BOOST_ASIO_MUTABLE_BUFFER(
|
|
1581
1463
|
data.size() ? detail::to_address(data.begin()) : 0,
|
|
@@ -1594,18 +1476,26 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1594
1476
|
template <typename T>
|
|
1595
1477
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
1596
1478
|
T& data, std::size_t max_size_in_bytes,
|
|
1597
|
-
|
|
1479
|
+
constraint_t<
|
|
1598
1480
|
is_contiguous_iterator<typename T::iterator>::value,
|
|
1599
1481
|
defaulted_constraint
|
|
1600
|
-
|
|
1601
|
-
|
|
1482
|
+
> = defaulted_constraint(),
|
|
1483
|
+
constraint_t<
|
|
1484
|
+
!is_convertible<T, const_buffer>::value,
|
|
1485
|
+
defaulted_constraint
|
|
1486
|
+
> = defaulted_constraint(),
|
|
1487
|
+
constraint_t<
|
|
1488
|
+
!is_convertible<T, mutable_buffer>::value,
|
|
1489
|
+
defaulted_constraint
|
|
1490
|
+
> = defaulted_constraint(),
|
|
1491
|
+
constraint_t<
|
|
1602
1492
|
!is_const<
|
|
1603
|
-
|
|
1493
|
+
remove_reference_t<
|
|
1604
1494
|
typename std::iterator_traits<typename T::iterator>::reference
|
|
1605
|
-
|
|
1495
|
+
>
|
|
1606
1496
|
>::value,
|
|
1607
1497
|
defaulted_constraint
|
|
1608
|
-
|
|
1498
|
+
> = defaulted_constraint()) noexcept
|
|
1609
1499
|
{
|
|
1610
1500
|
return BOOST_ASIO_MUTABLE_BUFFER(
|
|
1611
1501
|
data.size() ? detail::to_address(data.begin()) : 0,
|
|
@@ -1623,18 +1513,26 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_MUTABLE_BUFFER buffer(
|
|
|
1623
1513
|
template <typename T>
|
|
1624
1514
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1625
1515
|
T& data,
|
|
1626
|
-
|
|
1516
|
+
constraint_t<
|
|
1627
1517
|
is_contiguous_iterator<typename T::iterator>::value,
|
|
1628
1518
|
defaulted_constraint
|
|
1629
|
-
|
|
1630
|
-
|
|
1519
|
+
> = defaulted_constraint(),
|
|
1520
|
+
constraint_t<
|
|
1521
|
+
!is_convertible<T, const_buffer>::value,
|
|
1522
|
+
defaulted_constraint
|
|
1523
|
+
> = defaulted_constraint(),
|
|
1524
|
+
constraint_t<
|
|
1525
|
+
!is_convertible<T, mutable_buffer>::value,
|
|
1526
|
+
defaulted_constraint
|
|
1527
|
+
> = defaulted_constraint(),
|
|
1528
|
+
constraint_t<
|
|
1631
1529
|
is_const<
|
|
1632
|
-
|
|
1530
|
+
remove_reference_t<
|
|
1633
1531
|
typename std::iterator_traits<typename T::iterator>::reference
|
|
1634
|
-
|
|
1532
|
+
>
|
|
1635
1533
|
>::value,
|
|
1636
1534
|
defaulted_constraint
|
|
1637
|
-
|
|
1535
|
+
> = defaulted_constraint()) noexcept
|
|
1638
1536
|
{
|
|
1639
1537
|
return BOOST_ASIO_CONST_BUFFER(
|
|
1640
1538
|
data.size() ? detail::to_address(data.begin()) : 0,
|
|
@@ -1653,18 +1551,26 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1653
1551
|
template <typename T>
|
|
1654
1552
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1655
1553
|
T& data, std::size_t max_size_in_bytes,
|
|
1656
|
-
|
|
1554
|
+
constraint_t<
|
|
1657
1555
|
is_contiguous_iterator<typename T::iterator>::value,
|
|
1658
1556
|
defaulted_constraint
|
|
1659
|
-
|
|
1660
|
-
|
|
1557
|
+
> = defaulted_constraint(),
|
|
1558
|
+
constraint_t<
|
|
1559
|
+
!is_convertible<T, const_buffer>::value,
|
|
1560
|
+
defaulted_constraint
|
|
1561
|
+
> = defaulted_constraint(),
|
|
1562
|
+
constraint_t<
|
|
1563
|
+
!is_convertible<T, mutable_buffer>::value,
|
|
1564
|
+
defaulted_constraint
|
|
1565
|
+
> = defaulted_constraint(),
|
|
1566
|
+
constraint_t<
|
|
1661
1567
|
is_const<
|
|
1662
|
-
|
|
1568
|
+
remove_reference_t<
|
|
1663
1569
|
typename std::iterator_traits<typename T::iterator>::reference
|
|
1664
|
-
|
|
1570
|
+
>
|
|
1665
1571
|
>::value,
|
|
1666
1572
|
defaulted_constraint
|
|
1667
|
-
|
|
1573
|
+
> = defaulted_constraint()) noexcept
|
|
1668
1574
|
{
|
|
1669
1575
|
return BOOST_ASIO_CONST_BUFFER(
|
|
1670
1576
|
data.size() ? detail::to_address(data.begin()) : 0,
|
|
@@ -1682,10 +1588,18 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1682
1588
|
template <typename T>
|
|
1683
1589
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1684
1590
|
const T& data,
|
|
1685
|
-
|
|
1591
|
+
constraint_t<
|
|
1686
1592
|
is_contiguous_iterator<typename T::const_iterator>::value,
|
|
1687
1593
|
defaulted_constraint
|
|
1688
|
-
|
|
1594
|
+
> = defaulted_constraint(),
|
|
1595
|
+
constraint_t<
|
|
1596
|
+
!is_convertible<T, const_buffer>::value,
|
|
1597
|
+
defaulted_constraint
|
|
1598
|
+
> = defaulted_constraint(),
|
|
1599
|
+
constraint_t<
|
|
1600
|
+
!is_convertible<T, mutable_buffer>::value,
|
|
1601
|
+
defaulted_constraint
|
|
1602
|
+
> = defaulted_constraint()) noexcept
|
|
1689
1603
|
{
|
|
1690
1604
|
return BOOST_ASIO_CONST_BUFFER(
|
|
1691
1605
|
data.size() ? detail::to_address(data.begin()) : 0,
|
|
@@ -1704,10 +1618,18 @@ BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
|
1704
1618
|
template <typename T>
|
|
1705
1619
|
BOOST_ASIO_NODISCARD inline BOOST_ASIO_CONST_BUFFER buffer(
|
|
1706
1620
|
const T& data, std::size_t max_size_in_bytes,
|
|
1707
|
-
|
|
1621
|
+
constraint_t<
|
|
1708
1622
|
is_contiguous_iterator<typename T::const_iterator>::value,
|
|
1709
1623
|
defaulted_constraint
|
|
1710
|
-
|
|
1624
|
+
> = defaulted_constraint(),
|
|
1625
|
+
constraint_t<
|
|
1626
|
+
!is_convertible<T, const_buffer>::value,
|
|
1627
|
+
defaulted_constraint
|
|
1628
|
+
> = defaulted_constraint(),
|
|
1629
|
+
constraint_t<
|
|
1630
|
+
!is_convertible<T, mutable_buffer>::value,
|
|
1631
|
+
defaulted_constraint
|
|
1632
|
+
> = defaulted_constraint()) noexcept
|
|
1711
1633
|
{
|
|
1712
1634
|
return BOOST_ASIO_CONST_BUFFER(
|
|
1713
1635
|
data.size() ? detail::to_address(data.begin()) : 0,
|
|
@@ -1747,7 +1669,7 @@ public:
|
|
|
1747
1669
|
*/
|
|
1748
1670
|
explicit dynamic_string_buffer(std::basic_string<Elem, Traits, Allocator>& s,
|
|
1749
1671
|
std::size_t maximum_size =
|
|
1750
|
-
(std::numeric_limits<std::size_t>::max)())
|
|
1672
|
+
(std::numeric_limits<std::size_t>::max)()) noexcept
|
|
1751
1673
|
: string_(s),
|
|
1752
1674
|
#if !defined(BOOST_ASIO_NO_DYNAMIC_BUFFER_V1)
|
|
1753
1675
|
size_((std::numeric_limits<std::size_t>::max)()),
|
|
@@ -1757,7 +1679,7 @@ public:
|
|
|
1757
1679
|
}
|
|
1758
1680
|
|
|
1759
1681
|
/// @b DynamicBuffer_v2: Copy construct a dynamic buffer.
|
|
1760
|
-
dynamic_string_buffer(const dynamic_string_buffer& other)
|
|
1682
|
+
dynamic_string_buffer(const dynamic_string_buffer& other) noexcept
|
|
1761
1683
|
: string_(other.string_),
|
|
1762
1684
|
#if !defined(BOOST_ASIO_NO_DYNAMIC_BUFFER_V1)
|
|
1763
1685
|
size_(other.size_),
|
|
@@ -1766,9 +1688,8 @@ public:
|
|
|
1766
1688
|
{
|
|
1767
1689
|
}
|
|
1768
1690
|
|
|
1769
|
-
#if defined(BOOST_ASIO_HAS_MOVE) || defined(GENERATING_DOCUMENTATION)
|
|
1770
1691
|
/// Move construct a dynamic buffer.
|
|
1771
|
-
dynamic_string_buffer(dynamic_string_buffer&& other)
|
|
1692
|
+
dynamic_string_buffer(dynamic_string_buffer&& other) noexcept
|
|
1772
1693
|
: string_(other.string_),
|
|
1773
1694
|
#if !defined(BOOST_ASIO_NO_DYNAMIC_BUFFER_V1)
|
|
1774
1695
|
size_(other.size_),
|
|
@@ -1776,7 +1697,6 @@ public:
|
|
|
1776
1697
|
max_size_(other.max_size_)
|
|
1777
1698
|
{
|
|
1778
1699
|
}
|
|
1779
|
-
#endif // defined(BOOST_ASIO_HAS_MOVE) || defined(GENERATING_DOCUMENTATION)
|
|
1780
1700
|
|
|
1781
1701
|
/// @b DynamicBuffer_v1: Get the size of the input sequence.
|
|
1782
1702
|
/// @b DynamicBuffer_v2: Get the current size of the underlying memory.
|
|
@@ -1785,7 +1705,7 @@ public:
|
|
|
1785
1705
|
* @b DynamicBuffer_v2: The current size of the underlying string if less than
|
|
1786
1706
|
* max_size(). Otherwise returns max_size().
|
|
1787
1707
|
*/
|
|
1788
|
-
std::size_t size() const
|
|
1708
|
+
std::size_t size() const noexcept
|
|
1789
1709
|
{
|
|
1790
1710
|
#if !defined(BOOST_ASIO_NO_DYNAMIC_BUFFER_V1)
|
|
1791
1711
|
if (size_ != (std::numeric_limits<std::size_t>::max)())
|
|
@@ -1798,7 +1718,7 @@ public:
|
|
|
1798
1718
|
/**
|
|
1799
1719
|
* @returns The allowed maximum size of the underlying memory.
|
|
1800
1720
|
*/
|
|
1801
|
-
std::size_t max_size() const
|
|
1721
|
+
std::size_t max_size() const noexcept
|
|
1802
1722
|
{
|
|
1803
1723
|
return max_size_;
|
|
1804
1724
|
}
|
|
@@ -1809,7 +1729,7 @@ public:
|
|
|
1809
1729
|
* @returns The current capacity of the underlying string if less than
|
|
1810
1730
|
* max_size(). Otherwise returns max_size().
|
|
1811
1731
|
*/
|
|
1812
|
-
std::size_t capacity() const
|
|
1732
|
+
std::size_t capacity() const noexcept
|
|
1813
1733
|
{
|
|
1814
1734
|
return (std::min)(string_.capacity(), max_size());
|
|
1815
1735
|
}
|
|
@@ -1825,7 +1745,7 @@ public:
|
|
|
1825
1745
|
* @note The returned object is invalidated by any @c dynamic_string_buffer
|
|
1826
1746
|
* or @c basic_string member function that resizes or erases the string.
|
|
1827
1747
|
*/
|
|
1828
|
-
const_buffers_type data() const
|
|
1748
|
+
const_buffers_type data() const noexcept
|
|
1829
1749
|
{
|
|
1830
1750
|
return const_buffers_type(boost::asio::buffer(string_, size_));
|
|
1831
1751
|
}
|
|
@@ -1846,7 +1766,7 @@ public:
|
|
|
1846
1766
|
* @note The returned object is invalidated by any @c dynamic_string_buffer
|
|
1847
1767
|
* or @c basic_string member function that resizes or erases the string.
|
|
1848
1768
|
*/
|
|
1849
|
-
mutable_buffers_type data(std::size_t pos, std::size_t n)
|
|
1769
|
+
mutable_buffers_type data(std::size_t pos, std::size_t n) noexcept
|
|
1850
1770
|
{
|
|
1851
1771
|
return mutable_buffers_type(boost::asio::buffer(
|
|
1852
1772
|
boost::asio::buffer(string_, max_size_) + pos, n));
|
|
@@ -1865,7 +1785,7 @@ public:
|
|
|
1865
1785
|
* or @c basic_string member function that resizes or erases the string.
|
|
1866
1786
|
*/
|
|
1867
1787
|
const_buffers_type data(std::size_t pos,
|
|
1868
|
-
std::size_t n) const
|
|
1788
|
+
std::size_t n) const noexcept
|
|
1869
1789
|
{
|
|
1870
1790
|
return const_buffers_type(boost::asio::buffer(
|
|
1871
1791
|
boost::asio::buffer(string_, max_size_) + pos, n));
|
|
@@ -2015,7 +1935,7 @@ public:
|
|
|
2015
1935
|
*/
|
|
2016
1936
|
explicit dynamic_vector_buffer(std::vector<Elem, Allocator>& v,
|
|
2017
1937
|
std::size_t maximum_size =
|
|
2018
|
-
(std::numeric_limits<std::size_t>::max)())
|
|
1938
|
+
(std::numeric_limits<std::size_t>::max)()) noexcept
|
|
2019
1939
|
: vector_(v),
|
|
2020
1940
|
#if !defined(BOOST_ASIO_NO_DYNAMIC_BUFFER_V1)
|
|
2021
1941
|
size_((std::numeric_limits<std::size_t>::max)()),
|
|
@@ -2025,7 +1945,7 @@ public:
|
|
|
2025
1945
|
}
|
|
2026
1946
|
|
|
2027
1947
|
/// @b DynamicBuffer_v2: Copy construct a dynamic buffer.
|
|
2028
|
-
dynamic_vector_buffer(const dynamic_vector_buffer& other)
|
|
1948
|
+
dynamic_vector_buffer(const dynamic_vector_buffer& other) noexcept
|
|
2029
1949
|
: vector_(other.vector_),
|
|
2030
1950
|
#if !defined(BOOST_ASIO_NO_DYNAMIC_BUFFER_V1)
|
|
2031
1951
|
size_(other.size_),
|
|
@@ -2034,9 +1954,8 @@ public:
|
|
|
2034
1954
|
{
|
|
2035
1955
|
}
|
|
2036
1956
|
|
|
2037
|
-
#if defined(BOOST_ASIO_HAS_MOVE) || defined(GENERATING_DOCUMENTATION)
|
|
2038
1957
|
/// Move construct a dynamic buffer.
|
|
2039
|
-
dynamic_vector_buffer(dynamic_vector_buffer&& other)
|
|
1958
|
+
dynamic_vector_buffer(dynamic_vector_buffer&& other) noexcept
|
|
2040
1959
|
: vector_(other.vector_),
|
|
2041
1960
|
#if !defined(BOOST_ASIO_NO_DYNAMIC_BUFFER_V1)
|
|
2042
1961
|
size_(other.size_),
|
|
@@ -2044,7 +1963,6 @@ public:
|
|
|
2044
1963
|
max_size_(other.max_size_)
|
|
2045
1964
|
{
|
|
2046
1965
|
}
|
|
2047
|
-
#endif // defined(BOOST_ASIO_HAS_MOVE) || defined(GENERATING_DOCUMENTATION)
|
|
2048
1966
|
|
|
2049
1967
|
/// @b DynamicBuffer_v1: Get the size of the input sequence.
|
|
2050
1968
|
/// @b DynamicBuffer_v2: Get the current size of the underlying memory.
|
|
@@ -2053,7 +1971,7 @@ public:
|
|
|
2053
1971
|
* @b DynamicBuffer_v2: The current size of the underlying vector if less than
|
|
2054
1972
|
* max_size(). Otherwise returns max_size().
|
|
2055
1973
|
*/
|
|
2056
|
-
std::size_t size() const
|
|
1974
|
+
std::size_t size() const noexcept
|
|
2057
1975
|
{
|
|
2058
1976
|
#if !defined(BOOST_ASIO_NO_DYNAMIC_BUFFER_V1)
|
|
2059
1977
|
if (size_ != (std::numeric_limits<std::size_t>::max)())
|
|
@@ -2068,7 +1986,7 @@ public:
|
|
|
2068
1986
|
* of the input sequence and output sequence. @b DynamicBuffer_v2: The allowed
|
|
2069
1987
|
* maximum size of the underlying memory.
|
|
2070
1988
|
*/
|
|
2071
|
-
std::size_t max_size() const
|
|
1989
|
+
std::size_t max_size() const noexcept
|
|
2072
1990
|
{
|
|
2073
1991
|
return max_size_;
|
|
2074
1992
|
}
|
|
@@ -2081,7 +1999,7 @@ public:
|
|
|
2081
1999
|
* The current capacity of the underlying vector if less than max_size().
|
|
2082
2000
|
* Otherwise returns max_size().
|
|
2083
2001
|
*/
|
|
2084
|
-
std::size_t capacity() const
|
|
2002
|
+
std::size_t capacity() const noexcept
|
|
2085
2003
|
{
|
|
2086
2004
|
return (std::min)(vector_.capacity(), max_size());
|
|
2087
2005
|
}
|
|
@@ -2098,7 +2016,7 @@ public:
|
|
|
2098
2016
|
* or @c vector member function that modifies the input sequence or output
|
|
2099
2017
|
* sequence.
|
|
2100
2018
|
*/
|
|
2101
|
-
const_buffers_type data() const
|
|
2019
|
+
const_buffers_type data() const noexcept
|
|
2102
2020
|
{
|
|
2103
2021
|
return const_buffers_type(boost::asio::buffer(vector_, size_));
|
|
2104
2022
|
}
|
|
@@ -2119,7 +2037,7 @@ public:
|
|
|
2119
2037
|
* @note The returned object is invalidated by any @c dynamic_vector_buffer
|
|
2120
2038
|
* or @c vector member function that resizes or erases the vector.
|
|
2121
2039
|
*/
|
|
2122
|
-
mutable_buffers_type data(std::size_t pos, std::size_t n)
|
|
2040
|
+
mutable_buffers_type data(std::size_t pos, std::size_t n) noexcept
|
|
2123
2041
|
{
|
|
2124
2042
|
return mutable_buffers_type(boost::asio::buffer(
|
|
2125
2043
|
boost::asio::buffer(vector_, max_size_) + pos, n));
|
|
@@ -2138,7 +2056,7 @@ public:
|
|
|
2138
2056
|
* or @c vector member function that resizes or erases the vector.
|
|
2139
2057
|
*/
|
|
2140
2058
|
const_buffers_type data(std::size_t pos,
|
|
2141
|
-
std::size_t n) const
|
|
2059
|
+
std::size_t n) const noexcept
|
|
2142
2060
|
{
|
|
2143
2061
|
return const_buffers_type(boost::asio::buffer(
|
|
2144
2062
|
boost::asio::buffer(vector_, max_size_) + pos, n));
|
|
@@ -2275,7 +2193,7 @@ private:
|
|
|
2275
2193
|
template <typename Elem, typename Traits, typename Allocator>
|
|
2276
2194
|
BOOST_ASIO_NODISCARD inline
|
|
2277
2195
|
dynamic_string_buffer<Elem, Traits, Allocator> dynamic_buffer(
|
|
2278
|
-
std::basic_string<Elem, Traits, Allocator>& data)
|
|
2196
|
+
std::basic_string<Elem, Traits, Allocator>& data) noexcept
|
|
2279
2197
|
{
|
|
2280
2198
|
return dynamic_string_buffer<Elem, Traits, Allocator>(data);
|
|
2281
2199
|
}
|
|
@@ -2289,7 +2207,7 @@ template <typename Elem, typename Traits, typename Allocator>
|
|
|
2289
2207
|
BOOST_ASIO_NODISCARD inline
|
|
2290
2208
|
dynamic_string_buffer<Elem, Traits, Allocator> dynamic_buffer(
|
|
2291
2209
|
std::basic_string<Elem, Traits, Allocator>& data,
|
|
2292
|
-
std::size_t max_size)
|
|
2210
|
+
std::size_t max_size) noexcept
|
|
2293
2211
|
{
|
|
2294
2212
|
return dynamic_string_buffer<Elem, Traits, Allocator>(data, max_size);
|
|
2295
2213
|
}
|
|
@@ -2301,7 +2219,7 @@ dynamic_string_buffer<Elem, Traits, Allocator> dynamic_buffer(
|
|
|
2301
2219
|
template <typename Elem, typename Allocator>
|
|
2302
2220
|
BOOST_ASIO_NODISCARD inline
|
|
2303
2221
|
dynamic_vector_buffer<Elem, Allocator> dynamic_buffer(
|
|
2304
|
-
std::vector<Elem, Allocator>& data)
|
|
2222
|
+
std::vector<Elem, Allocator>& data) noexcept
|
|
2305
2223
|
{
|
|
2306
2224
|
return dynamic_vector_buffer<Elem, Allocator>(data);
|
|
2307
2225
|
}
|
|
@@ -2314,7 +2232,7 @@ template <typename Elem, typename Allocator>
|
|
|
2314
2232
|
BOOST_ASIO_NODISCARD inline
|
|
2315
2233
|
dynamic_vector_buffer<Elem, Allocator> dynamic_buffer(
|
|
2316
2234
|
std::vector<Elem, Allocator>& data,
|
|
2317
|
-
std::size_t max_size)
|
|
2235
|
+
std::size_t max_size) noexcept
|
|
2318
2236
|
{
|
|
2319
2237
|
return dynamic_vector_buffer<Elem, Allocator>(data, max_size);
|
|
2320
2238
|
}
|
|
@@ -2366,7 +2284,7 @@ inline std::size_t buffer_copy_1(const mutable_buffer& target,
|
|
|
2366
2284
|
template <typename TargetIterator, typename SourceIterator>
|
|
2367
2285
|
inline std::size_t buffer_copy(one_buffer, one_buffer,
|
|
2368
2286
|
TargetIterator target_begin, TargetIterator,
|
|
2369
|
-
SourceIterator source_begin, SourceIterator)
|
|
2287
|
+
SourceIterator source_begin, SourceIterator) noexcept
|
|
2370
2288
|
{
|
|
2371
2289
|
return (buffer_copy_1)(*target_begin, *source_begin);
|
|
2372
2290
|
}
|
|
@@ -2375,7 +2293,7 @@ template <typename TargetIterator, typename SourceIterator>
|
|
|
2375
2293
|
inline std::size_t buffer_copy(one_buffer, one_buffer,
|
|
2376
2294
|
TargetIterator target_begin, TargetIterator,
|
|
2377
2295
|
SourceIterator source_begin, SourceIterator,
|
|
2378
|
-
std::size_t max_bytes_to_copy)
|
|
2296
|
+
std::size_t max_bytes_to_copy) noexcept
|
|
2379
2297
|
{
|
|
2380
2298
|
return (buffer_copy_1)(*target_begin,
|
|
2381
2299
|
boost::asio::buffer(*source_begin, max_bytes_to_copy));
|
|
@@ -2386,7 +2304,7 @@ std::size_t buffer_copy(one_buffer, multiple_buffers,
|
|
|
2386
2304
|
TargetIterator target_begin, TargetIterator,
|
|
2387
2305
|
SourceIterator source_begin, SourceIterator source_end,
|
|
2388
2306
|
std::size_t max_bytes_to_copy
|
|
2389
|
-
= (std::numeric_limits<std::size_t>::max)())
|
|
2307
|
+
= (std::numeric_limits<std::size_t>::max)()) noexcept
|
|
2390
2308
|
{
|
|
2391
2309
|
std::size_t total_bytes_copied = 0;
|
|
2392
2310
|
SourceIterator source_iter = source_begin;
|
|
@@ -2409,7 +2327,7 @@ std::size_t buffer_copy(multiple_buffers, one_buffer,
|
|
|
2409
2327
|
TargetIterator target_begin, TargetIterator target_end,
|
|
2410
2328
|
SourceIterator source_begin, SourceIterator,
|
|
2411
2329
|
std::size_t max_bytes_to_copy
|
|
2412
|
-
= (std::numeric_limits<std::size_t>::max)())
|
|
2330
|
+
= (std::numeric_limits<std::size_t>::max)()) noexcept
|
|
2413
2331
|
{
|
|
2414
2332
|
std::size_t total_bytes_copied = 0;
|
|
2415
2333
|
TargetIterator target_iter = target_begin;
|
|
@@ -2430,7 +2348,7 @@ std::size_t buffer_copy(multiple_buffers, one_buffer,
|
|
|
2430
2348
|
template <typename TargetIterator, typename SourceIterator>
|
|
2431
2349
|
std::size_t buffer_copy(multiple_buffers, multiple_buffers,
|
|
2432
2350
|
TargetIterator target_begin, TargetIterator target_end,
|
|
2433
|
-
SourceIterator source_begin, SourceIterator source_end)
|
|
2351
|
+
SourceIterator source_begin, SourceIterator source_end) noexcept
|
|
2434
2352
|
{
|
|
2435
2353
|
std::size_t total_bytes_copied = 0;
|
|
2436
2354
|
|
|
@@ -2475,7 +2393,7 @@ template <typename TargetIterator, typename SourceIterator>
|
|
|
2475
2393
|
std::size_t buffer_copy(multiple_buffers, multiple_buffers,
|
|
2476
2394
|
TargetIterator target_begin, TargetIterator target_end,
|
|
2477
2395
|
SourceIterator source_begin, SourceIterator source_end,
|
|
2478
|
-
std::size_t max_bytes_to_copy)
|
|
2396
|
+
std::size_t max_bytes_to_copy) noexcept
|
|
2479
2397
|
{
|
|
2480
2398
|
std::size_t total_bytes_copied = 0;
|
|
2481
2399
|
|
|
@@ -2542,7 +2460,7 @@ std::size_t buffer_copy(multiple_buffers, multiple_buffers,
|
|
|
2542
2460
|
*/
|
|
2543
2461
|
template <typename MutableBufferSequence, typename ConstBufferSequence>
|
|
2544
2462
|
inline std::size_t buffer_copy(const MutableBufferSequence& target,
|
|
2545
|
-
const ConstBufferSequence& source)
|
|
2463
|
+
const ConstBufferSequence& source) noexcept
|
|
2546
2464
|
{
|
|
2547
2465
|
return detail::buffer_copy(
|
|
2548
2466
|
detail::buffer_sequence_cardinality<MutableBufferSequence>(),
|
|
@@ -2580,7 +2498,7 @@ inline std::size_t buffer_copy(const MutableBufferSequence& target,
|
|
|
2580
2498
|
template <typename MutableBufferSequence, typename ConstBufferSequence>
|
|
2581
2499
|
inline std::size_t buffer_copy(const MutableBufferSequence& target,
|
|
2582
2500
|
const ConstBufferSequence& source,
|
|
2583
|
-
std::size_t max_bytes_to_copy)
|
|
2501
|
+
std::size_t max_bytes_to_copy) noexcept
|
|
2584
2502
|
{
|
|
2585
2503
|
return detail::buffer_copy(
|
|
2586
2504
|
detail::buffer_sequence_cardinality<MutableBufferSequence>(),
|
|
@@ -2672,6 +2590,163 @@ struct is_dynamic_buffer
|
|
|
2672
2590
|
{
|
|
2673
2591
|
};
|
|
2674
2592
|
|
|
2593
|
+
namespace buffer_literals {
|
|
2594
|
+
namespace detail {
|
|
2595
|
+
|
|
2596
|
+
template <char... Chars>
|
|
2597
|
+
struct chars {};
|
|
2598
|
+
|
|
2599
|
+
template <unsigned char... Bytes>
|
|
2600
|
+
struct bytes {};
|
|
2601
|
+
|
|
2602
|
+
// Literal processor that converts binary literals to an array of bytes.
|
|
2603
|
+
|
|
2604
|
+
template <typename Bytes, char... Chars>
|
|
2605
|
+
struct bin_literal;
|
|
2606
|
+
|
|
2607
|
+
template <unsigned char... Bytes>
|
|
2608
|
+
struct bin_literal<bytes<Bytes...>>
|
|
2609
|
+
{
|
|
2610
|
+
static const std::size_t size = sizeof...(Bytes);
|
|
2611
|
+
static const unsigned char data[sizeof...(Bytes)];
|
|
2612
|
+
};
|
|
2613
|
+
|
|
2614
|
+
template <unsigned char... Bytes>
|
|
2615
|
+
const unsigned char bin_literal<bytes<Bytes...>>::data[sizeof...(Bytes)]
|
|
2616
|
+
= { Bytes... };
|
|
2617
|
+
|
|
2618
|
+
template <unsigned char... Bytes, char Bit7, char Bit6, char Bit5,
|
|
2619
|
+
char Bit4, char Bit3, char Bit2, char Bit1, char Bit0, char... Chars>
|
|
2620
|
+
struct bin_literal<bytes<Bytes...>, Bit7, Bit6,
|
|
2621
|
+
Bit5, Bit4, Bit3, Bit2, Bit1, Bit0, Chars...> :
|
|
2622
|
+
bin_literal<
|
|
2623
|
+
bytes<Bytes...,
|
|
2624
|
+
static_cast<unsigned char>(
|
|
2625
|
+
(Bit7 == '1' ? 0x80 : 0) |
|
|
2626
|
+
(Bit6 == '1' ? 0x40 : 0) |
|
|
2627
|
+
(Bit5 == '1' ? 0x20 : 0) |
|
|
2628
|
+
(Bit4 == '1' ? 0x10 : 0) |
|
|
2629
|
+
(Bit3 == '1' ? 0x08 : 0) |
|
|
2630
|
+
(Bit2 == '1' ? 0x04 : 0) |
|
|
2631
|
+
(Bit1 == '1' ? 0x02 : 0) |
|
|
2632
|
+
(Bit0 == '1' ? 0x01 : 0))
|
|
2633
|
+
>, Chars...> {};
|
|
2634
|
+
|
|
2635
|
+
template <unsigned char... Bytes, char... Chars>
|
|
2636
|
+
struct bin_literal<bytes<Bytes...>, Chars...>
|
|
2637
|
+
{
|
|
2638
|
+
static_assert(sizeof...(Chars) == 0,
|
|
2639
|
+
"number of digits in a binary buffer literal must be a multiple of 8");
|
|
2640
|
+
|
|
2641
|
+
static const std::size_t size = 0;
|
|
2642
|
+
static const unsigned char data[1];
|
|
2643
|
+
};
|
|
2644
|
+
|
|
2645
|
+
template <unsigned char... Bytes, char... Chars>
|
|
2646
|
+
const unsigned char bin_literal<bytes<Bytes...>, Chars...>::data[1] = {};
|
|
2647
|
+
|
|
2648
|
+
// Literal processor that converts hexadecimal literals to an array of bytes.
|
|
2649
|
+
|
|
2650
|
+
template <typename Bytes, char... Chars>
|
|
2651
|
+
struct hex_literal;
|
|
2652
|
+
|
|
2653
|
+
template <unsigned char... Bytes>
|
|
2654
|
+
struct hex_literal<bytes<Bytes...>>
|
|
2655
|
+
{
|
|
2656
|
+
static const std::size_t size = sizeof...(Bytes);
|
|
2657
|
+
static const unsigned char data[sizeof...(Bytes)];
|
|
2658
|
+
};
|
|
2659
|
+
|
|
2660
|
+
template <unsigned char... Bytes>
|
|
2661
|
+
const unsigned char hex_literal<bytes<Bytes...>>::data[sizeof...(Bytes)]
|
|
2662
|
+
= { Bytes... };
|
|
2663
|
+
|
|
2664
|
+
template <unsigned char... Bytes, char Hi, char Lo, char... Chars>
|
|
2665
|
+
struct hex_literal<bytes<Bytes...>, Hi, Lo, Chars...> :
|
|
2666
|
+
hex_literal<
|
|
2667
|
+
bytes<Bytes...,
|
|
2668
|
+
static_cast<unsigned char>(
|
|
2669
|
+
Lo >= 'A' && Lo <= 'F' ? Lo - 'A' + 10 :
|
|
2670
|
+
(Lo >= 'a' && Lo <= 'f' ? Lo - 'a' + 10 : Lo - '0')) |
|
|
2671
|
+
((static_cast<unsigned char>(
|
|
2672
|
+
Hi >= 'A' && Hi <= 'F' ? Hi - 'A' + 10 :
|
|
2673
|
+
(Hi >= 'a' && Hi <= 'f' ? Hi - 'a' + 10 : Hi - '0'))) << 4)
|
|
2674
|
+
>, Chars...> {};
|
|
2675
|
+
|
|
2676
|
+
template <unsigned char... Bytes, char Char>
|
|
2677
|
+
struct hex_literal<bytes<Bytes...>, Char>
|
|
2678
|
+
{
|
|
2679
|
+
static_assert(!Char,
|
|
2680
|
+
"a hexadecimal buffer literal must have an even number of digits");
|
|
2681
|
+
|
|
2682
|
+
static const std::size_t size = 0;
|
|
2683
|
+
static const unsigned char data[1];
|
|
2684
|
+
};
|
|
2685
|
+
|
|
2686
|
+
template <unsigned char... Bytes, char Char>
|
|
2687
|
+
const unsigned char hex_literal<bytes<Bytes...>, Char>::data[1] = {};
|
|
2688
|
+
|
|
2689
|
+
// Helper template that removes digit separators and then passes the cleaned
|
|
2690
|
+
// variadic pack of characters to the literal processor.
|
|
2691
|
+
|
|
2692
|
+
template <template <typename, char...> class Literal,
|
|
2693
|
+
typename Clean, char... Raw>
|
|
2694
|
+
struct remove_separators;
|
|
2695
|
+
|
|
2696
|
+
template <template <typename, char...> class Literal,
|
|
2697
|
+
char... Clean, char... Raw>
|
|
2698
|
+
struct remove_separators<Literal, chars<Clean...>, '\'', Raw...> :
|
|
2699
|
+
remove_separators<Literal, chars<Clean...>, Raw...> {};
|
|
2700
|
+
|
|
2701
|
+
template <template <typename, char...> class Literal,
|
|
2702
|
+
char... Clean, char C, char... Raw>
|
|
2703
|
+
struct remove_separators<Literal, chars<Clean...>, C, Raw...> :
|
|
2704
|
+
remove_separators<Literal, chars<Clean..., C>, Raw...> {};
|
|
2705
|
+
|
|
2706
|
+
template <template <typename, char...> class Literal, char... Clean>
|
|
2707
|
+
struct remove_separators<Literal, chars<Clean...>> :
|
|
2708
|
+
Literal<bytes<>, Clean...> {};
|
|
2709
|
+
|
|
2710
|
+
// Helper template to determine the literal type based on the prefix.
|
|
2711
|
+
|
|
2712
|
+
template <char... Chars>
|
|
2713
|
+
struct literal;
|
|
2714
|
+
|
|
2715
|
+
template <char... Chars>
|
|
2716
|
+
struct literal<'0', 'b', Chars...> :
|
|
2717
|
+
remove_separators<bin_literal, chars<>, Chars...>{};
|
|
2718
|
+
|
|
2719
|
+
template <char... Chars>
|
|
2720
|
+
struct literal<'0', 'B', Chars...> :
|
|
2721
|
+
remove_separators<bin_literal, chars<>, Chars...>{};
|
|
2722
|
+
|
|
2723
|
+
template <char... Chars>
|
|
2724
|
+
struct literal<'0', 'x', Chars...> :
|
|
2725
|
+
remove_separators<hex_literal, chars<>, Chars...>{};
|
|
2726
|
+
|
|
2727
|
+
template <char... Chars>
|
|
2728
|
+
struct literal<'0', 'X', Chars...> :
|
|
2729
|
+
remove_separators<hex_literal, chars<>, Chars...>{};
|
|
2730
|
+
|
|
2731
|
+
} // namespace detail
|
|
2732
|
+
|
|
2733
|
+
/// Literal operator for creating const_buffer objects from string literals.
|
|
2734
|
+
inline BOOST_ASIO_CONST_BUFFER operator"" _buf(const char* data, std::size_t n)
|
|
2735
|
+
{
|
|
2736
|
+
return BOOST_ASIO_CONST_BUFFER(data, n);
|
|
2737
|
+
}
|
|
2738
|
+
|
|
2739
|
+
/// Literal operator for creating const_buffer objects from unbounded binary or
|
|
2740
|
+
/// hexadecimal integer literals.
|
|
2741
|
+
template <char... Chars>
|
|
2742
|
+
inline BOOST_ASIO_CONST_BUFFER operator"" _buf()
|
|
2743
|
+
{
|
|
2744
|
+
return BOOST_ASIO_CONST_BUFFER(
|
|
2745
|
+
+detail::literal<Chars...>::data,
|
|
2746
|
+
detail::literal<Chars...>::size);
|
|
2747
|
+
}
|
|
2748
|
+
|
|
2749
|
+
} // namespace buffer_literals
|
|
2675
2750
|
} // namespace asio
|
|
2676
2751
|
} // namespace boost
|
|
2677
2752
|
|