passenger 6.0.11 → 6.0.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (280) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +24 -1
  3. data/CONTRIBUTORS +3 -0
  4. data/src/agent/Core/Config.h +1 -1
  5. data/src/agent/Core/Controller/CheckoutSession.cpp +24 -13
  6. data/src/agent/Core/Controller/Config.h +1 -1
  7. data/src/agent/Core/Controller/InternalUtils.cpp +32 -6
  8. data/src/agent/Core/Controller.h +4 -1
  9. data/src/agent/Watchdog/Config.h +1 -1
  10. data/src/cxx_supportlib/Constants.h +1 -1
  11. data/src/cxx_supportlib/IOTools/IOUtils.cpp +4 -4
  12. data/src/cxx_supportlib/vendor-modified/boost/align/aligned_alloc.hpp +47 -0
  13. data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc_posix.hpp +41 -0
  14. data/src/cxx_supportlib/vendor-modified/boost/align/detail/is_alignment.hpp +28 -0
  15. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_allocator.hpp +53 -1
  16. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_cancellation_slot.hpp +179 -0
  17. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_executor.hpp +57 -1
  18. data/src/cxx_supportlib/vendor-modified/boost/asio/associator.hpp +37 -0
  19. data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +789 -106
  20. data/src/cxx_supportlib/vendor-modified/boost/asio/awaitable.hpp +1 -1
  21. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +80 -0
  22. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +10 -0
  23. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +80 -0
  24. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +30 -0
  25. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +20 -0
  26. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +90 -0
  27. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +60 -0
  28. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +10 -0
  29. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +723 -0
  30. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +191 -12
  31. data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_signal.hpp +361 -0
  32. data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_state.hpp +237 -0
  33. data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_type.hpp +176 -0
  34. data/src/cxx_supportlib/vendor-modified/boost/asio/co_spawn.hpp +30 -2
  35. data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +60 -0
  36. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_cancellation_state.hpp +165 -0
  37. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bind_handler.hpp +209 -76
  38. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +149 -60
  39. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/deadline_timer_service.hpp +40 -0
  40. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dev_poll_reactor.hpp +8 -4
  41. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/epoll_reactor.hpp +14 -4
  42. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/functional.hpp +6 -0
  43. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +14 -10
  44. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_type_requirements.hpp +21 -18
  45. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_work.hpp +30 -19
  46. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.hpp +8 -0
  47. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +14 -0
  48. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.hpp +20 -0
  49. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.ipp +30 -0
  50. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.hpp +20 -0
  51. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.ipp +29 -0
  52. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.hpp +24 -0
  53. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.ipp +19 -0
  54. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.hpp +3 -1
  55. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_ptime.ipp +6 -0
  56. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/kqueue_reactor.hpp +15 -5
  57. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +60 -0
  58. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pop_options.hpp +8 -0
  59. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/push_options.hpp +27 -0
  60. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_descriptor_service.hpp +93 -0
  61. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +77 -0
  62. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +111 -0
  63. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op.hpp +4 -0
  64. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op_queue.hpp +44 -0
  65. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/recycling_allocator.hpp +2 -1
  66. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_endpoint_op.hpp +2 -2
  67. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_reactor.hpp +14 -4
  68. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_info_base.hpp +90 -24
  69. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue.hpp +30 -1
  70. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_ptime.hpp +4 -0
  71. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_op.hpp +5 -1
  72. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/work_dispatcher.hpp +5 -2
  73. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/any_executor.hpp +12 -12
  74. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_execute.hpp +10 -8
  75. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/connect.hpp +8 -8
  76. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/execute.hpp +7 -7
  77. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/schedule.hpp +7 -7
  78. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_done.hpp +7 -7
  79. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_error.hpp +7 -7
  80. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_value.hpp +13 -13
  81. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/start.hpp +7 -7
  82. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/submit.hpp +8 -8
  83. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/append.hpp +73 -0
  84. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_tuple.hpp +133 -0
  85. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/awaitable_operators.hpp +538 -0
  86. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/cancellation_condition.hpp +157 -0
  87. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro.hpp +1057 -0
  88. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/deferred.hpp +607 -0
  89. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/completion_handler_erasure.hpp +160 -0
  90. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_promise_allocator.hpp +120 -0
  91. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_traits.hpp +185 -0
  92. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/partial_promise.hpp +181 -0
  93. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/append.hpp +219 -0
  94. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +14 -28
  95. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_tuple.hpp +248 -0
  96. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/deferred.hpp +106 -0
  97. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/parallel_group.hpp +434 -0
  98. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/prepend.hpp +219 -0
  99. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/promise.hpp +100 -0
  100. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +217 -0
  101. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/prepend.hpp +73 -0
  102. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/promise.hpp +608 -0
  103. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +284 -0
  104. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/awaitable.hpp +344 -20
  105. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_read_stream.hpp +23 -54
  106. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_write_stream.hpp +23 -54
  107. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +66 -18
  108. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/compose.hpp +55 -5
  109. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +68 -80
  110. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/defer.hpp +8 -4
  111. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/dispatch.hpp +8 -4
  112. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/handler_alloc_hook.ipp +3 -2
  113. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/post.hpp +8 -4
  114. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +98 -113
  115. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +71 -82
  116. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +210 -266
  117. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +248 -30
  118. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +11 -21
  119. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_awaitable.hpp +15 -3
  120. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +71 -87
  121. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +46 -68
  122. data/src/cxx_supportlib/vendor-modified/boost/asio/io_context.hpp +4 -4
  123. data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/impl/endpoint.ipp +2 -7
  124. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +10 -0
  125. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +23 -3
  126. data/src/cxx_supportlib/vendor-modified/boost/asio/prefer.hpp +21 -21
  127. data/src/cxx_supportlib/vendor-modified/boost/asio/query.hpp +9 -9
  128. data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +88 -0
  129. data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +44 -0
  130. data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +132 -0
  131. data/src/cxx_supportlib/vendor-modified/boost/asio/require.hpp +21 -21
  132. data/src/cxx_supportlib/vendor-modified/boost/asio/require_concept.hpp +9 -9
  133. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/buffered_handshake_op.hpp +1 -1
  134. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/engine.hpp +5 -0
  135. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/handshake_op.hpp +1 -1
  136. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/engine.ipp +14 -0
  137. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/io.hpp +36 -27
  138. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/read_op.hpp +1 -1
  139. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/shutdown_op.hpp +2 -2
  140. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/stream_core.hpp +37 -0
  141. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/write_op.hpp +1 -1
  142. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +14 -7
  143. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +73 -1
  144. data/src/cxx_supportlib/vendor-modified/boost/asio/system_executor.hpp +4 -4
  145. data/src/cxx_supportlib/vendor-modified/boost/asio/this_coro.hpp +235 -0
  146. data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +4 -4
  147. data/src/cxx_supportlib/vendor-modified/boost/asio/use_awaitable.hpp +7 -10
  148. data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +1 -1
  149. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_random_access_handle.hpp +20 -0
  150. data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_stream_handle.hpp +20 -0
  151. data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +88 -0
  152. data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +44 -0
  153. data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +6 -0
  154. data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_ref.hpp +14 -1
  155. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/config.hpp +17 -13
  156. data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_ref.hpp +14 -1
  157. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx03.hpp +2 -5
  158. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx11.hpp +2 -5
  159. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx14.hpp +2 -2
  160. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx17.hpp +2 -2
  161. data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx20.hpp +56 -0
  162. data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +1 -5
  163. data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +31 -11
  164. data/src/cxx_supportlib/vendor-modified/boost/config/detail/cxx_composite.hpp +20 -4
  165. data/src/cxx_supportlib/vendor-modified/boost/config/detail/select_platform_config.hpp +5 -0
  166. data/src/cxx_supportlib/vendor-modified/boost/config/detail/suffix.hpp +81 -0
  167. data/src/cxx_supportlib/vendor-modified/boost/config/platform/bsd.hpp +5 -8
  168. data/src/cxx_supportlib/vendor-modified/boost/config/platform/wasm.hpp +17 -0
  169. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/dinkumware.hpp +26 -0
  170. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +49 -0
  171. data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +46 -4
  172. data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +2 -2
  173. data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +1 -1
  174. data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +2 -2
  175. data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool.hpp +2 -2
  176. data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +3 -0
  177. data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +2 -2
  178. data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +1 -1
  179. data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +1 -1
  180. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp +6 -6
  181. data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +4 -4
  182. data/src/cxx_supportlib/vendor-modified/boost/container/throw_exception.hpp +45 -38
  183. data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +24 -0
  184. data/src/cxx_supportlib/vendor-modified/boost/core/ignore_unused.hpp +32 -2
  185. data/src/cxx_supportlib/vendor-modified/boost/core/uncaught_exceptions.hpp +7 -7
  186. data/src/cxx_supportlib/vendor-modified/boost/date_time/compiler_config.hpp +0 -24
  187. data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_parsers.hpp +4 -0
  188. data/src/cxx_supportlib/vendor-modified/boost/intrusive/any_hook.hpp +4 -4
  189. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avl_set.hpp +83 -83
  190. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +43 -43
  191. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +31 -31
  192. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bs_set.hpp +85 -85
  193. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +68 -68
  194. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +72 -62
  195. data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +19 -20
  196. data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_slist_algorithms.hpp +19 -19
  197. data/src/cxx_supportlib/vendor-modified/boost/intrusive/derivation_value_traits.hpp +4 -4
  198. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +2 -2
  199. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/bstree_algorithms_base.hpp +3 -3
  200. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/common_slist_algorithms.hpp +5 -5
  201. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/config_begin.hpp +1 -0
  202. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +8 -8
  203. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_combine.hpp +2 -4
  204. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hashtable_node.hpp +1 -1
  205. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/math.hpp +2 -50
  206. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_cloner_disposer.hpp +1 -1
  207. data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +71 -70
  208. data/src/cxx_supportlib/vendor-modified/boost/intrusive/linear_slist_algorithms.hpp +15 -14
  209. data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +84 -82
  210. data/src/cxx_supportlib/vendor-modified/boost/intrusive/list_hook.hpp +10 -10
  211. data/src/cxx_supportlib/vendor-modified/boost/intrusive/member_value_traits.hpp +4 -4
  212. data/src/cxx_supportlib/vendor-modified/boost/intrusive/parent_from_member.hpp +2 -2
  213. data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_plus_bits.hpp +4 -4
  214. data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_traits.hpp +18 -18
  215. data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree.hpp +43 -43
  216. data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +26 -26
  217. data/src/cxx_supportlib/vendor-modified/boost/intrusive/set.hpp +85 -85
  218. data/src/cxx_supportlib/vendor-modified/boost/intrusive/set_hook.hpp +12 -12
  219. data/src/cxx_supportlib/vendor-modified/boost/intrusive/sg_set.hpp +93 -93
  220. data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree.hpp +51 -51
  221. data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +24 -24
  222. data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +104 -104
  223. data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist_hook.hpp +8 -6
  224. data/src/cxx_supportlib/vendor-modified/boost/intrusive/splay_set.hpp +91 -91
  225. data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree.hpp +46 -46
  226. data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree_algorithms.hpp +31 -31
  227. data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap.hpp +51 -51
  228. data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +18 -18
  229. data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_set.hpp +97 -97
  230. data/src/cxx_supportlib/vendor-modified/boost/intrusive/trivial_value_traits.hpp +6 -4
  231. data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +63 -63
  232. data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set_hook.hpp +15 -15
  233. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +4 -1
  234. data/src/cxx_supportlib/vendor-modified/boost/move/detail/config_begin.hpp +1 -0
  235. data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_traits.hpp +1 -0
  236. data/src/cxx_supportlib/vendor-modified/boost/move/detail/nsec_clock.hpp +1 -1
  237. data/src/cxx_supportlib/vendor-modified/boost/operators.hpp +2 -0
  238. data/src/cxx_supportlib/vendor-modified/boost/regex/concepts.hpp +1 -1
  239. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_parser.hpp +3 -0
  240. data/src/cxx_supportlib/vendor-modified/boost/regex/v4/unicode_iterator.hpp +112 -31
  241. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex_parser.hpp +3 -0
  242. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/mem_block_cache.hpp +4 -8
  243. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/unicode_iterator.hpp +0 -2
  244. data/src/cxx_supportlib/vendor-modified/boost/regex/v5/w32_regex_traits.hpp +6 -2
  245. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/shared_count.hpp +1 -1
  246. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +22 -2
  247. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +59 -1
  248. data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +9 -11
  249. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +27 -21
  250. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +34 -3
  251. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.hpp +378 -36
  252. data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_condition.hpp +97 -21
  253. data/src/cxx_supportlib/vendor-modified/boost/system/detail/interop_category.hpp +107 -0
  254. data/src/cxx_supportlib/vendor-modified/boost/system/detail/is_same.hpp +33 -0
  255. data/src/cxx_supportlib/vendor-modified/boost/system/detail/snprintf.hpp +70 -0
  256. data/src/cxx_supportlib/vendor-modified/boost/system/detail/{to_std_category.hpp → std_category.hpp} +5 -55
  257. data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_impl.hpp +2 -12
  258. data/src/cxx_supportlib/vendor-modified/boost/system/error_code.hpp +0 -33
  259. data/src/cxx_supportlib/vendor-modified/boost/utility/detail/result_of_variadic.hpp +190 -0
  260. data/src/cxx_supportlib/vendor-modified/boost/utility/result_of.hpp +20 -9
  261. data/src/cxx_supportlib/vendor-modified/boost/utility/string_view.hpp +3 -1
  262. data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
  263. data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +8 -0
  264. data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +6 -0
  265. data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +12 -0
  266. data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +5 -0
  267. data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c +21 -0
  268. data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +13 -0
  269. data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +3 -0
  270. data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +4 -0
  271. data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +3 -2
  272. data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +8 -1
  273. data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +6 -0
  274. data/src/ruby_supportlib/phusion_passenger/packaging.rb +1 -0
  275. data/src/ruby_supportlib/phusion_passenger/platform_info/openssl.rb +1 -1
  276. data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +8 -0
  277. data/src/ruby_supportlib/phusion_passenger/request_handler.rb +4 -1
  278. data/src/ruby_supportlib/phusion_passenger.rb +1 -1
  279. metadata +39 -4
  280. data/src/cxx_supportlib/vendor-modified/boost/system/detail/is_generic_value.hpp +0 -125
@@ -732,10 +732,10 @@ struct bucket_plus_vtraits
732
732
  { return this->data.bucket_traits_; }
733
733
 
734
734
  //bucket operations
735
- BOOST_INTRUSIVE_FORCEINLINE bucket_ptr priv_bucket_pointer() const
735
+ BOOST_INTRUSIVE_FORCEINLINE bucket_ptr priv_bucket_pointer() const BOOST_NOEXCEPT
736
736
  { return this->priv_bucket_traits().bucket_begin(); }
737
737
 
738
- std::size_t priv_bucket_count() const
738
+ std::size_t priv_bucket_count() const BOOST_NOEXCEPT
739
739
  { return this->priv_bucket_traits().bucket_count(); }
740
740
 
741
741
  BOOST_INTRUSIVE_FORCEINLINE bucket_ptr priv_invalid_bucket() const
@@ -932,7 +932,8 @@ struct bucket_plus_vtraits
932
932
 
933
933
  //The end node is embedded in the singly linked list:
934
934
  //iterate until we reach it.
935
- while(!(first_ptr <= it.pointed_node() && it.pointed_node() <= last_ptr)){
935
+ while(!(std::less_equal<slist_node_ptr>()(first_ptr, it.pointed_node()) &&
936
+ std::less_equal<slist_node_ptr>()(it.pointed_node(), last_ptr))){
936
937
  ++it;
937
938
  }
938
939
  //Now get the bucket_impl from the iterator
@@ -965,7 +966,7 @@ struct bucket_plus_vtraits
965
966
  {
966
967
  bucket_ptr buckets_it = buckets_ptr;
967
968
  for(std::size_t bucket_i = 0; bucket_i != bucket_cnt; ++buckets_it, ++bucket_i){
968
- if(safemode_or_autounlink){
969
+ BOOST_IF_CONSTEXPR(safemode_or_autounlink){
969
970
  buckets_it->clear_and_dispose(detail::init_disposer<node_algorithms>());
970
971
  }
971
972
  else{
@@ -980,13 +981,13 @@ struct bucket_plus_vtraits
980
981
  typedef hashtable_iterator<bucket_plus_vtraits, false> iterator;
981
982
  typedef hashtable_iterator<bucket_plus_vtraits, true> const_iterator;
982
983
 
983
- BOOST_INTRUSIVE_FORCEINLINE iterator end()
984
+ BOOST_INTRUSIVE_FORCEINLINE iterator end() BOOST_NOEXCEPT
984
985
  { return iterator(this->priv_invalid_local_it(), 0); }
985
986
 
986
- BOOST_INTRUSIVE_FORCEINLINE const_iterator end() const
987
+ BOOST_INTRUSIVE_FORCEINLINE const_iterator end() const BOOST_NOEXCEPT
987
988
  { return this->cend(); }
988
989
 
989
- BOOST_INTRUSIVE_FORCEINLINE const_iterator cend() const
990
+ BOOST_INTRUSIVE_FORCEINLINE const_iterator cend() const BOOST_NOEXCEPT
990
991
  { return const_iterator(this->priv_invalid_local_it(), 0); }
991
992
 
992
993
  //Public functions:
@@ -1466,18 +1467,18 @@ struct hashdata_internal
1466
1467
  { return bucket_plus_vtraits<ValueTraits, BucketTraits>::priv_stored_hash(n, false_value); }
1467
1468
 
1468
1469
  //public functions
1469
- BOOST_INTRUSIVE_FORCEINLINE SizeType split_count() const
1470
+ BOOST_INTRUSIVE_FORCEINLINE SizeType split_count() const BOOST_NOEXCEPT
1470
1471
  {
1471
1472
  return this->priv_split_traits().get_size();
1472
1473
  }
1473
1474
 
1474
- BOOST_INTRUSIVE_FORCEINLINE iterator iterator_to(reference value)
1475
+ BOOST_INTRUSIVE_FORCEINLINE iterator iterator_to(reference value) BOOST_NOEXCEPT
1475
1476
  {
1476
1477
  return iterator(bucket_type::s_iterator_to
1477
1478
  (this->priv_value_to_node(value)), &this->get_bucket_value_traits());
1478
1479
  }
1479
1480
 
1480
- const_iterator iterator_to(const_reference value) const
1481
+ const_iterator iterator_to(const_reference value) const BOOST_NOEXCEPT
1481
1482
  {
1482
1483
  siterator const sit = bucket_type::s_iterator_to
1483
1484
  ( *pointer_traits<node_ptr>::const_cast_from
@@ -1486,14 +1487,14 @@ struct hashdata_internal
1486
1487
  return const_iterator(sit, &this->get_bucket_value_traits());
1487
1488
  }
1488
1489
 
1489
- static local_iterator s_local_iterator_to(reference value)
1490
+ static local_iterator s_local_iterator_to(reference value) BOOST_NOEXCEPT
1490
1491
  {
1491
1492
  BOOST_STATIC_ASSERT((!stateful_value_traits));
1492
1493
  siterator sit = bucket_type::s_iterator_to(*value_traits::to_node_ptr(value));
1493
1494
  return local_iterator(sit, const_value_traits_ptr());
1494
1495
  }
1495
1496
 
1496
- static const_local_iterator s_local_iterator_to(const_reference value)
1497
+ static const_local_iterator s_local_iterator_to(const_reference value) BOOST_NOEXCEPT
1497
1498
  {
1498
1499
  BOOST_STATIC_ASSERT((!stateful_value_traits));
1499
1500
  siterator const sit = bucket_type::s_iterator_to
@@ -1503,13 +1504,13 @@ struct hashdata_internal
1503
1504
  return const_local_iterator(sit, const_value_traits_ptr());
1504
1505
  }
1505
1506
 
1506
- local_iterator local_iterator_to(reference value)
1507
+ local_iterator local_iterator_to(reference value) BOOST_NOEXCEPT
1507
1508
  {
1508
1509
  siterator sit = bucket_type::s_iterator_to(this->priv_value_to_node(value));
1509
1510
  return local_iterator(sit, this->priv_value_traits_ptr());
1510
1511
  }
1511
1512
 
1512
- const_local_iterator local_iterator_to(const_reference value) const
1513
+ const_local_iterator local_iterator_to(const_reference value) const BOOST_NOEXCEPT
1513
1514
  {
1514
1515
  siterator sit = bucket_type::s_iterator_to
1515
1516
  ( *pointer_traits<node_ptr>::const_cast_from
@@ -1518,36 +1519,36 @@ struct hashdata_internal
1518
1519
  return const_local_iterator(sit, this->priv_value_traits_ptr());
1519
1520
  }
1520
1521
 
1521
- BOOST_INTRUSIVE_FORCEINLINE size_type bucket_count() const
1522
+ BOOST_INTRUSIVE_FORCEINLINE size_type bucket_count() const BOOST_NOEXCEPT
1522
1523
  {
1523
1524
  const std::size_t bc = this->priv_bucket_count();
1524
1525
  BOOST_INTRUSIVE_INVARIANT_ASSERT(sizeof(size_type) >= sizeof(std::size_t) || bc <= size_type(-1));
1525
1526
  return static_cast<size_type>(bc);
1526
1527
  }
1527
1528
 
1528
- BOOST_INTRUSIVE_FORCEINLINE size_type bucket_size(size_type n) const
1529
+ BOOST_INTRUSIVE_FORCEINLINE size_type bucket_size(size_type n) const BOOST_NOEXCEPT
1529
1530
  { return this->priv_bucket_pointer()[n].size(); }
1530
1531
 
1531
- BOOST_INTRUSIVE_FORCEINLINE bucket_ptr bucket_pointer() const
1532
+ BOOST_INTRUSIVE_FORCEINLINE bucket_ptr bucket_pointer() const BOOST_NOEXCEPT
1532
1533
  { return this->priv_bucket_pointer(); }
1533
1534
 
1534
- BOOST_INTRUSIVE_FORCEINLINE local_iterator begin(size_type n)
1535
+ BOOST_INTRUSIVE_FORCEINLINE local_iterator begin(size_type n) BOOST_NOEXCEPT
1535
1536
  { return local_iterator(this->priv_bucket_pointer()[n].begin(), this->priv_value_traits_ptr()); }
1536
1537
 
1537
- BOOST_INTRUSIVE_FORCEINLINE const_local_iterator begin(size_type n) const
1538
+ BOOST_INTRUSIVE_FORCEINLINE const_local_iterator begin(size_type n) const BOOST_NOEXCEPT
1538
1539
  { return this->cbegin(n); }
1539
1540
 
1540
- static BOOST_INTRUSIVE_FORCEINLINE size_type suggested_upper_bucket_count(size_type n)
1541
+ static BOOST_INTRUSIVE_FORCEINLINE size_type suggested_upper_bucket_count(size_type n) BOOST_NOEXCEPT
1541
1542
  {
1542
1543
  return prime_list_holder<0>::suggested_upper_bucket_count(n);
1543
1544
  }
1544
1545
 
1545
- static BOOST_INTRUSIVE_FORCEINLINE size_type suggested_lower_bucket_count(size_type n)
1546
+ static BOOST_INTRUSIVE_FORCEINLINE size_type suggested_lower_bucket_count(size_type n) BOOST_NOEXCEPT
1546
1547
  {
1547
1548
  return prime_list_holder<0>::suggested_lower_bucket_count(n);
1548
1549
  }
1549
1550
 
1550
- const_local_iterator cbegin(size_type n) const
1551
+ const_local_iterator cbegin(size_type n) const BOOST_NOEXCEPT
1551
1552
  {
1552
1553
  return const_local_iterator
1553
1554
  ( pointer_traits<bucket_ptr>::const_cast_from(this->priv_bucket_pointer())[n].begin()
@@ -1557,13 +1558,13 @@ struct hashdata_internal
1557
1558
  using internal_type::end;
1558
1559
  using internal_type::cend;
1559
1560
 
1560
- local_iterator end(size_type n)
1561
+ local_iterator end(size_type n) BOOST_NOEXCEPT
1561
1562
  { return local_iterator(this->priv_bucket_pointer()[n].end(), this->priv_value_traits_ptr()); }
1562
1563
 
1563
- BOOST_INTRUSIVE_FORCEINLINE const_local_iterator end(size_type n) const
1564
+ BOOST_INTRUSIVE_FORCEINLINE const_local_iterator end(size_type n) const BOOST_NOEXCEPT
1564
1565
  { return this->cend(n); }
1565
1566
 
1566
- const_local_iterator cend(size_type n) const
1567
+ const_local_iterator cend(size_type n) const BOOST_NOEXCEPT
1567
1568
  {
1568
1569
  return const_local_iterator
1569
1570
  ( pointer_traits<bucket_ptr>::const_cast_from(this->priv_bucket_pointer())[n].end()
@@ -1572,13 +1573,13 @@ struct hashdata_internal
1572
1573
 
1573
1574
  //Public functions for hashtable_impl
1574
1575
 
1575
- BOOST_INTRUSIVE_FORCEINLINE iterator begin()
1576
+ BOOST_INTRUSIVE_FORCEINLINE iterator begin() BOOST_NOEXCEPT
1576
1577
  { return iterator(this->priv_begin(), &this->get_bucket_value_traits()); }
1577
1578
 
1578
- BOOST_INTRUSIVE_FORCEINLINE const_iterator begin() const
1579
+ BOOST_INTRUSIVE_FORCEINLINE const_iterator begin() const BOOST_NOEXCEPT
1579
1580
  { return this->cbegin(); }
1580
1581
 
1581
- BOOST_INTRUSIVE_FORCEINLINE const_iterator cbegin() const
1582
+ BOOST_INTRUSIVE_FORCEINLINE const_iterator cbegin() const BOOST_NOEXCEPT
1582
1583
  { return const_iterator(this->priv_begin(), &this->get_bucket_value_traits()); }
1583
1584
 
1584
1585
  BOOST_INTRUSIVE_FORCEINLINE hasher hash_function() const
@@ -1903,7 +1904,7 @@ class hashtable_impl
1903
1904
  //! Worst case (empty unordered_set): O(this->bucket_count())
1904
1905
  //!
1905
1906
  //! <b>Throws</b>: Nothing.
1906
- iterator begin();
1907
+ iterator begin() BOOST_NOEXCEPT;
1907
1908
 
1908
1909
  //! <b>Effects</b>: Returns a const_iterator pointing to the beginning
1909
1910
  //! of the unordered_set.
@@ -1912,7 +1913,7 @@ class hashtable_impl
1912
1913
  //! Worst case (empty unordered_set): O(this->bucket_count())
1913
1914
  //!
1914
1915
  //! <b>Throws</b>: Nothing.
1915
- const_iterator begin() const;
1916
+ const_iterator begin() const BOOST_NOEXCEPT;
1916
1917
 
1917
1918
  //! <b>Effects</b>: Returns a const_iterator pointing to the beginning
1918
1919
  //! of the unordered_set.
@@ -1921,28 +1922,28 @@ class hashtable_impl
1921
1922
  //! Worst case (empty unordered_set): O(this->bucket_count())
1922
1923
  //!
1923
1924
  //! <b>Throws</b>: Nothing.
1924
- const_iterator cbegin() const;
1925
+ const_iterator cbegin() const BOOST_NOEXCEPT;
1925
1926
 
1926
1927
  //! <b>Effects</b>: Returns an iterator pointing to the end of the unordered_set.
1927
1928
  //!
1928
1929
  //! <b>Complexity</b>: Constant.
1929
1930
  //!
1930
1931
  //! <b>Throws</b>: Nothing.
1931
- iterator end();
1932
+ iterator end() BOOST_NOEXCEPT;
1932
1933
 
1933
1934
  //! <b>Effects</b>: Returns a const_iterator pointing to the end of the unordered_set.
1934
1935
  //!
1935
1936
  //! <b>Complexity</b>: Constant.
1936
1937
  //!
1937
1938
  //! <b>Throws</b>: Nothing.
1938
- const_iterator end() const;
1939
+ const_iterator end() const BOOST_NOEXCEPT;
1939
1940
 
1940
1941
  //! <b>Effects</b>: Returns a const_iterator pointing to the end of the unordered_set.
1941
1942
  //!
1942
1943
  //! <b>Complexity</b>: Constant.
1943
1944
  //!
1944
1945
  //! <b>Throws</b>: Nothing.
1945
- const_iterator cend() const;
1946
+ const_iterator cend() const BOOST_NOEXCEPT;
1946
1947
 
1947
1948
  //! <b>Effects</b>: Returns the hasher object used by the unordered_set.
1948
1949
  //!
@@ -1967,9 +1968,9 @@ class hashtable_impl
1967
1968
  //! Otherwise constant.
1968
1969
  //!
1969
1970
  //! <b>Throws</b>: Nothing.
1970
- bool empty() const
1971
+ bool empty() const BOOST_NOEXCEPT
1971
1972
  {
1972
- if(constant_time_size){
1973
+ BOOST_IF_CONSTEXPR(constant_time_size){
1973
1974
  return !this->size();
1974
1975
  }
1975
1976
  else if(cache_begin){
@@ -1993,9 +1994,9 @@ class hashtable_impl
1993
1994
  //! constant_time_size is false. Constant-time otherwise.
1994
1995
  //!
1995
1996
  //! <b>Throws</b>: Nothing.
1996
- size_type size() const
1997
+ size_type size() const BOOST_NOEXCEPT
1997
1998
  {
1998
- if(constant_time_size)
1999
+ BOOST_IF_CONSTEXPR(constant_time_size)
1999
2000
  return this->priv_size_traits().get_size();
2000
2001
  else{
2001
2002
  size_type len = 0;
@@ -2264,7 +2265,7 @@ class hashtable_impl
2264
2265
  //! erased between the "insert_check" and "insert_commit" calls.
2265
2266
  //!
2266
2267
  //! After a successful rehashing insert_commit_data remains valid.
2267
- iterator insert_unique_commit(reference value, const insert_commit_data &commit_data)
2268
+ iterator insert_unique_commit(reference value, const insert_commit_data &commit_data) BOOST_NOEXCEPT
2268
2269
  {
2269
2270
  size_type bucket_num = this->priv_hash_to_bucket(commit_data.hash);
2270
2271
  bucket_type &b = this->priv_bucket_pointer()[bucket_num];
@@ -2285,7 +2286,7 @@ class hashtable_impl
2285
2286
  //!
2286
2287
  //! <b>Note</b>: Invalidates the iterators (but not the references)
2287
2288
  //! to the erased element. No destructors are called.
2288
- BOOST_INTRUSIVE_FORCEINLINE void erase(const_iterator i)
2289
+ BOOST_INTRUSIVE_FORCEINLINE void erase(const_iterator i) BOOST_NOEXCEPT
2289
2290
  { this->erase_and_dispose(i, detail::null_disposer()); }
2290
2291
 
2291
2292
  //! <b>Effects</b>: Erases the range pointed to by b end e.
@@ -2297,7 +2298,7 @@ class hashtable_impl
2297
2298
  //!
2298
2299
  //! <b>Note</b>: Invalidates the iterators (but not the references)
2299
2300
  //! to the erased elements. No destructors are called.
2300
- BOOST_INTRUSIVE_FORCEINLINE void erase(const_iterator b, const_iterator e)
2301
+ BOOST_INTRUSIVE_FORCEINLINE void erase(const_iterator b, const_iterator e) BOOST_NOEXCEPT
2301
2302
  { this->erase_and_dispose(b, e, detail::null_disposer()); }
2302
2303
 
2303
2304
  //! <b>Effects</b>: Erases all the elements with the given value.
@@ -2353,7 +2354,7 @@ class hashtable_impl
2353
2354
  template<class Disposer>
2354
2355
  BOOST_INTRUSIVE_DOC1ST(void
2355
2356
  , typename detail::disable_if_convertible<Disposer BOOST_INTRUSIVE_I const_iterator>::type)
2356
- erase_and_dispose(const_iterator i, Disposer disposer)
2357
+ erase_and_dispose(const_iterator i, Disposer disposer) BOOST_NOEXCEPT
2357
2358
  {
2358
2359
  //Get the bucket number and local iterator for both iterators
2359
2360
  siterator const first_local_it(i.slist_it());
@@ -2376,7 +2377,7 @@ class hashtable_impl
2376
2377
  //! <b>Note</b>: Invalidates the iterators
2377
2378
  //! to the erased elements.
2378
2379
  template<class Disposer>
2379
- void erase_and_dispose(const_iterator b, const_iterator e, Disposer disposer)
2380
+ void erase_and_dispose(const_iterator b, const_iterator e, Disposer disposer) BOOST_NOEXCEPT
2380
2381
  {
2381
2382
  if(b != e){
2382
2383
  //Get the bucket number and local iterator for both iterators
@@ -2484,7 +2485,7 @@ class hashtable_impl
2484
2485
  //!
2485
2486
  //! <b>Note</b>: Invalidates the iterators (but not the references)
2486
2487
  //! to the erased elements. No destructors are called.
2487
- void clear()
2488
+ void clear() BOOST_NOEXCEPT
2488
2489
  {
2489
2490
  this->priv_clear_buckets_and_cache();
2490
2491
  this->priv_size_traits().set_size(size_type(0));
@@ -2502,7 +2503,7 @@ class hashtable_impl
2502
2503
  //! <b>Note</b>: Invalidates the iterators (but not the references)
2503
2504
  //! to the erased elements. No destructors are called.
2504
2505
  template<class Disposer>
2505
- void clear_and_dispose(Disposer disposer)
2506
+ void clear_and_dispose(Disposer disposer) BOOST_NOEXCEPT
2506
2507
  {
2507
2508
  if(!constant_time_size || !this->empty()){
2508
2509
  size_type num_buckets = this->bucket_count();
@@ -2717,7 +2718,7 @@ class hashtable_impl
2717
2718
  //! <b>Complexity</b>: Constant.
2718
2719
  //!
2719
2720
  //! <b>Throws</b>: If the internal hash function throws.
2720
- iterator iterator_to(reference value);
2721
+ iterator iterator_to(reference value) BOOST_NOEXCEPT;
2721
2722
 
2722
2723
  //! <b>Requires</b>: value must be an lvalue and shall be in a unordered_set of
2723
2724
  //! appropriate type. Otherwise the behavior is undefined.
@@ -2728,7 +2729,7 @@ class hashtable_impl
2728
2729
  //! <b>Complexity</b>: Constant.
2729
2730
  //!
2730
2731
  //! <b>Throws</b>: If the internal hash function throws.
2731
- const_iterator iterator_to(const_reference value) const;
2732
+ const_iterator iterator_to(const_reference value) const BOOST_NOEXCEPT;
2732
2733
 
2733
2734
  //! <b>Requires</b>: value must be an lvalue and shall be in a unordered_set of
2734
2735
  //! appropriate type. Otherwise the behavior is undefined.
@@ -2742,7 +2743,7 @@ class hashtable_impl
2742
2743
  //!
2743
2744
  //! <b>Note</b>: This static function is available only if the <i>value traits</i>
2744
2745
  //! is stateless.
2745
- static local_iterator s_local_iterator_to(reference value);
2746
+ static local_iterator s_local_iterator_to(reference value) BOOST_NOEXCEPT;
2746
2747
 
2747
2748
  //! <b>Requires</b>: value must be an lvalue and shall be in a unordered_set of
2748
2749
  //! appropriate type. Otherwise the behavior is undefined.
@@ -2756,7 +2757,7 @@ class hashtable_impl
2756
2757
  //!
2757
2758
  //! <b>Note</b>: This static function is available only if the <i>value traits</i>
2758
2759
  //! is stateless.
2759
- static const_local_iterator s_local_iterator_to(const_reference value);
2760
+ static const_local_iterator s_local_iterator_to(const_reference value) BOOST_NOEXCEPT;
2760
2761
 
2761
2762
  //! <b>Requires</b>: value must be an lvalue and shall be in a unordered_set of
2762
2763
  //! appropriate type. Otherwise the behavior is undefined.
@@ -2767,7 +2768,7 @@ class hashtable_impl
2767
2768
  //! <b>Complexity</b>: Constant.
2768
2769
  //!
2769
2770
  //! <b>Throws</b>: Nothing.
2770
- local_iterator local_iterator_to(reference value);
2771
+ local_iterator local_iterator_to(reference value) BOOST_NOEXCEPT;
2771
2772
 
2772
2773
  //! <b>Requires</b>: value must be an lvalue and shall be in a unordered_set of
2773
2774
  //! appropriate type. Otherwise the behavior is undefined.
@@ -2778,7 +2779,7 @@ class hashtable_impl
2778
2779
  //! <b>Complexity</b>: Constant.
2779
2780
  //!
2780
2781
  //! <b>Throws</b>: Nothing.
2781
- const_local_iterator local_iterator_to(const_reference value) const;
2782
+ const_local_iterator local_iterator_to(const_reference value) const BOOST_NOEXCEPT;
2782
2783
 
2783
2784
  //! <b>Effects</b>: Returns the number of buckets passed in the constructor
2784
2785
  //! or the last rehash function.
@@ -2786,7 +2787,7 @@ class hashtable_impl
2786
2787
  //! <b>Complexity</b>: Constant.
2787
2788
  //!
2788
2789
  //! <b>Throws</b>: Nothing.
2789
- size_type bucket_count() const;
2790
+ size_type bucket_count() const BOOST_NOEXCEPT;
2790
2791
 
2791
2792
  //! <b>Requires</b>: n is in the range [0, this->bucket_count()).
2792
2793
  //!
@@ -2795,7 +2796,7 @@ class hashtable_impl
2795
2796
  //! <b>Complexity</b>: Constant.
2796
2797
  //!
2797
2798
  //! <b>Throws</b>: Nothing.
2798
- size_type bucket_size(size_type n) const;
2799
+ size_type bucket_size(size_type n) const BOOST_NOEXCEPT;
2799
2800
  #endif //#if defined(BOOST_INTRUSIVE_DOXYGEN_INVOKED)
2800
2801
 
2801
2802
  //! <b>Effects</b>: Returns the index of the bucket in which elements
@@ -2806,7 +2807,7 @@ class hashtable_impl
2806
2807
  //! <b>Throws</b>: If the hash functor throws.
2807
2808
  //!
2808
2809
  //! <b>Note</b>: the return value is in the range [0, this->bucket_count()).
2809
- BOOST_INTRUSIVE_FORCEINLINE size_type bucket(const key_type& k) const
2810
+ BOOST_INTRUSIVE_FORCEINLINE size_type bucket(const key_type& k) const
2810
2811
  { return this->bucket(k, this->priv_hasher()); }
2811
2812
 
2812
2813
  //! <b>Requires</b>: "hash_func" must be a hash function that induces
@@ -2832,7 +2833,7 @@ class hashtable_impl
2832
2833
  //! <b>Complexity</b>: Constant.
2833
2834
  //!
2834
2835
  //! <b>Throws</b>: Nothing.
2835
- bucket_ptr bucket_pointer() const;
2836
+ bucket_ptr bucket_pointer() const BOOST_NOEXCEPT;
2836
2837
 
2837
2838
  //! <b>Requires</b>: n is in the range [0, this->bucket_count()).
2838
2839
  //!
@@ -2845,7 +2846,7 @@ class hashtable_impl
2845
2846
  //!
2846
2847
  //! <b>Note</b>: [this->begin(n), this->end(n)) is a valid range
2847
2848
  //! containing all of the elements in the nth bucket.
2848
- local_iterator begin(size_type n);
2849
+ local_iterator begin(size_type n) BOOST_NOEXCEPT;
2849
2850
 
2850
2851
  //! <b>Requires</b>: n is in the range [0, this->bucket_count()).
2851
2852
  //!
@@ -2858,7 +2859,7 @@ class hashtable_impl
2858
2859
  //!
2859
2860
  //! <b>Note</b>: [this->begin(n), this->end(n)) is a valid range
2860
2861
  //! containing all of the elements in the nth bucket.
2861
- const_local_iterator begin(size_type n) const;
2862
+ const_local_iterator begin(size_type n) const BOOST_NOEXCEPT;
2862
2863
 
2863
2864
  //! <b>Requires</b>: n is in the range [0, this->bucket_count()).
2864
2865
  //!
@@ -2871,7 +2872,7 @@ class hashtable_impl
2871
2872
  //!
2872
2873
  //! <b>Note</b>: [this->begin(n), this->end(n)) is a valid range
2873
2874
  //! containing all of the elements in the nth bucket.
2874
- const_local_iterator cbegin(size_type n) const;
2875
+ const_local_iterator cbegin(size_type n) const BOOST_NOEXCEPT;
2875
2876
 
2876
2877
  //! <b>Requires</b>: n is in the range [0, this->bucket_count()).
2877
2878
  //!
@@ -2884,7 +2885,7 @@ class hashtable_impl
2884
2885
  //!
2885
2886
  //! <b>Note</b>: [this->begin(n), this->end(n)) is a valid range
2886
2887
  //! containing all of the elements in the nth bucket.
2887
- local_iterator end(size_type n);
2888
+ local_iterator end(size_type n) BOOST_NOEXCEPT;
2888
2889
 
2889
2890
  //! <b>Requires</b>: n is in the range [0, this->bucket_count()).
2890
2891
  //!
@@ -2897,7 +2898,7 @@ class hashtable_impl
2897
2898
  //!
2898
2899
  //! <b>Note</b>: [this->begin(n), this->end(n)) is a valid range
2899
2900
  //! containing all of the elements in the nth bucket.
2900
- const_local_iterator end(size_type n) const;
2901
+ const_local_iterator end(size_type n) const BOOST_NOEXCEPT;
2901
2902
 
2902
2903
  //! <b>Requires</b>: n is in the range [0, this->bucket_count()).
2903
2904
  //!
@@ -2910,7 +2911,7 @@ class hashtable_impl
2910
2911
  //!
2911
2912
  //! <b>Note</b>: [this->begin(n), this->end(n)) is a valid range
2912
2913
  //! containing all of the elements in the nth bucket.
2913
- const_local_iterator cend(size_type n) const;
2914
+ const_local_iterator cend(size_type n) const BOOST_NOEXCEPT;
2914
2915
  #endif //#if defined(BOOST_INTRUSIVE_DOXYGEN_INVOKED)
2915
2916
 
2916
2917
  //! <b>Requires</b>: new_bucket_traits can hold a pointer to a new bucket array
@@ -3038,7 +3039,7 @@ class hashtable_impl
3038
3039
  //! <b>Throws</b>: Nothing
3039
3040
  //!
3040
3041
  //! <b>Note</b>: this method is only available if incremental<true> option is activated.
3041
- bool incremental_rehash(const bucket_traits &new_bucket_traits)
3042
+ bool incremental_rehash(const bucket_traits &new_bucket_traits) BOOST_NOEXCEPT
3042
3043
  {
3043
3044
  //This function is only available for containers with incremental hashing
3044
3045
  BOOST_STATIC_ASSERT(( incremental && power_2_buckets ));
@@ -3084,7 +3085,7 @@ class hashtable_impl
3084
3085
  //! <b>Complexity</b>: Constant
3085
3086
  //!
3086
3087
  //! <b>Throws</b>: Nothing
3087
- size_type split_count() const;
3088
+ size_type split_count() const BOOST_NOEXCEPT;
3088
3089
 
3089
3090
  //! <b>Effects</b>: Returns the nearest new bucket count optimized for
3090
3091
  //! the container that is bigger or equal than n. This suggestion can be
@@ -3095,7 +3096,7 @@ class hashtable_impl
3095
3096
  //! <b>Complexity</b>: Amortized constant time.
3096
3097
  //!
3097
3098
  //! <b>Throws</b>: Nothing.
3098
- static size_type suggested_upper_bucket_count(size_type n);
3099
+ static size_type suggested_upper_bucket_count(size_type n) BOOST_NOEXCEPT;
3099
3100
 
3100
3101
  //! <b>Effects</b>: Returns the nearest new bucket count optimized for
3101
3102
  //! the container that is smaller or equal than n. This suggestion can be
@@ -3106,7 +3107,7 @@ class hashtable_impl
3106
3107
  //! <b>Complexity</b>: Amortized constant time.
3107
3108
  //!
3108
3109
  //! <b>Throws</b>: Nothing.
3109
- static size_type suggested_lower_bucket_count(size_type n);
3110
+ static size_type suggested_lower_bucket_count(size_type n) BOOST_NOEXCEPT;
3110
3111
  #endif //#if defined(BOOST_INTRUSIVE_DOXYGEN_INVOKED)
3111
3112
 
3112
3113
 
@@ -3395,7 +3396,7 @@ class hashtable_impl
3395
3396
  }
3396
3397
 
3397
3398
  //return previous iterator to the next equal range group in case
3398
- static siterator priv_last_in_group(const siterator &it_first_in_group)
3399
+ static siterator priv_last_in_group(const siterator &it_first_in_group) BOOST_NOEXCEPT
3399
3400
  {
3400
3401
  return bucket_type::s_iterator_to
3401
3402
  (*group_functions_t::get_last_in_group
@@ -3496,19 +3497,19 @@ class hashtable_impl
3496
3497
  return to_return;
3497
3498
  }
3498
3499
 
3499
- std::size_t priv_get_bucket_num(siterator it)
3500
+ std::size_t priv_get_bucket_num(siterator it) BOOST_NOEXCEPT
3500
3501
  { return this->priv_get_bucket_num_hash_dispatch(it, store_hash_t()); }
3501
3502
 
3502
- std::size_t priv_get_bucket_num_hash_dispatch(siterator it, detail::true_) //store_hash
3503
+ std::size_t priv_get_bucket_num_hash_dispatch(siterator it, detail::true_) BOOST_NOEXCEPT //store_hash
3503
3504
  {
3504
3505
  return this->priv_hash_to_bucket
3505
3506
  (this->priv_stored_hash(it.pointed_node(), store_hash_t()));
3506
3507
  }
3507
3508
 
3508
- std::size_t priv_get_bucket_num_hash_dispatch(siterator it, detail::false_) //NO store_hash
3509
+ std::size_t priv_get_bucket_num_hash_dispatch(siterator it, detail::false_) BOOST_NOEXCEPT //NO store_hash
3509
3510
  { return this->priv_get_bucket_num_no_hash_store(it, optimize_multikey_t()); }
3510
3511
 
3511
- static siterator priv_get_previous(bucket_type &b, siterator i)
3512
+ static siterator priv_get_previous(bucket_type &b, siterator i) BOOST_NOEXCEPT
3512
3513
  { return bucket_plus_vtraits_t::priv_get_previous(b, i, optimize_multikey_t()); }
3513
3514
 
3514
3515
  /// @endcond
@@ -78,7 +78,7 @@ class linear_slist_algorithms
78
78
  //! <b>Complexity</b>: Constant
79
79
  //!
80
80
  //! <b>Throws</b>: Nothing.
81
- static void init(const node_ptr & this_node);
81
+ static void init(const node_ptr & this_node) BOOST_NOEXCEPT;
82
82
 
83
83
  //! <b>Requires</b>: this_node must be in a circular list or be an empty circular list.
84
84
  //!
@@ -89,7 +89,7 @@ class linear_slist_algorithms
89
89
  //! <b>Complexity</b>: Constant
90
90
  //!
91
91
  //! <b>Throws</b>: Nothing.
92
- static bool unique(const_node_ptr this_node);
92
+ static bool unique(const_node_ptr this_node) BOOST_NOEXCEPT;
93
93
 
94
94
  //! <b>Effects</b>: Returns true is "this_node" has the same state as if
95
95
  //! it was inited using "init(node_ptr)"
@@ -97,7 +97,7 @@ class linear_slist_algorithms
97
97
  //! <b>Complexity</b>: Constant
98
98
  //!
99
99
  //! <b>Throws</b>: Nothing.
100
- static bool inited(const_node_ptr this_node);
100
+ static bool inited(const_node_ptr this_node) BOOST_NOEXCEPT;
101
101
 
102
102
  //! <b>Requires</b>: prev_node must be in a circular list or be an empty circular list.
103
103
  //!
@@ -106,7 +106,7 @@ class linear_slist_algorithms
106
106
  //! <b>Complexity</b>: Constant
107
107
  //!
108
108
  //! <b>Throws</b>: Nothing.
109
- static void unlink_after(const node_ptr & prev_node);
109
+ static void unlink_after(const node_ptr & prev_node) BOOST_NOEXCEPT;
110
110
 
111
111
  //! <b>Requires</b>: prev_node and last_node must be in a circular list
112
112
  //! or be an empty circular list.
@@ -116,7 +116,7 @@ class linear_slist_algorithms
116
116
  //! <b>Complexity</b>: Constant
117
117
  //!
118
118
  //! <b>Throws</b>: Nothing.
119
- static void unlink_after(const node_ptr & prev_node, const node_ptr & last_node);
119
+ static void unlink_after(const node_ptr & prev_node, const node_ptr & last_node) BOOST_NOEXCEPT;
120
120
 
121
121
  //! <b>Requires</b>: prev_node must be a node of a linear list.
122
122
  //!
@@ -125,7 +125,7 @@ class linear_slist_algorithms
125
125
  //! <b>Complexity</b>: Constant
126
126
  //!
127
127
  //! <b>Throws</b>: Nothing.
128
- static void link_after(const node_ptr & prev_node, const node_ptr & this_node);
128
+ static void link_after(const node_ptr & prev_node, const node_ptr & this_node) BOOST_NOEXCEPT;
129
129
 
130
130
  //! <b>Requires</b>: b and e must be nodes of the same linear list or an empty range.
131
131
  //! and p must be a node of a different linear list.
@@ -136,7 +136,7 @@ class linear_slist_algorithms
136
136
  //! <b>Complexity</b>: Constant
137
137
  //!
138
138
  //! <b>Throws</b>: Nothing.
139
- static void transfer_after(const node_ptr & p, const node_ptr & b, const node_ptr & e);
139
+ static void transfer_after(const node_ptr & p, const node_ptr & b, const node_ptr & e) BOOST_NOEXCEPT;
140
140
 
141
141
  #endif //#if defined(BOOST_INTRUSIVE_DOXYGEN_INVOKED)
142
142
 
@@ -147,7 +147,7 @@ class linear_slist_algorithms
147
147
  //! <b>Complexity</b>: Constant
148
148
  //!
149
149
  //! <b>Throws</b>: Nothing.
150
- BOOST_INTRUSIVE_FORCEINLINE static void init_header(const node_ptr & this_node)
150
+ BOOST_INTRUSIVE_FORCEINLINE static void init_header(const node_ptr & this_node) BOOST_NOEXCEPT
151
151
  { NodeTraits::set_next(this_node, node_ptr ()); }
152
152
 
153
153
  //! <b>Requires</b>: this_node and prev_init_node must be in the same linear list.
@@ -159,7 +159,8 @@ class linear_slist_algorithms
159
159
  //! <b>Complexity</b>: Linear to the number of elements between prev_init_node and this_node.
160
160
  //!
161
161
  //! <b>Throws</b>: Nothing.
162
- BOOST_INTRUSIVE_FORCEINLINE static node_ptr get_previous_node(const node_ptr & prev_init_node, const node_ptr & this_node)
162
+ BOOST_INTRUSIVE_FORCEINLINE static node_ptr
163
+ get_previous_node(const node_ptr & prev_init_node, const node_ptr & this_node) BOOST_NOEXCEPT
163
164
  { return base_t::get_previous_node(prev_init_node, this_node); }
164
165
 
165
166
  //! <b>Requires</b>: this_node must be in a linear list or be an empty linear list.
@@ -170,7 +171,7 @@ class linear_slist_algorithms
170
171
  //! <b>Complexity</b>: Linear
171
172
  //!
172
173
  //! <b>Throws</b>: Nothing.
173
- static std::size_t count(const const_node_ptr & this_node)
174
+ static std::size_t count(const const_node_ptr & this_node) BOOST_NOEXCEPT
174
175
  {
175
176
  std::size_t result = 0;
176
177
  const_node_ptr p = this_node;
@@ -190,7 +191,7 @@ class linear_slist_algorithms
190
191
  //! <b>Complexity</b>: Constant
191
192
  //!
192
193
  //! <b>Throws</b>: Nothing.
193
- static void swap_trailing_nodes(node_ptr this_node, node_ptr other_node)
194
+ BOOST_INTRUSIVE_FORCEINLINE static void swap_trailing_nodes(node_ptr this_node, node_ptr other_node) BOOST_NOEXCEPT
194
195
  {
195
196
  node_ptr this_nxt = NodeTraits::get_next(this_node);
196
197
  node_ptr other_nxt = NodeTraits::get_next(other_node);
@@ -205,7 +206,7 @@ class linear_slist_algorithms
205
206
  //! <b>Throws</b>: Nothing.
206
207
  //!
207
208
  //! <b>Complexity</b>: This function is linear to the contained elements.
208
- static node_ptr reverse(node_ptr p)
209
+ static node_ptr reverse(node_ptr p) BOOST_NOEXCEPT
209
210
  {
210
211
  if(!p) return node_ptr();
211
212
  node_ptr i = NodeTraits::get_next(p);
@@ -228,7 +229,7 @@ class linear_slist_algorithms
228
229
  //! <b>Throws</b>: Nothing.
229
230
  //!
230
231
  //! <b>Complexity</b>: Linear to the number of elements plus the number moved positions.
231
- static node_pair move_first_n_backwards(node_ptr p, std::size_t n)
232
+ static node_pair move_first_n_backwards(node_ptr p, std::size_t n) BOOST_NOEXCEPT
232
233
  {
233
234
  node_pair ret;
234
235
  //Null shift, or count() == 0 or 1, nothing to do
@@ -283,7 +284,7 @@ class linear_slist_algorithms
283
284
  //! <b>Throws</b>: Nothing.
284
285
  //!
285
286
  //! <b>Complexity</b>: Linear to the number of elements plus the number moved positions.
286
- static node_pair move_first_n_forward(node_ptr p, std::size_t n)
287
+ static node_pair move_first_n_forward(node_ptr p, std::size_t n) BOOST_NOEXCEPT
287
288
  {
288
289
  node_pair ret;
289
290
  //Null shift, or count() == 0 or 1, nothing to do