passenger 6.0.20 → 6.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG +41 -1
- data/CONTRIBUTORS +2 -0
- data/README.md +2 -2
- data/bin/passenger-install-nginx-module +4 -4
- data/build/support/cxx_dependency_map.rb +155 -54
- data/dev/copy_boost_headers +21 -7
- data/dev/nginx_version_sha256 +72 -0
- data/src/agent/AgentMain.cpp +2 -8
- data/src/agent/Core/AdminPanelConnector.h +2 -3
- data/src/agent/Core/ApiServer.h +1 -1
- data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +8 -1
- data/src/agent/Core/Config.h +6 -3
- data/src/agent/Core/Controller/AppResponse.h +0 -1
- data/src/agent/Core/Controller/Config.h +2 -2
- data/src/agent/Core/Controller/SendRequest.cpp +2 -2
- data/src/agent/Core/CoreMain.cpp +1 -0
- data/src/agent/Core/ResponseCache.h +3 -2
- data/src/agent/Core/SecurityUpdateChecker.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/Perform.h +4 -4
- data/src/agent/Core/SpawningKit/UserSwitchingRules.h +2 -2
- data/src/agent/ExecHelper/ExecHelperMain.cpp +10 -12
- data/src/agent/FileReadHelper/FileReadHelperMain.cpp +7 -10
- data/src/agent/MainFunctions.h +38 -0
- data/src/agent/Shared/ApiServerUtils.h +3 -2
- data/src/agent/Shared/Fundamentals/Initialization.cpp +1 -1
- data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +2 -3
- data/src/agent/SystemMetrics/SystemMetricsMain.cpp +1 -0
- data/src/agent/TempDirToucher/TempDirToucherMain.cpp +6 -4
- data/src/agent/Watchdog/ApiServer.h +1 -1
- data/src/agent/Watchdog/Config.h +1 -1
- data/src/agent/Watchdog/WatchdogMain.cpp +5 -12
- data/src/apache2_module/Hooks.cpp +26 -1
- data/src/cxx_supportlib/ConfigKit/Common.h +1 -1
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/DataStructures/StringKeyTable.h +1 -1
- data/src/cxx_supportlib/FileTools/PathManip.cpp +10 -1
- data/src/cxx_supportlib/IOTools/IOUtils.cpp +2 -6
- data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +3 -3
- data/src/cxx_supportlib/JsonTools/CBindings.cpp +0 -2
- data/src/cxx_supportlib/JsonTools/JsonUtils.h +4 -4
- data/src/cxx_supportlib/LoggingKit/Context.h +16 -21
- data/src/cxx_supportlib/LoggingKit/Forward.h +0 -2
- data/src/cxx_supportlib/LoggingKit/Implementation.cpp +36 -72
- data/src/cxx_supportlib/MemoryKit/mbuf.cpp +12 -4
- data/src/cxx_supportlib/MemoryKit/mbuf.h +1 -1
- data/src/cxx_supportlib/ProcessManagement/Utils.cpp +1 -1
- data/src/cxx_supportlib/ResourceLocator.h +1 -1
- data/src/cxx_supportlib/SecurityKit/Crypto.cpp +3 -94
- data/src/cxx_supportlib/SecurityKit/Crypto.h +0 -8
- data/src/cxx_supportlib/ServerKit/Context.h +6 -0
- data/src/cxx_supportlib/ServerKit/Errors.h +3 -2
- data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +96 -64
- data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +4 -1
- data/src/cxx_supportlib/ServerKit/HttpRequest.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpServer.h +3 -2
- data/src/cxx_supportlib/ServerKit/llerrors.h +84 -0
- data/src/cxx_supportlib/ServerKit/llhttp.c +10168 -0
- data/src/cxx_supportlib/ServerKit/llhttp.h +903 -0
- data/src/cxx_supportlib/ServerKit/llhttp_api.c +510 -0
- data/src/cxx_supportlib/ServerKit/llhttp_http.c +170 -0
- data/src/cxx_supportlib/ServerKit/llversion.h +12 -0
- data/src/cxx_supportlib/ServerKit/url_parser.c +574 -0
- data/src/cxx_supportlib/ServerKit/url_parser.h +74 -0
- data/src/cxx_supportlib/StaticString.h +3 -1
- data/src/cxx_supportlib/StrIntTools/DateParsing.h +1 -1
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.cpp +12 -3
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.h +5 -0
- data/src/cxx_supportlib/SystemTools/SystemMetricsCollector.h +2 -2
- data/src/cxx_supportlib/SystemTools/UserDatabase.cpp +14 -14
- data/src/cxx_supportlib/SystemTools/UserDatabase.h +6 -10
- data/src/cxx_supportlib/Utils/AnsiColorConstants.h +11 -9
- data/src/cxx_supportlib/Utils.cpp +1 -1
- data/src/cxx_supportlib/oxt/implementation.cpp +1 -2
- data/src/cxx_supportlib/oxt/system_calls.cpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_executor.hpp +26 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_handler.hpp +61 -62
- data/src/cxx_supportlib/vendor-modified/boost/asio/any_io_executor.hpp +34 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/append.hpp +10 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/as_tuple.hpp +21 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_allocator.hpp +26 -45
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_cancellation_slot.hpp +26 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_executor.hpp +28 -46
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_immediate_executor.hpp +42 -59
- data/src/cxx_supportlib/vendor-modified/boost/asio/associator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +154 -883
- data/src/cxx_supportlib/vendor-modified/boost/asio/awaitable.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +64 -98
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +17 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_file.hpp +18 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_io_object.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_random_access_file.hpp +30 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +65 -96
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_readable_pipe.hpp +20 -29
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +36 -48
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_serial_port.hpp +31 -44
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_signal_set.hpp +19 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +34 -45
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +106 -153
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_iostream.hpp +6 -82
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_streambuf.hpp +6 -51
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_file.hpp +30 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +50 -76
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf.hpp +13 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +23 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_writable_pipe.hpp +20 -29
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_allocator.hpp +75 -294
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +75 -283
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +89 -288
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_immediate_executor.hpp +73 -275
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +170 -328
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer_registration.hpp +29 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream.hpp +26 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream.hpp +32 -48
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream.hpp +26 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffers_iterator.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_signal.hpp +25 -85
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_state.hpp +16 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_type.hpp +8 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/co_spawn.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/completion_condition.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/compose.hpp +53 -272
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +52 -79
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/consign.hpp +11 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/coroutine.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/deadline_timer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/defer.hpp +22 -26
- data/src/cxx_supportlib/vendor-modified/boost/asio/deferred.hpp +188 -275
- data/src/cxx_supportlib/vendor-modified/boost/asio/detached.hpp +12 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array.hpp +2 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array_fwd.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/assert.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/atomic_count.hpp +5 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_cancellation_state.hpp +21 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_completion_cond.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bind_handler.hpp +129 -563
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/blocking_executor_op.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffer_resize_guard.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffer_sequence_adapter.hpp +3 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffered_stream_storage.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/call_stack.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono.hpp +2 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono_time_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/completion_handler.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/composed_work.hpp +21 -97
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/concurrency_hint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_event.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +91 -975
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/consuming_buffers.hpp +3 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstddef.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstdint.hpp +2 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/date_time_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/deadline_timer_service.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dependent_type.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_ops.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_read_op.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_write_op.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dev_poll_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/epoll_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/event.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/eventfd_select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/exception.hpp +2 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_function.hpp +8 -60
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_op.hpp +5 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/fd_set_adapter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/fenced_block.hpp +3 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/functional.hpp +1 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/future.hpp +9 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/global.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +41 -104
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_cont_helpers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_tracking.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_type_requirements.hpp +9 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_work.hpp +73 -127
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/hash_map.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/buffer_sequence_adapter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/descriptor_ops.ipp +32 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/eventfd_select_interrupter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/handler_tracking.ipp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_descriptor_service.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_file_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_socket_service_base.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/null_event.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/pipe_select_interrupter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_event.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_mutex.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_serial_port_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_thread.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_tss_ptr.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_descriptor_service.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_socket_service_base.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/resolver_service_base.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/scheduler.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/signal_set_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +63 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_select_interrupter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.hpp +47 -68
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/thread_context.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/throw_error.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_ptime.ipp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_set.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_defer.hpp +56 -101
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_dispatch.hpp +56 -92
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_post.hpp +56 -101
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_control.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_object_impl.hpp +6 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_at_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_service.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_at_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_file_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_null_buffers_op.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_operation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_accept_op.hpp +7 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_connect_op.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recv_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvfrom_op.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvmsg_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_send_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_sendto_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_service.hpp +11 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_service_base.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_wait_op.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_buffer_sequence.hpp +7 -49
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/keyword_tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/kqueue_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/limits.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/local_free_on_block_exit.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +12 -44
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/mutex.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/non_const_lvalue.hpp +4 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/noncopyable.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_event.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_fenced_block.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_global.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_signal_blocker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_socket_service.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_static_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_thread.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/object_pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/op_queue.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/operation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pipe_select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pop_options.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_event.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_fd_set_adapter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_global.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_serial_port_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_signal_blocker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_static_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_thread.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/push_options.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_descriptor_service.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_null_buffers_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_accept_op.hpp +11 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_connect_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recv_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvfrom_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvmsg_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_send_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_sendto_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +11 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_wait_op.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op_queue.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/recycling_allocator.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/regex_fwd.hpp +4 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_endpoint_op.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_query_op.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_operation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_task.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_thread_info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scoped_lock.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scoped_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_reactor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/service_registry.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_blocker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_handler.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_init.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_set_service.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_holder.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_ops.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_option.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_types.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/source_location.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/static_mutex.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_event.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_fenced_block.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_global.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_mutex.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_static_mutex.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_thread.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_executor_service.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/string_view.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_group.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_info_base.hpp +12 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/throw_error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/throw_exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_ptime.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_set.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/type_traits.hpp +104 -90
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/utility.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_handler.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/winsock_init.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/work_dispatcher.hpp +20 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wrapped_handler.hpp +7 -117
- data/src/cxx_supportlib/vendor-modified/boost/asio/dispatch.hpp +21 -26
- data/src/cxx_supportlib/vendor-modified/boost/asio/error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/allocator.hpp +34 -112
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/any_executor.hpp +229 -1019
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bad_executor.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking.hpp +296 -536
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking_adaptation.hpp +232 -409
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context.hpp +20 -73
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context_as.hpp +30 -72
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/executor.hpp +24 -170
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/impl/bad_executor.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/invocable_archetype.hpp +2 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/mapping.hpp +240 -398
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/occupancy.hpp +20 -73
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/outstanding_work.hpp +149 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/prefer_only.hpp +56 -59
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/relationship.hpp +149 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution.hpp +1 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution_context.hpp +1 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/executor.hpp +59 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/executor_work_guard.hpp +56 -61
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/append.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_single.hpp +20 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_tuple.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/awaitable_operators.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_channel.hpp +55 -33
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_concurrent_channel.hpp +55 -33
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/cancellation_condition.hpp +25 -28
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_traits.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_composed.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/concurrent_channel.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/deferred.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_handler.hpp +10 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_message.hpp +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_operation.hpp +130 -53
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_payload.hpp +92 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_receive_op.hpp +15 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_functions.hpp +73 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_op.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_service.hpp +48 -48
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/has_signature.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/impl/channel_service.hpp +39 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +33 -96
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/channel_error.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/co_composed.hpp +16 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/coro.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/parallel_group.hpp +56 -60
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/promise.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_promise.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +27 -31
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/prepend.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +14 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_promise.hpp +11 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/file_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/basic_endpoint.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/datagram_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail/endpoint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail/impl/endpoint.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/raw_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/seq_packet_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/stream_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_continuation_hook.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/high_resolution_timer.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_completion_executor.ipp +10 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_io_executor.ipp +10 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/append.hpp +37 -100
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/as_tuple.hpp +62 -137
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/awaitable.hpp +22 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_read_stream.hpp +55 -178
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_write_stream.hpp +55 -178
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancellation_signal.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +44 -36
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +84 -234
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect_pipe.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/consign.hpp +32 -97
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/deferred.hpp +32 -41
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/detached.hpp +5 -58
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/error.ipp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.hpp +3 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.hpp +60 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.hpp +39 -56
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/multiple_exceptions.ipp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/prepend.hpp +36 -98
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +206 -429
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +60 -206
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +456 -970
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +36 -420
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/serial_port_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/serial_port_base.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +205 -421
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/src.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_executor.hpp +19 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.hpp +32 -109
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_awaitable.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_future.hpp +77 -423
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +213 -427
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +58 -194
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context.hpp +91 -120
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context_strand.hpp +33 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_service_strand.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address.hpp +26 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4.hpp +25 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_iterator.hpp +13 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_range.hpp +16 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6.hpp +33 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_iterator.hpp +13 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_range.hpp +15 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/bad_address_cast.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_endpoint.hpp +26 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +46 -76
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_entry.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_iterator.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_query.hpp +17 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_results.hpp +9 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/endpoint.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/impl/endpoint.ipp +10 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/socket_option.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/host_name.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/icmp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.ipp +18 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.ipp +9 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.ipp +24 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/basic_endpoint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/host_name.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/multicast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v4.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v6.hpp +14 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_query_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/tcp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/udp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/unicast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/v6_only.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_applicable_property.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_contiguous_iterator.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_read_buffered.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_write_buffered.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/basic_endpoint.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/connect_pair.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/datagram_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/endpoint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/impl/endpoint.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/seq_packet_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/stream_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/multiple_exceptions.hpp +3 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/packaged_task.hpp +1 -61
- data/src/cxx_supportlib/vendor-modified/boost/asio/placeholders.hpp +29 -105
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +21 -29
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +24 -34
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/stream_descriptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/post.hpp +21 -26
- data/src/cxx_supportlib/vendor-modified/boost/asio/prefer.hpp +176 -333
- data/src/cxx_supportlib/vendor-modified/boost/asio/prepend.hpp +11 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/query.hpp +57 -70
- data/src/cxx_supportlib/vendor-modified/boost/asio/random_access_file.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +136 -168
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +35 -52
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +256 -298
- data/src/cxx_supportlib/vendor-modified/boost/asio/readable_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/recycling_allocator.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/redirect_error.hpp +7 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/registered_buffer.hpp +35 -47
- data/src/cxx_supportlib/vendor-modified/boost/asio/require.hpp +108 -246
- data/src/cxx_supportlib/vendor-modified/boost/asio/require_concept.hpp +70 -79
- data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set_base.hpp +10 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/socket_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/spawn.hpp +127 -161
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/buffered_handshake_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/engine.hpp +3 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/handshake_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/engine.ipp +3 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/openssl_init.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/io.hpp +16 -75
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_init.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_types.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/password_callback.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/read_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/shutdown_op.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/stream_core.hpp +15 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/verify_callback.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/write_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/host_name_verification.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/error.ipp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/host_name_verification.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/rfc2818_verification.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/src.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/rfc2818_verification.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +51 -82
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_mode.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/static_thread_pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/steady_timer.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/strand.hpp +91 -118
- data/src/cxx_supportlib/vendor-modified/boost/asio/stream_file.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/streambuf.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_context.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_executor.hpp +62 -62
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_timer.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/this_coro.hpp +35 -48
- data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +91 -273
- data/src/cxx_supportlib/vendor-modified/boost/asio/time_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/equality_comparable.hpp +14 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/execute_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/prefer_free.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/prefer_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_free.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_static_constexpr_member.hpp +15 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_concept_free.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_concept_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_free.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_member.hpp +16 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_query.hpp +20 -26
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_require.hpp +22 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_require_concept.hpp +22 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/buffer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/internet.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/io_context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/net.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/netfwd.hpp +6 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/socket.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/timer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/unyield.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_awaitable.hpp +15 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +8 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/uses_executor.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/wait_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/writable_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +122 -146
- data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +34 -50
- data/src/cxx_supportlib/vendor-modified/boost/asio/yield.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +1 -27
- data/src/cxx_supportlib/vendor-modified/boost/assert/source_location.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_ref.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_ref_impl.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_operations_emulated.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_emulated.hpp +7 -8
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_emulated.hpp +26 -27
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/float_sizes.hpp +122 -35
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_emulated.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/pause.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_on_address.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_emulated.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_ref.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/bind/apply.hpp +2 -61
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +229 -1740
- data/src/cxx_supportlib/vendor-modified/boost/bind/{bind_cc.hpp → detail/bind_cc.hpp} +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/bind_mf2_cc.hpp +210 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/bind_mf_cc.hpp +405 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/integer_sequence.hpp +111 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/tuple_for_each.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn.hpp +138 -289
- data/src/cxx_supportlib/vendor-modified/boost/bind/placeholders.hpp +3 -16
- data/src/cxx_supportlib/vendor-modified/boost/bind/protect.hpp +0 -280
- data/src/cxx_supportlib/vendor-modified/boost/bind/std_placeholders.hpp +0 -7
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/is_evenly_divisible_by.hpp +1 -7
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/requires_cxx11.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/chrono/duration.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_units.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/chrono/system_clocks.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx03.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx11.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx14.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx17.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx20.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx23.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/borland.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang_version.hpp +8 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/codegear.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/digitalmars.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc_xml.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/hp_acc.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/metrowerks.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/mpw.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/nvcc.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pathscale.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/vacpp.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp_zos.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/cxx_composite.hpp +16 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/suffix.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +6 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +18 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +27 -29
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +112 -112
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +40 -40
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocator_version_traits.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +30 -25
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/destroyers.hpp +48 -48
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +129 -129
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +162 -163
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/next_capacity.hpp +6 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +32 -32
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +18 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/transform_iterator.hpp +28 -28
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +77 -77
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/value_init.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +44 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +78 -78
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +231 -231
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +85 -85
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +33 -33
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +107 -109
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +9 -11
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +10 -11
- data/src/cxx_supportlib/vendor-modified/boost/container/node_handle.hpp +18 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +80 -80
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +81 -81
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +115 -109
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +101 -101
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +32 -32
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +150 -190
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +165 -165
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_integral.hpp +146 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_mix.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_range.hpp +84 -86
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_tuple_like.hpp +5 -99
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/mulx.hpp +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +25 -126
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_contiguous_range.hpp +27 -21
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_described_class.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_range.hpp +8 -41
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_tuple_like.hpp +4 -10
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_unordered_range.hpp +6 -7
- data/src/cxx_supportlib/vendor-modified/boost/core/allocator_access.hpp +20 -6
- data/src/cxx_supportlib/vendor-modified/boost/core/bit.hpp +19 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/checked_delete.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_pause.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/fclose_deleter.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/functor.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/invoke_swap.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/launder.hpp +17 -3
- data/src/cxx_supportlib/vendor-modified/boost/core/null_deleter.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/swap.hpp +6 -55
- data/src/cxx_supportlib/vendor-modified/boost/detail/basic_pointerbuf.hpp +3 -6
- data/src/cxx_supportlib/vendor-modified/boost/detail/lcast_precision.hpp +6 -97
- data/src/cxx_supportlib/vendor-modified/boost/exception/current_exception_cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/clone_current_exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/error_info_impl.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/exception_ptr.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/is_output_streamable.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/object_hex_dump.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/{ratio → exception}/detail/requires_cxx11.hpp +7 -5
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/type_info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/diagnostic_information.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/get_error_info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/to_string.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/to_string_stub.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/function/function0.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function1.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function10.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function2.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function3.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function4.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function5.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function6.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function7.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function8.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function9.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +21 -166
- data/src/cxx_supportlib/vendor-modified/boost/function/function_fwd.hpp +36 -41
- data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +267 -418
- data/src/cxx_supportlib/vendor-modified/boost/function/function_typeof.hpp +1 -31
- data/src/cxx_supportlib/vendor-modified/boost/function.hpp +5 -63
- data/src/cxx_supportlib/vendor-modified/boost/integer/extended_euclidean.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avl_set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bs_set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +65 -66
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_slist_algorithms.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/common_slist_algorithms.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/default_header_holder.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/equal_to_value.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/exception_disposer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +14 -15
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash.hpp +277 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_combine.hpp +11 -49
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_integral.hpp +119 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_mix.hpp +130 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hashtable_node.hpp +41 -41
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hook_traits.hpp +14 -21
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iiterator.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iterator.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/key_nodeptr_comp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_iterator.hpp +19 -19
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/mpl.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_cloner_disposer.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/parent_from_member.hpp +6 -17
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/simple_disposers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/size_holder.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_iterator.hpp +20 -21
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/transform_iterator.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_iterator.hpp +21 -21
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_value_compare.hpp +28 -28
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +32 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +268 -239
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/linear_slist_algorithms.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +56 -57
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pack_options.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_traits.hpp +18 -18
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/priority_compare.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sg_set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree.hpp +14 -15
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +60 -61
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splay_set.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap.hpp +18 -19
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_set.hpp +36 -37
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +37 -34
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set_hook.hpp +11 -11
- data/src/cxx_supportlib/vendor-modified/boost/io/ios_state.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +7 -13
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +113 -131
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +611 -633
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +85 -79
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +25 -32
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +22 -29
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +21 -16
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +7 -9
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +22 -161
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +9 -30
- data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/chrono.cpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/process_cpu_clocks.cpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/thread_clock.cpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +24 -14
- data/src/cxx_supportlib/vendor-modified/boost/move/adl_move_swap.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_merge.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_sort.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +5 -19
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/basic_op.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/heap_sort.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/merge.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/predicate.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_to_raw_pointer.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/move_helpers.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/reverse_iterator.hpp +28 -28
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/to_raw_pointer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +67 -17
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +5 -2
- data/src/cxx_supportlib/vendor-modified/boost/move/iterator.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/move/unique_ptr.hpp +48 -48
- data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/bind.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_fold.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integer_sequence.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integral.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/list.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/none_t.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/old_optional_implementation.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/pool/pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/msvc.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/make.h +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/vms.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/has_opt.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/inversive_congruential.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/splitmix64.hpp +203 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/subtract_with_carry.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/random/uniform_real_distribution.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/random.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/config.hpp +4 -87
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/gcd_lcm.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/is_evenly_divisible_by.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/is_ratio.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/include.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio.hpp +5 -249
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio_fwd.hpp +30 -56
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio_io.hpp +0 -533
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/requires_cxx11.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_unique.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +1 -8
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/enable_if.hpp +3 -12
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +13 -57
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +5 -29
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.hpp +51 -124
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_condition.hpp +29 -52
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category_message.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/interop_category.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/is_same.hpp +3 -13
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/mutex.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/snprintf.hpp +1 -46
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_category.hpp +5 -9
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_category_impl.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_message.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/system/errc.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/system/system_error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/deque.hpp +1 -24
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/functional.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/list.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/allocator_arg.hpp +2 -12
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/allocator_traits.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/config.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/default_delete.hpp +0 -16
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/pointer_traits.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/scoped_allocator.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/shared_ptr.hpp +0 -19
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/unique_ptr.hpp +4 -6
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/queue.hpp +2 -26
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/tuple.hpp +1 -18
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/vector.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/invoke.hpp +11 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/string_to_unsigned.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/string_trim.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/externally_locked.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/futures/wait_for_any.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/synchronized_value.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/tuple/detail/tuple_basic.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/tuple/tuple.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_floating_point.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/decltype.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/typeof/incr_registration_group.hpp +1 -10
- data/src/cxx_supportlib/vendor-modified/boost/typeof/msvc/typeof_impl.hpp +5 -6
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/bitset.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/complex.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/deque.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/fstream.hpp +2 -15
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/functional.hpp +2 -54
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/iostream.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/istream.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/iterator.hpp +2 -46
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/list.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/locale.hpp +2 -29
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/map.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/memory.hpp +2 -12
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/ostream.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/queue.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/set.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/sstream.hpp +2 -19
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/stack.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/streambuf.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/string.hpp +2 -12
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/utility.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/valarray.hpp +2 -10
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/vector.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof.hpp +8 -203
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +145 -103
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map_fwd.hpp +1 -4
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +716 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set_fwd.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/allocator_constructed.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/archive_constructed.hpp +71 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/bad_archive_exception.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/concurrent_static_asserts.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +120 -85
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +531 -91
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +346 -194
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/element_type.hpp +10 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/flat_map_types.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_handle.hpp +2 -8
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_map_types.hpp +22 -15
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_set_types.hpp +10 -13
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/reentrancy_check.hpp +138 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +150 -55
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +346 -1039
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/map.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/narrow_cast.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/opt_storage.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/prime_fmod.hpp +95 -144
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialization_version.hpp +74 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_container.hpp +204 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_fca_container.hpp +156 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_tracked_address.hpp +104 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/static_assert.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/throw_exception.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/type_traits.hpp +123 -19
- data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +65 -46
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map_fwd.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +41 -23
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set_fwd.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +324 -997
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map_fwd.hpp +7 -12
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +57 -46
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map_fwd.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +35 -24
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set_fwd.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +229 -629
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set_fwd.hpp +8 -13
- data/src/cxx_supportlib/vendor-modified/boost/utility/swap.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/utility/value_init.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/jsoncpp/jsoncpp.cpp +2 -9
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/frame.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/processors/hybi13.hpp +14 -20
- data/src/helper-scripts/wsgi-loader.py +2 -2
- data/src/nginx_module/ConfigGeneral/ManifestGeneration.c +2 -2
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +16 -5
- data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/native_support.rb +10 -7
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +3 -7
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +14 -0
- data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +4 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/libs.rb +6 -6
- data/src/ruby_supportlib/phusion_passenger/platform_info/pcre.rb +11 -12
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/app.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +4 -0
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/lldb_controller.rb +5 -1
- data/src/ruby_supportlib/phusion_passenger.rb +8 -8
- metadata +50 -149
- data/src/cxx_supportlib/ServerKit/http_parser.cpp +0 -2575
- data/src/cxx_supportlib/ServerKit/http_parser.h +0 -452
- data/src/cxx_supportlib/vendor-modified/boost/array.hpp +0 -456
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bulk_executor_op.hpp +0 -91
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_arm_fenced_block.hpp +0 -93
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_hppa_fenced_block.hpp +0 -70
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_sync_fenced_block.hpp +0 -67
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_x86_fenced_block.hpp +0 -101
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_invoke_helpers.hpp +0 -80
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/macos_fenced_block.hpp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/old_win_sdk_compat.hpp +0 -216
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/solaris_fenced_block.hpp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/variadic_templates.hpp +0 -294
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_execute.hpp +0 -406
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_guarantee.hpp +0 -1254
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/connect.hpp +0 -498
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_invocable.hpp +0 -154
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_operation.hpp +0 -111
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_receiver.hpp +0 -130
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/bulk_sender.hpp +0 -263
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/submit_receiver.hpp +0 -235
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/void_receiver.hpp +0 -92
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/execute.hpp +0 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/impl/receiver_invocation_error.ipp +0 -38
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/operation_state.hpp +0 -101
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/receiver.hpp +0 -287
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/receiver_invocation_error.hpp +0 -50
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/schedule.hpp +0 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/scheduler.hpp +0 -93
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/sender.hpp +0 -318
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_done.hpp +0 -259
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_error.hpp +0 -259
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_value.hpp +0 -492
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/start.hpp +0 -256
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/submit.hpp +0 -459
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_alloc_hook.hpp +0 -106
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_invoke_hook.hpp +0 -113
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/handler_alloc_hook.ipp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/bulk_execute_free.hpp +0 -116
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/bulk_execute_member.hpp +0 -116
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/connect_free.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/connect_member.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/execute_free.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/schedule_free.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/schedule_member.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_done_free.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_done_member.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_error_free.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_error_member.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_value_free.hpp +0 -236
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_value_member.hpp +0 -236
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/start_free.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/start_member.hpp +0 -110
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/submit_free.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/submit_member.hpp +0 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_object_handle.hpp +0 -495
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_overlapped_handle.hpp +0 -462
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_random_access_handle.hpp +0 -581
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_stream_handle.hpp +0 -563
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/object_handle.hpp +0 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/overlapped_handle.hpp +0 -41
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/overlapped_ptr.hpp +0 -147
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/random_access_handle.hpp +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/stream_handle.hpp +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_windows.hpp +0 -201
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_windows.hpp +0 -67
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_caps_windows.hpp +0 -57
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_windows.hpp +0 -179
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_mf2_cc.hpp +0 -228
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_mf_cc.hpp +0 -441
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_template.hpp +0 -345
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/is_same.hpp +0 -36
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/requires_cxx11.hpp +0 -22
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_cc.hpp +0 -103
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_template.hpp +0 -1047
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_vw.hpp +0 -130
- data/src/cxx_supportlib/vendor-modified/boost/bind/storage.hpp +0 -476
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/cygwin.hpp +0 -71
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/requires_cxx11.hpp +0 -22
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_win32_sleep.hpp +0 -54
- data/src/cxx_supportlib/vendor-modified/boost/detail/atomic_count.hpp +0 -21
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/epilogue.hpp +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/function_iterate.hpp +0 -16
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/gen_maybe_include.pl +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/maybe_include.hpp +0 -369
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/prologue.hpp +0 -27
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/requires_cxx11.hpp +0 -22
- data/src/cxx_supportlib/vendor-modified/boost/function/gen_function_N.pl +0 -26
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash_fwd.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/abs.hpp +0 -89
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/gcd.hpp +0 -124
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/lcm.hpp +0 -126
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/sign.hpp +0 -89
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/overflow_helpers.hpp +0 -367
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/ratio_io.hpp +0 -1342
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/abs.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/arithmetic.hpp +0 -22
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/comparison.hpp +0 -19
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/divides.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/equal_to.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/gcd.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/greater.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/greater_equal.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/lcm.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/less.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/less_equal.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/minus.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/negate.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/not_equal_to.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/numeric_cast.hpp +0 -31
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/plus.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/rational_c_tag.hpp +0 -25
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/rational_constant.hpp +0 -15
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/sign.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/times.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/swap.hpp +0 -17
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/requires_cxx11.hpp +0 -21
- data/src/cxx_supportlib/vendor-modified/boost/typeof/detail/requires_cxx11.hpp +0 -18
- data/src/cxx_supportlib/vendor-modified/boost/typeof/dmc/typeof_impl.hpp +0 -100
- data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode.hpp +0 -58
- data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode_params.hpp +0 -34
- data/src/cxx_supportlib/vendor-modified/boost/typeof/int_encoding.hpp +0 -118
- data/src/cxx_supportlib/vendor-modified/boost/typeof/integral_template_param.hpp +0 -80
- data/src/cxx_supportlib/vendor-modified/boost/typeof/message.hpp +0 -8
- data/src/cxx_supportlib/vendor-modified/boost/typeof/modifiers.hpp +0 -121
- data/src/cxx_supportlib/vendor-modified/boost/typeof/native.hpp +0 -60
- data/src/cxx_supportlib/vendor-modified/boost/typeof/pointers_data_members.hpp +0 -38
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions.hpp +0 -50
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions_iterate.hpp +0 -135
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_fundamental.hpp +0 -61
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_mem_functions.hpp +0 -32
- data/src/cxx_supportlib/vendor-modified/boost/typeof/template_encoding.hpp +0 -160
- data/src/cxx_supportlib/vendor-modified/boost/typeof/template_template_param.hpp +0 -149
- data/src/cxx_supportlib/vendor-modified/boost/typeof/type_encoding.hpp +0 -27
- data/src/cxx_supportlib/vendor-modified/boost/typeof/type_template_param.hpp +0 -37
- data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof_impl.hpp +0 -187
- data/src/cxx_supportlib/vendor-modified/boost/typeof/unsupported.hpp +0 -29
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector.hpp +0 -166
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector100.hpp +0 -321
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector150.hpp +0 -471
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector200.hpp +0 -621
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector50.hpp +0 -171
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fwd.hpp +0 -150
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/requires_cxx11.hpp +0 -21
- /data/dev/{webpacketpp.patch → websocketpp.patch} +0 -0
|
@@ -1,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,16 +15,13 @@
|
|
|
15
15
|
#pragma once
|
|
16
16
|
#endif
|
|
17
17
|
|
|
18
|
-
#include <boost/unordered/detail/
|
|
19
|
-
#include <boost/core/explicit_operator_bool.hpp>
|
|
20
|
-
#include <boost/functional/hash.hpp>
|
|
21
|
-
#include <boost/move/move.hpp>
|
|
18
|
+
#include <boost/unordered/detail/serialize_fca_container.hpp>
|
|
22
19
|
#include <boost/unordered/detail/set.hpp>
|
|
23
20
|
#include <boost/unordered/detail/type_traits.hpp>
|
|
24
21
|
|
|
25
|
-
#
|
|
22
|
+
#include <boost/container_hash/hash.hpp>
|
|
23
|
+
|
|
26
24
|
#include <initializer_list>
|
|
27
|
-
#endif
|
|
28
25
|
|
|
29
26
|
#if defined(BOOST_MSVC)
|
|
30
27
|
#pragma warning(push)
|
|
@@ -41,9 +38,6 @@ namespace boost {
|
|
|
41
38
|
namespace unordered {
|
|
42
39
|
template <class T, class H, class P, class A> class unordered_set
|
|
43
40
|
{
|
|
44
|
-
#if defined(BOOST_UNORDERED_USE_MOVE)
|
|
45
|
-
BOOST_COPYABLE_AND_MOVABLE(unordered_set)
|
|
46
|
-
#endif
|
|
47
41
|
template <typename, typename, typename, typename>
|
|
48
42
|
friend class unordered_multiset;
|
|
49
43
|
|
|
@@ -96,28 +90,23 @@ namespace boost {
|
|
|
96
90
|
|
|
97
91
|
unordered_set(unordered_set const&);
|
|
98
92
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
unordered_set(BOOST_RV_REF(unordered_set) other)
|
|
102
|
-
BOOST_NOEXCEPT_IF(table::nothrow_move_constructible)
|
|
93
|
+
unordered_set(unordered_set&& other)
|
|
94
|
+
noexcept(table::nothrow_move_constructible)
|
|
103
95
|
: table_(other.table_, boost::unordered::detail::move_tag())
|
|
104
96
|
{
|
|
105
97
|
// The move is done in table_
|
|
106
98
|
}
|
|
107
|
-
#endif
|
|
108
99
|
|
|
109
100
|
explicit unordered_set(allocator_type const&);
|
|
110
101
|
|
|
111
102
|
unordered_set(unordered_set const&, allocator_type const&);
|
|
112
103
|
|
|
113
|
-
unordered_set(
|
|
104
|
+
unordered_set(unordered_set&&, allocator_type const&);
|
|
114
105
|
|
|
115
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
116
106
|
unordered_set(std::initializer_list<value_type>,
|
|
117
107
|
size_type = boost::unordered::detail::default_bucket_count,
|
|
118
108
|
const hasher& = hasher(), const key_equal& l = key_equal(),
|
|
119
109
|
const allocator_type& = allocator_type());
|
|
120
|
-
#endif
|
|
121
110
|
|
|
122
111
|
explicit unordered_set(size_type, const allocator_type&);
|
|
123
112
|
|
|
@@ -133,7 +122,6 @@ namespace boost {
|
|
|
133
122
|
unordered_set(
|
|
134
123
|
InputIt, InputIt, size_type, const hasher&, const allocator_type&);
|
|
135
124
|
|
|
136
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
137
125
|
unordered_set(std::initializer_list<value_type>, const allocator_type&);
|
|
138
126
|
|
|
139
127
|
unordered_set(
|
|
@@ -141,263 +129,100 @@ namespace boost {
|
|
|
141
129
|
|
|
142
130
|
unordered_set(std::initializer_list<value_type>, size_type, const hasher&,
|
|
143
131
|
const allocator_type&);
|
|
144
|
-
#endif
|
|
145
132
|
|
|
146
133
|
// Destructor
|
|
147
134
|
|
|
148
|
-
~unordered_set()
|
|
135
|
+
~unordered_set() noexcept;
|
|
149
136
|
|
|
150
|
-
// Assign
|
|
137
|
+
// Assign
|
|
151
138
|
|
|
152
|
-
#if defined(BOOST_UNORDERED_USE_MOVE)
|
|
153
|
-
unordered_set& operator=(BOOST_COPY_ASSIGN_REF(unordered_set) x)
|
|
154
|
-
{
|
|
155
|
-
table_.assign(x.table_, boost::unordered::detail::true_type());
|
|
156
|
-
return *this;
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
unordered_set& operator=(BOOST_RV_REF(unordered_set) x)
|
|
160
|
-
BOOST_NOEXCEPT_IF(value_allocator_traits::is_always_equal::value&&
|
|
161
|
-
boost::is_nothrow_move_assignable<H>::value&&
|
|
162
|
-
boost::is_nothrow_move_assignable<P>::value)
|
|
163
|
-
{
|
|
164
|
-
table_.move_assign(x.table_, boost::unordered::detail::true_type());
|
|
165
|
-
return *this;
|
|
166
|
-
}
|
|
167
|
-
#else
|
|
168
139
|
unordered_set& operator=(unordered_set const& x)
|
|
169
140
|
{
|
|
170
|
-
table_.assign(x.table_,
|
|
141
|
+
table_.assign(x.table_, std::true_type());
|
|
171
142
|
return *this;
|
|
172
143
|
}
|
|
173
144
|
|
|
174
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
175
145
|
unordered_set& operator=(unordered_set&& x)
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
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)
|
|
179
149
|
{
|
|
180
|
-
table_.move_assign(x.table_,
|
|
150
|
+
table_.move_assign(x.table_, std::true_type());
|
|
181
151
|
return *this;
|
|
182
152
|
}
|
|
183
|
-
#endif
|
|
184
|
-
#endif
|
|
185
153
|
|
|
186
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
187
154
|
unordered_set& operator=(std::initializer_list<value_type>);
|
|
188
|
-
#endif
|
|
189
155
|
|
|
190
|
-
allocator_type get_allocator() const
|
|
156
|
+
allocator_type get_allocator() const noexcept
|
|
191
157
|
{
|
|
192
|
-
return table_.node_alloc();
|
|
158
|
+
return allocator_type(table_.node_alloc());
|
|
193
159
|
}
|
|
194
160
|
|
|
195
161
|
// iterators
|
|
196
162
|
|
|
197
|
-
iterator begin()
|
|
163
|
+
iterator begin() noexcept { return iterator(table_.begin()); }
|
|
198
164
|
|
|
199
|
-
const_iterator begin() const
|
|
165
|
+
const_iterator begin() const noexcept
|
|
200
166
|
{
|
|
201
167
|
return const_iterator(table_.begin());
|
|
202
168
|
}
|
|
203
169
|
|
|
204
|
-
iterator end()
|
|
170
|
+
iterator end() noexcept { return iterator(); }
|
|
205
171
|
|
|
206
|
-
const_iterator end() const
|
|
172
|
+
const_iterator end() const noexcept { return const_iterator(); }
|
|
207
173
|
|
|
208
|
-
const_iterator cbegin() const
|
|
174
|
+
const_iterator cbegin() const noexcept
|
|
209
175
|
{
|
|
210
176
|
return const_iterator(table_.begin());
|
|
211
177
|
}
|
|
212
178
|
|
|
213
|
-
const_iterator cend() const
|
|
179
|
+
const_iterator cend() const noexcept { return const_iterator(); }
|
|
214
180
|
|
|
215
181
|
// size and capacity
|
|
216
182
|
|
|
217
|
-
BOOST_ATTRIBUTE_NODISCARD bool empty() const
|
|
183
|
+
BOOST_ATTRIBUTE_NODISCARD bool empty() const noexcept
|
|
218
184
|
{
|
|
219
185
|
return table_.size_ == 0;
|
|
220
186
|
}
|
|
221
187
|
|
|
222
|
-
size_type size() const
|
|
223
|
-
|
|
224
|
-
size_type max_size() const BOOST_NOEXCEPT;
|
|
225
|
-
|
|
226
|
-
// emplace
|
|
227
|
-
|
|
228
|
-
#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
|
229
|
-
|
|
230
|
-
template <class... Args>
|
|
231
|
-
std::pair<iterator, bool> emplace(BOOST_FWD_REF(Args)... args)
|
|
232
|
-
{
|
|
233
|
-
return table_.emplace_unique(
|
|
234
|
-
table::extractor::extract(boost::forward<Args>(args)...),
|
|
235
|
-
boost::forward<Args>(args)...);
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
#else
|
|
188
|
+
size_type size() const noexcept { return table_.size_; }
|
|
239
189
|
|
|
240
|
-
|
|
190
|
+
size_type max_size() const noexcept;
|
|
241
191
|
|
|
242
|
-
//
|
|
243
|
-
// the container is instantiated with a value type that
|
|
244
|
-
// doesn't have a default constructor.
|
|
192
|
+
// emplace
|
|
245
193
|
|
|
246
|
-
std::pair<iterator, bool> emplace(
|
|
247
|
-
boost::unordered::detail::empty_emplace =
|
|
248
|
-
boost::unordered::detail::empty_emplace(),
|
|
249
|
-
value_type v = value_type())
|
|
250
|
-
{
|
|
251
|
-
return this->emplace(boost::move(v));
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
#endif
|
|
255
|
-
|
|
256
|
-
template <typename A0>
|
|
257
|
-
std::pair<iterator, bool> emplace(BOOST_FWD_REF(A0) a0)
|
|
258
|
-
{
|
|
259
|
-
return table_.emplace_unique(
|
|
260
|
-
table::extractor::extract(boost::forward<A0>(a0)),
|
|
261
|
-
boost::unordered::detail::create_emplace_args(
|
|
262
|
-
boost::forward<A0>(a0)));
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
template <typename A0, typename A1>
|
|
266
|
-
std::pair<iterator, bool> emplace(
|
|
267
|
-
BOOST_FWD_REF(A0) a0, BOOST_FWD_REF(A1) a1)
|
|
268
|
-
{
|
|
269
|
-
return table_.emplace_unique(
|
|
270
|
-
table::extractor::extract(
|
|
271
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)),
|
|
272
|
-
boost::unordered::detail::create_emplace_args(
|
|
273
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)));
|
|
274
|
-
}
|
|
275
|
-
|
|
276
|
-
template <typename A0, typename A1, typename A2>
|
|
277
|
-
std::pair<iterator, bool> emplace(
|
|
278
|
-
BOOST_FWD_REF(A0) a0, BOOST_FWD_REF(A1) a1, BOOST_FWD_REF(A2) a2)
|
|
194
|
+
template <class... Args> std::pair<iterator, bool> emplace(Args&&... args)
|
|
279
195
|
{
|
|
280
196
|
return table_.emplace_unique(
|
|
281
|
-
table::extractor::extract(
|
|
282
|
-
|
|
283
|
-
boost::unordered::detail::create_emplace_args(boost::forward<A0>(a0),
|
|
284
|
-
boost::forward<A1>(a1), boost::forward<A2>(a2)));
|
|
197
|
+
table::extractor::extract(std::forward<Args>(args)...),
|
|
198
|
+
std::forward<Args>(args)...);
|
|
285
199
|
}
|
|
286
200
|
|
|
287
|
-
#endif
|
|
288
|
-
|
|
289
|
-
#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
|
290
|
-
|
|
291
201
|
template <class... Args>
|
|
292
|
-
iterator emplace_hint(const_iterator hint,
|
|
202
|
+
iterator emplace_hint(const_iterator hint, Args&&... args)
|
|
293
203
|
{
|
|
294
204
|
return table_.emplace_hint_unique(hint,
|
|
295
|
-
table::extractor::extract(
|
|
296
|
-
|
|
205
|
+
table::extractor::extract(std::forward<Args>(args)...),
|
|
206
|
+
std::forward<Args>(args)...);
|
|
297
207
|
}
|
|
298
208
|
|
|
299
|
-
#else
|
|
300
|
-
|
|
301
|
-
#if !BOOST_UNORDERED_SUN_WORKAROUNDS1
|
|
302
|
-
|
|
303
|
-
iterator emplace_hint(const_iterator hint,
|
|
304
|
-
boost::unordered::detail::empty_emplace =
|
|
305
|
-
boost::unordered::detail::empty_emplace(),
|
|
306
|
-
value_type v = value_type())
|
|
307
|
-
{
|
|
308
|
-
return this->emplace_hint(hint, boost::move(v));
|
|
309
|
-
}
|
|
310
|
-
|
|
311
|
-
#endif
|
|
312
|
-
|
|
313
|
-
template <typename A0>
|
|
314
|
-
iterator emplace_hint(const_iterator hint, BOOST_FWD_REF(A0) a0)
|
|
315
|
-
{
|
|
316
|
-
return table_.emplace_hint_unique(hint,
|
|
317
|
-
table::extractor::extract(boost::forward<A0>(a0)),
|
|
318
|
-
boost::unordered::detail::create_emplace_args(
|
|
319
|
-
boost::forward<A0>(a0)));
|
|
320
|
-
}
|
|
321
|
-
|
|
322
|
-
template <typename A0, typename A1>
|
|
323
|
-
iterator emplace_hint(
|
|
324
|
-
const_iterator hint, BOOST_FWD_REF(A0) a0, BOOST_FWD_REF(A1) a1)
|
|
325
|
-
{
|
|
326
|
-
return table_.emplace_hint_unique(hint,
|
|
327
|
-
table::extractor::extract(
|
|
328
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)),
|
|
329
|
-
boost::unordered::detail::create_emplace_args(
|
|
330
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)));
|
|
331
|
-
}
|
|
332
|
-
|
|
333
|
-
template <typename A0, typename A1, typename A2>
|
|
334
|
-
iterator emplace_hint(const_iterator hint, BOOST_FWD_REF(A0) a0,
|
|
335
|
-
BOOST_FWD_REF(A1) a1, BOOST_FWD_REF(A2) a2)
|
|
336
|
-
{
|
|
337
|
-
return table_.emplace_hint_unique(hint,
|
|
338
|
-
table::extractor::extract(
|
|
339
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)),
|
|
340
|
-
boost::unordered::detail::create_emplace_args(boost::forward<A0>(a0),
|
|
341
|
-
boost::forward<A1>(a1), boost::forward<A2>(a2)));
|
|
342
|
-
}
|
|
343
|
-
|
|
344
|
-
#endif
|
|
345
|
-
|
|
346
|
-
#if defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
|
347
|
-
|
|
348
|
-
#define BOOST_UNORDERED_EMPLACE(z, n, _) \
|
|
349
|
-
template <BOOST_PP_ENUM_PARAMS_Z(z, n, typename A)> \
|
|
350
|
-
std::pair<iterator, bool> emplace( \
|
|
351
|
-
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_FWD_PARAM, a)) \
|
|
352
|
-
{ \
|
|
353
|
-
return table_.emplace_unique( \
|
|
354
|
-
table::extractor::extract( \
|
|
355
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)), \
|
|
356
|
-
boost::unordered::detail::create_emplace_args( \
|
|
357
|
-
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_CALL_FORWARD, a))); \
|
|
358
|
-
} \
|
|
359
|
-
\
|
|
360
|
-
template <BOOST_PP_ENUM_PARAMS_Z(z, n, typename A)> \
|
|
361
|
-
iterator emplace_hint( \
|
|
362
|
-
const_iterator hint, BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_FWD_PARAM, a)) \
|
|
363
|
-
{ \
|
|
364
|
-
return table_.emplace_hint_unique(hint, \
|
|
365
|
-
table::extractor::extract( \
|
|
366
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)), \
|
|
367
|
-
boost::unordered::detail::create_emplace_args( \
|
|
368
|
-
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_CALL_FORWARD, a))); \
|
|
369
|
-
}
|
|
370
|
-
|
|
371
|
-
BOOST_UNORDERED_EMPLACE(1, 4, _)
|
|
372
|
-
BOOST_UNORDERED_EMPLACE(1, 5, _)
|
|
373
|
-
BOOST_UNORDERED_EMPLACE(1, 6, _)
|
|
374
|
-
BOOST_UNORDERED_EMPLACE(1, 7, _)
|
|
375
|
-
BOOST_UNORDERED_EMPLACE(1, 8, _)
|
|
376
|
-
BOOST_UNORDERED_EMPLACE(1, 9, _)
|
|
377
|
-
BOOST_PP_REPEAT_FROM_TO(10, BOOST_PP_INC(BOOST_UNORDERED_EMPLACE_LIMIT),
|
|
378
|
-
BOOST_UNORDERED_EMPLACE, _)
|
|
379
|
-
|
|
380
|
-
#undef BOOST_UNORDERED_EMPLACE
|
|
381
|
-
|
|
382
|
-
#endif
|
|
383
|
-
|
|
384
209
|
std::pair<iterator, bool> insert(value_type const& x)
|
|
385
210
|
{
|
|
386
211
|
return this->emplace(x);
|
|
387
212
|
}
|
|
388
213
|
|
|
389
|
-
std::pair<iterator, bool> insert(
|
|
214
|
+
std::pair<iterator, bool> insert(value_type&& x)
|
|
390
215
|
{
|
|
391
|
-
return this->emplace(
|
|
216
|
+
return this->emplace(std::move(x));
|
|
392
217
|
}
|
|
393
218
|
|
|
394
219
|
template <class Key>
|
|
395
220
|
typename boost::enable_if_c<
|
|
396
221
|
detail::transparent_non_iterable<Key, unordered_set>::value,
|
|
397
222
|
std::pair<iterator, bool> >::type
|
|
398
|
-
insert(
|
|
223
|
+
insert(Key&& k)
|
|
399
224
|
{
|
|
400
|
-
return table_.try_emplace_unique(
|
|
225
|
+
return table_.try_emplace_unique(std::forward<Key>(k));
|
|
401
226
|
}
|
|
402
227
|
|
|
403
228
|
iterator insert(const_iterator hint, value_type const& x)
|
|
@@ -405,37 +230,38 @@ namespace boost {
|
|
|
405
230
|
return this->emplace_hint(hint, x);
|
|
406
231
|
}
|
|
407
232
|
|
|
408
|
-
iterator insert(const_iterator hint,
|
|
233
|
+
iterator insert(const_iterator hint, value_type&& x)
|
|
409
234
|
{
|
|
410
|
-
return this->emplace_hint(hint,
|
|
235
|
+
return this->emplace_hint(hint, std::move(x));
|
|
411
236
|
}
|
|
412
237
|
|
|
413
238
|
template <class Key>
|
|
414
239
|
typename boost::enable_if_c<
|
|
415
240
|
detail::transparent_non_iterable<Key, unordered_set>::value,
|
|
416
241
|
iterator>::type
|
|
417
|
-
insert(const_iterator hint,
|
|
242
|
+
insert(const_iterator hint, Key&& k)
|
|
418
243
|
{
|
|
419
|
-
return table_.try_emplace_hint_unique(hint,
|
|
244
|
+
return table_.try_emplace_hint_unique(hint, std::forward<Key>(k));
|
|
420
245
|
}
|
|
421
246
|
|
|
422
247
|
template <class InputIt> void insert(InputIt, InputIt);
|
|
423
248
|
|
|
424
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
425
249
|
void insert(std::initializer_list<value_type>);
|
|
426
|
-
#endif
|
|
427
250
|
|
|
428
251
|
// extract
|
|
429
252
|
|
|
430
253
|
node_type extract(const_iterator position)
|
|
431
254
|
{
|
|
432
255
|
return node_type(
|
|
433
|
-
table_.extract_by_iterator_unique(position),
|
|
256
|
+
table_.extract_by_iterator_unique(position),
|
|
257
|
+
allocator_type(table_.node_alloc()));
|
|
434
258
|
}
|
|
435
259
|
|
|
436
260
|
node_type extract(const key_type& k)
|
|
437
261
|
{
|
|
438
|
-
return node_type(
|
|
262
|
+
return node_type(
|
|
263
|
+
table_.extract_by_key_impl(k),
|
|
264
|
+
allocator_type(table_.node_alloc()));
|
|
439
265
|
}
|
|
440
266
|
|
|
441
267
|
template <class Key>
|
|
@@ -444,31 +270,23 @@ namespace boost {
|
|
|
444
270
|
node_type>::type
|
|
445
271
|
extract(const Key& k)
|
|
446
272
|
{
|
|
447
|
-
return node_type(
|
|
273
|
+
return node_type(
|
|
274
|
+
table_.extract_by_key_impl(k),
|
|
275
|
+
allocator_type(table_.node_alloc()));
|
|
448
276
|
}
|
|
449
277
|
|
|
450
|
-
insert_return_type insert(
|
|
278
|
+
insert_return_type insert(node_type&& np)
|
|
451
279
|
{
|
|
452
280
|
insert_return_type result;
|
|
453
281
|
table_.move_insert_node_type_unique(np, result);
|
|
454
|
-
return
|
|
282
|
+
return result;
|
|
455
283
|
}
|
|
456
284
|
|
|
457
|
-
iterator insert(const_iterator hint,
|
|
285
|
+
iterator insert(const_iterator hint, node_type&& np)
|
|
458
286
|
{
|
|
459
287
|
return table_.move_insert_node_type_with_hint_unique(hint, np);
|
|
460
288
|
}
|
|
461
289
|
|
|
462
|
-
#if defined(BOOST_NO_CXX11_RVALUE_REFERENCES) || \
|
|
463
|
-
(BOOST_COMP_GNUC && BOOST_COMP_GNUC < BOOST_VERSION_NUMBER(4, 6, 0))
|
|
464
|
-
private:
|
|
465
|
-
// Note: Use r-value node_type to insert.
|
|
466
|
-
insert_return_type insert(node_type&);
|
|
467
|
-
iterator insert(const_iterator, node_type& np);
|
|
468
|
-
|
|
469
|
-
public:
|
|
470
|
-
#endif
|
|
471
|
-
|
|
472
290
|
iterator erase(const_iterator);
|
|
473
291
|
size_type erase(const key_type&);
|
|
474
292
|
iterator erase(const_iterator, const_iterator);
|
|
@@ -477,9 +295,9 @@ namespace boost {
|
|
|
477
295
|
typename boost::enable_if_c<
|
|
478
296
|
detail::transparent_non_iterable<Key, unordered_set>::value,
|
|
479
297
|
size_type>::type
|
|
480
|
-
erase(
|
|
298
|
+
erase(Key&& k)
|
|
481
299
|
{
|
|
482
|
-
return table_.erase_key_unique_impl(
|
|
300
|
+
return table_.erase_key_unique_impl(std::forward<Key>(k));
|
|
483
301
|
}
|
|
484
302
|
|
|
485
303
|
BOOST_UNORDERED_DEPRECATED("Use erase instead")
|
|
@@ -488,26 +306,22 @@ namespace boost {
|
|
|
488
306
|
void erase_return_void(const_iterator it) { erase(it); }
|
|
489
307
|
|
|
490
308
|
void swap(unordered_set&)
|
|
491
|
-
|
|
492
|
-
boost::is_nothrow_swappable<H>::value&&
|
|
493
|
-
boost::is_nothrow_swappable<P>::value);
|
|
494
|
-
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(); }
|
|
495
313
|
|
|
496
314
|
template <typename H2, typename P2>
|
|
497
315
|
void merge(boost::unordered_set<T, H2, P2, A>& source);
|
|
498
316
|
|
|
499
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
500
317
|
template <typename H2, typename P2>
|
|
501
318
|
void merge(boost::unordered_set<T, H2, P2, A>&& source);
|
|
502
|
-
#endif
|
|
503
319
|
|
|
504
320
|
template <typename H2, typename P2>
|
|
505
321
|
void merge(boost::unordered_multiset<T, H2, P2, A>& source);
|
|
506
322
|
|
|
507
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
508
323
|
template <typename H2, typename P2>
|
|
509
324
|
void merge(boost::unordered_multiset<T, H2, P2, A>&& source);
|
|
510
|
-
#endif
|
|
511
325
|
|
|
512
326
|
// observers
|
|
513
327
|
|
|
@@ -573,12 +387,9 @@ namespace boost {
|
|
|
573
387
|
|
|
574
388
|
// bucket interface
|
|
575
389
|
|
|
576
|
-
size_type bucket_count() const
|
|
577
|
-
{
|
|
578
|
-
return table_.bucket_count();
|
|
579
|
-
}
|
|
390
|
+
size_type bucket_count() const noexcept { return table_.bucket_count(); }
|
|
580
391
|
|
|
581
|
-
size_type max_bucket_count() const
|
|
392
|
+
size_type max_bucket_count() const noexcept
|
|
582
393
|
{
|
|
583
394
|
return table_.max_bucket_count();
|
|
584
395
|
}
|
|
@@ -593,9 +404,9 @@ namespace boost {
|
|
|
593
404
|
template <class Key>
|
|
594
405
|
typename boost::enable_if_c<detail::are_transparent<Key, H, P>::value,
|
|
595
406
|
size_type>::type
|
|
596
|
-
bucket(
|
|
407
|
+
bucket(Key&& k) const
|
|
597
408
|
{
|
|
598
|
-
return table_.hash_to_bucket(table_.hash(
|
|
409
|
+
return table_.hash_to_bucket(table_.hash(std::forward<Key>(k)));
|
|
599
410
|
}
|
|
600
411
|
|
|
601
412
|
local_iterator begin(size_type n)
|
|
@@ -627,9 +438,9 @@ namespace boost {
|
|
|
627
438
|
|
|
628
439
|
// hash policy
|
|
629
440
|
|
|
630
|
-
float load_factor() const
|
|
631
|
-
float max_load_factor() const
|
|
632
|
-
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;
|
|
633
444
|
void rehash(size_type);
|
|
634
445
|
void reserve(size_type);
|
|
635
446
|
|
|
@@ -641,6 +452,13 @@ namespace boost {
|
|
|
641
452
|
#endif
|
|
642
453
|
}; // class template unordered_set
|
|
643
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
|
+
|
|
644
462
|
#if BOOST_UNORDERED_TEMPLATE_DEDUCTION_GUIDES
|
|
645
463
|
|
|
646
464
|
template <class InputIterator,
|
|
@@ -650,10 +468,10 @@ namespace boost {
|
|
|
650
468
|
std::equal_to<typename std::iterator_traits<InputIterator>::value_type>,
|
|
651
469
|
class Allocator = std::allocator<
|
|
652
470
|
typename std::iterator_traits<InputIterator>::value_type>,
|
|
653
|
-
class =
|
|
654
|
-
class =
|
|
655
|
-
class =
|
|
656
|
-
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> > >
|
|
657
475
|
unordered_set(InputIterator, InputIterator,
|
|
658
476
|
std::size_t = boost::unordered::detail::default_bucket_count,
|
|
659
477
|
Hash = Hash(), Pred = Pred(), Allocator = Allocator())
|
|
@@ -662,17 +480,17 @@ namespace boost {
|
|
|
662
480
|
|
|
663
481
|
template <class T, class Hash = boost::hash<T>,
|
|
664
482
|
class Pred = std::equal_to<T>, class Allocator = std::allocator<T>,
|
|
665
|
-
class =
|
|
666
|
-
class =
|
|
667
|
-
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> > >
|
|
668
486
|
unordered_set(std::initializer_list<T>,
|
|
669
487
|
std::size_t = boost::unordered::detail::default_bucket_count,
|
|
670
488
|
Hash = Hash(), Pred = Pred(), Allocator = Allocator())
|
|
671
489
|
-> unordered_set<T, Hash, Pred, Allocator>;
|
|
672
490
|
|
|
673
491
|
template <class InputIterator, class Allocator,
|
|
674
|
-
class =
|
|
675
|
-
class =
|
|
492
|
+
class = std::enable_if_t<detail::is_input_iterator_v<InputIterator> >,
|
|
493
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
676
494
|
unordered_set(InputIterator, InputIterator, std::size_t, Allocator)
|
|
677
495
|
-> unordered_set<typename std::iterator_traits<InputIterator>::value_type,
|
|
678
496
|
boost::hash<typename std::iterator_traits<InputIterator>::value_type>,
|
|
@@ -680,9 +498,9 @@ namespace boost {
|
|
|
680
498
|
Allocator>;
|
|
681
499
|
|
|
682
500
|
template <class InputIterator, class Hash, class Allocator,
|
|
683
|
-
class =
|
|
684
|
-
class =
|
|
685
|
-
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> > >
|
|
686
504
|
unordered_set(InputIterator, InputIterator, std::size_t, Hash, Allocator)
|
|
687
505
|
-> unordered_set<typename std::iterator_traits<InputIterator>::value_type,
|
|
688
506
|
Hash,
|
|
@@ -690,19 +508,19 @@ namespace boost {
|
|
|
690
508
|
Allocator>;
|
|
691
509
|
|
|
692
510
|
template <class T, class Allocator,
|
|
693
|
-
class =
|
|
511
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
694
512
|
unordered_set(std::initializer_list<T>, std::size_t, Allocator)
|
|
695
513
|
-> unordered_set<T, boost::hash<T>, std::equal_to<T>, Allocator>;
|
|
696
514
|
|
|
697
515
|
template <class T, class Hash, class Allocator,
|
|
698
|
-
class =
|
|
699
|
-
class =
|
|
516
|
+
class = std::enable_if_t<detail::is_hash_v<Hash> >,
|
|
517
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
700
518
|
unordered_set(std::initializer_list<T>, std::size_t, Hash, Allocator)
|
|
701
519
|
-> unordered_set<T, Hash, std::equal_to<T>, Allocator>;
|
|
702
520
|
|
|
703
521
|
template <class InputIterator, class Allocator,
|
|
704
|
-
class =
|
|
705
|
-
class =
|
|
522
|
+
class = std::enable_if_t<detail::is_input_iterator_v<InputIterator> >,
|
|
523
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
706
524
|
unordered_set(InputIterator, InputIterator, Allocator)
|
|
707
525
|
-> unordered_set<typename std::iterator_traits<InputIterator>::value_type,
|
|
708
526
|
boost::hash<typename std::iterator_traits<InputIterator>::value_type>,
|
|
@@ -710,7 +528,7 @@ namespace boost {
|
|
|
710
528
|
Allocator>;
|
|
711
529
|
|
|
712
530
|
template <class T, class Allocator,
|
|
713
|
-
class =
|
|
531
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
714
532
|
unordered_set(std::initializer_list<T>, Allocator)
|
|
715
533
|
-> unordered_set<T, boost::hash<T>, std::equal_to<T>, Allocator>;
|
|
716
534
|
|
|
@@ -718,9 +536,6 @@ namespace boost {
|
|
|
718
536
|
|
|
719
537
|
template <class T, class H, class P, class A> class unordered_multiset
|
|
720
538
|
{
|
|
721
|
-
#if defined(BOOST_UNORDERED_USE_MOVE)
|
|
722
|
-
BOOST_COPYABLE_AND_MOVABLE(unordered_multiset)
|
|
723
|
-
#endif
|
|
724
539
|
template <typename, typename, typename, typename>
|
|
725
540
|
friend class unordered_set;
|
|
726
541
|
|
|
@@ -772,29 +587,23 @@ namespace boost {
|
|
|
772
587
|
|
|
773
588
|
unordered_multiset(unordered_multiset const&);
|
|
774
589
|
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
unordered_multiset(BOOST_RV_REF(unordered_multiset) other)
|
|
778
|
-
BOOST_NOEXCEPT_IF(table::nothrow_move_constructible)
|
|
590
|
+
unordered_multiset(unordered_multiset&& other)
|
|
591
|
+
noexcept(table::nothrow_move_constructible)
|
|
779
592
|
: table_(other.table_, boost::unordered::detail::move_tag())
|
|
780
593
|
{
|
|
781
594
|
// The move is done in table_
|
|
782
595
|
}
|
|
783
|
-
#endif
|
|
784
596
|
|
|
785
597
|
explicit unordered_multiset(allocator_type const&);
|
|
786
598
|
|
|
787
599
|
unordered_multiset(unordered_multiset const&, allocator_type const&);
|
|
788
600
|
|
|
789
|
-
unordered_multiset(
|
|
790
|
-
BOOST_RV_REF(unordered_multiset), allocator_type const&);
|
|
601
|
+
unordered_multiset(unordered_multiset&&, allocator_type const&);
|
|
791
602
|
|
|
792
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
793
603
|
unordered_multiset(std::initializer_list<value_type>,
|
|
794
604
|
size_type = boost::unordered::detail::default_bucket_count,
|
|
795
605
|
const hasher& = hasher(), const key_equal& l = key_equal(),
|
|
796
606
|
const allocator_type& = allocator_type());
|
|
797
|
-
#endif
|
|
798
607
|
|
|
799
608
|
explicit unordered_multiset(size_type, const allocator_type&);
|
|
800
609
|
|
|
@@ -811,7 +620,6 @@ namespace boost {
|
|
|
811
620
|
unordered_multiset(
|
|
812
621
|
InputIt, InputIt, size_type, const hasher&, const allocator_type&);
|
|
813
622
|
|
|
814
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
815
623
|
unordered_multiset(
|
|
816
624
|
std::initializer_list<value_type>, const allocator_type&);
|
|
817
625
|
|
|
@@ -820,265 +628,99 @@ namespace boost {
|
|
|
820
628
|
|
|
821
629
|
unordered_multiset(std::initializer_list<value_type>, size_type,
|
|
822
630
|
const hasher&, const allocator_type&);
|
|
823
|
-
#endif
|
|
824
631
|
|
|
825
632
|
// Destructor
|
|
826
633
|
|
|
827
|
-
~unordered_multiset()
|
|
634
|
+
~unordered_multiset() noexcept;
|
|
828
635
|
|
|
829
|
-
// Assign
|
|
830
|
-
|
|
831
|
-
#if defined(BOOST_UNORDERED_USE_MOVE)
|
|
832
|
-
unordered_multiset& operator=(BOOST_COPY_ASSIGN_REF(unordered_multiset) x)
|
|
833
|
-
{
|
|
834
|
-
table_.assign(x.table_, boost::unordered::detail::false_type());
|
|
835
|
-
return *this;
|
|
836
|
-
}
|
|
837
|
-
|
|
838
|
-
unordered_multiset& operator=(BOOST_RV_REF(unordered_multiset) x)
|
|
839
|
-
BOOST_NOEXCEPT_IF(value_allocator_traits::is_always_equal::value&&
|
|
840
|
-
boost::is_nothrow_move_assignable<H>::value&&
|
|
841
|
-
boost::is_nothrow_move_assignable<P>::value)
|
|
842
|
-
{
|
|
843
|
-
table_.move_assign(x.table_, boost::unordered::detail::false_type());
|
|
844
|
-
return *this;
|
|
845
|
-
}
|
|
846
|
-
#else
|
|
636
|
+
// Assign
|
|
847
637
|
unordered_multiset& operator=(unordered_multiset const& x)
|
|
848
638
|
{
|
|
849
|
-
table_.assign(x.table_,
|
|
639
|
+
table_.assign(x.table_, std::false_type());
|
|
850
640
|
return *this;
|
|
851
641
|
}
|
|
852
642
|
|
|
853
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
854
643
|
unordered_multiset& operator=(unordered_multiset&& x)
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
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)
|
|
858
647
|
{
|
|
859
|
-
table_.move_assign(x.table_,
|
|
648
|
+
table_.move_assign(x.table_, std::false_type());
|
|
860
649
|
return *this;
|
|
861
650
|
}
|
|
862
|
-
#endif
|
|
863
|
-
#endif
|
|
864
651
|
|
|
865
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
866
652
|
unordered_multiset& operator=(std::initializer_list<value_type>);
|
|
867
|
-
#endif
|
|
868
653
|
|
|
869
|
-
allocator_type get_allocator() const
|
|
654
|
+
allocator_type get_allocator() const noexcept
|
|
870
655
|
{
|
|
871
|
-
return table_.node_alloc();
|
|
656
|
+
return allocator_type(table_.node_alloc());
|
|
872
657
|
}
|
|
873
658
|
|
|
874
659
|
// iterators
|
|
875
660
|
|
|
876
|
-
iterator begin()
|
|
661
|
+
iterator begin() noexcept { return iterator(table_.begin()); }
|
|
877
662
|
|
|
878
|
-
const_iterator begin() const
|
|
663
|
+
const_iterator begin() const noexcept
|
|
879
664
|
{
|
|
880
665
|
return const_iterator(table_.begin());
|
|
881
666
|
}
|
|
882
667
|
|
|
883
|
-
iterator end()
|
|
668
|
+
iterator end() noexcept { return iterator(); }
|
|
884
669
|
|
|
885
|
-
const_iterator end() const
|
|
670
|
+
const_iterator end() const noexcept { return const_iterator(); }
|
|
886
671
|
|
|
887
|
-
const_iterator cbegin() const
|
|
672
|
+
const_iterator cbegin() const noexcept
|
|
888
673
|
{
|
|
889
674
|
return const_iterator(table_.begin());
|
|
890
675
|
}
|
|
891
676
|
|
|
892
|
-
const_iterator cend() const
|
|
677
|
+
const_iterator cend() const noexcept { return const_iterator(); }
|
|
893
678
|
|
|
894
679
|
// size and capacity
|
|
895
680
|
|
|
896
|
-
BOOST_ATTRIBUTE_NODISCARD bool empty() const
|
|
681
|
+
BOOST_ATTRIBUTE_NODISCARD bool empty() const noexcept
|
|
897
682
|
{
|
|
898
683
|
return table_.size_ == 0;
|
|
899
684
|
}
|
|
900
685
|
|
|
901
|
-
size_type size() const
|
|
902
|
-
|
|
903
|
-
size_type max_size() const BOOST_NOEXCEPT;
|
|
904
|
-
|
|
905
|
-
// emplace
|
|
906
|
-
|
|
907
|
-
#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
|
908
|
-
|
|
909
|
-
template <class... Args> iterator emplace(BOOST_FWD_REF(Args)... args)
|
|
910
|
-
{
|
|
911
|
-
return iterator(table_.emplace_equiv(
|
|
912
|
-
boost::unordered::detail::func::construct_node_from_args(
|
|
913
|
-
table_.node_alloc(), boost::forward<Args>(args)...)));
|
|
914
|
-
}
|
|
915
|
-
|
|
916
|
-
#else
|
|
917
|
-
|
|
918
|
-
#if !BOOST_UNORDERED_SUN_WORKAROUNDS1
|
|
919
|
-
|
|
920
|
-
// 0 argument emplace requires special treatment in case
|
|
921
|
-
// the container is instantiated with a value type that
|
|
922
|
-
// doesn't have a default constructor.
|
|
686
|
+
size_type size() const noexcept { return table_.size_; }
|
|
923
687
|
|
|
924
|
-
|
|
925
|
-
boost::unordered::detail::empty_emplace(),
|
|
926
|
-
value_type v = value_type())
|
|
927
|
-
{
|
|
928
|
-
return this->emplace(boost::move(v));
|
|
929
|
-
}
|
|
930
|
-
|
|
931
|
-
#endif
|
|
932
|
-
|
|
933
|
-
template <typename A0> iterator emplace(BOOST_FWD_REF(A0) a0)
|
|
934
|
-
{
|
|
935
|
-
return iterator(table_.emplace_equiv(
|
|
936
|
-
boost::unordered::detail::func::construct_node_from_args(
|
|
937
|
-
table_.node_alloc(), boost::unordered::detail::create_emplace_args(
|
|
938
|
-
boost::forward<A0>(a0)))));
|
|
939
|
-
}
|
|
688
|
+
size_type max_size() const noexcept;
|
|
940
689
|
|
|
941
|
-
|
|
942
|
-
iterator emplace(BOOST_FWD_REF(A0) a0, BOOST_FWD_REF(A1) a1)
|
|
943
|
-
{
|
|
944
|
-
return iterator(table_.emplace_equiv(
|
|
945
|
-
boost::unordered::detail::func::construct_node_from_args(
|
|
946
|
-
table_.node_alloc(),
|
|
947
|
-
boost::unordered::detail::create_emplace_args(
|
|
948
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)))));
|
|
949
|
-
}
|
|
690
|
+
// emplace
|
|
950
691
|
|
|
951
|
-
template <
|
|
952
|
-
iterator emplace(
|
|
953
|
-
BOOST_FWD_REF(A0) a0, BOOST_FWD_REF(A1) a1, BOOST_FWD_REF(A2) a2)
|
|
692
|
+
template <class... Args> iterator emplace(Args&&... args)
|
|
954
693
|
{
|
|
955
694
|
return iterator(table_.emplace_equiv(
|
|
956
695
|
boost::unordered::detail::func::construct_node_from_args(
|
|
957
|
-
table_.node_alloc(),
|
|
958
|
-
boost::unordered::detail::create_emplace_args(
|
|
959
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1),
|
|
960
|
-
boost::forward<A2>(a2)))));
|
|
696
|
+
table_.node_alloc(), std::forward<Args>(args)...)));
|
|
961
697
|
}
|
|
962
698
|
|
|
963
|
-
#endif
|
|
964
|
-
|
|
965
|
-
#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
|
966
|
-
|
|
967
699
|
template <class... Args>
|
|
968
|
-
iterator emplace_hint(const_iterator hint,
|
|
969
|
-
{
|
|
970
|
-
return iterator(table_.emplace_hint_equiv(
|
|
971
|
-
hint, boost::unordered::detail::func::construct_node_from_args(
|
|
972
|
-
table_.node_alloc(), boost::forward<Args>(args)...)));
|
|
973
|
-
}
|
|
974
|
-
|
|
975
|
-
#else
|
|
976
|
-
|
|
977
|
-
#if !BOOST_UNORDERED_SUN_WORKAROUNDS1
|
|
978
|
-
|
|
979
|
-
iterator emplace_hint(const_iterator hint,
|
|
980
|
-
boost::unordered::detail::empty_emplace =
|
|
981
|
-
boost::unordered::detail::empty_emplace(),
|
|
982
|
-
value_type v = value_type())
|
|
983
|
-
{
|
|
984
|
-
return this->emplace_hint(hint, boost::move(v));
|
|
985
|
-
}
|
|
986
|
-
|
|
987
|
-
#endif
|
|
988
|
-
|
|
989
|
-
template <typename A0>
|
|
990
|
-
iterator emplace_hint(const_iterator hint, BOOST_FWD_REF(A0) a0)
|
|
991
|
-
{
|
|
992
|
-
return iterator(table_.emplace_hint_equiv(hint,
|
|
993
|
-
boost::unordered::detail::func::construct_node_from_args(
|
|
994
|
-
table_.node_alloc(), boost::unordered::detail::create_emplace_args(
|
|
995
|
-
boost::forward<A0>(a0)))));
|
|
996
|
-
}
|
|
997
|
-
|
|
998
|
-
template <typename A0, typename A1>
|
|
999
|
-
iterator emplace_hint(
|
|
1000
|
-
const_iterator hint, BOOST_FWD_REF(A0) a0, BOOST_FWD_REF(A1) a1)
|
|
700
|
+
iterator emplace_hint(const_iterator hint, Args&&... args)
|
|
1001
701
|
{
|
|
1002
702
|
return iterator(table_.emplace_hint_equiv(
|
|
1003
703
|
hint, boost::unordered::detail::func::construct_node_from_args(
|
|
1004
|
-
table_.node_alloc(),
|
|
1005
|
-
boost::unordered::detail::create_emplace_args(
|
|
1006
|
-
boost::forward<A0>(a0), boost::forward<A1>(a1)))));
|
|
704
|
+
table_.node_alloc(), std::forward<Args>(args)...)));
|
|
1007
705
|
}
|
|
1008
706
|
|
|
1009
|
-
template <typename A0, typename A1, typename A2>
|
|
1010
|
-
iterator emplace_hint(const_iterator hint, BOOST_FWD_REF(A0) a0,
|
|
1011
|
-
BOOST_FWD_REF(A1) a1, BOOST_FWD_REF(A2) a2)
|
|
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::forward<A0>(a0), boost::forward<A1>(a1),
|
|
1018
|
-
boost::forward<A2>(a2)))));
|
|
1019
|
-
}
|
|
1020
|
-
|
|
1021
|
-
#endif
|
|
1022
|
-
|
|
1023
|
-
#if defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
|
1024
|
-
|
|
1025
|
-
#define BOOST_UNORDERED_EMPLACE(z, n, _) \
|
|
1026
|
-
template <BOOST_PP_ENUM_PARAMS_Z(z, n, typename A)> \
|
|
1027
|
-
iterator emplace(BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_FWD_PARAM, a)) \
|
|
1028
|
-
{ \
|
|
1029
|
-
return iterator(table_.emplace_equiv( \
|
|
1030
|
-
boost::unordered::detail::func::construct_node_from_args( \
|
|
1031
|
-
table_.node_alloc(), \
|
|
1032
|
-
boost::unordered::detail::create_emplace_args( \
|
|
1033
|
-
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_CALL_FORWARD, a))))); \
|
|
1034
|
-
} \
|
|
1035
|
-
\
|
|
1036
|
-
template <BOOST_PP_ENUM_PARAMS_Z(z, n, typename A)> \
|
|
1037
|
-
iterator emplace_hint( \
|
|
1038
|
-
const_iterator hint, BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_FWD_PARAM, a)) \
|
|
1039
|
-
{ \
|
|
1040
|
-
return iterator(table_.emplace_hint_equiv( \
|
|
1041
|
-
hint, boost::unordered::detail::func::construct_node_from_args( \
|
|
1042
|
-
table_.node_alloc(), \
|
|
1043
|
-
boost::unordered::detail::create_emplace_args( \
|
|
1044
|
-
BOOST_PP_ENUM_##z(n, BOOST_UNORDERED_CALL_FORWARD, a))))); \
|
|
1045
|
-
}
|
|
1046
|
-
|
|
1047
|
-
BOOST_UNORDERED_EMPLACE(1, 4, _)
|
|
1048
|
-
BOOST_UNORDERED_EMPLACE(1, 5, _)
|
|
1049
|
-
BOOST_UNORDERED_EMPLACE(1, 6, _)
|
|
1050
|
-
BOOST_UNORDERED_EMPLACE(1, 7, _)
|
|
1051
|
-
BOOST_UNORDERED_EMPLACE(1, 8, _)
|
|
1052
|
-
BOOST_UNORDERED_EMPLACE(1, 9, _)
|
|
1053
|
-
BOOST_PP_REPEAT_FROM_TO(10, BOOST_PP_INC(BOOST_UNORDERED_EMPLACE_LIMIT),
|
|
1054
|
-
BOOST_UNORDERED_EMPLACE, _)
|
|
1055
|
-
|
|
1056
|
-
#undef BOOST_UNORDERED_EMPLACE
|
|
1057
|
-
|
|
1058
|
-
#endif
|
|
1059
|
-
|
|
1060
707
|
iterator insert(value_type const& x) { return this->emplace(x); }
|
|
1061
708
|
|
|
1062
|
-
iterator insert(
|
|
1063
|
-
{
|
|
1064
|
-
return this->emplace(boost::move(x));
|
|
1065
|
-
}
|
|
709
|
+
iterator insert(value_type&& x) { return this->emplace(std::move(x)); }
|
|
1066
710
|
|
|
1067
711
|
iterator insert(const_iterator hint, value_type const& x)
|
|
1068
712
|
{
|
|
1069
713
|
return this->emplace_hint(hint, x);
|
|
1070
714
|
}
|
|
1071
715
|
|
|
1072
|
-
iterator insert(const_iterator hint,
|
|
716
|
+
iterator insert(const_iterator hint, value_type&& x)
|
|
1073
717
|
{
|
|
1074
|
-
return this->emplace_hint(hint,
|
|
718
|
+
return this->emplace_hint(hint, std::move(x));
|
|
1075
719
|
}
|
|
1076
720
|
|
|
1077
721
|
template <class InputIt> void insert(InputIt, InputIt);
|
|
1078
722
|
|
|
1079
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1080
723
|
void insert(std::initializer_list<value_type>);
|
|
1081
|
-
#endif
|
|
1082
724
|
|
|
1083
725
|
// extract
|
|
1084
726
|
|
|
@@ -1102,26 +744,16 @@ namespace boost {
|
|
|
1102
744
|
return node_type(table_.extract_by_key_impl(k), table_.node_alloc());
|
|
1103
745
|
}
|
|
1104
746
|
|
|
1105
|
-
iterator insert(
|
|
747
|
+
iterator insert(node_type&& np)
|
|
1106
748
|
{
|
|
1107
749
|
return table_.move_insert_node_type_equiv(np);
|
|
1108
750
|
}
|
|
1109
751
|
|
|
1110
|
-
iterator insert(const_iterator hint,
|
|
752
|
+
iterator insert(const_iterator hint, node_type&& np)
|
|
1111
753
|
{
|
|
1112
754
|
return table_.move_insert_node_type_with_hint_equiv(hint, np);
|
|
1113
755
|
}
|
|
1114
756
|
|
|
1115
|
-
#if defined(BOOST_NO_CXX11_RVALUE_REFERENCES) || \
|
|
1116
|
-
(BOOST_COMP_GNUC && BOOST_COMP_GNUC < BOOST_VERSION_NUMBER(4, 6, 0))
|
|
1117
|
-
private:
|
|
1118
|
-
// Note: Use r-value node_type to insert.
|
|
1119
|
-
iterator insert(node_type&);
|
|
1120
|
-
iterator insert(const_iterator, node_type& np);
|
|
1121
|
-
|
|
1122
|
-
public:
|
|
1123
|
-
#endif
|
|
1124
|
-
|
|
1125
757
|
iterator erase(const_iterator);
|
|
1126
758
|
size_type erase(const key_type&);
|
|
1127
759
|
|
|
@@ -1141,26 +773,22 @@ namespace boost {
|
|
|
1141
773
|
void erase_return_void(const_iterator it) { erase(it); }
|
|
1142
774
|
|
|
1143
775
|
void swap(unordered_multiset&)
|
|
1144
|
-
|
|
1145
|
-
boost::is_nothrow_swappable<H>::value&&
|
|
1146
|
-
boost::is_nothrow_swappable<P>::value);
|
|
1147
|
-
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(); }
|
|
1148
780
|
|
|
1149
781
|
template <typename H2, typename P2>
|
|
1150
782
|
void merge(boost::unordered_multiset<T, H2, P2, A>& source);
|
|
1151
783
|
|
|
1152
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
1153
784
|
template <typename H2, typename P2>
|
|
1154
785
|
void merge(boost::unordered_multiset<T, H2, P2, A>&& source);
|
|
1155
|
-
#endif
|
|
1156
786
|
|
|
1157
787
|
template <typename H2, typename P2>
|
|
1158
788
|
void merge(boost::unordered_set<T, H2, P2, A>& source);
|
|
1159
789
|
|
|
1160
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
1161
790
|
template <typename H2, typename P2>
|
|
1162
791
|
void merge(boost::unordered_set<T, H2, P2, A>&& source);
|
|
1163
|
-
#endif
|
|
1164
792
|
|
|
1165
793
|
// observers
|
|
1166
794
|
|
|
@@ -1222,12 +850,9 @@ namespace boost {
|
|
|
1222
850
|
|
|
1223
851
|
// bucket interface
|
|
1224
852
|
|
|
1225
|
-
size_type bucket_count() const
|
|
1226
|
-
{
|
|
1227
|
-
return table_.bucket_count();
|
|
1228
|
-
}
|
|
853
|
+
size_type bucket_count() const noexcept { return table_.bucket_count(); }
|
|
1229
854
|
|
|
1230
|
-
size_type max_bucket_count() const
|
|
855
|
+
size_type max_bucket_count() const noexcept
|
|
1231
856
|
{
|
|
1232
857
|
return table_.max_bucket_count();
|
|
1233
858
|
}
|
|
@@ -1242,9 +867,9 @@ namespace boost {
|
|
|
1242
867
|
template <class Key>
|
|
1243
868
|
typename boost::enable_if_c<detail::are_transparent<Key, H, P>::value,
|
|
1244
869
|
size_type>::type
|
|
1245
|
-
bucket(
|
|
870
|
+
bucket(Key&& k) const
|
|
1246
871
|
{
|
|
1247
|
-
return table_.hash_to_bucket(table_.hash(
|
|
872
|
+
return table_.hash_to_bucket(table_.hash(std::forward<Key>(k)));
|
|
1248
873
|
}
|
|
1249
874
|
|
|
1250
875
|
local_iterator begin(size_type n)
|
|
@@ -1276,9 +901,9 @@ namespace boost {
|
|
|
1276
901
|
|
|
1277
902
|
// hash policy
|
|
1278
903
|
|
|
1279
|
-
float load_factor() const
|
|
1280
|
-
float max_load_factor() const
|
|
1281
|
-
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;
|
|
1282
907
|
void rehash(size_type);
|
|
1283
908
|
void reserve(size_type);
|
|
1284
909
|
|
|
@@ -1290,6 +915,13 @@ namespace boost {
|
|
|
1290
915
|
#endif
|
|
1291
916
|
}; // class template unordered_multiset
|
|
1292
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
|
+
|
|
1293
925
|
#if BOOST_UNORDERED_TEMPLATE_DEDUCTION_GUIDES
|
|
1294
926
|
|
|
1295
927
|
template <class InputIterator,
|
|
@@ -1299,10 +931,10 @@ namespace boost {
|
|
|
1299
931
|
std::equal_to<typename std::iterator_traits<InputIterator>::value_type>,
|
|
1300
932
|
class Allocator = std::allocator<
|
|
1301
933
|
typename std::iterator_traits<InputIterator>::value_type>,
|
|
1302
|
-
class =
|
|
1303
|
-
class =
|
|
1304
|
-
class =
|
|
1305
|
-
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> > >
|
|
1306
938
|
unordered_multiset(InputIterator, InputIterator,
|
|
1307
939
|
std::size_t = boost::unordered::detail::default_bucket_count,
|
|
1308
940
|
Hash = Hash(), Pred = Pred(), Allocator = Allocator())
|
|
@@ -1312,17 +944,17 @@ namespace boost {
|
|
|
1312
944
|
|
|
1313
945
|
template <class T, class Hash = boost::hash<T>,
|
|
1314
946
|
class Pred = std::equal_to<T>, class Allocator = std::allocator<T>,
|
|
1315
|
-
class =
|
|
1316
|
-
class =
|
|
1317
|
-
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> > >
|
|
1318
950
|
unordered_multiset(std::initializer_list<T>,
|
|
1319
951
|
std::size_t = boost::unordered::detail::default_bucket_count,
|
|
1320
952
|
Hash = Hash(), Pred = Pred(), Allocator = Allocator())
|
|
1321
953
|
-> unordered_multiset<T, Hash, Pred, Allocator>;
|
|
1322
954
|
|
|
1323
955
|
template <class InputIterator, class Allocator,
|
|
1324
|
-
class =
|
|
1325
|
-
class =
|
|
956
|
+
class = std::enable_if_t<detail::is_input_iterator_v<InputIterator> >,
|
|
957
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1326
958
|
unordered_multiset(InputIterator, InputIterator, std::size_t, Allocator)
|
|
1327
959
|
-> unordered_multiset<
|
|
1328
960
|
typename std::iterator_traits<InputIterator>::value_type,
|
|
@@ -1331,9 +963,9 @@ namespace boost {
|
|
|
1331
963
|
Allocator>;
|
|
1332
964
|
|
|
1333
965
|
template <class InputIterator, class Hash, class Allocator,
|
|
1334
|
-
class =
|
|
1335
|
-
class =
|
|
1336
|
-
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> > >
|
|
1337
969
|
unordered_multiset(
|
|
1338
970
|
InputIterator, InputIterator, std::size_t, Hash, Allocator)
|
|
1339
971
|
-> unordered_multiset<
|
|
@@ -1342,19 +974,19 @@ namespace boost {
|
|
|
1342
974
|
Allocator>;
|
|
1343
975
|
|
|
1344
976
|
template <class T, class Allocator,
|
|
1345
|
-
class =
|
|
977
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1346
978
|
unordered_multiset(std::initializer_list<T>, std::size_t, Allocator)
|
|
1347
979
|
-> unordered_multiset<T, boost::hash<T>, std::equal_to<T>, Allocator>;
|
|
1348
980
|
|
|
1349
981
|
template <class T, class Hash, class Allocator,
|
|
1350
|
-
class =
|
|
1351
|
-
class =
|
|
982
|
+
class = std::enable_if_t<detail::is_hash_v<Hash> >,
|
|
983
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1352
984
|
unordered_multiset(std::initializer_list<T>, std::size_t, Hash, Allocator)
|
|
1353
985
|
-> unordered_multiset<T, Hash, std::equal_to<T>, Allocator>;
|
|
1354
986
|
|
|
1355
987
|
template <class InputIterator, class Allocator,
|
|
1356
|
-
class =
|
|
1357
|
-
class =
|
|
988
|
+
class = std::enable_if_t<detail::is_input_iterator_v<InputIterator> >,
|
|
989
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1358
990
|
unordered_multiset(InputIterator, InputIterator, Allocator)
|
|
1359
991
|
-> unordered_multiset<
|
|
1360
992
|
typename std::iterator_traits<InputIterator>::value_type,
|
|
@@ -1363,7 +995,7 @@ namespace boost {
|
|
|
1363
995
|
Allocator>;
|
|
1364
996
|
|
|
1365
997
|
template <class T, class Allocator,
|
|
1366
|
-
class =
|
|
998
|
+
class = std::enable_if_t<detail::is_allocator_v<Allocator> > >
|
|
1367
999
|
unordered_multiset(std::initializer_list<T>, Allocator)
|
|
1368
1000
|
-> unordered_multiset<T, boost::hash<T>, std::equal_to<T>, Allocator>;
|
|
1369
1001
|
|
|
@@ -1398,8 +1030,7 @@ namespace boost {
|
|
|
1398
1030
|
select_on_container_copy_construction(other.get_allocator()))
|
|
1399
1031
|
{
|
|
1400
1032
|
if (other.size()) {
|
|
1401
|
-
table_.copy_buckets(
|
|
1402
|
-
other.table_, boost::unordered::detail::true_type());
|
|
1033
|
+
table_.copy_buckets(other.table_, std::true_type());
|
|
1403
1034
|
}
|
|
1404
1035
|
}
|
|
1405
1036
|
|
|
@@ -1416,21 +1047,18 @@ namespace boost {
|
|
|
1416
1047
|
: table_(other.table_, a)
|
|
1417
1048
|
{
|
|
1418
1049
|
if (other.table_.size_) {
|
|
1419
|
-
table_.copy_buckets(
|
|
1420
|
-
other.table_, boost::unordered::detail::true_type());
|
|
1050
|
+
table_.copy_buckets(other.table_, std::true_type());
|
|
1421
1051
|
}
|
|
1422
1052
|
}
|
|
1423
1053
|
|
|
1424
1054
|
template <class T, class H, class P, class A>
|
|
1425
1055
|
unordered_set<T, H, P, A>::unordered_set(
|
|
1426
|
-
|
|
1056
|
+
unordered_set&& other, allocator_type const& a)
|
|
1427
1057
|
: table_(other.table_, a, boost::unordered::detail::move_tag())
|
|
1428
1058
|
{
|
|
1429
1059
|
table_.move_construct_buckets(other.table_);
|
|
1430
1060
|
}
|
|
1431
1061
|
|
|
1432
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1433
|
-
|
|
1434
1062
|
template <class T, class H, class P, class A>
|
|
1435
1063
|
unordered_set<T, H, P, A>::unordered_set(
|
|
1436
1064
|
std::initializer_list<value_type> list, size_type n, const hasher& hf,
|
|
@@ -1442,8 +1070,6 @@ namespace boost {
|
|
|
1442
1070
|
this->insert(list.begin(), list.end());
|
|
1443
1071
|
}
|
|
1444
1072
|
|
|
1445
|
-
#endif
|
|
1446
|
-
|
|
1447
1073
|
template <class T, class H, class P, class A>
|
|
1448
1074
|
unordered_set<T, H, P, A>::unordered_set(
|
|
1449
1075
|
size_type n, const allocator_type& a)
|
|
@@ -1489,8 +1115,6 @@ namespace boost {
|
|
|
1489
1115
|
this->insert(f, l);
|
|
1490
1116
|
}
|
|
1491
1117
|
|
|
1492
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1493
|
-
|
|
1494
1118
|
template <class T, class H, class P, class A>
|
|
1495
1119
|
unordered_set<T, H, P, A>::unordered_set(
|
|
1496
1120
|
std::initializer_list<value_type> list, const allocator_type& a)
|
|
@@ -1523,15 +1147,11 @@ namespace boost {
|
|
|
1523
1147
|
this->insert(list.begin(), list.end());
|
|
1524
1148
|
}
|
|
1525
1149
|
|
|
1526
|
-
#endif
|
|
1527
|
-
|
|
1528
1150
|
template <class T, class H, class P, class A>
|
|
1529
|
-
unordered_set<T, H, P, A>::~unordered_set()
|
|
1151
|
+
unordered_set<T, H, P, A>::~unordered_set() noexcept
|
|
1530
1152
|
{
|
|
1531
1153
|
}
|
|
1532
1154
|
|
|
1533
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1534
|
-
|
|
1535
1155
|
template <class T, class H, class P, class A>
|
|
1536
1156
|
unordered_set<T, H, P, A>& unordered_set<T, H, P, A>::operator=(
|
|
1537
1157
|
std::initializer_list<value_type> list)
|
|
@@ -1541,12 +1161,10 @@ namespace boost {
|
|
|
1541
1161
|
return *this;
|
|
1542
1162
|
}
|
|
1543
1163
|
|
|
1544
|
-
#endif
|
|
1545
|
-
|
|
1546
1164
|
// size and capacity
|
|
1547
1165
|
|
|
1548
1166
|
template <class T, class H, class P, class A>
|
|
1549
|
-
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
|
|
1550
1168
|
{
|
|
1551
1169
|
using namespace std;
|
|
1552
1170
|
|
|
@@ -1569,14 +1187,12 @@ namespace boost {
|
|
|
1569
1187
|
}
|
|
1570
1188
|
}
|
|
1571
1189
|
|
|
1572
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1573
1190
|
template <class T, class H, class P, class A>
|
|
1574
1191
|
void unordered_set<T, H, P, A>::insert(
|
|
1575
1192
|
std::initializer_list<value_type> list)
|
|
1576
1193
|
{
|
|
1577
1194
|
this->insert(list.begin(), list.end());
|
|
1578
1195
|
}
|
|
1579
|
-
#endif
|
|
1580
1196
|
|
|
1581
1197
|
template <class T, class H, class P, class A>
|
|
1582
1198
|
typename unordered_set<T, H, P, A>::iterator
|
|
@@ -1601,9 +1217,9 @@ namespace boost {
|
|
|
1601
1217
|
|
|
1602
1218
|
template <class T, class H, class P, class A>
|
|
1603
1219
|
void unordered_set<T, H, P, A>::swap(unordered_set& other)
|
|
1604
|
-
|
|
1605
|
-
boost::is_nothrow_swappable<H>::value&&
|
|
1606
|
-
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)
|
|
1607
1223
|
{
|
|
1608
1224
|
table_.swap(other.table_);
|
|
1609
1225
|
}
|
|
@@ -1632,7 +1248,6 @@ namespace boost {
|
|
|
1632
1248
|
table_.merge_unique(source.table_);
|
|
1633
1249
|
}
|
|
1634
1250
|
|
|
1635
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
1636
1251
|
template <class T, class H, class P, class A>
|
|
1637
1252
|
template <typename H2, typename P2>
|
|
1638
1253
|
void unordered_set<T, H, P, A>::merge(
|
|
@@ -1640,7 +1255,6 @@ namespace boost {
|
|
|
1640
1255
|
{
|
|
1641
1256
|
table_.merge_unique(source.table_);
|
|
1642
1257
|
}
|
|
1643
|
-
#endif
|
|
1644
1258
|
|
|
1645
1259
|
template <class T, class H, class P, class A>
|
|
1646
1260
|
template <typename H2, typename P2>
|
|
@@ -1650,7 +1264,6 @@ namespace boost {
|
|
|
1650
1264
|
table_.merge_unique(source.table_);
|
|
1651
1265
|
}
|
|
1652
1266
|
|
|
1653
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
1654
1267
|
template <class T, class H, class P, class A>
|
|
1655
1268
|
template <typename H2, typename P2>
|
|
1656
1269
|
void unordered_set<T, H, P, A>::merge(
|
|
@@ -1658,7 +1271,6 @@ namespace boost {
|
|
|
1658
1271
|
{
|
|
1659
1272
|
table_.merge_unique(source.table_);
|
|
1660
1273
|
}
|
|
1661
|
-
#endif
|
|
1662
1274
|
|
|
1663
1275
|
// lookup
|
|
1664
1276
|
|
|
@@ -1709,7 +1321,7 @@ namespace boost {
|
|
|
1709
1321
|
// hash policy
|
|
1710
1322
|
|
|
1711
1323
|
template <class T, class H, class P, class A>
|
|
1712
|
-
float unordered_set<T, H, P, A>::load_factor() const
|
|
1324
|
+
float unordered_set<T, H, P, A>::load_factor() const noexcept
|
|
1713
1325
|
{
|
|
1714
1326
|
if (table_.size_ == 0) {
|
|
1715
1327
|
return 0.0f;
|
|
@@ -1721,7 +1333,7 @@ namespace boost {
|
|
|
1721
1333
|
}
|
|
1722
1334
|
|
|
1723
1335
|
template <class T, class H, class P, class A>
|
|
1724
|
-
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
|
|
1725
1337
|
{
|
|
1726
1338
|
table_.max_load_factor(m);
|
|
1727
1339
|
}
|
|
@@ -1765,9 +1377,8 @@ namespace boost {
|
|
|
1765
1377
|
}
|
|
1766
1378
|
|
|
1767
1379
|
template <class T, class H, class P, class A>
|
|
1768
|
-
inline void swap(
|
|
1769
|
-
unordered_set<T, H, P, A>& m1
|
|
1770
|
-
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)))
|
|
1771
1382
|
{
|
|
1772
1383
|
#if BOOST_WORKAROUND(BOOST_CODEGEARC, BOOST_TESTED_AT(0x0613))
|
|
1773
1384
|
struct dummy
|
|
@@ -1817,8 +1428,7 @@ namespace boost {
|
|
|
1817
1428
|
select_on_container_copy_construction(other.get_allocator()))
|
|
1818
1429
|
{
|
|
1819
1430
|
if (other.table_.size_) {
|
|
1820
|
-
table_.copy_buckets(
|
|
1821
|
-
other.table_, boost::unordered::detail::false_type());
|
|
1431
|
+
table_.copy_buckets(other.table_, std::false_type());
|
|
1822
1432
|
}
|
|
1823
1433
|
}
|
|
1824
1434
|
|
|
@@ -1835,21 +1445,18 @@ namespace boost {
|
|
|
1835
1445
|
: table_(other.table_, a)
|
|
1836
1446
|
{
|
|
1837
1447
|
if (other.table_.size_) {
|
|
1838
|
-
table_.copy_buckets(
|
|
1839
|
-
other.table_, boost::unordered::detail::false_type());
|
|
1448
|
+
table_.copy_buckets(other.table_, std::false_type());
|
|
1840
1449
|
}
|
|
1841
1450
|
}
|
|
1842
1451
|
|
|
1843
1452
|
template <class T, class H, class P, class A>
|
|
1844
1453
|
unordered_multiset<T, H, P, A>::unordered_multiset(
|
|
1845
|
-
|
|
1454
|
+
unordered_multiset&& other, allocator_type const& a)
|
|
1846
1455
|
: table_(other.table_, a, boost::unordered::detail::move_tag())
|
|
1847
1456
|
{
|
|
1848
1457
|
table_.move_construct_buckets(other.table_);
|
|
1849
1458
|
}
|
|
1850
1459
|
|
|
1851
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1852
|
-
|
|
1853
1460
|
template <class T, class H, class P, class A>
|
|
1854
1461
|
unordered_multiset<T, H, P, A>::unordered_multiset(
|
|
1855
1462
|
std::initializer_list<value_type> list, size_type n, const hasher& hf,
|
|
@@ -1861,8 +1468,6 @@ namespace boost {
|
|
|
1861
1468
|
this->insert(list.begin(), list.end());
|
|
1862
1469
|
}
|
|
1863
1470
|
|
|
1864
|
-
#endif
|
|
1865
|
-
|
|
1866
1471
|
template <class T, class H, class P, class A>
|
|
1867
1472
|
unordered_multiset<T, H, P, A>::unordered_multiset(
|
|
1868
1473
|
size_type n, const allocator_type& a)
|
|
@@ -1908,8 +1513,6 @@ namespace boost {
|
|
|
1908
1513
|
this->insert(f, l);
|
|
1909
1514
|
}
|
|
1910
1515
|
|
|
1911
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1912
|
-
|
|
1913
1516
|
template <class T, class H, class P, class A>
|
|
1914
1517
|
unordered_multiset<T, H, P, A>::unordered_multiset(
|
|
1915
1518
|
std::initializer_list<value_type> list, const allocator_type& a)
|
|
@@ -1942,15 +1545,11 @@ namespace boost {
|
|
|
1942
1545
|
this->insert(list.begin(), list.end());
|
|
1943
1546
|
}
|
|
1944
1547
|
|
|
1945
|
-
#endif
|
|
1946
|
-
|
|
1947
1548
|
template <class T, class H, class P, class A>
|
|
1948
|
-
unordered_multiset<T, H, P, A>::~unordered_multiset()
|
|
1549
|
+
unordered_multiset<T, H, P, A>::~unordered_multiset() noexcept
|
|
1949
1550
|
{
|
|
1950
1551
|
}
|
|
1951
1552
|
|
|
1952
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1953
|
-
|
|
1954
1553
|
template <class T, class H, class P, class A>
|
|
1955
1554
|
unordered_multiset<T, H, P, A>& unordered_multiset<T, H, P, A>::operator=(
|
|
1956
1555
|
std::initializer_list<value_type> list)
|
|
@@ -1960,12 +1559,10 @@ namespace boost {
|
|
|
1960
1559
|
return *this;
|
|
1961
1560
|
}
|
|
1962
1561
|
|
|
1963
|
-
#endif
|
|
1964
|
-
|
|
1965
1562
|
// size and capacity
|
|
1966
1563
|
|
|
1967
1564
|
template <class T, class H, class P, class A>
|
|
1968
|
-
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
|
|
1969
1566
|
{
|
|
1970
1567
|
using namespace std;
|
|
1971
1568
|
|
|
@@ -1985,14 +1582,12 @@ namespace boost {
|
|
|
1985
1582
|
table_.insert_range_equiv(first, last);
|
|
1986
1583
|
}
|
|
1987
1584
|
|
|
1988
|
-
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
1989
1585
|
template <class T, class H, class P, class A>
|
|
1990
1586
|
void unordered_multiset<T, H, P, A>::insert(
|
|
1991
1587
|
std::initializer_list<value_type> list)
|
|
1992
1588
|
{
|
|
1993
1589
|
this->insert(list.begin(), list.end());
|
|
1994
1590
|
}
|
|
1995
|
-
#endif
|
|
1996
1591
|
|
|
1997
1592
|
template <class T, class H, class P, class A>
|
|
1998
1593
|
typename unordered_multiset<T, H, P, A>::iterator
|
|
@@ -2019,9 +1614,9 @@ namespace boost {
|
|
|
2019
1614
|
|
|
2020
1615
|
template <class T, class H, class P, class A>
|
|
2021
1616
|
void unordered_multiset<T, H, P, A>::swap(unordered_multiset& other)
|
|
2022
|
-
|
|
2023
|
-
boost::is_nothrow_swappable<H>::value&&
|
|
2024
|
-
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)
|
|
2025
1620
|
{
|
|
2026
1621
|
table_.swap(other.table_);
|
|
2027
1622
|
}
|
|
@@ -2052,7 +1647,6 @@ namespace boost {
|
|
|
2052
1647
|
}
|
|
2053
1648
|
}
|
|
2054
1649
|
|
|
2055
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
2056
1650
|
template <class T, class H, class P, class A>
|
|
2057
1651
|
template <typename H2, typename P2>
|
|
2058
1652
|
void unordered_multiset<T, H, P, A>::merge(
|
|
@@ -2062,7 +1656,6 @@ namespace boost {
|
|
|
2062
1656
|
insert(source.extract(source.begin()));
|
|
2063
1657
|
}
|
|
2064
1658
|
}
|
|
2065
|
-
#endif
|
|
2066
1659
|
|
|
2067
1660
|
template <class T, class H, class P, class A>
|
|
2068
1661
|
template <typename H2, typename P2>
|
|
@@ -2074,7 +1667,6 @@ namespace boost {
|
|
|
2074
1667
|
}
|
|
2075
1668
|
}
|
|
2076
1669
|
|
|
2077
|
-
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
2078
1670
|
template <class T, class H, class P, class A>
|
|
2079
1671
|
template <typename H2, typename P2>
|
|
2080
1672
|
void unordered_multiset<T, H, P, A>::merge(
|
|
@@ -2084,7 +1676,6 @@ namespace boost {
|
|
|
2084
1676
|
insert(source.extract(source.begin()));
|
|
2085
1677
|
}
|
|
2086
1678
|
}
|
|
2087
|
-
#endif
|
|
2088
1679
|
|
|
2089
1680
|
// lookup
|
|
2090
1681
|
|
|
@@ -2132,7 +1723,7 @@ namespace boost {
|
|
|
2132
1723
|
// hash policy
|
|
2133
1724
|
|
|
2134
1725
|
template <class T, class H, class P, class A>
|
|
2135
|
-
float unordered_multiset<T, H, P, A>::load_factor() const
|
|
1726
|
+
float unordered_multiset<T, H, P, A>::load_factor() const noexcept
|
|
2136
1727
|
{
|
|
2137
1728
|
if (table_.size_ == 0) {
|
|
2138
1729
|
return 0.0f;
|
|
@@ -2144,7 +1735,7 @@ namespace boost {
|
|
|
2144
1735
|
}
|
|
2145
1736
|
|
|
2146
1737
|
template <class T, class H, class P, class A>
|
|
2147
|
-
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
|
|
2148
1739
|
{
|
|
2149
1740
|
table_.max_load_factor(m);
|
|
2150
1741
|
}
|
|
@@ -2188,9 +1779,8 @@ namespace boost {
|
|
|
2188
1779
|
}
|
|
2189
1780
|
|
|
2190
1781
|
template <class T, class H, class P, class A>
|
|
2191
|
-
inline void swap(
|
|
2192
|
-
unordered_multiset<T, H, P, A>& m1
|
|
2193
|
-
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)))
|
|
2194
1784
|
{
|
|
2195
1785
|
#if BOOST_WORKAROUND(BOOST_CODEGEARC, BOOST_TESTED_AT(0x0613))
|
|
2196
1786
|
struct dummy
|
|
@@ -2210,8 +1800,6 @@ namespace boost {
|
|
|
2210
1800
|
|
|
2211
1801
|
template <typename N, typename T, typename A> class node_handle_set
|
|
2212
1802
|
{
|
|
2213
|
-
BOOST_MOVABLE_BUT_NOT_COPYABLE(node_handle_set)
|
|
2214
|
-
|
|
2215
1803
|
template <typename Types> friend struct ::boost::unordered::detail::table;
|
|
2216
1804
|
template <class T2, class H2, class P2, class A2>
|
|
2217
1805
|
friend class unordered_set;
|
|
@@ -2244,10 +1832,9 @@ namespace boost {
|
|
|
2244
1832
|
}
|
|
2245
1833
|
|
|
2246
1834
|
public:
|
|
2247
|
-
|
|
2248
|
-
|
|
2249
|
-
|
|
2250
|
-
}
|
|
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;
|
|
2251
1838
|
|
|
2252
1839
|
~node_handle_set()
|
|
2253
1840
|
{
|
|
@@ -2258,14 +1845,14 @@ namespace boost {
|
|
|
2258
1845
|
}
|
|
2259
1846
|
}
|
|
2260
1847
|
|
|
2261
|
-
node_handle_set(
|
|
2262
|
-
|
|
2263
|
-
|
|
1848
|
+
node_handle_set(node_handle_set&& n) noexcept
|
|
1849
|
+
: ptr_(n.ptr_),
|
|
1850
|
+
alloc_(std::move(n.alloc_))
|
|
2264
1851
|
{
|
|
2265
1852
|
n.ptr_ = node_pointer();
|
|
2266
1853
|
}
|
|
2267
1854
|
|
|
2268
|
-
node_handle_set& operator=(
|
|
1855
|
+
node_handle_set& operator=(node_handle_set&& n)
|
|
2269
1856
|
{
|
|
2270
1857
|
BOOST_ASSERT(!alloc_.has_value() ||
|
|
2271
1858
|
value_allocator_traits::
|
|
@@ -2282,7 +1869,7 @@ namespace boost {
|
|
|
2282
1869
|
if (!alloc_.has_value() ||
|
|
2283
1870
|
value_allocator_traits::propagate_on_container_move_assignment::
|
|
2284
1871
|
value) {
|
|
2285
|
-
alloc_ =
|
|
1872
|
+
alloc_ = std::move(n.alloc_);
|
|
2286
1873
|
}
|
|
2287
1874
|
ptr_ = n.ptr_;
|
|
2288
1875
|
n.ptr_ = node_pointer();
|
|
@@ -2294,18 +1881,21 @@ namespace boost {
|
|
|
2294
1881
|
|
|
2295
1882
|
allocator_type get_allocator() const { return *alloc_; }
|
|
2296
1883
|
|
|
2297
|
-
|
|
1884
|
+
explicit operator bool() const noexcept
|
|
1885
|
+
{
|
|
1886
|
+
return !this->operator!();
|
|
1887
|
+
}
|
|
2298
1888
|
|
|
2299
|
-
bool operator!() const
|
|
1889
|
+
bool operator!() const noexcept { return ptr_ ? 0 : 1; }
|
|
2300
1890
|
|
|
2301
|
-
BOOST_ATTRIBUTE_NODISCARD bool empty() const
|
|
1891
|
+
BOOST_ATTRIBUTE_NODISCARD bool empty() const noexcept
|
|
2302
1892
|
{
|
|
2303
1893
|
return ptr_ ? 0 : 1;
|
|
2304
1894
|
}
|
|
2305
1895
|
|
|
2306
|
-
void swap(node_handle_set& n)
|
|
2307
|
-
value_allocator_traits::propagate_on_container_swap::value ||
|
|
2308
|
-
|
|
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)
|
|
2309
1899
|
{
|
|
2310
1900
|
BOOST_ASSERT(
|
|
2311
1901
|
!alloc_.has_value() || !n.alloc_.has_value() ||
|
|
@@ -2313,60 +1903,70 @@ namespace boost {
|
|
|
2313
1903
|
alloc_ == n.alloc_);
|
|
2314
1904
|
if (value_allocator_traits::propagate_on_container_swap::value ||
|
|
2315
1905
|
!alloc_.has_value() || !n.alloc_.has_value()) {
|
|
2316
|
-
boost::
|
|
1906
|
+
boost::core::invoke_swap(alloc_, n.alloc_);
|
|
2317
1907
|
}
|
|
2318
|
-
boost::
|
|
1908
|
+
boost::core::invoke_swap(ptr_, n.ptr_);
|
|
2319
1909
|
}
|
|
2320
1910
|
};
|
|
2321
1911
|
|
|
2322
1912
|
template <typename N, typename T, typename A>
|
|
2323
1913
|
void swap(node_handle_set<N, T, A>& x, node_handle_set<N, T, A>& y)
|
|
2324
|
-
|
|
1914
|
+
noexcept(noexcept(x.swap(y)))
|
|
2325
1915
|
{
|
|
2326
1916
|
x.swap(y);
|
|
2327
1917
|
}
|
|
2328
1918
|
|
|
2329
1919
|
template <class Iter, class NodeType> struct insert_return_type_set
|
|
2330
1920
|
{
|
|
2331
|
-
private:
|
|
2332
|
-
BOOST_MOVABLE_BUT_NOT_COPYABLE(insert_return_type_set)
|
|
2333
|
-
|
|
2334
|
-
// typedef typename boost::unordered::detail::rebind_wrap<A, T>::type
|
|
2335
|
-
// value_allocator;
|
|
2336
|
-
// typedef N node_;
|
|
2337
|
-
|
|
2338
1921
|
public:
|
|
2339
1922
|
Iter position;
|
|
2340
1923
|
bool inserted;
|
|
2341
1924
|
NodeType node;
|
|
2342
1925
|
|
|
2343
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;
|
|
2344
1929
|
|
|
2345
|
-
insert_return_type_set(
|
|
2346
|
-
|
|
2347
|
-
|
|
2348
|
-
|
|
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))
|
|
2349
1934
|
{
|
|
2350
1935
|
}
|
|
2351
1936
|
|
|
2352
|
-
insert_return_type_set& operator=(
|
|
1937
|
+
insert_return_type_set& operator=(insert_return_type_set&& x)
|
|
2353
1938
|
{
|
|
2354
1939
|
inserted = x.inserted;
|
|
2355
1940
|
position = x.position;
|
|
2356
|
-
node =
|
|
1941
|
+
node = std::move(x.node);
|
|
2357
1942
|
return *this;
|
|
2358
1943
|
}
|
|
2359
1944
|
};
|
|
2360
1945
|
|
|
2361
1946
|
template <class Iter, class NodeType>
|
|
2362
|
-
void swap(
|
|
2363
|
-
insert_return_type_set<Iter, NodeType>&
|
|
1947
|
+
void swap(insert_return_type_set<Iter, NodeType>& x,
|
|
1948
|
+
insert_return_type_set<Iter, NodeType>& y)
|
|
2364
1949
|
{
|
|
2365
|
-
boost::
|
|
2366
|
-
boost::
|
|
2367
|
-
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);
|
|
2368
1953
|
}
|
|
2369
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
|
+
|
|
2370
1970
|
} // namespace boost
|
|
2371
1971
|
|
|
2372
1972
|
#if defined(BOOST_MSVC)
|