passenger 6.0.16 → 6.0.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (286) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +22 -1
  3. data/build/integration_tests.rb +6 -6
  4. data/build/ruby_tests.rb +1 -1
  5. data/build/test_basics.rb +0 -1
  6. data/src/agent/Core/Config.h +1 -1
  7. data/src/agent/Core/Controller/Config.h +1 -1
  8. data/src/agent/Core/SpawningKit/PipeWatcher.h +18 -3
  9. data/src/agent/Watchdog/Config.h +1 -1
  10. data/src/cxx_supportlib/Constants.h +1 -1
  11. data/src/cxx_supportlib/vendor-modified/boost/align/aligned_alloc.hpp +1 -1
  12. data/src/cxx_supportlib/vendor-modified/boost/array.hpp +1 -1
  13. data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_executor.hpp +344 -0
  14. data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_handler.hpp +686 -0
  15. data/src/cxx_supportlib/vendor-modified/boost/asio/any_io_executor.hpp +56 -0
  16. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_allocator.hpp +81 -25
  17. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_cancellation_slot.hpp +68 -8
  18. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_executor.hpp +46 -11
  19. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +4 -4
  20. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +2 -2
  21. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_file.hpp +1 -1
  22. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_random_access_file.hpp +2 -2
  23. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +4 -4
  24. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_readable_pipe.hpp +2 -2
  25. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +2 -2
  26. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_serial_port.hpp +3 -3
  27. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_signal_set.hpp +2 -2
  28. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +3 -3
  29. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +4 -4
  30. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_file.hpp +2 -2
  31. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +2 -2
  32. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +2 -2
  33. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_writable_pipe.hpp +2 -2
  34. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_allocator.hpp +13 -3
  35. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +14 -3
  36. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +13 -3
  37. data/src/cxx_supportlib/vendor-modified/boost/asio/compose.hpp +30 -305
  38. data/src/cxx_supportlib/vendor-modified/boost/asio/consign.hpp +90 -0
  39. data/src/cxx_supportlib/vendor-modified/boost/asio/defer.hpp +17 -18
  40. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bind_handler.hpp +98 -24
  41. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/composed_work.hpp +330 -0
  42. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +81 -15
  43. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +4 -4
  44. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_work.hpp +19 -11
  45. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/descriptor_ops.ipp +37 -0
  46. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/handler_tracking.ipp +3 -1
  47. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.ipp +1 -1
  48. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +10 -2
  49. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.hpp +14 -1
  50. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +18 -0
  51. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/utility.hpp +1 -2
  52. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/work_dispatcher.hpp +7 -3
  53. data/src/cxx_supportlib/vendor-modified/boost/asio/dispatch.hpp +4 -14
  54. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/allocator.hpp +22 -3
  55. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/any_executor.hpp +447 -142
  56. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking.hpp +57 -8
  57. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking_adaptation.hpp +51 -6
  58. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_execute.hpp +5 -0
  59. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_guarantee.hpp +41 -4
  60. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/connect.hpp +5 -0
  61. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context.hpp +13 -2
  62. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context_as.hpp +13 -2
  63. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/detail/as_operation.hpp +4 -0
  64. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/execute.hpp +9 -2
  65. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/executor.hpp +11 -1
  66. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/mapping.hpp +52 -8
  67. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/occupancy.hpp +13 -2
  68. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/operation_state.hpp +5 -0
  69. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/outstanding_work.hpp +39 -6
  70. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/receiver.hpp +5 -0
  71. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/relationship.hpp +39 -6
  72. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/schedule.hpp +5 -0
  73. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/scheduler.hpp +5 -0
  74. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/sender.hpp +5 -0
  75. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_done.hpp +5 -0
  76. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_error.hpp +5 -0
  77. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_value.hpp +5 -0
  78. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/start.hpp +5 -0
  79. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/submit.hpp +5 -0
  80. data/src/cxx_supportlib/vendor-modified/boost/asio/executor_work_guard.hpp +6 -9
  81. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_channel.hpp +3 -3
  82. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_concurrent_channel.hpp +3 -3
  83. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_traits.hpp +70 -0
  84. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_composed.hpp +146 -0
  85. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro.hpp +35 -5
  86. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_handler.hpp +13 -3
  87. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_operation.hpp +7 -0
  88. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_service.hpp +180 -0
  89. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_completion_handler.hpp +171 -0
  90. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_promise_allocator.hpp +89 -66
  91. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/partial_promise.hpp +66 -45
  92. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +13 -3
  93. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/co_composed.hpp +1134 -0
  94. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/coro.hpp +130 -106
  95. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/parallel_group.hpp +377 -3
  96. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/promise.hpp +168 -29
  97. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_coro.hpp +149 -203
  98. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_promise.hpp +68 -0
  99. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +256 -0
  100. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/promise.hpp +76 -80
  101. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +40 -14
  102. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_promise.hpp +113 -0
  103. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_completion_executor.ipp +132 -0
  104. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_io_executor.ipp +12 -0
  105. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/append.hpp +12 -3
  106. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/as_tuple.hpp +12 -3
  107. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_read_stream.hpp +25 -6
  108. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_write_stream.hpp +25 -6
  109. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +34 -45
  110. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +28 -6
  111. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/consign.hpp +204 -0
  112. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/defer.hpp +33 -1
  113. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/deferred.hpp +13 -3
  114. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/dispatch.hpp +21 -9
  115. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/handler_alloc_hook.ipp +1 -1
  116. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/post.hpp +33 -1
  117. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/prepend.hpp +12 -3
  118. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +40 -9
  119. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +27 -6
  120. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +104 -24
  121. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +12 -3
  122. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +70 -15
  123. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/src.hpp +1 -0
  124. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_future.hpp +25 -0
  125. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +38 -30
  126. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +27 -6
  127. data/src/cxx_supportlib/vendor-modified/boost/asio/io_context.hpp +0 -13
  128. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.ipp +3 -1
  129. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.ipp +3 -1
  130. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +2 -2
  131. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +2 -2
  132. data/src/cxx_supportlib/vendor-modified/boost/asio/post.hpp +17 -18
  133. data/src/cxx_supportlib/vendor-modified/boost/asio/spawn.hpp +3 -1
  134. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/io.hpp +13 -3
  135. data/src/cxx_supportlib/vendor-modified/boost/asio/strand.hpp +11 -7
  136. data/src/cxx_supportlib/vendor-modified/boost/asio/system_executor.hpp +0 -13
  137. data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +23 -18
  138. data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +1 -1
  139. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_object_handle.hpp +2 -2
  140. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_overlapped_handle.hpp +1 -1
  141. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_random_access_handle.hpp +2 -2
  142. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_stream_handle.hpp +2 -2
  143. data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +4 -0
  144. data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +1 -1
  145. data/src/cxx_supportlib/vendor-modified/boost/chrono/config.hpp +1 -0
  146. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/chrono.hpp +4 -4
  147. data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/scan_keyword.hpp +4 -2
  148. data/src/cxx_supportlib/vendor-modified/boost/chrono/duration.hpp +2 -2
  149. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_io.hpp +3 -3
  150. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_put.hpp +5 -5
  151. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_units.hpp +2 -2
  152. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/time_point_io.hpp +2 -2
  153. data/src/cxx_supportlib/vendor-modified/boost/chrono/io/utility/ios_base_state_ptr.hpp +7 -7
  154. data/src/cxx_supportlib/vendor-modified/boost/chrono/time_point.hpp +1 -1
  155. data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/details.hpp +5 -1
  156. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +10 -3
  157. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang_version.hpp +9 -3
  158. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +9 -3
  159. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +6 -0
  160. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +8 -0
  161. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +4 -0
  162. data/src/cxx_supportlib/vendor-modified/boost/config/detail/suffix.hpp +33 -0
  163. data/src/cxx_supportlib/vendor-modified/boost/config/header_deprecated.hpp +1 -1
  164. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +9 -0
  165. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +4 -2
  166. data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +1 -1
  167. data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +29 -0
  168. data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +13 -13
  169. data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +80 -95
  170. data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +10 -0
  171. data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_end.hpp +3 -0
  172. data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +738 -34
  173. data/src/cxx_supportlib/vendor-modified/boost/container/detail/destroyers.hpp +38 -10
  174. data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +1 -0
  175. data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterator.hpp +2 -0
  176. data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +3 -4
  177. data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +1150 -1213
  178. data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +1 -1
  179. data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +104 -12
  180. data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +1 -0
  181. data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +11 -1
  182. data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +31 -331
  183. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_mix.hpp +113 -0
  184. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_range.hpp +173 -0
  185. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_tuple.hpp +133 -0
  186. data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +461 -566
  187. data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash_fwd.hpp +24 -24
  188. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_contiguous_range.hpp +91 -0
  189. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_described_class.hpp +38 -0
  190. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_range.hpp +73 -0
  191. data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_unordered_range.hpp +39 -0
  192. data/src/cxx_supportlib/vendor-modified/boost/core/bit.hpp +32 -4
  193. data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +16 -0
  194. data/src/cxx_supportlib/vendor-modified/boost/core/empty_value.hpp +16 -16
  195. data/src/cxx_supportlib/vendor-modified/boost/core/fclose_deleter.hpp +46 -0
  196. data/src/cxx_supportlib/vendor-modified/boost/date_time/date.hpp +1 -1
  197. data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/formatters.hpp +3 -3
  198. data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/formatters_limited.hpp +3 -3
  199. data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_date.hpp +12 -13
  200. data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/parsers.hpp +2 -2
  201. data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian_calendar.ipp +2 -2
  202. data/src/cxx_supportlib/vendor-modified/boost/date_time/iso_format.hpp +13 -13
  203. data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/local_date_time.hpp +2 -2
  204. data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_formatters.hpp +4 -4
  205. data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_formatters_limited.hpp +2 -2
  206. data/src/cxx_supportlib/vendor-modified/boost/date_time/special_values_parser.hpp +1 -1
  207. data/src/cxx_supportlib/vendor-modified/boost/date_time/time_facet.hpp +1 -1
  208. data/src/cxx_supportlib/vendor-modified/boost/date_time/time_parsing.hpp +2 -2
  209. data/src/cxx_supportlib/vendor-modified/boost/describe/bases.hpp +50 -0
  210. data/src/cxx_supportlib/vendor-modified/boost/describe/detail/config.hpp +40 -0
  211. data/src/cxx_supportlib/vendor-modified/boost/describe/detail/cx_streq.hpp +30 -0
  212. data/src/cxx_supportlib/vendor-modified/boost/describe/detail/void_t.hpp +32 -0
  213. data/src/cxx_supportlib/vendor-modified/boost/describe/members.hpp +159 -0
  214. data/src/cxx_supportlib/vendor-modified/boost/describe/modifiers.hpp +33 -0
  215. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +9 -9
  216. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +45 -45
  217. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +8 -8
  218. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/bstree_algorithms_base.hpp +37 -38
  219. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iterator.hpp +16 -0
  220. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +1 -1
  221. data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +145 -90
  222. data/src/cxx_supportlib/vendor-modified/boost/intrusive/pack_options.hpp +2 -0
  223. data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +7 -7
  224. data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +5 -5
  225. data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree_algorithms.hpp +11 -9
  226. data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +7 -7
  227. data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_facade.hpp +106 -25
  228. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +1 -1
  229. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +8 -5
  230. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +1 -1
  231. data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +4 -2
  232. data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/pdqsort.hpp +2 -1
  233. data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +8 -4
  234. data/src/cxx_supportlib/vendor-modified/boost/mp11/bind.hpp +111 -0
  235. data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
  236. data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail/int_float_mixture.hpp +5 -5
  237. data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail/sign_mixture.hpp +5 -5
  238. data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail/udt_builtin_mixture.hpp +5 -5
  239. data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/has_opt.hpp +6 -2
  240. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp +11 -2
  241. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +1 -1
  242. data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +7 -1
  243. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +2 -2
  244. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +10 -1
  245. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.hpp +38 -43
  246. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_condition.hpp +52 -0
  247. data/src/cxx_supportlib/vendor-modified/boost/throw_exception.hpp +1 -1
  248. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_ptr_helper.hpp +27 -27
  249. data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_mem_fun_pointer_impl.hpp +27 -27
  250. data/src/cxx_supportlib/vendor-modified/boost/type_traits/intrinsics.hpp +22 -8
  251. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +37 -7
  252. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa.hpp +1921 -0
  253. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +66 -82
  254. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/prime_fmod.hpp +6 -0
  255. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/type_traits.hpp +109 -0
  256. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/xmx.hpp +75 -0
  257. data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +45 -0
  258. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +732 -0
  259. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map_fwd.hpp +49 -0
  260. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +586 -0
  261. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set_fwd.hpp +49 -0
  262. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +166 -66
  263. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +145 -28
  264. data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
  265. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/md5.hpp +1 -1
  266. data/src/ruby_native_extension/extconf.rb +1 -1
  267. data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +1 -1
  268. data/src/ruby_supportlib/phusion_passenger.rb +5 -5
  269. metadata +36 -19
  270. data/src/cxx_supportlib/vendor-modified/boost/align/align.hpp +0 -19
  271. data/src/cxx_supportlib/vendor-modified/boost/align/alignment_of.hpp +0 -54
  272. data/src/cxx_supportlib/vendor-modified/boost/align/alignment_of_forward.hpp +0 -20
  273. data/src/cxx_supportlib/vendor-modified/boost/align/detail/align_cxx11.hpp +0 -21
  274. data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc.hpp +0 -52
  275. data/src/cxx_supportlib/vendor-modified/boost/align/detail/alignment_of.hpp +0 -31
  276. data/src/cxx_supportlib/vendor-modified/boost/align/detail/alignment_of_cxx11.hpp +0 -23
  277. data/src/cxx_supportlib/vendor-modified/boost/align/detail/element_type.hpp +0 -91
  278. data/src/cxx_supportlib/vendor-modified/boost/align/detail/integral_constant.hpp +0 -53
  279. data/src/cxx_supportlib/vendor-modified/boost/align/detail/min_size.hpp +0 -26
  280. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/completion_handler_erasure.hpp +0 -196
  281. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/compose.hpp +0 -709
  282. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/float_functions.hpp +0 -336
  283. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_float.hpp +0 -271
  284. data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/limits.hpp +0 -62
  285. data/src/cxx_supportlib/vendor-modified/boost/container_hash/extensions.hpp +0 -361
  286. data/src/cxx_supportlib/vendor-modified/boost/detail/container_fwd.hpp +0 -157
@@ -25,6 +25,7 @@
25
25
  #include <boost/asio/prefer.hpp>
26
26
  #include <boost/asio/query.hpp>
27
27
  #include <boost/asio/require.hpp>
28
+ #include <boost/asio/traits/execute_member.hpp>
28
29
  #include <boost/asio/traits/query_free.hpp>
29
30
  #include <boost/asio/traits/query_member.hpp>
30
31
  #include <boost/asio/traits/query_static_constexpr_member.hpp>
@@ -209,6 +210,12 @@ template <int I = 0>
209
210
  struct blocking_t
210
211
  {
211
212
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
213
+ # if defined(BOOST_ASIO_NO_DEPRECATED)
214
+ template <typename T>
215
+ BOOST_ASIO_STATIC_CONSTEXPR(bool,
216
+ is_applicable_property_v = (
217
+ is_executor<T>::value));
218
+ # else // defined(BOOST_ASIO_NO_DEPRECATED)
212
219
  template <typename T>
213
220
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
214
221
  is_applicable_property_v = (
@@ -222,7 +229,9 @@ struct blocking_t
222
229
  is_executor<T>::value,
223
230
  false_type,
224
231
  is_scheduler<T>
225
- >::type::value));
232
+ >::type::value
233
+ ));
234
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
226
235
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
227
236
 
228
237
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = false);
@@ -511,6 +520,12 @@ template <int I = 0>
511
520
  struct possibly_t
512
521
  {
513
522
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
523
+ # if defined(BOOST_ASIO_NO_DEPRECATED)
524
+ template <typename T>
525
+ BOOST_ASIO_STATIC_CONSTEXPR(bool,
526
+ is_applicable_property_v = (
527
+ is_executor<T>::value));
528
+ # else // defined(BOOST_ASIO_NO_DEPRECATED)
514
529
  template <typename T>
515
530
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
516
531
  is_applicable_property_v = (
@@ -524,7 +539,9 @@ struct possibly_t
524
539
  is_executor<T>::value,
525
540
  false_type,
526
541
  is_scheduler<T>
527
- >::type::value));
542
+ >::type::value
543
+ ));
544
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
528
545
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
529
546
 
530
547
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = true);
@@ -743,7 +760,11 @@ public:
743
760
 
744
761
  template <typename Function>
745
762
  typename enable_if<
763
+ #if defined(BOOST_ASIO_NO_DEPRECATED)
764
+ traits::execute_member<const Executor&, Function>::is_valid
765
+ #else // defined(BOOST_ASIO_NO_DEPRECATED)
746
766
  execution::can_execute<const Executor&, Function>::value
767
+ #endif // defined(BOOST_ASIO_NO_DEPRECATED)
747
768
  >::type execute(BOOST_ASIO_MOVE_ARG(Function) f) const
748
769
  {
749
770
  blocking_adaptation::blocking_execute(
@@ -768,6 +789,12 @@ template <int I = 0>
768
789
  struct always_t
769
790
  {
770
791
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
792
+ # if defined(BOOST_ASIO_NO_DEPRECATED)
793
+ template <typename T>
794
+ BOOST_ASIO_STATIC_CONSTEXPR(bool,
795
+ is_applicable_property_v = (
796
+ is_executor<T>::value));
797
+ # else // defined(BOOST_ASIO_NO_DEPRECATED)
771
798
  template <typename T>
772
799
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
773
800
  is_applicable_property_v = (
@@ -781,7 +808,9 @@ struct always_t
781
808
  is_executor<T>::value,
782
809
  false_type,
783
810
  is_scheduler<T>
784
- >::type::value));
811
+ >::type::value
812
+ ));
813
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
785
814
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
786
815
 
787
816
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = true);
@@ -889,6 +918,12 @@ template <int I>
889
918
  struct never_t
890
919
  {
891
920
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
921
+ # if defined(BOOST_ASIO_NO_DEPRECATED)
922
+ template <typename T>
923
+ BOOST_ASIO_STATIC_CONSTEXPR(bool,
924
+ is_applicable_property_v = (
925
+ is_executor<T>::value));
926
+ # else // defined(BOOST_ASIO_NO_DEPRECATED)
892
927
  template <typename T>
893
928
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
894
929
  is_applicable_property_v = (
@@ -902,7 +937,9 @@ struct never_t
902
937
  is_executor<T>::value,
903
938
  false_type,
904
939
  is_scheduler<T>
905
- >::type::value));
940
+ >::type::value
941
+ ));
942
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
906
943
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
907
944
 
908
945
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = true);
@@ -1008,6 +1045,7 @@ template <typename T>
1008
1045
  struct is_applicable_property<T, execution::blocking_t>
1009
1046
  : integral_constant<bool,
1010
1047
  execution::is_executor<T>::value
1048
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
1011
1049
  || conditional<
1012
1050
  execution::is_executor<T>::value,
1013
1051
  false_type,
@@ -1017,7 +1055,9 @@ struct is_applicable_property<T, execution::blocking_t>
1017
1055
  execution::is_executor<T>::value,
1018
1056
  false_type,
1019
1057
  execution::is_scheduler<T>
1020
- >::type::value>
1058
+ >::type::value
1059
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
1060
+ >
1021
1061
  {
1022
1062
  };
1023
1063
 
@@ -1025,6 +1065,7 @@ template <typename T>
1025
1065
  struct is_applicable_property<T, execution::blocking_t::possibly_t>
1026
1066
  : integral_constant<bool,
1027
1067
  execution::is_executor<T>::value
1068
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
1028
1069
  || conditional<
1029
1070
  execution::is_executor<T>::value,
1030
1071
  false_type,
@@ -1034,7 +1075,9 @@ struct is_applicable_property<T, execution::blocking_t::possibly_t>
1034
1075
  execution::is_executor<T>::value,
1035
1076
  false_type,
1036
1077
  execution::is_scheduler<T>
1037
- >::type::value>
1078
+ >::type::value
1079
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
1080
+ >
1038
1081
  {
1039
1082
  };
1040
1083
 
@@ -1042,6 +1085,7 @@ template <typename T>
1042
1085
  struct is_applicable_property<T, execution::blocking_t::always_t>
1043
1086
  : integral_constant<bool,
1044
1087
  execution::is_executor<T>::value
1088
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
1045
1089
  || conditional<
1046
1090
  execution::is_executor<T>::value,
1047
1091
  false_type,
@@ -1051,7 +1095,9 @@ struct is_applicable_property<T, execution::blocking_t::always_t>
1051
1095
  execution::is_executor<T>::value,
1052
1096
  false_type,
1053
1097
  execution::is_scheduler<T>
1054
- >::type::value>
1098
+ >::type::value
1099
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
1100
+ >
1055
1101
  {
1056
1102
  };
1057
1103
 
@@ -1059,6 +1105,7 @@ template <typename T>
1059
1105
  struct is_applicable_property<T, execution::blocking_t::never_t>
1060
1106
  : integral_constant<bool,
1061
1107
  execution::is_executor<T>::value
1108
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
1062
1109
  || conditional<
1063
1110
  execution::is_executor<T>::value,
1064
1111
  false_type,
@@ -1068,7 +1115,9 @@ struct is_applicable_property<T, execution::blocking_t::never_t>
1068
1115
  execution::is_executor<T>::value,
1069
1116
  false_type,
1070
1117
  execution::is_scheduler<T>
1071
- >::type::value>
1118
+ >::type::value
1119
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
1120
+ >
1072
1121
  {
1073
1122
  };
1074
1123
 
@@ -165,6 +165,12 @@ template <int I = 0>
165
165
  struct blocking_adaptation_t
166
166
  {
167
167
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
168
+ # if defined(BOOST_ASIO_NO_DEPRECATED)
169
+ 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)
168
174
  template <typename T>
169
175
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
170
176
  is_applicable_property_v = (
@@ -178,7 +184,9 @@ struct blocking_adaptation_t
178
184
  is_executor<T>::value,
179
185
  false_type,
180
186
  is_scheduler<T>
181
- >::type::value));
187
+ >::type::value
188
+ ));
189
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
182
190
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
183
191
 
184
192
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = false);
@@ -417,6 +425,12 @@ template <int I = 0>
417
425
  struct disallowed_t
418
426
  {
419
427
  #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)
420
434
  template <typename T>
421
435
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
422
436
  is_applicable_property_v = (
@@ -430,7 +444,9 @@ struct disallowed_t
430
444
  is_executor<T>::value,
431
445
  false_type,
432
446
  is_scheduler<T>
433
- >::type::value));
447
+ >::type::value
448
+ ));
449
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
434
450
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
435
451
 
436
452
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = true);
@@ -605,10 +621,18 @@ public:
605
621
 
606
622
  template <typename Function>
607
623
  typename enable_if<
624
+ #if defined(BOOST_ASIO_NO_DEPRECATED)
625
+ traits::execute_member<const Executor&, Function>::is_valid
626
+ #else // defined(BOOST_ASIO_NO_DEPRECATED)
608
627
  execution::can_execute<const Executor&, Function>::value
628
+ #endif // defined(BOOST_ASIO_NO_DEPRECATED)
609
629
  >::type execute(BOOST_ASIO_MOVE_ARG(Function) f) const
610
630
  {
631
+ #if defined(BOOST_ASIO_NO_DEPRECATED)
632
+ executor_.execute(BOOST_ASIO_MOVE_CAST(Function)(f));
633
+ #else // defined(BOOST_ASIO_NO_DEPRECATED)
611
634
  execution::execute(executor_, BOOST_ASIO_MOVE_CAST(Function)(f));
635
+ #endif // defined(BOOST_ASIO_NO_DEPRECATED)
612
636
  }
613
637
 
614
638
  friend bool operator==(const adapter& a, const adapter& b) BOOST_ASIO_NOEXCEPT
@@ -629,6 +653,12 @@ template <int I = 0>
629
653
  struct allowed_t
630
654
  {
631
655
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
656
+ # if defined(BOOST_ASIO_NO_DEPRECATED)
657
+ 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)
632
662
  template <typename T>
633
663
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
634
664
  is_applicable_property_v = (
@@ -642,7 +672,9 @@ struct allowed_t
642
672
  is_executor<T>::value,
643
673
  false_type,
644
674
  is_scheduler<T>
645
- >::type::value));
675
+ >::type::value
676
+ ));
677
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
646
678
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
647
679
 
648
680
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = true);
@@ -733,7 +765,11 @@ public:
733
765
  void execute_and_wait(BOOST_ASIO_MOVE_ARG(Executor) ex)
734
766
  {
735
767
  handler h = { this };
768
+ #if defined(BOOST_ASIO_NO_DEPRECATED)
769
+ ex.execute(h);
770
+ #else // defined(BOOST_ASIO_NO_DEPRECATED)
736
771
  execution::execute(BOOST_ASIO_MOVE_CAST(Executor)(ex), h);
772
+ #endif // defined(BOOST_ASIO_NO_DEPRECATED)
737
773
  boost::asio::detail::mutex::scoped_lock lock(mutex_);
738
774
  while (!is_complete_)
739
775
  event_.wait(lock);
@@ -798,6 +834,7 @@ template <typename T>
798
834
  struct is_applicable_property<T, execution::blocking_adaptation_t>
799
835
  : integral_constant<bool,
800
836
  execution::is_executor<T>::value
837
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
801
838
  || conditional<
802
839
  execution::is_executor<T>::value,
803
840
  false_type,
@@ -807,7 +844,9 @@ struct is_applicable_property<T, execution::blocking_adaptation_t>
807
844
  execution::is_executor<T>::value,
808
845
  false_type,
809
846
  execution::is_scheduler<T>
810
- >::type::value>
847
+ >::type::value
848
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
849
+ >
811
850
  {
812
851
  };
813
852
 
@@ -815,6 +854,7 @@ template <typename T>
815
854
  struct is_applicable_property<T, execution::blocking_adaptation_t::disallowed_t>
816
855
  : integral_constant<bool,
817
856
  execution::is_executor<T>::value
857
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
818
858
  || conditional<
819
859
  execution::is_executor<T>::value,
820
860
  false_type,
@@ -824,7 +864,9 @@ struct is_applicable_property<T, execution::blocking_adaptation_t::disallowed_t>
824
864
  execution::is_executor<T>::value,
825
865
  false_type,
826
866
  execution::is_scheduler<T>
827
- >::type::value>
867
+ >::type::value
868
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
869
+ >
828
870
  {
829
871
  };
830
872
 
@@ -832,6 +874,7 @@ template <typename T>
832
874
  struct is_applicable_property<T, execution::blocking_adaptation_t::allowed_t>
833
875
  : integral_constant<bool,
834
876
  execution::is_executor<T>::value
877
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
835
878
  || conditional<
836
879
  execution::is_executor<T>::value,
837
880
  false_type,
@@ -841,7 +884,9 @@ struct is_applicable_property<T, execution::blocking_adaptation_t::allowed_t>
841
884
  execution::is_executor<T>::value,
842
885
  false_type,
843
886
  execution::is_scheduler<T>
844
- >::type::value>
887
+ >::type::value
888
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
889
+ >
845
890
  {
846
891
  };
847
892
 
@@ -16,6 +16,9 @@
16
16
  #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17
17
 
18
18
  #include <boost/asio/detail/config.hpp>
19
+
20
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
21
+
19
22
  #include <boost/asio/detail/type_traits.hpp>
20
23
  #include <boost/asio/execution/bulk_guarantee.hpp>
21
24
  #include <boost/asio/execution/detail/bulk_sender.hpp>
@@ -398,4 +401,6 @@ struct bulk_execute_result
398
401
 
399
402
  #include <boost/asio/detail/pop_options.hpp>
400
403
 
404
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
405
+
401
406
  #endif // BOOST_ASIO_EXECUTION_BULK_EXECUTE_HPP
@@ -16,6 +16,9 @@
16
16
  #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17
17
 
18
18
  #include <boost/asio/detail/config.hpp>
19
+
20
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
21
+
19
22
  #include <boost/asio/detail/type_traits.hpp>
20
23
  #include <boost/asio/execution/executor.hpp>
21
24
  #include <boost/asio/execution/scheduler.hpp>
@@ -197,6 +200,12 @@ template <int I = 0>
197
200
  struct bulk_guarantee_t
198
201
  {
199
202
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
203
+ # if defined(BOOST_ASIO_NO_DEPRECATED)
204
+ template <typename T>
205
+ BOOST_ASIO_STATIC_CONSTEXPR(bool,
206
+ is_applicable_property_v = (
207
+ is_executor<T>::value));
208
+ # else // defined(BOOST_ASIO_NO_DEPRECATED)
200
209
  template <typename T>
201
210
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
202
211
  is_applicable_property_v = (
@@ -210,7 +219,9 @@ struct bulk_guarantee_t
210
219
  is_executor<T>::value,
211
220
  false_type,
212
221
  is_scheduler<T>
213
- >::type::value));
222
+ >::type::value
223
+ ));
224
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
214
225
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
215
226
 
216
227
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = false);
@@ -505,6 +516,12 @@ template <int I = 0>
505
516
  struct unsequenced_t
506
517
  {
507
518
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
519
+ # if defined(BOOST_ASIO_NO_DEPRECATED)
520
+ template <typename T>
521
+ BOOST_ASIO_STATIC_CONSTEXPR(bool,
522
+ is_applicable_property_v = (
523
+ is_executor<T>::value));
524
+ # else // defined(BOOST_ASIO_NO_DEPRECATED)
508
525
  template <typename T>
509
526
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
510
527
  is_applicable_property_v = (
@@ -518,7 +535,9 @@ struct unsequenced_t
518
535
  is_executor<T>::value,
519
536
  false_type,
520
537
  is_scheduler<T>
521
- >::type::value));
538
+ >::type::value
539
+ ));
540
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
522
541
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
523
542
 
524
543
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = true);
@@ -633,6 +652,12 @@ template <int I = 0>
633
652
  struct sequenced_t
634
653
  {
635
654
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
655
+ # if defined(BOOST_ASIO_NO_DEPRECATED)
656
+ template <typename T>
657
+ BOOST_ASIO_STATIC_CONSTEXPR(bool,
658
+ is_applicable_property_v = (
659
+ is_executor<T>::value));
660
+ # else // defined(BOOST_ASIO_NO_DEPRECATED)
636
661
  template <typename T>
637
662
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
638
663
  is_applicable_property_v = (
@@ -646,7 +671,9 @@ struct sequenced_t
646
671
  is_executor<T>::value,
647
672
  false_type,
648
673
  is_scheduler<T>
649
- >::type::value));
674
+ >::type::value
675
+ ));
676
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
650
677
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
651
678
 
652
679
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = true);
@@ -740,6 +767,12 @@ template <int I>
740
767
  struct parallel_t
741
768
  {
742
769
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
770
+ # if defined(BOOST_ASIO_NO_DEPRECATED)
771
+ template <typename T>
772
+ BOOST_ASIO_STATIC_CONSTEXPR(bool,
773
+ is_applicable_property_v = (
774
+ is_executor<T>::value));
775
+ # else // defined(BOOST_ASIO_NO_DEPRECATED)
743
776
  template <typename T>
744
777
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
745
778
  is_applicable_property_v = (
@@ -753,7 +786,9 @@ struct parallel_t
753
786
  is_executor<T>::value,
754
787
  false_type,
755
788
  is_scheduler<T>
756
- >::type::value));
789
+ >::type::value
790
+ ));
791
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
757
792
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
758
793
 
759
794
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = true);
@@ -1214,4 +1249,6 @@ struct static_require<T, execution::bulk_guarantee_t::parallel_t,
1214
1249
 
1215
1250
  #include <boost/asio/detail/pop_options.hpp>
1216
1251
 
1252
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
1253
+
1217
1254
  #endif // BOOST_ASIO_EXECUTION_BULK_GUARANTEE_HPP
@@ -16,6 +16,9 @@
16
16
  #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17
17
 
18
18
  #include <boost/asio/detail/config.hpp>
19
+
20
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
21
+
19
22
  #include <boost/asio/detail/type_traits.hpp>
20
23
  #include <boost/asio/execution/detail/as_invocable.hpp>
21
24
  #include <boost/asio/execution/detail/as_operation.hpp>
@@ -490,4 +493,6 @@ using connect_result_t = typename connect_result<S, R>::type;
490
493
 
491
494
  #include <boost/asio/detail/pop_options.hpp>
492
495
 
496
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
497
+
493
498
  #endif // BOOST_ASIO_EXECUTION_CONNECT_HPP
@@ -70,6 +70,12 @@ template <int I = 0>
70
70
  struct context_t
71
71
  {
72
72
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
73
+ # if defined(BOOST_ASIO_NO_DEPRECATED)
74
+ template <typename T>
75
+ BOOST_ASIO_STATIC_CONSTEXPR(bool,
76
+ is_applicable_property_v = (
77
+ is_executor<T>::value));
78
+ # else // defined(BOOST_ASIO_NO_DEPRECATED)
73
79
  template <typename T>
74
80
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
75
81
  is_applicable_property_v = (
@@ -83,7 +89,9 @@ struct context_t
83
89
  is_executor<T>::value,
84
90
  false_type,
85
91
  is_scheduler<T>
86
- >::type::value));
92
+ >::type::value
93
+ ));
94
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
87
95
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
88
96
 
89
97
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = false);
@@ -180,6 +188,7 @@ template <typename T>
180
188
  struct is_applicable_property<T, execution::context_t>
181
189
  : integral_constant<bool,
182
190
  execution::is_executor<T>::value
191
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
183
192
  || conditional<
184
193
  execution::is_executor<T>::value,
185
194
  false_type,
@@ -189,7 +198,9 @@ struct is_applicable_property<T, execution::context_t>
189
198
  execution::is_executor<T>::value,
190
199
  false_type,
191
200
  execution::is_scheduler<T>
192
- >::type::value>
201
+ >::type::value
202
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
203
+ >
193
204
  {
194
205
  };
195
206
 
@@ -69,6 +69,12 @@ template <typename T>
69
69
  struct context_as_t
70
70
  {
71
71
  #if defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
72
+ # if defined(BOOST_ASIO_NO_DEPRECATED)
73
+ template <typename U>
74
+ BOOST_ASIO_STATIC_CONSTEXPR(bool,
75
+ is_applicable_property_v = (
76
+ is_executor<U>::value));
77
+ # else // defined(BOOST_ASIO_NO_DEPRECATED)
72
78
  template <typename U>
73
79
  BOOST_ASIO_STATIC_CONSTEXPR(bool,
74
80
  is_applicable_property_v = (
@@ -82,7 +88,9 @@ struct context_as_t
82
88
  is_executor<U>::value,
83
89
  false_type,
84
90
  is_scheduler<U>
85
- >::type::value));
91
+ >::type::value
92
+ ));
93
+ # endif // defined(BOOST_ASIO_NO_DEPRECATED)
86
94
  #endif // defined(BOOST_ASIO_HAS_VARIABLE_TEMPLATES)
87
95
 
88
96
  BOOST_ASIO_STATIC_CONSTEXPR(bool, is_requirable = false);
@@ -163,6 +171,7 @@ template <typename T, typename U>
163
171
  struct is_applicable_property<T, execution::context_as_t<U> >
164
172
  : integral_constant<bool,
165
173
  execution::is_executor<T>::value
174
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
166
175
  || conditional<
167
176
  execution::is_executor<T>::value,
168
177
  false_type,
@@ -172,7 +181,9 @@ struct is_applicable_property<T, execution::context_as_t<U> >
172
181
  execution::is_executor<T>::value,
173
182
  false_type,
174
183
  execution::is_scheduler<T>
175
- >::type::value>
184
+ >::type::value
185
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
186
+ >
176
187
  {
177
188
  };
178
189
 
@@ -55,8 +55,12 @@ struct as_operation
55
55
  try
56
56
  {
57
57
  #endif // !defined(BOOST_ASIO_NO_EXCEPTIONS)
58
+ #if defined(BOOST_ASIO_NO_DEPRECATED)
59
+ ex_.execute(
60
+ #else // defined(BOOST_ASIO_NO_DEPRECATED)
58
61
  execution::execute(
59
62
  BOOST_ASIO_MOVE_CAST(typename remove_cvref<Executor>::type)(ex_),
63
+ #endif // defined(BOOST_ASIO_NO_DEPRECATED)
60
64
  as_invocable<typename remove_cvref<Receiver>::type,
61
65
  Executor>(receiver_
62
66
  #if !defined(BOOST_ASIO_HAS_MOVE)
@@ -16,6 +16,9 @@
16
16
  #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17
17
 
18
18
  #include <boost/asio/detail/config.hpp>
19
+
20
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
21
+
19
22
  #include <boost/asio/detail/type_traits.hpp>
20
23
  #include <boost/asio/execution/detail/as_invocable.hpp>
21
24
  #include <boost/asio/execution/detail/as_receiver.hpp>
@@ -30,7 +33,8 @@ namespace boost {
30
33
  namespace asio {
31
34
  namespace execution {
32
35
 
33
- /// A customisation point that executes a function on an executor.
36
+ /// (Deprecated: Use @c execute member function.) A customisation point that
37
+ /// executes a function on an executor.
34
38
  /**
35
39
  * The name <tt>execution::execute</tt> denotes a customisation point object.
36
40
  *
@@ -54,7 +58,8 @@ namespace execution {
54
58
  */
55
59
  inline constexpr unspecified execute = unspecified;
56
60
 
57
- /// A type trait that determines whether a @c execute expression is well-formed.
61
+ /// (Deprecated.) A type trait that determines whether an @c execute expression
62
+ /// is well-formed.
58
63
  /**
59
64
  * Class template @c can_execute is a trait that is derived from
60
65
  * @c true_type if the expression <tt>execution::execute(std::declval<T>(),
@@ -286,4 +291,6 @@ constexpr bool can_execute_v = can_execute<T, F>::value;
286
291
 
287
292
  #include <boost/asio/detail/pop_options.hpp>
288
293
 
294
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
295
+
289
296
  #endif // BOOST_ASIO_EXECUTION_EXECUTE_HPP
@@ -17,9 +17,13 @@
17
17
 
18
18
  #include <boost/asio/detail/config.hpp>
19
19
  #include <boost/asio/detail/type_traits.hpp>
20
- #include <boost/asio/execution/execute.hpp>
21
20
  #include <boost/asio/execution/invocable_archetype.hpp>
22
21
  #include <boost/asio/traits/equality_comparable.hpp>
22
+ #include <boost/asio/traits/execute_member.hpp>
23
+
24
+ #if !defined(BOOST_ASIO_NO_DEPRECATED)
25
+ # include <boost/asio/execution/execute.hpp>
26
+ #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
23
27
 
24
28
  #if defined(BOOST_ASIO_HAS_DEDUCED_EXECUTE_FREE_TRAIT) \
25
29
  && defined(BOOST_ASIO_HAS_DEDUCED_EXECUTE_MEMBER_TRAIT) \
@@ -45,9 +49,15 @@ struct is_executor_of_impl : false_type
45
49
 
46
50
  template <typename T, typename F>
47
51
  struct is_executor_of_impl<T, F,
52
+ #if defined(BOOST_ASIO_NO_DEPRECATED)
53
+ typename enable_if<
54
+ traits::execute_member<typename add_const<T>::type, F>::is_valid
55
+ >::type,
56
+ #else // defined(BOOST_ASIO_NO_DEPRECATED)
48
57
  typename enable_if<
49
58
  can_execute<typename add_const<T>::type, F>::value
50
59
  >::type,
60
+ #endif // defined(BOOST_ASIO_NO_DEPRECATED)
51
61
  typename void_type<
52
62
  typename result_of<typename decay<F>::type&()>::type
53
63
  >::type,