passenger 6.0.19 → 6.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG +65 -3
- data/CONTRIBUTORS +2 -0
- data/README.md +2 -2
- data/bin/passenger-install-nginx-module +4 -4
- data/build/integration_tests.rb +2 -1
- data/build/support/cxx_dependency_map.rb +155 -54
- data/dev/copy_boost_headers +21 -7
- data/dev/nginx_version_sha256 +72 -0
- data/package.json +15 -15
- data/src/agent/AgentMain.cpp +2 -8
- data/src/agent/Core/AdminPanelConnector.h +2 -3
- data/src/agent/Core/ApiServer.h +1 -1
- data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +8 -1
- data/src/agent/Core/Config.h +6 -3
- data/src/agent/Core/Controller/AppResponse.h +0 -1
- data/src/agent/Core/Controller/Config.h +2 -2
- data/src/agent/Core/Controller/SendRequest.cpp +2 -2
- data/src/agent/Core/CoreMain.cpp +1 -0
- data/src/agent/Core/ResponseCache.h +3 -2
- data/src/agent/Core/SecurityUpdateChecker.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/Perform.h +4 -4
- data/src/agent/Core/SpawningKit/UserSwitchingRules.h +2 -2
- data/src/agent/ExecHelper/ExecHelperMain.cpp +10 -12
- data/src/agent/FileReadHelper/FileReadHelperMain.cpp +7 -10
- data/src/agent/MainFunctions.h +38 -0
- data/src/agent/Shared/ApiServerUtils.h +3 -2
- data/src/agent/Shared/Fundamentals/Initialization.cpp +1 -1
- data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +2 -3
- data/src/agent/SystemMetrics/SystemMetricsMain.cpp +1 -0
- data/src/agent/TempDirToucher/TempDirToucherMain.cpp +6 -4
- data/src/agent/Watchdog/ApiServer.h +1 -1
- data/src/agent/Watchdog/Config.h +1 -1
- data/src/agent/Watchdog/WatchdogMain.cpp +5 -12
- data/src/apache2_module/Hooks.cpp +26 -1
- data/src/cxx_supportlib/ConfigKit/Common.h +1 -1
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/DataStructures/StringKeyTable.h +1 -1
- data/src/cxx_supportlib/FileTools/PathManip.cpp +10 -1
- data/src/cxx_supportlib/IOTools/IOUtils.cpp +2 -6
- data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +3 -3
- data/src/cxx_supportlib/JsonTools/CBindings.cpp +0 -2
- data/src/cxx_supportlib/JsonTools/JsonUtils.h +4 -4
- data/src/cxx_supportlib/LoggingKit/Context.h +16 -21
- data/src/cxx_supportlib/LoggingKit/Forward.h +0 -2
- data/src/cxx_supportlib/LoggingKit/Implementation.cpp +36 -72
- data/src/cxx_supportlib/MemoryKit/mbuf.cpp +12 -4
- data/src/cxx_supportlib/MemoryKit/mbuf.h +1 -1
- data/src/cxx_supportlib/ProcessManagement/Utils.cpp +1 -1
- data/src/cxx_supportlib/ResourceLocator.h +1 -1
- data/src/cxx_supportlib/SecurityKit/Crypto.cpp +3 -94
- data/src/cxx_supportlib/SecurityKit/Crypto.h +0 -8
- data/src/cxx_supportlib/ServerKit/Context.h +6 -0
- data/src/cxx_supportlib/ServerKit/Errors.h +3 -2
- data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +99 -64
- data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +4 -1
- data/src/cxx_supportlib/ServerKit/HttpRequest.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpServer.h +3 -2
- data/src/cxx_supportlib/ServerKit/llerrors.h +84 -0
- data/src/cxx_supportlib/ServerKit/llhttp.c +10168 -0
- data/src/cxx_supportlib/ServerKit/llhttp.h +903 -0
- data/src/cxx_supportlib/ServerKit/llhttp_api.c +510 -0
- data/src/cxx_supportlib/ServerKit/llhttp_http.c +170 -0
- data/src/cxx_supportlib/ServerKit/llversion.h +12 -0
- data/src/cxx_supportlib/ServerKit/url_parser.c +574 -0
- data/src/cxx_supportlib/ServerKit/url_parser.h +74 -0
- data/src/cxx_supportlib/StaticString.h +3 -1
- data/src/cxx_supportlib/StrIntTools/DateParsing.h +1 -1
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.cpp +12 -3
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.h +5 -0
- data/src/cxx_supportlib/SystemTools/SystemMetricsCollector.h +2 -2
- data/src/cxx_supportlib/SystemTools/UserDatabase.cpp +14 -14
- data/src/cxx_supportlib/SystemTools/UserDatabase.h +6 -10
- data/src/cxx_supportlib/Utils/AnsiColorConstants.h +11 -9
- data/src/cxx_supportlib/Utils.cpp +1 -1
- data/src/cxx_supportlib/oxt/implementation.cpp +1 -2
- data/src/cxx_supportlib/oxt/system_calls.cpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_executor.hpp +26 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_handler.hpp +194 -56
- data/src/cxx_supportlib/vendor-modified/boost/asio/any_io_executor.hpp +34 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/append.hpp +10 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/as_tuple.hpp +21 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_allocator.hpp +26 -45
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_cancellation_slot.hpp +26 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_executor.hpp +30 -52
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_immediate_executor.hpp +282 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/associator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +178 -863
- data/src/cxx_supportlib/vendor-modified/boost/asio/awaitable.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +64 -98
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +17 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_file.hpp +18 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_io_object.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_random_access_file.hpp +30 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +65 -96
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_readable_pipe.hpp +20 -29
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +36 -48
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_serial_port.hpp +31 -44
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_signal_set.hpp +73 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +34 -45
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +108 -151
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_iostream.hpp +6 -82
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_streambuf.hpp +6 -51
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_file.hpp +30 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +50 -76
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf.hpp +13 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +23 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_writable_pipe.hpp +20 -29
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_allocator.hpp +97 -299
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +97 -288
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +90 -288
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_immediate_executor.hpp +551 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +365 -290
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer_registration.hpp +29 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream.hpp +27 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream.hpp +33 -49
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream.hpp +27 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffers_iterator.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_signal.hpp +25 -85
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_state.hpp +16 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_type.hpp +8 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/co_spawn.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/completion_condition.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/compose.hpp +60 -272
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +52 -79
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/consign.hpp +11 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/coroutine.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/deadline_timer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/defer.hpp +37 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/deferred.hpp +302 -262
- data/src/cxx_supportlib/vendor-modified/boost/asio/detached.hpp +12 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array.hpp +2 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array_fwd.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/assert.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/atomic_count.hpp +5 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_cancellation_state.hpp +21 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_completion_cond.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bind_handler.hpp +129 -563
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/blocking_executor_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffer_resize_guard.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffer_sequence_adapter.hpp +3 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffered_stream_storage.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/call_stack.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono.hpp +2 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono_time_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/completion_handler.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/composed_work.hpp +21 -97
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/concurrency_hint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_event.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +155 -963
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/consuming_buffers.hpp +3 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstddef.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstdint.hpp +2 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/date_time_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/deadline_timer_service.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dependent_type.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_ops.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_read_op.hpp +41 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_write_op.hpp +40 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dev_poll_reactor.hpp +20 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/epoll_reactor.hpp +20 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/event.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/eventfd_select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/exception.hpp +2 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_function.hpp +8 -60
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_op.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/fd_set_adapter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/fenced_block.hpp +3 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/functional.hpp +1 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/future.hpp +9 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/global.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +41 -104
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_cont_helpers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_tracking.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_type_requirements.hpp +9 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_work.hpp +101 -123
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/hash_map.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/buffer_sequence_adapter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/descriptor_ops.ipp +36 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +13 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.ipp +17 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/eventfd_select_interrupter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/handler_tracking.ipp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_descriptor_service.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_file_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_service.ipp +69 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_socket_service_base.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.ipp +15 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/null_event.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/pipe_select_interrupter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_event.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_mutex.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_serial_port_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_thread.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_tss_ptr.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_descriptor_service.ipp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_socket_service_base.ipp +26 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/resolver_service_base.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/scheduler.ipp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.ipp +12 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/signal_set_service.ipp +57 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +63 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_select_interrupter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.hpp +47 -68
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/thread_context.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/throw_error.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_ptime.ipp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_set.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_defer.hpp +209 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_dispatch.hpp +195 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_post.hpp +209 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_control.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_object_impl.hpp +6 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_at_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_service.hpp +17 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_at_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_file_service.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_null_buffers_op.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_operation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_service.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_accept_op.hpp +11 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_connect_op.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recv_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvfrom_op.hpp +7 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvmsg_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_send_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_sendto_op.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_service.hpp +11 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_service_base.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_wait_op.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_buffer_sequence.hpp +7 -49
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/keyword_tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/kqueue_reactor.hpp +20 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/limits.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/local_free_on_block_exit.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +13 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/mutex.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/non_const_lvalue.hpp +4 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/noncopyable.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_event.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_fenced_block.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_global.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_signal_blocker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_socket_service.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_static_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_thread.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/object_pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/op_queue.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/operation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pipe_select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pop_options.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_event.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_fd_set_adapter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_global.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_serial_port_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_signal_blocker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_static_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_thread.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/push_options.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_descriptor_service.hpp +61 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_null_buffers_op.hpp +37 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_accept_op.hpp +89 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_connect_op.hpp +41 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recv_op.hpp +40 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvfrom_op.hpp +41 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvmsg_op.hpp +41 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_send_op.hpp +41 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_sendto_op.hpp +40 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +135 -38
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_wait_op.hpp +37 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op_queue.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/recycling_allocator.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/regex_fwd.hpp +4 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_endpoint_op.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_query_op.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_operation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_task.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_thread_info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scoped_lock.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scoped_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_reactor.hpp +20 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/service_registry.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_blocker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_handler.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_init.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_set_service.hpp +12 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_holder.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_ops.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_option.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_types.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/source_location.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/static_mutex.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_event.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_fenced_block.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_global.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_mutex.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_static_mutex.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_thread.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_executor_service.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/string_view.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_group.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_info_base.hpp +12 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/throw_error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/throw_exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_ptime.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_set.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/type_traits.hpp +104 -90
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/utility.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_handler.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/winsock_init.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/work_dispatcher.hpp +20 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wrapped_handler.hpp +7 -117
- data/src/cxx_supportlib/vendor-modified/boost/asio/dispatch.hpp +36 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/allocator.hpp +34 -112
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/any_executor.hpp +268 -991
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bad_executor.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking.hpp +296 -536
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking_adaptation.hpp +232 -409
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context.hpp +20 -73
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context_as.hpp +30 -72
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/executor.hpp +24 -170
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/impl/bad_executor.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/invocable_archetype.hpp +2 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/mapping.hpp +240 -398
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/occupancy.hpp +20 -73
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/outstanding_work.hpp +149 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/prefer_only.hpp +56 -59
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/relationship.hpp +149 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution.hpp +1 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution_context.hpp +1 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/executor.hpp +59 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/executor_work_guard.hpp +56 -61
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/append.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_single.hpp +20 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_tuple.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/awaitable_operators.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_channel.hpp +56 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_concurrent_channel.hpp +56 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/cancellation_condition.hpp +25 -28
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_traits.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_composed.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_spawn.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/concurrent_channel.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/deferred.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_handler.hpp +10 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_message.hpp +27 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_operation.hpp +193 -38
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_payload.hpp +143 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_receive_op.hpp +24 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_functions.hpp +77 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_op.hpp +20 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_service.hpp +50 -50
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_completion_handler.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_promise_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/has_signature.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/impl/channel_service.hpp +46 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/partial_promise.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +33 -96
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/channel_error.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/co_composed.hpp +62 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/coro.hpp +48 -45
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/parallel_group.hpp +56 -60
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/promise.hpp +18 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_coro.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_promise.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +27 -31
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/prepend.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/promise.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +15 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_promise.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/file_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/basic_endpoint.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/datagram_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail/endpoint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail/impl/endpoint.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/raw_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/seq_packet_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/stream_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_continuation_hook.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/high_resolution_timer.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_completion_executor.ipp +10 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_io_executor.ipp +10 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/append.hpp +37 -100
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/as_tuple.hpp +99 -107
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/awaitable.hpp +66 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_read_stream.hpp +55 -178
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_write_stream.hpp +55 -178
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancellation_signal.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +123 -73
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +84 -234
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect_pipe.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/consign.hpp +32 -97
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/deferred.hpp +73 -31
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/detached.hpp +5 -58
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/error.ipp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.hpp +3 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.hpp +60 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.hpp +39 -56
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.ipp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/multiple_exceptions.ipp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/prepend.hpp +36 -98
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +206 -429
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +60 -206
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +456 -970
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +43 -411
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/serial_port_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/serial_port_base.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +207 -423
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/src.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_executor.hpp +19 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.hpp +32 -109
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.ipp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_awaitable.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_future.hpp +79 -425
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +213 -427
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +58 -194
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context.hpp +91 -120
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context_strand.hpp +33 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_service_strand.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address.hpp +26 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4.hpp +28 -36
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_iterator.hpp +13 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_range.hpp +16 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6.hpp +33 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_iterator.hpp +13 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_range.hpp +15 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/bad_address_cast.hpp +13 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_endpoint.hpp +26 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +46 -76
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_entry.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_iterator.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_query.hpp +17 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_results.hpp +9 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/endpoint.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/impl/endpoint.ipp +10 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/socket_option.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/host_name.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/icmp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.ipp +18 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.ipp +9 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.ipp +24 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/basic_endpoint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/host_name.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/multicast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v4.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v6.hpp +14 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_query_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/tcp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/udp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/unicast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/v6_only.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_applicable_property.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_contiguous_iterator.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_read_buffered.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_write_buffered.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/basic_endpoint.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/connect_pair.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/datagram_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/endpoint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/impl/endpoint.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/seq_packet_protocol.hpp +86 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/stream_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/multiple_exceptions.hpp +3 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/packaged_task.hpp +1 -61
- data/src/cxx_supportlib/vendor-modified/boost/asio/placeholders.hpp +29 -105
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +21 -29
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +24 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/stream_descriptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/post.hpp +36 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/prefer.hpp +176 -333
- data/src/cxx_supportlib/vendor-modified/boost/asio/prepend.hpp +11 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/query.hpp +57 -70
- data/src/cxx_supportlib/vendor-modified/boost/asio/random_access_file.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +136 -168
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +35 -52
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +256 -298
- data/src/cxx_supportlib/vendor-modified/boost/asio/readable_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/recycling_allocator.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/redirect_error.hpp +7 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/registered_buffer.hpp +35 -47
- data/src/cxx_supportlib/vendor-modified/boost/asio/require.hpp +108 -246
- data/src/cxx_supportlib/vendor-modified/boost/asio/require_concept.hpp +70 -79
- data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set_base.hpp +173 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/socket_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/spawn.hpp +127 -161
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context_base.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/buffered_handshake_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/engine.hpp +3 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/handshake_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/engine.ipp +3 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/openssl_init.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/io.hpp +16 -75
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_init.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_types.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/password_callback.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/read_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/shutdown_op.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/stream_core.hpp +15 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/verify_callback.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/write_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/host_name_verification.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/error.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/host_name_verification.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/rfc2818_verification.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/src.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/rfc2818_verification.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +51 -82
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_mode.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/static_thread_pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/steady_timer.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/strand.hpp +91 -118
- data/src/cxx_supportlib/vendor-modified/boost/asio/stream_file.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/streambuf.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_context.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_executor.hpp +62 -62
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_timer.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/this_coro.hpp +35 -48
- data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +91 -273
- data/src/cxx_supportlib/vendor-modified/boost/asio/time_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/equality_comparable.hpp +14 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/execute_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/prefer_free.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/prefer_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_free.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_static_constexpr_member.hpp +15 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_concept_free.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_concept_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_free.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_query.hpp +20 -26
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_require.hpp +22 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_require_concept.hpp +22 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/buffer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/internet.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/io_context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/net.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/netfwd.hpp +6 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/socket.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/timer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/unyield.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_awaitable.hpp +15 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +8 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/uses_executor.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/wait_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/writable_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +122 -146
- data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +34 -50
- data/src/cxx_supportlib/vendor-modified/boost/asio/yield.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +6 -28
- data/src/cxx_supportlib/vendor-modified/boost/assert/source_location.hpp +8 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic.hpp +2 -16
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_ref.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_ref_impl.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_cast.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/config.hpp +0 -49
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_x86.hpp +107 -40
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_msvc_x86.hpp +32 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_operations_emulated.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_emulated.hpp +7 -8
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_emulated.hpp +26 -27
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/float_sizes.hpp +122 -35
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_emulated.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/pause.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/remove_cv.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_on_address.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_emulated.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_ref.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/bind/apply.hpp +2 -60
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +230 -1740
- data/src/cxx_supportlib/vendor-modified/boost/bind/{bind_cc.hpp → detail/bind_cc.hpp} +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/bind_mf2_cc.hpp +210 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/bind_mf_cc.hpp +405 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/integer_sequence.hpp +111 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/result_traits.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/tuple_for_each.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn.hpp +140 -290
- data/src/cxx_supportlib/vendor-modified/boost/bind/placeholders.hpp +3 -16
- data/src/cxx_supportlib/vendor-modified/boost/bind/protect.hpp +0 -279
- data/src/cxx_supportlib/vendor-modified/boost/bind/std_placeholders.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/chrono/config.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/is_evenly_divisible_by.hpp +1 -7
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/requires_cxx11.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/chrono/duration.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_get.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_units.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io_v1/chrono_io.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/chrono/system_clocks.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx03.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx11.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx14.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx17.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx20.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx23.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/borland.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang_version.hpp +8 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/codegear.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/cray.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/digitalmars.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc_xml.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/hp_acc.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/intel.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/metrowerks.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/mpw.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/nvcc.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pathscale.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/vacpp.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +13 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp_zos.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/cxx_composite.hpp +16 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/suffix.hpp +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/dinkumware.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +16 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +6 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +18 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +27 -29
- data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +0 -29
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +144 -145
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +48 -49
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocator_version_traits.hpp +14 -15
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +71 -69
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/destroyers.hpp +48 -48
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +38 -40
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +165 -153
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +162 -163
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mutex.hpp +48 -12
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/next_capacity.hpp +6 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +44 -46
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +10 -11
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +18 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/placement_new.hpp +0 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/transform_iterator.hpp +28 -28
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +83 -84
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/value_init.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +77 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +81 -85
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +231 -233
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +86 -86
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +33 -33
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +107 -110
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +9 -11
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +10 -11
- data/src/cxx_supportlib/vendor-modified/boost/container/node_handle.hpp +29 -17
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +80 -82
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +81 -81
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +24 -26
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +147 -122
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +109 -110
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +32 -32
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +165 -194
- data/src/cxx_supportlib/vendor-modified/boost/container/throw_exception.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +263 -199
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_integral.hpp +146 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_mix.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_range.hpp +296 -61
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_tuple_like.hpp +62 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/mulx.hpp +79 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +38 -124
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash_fwd.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_contiguous_range.hpp +27 -20
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_described_class.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_range.hpp +8 -40
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_tuple_like.hpp +36 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_unordered_range.hpp +6 -7
- data/src/cxx_supportlib/vendor-modified/boost/core/alignof.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/allocator_access.hpp +22 -8
- data/src/cxx_supportlib/vendor-modified/boost/core/bit.hpp +362 -31
- data/src/cxx_supportlib/vendor-modified/boost/core/checked_delete.hpp +29 -3
- data/src/cxx_supportlib/vendor-modified/boost/core/data.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/is_same.hpp +39 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/lwt_unattended.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_pause.hpp +71 -0
- data/src/cxx_supportlib/vendor-modified/boost/{smart_ptr → core}/detail/sp_thread_sleep.hpp +39 -21
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_yield.hpp +100 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/core/fclose_deleter.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/functor.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/identity.hpp +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/invoke_swap.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/is_same.hpp +10 -15
- data/src/cxx_supportlib/vendor-modified/boost/core/launder.hpp +69 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +33 -36
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test_trait.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/core/make_span.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/max_align.hpp +82 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/memory_resource.hpp +108 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/null_deleter.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/ref.hpp +23 -16
- data/src/cxx_supportlib/vendor-modified/boost/core/serialization.hpp +131 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/size.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/snprintf.hpp +173 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/span.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/core/swap.hpp +10 -40
- data/src/cxx_supportlib/vendor-modified/boost/core/type_name.hpp +29 -5
- data/src/cxx_supportlib/vendor-modified/boost/core/yield_primitives.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/describe/members.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/detail/basic_pointerbuf.hpp +3 -6
- data/src/cxx_supportlib/vendor-modified/boost/detail/lcast_precision.hpp +6 -97
- data/src/cxx_supportlib/vendor-modified/boost/exception/current_exception_cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/clone_current_exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/error_info_impl.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/exception_ptr.hpp +22 -10
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/is_output_streamable.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/object_hex_dump.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/requires_cxx11.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/type_info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/diagnostic_information.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/get_error_info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/to_string.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/exception/to_string_stub.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/function/function0.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function1.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function10.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function2.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function3.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function4.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function5.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function6.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function7.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function8.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function9.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +49 -198
- data/src/cxx_supportlib/vendor-modified/boost/function/function_fwd.hpp +36 -41
- data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +277 -420
- data/src/cxx_supportlib/vendor-modified/boost/function/function_typeof.hpp +1 -31
- data/src/cxx_supportlib/vendor-modified/boost/function.hpp +5 -61
- data/src/cxx_supportlib/vendor-modified/boost/integer/extended_euclidean.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avl_set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bs_set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +65 -66
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_slist_algorithms.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/array_initializer.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/common_slist_algorithms.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/default_header_holder.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/equal_to_value.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/exception_disposer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +14 -15
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash.hpp +277 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_combine.hpp +11 -49
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_integral.hpp +119 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_mix.hpp +130 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hashtable_node.hpp +41 -41
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hook_traits.hpp +14 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iiterator.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iterator.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/key_nodeptr_comp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_iterator.hpp +19 -19
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/mpl.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_cloner_disposer.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/parent_from_member.hpp +6 -17
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/simple_disposers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/size_holder.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_iterator.hpp +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/transform_iterator.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_iterator.hpp +21 -21
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_value_compare.hpp +28 -28
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +58 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +268 -239
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/linear_slist_algorithms.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +57 -58
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pack_options.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_traits.hpp +18 -18
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/priority_compare.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sg_set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree.hpp +14 -15
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +61 -62
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splay_set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap.hpp +18 -19
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_set.hpp +36 -37
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +37 -34
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set_hook.hpp +11 -11
- data/src/cxx_supportlib/vendor-modified/boost/io/ios_state.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/facade_iterator_category.hpp +10 -11
- data/src/cxx_supportlib/vendor-modified/boost/iterator/is_iterator.hpp +148 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_concepts.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +7 -13
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +113 -131
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +612 -645
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +85 -79
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +25 -32
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +22 -29
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +21 -16
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +7 -9
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +22 -161
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +9 -12
- data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/chrono.cpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/process_cpu_clocks.cpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/thread_clock.cpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/posix_api.cpp +10 -18
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/wide_posix_api.cpp +13 -14
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +24 -14
- data/src/cxx_supportlib/vendor-modified/boost/limits.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/move/adl_move_swap.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_merge.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_sort.hpp +20 -19
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +41 -56
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/basic_op.hpp +11 -10
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/heap_sort.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/merge.hpp +32 -34
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/move.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/predicate.hpp +11 -11
- data/src/cxx_supportlib/vendor-modified/boost/move/algorithm.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/move/default_delete.hpp +5 -6
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_to_raw_pointer.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/move_helpers.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/nsec_clock.hpp +65 -24
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/reverse_iterator.hpp +28 -28
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/to_raw_pointer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +72 -23
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +81 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/iterator.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/move/unique_ptr.hpp +65 -66
- data/src/cxx_supportlib/vendor-modified/boost/move/utility.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/move/utility_core.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +97 -17
- data/src/cxx_supportlib/vendor-modified/boost/mp11/bind.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/config.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_append.hpp +140 -4
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_defer.hpp +119 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_fold.hpp +108 -4
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_front.hpp +13 -1
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_is_value_list.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_list_v.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_map_find.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_plus.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_rename.hpp +18 -5
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_value.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integer_sequence.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integral.hpp +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/list.hpp +180 -3
- data/src/cxx_supportlib/vendor-modified/boost/mp11/utility.hpp +2 -96
- data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/assert.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/next_prior.hpp +3 -44
- data/src/cxx_supportlib/vendor-modified/boost/nondet_random.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/none_t.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/old_optional_implementation.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_config.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_relops.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/tag_keyword_arg_ref.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/unmatched_argument.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/overloads.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/tag.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/unwrap_cv_reference.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/void.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/parameter/binding.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/parameter/match.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/parameter/template_keyword.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/parameter/value_type.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/pool/pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/pool/simple_segregated_storage.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/msvc.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/make.h +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/vms.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/has_opt.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/inversive_congruential.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/splitmix64.hpp +203 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/subtract_with_carry.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/random/uniform_real_distribution.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/random.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/config.hpp +4 -82
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/gcd_lcm.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/is_evenly_divisible_by.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/is_ratio.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/include.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio.hpp +5 -249
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio_fwd.hpp +30 -56
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio_io.hpp +0 -533
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/icu.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_workaround.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/allocate_shared_array.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/requires_cxx11.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_atomic.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/yield_k.hpp +4 -6
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/enable_shared_from_this.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +2 -11
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_array.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_object.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_unique.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_array.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_ptr.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_array.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +1 -11
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/weak_ptr.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/enable_if.hpp +3 -12
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +14 -50
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +16 -55
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.hpp +62 -124
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_condition.hpp +29 -52
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category_message.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/interop_category.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/is_same.hpp +3 -13
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/mutex.hpp +128 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/snprintf.hpp +1 -46
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_category.hpp +14 -13
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_category_impl.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_message.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/system/errc.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/system/system_error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/deque.hpp +1 -24
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/functional.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/list.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/allocator_arg.hpp +2 -12
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/allocator_traits.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/config.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/default_delete.hpp +0 -16
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/pointer_traits.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/scoped_allocator.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/shared_ptr.hpp +0 -19
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/unique_ptr.hpp +4 -6
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/queue.hpp +2 -26
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/tuple.hpp +1 -18
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/vector.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/invoke.hpp +11 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/string_to_unsigned.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/string_trim.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/externally_locked.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/futures/wait_for_any.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/synchronized_value.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/throw_exception.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/tuple/detail/tuple_basic.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/tuple/tuple.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_swappable_cxx_11.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_floating_point.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_integral.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_swappable.hpp +4 -24
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_swappable.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/decltype.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/typeof/incr_registration_group.hpp +1 -10
- data/src/cxx_supportlib/vendor-modified/boost/typeof/msvc/typeof_impl.hpp +5 -6
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/bitset.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/complex.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/deque.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/fstream.hpp +2 -15
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/functional.hpp +4 -51
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/iostream.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/istream.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/iterator.hpp +2 -46
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/list.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/locale.hpp +2 -29
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/map.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/memory.hpp +4 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/ostream.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/queue.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/set.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/sstream.hpp +2 -19
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/stack.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/streambuf.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/string.hpp +2 -12
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/utility.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/valarray.hpp +2 -10
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/vector.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof.hpp +8 -202
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +860 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map_fwd.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +716 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set_fwd.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/allocator_constructed.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/archive_constructed.hpp +71 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/bad_archive_exception.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/concurrent_static_asserts.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +120 -85
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +1764 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +2271 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/element_type.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/flat_map_types.hpp +86 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/flat_set_types.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/ignore_wshadow.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_handle.hpp +204 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_map_types.hpp +139 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_set_types.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/reentrancy_check.hpp +138 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/restore_wshadow.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/rw_spinlock.hpp +179 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +651 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/tuple_rotate_right.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +356 -1118
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/map.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/mulx.hpp +129 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/narrow_cast.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/opt_storage.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/prime_fmod.hpp +96 -150
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialization_version.hpp +74 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_container.hpp +204 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_fca_container.hpp +156 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_tracked_address.hpp +104 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/static_assert.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/throw_exception.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/type_traits.hpp +136 -19
- data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +171 -103
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map_fwd.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +70 -46
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set_fwd.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +406 -899
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map_fwd.hpp +7 -13
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +895 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map_fwd.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +699 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set_fwd.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +253 -618
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set_fwd.hpp +8 -14
- data/src/cxx_supportlib/vendor-modified/boost/utility/swap.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/utility/value_init.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/jsoncpp/jsoncpp.cpp +2 -9
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/frame.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/processors/hybi13.hpp +14 -20
- data/src/helper-scripts/wsgi-loader.py +2 -2
- data/src/nginx_module/ConfigGeneral/ManifestGeneration.c +2 -2
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +16 -5
- data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +3 -1
- data/src/ruby_supportlib/phusion_passenger/native_support.rb +10 -7
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +8 -10
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +14 -0
- data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +4 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/libs.rb +6 -6
- data/src/ruby_supportlib/phusion_passenger/platform_info/pcre.rb +11 -12
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/app.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +4 -0
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/lldb_controller.rb +5 -1
- data/src/ruby_supportlib/phusion_passenger.rb +8 -8
- metadata +109 -150
- data/src/cxx_supportlib/ServerKit/http_parser.cpp +0 -2265
- data/src/cxx_supportlib/ServerKit/http_parser.h +0 -330
- data/src/cxx_supportlib/vendor-modified/boost/array.hpp +0 -456
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bulk_executor_op.hpp +0 -90
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_arm_fenced_block.hpp +0 -93
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_hppa_fenced_block.hpp +0 -70
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_sync_fenced_block.hpp +0 -67
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_x86_fenced_block.hpp +0 -101
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_invoke_helpers.hpp +0 -80
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/macos_fenced_block.hpp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/old_win_sdk_compat.hpp +0 -216
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/solaris_fenced_block.hpp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/variadic_templates.hpp +0 -294
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_execute.hpp +0 -406
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_guarantee.hpp +0 -1254
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/connect.hpp +0 -498
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_invocable.hpp +0 -154
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_operation.hpp +0 -111
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_receiver.hpp +0 -130
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/bulk_sender.hpp +0 -263
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/submit_receiver.hpp +0 -235
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/void_receiver.hpp +0 -92
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/execute.hpp +0 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/impl/receiver_invocation_error.ipp +0 -38
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/operation_state.hpp +0 -101
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/receiver.hpp +0 -287
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/receiver_invocation_error.hpp +0 -50
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/schedule.hpp +0 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/scheduler.hpp +0 -93
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/sender.hpp +0 -318
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_done.hpp +0 -259
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_error.hpp +0 -259
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_value.hpp +0 -492
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/start.hpp +0 -256
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/submit.hpp +0 -459
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_alloc_hook.hpp +0 -106
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_invoke_hook.hpp +0 -113
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/defer.hpp +0 -300
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/dispatch.hpp +0 -275
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/handler_alloc_hook.ipp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/post.hpp +0 -300
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/bulk_execute_free.hpp +0 -116
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/bulk_execute_member.hpp +0 -116
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/connect_free.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/connect_member.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/execute_free.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/schedule_free.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/schedule_member.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_done_free.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_done_member.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_error_free.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_error_member.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_value_free.hpp +0 -236
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_value_member.hpp +0 -236
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/start_free.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/start_member.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/submit_free.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/submit_member.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_object_handle.hpp +0 -495
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_overlapped_handle.hpp +0 -462
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_random_access_handle.hpp +0 -581
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_stream_handle.hpp +0 -563
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/object_handle.hpp +0 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/overlapped_handle.hpp +0 -41
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/overlapped_ptr.hpp +0 -147
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/random_access_handle.hpp +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/stream_handle.hpp +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_windows.hpp +0 -201
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_windows.hpp +0 -67
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_caps_windows.hpp +0 -57
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_windows.hpp +0 -179
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_mf2_cc.hpp +0 -228
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_mf_cc.hpp +0 -441
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_template.hpp +0 -345
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_cc.hpp +0 -103
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_template.hpp +0 -1047
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_vw.hpp +0 -130
- data/src/cxx_supportlib/vendor-modified/boost/bind/storage.hpp +0 -475
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/cygwin.hpp +0 -71
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/hash_table.hpp +0 -1278
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_tuple.hpp +0 -133
- data/src/cxx_supportlib/vendor-modified/boost/detail/atomic_count.hpp +0 -21
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/function_iterate.hpp +0 -16
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/gen_maybe_include.pl +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/maybe_include.hpp +0 -369
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/prologue.hpp +0 -26
- data/src/cxx_supportlib/vendor-modified/boost/function/gen_function_N.pl +0 -26
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash_fwd.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/abs.hpp +0 -89
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/gcd.hpp +0 -124
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/lcm.hpp +0 -126
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/sign.hpp +0 -89
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/overflow_helpers.hpp +0 -367
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/ratio_io.hpp +0 -1342
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/abs.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/arithmetic.hpp +0 -22
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/comparison.hpp +0 -19
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/divides.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/equal_to.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/gcd.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/greater.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/greater_equal.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/lcm.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/less.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/less_equal.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/minus.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/negate.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/not_equal_to.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/numeric_cast.hpp +0 -31
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/plus.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/rational_c_tag.hpp +0 -25
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/rational_constant.hpp +0 -15
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/sign.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/times.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_thread_pause.hpp +0 -51
- data/src/cxx_supportlib/vendor-modified/boost/swap.hpp +0 -17
- data/src/cxx_supportlib/vendor-modified/boost/type_index/stl_type_index.hpp +0 -278
- data/src/cxx_supportlib/vendor-modified/boost/type_index/type_index_facade.hpp +0 -297
- data/src/cxx_supportlib/vendor-modified/boost/type_index.hpp +0 -265
- data/src/cxx_supportlib/vendor-modified/boost/typeof/dmc/typeof_impl.hpp +0 -100
- data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode.hpp +0 -58
- data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode_params.hpp +0 -34
- data/src/cxx_supportlib/vendor-modified/boost/typeof/int_encoding.hpp +0 -118
- data/src/cxx_supportlib/vendor-modified/boost/typeof/integral_template_param.hpp +0 -80
- data/src/cxx_supportlib/vendor-modified/boost/typeof/message.hpp +0 -8
- data/src/cxx_supportlib/vendor-modified/boost/typeof/modifiers.hpp +0 -121
- data/src/cxx_supportlib/vendor-modified/boost/typeof/native.hpp +0 -60
- data/src/cxx_supportlib/vendor-modified/boost/typeof/pointers_data_members.hpp +0 -38
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions.hpp +0 -50
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions_iterate.hpp +0 -135
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_fundamental.hpp +0 -61
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_mem_functions.hpp +0 -32
- data/src/cxx_supportlib/vendor-modified/boost/typeof/template_encoding.hpp +0 -160
- data/src/cxx_supportlib/vendor-modified/boost/typeof/template_template_param.hpp +0 -149
- data/src/cxx_supportlib/vendor-modified/boost/typeof/type_encoding.hpp +0 -27
- data/src/cxx_supportlib/vendor-modified/boost/typeof/type_template_param.hpp +0 -37
- data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof_impl.hpp +0 -187
- data/src/cxx_supportlib/vendor-modified/boost/typeof/unsupported.hpp +0 -29
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector.hpp +0 -166
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector100.hpp +0 -321
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector150.hpp +0 -471
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector200.hpp +0 -621
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector50.hpp +0 -171
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa.hpp +0 -1921
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fwd.hpp +0 -64
- /data/dev/{webpacketpp.patch → websocketpp.patch} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
|
|
2
1
|
// Copyright (C) 2003-2004 Jeremy B. Maitin-Shepard.
|
|
3
2
|
// Copyright (C) 2005-2011 Daniel James.
|
|
4
|
-
// Copyright (C) 2022 Christian Mazakas
|
|
3
|
+
// Copyright (C) 2022-2023 Christian Mazakas
|
|
4
|
+
// Copyright (C) 2024 Joaquin M Lopez Munoz.
|
|
5
5
|
// Distributed under the Boost Software License, Version 1.0. (See accompanying
|
|
6
6
|
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
7
7
|
|
|
@@ -15,15 +15,13 @@
|
|
|
15
15
|
#pragma once
|
|
16
16
|
#endif
|
|
17
17
|
|
|
18
|
-
#include <boost/
|
|
19
|
-
#include <boost/functional/hash.hpp>
|
|
20
|
-
#include <boost/move/move.hpp>
|
|
18
|
+
#include <boost/unordered/detail/serialize_fca_container.hpp>
|
|
21
19
|
#include <boost/unordered/detail/set.hpp>
|
|
22
20
|
#include <boost/unordered/detail/type_traits.hpp>
|
|
23
21
|
|
|
24
|
-
#
|
|
22
|
+
#include <boost/container_hash/hash.hpp>
|
|
23
|
+
|
|
25
24
|
#include <initializer_list>
|
|
26
|
-
#endif
|
|
27
25
|
|
|
28
26
|
#if defined(BOOST_MSVC)
|
|
29
27
|
#pragma warning(push)
|
|
@@ -40,9 +38,6 @@ namespace boost {
|
|
|
40
38
|
namespace unordered {
|
|
41
39
|
template <class T, class H, class P, class A> class unordered_set
|
|
42
40
|
{
|
|
43
|
-
#if defined(BOOST_UNORDERED_USE_MOVE)
|
|
44
|
-
BOOST_COPYABLE_AND_MOVABLE(unordered_set)
|
|
45
|
-
#endif
|
|
46
41
|
template <typename, typename, typename, typename>
|
|
47
42
|
friend class unordered_multiset;
|
|
48
43
|
|
|
@@ -95,28 +90,23 @@ namespace boost {
|
|
|
95
90
|
|
|
96
91
|
unordered_set(unordered_set const&);
|
|
97
92
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
unordered_set(BOOST_RV_REF(unordered_set) other)
|
|
101
|
-
BOOST_NOEXCEPT_IF(table::nothrow_move_constructible)
|
|
93
|
+
unordered_set(unordered_set&& other)
|
|
94
|
+
noexcept(table::nothrow_move_constructible)
|
|
102
95
|
: table_(other.table_, boost::unordered::detail::move_tag())
|
|
103
96
|
{
|
|
104
97
|
// The move is done in table_
|
|
105
98
|
}
|
|
106
|
-
#endif
|
|
107
99
|
|
|
108
100
|
explicit unordered_set(allocator_type const&);
|
|
109
101
|
|
|
110
102
|
unordered_set(unordered_set const&, allocator_type const&);
|
|
111
103
|
|
|
112
|
-
unordered_set(
|
|
104
|
+
unordered_set(unordered_set&&, allocator_type const&);
|
|
113
105
|
|
|
114
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
115
106
|
unordered_set(std::initializer_list<value_type>,
|
|
116
107
|
size_type = boost::unordered::detail::default_bucket_count,
|
|
117
108
|
const hasher& = hasher(), const key_equal& l = key_equal(),
|
|
118
109
|
const allocator_type& = allocator_type());
|
|
119
|
-
#endif
|
|
120
110
|
|
|
121
111
|
explicit unordered_set(size_type, const allocator_type&);
|
|
122
112
|
|
|
@@ -132,7 +122,6 @@ namespace boost {
|
|
|
132
122
|
unordered_set(
|
|
133
123
|
InputIt, InputIt, size_type, const hasher&, const allocator_type&);
|
|
134
124
|
|
|
135
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
136
125
|
unordered_set(std::initializer_list<value_type>, const allocator_type&);
|
|
137
126
|
|
|
138
127
|
unordered_set(
|
|
@@ -140,283 +129,139 @@ namespace boost {
|
|
|
140
129
|
|
|
141
130
|
unordered_set(std::initializer_list<value_type>, size_type, const hasher&,
|
|
142
131
|
const allocator_type&);
|
|
143
|
-
#endif
|
|
144
132
|
|
|
145
133
|
// Destructor
|
|
146
134
|
|
|
147
|
-
~unordered_set()
|
|
135
|
+
~unordered_set() noexcept;
|
|
148
136
|
|
|
149
|
-
// Assign
|
|
137
|
+
// Assign
|
|
150
138
|
|
|
151
|
-
#if defined(BOOST_UNORDERED_USE_MOVE)
|
|
152
|
-
unordered_set& operator=(BOOST_COPY_ASSIGN_REF(unordered_set) x)
|
|
153
|
-
{
|
|
154
|
-
table_.assign(x.table_, boost::unordered::detail::true_type());
|
|
155
|
-
return *this;
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
unordered_set& operator=(BOOST_RV_REF(unordered_set) x)
|
|
159
|
-
BOOST_NOEXCEPT_IF(value_allocator_traits::is_always_equal::value&&
|
|
160
|
-
boost::is_nothrow_move_assignable<H>::value&&
|
|
161
|
-
boost::is_nothrow_move_assignable<P>::value)
|
|
162
|
-
{
|
|
163
|
-
table_.move_assign(x.table_, boost::unordered::detail::true_type());
|
|
164
|
-
return *this;
|
|
165
|
-
}
|
|
166
|
-
#else
|
|
167
139
|
unordered_set& operator=(unordered_set const& x)
|
|
168
140
|
{
|
|
169
|
-
table_.assign(x.table_,
|
|
141
|
+
table_.assign(x.table_, std::true_type());
|
|
170
142
|
return *this;
|
|
171
143
|
}
|
|
172
144
|
|
|
173
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
174
145
|
unordered_set& operator=(unordered_set&& x)
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
146
|
+
noexcept(value_allocator_traits::is_always_equal::value&&
|
|
147
|
+
std::is_nothrow_move_assignable<H>::value&&
|
|
148
|
+
std::is_nothrow_move_assignable<P>::value)
|
|
178
149
|
{
|
|
179
|
-
table_.move_assign(x.table_,
|
|
150
|
+
table_.move_assign(x.table_, std::true_type());
|
|
180
151
|
return *this;
|
|
181
152
|
}
|
|
182
|
-
#endif
|
|
183
|
-
#endif
|
|
184
153
|
|
|
185
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
186
154
|
unordered_set& operator=(std::initializer_list<value_type>);
|
|
187
|
-
#endif
|
|
188
155
|
|
|
189
|
-
allocator_type get_allocator() const
|
|
156
|
+
allocator_type get_allocator() const noexcept
|
|
190
157
|
{
|
|
191
|
-
return table_.node_alloc();
|
|
158
|
+
return allocator_type(table_.node_alloc());
|
|
192
159
|
}
|
|
193
160
|
|
|
194
161
|
// iterators
|
|
195
162
|
|
|
196
|
-
iterator begin()
|
|
163
|
+
iterator begin() noexcept { return iterator(table_.begin()); }
|
|
197
164
|
|
|
198
|
-
const_iterator begin() const
|
|
165
|
+
const_iterator begin() const noexcept
|
|
199
166
|
{
|
|
200
167
|
return const_iterator(table_.begin());
|
|
201
168
|
}
|
|
202
169
|
|
|
203
|
-
iterator end()
|
|
170
|
+
iterator end() noexcept { return iterator(); }
|
|
204
171
|
|
|
205
|
-
const_iterator end() const
|
|
172
|
+
const_iterator end() const noexcept { return const_iterator(); }
|
|
206
173
|
|
|
207
|
-
const_iterator cbegin() const
|
|
174
|
+
const_iterator cbegin() const noexcept
|
|
208
175
|
{
|
|
209
176
|
return const_iterator(table_.begin());
|
|
210
177
|
}
|
|
211
178
|
|
|
212
|
-
const_iterator cend() const
|
|
179
|
+
const_iterator cend() const noexcept { return const_iterator(); }
|
|
213
180
|
|
|
214
181
|
// size and capacity
|
|
215
182
|
|
|
216
|
-
BOOST_ATTRIBUTE_NODISCARD bool empty() const
|
|
183
|
+
BOOST_ATTRIBUTE_NODISCARD bool empty() const noexcept
|
|
217
184
|
{
|
|
218
185
|
return table_.size_ == 0;
|
|
219
186
|
}
|
|
220
187
|
|
|
221
|
-
size_type size() const
|
|
188
|
+
size_type size() const noexcept { return table_.size_; }
|
|
222
189
|
|
|
223
|
-
size_type max_size() const
|
|
190
|
+
size_type max_size() const noexcept;
|
|
224
191
|
|
|
225
|
-
// emplace
|
|
192
|
+
// emplace
|
|
226
193
|
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
template <class... Args>
|
|
230
|
-
std::pair<iterator, bool> emplace(BOOST_FWD_REF(Args)... args)
|
|
194
|
+
template <class... Args> std::pair<iterator, bool> emplace(Args&&... args)
|
|
231
195
|
{
|
|
232
196
|
return table_.emplace_unique(
|
|
233
|
-
table::extractor::extract(
|
|
234
|
-
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
#else
|
|
238
|
-
|
|
239
|
-
#if !BOOST_UNORDERED_SUN_WORKAROUNDS1
|
|
240
|
-
|
|
241
|
-
// 0 argument emplace requires special treatment in case
|
|
242
|
-
// the container is instantiated with a value type that
|
|
243
|
-
// doesn't have a default constructor.
|
|
244
|
-
|
|
245
|
-
std::pair<iterator, bool> emplace(
|
|
246
|
-
boost::unordered::detail::empty_emplace =
|
|
247
|
-
boost::unordered::detail::empty_emplace(),
|
|
248
|
-
value_type v = value_type())
|
|
249
|
-
{
|
|
250
|
-
return this->emplace(boost::move(v));
|
|
197
|
+
table::extractor::extract(std::forward<Args>(args)...),
|
|
198
|
+
std::forward<Args>(args)...);
|
|
251
199
|
}
|
|
252
200
|
|
|
253
|
-
#endif
|
|
254
|
-
|
|
255
|
-
template <typename A0>
|
|
256
|
-
std::pair<iterator, bool> emplace(BOOST_FWD_REF(A0) a0)
|
|
257
|
-
{
|
|
258
|
-
return table_.emplace_unique(
|
|
259
|
-
table::extractor::extract(boost::forward<A0>(a0)),
|
|
260
|
-
boost::unordered::detail::create_emplace_args(
|
|
261
|
-
boost::forward<A0>(a0)));
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
template <typename A0, typename A1>
|
|
265
|
-
std::pair<iterator, bool> emplace(
|
|
266
|
-
BOOST_FWD_REF(A0) a0, BOOST_FWD_REF(A1) a1)
|
|
267
|
-
{
|
|
268
|
-
return table_.emplace_unique(
|
|
269
|
-
table::extractor::extract(
|
|
270
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)),
|
|
271
|
-
boost::unordered::detail::create_emplace_args(
|
|
272
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)));
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
template <typename A0, typename A1, typename A2>
|
|
276
|
-
std::pair<iterator, bool> emplace(
|
|
277
|
-
BOOST_FWD_REF(A0) a0, BOOST_FWD_REF(A1) a1, BOOST_FWD_REF(A2) a2)
|
|
278
|
-
{
|
|
279
|
-
return table_.emplace_unique(
|
|
280
|
-
table::extractor::extract(
|
|
281
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)),
|
|
282
|
-
boost::unordered::detail::create_emplace_args(boost::forward<A0>(a0),
|
|
283
|
-
boost::forward<A1>(a1), boost::forward<A2>(a2)));
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
#endif
|
|
287
|
-
|
|
288
|
-
#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
|
289
|
-
|
|
290
201
|
template <class... Args>
|
|
291
|
-
iterator emplace_hint(const_iterator hint,
|
|
292
|
-
{
|
|
293
|
-
return table_.emplace_hint_unique(hint,
|
|
294
|
-
table::extractor::extract(boost::forward<Args>(args)...),
|
|
295
|
-
boost::forward<Args>(args)...);
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
#else
|
|
299
|
-
|
|
300
|
-
#if !BOOST_UNORDERED_SUN_WORKAROUNDS1
|
|
301
|
-
|
|
302
|
-
iterator emplace_hint(const_iterator hint,
|
|
303
|
-
boost::unordered::detail::empty_emplace =
|
|
304
|
-
boost::unordered::detail::empty_emplace(),
|
|
305
|
-
value_type v = value_type())
|
|
306
|
-
{
|
|
307
|
-
return this->emplace_hint(hint, boost::move(v));
|
|
308
|
-
}
|
|
309
|
-
|
|
310
|
-
#endif
|
|
311
|
-
|
|
312
|
-
template <typename A0>
|
|
313
|
-
iterator emplace_hint(const_iterator hint, BOOST_FWD_REF(A0) a0)
|
|
202
|
+
iterator emplace_hint(const_iterator hint, Args&&... args)
|
|
314
203
|
{
|
|
315
204
|
return table_.emplace_hint_unique(hint,
|
|
316
|
-
table::extractor::extract(
|
|
317
|
-
|
|
318
|
-
boost::forward<A0>(a0)));
|
|
205
|
+
table::extractor::extract(std::forward<Args>(args)...),
|
|
206
|
+
std::forward<Args>(args)...);
|
|
319
207
|
}
|
|
320
208
|
|
|
321
|
-
|
|
322
|
-
iterator emplace_hint(
|
|
323
|
-
const_iterator hint, BOOST_FWD_REF(A0) a0, BOOST_FWD_REF(A1) a1)
|
|
209
|
+
std::pair<iterator, bool> insert(value_type const& x)
|
|
324
210
|
{
|
|
325
|
-
return
|
|
326
|
-
table::extractor::extract(
|
|
327
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)),
|
|
328
|
-
boost::unordered::detail::create_emplace_args(
|
|
329
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)));
|
|
211
|
+
return this->emplace(x);
|
|
330
212
|
}
|
|
331
213
|
|
|
332
|
-
|
|
333
|
-
iterator emplace_hint(const_iterator hint, BOOST_FWD_REF(A0) a0,
|
|
334
|
-
BOOST_FWD_REF(A1) a1, BOOST_FWD_REF(A2) a2)
|
|
214
|
+
std::pair<iterator, bool> insert(value_type&& x)
|
|
335
215
|
{
|
|
336
|
-
return
|
|
337
|
-
table::extractor::extract(
|
|
338
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)),
|
|
339
|
-
boost::unordered::detail::create_emplace_args(boost::forward<A0>(a0),
|
|
340
|
-
boost::forward<A1>(a1), boost::forward<A2>(a2)));
|
|
216
|
+
return this->emplace(std::move(x));
|
|
341
217
|
}
|
|
342
218
|
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
template <BOOST_PP_ENUM_PARAMS_Z(z, n, typename A)> \
|
|
349
|
-
std::pair<iterator, bool> emplace( \
|
|
350
|
-
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_FWD_PARAM, a)) \
|
|
351
|
-
{ \
|
|
352
|
-
return table_.emplace_unique( \
|
|
353
|
-
table::extractor::extract( \
|
|
354
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)), \
|
|
355
|
-
boost::unordered::detail::create_emplace_args( \
|
|
356
|
-
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_CALL_FORWARD, a))); \
|
|
357
|
-
} \
|
|
358
|
-
\
|
|
359
|
-
template <BOOST_PP_ENUM_PARAMS_Z(z, n, typename A)> \
|
|
360
|
-
iterator emplace_hint( \
|
|
361
|
-
const_iterator hint, BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_FWD_PARAM, a)) \
|
|
362
|
-
{ \
|
|
363
|
-
return table_.emplace_hint_unique(hint, \
|
|
364
|
-
table::extractor::extract( \
|
|
365
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)), \
|
|
366
|
-
boost::unordered::detail::create_emplace_args( \
|
|
367
|
-
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_CALL_FORWARD, a))); \
|
|
368
|
-
}
|
|
369
|
-
|
|
370
|
-
BOOST_UNORDERED_EMPLACE(1, 4, _)
|
|
371
|
-
BOOST_UNORDERED_EMPLACE(1, 5, _)
|
|
372
|
-
BOOST_UNORDERED_EMPLACE(1, 6, _)
|
|
373
|
-
BOOST_UNORDERED_EMPLACE(1, 7, _)
|
|
374
|
-
BOOST_UNORDERED_EMPLACE(1, 8, _)
|
|
375
|
-
BOOST_UNORDERED_EMPLACE(1, 9, _)
|
|
376
|
-
BOOST_PP_REPEAT_FROM_TO(10, BOOST_PP_INC(BOOST_UNORDERED_EMPLACE_LIMIT),
|
|
377
|
-
BOOST_UNORDERED_EMPLACE, _)
|
|
378
|
-
|
|
379
|
-
#undef BOOST_UNORDERED_EMPLACE
|
|
380
|
-
|
|
381
|
-
#endif
|
|
382
|
-
|
|
383
|
-
std::pair<iterator, bool> insert(value_type const& x)
|
|
219
|
+
template <class Key>
|
|
220
|
+
typename boost::enable_if_c<
|
|
221
|
+
detail::transparent_non_iterable<Key, unordered_set>::value,
|
|
222
|
+
std::pair<iterator, bool> >::type
|
|
223
|
+
insert(Key&& k)
|
|
384
224
|
{
|
|
385
|
-
return
|
|
225
|
+
return table_.try_emplace_unique(std::forward<Key>(k));
|
|
386
226
|
}
|
|
387
227
|
|
|
388
|
-
|
|
228
|
+
iterator insert(const_iterator hint, value_type const& x)
|
|
389
229
|
{
|
|
390
|
-
return this->
|
|
230
|
+
return this->emplace_hint(hint, x);
|
|
391
231
|
}
|
|
392
232
|
|
|
393
|
-
iterator insert(const_iterator hint, value_type
|
|
233
|
+
iterator insert(const_iterator hint, value_type&& x)
|
|
394
234
|
{
|
|
395
|
-
return this->emplace_hint(hint, x);
|
|
235
|
+
return this->emplace_hint(hint, std::move(x));
|
|
396
236
|
}
|
|
397
237
|
|
|
398
|
-
|
|
238
|
+
template <class Key>
|
|
239
|
+
typename boost::enable_if_c<
|
|
240
|
+
detail::transparent_non_iterable<Key, unordered_set>::value,
|
|
241
|
+
iterator>::type
|
|
242
|
+
insert(const_iterator hint, Key&& k)
|
|
399
243
|
{
|
|
400
|
-
return
|
|
244
|
+
return table_.try_emplace_hint_unique(hint, std::forward<Key>(k));
|
|
401
245
|
}
|
|
402
246
|
|
|
403
247
|
template <class InputIt> void insert(InputIt, InputIt);
|
|
404
248
|
|
|
405
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
406
249
|
void insert(std::initializer_list<value_type>);
|
|
407
|
-
#endif
|
|
408
250
|
|
|
409
251
|
// extract
|
|
410
252
|
|
|
411
253
|
node_type extract(const_iterator position)
|
|
412
254
|
{
|
|
413
255
|
return node_type(
|
|
414
|
-
table_.extract_by_iterator_unique(position),
|
|
256
|
+
table_.extract_by_iterator_unique(position),
|
|
257
|
+
allocator_type(table_.node_alloc()));
|
|
415
258
|
}
|
|
416
259
|
|
|
417
260
|
node_type extract(const key_type& k)
|
|
418
261
|
{
|
|
419
|
-
return node_type(
|
|
262
|
+
return node_type(
|
|
263
|
+
table_.extract_by_key_impl(k),
|
|
264
|
+
allocator_type(table_.node_alloc()));
|
|
420
265
|
}
|
|
421
266
|
|
|
422
267
|
template <class Key>
|
|
@@ -425,31 +270,23 @@ namespace boost {
|
|
|
425
270
|
node_type>::type
|
|
426
271
|
extract(const Key& k)
|
|
427
272
|
{
|
|
428
|
-
return node_type(
|
|
273
|
+
return node_type(
|
|
274
|
+
table_.extract_by_key_impl(k),
|
|
275
|
+
allocator_type(table_.node_alloc()));
|
|
429
276
|
}
|
|
430
277
|
|
|
431
|
-
insert_return_type insert(
|
|
278
|
+
insert_return_type insert(node_type&& np)
|
|
432
279
|
{
|
|
433
280
|
insert_return_type result;
|
|
434
281
|
table_.move_insert_node_type_unique(np, result);
|
|
435
|
-
return
|
|
282
|
+
return result;
|
|
436
283
|
}
|
|
437
284
|
|
|
438
|
-
iterator insert(const_iterator hint,
|
|
285
|
+
iterator insert(const_iterator hint, node_type&& np)
|
|
439
286
|
{
|
|
440
287
|
return table_.move_insert_node_type_with_hint_unique(hint, np);
|
|
441
288
|
}
|
|
442
289
|
|
|
443
|
-
#if defined(BOOST_NO_CXX11_RVALUE_REFERENCES) || \
|
|
444
|
-
(BOOST_COMP_GNUC && BOOST_COMP_GNUC < BOOST_VERSION_NUMBER(4, 6, 0))
|
|
445
|
-
private:
|
|
446
|
-
// Note: Use r-value node_type to insert.
|
|
447
|
-
insert_return_type insert(node_type&);
|
|
448
|
-
iterator insert(const_iterator, node_type& np);
|
|
449
|
-
|
|
450
|
-
public:
|
|
451
|
-
#endif
|
|
452
|
-
|
|
453
290
|
iterator erase(const_iterator);
|
|
454
291
|
size_type erase(const key_type&);
|
|
455
292
|
iterator erase(const_iterator, const_iterator);
|
|
@@ -458,9 +295,9 @@ namespace boost {
|
|
|
458
295
|
typename boost::enable_if_c<
|
|
459
296
|
detail::transparent_non_iterable<Key, unordered_set>::value,
|
|
460
297
|
size_type>::type
|
|
461
|
-
erase(
|
|
298
|
+
erase(Key&& k)
|
|
462
299
|
{
|
|
463
|
-
return table_.erase_key_unique_impl(
|
|
300
|
+
return table_.erase_key_unique_impl(std::forward<Key>(k));
|
|
464
301
|
}
|
|
465
302
|
|
|
466
303
|
BOOST_UNORDERED_DEPRECATED("Use erase instead")
|
|
@@ -469,26 +306,22 @@ namespace boost {
|
|
|
469
306
|
void erase_return_void(const_iterator it) { erase(it); }
|
|
470
307
|
|
|
471
308
|
void swap(unordered_set&)
|
|
472
|
-
|
|
473
|
-
boost::is_nothrow_swappable<H>::value&&
|
|
474
|
-
boost::is_nothrow_swappable<P>::value);
|
|
475
|
-
void clear()
|
|
309
|
+
noexcept(value_allocator_traits::is_always_equal::value&&
|
|
310
|
+
boost::unordered::detail::is_nothrow_swappable<H>::value&&
|
|
311
|
+
boost::unordered::detail::is_nothrow_swappable<P>::value);
|
|
312
|
+
void clear() noexcept { table_.clear_impl(); }
|
|
476
313
|
|
|
477
314
|
template <typename H2, typename P2>
|
|
478
315
|
void merge(boost::unordered_set<T, H2, P2, A>& source);
|
|
479
316
|
|
|
480
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
481
317
|
template <typename H2, typename P2>
|
|
482
318
|
void merge(boost::unordered_set<T, H2, P2, A>&& source);
|
|
483
|
-
#endif
|
|
484
319
|
|
|
485
320
|
template <typename H2, typename P2>
|
|
486
321
|
void merge(boost::unordered_multiset<T, H2, P2, A>& source);
|
|
487
322
|
|
|
488
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
489
323
|
template <typename H2, typename P2>
|
|
490
324
|
void merge(boost::unordered_multiset<T, H2, P2, A>&& source);
|
|
491
|
-
#endif
|
|
492
325
|
|
|
493
326
|
// observers
|
|
494
327
|
|
|
@@ -554,12 +387,9 @@ namespace boost {
|
|
|
554
387
|
|
|
555
388
|
// bucket interface
|
|
556
389
|
|
|
557
|
-
size_type bucket_count() const
|
|
558
|
-
{
|
|
559
|
-
return table_.bucket_count();
|
|
560
|
-
}
|
|
390
|
+
size_type bucket_count() const noexcept { return table_.bucket_count(); }
|
|
561
391
|
|
|
562
|
-
size_type max_bucket_count() const
|
|
392
|
+
size_type max_bucket_count() const noexcept
|
|
563
393
|
{
|
|
564
394
|
return table_.max_bucket_count();
|
|
565
395
|
}
|
|
@@ -571,6 +401,14 @@ namespace boost {
|
|
|
571
401
|
return table_.hash_to_bucket(table_.hash(k));
|
|
572
402
|
}
|
|
573
403
|
|
|
404
|
+
template <class Key>
|
|
405
|
+
typename boost::enable_if_c<detail::are_transparent<Key, H, P>::value,
|
|
406
|
+
size_type>::type
|
|
407
|
+
bucket(Key&& k) const
|
|
408
|
+
{
|
|
409
|
+
return table_.hash_to_bucket(table_.hash(std::forward<Key>(k)));
|
|
410
|
+
}
|
|
411
|
+
|
|
574
412
|
local_iterator begin(size_type n)
|
|
575
413
|
{
|
|
576
414
|
return local_iterator(table_.begin(n));
|
|
@@ -600,9 +438,9 @@ namespace boost {
|
|
|
600
438
|
|
|
601
439
|
// hash policy
|
|
602
440
|
|
|
603
|
-
float load_factor() const
|
|
604
|
-
float max_load_factor() const
|
|
605
|
-
void max_load_factor(float)
|
|
441
|
+
float load_factor() const noexcept;
|
|
442
|
+
float max_load_factor() const noexcept { return table_.mlf_; }
|
|
443
|
+
void max_load_factor(float) noexcept;
|
|
606
444
|
void rehash(size_type);
|
|
607
445
|
void reserve(size_type);
|
|
608
446
|
|
|
@@ -614,6 +452,13 @@ namespace boost {
|
|
|
614
452
|
#endif
|
|
615
453
|
}; // class template unordered_set
|
|
616
454
|
|
|
455
|
+
template <class Archive, class K, class H, class P, class A>
|
|
456
|
+
void serialize(
|
|
457
|
+
Archive& ar, unordered_set<K, H, P, A>& c, unsigned int version)
|
|
458
|
+
{
|
|
459
|
+
detail::serialize_fca_container(ar, c, version);
|
|
460
|
+
}
|
|
461
|
+
|
|
617
462
|
#if BOOST_UNORDERED_TEMPLATE_DEDUCTION_GUIDES
|
|
618
463
|
|
|
619
464
|
template <class InputIterator,
|
|
@@ -623,10 +468,10 @@ namespace boost {
|
|
|
623
468
|
std::equal_to<typename std::iterator_traits<InputIterator>::value_type>,
|
|
624
469
|
class Allocator = std::allocator<
|
|
625
470
|
typename std::iterator_traits<InputIterator>::value_type>,
|
|
626
|
-
class =
|
|
627
|
-
class =
|
|
628
|
-
class =
|
|
629
|
-
class =
|
|
471
|
+
class = std::enable_if_t<detail::is_input_iterator_v<InputIterator> >,
|
|
472
|
+
class = std::enable_if_t<detail::is_hash_v<Hash> >,
|
|
473
|
+
class = std::enable_if_t<detail::is_pred_v<Pred> >,
|
|
474
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
630
475
|
unordered_set(InputIterator, InputIterator,
|
|
631
476
|
std::size_t = boost::unordered::detail::default_bucket_count,
|
|
632
477
|
Hash = Hash(), Pred = Pred(), Allocator = Allocator())
|
|
@@ -635,17 +480,17 @@ namespace boost {
|
|
|
635
480
|
|
|
636
481
|
template <class T, class Hash = boost::hash<T>,
|
|
637
482
|
class Pred = std::equal_to<T>, class Allocator = std::allocator<T>,
|
|
638
|
-
class =
|
|
639
|
-
class =
|
|
640
|
-
class =
|
|
483
|
+
class = std::enable_if_t<detail::is_hash_v<Hash> >,
|
|
484
|
+
class = std::enable_if_t<detail::is_pred_v<Pred> >,
|
|
485
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
641
486
|
unordered_set(std::initializer_list<T>,
|
|
642
487
|
std::size_t = boost::unordered::detail::default_bucket_count,
|
|
643
488
|
Hash = Hash(), Pred = Pred(), Allocator = Allocator())
|
|
644
489
|
-> unordered_set<T, Hash, Pred, Allocator>;
|
|
645
490
|
|
|
646
491
|
template <class InputIterator, class Allocator,
|
|
647
|
-
class =
|
|
648
|
-
class =
|
|
492
|
+
class = std::enable_if_t<detail::is_input_iterator_v<InputIterator> >,
|
|
493
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
649
494
|
unordered_set(InputIterator, InputIterator, std::size_t, Allocator)
|
|
650
495
|
-> unordered_set<typename std::iterator_traits<InputIterator>::value_type,
|
|
651
496
|
boost::hash<typename std::iterator_traits<InputIterator>::value_type>,
|
|
@@ -653,9 +498,9 @@ namespace boost {
|
|
|
653
498
|
Allocator>;
|
|
654
499
|
|
|
655
500
|
template <class InputIterator, class Hash, class Allocator,
|
|
656
|
-
class =
|
|
657
|
-
class =
|
|
658
|
-
class =
|
|
501
|
+
class = std::enable_if_t<detail::is_hash_v<Hash> >,
|
|
502
|
+
class = std::enable_if_t<detail::is_input_iterator_v<InputIterator> >,
|
|
503
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
659
504
|
unordered_set(InputIterator, InputIterator, std::size_t, Hash, Allocator)
|
|
660
505
|
-> unordered_set<typename std::iterator_traits<InputIterator>::value_type,
|
|
661
506
|
Hash,
|
|
@@ -663,19 +508,19 @@ namespace boost {
|
|
|
663
508
|
Allocator>;
|
|
664
509
|
|
|
665
510
|
template <class T, class Allocator,
|
|
666
|
-
class =
|
|
511
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
667
512
|
unordered_set(std::initializer_list<T>, std::size_t, Allocator)
|
|
668
513
|
-> unordered_set<T, boost::hash<T>, std::equal_to<T>, Allocator>;
|
|
669
514
|
|
|
670
515
|
template <class T, class Hash, class Allocator,
|
|
671
|
-
class =
|
|
672
|
-
class =
|
|
516
|
+
class = std::enable_if_t<detail::is_hash_v<Hash> >,
|
|
517
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
673
518
|
unordered_set(std::initializer_list<T>, std::size_t, Hash, Allocator)
|
|
674
519
|
-> unordered_set<T, Hash, std::equal_to<T>, Allocator>;
|
|
675
520
|
|
|
676
521
|
template <class InputIterator, class Allocator,
|
|
677
|
-
class =
|
|
678
|
-
class =
|
|
522
|
+
class = std::enable_if_t<detail::is_input_iterator_v<InputIterator> >,
|
|
523
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
679
524
|
unordered_set(InputIterator, InputIterator, Allocator)
|
|
680
525
|
-> unordered_set<typename std::iterator_traits<InputIterator>::value_type,
|
|
681
526
|
boost::hash<typename std::iterator_traits<InputIterator>::value_type>,
|
|
@@ -683,7 +528,7 @@ namespace boost {
|
|
|
683
528
|
Allocator>;
|
|
684
529
|
|
|
685
530
|
template <class T, class Allocator,
|
|
686
|
-
class =
|
|
531
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
687
532
|
unordered_set(std::initializer_list<T>, Allocator)
|
|
688
533
|
-> unordered_set<T, boost::hash<T>, std::equal_to<T>, Allocator>;
|
|
689
534
|
|
|
@@ -691,9 +536,6 @@ namespace boost {
|
|
|
691
536
|
|
|
692
537
|
template <class T, class H, class P, class A> class unordered_multiset
|
|
693
538
|
{
|
|
694
|
-
#if defined(BOOST_UNORDERED_USE_MOVE)
|
|
695
|
-
BOOST_COPYABLE_AND_MOVABLE(unordered_multiset)
|
|
696
|
-
#endif
|
|
697
539
|
template <typename, typename, typename, typename>
|
|
698
540
|
friend class unordered_set;
|
|
699
541
|
|
|
@@ -745,29 +587,23 @@ namespace boost {
|
|
|
745
587
|
|
|
746
588
|
unordered_multiset(unordered_multiset const&);
|
|
747
589
|
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
unordered_multiset(BOOST_RV_REF(unordered_multiset) other)
|
|
751
|
-
BOOST_NOEXCEPT_IF(table::nothrow_move_constructible)
|
|
590
|
+
unordered_multiset(unordered_multiset&& other)
|
|
591
|
+
noexcept(table::nothrow_move_constructible)
|
|
752
592
|
: table_(other.table_, boost::unordered::detail::move_tag())
|
|
753
593
|
{
|
|
754
594
|
// The move is done in table_
|
|
755
595
|
}
|
|
756
|
-
#endif
|
|
757
596
|
|
|
758
597
|
explicit unordered_multiset(allocator_type const&);
|
|
759
598
|
|
|
760
599
|
unordered_multiset(unordered_multiset const&, allocator_type const&);
|
|
761
600
|
|
|
762
|
-
unordered_multiset(
|
|
763
|
-
BOOST_RV_REF(unordered_multiset), allocator_type const&);
|
|
601
|
+
unordered_multiset(unordered_multiset&&, allocator_type const&);
|
|
764
602
|
|
|
765
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
766
603
|
unordered_multiset(std::initializer_list<value_type>,
|
|
767
604
|
size_type = boost::unordered::detail::default_bucket_count,
|
|
768
605
|
const hasher& = hasher(), const key_equal& l = key_equal(),
|
|
769
606
|
const allocator_type& = allocator_type());
|
|
770
|
-
#endif
|
|
771
607
|
|
|
772
608
|
explicit unordered_multiset(size_type, const allocator_type&);
|
|
773
609
|
|
|
@@ -784,7 +620,6 @@ namespace boost {
|
|
|
784
620
|
unordered_multiset(
|
|
785
621
|
InputIt, InputIt, size_type, const hasher&, const allocator_type&);
|
|
786
622
|
|
|
787
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
788
623
|
unordered_multiset(
|
|
789
624
|
std::initializer_list<value_type>, const allocator_type&);
|
|
790
625
|
|
|
@@ -793,265 +628,99 @@ namespace boost {
|
|
|
793
628
|
|
|
794
629
|
unordered_multiset(std::initializer_list<value_type>, size_type,
|
|
795
630
|
const hasher&, const allocator_type&);
|
|
796
|
-
#endif
|
|
797
631
|
|
|
798
632
|
// Destructor
|
|
799
633
|
|
|
800
|
-
~unordered_multiset()
|
|
801
|
-
|
|
802
|
-
// Assign
|
|
803
|
-
|
|
804
|
-
#if defined(BOOST_UNORDERED_USE_MOVE)
|
|
805
|
-
unordered_multiset& operator=(BOOST_COPY_ASSIGN_REF(unordered_multiset) x)
|
|
806
|
-
{
|
|
807
|
-
table_.assign(x.table_, boost::unordered::detail::false_type());
|
|
808
|
-
return *this;
|
|
809
|
-
}
|
|
634
|
+
~unordered_multiset() noexcept;
|
|
810
635
|
|
|
811
|
-
|
|
812
|
-
BOOST_NOEXCEPT_IF(value_allocator_traits::is_always_equal::value&&
|
|
813
|
-
boost::is_nothrow_move_assignable<H>::value&&
|
|
814
|
-
boost::is_nothrow_move_assignable<P>::value)
|
|
815
|
-
{
|
|
816
|
-
table_.move_assign(x.table_, boost::unordered::detail::false_type());
|
|
817
|
-
return *this;
|
|
818
|
-
}
|
|
819
|
-
#else
|
|
636
|
+
// Assign
|
|
820
637
|
unordered_multiset& operator=(unordered_multiset const& x)
|
|
821
638
|
{
|
|
822
|
-
table_.assign(x.table_,
|
|
639
|
+
table_.assign(x.table_, std::false_type());
|
|
823
640
|
return *this;
|
|
824
641
|
}
|
|
825
642
|
|
|
826
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
827
643
|
unordered_multiset& operator=(unordered_multiset&& x)
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
644
|
+
noexcept(value_allocator_traits::is_always_equal::value&&
|
|
645
|
+
std::is_nothrow_move_assignable<H>::value&&
|
|
646
|
+
std::is_nothrow_move_assignable<P>::value)
|
|
831
647
|
{
|
|
832
|
-
table_.move_assign(x.table_,
|
|
648
|
+
table_.move_assign(x.table_, std::false_type());
|
|
833
649
|
return *this;
|
|
834
650
|
}
|
|
835
|
-
#endif
|
|
836
|
-
#endif
|
|
837
651
|
|
|
838
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
839
652
|
unordered_multiset& operator=(std::initializer_list<value_type>);
|
|
840
|
-
#endif
|
|
841
653
|
|
|
842
|
-
allocator_type get_allocator() const
|
|
654
|
+
allocator_type get_allocator() const noexcept
|
|
843
655
|
{
|
|
844
|
-
return table_.node_alloc();
|
|
656
|
+
return allocator_type(table_.node_alloc());
|
|
845
657
|
}
|
|
846
658
|
|
|
847
659
|
// iterators
|
|
848
660
|
|
|
849
|
-
iterator begin()
|
|
661
|
+
iterator begin() noexcept { return iterator(table_.begin()); }
|
|
850
662
|
|
|
851
|
-
const_iterator begin() const
|
|
663
|
+
const_iterator begin() const noexcept
|
|
852
664
|
{
|
|
853
665
|
return const_iterator(table_.begin());
|
|
854
666
|
}
|
|
855
667
|
|
|
856
|
-
iterator end()
|
|
668
|
+
iterator end() noexcept { return iterator(); }
|
|
857
669
|
|
|
858
|
-
const_iterator end() const
|
|
670
|
+
const_iterator end() const noexcept { return const_iterator(); }
|
|
859
671
|
|
|
860
|
-
const_iterator cbegin() const
|
|
672
|
+
const_iterator cbegin() const noexcept
|
|
861
673
|
{
|
|
862
674
|
return const_iterator(table_.begin());
|
|
863
675
|
}
|
|
864
676
|
|
|
865
|
-
const_iterator cend() const
|
|
677
|
+
const_iterator cend() const noexcept { return const_iterator(); }
|
|
866
678
|
|
|
867
679
|
// size and capacity
|
|
868
680
|
|
|
869
|
-
BOOST_ATTRIBUTE_NODISCARD bool empty() const
|
|
681
|
+
BOOST_ATTRIBUTE_NODISCARD bool empty() const noexcept
|
|
870
682
|
{
|
|
871
683
|
return table_.size_ == 0;
|
|
872
684
|
}
|
|
873
685
|
|
|
874
|
-
size_type size() const
|
|
686
|
+
size_type size() const noexcept { return table_.size_; }
|
|
875
687
|
|
|
876
|
-
size_type max_size() const
|
|
688
|
+
size_type max_size() const noexcept;
|
|
877
689
|
|
|
878
|
-
// emplace
|
|
690
|
+
// emplace
|
|
879
691
|
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
template <class... Args> iterator emplace(BOOST_FWD_REF(Args)... args)
|
|
692
|
+
template <class... Args> iterator emplace(Args&&... args)
|
|
883
693
|
{
|
|
884
694
|
return iterator(table_.emplace_equiv(
|
|
885
695
|
boost::unordered::detail::func::construct_node_from_args(
|
|
886
|
-
table_.node_alloc(),
|
|
887
|
-
}
|
|
888
|
-
|
|
889
|
-
#else
|
|
890
|
-
|
|
891
|
-
#if !BOOST_UNORDERED_SUN_WORKAROUNDS1
|
|
892
|
-
|
|
893
|
-
// 0 argument emplace requires special treatment in case
|
|
894
|
-
// the container is instantiated with a value type that
|
|
895
|
-
// doesn't have a default constructor.
|
|
896
|
-
|
|
897
|
-
iterator emplace(boost::unordered::detail::empty_emplace =
|
|
898
|
-
boost::unordered::detail::empty_emplace(),
|
|
899
|
-
value_type v = value_type())
|
|
900
|
-
{
|
|
901
|
-
return this->emplace(boost::move(v));
|
|
696
|
+
table_.node_alloc(), std::forward<Args>(args)...)));
|
|
902
697
|
}
|
|
903
698
|
|
|
904
|
-
#endif
|
|
905
|
-
|
|
906
|
-
template <typename A0> iterator emplace(BOOST_FWD_REF(A0) a0)
|
|
907
|
-
{
|
|
908
|
-
return iterator(table_.emplace_equiv(
|
|
909
|
-
boost::unordered::detail::func::construct_node_from_args(
|
|
910
|
-
table_.node_alloc(), boost::unordered::detail::create_emplace_args(
|
|
911
|
-
boost::forward<A0>(a0)))));
|
|
912
|
-
}
|
|
913
|
-
|
|
914
|
-
template <typename A0, typename A1>
|
|
915
|
-
iterator emplace(BOOST_FWD_REF(A0) a0, BOOST_FWD_REF(A1) a1)
|
|
916
|
-
{
|
|
917
|
-
return iterator(table_.emplace_equiv(
|
|
918
|
-
boost::unordered::detail::func::construct_node_from_args(
|
|
919
|
-
table_.node_alloc(),
|
|
920
|
-
boost::unordered::detail::create_emplace_args(
|
|
921
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)))));
|
|
922
|
-
}
|
|
923
|
-
|
|
924
|
-
template <typename A0, typename A1, typename A2>
|
|
925
|
-
iterator emplace(
|
|
926
|
-
BOOST_FWD_REF(A0) a0, BOOST_FWD_REF(A1) a1, BOOST_FWD_REF(A2) a2)
|
|
927
|
-
{
|
|
928
|
-
return iterator(table_.emplace_equiv(
|
|
929
|
-
boost::unordered::detail::func::construct_node_from_args(
|
|
930
|
-
table_.node_alloc(),
|
|
931
|
-
boost::unordered::detail::create_emplace_args(
|
|
932
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1),
|
|
933
|
-
boost::forward<A2>(a2)))));
|
|
934
|
-
}
|
|
935
|
-
|
|
936
|
-
#endif
|
|
937
|
-
|
|
938
|
-
#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
|
939
|
-
|
|
940
699
|
template <class... Args>
|
|
941
|
-
iterator emplace_hint(const_iterator hint,
|
|
700
|
+
iterator emplace_hint(const_iterator hint, Args&&... args)
|
|
942
701
|
{
|
|
943
702
|
return iterator(table_.emplace_hint_equiv(
|
|
944
703
|
hint, boost::unordered::detail::func::construct_node_from_args(
|
|
945
|
-
table_.node_alloc(),
|
|
704
|
+
table_.node_alloc(), std::forward<Args>(args)...)));
|
|
946
705
|
}
|
|
947
706
|
|
|
948
|
-
#else
|
|
949
|
-
|
|
950
|
-
#if !BOOST_UNORDERED_SUN_WORKAROUNDS1
|
|
951
|
-
|
|
952
|
-
iterator emplace_hint(const_iterator hint,
|
|
953
|
-
boost::unordered::detail::empty_emplace =
|
|
954
|
-
boost::unordered::detail::empty_emplace(),
|
|
955
|
-
value_type v = value_type())
|
|
956
|
-
{
|
|
957
|
-
return this->emplace_hint(hint, boost::move(v));
|
|
958
|
-
}
|
|
959
|
-
|
|
960
|
-
#endif
|
|
961
|
-
|
|
962
|
-
template <typename A0>
|
|
963
|
-
iterator emplace_hint(const_iterator hint, BOOST_FWD_REF(A0) a0)
|
|
964
|
-
{
|
|
965
|
-
return iterator(table_.emplace_hint_equiv(hint,
|
|
966
|
-
boost::unordered::detail::func::construct_node_from_args(
|
|
967
|
-
table_.node_alloc(), boost::unordered::detail::create_emplace_args(
|
|
968
|
-
boost::forward<A0>(a0)))));
|
|
969
|
-
}
|
|
970
|
-
|
|
971
|
-
template <typename A0, typename A1>
|
|
972
|
-
iterator emplace_hint(
|
|
973
|
-
const_iterator hint, BOOST_FWD_REF(A0) a0, BOOST_FWD_REF(A1) a1)
|
|
974
|
-
{
|
|
975
|
-
return iterator(table_.emplace_hint_equiv(
|
|
976
|
-
hint, boost::unordered::detail::func::construct_node_from_args(
|
|
977
|
-
table_.node_alloc(),
|
|
978
|
-
boost::unordered::detail::create_emplace_args(
|
|
979
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)))));
|
|
980
|
-
}
|
|
981
|
-
|
|
982
|
-
template <typename A0, typename A1, typename A2>
|
|
983
|
-
iterator emplace_hint(const_iterator hint, BOOST_FWD_REF(A0) a0,
|
|
984
|
-
BOOST_FWD_REF(A1) a1, BOOST_FWD_REF(A2) a2)
|
|
985
|
-
{
|
|
986
|
-
return iterator(table_.emplace_hint_equiv(
|
|
987
|
-
hint, boost::unordered::detail::func::construct_node_from_args(
|
|
988
|
-
table_.node_alloc(),
|
|
989
|
-
boost::unordered::detail::create_emplace_args(
|
|
990
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1),
|
|
991
|
-
boost::forward<A2>(a2)))));
|
|
992
|
-
}
|
|
993
|
-
|
|
994
|
-
#endif
|
|
995
|
-
|
|
996
|
-
#if defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
|
997
|
-
|
|
998
|
-
#define BOOST_UNORDERED_EMPLACE(z, n, _) \
|
|
999
|
-
template <BOOST_PP_ENUM_PARAMS_Z(z, n, typename A)> \
|
|
1000
|
-
iterator emplace(BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_FWD_PARAM, a)) \
|
|
1001
|
-
{ \
|
|
1002
|
-
return iterator(table_.emplace_equiv( \
|
|
1003
|
-
boost::unordered::detail::func::construct_node_from_args( \
|
|
1004
|
-
table_.node_alloc(), \
|
|
1005
|
-
boost::unordered::detail::create_emplace_args( \
|
|
1006
|
-
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_CALL_FORWARD, a))))); \
|
|
1007
|
-
} \
|
|
1008
|
-
\
|
|
1009
|
-
template <BOOST_PP_ENUM_PARAMS_Z(z, n, typename A)> \
|
|
1010
|
-
iterator emplace_hint( \
|
|
1011
|
-
const_iterator hint, BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_FWD_PARAM, a)) \
|
|
1012
|
-
{ \
|
|
1013
|
-
return iterator(table_.emplace_hint_equiv( \
|
|
1014
|
-
hint, boost::unordered::detail::func::construct_node_from_args( \
|
|
1015
|
-
table_.node_alloc(), \
|
|
1016
|
-
boost::unordered::detail::create_emplace_args( \
|
|
1017
|
-
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_CALL_FORWARD, a))))); \
|
|
1018
|
-
}
|
|
1019
|
-
|
|
1020
|
-
BOOST_UNORDERED_EMPLACE(1, 4, _)
|
|
1021
|
-
BOOST_UNORDERED_EMPLACE(1, 5, _)
|
|
1022
|
-
BOOST_UNORDERED_EMPLACE(1, 6, _)
|
|
1023
|
-
BOOST_UNORDERED_EMPLACE(1, 7, _)
|
|
1024
|
-
BOOST_UNORDERED_EMPLACE(1, 8, _)
|
|
1025
|
-
BOOST_UNORDERED_EMPLACE(1, 9, _)
|
|
1026
|
-
BOOST_PP_REPEAT_FROM_TO(10, BOOST_PP_INC(BOOST_UNORDERED_EMPLACE_LIMIT),
|
|
1027
|
-
BOOST_UNORDERED_EMPLACE, _)
|
|
1028
|
-
|
|
1029
|
-
#undef BOOST_UNORDERED_EMPLACE
|
|
1030
|
-
|
|
1031
|
-
#endif
|
|
1032
|
-
|
|
1033
707
|
iterator insert(value_type const& x) { return this->emplace(x); }
|
|
1034
708
|
|
|
1035
|
-
iterator insert(
|
|
1036
|
-
{
|
|
1037
|
-
return this->emplace(boost::move(x));
|
|
1038
|
-
}
|
|
709
|
+
iterator insert(value_type&& x) { return this->emplace(std::move(x)); }
|
|
1039
710
|
|
|
1040
711
|
iterator insert(const_iterator hint, value_type const& x)
|
|
1041
712
|
{
|
|
1042
713
|
return this->emplace_hint(hint, x);
|
|
1043
714
|
}
|
|
1044
715
|
|
|
1045
|
-
iterator insert(const_iterator hint,
|
|
716
|
+
iterator insert(const_iterator hint, value_type&& x)
|
|
1046
717
|
{
|
|
1047
|
-
return this->emplace_hint(hint,
|
|
718
|
+
return this->emplace_hint(hint, std::move(x));
|
|
1048
719
|
}
|
|
1049
720
|
|
|
1050
721
|
template <class InputIt> void insert(InputIt, InputIt);
|
|
1051
722
|
|
|
1052
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1053
723
|
void insert(std::initializer_list<value_type>);
|
|
1054
|
-
#endif
|
|
1055
724
|
|
|
1056
725
|
// extract
|
|
1057
726
|
|
|
@@ -1075,26 +744,16 @@ namespace boost {
|
|
|
1075
744
|
return node_type(table_.extract_by_key_impl(k), table_.node_alloc());
|
|
1076
745
|
}
|
|
1077
746
|
|
|
1078
|
-
iterator insert(
|
|
747
|
+
iterator insert(node_type&& np)
|
|
1079
748
|
{
|
|
1080
749
|
return table_.move_insert_node_type_equiv(np);
|
|
1081
750
|
}
|
|
1082
751
|
|
|
1083
|
-
iterator insert(const_iterator hint,
|
|
752
|
+
iterator insert(const_iterator hint, node_type&& np)
|
|
1084
753
|
{
|
|
1085
754
|
return table_.move_insert_node_type_with_hint_equiv(hint, np);
|
|
1086
755
|
}
|
|
1087
756
|
|
|
1088
|
-
#if defined(BOOST_NO_CXX11_RVALUE_REFERENCES) || \
|
|
1089
|
-
(BOOST_COMP_GNUC && BOOST_COMP_GNUC < BOOST_VERSION_NUMBER(4, 6, 0))
|
|
1090
|
-
private:
|
|
1091
|
-
// Note: Use r-value node_type to insert.
|
|
1092
|
-
iterator insert(node_type&);
|
|
1093
|
-
iterator insert(const_iterator, node_type& np);
|
|
1094
|
-
|
|
1095
|
-
public:
|
|
1096
|
-
#endif
|
|
1097
|
-
|
|
1098
757
|
iterator erase(const_iterator);
|
|
1099
758
|
size_type erase(const key_type&);
|
|
1100
759
|
|
|
@@ -1114,26 +773,22 @@ namespace boost {
|
|
|
1114
773
|
void erase_return_void(const_iterator it) { erase(it); }
|
|
1115
774
|
|
|
1116
775
|
void swap(unordered_multiset&)
|
|
1117
|
-
|
|
1118
|
-
boost::is_nothrow_swappable<H>::value&&
|
|
1119
|
-
boost::is_nothrow_swappable<P>::value);
|
|
1120
|
-
void clear()
|
|
776
|
+
noexcept(value_allocator_traits::is_always_equal::value&&
|
|
777
|
+
boost::unordered::detail::is_nothrow_swappable<H>::value&&
|
|
778
|
+
boost::unordered::detail::is_nothrow_swappable<P>::value);
|
|
779
|
+
void clear() noexcept { table_.clear_impl(); }
|
|
1121
780
|
|
|
1122
781
|
template <typename H2, typename P2>
|
|
1123
782
|
void merge(boost::unordered_multiset<T, H2, P2, A>& source);
|
|
1124
783
|
|
|
1125
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
1126
784
|
template <typename H2, typename P2>
|
|
1127
785
|
void merge(boost::unordered_multiset<T, H2, P2, A>&& source);
|
|
1128
|
-
#endif
|
|
1129
786
|
|
|
1130
787
|
template <typename H2, typename P2>
|
|
1131
788
|
void merge(boost::unordered_set<T, H2, P2, A>& source);
|
|
1132
789
|
|
|
1133
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
1134
790
|
template <typename H2, typename P2>
|
|
1135
791
|
void merge(boost::unordered_set<T, H2, P2, A>&& source);
|
|
1136
|
-
#endif
|
|
1137
792
|
|
|
1138
793
|
// observers
|
|
1139
794
|
|
|
@@ -1195,12 +850,9 @@ namespace boost {
|
|
|
1195
850
|
|
|
1196
851
|
// bucket interface
|
|
1197
852
|
|
|
1198
|
-
size_type bucket_count() const
|
|
1199
|
-
{
|
|
1200
|
-
return table_.bucket_count();
|
|
1201
|
-
}
|
|
853
|
+
size_type bucket_count() const noexcept { return table_.bucket_count(); }
|
|
1202
854
|
|
|
1203
|
-
size_type max_bucket_count() const
|
|
855
|
+
size_type max_bucket_count() const noexcept
|
|
1204
856
|
{
|
|
1205
857
|
return table_.max_bucket_count();
|
|
1206
858
|
}
|
|
@@ -1212,6 +864,14 @@ namespace boost {
|
|
|
1212
864
|
return table_.hash_to_bucket(table_.hash(k));
|
|
1213
865
|
}
|
|
1214
866
|
|
|
867
|
+
template <class Key>
|
|
868
|
+
typename boost::enable_if_c<detail::are_transparent<Key, H, P>::value,
|
|
869
|
+
size_type>::type
|
|
870
|
+
bucket(Key&& k) const
|
|
871
|
+
{
|
|
872
|
+
return table_.hash_to_bucket(table_.hash(std::forward<Key>(k)));
|
|
873
|
+
}
|
|
874
|
+
|
|
1215
875
|
local_iterator begin(size_type n)
|
|
1216
876
|
{
|
|
1217
877
|
return local_iterator(table_.begin(n));
|
|
@@ -1241,9 +901,9 @@ namespace boost {
|
|
|
1241
901
|
|
|
1242
902
|
// hash policy
|
|
1243
903
|
|
|
1244
|
-
float load_factor() const
|
|
1245
|
-
float max_load_factor() const
|
|
1246
|
-
void max_load_factor(float)
|
|
904
|
+
float load_factor() const noexcept;
|
|
905
|
+
float max_load_factor() const noexcept { return table_.mlf_; }
|
|
906
|
+
void max_load_factor(float) noexcept;
|
|
1247
907
|
void rehash(size_type);
|
|
1248
908
|
void reserve(size_type);
|
|
1249
909
|
|
|
@@ -1255,6 +915,13 @@ namespace boost {
|
|
|
1255
915
|
#endif
|
|
1256
916
|
}; // class template unordered_multiset
|
|
1257
917
|
|
|
918
|
+
template <class Archive, class K, class H, class P, class A>
|
|
919
|
+
void serialize(
|
|
920
|
+
Archive& ar, unordered_multiset<K, H, P, A>& c, unsigned int version)
|
|
921
|
+
{
|
|
922
|
+
detail::serialize_fca_container(ar, c, version);
|
|
923
|
+
}
|
|
924
|
+
|
|
1258
925
|
#if BOOST_UNORDERED_TEMPLATE_DEDUCTION_GUIDES
|
|
1259
926
|
|
|
1260
927
|
template <class InputIterator,
|
|
@@ -1264,10 +931,10 @@ namespace boost {
|
|
|
1264
931
|
std::equal_to<typename std::iterator_traits<InputIterator>::value_type>,
|
|
1265
932
|
class Allocator = std::allocator<
|
|
1266
933
|
typename std::iterator_traits<InputIterator>::value_type>,
|
|
1267
|
-
class =
|
|
1268
|
-
class =
|
|
1269
|
-
class =
|
|
1270
|
-
class =
|
|
934
|
+
class = std::enable_if_t<detail::is_input_iterator_v<InputIterator> >,
|
|
935
|
+
class = std::enable_if_t<detail::is_hash_v<Hash> >,
|
|
936
|
+
class = std::enable_if_t<detail::is_pred_v<Pred> >,
|
|
937
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1271
938
|
unordered_multiset(InputIterator, InputIterator,
|
|
1272
939
|
std::size_t = boost::unordered::detail::default_bucket_count,
|
|
1273
940
|
Hash = Hash(), Pred = Pred(), Allocator = Allocator())
|
|
@@ -1277,17 +944,17 @@ namespace boost {
|
|
|
1277
944
|
|
|
1278
945
|
template <class T, class Hash = boost::hash<T>,
|
|
1279
946
|
class Pred = std::equal_to<T>, class Allocator = std::allocator<T>,
|
|
1280
|
-
class =
|
|
1281
|
-
class =
|
|
1282
|
-
class =
|
|
947
|
+
class = std::enable_if_t<detail::is_hash_v<Hash> >,
|
|
948
|
+
class = std::enable_if_t<detail::is_pred_v<Pred> >,
|
|
949
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1283
950
|
unordered_multiset(std::initializer_list<T>,
|
|
1284
951
|
std::size_t = boost::unordered::detail::default_bucket_count,
|
|
1285
952
|
Hash = Hash(), Pred = Pred(), Allocator = Allocator())
|
|
1286
953
|
-> unordered_multiset<T, Hash, Pred, Allocator>;
|
|
1287
954
|
|
|
1288
955
|
template <class InputIterator, class Allocator,
|
|
1289
|
-
class =
|
|
1290
|
-
class =
|
|
956
|
+
class = std::enable_if_t<detail::is_input_iterator_v<InputIterator> >,
|
|
957
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1291
958
|
unordered_multiset(InputIterator, InputIterator, std::size_t, Allocator)
|
|
1292
959
|
-> unordered_multiset<
|
|
1293
960
|
typename std::iterator_traits<InputIterator>::value_type,
|
|
@@ -1296,9 +963,9 @@ namespace boost {
|
|
|
1296
963
|
Allocator>;
|
|
1297
964
|
|
|
1298
965
|
template <class InputIterator, class Hash, class Allocator,
|
|
1299
|
-
class =
|
|
1300
|
-
class =
|
|
1301
|
-
class =
|
|
966
|
+
class = std::enable_if_t<detail::is_hash_v<Hash> >,
|
|
967
|
+
class = std::enable_if_t<detail::is_input_iterator_v<InputIterator> >,
|
|
968
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1302
969
|
unordered_multiset(
|
|
1303
970
|
InputIterator, InputIterator, std::size_t, Hash, Allocator)
|
|
1304
971
|
-> unordered_multiset<
|
|
@@ -1307,19 +974,19 @@ namespace boost {
|
|
|
1307
974
|
Allocator>;
|
|
1308
975
|
|
|
1309
976
|
template <class T, class Allocator,
|
|
1310
|
-
class =
|
|
977
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1311
978
|
unordered_multiset(std::initializer_list<T>, std::size_t, Allocator)
|
|
1312
979
|
-> unordered_multiset<T, boost::hash<T>, std::equal_to<T>, Allocator>;
|
|
1313
980
|
|
|
1314
981
|
template <class T, class Hash, class Allocator,
|
|
1315
|
-
class =
|
|
1316
|
-
class =
|
|
982
|
+
class = std::enable_if_t<detail::is_hash_v<Hash> >,
|
|
983
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1317
984
|
unordered_multiset(std::initializer_list<T>, std::size_t, Hash, Allocator)
|
|
1318
985
|
-> unordered_multiset<T, Hash, std::equal_to<T>, Allocator>;
|
|
1319
986
|
|
|
1320
987
|
template <class InputIterator, class Allocator,
|
|
1321
|
-
class =
|
|
1322
|
-
class =
|
|
988
|
+
class = std::enable_if_t<detail::is_input_iterator_v<InputIterator> >,
|
|
989
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1323
990
|
unordered_multiset(InputIterator, InputIterator, Allocator)
|
|
1324
991
|
-> unordered_multiset<
|
|
1325
992
|
typename std::iterator_traits<InputIterator>::value_type,
|
|
@@ -1328,7 +995,7 @@ namespace boost {
|
|
|
1328
995
|
Allocator>;
|
|
1329
996
|
|
|
1330
997
|
template <class T, class Allocator,
|
|
1331
|
-
class =
|
|
998
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1332
999
|
unordered_multiset(std::initializer_list<T>, Allocator)
|
|
1333
1000
|
-> unordered_multiset<T, boost::hash<T>, std::equal_to<T>, Allocator>;
|
|
1334
1001
|
|
|
@@ -1363,8 +1030,7 @@ namespace boost {
|
|
|
1363
1030
|
select_on_container_copy_construction(other.get_allocator()))
|
|
1364
1031
|
{
|
|
1365
1032
|
if (other.size()) {
|
|
1366
|
-
table_.copy_buckets(
|
|
1367
|
-
other.table_, boost::unordered::detail::true_type());
|
|
1033
|
+
table_.copy_buckets(other.table_, std::true_type());
|
|
1368
1034
|
}
|
|
1369
1035
|
}
|
|
1370
1036
|
|
|
@@ -1381,21 +1047,18 @@ namespace boost {
|
|
|
1381
1047
|
: table_(other.table_, a)
|
|
1382
1048
|
{
|
|
1383
1049
|
if (other.table_.size_) {
|
|
1384
|
-
table_.copy_buckets(
|
|
1385
|
-
other.table_, boost::unordered::detail::true_type());
|
|
1050
|
+
table_.copy_buckets(other.table_, std::true_type());
|
|
1386
1051
|
}
|
|
1387
1052
|
}
|
|
1388
1053
|
|
|
1389
1054
|
template <class T, class H, class P, class A>
|
|
1390
1055
|
unordered_set<T, H, P, A>::unordered_set(
|
|
1391
|
-
|
|
1056
|
+
unordered_set&& other, allocator_type const& a)
|
|
1392
1057
|
: table_(other.table_, a, boost::unordered::detail::move_tag())
|
|
1393
1058
|
{
|
|
1394
1059
|
table_.move_construct_buckets(other.table_);
|
|
1395
1060
|
}
|
|
1396
1061
|
|
|
1397
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1398
|
-
|
|
1399
1062
|
template <class T, class H, class P, class A>
|
|
1400
1063
|
unordered_set<T, H, P, A>::unordered_set(
|
|
1401
1064
|
std::initializer_list<value_type> list, size_type n, const hasher& hf,
|
|
@@ -1407,8 +1070,6 @@ namespace boost {
|
|
|
1407
1070
|
this->insert(list.begin(), list.end());
|
|
1408
1071
|
}
|
|
1409
1072
|
|
|
1410
|
-
#endif
|
|
1411
|
-
|
|
1412
1073
|
template <class T, class H, class P, class A>
|
|
1413
1074
|
unordered_set<T, H, P, A>::unordered_set(
|
|
1414
1075
|
size_type n, const allocator_type& a)
|
|
@@ -1454,8 +1115,6 @@ namespace boost {
|
|
|
1454
1115
|
this->insert(f, l);
|
|
1455
1116
|
}
|
|
1456
1117
|
|
|
1457
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1458
|
-
|
|
1459
1118
|
template <class T, class H, class P, class A>
|
|
1460
1119
|
unordered_set<T, H, P, A>::unordered_set(
|
|
1461
1120
|
std::initializer_list<value_type> list, const allocator_type& a)
|
|
@@ -1488,15 +1147,11 @@ namespace boost {
|
|
|
1488
1147
|
this->insert(list.begin(), list.end());
|
|
1489
1148
|
}
|
|
1490
1149
|
|
|
1491
|
-
#endif
|
|
1492
|
-
|
|
1493
1150
|
template <class T, class H, class P, class A>
|
|
1494
|
-
unordered_set<T, H, P, A>::~unordered_set()
|
|
1151
|
+
unordered_set<T, H, P, A>::~unordered_set() noexcept
|
|
1495
1152
|
{
|
|
1496
1153
|
}
|
|
1497
1154
|
|
|
1498
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1499
|
-
|
|
1500
1155
|
template <class T, class H, class P, class A>
|
|
1501
1156
|
unordered_set<T, H, P, A>& unordered_set<T, H, P, A>::operator=(
|
|
1502
1157
|
std::initializer_list<value_type> list)
|
|
@@ -1506,12 +1161,10 @@ namespace boost {
|
|
|
1506
1161
|
return *this;
|
|
1507
1162
|
}
|
|
1508
1163
|
|
|
1509
|
-
#endif
|
|
1510
|
-
|
|
1511
1164
|
// size and capacity
|
|
1512
1165
|
|
|
1513
1166
|
template <class T, class H, class P, class A>
|
|
1514
|
-
std::size_t unordered_set<T, H, P, A>::max_size() const
|
|
1167
|
+
std::size_t unordered_set<T, H, P, A>::max_size() const noexcept
|
|
1515
1168
|
{
|
|
1516
1169
|
using namespace std;
|
|
1517
1170
|
|
|
@@ -1534,14 +1187,12 @@ namespace boost {
|
|
|
1534
1187
|
}
|
|
1535
1188
|
}
|
|
1536
1189
|
|
|
1537
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1538
1190
|
template <class T, class H, class P, class A>
|
|
1539
1191
|
void unordered_set<T, H, P, A>::insert(
|
|
1540
1192
|
std::initializer_list<value_type> list)
|
|
1541
1193
|
{
|
|
1542
1194
|
this->insert(list.begin(), list.end());
|
|
1543
1195
|
}
|
|
1544
|
-
#endif
|
|
1545
1196
|
|
|
1546
1197
|
template <class T, class H, class P, class A>
|
|
1547
1198
|
typename unordered_set<T, H, P, A>::iterator
|
|
@@ -1566,9 +1217,9 @@ namespace boost {
|
|
|
1566
1217
|
|
|
1567
1218
|
template <class T, class H, class P, class A>
|
|
1568
1219
|
void unordered_set<T, H, P, A>::swap(unordered_set& other)
|
|
1569
|
-
|
|
1570
|
-
boost::is_nothrow_swappable<H>::value&&
|
|
1571
|
-
boost::is_nothrow_swappable<P>::value)
|
|
1220
|
+
noexcept(value_allocator_traits::is_always_equal::value&&
|
|
1221
|
+
boost::unordered::detail::is_nothrow_swappable<H>::value&&
|
|
1222
|
+
boost::unordered::detail::is_nothrow_swappable<P>::value)
|
|
1572
1223
|
{
|
|
1573
1224
|
table_.swap(other.table_);
|
|
1574
1225
|
}
|
|
@@ -1597,7 +1248,6 @@ namespace boost {
|
|
|
1597
1248
|
table_.merge_unique(source.table_);
|
|
1598
1249
|
}
|
|
1599
1250
|
|
|
1600
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
1601
1251
|
template <class T, class H, class P, class A>
|
|
1602
1252
|
template <typename H2, typename P2>
|
|
1603
1253
|
void unordered_set<T, H, P, A>::merge(
|
|
@@ -1605,7 +1255,6 @@ namespace boost {
|
|
|
1605
1255
|
{
|
|
1606
1256
|
table_.merge_unique(source.table_);
|
|
1607
1257
|
}
|
|
1608
|
-
#endif
|
|
1609
1258
|
|
|
1610
1259
|
template <class T, class H, class P, class A>
|
|
1611
1260
|
template <typename H2, typename P2>
|
|
@@ -1615,7 +1264,6 @@ namespace boost {
|
|
|
1615
1264
|
table_.merge_unique(source.table_);
|
|
1616
1265
|
}
|
|
1617
1266
|
|
|
1618
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
1619
1267
|
template <class T, class H, class P, class A>
|
|
1620
1268
|
template <typename H2, typename P2>
|
|
1621
1269
|
void unordered_set<T, H, P, A>::merge(
|
|
@@ -1623,7 +1271,6 @@ namespace boost {
|
|
|
1623
1271
|
{
|
|
1624
1272
|
table_.merge_unique(source.table_);
|
|
1625
1273
|
}
|
|
1626
|
-
#endif
|
|
1627
1274
|
|
|
1628
1275
|
// lookup
|
|
1629
1276
|
|
|
@@ -1674,7 +1321,7 @@ namespace boost {
|
|
|
1674
1321
|
// hash policy
|
|
1675
1322
|
|
|
1676
1323
|
template <class T, class H, class P, class A>
|
|
1677
|
-
float unordered_set<T, H, P, A>::load_factor() const
|
|
1324
|
+
float unordered_set<T, H, P, A>::load_factor() const noexcept
|
|
1678
1325
|
{
|
|
1679
1326
|
if (table_.size_ == 0) {
|
|
1680
1327
|
return 0.0f;
|
|
@@ -1686,7 +1333,7 @@ namespace boost {
|
|
|
1686
1333
|
}
|
|
1687
1334
|
|
|
1688
1335
|
template <class T, class H, class P, class A>
|
|
1689
|
-
void unordered_set<T, H, P, A>::max_load_factor(float m)
|
|
1336
|
+
void unordered_set<T, H, P, A>::max_load_factor(float m) noexcept
|
|
1690
1337
|
{
|
|
1691
1338
|
table_.max_load_factor(m);
|
|
1692
1339
|
}
|
|
@@ -1730,9 +1377,8 @@ namespace boost {
|
|
|
1730
1377
|
}
|
|
1731
1378
|
|
|
1732
1379
|
template <class T, class H, class P, class A>
|
|
1733
|
-
inline void swap(
|
|
1734
|
-
unordered_set<T, H, P, A>& m1
|
|
1735
|
-
BOOST_NOEXCEPT_IF(BOOST_NOEXCEPT_EXPR(m1.swap(m2)))
|
|
1380
|
+
inline void swap(unordered_set<T, H, P, A>& m1,
|
|
1381
|
+
unordered_set<T, H, P, A>& m2) noexcept(noexcept(m1.swap(m2)))
|
|
1736
1382
|
{
|
|
1737
1383
|
#if BOOST_WORKAROUND(BOOST_CODEGEARC, BOOST_TESTED_AT(0x0613))
|
|
1738
1384
|
struct dummy
|
|
@@ -1782,8 +1428,7 @@ namespace boost {
|
|
|
1782
1428
|
select_on_container_copy_construction(other.get_allocator()))
|
|
1783
1429
|
{
|
|
1784
1430
|
if (other.table_.size_) {
|
|
1785
|
-
table_.copy_buckets(
|
|
1786
|
-
other.table_, boost::unordered::detail::false_type());
|
|
1431
|
+
table_.copy_buckets(other.table_, std::false_type());
|
|
1787
1432
|
}
|
|
1788
1433
|
}
|
|
1789
1434
|
|
|
@@ -1800,21 +1445,18 @@ namespace boost {
|
|
|
1800
1445
|
: table_(other.table_, a)
|
|
1801
1446
|
{
|
|
1802
1447
|
if (other.table_.size_) {
|
|
1803
|
-
table_.copy_buckets(
|
|
1804
|
-
other.table_, boost::unordered::detail::false_type());
|
|
1448
|
+
table_.copy_buckets(other.table_, std::false_type());
|
|
1805
1449
|
}
|
|
1806
1450
|
}
|
|
1807
1451
|
|
|
1808
1452
|
template <class T, class H, class P, class A>
|
|
1809
1453
|
unordered_multiset<T, H, P, A>::unordered_multiset(
|
|
1810
|
-
|
|
1454
|
+
unordered_multiset&& other, allocator_type const& a)
|
|
1811
1455
|
: table_(other.table_, a, boost::unordered::detail::move_tag())
|
|
1812
1456
|
{
|
|
1813
1457
|
table_.move_construct_buckets(other.table_);
|
|
1814
1458
|
}
|
|
1815
1459
|
|
|
1816
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1817
|
-
|
|
1818
1460
|
template <class T, class H, class P, class A>
|
|
1819
1461
|
unordered_multiset<T, H, P, A>::unordered_multiset(
|
|
1820
1462
|
std::initializer_list<value_type> list, size_type n, const hasher& hf,
|
|
@@ -1826,8 +1468,6 @@ namespace boost {
|
|
|
1826
1468
|
this->insert(list.begin(), list.end());
|
|
1827
1469
|
}
|
|
1828
1470
|
|
|
1829
|
-
#endif
|
|
1830
|
-
|
|
1831
1471
|
template <class T, class H, class P, class A>
|
|
1832
1472
|
unordered_multiset<T, H, P, A>::unordered_multiset(
|
|
1833
1473
|
size_type n, const allocator_type& a)
|
|
@@ -1873,8 +1513,6 @@ namespace boost {
|
|
|
1873
1513
|
this->insert(f, l);
|
|
1874
1514
|
}
|
|
1875
1515
|
|
|
1876
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1877
|
-
|
|
1878
1516
|
template <class T, class H, class P, class A>
|
|
1879
1517
|
unordered_multiset<T, H, P, A>::unordered_multiset(
|
|
1880
1518
|
std::initializer_list<value_type> list, const allocator_type& a)
|
|
@@ -1907,15 +1545,11 @@ namespace boost {
|
|
|
1907
1545
|
this->insert(list.begin(), list.end());
|
|
1908
1546
|
}
|
|
1909
1547
|
|
|
1910
|
-
#endif
|
|
1911
|
-
|
|
1912
1548
|
template <class T, class H, class P, class A>
|
|
1913
|
-
unordered_multiset<T, H, P, A>::~unordered_multiset()
|
|
1549
|
+
unordered_multiset<T, H, P, A>::~unordered_multiset() noexcept
|
|
1914
1550
|
{
|
|
1915
1551
|
}
|
|
1916
1552
|
|
|
1917
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1918
|
-
|
|
1919
1553
|
template <class T, class H, class P, class A>
|
|
1920
1554
|
unordered_multiset<T, H, P, A>& unordered_multiset<T, H, P, A>::operator=(
|
|
1921
1555
|
std::initializer_list<value_type> list)
|
|
@@ -1925,12 +1559,10 @@ namespace boost {
|
|
|
1925
1559
|
return *this;
|
|
1926
1560
|
}
|
|
1927
1561
|
|
|
1928
|
-
#endif
|
|
1929
|
-
|
|
1930
1562
|
// size and capacity
|
|
1931
1563
|
|
|
1932
1564
|
template <class T, class H, class P, class A>
|
|
1933
|
-
std::size_t unordered_multiset<T, H, P, A>::max_size() const
|
|
1565
|
+
std::size_t unordered_multiset<T, H, P, A>::max_size() const noexcept
|
|
1934
1566
|
{
|
|
1935
1567
|
using namespace std;
|
|
1936
1568
|
|
|
@@ -1950,14 +1582,12 @@ namespace boost {
|
|
|
1950
1582
|
table_.insert_range_equiv(first, last);
|
|
1951
1583
|
}
|
|
1952
1584
|
|
|
1953
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1954
1585
|
template <class T, class H, class P, class A>
|
|
1955
1586
|
void unordered_multiset<T, H, P, A>::insert(
|
|
1956
1587
|
std::initializer_list<value_type> list)
|
|
1957
1588
|
{
|
|
1958
1589
|
this->insert(list.begin(), list.end());
|
|
1959
1590
|
}
|
|
1960
|
-
#endif
|
|
1961
1591
|
|
|
1962
1592
|
template <class T, class H, class P, class A>
|
|
1963
1593
|
typename unordered_multiset<T, H, P, A>::iterator
|
|
@@ -1984,9 +1614,9 @@ namespace boost {
|
|
|
1984
1614
|
|
|
1985
1615
|
template <class T, class H, class P, class A>
|
|
1986
1616
|
void unordered_multiset<T, H, P, A>::swap(unordered_multiset& other)
|
|
1987
|
-
|
|
1988
|
-
boost::is_nothrow_swappable<H>::value&&
|
|
1989
|
-
boost::is_nothrow_swappable<P>::value)
|
|
1617
|
+
noexcept(value_allocator_traits::is_always_equal::value&&
|
|
1618
|
+
boost::unordered::detail::is_nothrow_swappable<H>::value&&
|
|
1619
|
+
boost::unordered::detail::is_nothrow_swappable<P>::value)
|
|
1990
1620
|
{
|
|
1991
1621
|
table_.swap(other.table_);
|
|
1992
1622
|
}
|
|
@@ -2017,7 +1647,6 @@ namespace boost {
|
|
|
2017
1647
|
}
|
|
2018
1648
|
}
|
|
2019
1649
|
|
|
2020
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
2021
1650
|
template <class T, class H, class P, class A>
|
|
2022
1651
|
template <typename H2, typename P2>
|
|
2023
1652
|
void unordered_multiset<T, H, P, A>::merge(
|
|
@@ -2027,7 +1656,6 @@ namespace boost {
|
|
|
2027
1656
|
insert(source.extract(source.begin()));
|
|
2028
1657
|
}
|
|
2029
1658
|
}
|
|
2030
|
-
#endif
|
|
2031
1659
|
|
|
2032
1660
|
template <class T, class H, class P, class A>
|
|
2033
1661
|
template <typename H2, typename P2>
|
|
@@ -2039,7 +1667,6 @@ namespace boost {
|
|
|
2039
1667
|
}
|
|
2040
1668
|
}
|
|
2041
1669
|
|
|
2042
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
2043
1670
|
template <class T, class H, class P, class A>
|
|
2044
1671
|
template <typename H2, typename P2>
|
|
2045
1672
|
void unordered_multiset<T, H, P, A>::merge(
|
|
@@ -2049,7 +1676,6 @@ namespace boost {
|
|
|
2049
1676
|
insert(source.extract(source.begin()));
|
|
2050
1677
|
}
|
|
2051
1678
|
}
|
|
2052
|
-
#endif
|
|
2053
1679
|
|
|
2054
1680
|
// lookup
|
|
2055
1681
|
|
|
@@ -2097,7 +1723,7 @@ namespace boost {
|
|
|
2097
1723
|
// hash policy
|
|
2098
1724
|
|
|
2099
1725
|
template <class T, class H, class P, class A>
|
|
2100
|
-
float unordered_multiset<T, H, P, A>::load_factor() const
|
|
1726
|
+
float unordered_multiset<T, H, P, A>::load_factor() const noexcept
|
|
2101
1727
|
{
|
|
2102
1728
|
if (table_.size_ == 0) {
|
|
2103
1729
|
return 0.0f;
|
|
@@ -2109,7 +1735,7 @@ namespace boost {
|
|
|
2109
1735
|
}
|
|
2110
1736
|
|
|
2111
1737
|
template <class T, class H, class P, class A>
|
|
2112
|
-
void unordered_multiset<T, H, P, A>::max_load_factor(float m)
|
|
1738
|
+
void unordered_multiset<T, H, P, A>::max_load_factor(float m) noexcept
|
|
2113
1739
|
{
|
|
2114
1740
|
table_.max_load_factor(m);
|
|
2115
1741
|
}
|
|
@@ -2153,9 +1779,8 @@ namespace boost {
|
|
|
2153
1779
|
}
|
|
2154
1780
|
|
|
2155
1781
|
template <class T, class H, class P, class A>
|
|
2156
|
-
inline void swap(
|
|
2157
|
-
unordered_multiset<T, H, P, A>& m1
|
|
2158
|
-
BOOST_NOEXCEPT_IF(BOOST_NOEXCEPT_EXPR(m1.swap(m2)))
|
|
1782
|
+
inline void swap(unordered_multiset<T, H, P, A>& m1,
|
|
1783
|
+
unordered_multiset<T, H, P, A>& m2) noexcept(noexcept(m1.swap(m2)))
|
|
2159
1784
|
{
|
|
2160
1785
|
#if BOOST_WORKAROUND(BOOST_CODEGEARC, BOOST_TESTED_AT(0x0613))
|
|
2161
1786
|
struct dummy
|
|
@@ -2175,8 +1800,6 @@ namespace boost {
|
|
|
2175
1800
|
|
|
2176
1801
|
template <typename N, typename T, typename A> class node_handle_set
|
|
2177
1802
|
{
|
|
2178
|
-
BOOST_MOVABLE_BUT_NOT_COPYABLE(node_handle_set)
|
|
2179
|
-
|
|
2180
1803
|
template <typename Types> friend struct ::boost::unordered::detail::table;
|
|
2181
1804
|
template <class T2, class H2, class P2, class A2>
|
|
2182
1805
|
friend class unordered_set;
|
|
@@ -2209,10 +1832,9 @@ namespace boost {
|
|
|
2209
1832
|
}
|
|
2210
1833
|
|
|
2211
1834
|
public:
|
|
2212
|
-
|
|
2213
|
-
|
|
2214
|
-
|
|
2215
|
-
}
|
|
1835
|
+
constexpr node_handle_set() noexcept : ptr_(), has_alloc_(false) {}
|
|
1836
|
+
node_handle_set(node_handle_set const&) = delete;
|
|
1837
|
+
node_handle_set& operator=(node_handle_set const&) = delete;
|
|
2216
1838
|
|
|
2217
1839
|
~node_handle_set()
|
|
2218
1840
|
{
|
|
@@ -2223,14 +1845,14 @@ namespace boost {
|
|
|
2223
1845
|
}
|
|
2224
1846
|
}
|
|
2225
1847
|
|
|
2226
|
-
node_handle_set(
|
|
2227
|
-
|
|
2228
|
-
|
|
1848
|
+
node_handle_set(node_handle_set&& n) noexcept
|
|
1849
|
+
: ptr_(n.ptr_),
|
|
1850
|
+
alloc_(std::move(n.alloc_))
|
|
2229
1851
|
{
|
|
2230
1852
|
n.ptr_ = node_pointer();
|
|
2231
1853
|
}
|
|
2232
1854
|
|
|
2233
|
-
node_handle_set& operator=(
|
|
1855
|
+
node_handle_set& operator=(node_handle_set&& n)
|
|
2234
1856
|
{
|
|
2235
1857
|
BOOST_ASSERT(!alloc_.has_value() ||
|
|
2236
1858
|
value_allocator_traits::
|
|
@@ -2247,7 +1869,7 @@ namespace boost {
|
|
|
2247
1869
|
if (!alloc_.has_value() ||
|
|
2248
1870
|
value_allocator_traits::propagate_on_container_move_assignment::
|
|
2249
1871
|
value) {
|
|
2250
|
-
alloc_ =
|
|
1872
|
+
alloc_ = std::move(n.alloc_);
|
|
2251
1873
|
}
|
|
2252
1874
|
ptr_ = n.ptr_;
|
|
2253
1875
|
n.ptr_ = node_pointer();
|
|
@@ -2259,18 +1881,21 @@ namespace boost {
|
|
|
2259
1881
|
|
|
2260
1882
|
allocator_type get_allocator() const { return *alloc_; }
|
|
2261
1883
|
|
|
2262
|
-
|
|
1884
|
+
explicit operator bool() const noexcept
|
|
1885
|
+
{
|
|
1886
|
+
return !this->operator!();
|
|
1887
|
+
}
|
|
2263
1888
|
|
|
2264
|
-
bool operator!() const
|
|
1889
|
+
bool operator!() const noexcept { return ptr_ ? 0 : 1; }
|
|
2265
1890
|
|
|
2266
|
-
BOOST_ATTRIBUTE_NODISCARD bool empty() const
|
|
1891
|
+
BOOST_ATTRIBUTE_NODISCARD bool empty() const noexcept
|
|
2267
1892
|
{
|
|
2268
1893
|
return ptr_ ? 0 : 1;
|
|
2269
1894
|
}
|
|
2270
1895
|
|
|
2271
|
-
void swap(node_handle_set& n)
|
|
2272
|
-
value_allocator_traits::propagate_on_container_swap::value ||
|
|
2273
|
-
|
|
1896
|
+
void swap(node_handle_set& n)
|
|
1897
|
+
noexcept(value_allocator_traits::propagate_on_container_swap::value ||
|
|
1898
|
+
value_allocator_traits::is_always_equal::value)
|
|
2274
1899
|
{
|
|
2275
1900
|
BOOST_ASSERT(
|
|
2276
1901
|
!alloc_.has_value() || !n.alloc_.has_value() ||
|
|
@@ -2278,60 +1903,70 @@ namespace boost {
|
|
|
2278
1903
|
alloc_ == n.alloc_);
|
|
2279
1904
|
if (value_allocator_traits::propagate_on_container_swap::value ||
|
|
2280
1905
|
!alloc_.has_value() || !n.alloc_.has_value()) {
|
|
2281
|
-
boost::
|
|
1906
|
+
boost::core::invoke_swap(alloc_, n.alloc_);
|
|
2282
1907
|
}
|
|
2283
|
-
boost::
|
|
1908
|
+
boost::core::invoke_swap(ptr_, n.ptr_);
|
|
2284
1909
|
}
|
|
2285
1910
|
};
|
|
2286
1911
|
|
|
2287
1912
|
template <typename N, typename T, typename A>
|
|
2288
1913
|
void swap(node_handle_set<N, T, A>& x, node_handle_set<N, T, A>& y)
|
|
2289
|
-
|
|
1914
|
+
noexcept(noexcept(x.swap(y)))
|
|
2290
1915
|
{
|
|
2291
1916
|
x.swap(y);
|
|
2292
1917
|
}
|
|
2293
1918
|
|
|
2294
1919
|
template <class Iter, class NodeType> struct insert_return_type_set
|
|
2295
1920
|
{
|
|
2296
|
-
private:
|
|
2297
|
-
BOOST_MOVABLE_BUT_NOT_COPYABLE(insert_return_type_set)
|
|
2298
|
-
|
|
2299
|
-
// typedef typename boost::unordered::detail::rebind_wrap<A, T>::type
|
|
2300
|
-
// value_allocator;
|
|
2301
|
-
// typedef N node_;
|
|
2302
|
-
|
|
2303
1921
|
public:
|
|
2304
1922
|
Iter position;
|
|
2305
1923
|
bool inserted;
|
|
2306
1924
|
NodeType node;
|
|
2307
1925
|
|
|
2308
1926
|
insert_return_type_set() : position(), inserted(false), node() {}
|
|
1927
|
+
insert_return_type_set(insert_return_type_set const&) = delete;
|
|
1928
|
+
insert_return_type_set& operator=(insert_return_type_set const&) = delete;
|
|
2309
1929
|
|
|
2310
|
-
insert_return_type_set(
|
|
2311
|
-
|
|
2312
|
-
|
|
2313
|
-
|
|
1930
|
+
insert_return_type_set(insert_return_type_set&& x) noexcept
|
|
1931
|
+
: position(x.position),
|
|
1932
|
+
inserted(x.inserted),
|
|
1933
|
+
node(std::move(x.node))
|
|
2314
1934
|
{
|
|
2315
1935
|
}
|
|
2316
1936
|
|
|
2317
|
-
insert_return_type_set& operator=(
|
|
1937
|
+
insert_return_type_set& operator=(insert_return_type_set&& x)
|
|
2318
1938
|
{
|
|
2319
1939
|
inserted = x.inserted;
|
|
2320
1940
|
position = x.position;
|
|
2321
|
-
node =
|
|
1941
|
+
node = std::move(x.node);
|
|
2322
1942
|
return *this;
|
|
2323
1943
|
}
|
|
2324
1944
|
};
|
|
2325
1945
|
|
|
2326
1946
|
template <class Iter, class NodeType>
|
|
2327
|
-
void swap(
|
|
2328
|
-
insert_return_type_set<Iter, NodeType>&
|
|
1947
|
+
void swap(insert_return_type_set<Iter, NodeType>& x,
|
|
1948
|
+
insert_return_type_set<Iter, NodeType>& y)
|
|
2329
1949
|
{
|
|
2330
|
-
boost::
|
|
2331
|
-
boost::
|
|
2332
|
-
boost::
|
|
1950
|
+
boost::core::invoke_swap(x.node, y.node);
|
|
1951
|
+
boost::core::invoke_swap(x.inserted, y.inserted);
|
|
1952
|
+
boost::core::invoke_swap(x.position, y.position);
|
|
2333
1953
|
}
|
|
2334
1954
|
} // namespace unordered
|
|
1955
|
+
|
|
1956
|
+
namespace serialization {
|
|
1957
|
+
template <class K, class H, class P, class A>
|
|
1958
|
+
struct version<boost::unordered_set<K, H, P, A> >
|
|
1959
|
+
{
|
|
1960
|
+
BOOST_STATIC_CONSTANT(int, value = 1);
|
|
1961
|
+
};
|
|
1962
|
+
|
|
1963
|
+
template <class K, class H, class P, class A>
|
|
1964
|
+
struct version<boost::unordered_multiset<K, H, P, A> >
|
|
1965
|
+
{
|
|
1966
|
+
BOOST_STATIC_CONSTANT(int, value = 1);
|
|
1967
|
+
};
|
|
1968
|
+
} // namespace serialization
|
|
1969
|
+
|
|
2335
1970
|
} // namespace boost
|
|
2336
1971
|
|
|
2337
1972
|
#if defined(BOOST_MSVC)
|