passenger 6.0.26 → 6.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (915) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +38 -1
  3. data/CONTRIBUTING.md +2 -2
  4. data/CONTRIBUTORS +2 -0
  5. data/bin/passenger-install-apache2-module +6 -3
  6. data/bin/passenger-install-nginx-module +8 -3
  7. data/build/agent.rb +0 -2
  8. data/build/basics.rb +2 -0
  9. data/build/common_library.rb +0 -6
  10. data/build/misc.rb +0 -2
  11. data/build/schema_printer.rb +0 -2
  12. data/build/support/cxx_dependency_map.rb +60 -875
  13. data/dev/copy_boost_headers +3 -14
  14. data/dev/index_cxx_dependencies.rb +5 -1
  15. data/doc/AiInstructions.md +112 -0
  16. data/doc/CxxMockingStrategy.md +42 -0
  17. data/doc/CxxTestingGuide.md +110 -0
  18. data/doc/DesignAspects/LimitedGemDependencies.md +22 -14
  19. data/doc/TempFileHandling.md +15 -0
  20. data/package.json +1 -1
  21. data/passenger.gemspec +1 -1
  22. data/resources/templates/standalone/server.erb +1 -0
  23. data/src/agent/Core/ApiServer.h +0 -1
  24. data/src/agent/Core/ApplicationPool/AbstractSession.h +10 -1
  25. data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +1 -1
  26. data/src/agent/Core/ApplicationPool/Group/SessionManagement.cpp +33 -18
  27. data/src/agent/Core/ApplicationPool/Group.h +0 -1
  28. data/src/agent/Core/ApplicationPool/Implementation.cpp +1 -4
  29. data/src/agent/Core/ApplicationPool/Session.h +14 -19
  30. data/src/agent/Core/ApplicationPool/Socket.h +15 -5
  31. data/src/agent/Core/ApplicationPool/TestSession.h +73 -15
  32. data/src/agent/Core/Config.h +2 -39
  33. data/src/agent/Core/ConfigChange.cpp +1 -41
  34. data/src/agent/Core/Controller/CheckoutSession.cpp +100 -14
  35. data/src/agent/Core/Controller/Client.h +0 -1
  36. data/src/agent/Core/Controller/Config.h +1 -1
  37. data/src/agent/Core/Controller/Hooks.cpp +13 -0
  38. data/src/agent/Core/Controller/InitRequest.cpp +2 -0
  39. data/src/agent/Core/Controller/InternalUtils.cpp +12 -0
  40. data/src/agent/Core/Controller/Request.h +3 -2
  41. data/src/agent/Core/Controller.h +12 -13
  42. data/src/agent/Core/CoreMain.cpp +2 -56
  43. data/src/agent/Core/OptionParser.h +1 -7
  44. data/src/agent/Core/SecurityUpdateChecker.h +10 -2
  45. data/src/agent/Core/SpawningKit/Exceptions.h +0 -1
  46. data/src/agent/Core/SpawningKit/Handshake/Perform.h +13 -2
  47. data/src/agent/Shared/Fundamentals/AbortHandler.cpp +23 -5
  48. data/src/agent/Shared/Fundamentals/AbortHandler.h +10 -22
  49. data/src/agent/Shared/Fundamentals/Initialization.cpp +1 -0
  50. data/src/agent/Watchdog/Config.h +2 -21
  51. data/src/agent/Watchdog/WatchdogMain.cpp +0 -2
  52. data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +5 -20
  53. data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +5 -0
  54. data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +14 -60
  55. data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp +3 -0
  56. data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp +3 -0
  57. data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp +11 -0
  58. data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp +7 -0
  59. data/src/apache2_module/DirConfig/AutoGeneratedStruct.h +17 -0
  60. data/src/apache2_module/Hooks.cpp +0 -10
  61. data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp +0 -44
  62. data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +0 -52
  63. data/src/cxx_supportlib/Algorithms/Hasher.cpp +1 -1
  64. data/src/cxx_supportlib/Algorithms/Hasher.h +4 -7
  65. data/src/cxx_supportlib/Algorithms/MovingAverage.h +1 -160
  66. data/src/cxx_supportlib/ConfigKit/IN_PRACTICE.md +2 -12
  67. data/src/cxx_supportlib/ConfigKit/Store.h +1 -6
  68. data/src/cxx_supportlib/Constants.h +2 -1
  69. data/src/cxx_supportlib/DataStructures/StringKeyTable.h +1 -7
  70. data/src/cxx_supportlib/DataStructures/StringMap.h +2 -3
  71. data/src/cxx_supportlib/Exceptions.cpp +178 -0
  72. data/src/cxx_supportlib/Exceptions.h +62 -177
  73. data/src/cxx_supportlib/FileTools/FileManip.h +2 -0
  74. data/src/cxx_supportlib/Hooks.h +0 -1
  75. data/src/cxx_supportlib/IOTools/IOUtils.cpp +266 -250
  76. data/src/cxx_supportlib/IOTools/IOUtils.h +87 -132
  77. data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +2 -0
  78. data/src/cxx_supportlib/ServerKit/Config.h +1 -6
  79. data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +1 -1
  80. data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +8 -6
  81. data/src/cxx_supportlib/StaticString.h +1 -6
  82. data/src/cxx_supportlib/StrIntTools/StrIntUtils.h +2 -2
  83. data/src/cxx_supportlib/SystemTools/SystemMetricsCollector.h +0 -2
  84. data/src/cxx_supportlib/Utils/Curl.h +1 -6
  85. data/src/cxx_supportlib/Utils/FastStringStream.h +7 -7
  86. data/src/cxx_supportlib/Utils/IniFile.h +24 -25
  87. data/src/cxx_supportlib/Utils/ScopeGuard.h +0 -32
  88. data/src/cxx_supportlib/Utils.h +0 -30
  89. data/src/cxx_supportlib/oxt/detail/tracable_exception_disabled.hpp +4 -0
  90. data/src/cxx_supportlib/oxt/detail/tracable_exception_enabled.hpp +1 -0
  91. data/src/cxx_supportlib/oxt/implementation.cpp +41 -2
  92. data/src/cxx_supportlib/oxt/spin_lock.hpp +94 -23
  93. data/src/cxx_supportlib/oxt/system_calls.cpp +1 -0
  94. data/src/cxx_supportlib/oxt/system_calls.hpp +3 -4
  95. data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +2 -2
  96. data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +5 -0
  97. data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +1 -0
  98. data/src/cxx_supportlib/vendor-modified/boost/container/detail/container_or_allocator_rebind.hpp +1 -2
  99. data/src/cxx_supportlib/vendor-modified/boost/container/detail/container_rebind.hpp +23 -13
  100. data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +72 -49
  101. data/src/cxx_supportlib/vendor-modified/boost/container/detail/function_detector.hpp +1 -1
  102. data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_contiguous_container.hpp +15 -11
  103. data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +4 -0
  104. data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +36 -9
  105. data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +9 -2
  106. data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +4 -0
  107. data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +21 -17
  108. data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +5 -0
  109. data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +10 -6
  110. data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +8 -3
  111. data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +21 -3
  112. data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +5 -15
  113. data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +73 -14
  114. data/src/cxx_supportlib/vendor-modified/boost/detail/basic_pointerbuf.hpp +1 -2
  115. data/src/cxx_supportlib/vendor-modified/boost/detail/lcast_precision.hpp +18 -29
  116. data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +7 -7
  117. data/src/cxx_supportlib/vendor-modified/boost/integer/common_factor_rt.hpp +6 -10
  118. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avl_set.hpp +8 -0
  119. data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +4 -0
  120. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bs_set.hpp +8 -0
  121. data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +12 -4
  122. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/function_detector.hpp +1 -1
  123. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/parent_from_member.hpp +5 -4
  124. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +10 -0
  125. data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +5 -0
  126. data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree.hpp +4 -0
  127. data/src/cxx_supportlib/vendor-modified/boost/intrusive/set.hpp +8 -0
  128. data/src/cxx_supportlib/vendor-modified/boost/intrusive/sg_set.hpp +8 -0
  129. data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree.hpp +4 -0
  130. data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +5 -0
  131. data/src/cxx_supportlib/vendor-modified/boost/intrusive/splay_set.hpp +8 -0
  132. data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree.hpp +4 -0
  133. data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap.hpp +4 -0
  134. data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_set.hpp +8 -0
  135. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +7 -7
  136. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +1 -1
  137. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +1 -1
  138. data/src/cxx_supportlib/vendor-modified/boost/move/adl_move_swap.hpp +2 -0
  139. data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +4 -4
  140. data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +1 -20
  141. data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils_core.hpp +15 -0
  142. data/src/cxx_supportlib/vendor-modified/boost/move/detail/nsec_clock.hpp +1 -1
  143. data/src/cxx_supportlib/vendor-modified/boost/move/detail/placement_new.hpp +2 -0
  144. data/src/cxx_supportlib/vendor-modified/boost/move/detail/std_ns_begin.hpp +7 -7
  145. data/src/cxx_supportlib/vendor-modified/boost/move/detail/std_ns_end.hpp +3 -0
  146. data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_count.hpp +4 -4
  147. data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
  148. data/src/cxx_supportlib/vendor-modified/boost/none.hpp +1 -1
  149. data/src/cxx_supportlib/vendor-modified/boost/none_t.hpp +10 -4
  150. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/experimental_traits.hpp +4 -49
  151. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_aligned_storage.hpp +2 -3
  152. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_config.hpp +13 -4
  153. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +47 -46
  154. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_relops.hpp +11 -11
  155. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp +3 -3
  156. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +12 -252
  157. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_utility.hpp +41 -0
  158. data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +101 -592
  159. data/src/cxx_supportlib/vendor-modified/boost/optional/optional_io.hpp +1 -5
  160. data/src/cxx_supportlib/vendor-modified/boost/pointer_cast.hpp +12 -24
  161. data/src/cxx_supportlib/vendor-modified/boost/random/beta_distribution.hpp +5 -5
  162. data/src/cxx_supportlib/vendor-modified/boost/random/hyperexponential_distribution.hpp +15 -15
  163. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/allocate_shared_array.hpp +37 -44
  164. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/bad_weak_ptr.hpp +1 -23
  165. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count.hpp +1 -0
  166. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/deprecated_macros.hpp +52 -0
  167. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/local_counted_base.hpp +14 -18
  168. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/local_sp_deleter.hpp +7 -15
  169. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/shared_count.hpp +39 -90
  170. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_convertible.hpp +0 -16
  171. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base.hpp +1 -0
  172. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_nt.hpp +13 -14
  173. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_std_atomic.hpp +16 -17
  174. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +16 -55
  175. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_noexcept.hpp +5 -14
  176. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_type_traits.hpp +55 -0
  177. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock.hpp +1 -0
  178. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_std_atomic.hpp +5 -6
  179. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/enable_shared_from_this.hpp +7 -10
  180. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +32 -110
  181. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ref_counter.hpp +17 -18
  182. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared.hpp +2 -6
  183. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_array.hpp +10 -9
  184. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_object.hpp +28 -565
  185. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_unique.hpp +11 -17
  186. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_array.hpp +17 -21
  187. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_ptr.hpp +20 -22
  188. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_array.hpp +34 -68
  189. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +78 -356
  190. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/weak_ptr.hpp +31 -89
  191. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +195 -12
  192. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +206 -17
  193. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_node_map.hpp +1202 -0
  194. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_node_map_fwd.hpp +67 -0
  195. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_node_set.hpp +1065 -0
  196. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_node_set_fwd.hpp +67 -0
  197. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/concurrent_static_asserts.hpp +30 -8
  198. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +248 -47
  199. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +24 -0
  200. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/flat_map_types.hpp +10 -2
  201. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/flat_set_types.hpp +8 -2
  202. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_handle.hpp +120 -5
  203. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_map_handle.hpp +56 -0
  204. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_map_types.hpp +15 -4
  205. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_set_handle.hpp +48 -0
  206. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_set_types.hpp +13 -4
  207. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/tuple_rotate_right.hpp +11 -10
  208. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/types_constructibility.hpp +172 -0
  209. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +1 -0
  210. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/map.hpp +0 -17
  211. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/set.hpp +0 -17
  212. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/type_traits.hpp +11 -0
  213. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +9 -0
  214. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +9 -0
  215. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +2 -2
  216. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +32 -44
  217. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +31 -35
  218. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_printers.hpp +414 -0
  219. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +2 -2
  220. data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
  221. data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +8 -32
  222. data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +6 -0
  223. data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +12 -48
  224. data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +5 -0
  225. data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c +21 -0
  226. data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +13 -0
  227. data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +3 -0
  228. data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +4 -0
  229. data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c +0 -24
  230. data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c +0 -48
  231. data/src/nginx_module/MainConfig/AutoGeneratedStruct.h +0 -16
  232. data/src/nginx_module/ngx_http_passenger_module.c +0 -4
  233. data/src/ruby_native_extension/passenger_native_support.c +19 -3
  234. data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +8 -24
  235. data/src/ruby_supportlib/phusion_passenger/common_library.rb +0 -3
  236. data/src/ruby_supportlib/phusion_passenger/constants.rb +1 -0
  237. data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +6 -28
  238. data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +15 -18
  239. data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +4 -29
  240. data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +0 -30
  241. data/src/ruby_supportlib/phusion_passenger/rack_handler.rb +2 -2
  242. data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +8 -20
  243. data/src/ruby_supportlib/phusion_passenger.rb +7 -7
  244. data/src/schema_printer/SchemaPrinterMain.cpp +0 -4
  245. metadata +20 -675
  246. data/dev/websocketpp.patch +0 -39
  247. data/src/agent/Core/AdminPanelConnector.h +0 -680
  248. data/src/cxx_supportlib/DataStructures/HashMap.h +0 -60
  249. data/src/cxx_supportlib/FileTools/LargeFiles.cpp +0 -41
  250. data/src/cxx_supportlib/FileTools/LargeFiles.h +0 -43
  251. data/src/cxx_supportlib/WebSocketCommandReverseServer.h +0 -975
  252. data/src/cxx_supportlib/oxt/detail/spin_lock_darwin.hpp +0 -75
  253. data/src/cxx_supportlib/oxt/detail/spin_lock_gcc_x86.hpp +0 -85
  254. data/src/cxx_supportlib/oxt/detail/spin_lock_portable.hpp +0 -38
  255. data/src/cxx_supportlib/oxt/detail/spin_lock_pthreads.hpp +0 -111
  256. data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_executor.hpp +0 -338
  257. data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_handler.hpp +0 -824
  258. data/src/cxx_supportlib/vendor-modified/boost/asio/any_io_executor.hpp +0 -353
  259. data/src/cxx_supportlib/vendor-modified/boost/asio/append.hpp +0 -67
  260. data/src/cxx_supportlib/vendor-modified/boost/asio/as_tuple.hpp +0 -154
  261. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_allocator.hpp +0 -216
  262. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_cancellation_slot.hpp +0 -223
  263. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_executor.hpp +0 -237
  264. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_immediate_executor.hpp +0 -283
  265. data/src/cxx_supportlib/vendor-modified/boost/asio/associator.hpp +0 -37
  266. data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +0 -950
  267. data/src/cxx_supportlib/vendor-modified/boost/asio/awaitable.hpp +0 -144
  268. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +0 -1364
  269. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +0 -712
  270. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_file.hpp +0 -826
  271. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_io_object.hpp +0 -288
  272. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_random_access_file.hpp +0 -691
  273. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +0 -1358
  274. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_readable_pipe.hpp +0 -628
  275. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +0 -825
  276. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_serial_port.hpp +0 -989
  277. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_signal_set.hpp +0 -650
  278. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +0 -1938
  279. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +0 -2710
  280. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_iostream.hpp +0 -333
  281. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_streambuf.hpp +0 -644
  282. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_file.hpp +0 -746
  283. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +0 -1165
  284. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf.hpp +0 -452
  285. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf_fwd.hpp +0 -38
  286. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +0 -826
  287. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_writable_pipe.hpp +0 -624
  288. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_allocator.hpp +0 -598
  289. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +0 -615
  290. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +0 -666
  291. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_immediate_executor.hpp +0 -618
  292. data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +0 -2755
  293. data/src/cxx_supportlib/vendor-modified/boost/asio/buffer_registration.hpp +0 -320
  294. data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream.hpp +0 -275
  295. data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream_fwd.hpp +0 -27
  296. data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream.hpp +0 -294
  297. data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream_fwd.hpp +0 -27
  298. data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream.hpp +0 -267
  299. data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream_fwd.hpp +0 -27
  300. data/src/cxx_supportlib/vendor-modified/boost/asio/buffers_iterator.hpp +0 -523
  301. data/src/cxx_supportlib/vendor-modified/boost/asio/cancel_after.hpp +0 -303
  302. data/src/cxx_supportlib/vendor-modified/boost/asio/cancel_at.hpp +0 -296
  303. data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_signal.hpp +0 -247
  304. data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_state.hpp +0 -237
  305. data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_type.hpp +0 -159
  306. data/src/cxx_supportlib/vendor-modified/boost/asio/co_composed.hpp +0 -1323
  307. data/src/cxx_supportlib/vendor-modified/boost/asio/co_spawn.hpp +0 -525
  308. data/src/cxx_supportlib/vendor-modified/boost/asio/completion_condition.hpp +0 -269
  309. data/src/cxx_supportlib/vendor-modified/boost/asio/compose.hpp +0 -130
  310. data/src/cxx_supportlib/vendor-modified/boost/asio/composed.hpp +0 -415
  311. data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +0 -1348
  312. data/src/cxx_supportlib/vendor-modified/boost/asio/connect_pipe.hpp +0 -85
  313. data/src/cxx_supportlib/vendor-modified/boost/asio/consign.hpp +0 -77
  314. data/src/cxx_supportlib/vendor-modified/boost/asio/coroutine.hpp +0 -330
  315. data/src/cxx_supportlib/vendor-modified/boost/asio/deadline_timer.hpp +0 -40
  316. data/src/cxx_supportlib/vendor-modified/boost/asio/default_completion_token.hpp +0 -91
  317. data/src/cxx_supportlib/vendor-modified/boost/asio/defer.hpp +0 -220
  318. data/src/cxx_supportlib/vendor-modified/boost/asio/deferred.hpp +0 -721
  319. data/src/cxx_supportlib/vendor-modified/boost/asio/detached.hpp +0 -107
  320. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array.hpp +0 -32
  321. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array_fwd.hpp +0 -32
  322. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/assert.hpp +0 -32
  323. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/atomic_count.hpp +0 -61
  324. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_cancellation_state.hpp +0 -166
  325. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_completion_cond.hpp +0 -71
  326. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bind_handler.hpp +0 -713
  327. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/blocking_executor_op.hpp +0 -109
  328. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffer_resize_guard.hpp +0 -68
  329. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffer_sequence_adapter.hpp +0 -839
  330. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffered_stream_storage.hpp +0 -128
  331. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/call_stack.hpp +0 -127
  332. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono.hpp +0 -47
  333. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono_time_traits.hpp +0 -192
  334. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/completion_handler.hpp +0 -90
  335. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/completion_message.hpp +0 -129
  336. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/completion_payload.hpp +0 -222
  337. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/completion_payload_handler.hpp +0 -81
  338. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/composed_work.hpp +0 -254
  339. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/concurrency_hint.hpp +0 -94
  340. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_event.hpp +0 -122
  341. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_mutex.hpp +0 -151
  342. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +0 -1413
  343. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/consuming_buffers.hpp +0 -445
  344. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstddef.hpp +0 -29
  345. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstdint.hpp +0 -42
  346. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/date_time_fwd.hpp +0 -34
  347. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/deadline_timer_service.hpp +0 -341
  348. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dependent_type.hpp +0 -38
  349. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_ops.hpp +0 -181
  350. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_read_op.hpp +0 -190
  351. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_write_op.hpp +0 -189
  352. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dev_poll_reactor.hpp +0 -249
  353. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/epoll_reactor.hpp +0 -297
  354. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/event.hpp +0 -48
  355. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/eventfd_select_interrupter.hpp +0 -85
  356. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/exception.hpp +0 -31
  357. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_function.hpp +0 -154
  358. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_op.hpp +0 -86
  359. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/fd_set_adapter.hpp +0 -41
  360. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/fenced_block.hpp +0 -42
  361. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/functional.hpp +0 -35
  362. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/future.hpp +0 -32
  363. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/global.hpp +0 -52
  364. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +0 -123
  365. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_cont_helpers.hpp +0 -45
  366. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_tracking.hpp +0 -268
  367. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_type_requirements.hpp +0 -555
  368. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_work.hpp +0 -513
  369. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/hash_map.hpp +0 -333
  370. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/buffer_sequence_adapter.ipp +0 -120
  371. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/descriptor_ops.ipp +0 -996
  372. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.hpp +0 -113
  373. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +0 -471
  374. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.hpp +0 -111
  375. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.ipp +0 -828
  376. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/eventfd_select_interrupter.ipp +0 -173
  377. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/handler_tracking.ipp +0 -400
  378. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_descriptor_service.ipp +0 -207
  379. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_file_service.ipp +0 -142
  380. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_service.hpp +0 -114
  381. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_service.ipp +0 -916
  382. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_socket_service_base.ipp +0 -251
  383. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.hpp +0 -115
  384. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.ipp +0 -610
  385. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/null_event.ipp +0 -76
  386. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/pipe_select_interrupter.ipp +0 -131
  387. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_event.ipp +0 -65
  388. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_mutex.ipp +0 -48
  389. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_serial_port_service.ipp +0 -170
  390. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_thread.ipp +0 -86
  391. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_tss_ptr.ipp +0 -48
  392. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_descriptor_service.ipp +0 -234
  393. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_socket_service_base.ipp +0 -314
  394. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/resolver_service_base.ipp +0 -160
  395. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/scheduler.ipp +0 -677
  396. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.hpp +0 -126
  397. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.ipp +0 -402
  398. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.hpp +0 -95
  399. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.ipp +0 -199
  400. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/signal_set_service.ipp +0 -828
  401. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +0 -4046
  402. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_select_interrupter.ipp +0 -187
  403. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.hpp +0 -348
  404. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.ipp +0 -160
  405. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.hpp +0 -88
  406. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.ipp +0 -204
  407. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/thread_context.ipp +0 -37
  408. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/throw_error.ipp +0 -51
  409. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_ptime.ipp +0 -99
  410. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_set.ipp +0 -103
  411. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_defer.hpp +0 -209
  412. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_dispatch.hpp +0 -195
  413. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_post.hpp +0 -209
  414. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiation_base.hpp +0 -64
  415. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_control.hpp +0 -86
  416. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_object_impl.hpp +0 -179
  417. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_at_op.hpp +0 -197
  418. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_op.hpp +0 -192
  419. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_service.hpp +0 -689
  420. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_at_op.hpp +0 -191
  421. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_op.hpp +0 -187
  422. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_file_service.hpp +0 -263
  423. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_null_buffers_op.hpp +0 -116
  424. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_operation.hpp +0 -86
  425. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_service.hpp +0 -321
  426. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_accept_op.hpp +0 -282
  427. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_connect_op.hpp +0 -142
  428. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recv_op.hpp +0 -207
  429. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvfrom_op.hpp +0 -208
  430. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvmsg_op.hpp +0 -194
  431. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_send_op.hpp +0 -193
  432. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_sendto_op.hpp +0 -196
  433. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_service.hpp +0 -631
  434. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_service_base.hpp +0 -665
  435. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_wait_op.hpp +0 -114
  436. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_buffer_sequence.hpp +0 -298
  437. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_executor.hpp +0 -128
  438. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/keyword_tss_ptr.hpp +0 -72
  439. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/kqueue_reactor.hpp +0 -273
  440. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/limits.hpp +0 -21
  441. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/local_free_on_block_exit.hpp +0 -61
  442. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +0 -128
  443. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/mutex.hpp +0 -48
  444. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/non_const_lvalue.hpp +0 -45
  445. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/noncopyable.hpp +0 -45
  446. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_event.hpp +0 -108
  447. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_fenced_block.hpp +0 -49
  448. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_global.hpp +0 -61
  449. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_mutex.hpp +0 -62
  450. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_reactor.hpp +0 -85
  451. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_signal_blocker.hpp +0 -71
  452. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_socket_service.hpp +0 -521
  453. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_static_mutex.hpp +0 -62
  454. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_thread.hpp +0 -69
  455. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_tss_ptr.hpp +0 -70
  456. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/object_pool.hpp +0 -173
  457. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/op_queue.hpp +0 -164
  458. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/operation.hpp +0 -40
  459. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pipe_select_interrupter.hpp +0 -91
  460. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pop_options.hpp +0 -157
  461. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_event.hpp +0 -177
  462. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_fd_set_adapter.hpp +0 -120
  463. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_global.hpp +0 -82
  464. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_mutex.hpp +0 -78
  465. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_serial_port_service.hpp +0 -251
  466. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_signal_blocker.hpp +0 -87
  467. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_static_mutex.hpp +0 -66
  468. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_thread.hpp +0 -111
  469. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_tss_ptr.hpp +0 -81
  470. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/push_options.hpp +0 -228
  471. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_descriptor_service.hpp +0 -572
  472. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_null_buffers_op.hpp +0 -133
  473. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_accept_op.hpp +0 -325
  474. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_connect_op.hpp +0 -164
  475. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recv_op.hpp +0 -199
  476. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvfrom_op.hpp +0 -205
  477. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvmsg_op.hpp +0 -186
  478. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_send_op.hpp +0 -202
  479. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_sendto_op.hpp +0 -196
  480. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +0 -635
  481. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +0 -757
  482. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_wait_op.hpp +0 -133
  483. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor.hpp +0 -56
  484. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op.hpp +0 -73
  485. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op_queue.hpp +0 -214
  486. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/recycling_allocator.hpp +0 -116
  487. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/regex_fwd.hpp +0 -35
  488. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_endpoint_op.hpp +0 -142
  489. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_op.hpp +0 -47
  490. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_query_op.hpp +0 -152
  491. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service.hpp +0 -149
  492. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service_base.hpp +0 -160
  493. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler.hpp +0 -243
  494. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_operation.hpp +0 -80
  495. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_task.hpp +0 -51
  496. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_thread_info.hpp +0 -42
  497. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scoped_lock.hpp +0 -103
  498. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scoped_ptr.hpp +0 -89
  499. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_interrupter.hpp +0 -48
  500. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_reactor.hpp +0 -293
  501. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/service_registry.hpp +0 -165
  502. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_blocker.hpp +0 -46
  503. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_handler.hpp +0 -92
  504. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_init.hpp +0 -49
  505. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_op.hpp +0 -55
  506. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_set_service.hpp +0 -294
  507. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_holder.hpp +0 -100
  508. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_ops.hpp +0 -377
  509. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_option.hpp +0 -318
  510. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_select_interrupter.hpp +0 -93
  511. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_types.hpp +0 -429
  512. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/source_location.hpp +0 -47
  513. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/static_mutex.hpp +0 -52
  514. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_event.hpp +0 -185
  515. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_fenced_block.hpp +0 -59
  516. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_global.hpp +0 -67
  517. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_mutex.hpp +0 -70
  518. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_static_mutex.hpp +0 -78
  519. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_thread.hpp +0 -68
  520. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_executor_service.hpp +0 -175
  521. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_service.hpp +0 -146
  522. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/string_view.hpp +0 -49
  523. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread.hpp +0 -60
  524. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_context.hpp +0 -53
  525. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_group.hpp +0 -101
  526. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_info_base.hpp +0 -262
  527. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/throw_error.hpp +0 -64
  528. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/throw_exception.hpp +0 -57
  529. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timed_cancel_op.hpp +0 -363
  530. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue.hpp +0 -391
  531. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_base.hpp +0 -70
  532. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_ptime.hpp +0 -105
  533. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_set.hpp +0 -68
  534. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler.hpp +0 -37
  535. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler_fwd.hpp +0 -44
  536. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/tss_ptr.hpp +0 -71
  537. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/type_traits.hpp +0 -180
  538. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/utility.hpp +0 -85
  539. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_handler.hpp +0 -92
  540. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_op.hpp +0 -51
  541. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/winsock_init.hpp +0 -130
  542. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/work_dispatcher.hpp +0 -145
  543. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wrapped_handler.hpp +0 -197
  544. data/src/cxx_supportlib/vendor-modified/boost/asio/dispatch.hpp +0 -199
  545. data/src/cxx_supportlib/vendor-modified/boost/asio/error.hpp +0 -390
  546. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/allocator.hpp +0 -280
  547. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/any_executor.hpp +0 -1935
  548. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bad_executor.hpp +0 -48
  549. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking.hpp +0 -1362
  550. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking_adaptation.hpp +0 -1082
  551. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context.hpp +0 -193
  552. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context_as.hpp +0 -192
  553. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/executor.hpp +0 -118
  554. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/impl/bad_executor.ipp +0 -42
  555. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/invocable_archetype.hpp +0 -45
  556. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/mapping.hpp +0 -1004
  557. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/occupancy.hpp +0 -186
  558. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/outstanding_work.hpp +0 -755
  559. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/prefer_only.hpp +0 -330
  560. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/relationship.hpp +0 -753
  561. data/src/cxx_supportlib/vendor-modified/boost/asio/execution.hpp +0 -33
  562. data/src/cxx_supportlib/vendor-modified/boost/asio/execution_context.hpp +0 -390
  563. data/src/cxx_supportlib/vendor-modified/boost/asio/executor.hpp +0 -365
  564. data/src/cxx_supportlib/vendor-modified/boost/asio/executor_work_guard.hpp +0 -364
  565. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/append.hpp +0 -38
  566. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_single.hpp +0 -134
  567. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_tuple.hpp +0 -38
  568. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/awaitable_operators.hpp +0 -538
  569. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_channel.hpp +0 -516
  570. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_concurrent_channel.hpp +0 -516
  571. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/cancellation_condition.hpp +0 -154
  572. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel.hpp +0 -72
  573. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_error.hpp +0 -88
  574. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_traits.hpp +0 -303
  575. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_composed.hpp +0 -35
  576. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_spawn.hpp +0 -189
  577. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/concurrent_channel.hpp +0 -72
  578. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro.hpp +0 -295
  579. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro_traits.hpp +0 -230
  580. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/deferred.hpp +0 -38
  581. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_operation.hpp +0 -363
  582. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_receive_op.hpp +0 -128
  583. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_functions.hpp +0 -202
  584. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_op.hpp +0 -149
  585. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_service.hpp +0 -681
  586. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_completion_handler.hpp +0 -171
  587. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_promise_allocator.hpp +0 -142
  588. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/has_signature.hpp +0 -56
  589. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/impl/channel_service.hpp +0 -625
  590. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/partial_promise.hpp +0 -199
  591. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +0 -183
  592. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/channel_error.ipp +0 -63
  593. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/coro.hpp +0 -1224
  594. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/parallel_group.hpp +0 -790
  595. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/promise.hpp +0 -257
  596. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_coro.hpp +0 -216
  597. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_promise.hpp +0 -68
  598. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +0 -457
  599. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/prepend.hpp +0 -38
  600. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/promise.hpp +0 -226
  601. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +0 -191
  602. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_promise.hpp +0 -113
  603. data/src/cxx_supportlib/vendor-modified/boost/asio/file_base.hpp +0 -168
  604. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/basic_endpoint.hpp +0 -191
  605. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/datagram_protocol.hpp +0 -125
  606. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail/endpoint.hpp +0 -135
  607. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail/impl/endpoint.ipp +0 -112
  608. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/raw_protocol.hpp +0 -123
  609. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/seq_packet_protocol.hpp +0 -124
  610. data/src/cxx_supportlib/vendor-modified/boost/asio/generic/stream_protocol.hpp +0 -129
  611. data/src/cxx_supportlib/vendor-modified/boost/asio/handler_continuation_hook.hpp +0 -56
  612. data/src/cxx_supportlib/vendor-modified/boost/asio/high_resolution_timer.hpp +0 -41
  613. data/src/cxx_supportlib/vendor-modified/boost/asio/immediate.hpp +0 -144
  614. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_completion_executor.ipp +0 -128
  615. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_io_executor.ipp +0 -136
  616. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/append.hpp +0 -171
  617. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/as_tuple.hpp +0 -278
  618. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/awaitable.hpp +0 -1198
  619. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_read_stream.hpp +0 -406
  620. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_write_stream.hpp +0 -386
  621. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancel_after.hpp +0 -270
  622. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancel_at.hpp +0 -270
  623. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancellation_signal.ipp +0 -98
  624. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +0 -459
  625. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +0 -705
  626. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect_pipe.hpp +0 -75
  627. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect_pipe.ipp +0 -151
  628. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/consign.hpp +0 -146
  629. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/deferred.hpp +0 -149
  630. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/detached.hpp +0 -79
  631. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/error.ipp +0 -130
  632. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.hpp +0 -79
  633. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.ipp +0 -84
  634. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.hpp +0 -319
  635. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.ipp +0 -45
  636. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.hpp +0 -435
  637. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.ipp +0 -178
  638. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/multiple_exceptions.ipp +0 -47
  639. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/prepend.hpp +0 -172
  640. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +0 -904
  641. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +0 -564
  642. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +0 -2670
  643. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +0 -289
  644. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/serial_port_base.hpp +0 -61
  645. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/serial_port_base.ipp +0 -556
  646. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +0 -1402
  647. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/src.hpp +0 -93
  648. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.hpp +0 -36
  649. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.ipp +0 -94
  650. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_executor.hpp +0 -181
  651. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.hpp +0 -279
  652. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.ipp +0 -144
  653. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_awaitable.hpp +0 -303
  654. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_future.hpp +0 -709
  655. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +0 -782
  656. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +0 -482
  657. data/src/cxx_supportlib/vendor-modified/boost/asio/io_context.hpp +0 -1507
  658. data/src/cxx_supportlib/vendor-modified/boost/asio/io_context_strand.hpp +0 -398
  659. data/src/cxx_supportlib/vendor-modified/boost/asio/io_service.hpp +0 -35
  660. data/src/cxx_supportlib/vendor-modified/boost/asio/io_service_strand.hpp +0 -20
  661. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address.hpp +0 -283
  662. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4.hpp +0 -423
  663. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_iterator.hpp +0 -158
  664. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_range.hpp +0 -130
  665. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6.hpp +0 -409
  666. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_iterator.hpp +0 -180
  667. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_range.hpp +0 -126
  668. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/bad_address_cast.hpp +0 -65
  669. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_endpoint.hpp +0 -284
  670. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +0 -1114
  671. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_entry.hpp +0 -115
  672. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_iterator.hpp +0 -190
  673. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_query.hpp +0 -262
  674. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_results.hpp +0 -309
  675. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/endpoint.hpp +0 -143
  676. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/impl/endpoint.ipp +0 -197
  677. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/socket_option.hpp +0 -568
  678. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/host_name.hpp +0 -44
  679. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/icmp.hpp +0 -117
  680. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.hpp +0 -69
  681. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.ipp +0 -237
  682. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.hpp +0 -69
  683. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.ipp +0 -208
  684. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.hpp +0 -69
  685. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.ipp +0 -344
  686. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/basic_endpoint.hpp +0 -45
  687. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/host_name.ipp +0 -56
  688. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.hpp +0 -56
  689. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.ipp +0 -220
  690. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.hpp +0 -55
  691. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.ipp +0 -189
  692. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/multicast.hpp +0 -193
  693. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v4.hpp +0 -259
  694. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v6.hpp +0 -233
  695. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_base.hpp +0 -131
  696. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_query_base.hpp +0 -45
  697. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/tcp.hpp +0 -157
  698. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/udp.hpp +0 -113
  699. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/unicast.hpp +0 -72
  700. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/v6_only.hpp +0 -71
  701. data/src/cxx_supportlib/vendor-modified/boost/asio/is_applicable_property.hpp +0 -63
  702. data/src/cxx_supportlib/vendor-modified/boost/asio/is_contiguous_iterator.hpp +0 -47
  703. data/src/cxx_supportlib/vendor-modified/boost/asio/is_executor.hpp +0 -48
  704. data/src/cxx_supportlib/vendor-modified/boost/asio/is_read_buffered.hpp +0 -61
  705. data/src/cxx_supportlib/vendor-modified/boost/asio/is_write_buffered.hpp +0 -61
  706. data/src/cxx_supportlib/vendor-modified/boost/asio/local/basic_endpoint.hpp +0 -245
  707. data/src/cxx_supportlib/vendor-modified/boost/asio/local/connect_pair.hpp +0 -103
  708. data/src/cxx_supportlib/vendor-modified/boost/asio/local/datagram_protocol.hpp +0 -82
  709. data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/endpoint.hpp +0 -141
  710. data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/impl/endpoint.ipp +0 -133
  711. data/src/cxx_supportlib/vendor-modified/boost/asio/local/seq_packet_protocol.hpp +0 -86
  712. data/src/cxx_supportlib/vendor-modified/boost/asio/local/stream_protocol.hpp +0 -92
  713. data/src/cxx_supportlib/vendor-modified/boost/asio/multiple_exceptions.hpp +0 -54
  714. data/src/cxx_supportlib/vendor-modified/boost/asio/packaged_task.hpp +0 -68
  715. data/src/cxx_supportlib/vendor-modified/boost/asio/placeholders.hpp +0 -83
  716. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +0 -775
  717. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +0 -561
  718. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor.hpp +0 -39
  719. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor_base.hpp +0 -92
  720. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/stream_descriptor.hpp +0 -39
  721. data/src/cxx_supportlib/vendor-modified/boost/asio/post.hpp +0 -215
  722. data/src/cxx_supportlib/vendor-modified/boost/asio/prefer.hpp +0 -581
  723. data/src/cxx_supportlib/vendor-modified/boost/asio/prepend.hpp +0 -68
  724. data/src/cxx_supportlib/vendor-modified/boost/asio/query.hpp +0 -315
  725. data/src/cxx_supportlib/vendor-modified/boost/asio/random_access_file.hpp +0 -37
  726. data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +0 -1549
  727. data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +0 -830
  728. data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +0 -3204
  729. data/src/cxx_supportlib/vendor-modified/boost/asio/readable_pipe.hpp +0 -37
  730. data/src/cxx_supportlib/vendor-modified/boost/asio/recycling_allocator.hpp +0 -140
  731. data/src/cxx_supportlib/vendor-modified/boost/asio/redirect_error.hpp +0 -106
  732. data/src/cxx_supportlib/vendor-modified/boost/asio/registered_buffer.hpp +0 -346
  733. data/src/cxx_supportlib/vendor-modified/boost/asio/require.hpp +0 -437
  734. data/src/cxx_supportlib/vendor-modified/boost/asio/require_concept.hpp +0 -347
  735. data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port.hpp +0 -38
  736. data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port_base.hpp +0 -169
  737. data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set.hpp +0 -30
  738. data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set_base.hpp +0 -173
  739. data/src/cxx_supportlib/vendor-modified/boost/asio/socket_base.hpp +0 -561
  740. data/src/cxx_supportlib/vendor-modified/boost/asio/spawn.hpp +0 -873
  741. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context.hpp +0 -764
  742. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context_base.hpp +0 -211
  743. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/buffered_handshake_op.hpp +0 -121
  744. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/engine.hpp +0 -171
  745. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/handshake_op.hpp +0 -69
  746. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/engine.ipp +0 -379
  747. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/openssl_init.ipp +0 -171
  748. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/io.hpp +0 -378
  749. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_init.hpp +0 -103
  750. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_types.hpp +0 -34
  751. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/password_callback.hpp +0 -68
  752. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/read_op.hpp +0 -74
  753. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/shutdown_op.hpp +0 -71
  754. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/stream_core.hpp +0 -219
  755. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/verify_callback.hpp +0 -64
  756. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/write_op.hpp +0 -78
  757. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/error.hpp +0 -129
  758. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/host_name_verification.hpp +0 -92
  759. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.hpp +0 -69
  760. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +0 -1324
  761. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/error.ipp +0 -126
  762. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/host_name_verification.ipp +0 -75
  763. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/rfc2818_verification.ipp +0 -166
  764. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/src.hpp +0 -29
  765. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/rfc2818_verification.hpp +0 -100
  766. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +0 -1044
  767. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream_base.hpp +0 -54
  768. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_context.hpp +0 -69
  769. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_mode.hpp +0 -65
  770. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl.hpp +0 -28
  771. data/src/cxx_supportlib/vendor-modified/boost/asio/static_thread_pool.hpp +0 -33
  772. data/src/cxx_supportlib/vendor-modified/boost/asio/steady_timer.hpp +0 -39
  773. data/src/cxx_supportlib/vendor-modified/boost/asio/strand.hpp +0 -559
  774. data/src/cxx_supportlib/vendor-modified/boost/asio/stream_file.hpp +0 -37
  775. data/src/cxx_supportlib/vendor-modified/boost/asio/streambuf.hpp +0 -35
  776. data/src/cxx_supportlib/vendor-modified/boost/asio/system_context.hpp +0 -92
  777. data/src/cxx_supportlib/vendor-modified/boost/asio/system_executor.hpp +0 -673
  778. data/src/cxx_supportlib/vendor-modified/boost/asio/system_timer.hpp +0 -39
  779. data/src/cxx_supportlib/vendor-modified/boost/asio/this_coro.hpp +0 -269
  780. data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +0 -965
  781. data/src/cxx_supportlib/vendor-modified/boost/asio/time_traits.hpp +0 -88
  782. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/equality_comparable.hpp +0 -102
  783. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/execute_member.hpp +0 -106
  784. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/prefer_free.hpp +0 -106
  785. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/prefer_member.hpp +0 -106
  786. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_free.hpp +0 -106
  787. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_member.hpp +0 -106
  788. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_static_constexpr_member.hpp +0 -103
  789. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_concept_free.hpp +0 -106
  790. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_concept_member.hpp +0 -106
  791. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_free.hpp +0 -106
  792. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_member.hpp +0 -106
  793. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_query.hpp +0 -104
  794. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_require.hpp +0 -117
  795. data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_require_concept.hpp +0 -118
  796. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/buffer.hpp +0 -24
  797. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/executor.hpp +0 -35
  798. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/internet.hpp +0 -40
  799. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/io_context.hpp +0 -20
  800. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/net.hpp +0 -26
  801. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/netfwd.hpp +0 -238
  802. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/socket.hpp +0 -27
  803. data/src/cxx_supportlib/vendor-modified/boost/asio/ts/timer.hpp +0 -26
  804. data/src/cxx_supportlib/vendor-modified/boost/asio/unyield.hpp +0 -21
  805. data/src/cxx_supportlib/vendor-modified/boost/asio/use_awaitable.hpp +0 -163
  806. data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +0 -161
  807. data/src/cxx_supportlib/vendor-modified/boost/asio/uses_executor.hpp +0 -69
  808. data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +0 -23
  809. data/src/cxx_supportlib/vendor-modified/boost/asio/wait_traits.hpp +0 -58
  810. data/src/cxx_supportlib/vendor-modified/boost/asio/writable_pipe.hpp +0 -37
  811. data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +0 -1528
  812. data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +0 -843
  813. data/src/cxx_supportlib/vendor-modified/boost/asio/yield.hpp +0 -23
  814. data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +0 -195
  815. data/src/cxx_supportlib/vendor-modified/boost/optional/detail/old_optional_implementation.hpp +0 -1059
  816. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/operator_bool.hpp +0 -64
  817. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/requires_cxx11.hpp +0 -23
  818. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_forward.hpp +0 -52
  819. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_nullptr_t.hpp +0 -45
  820. data/src/cxx_supportlib/vendor-modified/websocketpp/COPYING +0 -145
  821. data/src/cxx_supportlib/vendor-modified/websocketpp/changelog.md +0 -444
  822. data/src/cxx_supportlib/vendor-modified/websocketpp/readme.md +0 -49
  823. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/base64/base64.hpp +0 -178
  824. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/client.hpp +0 -33
  825. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/close.hpp +0 -353
  826. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/asio.hpp +0 -141
  827. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/asio_ssl.hpp +0 -39
  828. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/chrono.hpp +0 -68
  829. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/connection_hdl.hpp +0 -52
  830. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/cpp11.hpp +0 -162
  831. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/functional.hpp +0 -100
  832. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/md5.hpp +0 -448
  833. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/memory.hpp +0 -88
  834. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/network.hpp +0 -106
  835. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/platforms.hpp +0 -46
  836. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/random.hpp +0 -82
  837. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/regex.hpp +0 -59
  838. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/stdint.hpp +0 -73
  839. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/system_error.hpp +0 -84
  840. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/thread.hpp +0 -88
  841. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/time.hpp +0 -56
  842. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/type_traits.hpp +0 -65
  843. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/concurrency/basic.hpp +0 -46
  844. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/concurrency/none.hpp +0 -80
  845. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/asio.hpp +0 -77
  846. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/asio_client.hpp +0 -77
  847. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/asio_no_tls.hpp +0 -73
  848. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/asio_no_tls_client.hpp +0 -73
  849. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/boost_config.hpp +0 -72
  850. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/core.hpp +0 -297
  851. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/core_client.hpp +0 -294
  852. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/debug.hpp +0 -286
  853. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/debug_asio.hpp +0 -77
  854. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/debug_asio_no_tls.hpp +0 -73
  855. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/minimal_client.hpp +0 -72
  856. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/minimal_server.hpp +0 -312
  857. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/connection.hpp +0 -1642
  858. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/connection_base.hpp +0 -38
  859. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/endpoint.hpp +0 -700
  860. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/endpoint_base.hpp +0 -38
  861. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/error.hpp +0 -277
  862. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/extensions/extension.hpp +0 -102
  863. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/extensions/permessage_deflate/disabled.hpp +0 -129
  864. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/extensions/permessage_deflate/enabled.hpp +0 -817
  865. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/frame.hpp +0 -853
  866. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/http/constants.hpp +0 -308
  867. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/http/impl/parser.hpp +0 -200
  868. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/http/impl/request.hpp +0 -191
  869. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/http/impl/response.hpp +0 -266
  870. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/http/parser.hpp +0 -629
  871. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/http/request.hpp +0 -124
  872. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/http/response.hpp +0 -188
  873. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/impl/connection_impl.hpp +0 -2375
  874. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/impl/endpoint_impl.hpp +0 -269
  875. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/impl/utilities_impl.hpp +0 -87
  876. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/logger/basic.hpp +0 -199
  877. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/logger/levels.hpp +0 -203
  878. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/logger/stub.hpp +0 -119
  879. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/logger/syslog.hpp +0 -146
  880. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/message_buffer/alloc.hpp +0 -105
  881. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/message_buffer/message.hpp +0 -340
  882. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/message_buffer/pool.hpp +0 -229
  883. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/processors/base.hpp +0 -299
  884. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/processors/hybi00.hpp +0 -462
  885. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/processors/hybi07.hpp +0 -78
  886. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/processors/hybi08.hpp +0 -83
  887. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/processors/hybi13.hpp +0 -1072
  888. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/processors/processor.hpp +0 -407
  889. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/random/none.hpp +0 -60
  890. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/random/random_device.hpp +0 -80
  891. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/roles/client_endpoint.hpp +0 -173
  892. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/roles/server_endpoint.hpp +0 -195
  893. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/server.hpp +0 -33
  894. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/sha1/sha1.hpp +0 -189
  895. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/asio/base.hpp +0 -232
  896. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/asio/connection.hpp +0 -1197
  897. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/asio/endpoint.hpp +0 -1182
  898. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/asio/security/base.hpp +0 -159
  899. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/asio/security/none.hpp +0 -372
  900. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/asio/security/tls.hpp +0 -474
  901. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/base/connection.hpp +0 -238
  902. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/base/endpoint.hpp +0 -77
  903. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/debug/base.hpp +0 -104
  904. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/debug/connection.hpp +0 -412
  905. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/debug/endpoint.hpp +0 -140
  906. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/iostream/base.hpp +0 -133
  907. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/iostream/connection.hpp +0 -714
  908. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/iostream/endpoint.hpp +0 -222
  909. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/stub/base.hpp +0 -95
  910. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/stub/connection.hpp +0 -286
  911. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/stub/endpoint.hpp +0 -140
  912. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/uri.hpp +0 -356
  913. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/utf8_validator.hpp +0 -154
  914. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/utilities.hpp +0 -180
  915. data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/version.hpp +0 -61
@@ -1,1348 +0,0 @@
1
- //
2
- // connect.hpp
3
- // ~~~~~~~~~~~
4
- //
5
- // Copyright (c) 2003-2024 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6
- //
7
- // Distributed under the Boost Software License, Version 1.0. (See accompanying
8
- // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9
- //
10
-
11
- #ifndef BOOST_ASIO_CONNECT_HPP
12
- #define BOOST_ASIO_CONNECT_HPP
13
-
14
- #if defined(_MSC_VER) && (_MSC_VER >= 1200)
15
- # pragma once
16
- #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17
-
18
- #include <boost/asio/detail/config.hpp>
19
- #include <boost/asio/async_result.hpp>
20
- #include <boost/asio/basic_socket.hpp>
21
- #include <boost/asio/detail/type_traits.hpp>
22
- #include <boost/asio/error.hpp>
23
-
24
- #include <boost/asio/detail/push_options.hpp>
25
-
26
- namespace boost {
27
- namespace asio {
28
-
29
- namespace detail
30
- {
31
- struct default_connect_condition;
32
- template <typename, typename> class initiate_async_range_connect;
33
- template <typename, typename> class initiate_async_iterator_connect;
34
-
35
- template <typename T, typename = void, typename = void>
36
- struct is_endpoint_sequence_helper : false_type
37
- {
38
- };
39
-
40
- template <typename T>
41
- struct is_endpoint_sequence_helper<T,
42
- void_t<
43
- decltype(declval<T>().begin())
44
- >,
45
- void_t<
46
- decltype(declval<T>().end())
47
- >
48
- > : true_type
49
- {
50
- };
51
-
52
- template <typename T, typename Iterator, typename = void>
53
- struct is_connect_condition_helper : false_type
54
- {
55
- };
56
-
57
- template <typename T, typename Iterator>
58
- struct is_connect_condition_helper<T, Iterator,
59
- enable_if_t<
60
- is_same<
61
- result_of_t<T(boost::system::error_code, Iterator)>,
62
- Iterator
63
- >::value
64
- >
65
- > : true_type
66
- {
67
- };
68
-
69
- template <typename T, typename Iterator>
70
- struct is_connect_condition_helper<T, Iterator,
71
- enable_if_t<
72
- is_same<
73
- result_of_t<T(boost::system::error_code,
74
- decltype(*declval<Iterator>()))>,
75
- bool
76
- >::value
77
- >
78
- > : true_type
79
- {
80
- };
81
-
82
- struct default_connect_condition
83
- {
84
- template <typename Endpoint>
85
- bool operator()(const boost::system::error_code&, const Endpoint&)
86
- {
87
- return true;
88
- }
89
- };
90
- } // namespace detail
91
-
92
- #if defined(GENERATING_DOCUMENTATION)
93
-
94
- /// Type trait used to determine whether a type is an endpoint sequence that can
95
- /// be used with with @c connect and @c async_connect.
96
- template <typename T>
97
- struct is_endpoint_sequence
98
- {
99
- /// The value member is true if the type may be used as an endpoint sequence.
100
- static const bool value = automatically_determined;
101
- };
102
-
103
- /// Trait for determining whether a function object is a connect condition that
104
- /// can be used with @c connect and @c async_connect.
105
- template <typename T, typename Iterator>
106
- struct is_connect_condition
107
- {
108
- /// The value member is true if the type may be used as a connect condition.
109
- static constexpr bool value = automatically_determined;
110
- };
111
-
112
- #else // defined(GENERATING_DOCUMENTATION)
113
-
114
- template <typename T>
115
- struct is_endpoint_sequence : detail::is_endpoint_sequence_helper<T>
116
- {
117
- };
118
-
119
- template <typename T, typename Iterator>
120
- struct is_connect_condition : detail::is_connect_condition_helper<T, Iterator>
121
- {
122
- };
123
-
124
- #endif // defined(GENERATING_DOCUMENTATION)
125
-
126
- /**
127
- * @defgroup connect boost::asio::connect
128
- *
129
- * @brief The @c connect function is a composed operation that establishes a
130
- * socket connection by trying each endpoint in a sequence.
131
- */
132
- /*@{*/
133
-
134
- /// Establishes a socket connection by trying each endpoint in a sequence.
135
- /**
136
- * This function attempts to connect a socket to one of a sequence of
137
- * endpoints. It does this by repeated calls to the socket's @c connect member
138
- * function, once for each endpoint in the sequence, until a connection is
139
- * successfully established.
140
- *
141
- * @param s The socket to be connected. If the socket is already open, it will
142
- * be closed.
143
- *
144
- * @param endpoints A sequence of endpoints.
145
- *
146
- * @returns The successfully connected endpoint.
147
- *
148
- * @throws boost::system::system_error Thrown on failure. If the sequence is
149
- * empty, the associated @c error_code is boost::asio::error::not_found.
150
- * Otherwise, contains the error from the last connection attempt.
151
- *
152
- * @par Example
153
- * @code tcp::resolver r(my_context);
154
- * tcp::resolver::query q("host", "service");
155
- * tcp::socket s(my_context);
156
- * boost::asio::connect(s, r.resolve(q)); @endcode
157
- */
158
- template <typename Protocol, typename Executor, typename EndpointSequence>
159
- typename Protocol::endpoint connect(basic_socket<Protocol, Executor>& s,
160
- const EndpointSequence& endpoints,
161
- constraint_t<
162
- is_endpoint_sequence<EndpointSequence>::value
163
- > = 0);
164
-
165
- /// Establishes a socket connection by trying each endpoint in a sequence.
166
- /**
167
- * This function attempts to connect a socket to one of a sequence of
168
- * endpoints. It does this by repeated calls to the socket's @c connect member
169
- * function, once for each endpoint in the sequence, until a connection is
170
- * successfully established.
171
- *
172
- * @param s The socket to be connected. If the socket is already open, it will
173
- * be closed.
174
- *
175
- * @param endpoints A sequence of endpoints.
176
- *
177
- * @param ec Set to indicate what error occurred, if any. If the sequence is
178
- * empty, set to boost::asio::error::not_found. Otherwise, contains the error
179
- * from the last connection attempt.
180
- *
181
- * @returns On success, the successfully connected endpoint. Otherwise, a
182
- * default-constructed endpoint.
183
- *
184
- * @par Example
185
- * @code tcp::resolver r(my_context);
186
- * tcp::resolver::query q("host", "service");
187
- * tcp::socket s(my_context);
188
- * boost::system::error_code ec;
189
- * boost::asio::connect(s, r.resolve(q), ec);
190
- * if (ec)
191
- * {
192
- * // An error occurred.
193
- * } @endcode
194
- */
195
- template <typename Protocol, typename Executor, typename EndpointSequence>
196
- typename Protocol::endpoint connect(basic_socket<Protocol, Executor>& s,
197
- const EndpointSequence& endpoints, boost::system::error_code& ec,
198
- constraint_t<
199
- is_endpoint_sequence<EndpointSequence>::value
200
- > = 0);
201
-
202
- #if !defined(BOOST_ASIO_NO_DEPRECATED)
203
- /// (Deprecated: Use range overload.) Establishes a socket connection by trying
204
- /// each endpoint in a sequence.
205
- /**
206
- * This function attempts to connect a socket to one of a sequence of
207
- * endpoints. It does this by repeated calls to the socket's @c connect member
208
- * function, once for each endpoint in the sequence, until a connection is
209
- * successfully established.
210
- *
211
- * @param s The socket to be connected. If the socket is already open, it will
212
- * be closed.
213
- *
214
- * @param begin An iterator pointing to the start of a sequence of endpoints.
215
- *
216
- * @returns On success, an iterator denoting the successfully connected
217
- * endpoint. Otherwise, the end iterator.
218
- *
219
- * @throws boost::system::system_error Thrown on failure. If the sequence is
220
- * empty, the associated @c error_code is boost::asio::error::not_found.
221
- * Otherwise, contains the error from the last connection attempt.
222
- *
223
- * @note This overload assumes that a default constructed object of type @c
224
- * Iterator represents the end of the sequence. This is a valid assumption for
225
- * iterator types such as @c boost::asio::ip::tcp::resolver::iterator.
226
- */
227
- template <typename Protocol, typename Executor, typename Iterator>
228
- Iterator connect(basic_socket<Protocol, Executor>& s, Iterator begin,
229
- constraint_t<
230
- !is_endpoint_sequence<Iterator>::value
231
- > = 0);
232
-
233
- /// (Deprecated: Use range overload.) Establishes a socket connection by trying
234
- /// each endpoint in a sequence.
235
- /**
236
- * This function attempts to connect a socket to one of a sequence of
237
- * endpoints. It does this by repeated calls to the socket's @c connect member
238
- * function, once for each endpoint in the sequence, until a connection is
239
- * successfully established.
240
- *
241
- * @param s The socket to be connected. If the socket is already open, it will
242
- * be closed.
243
- *
244
- * @param begin An iterator pointing to the start of a sequence of endpoints.
245
- *
246
- * @param ec Set to indicate what error occurred, if any. If the sequence is
247
- * empty, set to boost::asio::error::not_found. Otherwise, contains the error
248
- * from the last connection attempt.
249
- *
250
- * @returns On success, an iterator denoting the successfully connected
251
- * endpoint. Otherwise, the end iterator.
252
- *
253
- * @note This overload assumes that a default constructed object of type @c
254
- * Iterator represents the end of the sequence. This is a valid assumption for
255
- * iterator types such as @c boost::asio::ip::tcp::resolver::iterator.
256
- */
257
- template <typename Protocol, typename Executor, typename Iterator>
258
- Iterator connect(basic_socket<Protocol, Executor>& s,
259
- Iterator begin, boost::system::error_code& ec,
260
- constraint_t<
261
- !is_endpoint_sequence<Iterator>::value
262
- > = 0);
263
- #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
264
-
265
- /// Establishes a socket connection by trying each endpoint in a sequence.
266
- /**
267
- * This function attempts to connect a socket to one of a sequence of
268
- * endpoints. It does this by repeated calls to the socket's @c connect member
269
- * function, once for each endpoint in the sequence, until a connection is
270
- * successfully established.
271
- *
272
- * @param s The socket to be connected. If the socket is already open, it will
273
- * be closed.
274
- *
275
- * @param begin An iterator pointing to the start of a sequence of endpoints.
276
- *
277
- * @param end An iterator pointing to the end of a sequence of endpoints.
278
- *
279
- * @returns An iterator denoting the successfully connected endpoint.
280
- *
281
- * @throws boost::system::system_error Thrown on failure. If the sequence is
282
- * empty, the associated @c error_code is boost::asio::error::not_found.
283
- * Otherwise, contains the error from the last connection attempt.
284
- *
285
- * @par Example
286
- * @code tcp::resolver r(my_context);
287
- * tcp::resolver::query q("host", "service");
288
- * tcp::resolver::results_type e = r.resolve(q);
289
- * tcp::socket s(my_context);
290
- * boost::asio::connect(s, e.begin(), e.end()); @endcode
291
- */
292
- template <typename Protocol, typename Executor, typename Iterator>
293
- Iterator connect(basic_socket<Protocol, Executor>& s,
294
- Iterator begin, Iterator end);
295
-
296
- /// Establishes a socket connection by trying each endpoint in a sequence.
297
- /**
298
- * This function attempts to connect a socket to one of a sequence of
299
- * endpoints. It does this by repeated calls to the socket's @c connect member
300
- * function, once for each endpoint in the sequence, until a connection is
301
- * successfully established.
302
- *
303
- * @param s The socket to be connected. If the socket is already open, it will
304
- * be closed.
305
- *
306
- * @param begin An iterator pointing to the start of a sequence of endpoints.
307
- *
308
- * @param end An iterator pointing to the end of a sequence of endpoints.
309
- *
310
- * @param ec Set to indicate what error occurred, if any. If the sequence is
311
- * empty, set to boost::asio::error::not_found. Otherwise, contains the error
312
- * from the last connection attempt.
313
- *
314
- * @returns On success, an iterator denoting the successfully connected
315
- * endpoint. Otherwise, the end iterator.
316
- *
317
- * @par Example
318
- * @code tcp::resolver r(my_context);
319
- * tcp::resolver::query q("host", "service");
320
- * tcp::resolver::results_type e = r.resolve(q);
321
- * tcp::socket s(my_context);
322
- * boost::system::error_code ec;
323
- * boost::asio::connect(s, e.begin(), e.end(), ec);
324
- * if (ec)
325
- * {
326
- * // An error occurred.
327
- * } @endcode
328
- */
329
- template <typename Protocol, typename Executor, typename Iterator>
330
- Iterator connect(basic_socket<Protocol, Executor>& s,
331
- Iterator begin, Iterator end, boost::system::error_code& ec);
332
-
333
- /// Establishes a socket connection by trying each endpoint in a sequence.
334
- /**
335
- * This function attempts to connect a socket to one of a sequence of
336
- * endpoints. It does this by repeated calls to the socket's @c connect member
337
- * function, once for each endpoint in the sequence, until a connection is
338
- * successfully established.
339
- *
340
- * @param s The socket to be connected. If the socket is already open, it will
341
- * be closed.
342
- *
343
- * @param endpoints A sequence of endpoints.
344
- *
345
- * @param connect_condition A function object that is called prior to each
346
- * connection attempt. The signature of the function object must be:
347
- * @code bool connect_condition(
348
- * const boost::system::error_code& ec,
349
- * const typename Protocol::endpoint& next); @endcode
350
- * The @c ec parameter contains the result from the most recent connect
351
- * operation. Before the first connection attempt, @c ec is always set to
352
- * indicate success. The @c next parameter is the next endpoint to be tried.
353
- * The function object should return true if the next endpoint should be tried,
354
- * and false if it should be skipped.
355
- *
356
- * @returns The successfully connected endpoint.
357
- *
358
- * @throws boost::system::system_error Thrown on failure. If the sequence is
359
- * empty, the associated @c error_code is boost::asio::error::not_found.
360
- * Otherwise, contains the error from the last connection attempt.
361
- *
362
- * @par Example
363
- * The following connect condition function object can be used to output
364
- * information about the individual connection attempts:
365
- * @code struct my_connect_condition
366
- * {
367
- * bool operator()(
368
- * const boost::system::error_code& ec,
369
- * const::tcp::endpoint& next)
370
- * {
371
- * if (ec) std::cout << "Error: " << ec.message() << std::endl;
372
- * std::cout << "Trying: " << next << std::endl;
373
- * return true;
374
- * }
375
- * }; @endcode
376
- * It would be used with the boost::asio::connect function as follows:
377
- * @code tcp::resolver r(my_context);
378
- * tcp::resolver::query q("host", "service");
379
- * tcp::socket s(my_context);
380
- * tcp::endpoint e = boost::asio::connect(s,
381
- * r.resolve(q), my_connect_condition());
382
- * std::cout << "Connected to: " << e << std::endl; @endcode
383
- */
384
- template <typename Protocol, typename Executor,
385
- typename EndpointSequence, typename ConnectCondition>
386
- typename Protocol::endpoint connect(basic_socket<Protocol, Executor>& s,
387
- const EndpointSequence& endpoints, ConnectCondition connect_condition,
388
- constraint_t<
389
- is_endpoint_sequence<EndpointSequence>::value
390
- > = 0,
391
- constraint_t<
392
- is_connect_condition<ConnectCondition,
393
- decltype(declval<const EndpointSequence&>().begin())>::value
394
- > = 0);
395
-
396
- /// Establishes a socket connection by trying each endpoint in a sequence.
397
- /**
398
- * This function attempts to connect a socket to one of a sequence of
399
- * endpoints. It does this by repeated calls to the socket's @c connect member
400
- * function, once for each endpoint in the sequence, until a connection is
401
- * successfully established.
402
- *
403
- * @param s The socket to be connected. If the socket is already open, it will
404
- * be closed.
405
- *
406
- * @param endpoints A sequence of endpoints.
407
- *
408
- * @param connect_condition A function object that is called prior to each
409
- * connection attempt. The signature of the function object must be:
410
- * @code bool connect_condition(
411
- * const boost::system::error_code& ec,
412
- * const typename Protocol::endpoint& next); @endcode
413
- * The @c ec parameter contains the result from the most recent connect
414
- * operation. Before the first connection attempt, @c ec is always set to
415
- * indicate success. The @c next parameter is the next endpoint to be tried.
416
- * The function object should return true if the next endpoint should be tried,
417
- * and false if it should be skipped.
418
- *
419
- * @param ec Set to indicate what error occurred, if any. If the sequence is
420
- * empty, set to boost::asio::error::not_found. Otherwise, contains the error
421
- * from the last connection attempt.
422
- *
423
- * @returns On success, the successfully connected endpoint. Otherwise, a
424
- * default-constructed endpoint.
425
- *
426
- * @par Example
427
- * The following connect condition function object can be used to output
428
- * information about the individual connection attempts:
429
- * @code struct my_connect_condition
430
- * {
431
- * bool operator()(
432
- * const boost::system::error_code& ec,
433
- * const::tcp::endpoint& next)
434
- * {
435
- * if (ec) std::cout << "Error: " << ec.message() << std::endl;
436
- * std::cout << "Trying: " << next << std::endl;
437
- * return true;
438
- * }
439
- * }; @endcode
440
- * It would be used with the boost::asio::connect function as follows:
441
- * @code tcp::resolver r(my_context);
442
- * tcp::resolver::query q("host", "service");
443
- * tcp::socket s(my_context);
444
- * boost::system::error_code ec;
445
- * tcp::endpoint e = boost::asio::connect(s,
446
- * r.resolve(q), my_connect_condition(), ec);
447
- * if (ec)
448
- * {
449
- * // An error occurred.
450
- * }
451
- * else
452
- * {
453
- * std::cout << "Connected to: " << e << std::endl;
454
- * } @endcode
455
- */
456
- template <typename Protocol, typename Executor,
457
- typename EndpointSequence, typename ConnectCondition>
458
- typename Protocol::endpoint connect(basic_socket<Protocol, Executor>& s,
459
- const EndpointSequence& endpoints, ConnectCondition connect_condition,
460
- boost::system::error_code& ec,
461
- constraint_t<
462
- is_endpoint_sequence<EndpointSequence>::value
463
- > = 0,
464
- constraint_t<
465
- is_connect_condition<ConnectCondition,
466
- decltype(declval<const EndpointSequence&>().begin())>::value
467
- > = 0);
468
-
469
- #if !defined(BOOST_ASIO_NO_DEPRECATED)
470
- /// (Deprecated: Use range overload.) Establishes a socket connection by trying
471
- /// each endpoint in a sequence.
472
- /**
473
- * This function attempts to connect a socket to one of a sequence of
474
- * endpoints. It does this by repeated calls to the socket's @c connect member
475
- * function, once for each endpoint in the sequence, until a connection is
476
- * successfully established.
477
- *
478
- * @param s The socket to be connected. If the socket is already open, it will
479
- * be closed.
480
- *
481
- * @param begin An iterator pointing to the start of a sequence of endpoints.
482
- *
483
- * @param connect_condition A function object that is called prior to each
484
- * connection attempt. The signature of the function object must be:
485
- * @code bool connect_condition(
486
- * const boost::system::error_code& ec,
487
- * const typename Protocol::endpoint& next); @endcode
488
- * The @c ec parameter contains the result from the most recent connect
489
- * operation. Before the first connection attempt, @c ec is always set to
490
- * indicate success. The @c next parameter is the next endpoint to be tried.
491
- * The function object should return true if the next endpoint should be tried,
492
- * and false if it should be skipped.
493
- *
494
- * @returns On success, an iterator denoting the successfully connected
495
- * endpoint. Otherwise, the end iterator.
496
- *
497
- * @throws boost::system::system_error Thrown on failure. If the sequence is
498
- * empty, the associated @c error_code is boost::asio::error::not_found.
499
- * Otherwise, contains the error from the last connection attempt.
500
- *
501
- * @note This overload assumes that a default constructed object of type @c
502
- * Iterator represents the end of the sequence. This is a valid assumption for
503
- * iterator types such as @c boost::asio::ip::tcp::resolver::iterator.
504
- */
505
- template <typename Protocol, typename Executor,
506
- typename Iterator, typename ConnectCondition>
507
- Iterator connect(basic_socket<Protocol, Executor>& s,
508
- Iterator begin, ConnectCondition connect_condition,
509
- constraint_t<
510
- !is_endpoint_sequence<Iterator>::value
511
- > = 0,
512
- constraint_t<
513
- is_connect_condition<ConnectCondition, Iterator>::value
514
- > = 0);
515
-
516
- /// (Deprecated: Use range overload.) Establishes a socket connection by trying
517
- /// each endpoint in a sequence.
518
- /**
519
- * This function attempts to connect a socket to one of a sequence of
520
- * endpoints. It does this by repeated calls to the socket's @c connect member
521
- * function, once for each endpoint in the sequence, until a connection is
522
- * successfully established.
523
- *
524
- * @param s The socket to be connected. If the socket is already open, it will
525
- * be closed.
526
- *
527
- * @param begin An iterator pointing to the start of a sequence of endpoints.
528
- *
529
- * @param connect_condition A function object that is called prior to each
530
- * connection attempt. The signature of the function object must be:
531
- * @code bool connect_condition(
532
- * const boost::system::error_code& ec,
533
- * const typename Protocol::endpoint& next); @endcode
534
- * The @c ec parameter contains the result from the most recent connect
535
- * operation. Before the first connection attempt, @c ec is always set to
536
- * indicate success. The @c next parameter is the next endpoint to be tried.
537
- * The function object should return true if the next endpoint should be tried,
538
- * and false if it should be skipped.
539
- *
540
- * @param ec Set to indicate what error occurred, if any. If the sequence is
541
- * empty, set to boost::asio::error::not_found. Otherwise, contains the error
542
- * from the last connection attempt.
543
- *
544
- * @returns On success, an iterator denoting the successfully connected
545
- * endpoint. Otherwise, the end iterator.
546
- *
547
- * @note This overload assumes that a default constructed object of type @c
548
- * Iterator represents the end of the sequence. This is a valid assumption for
549
- * iterator types such as @c boost::asio::ip::tcp::resolver::iterator.
550
- */
551
- template <typename Protocol, typename Executor,
552
- typename Iterator, typename ConnectCondition>
553
- Iterator connect(basic_socket<Protocol, Executor>& s, Iterator begin,
554
- ConnectCondition connect_condition, boost::system::error_code& ec,
555
- constraint_t<
556
- !is_endpoint_sequence<Iterator>::value
557
- > = 0,
558
- constraint_t<
559
- is_connect_condition<ConnectCondition, Iterator>::value
560
- > = 0);
561
- #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
562
-
563
- /// Establishes a socket connection by trying each endpoint in a sequence.
564
- /**
565
- * This function attempts to connect a socket to one of a sequence of
566
- * endpoints. It does this by repeated calls to the socket's @c connect member
567
- * function, once for each endpoint in the sequence, until a connection is
568
- * successfully established.
569
- *
570
- * @param s The socket to be connected. If the socket is already open, it will
571
- * be closed.
572
- *
573
- * @param begin An iterator pointing to the start of a sequence of endpoints.
574
- *
575
- * @param end An iterator pointing to the end of a sequence of endpoints.
576
- *
577
- * @param connect_condition A function object that is called prior to each
578
- * connection attempt. The signature of the function object must be:
579
- * @code bool connect_condition(
580
- * const boost::system::error_code& ec,
581
- * const typename Protocol::endpoint& next); @endcode
582
- * The @c ec parameter contains the result from the most recent connect
583
- * operation. Before the first connection attempt, @c ec is always set to
584
- * indicate success. The @c next parameter is the next endpoint to be tried.
585
- * The function object should return true if the next endpoint should be tried,
586
- * and false if it should be skipped.
587
- *
588
- * @returns An iterator denoting the successfully connected endpoint.
589
- *
590
- * @throws boost::system::system_error Thrown on failure. If the sequence is
591
- * empty, the associated @c error_code is boost::asio::error::not_found.
592
- * Otherwise, contains the error from the last connection attempt.
593
- *
594
- * @par Example
595
- * The following connect condition function object can be used to output
596
- * information about the individual connection attempts:
597
- * @code struct my_connect_condition
598
- * {
599
- * bool operator()(
600
- * const boost::system::error_code& ec,
601
- * const::tcp::endpoint& next)
602
- * {
603
- * if (ec) std::cout << "Error: " << ec.message() << std::endl;
604
- * std::cout << "Trying: " << next << std::endl;
605
- * return true;
606
- * }
607
- * }; @endcode
608
- * It would be used with the boost::asio::connect function as follows:
609
- * @code tcp::resolver r(my_context);
610
- * tcp::resolver::query q("host", "service");
611
- * tcp::resolver::results_type e = r.resolve(q);
612
- * tcp::socket s(my_context);
613
- * tcp::resolver::results_type::iterator i = boost::asio::connect(
614
- * s, e.begin(), e.end(), my_connect_condition());
615
- * std::cout << "Connected to: " << i->endpoint() << std::endl; @endcode
616
- */
617
- template <typename Protocol, typename Executor,
618
- typename Iterator, typename ConnectCondition>
619
- Iterator connect(basic_socket<Protocol, Executor>& s, Iterator begin,
620
- Iterator end, ConnectCondition connect_condition,
621
- constraint_t<
622
- is_connect_condition<ConnectCondition, Iterator>::value
623
- > = 0);
624
-
625
- /// Establishes a socket connection by trying each endpoint in a sequence.
626
- /**
627
- * This function attempts to connect a socket to one of a sequence of
628
- * endpoints. It does this by repeated calls to the socket's @c connect member
629
- * function, once for each endpoint in the sequence, until a connection is
630
- * successfully established.
631
- *
632
- * @param s The socket to be connected. If the socket is already open, it will
633
- * be closed.
634
- *
635
- * @param begin An iterator pointing to the start of a sequence of endpoints.
636
- *
637
- * @param end An iterator pointing to the end of a sequence of endpoints.
638
- *
639
- * @param connect_condition A function object that is called prior to each
640
- * connection attempt. The signature of the function object must be:
641
- * @code bool connect_condition(
642
- * const boost::system::error_code& ec,
643
- * const typename Protocol::endpoint& next); @endcode
644
- * The @c ec parameter contains the result from the most recent connect
645
- * operation. Before the first connection attempt, @c ec is always set to
646
- * indicate success. The @c next parameter is the next endpoint to be tried.
647
- * The function object should return true if the next endpoint should be tried,
648
- * and false if it should be skipped.
649
- *
650
- * @param ec Set to indicate what error occurred, if any. If the sequence is
651
- * empty, set to boost::asio::error::not_found. Otherwise, contains the error
652
- * from the last connection attempt.
653
- *
654
- * @returns On success, an iterator denoting the successfully connected
655
- * endpoint. Otherwise, the end iterator.
656
- *
657
- * @par Example
658
- * The following connect condition function object can be used to output
659
- * information about the individual connection attempts:
660
- * @code struct my_connect_condition
661
- * {
662
- * bool operator()(
663
- * const boost::system::error_code& ec,
664
- * const::tcp::endpoint& next)
665
- * {
666
- * if (ec) std::cout << "Error: " << ec.message() << std::endl;
667
- * std::cout << "Trying: " << next << std::endl;
668
- * return true;
669
- * }
670
- * }; @endcode
671
- * It would be used with the boost::asio::connect function as follows:
672
- * @code tcp::resolver r(my_context);
673
- * tcp::resolver::query q("host", "service");
674
- * tcp::resolver::results_type e = r.resolve(q);
675
- * tcp::socket s(my_context);
676
- * boost::system::error_code ec;
677
- * tcp::resolver::results_type::iterator i = boost::asio::connect(
678
- * s, e.begin(), e.end(), my_connect_condition());
679
- * if (ec)
680
- * {
681
- * // An error occurred.
682
- * }
683
- * else
684
- * {
685
- * std::cout << "Connected to: " << i->endpoint() << std::endl;
686
- * } @endcode
687
- */
688
- template <typename Protocol, typename Executor,
689
- typename Iterator, typename ConnectCondition>
690
- Iterator connect(basic_socket<Protocol, Executor>& s,
691
- Iterator begin, Iterator end, ConnectCondition connect_condition,
692
- boost::system::error_code& ec,
693
- constraint_t<
694
- is_connect_condition<ConnectCondition, Iterator>::value
695
- > = 0);
696
-
697
- /*@}*/
698
-
699
- /**
700
- * @defgroup async_connect boost::asio::async_connect
701
- *
702
- * @brief The @c async_connect function is a composed asynchronous operation
703
- * that establishes a socket connection by trying each endpoint in a sequence.
704
- */
705
- /*@{*/
706
-
707
- /// Asynchronously establishes a socket connection by trying each endpoint in a
708
- /// sequence.
709
- /**
710
- * This function attempts to connect a socket to one of a sequence of
711
- * endpoints. It does this by repeated calls to the socket's @c async_connect
712
- * member function, once for each endpoint in the sequence, until a connection
713
- * is successfully established. It is an initiating function for an @ref
714
- * asynchronous_operation, and always returns immediately.
715
- *
716
- * @param s The socket to be connected. If the socket is already open, it will
717
- * be closed.
718
- *
719
- * @param endpoints A sequence of endpoints.
720
- *
721
- * @param token The @ref completion_token that will be used to produce a
722
- * completion handler, which will be called when the connect completes.
723
- * Potential completion tokens include @ref use_future, @ref use_awaitable,
724
- * @ref yield_context, or a function object with the correct completion
725
- * signature. The function signature of the completion handler must be:
726
- * @code void handler(
727
- * // Result of operation. if the sequence is empty, set to
728
- * // boost::asio::error::not_found. Otherwise, contains the
729
- * // error from the last connection attempt.
730
- * const boost::system::error_code& error,
731
- *
732
- * // On success, the successfully connected endpoint.
733
- * // Otherwise, a default-constructed endpoint.
734
- * const typename Protocol::endpoint& endpoint
735
- * ); @endcode
736
- * Regardless of whether the asynchronous operation completes immediately or
737
- * not, the completion handler will not be invoked from within this function.
738
- * On immediate completion, invocation of the handler will be performed in a
739
- * manner equivalent to using boost::asio::async_immediate().
740
- *
741
- * @par Completion Signature
742
- * @code void(boost::system::error_code, typename Protocol::endpoint) @endcode
743
- *
744
- * @par Example
745
- * @code tcp::resolver r(my_context);
746
- * tcp::resolver::query q("host", "service");
747
- * tcp::socket s(my_context);
748
- *
749
- * // ...
750
- *
751
- * r.async_resolve(q, resolve_handler);
752
- *
753
- * // ...
754
- *
755
- * void resolve_handler(
756
- * const boost::system::error_code& ec,
757
- * tcp::resolver::results_type results)
758
- * {
759
- * if (!ec)
760
- * {
761
- * boost::asio::async_connect(s, results, connect_handler);
762
- * }
763
- * }
764
- *
765
- * // ...
766
- *
767
- * void connect_handler(
768
- * const boost::system::error_code& ec,
769
- * const tcp::endpoint& endpoint)
770
- * {
771
- * // ...
772
- * } @endcode
773
- *
774
- * @par Per-Operation Cancellation
775
- * This asynchronous operation supports cancellation for the following
776
- * boost::asio::cancellation_type values:
777
- *
778
- * @li @c cancellation_type::terminal
779
- *
780
- * @li @c cancellation_type::partial
781
- *
782
- * if they are also supported by the socket's @c async_connect operation.
783
- */
784
- template <typename Protocol, typename Executor, typename EndpointSequence,
785
- BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
786
- typename Protocol::endpoint)) RangeConnectToken
787
- = default_completion_token_t<Executor>>
788
- inline auto async_connect(basic_socket<Protocol, Executor>& s,
789
- const EndpointSequence& endpoints,
790
- RangeConnectToken&& token = default_completion_token_t<Executor>(),
791
- constraint_t<
792
- is_endpoint_sequence<EndpointSequence>::value
793
- > = 0,
794
- constraint_t<
795
- !is_connect_condition<RangeConnectToken,
796
- decltype(declval<const EndpointSequence&>().begin())>::value
797
- > = 0)
798
- -> decltype(
799
- async_initiate<RangeConnectToken,
800
- void (boost::system::error_code, typename Protocol::endpoint)>(
801
- declval<detail::initiate_async_range_connect<Protocol, Executor>>(),
802
- token, endpoints, declval<detail::default_connect_condition>()))
803
- {
804
- return async_initiate<RangeConnectToken,
805
- void (boost::system::error_code, typename Protocol::endpoint)>(
806
- detail::initiate_async_range_connect<Protocol, Executor>(s),
807
- token, endpoints, detail::default_connect_condition());
808
- }
809
-
810
- #if !defined(BOOST_ASIO_NO_DEPRECATED)
811
- /// (Deprecated: Use range overload.) Asynchronously establishes a socket
812
- /// connection by trying each endpoint in a sequence.
813
- /**
814
- * This function attempts to connect a socket to one of a sequence of
815
- * endpoints. It does this by repeated calls to the socket's @c async_connect
816
- * member function, once for each endpoint in the sequence, until a connection
817
- * is successfully established. It is an initiating function for an @ref
818
- * asynchronous_operation, and always returns immediately.
819
- *
820
- * @param s The socket to be connected. If the socket is already open, it will
821
- * be closed.
822
- *
823
- * @param begin An iterator pointing to the start of a sequence of endpoints.
824
- *
825
- * @param token The @ref completion_token that will be used to produce a
826
- * completion handler, which will be called when the connect completes.
827
- * Potential completion tokens include @ref use_future, @ref use_awaitable,
828
- * @ref yield_context, or a function object with the correct completion
829
- * signature. The function signature of the completion handler must be:
830
- * @code void handler(
831
- * // Result of operation. if the sequence is empty, set to
832
- * // boost::asio::error::not_found. Otherwise, contains the
833
- * // error from the last connection attempt.
834
- * const boost::system::error_code& error,
835
- *
836
- * // On success, an iterator denoting the successfully
837
- * // connected endpoint. Otherwise, the end iterator.
838
- * Iterator iterator
839
- * ); @endcode
840
- * Regardless of whether the asynchronous operation completes immediately or
841
- * not, the completion handler will not be invoked from within this function.
842
- * On immediate completion, invocation of the handler will be performed in a
843
- * manner equivalent to using boost::asio::async_immediate().
844
- *
845
- * @par Completion Signature
846
- * @code void(boost::system::error_code, Iterator) @endcode
847
- *
848
- * @note This overload assumes that a default constructed object of type @c
849
- * Iterator represents the end of the sequence. This is a valid assumption for
850
- * iterator types such as @c boost::asio::ip::tcp::resolver::iterator.
851
- *
852
- * @par Per-Operation Cancellation
853
- * This asynchronous operation supports cancellation for the following
854
- * boost::asio::cancellation_type values:
855
- *
856
- * @li @c cancellation_type::terminal
857
- *
858
- * @li @c cancellation_type::partial
859
- *
860
- * if they are also supported by the socket's @c async_connect operation.
861
- */
862
- template <typename Protocol, typename Executor, typename Iterator,
863
- BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
864
- Iterator)) IteratorConnectToken = default_completion_token_t<Executor>>
865
- inline auto async_connect(basic_socket<Protocol, Executor>& s, Iterator begin,
866
- IteratorConnectToken&& token = default_completion_token_t<Executor>(),
867
- constraint_t<
868
- !is_endpoint_sequence<Iterator>::value
869
- > = 0,
870
- constraint_t<
871
- !is_same<Iterator, decay_t<IteratorConnectToken>>::value
872
- > = 0,
873
- constraint_t<
874
- !is_connect_condition<IteratorConnectToken, Iterator>::value
875
- > = 0)
876
- -> decltype(
877
- async_initiate<IteratorConnectToken,
878
- void (boost::system::error_code, Iterator)>(
879
- declval<detail::initiate_async_iterator_connect<Protocol, Executor>>(),
880
- token, begin, Iterator(),
881
- declval<detail::default_connect_condition>()))
882
- {
883
- return async_initiate<IteratorConnectToken,
884
- void (boost::system::error_code, Iterator)>(
885
- detail::initiate_async_iterator_connect<Protocol, Executor>(s),
886
- token, begin, Iterator(), detail::default_connect_condition());
887
- }
888
- #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
889
-
890
- /// Asynchronously establishes a socket connection by trying each endpoint in a
891
- /// sequence.
892
- /**
893
- * This function attempts to connect a socket to one of a sequence of
894
- * endpoints. It does this by repeated calls to the socket's @c async_connect
895
- * member function, once for each endpoint in the sequence, until a connection
896
- * is successfully established. It is an initiating function for an @ref
897
- * asynchronous_operation, and always returns immediately.
898
- *
899
- * @param s The socket to be connected. If the socket is already open, it will
900
- * be closed.
901
- *
902
- * @param begin An iterator pointing to the start of a sequence of endpoints.
903
- *
904
- * @param end An iterator pointing to the end of a sequence of endpoints.
905
- *
906
- * @param token The @ref completion_token that will be used to produce a
907
- * completion handler, which will be called when the connect completes.
908
- * Potential completion tokens include @ref use_future, @ref use_awaitable,
909
- * @ref yield_context, or a function object with the correct completion
910
- * signature. The function signature of the completion handler must be:
911
- * @code void handler(
912
- * // Result of operation. if the sequence is empty, set to
913
- * // boost::asio::error::not_found. Otherwise, contains the
914
- * // error from the last connection attempt.
915
- * const boost::system::error_code& error,
916
- *
917
- * // On success, an iterator denoting the successfully
918
- * // connected endpoint. Otherwise, the end iterator.
919
- * Iterator iterator
920
- * ); @endcode
921
- * Regardless of whether the asynchronous operation completes immediately or
922
- * not, the completion handler will not be invoked from within this function.
923
- * On immediate completion, invocation of the handler will be performed in a
924
- * manner equivalent to using boost::asio::async_immediate().
925
- *
926
- * @par Completion Signature
927
- * @code void(boost::system::error_code, Iterator) @endcode
928
- *
929
- * @par Example
930
- * @code std::vector<tcp::endpoint> endpoints = ...;
931
- * tcp::socket s(my_context);
932
- * boost::asio::async_connect(s,
933
- * endpoints.begin(), endpoints.end(),
934
- * connect_handler);
935
- *
936
- * // ...
937
- *
938
- * void connect_handler(
939
- * const boost::system::error_code& ec,
940
- * std::vector<tcp::endpoint>::iterator i)
941
- * {
942
- * // ...
943
- * } @endcode
944
- *
945
- * @par Per-Operation Cancellation
946
- * This asynchronous operation supports cancellation for the following
947
- * boost::asio::cancellation_type values:
948
- *
949
- * @li @c cancellation_type::terminal
950
- *
951
- * @li @c cancellation_type::partial
952
- *
953
- * if they are also supported by the socket's @c async_connect operation.
954
- */
955
- template <typename Protocol, typename Executor, typename Iterator,
956
- BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
957
- Iterator)) IteratorConnectToken = default_completion_token_t<Executor>>
958
- inline auto async_connect(
959
- basic_socket<Protocol, Executor>& s, Iterator begin, Iterator end,
960
- IteratorConnectToken&& token = default_completion_token_t<Executor>(),
961
- constraint_t<
962
- !is_connect_condition<IteratorConnectToken, Iterator>::value
963
- > = 0)
964
- -> decltype(
965
- async_initiate<IteratorConnectToken,
966
- void (boost::system::error_code, Iterator)>(
967
- declval<detail::initiate_async_iterator_connect<Protocol, Executor>>(),
968
- token, begin, end, declval<detail::default_connect_condition>()))
969
- {
970
- return async_initiate<IteratorConnectToken,
971
- void (boost::system::error_code, Iterator)>(
972
- detail::initiate_async_iterator_connect<Protocol, Executor>(s),
973
- token, begin, end, detail::default_connect_condition());
974
- }
975
-
976
- /// Asynchronously establishes a socket connection by trying each endpoint in a
977
- /// sequence.
978
- /**
979
- * This function attempts to connect a socket to one of a sequence of
980
- * endpoints. It does this by repeated calls to the socket's @c async_connect
981
- * member function, once for each endpoint in the sequence, until a connection
982
- * is successfully established. It is an initiating function for an @ref
983
- * asynchronous_operation, and always returns immediately.
984
- *
985
- * @param s The socket to be connected. If the socket is already open, it will
986
- * be closed.
987
- *
988
- * @param endpoints A sequence of endpoints.
989
- *
990
- * @param connect_condition A function object that is called prior to each
991
- * connection attempt. The signature of the function object must be:
992
- * @code bool connect_condition(
993
- * const boost::system::error_code& ec,
994
- * const typename Protocol::endpoint& next); @endcode
995
- * The @c ec parameter contains the result from the most recent connect
996
- * operation. Before the first connection attempt, @c ec is always set to
997
- * indicate success. The @c next parameter is the next endpoint to be tried.
998
- * The function object should return true if the next endpoint should be tried,
999
- * and false if it should be skipped.
1000
- *
1001
- * @param token The @ref completion_token that will be used to produce a
1002
- * completion handler, which will be called when the connect completes.
1003
- * Potential completion tokens include @ref use_future, @ref use_awaitable,
1004
- * @ref yield_context, or a function object with the correct completion
1005
- * signature. The function signature of the completion handler must be:
1006
- * @code void handler(
1007
- * // Result of operation. if the sequence is empty, set to
1008
- * // boost::asio::error::not_found. Otherwise, contains the
1009
- * // error from the last connection attempt.
1010
- * const boost::system::error_code& error,
1011
- *
1012
- * // On success, an iterator denoting the successfully
1013
- * // connected endpoint. Otherwise, the end iterator.
1014
- * Iterator iterator
1015
- * ); @endcode
1016
- * Regardless of whether the asynchronous operation completes immediately or
1017
- * not, the completion handler will not be invoked from within this function.
1018
- * On immediate completion, invocation of the handler will be performed in a
1019
- * manner equivalent to using boost::asio::async_immediate().
1020
- *
1021
- * @par Completion Signature
1022
- * @code void(boost::system::error_code, typename Protocol::endpoint) @endcode
1023
- *
1024
- * @par Example
1025
- * The following connect condition function object can be used to output
1026
- * information about the individual connection attempts:
1027
- * @code struct my_connect_condition
1028
- * {
1029
- * bool operator()(
1030
- * const boost::system::error_code& ec,
1031
- * const::tcp::endpoint& next)
1032
- * {
1033
- * if (ec) std::cout << "Error: " << ec.message() << std::endl;
1034
- * std::cout << "Trying: " << next << std::endl;
1035
- * return true;
1036
- * }
1037
- * }; @endcode
1038
- * It would be used with the boost::asio::connect function as follows:
1039
- * @code tcp::resolver r(my_context);
1040
- * tcp::resolver::query q("host", "service");
1041
- * tcp::socket s(my_context);
1042
- *
1043
- * // ...
1044
- *
1045
- * r.async_resolve(q, resolve_handler);
1046
- *
1047
- * // ...
1048
- *
1049
- * void resolve_handler(
1050
- * const boost::system::error_code& ec,
1051
- * tcp::resolver::results_type results)
1052
- * {
1053
- * if (!ec)
1054
- * {
1055
- * boost::asio::async_connect(s, results,
1056
- * my_connect_condition(),
1057
- * connect_handler);
1058
- * }
1059
- * }
1060
- *
1061
- * // ...
1062
- *
1063
- * void connect_handler(
1064
- * const boost::system::error_code& ec,
1065
- * const tcp::endpoint& endpoint)
1066
- * {
1067
- * if (ec)
1068
- * {
1069
- * // An error occurred.
1070
- * }
1071
- * else
1072
- * {
1073
- * std::cout << "Connected to: " << endpoint << std::endl;
1074
- * }
1075
- * } @endcode
1076
- *
1077
- * @par Per-Operation Cancellation
1078
- * This asynchronous operation supports cancellation for the following
1079
- * boost::asio::cancellation_type values:
1080
- *
1081
- * @li @c cancellation_type::terminal
1082
- *
1083
- * @li @c cancellation_type::partial
1084
- *
1085
- * if they are also supported by the socket's @c async_connect operation.
1086
- */
1087
- template <typename Protocol, typename Executor,
1088
- typename EndpointSequence, typename ConnectCondition,
1089
- BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
1090
- typename Protocol::endpoint)) RangeConnectToken
1091
- = default_completion_token_t<Executor>>
1092
- inline auto async_connect(basic_socket<Protocol, Executor>& s,
1093
- const EndpointSequence& endpoints, ConnectCondition connect_condition,
1094
- RangeConnectToken&& token = default_completion_token_t<Executor>(),
1095
- constraint_t<
1096
- is_endpoint_sequence<EndpointSequence>::value
1097
- > = 0,
1098
- constraint_t<
1099
- is_connect_condition<ConnectCondition,
1100
- decltype(declval<const EndpointSequence&>().begin())>::value
1101
- > = 0)
1102
- -> decltype(
1103
- async_initiate<RangeConnectToken,
1104
- void (boost::system::error_code, typename Protocol::endpoint)>(
1105
- declval<detail::initiate_async_range_connect<Protocol, Executor>>(),
1106
- token, endpoints, connect_condition))
1107
- {
1108
- return async_initiate<RangeConnectToken,
1109
- void (boost::system::error_code, typename Protocol::endpoint)>(
1110
- detail::initiate_async_range_connect<Protocol, Executor>(s),
1111
- token, endpoints, connect_condition);
1112
- }
1113
-
1114
- #if !defined(BOOST_ASIO_NO_DEPRECATED)
1115
- /// (Deprecated: Use range overload.) Asynchronously establishes a socket
1116
- /// connection by trying each endpoint in a sequence.
1117
- /**
1118
- * This function attempts to connect a socket to one of a sequence of
1119
- * endpoints. It does this by repeated calls to the socket's @c async_connect
1120
- * member function, once for each endpoint in the sequence, until a connection
1121
- * is successfully established. It is an initiating function for an @ref
1122
- * asynchronous_operation, and always returns immediately.
1123
- *
1124
- * @param s The socket to be connected. If the socket is already open, it will
1125
- * be closed.
1126
- *
1127
- * @param begin An iterator pointing to the start of a sequence of endpoints.
1128
- *
1129
- * @param connect_condition A function object that is called prior to each
1130
- * connection attempt. The signature of the function object must be:
1131
- * @code bool connect_condition(
1132
- * const boost::system::error_code& ec,
1133
- * const typename Protocol::endpoint& next); @endcode
1134
- * The @c ec parameter contains the result from the most recent connect
1135
- * operation. Before the first connection attempt, @c ec is always set to
1136
- * indicate success. The @c next parameter is the next endpoint to be tried.
1137
- * The function object should return true if the next endpoint should be tried,
1138
- * and false if it should be skipped.
1139
- *
1140
- * @param token The @ref completion_token that will be used to produce a
1141
- * completion handler, which will be called when the connect completes.
1142
- * Potential completion tokens include @ref use_future, @ref use_awaitable,
1143
- * @ref yield_context, or a function object with the correct completion
1144
- * signature. The function signature of the completion handler must be:
1145
- * @code void handler(
1146
- * // Result of operation. if the sequence is empty, set to
1147
- * // boost::asio::error::not_found. Otherwise, contains the
1148
- * // error from the last connection attempt.
1149
- * const boost::system::error_code& error,
1150
- *
1151
- * // On success, an iterator denoting the successfully
1152
- * // connected endpoint. Otherwise, the end iterator.
1153
- * Iterator iterator
1154
- * ); @endcode
1155
- * Regardless of whether the asynchronous operation completes immediately or
1156
- * not, the completion handler will not be invoked from within this function.
1157
- * On immediate completion, invocation of the handler will be performed in a
1158
- * manner equivalent to using boost::asio::async_immediate().
1159
- *
1160
- * @par Completion Signature
1161
- * @code void(boost::system::error_code, Iterator) @endcode
1162
- *
1163
- * @note This overload assumes that a default constructed object of type @c
1164
- * Iterator represents the end of the sequence. This is a valid assumption for
1165
- * iterator types such as @c boost::asio::ip::tcp::resolver::iterator.
1166
- *
1167
- * @par Per-Operation Cancellation
1168
- * This asynchronous operation supports cancellation for the following
1169
- * boost::asio::cancellation_type values:
1170
- *
1171
- * @li @c cancellation_type::terminal
1172
- *
1173
- * @li @c cancellation_type::partial
1174
- *
1175
- * if they are also supported by the socket's @c async_connect operation.
1176
- */
1177
- template <typename Protocol, typename Executor,
1178
- typename Iterator, typename ConnectCondition,
1179
- BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
1180
- Iterator)) IteratorConnectToken = default_completion_token_t<Executor>>
1181
- inline auto async_connect(basic_socket<Protocol, Executor>& s,
1182
- Iterator begin, ConnectCondition connect_condition,
1183
- IteratorConnectToken&& token = default_completion_token_t<Executor>(),
1184
- constraint_t<
1185
- !is_endpoint_sequence<Iterator>::value
1186
- > = 0,
1187
- constraint_t<
1188
- is_connect_condition<ConnectCondition, Iterator>::value
1189
- > = 0)
1190
- -> decltype(
1191
- async_initiate<IteratorConnectToken,
1192
- void (boost::system::error_code, Iterator)>(
1193
- declval<detail::initiate_async_iterator_connect<Protocol, Executor>>(),
1194
- token, begin, Iterator(), connect_condition))
1195
- {
1196
- return async_initiate<IteratorConnectToken,
1197
- void (boost::system::error_code, Iterator)>(
1198
- detail::initiate_async_iterator_connect<Protocol, Executor>(s),
1199
- token, begin, Iterator(), connect_condition);
1200
- }
1201
- #endif // !defined(BOOST_ASIO_NO_DEPRECATED)
1202
-
1203
- /// Asynchronously establishes a socket connection by trying each endpoint in a
1204
- /// sequence.
1205
- /**
1206
- * This function attempts to connect a socket to one of a sequence of
1207
- * endpoints. It does this by repeated calls to the socket's @c async_connect
1208
- * member function, once for each endpoint in the sequence, until a connection
1209
- * is successfully established. It is an initiating function for an @ref
1210
- * asynchronous_operation, and always returns immediately.
1211
- *
1212
- * @param s The socket to be connected. If the socket is already open, it will
1213
- * be closed.
1214
- *
1215
- * @param begin An iterator pointing to the start of a sequence of endpoints.
1216
- *
1217
- * @param end An iterator pointing to the end of a sequence of endpoints.
1218
- *
1219
- * @param connect_condition A function object that is called prior to each
1220
- * connection attempt. The signature of the function object must be:
1221
- * @code bool connect_condition(
1222
- * const boost::system::error_code& ec,
1223
- * const typename Protocol::endpoint& next); @endcode
1224
- * The @c ec parameter contains the result from the most recent connect
1225
- * operation. Before the first connection attempt, @c ec is always set to
1226
- * indicate success. The @c next parameter is the next endpoint to be tried.
1227
- * The function object should return true if the next endpoint should be tried,
1228
- * and false if it should be skipped.
1229
- *
1230
- * @param token The @ref completion_token that will be used to produce a
1231
- * completion handler, which will be called when the connect completes.
1232
- * Potential completion tokens include @ref use_future, @ref use_awaitable,
1233
- * @ref yield_context, or a function object with the correct completion
1234
- * signature. The function signature of the completion handler must be:
1235
- * @code void handler(
1236
- * // Result of operation. if the sequence is empty, set to
1237
- * // boost::asio::error::not_found. Otherwise, contains the
1238
- * // error from the last connection attempt.
1239
- * const boost::system::error_code& error,
1240
- *
1241
- * // On success, an iterator denoting the successfully
1242
- * // connected endpoint. Otherwise, the end iterator.
1243
- * Iterator iterator
1244
- * ); @endcode
1245
- * Regardless of whether the asynchronous operation completes immediately or
1246
- * not, the completion handler will not be invoked from within this function.
1247
- * On immediate completion, invocation of the handler will be performed in a
1248
- * manner equivalent to using boost::asio::async_immediate().
1249
- *
1250
- * @par Completion Signature
1251
- * @code void(boost::system::error_code, Iterator) @endcode
1252
- *
1253
- * @par Example
1254
- * The following connect condition function object can be used to output
1255
- * information about the individual connection attempts:
1256
- * @code struct my_connect_condition
1257
- * {
1258
- * bool operator()(
1259
- * const boost::system::error_code& ec,
1260
- * const::tcp::endpoint& next)
1261
- * {
1262
- * if (ec) std::cout << "Error: " << ec.message() << std::endl;
1263
- * std::cout << "Trying: " << next << std::endl;
1264
- * return true;
1265
- * }
1266
- * }; @endcode
1267
- * It would be used with the boost::asio::connect function as follows:
1268
- * @code tcp::resolver r(my_context);
1269
- * tcp::resolver::query q("host", "service");
1270
- * tcp::socket s(my_context);
1271
- *
1272
- * // ...
1273
- *
1274
- * r.async_resolve(q, resolve_handler);
1275
- *
1276
- * // ...
1277
- *
1278
- * void resolve_handler(
1279
- * const boost::system::error_code& ec,
1280
- * tcp::resolver::iterator i)
1281
- * {
1282
- * if (!ec)
1283
- * {
1284
- * tcp::resolver::iterator end;
1285
- * boost::asio::async_connect(s, i, end,
1286
- * my_connect_condition(),
1287
- * connect_handler);
1288
- * }
1289
- * }
1290
- *
1291
- * // ...
1292
- *
1293
- * void connect_handler(
1294
- * const boost::system::error_code& ec,
1295
- * tcp::resolver::iterator i)
1296
- * {
1297
- * if (ec)
1298
- * {
1299
- * // An error occurred.
1300
- * }
1301
- * else
1302
- * {
1303
- * std::cout << "Connected to: " << i->endpoint() << std::endl;
1304
- * }
1305
- * } @endcode
1306
- *
1307
- * @par Per-Operation Cancellation
1308
- * This asynchronous operation supports cancellation for the following
1309
- * boost::asio::cancellation_type values:
1310
- *
1311
- * @li @c cancellation_type::terminal
1312
- *
1313
- * @li @c cancellation_type::partial
1314
- *
1315
- * if they are also supported by the socket's @c async_connect operation.
1316
- */
1317
- template <typename Protocol, typename Executor,
1318
- typename Iterator, typename ConnectCondition,
1319
- BOOST_ASIO_COMPLETION_TOKEN_FOR(void (boost::system::error_code,
1320
- Iterator)) IteratorConnectToken = default_completion_token_t<Executor>>
1321
- inline auto async_connect(basic_socket<Protocol, Executor>& s,
1322
- Iterator begin, Iterator end, ConnectCondition connect_condition,
1323
- IteratorConnectToken&& token = default_completion_token_t<Executor>(),
1324
- constraint_t<
1325
- is_connect_condition<ConnectCondition, Iterator>::value
1326
- > = 0)
1327
- -> decltype(
1328
- async_initiate<IteratorConnectToken,
1329
- void (boost::system::error_code, Iterator)>(
1330
- declval<detail::initiate_async_iterator_connect<Protocol, Executor>>(),
1331
- token, begin, end, connect_condition))
1332
- {
1333
- return async_initiate<IteratorConnectToken,
1334
- void (boost::system::error_code, Iterator)>(
1335
- detail::initiate_async_iterator_connect<Protocol, Executor>(s),
1336
- token, begin, end, connect_condition);
1337
- }
1338
-
1339
- /*@}*/
1340
-
1341
- } // namespace asio
1342
- } // namespace boost
1343
-
1344
- #include <boost/asio/detail/pop_options.hpp>
1345
-
1346
- #include <boost/asio/impl/connect.hpp>
1347
-
1348
- #endif // BOOST_ASIO_CONNECT_HPP