passenger 6.0.19 → 6.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1293) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +65 -3
  3. data/CONTRIBUTORS +2 -0
  4. data/README.md +2 -2
  5. data/bin/passenger-install-nginx-module +4 -4
  6. data/build/integration_tests.rb +2 -1
  7. data/build/support/cxx_dependency_map.rb +155 -54
  8. data/dev/copy_boost_headers +21 -7
  9. data/dev/nginx_version_sha256 +72 -0
  10. data/package.json +15 -15
  11. data/src/agent/AgentMain.cpp +2 -8
  12. data/src/agent/Core/AdminPanelConnector.h +2 -3
  13. data/src/agent/Core/ApiServer.h +1 -1
  14. data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +8 -1
  15. data/src/agent/Core/Config.h +6 -3
  16. data/src/agent/Core/Controller/AppResponse.h +0 -1
  17. data/src/agent/Core/Controller/Config.h +2 -2
  18. data/src/agent/Core/Controller/SendRequest.cpp +2 -2
  19. data/src/agent/Core/CoreMain.cpp +1 -0
  20. data/src/agent/Core/ResponseCache.h +3 -2
  21. data/src/agent/Core/SecurityUpdateChecker.h +1 -1
  22. data/src/agent/Core/SpawningKit/Handshake/Perform.h +4 -4
  23. data/src/agent/Core/SpawningKit/UserSwitchingRules.h +2 -2
  24. data/src/agent/ExecHelper/ExecHelperMain.cpp +10 -12
  25. data/src/agent/FileReadHelper/FileReadHelperMain.cpp +7 -10
  26. data/src/agent/MainFunctions.h +38 -0
  27. data/src/agent/Shared/ApiServerUtils.h +3 -2
  28. data/src/agent/Shared/Fundamentals/Initialization.cpp +1 -1
  29. data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +2 -3
  30. data/src/agent/SystemMetrics/SystemMetricsMain.cpp +1 -0
  31. data/src/agent/TempDirToucher/TempDirToucherMain.cpp +6 -4
  32. data/src/agent/Watchdog/ApiServer.h +1 -1
  33. data/src/agent/Watchdog/Config.h +1 -1
  34. data/src/agent/Watchdog/WatchdogMain.cpp +5 -12
  35. data/src/apache2_module/Hooks.cpp +26 -1
  36. data/src/cxx_supportlib/ConfigKit/Common.h +1 -1
  37. data/src/cxx_supportlib/Constants.h +1 -1
  38. data/src/cxx_supportlib/DataStructures/StringKeyTable.h +1 -1
  39. data/src/cxx_supportlib/FileTools/PathManip.cpp +10 -1
  40. data/src/cxx_supportlib/IOTools/IOUtils.cpp +2 -6
  41. data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +3 -3
  42. data/src/cxx_supportlib/JsonTools/CBindings.cpp +0 -2
  43. data/src/cxx_supportlib/JsonTools/JsonUtils.h +4 -4
  44. data/src/cxx_supportlib/LoggingKit/Context.h +16 -21
  45. data/src/cxx_supportlib/LoggingKit/Forward.h +0 -2
  46. data/src/cxx_supportlib/LoggingKit/Implementation.cpp +36 -72
  47. data/src/cxx_supportlib/MemoryKit/mbuf.cpp +12 -4
  48. data/src/cxx_supportlib/MemoryKit/mbuf.h +1 -1
  49. data/src/cxx_supportlib/ProcessManagement/Utils.cpp +1 -1
  50. data/src/cxx_supportlib/ResourceLocator.h +1 -1
  51. data/src/cxx_supportlib/SecurityKit/Crypto.cpp +3 -94
  52. data/src/cxx_supportlib/SecurityKit/Crypto.h +0 -8
  53. data/src/cxx_supportlib/ServerKit/Context.h +6 -0
  54. data/src/cxx_supportlib/ServerKit/Errors.h +3 -2
  55. data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +99 -64
  56. data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +4 -1
  57. data/src/cxx_supportlib/ServerKit/HttpRequest.h +2 -2
  58. data/src/cxx_supportlib/ServerKit/HttpServer.h +3 -2
  59. data/src/cxx_supportlib/ServerKit/llerrors.h +84 -0
  60. data/src/cxx_supportlib/ServerKit/llhttp.c +10168 -0
  61. data/src/cxx_supportlib/ServerKit/llhttp.h +903 -0
  62. data/src/cxx_supportlib/ServerKit/llhttp_api.c +510 -0
  63. data/src/cxx_supportlib/ServerKit/llhttp_http.c +170 -0
  64. data/src/cxx_supportlib/ServerKit/llversion.h +12 -0
  65. data/src/cxx_supportlib/ServerKit/url_parser.c +574 -0
  66. data/src/cxx_supportlib/ServerKit/url_parser.h +74 -0
  67. data/src/cxx_supportlib/StaticString.h +3 -1
  68. data/src/cxx_supportlib/StrIntTools/DateParsing.h +1 -1
  69. data/src/cxx_supportlib/StrIntTools/StrIntUtils.cpp +12 -3
  70. data/src/cxx_supportlib/StrIntTools/StrIntUtils.h +5 -0
  71. data/src/cxx_supportlib/SystemTools/SystemMetricsCollector.h +2 -2
  72. data/src/cxx_supportlib/SystemTools/UserDatabase.cpp +14 -14
  73. data/src/cxx_supportlib/SystemTools/UserDatabase.h +6 -10
  74. data/src/cxx_supportlib/Utils/AnsiColorConstants.h +11 -9
  75. data/src/cxx_supportlib/Utils.cpp +1 -1
  76. data/src/cxx_supportlib/oxt/implementation.cpp +1 -2
  77. data/src/cxx_supportlib/oxt/system_calls.cpp +1 -1
  78. data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_executor.hpp +26 -32
  79. data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_handler.hpp +194 -56
  80. data/src/cxx_supportlib/vendor-modified/boost/asio/any_io_executor.hpp +34 -42
  81. data/src/cxx_supportlib/vendor-modified/boost/asio/append.hpp +10 -23
  82. data/src/cxx_supportlib/vendor-modified/boost/asio/as_tuple.hpp +21 -34
  83. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_allocator.hpp +26 -45
  84. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_cancellation_slot.hpp +26 -43
  85. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_executor.hpp +30 -52
  86. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_immediate_executor.hpp +282 -0
  87. data/src/cxx_supportlib/vendor-modified/boost/asio/associator.hpp +1 -1
  88. data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +178 -863
  89. data/src/cxx_supportlib/vendor-modified/boost/asio/awaitable.hpp +1 -1
  90. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +64 -98
  91. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +17 -22
  92. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_file.hpp +18 -23
  93. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_io_object.hpp +4 -8
  94. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_random_access_file.hpp +30 -42
  95. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +65 -96
  96. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_readable_pipe.hpp +20 -29
  97. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +36 -48
  98. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_serial_port.hpp +31 -44
  99. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_signal_set.hpp +73 -23
  100. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +34 -45
  101. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +108 -151
  102. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_iostream.hpp +6 -82
  103. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_streambuf.hpp +6 -51
  104. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_file.hpp +30 -40
  105. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +50 -76
  106. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf.hpp +13 -15
  107. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf_fwd.hpp +3 -3
  108. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +23 -32
  109. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_writable_pipe.hpp +20 -29
  110. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_allocator.hpp +97 -299
  111. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +97 -288
  112. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +90 -288
  113. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_immediate_executor.hpp +551 -0
  114. data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +365 -290
  115. data/src/cxx_supportlib/vendor-modified/boost/asio/buffer_registration.hpp +29 -39
  116. data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream.hpp +27 -39
  117. data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream_fwd.hpp +1 -1
  118. data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream.hpp +33 -49
  119. data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream_fwd.hpp +1 -1
  120. data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream.hpp +27 -39
  121. data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream_fwd.hpp +1 -1
  122. data/src/cxx_supportlib/vendor-modified/boost/asio/buffers_iterator.hpp +4 -4
  123. data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_signal.hpp +25 -85
  124. data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_state.hpp +16 -16
  125. data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_type.hpp +8 -25
  126. data/src/cxx_supportlib/vendor-modified/boost/asio/co_spawn.hpp +17 -17
  127. data/src/cxx_supportlib/vendor-modified/boost/asio/completion_condition.hpp +1 -1
  128. data/src/cxx_supportlib/vendor-modified/boost/asio/compose.hpp +60 -272
  129. data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +52 -79
  130. data/src/cxx_supportlib/vendor-modified/boost/asio/connect_pipe.hpp +1 -1
  131. data/src/cxx_supportlib/vendor-modified/boost/asio/consign.hpp +11 -24
  132. data/src/cxx_supportlib/vendor-modified/boost/asio/coroutine.hpp +2 -1
  133. data/src/cxx_supportlib/vendor-modified/boost/asio/deadline_timer.hpp +1 -1
  134. data/src/cxx_supportlib/vendor-modified/boost/asio/defer.hpp +37 -34
  135. data/src/cxx_supportlib/vendor-modified/boost/asio/deferred.hpp +302 -262
  136. data/src/cxx_supportlib/vendor-modified/boost/asio/detached.hpp +12 -20
  137. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array.hpp +2 -10
  138. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array_fwd.hpp +2 -4
  139. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/assert.hpp +1 -1
  140. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/atomic_count.hpp +5 -13
  141. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_cancellation_state.hpp +21 -20
  142. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_completion_cond.hpp +2 -2
  143. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bind_handler.hpp +129 -563
  144. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/blocking_executor_op.hpp +3 -3
  145. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffer_resize_guard.hpp +1 -1
  146. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffer_sequence_adapter.hpp +3 -7
  147. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffered_stream_storage.hpp +1 -1
  148. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/call_stack.hpp +1 -1
  149. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono.hpp +2 -23
  150. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono_time_traits.hpp +1 -1
  151. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/completion_handler.hpp +4 -4
  152. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/composed_work.hpp +21 -97
  153. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/concurrency_hint.hpp +1 -1
  154. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_event.hpp +1 -1
  155. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_mutex.hpp +1 -1
  156. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +155 -963
  157. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/consuming_buffers.hpp +3 -11
  158. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstddef.hpp +1 -5
  159. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstdint.hpp +2 -24
  160. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/date_time_fwd.hpp +1 -1
  161. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/deadline_timer_service.hpp +4 -4
  162. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dependent_type.hpp +1 -1
  163. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_ops.hpp +1 -1
  164. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_read_op.hpp +41 -3
  165. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_write_op.hpp +40 -3
  166. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dev_poll_reactor.hpp +20 -3
  167. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/epoll_reactor.hpp +20 -3
  168. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/event.hpp +3 -5
  169. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/eventfd_select_interrupter.hpp +1 -1
  170. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/exception.hpp +2 -13
  171. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_function.hpp +8 -60
  172. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_op.hpp +6 -6
  173. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/fd_set_adapter.hpp +1 -1
  174. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/fenced_block.hpp +3 -43
  175. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/functional.hpp +1 -12
  176. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/future.hpp +9 -10
  177. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/global.hpp +3 -5
  178. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +41 -104
  179. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_cont_helpers.hpp +1 -1
  180. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_tracking.hpp +3 -3
  181. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_type_requirements.hpp +9 -15
  182. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_work.hpp +101 -123
  183. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/hash_map.hpp +1 -1
  184. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/buffer_sequence_adapter.ipp +1 -1
  185. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/descriptor_ops.ipp +36 -15
  186. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.hpp +2 -2
  187. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +13 -4
  188. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.hpp +2 -2
  189. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.ipp +17 -8
  190. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/eventfd_select_interrupter.ipp +1 -1
  191. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/handler_tracking.ipp +5 -5
  192. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_descriptor_service.ipp +2 -2
  193. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_file_service.ipp +1 -1
  194. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_service.hpp +1 -1
  195. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_service.ipp +69 -35
  196. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_socket_service_base.ipp +2 -2
  197. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.hpp +2 -2
  198. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.ipp +15 -6
  199. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/null_event.ipp +1 -1
  200. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/pipe_select_interrupter.ipp +1 -1
  201. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_event.ipp +1 -1
  202. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_mutex.ipp +1 -1
  203. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_serial_port_service.ipp +1 -1
  204. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_thread.ipp +1 -1
  205. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_tss_ptr.ipp +1 -1
  206. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_descriptor_service.ipp +9 -9
  207. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_socket_service_base.ipp +26 -18
  208. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/resolver_service_base.ipp +3 -3
  209. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/scheduler.ipp +2 -1
  210. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.hpp +2 -2
  211. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.ipp +12 -4
  212. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.hpp +2 -3
  213. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.ipp +1 -1
  214. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/signal_set_service.ipp +57 -4
  215. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +63 -5
  216. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_select_interrupter.ipp +1 -1
  217. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.hpp +47 -68
  218. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.ipp +1 -1
  219. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.hpp +2 -3
  220. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.ipp +1 -1
  221. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/thread_context.ipp +1 -1
  222. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/throw_error.ipp +1 -1
  223. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_ptime.ipp +12 -12
  224. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_set.ipp +1 -1
  225. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_defer.hpp +209 -0
  226. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_dispatch.hpp +195 -0
  227. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_post.hpp +209 -0
  228. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_control.hpp +1 -1
  229. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_object_impl.hpp +6 -10
  230. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_at_op.hpp +6 -3
  231. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_op.hpp +6 -3
  232. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_service.hpp +17 -9
  233. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_at_op.hpp +6 -3
  234. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_op.hpp +6 -3
  235. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_file_service.hpp +2 -3
  236. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_null_buffers_op.hpp +5 -4
  237. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_operation.hpp +1 -1
  238. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_service.hpp +4 -3
  239. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_accept_op.hpp +11 -12
  240. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_connect_op.hpp +5 -4
  241. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recv_op.hpp +6 -3
  242. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvfrom_op.hpp +7 -4
  243. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvmsg_op.hpp +6 -3
  244. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_send_op.hpp +6 -3
  245. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_sendto_op.hpp +6 -3
  246. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_service.hpp +11 -13
  247. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_service_base.hpp +9 -9
  248. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_wait_op.hpp +5 -4
  249. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_buffer_sequence.hpp +7 -49
  250. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_executor.hpp +1 -1
  251. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/keyword_tss_ptr.hpp +1 -1
  252. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/kqueue_reactor.hpp +20 -3
  253. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/limits.hpp +1 -6
  254. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/local_free_on_block_exit.hpp +1 -1
  255. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +13 -43
  256. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/mutex.hpp +3 -5
  257. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/non_const_lvalue.hpp +4 -15
  258. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/noncopyable.hpp +1 -1
  259. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_event.hpp +1 -1
  260. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_fenced_block.hpp +1 -1
  261. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_global.hpp +1 -1
  262. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_mutex.hpp +1 -1
  263. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_reactor.hpp +1 -1
  264. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_signal_blocker.hpp +1 -1
  265. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_socket_service.hpp +3 -3
  266. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_static_mutex.hpp +1 -1
  267. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_thread.hpp +1 -1
  268. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_tss_ptr.hpp +1 -1
  269. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/object_pool.hpp +1 -1
  270. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/op_queue.hpp +1 -1
  271. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/operation.hpp +1 -1
  272. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pipe_select_interrupter.hpp +1 -1
  273. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pop_options.hpp +1 -1
  274. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_event.hpp +1 -1
  275. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_fd_set_adapter.hpp +1 -1
  276. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_global.hpp +1 -1
  277. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_mutex.hpp +1 -1
  278. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_serial_port_service.hpp +1 -1
  279. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_signal_blocker.hpp +1 -1
  280. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_static_mutex.hpp +1 -1
  281. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_thread.hpp +1 -1
  282. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_tss_ptr.hpp +1 -1
  283. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/push_options.hpp +1 -1
  284. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_descriptor_service.hpp +61 -25
  285. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_null_buffers_op.hpp +37 -4
  286. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_accept_op.hpp +89 -12
  287. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_connect_op.hpp +41 -4
  288. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recv_op.hpp +40 -4
  289. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvfrom_op.hpp +41 -4
  290. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvmsg_op.hpp +41 -4
  291. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_send_op.hpp +41 -4
  292. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_sendto_op.hpp +40 -4
  293. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +20 -20
  294. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +135 -38
  295. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_wait_op.hpp +37 -4
  296. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor.hpp +1 -1
  297. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op.hpp +1 -1
  298. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op_queue.hpp +1 -1
  299. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/recycling_allocator.hpp +2 -2
  300. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/regex_fwd.hpp +4 -13
  301. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_endpoint_op.hpp +4 -4
  302. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_op.hpp +1 -1
  303. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_query_op.hpp +4 -4
  304. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service.hpp +3 -3
  305. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service_base.hpp +1 -1
  306. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler.hpp +1 -1
  307. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_operation.hpp +1 -1
  308. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_task.hpp +1 -1
  309. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_thread_info.hpp +1 -1
  310. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scoped_lock.hpp +1 -1
  311. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scoped_ptr.hpp +1 -1
  312. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_interrupter.hpp +1 -1
  313. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_reactor.hpp +20 -3
  314. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/service_registry.hpp +2 -3
  315. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_blocker.hpp +1 -1
  316. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_handler.hpp +3 -3
  317. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_init.hpp +1 -1
  318. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_op.hpp +1 -1
  319. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_set_service.hpp +12 -3
  320. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_holder.hpp +1 -1
  321. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_ops.hpp +1 -1
  322. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_option.hpp +1 -1
  323. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_select_interrupter.hpp +1 -1
  324. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_types.hpp +11 -1
  325. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/source_location.hpp +1 -1
  326. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/static_mutex.hpp +3 -5
  327. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_event.hpp +1 -6
  328. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_fenced_block.hpp +1 -6
  329. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_global.hpp +1 -6
  330. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_mutex.hpp +1 -6
  331. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_static_mutex.hpp +1 -6
  332. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_thread.hpp +1 -6
  333. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_executor_service.hpp +13 -13
  334. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_service.hpp +1 -1
  335. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/string_view.hpp +1 -1
  336. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread.hpp +3 -5
  337. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_context.hpp +1 -1
  338. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_group.hpp +1 -1
  339. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_info_base.hpp +12 -22
  340. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/throw_error.hpp +1 -1
  341. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/throw_exception.hpp +1 -1
  342. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue.hpp +1 -1
  343. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_base.hpp +1 -1
  344. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_ptime.hpp +2 -2
  345. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_set.hpp +1 -1
  346. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler.hpp +1 -1
  347. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler_fwd.hpp +1 -1
  348. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/tss_ptr.hpp +1 -1
  349. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/type_traits.hpp +104 -90
  350. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/utility.hpp +4 -4
  351. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_handler.hpp +3 -3
  352. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_op.hpp +1 -1
  353. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/winsock_init.hpp +2 -2
  354. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/work_dispatcher.hpp +20 -34
  355. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wrapped_handler.hpp +7 -117
  356. data/src/cxx_supportlib/vendor-modified/boost/asio/dispatch.hpp +36 -34
  357. data/src/cxx_supportlib/vendor-modified/boost/asio/error.hpp +1 -1
  358. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/allocator.hpp +34 -112
  359. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/any_executor.hpp +268 -991
  360. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bad_executor.hpp +3 -4
  361. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking.hpp +296 -536
  362. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking_adaptation.hpp +232 -409
  363. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context.hpp +20 -73
  364. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context_as.hpp +30 -72
  365. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/executor.hpp +24 -170
  366. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/impl/bad_executor.ipp +3 -3
  367. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/invocable_archetype.hpp +2 -30
  368. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/mapping.hpp +240 -398
  369. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/occupancy.hpp +20 -73
  370. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/outstanding_work.hpp +149 -296
  371. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/prefer_only.hpp +56 -59
  372. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/relationship.hpp +149 -296
  373. data/src/cxx_supportlib/vendor-modified/boost/asio/execution.hpp +1 -16
  374. data/src/cxx_supportlib/vendor-modified/boost/asio/execution_context.hpp +1 -25
  375. data/src/cxx_supportlib/vendor-modified/boost/asio/executor.hpp +59 -43
  376. data/src/cxx_supportlib/vendor-modified/boost/asio/executor_work_guard.hpp +56 -61
  377. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/append.hpp +1 -1
  378. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_single.hpp +20 -24
  379. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_tuple.hpp +1 -1
  380. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/awaitable_operators.hpp +7 -7
  381. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_channel.hpp +56 -34
  382. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_concurrent_channel.hpp +56 -34
  383. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/cancellation_condition.hpp +25 -28
  384. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel.hpp +3 -3
  385. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_error.hpp +1 -1
  386. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_traits.hpp +15 -15
  387. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_composed.hpp +5 -4
  388. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_spawn.hpp +1 -1
  389. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/concurrent_channel.hpp +3 -3
  390. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro.hpp +1 -1
  391. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro_traits.hpp +1 -1
  392. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/deferred.hpp +1 -1
  393. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_handler.hpp +10 -13
  394. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_message.hpp +27 -20
  395. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_operation.hpp +193 -38
  396. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_payload.hpp +143 -14
  397. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_receive_op.hpp +24 -9
  398. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_functions.hpp +77 -17
  399. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_op.hpp +20 -12
  400. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_service.hpp +50 -50
  401. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_completion_handler.hpp +3 -3
  402. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_promise_allocator.hpp +1 -1
  403. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/has_signature.hpp +1 -1
  404. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/impl/channel_service.hpp +46 -34
  405. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/partial_promise.hpp +1 -1
  406. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +33 -96
  407. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/channel_error.ipp +2 -2
  408. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/co_composed.hpp +62 -20
  409. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/coro.hpp +48 -45
  410. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/parallel_group.hpp +56 -60
  411. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/promise.hpp +18 -4
  412. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_coro.hpp +5 -5
  413. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_promise.hpp +3 -3
  414. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +27 -31
  415. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/prepend.hpp +1 -1
  416. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/promise.hpp +1 -1
  417. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +15 -21
  418. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_promise.hpp +13 -13
  419. data/src/cxx_supportlib/vendor-modified/boost/asio/file_base.hpp +1 -1
  420. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/basic_endpoint.hpp +2 -6
  421. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/datagram_protocol.hpp +4 -4
  422. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail/endpoint.hpp +1 -1
  423. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail/impl/endpoint.ipp +1 -1
  424. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/raw_protocol.hpp +4 -4
  425. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/seq_packet_protocol.hpp +4 -4
  426. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/stream_protocol.hpp +4 -4
  427. data/src/cxx_supportlib/vendor-modified/boost/asio/handler_continuation_hook.hpp +1 -1
  428. data/src/cxx_supportlib/vendor-modified/boost/asio/high_resolution_timer.hpp +1 -6
  429. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_completion_executor.ipp +10 -14
  430. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_io_executor.ipp +10 -17
  431. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/append.hpp +37 -100
  432. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/as_tuple.hpp +99 -107
  433. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/awaitable.hpp +66 -25
  434. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_read_stream.hpp +55 -178
  435. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_write_stream.hpp +55 -178
  436. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancellation_signal.ipp +1 -1
  437. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +123 -73
  438. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +84 -234
  439. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect_pipe.hpp +1 -1
  440. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect_pipe.ipp +1 -1
  441. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/consign.hpp +32 -97
  442. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/deferred.hpp +73 -31
  443. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/detached.hpp +5 -58
  444. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/error.ipp +4 -4
  445. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.hpp +3 -35
  446. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.ipp +1 -1
  447. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.hpp +60 -43
  448. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.ipp +3 -3
  449. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.hpp +39 -56
  450. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.ipp +2 -1
  451. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/multiple_exceptions.ipp +4 -8
  452. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/prepend.hpp +36 -98
  453. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +206 -429
  454. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +60 -206
  455. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +456 -970
  456. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +43 -411
  457. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/serial_port_base.hpp +1 -1
  458. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/serial_port_base.ipp +1 -1
  459. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +207 -423
  460. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/src.hpp +1 -3
  461. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.hpp +2 -2
  462. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.ipp +2 -2
  463. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_executor.hpp +19 -25
  464. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.hpp +32 -109
  465. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.ipp +5 -4
  466. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_awaitable.hpp +2 -2
  467. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_future.hpp +79 -425
  468. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +213 -427
  469. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +58 -194
  470. data/src/cxx_supportlib/vendor-modified/boost/asio/io_context.hpp +91 -120
  471. data/src/cxx_supportlib/vendor-modified/boost/asio/io_context_strand.hpp +33 -25
  472. data/src/cxx_supportlib/vendor-modified/boost/asio/io_service.hpp +1 -1
  473. data/src/cxx_supportlib/vendor-modified/boost/asio/io_service_strand.hpp +1 -1
  474. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address.hpp +26 -35
  475. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4.hpp +28 -36
  476. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_iterator.hpp +13 -19
  477. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_range.hpp +16 -22
  478. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6.hpp +33 -42
  479. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_iterator.hpp +13 -18
  480. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_range.hpp +15 -20
  481. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/bad_address_cast.hpp +13 -3
  482. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_endpoint.hpp +26 -35
  483. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +46 -76
  484. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_entry.hpp +1 -1
  485. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_iterator.hpp +4 -8
  486. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_query.hpp +17 -1
  487. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_results.hpp +9 -13
  488. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/endpoint.hpp +17 -17
  489. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/impl/endpoint.ipp +10 -14
  490. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/socket_option.hpp +1 -1
  491. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/host_name.hpp +1 -1
  492. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/icmp.hpp +7 -7
  493. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.hpp +1 -1
  494. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.ipp +18 -22
  495. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.hpp +1 -1
  496. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.ipp +9 -13
  497. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.hpp +1 -1
  498. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.ipp +24 -32
  499. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/basic_endpoint.hpp +1 -1
  500. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/host_name.ipp +1 -1
  501. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.hpp +1 -1
  502. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.ipp +3 -3
  503. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.hpp +1 -1
  504. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.ipp +3 -3
  505. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/multicast.hpp +1 -1
  506. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v4.hpp +16 -20
  507. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v6.hpp +14 -18
  508. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_base.hpp +1 -1
  509. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_query_base.hpp +1 -1
  510. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/tcp.hpp +7 -7
  511. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/udp.hpp +7 -7
  512. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/unicast.hpp +1 -1
  513. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/v6_only.hpp +1 -1
  514. data/src/cxx_supportlib/vendor-modified/boost/asio/is_applicable_property.hpp +6 -6
  515. data/src/cxx_supportlib/vendor-modified/boost/asio/is_contiguous_iterator.hpp +2 -2
  516. data/src/cxx_supportlib/vendor-modified/boost/asio/is_executor.hpp +1 -1
  517. data/src/cxx_supportlib/vendor-modified/boost/asio/is_read_buffered.hpp +1 -1
  518. data/src/cxx_supportlib/vendor-modified/boost/asio/is_write_buffered.hpp +1 -1
  519. data/src/cxx_supportlib/vendor-modified/boost/asio/local/basic_endpoint.hpp +2 -6
  520. data/src/cxx_supportlib/vendor-modified/boost/asio/local/connect_pair.hpp +1 -1
  521. data/src/cxx_supportlib/vendor-modified/boost/asio/local/datagram_protocol.hpp +4 -4
  522. data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/endpoint.hpp +1 -1
  523. data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/impl/endpoint.ipp +1 -1
  524. data/src/cxx_supportlib/vendor-modified/boost/asio/local/seq_packet_protocol.hpp +86 -0
  525. data/src/cxx_supportlib/vendor-modified/boost/asio/local/stream_protocol.hpp +4 -4
  526. data/src/cxx_supportlib/vendor-modified/boost/asio/multiple_exceptions.hpp +3 -9
  527. data/src/cxx_supportlib/vendor-modified/boost/asio/packaged_task.hpp +1 -61
  528. data/src/cxx_supportlib/vendor-modified/boost/asio/placeholders.hpp +29 -105
  529. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +21 -29
  530. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +24 -34
  531. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor.hpp +1 -1
  532. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor_base.hpp +1 -1
  533. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/stream_descriptor.hpp +1 -1
  534. data/src/cxx_supportlib/vendor-modified/boost/asio/post.hpp +36 -34
  535. data/src/cxx_supportlib/vendor-modified/boost/asio/prefer.hpp +176 -333
  536. data/src/cxx_supportlib/vendor-modified/boost/asio/prepend.hpp +11 -23
  537. data/src/cxx_supportlib/vendor-modified/boost/asio/query.hpp +57 -70
  538. data/src/cxx_supportlib/vendor-modified/boost/asio/random_access_file.hpp +1 -1
  539. data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +136 -168
  540. data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +35 -52
  541. data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +256 -298
  542. data/src/cxx_supportlib/vendor-modified/boost/asio/readable_pipe.hpp +1 -1
  543. data/src/cxx_supportlib/vendor-modified/boost/asio/recycling_allocator.hpp +15 -15
  544. data/src/cxx_supportlib/vendor-modified/boost/asio/redirect_error.hpp +7 -9
  545. data/src/cxx_supportlib/vendor-modified/boost/asio/registered_buffer.hpp +35 -47
  546. data/src/cxx_supportlib/vendor-modified/boost/asio/require.hpp +108 -246
  547. data/src/cxx_supportlib/vendor-modified/boost/asio/require_concept.hpp +70 -79
  548. data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port.hpp +1 -1
  549. data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port_base.hpp +1 -1
  550. data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set.hpp +1 -1
  551. data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set_base.hpp +173 -0
  552. data/src/cxx_supportlib/vendor-modified/boost/asio/socket_base.hpp +1 -1
  553. data/src/cxx_supportlib/vendor-modified/boost/asio/spawn.hpp +127 -161
  554. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context.hpp +1 -3
  555. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context_base.hpp +24 -24
  556. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/buffered_handshake_op.hpp +3 -3
  557. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/engine.hpp +3 -7
  558. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/handshake_op.hpp +3 -3
  559. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/engine.ipp +3 -7
  560. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/openssl_init.ipp +2 -2
  561. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/io.hpp +16 -75
  562. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_init.hpp +1 -1
  563. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_types.hpp +1 -1
  564. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/password_callback.hpp +1 -1
  565. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/read_op.hpp +3 -3
  566. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/shutdown_op.hpp +4 -4
  567. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/stream_core.hpp +15 -19
  568. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/verify_callback.hpp +2 -2
  569. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/write_op.hpp +3 -3
  570. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/error.hpp +1 -1
  571. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/host_name_verification.hpp +1 -1
  572. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.hpp +1 -1
  573. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +2 -4
  574. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/error.ipp +3 -3
  575. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/host_name_verification.ipp +1 -1
  576. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/rfc2818_verification.ipp +1 -1
  577. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/src.hpp +1 -1
  578. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/rfc2818_verification.hpp +1 -1
  579. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +51 -82
  580. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream_base.hpp +1 -1
  581. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_context.hpp +1 -1
  582. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_mode.hpp +1 -1
  583. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl.hpp +1 -1
  584. data/src/cxx_supportlib/vendor-modified/boost/asio/static_thread_pool.hpp +1 -1
  585. data/src/cxx_supportlib/vendor-modified/boost/asio/steady_timer.hpp +1 -6
  586. data/src/cxx_supportlib/vendor-modified/boost/asio/strand.hpp +91 -118
  587. data/src/cxx_supportlib/vendor-modified/boost/asio/stream_file.hpp +1 -1
  588. data/src/cxx_supportlib/vendor-modified/boost/asio/streambuf.hpp +1 -1
  589. data/src/cxx_supportlib/vendor-modified/boost/asio/system_context.hpp +3 -3
  590. data/src/cxx_supportlib/vendor-modified/boost/asio/system_executor.hpp +62 -62
  591. data/src/cxx_supportlib/vendor-modified/boost/asio/system_timer.hpp +1 -6
  592. data/src/cxx_supportlib/vendor-modified/boost/asio/this_coro.hpp +35 -48
  593. data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +91 -273
  594. data/src/cxx_supportlib/vendor-modified/boost/asio/time_traits.hpp +1 -1
  595. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/equality_comparable.hpp +14 -18
  596. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/execute_member.hpp +16 -20
  597. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/prefer_free.hpp +16 -20
  598. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/prefer_member.hpp +16 -20
  599. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_free.hpp +16 -20
  600. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_member.hpp +16 -20
  601. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_static_constexpr_member.hpp +15 -22
  602. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_concept_free.hpp +16 -20
  603. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_concept_member.hpp +16 -20
  604. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_free.hpp +16 -20
  605. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_member.hpp +16 -20
  606. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_query.hpp +20 -26
  607. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_require.hpp +22 -30
  608. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_require_concept.hpp +22 -30
  609. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/buffer.hpp +1 -1
  610. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/executor.hpp +1 -1
  611. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/internet.hpp +1 -1
  612. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/io_context.hpp +1 -1
  613. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/net.hpp +1 -1
  614. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/netfwd.hpp +6 -24
  615. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/socket.hpp +1 -1
  616. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/timer.hpp +1 -1
  617. data/src/cxx_supportlib/vendor-modified/boost/asio/unyield.hpp +1 -1
  618. data/src/cxx_supportlib/vendor-modified/boost/asio/use_awaitable.hpp +15 -21
  619. data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +8 -12
  620. data/src/cxx_supportlib/vendor-modified/boost/asio/uses_executor.hpp +2 -6
  621. data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +2 -2
  622. data/src/cxx_supportlib/vendor-modified/boost/asio/wait_traits.hpp +1 -1
  623. data/src/cxx_supportlib/vendor-modified/boost/asio/writable_pipe.hpp +1 -1
  624. data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +122 -146
  625. data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +34 -50
  626. data/src/cxx_supportlib/vendor-modified/boost/asio/yield.hpp +1 -1
  627. data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +6 -28
  628. data/src/cxx_supportlib/vendor-modified/boost/assert/source_location.hpp +8 -3
  629. data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic.hpp +2 -16
  630. data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_ref.hpp +2 -3
  631. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_ref_impl.hpp +5 -3
  632. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_cast.hpp +6 -4
  633. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/config.hpp +0 -49
  634. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_x86.hpp +107 -40
  635. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_msvc_x86.hpp +32 -5
  636. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_operations_emulated.hpp +12 -13
  637. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_emulated.hpp +7 -8
  638. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_emulated.hpp +26 -27
  639. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/float_sizes.hpp +122 -35
  640. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_emulated.hpp +2 -3
  641. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/pause.hpp +7 -0
  642. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/remove_cv.hpp +42 -0
  643. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_on_address.hpp +1 -2
  644. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_emulated.hpp +3 -4
  645. data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic.hpp +2 -3
  646. data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_ref.hpp +2 -3
  647. data/src/cxx_supportlib/vendor-modified/boost/bind/apply.hpp +2 -60
  648. data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +230 -1740
  649. data/src/cxx_supportlib/vendor-modified/boost/bind/{bind_cc.hpp → detail/bind_cc.hpp} +20 -20
  650. data/src/cxx_supportlib/vendor-modified/boost/bind/detail/bind_mf2_cc.hpp +210 -0
  651. data/src/cxx_supportlib/vendor-modified/boost/bind/detail/bind_mf_cc.hpp +405 -0
  652. data/src/cxx_supportlib/vendor-modified/boost/bind/detail/integer_sequence.hpp +111 -0
  653. data/src/cxx_supportlib/vendor-modified/boost/bind/detail/result_traits.hpp +1 -0
  654. data/src/cxx_supportlib/vendor-modified/boost/bind/detail/tuple_for_each.hpp +64 -0
  655. data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn.hpp +140 -290
  656. data/src/cxx_supportlib/vendor-modified/boost/bind/placeholders.hpp +3 -16
  657. data/src/cxx_supportlib/vendor-modified/boost/bind/protect.hpp +0 -279
  658. data/src/cxx_supportlib/vendor-modified/boost/bind/std_placeholders.hpp +0 -6
  659. data/src/cxx_supportlib/vendor-modified/boost/chrono/config.hpp +1 -0
  660. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/is_evenly_divisible_by.hpp +1 -7
  661. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/requires_cxx11.hpp +23 -0
  662. data/src/cxx_supportlib/vendor-modified/boost/chrono/duration.hpp +2 -1
  663. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_get.hpp +1 -1
  664. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_units.hpp +1 -0
  665. data/src/cxx_supportlib/vendor-modified/boost/chrono/io_v1/chrono_io.hpp +3 -3
  666. data/src/cxx_supportlib/vendor-modified/boost/chrono/system_clocks.hpp +1 -0
  667. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx03.hpp +1 -1
  668. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx11.hpp +4 -1
  669. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx14.hpp +1 -1
  670. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx17.hpp +4 -1
  671. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx20.hpp +1 -1
  672. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx23.hpp +41 -0
  673. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/borland.hpp +4 -0
  674. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +8 -0
  675. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang_version.hpp +8 -2
  676. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/codegear.hpp +5 -0
  677. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +4 -1
  678. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/cray.hpp +1 -0
  679. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/digitalmars.hpp +4 -0
  680. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +4 -0
  681. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc_xml.hpp +4 -2
  682. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/hp_acc.hpp +5 -0
  683. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/intel.hpp +1 -0
  684. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/metrowerks.hpp +4 -0
  685. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/mpw.hpp +4 -0
  686. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/nvcc.hpp +3 -0
  687. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pathscale.hpp +4 -0
  688. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +4 -0
  689. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/vacpp.hpp +4 -0
  690. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +13 -3
  691. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +8 -0
  692. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp_zos.hpp +2 -0
  693. data/src/cxx_supportlib/vendor-modified/boost/config/detail/cxx_composite.hpp +16 -1
  694. data/src/cxx_supportlib/vendor-modified/boost/config/detail/suffix.hpp +56 -0
  695. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/dinkumware.hpp +32 -0
  696. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +16 -1
  697. data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +6 -7
  698. data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +18 -19
  699. data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +27 -29
  700. data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +0 -29
  701. data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +144 -145
  702. data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +4 -5
  703. data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +48 -49
  704. data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +6 -6
  705. data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocator_version_traits.hpp +14 -15
  706. data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +22 -22
  707. data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +1 -0
  708. data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +71 -69
  709. data/src/cxx_supportlib/vendor-modified/boost/container/detail/destroyers.hpp +48 -48
  710. data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +38 -40
  711. data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +165 -153
  712. data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +162 -163
  713. data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +1 -2
  714. data/src/cxx_supportlib/vendor-modified/boost/container/detail/mutex.hpp +48 -12
  715. data/src/cxx_supportlib/vendor-modified/boost/container/detail/next_capacity.hpp +6 -8
  716. data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +44 -46
  717. data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +10 -11
  718. data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +18 -19
  719. data/src/cxx_supportlib/vendor-modified/boost/container/detail/placement_new.hpp +0 -8
  720. data/src/cxx_supportlib/vendor-modified/boost/container/detail/transform_iterator.hpp +28 -28
  721. data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +83 -84
  722. data/src/cxx_supportlib/vendor-modified/boost/container/detail/value_init.hpp +3 -3
  723. data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +77 -1
  724. data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +81 -85
  725. data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +231 -233
  726. data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +86 -86
  727. data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +33 -33
  728. data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +107 -110
  729. data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +9 -11
  730. data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +10 -11
  731. data/src/cxx_supportlib/vendor-modified/boost/container/node_handle.hpp +29 -17
  732. data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +2 -2
  733. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp +1 -1
  734. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp +1 -0
  735. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +1 -1
  736. data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +80 -82
  737. data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +81 -81
  738. data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +24 -26
  739. data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +147 -122
  740. data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +109 -110
  741. data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +32 -32
  742. data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +165 -194
  743. data/src/cxx_supportlib/vendor-modified/boost/container/throw_exception.hpp +4 -5
  744. data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +263 -199
  745. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_integral.hpp +146 -0
  746. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_mix.hpp +6 -6
  747. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_range.hpp +296 -61
  748. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_tuple_like.hpp +62 -0
  749. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/mulx.hpp +79 -0
  750. data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +38 -124
  751. data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash_fwd.hpp +1 -0
  752. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_contiguous_range.hpp +27 -20
  753. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_described_class.hpp +4 -5
  754. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_range.hpp +8 -40
  755. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_tuple_like.hpp +36 -0
  756. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_unordered_range.hpp +6 -7
  757. data/src/cxx_supportlib/vendor-modified/boost/core/alignof.hpp +57 -0
  758. data/src/cxx_supportlib/vendor-modified/boost/core/allocator_access.hpp +22 -8
  759. data/src/cxx_supportlib/vendor-modified/boost/core/bit.hpp +362 -31
  760. data/src/cxx_supportlib/vendor-modified/boost/core/checked_delete.hpp +29 -3
  761. data/src/cxx_supportlib/vendor-modified/boost/core/data.hpp +46 -0
  762. data/src/cxx_supportlib/vendor-modified/boost/core/detail/is_same.hpp +39 -0
  763. data/src/cxx_supportlib/vendor-modified/boost/core/detail/lwt_unattended.hpp +66 -0
  764. data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_pause.hpp +71 -0
  765. data/src/cxx_supportlib/vendor-modified/boost/{smart_ptr → core}/detail/sp_thread_sleep.hpp +39 -21
  766. data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_yield.hpp +100 -0
  767. data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +7 -7
  768. data/src/cxx_supportlib/vendor-modified/boost/core/fclose_deleter.hpp +7 -0
  769. data/src/cxx_supportlib/vendor-modified/boost/core/functor.hpp +41 -0
  770. data/src/cxx_supportlib/vendor-modified/boost/core/identity.hpp +61 -0
  771. data/src/cxx_supportlib/vendor-modified/boost/core/invoke_swap.hpp +93 -0
  772. data/src/cxx_supportlib/vendor-modified/boost/core/is_same.hpp +10 -15
  773. data/src/cxx_supportlib/vendor-modified/boost/core/launder.hpp +69 -0
  774. data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +33 -36
  775. data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test_trait.hpp +3 -3
  776. data/src/cxx_supportlib/vendor-modified/boost/core/make_span.hpp +59 -0
  777. data/src/cxx_supportlib/vendor-modified/boost/core/max_align.hpp +82 -0
  778. data/src/cxx_supportlib/vendor-modified/boost/core/memory_resource.hpp +108 -0
  779. data/src/cxx_supportlib/vendor-modified/boost/core/null_deleter.hpp +7 -0
  780. data/src/cxx_supportlib/vendor-modified/boost/core/ref.hpp +23 -16
  781. data/src/cxx_supportlib/vendor-modified/boost/core/serialization.hpp +131 -0
  782. data/src/cxx_supportlib/vendor-modified/boost/core/size.hpp +31 -0
  783. data/src/cxx_supportlib/vendor-modified/boost/core/snprintf.hpp +173 -0
  784. data/src/cxx_supportlib/vendor-modified/boost/core/span.hpp +17 -17
  785. data/src/cxx_supportlib/vendor-modified/boost/core/swap.hpp +10 -40
  786. data/src/cxx_supportlib/vendor-modified/boost/core/type_name.hpp +29 -5
  787. data/src/cxx_supportlib/vendor-modified/boost/core/yield_primitives.hpp +12 -0
  788. data/src/cxx_supportlib/vendor-modified/boost/describe/members.hpp +2 -0
  789. data/src/cxx_supportlib/vendor-modified/boost/detail/basic_pointerbuf.hpp +3 -6
  790. data/src/cxx_supportlib/vendor-modified/boost/detail/lcast_precision.hpp +6 -97
  791. data/src/cxx_supportlib/vendor-modified/boost/exception/current_exception_cast.hpp +1 -1
  792. data/src/cxx_supportlib/vendor-modified/boost/exception/detail/clone_current_exception.hpp +1 -1
  793. data/src/cxx_supportlib/vendor-modified/boost/exception/detail/error_info_impl.hpp +1 -1
  794. data/src/cxx_supportlib/vendor-modified/boost/exception/detail/exception_ptr.hpp +22 -10
  795. data/src/cxx_supportlib/vendor-modified/boost/exception/detail/is_output_streamable.hpp +1 -1
  796. data/src/cxx_supportlib/vendor-modified/boost/exception/detail/object_hex_dump.hpp +1 -1
  797. data/src/cxx_supportlib/vendor-modified/boost/exception/detail/requires_cxx11.hpp +24 -0
  798. data/src/cxx_supportlib/vendor-modified/boost/exception/detail/type_info.hpp +1 -1
  799. data/src/cxx_supportlib/vendor-modified/boost/exception/diagnostic_information.hpp +4 -4
  800. data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +1 -1
  801. data/src/cxx_supportlib/vendor-modified/boost/exception/get_error_info.hpp +1 -1
  802. data/src/cxx_supportlib/vendor-modified/boost/exception/info.hpp +1 -1
  803. data/src/cxx_supportlib/vendor-modified/boost/exception/to_string.hpp +2 -2
  804. data/src/cxx_supportlib/vendor-modified/boost/exception/to_string_stub.hpp +1 -1
  805. data/src/cxx_supportlib/vendor-modified/boost/function/function0.hpp +1 -3
  806. data/src/cxx_supportlib/vendor-modified/boost/function/function1.hpp +1 -3
  807. data/src/cxx_supportlib/vendor-modified/boost/function/function10.hpp +1 -3
  808. data/src/cxx_supportlib/vendor-modified/boost/function/function2.hpp +1 -3
  809. data/src/cxx_supportlib/vendor-modified/boost/function/function3.hpp +1 -3
  810. data/src/cxx_supportlib/vendor-modified/boost/function/function4.hpp +1 -3
  811. data/src/cxx_supportlib/vendor-modified/boost/function/function5.hpp +1 -3
  812. data/src/cxx_supportlib/vendor-modified/boost/function/function6.hpp +1 -3
  813. data/src/cxx_supportlib/vendor-modified/boost/function/function7.hpp +1 -3
  814. data/src/cxx_supportlib/vendor-modified/boost/function/function8.hpp +1 -3
  815. data/src/cxx_supportlib/vendor-modified/boost/function/function9.hpp +1 -3
  816. data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +49 -198
  817. data/src/cxx_supportlib/vendor-modified/boost/function/function_fwd.hpp +36 -41
  818. data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +277 -420
  819. data/src/cxx_supportlib/vendor-modified/boost/function/function_typeof.hpp +1 -31
  820. data/src/cxx_supportlib/vendor-modified/boost/function.hpp +5 -61
  821. data/src/cxx_supportlib/vendor-modified/boost/integer/extended_euclidean.hpp +2 -2
  822. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avl_set.hpp +24 -25
  823. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +12 -13
  824. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +1 -1
  825. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bs_set.hpp +24 -25
  826. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +65 -66
  827. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +20 -20
  828. data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +7 -7
  829. data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_slist_algorithms.hpp +10 -10
  830. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +3 -3
  831. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/array_initializer.hpp +5 -5
  832. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/common_slist_algorithms.hpp +10 -10
  833. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/default_header_holder.hpp +3 -3
  834. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +24 -24
  835. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/equal_to_value.hpp +1 -1
  836. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/exception_disposer.hpp +1 -1
  837. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +14 -15
  838. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash.hpp +277 -0
  839. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_combine.hpp +11 -49
  840. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_integral.hpp +119 -0
  841. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_mix.hpp +130 -0
  842. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hashtable_node.hpp +41 -41
  843. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hook_traits.hpp +14 -20
  844. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iiterator.hpp +6 -6
  845. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iterator.hpp +12 -12
  846. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/key_nodeptr_comp.hpp +7 -7
  847. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_iterator.hpp +19 -19
  848. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/mpl.hpp +6 -0
  849. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_cloner_disposer.hpp +3 -3
  850. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/parent_from_member.hpp +6 -17
  851. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/simple_disposers.hpp +1 -1
  852. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/size_holder.hpp +14 -14
  853. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_iterator.hpp +20 -20
  854. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/transform_iterator.hpp +22 -22
  855. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_iterator.hpp +21 -21
  856. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_value_compare.hpp +28 -28
  857. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +58 -1
  858. data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +268 -239
  859. data/src/cxx_supportlib/vendor-modified/boost/intrusive/linear_slist_algorithms.hpp +9 -9
  860. data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +57 -58
  861. data/src/cxx_supportlib/vendor-modified/boost/intrusive/pack_options.hpp +3 -3
  862. data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_traits.hpp +18 -18
  863. data/src/cxx_supportlib/vendor-modified/boost/intrusive/priority_compare.hpp +3 -3
  864. data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree.hpp +12 -13
  865. data/src/cxx_supportlib/vendor-modified/boost/intrusive/set.hpp +24 -25
  866. data/src/cxx_supportlib/vendor-modified/boost/intrusive/sg_set.hpp +24 -25
  867. data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree.hpp +14 -15
  868. data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +1 -1
  869. data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +61 -62
  870. data/src/cxx_supportlib/vendor-modified/boost/intrusive/splay_set.hpp +24 -25
  871. data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree.hpp +12 -13
  872. data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap.hpp +18 -19
  873. data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +4 -0
  874. data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_set.hpp +36 -37
  875. data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +37 -34
  876. data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set_hook.hpp +11 -11
  877. data/src/cxx_supportlib/vendor-modified/boost/io/ios_state.hpp +2 -2
  878. data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/facade_iterator_category.hpp +10 -11
  879. data/src/cxx_supportlib/vendor-modified/boost/iterator/is_iterator.hpp +148 -0
  880. data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_concepts.hpp +2 -2
  881. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +7 -13
  882. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp +59 -0
  883. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +113 -131
  884. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +612 -645
  885. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +85 -79
  886. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +25 -32
  887. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +22 -29
  888. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp +73 -0
  889. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +1 -1
  890. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +21 -16
  891. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +7 -9
  892. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +22 -161
  893. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +9 -12
  894. data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/chrono.cpp +4 -2
  895. data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/process_cpu_clocks.cpp +3 -1
  896. data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/thread_clock.cpp +3 -1
  897. data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/posix_api.cpp +10 -18
  898. data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/wide_posix_api.cpp +13 -14
  899. data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +24 -14
  900. data/src/cxx_supportlib/vendor-modified/boost/limits.hpp +12 -12
  901. data/src/cxx_supportlib/vendor-modified/boost/move/adl_move_swap.hpp +5 -5
  902. data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_merge.hpp +5 -3
  903. data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_sort.hpp +20 -19
  904. data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +41 -56
  905. data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/basic_op.hpp +11 -10
  906. data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/heap_sort.hpp +3 -2
  907. data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/merge.hpp +32 -34
  908. data/src/cxx_supportlib/vendor-modified/boost/move/algo/move.hpp +4 -5
  909. data/src/cxx_supportlib/vendor-modified/boost/move/algo/predicate.hpp +11 -11
  910. data/src/cxx_supportlib/vendor-modified/boost/move/algorithm.hpp +0 -1
  911. data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +3 -3
  912. data/src/cxx_supportlib/vendor-modified/boost/move/default_delete.hpp +5 -6
  913. data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_to_raw_pointer.hpp +3 -3
  914. data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +2 -2
  915. data/src/cxx_supportlib/vendor-modified/boost/move/detail/move_helpers.hpp +24 -24
  916. data/src/cxx_supportlib/vendor-modified/boost/move/detail/nsec_clock.hpp +65 -24
  917. data/src/cxx_supportlib/vendor-modified/boost/move/detail/reverse_iterator.hpp +28 -28
  918. data/src/cxx_supportlib/vendor-modified/boost/move/detail/to_raw_pointer.hpp +1 -1
  919. data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +72 -23
  920. data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +81 -1
  921. data/src/cxx_supportlib/vendor-modified/boost/move/iterator.hpp +22 -22
  922. data/src/cxx_supportlib/vendor-modified/boost/move/unique_ptr.hpp +65 -66
  923. data/src/cxx_supportlib/vendor-modified/boost/move/utility.hpp +2 -2
  924. data/src/cxx_supportlib/vendor-modified/boost/move/utility_core.hpp +8 -6
  925. data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +97 -17
  926. data/src/cxx_supportlib/vendor-modified/boost/mp11/bind.hpp +9 -0
  927. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/config.hpp +11 -0
  928. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_append.hpp +140 -4
  929. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_defer.hpp +119 -0
  930. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_fold.hpp +108 -4
  931. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_front.hpp +13 -1
  932. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_is_value_list.hpp +41 -0
  933. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_list_v.hpp +27 -0
  934. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_map_find.hpp +1 -1
  935. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_plus.hpp +4 -1
  936. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_rename.hpp +18 -5
  937. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_value.hpp +25 -0
  938. data/src/cxx_supportlib/vendor-modified/boost/mp11/integer_sequence.hpp +9 -0
  939. data/src/cxx_supportlib/vendor-modified/boost/mp11/integral.hpp +10 -0
  940. data/src/cxx_supportlib/vendor-modified/boost/mp11/list.hpp +180 -3
  941. data/src/cxx_supportlib/vendor-modified/boost/mp11/utility.hpp +2 -96
  942. data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
  943. data/src/cxx_supportlib/vendor-modified/boost/mpl/assert.hpp +3 -3
  944. data/src/cxx_supportlib/vendor-modified/boost/next_prior.hpp +3 -44
  945. data/src/cxx_supportlib/vendor-modified/boost/nondet_random.hpp +22 -0
  946. data/src/cxx_supportlib/vendor-modified/boost/none_t.hpp +8 -0
  947. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/old_optional_implementation.hpp +5 -4
  948. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_config.hpp +3 -3
  949. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +2 -2
  950. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_relops.hpp +1 -1
  951. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp +6 -6
  952. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +3 -3
  953. data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +4 -4
  954. data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/tag_keyword_arg_ref.hpp +2 -2
  955. data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/unmatched_argument.hpp +1 -1
  956. data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/overloads.hpp +1 -1
  957. data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/tag.hpp +4 -4
  958. data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/unwrap_cv_reference.hpp +1 -1
  959. data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/void.hpp +1 -1
  960. data/src/cxx_supportlib/vendor-modified/boost/parameter/binding.hpp +3 -3
  961. data/src/cxx_supportlib/vendor-modified/boost/parameter/match.hpp +1 -1
  962. data/src/cxx_supportlib/vendor-modified/boost/parameter/template_keyword.hpp +1 -1
  963. data/src/cxx_supportlib/vendor-modified/boost/parameter/value_type.hpp +3 -3
  964. data/src/cxx_supportlib/vendor-modified/boost/pool/pool.hpp +1 -1
  965. data/src/cxx_supportlib/vendor-modified/boost/pool/simple_segregated_storage.hpp +13 -0
  966. data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/msvc.h +53 -0
  967. data/src/cxx_supportlib/vendor-modified/boost/predef/library/std.h +1 -0
  968. data/src/cxx_supportlib/vendor-modified/boost/predef/make.h +4 -0
  969. data/src/cxx_supportlib/vendor-modified/boost/predef/os/vms.h +1 -1
  970. data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +1 -1
  971. data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/has_opt.hpp +2 -0
  972. data/src/cxx_supportlib/vendor-modified/boost/random/inversive_congruential.hpp +1 -1
  973. data/src/cxx_supportlib/vendor-modified/boost/random/splitmix64.hpp +203 -0
  974. data/src/cxx_supportlib/vendor-modified/boost/random/subtract_with_carry.hpp +14 -14
  975. data/src/cxx_supportlib/vendor-modified/boost/random/uniform_real_distribution.hpp +2 -2
  976. data/src/cxx_supportlib/vendor-modified/boost/random.hpp +1 -0
  977. data/src/cxx_supportlib/vendor-modified/boost/ratio/config.hpp +4 -82
  978. data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/gcd_lcm.hpp +53 -0
  979. data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/is_evenly_divisible_by.hpp +32 -0
  980. data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/is_ratio.hpp +28 -0
  981. data/src/cxx_supportlib/vendor-modified/boost/ratio/include.hpp +1 -3
  982. data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio.hpp +5 -249
  983. data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio_fwd.hpp +30 -56
  984. data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio_io.hpp +0 -533
  985. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +7 -7
  986. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/icu.hpp +9 -9
  987. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_workaround.hpp +7 -7
  988. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/allocate_shared_array.hpp +1 -0
  989. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/requires_cxx11.hpp +23 -0
  990. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_atomic.hpp +1 -1
  991. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/yield_k.hpp +4 -6
  992. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/enable_shared_from_this.hpp +1 -0
  993. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +2 -11
  994. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared.hpp +1 -0
  995. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_array.hpp +1 -0
  996. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_object.hpp +1 -0
  997. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_unique.hpp +70 -0
  998. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_array.hpp +1 -0
  999. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_ptr.hpp +1 -0
  1000. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_array.hpp +2 -0
  1001. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +1 -11
  1002. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/weak_ptr.hpp +1 -0
  1003. data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +4 -8
  1004. data/src/cxx_supportlib/vendor-modified/boost/system/detail/enable_if.hpp +3 -12
  1005. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +14 -50
  1006. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +16 -55
  1007. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.hpp +62 -124
  1008. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_condition.hpp +29 -52
  1009. data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category.hpp +7 -7
  1010. data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category_message.hpp +4 -4
  1011. data/src/cxx_supportlib/vendor-modified/boost/system/detail/interop_category.hpp +7 -7
  1012. data/src/cxx_supportlib/vendor-modified/boost/system/detail/is_same.hpp +3 -13
  1013. data/src/cxx_supportlib/vendor-modified/boost/system/detail/mutex.hpp +128 -0
  1014. data/src/cxx_supportlib/vendor-modified/boost/system/detail/snprintf.hpp +1 -46
  1015. data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_category.hpp +14 -13
  1016. data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_category_impl.hpp +2 -2
  1017. data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category.hpp +7 -7
  1018. data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_impl.hpp +3 -3
  1019. data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_message.hpp +2 -2
  1020. data/src/cxx_supportlib/vendor-modified/boost/system/errc.hpp +3 -3
  1021. data/src/cxx_supportlib/vendor-modified/boost/system/system_error.hpp +1 -1
  1022. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/deque.hpp +1 -24
  1023. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/functional.hpp +1 -14
  1024. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/list.hpp +1 -14
  1025. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/allocator_arg.hpp +2 -12
  1026. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/allocator_traits.hpp +0 -11
  1027. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/config.hpp +0 -2
  1028. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/default_delete.hpp +0 -16
  1029. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/pointer_traits.hpp +0 -11
  1030. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/scoped_allocator.hpp +0 -11
  1031. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/shared_ptr.hpp +0 -19
  1032. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/unique_ptr.hpp +4 -6
  1033. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/queue.hpp +2 -26
  1034. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/tuple.hpp +1 -18
  1035. data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/vector.hpp +1 -14
  1036. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/invoke.hpp +11 -4
  1037. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/string_to_unsigned.hpp +55 -0
  1038. data/src/cxx_supportlib/vendor-modified/boost/thread/detail/string_trim.hpp +29 -0
  1039. data/src/cxx_supportlib/vendor-modified/boost/thread/externally_locked.hpp +5 -5
  1040. data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +0 -1
  1041. data/src/cxx_supportlib/vendor-modified/boost/thread/futures/wait_for_any.hpp +3 -2
  1042. data/src/cxx_supportlib/vendor-modified/boost/thread/synchronized_value.hpp +4 -4
  1043. data/src/cxx_supportlib/vendor-modified/boost/throw_exception.hpp +2 -2
  1044. data/src/cxx_supportlib/vendor-modified/boost/tuple/detail/tuple_basic.hpp +3 -3
  1045. data/src/cxx_supportlib/vendor-modified/boost/tuple/tuple.hpp +1 -1
  1046. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_swappable_cxx_11.hpp +70 -0
  1047. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_floating_point.hpp +22 -0
  1048. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_integral.hpp +3 -0
  1049. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_swappable.hpp +4 -24
  1050. data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_swappable.hpp +92 -0
  1051. data/src/cxx_supportlib/vendor-modified/boost/typeof/decltype.hpp +2 -3
  1052. data/src/cxx_supportlib/vendor-modified/boost/typeof/incr_registration_group.hpp +1 -10
  1053. data/src/cxx_supportlib/vendor-modified/boost/typeof/msvc/typeof_impl.hpp +5 -6
  1054. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/bitset.hpp +2 -4
  1055. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/complex.hpp +2 -4
  1056. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/deque.hpp +2 -5
  1057. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/fstream.hpp +2 -15
  1058. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/functional.hpp +4 -51
  1059. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/iostream.hpp +2 -6
  1060. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/istream.hpp +2 -9
  1061. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/iterator.hpp +2 -46
  1062. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/list.hpp +2 -5
  1063. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/locale.hpp +2 -29
  1064. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/map.hpp +2 -9
  1065. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/memory.hpp +4 -9
  1066. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/ostream.hpp +2 -6
  1067. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/queue.hpp +2 -5
  1068. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/set.hpp +2 -9
  1069. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/sstream.hpp +2 -19
  1070. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/stack.hpp +2 -5
  1071. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/streambuf.hpp +2 -5
  1072. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/string.hpp +2 -12
  1073. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/utility.hpp +2 -4
  1074. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/valarray.hpp +2 -10
  1075. data/src/cxx_supportlib/vendor-modified/boost/typeof/std/vector.hpp +2 -5
  1076. data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof.hpp +8 -202
  1077. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +860 -0
  1078. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map_fwd.hpp +51 -0
  1079. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +716 -0
  1080. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set_fwd.hpp +52 -0
  1081. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/allocator_constructed.hpp +59 -0
  1082. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/archive_constructed.hpp +71 -0
  1083. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/bad_archive_exception.hpp +27 -0
  1084. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/concurrent_static_asserts.hpp +105 -0
  1085. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +120 -85
  1086. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +1764 -0
  1087. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +2271 -0
  1088. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/element_type.hpp +64 -0
  1089. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/flat_map_types.hpp +86 -0
  1090. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/flat_set_types.hpp +44 -0
  1091. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/ignore_wshadow.hpp +35 -0
  1092. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_handle.hpp +204 -0
  1093. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_map_types.hpp +139 -0
  1094. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_set_types.hpp +92 -0
  1095. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/reentrancy_check.hpp +138 -0
  1096. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/restore_wshadow.hpp +11 -0
  1097. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/rw_spinlock.hpp +179 -0
  1098. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +651 -0
  1099. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/tuple_rotate_right.hpp +52 -0
  1100. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +356 -1118
  1101. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/map.hpp +2 -0
  1102. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/mulx.hpp +129 -0
  1103. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/narrow_cast.hpp +44 -0
  1104. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/opt_storage.hpp +30 -0
  1105. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/prime_fmod.hpp +96 -150
  1106. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialization_version.hpp +74 -0
  1107. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_container.hpp +204 -0
  1108. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_fca_container.hpp +156 -0
  1109. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_tracked_address.hpp +104 -0
  1110. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/static_assert.hpp +16 -0
  1111. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/throw_exception.hpp +30 -0
  1112. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/type_traits.hpp +136 -19
  1113. data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +4 -5
  1114. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +171 -103
  1115. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map_fwd.hpp +1 -6
  1116. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +70 -46
  1117. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set_fwd.hpp +1 -6
  1118. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +406 -899
  1119. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map_fwd.hpp +7 -13
  1120. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +895 -0
  1121. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map_fwd.hpp +44 -0
  1122. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +699 -0
  1123. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set_fwd.hpp +44 -0
  1124. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +253 -618
  1125. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set_fwd.hpp +8 -14
  1126. data/src/cxx_supportlib/vendor-modified/boost/utility/swap.hpp +4 -1
  1127. data/src/cxx_supportlib/vendor-modified/boost/utility/value_init.hpp +8 -8
  1128. data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
  1129. data/src/cxx_supportlib/vendor-modified/jsoncpp/jsoncpp.cpp +2 -9
  1130. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/frame.hpp +0 -11
  1131. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/processors/hybi13.hpp +14 -20
  1132. data/src/helper-scripts/wsgi-loader.py +2 -2
  1133. data/src/nginx_module/ConfigGeneral/ManifestGeneration.c +2 -2
  1134. data/src/ruby_supportlib/phusion_passenger/common_library.rb +16 -5
  1135. data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +1 -1
  1136. data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +3 -1
  1137. data/src/ruby_supportlib/phusion_passenger/native_support.rb +10 -7
  1138. data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +8 -10
  1139. data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +14 -0
  1140. data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +4 -1
  1141. data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/libs.rb +6 -6
  1142. data/src/ruby_supportlib/phusion_passenger/platform_info/pcre.rb +11 -12
  1143. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/app.rb +1 -1
  1144. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +4 -0
  1145. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/lldb_controller.rb +5 -1
  1146. data/src/ruby_supportlib/phusion_passenger.rb +8 -8
  1147. metadata +109 -150
  1148. data/src/cxx_supportlib/ServerKit/http_parser.cpp +0 -2265
  1149. data/src/cxx_supportlib/ServerKit/http_parser.h +0 -330
  1150. data/src/cxx_supportlib/vendor-modified/boost/array.hpp +0 -456
  1151. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bulk_executor_op.hpp +0 -90
  1152. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_arm_fenced_block.hpp +0 -93
  1153. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_hppa_fenced_block.hpp +0 -70
  1154. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_sync_fenced_block.hpp +0 -67
  1155. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_x86_fenced_block.hpp +0 -101
  1156. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_invoke_helpers.hpp +0 -80
  1157. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/macos_fenced_block.hpp +0 -64
  1158. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/old_win_sdk_compat.hpp +0 -216
  1159. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/solaris_fenced_block.hpp +0 -64
  1160. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/variadic_templates.hpp +0 -294
  1161. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_execute.hpp +0 -406
  1162. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_guarantee.hpp +0 -1254
  1163. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/connect.hpp +0 -498
  1164. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_invocable.hpp +0 -154
  1165. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_operation.hpp +0 -111
  1166. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_receiver.hpp +0 -130
  1167. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/bulk_sender.hpp +0 -263
  1168. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/submit_receiver.hpp +0 -235
  1169. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/void_receiver.hpp +0 -92
  1170. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/execute.hpp +0 -296
  1171. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/impl/receiver_invocation_error.ipp +0 -38
  1172. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/operation_state.hpp +0 -101
  1173. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/receiver.hpp +0 -287
  1174. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/receiver_invocation_error.hpp +0 -50
  1175. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/schedule.hpp +0 -296
  1176. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/scheduler.hpp +0 -93
  1177. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/sender.hpp +0 -318
  1178. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_done.hpp +0 -259
  1179. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_error.hpp +0 -259
  1180. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_value.hpp +0 -492
  1181. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/start.hpp +0 -256
  1182. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/submit.hpp +0 -459
  1183. data/src/cxx_supportlib/vendor-modified/boost/asio/handler_alloc_hook.hpp +0 -106
  1184. data/src/cxx_supportlib/vendor-modified/boost/asio/handler_invoke_hook.hpp +0 -113
  1185. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/defer.hpp +0 -300
  1186. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/dispatch.hpp +0 -275
  1187. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/handler_alloc_hook.ipp +0 -64
  1188. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/post.hpp +0 -300
  1189. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/bulk_execute_free.hpp +0 -116
  1190. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/bulk_execute_member.hpp +0 -116
  1191. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/connect_free.hpp +0 -114
  1192. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/connect_member.hpp +0 -114
  1193. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/execute_free.hpp +0 -110
  1194. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/schedule_free.hpp +0 -110
  1195. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/schedule_member.hpp +0 -110
  1196. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_done_free.hpp +0 -110
  1197. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_done_member.hpp +0 -110
  1198. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_error_free.hpp +0 -114
  1199. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_error_member.hpp +0 -114
  1200. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_value_free.hpp +0 -236
  1201. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/set_value_member.hpp +0 -236
  1202. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/start_free.hpp +0 -110
  1203. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/start_member.hpp +0 -110
  1204. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/submit_free.hpp +0 -114
  1205. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/submit_member.hpp +0 -114
  1206. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_object_handle.hpp +0 -495
  1207. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_overlapped_handle.hpp +0 -462
  1208. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_random_access_handle.hpp +0 -581
  1209. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_stream_handle.hpp +0 -563
  1210. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/object_handle.hpp +0 -40
  1211. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/overlapped_handle.hpp +0 -41
  1212. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/overlapped_ptr.hpp +0 -147
  1213. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/random_access_handle.hpp +0 -39
  1214. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/stream_handle.hpp +0 -39
  1215. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_windows.hpp +0 -201
  1216. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_windows.hpp +0 -67
  1217. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_caps_windows.hpp +0 -57
  1218. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_windows.hpp +0 -179
  1219. data/src/cxx_supportlib/vendor-modified/boost/bind/bind_mf2_cc.hpp +0 -228
  1220. data/src/cxx_supportlib/vendor-modified/boost/bind/bind_mf_cc.hpp +0 -441
  1221. data/src/cxx_supportlib/vendor-modified/boost/bind/bind_template.hpp +0 -345
  1222. data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_cc.hpp +0 -103
  1223. data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_template.hpp +0 -1047
  1224. data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_vw.hpp +0 -130
  1225. data/src/cxx_supportlib/vendor-modified/boost/bind/storage.hpp +0 -475
  1226. data/src/cxx_supportlib/vendor-modified/boost/config/platform/cygwin.hpp +0 -71
  1227. data/src/cxx_supportlib/vendor-modified/boost/container/detail/hash_table.hpp +0 -1278
  1228. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_tuple.hpp +0 -133
  1229. data/src/cxx_supportlib/vendor-modified/boost/detail/atomic_count.hpp +0 -21
  1230. data/src/cxx_supportlib/vendor-modified/boost/function/detail/function_iterate.hpp +0 -16
  1231. data/src/cxx_supportlib/vendor-modified/boost/function/detail/gen_maybe_include.pl +0 -39
  1232. data/src/cxx_supportlib/vendor-modified/boost/function/detail/maybe_include.hpp +0 -369
  1233. data/src/cxx_supportlib/vendor-modified/boost/function/detail/prologue.hpp +0 -26
  1234. data/src/cxx_supportlib/vendor-modified/boost/function/gen_function_N.pl +0 -26
  1235. data/src/cxx_supportlib/vendor-modified/boost/functional/hash_fwd.hpp +0 -6
  1236. data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/abs.hpp +0 -89
  1237. data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/gcd.hpp +0 -124
  1238. data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/lcm.hpp +0 -126
  1239. data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/sign.hpp +0 -89
  1240. data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/overflow_helpers.hpp +0 -367
  1241. data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/ratio_io.hpp +0 -1342
  1242. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/abs.hpp +0 -30
  1243. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/arithmetic.hpp +0 -22
  1244. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/comparison.hpp +0 -19
  1245. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/divides.hpp +0 -30
  1246. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/equal_to.hpp +0 -30
  1247. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/gcd.hpp +0 -30
  1248. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/greater.hpp +0 -30
  1249. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/greater_equal.hpp +0 -30
  1250. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/lcm.hpp +0 -30
  1251. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/less.hpp +0 -30
  1252. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/less_equal.hpp +0 -30
  1253. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/minus.hpp +0 -30
  1254. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/negate.hpp +0 -30
  1255. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/not_equal_to.hpp +0 -30
  1256. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/numeric_cast.hpp +0 -31
  1257. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/plus.hpp +0 -30
  1258. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/rational_c_tag.hpp +0 -25
  1259. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/rational_constant.hpp +0 -15
  1260. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/sign.hpp +0 -30
  1261. data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/times.hpp +0 -30
  1262. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_thread_pause.hpp +0 -51
  1263. data/src/cxx_supportlib/vendor-modified/boost/swap.hpp +0 -17
  1264. data/src/cxx_supportlib/vendor-modified/boost/type_index/stl_type_index.hpp +0 -278
  1265. data/src/cxx_supportlib/vendor-modified/boost/type_index/type_index_facade.hpp +0 -297
  1266. data/src/cxx_supportlib/vendor-modified/boost/type_index.hpp +0 -265
  1267. data/src/cxx_supportlib/vendor-modified/boost/typeof/dmc/typeof_impl.hpp +0 -100
  1268. data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode.hpp +0 -58
  1269. data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode_params.hpp +0 -34
  1270. data/src/cxx_supportlib/vendor-modified/boost/typeof/int_encoding.hpp +0 -118
  1271. data/src/cxx_supportlib/vendor-modified/boost/typeof/integral_template_param.hpp +0 -80
  1272. data/src/cxx_supportlib/vendor-modified/boost/typeof/message.hpp +0 -8
  1273. data/src/cxx_supportlib/vendor-modified/boost/typeof/modifiers.hpp +0 -121
  1274. data/src/cxx_supportlib/vendor-modified/boost/typeof/native.hpp +0 -60
  1275. data/src/cxx_supportlib/vendor-modified/boost/typeof/pointers_data_members.hpp +0 -38
  1276. data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions.hpp +0 -50
  1277. data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions_iterate.hpp +0 -135
  1278. data/src/cxx_supportlib/vendor-modified/boost/typeof/register_fundamental.hpp +0 -61
  1279. data/src/cxx_supportlib/vendor-modified/boost/typeof/register_mem_functions.hpp +0 -32
  1280. data/src/cxx_supportlib/vendor-modified/boost/typeof/template_encoding.hpp +0 -160
  1281. data/src/cxx_supportlib/vendor-modified/boost/typeof/template_template_param.hpp +0 -149
  1282. data/src/cxx_supportlib/vendor-modified/boost/typeof/type_encoding.hpp +0 -27
  1283. data/src/cxx_supportlib/vendor-modified/boost/typeof/type_template_param.hpp +0 -37
  1284. data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof_impl.hpp +0 -187
  1285. data/src/cxx_supportlib/vendor-modified/boost/typeof/unsupported.hpp +0 -29
  1286. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector.hpp +0 -166
  1287. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector100.hpp +0 -321
  1288. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector150.hpp +0 -471
  1289. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector200.hpp +0 -621
  1290. data/src/cxx_supportlib/vendor-modified/boost/typeof/vector50.hpp +0 -171
  1291. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa.hpp +0 -1921
  1292. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fwd.hpp +0 -64
  1293. /data/dev/{webpacketpp.patch → websocketpp.patch} +0 -0
@@ -2,7 +2,7 @@
2
2
  // execution/blocking_adaptation.hpp
3
3
  // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4
4
  //
5
- // Copyright (c) 2003-2022 Christopher M. Kohlhoff (chris at kohlhoff dot com)
5
+ // Copyright (c) 2003-2024 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6
6
  //
7
7
  // Distributed under the Boost Software License, Version 1.0. (See accompanying
8
8
  // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -19,10 +19,7 @@
19
19
  #include <boost/asio/detail/event.hpp>
20
20
  #include <boost/asio/detail/mutex.hpp>
21
21
  #include <boost/asio/detail/type_traits.hpp>
22
- #include <boost/asio/execution/execute.hpp>
23
22
  #include <boost/asio/execution/executor.hpp>
24
- #include <boost/asio/execution/scheduler.hpp>
25
- #include <boost/asio/execution/sender.hpp>
26
23
  #include <boost/asio/is_applicable_property.hpp>
27
24
  #include <boost/asio/prefer.hpp>
28
25
  #include <boost/asio/query.hpp>
@@ -48,11 +45,9 @@ namespace execution {
48
45
  /// allowed in order to apply the blocking_adaptation_t::allowed_t property.
49
46
  struct blocking_adaptation_t
50
47
  {
51
- /// The blocking_adaptation_t property applies to executors, senders, and
52
- /// schedulers.
48
+ /// The blocking_adaptation_t property applies to executors.
53
49
  template <typename T>
54
- static constexpr bool is_applicable_property_v =
55
- is_executor_v<T> || is_sender_v<T> || is_scheduler_v<T>;
50
+ static constexpr bool is_applicable_property_v = is_executor_v<T>;
56
51
 
57
52
  /// The top-level blocking_adaptation_t property cannot be required.
58
53
  static constexpr bool is_requirable = false;
@@ -66,11 +61,9 @@ struct blocking_adaptation_t
66
61
  /// A sub-property that indicates that automatic adaptation is not allowed.
67
62
  struct disallowed_t
68
63
  {
69
- /// The blocking_adaptation_t::disallowed_t property applies to executors,
70
- /// senders, and schedulers.
64
+ /// The blocking_adaptation_t::disallowed_t property applies to executors.
71
65
  template <typename T>
72
- static constexpr bool is_applicable_property_v =
73
- is_executor_v<T> || is_sender_v<T> || is_scheduler_v<T>;
66
+ static constexpr bool is_applicable_property_v = is_executor_v<T>;
74
67
 
75
68
  /// The blocking_adaptation_t::disallowed_t property can be required.
76
69
  static constexpr bool is_requirable = true;
@@ -94,11 +87,9 @@ struct blocking_adaptation_t
94
87
  /// A sub-property that indicates that automatic adaptation is allowed.
95
88
  struct allowed_t
96
89
  {
97
- /// The blocking_adaptation_t::allowed_t property applies to executors,
98
- /// senders, and schedulers.
90
+ /// The blocking_adaptation_t::allowed_t property applies to executors.
99
91
  template <typename T>
100
- static constexpr bool is_applicable_property_v =
101
- is_executor_v<T> || is_sender_v<T> || is_scheduler_v<T>;
92
+ static constexpr bool is_applicable_property_v = is_executor_v<T>;
102
93
 
103
94
  /// The blocking_adaptation_t::allowed_t property can be required.
104
95
  static constexpr bool is_requirable = true;
@@ -165,48 +156,28 @@ template <int I = 0>
165
156
  struct blocking_adaptation_t
166
157
  {
167
158
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
168
- # if defined(BOOST_ASIO_NO_DEPRECATED)
169
159
  template <typename T>
170
- BOOST_ASIO_STATIC_CONSTEXPR(bool,
171
- is_applicable_property_v = (
172
- is_executor<T>::value));
173
- # else // defined(BOOST_ASIO_NO_DEPRECATED)
174
- template <typename T>
175
- BOOST_ASIO_STATIC_CONSTEXPR(bool,
176
- is_applicable_property_v = (
177
- is_executor<T>::value
178
- || conditional<
179
- is_executor<T>::value,
180
- false_type,
181
- is_sender<T>
182
- >::type::value
183
- || conditional<
184
- is_executor<T>::value,
185
- false_type,
186
- is_scheduler<T>
187
- >::type::value
188
- ));
189
- # endif // defined(BOOST_ASIO_NO_DEPRECATED)
160
+ static constexpr bool is_applicable_property_v = is_executor<T>::value;
190
161
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
191
162
 
192
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = false);
193
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_preferable = false);
163
+ static constexpr bool is_requirable = false;
164
+ static constexpr bool is_preferable = false;
194
165
  typedef blocking_adaptation_t polymorphic_query_result_type;
195
166
 
196
167
  typedef detail::blocking_adaptation::disallowed_t<I> disallowed_t;
197
168
  typedef detail::blocking_adaptation::allowed_t<I> allowed_t;
198
169
 
199
- BOOST_ASIO_CONSTEXPR blocking_adaptation_t()
170
+ constexpr blocking_adaptation_t()
200
171
  : value_(-1)
201
172
  {
202
173
  }
203
174
 
204
- BOOST_ASIO_CONSTEXPR blocking_adaptation_t(disallowed_t)
175
+ constexpr blocking_adaptation_t(disallowed_t)
205
176
  : value_(0)
206
177
  {
207
178
  }
208
179
 
209
- BOOST_ASIO_CONSTEXPR blocking_adaptation_t(allowed_t)
180
+ constexpr blocking_adaptation_t(allowed_t)
210
181
  : value_(1)
211
182
  {
212
183
  }
@@ -218,16 +189,14 @@ struct blocking_adaptation_t
218
189
  struct type
219
190
  {
220
191
  template <typename P>
221
- auto query(BOOST_ASIO_MOVE_ARG(P) p) const
192
+ auto query(P&& p) const
222
193
  noexcept(
223
194
  noexcept(
224
- declval<typename conditional<true, T, P>::type>().query(
225
- BOOST_ASIO_MOVE_CAST(P)(p))
195
+ declval<conditional_t<true, T, P>>().query(static_cast<P&&>(p))
226
196
  )
227
197
  )
228
198
  -> decltype(
229
- declval<typename conditional<true, T, P>::type>().query(
230
- BOOST_ASIO_MOVE_CAST(P)(p))
199
+ declval<conditional_t<true, T, P>>().query(static_cast<P&&>(p))
231
200
  );
232
201
  };
233
202
  #else // defined(BOOST_ASIO_HAS_DEDUCED_QUERY_MEMBER_TRAIT)
@@ -242,17 +211,17 @@ struct blocking_adaptation_t
242
211
  struct type
243
212
  {
244
213
  template <typename P>
245
- static constexpr auto query(BOOST_ASIO_MOVE_ARG(P) p)
214
+ static constexpr auto query(P&& p)
246
215
  noexcept(
247
216
  noexcept(
248
- conditional<true, T, P>::type::query(BOOST_ASIO_MOVE_CAST(P)(p))
217
+ conditional_t<true, T, P>::query(static_cast<P&&>(p))
249
218
  )
250
219
  )
251
220
  -> decltype(
252
- conditional<true, T, P>::type::query(BOOST_ASIO_MOVE_CAST(P)(p))
221
+ conditional_t<true, T, P>::query(static_cast<P&&>(p))
253
222
  )
254
223
  {
255
- return T::query(BOOST_ASIO_MOVE_CAST(P)(p));
224
+ return T::query(static_cast<P&&>(p));
256
225
  }
257
226
  };
258
227
  #else // defined(BOOST_ASIO_HAS_DEDUCED_QUERY_STATIC_CONSTEXPR_MEMBER_TRAIT)
@@ -272,66 +241,64 @@ struct blocking_adaptation_t
272
241
  #if defined(BOOST_ASIO_HAS_DEDUCED_STATIC_QUERY_TRAIT) \
273
242
  && defined(BOOST_ASIO_HAS_SFINAE_VARIABLE_TEMPLATES)
274
243
  template <typename T>
275
- static BOOST_ASIO_CONSTEXPR
276
- typename query_static_constexpr_member<T>::result_type
244
+ static constexpr typename query_static_constexpr_member<T>::result_type
277
245
  static_query()
278
- BOOST_ASIO_NOEXCEPT_IF((
279
- query_static_constexpr_member<T>::is_noexcept))
246
+ noexcept(query_static_constexpr_member<T>::is_noexcept)
280
247
  {
281
248
  return query_static_constexpr_member<T>::value();
282
249
  }
283
250
 
284
251
  template <typename T>
285
- static BOOST_ASIO_CONSTEXPR
252
+ static constexpr
286
253
  typename traits::static_query<T, disallowed_t>::result_type
287
254
  static_query(
288
- typename enable_if<
255
+ enable_if_t<
289
256
  !query_static_constexpr_member<T>::is_valid
290
- >::type* = 0,
291
- typename enable_if<
257
+ >* = 0,
258
+ enable_if_t<
292
259
  !query_member<T>::is_valid
293
- >::type* = 0,
294
- typename enable_if<
260
+ >* = 0,
261
+ enable_if_t<
295
262
  traits::static_query<T, disallowed_t>::is_valid
296
- >::type* = 0) BOOST_ASIO_NOEXCEPT
263
+ >* = 0) noexcept
297
264
  {
298
265
  return traits::static_query<T, disallowed_t>::value();
299
266
  }
300
267
 
301
268
  template <typename T>
302
- static BOOST_ASIO_CONSTEXPR
269
+ static constexpr
303
270
  typename traits::static_query<T, allowed_t>::result_type
304
271
  static_query(
305
- typename enable_if<
272
+ enable_if_t<
306
273
  !query_static_constexpr_member<T>::is_valid
307
- >::type* = 0,
308
- typename enable_if<
274
+ >* = 0,
275
+ enable_if_t<
309
276
  !query_member<T>::is_valid
310
- >::type* = 0,
311
- typename enable_if<
277
+ >* = 0,
278
+ enable_if_t<
312
279
  !traits::static_query<T, disallowed_t>::is_valid
313
- >::type* = 0,
314
- typename enable_if<
280
+ >* = 0,
281
+ enable_if_t<
315
282
  traits::static_query<T, allowed_t>::is_valid
316
- >::type* = 0) BOOST_ASIO_NOEXCEPT
283
+ >* = 0) noexcept
317
284
  {
318
285
  return traits::static_query<T, allowed_t>::value();
319
286
  }
320
287
 
321
288
  template <typename E,
322
289
  typename T = decltype(blocking_adaptation_t::static_query<E>())>
323
- static BOOST_ASIO_CONSTEXPR const T static_query_v
290
+ static constexpr const T static_query_v
324
291
  = blocking_adaptation_t::static_query<E>();
325
292
  #endif // defined(BOOST_ASIO_HAS_DEDUCED_STATIC_QUERY_TRAIT)
326
293
  // && defined(BOOST_ASIO_HAS_SFINAE_VARIABLE_TEMPLATES)
327
294
 
328
- friend BOOST_ASIO_CONSTEXPR bool operator==(
295
+ friend constexpr bool operator==(
329
296
  const blocking_adaptation_t& a, const blocking_adaptation_t& b)
330
297
  {
331
298
  return a.value_ == b.value_;
332
299
  }
333
300
 
334
- friend BOOST_ASIO_CONSTEXPR bool operator!=(
301
+ friend constexpr bool operator!=(
335
302
  const blocking_adaptation_t& a, const blocking_adaptation_t& b)
336
303
  {
337
304
  return a.value_ != b.value_;
@@ -339,26 +306,24 @@ struct blocking_adaptation_t
339
306
 
340
307
  struct convertible_from_blocking_adaptation_t
341
308
  {
342
- BOOST_ASIO_CONSTEXPR convertible_from_blocking_adaptation_t(
309
+ constexpr convertible_from_blocking_adaptation_t(
343
310
  blocking_adaptation_t)
344
311
  {
345
312
  }
346
313
  };
347
314
 
348
315
  template <typename Executor>
349
- friend BOOST_ASIO_CONSTEXPR blocking_adaptation_t query(
316
+ friend constexpr blocking_adaptation_t query(
350
317
  const Executor& ex, convertible_from_blocking_adaptation_t,
351
- typename enable_if<
318
+ enable_if_t<
352
319
  can_query<const Executor&, disallowed_t>::value
353
- >::type* = 0)
320
+ >* = 0)
354
321
  #if !defined(__clang__) // Clang crashes if noexcept is used here.
355
322
  #if defined(BOOST_ASIO_MSVC) // Visual C++ wants the type to be qualified.
356
- BOOST_ASIO_NOEXCEPT_IF((
357
- is_nothrow_query<const Executor&,
358
- blocking_adaptation_t<>::disallowed_t>::value))
323
+ noexcept(is_nothrow_query<const Executor&,
324
+ blocking_adaptation_t<>::disallowed_t>::value)
359
325
  #else // defined(BOOST_ASIO_MSVC)
360
- BOOST_ASIO_NOEXCEPT_IF((
361
- is_nothrow_query<const Executor&, disallowed_t>::value))
326
+ noexcept(is_nothrow_query<const Executor&, disallowed_t>::value)
362
327
  #endif // defined(BOOST_ASIO_MSVC)
363
328
  #endif // !defined(__clang__)
364
329
  {
@@ -366,22 +331,20 @@ struct blocking_adaptation_t
366
331
  }
367
332
 
368
333
  template <typename Executor>
369
- friend BOOST_ASIO_CONSTEXPR blocking_adaptation_t query(
334
+ friend constexpr blocking_adaptation_t query(
370
335
  const Executor& ex, convertible_from_blocking_adaptation_t,
371
- typename enable_if<
336
+ enable_if_t<
372
337
  !can_query<const Executor&, disallowed_t>::value
373
- >::type* = 0,
374
- typename enable_if<
338
+ >* = 0,
339
+ enable_if_t<
375
340
  can_query<const Executor&, allowed_t>::value
376
- >::type* = 0)
341
+ >* = 0)
377
342
  #if !defined(__clang__) // Clang crashes if noexcept is used here.
378
343
  #if defined(BOOST_ASIO_MSVC) // Visual C++ wants the type to be qualified.
379
- BOOST_ASIO_NOEXCEPT_IF((
380
- is_nothrow_query<const Executor&,
381
- blocking_adaptation_t<>::allowed_t>::value))
344
+ noexcept(is_nothrow_query<const Executor&,
345
+ blocking_adaptation_t<>::allowed_t>::value)
382
346
  #else // defined(BOOST_ASIO_MSVC)
383
- BOOST_ASIO_NOEXCEPT_IF((
384
- is_nothrow_query<const Executor&, allowed_t>::value))
347
+ noexcept(is_nothrow_query<const Executor&, allowed_t>::value)
385
348
  #endif // defined(BOOST_ASIO_MSVC)
386
349
  #endif // !defined(__clang__)
387
350
  {
@@ -391,10 +354,6 @@ struct blocking_adaptation_t
391
354
  BOOST_ASIO_STATIC_CONSTEXPR_DEFAULT_INIT(disallowed_t, disallowed);
392
355
  BOOST_ASIO_STATIC_CONSTEXPR_DEFAULT_INIT(allowed_t, allowed);
393
356
 
394
- #if !defined(BOOST_ASIO_HAS_CONSTEXPR)
395
- static const blocking_adaptation_t instance;
396
- #endif // !defined(BOOST_ASIO_HAS_CONSTEXPR)
397
-
398
357
  private:
399
358
  int value_;
400
359
  };
@@ -406,11 +365,6 @@ const T blocking_adaptation_t<I>::static_query_v;
406
365
  #endif // defined(BOOST_ASIO_HAS_DEDUCED_STATIC_QUERY_TRAIT)
407
366
  // && defined(BOOST_ASIO_HAS_SFINAE_VARIABLE_TEMPLATES)
408
367
 
409
- #if !defined(BOOST_ASIO_HAS_CONSTEXPR)
410
- template <int I>
411
- const blocking_adaptation_t<I> blocking_adaptation_t<I>::instance;
412
- #endif
413
-
414
368
  template <int I>
415
369
  const typename blocking_adaptation_t<I>::disallowed_t
416
370
  blocking_adaptation_t<I>::disallowed;
@@ -425,35 +379,15 @@ template <int I = 0>
425
379
  struct disallowed_t
426
380
  {
427
381
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
428
- # if defined(BOOST_ASIO_NO_DEPRECATED)
429
- template <typename T>
430
- BOOST_ASIO_STATIC_CONSTEXPR(bool,
431
- is_applicable_property_v = (
432
- is_executor<T>::value));
433
- # else // defined(BOOST_ASIO_NO_DEPRECATED)
434
382
  template <typename T>
435
- BOOST_ASIO_STATIC_CONSTEXPR(bool,
436
- is_applicable_property_v = (
437
- is_executor<T>::value
438
- || conditional<
439
- is_executor<T>::value,
440
- false_type,
441
- is_sender<T>
442
- >::type::value
443
- || conditional<
444
- is_executor<T>::value,
445
- false_type,
446
- is_scheduler<T>
447
- >::type::value
448
- ));
449
- # endif // defined(BOOST_ASIO_NO_DEPRECATED)
383
+ static constexpr bool is_applicable_property_v = is_executor<T>::value;
450
384
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
451
385
 
452
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = true);
453
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_preferable = true);
386
+ static constexpr bool is_requirable = true;
387
+ static constexpr bool is_preferable = true;
454
388
  typedef blocking_adaptation_t<I> polymorphic_query_result_type;
455
389
 
456
- BOOST_ASIO_CONSTEXPR disallowed_t()
390
+ constexpr disallowed_t()
457
391
  {
458
392
  }
459
393
 
@@ -472,55 +406,62 @@ struct disallowed_t
472
406
  #if defined(BOOST_ASIO_HAS_DEDUCED_STATIC_QUERY_TRAIT) \
473
407
  && defined(BOOST_ASIO_HAS_SFINAE_VARIABLE_TEMPLATES)
474
408
  template <typename T>
475
- static BOOST_ASIO_CONSTEXPR
409
+ static constexpr
476
410
  typename query_static_constexpr_member<T>::result_type
477
411
  static_query()
478
- BOOST_ASIO_NOEXCEPT_IF((
479
- query_static_constexpr_member<T>::is_noexcept))
412
+ noexcept(query_static_constexpr_member<T>::is_noexcept)
480
413
  {
481
414
  return query_static_constexpr_member<T>::value();
482
415
  }
483
416
 
484
417
  template <typename T>
485
- static BOOST_ASIO_CONSTEXPR disallowed_t static_query(
486
- typename enable_if<
418
+ static constexpr disallowed_t static_query(
419
+ enable_if_t<
487
420
  !query_static_constexpr_member<T>::is_valid
488
- >::type* = 0,
489
- typename enable_if<
421
+ >* = 0,
422
+ enable_if_t<
490
423
  !query_member<T>::is_valid
491
- >::type* = 0,
492
- typename enable_if<
424
+ >* = 0,
425
+ enable_if_t<
493
426
  !traits::query_free<T, disallowed_t>::is_valid
494
- >::type* = 0,
495
- typename enable_if<
496
- !can_query<T, allowed_t<I> >::value
497
- >::type* = 0) BOOST_ASIO_NOEXCEPT
427
+ >* = 0,
428
+ enable_if_t<
429
+ !can_query<T, allowed_t<I>>::value
430
+ >* = 0) noexcept
498
431
  {
499
432
  return disallowed_t();
500
433
  }
501
434
 
502
435
  template <typename E, typename T = decltype(disallowed_t::static_query<E>())>
503
- static BOOST_ASIO_CONSTEXPR const T static_query_v
436
+ static constexpr const T static_query_v
504
437
  = disallowed_t::static_query<E>();
505
438
  #endif // defined(BOOST_ASIO_HAS_DEDUCED_STATIC_QUERY_TRAIT)
506
439
  // && defined(BOOST_ASIO_HAS_SFINAE_VARIABLE_TEMPLATES)
507
440
 
508
- static BOOST_ASIO_CONSTEXPR blocking_adaptation_t<I> value()
441
+ static constexpr blocking_adaptation_t<I> value()
509
442
  {
510
443
  return disallowed_t();
511
444
  }
512
445
 
513
- friend BOOST_ASIO_CONSTEXPR bool operator==(
514
- const disallowed_t&, const disallowed_t&)
446
+ friend constexpr bool operator==(const disallowed_t&, const disallowed_t&)
515
447
  {
516
448
  return true;
517
449
  }
518
450
 
519
- friend BOOST_ASIO_CONSTEXPR bool operator!=(
520
- const disallowed_t&, const disallowed_t&)
451
+ friend constexpr bool operator!=(const disallowed_t&, const disallowed_t&)
521
452
  {
522
453
  return false;
523
454
  }
455
+
456
+ friend constexpr bool operator==(const disallowed_t&, const allowed_t<I>&)
457
+ {
458
+ return false;
459
+ }
460
+
461
+ friend constexpr bool operator!=(const disallowed_t&, const allowed_t<I>&)
462
+ {
463
+ return true;
464
+ }
524
465
  };
525
466
 
526
467
  #if defined(BOOST_ASIO_HAS_DEDUCED_STATIC_QUERY_TRAIT) \
@@ -534,113 +475,91 @@ template <typename Executor>
534
475
  class adapter
535
476
  {
536
477
  public:
537
- adapter(int, const Executor& e) BOOST_ASIO_NOEXCEPT
478
+ adapter(int, const Executor& e) noexcept
538
479
  : executor_(e)
539
480
  {
540
481
  }
541
482
 
542
- adapter(const adapter& other) BOOST_ASIO_NOEXCEPT
483
+ adapter(const adapter& other) noexcept
543
484
  : executor_(other.executor_)
544
485
  {
545
486
  }
546
487
 
547
- #if defined(BOOST_ASIO_HAS_MOVE)
548
- adapter(adapter&& other) BOOST_ASIO_NOEXCEPT
549
- : executor_(BOOST_ASIO_MOVE_CAST(Executor)(other.executor_))
488
+ adapter(adapter&& other) noexcept
489
+ : executor_(static_cast<Executor&&>(other.executor_))
550
490
  {
551
491
  }
552
- #endif // defined(BOOST_ASIO_HAS_MOVE) || defined(GENERATING_DOCUMENTATION)
553
492
 
554
493
  template <int I>
555
- static BOOST_ASIO_CONSTEXPR allowed_t<I> query(
556
- blocking_adaptation_t<I>) BOOST_ASIO_NOEXCEPT
494
+ static constexpr allowed_t<I> query(blocking_adaptation_t<I>) noexcept
557
495
  {
558
496
  return allowed_t<I>();
559
497
  }
560
498
 
561
499
  template <int I>
562
- static BOOST_ASIO_CONSTEXPR allowed_t<I> query(
563
- allowed_t<I>) BOOST_ASIO_NOEXCEPT
500
+ static constexpr allowed_t<I> query(allowed_t<I>) noexcept
564
501
  {
565
502
  return allowed_t<I>();
566
503
  }
567
504
 
568
505
  template <int I>
569
- static BOOST_ASIO_CONSTEXPR allowed_t<I> query(
570
- disallowed_t<I>) BOOST_ASIO_NOEXCEPT
506
+ static constexpr allowed_t<I> query(disallowed_t<I>) noexcept
571
507
  {
572
508
  return allowed_t<I>();
573
509
  }
574
510
 
575
511
  template <typename Property>
576
- typename enable_if<
512
+ enable_if_t<
577
513
  can_query<const Executor&, Property>::value,
578
- typename query_result<const Executor&, Property>::type
579
- >::type query(const Property& p) const
580
- BOOST_ASIO_NOEXCEPT_IF((
581
- is_nothrow_query<const Executor&, Property>::value))
514
+ query_result_t<const Executor&, Property>
515
+ > query(const Property& p) const
516
+ noexcept(is_nothrow_query<const Executor&, Property>::value)
582
517
  {
583
518
  return boost::asio::query(executor_, p);
584
519
  }
585
520
 
586
521
  template <int I>
587
- Executor require(disallowed_t<I>) const BOOST_ASIO_NOEXCEPT
522
+ Executor require(disallowed_t<I>) const noexcept
588
523
  {
589
524
  return executor_;
590
525
  }
591
526
 
592
527
  template <typename Property>
593
- typename enable_if<
528
+ enable_if_t<
594
529
  can_require<const Executor&, Property>::value,
595
- adapter<typename decay<
596
- typename require_result<const Executor&, Property>::type
597
- >::type>
598
- >::type require(const Property& p) const
599
- BOOST_ASIO_NOEXCEPT_IF((
600
- is_nothrow_require<const Executor&, Property>::value))
530
+ adapter<decay_t<require_result_t<const Executor&, Property>>>
531
+ > require(const Property& p) const
532
+ noexcept(is_nothrow_require<const Executor&, Property>::value)
601
533
  {
602
- return adapter<typename decay<
603
- typename require_result<const Executor&, Property>::type
604
- >::type>(0, boost::asio::require(executor_, p));
534
+ return adapter<decay_t<require_result_t<const Executor&, Property>>>(
535
+ 0, boost::asio::require(executor_, p));
605
536
  }
606
537
 
607
538
  template <typename Property>
608
- typename enable_if<
539
+ enable_if_t<
609
540
  can_prefer<const Executor&, Property>::value,
610
- adapter<typename decay<
611
- typename prefer_result<const Executor&, Property>::type
612
- >::type>
613
- >::type prefer(const Property& p) const
614
- BOOST_ASIO_NOEXCEPT_IF((
615
- is_nothrow_prefer<const Executor&, Property>::value))
541
+ adapter<decay_t<prefer_result_t<const Executor&, Property>>>
542
+ > prefer(const Property& p) const
543
+ noexcept(is_nothrow_prefer<const Executor&, Property>::value)
616
544
  {
617
- return adapter<typename decay<
618
- typename prefer_result<const Executor&, Property>::type
619
- >::type>(0, boost::asio::prefer(executor_, p));
545
+ return adapter<decay_t<prefer_result_t<const Executor&, Property>>>(
546
+ 0, boost::asio::prefer(executor_, p));
620
547
  }
621
548
 
622
549
  template <typename Function>
623
- typename enable_if<
624
- #if defined(BOOST_ASIO_NO_DEPRECATED)
550
+ enable_if_t<
625
551
  traits::execute_member<const Executor&, Function>::is_valid
626
- #else // defined(BOOST_ASIO_NO_DEPRECATED)
627
- execution::can_execute<const Executor&, Function>::value
628
- #endif // defined(BOOST_ASIO_NO_DEPRECATED)
629
- >::type execute(BOOST_ASIO_MOVE_ARG(Function) f) const
552
+ > execute(Function&& f) const
630
553
  {
631
- #if defined(BOOST_ASIO_NO_DEPRECATED)
632
- executor_.execute(BOOST_ASIO_MOVE_CAST(Function)(f));
633
- #else // defined(BOOST_ASIO_NO_DEPRECATED)
634
- execution::execute(executor_, BOOST_ASIO_MOVE_CAST(Function)(f));
635
- #endif // defined(BOOST_ASIO_NO_DEPRECATED)
554
+ executor_.execute(static_cast<Function&&>(f));
636
555
  }
637
556
 
638
- friend bool operator==(const adapter& a, const adapter& b) BOOST_ASIO_NOEXCEPT
557
+ friend bool operator==(const adapter& a, const adapter& b) noexcept
639
558
  {
640
559
  return a.executor_ == b.executor_;
641
560
  }
642
561
 
643
- friend bool operator!=(const adapter& a, const adapter& b) BOOST_ASIO_NOEXCEPT
562
+ friend bool operator!=(const adapter& a, const adapter& b) noexcept
644
563
  {
645
564
  return a.executor_ != b.executor_;
646
565
  }
@@ -653,35 +572,15 @@ template <int I = 0>
653
572
  struct allowed_t
654
573
  {
655
574
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
656
- # if defined(BOOST_ASIO_NO_DEPRECATED)
657
575
  template <typename T>
658
- BOOST_ASIO_STATIC_CONSTEXPR(bool,
659
- is_applicable_property_v = (
660
- is_executor<T>::value));
661
- # else // defined(BOOST_ASIO_NO_DEPRECATED)
662
- template <typename T>
663
- BOOST_ASIO_STATIC_CONSTEXPR(bool,
664
- is_applicable_property_v = (
665
- is_executor<T>::value
666
- || conditional<
667
- is_executor<T>::value,
668
- false_type,
669
- is_sender<T>
670
- >::type::value
671
- || conditional<
672
- is_executor<T>::value,
673
- false_type,
674
- is_scheduler<T>
675
- >::type::value
676
- ));
677
- # endif // defined(BOOST_ASIO_NO_DEPRECATED)
576
+ static constexpr bool is_applicable_property_v = is_executor<T>::value;
678
577
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
679
578
 
680
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = true);
681
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_preferable = false);
579
+ static constexpr bool is_requirable = true;
580
+ static constexpr bool is_preferable = false;
682
581
  typedef blocking_adaptation_t<I> polymorphic_query_result_type;
683
582
 
684
- BOOST_ASIO_CONSTEXPR allowed_t()
583
+ constexpr allowed_t()
685
584
  {
686
585
  }
687
586
 
@@ -700,44 +599,49 @@ struct allowed_t
700
599
  #if defined(BOOST_ASIO_HAS_DEDUCED_STATIC_QUERY_TRAIT) \
701
600
  && defined(BOOST_ASIO_HAS_SFINAE_VARIABLE_TEMPLATES)
702
601
  template <typename T>
703
- static BOOST_ASIO_CONSTEXPR
704
- typename query_static_constexpr_member<T>::result_type
602
+ static constexpr typename query_static_constexpr_member<T>::result_type
705
603
  static_query()
706
- BOOST_ASIO_NOEXCEPT_IF((
707
- query_static_constexpr_member<T>::is_noexcept))
604
+ noexcept(query_static_constexpr_member<T>::is_noexcept)
708
605
  {
709
606
  return query_static_constexpr_member<T>::value();
710
607
  }
711
608
 
712
609
  template <typename E, typename T = decltype(allowed_t::static_query<E>())>
713
- static BOOST_ASIO_CONSTEXPR const T static_query_v
714
- = allowed_t::static_query<E>();
610
+ static constexpr const T static_query_v = allowed_t::static_query<E>();
715
611
  #endif // defined(BOOST_ASIO_HAS_DEDUCED_STATIC_QUERY_TRAIT)
716
612
  // && defined(BOOST_ASIO_HAS_SFINAE_VARIABLE_TEMPLATES)
717
613
 
718
- static BOOST_ASIO_CONSTEXPR blocking_adaptation_t<I> value()
614
+ static constexpr blocking_adaptation_t<I> value()
719
615
  {
720
616
  return allowed_t();
721
617
  }
722
618
 
723
- friend BOOST_ASIO_CONSTEXPR bool operator==(
724
- const allowed_t&, const allowed_t&)
619
+ friend constexpr bool operator==(const allowed_t&, const allowed_t&)
725
620
  {
726
621
  return true;
727
622
  }
728
623
 
729
- friend BOOST_ASIO_CONSTEXPR bool operator!=(
730
- const allowed_t&, const allowed_t&)
624
+ friend constexpr bool operator!=(const allowed_t&, const allowed_t&)
625
+ {
626
+ return false;
627
+ }
628
+
629
+ friend constexpr bool operator==(const allowed_t&, const disallowed_t<I>&)
731
630
  {
732
631
  return false;
733
632
  }
734
633
 
634
+ friend constexpr bool operator!=(const allowed_t&, const disallowed_t<I>&)
635
+ {
636
+ return true;
637
+ }
638
+
735
639
  template <typename Executor>
736
640
  friend adapter<Executor> require(
737
641
  const Executor& e, const allowed_t&,
738
- typename enable_if<
642
+ enable_if_t<
739
643
  is_executor<Executor>::value
740
- >::type* = 0)
644
+ >* = 0)
741
645
  {
742
646
  return adapter<Executor>(0, e);
743
647
  }
@@ -755,21 +659,17 @@ class blocking_execute_state
755
659
  {
756
660
  public:
757
661
  template <typename F>
758
- blocking_execute_state(BOOST_ASIO_MOVE_ARG(F) f)
759
- : func_(BOOST_ASIO_MOVE_CAST(F)(f)),
662
+ blocking_execute_state(F&& f)
663
+ : func_(static_cast<F&&>(f)),
760
664
  is_complete_(false)
761
665
  {
762
666
  }
763
667
 
764
668
  template <typename Executor>
765
- void execute_and_wait(BOOST_ASIO_MOVE_ARG(Executor) ex)
669
+ void execute_and_wait(Executor&& ex)
766
670
  {
767
671
  handler h = { this };
768
- #if defined(BOOST_ASIO_NO_DEPRECATED)
769
672
  ex.execute(h);
770
- #else // defined(BOOST_ASIO_NO_DEPRECATED)
771
- execution::execute(BOOST_ASIO_MOVE_CAST(Executor)(ex), h);
772
- #endif // defined(BOOST_ASIO_NO_DEPRECATED)
773
673
  boost::asio::detail::mutex::scoped_lock lock(mutex_);
774
674
  while (!is_complete_)
775
675
  event_.wait(lock);
@@ -806,11 +706,11 @@ public:
806
706
 
807
707
  template <typename Executor, typename Function>
808
708
  void blocking_execute(
809
- BOOST_ASIO_MOVE_ARG(Executor) ex,
810
- BOOST_ASIO_MOVE_ARG(Function) func)
709
+ Executor&& ex,
710
+ Function&& func)
811
711
  {
812
- typedef typename decay<Function>::type func_t;
813
- blocking_execute_state<func_t> state(BOOST_ASIO_MOVE_CAST(Function)(func));
712
+ typedef decay_t<Function> func_t;
713
+ blocking_execute_state<func_t> state(static_cast<Function&&>(func));
814
714
  state.execute_and_wait(ex);
815
715
  }
816
716
 
@@ -819,12 +719,7 @@ void blocking_execute(
819
719
 
820
720
  typedef detail::blocking_adaptation_t<> blocking_adaptation_t;
821
721
 
822
- #if defined(BOOST_ASIO_HAS_CONSTEXPR) || defined(GENERATING_DOCUMENTATION)
823
722
  constexpr blocking_adaptation_t blocking_adaptation;
824
- #else // defined(BOOST_ASIO_HAS_CONSTEXPR) || defined(GENERATING_DOCUMENTATION)
825
- namespace { static const blocking_adaptation_t&
826
- blocking_adaptation = blocking_adaptation_t::instance; }
827
- #endif
828
723
 
829
724
  } // namespace execution
830
725
 
@@ -832,61 +727,19 @@ namespace { static const blocking_adaptation_t&
832
727
 
833
728
  template <typename T>
834
729
  struct is_applicable_property<T, execution::blocking_adaptation_t>
835
- : integral_constant<bool,
836
- execution::is_executor<T>::value
837
- #if !defined(BOOST_ASIO_NO_DEPRECATED)
838
- || conditional<
839
- execution::is_executor<T>::value,
840
- false_type,
841
- execution::is_sender<T>
842
- >::type::value
843
- || conditional<
844
- execution::is_executor<T>::value,
845
- false_type,
846
- execution::is_scheduler<T>
847
- >::type::value
848
- #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
849
- >
730
+ : integral_constant<bool, execution::is_executor<T>::value>
850
731
  {
851
732
  };
852
733
 
853
734
  template <typename T>
854
735
  struct is_applicable_property<T, execution::blocking_adaptation_t::disallowed_t>
855
- : integral_constant<bool,
856
- execution::is_executor<T>::value
857
- #if !defined(BOOST_ASIO_NO_DEPRECATED)
858
- || conditional<
859
- execution::is_executor<T>::value,
860
- false_type,
861
- execution::is_sender<T>
862
- >::type::value
863
- || conditional<
864
- execution::is_executor<T>::value,
865
- false_type,
866
- execution::is_scheduler<T>
867
- >::type::value
868
- #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
869
- >
736
+ : integral_constant<bool, execution::is_executor<T>::value>
870
737
  {
871
738
  };
872
739
 
873
740
  template <typename T>
874
741
  struct is_applicable_property<T, execution::blocking_adaptation_t::allowed_t>
875
- : integral_constant<bool,
876
- execution::is_executor<T>::value
877
- #if !defined(BOOST_ASIO_NO_DEPRECATED)
878
- || conditional<
879
- execution::is_executor<T>::value,
880
- false_type,
881
- execution::is_sender<T>
882
- >::type::value
883
- || conditional<
884
- execution::is_executor<T>::value,
885
- false_type,
886
- execution::is_scheduler<T>
887
- >::type::value
888
- #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
889
- >
742
+ : integral_constant<bool, execution::is_executor<T>::value>
890
743
  {
891
744
  };
892
745
 
@@ -898,27 +751,27 @@ namespace traits {
898
751
 
899
752
  template <typename T>
900
753
  struct query_free_default<T, execution::blocking_adaptation_t,
901
- typename enable_if<
754
+ enable_if_t<
902
755
  can_query<T, execution::blocking_adaptation_t::disallowed_t>::value
903
- >::type>
756
+ >>
904
757
  {
905
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
906
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = (is_nothrow_query<T,
907
- execution::blocking_adaptation_t::disallowed_t>::value));
758
+ static constexpr bool is_valid = true;
759
+ static constexpr bool is_noexcept =
760
+ is_nothrow_query<T, execution::blocking_adaptation_t::disallowed_t>::value;
908
761
 
909
762
  typedef execution::blocking_adaptation_t result_type;
910
763
  };
911
764
 
912
765
  template <typename T>
913
766
  struct query_free_default<T, execution::blocking_adaptation_t,
914
- typename enable_if<
767
+ enable_if_t<
915
768
  !can_query<T, execution::blocking_adaptation_t::disallowed_t>::value
916
769
  && can_query<T, execution::blocking_adaptation_t::allowed_t>::value
917
- >::type>
770
+ >>
918
771
  {
919
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
920
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept =
921
- (is_nothrow_query<T, execution::blocking_adaptation_t::allowed_t>::value));
772
+ static constexpr bool is_valid = true;
773
+ static constexpr bool is_noexcept =
774
+ is_nothrow_query<T, execution::blocking_adaptation_t::allowed_t>::value;
922
775
 
923
776
  typedef execution::blocking_adaptation_t result_type;
924
777
  };
@@ -930,18 +783,18 @@ struct query_free_default<T, execution::blocking_adaptation_t,
930
783
 
931
784
  template <typename T>
932
785
  struct static_query<T, execution::blocking_adaptation_t,
933
- typename enable_if<
786
+ enable_if_t<
934
787
  execution::detail::blocking_adaptation_t<0>::
935
788
  query_static_constexpr_member<T>::is_valid
936
- >::type>
789
+ >>
937
790
  {
938
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
939
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = true);
791
+ static constexpr bool is_valid = true;
792
+ static constexpr bool is_noexcept = true;
940
793
 
941
794
  typedef typename execution::detail::blocking_adaptation_t<0>::
942
795
  query_static_constexpr_member<T>::result_type result_type;
943
796
 
944
- static BOOST_ASIO_CONSTEXPR result_type value()
797
+ static constexpr result_type value()
945
798
  {
946
799
  return execution::detail::blocking_adaptation_t<0>::
947
800
  query_static_constexpr_member<T>::value();
@@ -950,22 +803,22 @@ struct static_query<T, execution::blocking_adaptation_t,
950
803
 
951
804
  template <typename T>
952
805
  struct static_query<T, execution::blocking_adaptation_t,
953
- typename enable_if<
806
+ enable_if_t<
954
807
  !execution::detail::blocking_adaptation_t<0>::
955
808
  query_static_constexpr_member<T>::is_valid
956
809
  && !execution::detail::blocking_adaptation_t<0>::
957
810
  query_member<T>::is_valid
958
811
  && traits::static_query<T,
959
812
  execution::blocking_adaptation_t::disallowed_t>::is_valid
960
- >::type>
813
+ >>
961
814
  {
962
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
963
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = true);
815
+ static constexpr bool is_valid = true;
816
+ static constexpr bool is_noexcept = true;
964
817
 
965
818
  typedef typename traits::static_query<T,
966
819
  execution::blocking_adaptation_t::disallowed_t>::result_type result_type;
967
820
 
968
- static BOOST_ASIO_CONSTEXPR result_type value()
821
+ static constexpr result_type value()
969
822
  {
970
823
  return traits::static_query<T,
971
824
  execution::blocking_adaptation_t::disallowed_t>::value();
@@ -974,7 +827,7 @@ struct static_query<T, execution::blocking_adaptation_t,
974
827
 
975
828
  template <typename T>
976
829
  struct static_query<T, execution::blocking_adaptation_t,
977
- typename enable_if<
830
+ enable_if_t<
978
831
  !execution::detail::blocking_adaptation_t<0>::
979
832
  query_static_constexpr_member<T>::is_valid
980
833
  && !execution::detail::blocking_adaptation_t<0>::
@@ -983,15 +836,15 @@ struct static_query<T, execution::blocking_adaptation_t,
983
836
  execution::blocking_adaptation_t::disallowed_t>::is_valid
984
837
  && traits::static_query<T,
985
838
  execution::blocking_adaptation_t::allowed_t>::is_valid
986
- >::type>
839
+ >>
987
840
  {
988
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
989
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = true);
841
+ static constexpr bool is_valid = true;
842
+ static constexpr bool is_noexcept = true;
990
843
 
991
844
  typedef typename traits::static_query<T,
992
845
  execution::blocking_adaptation_t::allowed_t>::result_type result_type;
993
846
 
994
- static BOOST_ASIO_CONSTEXPR result_type value()
847
+ static constexpr result_type value()
995
848
  {
996
849
  return traits::static_query<T,
997
850
  execution::blocking_adaptation_t::allowed_t>::value();
@@ -1000,18 +853,18 @@ struct static_query<T, execution::blocking_adaptation_t,
1000
853
 
1001
854
  template <typename T>
1002
855
  struct static_query<T, execution::blocking_adaptation_t::disallowed_t,
1003
- typename enable_if<
856
+ enable_if_t<
1004
857
  execution::detail::blocking_adaptation::disallowed_t<0>::
1005
858
  query_static_constexpr_member<T>::is_valid
1006
- >::type>
859
+ >>
1007
860
  {
1008
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1009
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = true);
861
+ static constexpr bool is_valid = true;
862
+ static constexpr bool is_noexcept = true;
1010
863
 
1011
864
  typedef typename execution::detail::blocking_adaptation::disallowed_t<0>::
1012
865
  query_static_constexpr_member<T>::result_type result_type;
1013
866
 
1014
- static BOOST_ASIO_CONSTEXPR result_type value()
867
+ static constexpr result_type value()
1015
868
  {
1016
869
  return execution::detail::blocking_adaptation::disallowed_t<0>::
1017
870
  query_static_constexpr_member<T>::value();
@@ -1020,7 +873,7 @@ struct static_query<T, execution::blocking_adaptation_t::disallowed_t,
1020
873
 
1021
874
  template <typename T>
1022
875
  struct static_query<T, execution::blocking_adaptation_t::disallowed_t,
1023
- typename enable_if<
876
+ enable_if_t<
1024
877
  !execution::detail::blocking_adaptation::disallowed_t<0>::
1025
878
  query_static_constexpr_member<T>::is_valid
1026
879
  && !execution::detail::blocking_adaptation::disallowed_t<0>::
@@ -1028,14 +881,14 @@ struct static_query<T, execution::blocking_adaptation_t::disallowed_t,
1028
881
  && !traits::query_free<T,
1029
882
  execution::blocking_adaptation_t::disallowed_t>::is_valid
1030
883
  && !can_query<T, execution::blocking_adaptation_t::allowed_t>::value
1031
- >::type>
884
+ >>
1032
885
  {
1033
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1034
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = true);
886
+ static constexpr bool is_valid = true;
887
+ static constexpr bool is_noexcept = true;
1035
888
 
1036
889
  typedef execution::blocking_adaptation_t::disallowed_t result_type;
1037
890
 
1038
- static BOOST_ASIO_CONSTEXPR result_type value()
891
+ static constexpr result_type value()
1039
892
  {
1040
893
  return result_type();
1041
894
  }
@@ -1043,18 +896,18 @@ struct static_query<T, execution::blocking_adaptation_t::disallowed_t,
1043
896
 
1044
897
  template <typename T>
1045
898
  struct static_query<T, execution::blocking_adaptation_t::allowed_t,
1046
- typename enable_if<
899
+ enable_if_t<
1047
900
  execution::detail::blocking_adaptation::allowed_t<0>::
1048
901
  query_static_constexpr_member<T>::is_valid
1049
- >::type>
902
+ >>
1050
903
  {
1051
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1052
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = true);
904
+ static constexpr bool is_valid = true;
905
+ static constexpr bool is_noexcept = true;
1053
906
 
1054
907
  typedef typename execution::detail::blocking_adaptation::allowed_t<0>::
1055
908
  query_static_constexpr_member<T>::result_type result_type;
1056
909
 
1057
- static BOOST_ASIO_CONSTEXPR result_type value()
910
+ static constexpr result_type value()
1058
911
  {
1059
912
  return execution::detail::blocking_adaptation::allowed_t<0>::
1060
913
  query_static_constexpr_member<T>::value();
@@ -1064,45 +917,17 @@ struct static_query<T, execution::blocking_adaptation_t::allowed_t,
1064
917
  #endif // !defined(BOOST_ASIO_HAS_DEDUCED_STATIC_QUERY_TRAIT)
1065
918
  // || !defined(BOOST_ASIO_HAS_SFINAE_VARIABLE_TEMPLATES)
1066
919
 
1067
- #if !defined(BOOST_ASIO_HAS_DEDUCED_STATIC_REQUIRE_TRAIT)
1068
-
1069
- template <typename T>
1070
- struct static_require<T, execution::blocking_adaptation_t::disallowed_t,
1071
- typename enable_if<
1072
- static_query<T, execution::blocking_adaptation_t::disallowed_t>::is_valid
1073
- >::type>
1074
- {
1075
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid =
1076
- (is_same<typename static_query<T,
1077
- execution::blocking_adaptation_t::disallowed_t>::result_type,
1078
- execution::blocking_adaptation_t::disallowed_t>::value));
1079
- };
1080
-
1081
- template <typename T>
1082
- struct static_require<T, execution::blocking_adaptation_t::allowed_t,
1083
- typename enable_if<
1084
- static_query<T, execution::blocking_adaptation_t::allowed_t>::is_valid
1085
- >::type>
1086
- {
1087
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid =
1088
- (is_same<typename static_query<T,
1089
- execution::blocking_adaptation_t::allowed_t>::result_type,
1090
- execution::blocking_adaptation_t::allowed_t>::value));
1091
- };
1092
-
1093
- #endif // !defined(BOOST_ASIO_HAS_DEDUCED_STATIC_REQUIRE_TRAIT)
1094
-
1095
920
  #if !defined(BOOST_ASIO_HAS_DEDUCED_REQUIRE_FREE_TRAIT)
1096
921
 
1097
922
  template <typename T>
1098
923
  struct require_free_default<T, execution::blocking_adaptation_t::allowed_t,
1099
- typename enable_if<
1100
- is_same<T, typename decay<T>::type>::value
924
+ enable_if_t<
925
+ is_same<T, decay_t<T>>::value
1101
926
  && execution::is_executor<T>::value
1102
- >::type>
927
+ >>
1103
928
  {
1104
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1105
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = false);
929
+ static constexpr bool is_valid = true;
930
+ static constexpr bool is_noexcept = false;
1106
931
  typedef execution::detail::blocking_adaptation::adapter<T> result_type;
1107
932
  };
1108
933
 
@@ -1112,10 +937,10 @@ struct require_free_default<T, execution::blocking_adaptation_t::allowed_t,
1112
937
 
1113
938
  template <typename Executor>
1114
939
  struct equality_comparable<
1115
- execution::detail::blocking_adaptation::adapter<Executor> >
940
+ execution::detail::blocking_adaptation::adapter<Executor>>
1116
941
  {
1117
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1118
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = true);
942
+ static constexpr bool is_valid = true;
943
+ static constexpr bool is_noexcept = true;
1119
944
  };
1120
945
 
1121
946
  #endif // !defined(BOOST_ASIO_HAS_DEDUCED_EQUALITY_COMPARABLE_TRAIT)
@@ -1126,8 +951,8 @@ template <typename Executor, typename Function>
1126
951
  struct execute_member<
1127
952
  execution::detail::blocking_adaptation::adapter<Executor>, Function>
1128
953
  {
1129
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1130
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = false);
954
+ static constexpr bool is_valid = true;
955
+ static constexpr bool is_noexcept = false;
1131
956
  typedef void result_type;
1132
957
  };
1133
958
 
@@ -1138,13 +963,13 @@ struct execute_member<
1138
963
  template <typename Executor, int I>
1139
964
  struct query_static_constexpr_member<
1140
965
  execution::detail::blocking_adaptation::adapter<Executor>,
1141
- execution::detail::blocking_adaptation_t<I> >
966
+ execution::detail::blocking_adaptation_t<I>>
1142
967
  {
1143
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1144
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = true);
968
+ static constexpr bool is_valid = true;
969
+ static constexpr bool is_noexcept = true;
1145
970
  typedef execution::blocking_adaptation_t::allowed_t result_type;
1146
971
 
1147
- static BOOST_ASIO_CONSTEXPR result_type value() BOOST_ASIO_NOEXCEPT
972
+ static constexpr result_type value() noexcept
1148
973
  {
1149
974
  return result_type();
1150
975
  }
@@ -1153,13 +978,13 @@ struct query_static_constexpr_member<
1153
978
  template <typename Executor, int I>
1154
979
  struct query_static_constexpr_member<
1155
980
  execution::detail::blocking_adaptation::adapter<Executor>,
1156
- execution::detail::blocking_adaptation::allowed_t<I> >
981
+ execution::detail::blocking_adaptation::allowed_t<I>>
1157
982
  {
1158
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1159
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = true);
983
+ static constexpr bool is_valid = true;
984
+ static constexpr bool is_noexcept = true;
1160
985
  typedef execution::blocking_adaptation_t::allowed_t result_type;
1161
986
 
1162
- static BOOST_ASIO_CONSTEXPR result_type value() BOOST_ASIO_NOEXCEPT
987
+ static constexpr result_type value() noexcept
1163
988
  {
1164
989
  return result_type();
1165
990
  }
@@ -1168,13 +993,13 @@ struct query_static_constexpr_member<
1168
993
  template <typename Executor, int I>
1169
994
  struct query_static_constexpr_member<
1170
995
  execution::detail::blocking_adaptation::adapter<Executor>,
1171
- execution::detail::blocking_adaptation::disallowed_t<I> >
996
+ execution::detail::blocking_adaptation::disallowed_t<I>>
1172
997
  {
1173
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1174
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = true);
998
+ static constexpr bool is_valid = true;
999
+ static constexpr bool is_noexcept = true;
1175
1000
  typedef execution::blocking_adaptation_t::allowed_t result_type;
1176
1001
 
1177
- static BOOST_ASIO_CONSTEXPR result_type value() BOOST_ASIO_NOEXCEPT
1002
+ static constexpr result_type value() noexcept
1178
1003
  {
1179
1004
  return result_type();
1180
1005
  }
@@ -1187,14 +1012,14 @@ struct query_static_constexpr_member<
1187
1012
  template <typename Executor, typename Property>
1188
1013
  struct query_member<
1189
1014
  execution::detail::blocking_adaptation::adapter<Executor>, Property,
1190
- typename enable_if<
1015
+ enable_if_t<
1191
1016
  can_query<const Executor&, Property>::value
1192
- >::type>
1017
+ >>
1193
1018
  {
1194
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1195
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept =
1196
- (is_nothrow_query<Executor, Property>::value));
1197
- typedef typename query_result<Executor, Property>::type result_type;
1019
+ static constexpr bool is_valid = true;
1020
+ static constexpr bool is_noexcept =
1021
+ is_nothrow_query<Executor, Property>::value;
1022
+ typedef query_result_t<Executor, Property> result_type;
1198
1023
  };
1199
1024
 
1200
1025
  #endif // !defined(BOOST_ASIO_HAS_DEDUCED_QUERY_MEMBER_TRAIT)
@@ -1204,26 +1029,25 @@ struct query_member<
1204
1029
  template <typename Executor, int I>
1205
1030
  struct require_member<
1206
1031
  execution::detail::blocking_adaptation::adapter<Executor>,
1207
- execution::detail::blocking_adaptation::disallowed_t<I> >
1032
+ execution::detail::blocking_adaptation::disallowed_t<I>>
1208
1033
  {
1209
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1210
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept = true);
1034
+ static constexpr bool is_valid = true;
1035
+ static constexpr bool is_noexcept = true;
1211
1036
  typedef Executor result_type;
1212
1037
  };
1213
1038
 
1214
1039
  template <typename Executor, typename Property>
1215
1040
  struct require_member<
1216
1041
  execution::detail::blocking_adaptation::adapter<Executor>, Property,
1217
- typename enable_if<
1042
+ enable_if_t<
1218
1043
  can_require<const Executor&, Property>::value
1219
- >::type>
1044
+ >>
1220
1045
  {
1221
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1222
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept =
1223
- (is_nothrow_require<Executor, Property>::value));
1224
- typedef execution::detail::blocking_adaptation::adapter<typename decay<
1225
- typename require_result<Executor, Property>::type
1226
- >::type> result_type;
1046
+ static constexpr bool is_valid = true;
1047
+ static constexpr bool is_noexcept =
1048
+ is_nothrow_require<Executor, Property>::value;
1049
+ typedef execution::detail::blocking_adaptation::adapter<
1050
+ decay_t<require_result_t<Executor, Property>>> result_type;
1227
1051
  };
1228
1052
 
1229
1053
  #endif // !defined(BOOST_ASIO_HAS_DEDUCED_REQUIRE_MEMBER_TRAIT)
@@ -1233,16 +1057,15 @@ struct require_member<
1233
1057
  template <typename Executor, typename Property>
1234
1058
  struct prefer_member<
1235
1059
  execution::detail::blocking_adaptation::adapter<Executor>, Property,
1236
- typename enable_if<
1060
+ enable_if_t<
1237
1061
  can_prefer<const Executor&, Property>::value
1238
- >::type>
1062
+ >>
1239
1063
  {
1240
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_valid = true);
1241
- BOOST_ASIO_STATIC_CONSTEXPR(bool, is_noexcept =
1242
- (is_nothrow_prefer<Executor, Property>::value));
1243
- typedef execution::detail::blocking_adaptation::adapter<typename decay<
1244
- typename prefer_result<Executor, Property>::type
1245
- >::type> result_type;
1064
+ static constexpr bool is_valid = true;
1065
+ static constexpr bool is_noexcept =
1066
+ is_nothrow_prefer<Executor, Property>::value;
1067
+ typedef execution::detail::blocking_adaptation::adapter<
1068
+ decay_t<prefer_result_t<Executor, Property>>> result_type;
1246
1069
  };
1247
1070
 
1248
1071
  #endif // !defined(BOOST_ASIO_HAS_DEDUCED_PREFER_MEMBER_TRAIT)