passenger 5.3.3 → 5.3.4
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 +8 -0
- data/build/support/cxx_dependency_map.rb +151 -83
- data/dev/configkit-schemas/index.json +3 -3
- data/src/agent/Core/AdminPanelConnector.h +5 -3
- data/src/agent/Core/ApplicationPool/Common.h +1 -2
- data/src/agent/Core/ApplicationPool/Context.h +1 -2
- data/src/agent/Core/ApplicationPool/Group/InternalUtils.cpp +2 -2
- data/src/agent/Core/ApplicationPool/Pool/InitializationAndShutdown.cpp +2 -2
- data/src/agent/Core/Config.h +1 -1
- data/src/agent/Core/Controller.h +2 -1
- data/src/agent/Core/Controller/Config.h +6 -5
- data/src/agent/Core/Controller/Hooks.cpp +11 -0
- data/src/agent/Core/Controller/SendRequest.cpp +7 -7
- data/src/agent/Core/CoreMain.cpp +0 -2
- data/src/agent/Core/SpawningKit/Context.h +1 -3
- data/src/agent/Core/SpawningKit/Handshake/BackgroundIOCapturer.h +2 -2
- data/src/agent/Core/SpawningKit/Handshake/Perform.h +2 -2
- data/src/agent/Core/SpawningKit/Handshake/Prepare.h +17 -38
- data/src/agent/Core/SpawningKit/PipeWatcher.h +5 -3
- data/src/agent/Core/SpawningKit/UserSwitchingRules.h +13 -5
- data/src/agent/Shared/ApiServerUtils.h +2 -2
- data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +33 -18
- data/src/agent/Watchdog/Config.h +1 -1
- data/src/agent/Watchdog/WatchdogMain.cpp +20 -20
- data/src/apache2_module/Config.cpp +7 -6
- data/src/cxx_supportlib/ConfigKit/Store.h +2 -2
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/Exceptions.h +0 -1
- data/src/cxx_supportlib/FileTools/PathSecurityCheck.cpp +3 -2
- data/src/cxx_supportlib/ResourceLocator.h +3 -21
- data/src/cxx_supportlib/SafeLibev.h +6 -6
- data/src/cxx_supportlib/ServerKit/Channel.h +2 -2
- data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +3 -3
- data/src/cxx_supportlib/ServerKit/FileBufferedFdSinkChannel.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpServer.h +27 -15
- data/src/cxx_supportlib/ServerKit/Server.h +2 -2
- data/src/cxx_supportlib/SystemTools/README.md +1 -0
- data/src/cxx_supportlib/SystemTools/UserDatabase.cpp +222 -0
- data/src/cxx_supportlib/SystemTools/UserDatabase.h +151 -0
- data/src/cxx_supportlib/Utils.cpp +1 -113
- data/src/cxx_supportlib/Utils.h +1 -29
- data/src/cxx_supportlib/Utils/MessagePassing.h +3 -3
- data/src/cxx_supportlib/WatchdogLauncher.h +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/case_conv.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/find_iterator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/util.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +31 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_allocator.hpp +133 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_executor.hpp +151 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +149 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +140 -49
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +145 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_io_object.hpp +75 -41
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +139 -49
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +98 -45
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_serial_port.hpp +42 -49
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_signal_set.hpp +45 -38
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +349 -109
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +959 -108
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_iostream.hpp +198 -54
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_streambuf.hpp +424 -284
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +116 -47
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf.hpp +99 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf_fwd.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +235 -49
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +613 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +1139 -1216
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream.hpp +27 -14
- 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 +26 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream.hpp +27 -14
- 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 +61 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/completion_condition.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +462 -226
- data/src/cxx_supportlib/vendor-modified/boost/asio/coroutine.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/datagram_socket_service.hpp +94 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/deadline_timer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/deadline_timer_service.hpp +20 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/defer.hpp +109 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array_fwd.hpp +1 -1
- 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 +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_completion_cond.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bind_handler.hpp +404 -77
- 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 +212 -51
- 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 +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono.hpp +68 -0
- 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 +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/concurrency_hint.hpp +94 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_event.hpp +114 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_mutex.hpp +151 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +398 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/consuming_buffers.hpp +287 -165
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstddef.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstdint.hpp +15 -1
- 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 +65 -14
- 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 +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_read_op.hpp +17 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_write_op.hpp +17 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dev_poll_reactor.hpp +27 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/epoll_reactor.hpp +41 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/event.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/eventfd_select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_op.hpp +86 -0
- 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 +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/{function.hpp → functional.hpp} +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_arm_fenced_block.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_hppa_fenced_block.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_sync_fenced_block.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_x86_fenced_block.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/global.hpp +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +158 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_cont_helpers.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_invoke_helpers.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_tracking.hpp +90 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_type_requirements.hpp +117 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_work.hpp +97 -0
- 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 +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/descriptor_ops.ipp +24 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.hpp +17 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +34 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.hpp +17 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.ipp +152 -51
- 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 +80 -27
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.hpp +19 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.ipp +93 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/null_event.ipp +76 -0
- 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 +13 -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_thread.ipp +11 -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 +27 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_serial_port_service.ipp +7 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_socket_service_base.ipp +43 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/resolver_service_base.ipp +54 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/{task_io_service.ipp → scheduler.ipp} +167 -70
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.hpp +17 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.ipp +46 -26
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.hpp +36 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.ipp +39 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/signal_set_service.ipp +43 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +129 -26
- 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 +181 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.ipp +136 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.ipp +15 -14
- 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 -5
- 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/io_control.hpp +1 -51
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_buffer_sequence.hpp +241 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_executor.hpp +128 -0
- 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 +36 -14
- 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/macos_fenced_block.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +42 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/mutex.hpp +1 -1
- 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 +17 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_fenced_block.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_global.hpp +61 -0
- 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 +10 -9
- 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 +29 -19
- 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 +7 -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 +26 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/old_win_sdk_compat.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/op_queue.hpp +7 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/operation.hpp +3 -3
- 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 +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_event.hpp +37 -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 +82 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_mutex.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 +5 -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 +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_descriptor_service.hpp +86 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_null_buffers_op.hpp +9 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_serial_port_service.hpp +10 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_accept_op.hpp +101 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_connect_op.hpp +14 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recv_op.hpp +20 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvfrom_op.hpp +13 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvmsg_op.hpp +15 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_send_op.hpp +25 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_sendto_op.hpp +15 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +99 -31
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +96 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_wait_op.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_fwd.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op.hpp +7 -3
- 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 +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/regex_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_endpoint_op.hpp +25 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_op.hpp +6 -92
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_query_op.hpp +136 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service.hpp +38 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service_base.hpp +30 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/{task_io_service.hpp → scheduler.hpp} +57 -45
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/{task_io_service_operation.hpp → scheduler_operation.hpp} +19 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/{task_io_service_thread_info.hpp → scheduler_thread_info.hpp} +10 -10
- 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 +9 -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 +37 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/service_registry.hpp +54 -34
- 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 +9 -5
- 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 +14 -13
- 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 +9 -6
- 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 +10 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/solaris_fenced_block.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/static_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_event.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_fenced_block.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_global.hpp +72 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_static_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_thread.hpp +7 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_executor_service.hpp +144 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_service.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/string_view.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread.hpp +9 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_context.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_group.hpp +91 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_info_base.hpp +45 -15
- 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 +29 -2
- 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 +11 -5
- 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 +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler_fwd.hpp +2 -2
- 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 +29 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/variadic_templates.hpp +74 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_handler.hpp +8 -6
- 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 +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/work_dispatcher.hpp +74 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wrapped_handler.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/dispatch.hpp +110 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/error.hpp +17 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution_context.hpp +413 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/executor.hpp +343 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/executor_work_guard.hpp +172 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_spawn.hpp +228 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detached.hpp +67 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/co_spawn.hpp +878 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/detached.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/redirect_error.hpp +296 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/redirect_error.hpp +69 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/basic_endpoint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/datagram_protocol.hpp +1 -1
- 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 +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/raw_protocol.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/seq_packet_protocol.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/stream_protocol.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_alloc_hook.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_continuation_hook.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_invoke_hook.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_type.hpp +11 -73
- data/src/cxx_supportlib/vendor-modified/boost/asio/high_resolution_timer.hpp +4 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_read_stream.hpp +86 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_write_stream.hpp +92 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +549 -119
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/defer.hpp +79 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/dispatch.hpp +80 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/error.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.hpp +109 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.ipp +84 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.hpp +388 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.ipp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/handler_alloc_hook.ipp +7 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.hpp +347 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.ipp +176 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/post.hpp +79 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +341 -379
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +173 -343
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +559 -206
- 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 +30 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +254 -72
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/src.cpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/src.hpp +12 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.hpp +36 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.ipp +75 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_executor.hpp +87 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.hpp +129 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.ipp +78 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_future.hpp +855 -94
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +358 -449
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +165 -418
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context.hpp +878 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context_strand.hpp +386 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_service.hpp +6 -743
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_service_strand.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address.hpp +79 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4.hpp +111 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_iterator.hpp +164 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_range.hpp +136 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6.hpp +104 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_iterator.hpp +185 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_range.hpp +131 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/bad_address_cast.hpp +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_endpoint.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +821 -71
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_entry.hpp +23 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_iterator.hpp +31 -99
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_query.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_results.hpp +313 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/endpoint.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/impl/endpoint.ipp +5 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/socket_option.hpp +16 -19
- 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 +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.hpp +28 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.ipp +55 -47
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.hpp +28 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.ipp +76 -44
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.hpp +28 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.ipp +85 -33
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/basic_endpoint.hpp +2 -14
- 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 +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.ipp +218 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.ipp +187 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/multicast.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v4.hpp +263 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v6.hpp +237 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_base.hpp +131 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_query_base.hpp +3 -90
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_service.hpp +48 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/tcp.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/udp.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/unicast.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/v6_only.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_executor.hpp +48 -0
- 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 +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/connect_pair.hpp +23 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/datagram_protocol.hpp +1 -1
- 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 +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/stream_protocol.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/packaged_task.hpp +128 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/placeholders.hpp +30 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +138 -46
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor.hpp +646 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor_base.hpp +17 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/stream_descriptor.hpp +326 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/stream_descriptor_service.hpp +63 -44
- data/src/cxx_supportlib/vendor-modified/boost/asio/post.hpp +109 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/raw_socket_service.hpp +94 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +328 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +13 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +1148 -247
- data/src/cxx_supportlib/vendor-modified/boost/asio/seq_packet_socket_service.hpp +88 -56
- data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port.hpp +736 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port_base.hpp +11 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port_service.hpp +41 -45
- data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set.hpp +422 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set_service.hpp +32 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/socket_acceptor_service.hpp +114 -48
- data/src/cxx_supportlib/vendor-modified/boost/asio/socket_base.hpp +85 -46
- data/src/cxx_supportlib/vendor-modified/boost/asio/spawn.hpp +89 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl.hpp +1 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context.hpp +33 -62
- 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 +27 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/engine.hpp +10 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/handshake_op.hpp +2 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/engine.ipp +22 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/openssl_init.ipp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/io.hpp +40 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_init.hpp +2 -2
- 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 +4 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/read_op.hpp +3 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/shutdown_op.hpp +2 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/stream_core.hpp +27 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/verify_callback.hpp +2 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/write_op.hpp +3 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/error.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.hpp +8 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +86 -102
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/error.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/rfc2818_verification.ipp +7 -13
- 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 +7 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +90 -85
- 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 +3 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_mode.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/steady_timer.hpp +4 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/strand.hpp +209 -175
- data/src/cxx_supportlib/vendor-modified/boost/asio/stream_socket_service.hpp +88 -56
- data/src/cxx_supportlib/vendor-modified/boost/asio/streambuf.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_context.hpp +80 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_executor.hpp +131 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_timer.hpp +4 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +234 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/time_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/buffer.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/executor.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/internet.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/io_context.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/net.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/netfwd.hpp +199 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/socket.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/timer.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/unyield.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +70 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/uses_executor.hpp +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/wait_traits.hpp +17 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/waitable_timer_service.hpp +62 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_handle.hpp +22 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_object_handle.hpp +14 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_random_access_handle.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_stream_handle.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/object_handle.hpp +346 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/object_handle_service.hpp +26 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/overlapped_handle.hpp +333 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/overlapped_ptr.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/random_access_handle.hpp +344 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/random_access_handle_service.hpp +31 -37
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/stream_handle.hpp +328 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/stream_handle_service.hpp +29 -37
- data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +321 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +13 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/yield.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/capabilities.hpp +50 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/addressof.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_flag.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_template.hpp +688 -220
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_cast.hpp +25 -21
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_fp_cast.hpp +86 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_arm.hpp +1 -18
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_atomic.hpp +9 -10
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_ppc.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_sync.hpp +7 -8
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_x86.hpp +1 -36
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/config.hpp +108 -34
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_operations.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_operations_fwd.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_emulated.hpp +107 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_generic.hpp +189 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_operations.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_operations_fwd.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_emulated.hpp +238 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_arm.hpp +1111 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_ppc.hpp +840 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_x86.hpp +1656 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_generic.hpp +402 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_msvc_arm.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_msvc_x86.hpp +1301 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/float_sizes.hpp +142 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_operations.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_operations_fwd.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_emulated.hpp +72 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_generic.hpp +83 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/hwcaps_gcc_arm.hpp +67 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/hwcaps_gcc_ppc.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/hwcaps_gcc_x86.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/int_sizes.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/integral_extend.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/interlocked.hpp +35 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/operations_lockfree.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_cas_based.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_emulated.hpp +8 -9
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_extending_cas_based.hpp +8 -7
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_alpha.hpp +14 -16
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_arm.hpp +548 -126
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_arm_common.hpp +134 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_atomic.hpp +36 -44
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_ppc.hpp +524 -96
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_ppc_common.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_sparc.hpp +14 -16
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_sync.hpp +27 -59
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_x86.hpp +104 -57
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_x86_dcas.hpp +268 -340
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_linux_arm.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_msvc_arm.hpp +22 -24
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_msvc_x86.hpp +55 -80
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/platform.hpp +88 -46
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/storage_type.hpp +30 -103
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/string_ops.hpp +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/conditional.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/integral_constant.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_floating_point.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_function.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_iec559.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_integral.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_signed.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_trivially_default_constructible.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/make_signed.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/make_unsigned.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_cc.hpp +30 -30
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_mf_cc.hpp +36 -36
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/system.hpp +0 -10
- data/src/cxx_supportlib/vendor-modified/boost/chrono/duration.hpp +28 -30
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_get.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_io.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/time_point_io.hpp +14 -8
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/time_point_units.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io_v1/chrono_io.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/chrono/process_cpu_clocks.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/chrono/time_point.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/base.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/details.hpp +7 -6
- data/src/cxx_supportlib/vendor-modified/boost/config.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +26 -4
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/borland.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +30 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/codegear.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/cray.hpp +32 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/diab.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/digitalmars.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +33 -6
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc_xml.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/intel.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/metrowerks.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/mpw.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/nvcc.hpp +28 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pathscale.hpp +17 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pgi.hpp +8 -142
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +14 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/vacpp.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +37 -9
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp_zos.hpp +169 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/{posix_features.hpp → detail/posix_features.hpp} +0 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/{select_compiler_config.hpp → detail/select_compiler_config.hpp} +15 -5
- data/src/cxx_supportlib/vendor-modified/boost/config/{select_platform_config.hpp → detail/select_platform_config.hpp} +8 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/{select_stdlib_config.hpp → detail/select_stdlib_config.hpp} +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/{suffix.hpp → detail/suffix.hpp} +27 -27
- data/src/cxx_supportlib/vendor-modified/boost/config/header_deprecated.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/helper_macros.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/aix.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/beos.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/bsd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/cray.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/cygwin.hpp +12 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/haiku.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/hpux.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/irix.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/linux.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/macos.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/qnxnto.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/solaris.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/symbian.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/vxworks.hpp +155 -91
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/zos.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/pragma_message.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/dinkumware.hpp +21 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcomo.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/modena.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/msl.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/roguewave.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/sgi.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/stlport.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/vacpp.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/xlcpp_zos.hpp +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/workaround.hpp +279 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +19 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +58 -58
- data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +7 -28
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +57 -57
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/addressof.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +18 -18
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/algorithm.hpp +122 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocator_version_traits.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/construct_in_place.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/container_or_allocator_rebind.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/container_rebind.hpp +258 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +119 -134
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/destroyers.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +55 -55
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +714 -282
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_container.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_contiguous_container.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_sorted.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterator.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterator_to_raw_pointer.hpp +4 -29
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/min_max.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/multiallocation_chain.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mutex.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/next_capacity.hpp +37 -35
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +41 -41
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +69 -16
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair_key_mapped_of_value.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common_alloc.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/singleton.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/transform_iterator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +180 -116
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/type_traits.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/value_functors.hpp +36 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/value_init.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/variadic_templates_tools.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/version_type.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +874 -572
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +497 -248
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +33 -42
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +326 -246
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +19 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/node_handle.hpp +122 -78
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +165 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/flat_map.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/flat_set.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/map.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/set.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +19 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +285 -110
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +35 -53
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +18 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +25 -25
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +24 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +194 -142
- data/src/cxx_supportlib/vendor-modified/boost/container/throw_exception.hpp +15 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +395 -421
- data/src/cxx_supportlib/vendor-modified/boost/{functional/hash → container_hash}/detail/float_functions.hpp +0 -0
- data/src/cxx_supportlib/vendor-modified/boost/{functional/hash → container_hash}/detail/hash_float.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/{functional/hash → container_hash}/detail/limits.hpp +0 -0
- data/src/cxx_supportlib/vendor-modified/boost/{functional/hash → container_hash}/extensions.hpp +112 -16
- data/src/cxx_supportlib/vendor-modified/boost/{functional/hash → container_hash}/hash.hpp +195 -7
- data/src/cxx_supportlib/vendor-modified/boost/{functional/hash → container_hash}/hash_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/core/addressof.hpp +53 -44
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +80 -2
- data/src/cxx_supportlib/vendor-modified/boost/core/no_exceptions_support.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/pointer_traits.hpp +233 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/ref.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/cstdint.hpp +26 -16
- data/src/cxx_supportlib/vendor-modified/boost/date_time/adjust_functors.hpp +20 -34
- data/src/cxx_supportlib/vendor-modified/boost/date_time/c_local_time_adjustor.hpp +8 -5
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_duration.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_formatting.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_formatting_locales.hpp +7 -6
- data/src/cxx_supportlib/vendor-modified/boost/date_time/dst_rules.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/date_time/filetime_functions.hpp +8 -94
- data/src/cxx_supportlib/vendor-modified/boost/date_time/format_date_parser.hpp +1 -8
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_day.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_facet.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_month.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_weekday.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_year.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/gregorian_io.hpp +52 -52
- data/src/cxx_supportlib/vendor-modified/boost/date_time/int_adapter.hpp +14 -27
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/custom_time_zone.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/locale_config.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/microsec_time_clock.hpp +36 -5
- data/src/cxx_supportlib/vendor-modified/boost/date_time/period_formatter.hpp +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/conversion.hpp +10 -12
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_duration.hpp +18 -10
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_io.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_serialize.hpp +65 -20
- data/src/cxx_supportlib/vendor-modified/boost/date_time/special_values_parser.hpp +32 -23
- data/src/cxx_supportlib/vendor-modified/boost/date_time/string_parse_tree.hpp +6 -5
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_duration.hpp +10 -7
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_facet.hpp +8 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_parsing.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_resolution_traits.hpp +31 -8
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_system_split.hpp +10 -4
- data/src/cxx_supportlib/vendor-modified/boost/date_time/tz_db_base.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/detail/workaround.hpp +2 -264
- data/src/cxx_supportlib/vendor-modified/boost/enable_shared_from_this.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/error_info_impl.hpp +38 -21
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/exception_ptr.hpp +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/is_output_streamable.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/object_hex_dump.hpp +7 -6
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/type_info.hpp +7 -6
- data/src/cxx_supportlib/vendor-modified/boost/exception/diagnostic_information.hpp +10 -7
- data/src/cxx_supportlib/vendor-modified/boost/exception/get_error_info.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/exception/info.hpp +13 -47
- data/src/cxx_supportlib/vendor-modified/boost/exception/to_string.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/exception/to_string_stub.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/function.hpp +12 -4
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/gen_maybe_include.pl +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/maybe_include.hpp +102 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash_fwd.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/integer/common_factor_rt.hpp +508 -390
- data/src/cxx_supportlib/vendor-modified/boost/integer/integer_mask.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/integer_fwd.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +11 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/config_begin.hpp +7 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/default_header_holder.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hashtable_node.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hook_traits.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iterator.hpp +108 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/mpl.hpp +15 -5
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_to_value.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_value_compare.hpp +8 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +147 -64
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +9 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/member_value_traits.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_plus_bits.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_traits.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +9 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/iterator/advance.hpp +84 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_adaptor.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_categories.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_concepts.hpp +8 -10
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_facade.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_traits.hpp +7 -6
- data/src/cxx_supportlib/vendor-modified/boost/iterator/reverse_iterator.hpp +7 -4
- data/src/cxx_supportlib/vendor-modified/boost/iterator/transform_iterator.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/once_atomic.cpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +36 -92
- data/src/cxx_supportlib/vendor-modified/boost/make_shared.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/detail/fp_traits.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/math_fwd.hpp +57 -3
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/sign.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/math/tools/config.hpp +12 -1
- data/src/cxx_supportlib/vendor-modified/boost/memory_order.hpp +40 -9
- data/src/cxx_supportlib/vendor-modified/boost/move/adl_move_swap.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_merge.hpp +253 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_sort.hpp +563 -4
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +324 -1071
- 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 +111 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/insertion_sort.hpp +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/is_sorted.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/merge.hpp +59 -143
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/merge_sort.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/pdqsort.hpp +334 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/set_difference.hpp +207 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/move.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/predicate.hpp +86 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/unique.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +1 -9
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/destruct_n.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/fwd_macros.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_to_raw_pointer.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/{intrusive → move}/detail/pointer_element.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/to_raw_pointer.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +19 -5
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/unique_ptr_meta_utils.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/assert.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/get_tag.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/next_prior.hpp +85 -55
- data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/conversion_traits.hpp +0 -7
- data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail/converter.hpp +4 -13
- data/src/cxx_supportlib/vendor-modified/boost/operators.hpp +26 -7
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/experimental_traits.hpp +98 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/old_optional_implementation.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_aligned_storage.hpp +17 -21
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_config.hpp +25 -6
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_relops.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +499 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +126 -21
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/arg_list.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/pointer_cast.hpp +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/pointer_to_other.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/arm.h +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/parisc.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/intel.h +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/arm.h +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c/cloudabi.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/make.h +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/android.h +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd/free.h +10 -3
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd/open.h +80 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/other/workaround.h +87 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform.h +9 -2
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/cloudabi.h +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/ios.h +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/mingw.h +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/mingw32.h +63 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/mingw64.h +63 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_desktop.h +9 -3
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_phone.h +7 -2
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_runtime.h +13 -5
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_server.h +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_store.h +11 -4
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_system.h +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_uwp.h +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/config/config.hpp +11 -9
- data/src/cxx_supportlib/vendor-modified/boost/random/binomial_distribution.hpp +27 -27
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/vector_io.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/discrete_distribution.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/random/hyperexponential_distribution.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/random/independent_bits.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/linear_congruential.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/poisson_distribution.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/random/seed_seq.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/uniform_on_sphere.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/range/concepts.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/range/iterator_range_core.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/config.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/pending/object_cache.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_creator.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_parser.hpp +56 -11
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/instances.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher.hpp +7 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_common.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_non_recursive.hpp +37 -13
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_recursive.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits_defaults.hpp +9 -6
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/scoped_array.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/scoped_ptr.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/shared_array.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/shared_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/allocate_shared_array.hpp +333 -656
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/bad_weak_ptr.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/local_counted_base.hpp +148 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/local_sp_deleter.hpp +91 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/operator_bool.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/shared_count.hpp +15 -3
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_acc_ia64.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_aix.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_clang.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_ppc.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_x86.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ia64.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_mips.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ppc.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_sparc.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_nt.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_pt.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_snc_ps3.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_solaris.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_spin.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_std_atomic.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_sync.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_vacpp_ppc.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_noexcept.hpp +21 -3
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/yield_k.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/enable_shared_from_this.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +26 -26
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ref_counter.hpp +17 -16
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_object.hpp +19 -19
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_array.hpp +11 -12
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_ptr.hpp +15 -16
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_array.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +135 -90
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/weak_ptr.hpp +23 -23
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.ipp +140 -111
- data/src/cxx_supportlib/vendor-modified/boost/system/error_code.hpp +297 -49
- data/src/cxx_supportlib/vendor-modified/boost/system/system_error.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_deque_base.hpp +30 -30
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_queue_base.hpp +30 -30
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_bounded_queue.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_deque.hpp +5 -7
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_priority_queue.hpp +19 -19
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_queue.hpp +5 -15
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_timed_queue.hpp +118 -183
- data/src/cxx_supportlib/vendor-modified/boost/{detail → thread/detail}/atomic_redef_macros.hpp +0 -0
- data/src/cxx_supportlib/vendor-modified/boost/{detail → thread/detail}/atomic_undef_macros.hpp +0 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/config.hpp +62 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/log.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/move.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/platform.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/platform_time.hpp +478 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread.hpp +51 -85
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/basic_thread_pool.hpp +11 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/detail/priority_executor_base.hpp +10 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/scheduled_thread_pool.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/scheduler.hpp +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/scheduling_adaptor.hpp +15 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/serial_executor.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +320 -92
- data/src/cxx_supportlib/vendor-modified/boost/thread/once.hpp +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable.hpp +187 -112
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable_fwd.hpp +137 -164
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/mutex.hpp +67 -37
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/pthread_helpers.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/pthread_mutex_scoped_lock.hpp +15 -9
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/recursive_mutex.hpp +65 -33
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/shared_mutex.hpp +84 -158
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/thread_data.hpp +143 -35
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/thread_heap_alloc.hpp +32 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/shared_mutex.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/thread_only.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/v2/shared_mutex.hpp +579 -589
- data/src/cxx_supportlib/vendor-modified/boost/token_functions.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/token_iterator.hpp +5 -2
- data/src/cxx_supportlib/vendor-modified/boost/tuple/detail/tuple_basic.hpp +7 -9
- data/src/cxx_supportlib/vendor-modified/boost/tuple/tuple.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/type_index.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_index/stl_type_index.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_index/type_index_facade.hpp +5 -8
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_const.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_cv.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_lvalue_reference.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_pointer.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_reference.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_rvalue_reference.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_volatile.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/common_type.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/conditional.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/copy_cv.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/decay.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/config.hpp +12 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/detector.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_binary_operator.hpp +71 -14
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_postfix_operator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_prefix_operator.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_ptr_helper.hpp +370 -102
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_likely_lambda.hpp +94 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_mem_fun_pointer_impl.hpp +1177 -572
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_mem_fun_pointer_tester.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detected.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detected_or.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/floating_point_promotion.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_equal_to.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_greater.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_greater_equal.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_less.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_less_equal.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_minus.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_minus_assign.hpp +95 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_not_equal_to.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_nothrow_destructor.hpp +11 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_plus_assign.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/integral_constant.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/integral_promotion.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/intrinsics.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_assignable.hpp +10 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_complete.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_complex.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_constructible.hpp +12 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_convertible.hpp +20 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_default_constructible.hpp +16 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_destructible.hpp +10 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected_convertible.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected_exact.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_list_constructible.hpp +48 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_assignable.hpp +14 -3
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_constructible.hpp +14 -4
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_swappable.hpp +67 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/make_signed.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/make_unsigned.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/nonesuch.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/promote.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_all_extents.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_bounds.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_const.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_cv.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_cv_ref.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_extent.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_pointer.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_reference.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_volatile.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/type_identity.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/type_with_alignment.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/typeof/decltype.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/msvc/typeof_impl.hpp +5 -85
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_fundamental.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/functional.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/memory.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof.hpp +24 -14
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fwd.hpp +18 -12
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +4018 -4052
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/map.hpp +57 -97
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/set.hpp +56 -95
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +2150 -1777
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map_fwd.hpp +41 -38
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +1630 -1420
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set_fwd.hpp +40 -37
- data/src/cxx_supportlib/vendor-modified/boost/utility.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/utility/detail/minstd_rand.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/detail/result_of_iterate.hpp +14 -17
- data/src/cxx_supportlib/vendor-modified/boost/utility/result_of.hpp +44 -20
- data/src/cxx_supportlib/vendor-modified/boost/utility/string_view.hpp +30 -30
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/weak_ptr.hpp +1 -1
- data/src/ruby_supportlib/phusion_passenger.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +3 -0
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +8 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +7 -1
- data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/tee_input.rb +4 -4
- metadata +201 -47
- data/src/cxx_supportlib/ConfigKit/VariantMapUtils.h +0 -96
- data/src/cxx_supportlib/MessageClient.h +0 -309
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/addressof.hpp +0 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/task_io_service.hpp +0 -80
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/shared_ptr.hpp +0 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/weak_ptr.hpp +0 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/win_iocp_serial_port_service.hpp +0 -230
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_service.hpp +0 -156
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_service.ipp +0 -157
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/basic_context.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context_service.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/old/basic_context.hpp +0 -436
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/old/context_service.hpp +0 -176
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/old/detail/openssl_context_service.hpp +0 -396
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/old/detail/openssl_operation.hpp +0 -526
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/old/detail/openssl_stream_service.hpp +0 -573
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/old/stream.hpp +0 -503
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/old/stream_service.hpp +0 -186
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream_service.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/to_raw_pointer.hpp +0 -33
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/to_raw_pointer.hpp +0 -47
- data/src/cxx_supportlib/vendor-modified/boost/iterator.hpp +0 -20
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/shared_mutex_assert.hpp +0 -724
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/timespec.hpp +0 -149
- data/src/cxx_supportlib/vendor-modified/boost/thread/v2/thread.hpp +0 -155
- data/src/cxx_supportlib/vendor-modified/boost/utility/empty_deleter.hpp +0 -43
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// basic_socket.hpp
|
|
3
3
|
// ~~~~~~~~~~~~~~~~
|
|
4
4
|
//
|
|
5
|
-
// Copyright (c) 2003-
|
|
5
|
+
// Copyright (c) 2003-2018 Christopher M. Kohlhoff (chris at kohlhoff dot com)
|
|
6
6
|
//
|
|
7
7
|
// Distributed under the Boost Software License, Version 1.0. (See accompanying
|
|
8
8
|
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
@@ -22,8 +22,26 @@
|
|
|
22
22
|
#include <boost/asio/detail/throw_error.hpp>
|
|
23
23
|
#include <boost/asio/detail/type_traits.hpp>
|
|
24
24
|
#include <boost/asio/error.hpp>
|
|
25
|
+
#include <boost/asio/post.hpp>
|
|
25
26
|
#include <boost/asio/socket_base.hpp>
|
|
26
27
|
|
|
28
|
+
#if defined(BOOST_ASIO_HAS_MOVE)
|
|
29
|
+
# include <utility>
|
|
30
|
+
#endif // defined(BOOST_ASIO_HAS_MOVE)
|
|
31
|
+
|
|
32
|
+
#if !defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
33
|
+
# if defined(BOOST_ASIO_WINDOWS_RUNTIME)
|
|
34
|
+
# include <boost/asio/detail/winrt_ssocket_service.hpp>
|
|
35
|
+
# define BOOST_ASIO_SVC_T detail::winrt_ssocket_service<Protocol>
|
|
36
|
+
# elif defined(BOOST_ASIO_HAS_IOCP)
|
|
37
|
+
# include <boost/asio/detail/win_iocp_socket_service.hpp>
|
|
38
|
+
# define BOOST_ASIO_SVC_T detail::win_iocp_socket_service<Protocol>
|
|
39
|
+
# else
|
|
40
|
+
# include <boost/asio/detail/reactive_socket_service.hpp>
|
|
41
|
+
# define BOOST_ASIO_SVC_T detail::reactive_socket_service<Protocol>
|
|
42
|
+
# endif
|
|
43
|
+
#endif // !defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
44
|
+
|
|
27
45
|
#include <boost/asio/detail/push_options.hpp>
|
|
28
46
|
|
|
29
47
|
namespace boost {
|
|
@@ -38,18 +56,21 @@ namespace asio {
|
|
|
38
56
|
* @e Distinct @e objects: Safe.@n
|
|
39
57
|
* @e Shared @e objects: Unsafe.
|
|
40
58
|
*/
|
|
41
|
-
template <typename Protocol
|
|
59
|
+
template <typename Protocol BOOST_ASIO_SVC_TPARAM>
|
|
42
60
|
class basic_socket
|
|
43
|
-
:
|
|
61
|
+
: BOOST_ASIO_SVC_ACCESS basic_io_object<BOOST_ASIO_SVC_T>,
|
|
44
62
|
public socket_base
|
|
45
63
|
{
|
|
46
64
|
public:
|
|
47
|
-
///
|
|
48
|
-
|
|
49
|
-
typedef typename SocketService::native_handle_type native_type;
|
|
65
|
+
/// The type of the executor associated with the object.
|
|
66
|
+
typedef io_context::executor_type executor_type;
|
|
50
67
|
|
|
51
68
|
/// The native representation of a socket.
|
|
52
|
-
|
|
69
|
+
#if defined(GENERATING_DOCUMENTATION)
|
|
70
|
+
typedef implementation_defined native_handle_type;
|
|
71
|
+
#else
|
|
72
|
+
typedef typename BOOST_ASIO_SVC_T::native_handle_type native_handle_type;
|
|
73
|
+
#endif
|
|
53
74
|
|
|
54
75
|
/// The protocol type.
|
|
55
76
|
typedef Protocol protocol_type;
|
|
@@ -57,18 +78,20 @@ public:
|
|
|
57
78
|
/// The endpoint type.
|
|
58
79
|
typedef typename Protocol::endpoint endpoint_type;
|
|
59
80
|
|
|
81
|
+
#if !defined(BOOST_ASIO_NO_EXTENSIONS)
|
|
60
82
|
/// A basic_socket is always the lowest layer.
|
|
61
|
-
typedef basic_socket<Protocol
|
|
83
|
+
typedef basic_socket<Protocol BOOST_ASIO_SVC_TARG> lowest_layer_type;
|
|
84
|
+
#endif // !defined(BOOST_ASIO_NO_EXTENSIONS)
|
|
62
85
|
|
|
63
86
|
/// Construct a basic_socket without opening it.
|
|
64
87
|
/**
|
|
65
88
|
* This constructor creates a socket without opening it.
|
|
66
89
|
*
|
|
67
|
-
* @param
|
|
90
|
+
* @param io_context The io_context object that the socket will use to
|
|
68
91
|
* dispatch handlers for any asynchronous operations performed on the socket.
|
|
69
92
|
*/
|
|
70
|
-
explicit basic_socket(boost::asio::
|
|
71
|
-
: basic_io_object<
|
|
93
|
+
explicit basic_socket(boost::asio::io_context& io_context)
|
|
94
|
+
: basic_io_object<BOOST_ASIO_SVC_T>(io_context)
|
|
72
95
|
{
|
|
73
96
|
}
|
|
74
97
|
|
|
@@ -76,16 +99,16 @@ public:
|
|
|
76
99
|
/**
|
|
77
100
|
* This constructor creates and opens a socket.
|
|
78
101
|
*
|
|
79
|
-
* @param
|
|
102
|
+
* @param io_context The io_context object that the socket will use to
|
|
80
103
|
* dispatch handlers for any asynchronous operations performed on the socket.
|
|
81
104
|
*
|
|
82
105
|
* @param protocol An object specifying protocol parameters to be used.
|
|
83
106
|
*
|
|
84
107
|
* @throws boost::system::system_error Thrown on failure.
|
|
85
108
|
*/
|
|
86
|
-
basic_socket(boost::asio::
|
|
109
|
+
basic_socket(boost::asio::io_context& io_context,
|
|
87
110
|
const protocol_type& protocol)
|
|
88
|
-
: basic_io_object<
|
|
111
|
+
: basic_io_object<BOOST_ASIO_SVC_T>(io_context)
|
|
89
112
|
{
|
|
90
113
|
boost::system::error_code ec;
|
|
91
114
|
this->get_service().open(this->get_implementation(), protocol, ec);
|
|
@@ -99,7 +122,7 @@ public:
|
|
|
99
122
|
* specified endpoint on the local machine. The protocol used is the protocol
|
|
100
123
|
* associated with the given endpoint.
|
|
101
124
|
*
|
|
102
|
-
* @param
|
|
125
|
+
* @param io_context The io_context object that the socket will use to
|
|
103
126
|
* dispatch handlers for any asynchronous operations performed on the socket.
|
|
104
127
|
*
|
|
105
128
|
* @param endpoint An endpoint on the local machine to which the socket will
|
|
@@ -107,9 +130,9 @@ public:
|
|
|
107
130
|
*
|
|
108
131
|
* @throws boost::system::system_error Thrown on failure.
|
|
109
132
|
*/
|
|
110
|
-
basic_socket(boost::asio::
|
|
133
|
+
basic_socket(boost::asio::io_context& io_context,
|
|
111
134
|
const endpoint_type& endpoint)
|
|
112
|
-
: basic_io_object<
|
|
135
|
+
: basic_io_object<BOOST_ASIO_SVC_T>(io_context)
|
|
113
136
|
{
|
|
114
137
|
boost::system::error_code ec;
|
|
115
138
|
const protocol_type protocol = endpoint.protocol();
|
|
@@ -123,7 +146,7 @@ public:
|
|
|
123
146
|
/**
|
|
124
147
|
* This constructor creates a socket object to hold an existing native socket.
|
|
125
148
|
*
|
|
126
|
-
* @param
|
|
149
|
+
* @param io_context The io_context object that the socket will use to
|
|
127
150
|
* dispatch handlers for any asynchronous operations performed on the socket.
|
|
128
151
|
*
|
|
129
152
|
* @param protocol An object specifying protocol parameters to be used.
|
|
@@ -132,9 +155,9 @@ public:
|
|
|
132
155
|
*
|
|
133
156
|
* @throws boost::system::system_error Thrown on failure.
|
|
134
157
|
*/
|
|
135
|
-
basic_socket(boost::asio::
|
|
158
|
+
basic_socket(boost::asio::io_context& io_context,
|
|
136
159
|
const protocol_type& protocol, const native_handle_type& native_socket)
|
|
137
|
-
: basic_io_object<
|
|
160
|
+
: basic_io_object<BOOST_ASIO_SVC_T>(io_context)
|
|
138
161
|
{
|
|
139
162
|
boost::system::error_code ec;
|
|
140
163
|
this->get_service().assign(this->get_implementation(),
|
|
@@ -151,11 +174,10 @@ public:
|
|
|
151
174
|
* occur.
|
|
152
175
|
*
|
|
153
176
|
* @note Following the move, the moved-from object is in the same state as if
|
|
154
|
-
* constructed using the @c basic_socket(
|
|
177
|
+
* constructed using the @c basic_socket(io_context&) constructor.
|
|
155
178
|
*/
|
|
156
179
|
basic_socket(basic_socket&& other)
|
|
157
|
-
: basic_io_object<
|
|
158
|
-
BOOST_ASIO_MOVE_CAST(basic_socket)(other))
|
|
180
|
+
: basic_io_object<BOOST_ASIO_SVC_T>(std::move(other))
|
|
159
181
|
{
|
|
160
182
|
}
|
|
161
183
|
|
|
@@ -167,17 +189,16 @@ public:
|
|
|
167
189
|
* occur.
|
|
168
190
|
*
|
|
169
191
|
* @note Following the move, the moved-from object is in the same state as if
|
|
170
|
-
* constructed using the @c basic_socket(
|
|
192
|
+
* constructed using the @c basic_socket(io_context&) constructor.
|
|
171
193
|
*/
|
|
172
194
|
basic_socket& operator=(basic_socket&& other)
|
|
173
195
|
{
|
|
174
|
-
basic_io_object<
|
|
175
|
-
BOOST_ASIO_MOVE_CAST(basic_socket)(other));
|
|
196
|
+
basic_io_object<BOOST_ASIO_SVC_T>::operator=(std::move(other));
|
|
176
197
|
return *this;
|
|
177
198
|
}
|
|
178
199
|
|
|
179
200
|
// All sockets have access to each other's implementations.
|
|
180
|
-
template <typename Protocol1
|
|
201
|
+
template <typename Protocol1 BOOST_ASIO_SVC_TPARAM1>
|
|
181
202
|
friend class basic_socket;
|
|
182
203
|
|
|
183
204
|
/// Move-construct a basic_socket from a socket of another protocol type.
|
|
@@ -188,12 +209,12 @@ public:
|
|
|
188
209
|
* occur.
|
|
189
210
|
*
|
|
190
211
|
* @note Following the move, the moved-from object is in the same state as if
|
|
191
|
-
* constructed using the @c basic_socket(
|
|
212
|
+
* constructed using the @c basic_socket(io_context&) constructor.
|
|
192
213
|
*/
|
|
193
|
-
template <typename Protocol1
|
|
194
|
-
basic_socket(basic_socket<Protocol1
|
|
214
|
+
template <typename Protocol1 BOOST_ASIO_SVC_TPARAM1>
|
|
215
|
+
basic_socket(basic_socket<Protocol1 BOOST_ASIO_SVC_TARG1>&& other,
|
|
195
216
|
typename enable_if<is_convertible<Protocol1, Protocol>::value>::type* = 0)
|
|
196
|
-
: basic_io_object<
|
|
217
|
+
: basic_io_object<BOOST_ASIO_SVC_T>(
|
|
197
218
|
other.get_service(), other.get_implementation())
|
|
198
219
|
{
|
|
199
220
|
}
|
|
@@ -206,21 +227,60 @@ public:
|
|
|
206
227
|
* occur.
|
|
207
228
|
*
|
|
208
229
|
* @note Following the move, the moved-from object is in the same state as if
|
|
209
|
-
* constructed using the @c basic_socket(
|
|
230
|
+
* constructed using the @c basic_socket(io_context&) constructor.
|
|
210
231
|
*/
|
|
211
|
-
template <typename Protocol1
|
|
232
|
+
template <typename Protocol1 BOOST_ASIO_SVC_TPARAM1>
|
|
212
233
|
typename enable_if<is_convertible<Protocol1, Protocol>::value,
|
|
213
234
|
basic_socket>::type& operator=(
|
|
214
|
-
basic_socket<Protocol1
|
|
235
|
+
basic_socket<Protocol1 BOOST_ASIO_SVC_TARG1>&& other)
|
|
215
236
|
{
|
|
216
|
-
basic_socket tmp(
|
|
217
|
-
|
|
218
|
-
basic_io_object<SocketService>::operator=(
|
|
219
|
-
BOOST_ASIO_MOVE_CAST(basic_socket)(tmp));
|
|
237
|
+
basic_socket tmp(std::move(other));
|
|
238
|
+
basic_io_object<BOOST_ASIO_SVC_T>::operator=(std::move(tmp));
|
|
220
239
|
return *this;
|
|
221
240
|
}
|
|
222
241
|
#endif // defined(BOOST_ASIO_HAS_MOVE) || defined(GENERATING_DOCUMENTATION)
|
|
223
242
|
|
|
243
|
+
#if defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
244
|
+
// These functions are provided by basic_io_object<>.
|
|
245
|
+
#else // defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
246
|
+
#if !defined(BOOST_ASIO_NO_DEPRECATED)
|
|
247
|
+
/// (Deprecated: Use get_executor().) Get the io_context associated with the
|
|
248
|
+
/// object.
|
|
249
|
+
/**
|
|
250
|
+
* This function may be used to obtain the io_context object that the I/O
|
|
251
|
+
* object uses to dispatch handlers for asynchronous operations.
|
|
252
|
+
*
|
|
253
|
+
* @return A reference to the io_context object that the I/O object will use
|
|
254
|
+
* to dispatch handlers. Ownership is not transferred to the caller.
|
|
255
|
+
*/
|
|
256
|
+
boost::asio::io_context& get_io_context()
|
|
257
|
+
{
|
|
258
|
+
return basic_io_object<BOOST_ASIO_SVC_T>::get_io_context();
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
/// (Deprecated: Use get_executor().) Get the io_context associated with the
|
|
262
|
+
/// object.
|
|
263
|
+
/**
|
|
264
|
+
* This function may be used to obtain the io_context object that the I/O
|
|
265
|
+
* object uses to dispatch handlers for asynchronous operations.
|
|
266
|
+
*
|
|
267
|
+
* @return A reference to the io_context object that the I/O object will use
|
|
268
|
+
* to dispatch handlers. Ownership is not transferred to the caller.
|
|
269
|
+
*/
|
|
270
|
+
boost::asio::io_context& get_io_service()
|
|
271
|
+
{
|
|
272
|
+
return basic_io_object<BOOST_ASIO_SVC_T>::get_io_service();
|
|
273
|
+
}
|
|
274
|
+
#endif // !defined(BOOST_ASIO_NO_DEPRECATED)
|
|
275
|
+
|
|
276
|
+
/// Get the executor associated with the object.
|
|
277
|
+
executor_type get_executor() BOOST_ASIO_NOEXCEPT
|
|
278
|
+
{
|
|
279
|
+
return basic_io_object<BOOST_ASIO_SVC_T>::get_executor();
|
|
280
|
+
}
|
|
281
|
+
#endif // defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
282
|
+
|
|
283
|
+
#if !defined(BOOST_ASIO_NO_EXTENSIONS)
|
|
224
284
|
/// Get a reference to the lowest layer.
|
|
225
285
|
/**
|
|
226
286
|
* This function returns a reference to the lowest layer in a stack of
|
|
@@ -248,6 +308,7 @@ public:
|
|
|
248
308
|
{
|
|
249
309
|
return *this;
|
|
250
310
|
}
|
|
311
|
+
#endif // !defined(BOOST_ASIO_NO_EXTENSIONS)
|
|
251
312
|
|
|
252
313
|
/// Open the socket using the specified protocol.
|
|
253
314
|
/**
|
|
@@ -259,7 +320,7 @@ public:
|
|
|
259
320
|
*
|
|
260
321
|
* @par Example
|
|
261
322
|
* @code
|
|
262
|
-
* boost::asio::ip::tcp::socket socket(
|
|
323
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
263
324
|
* socket.open(boost::asio::ip::tcp::v4());
|
|
264
325
|
* @endcode
|
|
265
326
|
*/
|
|
@@ -280,7 +341,7 @@ public:
|
|
|
280
341
|
*
|
|
281
342
|
* @par Example
|
|
282
343
|
* @code
|
|
283
|
-
* boost::asio::ip::tcp::socket socket(
|
|
344
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
284
345
|
* boost::system::error_code ec;
|
|
285
346
|
* socket.open(boost::asio::ip::tcp::v4(), ec);
|
|
286
347
|
* if (ec)
|
|
@@ -289,10 +350,11 @@ public:
|
|
|
289
350
|
* }
|
|
290
351
|
* @endcode
|
|
291
352
|
*/
|
|
292
|
-
|
|
353
|
+
BOOST_ASIO_SYNC_OP_VOID open(const protocol_type& protocol,
|
|
293
354
|
boost::system::error_code& ec)
|
|
294
355
|
{
|
|
295
|
-
|
|
356
|
+
this->get_service().open(this->get_implementation(), protocol, ec);
|
|
357
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
296
358
|
}
|
|
297
359
|
|
|
298
360
|
/// Assign an existing native socket to the socket.
|
|
@@ -324,11 +386,12 @@ public:
|
|
|
324
386
|
*
|
|
325
387
|
* @param ec Set to indicate what error occurred, if any.
|
|
326
388
|
*/
|
|
327
|
-
|
|
389
|
+
BOOST_ASIO_SYNC_OP_VOID assign(const protocol_type& protocol,
|
|
328
390
|
const native_handle_type& native_socket, boost::system::error_code& ec)
|
|
329
391
|
{
|
|
330
|
-
|
|
392
|
+
this->get_service().assign(this->get_implementation(),
|
|
331
393
|
protocol, native_socket, ec);
|
|
394
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
332
395
|
}
|
|
333
396
|
|
|
334
397
|
/// Determine whether the socket is open.
|
|
@@ -367,7 +430,7 @@ public:
|
|
|
367
430
|
*
|
|
368
431
|
* @par Example
|
|
369
432
|
* @code
|
|
370
|
-
* boost::asio::ip::tcp::socket socket(
|
|
433
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
371
434
|
* ...
|
|
372
435
|
* boost::system::error_code ec;
|
|
373
436
|
* socket.close(ec);
|
|
@@ -380,20 +443,62 @@ public:
|
|
|
380
443
|
* @note For portable behaviour with respect to graceful closure of a
|
|
381
444
|
* connected socket, call shutdown() before closing the socket.
|
|
382
445
|
*/
|
|
383
|
-
|
|
446
|
+
BOOST_ASIO_SYNC_OP_VOID close(boost::system::error_code& ec)
|
|
384
447
|
{
|
|
385
|
-
|
|
448
|
+
this->get_service().close(this->get_implementation(), ec);
|
|
449
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
386
450
|
}
|
|
387
451
|
|
|
388
|
-
///
|
|
452
|
+
/// Release ownership of the underlying native socket.
|
|
389
453
|
/**
|
|
390
|
-
* This function
|
|
391
|
-
*
|
|
392
|
-
*
|
|
454
|
+
* This function causes all outstanding asynchronous connect, send and receive
|
|
455
|
+
* operations to finish immediately, and the handlers for cancelled operations
|
|
456
|
+
* will be passed the boost::asio::error::operation_aborted error. Ownership
|
|
457
|
+
* of the native socket is then transferred to the caller.
|
|
458
|
+
*
|
|
459
|
+
* @throws boost::system::system_error Thrown on failure.
|
|
460
|
+
*
|
|
461
|
+
* @note This function is unsupported on Windows versions prior to Windows
|
|
462
|
+
* 8.1, and will fail with boost::asio::error::operation_not_supported on
|
|
463
|
+
* these platforms.
|
|
464
|
+
*/
|
|
465
|
+
#if defined(BOOST_ASIO_MSVC) && (BOOST_ASIO_MSVC >= 1400) \
|
|
466
|
+
&& (!defined(_WIN32_WINNT) || _WIN32_WINNT < 0x0603)
|
|
467
|
+
__declspec(deprecated("This function always fails with "
|
|
468
|
+
"operation_not_supported when used on Windows versions "
|
|
469
|
+
"prior to Windows 8.1."))
|
|
470
|
+
#endif
|
|
471
|
+
native_handle_type release()
|
|
472
|
+
{
|
|
473
|
+
boost::system::error_code ec;
|
|
474
|
+
native_handle_type s = this->get_service().release(
|
|
475
|
+
this->get_implementation(), ec);
|
|
476
|
+
boost::asio::detail::throw_error(ec, "release");
|
|
477
|
+
return s;
|
|
478
|
+
}
|
|
479
|
+
|
|
480
|
+
/// Release ownership of the underlying native socket.
|
|
481
|
+
/**
|
|
482
|
+
* This function causes all outstanding asynchronous connect, send and receive
|
|
483
|
+
* operations to finish immediately, and the handlers for cancelled operations
|
|
484
|
+
* will be passed the boost::asio::error::operation_aborted error. Ownership
|
|
485
|
+
* of the native socket is then transferred to the caller.
|
|
486
|
+
*
|
|
487
|
+
* @param ec Set to indicate what error occurred, if any.
|
|
488
|
+
*
|
|
489
|
+
* @note This function is unsupported on Windows versions prior to Windows
|
|
490
|
+
* 8.1, and will fail with boost::asio::error::operation_not_supported on
|
|
491
|
+
* these platforms.
|
|
393
492
|
*/
|
|
394
|
-
|
|
493
|
+
#if defined(BOOST_ASIO_MSVC) && (BOOST_ASIO_MSVC >= 1400) \
|
|
494
|
+
&& (!defined(_WIN32_WINNT) || _WIN32_WINNT < 0x0603)
|
|
495
|
+
__declspec(deprecated("This function always fails with "
|
|
496
|
+
"operation_not_supported when used on Windows versions "
|
|
497
|
+
"prior to Windows 8.1."))
|
|
498
|
+
#endif
|
|
499
|
+
native_handle_type release(boost::system::error_code& ec)
|
|
395
500
|
{
|
|
396
|
-
return this->get_service().
|
|
501
|
+
return this->get_service().release(this->get_implementation(), ec);
|
|
397
502
|
}
|
|
398
503
|
|
|
399
504
|
/// Get the native socket representation.
|
|
@@ -496,9 +601,10 @@ public:
|
|
|
496
601
|
"operation_not_supported when used on Windows XP, Windows Server 2003, "
|
|
497
602
|
"or earlier. Consult documentation for details."))
|
|
498
603
|
#endif
|
|
499
|
-
|
|
604
|
+
BOOST_ASIO_SYNC_OP_VOID cancel(boost::system::error_code& ec)
|
|
500
605
|
{
|
|
501
|
-
|
|
606
|
+
this->get_service().cancel(this->get_implementation(), ec);
|
|
607
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
502
608
|
}
|
|
503
609
|
|
|
504
610
|
/// Determine whether the socket is at the out-of-band data mark.
|
|
@@ -580,7 +686,7 @@ public:
|
|
|
580
686
|
*
|
|
581
687
|
* @par Example
|
|
582
688
|
* @code
|
|
583
|
-
* boost::asio::ip::tcp::socket socket(
|
|
689
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
584
690
|
* socket.open(boost::asio::ip::tcp::v4());
|
|
585
691
|
* socket.bind(boost::asio::ip::tcp::endpoint(
|
|
586
692
|
* boost::asio::ip::tcp::v4(), 12345));
|
|
@@ -605,7 +711,7 @@ public:
|
|
|
605
711
|
*
|
|
606
712
|
* @par Example
|
|
607
713
|
* @code
|
|
608
|
-
* boost::asio::ip::tcp::socket socket(
|
|
714
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
609
715
|
* socket.open(boost::asio::ip::tcp::v4());
|
|
610
716
|
* boost::system::error_code ec;
|
|
611
717
|
* socket.bind(boost::asio::ip::tcp::endpoint(
|
|
@@ -616,10 +722,11 @@ public:
|
|
|
616
722
|
* }
|
|
617
723
|
* @endcode
|
|
618
724
|
*/
|
|
619
|
-
|
|
725
|
+
BOOST_ASIO_SYNC_OP_VOID bind(const endpoint_type& endpoint,
|
|
620
726
|
boost::system::error_code& ec)
|
|
621
727
|
{
|
|
622
|
-
|
|
728
|
+
this->get_service().bind(this->get_implementation(), endpoint, ec);
|
|
729
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
623
730
|
}
|
|
624
731
|
|
|
625
732
|
/// Connect the socket to the specified endpoint.
|
|
@@ -639,7 +746,7 @@ public:
|
|
|
639
746
|
*
|
|
640
747
|
* @par Example
|
|
641
748
|
* @code
|
|
642
|
-
* boost::asio::ip::tcp::socket socket(
|
|
749
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
643
750
|
* boost::asio::ip::tcp::endpoint endpoint(
|
|
644
751
|
* boost::asio::ip::address::from_string("1.2.3.4"), 12345);
|
|
645
752
|
* socket.connect(endpoint);
|
|
@@ -675,7 +782,7 @@ public:
|
|
|
675
782
|
*
|
|
676
783
|
* @par Example
|
|
677
784
|
* @code
|
|
678
|
-
* boost::asio::ip::tcp::socket socket(
|
|
785
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
679
786
|
* boost::asio::ip::tcp::endpoint endpoint(
|
|
680
787
|
* boost::asio::ip::address::from_string("1.2.3.4"), 12345);
|
|
681
788
|
* boost::system::error_code ec;
|
|
@@ -686,20 +793,21 @@ public:
|
|
|
686
793
|
* }
|
|
687
794
|
* @endcode
|
|
688
795
|
*/
|
|
689
|
-
|
|
796
|
+
BOOST_ASIO_SYNC_OP_VOID connect(const endpoint_type& peer_endpoint,
|
|
690
797
|
boost::system::error_code& ec)
|
|
691
798
|
{
|
|
692
799
|
if (!is_open())
|
|
693
800
|
{
|
|
694
|
-
|
|
695
|
-
peer_endpoint.protocol(), ec)
|
|
801
|
+
this->get_service().open(this->get_implementation(),
|
|
802
|
+
peer_endpoint.protocol(), ec);
|
|
803
|
+
if (ec)
|
|
696
804
|
{
|
|
697
|
-
|
|
805
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
698
806
|
}
|
|
699
807
|
}
|
|
700
808
|
|
|
701
|
-
|
|
702
|
-
|
|
809
|
+
this->get_service().connect(this->get_implementation(), peer_endpoint, ec);
|
|
810
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
703
811
|
}
|
|
704
812
|
|
|
705
813
|
/// Start an asynchronous connect.
|
|
@@ -723,7 +831,7 @@ public:
|
|
|
723
831
|
* Regardless of whether the asynchronous operation completes immediately or
|
|
724
832
|
* not, the handler will not be invoked from within this function. Invocation
|
|
725
833
|
* of the handler will be performed in a manner equivalent to using
|
|
726
|
-
* boost::asio::
|
|
834
|
+
* boost::asio::io_context::post().
|
|
727
835
|
*
|
|
728
836
|
* @par Example
|
|
729
837
|
* @code
|
|
@@ -737,7 +845,7 @@ public:
|
|
|
737
845
|
*
|
|
738
846
|
* ...
|
|
739
847
|
*
|
|
740
|
-
* boost::asio::ip::tcp::socket socket(
|
|
848
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
741
849
|
* boost::asio::ip::tcp::endpoint endpoint(
|
|
742
850
|
* boost::asio::ip::address::from_string("1.2.3.4"), 12345);
|
|
743
851
|
* socket.async_connect(endpoint, connect_handler);
|
|
@@ -757,24 +865,34 @@ public:
|
|
|
757
865
|
{
|
|
758
866
|
boost::system::error_code ec;
|
|
759
867
|
const protocol_type protocol = peer_endpoint.protocol();
|
|
760
|
-
|
|
868
|
+
this->get_service().open(this->get_implementation(), protocol, ec);
|
|
869
|
+
if (ec)
|
|
761
870
|
{
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
BOOST_ASIO_MOVE_CAST(ConnectHandler)(handler));
|
|
871
|
+
async_completion<ConnectHandler,
|
|
872
|
+
void (boost::system::error_code)> init(handler);
|
|
765
873
|
|
|
766
|
-
this->
|
|
874
|
+
boost::asio::post(this->get_executor(),
|
|
767
875
|
boost::asio::detail::bind_handler(
|
|
768
876
|
BOOST_ASIO_MOVE_CAST(BOOST_ASIO_HANDLER_TYPE(
|
|
769
877
|
ConnectHandler, void (boost::system::error_code)))(
|
|
770
|
-
init.
|
|
878
|
+
init.completion_handler), ec));
|
|
771
879
|
|
|
772
880
|
return init.result.get();
|
|
773
881
|
}
|
|
774
882
|
}
|
|
775
883
|
|
|
884
|
+
#if defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
776
885
|
return this->get_service().async_connect(this->get_implementation(),
|
|
777
886
|
peer_endpoint, BOOST_ASIO_MOVE_CAST(ConnectHandler)(handler));
|
|
887
|
+
#else // defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
888
|
+
async_completion<ConnectHandler,
|
|
889
|
+
void (boost::system::error_code)> init(handler);
|
|
890
|
+
|
|
891
|
+
this->get_service().async_connect(
|
|
892
|
+
this->get_implementation(), peer_endpoint, init.completion_handler);
|
|
893
|
+
|
|
894
|
+
return init.result.get();
|
|
895
|
+
#endif // defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
778
896
|
}
|
|
779
897
|
|
|
780
898
|
/// Set an option on the socket.
|
|
@@ -805,7 +923,7 @@ public:
|
|
|
805
923
|
* @par Example
|
|
806
924
|
* Setting the IPPROTO_TCP/TCP_NODELAY option:
|
|
807
925
|
* @code
|
|
808
|
-
* boost::asio::ip::tcp::socket socket(
|
|
926
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
809
927
|
* ...
|
|
810
928
|
* boost::asio::ip::tcp::no_delay option(true);
|
|
811
929
|
* socket.set_option(option);
|
|
@@ -847,7 +965,7 @@ public:
|
|
|
847
965
|
* @par Example
|
|
848
966
|
* Setting the IPPROTO_TCP/TCP_NODELAY option:
|
|
849
967
|
* @code
|
|
850
|
-
* boost::asio::ip::tcp::socket socket(
|
|
968
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
851
969
|
* ...
|
|
852
970
|
* boost::asio::ip::tcp::no_delay option(true);
|
|
853
971
|
* boost::system::error_code ec;
|
|
@@ -859,11 +977,11 @@ public:
|
|
|
859
977
|
* @endcode
|
|
860
978
|
*/
|
|
861
979
|
template <typename SettableSocketOption>
|
|
862
|
-
|
|
980
|
+
BOOST_ASIO_SYNC_OP_VOID set_option(const SettableSocketOption& option,
|
|
863
981
|
boost::system::error_code& ec)
|
|
864
982
|
{
|
|
865
|
-
|
|
866
|
-
|
|
983
|
+
this->get_service().set_option(this->get_implementation(), option, ec);
|
|
984
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
867
985
|
}
|
|
868
986
|
|
|
869
987
|
/// Get an option from the socket.
|
|
@@ -894,7 +1012,7 @@ public:
|
|
|
894
1012
|
* @par Example
|
|
895
1013
|
* Getting the value of the SOL_SOCKET/SO_KEEPALIVE option:
|
|
896
1014
|
* @code
|
|
897
|
-
* boost::asio::ip::tcp::socket socket(
|
|
1015
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
898
1016
|
* ...
|
|
899
1017
|
* boost::asio::ip::tcp::socket::keep_alive option;
|
|
900
1018
|
* socket.get_option(option);
|
|
@@ -937,7 +1055,7 @@ public:
|
|
|
937
1055
|
* @par Example
|
|
938
1056
|
* Getting the value of the SOL_SOCKET/SO_KEEPALIVE option:
|
|
939
1057
|
* @code
|
|
940
|
-
* boost::asio::ip::tcp::socket socket(
|
|
1058
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
941
1059
|
* ...
|
|
942
1060
|
* boost::asio::ip::tcp::socket::keep_alive option;
|
|
943
1061
|
* boost::system::error_code ec;
|
|
@@ -950,11 +1068,11 @@ public:
|
|
|
950
1068
|
* @endcode
|
|
951
1069
|
*/
|
|
952
1070
|
template <typename GettableSocketOption>
|
|
953
|
-
|
|
1071
|
+
BOOST_ASIO_SYNC_OP_VOID get_option(GettableSocketOption& option,
|
|
954
1072
|
boost::system::error_code& ec) const
|
|
955
1073
|
{
|
|
956
|
-
|
|
957
|
-
|
|
1074
|
+
this->get_service().get_option(this->get_implementation(), option, ec);
|
|
1075
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
958
1076
|
}
|
|
959
1077
|
|
|
960
1078
|
/// Perform an IO control command on the socket.
|
|
@@ -972,7 +1090,7 @@ public:
|
|
|
972
1090
|
* @par Example
|
|
973
1091
|
* Getting the number of bytes ready to read:
|
|
974
1092
|
* @code
|
|
975
|
-
* boost::asio::ip::tcp::socket socket(
|
|
1093
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
976
1094
|
* ...
|
|
977
1095
|
* boost::asio::ip::tcp::socket::bytes_readable command;
|
|
978
1096
|
* socket.io_control(command);
|
|
@@ -1002,7 +1120,7 @@ public:
|
|
|
1002
1120
|
* @par Example
|
|
1003
1121
|
* Getting the number of bytes ready to read:
|
|
1004
1122
|
* @code
|
|
1005
|
-
* boost::asio::ip::tcp::socket socket(
|
|
1123
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
1006
1124
|
* ...
|
|
1007
1125
|
* boost::asio::ip::tcp::socket::bytes_readable command;
|
|
1008
1126
|
* boost::system::error_code ec;
|
|
@@ -1015,11 +1133,11 @@ public:
|
|
|
1015
1133
|
* @endcode
|
|
1016
1134
|
*/
|
|
1017
1135
|
template <typename IoControlCommand>
|
|
1018
|
-
|
|
1136
|
+
BOOST_ASIO_SYNC_OP_VOID io_control(IoControlCommand& command,
|
|
1019
1137
|
boost::system::error_code& ec)
|
|
1020
1138
|
{
|
|
1021
|
-
|
|
1022
|
-
|
|
1139
|
+
this->get_service().io_control(this->get_implementation(), command, ec);
|
|
1140
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
1023
1141
|
}
|
|
1024
1142
|
|
|
1025
1143
|
/// Gets the non-blocking mode of the socket.
|
|
@@ -1071,11 +1189,11 @@ public:
|
|
|
1071
1189
|
* operations. Asynchronous operations will never fail with the error
|
|
1072
1190
|
* boost::asio::error::would_block.
|
|
1073
1191
|
*/
|
|
1074
|
-
|
|
1192
|
+
BOOST_ASIO_SYNC_OP_VOID non_blocking(
|
|
1075
1193
|
bool mode, boost::system::error_code& ec)
|
|
1076
1194
|
{
|
|
1077
|
-
|
|
1078
|
-
|
|
1195
|
+
this->get_service().non_blocking(this->get_implementation(), mode, ec);
|
|
1196
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
1079
1197
|
}
|
|
1080
1198
|
|
|
1081
1199
|
/// Gets the non-blocking mode of the native socket implementation.
|
|
@@ -1135,7 +1253,7 @@ public:
|
|
|
1135
1253
|
* || ec == boost::asio::error::try_again)
|
|
1136
1254
|
* {
|
|
1137
1255
|
* // We have to wait for the socket to become ready again.
|
|
1138
|
-
* sock_.
|
|
1256
|
+
* sock_.async_wait(tcp::socket::wait_write, *this);
|
|
1139
1257
|
* return;
|
|
1140
1258
|
* }
|
|
1141
1259
|
*
|
|
@@ -1159,7 +1277,7 @@ public:
|
|
|
1159
1277
|
* void async_sendfile(tcp::socket& sock, int fd, Handler h)
|
|
1160
1278
|
* {
|
|
1161
1279
|
* sendfile_op<Handler> op = { sock, fd, h, 0, 0 };
|
|
1162
|
-
* sock.
|
|
1280
|
+
* sock.async_wait(tcp::socket::wait_write, op);
|
|
1163
1281
|
* } @endcode
|
|
1164
1282
|
*/
|
|
1165
1283
|
bool native_non_blocking() const
|
|
@@ -1225,7 +1343,7 @@ public:
|
|
|
1225
1343
|
* || ec == boost::asio::error::try_again)
|
|
1226
1344
|
* {
|
|
1227
1345
|
* // We have to wait for the socket to become ready again.
|
|
1228
|
-
* sock_.
|
|
1346
|
+
* sock_.async_wait(tcp::socket::wait_write, *this);
|
|
1229
1347
|
* return;
|
|
1230
1348
|
* }
|
|
1231
1349
|
*
|
|
@@ -1249,7 +1367,7 @@ public:
|
|
|
1249
1367
|
* void async_sendfile(tcp::socket& sock, int fd, Handler h)
|
|
1250
1368
|
* {
|
|
1251
1369
|
* sendfile_op<Handler> op = { sock, fd, h, 0, 0 };
|
|
1252
|
-
* sock.
|
|
1370
|
+
* sock.async_wait(tcp::socket::wait_write, op);
|
|
1253
1371
|
* } @endcode
|
|
1254
1372
|
*/
|
|
1255
1373
|
void native_non_blocking(bool mode)
|
|
@@ -1318,7 +1436,7 @@ public:
|
|
|
1318
1436
|
* || ec == boost::asio::error::try_again)
|
|
1319
1437
|
* {
|
|
1320
1438
|
* // We have to wait for the socket to become ready again.
|
|
1321
|
-
* sock_.
|
|
1439
|
+
* sock_.async_wait(tcp::socket::wait_write, *this);
|
|
1322
1440
|
* return;
|
|
1323
1441
|
* }
|
|
1324
1442
|
*
|
|
@@ -1342,14 +1460,15 @@ public:
|
|
|
1342
1460
|
* void async_sendfile(tcp::socket& sock, int fd, Handler h)
|
|
1343
1461
|
* {
|
|
1344
1462
|
* sendfile_op<Handler> op = { sock, fd, h, 0, 0 };
|
|
1345
|
-
* sock.
|
|
1463
|
+
* sock.async_wait(tcp::socket::wait_write, op);
|
|
1346
1464
|
* } @endcode
|
|
1347
1465
|
*/
|
|
1348
|
-
|
|
1466
|
+
BOOST_ASIO_SYNC_OP_VOID native_non_blocking(
|
|
1349
1467
|
bool mode, boost::system::error_code& ec)
|
|
1350
1468
|
{
|
|
1351
|
-
|
|
1469
|
+
this->get_service().native_non_blocking(
|
|
1352
1470
|
this->get_implementation(), mode, ec);
|
|
1471
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
1353
1472
|
}
|
|
1354
1473
|
|
|
1355
1474
|
/// Get the local endpoint of the socket.
|
|
@@ -1362,7 +1481,7 @@ public:
|
|
|
1362
1481
|
*
|
|
1363
1482
|
* @par Example
|
|
1364
1483
|
* @code
|
|
1365
|
-
* boost::asio::ip::tcp::socket socket(
|
|
1484
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
1366
1485
|
* ...
|
|
1367
1486
|
* boost::asio::ip::tcp::endpoint endpoint = socket.local_endpoint();
|
|
1368
1487
|
* @endcode
|
|
@@ -1387,7 +1506,7 @@ public:
|
|
|
1387
1506
|
*
|
|
1388
1507
|
* @par Example
|
|
1389
1508
|
* @code
|
|
1390
|
-
* boost::asio::ip::tcp::socket socket(
|
|
1509
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
1391
1510
|
* ...
|
|
1392
1511
|
* boost::system::error_code ec;
|
|
1393
1512
|
* boost::asio::ip::tcp::endpoint endpoint = socket.local_endpoint(ec);
|
|
@@ -1412,7 +1531,7 @@ public:
|
|
|
1412
1531
|
*
|
|
1413
1532
|
* @par Example
|
|
1414
1533
|
* @code
|
|
1415
|
-
* boost::asio::ip::tcp::socket socket(
|
|
1534
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
1416
1535
|
* ...
|
|
1417
1536
|
* boost::asio::ip::tcp::endpoint endpoint = socket.remote_endpoint();
|
|
1418
1537
|
* @endcode
|
|
@@ -1437,7 +1556,7 @@ public:
|
|
|
1437
1556
|
*
|
|
1438
1557
|
* @par Example
|
|
1439
1558
|
* @code
|
|
1440
|
-
* boost::asio::ip::tcp::socket socket(
|
|
1559
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
1441
1560
|
* ...
|
|
1442
1561
|
* boost::system::error_code ec;
|
|
1443
1562
|
* boost::asio::ip::tcp::endpoint endpoint = socket.remote_endpoint(ec);
|
|
@@ -1464,7 +1583,7 @@ public:
|
|
|
1464
1583
|
* @par Example
|
|
1465
1584
|
* Shutting down the send side of the socket:
|
|
1466
1585
|
* @code
|
|
1467
|
-
* boost::asio::ip::tcp::socket socket(
|
|
1586
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
1468
1587
|
* ...
|
|
1469
1588
|
* socket.shutdown(boost::asio::ip::tcp::socket::shutdown_send);
|
|
1470
1589
|
* @endcode
|
|
@@ -1488,7 +1607,7 @@ public:
|
|
|
1488
1607
|
* @par Example
|
|
1489
1608
|
* Shutting down the send side of the socket:
|
|
1490
1609
|
* @code
|
|
1491
|
-
* boost::asio::ip::tcp::socket socket(
|
|
1610
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
1492
1611
|
* ...
|
|
1493
1612
|
* boost::system::error_code ec;
|
|
1494
1613
|
* socket.shutdown(boost::asio::ip::tcp::socket::shutdown_send, ec);
|
|
@@ -1498,17 +1617,134 @@ public:
|
|
|
1498
1617
|
* }
|
|
1499
1618
|
* @endcode
|
|
1500
1619
|
*/
|
|
1501
|
-
|
|
1620
|
+
BOOST_ASIO_SYNC_OP_VOID shutdown(shutdown_type what,
|
|
1502
1621
|
boost::system::error_code& ec)
|
|
1503
1622
|
{
|
|
1504
|
-
|
|
1623
|
+
this->get_service().shutdown(this->get_implementation(), what, ec);
|
|
1624
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
1625
|
+
}
|
|
1626
|
+
|
|
1627
|
+
/// Wait for the socket to become ready to read, ready to write, or to have
|
|
1628
|
+
/// pending error conditions.
|
|
1629
|
+
/**
|
|
1630
|
+
* This function is used to perform a blocking wait for a socket to enter
|
|
1631
|
+
* a ready to read, write or error condition state.
|
|
1632
|
+
*
|
|
1633
|
+
* @param w Specifies the desired socket state.
|
|
1634
|
+
*
|
|
1635
|
+
* @par Example
|
|
1636
|
+
* Waiting for a socket to become readable.
|
|
1637
|
+
* @code
|
|
1638
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
1639
|
+
* ...
|
|
1640
|
+
* socket.wait(boost::asio::ip::tcp::socket::wait_read);
|
|
1641
|
+
* @endcode
|
|
1642
|
+
*/
|
|
1643
|
+
void wait(wait_type w)
|
|
1644
|
+
{
|
|
1645
|
+
boost::system::error_code ec;
|
|
1646
|
+
this->get_service().wait(this->get_implementation(), w, ec);
|
|
1647
|
+
boost::asio::detail::throw_error(ec, "wait");
|
|
1648
|
+
}
|
|
1649
|
+
|
|
1650
|
+
/// Wait for the socket to become ready to read, ready to write, or to have
|
|
1651
|
+
/// pending error conditions.
|
|
1652
|
+
/**
|
|
1653
|
+
* This function is used to perform a blocking wait for a socket to enter
|
|
1654
|
+
* a ready to read, write or error condition state.
|
|
1655
|
+
*
|
|
1656
|
+
* @param w Specifies the desired socket state.
|
|
1657
|
+
*
|
|
1658
|
+
* @param ec Set to indicate what error occurred, if any.
|
|
1659
|
+
*
|
|
1660
|
+
* @par Example
|
|
1661
|
+
* Waiting for a socket to become readable.
|
|
1662
|
+
* @code
|
|
1663
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
1664
|
+
* ...
|
|
1665
|
+
* boost::system::error_code ec;
|
|
1666
|
+
* socket.wait(boost::asio::ip::tcp::socket::wait_read, ec);
|
|
1667
|
+
* @endcode
|
|
1668
|
+
*/
|
|
1669
|
+
BOOST_ASIO_SYNC_OP_VOID wait(wait_type w, boost::system::error_code& ec)
|
|
1670
|
+
{
|
|
1671
|
+
this->get_service().wait(this->get_implementation(), w, ec);
|
|
1672
|
+
BOOST_ASIO_SYNC_OP_VOID_RETURN(ec);
|
|
1673
|
+
}
|
|
1674
|
+
|
|
1675
|
+
/// Asynchronously wait for the socket to become ready to read, ready to
|
|
1676
|
+
/// write, or to have pending error conditions.
|
|
1677
|
+
/**
|
|
1678
|
+
* This function is used to perform an asynchronous wait for a socket to enter
|
|
1679
|
+
* a ready to read, write or error condition state.
|
|
1680
|
+
*
|
|
1681
|
+
* @param w Specifies the desired socket state.
|
|
1682
|
+
*
|
|
1683
|
+
* @param handler The handler to be called when the wait operation completes.
|
|
1684
|
+
* Copies will be made of the handler as required. The function signature of
|
|
1685
|
+
* the handler must be:
|
|
1686
|
+
* @code void handler(
|
|
1687
|
+
* const boost::system::error_code& error // Result of operation
|
|
1688
|
+
* ); @endcode
|
|
1689
|
+
* Regardless of whether the asynchronous operation completes immediately or
|
|
1690
|
+
* not, the handler will not be invoked from within this function. Invocation
|
|
1691
|
+
* of the handler will be performed in a manner equivalent to using
|
|
1692
|
+
* boost::asio::io_context::post().
|
|
1693
|
+
*
|
|
1694
|
+
* @par Example
|
|
1695
|
+
* @code
|
|
1696
|
+
* void wait_handler(const boost::system::error_code& error)
|
|
1697
|
+
* {
|
|
1698
|
+
* if (!error)
|
|
1699
|
+
* {
|
|
1700
|
+
* // Wait succeeded.
|
|
1701
|
+
* }
|
|
1702
|
+
* }
|
|
1703
|
+
*
|
|
1704
|
+
* ...
|
|
1705
|
+
*
|
|
1706
|
+
* boost::asio::ip::tcp::socket socket(io_context);
|
|
1707
|
+
* ...
|
|
1708
|
+
* socket.async_wait(boost::asio::ip::tcp::socket::wait_read, wait_handler);
|
|
1709
|
+
* @endcode
|
|
1710
|
+
*/
|
|
1711
|
+
template <typename WaitHandler>
|
|
1712
|
+
BOOST_ASIO_INITFN_RESULT_TYPE(WaitHandler,
|
|
1713
|
+
void (boost::system::error_code))
|
|
1714
|
+
async_wait(wait_type w, BOOST_ASIO_MOVE_ARG(WaitHandler) handler)
|
|
1715
|
+
{
|
|
1716
|
+
// If you get an error on the following line it means that your handler does
|
|
1717
|
+
// not meet the documented type requirements for a WaitHandler.
|
|
1718
|
+
BOOST_ASIO_WAIT_HANDLER_CHECK(WaitHandler, handler) type_check;
|
|
1719
|
+
|
|
1720
|
+
#if defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
1721
|
+
return this->get_service().async_wait(this->get_implementation(),
|
|
1722
|
+
w, BOOST_ASIO_MOVE_CAST(WaitHandler)(handler));
|
|
1723
|
+
#else // defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
1724
|
+
async_completion<WaitHandler,
|
|
1725
|
+
void (boost::system::error_code)> init(handler);
|
|
1726
|
+
|
|
1727
|
+
this->get_service().async_wait(this->get_implementation(),
|
|
1728
|
+
w, init.completion_handler);
|
|
1729
|
+
|
|
1730
|
+
return init.result.get();
|
|
1731
|
+
#endif // defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
1505
1732
|
}
|
|
1506
1733
|
|
|
1507
1734
|
protected:
|
|
1508
1735
|
/// Protected destructor to prevent deletion through this type.
|
|
1736
|
+
/**
|
|
1737
|
+
* This function destroys the socket, cancelling any outstanding asynchronous
|
|
1738
|
+
* operations associated with the socket as if by calling @c cancel.
|
|
1739
|
+
*/
|
|
1509
1740
|
~basic_socket()
|
|
1510
1741
|
{
|
|
1511
1742
|
}
|
|
1743
|
+
|
|
1744
|
+
private:
|
|
1745
|
+
// Disallow copying and assignment.
|
|
1746
|
+
basic_socket(const basic_socket&) BOOST_ASIO_DELETED;
|
|
1747
|
+
basic_socket& operator=(const basic_socket&) BOOST_ASIO_DELETED;
|
|
1512
1748
|
};
|
|
1513
1749
|
|
|
1514
1750
|
} // namespace asio
|
|
@@ -1516,4 +1752,8 @@ protected:
|
|
|
1516
1752
|
|
|
1517
1753
|
#include <boost/asio/detail/pop_options.hpp>
|
|
1518
1754
|
|
|
1755
|
+
#if !defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
1756
|
+
# undef BOOST_ASIO_SVC_T
|
|
1757
|
+
#endif // !defined(BOOST_ASIO_ENABLE_OLD_SERVICES)
|
|
1758
|
+
|
|
1519
1759
|
#endif // BOOST_ASIO_BASIC_SOCKET_HPP
|