passenger 6.0.20 → 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 +41 -1
- data/CONTRIBUTORS +2 -0
- data/README.md +2 -2
- data/bin/passenger-install-nginx-module +4 -4
- data/build/support/cxx_dependency_map.rb +155 -54
- data/dev/copy_boost_headers +21 -7
- data/dev/nginx_version_sha256 +72 -0
- 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 +96 -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 +61 -62
- 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 +28 -46
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_immediate_executor.hpp +42 -59
- data/src/cxx_supportlib/vendor-modified/boost/asio/associator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +154 -883
- 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 +19 -22
- 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 +106 -153
- 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 +75 -294
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +75 -283
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +89 -288
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_immediate_executor.hpp +73 -275
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +170 -328
- 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 +26 -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 +32 -48
- 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 +26 -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 +53 -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 +22 -26
- data/src/cxx_supportlib/vendor-modified/boost/asio/deferred.hpp +188 -275
- 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 +2 -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 +91 -975
- 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 +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_write_op.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dev_poll_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/epoll_reactor.hpp +1 -1
- 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 +5 -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 +73 -127
- 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 +32 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.ipp +1 -1
- 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 +1 -1
- 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 +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.ipp +1 -1
- 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 +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_socket_service_base.ipp +2 -2
- 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 +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.ipp +1 -1
- 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 +1 -1
- 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 +56 -101
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_dispatch.hpp +56 -92
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_post.hpp +56 -101
- 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 +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_service.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_at_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_file_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_null_buffers_op.hpp +3 -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 +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_accept_op.hpp +7 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_connect_op.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recv_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvfrom_op.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvmsg_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_send_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_sendto_op.hpp +3 -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 +3 -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 +1 -1
- 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 +12 -44
- 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 +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_null_buffers_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_accept_op.hpp +11 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_connect_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recv_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvfrom_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvmsg_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_send_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_sendto_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +11 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_wait_op.hpp +4 -5
- 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 +3 -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 +3 -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 +1 -1
- 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 +2 -2
- 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 +1 -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 +21 -26
- 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 +229 -1019
- 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 +55 -33
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_concurrent_channel.hpp +55 -33
- 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 +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/concurrent_channel.hpp +3 -3
- 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 +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_operation.hpp +130 -53
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_payload.hpp +92 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_receive_op.hpp +15 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_functions.hpp +73 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_op.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_service.hpp +48 -48
- 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 +39 -30
- 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 +16 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/coro.hpp +14 -14
- 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 +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_promise.hpp +2 -2
- 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/use_coro.hpp +14 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_promise.hpp +11 -11
- 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 +62 -137
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/awaitable.hpp +22 -21
- 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 +44 -36
- 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 +32 -41
- 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 +1 -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 +36 -420
- 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 +205 -421
- 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 +1 -1
- 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 +77 -423
- 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 +25 -34
- 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 +4 -4
- 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 +4 -4
- 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 +21 -26
- 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 +10 -21
- 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 +1 -1
- 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 +1 -27
- data/src/cxx_supportlib/vendor-modified/boost/assert/source_location.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic.hpp +2 -3
- 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 +1 -1
- 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/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 -61
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +229 -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/tuple_for_each.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn.hpp +138 -289
- data/src/cxx_supportlib/vendor-modified/boost/bind/placeholders.hpp +3 -16
- data/src/cxx_supportlib/vendor-modified/boost/bind/protect.hpp +0 -280
- data/src/cxx_supportlib/vendor-modified/boost/bind/std_placeholders.hpp +0 -7
- 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 +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/chrono/duration.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_units.hpp +1 -0
- 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 +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +4 -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 +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/digitalmars.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc_xml.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/hp_acc.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/metrowerks.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/mpw.hpp +3 -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 +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/vacpp.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp_zos.hpp +1 -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 +40 -0
- 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/deque.hpp +112 -112
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +40 -40
- 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 +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +30 -25
- 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 +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +129 -129
- 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/next_capacity.hpp +6 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +32 -32
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +18 -19
- 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 +77 -77
- 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 +44 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +78 -78
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +231 -231
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +85 -85
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +33 -33
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +107 -109
- 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 +18 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +2 -2
- 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 -80
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +81 -81
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +115 -109
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +101 -101
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +32 -32
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +150 -190
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +165 -165
- 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 +84 -86
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_tuple_like.hpp +5 -99
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/mulx.hpp +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +25 -126
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_contiguous_range.hpp +27 -21
- 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 -41
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_tuple_like.hpp +4 -10
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_unordered_range.hpp +6 -7
- data/src/cxx_supportlib/vendor-modified/boost/core/allocator_access.hpp +20 -6
- data/src/cxx_supportlib/vendor-modified/boost/core/bit.hpp +19 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/checked_delete.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_pause.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +1 -1
- 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/invoke_swap.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/launder.hpp +17 -3
- data/src/cxx_supportlib/vendor-modified/boost/core/null_deleter.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/swap.hpp +6 -55
- 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 +2 -2
- 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/{ratio → exception}/detail/requires_cxx11.hpp +7 -5
- 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 +1 -1
- 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 +1 -1
- 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 +21 -166
- data/src/cxx_supportlib/vendor-modified/boost/function/function_fwd.hpp +36 -41
- data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +267 -418
- data/src/cxx_supportlib/vendor-modified/boost/function/function_typeof.hpp +1 -31
- data/src/cxx_supportlib/vendor-modified/boost/function.hpp +5 -63
- 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 +2 -2
- 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/common_slist_algorithms.hpp +5 -5
- 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 -21
- 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 -21
- 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 +32 -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 +56 -57
- 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 +60 -61
- 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/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 +611 -633
- 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 -30
- 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/thread/src/pthread/thread.cpp +24 -14
- 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 +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_sort.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +5 -19
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/basic_op.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/heap_sort.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/merge.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/predicate.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +3 -3
- 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/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 +67 -17
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +5 -2
- data/src/cxx_supportlib/vendor-modified/boost/move/iterator.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/move/unique_ptr.hpp +48 -48
- data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/bind.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_fold.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integer_sequence.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integral.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/list.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
- 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 +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/pool/pool.hpp +1 -1
- 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 -87
- 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/smart_ptr/detail/requires_cxx11.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_unique.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +1 -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 +13 -57
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +5 -29
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.hpp +51 -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 +8 -1
- 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 +5 -9
- 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/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/is_floating_point.hpp +22 -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 +2 -54
- 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 +2 -12
- 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 -203
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +145 -103
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map_fwd.hpp +1 -4
- 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 +531 -91
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +346 -194
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/element_type.hpp +10 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/flat_map_types.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_handle.hpp +2 -8
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_map_types.hpp +22 -15
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_set_types.hpp +10 -13
- 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/table.hpp +150 -55
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +346 -1039
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/map.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/narrow_cast.hpp +8 -8
- 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 +95 -144
- 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 +123 -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 +65 -46
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map_fwd.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +41 -23
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set_fwd.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +324 -997
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map_fwd.hpp +7 -12
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +57 -46
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map_fwd.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +35 -24
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set_fwd.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +229 -629
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set_fwd.hpp +8 -13
- 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/native_support.rb +10 -7
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +3 -7
- 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 +50 -149
- data/src/cxx_supportlib/ServerKit/http_parser.cpp +0 -2575
- data/src/cxx_supportlib/ServerKit/http_parser.h +0 -452
- 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 -91
- 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/handler_alloc_hook.ipp +0 -64
- 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/detail/is_same.hpp +0 -36
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/requires_cxx11.hpp +0 -22
- 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 -476
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/cygwin.hpp +0 -71
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/requires_cxx11.hpp +0 -22
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_win32_sleep.hpp +0 -54
- data/src/cxx_supportlib/vendor-modified/boost/detail/atomic_count.hpp +0 -21
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/epilogue.hpp +0 -39
- 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 -27
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/requires_cxx11.hpp +0 -22
- 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/swap.hpp +0 -17
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/requires_cxx11.hpp +0 -21
- data/src/cxx_supportlib/vendor-modified/boost/typeof/detail/requires_cxx11.hpp +0 -18
- 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/fwd.hpp +0 -150
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/requires_cxx11.hpp +0 -21
- /data/dev/{webpacketpp.patch → websocketpp.patch} +0 -0
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
#ifndef BOOST_FUNCTION_FUNCTION_TEMPLATE_HPP_INCLUDED
|
|
2
|
+
#define BOOST_FUNCTION_FUNCTION_TEMPLATE_HPP_INCLUDED
|
|
3
|
+
|
|
1
4
|
// Boost.Function library
|
|
2
5
|
|
|
3
6
|
// Copyright Douglas Gregor 2001-2006
|
|
@@ -8,125 +11,65 @@
|
|
|
8
11
|
|
|
9
12
|
// For more information, see http://www.boost.org
|
|
10
13
|
|
|
11
|
-
|
|
12
|
-
// protection.
|
|
13
|
-
#include <boost/function/detail/prologue.hpp>
|
|
14
|
+
#include <boost/function/function_base.hpp>
|
|
14
15
|
#include <boost/core/no_exceptions_support.hpp>
|
|
16
|
+
#include <boost/mem_fn.hpp>
|
|
17
|
+
#include <boost/throw_exception.hpp>
|
|
18
|
+
#include <boost/type_traits/is_integral.hpp>
|
|
19
|
+
#include <boost/type_traits/is_void.hpp>
|
|
20
|
+
#include <boost/config.hpp>
|
|
21
|
+
#include <algorithm>
|
|
22
|
+
#include <cassert>
|
|
15
23
|
|
|
16
24
|
#if defined(BOOST_MSVC)
|
|
17
25
|
# pragma warning( push )
|
|
18
26
|
# pragma warning( disable : 4127 ) // "conditional expression is constant"
|
|
19
27
|
#endif
|
|
20
28
|
|
|
21
|
-
#define BOOST_FUNCTION_TEMPLATE_PARMS BOOST_PP_ENUM_PARAMS(BOOST_FUNCTION_NUM_ARGS, typename T)
|
|
22
|
-
|
|
23
|
-
#define BOOST_FUNCTION_TEMPLATE_ARGS BOOST_PP_ENUM_PARAMS(BOOST_FUNCTION_NUM_ARGS, T)
|
|
24
|
-
|
|
25
|
-
#define BOOST_FUNCTION_PARM(J,I,D) BOOST_PP_CAT(T,I) BOOST_PP_CAT(a,I)
|
|
26
|
-
|
|
27
|
-
#define BOOST_FUNCTION_PARMS BOOST_PP_ENUM(BOOST_FUNCTION_NUM_ARGS,BOOST_FUNCTION_PARM,BOOST_PP_EMPTY)
|
|
28
|
-
|
|
29
|
-
#ifdef BOOST_NO_CXX11_RVALUE_REFERENCES
|
|
30
|
-
# define BOOST_FUNCTION_ARGS BOOST_PP_ENUM_PARAMS(BOOST_FUNCTION_NUM_ARGS, a)
|
|
31
|
-
#else
|
|
32
|
-
# define BOOST_FUNCTION_ARG(J,I,D) static_cast<BOOST_PP_CAT(T,I)&&>(BOOST_PP_CAT(a,I))
|
|
33
|
-
# define BOOST_FUNCTION_ARGS BOOST_PP_ENUM(BOOST_FUNCTION_NUM_ARGS,BOOST_FUNCTION_ARG,BOOST_PP_EMPTY)
|
|
34
|
-
#endif
|
|
35
|
-
|
|
36
|
-
#define BOOST_FUNCTION_ARG_TYPE(J,I,D) \
|
|
37
|
-
typedef BOOST_PP_CAT(T,I) BOOST_PP_CAT(BOOST_PP_CAT(arg, BOOST_PP_INC(I)),_type);
|
|
38
|
-
|
|
39
|
-
#define BOOST_FUNCTION_ARG_TYPES BOOST_PP_REPEAT(BOOST_FUNCTION_NUM_ARGS,BOOST_FUNCTION_ARG_TYPE,BOOST_PP_EMPTY)
|
|
40
|
-
|
|
41
|
-
// Comma if nonzero number of arguments
|
|
42
|
-
#if BOOST_FUNCTION_NUM_ARGS == 0
|
|
43
|
-
# define BOOST_FUNCTION_COMMA
|
|
44
|
-
#else
|
|
45
|
-
# define BOOST_FUNCTION_COMMA ,
|
|
46
|
-
#endif // BOOST_FUNCTION_NUM_ARGS > 0
|
|
47
|
-
|
|
48
|
-
// Class names used in this version of the code
|
|
49
|
-
#define BOOST_FUNCTION_FUNCTION BOOST_JOIN(function,BOOST_FUNCTION_NUM_ARGS)
|
|
50
|
-
#define BOOST_FUNCTION_FUNCTION_INVOKER \
|
|
51
|
-
BOOST_JOIN(function_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
52
|
-
#define BOOST_FUNCTION_VOID_FUNCTION_INVOKER \
|
|
53
|
-
BOOST_JOIN(void_function_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
54
|
-
#define BOOST_FUNCTION_FUNCTION_OBJ_INVOKER \
|
|
55
|
-
BOOST_JOIN(function_obj_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
56
|
-
#define BOOST_FUNCTION_VOID_FUNCTION_OBJ_INVOKER \
|
|
57
|
-
BOOST_JOIN(void_function_obj_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
58
|
-
#define BOOST_FUNCTION_FUNCTION_REF_INVOKER \
|
|
59
|
-
BOOST_JOIN(function_ref_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
60
|
-
#define BOOST_FUNCTION_VOID_FUNCTION_REF_INVOKER \
|
|
61
|
-
BOOST_JOIN(void_function_ref_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
62
|
-
#define BOOST_FUNCTION_MEMBER_INVOKER \
|
|
63
|
-
BOOST_JOIN(function_mem_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
64
|
-
#define BOOST_FUNCTION_VOID_MEMBER_INVOKER \
|
|
65
|
-
BOOST_JOIN(function_void_mem_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
66
|
-
#define BOOST_FUNCTION_GET_FUNCTION_INVOKER \
|
|
67
|
-
BOOST_JOIN(get_function_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
68
|
-
#define BOOST_FUNCTION_GET_FUNCTION_OBJ_INVOKER \
|
|
69
|
-
BOOST_JOIN(get_function_obj_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
70
|
-
#define BOOST_FUNCTION_GET_FUNCTION_REF_INVOKER \
|
|
71
|
-
BOOST_JOIN(get_function_ref_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
72
|
-
#define BOOST_FUNCTION_GET_MEMBER_INVOKER \
|
|
73
|
-
BOOST_JOIN(get_member_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
74
|
-
#define BOOST_FUNCTION_GET_INVOKER \
|
|
75
|
-
BOOST_JOIN(get_invoker,BOOST_FUNCTION_NUM_ARGS)
|
|
76
|
-
#define BOOST_FUNCTION_VTABLE BOOST_JOIN(basic_vtable,BOOST_FUNCTION_NUM_ARGS)
|
|
77
|
-
|
|
78
|
-
#ifndef BOOST_NO_VOID_RETURNS
|
|
79
|
-
# define BOOST_FUNCTION_VOID_RETURN_TYPE void
|
|
80
|
-
# define BOOST_FUNCTION_RETURN(X) X
|
|
81
|
-
#else
|
|
82
|
-
# define BOOST_FUNCTION_VOID_RETURN_TYPE boost::detail::function::unusable
|
|
83
|
-
# define BOOST_FUNCTION_RETURN(X) X; return BOOST_FUNCTION_VOID_RETURN_TYPE ()
|
|
84
|
-
#endif
|
|
85
|
-
|
|
86
29
|
namespace boost {
|
|
87
30
|
namespace detail {
|
|
88
31
|
namespace function {
|
|
89
32
|
template<
|
|
90
33
|
typename FunctionPtr,
|
|
91
|
-
typename R
|
|
92
|
-
|
|
34
|
+
typename R,
|
|
35
|
+
typename... T
|
|
93
36
|
>
|
|
94
|
-
struct
|
|
37
|
+
struct function_invoker
|
|
95
38
|
{
|
|
96
|
-
static R invoke(function_buffer& function_ptr
|
|
97
|
-
|
|
39
|
+
static R invoke(function_buffer& function_ptr,
|
|
40
|
+
T... a)
|
|
98
41
|
{
|
|
99
42
|
FunctionPtr f = reinterpret_cast<FunctionPtr>(function_ptr.members.func_ptr);
|
|
100
|
-
return f(
|
|
43
|
+
return f(static_cast<T&&>(a)...);
|
|
101
44
|
}
|
|
102
45
|
};
|
|
103
46
|
|
|
104
47
|
template<
|
|
105
48
|
typename FunctionPtr,
|
|
106
|
-
typename R
|
|
107
|
-
|
|
49
|
+
typename R,
|
|
50
|
+
typename... T
|
|
108
51
|
>
|
|
109
|
-
struct
|
|
52
|
+
struct void_function_invoker
|
|
110
53
|
{
|
|
111
|
-
static
|
|
112
|
-
invoke(function_buffer& function_ptr
|
|
113
|
-
|
|
54
|
+
static void
|
|
55
|
+
invoke(function_buffer& function_ptr,
|
|
56
|
+
T... a)
|
|
114
57
|
|
|
115
58
|
{
|
|
116
59
|
FunctionPtr f = reinterpret_cast<FunctionPtr>(function_ptr.members.func_ptr);
|
|
117
|
-
|
|
60
|
+
f(static_cast<T&&>(a)...);
|
|
118
61
|
}
|
|
119
62
|
};
|
|
120
63
|
|
|
121
64
|
template<
|
|
122
65
|
typename FunctionObj,
|
|
123
|
-
typename R
|
|
124
|
-
|
|
66
|
+
typename R,
|
|
67
|
+
typename... T
|
|
125
68
|
>
|
|
126
|
-
struct
|
|
69
|
+
struct function_obj_invoker
|
|
127
70
|
{
|
|
128
|
-
static R invoke(function_buffer& function_obj_ptr
|
|
129
|
-
|
|
71
|
+
static R invoke(function_buffer& function_obj_ptr,
|
|
72
|
+
T... a)
|
|
130
73
|
|
|
131
74
|
{
|
|
132
75
|
FunctionObj* f;
|
|
@@ -134,20 +77,20 @@ namespace boost {
|
|
|
134
77
|
f = reinterpret_cast<FunctionObj*>(function_obj_ptr.data);
|
|
135
78
|
else
|
|
136
79
|
f = reinterpret_cast<FunctionObj*>(function_obj_ptr.members.obj_ptr);
|
|
137
|
-
return (*f)(
|
|
80
|
+
return (*f)(static_cast<T&&>(a)...);
|
|
138
81
|
}
|
|
139
82
|
};
|
|
140
83
|
|
|
141
84
|
template<
|
|
142
85
|
typename FunctionObj,
|
|
143
|
-
typename R
|
|
144
|
-
|
|
86
|
+
typename R,
|
|
87
|
+
typename... T
|
|
145
88
|
>
|
|
146
|
-
struct
|
|
89
|
+
struct void_function_obj_invoker
|
|
147
90
|
{
|
|
148
|
-
static
|
|
149
|
-
invoke(function_buffer& function_obj_ptr
|
|
150
|
-
|
|
91
|
+
static void
|
|
92
|
+
invoke(function_buffer& function_obj_ptr,
|
|
93
|
+
T... a)
|
|
151
94
|
|
|
152
95
|
{
|
|
153
96
|
FunctionObj* f;
|
|
@@ -155,169 +98,165 @@ namespace boost {
|
|
|
155
98
|
f = reinterpret_cast<FunctionObj*>(function_obj_ptr.data);
|
|
156
99
|
else
|
|
157
100
|
f = reinterpret_cast<FunctionObj*>(function_obj_ptr.members.obj_ptr);
|
|
158
|
-
|
|
101
|
+
(*f)(static_cast<T&&>(a)...);
|
|
159
102
|
}
|
|
160
103
|
};
|
|
161
104
|
|
|
162
105
|
template<
|
|
163
106
|
typename FunctionObj,
|
|
164
|
-
typename R
|
|
165
|
-
|
|
107
|
+
typename R,
|
|
108
|
+
typename... T
|
|
166
109
|
>
|
|
167
|
-
struct
|
|
110
|
+
struct function_ref_invoker
|
|
168
111
|
{
|
|
169
|
-
static R invoke(function_buffer& function_obj_ptr
|
|
170
|
-
|
|
112
|
+
static R invoke(function_buffer& function_obj_ptr,
|
|
113
|
+
T... a)
|
|
171
114
|
|
|
172
115
|
{
|
|
173
116
|
FunctionObj* f =
|
|
174
117
|
reinterpret_cast<FunctionObj*>(function_obj_ptr.members.obj_ptr);
|
|
175
|
-
return (*f)(
|
|
118
|
+
return (*f)(static_cast<T&&>(a)...);
|
|
176
119
|
}
|
|
177
120
|
};
|
|
178
121
|
|
|
179
122
|
template<
|
|
180
123
|
typename FunctionObj,
|
|
181
|
-
typename R
|
|
182
|
-
|
|
124
|
+
typename R,
|
|
125
|
+
typename... T
|
|
183
126
|
>
|
|
184
|
-
struct
|
|
127
|
+
struct void_function_ref_invoker
|
|
185
128
|
{
|
|
186
|
-
static
|
|
187
|
-
invoke(function_buffer& function_obj_ptr
|
|
188
|
-
|
|
129
|
+
static void
|
|
130
|
+
invoke(function_buffer& function_obj_ptr,
|
|
131
|
+
T... a)
|
|
189
132
|
|
|
190
133
|
{
|
|
191
134
|
FunctionObj* f =
|
|
192
135
|
reinterpret_cast<FunctionObj*>(function_obj_ptr.members.obj_ptr);
|
|
193
|
-
|
|
136
|
+
(*f)(static_cast<T&&>(a)...);
|
|
194
137
|
}
|
|
195
138
|
};
|
|
196
139
|
|
|
197
|
-
#if BOOST_FUNCTION_NUM_ARGS > 0
|
|
198
140
|
/* Handle invocation of member pointers. */
|
|
199
141
|
template<
|
|
200
142
|
typename MemberPtr,
|
|
201
|
-
typename R
|
|
202
|
-
|
|
143
|
+
typename R,
|
|
144
|
+
typename... T
|
|
203
145
|
>
|
|
204
|
-
struct
|
|
146
|
+
struct member_invoker
|
|
205
147
|
{
|
|
206
|
-
static R invoke(function_buffer& function_obj_ptr
|
|
207
|
-
|
|
148
|
+
static R invoke(function_buffer& function_obj_ptr,
|
|
149
|
+
T... a)
|
|
208
150
|
|
|
209
151
|
{
|
|
210
152
|
MemberPtr* f =
|
|
211
153
|
reinterpret_cast<MemberPtr*>(function_obj_ptr.data);
|
|
212
|
-
return boost::mem_fn(*f)(
|
|
154
|
+
return boost::mem_fn(*f)(static_cast<T&&>(a)...);
|
|
213
155
|
}
|
|
214
156
|
};
|
|
215
157
|
|
|
216
158
|
template<
|
|
217
159
|
typename MemberPtr,
|
|
218
|
-
typename R
|
|
219
|
-
|
|
160
|
+
typename R,
|
|
161
|
+
typename... T
|
|
220
162
|
>
|
|
221
|
-
struct
|
|
163
|
+
struct void_member_invoker
|
|
222
164
|
{
|
|
223
|
-
static
|
|
224
|
-
invoke(function_buffer& function_obj_ptr
|
|
225
|
-
|
|
165
|
+
static void
|
|
166
|
+
invoke(function_buffer& function_obj_ptr,
|
|
167
|
+
T... a)
|
|
226
168
|
|
|
227
169
|
{
|
|
228
170
|
MemberPtr* f =
|
|
229
171
|
reinterpret_cast<MemberPtr*>(function_obj_ptr.data);
|
|
230
|
-
|
|
172
|
+
boost::mem_fn(*f)(static_cast<T&&>(a)...);
|
|
231
173
|
}
|
|
232
174
|
};
|
|
233
|
-
#endif
|
|
234
175
|
|
|
235
176
|
template<
|
|
236
177
|
typename FunctionPtr,
|
|
237
|
-
typename R
|
|
238
|
-
|
|
178
|
+
typename R,
|
|
179
|
+
typename... T
|
|
239
180
|
>
|
|
240
|
-
struct
|
|
181
|
+
struct get_function_invoker
|
|
241
182
|
{
|
|
242
183
|
typedef typename conditional<(is_void<R>::value),
|
|
243
|
-
|
|
184
|
+
void_function_invoker<
|
|
244
185
|
FunctionPtr,
|
|
245
|
-
R
|
|
246
|
-
|
|
186
|
+
R,
|
|
187
|
+
T...
|
|
247
188
|
>,
|
|
248
|
-
|
|
189
|
+
function_invoker<
|
|
249
190
|
FunctionPtr,
|
|
250
|
-
R
|
|
251
|
-
|
|
191
|
+
R,
|
|
192
|
+
T...
|
|
252
193
|
>
|
|
253
194
|
>::type type;
|
|
254
195
|
};
|
|
255
196
|
|
|
256
197
|
template<
|
|
257
198
|
typename FunctionObj,
|
|
258
|
-
typename R
|
|
259
|
-
|
|
199
|
+
typename R,
|
|
200
|
+
typename... T
|
|
260
201
|
>
|
|
261
|
-
struct
|
|
202
|
+
struct get_function_obj_invoker
|
|
262
203
|
{
|
|
263
204
|
typedef typename conditional<(is_void<R>::value),
|
|
264
|
-
|
|
205
|
+
void_function_obj_invoker<
|
|
265
206
|
FunctionObj,
|
|
266
|
-
R
|
|
267
|
-
|
|
207
|
+
R,
|
|
208
|
+
T...
|
|
268
209
|
>,
|
|
269
|
-
|
|
210
|
+
function_obj_invoker<
|
|
270
211
|
FunctionObj,
|
|
271
|
-
R
|
|
272
|
-
|
|
212
|
+
R,
|
|
213
|
+
T...
|
|
273
214
|
>
|
|
274
215
|
>::type type;
|
|
275
216
|
};
|
|
276
217
|
|
|
277
218
|
template<
|
|
278
219
|
typename FunctionObj,
|
|
279
|
-
typename R
|
|
280
|
-
|
|
220
|
+
typename R,
|
|
221
|
+
typename... T
|
|
281
222
|
>
|
|
282
|
-
struct
|
|
223
|
+
struct get_function_ref_invoker
|
|
283
224
|
{
|
|
284
225
|
typedef typename conditional<(is_void<R>::value),
|
|
285
|
-
|
|
226
|
+
void_function_ref_invoker<
|
|
286
227
|
FunctionObj,
|
|
287
|
-
R
|
|
288
|
-
|
|
228
|
+
R,
|
|
229
|
+
T...
|
|
289
230
|
>,
|
|
290
|
-
|
|
231
|
+
function_ref_invoker<
|
|
291
232
|
FunctionObj,
|
|
292
|
-
R
|
|
293
|
-
|
|
233
|
+
R,
|
|
234
|
+
T...
|
|
294
235
|
>
|
|
295
236
|
>::type type;
|
|
296
237
|
};
|
|
297
238
|
|
|
298
|
-
#if BOOST_FUNCTION_NUM_ARGS > 0
|
|
299
239
|
/* Retrieve the appropriate invoker for a member pointer. */
|
|
300
240
|
template<
|
|
301
241
|
typename MemberPtr,
|
|
302
|
-
typename R
|
|
303
|
-
|
|
242
|
+
typename R,
|
|
243
|
+
typename... T
|
|
304
244
|
>
|
|
305
|
-
struct
|
|
245
|
+
struct get_member_invoker
|
|
306
246
|
{
|
|
307
247
|
typedef typename conditional<(is_void<R>::value),
|
|
308
|
-
|
|
248
|
+
void_member_invoker<
|
|
309
249
|
MemberPtr,
|
|
310
|
-
R
|
|
311
|
-
|
|
250
|
+
R,
|
|
251
|
+
T...
|
|
312
252
|
>,
|
|
313
|
-
|
|
253
|
+
member_invoker<
|
|
314
254
|
MemberPtr,
|
|
315
|
-
R
|
|
316
|
-
|
|
255
|
+
R,
|
|
256
|
+
T...
|
|
317
257
|
>
|
|
318
258
|
>::type type;
|
|
319
259
|
};
|
|
320
|
-
#endif
|
|
321
260
|
|
|
322
261
|
/* Given the tag returned by get_function_tag, retrieve the
|
|
323
262
|
actual invoker that will be used for the given function
|
|
@@ -329,20 +268,20 @@ namespace boost {
|
|
|
329
268
|
contains two typedefs, "invoker_type" and "manager_type",
|
|
330
269
|
which correspond to the invoker and manager types. */
|
|
331
270
|
template<typename Tag>
|
|
332
|
-
struct
|
|
271
|
+
struct get_invoker { };
|
|
333
272
|
|
|
334
273
|
/* Retrieve the invoker for a function pointer. */
|
|
335
274
|
template<>
|
|
336
|
-
struct
|
|
275
|
+
struct get_invoker<function_ptr_tag>
|
|
337
276
|
{
|
|
338
277
|
template<typename FunctionPtr,
|
|
339
|
-
typename R
|
|
278
|
+
typename R, typename... T>
|
|
340
279
|
struct apply
|
|
341
280
|
{
|
|
342
|
-
typedef typename
|
|
281
|
+
typedef typename get_function_invoker<
|
|
343
282
|
FunctionPtr,
|
|
344
|
-
R
|
|
345
|
-
|
|
283
|
+
R,
|
|
284
|
+
T...
|
|
346
285
|
>::type
|
|
347
286
|
invoker_type;
|
|
348
287
|
|
|
@@ -350,13 +289,13 @@ namespace boost {
|
|
|
350
289
|
};
|
|
351
290
|
|
|
352
291
|
template<typename FunctionPtr, typename Allocator,
|
|
353
|
-
typename R
|
|
292
|
+
typename R, typename... T>
|
|
354
293
|
struct apply_a
|
|
355
294
|
{
|
|
356
|
-
typedef typename
|
|
295
|
+
typedef typename get_function_invoker<
|
|
357
296
|
FunctionPtr,
|
|
358
|
-
R
|
|
359
|
-
|
|
297
|
+
R,
|
|
298
|
+
T...
|
|
360
299
|
>::type
|
|
361
300
|
invoker_type;
|
|
362
301
|
|
|
@@ -364,19 +303,18 @@ namespace boost {
|
|
|
364
303
|
};
|
|
365
304
|
};
|
|
366
305
|
|
|
367
|
-
#if BOOST_FUNCTION_NUM_ARGS > 0
|
|
368
306
|
/* Retrieve the invoker for a member pointer. */
|
|
369
307
|
template<>
|
|
370
|
-
struct
|
|
308
|
+
struct get_invoker<member_ptr_tag>
|
|
371
309
|
{
|
|
372
310
|
template<typename MemberPtr,
|
|
373
|
-
typename R
|
|
311
|
+
typename R, typename... T>
|
|
374
312
|
struct apply
|
|
375
313
|
{
|
|
376
|
-
typedef typename
|
|
314
|
+
typedef typename get_member_invoker<
|
|
377
315
|
MemberPtr,
|
|
378
|
-
R
|
|
379
|
-
|
|
316
|
+
R,
|
|
317
|
+
T...
|
|
380
318
|
>::type
|
|
381
319
|
invoker_type;
|
|
382
320
|
|
|
@@ -384,33 +322,32 @@ namespace boost {
|
|
|
384
322
|
};
|
|
385
323
|
|
|
386
324
|
template<typename MemberPtr, typename Allocator,
|
|
387
|
-
typename R
|
|
325
|
+
typename R, typename... T>
|
|
388
326
|
struct apply_a
|
|
389
327
|
{
|
|
390
|
-
typedef typename
|
|
328
|
+
typedef typename get_member_invoker<
|
|
391
329
|
MemberPtr,
|
|
392
|
-
R
|
|
393
|
-
|
|
330
|
+
R,
|
|
331
|
+
T...
|
|
394
332
|
>::type
|
|
395
333
|
invoker_type;
|
|
396
334
|
|
|
397
335
|
typedef functor_manager<MemberPtr> manager_type;
|
|
398
336
|
};
|
|
399
337
|
};
|
|
400
|
-
#endif
|
|
401
338
|
|
|
402
339
|
/* Retrieve the invoker for a function object. */
|
|
403
340
|
template<>
|
|
404
|
-
struct
|
|
341
|
+
struct get_invoker<function_obj_tag>
|
|
405
342
|
{
|
|
406
343
|
template<typename FunctionObj,
|
|
407
|
-
typename R
|
|
344
|
+
typename R, typename... T>
|
|
408
345
|
struct apply
|
|
409
346
|
{
|
|
410
|
-
typedef typename
|
|
347
|
+
typedef typename get_function_obj_invoker<
|
|
411
348
|
FunctionObj,
|
|
412
|
-
R
|
|
413
|
-
|
|
349
|
+
R,
|
|
350
|
+
T...
|
|
414
351
|
>::type
|
|
415
352
|
invoker_type;
|
|
416
353
|
|
|
@@ -418,13 +355,13 @@ namespace boost {
|
|
|
418
355
|
};
|
|
419
356
|
|
|
420
357
|
template<typename FunctionObj, typename Allocator,
|
|
421
|
-
typename R
|
|
358
|
+
typename R, typename... T>
|
|
422
359
|
struct apply_a
|
|
423
360
|
{
|
|
424
|
-
typedef typename
|
|
361
|
+
typedef typename get_function_obj_invoker<
|
|
425
362
|
FunctionObj,
|
|
426
|
-
R
|
|
427
|
-
|
|
363
|
+
R,
|
|
364
|
+
T...
|
|
428
365
|
>::type
|
|
429
366
|
invoker_type;
|
|
430
367
|
|
|
@@ -434,16 +371,16 @@ namespace boost {
|
|
|
434
371
|
|
|
435
372
|
/* Retrieve the invoker for a reference to a function object. */
|
|
436
373
|
template<>
|
|
437
|
-
struct
|
|
374
|
+
struct get_invoker<function_obj_ref_tag>
|
|
438
375
|
{
|
|
439
376
|
template<typename RefWrapper,
|
|
440
|
-
typename R
|
|
377
|
+
typename R, typename... T>
|
|
441
378
|
struct apply
|
|
442
379
|
{
|
|
443
|
-
typedef typename
|
|
380
|
+
typedef typename get_function_ref_invoker<
|
|
444
381
|
typename RefWrapper::type,
|
|
445
|
-
R
|
|
446
|
-
|
|
382
|
+
R,
|
|
383
|
+
T...
|
|
447
384
|
>::type
|
|
448
385
|
invoker_type;
|
|
449
386
|
|
|
@@ -451,13 +388,13 @@ namespace boost {
|
|
|
451
388
|
};
|
|
452
389
|
|
|
453
390
|
template<typename RefWrapper, typename Allocator,
|
|
454
|
-
typename R
|
|
391
|
+
typename R, typename... T>
|
|
455
392
|
struct apply_a
|
|
456
393
|
{
|
|
457
|
-
typedef typename
|
|
394
|
+
typedef typename get_function_ref_invoker<
|
|
458
395
|
typename RefWrapper::type,
|
|
459
|
-
R
|
|
460
|
-
|
|
396
|
+
R,
|
|
397
|
+
T...
|
|
461
398
|
>::type
|
|
462
399
|
invoker_type;
|
|
463
400
|
|
|
@@ -473,30 +410,26 @@ namespace boost {
|
|
|
473
410
|
* members. It therefore cannot have any constructors,
|
|
474
411
|
* destructors, base classes, etc.
|
|
475
412
|
*/
|
|
476
|
-
template<typename R
|
|
477
|
-
struct
|
|
413
|
+
template<typename R, typename... T>
|
|
414
|
+
struct basic_vtable
|
|
478
415
|
{
|
|
479
|
-
#ifndef BOOST_NO_VOID_RETURNS
|
|
480
416
|
typedef R result_type;
|
|
481
|
-
#else
|
|
482
|
-
typedef typename function_return_type<R>::type result_type;
|
|
483
|
-
#endif // BOOST_NO_VOID_RETURNS
|
|
484
417
|
|
|
485
418
|
typedef result_type (*invoker_type)(function_buffer&
|
|
486
|
-
|
|
487
|
-
|
|
419
|
+
,
|
|
420
|
+
T...);
|
|
488
421
|
|
|
489
422
|
template<typename F>
|
|
490
423
|
bool assign_to(F f, function_buffer& functor) const
|
|
491
424
|
{
|
|
492
425
|
typedef typename get_function_tag<F>::type tag;
|
|
493
|
-
return assign_to(f, functor, tag());
|
|
426
|
+
return assign_to(std::move(f), functor, tag());
|
|
494
427
|
}
|
|
495
428
|
template<typename F,typename Allocator>
|
|
496
429
|
bool assign_to_a(F f, function_buffer& functor, Allocator a) const
|
|
497
430
|
{
|
|
498
431
|
typedef typename get_function_tag<F>::type tag;
|
|
499
|
-
return assign_to_a(f, functor, a, tag());
|
|
432
|
+
return assign_to_a(std::move(f), functor, a, tag());
|
|
500
433
|
}
|
|
501
434
|
|
|
502
435
|
void clear(function_buffer& functor) const
|
|
@@ -521,8 +454,6 @@ namespace boost {
|
|
|
521
454
|
{
|
|
522
455
|
this->clear(functor);
|
|
523
456
|
if (f) {
|
|
524
|
-
// should be a reinterpret cast, but some compilers insist
|
|
525
|
-
// on giving cv-qualifiers to free functions
|
|
526
457
|
functor.members.func_ptr = reinterpret_cast<void (*)()>(f);
|
|
527
458
|
return true;
|
|
528
459
|
} else {
|
|
@@ -533,11 +464,10 @@ namespace boost {
|
|
|
533
464
|
bool
|
|
534
465
|
assign_to_a(FunctionPtr f, function_buffer& functor, Allocator, function_ptr_tag) const
|
|
535
466
|
{
|
|
536
|
-
return assign_to(f,functor,function_ptr_tag());
|
|
467
|
+
return assign_to(std::move(f),functor,function_ptr_tag());
|
|
537
468
|
}
|
|
538
469
|
|
|
539
470
|
// Member pointers
|
|
540
|
-
#if BOOST_FUNCTION_NUM_ARGS > 0
|
|
541
471
|
template<typename MemberPtr>
|
|
542
472
|
bool assign_to(MemberPtr f, function_buffer& functor, member_ptr_tag) const
|
|
543
473
|
{
|
|
@@ -564,7 +494,6 @@ namespace boost {
|
|
|
564
494
|
return false;
|
|
565
495
|
}
|
|
566
496
|
}
|
|
567
|
-
#endif // BOOST_FUNCTION_NUM_ARGS > 0
|
|
568
497
|
|
|
569
498
|
// Function objects
|
|
570
499
|
// Assign to a function object using the small object optimization
|
|
@@ -572,13 +501,13 @@ namespace boost {
|
|
|
572
501
|
void
|
|
573
502
|
assign_functor(FunctionObj f, function_buffer& functor, true_type) const
|
|
574
503
|
{
|
|
575
|
-
new (reinterpret_cast<void*>(functor.data)) FunctionObj(f);
|
|
504
|
+
new (reinterpret_cast<void*>(functor.data)) FunctionObj(std::move(f));
|
|
576
505
|
}
|
|
577
506
|
template<typename FunctionObj,typename Allocator>
|
|
578
507
|
void
|
|
579
508
|
assign_functor_a(FunctionObj f, function_buffer& functor, Allocator, true_type) const
|
|
580
509
|
{
|
|
581
|
-
assign_functor(f,functor,true_type());
|
|
510
|
+
assign_functor(std::move(f),functor,true_type());
|
|
582
511
|
}
|
|
583
512
|
|
|
584
513
|
// Assign to a function object allocated on the heap.
|
|
@@ -586,28 +515,21 @@ namespace boost {
|
|
|
586
515
|
void
|
|
587
516
|
assign_functor(FunctionObj f, function_buffer& functor, false_type) const
|
|
588
517
|
{
|
|
589
|
-
functor.members.obj_ptr = new FunctionObj(f);
|
|
518
|
+
functor.members.obj_ptr = new FunctionObj(std::move(f));
|
|
590
519
|
}
|
|
591
520
|
template<typename FunctionObj,typename Allocator>
|
|
592
521
|
void
|
|
593
522
|
assign_functor_a(FunctionObj f, function_buffer& functor, Allocator a, false_type) const
|
|
594
523
|
{
|
|
595
524
|
typedef functor_wrapper<FunctionObj,Allocator> functor_wrapper_type;
|
|
596
|
-
|
|
597
|
-
typedef typename Allocator::template rebind<functor_wrapper_type>::other
|
|
598
|
-
wrapper_allocator_type;
|
|
599
|
-
typedef typename wrapper_allocator_type::pointer wrapper_allocator_pointer_type;
|
|
600
|
-
#else
|
|
525
|
+
|
|
601
526
|
using wrapper_allocator_type = typename std::allocator_traits<Allocator>::template rebind_alloc<functor_wrapper_type>;
|
|
602
527
|
using wrapper_allocator_pointer_type = typename std::allocator_traits<wrapper_allocator_type>::pointer;
|
|
603
|
-
|
|
528
|
+
|
|
604
529
|
wrapper_allocator_type wrapper_allocator(a);
|
|
605
530
|
wrapper_allocator_pointer_type copy = wrapper_allocator.allocate(1);
|
|
606
|
-
#if defined(BOOST_NO_CXX11_ALLOCATOR)
|
|
607
|
-
wrapper_allocator.construct(copy, functor_wrapper_type(f,a));
|
|
608
|
-
#else
|
|
609
531
|
std::allocator_traits<wrapper_allocator_type>::construct(wrapper_allocator, copy, functor_wrapper_type(f,a));
|
|
610
|
-
|
|
532
|
+
|
|
611
533
|
functor_wrapper_type* new_f = static_cast<functor_wrapper_type*>(copy);
|
|
612
534
|
functor.members.obj_ptr = new_f;
|
|
613
535
|
}
|
|
@@ -617,7 +539,7 @@ namespace boost {
|
|
|
617
539
|
assign_to(FunctionObj f, function_buffer& functor, function_obj_tag) const
|
|
618
540
|
{
|
|
619
541
|
if (!boost::detail::function::has_empty_target(boost::addressof(f))) {
|
|
620
|
-
assign_functor(f, functor,
|
|
542
|
+
assign_functor(std::move(f), functor,
|
|
621
543
|
integral_constant<bool, (function_allows_small_object_optimization<FunctionObj>::value)>());
|
|
622
544
|
return true;
|
|
623
545
|
} else {
|
|
@@ -629,7 +551,7 @@ namespace boost {
|
|
|
629
551
|
assign_to_a(FunctionObj f, function_buffer& functor, Allocator a, function_obj_tag) const
|
|
630
552
|
{
|
|
631
553
|
if (!boost::detail::function::has_empty_target(boost::addressof(f))) {
|
|
632
|
-
assign_functor_a(f, functor, a,
|
|
554
|
+
assign_functor_a(std::move(f), functor, a,
|
|
633
555
|
integral_constant<bool, (function_allows_small_object_optimization<FunctionObj>::value)>());
|
|
634
556
|
return true;
|
|
635
557
|
} else {
|
|
@@ -660,26 +582,40 @@ namespace boost {
|
|
|
660
582
|
vtable_base base;
|
|
661
583
|
invoker_type invoker;
|
|
662
584
|
};
|
|
585
|
+
|
|
586
|
+
template <typename... T>
|
|
587
|
+
struct variadic_function_base
|
|
588
|
+
{};
|
|
589
|
+
|
|
590
|
+
template <typename T>
|
|
591
|
+
struct variadic_function_base<T>
|
|
592
|
+
{
|
|
593
|
+
typedef T argument_type;
|
|
594
|
+
};
|
|
595
|
+
|
|
596
|
+
template <typename T0, typename T1>
|
|
597
|
+
struct variadic_function_base<T0, T1>
|
|
598
|
+
{
|
|
599
|
+
typedef T0 first_argument_type;
|
|
600
|
+
typedef T1 second_argument_type;
|
|
601
|
+
};
|
|
602
|
+
|
|
663
603
|
} // end namespace function
|
|
664
604
|
} // end namespace detail
|
|
665
605
|
|
|
666
606
|
template<
|
|
667
|
-
typename R
|
|
668
|
-
|
|
607
|
+
typename R,
|
|
608
|
+
typename... T
|
|
669
609
|
>
|
|
670
|
-
class
|
|
610
|
+
class function_n : public function_base
|
|
611
|
+
, public detail::function::variadic_function_base<T...>
|
|
671
612
|
{
|
|
672
613
|
public:
|
|
673
|
-
#ifndef BOOST_NO_VOID_RETURNS
|
|
674
614
|
typedef R result_type;
|
|
675
|
-
#else
|
|
676
|
-
typedef typename boost::detail::function::function_return_type<R>::type
|
|
677
|
-
result_type;
|
|
678
|
-
#endif // BOOST_NO_VOID_RETURNS
|
|
679
615
|
|
|
680
616
|
private:
|
|
681
|
-
typedef boost::detail::function::
|
|
682
|
-
R
|
|
617
|
+
typedef boost::detail::function::basic_vtable<
|
|
618
|
+
R, T...>
|
|
683
619
|
vtable_type;
|
|
684
620
|
|
|
685
621
|
vtable_type* get_vtable() const {
|
|
@@ -690,8 +626,6 @@ namespace boost {
|
|
|
690
626
|
struct clear_type {};
|
|
691
627
|
|
|
692
628
|
public:
|
|
693
|
-
BOOST_STATIC_CONSTANT(int, args = BOOST_FUNCTION_NUM_ARGS);
|
|
694
|
-
|
|
695
629
|
// add signature for boost::lambda
|
|
696
630
|
template<typename Args>
|
|
697
631
|
struct sig
|
|
@@ -699,93 +633,68 @@ namespace boost {
|
|
|
699
633
|
typedef result_type type;
|
|
700
634
|
};
|
|
701
635
|
|
|
702
|
-
|
|
703
|
-
typedef T0 argument_type;
|
|
704
|
-
#elif BOOST_FUNCTION_NUM_ARGS == 2
|
|
705
|
-
typedef T0 first_argument_type;
|
|
706
|
-
typedef T1 second_argument_type;
|
|
707
|
-
#endif
|
|
708
|
-
|
|
709
|
-
BOOST_STATIC_CONSTANT(int, arity = BOOST_FUNCTION_NUM_ARGS);
|
|
710
|
-
BOOST_FUNCTION_ARG_TYPES
|
|
636
|
+
BOOST_STATIC_CONSTANT(int, arity = sizeof...(T));
|
|
711
637
|
|
|
712
|
-
typedef
|
|
638
|
+
typedef function_n self_type;
|
|
713
639
|
|
|
714
|
-
BOOST_DEFAULTED_FUNCTION(
|
|
640
|
+
BOOST_DEFAULTED_FUNCTION(function_n(), : function_base() {})
|
|
715
641
|
|
|
716
642
|
// MSVC chokes if the following two constructors are collapsed into
|
|
717
643
|
// one with a default parameter.
|
|
718
644
|
template<typename Functor>
|
|
719
|
-
|
|
720
|
-
#ifndef BOOST_NO_SFINAE
|
|
645
|
+
function_n(Functor f
|
|
721
646
|
,typename boost::enable_if_<
|
|
722
647
|
!(is_integral<Functor>::value),
|
|
723
648
|
int>::type = 0
|
|
724
|
-
#endif // BOOST_NO_SFINAE
|
|
725
649
|
) :
|
|
726
650
|
function_base()
|
|
727
651
|
{
|
|
728
|
-
this->assign_to(f);
|
|
652
|
+
this->assign_to(std::move(f));
|
|
729
653
|
}
|
|
730
654
|
template<typename Functor,typename Allocator>
|
|
731
|
-
|
|
732
|
-
#ifndef BOOST_NO_SFINAE
|
|
655
|
+
function_n(Functor f, Allocator a
|
|
733
656
|
,typename boost::enable_if_<
|
|
734
657
|
!(is_integral<Functor>::value),
|
|
735
658
|
int>::type = 0
|
|
736
|
-
#endif // BOOST_NO_SFINAE
|
|
737
659
|
) :
|
|
738
660
|
function_base()
|
|
739
661
|
{
|
|
740
|
-
this->assign_to_a(f,a);
|
|
662
|
+
this->assign_to_a(std::move(f),a);
|
|
741
663
|
}
|
|
742
664
|
|
|
743
|
-
|
|
744
|
-
BOOST_FUNCTION_FUNCTION(clear_type*) : function_base() { }
|
|
745
|
-
#else
|
|
746
|
-
BOOST_FUNCTION_FUNCTION(int zero) : function_base()
|
|
747
|
-
{
|
|
748
|
-
BOOST_ASSERT(zero == 0);
|
|
749
|
-
}
|
|
750
|
-
#endif
|
|
665
|
+
function_n(clear_type*) : function_base() { }
|
|
751
666
|
|
|
752
|
-
|
|
667
|
+
function_n(const function_n& f) : function_base()
|
|
753
668
|
{
|
|
754
669
|
this->assign_to_own(f);
|
|
755
670
|
}
|
|
756
671
|
|
|
757
|
-
|
|
758
|
-
BOOST_FUNCTION_FUNCTION(BOOST_FUNCTION_FUNCTION&& f) : function_base()
|
|
672
|
+
function_n(function_n&& f) : function_base()
|
|
759
673
|
{
|
|
760
674
|
this->move_assign(f);
|
|
761
675
|
}
|
|
762
|
-
#endif
|
|
763
676
|
|
|
764
|
-
~
|
|
677
|
+
~function_n() { clear(); }
|
|
765
678
|
|
|
766
|
-
result_type operator()(
|
|
679
|
+
result_type operator()(T... a) const
|
|
767
680
|
{
|
|
768
681
|
if (this->empty())
|
|
769
682
|
boost::throw_exception(bad_function_call());
|
|
770
683
|
|
|
771
684
|
return get_vtable()->invoker
|
|
772
|
-
(this->functor
|
|
685
|
+
(this->functor, static_cast<T&&>(a)...);
|
|
773
686
|
}
|
|
774
687
|
|
|
775
|
-
// The distinction between when to use
|
|
688
|
+
// The distinction between when to use function_n and
|
|
776
689
|
// when to use self_type is obnoxious. MSVC cannot handle self_type as
|
|
777
690
|
// the return type of these assignment operators, but Borland C++ cannot
|
|
778
|
-
// handle
|
|
691
|
+
// handle function_n as the type of the temporary to
|
|
779
692
|
// construct.
|
|
780
693
|
template<typename Functor>
|
|
781
|
-
#ifndef BOOST_NO_SFINAE
|
|
782
694
|
typename boost::enable_if_<
|
|
783
695
|
!(is_integral<Functor>::value),
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
BOOST_FUNCTION_FUNCTION&
|
|
787
|
-
#endif
|
|
788
|
-
operator=(Functor BOOST_FUNCTION_TARGET_FIX(const &) f)
|
|
696
|
+
function_n&>::type
|
|
697
|
+
operator=(Functor f)
|
|
789
698
|
{
|
|
790
699
|
this->clear();
|
|
791
700
|
BOOST_TRY {
|
|
@@ -798,7 +707,7 @@ namespace boost {
|
|
|
798
707
|
return *this;
|
|
799
708
|
}
|
|
800
709
|
template<typename Functor,typename Allocator>
|
|
801
|
-
void assign(Functor
|
|
710
|
+
void assign(Functor f, Allocator a)
|
|
802
711
|
{
|
|
803
712
|
this->clear();
|
|
804
713
|
BOOST_TRY{
|
|
@@ -810,23 +719,14 @@ namespace boost {
|
|
|
810
719
|
BOOST_CATCH_END
|
|
811
720
|
}
|
|
812
721
|
|
|
813
|
-
|
|
814
|
-
BOOST_FUNCTION_FUNCTION& operator=(clear_type*)
|
|
815
|
-
{
|
|
816
|
-
this->clear();
|
|
817
|
-
return *this;
|
|
818
|
-
}
|
|
819
|
-
#else
|
|
820
|
-
BOOST_FUNCTION_FUNCTION& operator=(int zero)
|
|
722
|
+
function_n& operator=(clear_type*)
|
|
821
723
|
{
|
|
822
|
-
BOOST_ASSERT(zero == 0);
|
|
823
724
|
this->clear();
|
|
824
725
|
return *this;
|
|
825
726
|
}
|
|
826
|
-
#endif
|
|
827
727
|
|
|
828
|
-
// Assignment from another
|
|
829
|
-
|
|
728
|
+
// Assignment from another function_n
|
|
729
|
+
function_n& operator=(const function_n& f)
|
|
830
730
|
{
|
|
831
731
|
if (&f == this)
|
|
832
732
|
return *this;
|
|
@@ -842,9 +742,8 @@ namespace boost {
|
|
|
842
742
|
return *this;
|
|
843
743
|
}
|
|
844
744
|
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
BOOST_FUNCTION_FUNCTION& operator=(BOOST_FUNCTION_FUNCTION&& f)
|
|
745
|
+
// Move assignment from another function_n
|
|
746
|
+
function_n& operator=(function_n&& f)
|
|
848
747
|
{
|
|
849
748
|
if (&f == this)
|
|
850
749
|
return *this;
|
|
@@ -859,14 +758,13 @@ namespace boost {
|
|
|
859
758
|
BOOST_CATCH_END
|
|
860
759
|
return *this;
|
|
861
760
|
}
|
|
862
|
-
#endif
|
|
863
761
|
|
|
864
|
-
void swap(
|
|
762
|
+
void swap(function_n& other)
|
|
865
763
|
{
|
|
866
764
|
if (&other == this)
|
|
867
765
|
return;
|
|
868
766
|
|
|
869
|
-
|
|
767
|
+
function_n tmp;
|
|
870
768
|
tmp.move_assign(*this);
|
|
871
769
|
this->move_assign(other);
|
|
872
770
|
other.move_assign(tmp);
|
|
@@ -882,27 +780,10 @@ namespace boost {
|
|
|
882
780
|
}
|
|
883
781
|
}
|
|
884
782
|
|
|
885
|
-
|
|
886
|
-
// Sun C++ 5.3 can't handle the safe_bool idiom, so don't use it
|
|
887
|
-
operator bool () const { return !this->empty(); }
|
|
888
|
-
#else
|
|
889
|
-
private:
|
|
890
|
-
struct dummy {
|
|
891
|
-
void nonnull() {}
|
|
892
|
-
};
|
|
893
|
-
|
|
894
|
-
typedef void (dummy::*safe_bool)();
|
|
895
|
-
|
|
896
|
-
public:
|
|
897
|
-
operator safe_bool () const
|
|
898
|
-
{ return (this->empty())? 0 : &dummy::nonnull; }
|
|
899
|
-
|
|
900
|
-
bool operator!() const
|
|
901
|
-
{ return this->empty(); }
|
|
902
|
-
#endif
|
|
783
|
+
explicit operator bool () const { return !this->empty(); }
|
|
903
784
|
|
|
904
785
|
private:
|
|
905
|
-
void assign_to_own(const
|
|
786
|
+
void assign_to_own(const function_n& f)
|
|
906
787
|
{
|
|
907
788
|
if (!f.empty()) {
|
|
908
789
|
this->vtable = f.vtable;
|
|
@@ -935,10 +816,10 @@ namespace boost {
|
|
|
935
816
|
using boost::detail::function::vtable_base;
|
|
936
817
|
|
|
937
818
|
typedef typename boost::detail::function::get_function_tag<Functor>::type tag;
|
|
938
|
-
typedef boost::detail::function::
|
|
819
|
+
typedef boost::detail::function::get_invoker<tag> get_invoker;
|
|
939
820
|
typedef typename get_invoker::
|
|
940
|
-
template apply<Functor, R
|
|
941
|
-
|
|
821
|
+
template apply<Functor, R,
|
|
822
|
+
T...>
|
|
942
823
|
handler_type;
|
|
943
824
|
|
|
944
825
|
typedef typename handler_type::invoker_type invoker_type;
|
|
@@ -951,7 +832,7 @@ namespace boost {
|
|
|
951
832
|
static const vtable_type stored_vtable =
|
|
952
833
|
{ { &manager_type::manage }, &invoker_type::invoke };
|
|
953
834
|
|
|
954
|
-
if (stored_vtable.assign_to(f, functor)) {
|
|
835
|
+
if (stored_vtable.assign_to(std::move(f), functor)) {
|
|
955
836
|
std::size_t value = reinterpret_cast<std::size_t>(&stored_vtable.base);
|
|
956
837
|
// coverity[pointless_expression]: suppress coverity warnings on apparant if(const).
|
|
957
838
|
if (boost::has_trivial_copy_constructor<Functor>::value &&
|
|
@@ -969,10 +850,10 @@ namespace boost {
|
|
|
969
850
|
using boost::detail::function::vtable_base;
|
|
970
851
|
|
|
971
852
|
typedef typename boost::detail::function::get_function_tag<Functor>::type tag;
|
|
972
|
-
typedef boost::detail::function::
|
|
853
|
+
typedef boost::detail::function::get_invoker<tag> get_invoker;
|
|
973
854
|
typedef typename get_invoker::
|
|
974
|
-
template apply_a<Functor, Allocator, R
|
|
975
|
-
|
|
855
|
+
template apply_a<Functor, Allocator, R,
|
|
856
|
+
T...>
|
|
976
857
|
handler_type;
|
|
977
858
|
|
|
978
859
|
typedef typename handler_type::invoker_type invoker_type;
|
|
@@ -985,7 +866,7 @@ namespace boost {
|
|
|
985
866
|
static const vtable_type stored_vtable =
|
|
986
867
|
{ { &manager_type::manage }, &invoker_type::invoke };
|
|
987
868
|
|
|
988
|
-
if (stored_vtable.assign_to_a(f, functor, a)) {
|
|
869
|
+
if (stored_vtable.assign_to_a(std::move(f), functor, a)) {
|
|
989
870
|
std::size_t value = reinterpret_cast<std::size_t>(&stored_vtable.base);
|
|
990
871
|
// coverity[pointless_expression]: suppress coverity warnings on apparant if(const).
|
|
991
872
|
if (boost::has_trivial_copy_constructor<Functor>::value &&
|
|
@@ -1000,7 +881,7 @@ namespace boost {
|
|
|
1000
881
|
// Moves the value from the specified argument to *this. If the argument
|
|
1001
882
|
// has its function object allocated on the heap, move_assign will pass
|
|
1002
883
|
// its buffer to *this, and set the argument's buffer pointer to NULL.
|
|
1003
|
-
void move_assign(
|
|
884
|
+
void move_assign(function_n& f)
|
|
1004
885
|
{
|
|
1005
886
|
if (&f == this)
|
|
1006
887
|
return;
|
|
@@ -1048,49 +929,41 @@ namespace boost {
|
|
|
1048
929
|
}
|
|
1049
930
|
};
|
|
1050
931
|
|
|
1051
|
-
template<typename R
|
|
1052
|
-
inline void swap(
|
|
1053
|
-
R
|
|
1054
|
-
|
|
932
|
+
template<typename R, typename... T>
|
|
933
|
+
inline void swap(function_n<
|
|
934
|
+
R,
|
|
935
|
+
T...
|
|
1055
936
|
>& f1,
|
|
1056
|
-
|
|
1057
|
-
R
|
|
1058
|
-
|
|
937
|
+
function_n<
|
|
938
|
+
R,
|
|
939
|
+
T...
|
|
1059
940
|
>& f2)
|
|
1060
941
|
{
|
|
1061
942
|
f1.swap(f2);
|
|
1062
943
|
}
|
|
1063
944
|
|
|
1064
945
|
// Poison comparisons between boost::function objects of the same type.
|
|
1065
|
-
template<typename R
|
|
1066
|
-
void operator==(const
|
|
1067
|
-
R
|
|
1068
|
-
|
|
1069
|
-
const
|
|
1070
|
-
R
|
|
1071
|
-
|
|
1072
|
-
template<typename R
|
|
1073
|
-
void operator!=(const
|
|
1074
|
-
R
|
|
1075
|
-
|
|
1076
|
-
const
|
|
1077
|
-
R
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
#else
|
|
1085
|
-
#define BOOST_FUNCTION_PARTIAL_SPEC R (BOOST_FUNCTION_TEMPLATE_ARGS)
|
|
1086
|
-
#endif
|
|
1087
|
-
|
|
1088
|
-
template<typename R BOOST_FUNCTION_COMMA
|
|
1089
|
-
BOOST_FUNCTION_TEMPLATE_PARMS>
|
|
1090
|
-
class function<BOOST_FUNCTION_PARTIAL_SPEC>
|
|
1091
|
-
: public BOOST_FUNCTION_FUNCTION<R BOOST_FUNCTION_COMMA BOOST_FUNCTION_TEMPLATE_ARGS>
|
|
946
|
+
template<typename R, typename... T>
|
|
947
|
+
void operator==(const function_n<
|
|
948
|
+
R,
|
|
949
|
+
T...>&,
|
|
950
|
+
const function_n<
|
|
951
|
+
R,
|
|
952
|
+
T...>&);
|
|
953
|
+
template<typename R, typename... T>
|
|
954
|
+
void operator!=(const function_n<
|
|
955
|
+
R,
|
|
956
|
+
T...>&,
|
|
957
|
+
const function_n<
|
|
958
|
+
R,
|
|
959
|
+
T...>& );
|
|
960
|
+
|
|
961
|
+
template<typename R,
|
|
962
|
+
typename... T>
|
|
963
|
+
class function<R (T...)>
|
|
964
|
+
: public function_n<R, T...>
|
|
1092
965
|
{
|
|
1093
|
-
typedef
|
|
966
|
+
typedef function_n<R, T...> base_type;
|
|
1094
967
|
typedef function self_type;
|
|
1095
968
|
|
|
1096
969
|
struct clear_type {};
|
|
@@ -1101,40 +974,32 @@ public:
|
|
|
1101
974
|
|
|
1102
975
|
template<typename Functor>
|
|
1103
976
|
function(Functor f
|
|
1104
|
-
#ifndef BOOST_NO_SFINAE
|
|
1105
977
|
,typename boost::enable_if_<
|
|
1106
978
|
!(is_integral<Functor>::value),
|
|
1107
979
|
int>::type = 0
|
|
1108
|
-
#endif
|
|
1109
980
|
) :
|
|
1110
|
-
base_type(f)
|
|
981
|
+
base_type(std::move(f))
|
|
1111
982
|
{
|
|
1112
983
|
}
|
|
1113
984
|
template<typename Functor,typename Allocator>
|
|
1114
985
|
function(Functor f, Allocator a
|
|
1115
|
-
#ifndef BOOST_NO_SFINAE
|
|
1116
986
|
,typename boost::enable_if_<
|
|
1117
987
|
!(is_integral<Functor>::value),
|
|
1118
988
|
int>::type = 0
|
|
1119
|
-
#endif
|
|
1120
989
|
) :
|
|
1121
|
-
base_type(f,a)
|
|
990
|
+
base_type(std::move(f),a)
|
|
1122
991
|
{
|
|
1123
992
|
}
|
|
1124
993
|
|
|
1125
|
-
#ifndef BOOST_NO_SFINAE
|
|
1126
994
|
function(clear_type*) : base_type() {}
|
|
1127
|
-
#endif
|
|
1128
995
|
|
|
1129
996
|
function(const self_type& f) : base_type(static_cast<const base_type&>(f)){}
|
|
1130
997
|
|
|
1131
998
|
function(const base_type& f) : base_type(static_cast<const base_type&>(f)){}
|
|
1132
999
|
|
|
1133
|
-
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
|
1134
1000
|
// Move constructors
|
|
1135
1001
|
function(self_type&& f): base_type(static_cast<base_type&&>(f)){}
|
|
1136
1002
|
function(base_type&& f): base_type(static_cast<base_type&&>(f)){}
|
|
1137
|
-
#endif
|
|
1138
1003
|
|
|
1139
1004
|
self_type& operator=(const self_type& f)
|
|
1140
1005
|
{
|
|
@@ -1142,35 +1007,27 @@ public:
|
|
|
1142
1007
|
return *this;
|
|
1143
1008
|
}
|
|
1144
1009
|
|
|
1145
|
-
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
|
1146
1010
|
self_type& operator=(self_type&& f)
|
|
1147
1011
|
{
|
|
1148
1012
|
self_type(static_cast<self_type&&>(f)).swap(*this);
|
|
1149
1013
|
return *this;
|
|
1150
1014
|
}
|
|
1151
|
-
#endif
|
|
1152
1015
|
|
|
1153
1016
|
template<typename Functor>
|
|
1154
|
-
#ifndef BOOST_NO_SFINAE
|
|
1155
1017
|
typename boost::enable_if_<
|
|
1156
1018
|
!(is_integral<Functor>::value),
|
|
1157
1019
|
self_type&>::type
|
|
1158
|
-
#else
|
|
1159
|
-
self_type&
|
|
1160
|
-
#endif
|
|
1161
1020
|
operator=(Functor f)
|
|
1162
1021
|
{
|
|
1163
1022
|
self_type(f).swap(*this);
|
|
1164
1023
|
return *this;
|
|
1165
1024
|
}
|
|
1166
1025
|
|
|
1167
|
-
#ifndef BOOST_NO_SFINAE
|
|
1168
1026
|
self_type& operator=(clear_type*)
|
|
1169
1027
|
{
|
|
1170
1028
|
this->clear();
|
|
1171
1029
|
return *this;
|
|
1172
1030
|
}
|
|
1173
|
-
#endif
|
|
1174
1031
|
|
|
1175
1032
|
self_type& operator=(const base_type& f)
|
|
1176
1033
|
{
|
|
@@ -1178,50 +1035,42 @@ public:
|
|
|
1178
1035
|
return *this;
|
|
1179
1036
|
}
|
|
1180
1037
|
|
|
1181
|
-
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
|
1182
1038
|
self_type& operator=(base_type&& f)
|
|
1183
1039
|
{
|
|
1184
1040
|
self_type(static_cast<base_type&&>(f)).swap(*this);
|
|
1185
1041
|
return *this;
|
|
1186
1042
|
}
|
|
1187
|
-
#endif
|
|
1188
1043
|
};
|
|
1189
1044
|
|
|
1190
|
-
#undef BOOST_FUNCTION_PARTIAL_SPEC
|
|
1191
|
-
#endif // have partial specialization
|
|
1192
|
-
|
|
1193
1045
|
} // end namespace boost
|
|
1194
1046
|
|
|
1195
|
-
// Cleanup after ourselves...
|
|
1196
|
-
#undef BOOST_FUNCTION_VTABLE
|
|
1197
|
-
#undef BOOST_FUNCTION_COMMA
|
|
1198
|
-
#undef BOOST_FUNCTION_FUNCTION
|
|
1199
|
-
#undef BOOST_FUNCTION_FUNCTION_INVOKER
|
|
1200
|
-
#undef BOOST_FUNCTION_VOID_FUNCTION_INVOKER
|
|
1201
|
-
#undef BOOST_FUNCTION_FUNCTION_OBJ_INVOKER
|
|
1202
|
-
#undef BOOST_FUNCTION_VOID_FUNCTION_OBJ_INVOKER
|
|
1203
|
-
#undef BOOST_FUNCTION_FUNCTION_REF_INVOKER
|
|
1204
|
-
#undef BOOST_FUNCTION_VOID_FUNCTION_REF_INVOKER
|
|
1205
|
-
#undef BOOST_FUNCTION_MEMBER_INVOKER
|
|
1206
|
-
#undef BOOST_FUNCTION_VOID_MEMBER_INVOKER
|
|
1207
|
-
#undef BOOST_FUNCTION_GET_FUNCTION_INVOKER
|
|
1208
|
-
#undef BOOST_FUNCTION_GET_FUNCTION_OBJ_INVOKER
|
|
1209
|
-
#undef BOOST_FUNCTION_GET_FUNCTION_REF_INVOKER
|
|
1210
|
-
#undef BOOST_FUNCTION_GET_MEM_FUNCTION_INVOKER
|
|
1211
|
-
#undef BOOST_FUNCTION_GET_INVOKER
|
|
1212
|
-
#undef BOOST_FUNCTION_TEMPLATE_PARMS
|
|
1213
|
-
#undef BOOST_FUNCTION_TEMPLATE_ARGS
|
|
1214
|
-
#undef BOOST_FUNCTION_PARMS
|
|
1215
|
-
#undef BOOST_FUNCTION_PARM
|
|
1216
|
-
#ifdef BOOST_FUNCTION_ARG
|
|
1217
|
-
# undef BOOST_FUNCTION_ARG
|
|
1218
|
-
#endif
|
|
1219
|
-
#undef BOOST_FUNCTION_ARGS
|
|
1220
|
-
#undef BOOST_FUNCTION_ARG_TYPE
|
|
1221
|
-
#undef BOOST_FUNCTION_ARG_TYPES
|
|
1222
|
-
#undef BOOST_FUNCTION_VOID_RETURN_TYPE
|
|
1223
|
-
#undef BOOST_FUNCTION_RETURN
|
|
1224
|
-
|
|
1225
1047
|
#if defined(BOOST_MSVC)
|
|
1226
1048
|
# pragma warning( pop )
|
|
1227
1049
|
#endif
|
|
1050
|
+
|
|
1051
|
+
// Resolve C++20 issue with fn == bind(...)
|
|
1052
|
+
// https://github.com/boostorg/function/issues/45
|
|
1053
|
+
|
|
1054
|
+
namespace boost
|
|
1055
|
+
{
|
|
1056
|
+
|
|
1057
|
+
namespace _bi
|
|
1058
|
+
{
|
|
1059
|
+
|
|
1060
|
+
template<class R, class F, class L> class bind_t;
|
|
1061
|
+
|
|
1062
|
+
} // namespace _bi
|
|
1063
|
+
|
|
1064
|
+
template<class S, class R, class F, class L> bool operator==( function<S> const& f, _bi::bind_t<R, F, L> const& b )
|
|
1065
|
+
{
|
|
1066
|
+
return f.contains( b );
|
|
1067
|
+
}
|
|
1068
|
+
|
|
1069
|
+
template<class S, class R, class F, class L> bool operator!=( function<S> const& f, _bi::bind_t<R, F, L> const& b )
|
|
1070
|
+
{
|
|
1071
|
+
return !f.contains( b );
|
|
1072
|
+
}
|
|
1073
|
+
|
|
1074
|
+
} // namespace boost
|
|
1075
|
+
|
|
1076
|
+
#endif // #ifndef BOOST_FUNCTION_FUNCTION_TEMPLATE_HPP_INCLUDED
|